오늘의../이달의 책

Learning HTTP/2 러닝 HTTP/2 (1)

dolhim 2018. 8. 5. 17:15

23페이지

HTTP/1.0의 특징 (1996년 발표, RFC 1945)

  1. 헤더
  2. 응답 코드 Response codes
  3. 리다이렉트 Redirects
  4. 오류 Errors
  5. 조건부 요청 Conditional requests
  6. 콘텐츠 인코딩 encording (압축 compression)
  7. 요청 메서드 Request methods
단점
  1. 여러 요청 사이에 연결을 유지하는 기능이 없음
  2. Host 헤더가 필수가 아니였음
  3. 캐싱 cashing 옵션이 빈약했음

HTTP/1.1 의 특징 (20년 이상 사용 중, RFC 2616)
  1. casheability 헤더의 확장
  2. OPTIONS 메서드
  3. Upgrade 헤더
  4. Range 요청
  5. Transfer-Encording 압축
  6. 파이프라이닝 Pipelining
[메모] 파이프라이닝은 '클라이언트가 요청을 한꺼번에 전송할 수 있는 기능'인데 
어떤 오래걸리는 요청을 처리하는 동안 HOL 블로킹 현상으로 인해 
다른 요청들에 대한 응답도 지연되는 문제로 잘 사용하지 않는다.

[용어]
IEIF Internet Engineering Task Force
RFC Request For Comments


25페이지

SPDY의 특징 (H2의 기틀 마련)
  1. 다중화 multiplexing
  2. 프레이밍 framing
  3. 헤더 압축 header compression

26페이지


HTTP/2.0의 목표

  1. 체감 지연 시간(Latency)를 개선한다.
  2. 'HOL 블로킹(Head Of Line Blocking)' 문제를 해결한다.
  3. 병렬처리를 위해 다중 연결 필요 없다. 혼잡 제어 (Congestion Control)  관련 동작을 제어한다.
  4. HTTP/1.1의 의미 체계를 유지한다.
  5. 중재자(intermediary)를 명확히 정의한다.
  6. 새로운 확장 기능과 정책을 적절히 사용할 수 있도록 명확하게 한다. 

[용어]

TLS Transport Layer Security


39페이지

패킷이란? TCP 통신에 필요한 여러 항목을 정의하는 구조로 bytes의 모음, 페이로드 payload, 크기는 총 1460bytes