Skip to content

Akamiblade1297/HTTP_Connection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is that about?

I'm trying to recreate HTTP and HTTPS connection from scratch for educational purpose.
I'm using python-socket package to use TCP Transport Layer, so I'm building HTTP Application Layer fully from scratch.

How to launch?

python server_HTTP.py.

Things to do

  • HTTP [✓]
    • ETags support [✓]
    • Cache support [✓]
    • Pipelining support [✓]
    • Attachment support [✓]
    • Ranges support [✓]
    • Server [✓]
  • HTTP/2 [WIP]
    • HPACK [✓]
    • Frames [✓]
    • Streams [✓]
    • Connection [WIP]
  • HTTPS
    • TLS
    • Server

Tools I used for understanding HTTP

Wireshark to check HTTP packages and how should it look like.
Nodejs with Express to create HTTP server and check out how it works.
HTTPie CLI for forming HTTP Requests and Responses.
Grok for asking stupid questions (never VibeCoded btw.)

Refs for useful info about HTTP

Alek OS Video (Russian)
Mozilla HTTP Documentation Habr HTTP/2 Documentation (Russian) IANA HTTP/2 Parameters RFC 9113 HTTP/2 Documentation RFC 7541 HPACK Documentation

About

I'm trying to recreate HTTP and HTTPS connections from scratch

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors