
사용자가 브라우저 주소창에 www.example.com 입력
도메인 이름을 IP 주소로 변환하는 과정은 다음과 같이 진행됩니다:
- 브라우저 캐시 확인
- 운영체제 캐시 확인
- 로컬 DNS 서버 조회
- 루트 DNS 서버 조회
- TLD 서버 조회 (.com, .org 등)
- 권한 있는 네임서버 조회

클라이언트 → 서버: SYN (연결 요청)
서버 → 클라이언트: SYN + ACK (요청 승인 + 연결 요청)
클라이언트 → 서버: ACK (연결 확정)
👉 HTTPS라면 TLS 핸드셰이크가 이어서 진행됨
- Client Hello (지원하는 암호화 방식 전송)
- Server Hello (인증서 및 선택된 암호화 방식 전송)
- 인증서 검증
- 대칭키 생성 및 교환
- 암호화 통신 시작
| 특성 | TCP | UDP |
|---|---|---|
| 연결성 | 연결 지향 | 비연결 지향 |
| 신뢰성 | 보장 | 보장하지 않음 |
| 속도 | 상대적으로 느림 | 빠름 |
| 용도 | 웹, 이메일, 파일전송 | 게임, 스트리밍 |
브라우저가 요청 메세지(HTTP Method, Header, Body 등) 전송
HTTPS는 HTTP에 SSL/TLS 암호화를 추가한 프로토콜입니다:
HTTP의 문제점:
HTTPS의 장점:

대표적인 웹서버: Apache, Nginx 등
주요 역할:
대표적인 WAS: Tomcat, WebLogic 등
주요 역할:
서버는 클라이언트의 요청을 처리한 후 HTTP 응답을 보냅니다:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 1234
Cache-Control: max-age=3600
Set-Cookie: sessionid=abc123; HttpOnly; Secure
<!DOCTYPE html>
<html>
<head>
<title>Example Page</title>
</head>
<body>
<h1>안녕하세요!</h1>
</body>
</html>
브라우저는 받은 HTML, CSS, JavaScript를 해석하여 사용자에게 보여줄 페이지를 구성합니다:
1. HTML 파싱 → DOM 트리 생성
2. CSS 파싱 → CSSOM 트리 생성
3. DOM + CSSOM → 렌더 트리 생성
4. 레이아웃 (Reflow) → 요소들의 위치와 크기 계산
5. 페인트 (Repaint) → 실제 픽셀로 그리기
6. 합성 (Composite) → 레이어들을 합쳐서 최종 화면 생성
모든 통신이 완료되면 TCP 연결을 정리합니다:
클라이언트 → 서버: FIN (연결 종료 요청)
서버 → 클라이언트: ACK (종료 요청 확인)
서버 → 클라이언트: FIN (서버도 연결 종료 요청)
클라이언트 → 서버: ACK (최종 확인)