HTTP 1.1
기본적으로 Connection 하나당 하나의 요청을 처리하도록 설계되어 있다.
동시에 여러개의 리소스를 주고받는 것이 불가능 하기 때문에 순차적으로 이루어진다.
→ 다수의 리소스를 처리할 때 latency가 생긴다.
이러한 특성 때문에 Head Of Line Blocking이 발생한다.
첫 번째 패킷에 의해 지연될 때 발생하는 성능 저하 현상. 최악의 경우 패킷 드랍까지 발생.
HTTP 2.0
HTTP 3.0
HTTPS(secure)
HTTP를 암호화하는 방법으로 기본적으로 SSL/TLS을 사용하여 암호화된 형식으로 HTTP메세지를 래핑한다.
대칭키를 통해 세션키를 발급받고, 비대칭키를 이용해서 세션키를 공유한다.
SSL
Secure Sockets Layer의 약자로 암호화 기반 인터넷 보안 프로토콜을 뜻한다.
전달되는 모든 데이터를 암호화하고 특정 유형의 공격도 차단한다. SSL은 TLS 암호화의 전신이기도 하다.
TLS
Transport Layer Security의 약자로 SSL의 업데이트 버전이라고 생각하면 편하다.
데이터를 암호화하고 handshake을 통해 인증이 이루어진다. 또한 데이터 무결성을 위해 데이터에 디지털 서명을 하여 데이터가 도착 전에 조작된지 확인한다.