HTTP1.1, HTTP2, HTTP3 비교

HTTP/2
* 요청 병렬 처리(멀티플렉싱) → 이미지·JS·CSS 다수 로딩 시 병목 감소
* 헤더 압축(HPACK) → 반복되는 헤더 크기 최소화
* 서버 푸시(Server Push) → HTML 요청 시 필요한 CSS/JS 미리 전송
HTTP/3
* TCP 대신 QUIC(UDP 기반) → 연결 초기 지연 감소, 패킷 손실 시 재전송 최소화
* TLS 1.3 내장 → 보안 + 속도 개선
* 모바일 네트워크 환경에서 연결 끊김 방지 (IP 변경에도 연결 유지)
HTTP 캐시 동작 원리
기본 원리
- 브라우저 요청 → 서버 응답에 캐시 관련 헤더(Cache-Control, Expires 등) 포함
- 브라우저나 중간 프록시가 리소스 저장
- 동일 요청 시 서버 대신 캐시에서 응답 (네트워크 비용 절감, 속도 향상)
주요 헤더
헤더 | 설명 | 예시 |
---|
Cache-Control | 캐시 동작 제어 | Cache-Control: max-age=3600, must-revalidate |
Expires | 캐시 만료 시각(HTTP/1.0) | Expires: Wed, 21 Oct 2025 07:28:00 GMT |
[캐시 동작 다이어그램]
[브라우저] → 요청 → [서버]
↑ ↓
└── 캐시 HIT? ─── 응답 저장
일반 HTTP 헤더 & 보안 헤더
분류 | 헤더 | 설명 | 예시 |
---|
일반 | Cache-Control | 캐시 정책 설정 | max-age=3600 |
- | Expires | 캐시 만료 시각 | Expires: ... |
- | Cookie | 상태 유지 데이터 | Cookie: sessionId=abc123 |
보안 | Authorization | 인증 정보 전송 | Authorization: Bearer <token> |
- | Content-Security-Policy | XSS·데이터 삽입 방지 | default-src 'self'; script-src 'self' https://apis.google.com |
HTTP 메서드와 CRUD
CRUD | 메서드 | 설명 | 예시 |
---|
Create | POST | 새로운 리소스 생성 | POST /users |
Read | GET | 리소스 조회 | GET /users/1 |
Update | PUT / PATCH | 리소스 전체/부분 수정 | PUT /users/1 |
Delete | DELETE | 리소스 삭제 | DELETE /users/1 |
HTTP 요청/응답 헤더 분석
요청 헤더
- Content-Type: 요청 바디 형식 (application/json)
- Accept: 클라이언트가 원하는 응답 MIME 타입
- User-Agent: 브라우저·OS 정보
응답 헤더
- Content-Type: 응답 데이터 형식 (text/html)
- Content-Length: 응답 바이트 길이
- Set-Cookie: 브라우저 쿠키 저장
HTTP 상태 코드
그룹 | 의미 | 예시 |
---|
1xx | 정보 | 100 Continue |
2xx | 성공 | 200 OK, 201 Created |
3xx | 리다이렉션 | 301 Moved Permanently, 302 Found |
4xx | 클라이언트 오류 | 400 Bad Request, 404 Not Found |
5xx | 서버 오류 | 500 Internal Server Error |
HTTP 요청-응답 흐름
단계
- URL 입력 → DNS 조회
- TCP/QUIC 연결
- 요청 전송
- 서버 처리
- 응답 반환
- 브라우저 렌더링
URI 구조 분석
URI 예시:
https://example.com:8080/path/to/resource?name=test#section
구성 요소 | 설명 | 예시 |
---|
scheme | 프로토콜 | https |
host | 서버 주소 | example.com |
port | 포트 번호 | 8080 |
path | 리소스 경로 | /path/to/resource |
query | 요청 파라미터 | name=test |
fragment | 문서 내 위치 | #section |
네트워크 계층 비교
OSI 7계층 | TCP/IP 4계층 | 역할 |
---|
응용 | 응용 | HTTP, FTP, SMTP 등 |
표현 | | 데이터 형식 변환, 암호화 |
세션 | | 연결 관리 |
전송 | 전송 | TCP, UDP |
네트워크 | 인터넷 | IP, ICMP |
데이터 링크 | 네트워크 액세스 | Ethernet, Wi-Fi |
물리 | | 케이블, 신호 |