[HTTP] HTTP2 알아보기

2021. 1. 13. 00:07·기타/HTTP & 인증체계

 

HTTP/1.1

HTTP/1.1은 기본적으로 연결(Connection) 하나당 요청과 응답을 처리하기 떄문에

동시전송 문제와 다수 리소스 처리하기에 속도와 성능 이슈가 발생한다.

 

HTTP/2

HTTP/1.1에 대한 속도와 성능 이슈를 해결하고자 나온 것이 HTTP/2이다.


HTTP/2는 HTTP 표준을 대체하는 것이 아니라 확장한 것으로 HTTP/2 특징은 다음과 같다.

특징 내용
Multiplexed Streams * 커넥션 하나로 여러 메시지를 동시에 주고받을 수 있음.
* 네트워크 리소스를 보다 효율적으로 사용하여 
  지연 시간을 줄일 수 있음.
Stream Prioritization * 요청 리소스간 의존 관계를 설정할 수 있음.
ServerPush * 클라이언트 요청없이도 클라이언트로 Push할 수 있음.
Header Compression * Header 정보를 HPACK 압축방식 이용하여 압축전송 가능.
* Header 필드 압축을 통해 프로토콜 오버헤드 최소화.

 

HTTP/2의 성능 향상 중 핵심

 

HTTP/2에 성능 향상 중 핵심은 새 바이너리 프레이밍 계층으로, 이 계층 HTTP 메시지가 캡슐화되어 클라이언트와 서버 사이에 전송되는 방식을 규정한다.

기존 줄바꿈으로 구분되는 일반 텍스트 HTTP/1.x 프로토콜과 달리, 모든 HTTP/2통신은 더 작은 메시지와 프레임으로 분할되며, 각각은 바이너리 혁식으로 인코딩된다.

 

HTTP/2의 Stream, Message, Frame

Stream과 Message, Frame에 대한 용어 설명은 다음과 같다.

용어 내용
Stream * Connection 내에서 양방향 통신을 하고, 하나 이상의 메시지를 전달할 수 있음.
Message * 요청 또는 응답 메시지에 매핑되는 프레임의 전체 시퀀스를 의미한다.
Frame * HTTP/2에서 통신 최소 단위를 말하며, 최소 단위에는 하나의 프레임 헤더가 포함된다.
* 프레임 헤더는 최소한으로 프레임이 속하는 스트림을 식별할 수 있다.

정리하여 설명하면 다음과 같다.

  1. HTTP/2는 HTTP 프로토콜 통신을 바이너리 인코딩된 프레임의 교환을 세분화한다.
  2. 프레임은 특정 스트림에 속하는 메시지에 매핑한다.
  3. 모든 프레임은 단일 TCP 연결 내에서 다중화한다.

 

 

반응형

'기타 > HTTP & 인증체계' 카테고리의 다른 글

[HTTP] HTTP란 무엇인가? HTTP 알아보기2 - URI & URL  (0) 2021.01.12
[HTTP] HTTP란 무엇인가? HTTP 알아보기 1  (0) 2021.01.12
[인증체계] OAuth 2.0 정리 with OAuth  (2) 2020.10.12
'기타/HTTP & 인증체계' 카테고리의 다른 글
  • [HTTP] HTTP란 무엇인가? HTTP 알아보기2 - URI & URL
  • [HTTP] HTTP란 무엇인가? HTTP 알아보기 1
  • [인증체계] OAuth 2.0 정리 with OAuth
Jo__oD
Jo__oD
[N개의 취미중 1개] Playground
  • Jo__oD
    JUST
    Jo__oD
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • Framework & Library
        • React
        • Next.js
        • Spring & Spring Boot
      • Dev & Lenguage
        • JavaScript
        • JAVA
        • 백엔드 & 프론트엔드 개발
      • Cloud & DevOps
        • OpenStack
      • Knowledge N
        • 운영체제(OS)
        • 네트워크(Network) N
        • 데이터베이스(DB)
        • 자료구조 & 알고리즘
        • 디자인 패턴
      • 운영
        • Linux
        • Windows
        • Docker
      • 기타
        • HTTP & 인증체계
        • Raspberry Pi
      • Error
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ip자동할당
    OpenStack
    VMware 생성
    java
    가상 머신
    ip할당 설정
    Keystone
    가상 머신 Ubuntu
    지식채우기
    도서
    http 개념
    가상 머신 Ubuntu 생성
    가상머신
    가상 머신 서버 생성
    http
    오픈스택을 다루는 기술
    네트워크 분할
    VMware Ubuntu 생성
    가상 머신 생성
    raspberry pi
  • 최근 댓글

  • 최근 글

  • 160x600
  • hELLO· Designed By정상우.v4.10.3
Jo__oD
[HTTP] HTTP2 알아보기
상단으로

티스토리툴바