HTTP
HTTP/2에 대해
Http2가 필요해진 배경HTTP/1.1에서 브라우저가 파이프라이닝을 잘 지원하지 않는다.HTTP/1.1은 파이프라이닝 중에 먼저 온 요청이 후속요청을 블로킹한다.(HOL Blocking)브라우저는 HOL Blocking을 해결하기 위해 하나의 도메인에 대해 최대 6개까지의 TCP 커넥션을 제공한다. 6개의 요청을 병렬로 처리할 수 있는 것이다.하지만 최근에 6개도 부족하여 하위 도메인에서 처리하도록 해서 추가적인 커넥션을 확보할 수 있도록 하는 방법(domain sharding) 으로 우회해서 사용된다.HTTP2의 특징Binary Framing Layer기존의 text 형식이 아닌 binary 형식으로 전송한다.하나의 메시지가 frame이라는 작은 단위로 쪼개져서 전송된다.Multiplexingbina..
HTTP/1에 대해
HTTP/0.9의 등장HTTP 프로토콜은 HTML이라는 문서를 통신하기 위한 프로토콜로 1966년에 도입되었다. 이가 HTTP/0.9 이다.이 버전은 GET 메소드만 지원하고 헤더나 상태 코드도 존재하지 않는 정말 프로토타입의 HTTP 프로토콜이었다.HTTP1의 도입HTTP/1.0은 POST나 HEAD 메서드가 추가된 형태이다.이러한 메서드의 도입으로 응용할 수 있는 부분이 늘어났지만, 여전히 많은 문제를 가지고 있었다.이러한 문제들을 해결하여 나온 HTTP 버전이 1.1이다.Persistent ConnectionsHTTP는 단일한 요청에 대해 단일한 응답을 주는 프로토콜로 설계되었다.하지만 요청이 빈번해져도 하나의 요청에 대해 하나의 응답만 해줄 수 있기 때문에 불필요한 3-way-handshake를 ..