Http
- 웹상에서 클라이언트와 서버 간 통신을 위한 프로토콜
Application 계층에 HTTP 프로토콜
Http 0.9 ~ 2 는 TCP 를 사용
Http 1.0
Http 0.9 → 요청이 한 줄 / GET 방식 뿐 → 얼라인
Http 1.0 → 해더들이 붙기 시작 → 다른 파일들도 붙기 시작
- 커넥션 하나당 응답 하나
- 매번 새로운 연결에 성능 저하 / 서버 과부화
Http 1.1 → Persistent Connection
- 지정한 timeOut 동안 커넥션을 닫지 않는 방식
- pipelining
- 하나의 커넥션에서 응답 없이 순차적 요청들을 연속적으로 보내 그 순서에 맞게 응답을 받는 방식 → 지연 시간을 줄이는 방법
- Head of Line Blocking → 앞자리에서 막히면 안 감
- Header 의 중복
Http 2.0
Http 2 → 기존 Http 1.- 버전의 성능 향상에 초점을 맞춘 프로토콜 ( 대체 x 확장 0 )
- 메시지 전송 방식의 변화 → 바이너리 프레이밍 계층 (파싱 , 전송속도 | 오류 발생 가능성 개선 )
- Request and Response Multiplexing → Head of Line Blocking 이 해결