inflearn logo
강의

Course

Instructor

The Basics of CS Knowledge | Design Patterns Network Operating System Database Data Structure

DEEP DIVE: Differences between HTTP/2 and HTTP/3 ★★★

헤더 압축부분 질문드립니다

71

recon

13 asked

0

1.1에서 네이버의 이미지를 예시로 들어주셨는데

예시로 드신 이미지에는 동일헤더가 포함되어있는데 그럼 헤더중복을 제거되지 않은것으로 보이는데 맞을까요?

 

아니면 서버에서 전달은 하되 클라이언트에서 처리되는건가요?

면접 운영체제 기술면접

Answer 2

0

kundol

안녕하세요 recon님ㅎㅎ

 

예시로 드신 이미지에는 동일헤더가 포함되어있는데 그럼 헤더중복을 제거되지 않은것으로 보이는데 맞을까요?

-> 아닙니다.

 

저렇게 보여도 네트워크 프로토콜을 보시면

스크린샷 2025-10-26 오전 2.15.28.png.webp

앞의 그림처럼 http2를 사용하는 것을 알 수 있습니다.

때문에 헤더 중복을 처리했다고 보시면 됩니다.

 

자세히는 다음과 같습니다.

HTTP/2 계층에서 HPACK으로 헤저를 압축 → 네트워크 전송

 

이후 클라이언트가 브라우저로 컨텐츠를 수신할 때

HPACK 디코딩 → 각각의 컨텐츠가 원래의 헤더로 복원 → 브라우저에 전달

이 때문에 개발자 도구(Network 탭) 에서는 여전히 “모든 헤더가 다 있는 것처럼” 보이는 것입니다.

 

 

참고로

HTTP/2는 여러 요청을 하나로 합쳐서 보내는 게 아닙니다. 대신 각 요청의 헤더를 인덱스 기반으로 압축해서 전송합니다. (즉, 헤더의 중복을 제거하지, 요청 자체를 합치는 것은 아닙니다. )

예를 들어, 5개의 요청이 있고 모두 cookie: session=kundol 를 포함한다면: 첫 요청에서는 실제 문자열 "cookie: session=kundol" 전송 이후 4개의 요청은 “이전 헤더 테이블의 #7번 참조”처럼 단 1바이트로 전송해서 처리를 합니다.

 


 

또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 김진동님.

네트워크 통신에서 헤더 압축 과정은 매우 중요합니다. 이를 통해 데이터 전송 효율성을 높일 수 있기 때문입니다. 강의에서 사용된 네이버 이미지를 예시로 들었을 때, 동일한 헤더가 보였다는 것은, 해당 예시가 단순히 설명 목적으로 사용된 것일 수 있습니다. 실제로 HTTP/2와 같은 프로토콜에서는 ‘헤더 압축’을 통해 중복되는 헤더들을 제거하여 전송 효율성을 더 높이게 됩니다. 이 과정은 실제 데이터 전송 시에 서버와 클라이언트 사이에서 자동적으로 처리됩니다.

서버에서 헤더를 전송할 때, 클라이언트에서는 이러한 헤더들을 기반으로 캐시 처리 및 데이터 통신 효율화를 하게 됩니다. 클라이언트 측에서는 이러한 압축된 헤더를 해제하며, 중복되는 헤더가 있을 경우 이를 인식하고 처리할 수 있습니다.

관련된 네트워크 강의는 아래와 같이 링크를 첨부하여 설명되어 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏

추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

REST API (Self-descriptive messages)

0

22

1

시스템 엔지니어 관련 질문입니다.

0

50

2

오버라이딩 관련하여 질문드립니다.

0

61

2

교착상태의 4가지 필요조건이 필요충분조건이 아닌 이유

0

88

1

렌더 트리, 렌더 레이어와 그래픽 레이어

0

55

2

로컬스토리지, 세션스토리지, 쿠키의 공통점

0

66

1

IPv4가 IPv6보다 빠른 경우

0

97

2

UDP가 전송계층의 역할을 못하는 건 아닌지

0

58

1

Path MTU 발견하였음에도 패킷 분할이 필요한 이유?

0

65

2

교재의 LFU 알고리즘에서 6번이 왜 히트인가요?

0

62

2

페이지 교체 알고리즘? 프레임 교체 알고리즘?

0

80

2

Static 키워드가 메모리에 올라가는 시점

0

74

2

공유 캐시 관련 질문 드립니다.

0

55

2

컨텍스트는 context와 contextual information으로 나눠진다는게 무슨뜻인가요?

0

198

1

회선과 대역폭의 관계

0

59

2

44강 질문

0

91

2

버스 토폴로지 질문 있씁니다

0

52

1

자바스크립트, xml 문법 관련

0

63

2

전략패턴과 의존성주입 질문

0

68

2

Model이 비즈니스 로직을 담당하나요?

0

105

2

CS 공부 하는 법

0

180

2

큰돌님 블로그에 개념정리해서 올려도될까요!

0

136

2

FIN 세그먼트 질문

0

69

2

flux 패턴 질문

0

67

2