네트워크 | HTTP 프로토콜과 WWW 구성 요소

Faithful Dev·2025년 1월 29일

컴퓨터 공학

목록 보기
72/81

WWW (World Wide Web)

WWW(World Wide Web, 월드 와이드 웹)는 인터넷을 통해 정보를 공유할 수 있는 전 세계적인 정보 공간이다.

WWW의 핵심 요소

WWW는 세 가지 주요 기술을 기반으로 동작한다.
1. URL(Uniform Resource Locator): 웹상의 자원의 위치(주소)를 식별.
2. HTTP(HyperText Transfer Protocol): 웹에서 데이터를 주고받는 프로토콜.
3. HTML(HyperText Markup Language): 웹 페이지를 작성하는 마크업 언어.

사용자가 웹 브라우저에서 https://example.com을 입력하면, 브라우저는 HTTP 프로토콜을 사용하여 서버와 통신하고 HTML 문서를 받아와 화면에 표시한다.


HTTP(HyperText Transfer Protocol)란?

HTTP는 웹에서 데이터를 주고받기 위한 통신 프로토콜로, 클라이언트(브라우저)와 서버 간의 요청(Request) 및 응답(Response)을 처리한다.

HTTP의 특징

  • 비연결성(Connectionless)
    • 요청을 보내고 응답을 받은 후 연결을 종료함.
    • 요청마다 새로운 연결을 생성하는 방식.
  • 무상태성(Stateless)
    • 서버가 이전 요청의 상태를 저장하지 않음.
    • 세션 유지가 필요하면 쿠키(Cookie), 세션(Session), JWT 등의 방법을 사용해야 함.

HTTP의 동작 과정

  1. 클라이언트(웹 브라우저)가 서버에 요청(Request)
    • 예: 사용자가 https://example.com 입력 → HTTP 요청 전송
  2. 서버가 요청을 처리한 후 응답(Response) 반환
    • 예: HTML, CSS, JavaScript 파일 전송
  3. 브라우저가 받은 데이터를 해석하고 화면에 출력
    • 예: HTML을 렌더링하여 웹 페이지에 표시

HTTP/1.1

HTTP/1.1은 HTTP의 첫 번째 주요 개정판(1997, RFC 2068, 이후 RFC 2616)으로, 기존 HTTP/1.0의 단점을 개선한 버전이다.

HTTP/1.0과 HTTP/1.1의 주요 차이점

특징HTTP/1.0HTTP/1.1
기본 연결 방식요청마다 연결 생성(비효율적)Persistent Connection(연결 유지)
파이프라이닝지원하지 않음지원(OOOO vs OXOX)
호스트 헤더(Host Header)필요 없음(하나의 IP에 하나의 도메인)필수(가상 호스팅 지원)
캐싱 개선기본적인 Expires 지원Cache-Control, ETag 추가

HTTP/1.1의 주요 개선 사항

  1. Persistent Connection(지속적 연결) 지원
    • HTTP/1.0에서는 매 요청마다 TCP 연결을 새로 열어야 했음.
    • HTTP/1.1에서는 기본적으로 하나의 TCP 연결을 여러 요청/응답에 재사용 → 성능 개선.
    • 이를 Keep-Alive라고도 함.
  2. Pipelining(파이프라이닝) 지원
    • 여러 개의 요청을 순차적으로 전송 가능.
    • 요청과 응답이 1:1이 아니라, 요청을 여러 개 보내고 응답을 순차적으로 받을 수 있음.
    • 다만, 응답이 순서대로 도착해야 해서 HOL(Head-of-Line) Blocking 문제가 발생할 수 있음.
  3. Host 헤더 필수화
    • HTTP/1.0에서는 IP 하나당 하나의 웹사이트만 운영 가능.
    • HTTP/1.1에서는 Host: example.com을 요청 헤더에 포함하여 IP 하나로 여러 도메인(가상 호스팅) 운영 가능.
  4. 캐싱(Cache) 개선
    • HTTP/1.0에서는 Expires(절대 만료 시간)만 지원.
    • HTTP/1.1에서는 Cache-Control, ETag(엔터티 태그) 등 더 정교한 캐싱 메커니즘 도입.

정리

  • WWW는 인터넷에서 웹 페이지를 공유하는 시스템.
  • HTTP는 클라이언트-서버 간 데이터를 주고받는 프로토콜.
  • HTTP/1.1은 기존 HTTP/1.0을 개선하여 연결 유지, 파이프라이닝, 가상 호스팅, 캐싱 최적화 등의 기능을 추가하여 웹 성능을 높임.

이후 HTTP/2, HTTP/3에서는 멀티플렉싱, 압축, QUIC 등의 기술로 더욱 성능을 개선했다.

profile
Turning Vision into Reality.

0개의 댓글