HTTP protocol evolution from 1.0 to 3 (QUIC). Covers request/response structure, methods (GET/POST/PUT/DELETE/PATCH), status codes (1xx/2xx/3xx/4xx/5xx), headers, caching with ETag/Cache-Control, conditional requests, idempotency. Three transport stacks side-by-side: HTTP/1.1 (text, keep-alive, head-of-line blocking), HTTP/2 (binary framing, multiplexing on 1 TCP, HPACK header compression, TCP HoL still present), HTTP/3 (over QUIC/UDP, true multiplex, 0-RTT, connection migration). Seven scenarios: simple GET 200, POST 201 Created, conditional GET with ETag returning 304, HTTP/1.1 head-of-line blocking, HTTP/2 multiplexing with TCP HoL caveat, HTTP/3 over QUIC with packet loss isolation, status codes 401/403/429/502/504.
HTTP defines application-level request, response, method, status, representation, conditional, and intermediary semantics. HTTP/1.1, HTTP/2, and HTTP/3 share those semantics while using different message framing and transports.
One HTTP request and final response. Methods and status codes carry semantics independently of the selected HTTP version.
Freshness and conditional validation. A stale stored response is not automatically reusable; validators can avoid retransmitting an unchanged representation.
Mutation retry after an ambiguous failure. HTTP method idempotency and application operation deduplication are related but not interchangeable.
Version-specific multiplexing and loss. HTTP semantics remain shared while framing and transport failure domains differ.
Введите числа или выберите пресет