HTTP
In this topic, we introduced a simple history of HTTP evolvation. And we compare the pros and cons of each of them.
HTTP Transfer progress
When TCP connection has already initiated, HTTP begins to be transferred.
HTTP 1.0
- Non-persistant HTTP
- At most one object sent over TCP connection
- Multiple Objects required multiple connections
- Response Time
- 2RTT + file transmission Time
![](/note/computer-network/application-layer/http/HTTP%201.0_hu01d27e33e883dec6028d423bb514d024_160203_da8085695593672e3d7fa21bb46c59fb.png)
HTTP 1.1
- Persistant HTTP
- Subsequent HTTP messages sent over the open connection
- FCFS
- HOL Blocking Problem
![](/note/computer-network/application-layer/http/HTTP%201.1_hudc80dc6d9dfaf95317bfb6566464cea5_293312_e92ad06d71c0978da22628b2bb552e2b.png)
HTTP/2
- Stream
- Multiplexed
- Prioritized
- Binary Framing Layer
- A Layer in the application layer
- Help HTTP Multiplexed to the frame, each frame can contain only header or data
![](/note/computer-network/application-layer/http/HTTP%202.0_hu57404a164243915960cb4cf0f15bdb62_321931_5245748c10207e7ee13d9915ee065d84.png)
HTTP/3
- QUIC(Quick UDP Internet Congestion)
- Based on UDP
- Adopts approaches of TCP connection establishment
- Reliability, congestion control, authentication, encryption
Here is a comparison of TLS and QUIC
![](/note/computer-network/application-layer/http/TLS%20vs%20QUIC_hue4a094707c7ff35e578be77688e7bff1_262852_89e4669950369d6dc2931acaaf304a00.png)