쵼쥬
쵼쥬의 개발공부 TIL
쵼쥬
전체 방문자
오늘
어제
  • 분류 전체보기 (276)
    • 코딩테스트 (192)
      • [알고리즘] 알고리즘 정리 (7)
      • [백준] 코딩테스트 연습 (126)
      • [프로그래머스] 코딩테스트 연습 (59)
    • Spring (71)
      • [인프런] 스프링 핵심 원리- 기본편 (9)
      • [인프런] 스프링 MVC 1 (6)
      • [인프런] 스프링 MVC 2 (4)
      • [인프런] 실전! 스프링 부트와 JPA 활용1 (7)
      • [인프런] 실전! 스프링 부트와 JPA 활용2 (5)
      • [인프런] 실전! 스프링 데이터 JPA (7)
      • [인프런] 실전! Querydsl (7)
      • JWT (5)
      • [인프런] Spring Cloud (17)
      • [인프런] Spring Batch (4)
    • Java (6)
      • [Java8] 모던인자바액션 (4)
      • [부스트코스] 웹 백엔드 (2)
      • [패스트캠퍼스] JAVA STREAM (0)
    • CS (6)
      • 디자인 패턴과 프로그래밍 패터다임 (2)
      • 네트워크 (4)

블로그 메뉴

  • 홈

공지사항

인기 글

태그

  • MVC
  • 누적합
  • 코딩테스트
  • 자바
  • 부스트코스
  • Spring Data JPA
  • 백준
  • 구현
  • 위클리 챌린지
  • 프로그래머스
  • jpa
  • spring
  • 알고리즘
  • 스프링
  • 비트마스킹
  • BFS
  • 백분
  • querydsl
  • 인프런
  • 타임리프

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
쵼쥬

쵼쥬의 개발공부 TIL

CS/네트워크

HTTP

2022. 6. 15. 21:31

HTTP/1.0 

기본적으로 한 연결당 하나의 요청을 처리하도록 설계

-> 서버로부터 파일을 가져올 때마다 TCP의 3-way handshake를 계속 수행

-> RTT(패킷이 목적지에 도달하고 나서 다시 출발직로 돌아오기까지 걸리는 시간) 증가 문제 

 

RTT 증가를 해결하기 위해 이미지 스플리팅, 코드 압축, 이미지 Base64 인코딩 사용

 

HTTP/1.1

매번 TCP를 연결하는 것이 아니라 한번 TCP를 초기화를 한 이후에 keep-alive라는 옵션으로 여러 개의 파일을 송수신할 수 있게 변경

(1.0에도 keep-alive가 있었지만 표준화 되어있지 않았음)

 

TCP의 3-way handshake가 한번 발생한 다음부터 발생하지 않지만 다수의 리소스를 처리하려면 요청할 리소스 개수에 비례해서 대기 시간이 길어지는 단점이 있다.

헤더에 많은 메타데이터가 들어있어서 무거웠다.

 

HTTP/2

SPDY 프로토콜에서 파생된 HTTP/1.x 보다 지연 시간을 줄이고 응답 시간을 빠르게 할 수 있으며 멀티플레깅, 헤더 압축, 서버 푸시, 요청의 우선순위 처리를 지원하는 프로토콜

 

멀티플레싱 - 여러개의 스트림을 사용하여 송수신하는 것. 특정 스트림이 손실되었다고 하더라도 해당 스트림에만 영향을 미치고 나머지 스트림을 멀쩡하게 동작할 수 있다.

 

3-way handshake가 아닌 단일 연결을 사용하여 병렬로 여러 요청을 받을 수 있고 응답을 줄 수 있다.

-> HTTP/1.x에서 발생하는 HOL Blocking 을 해결

 

헤더 압축

 

서버 푸시

 

HTTPS

HTTP/2는 HTTPS 위에서 동작한다. 

HTTPS는 어플리케이션 계층과 전송 계층 사이에 신뢰 계층인 SSL/TLS 계층을 넣은 신뢰할 수 있는 HTTP 요청이다.

통신을 암호화

 

 

HTTP/3

TCP기반이 아닌 UDP기반으로 동작

 

 

'CS > 네트워크' 카테고리의 다른 글

IP 주소  (0) 2022.05.30
TCP/IP 4계층 모델  (0) 2022.05.29
네트워크의 기초  (0) 2022.05.29
    'CS/네트워크' 카테고리의 다른 글
    • IP 주소
    • TCP/IP 4계층 모델
    • 네트워크의 기초
    쵼쥬
    쵼쥬

    티스토리툴바