ComputerScience/HTTP4 HTTP/3.0 ✏️ HTTP/3.0 HTTP/3은 HTTP/1.1 및 HTTP/2와 함께 World Wide Web에서 정보를 교환하는데 사용되는 HTTP의 세 번째 버전입니다. TCP 위에서 돌아가는 HTTP/2와는 달리 HTTP/3은 QUIC라는 계층 위에서 돌아가며, TCP 기반이 아닌 UDP 기반으로 돌아갑니다. 또한 HTTP/2의 장점이었던 멀티플렉싱을 가지고 있으며 초기 연결 설정 시 지연 시간 감소라는 장점이 있습니다. 👍 초기 연결 설정 시 지연 시간 감소 QUIC는 TCP를 사용하지 않기 때문에 통신을 시작할 때 번거로운 3-Way Handshake과정을 거치지 않아도 됩니다. QUIC는 첫 연결 설정에 1-RTT만 소요됩니다. 클라이언트가 서버에 어떤 신호를 한 번 주고, 서버도 거기에 응답하기만 하.. ComputerScience/HTTP 2023. 11. 16. HTTPS ✏️ HTTPS HTTP/2는 HTTPS 위에서 동작합니다. HTTPS는 애플리케이션 계층과 전송 계층 사이에 신뢰 계층인 SSL/TLS 계층을 넣은 신뢰할 수 있는 HTTP 요청을 말합니다. SSL/TLS SSL(Secure Socket Layer)은 SSL 1.0부터 시작해서 SSL 2.0, SSL 3.0, TLS(Transport Layer Security Protocol) 1.0, TLS 1.3까지 버전이 올라가며 마지막으로 TLS로 명칭이 변경되었으나, 보통 이를 합쳐 SSL/TLS로 많이 부릅니다. SSL/TLS는 전송 계층에서 보안을 제공하는 프로토콜입니다. 클라이언트와 서버가 통신할 때 SSL/TLS를 통해 제 3자가 메시지를 도청하거나 변조하지 못하도록 합니다. 위의 그림처럼 SSL/TL.. ComputerScience/HTTP 2023. 11. 16. HTTP/2 ✏️ HTTP/2 HTTP/2는 SPDY 프로토콜에서 파생된 HTTP/1.x보다 지연시간을 줄이고 응답 시간을 더 빠르게 할 수 있으며, 멀티플렉싱, 헤더 압축, 서버 푸시, 요청의 우선순위 처리를 지원하는 프로토콜입니다. 더보기 💡 SPDY 프로토콜 웹의 퍼포먼스 향상을 목표로 Google에 의해 개발된 개방형 네트워킹 프로토콜입니다. SPDY 프로토콜은 기본적으로 HTTP의 대안으로 고안되었으며, 웹 페이지의 로드 시간을 줄이기 위한 여러 최적화 및 기능을 제공합니다. 🔁 멀티플렉싱 멀티플렉싱이란 하나의 통신채널을 통해서 여러 개의 스트림을 사용하여 송수신한다는 것입니다. 더보기 💡 스트림 (Stream) 스트림은 연속적인 데이터의 흐름을 의미합니다. 프로그래밍에서 스트림은 파일, 네트워크 연결, 입.. ComputerScience/HTTP 2023. 11. 16. HTTP/1.0, HTTP/1.1 ✏️ HTTP/1.0 기본적으로 HTTP는 전송 계층 위에 있는 애플리케이션 계층으로 웹 서비스 통신에 사용됩니다. HTTP/1.0부터 시작해서 발전을 거듭하여 지금은 HTTP/3입니다. HTTP/1.0은 기본적으로 한 연결당 하나의 요청을 처리하도록 설계되었습니다. 하지만 서버로부터 파일을 가져올 때마다 TCP의 3-Way Handshake를 계속해서 열어야 하기 때문에 RTT가 증가하는 단점이 있습니다. 더보기 💡 RTT (왕복 지연 시간) 네트워크에서 특정 목적지까지의 신호를 보내고 그 응답이 돌아오는 데 걸리는 전체 시간을 나타냅니다. 🤔 RTT의 증가를 해결하기 위한 방법 매번 연결할 때마다 RTT가 증가하니 서버에 부담이 많이 가고 사용자 응답 시간이 길어졌습니다. 이를 해결하기 위해 이미지 .. ComputerScience/HTTP 2023. 11. 16. 이전 1 다음