핵심 답변
OSI 7계층은 네트워크 통신을 7개의 논리적 단계로 나눈 모델입니다. 각 계층은 독립적인 역할을 수행하며, 상위 계층은 하위 계층의 서비스를 사용합니다.

OSI (Open Systems Interconnection) 7계층 모델은 네트워크 통신 과정을 체계적으로 이해하기 위한 참조 모델입니다.

실무에서는 "L4 로드밸런서", "L7 스위치", "L3 라우팅"처럼 계층 번호로 장비나 기능을 지칭합니다. 각 계층을 이해하면 네트워크 장애 진단과 보안 설정이 훨씬 쉬워집니다.

아래에서 카카오 API 서버에 HTTP 요청을 보내는 과정을 7계층 순서대로 따라가며 실무 예시와 함께 설명하겠습니다.

알아야 할 배경 개념

1. 캡슐화 (Encapsulation)

데이터를 보낼 때 각 계층은 자신의 헤더를 추가합니다. 이를 캡슐화라고 합니다.

Application → HTTP 데이터
Transport   → HTTP 데이터 + TCP 헤더
Network     → HTTP 데이터 + TCP 헤더 + IP 헤더
Data Link   → HTTP 데이터 + TCP 헤더 + IP 헤더 + Ethernet 헤더

2. 역캡슐화 (Decapsulation)

데이터를 받을 때는 반대로 각 계층이 자신의 헤더를 벗겨냅니다.

3. PDU (Protocol Data Unit)

각 계층에서 처리하는 데이터 단위를 PDU라고 부릅니다:

7계층 상세 설명 (실무 예시 포함)
L7 Application Layer (응용 계층)

사용자와 직접 상호작용하는 계층. 실제 서비스 로직이 동작하는 영역입니다.

HTTP/HTTPS DNS SMTP FTP WebSocket
📌 실무 예시

브라우저에서 https://bzm-center-api.kakao.com/api/users로 GET 요청

→ HTTP 프로토콜로 요청 메시지 생성

→ 헤더에 Authorization: Bearer token 추가

🔧 관련 장비/도구

WAF (Web Application Firewall), API Gateway, CDN, Nginx (리버스 프록시)

L6 Presentation Layer (표현 계층)

데이터 형식 변환, 암호화/복호화, 압축/해제를 담당합니다.

TLS/SSL JPEG/PNG JSON/XML gzip UTF-8
📌 실무 예시

HTTPS 통신에서 TLS 핸드셰이크로 암호화 키 교환

→ AES-256으로 HTTP 데이터 암호화

→ gzip으로 압축하여 대역폭 절약

🔧 관련 장비/도구

SSL/TLS Offloading 장비, 인증서 관리 (Let's Encrypt, AWS ACM)

L5 Session Layer (세션 계층)

통신 세션의 시작, 유지, 종료를 관리합니다. 연결 상태를 추적합니다.

NetBIOS RPC PPTP Session Cookie
📌 실무 예시

사용자 로그인 후 세션 ID 발급 (Redis에 저장)

→ 이후 요청마다 세션 ID로 인증 상태 확인

→ 30분간 활동 없으면 세션 만료

🔧 관련 장비/도구

Redis (세션 스토어), JWT 토큰 기반 인증

L4 Transport Layer (전송 계층)

종단 간(end-to-end) 신뢰성 있는 데이터 전송을 보장합니다. 포트 번호로 애플리케이션을 구분합니다.

TCP UDP Port (80, 443, 3306...)
📌 실무 예시

TCP 3-way handshake로 연결 수립 (SYN → SYN-ACK → ACK)

→ 출발지 포트: 54321 (클라이언트 임의 할당)

→ 목적지 포트: 443 (HTTPS 표준 포트)

→ 데이터를 Segment로 나누어 전송, 순서 보장 및 재전송 처리

🔧 관련 장비/도구

L4 로드밸런서 (AWS NLB, HAProxy) - 포트 기반 부하 분산

방화벽 룰 (포트 열기/닫기)

L3 Network Layer (네트워크 계층)

논리적 주소(IP)를 기반으로 최적 경로를 찾아 패킷을 라우팅합니다.

IP (IPv4/IPv6) ICMP Routing NAT
📌 실무 예시

출발지 IP: 192.168.1.100 (내 PC)

목적지 IP: 123.45.67.89 (카카오 API 서버)

→ 라우터가 라우팅 테이블을 보고 다음 홉(hop) 결정

→ TTL(Time To Live) 값으로 무한 루프 방지

🔧 관련 장비/도구

라우터, VPC (Virtual Private Cloud), NAT Gateway, IPS (L3 분석)

L2 Data Link Layer (데이터 링크 계층)

물리적 주소(MAC)를 사용하여 같은 네트워크 내에서 프레임을 전달합니다. 오류 검출도 수행합니다.

Ethernet MAC Address ARP VLAN Switch
📌 실무 예시

ARP (Address Resolution Protocol)로 IP → MAC 주소 변환

→ 출발지 MAC: AA:BB:CC:DD:EE:FF

→ 목적지 MAC: 11:22:33:44:55:66 (게이트웨이 MAC)

→ Ethernet 프레임에 담아서 전송

🔧 관련 장비/도구

스위치 (Switch), 브릿지 (Bridge), NIC (Network Interface Card)

L1 Physical Layer (물리 계층)

비트를 전기 신호, 빛, 전파로 변환하여 물리적 매체를 통해 전송합니다.

Ethernet Cable (UTP) 광케이블 Wi-Fi USB Bluetooth
📌 실무 예시

랜선(CAT6)을 통해 전기 신호로 비트 전송

→ 1Gbps 속도로 데이터 전송

→ 허브, 리피터로 신호 증폭

🔧 관련 장비/도구

허브 (Hub), 리피터 (Repeater), 케이블, 광트랜시버

시각화: HTTP 요청의 여정
브라우저 → 카카오 API 서버 (HTTP 요청 과정) 송신측 (클라이언트) L7 Application GET /api/users Authorization: Bearer ... L6 Presentation TLS 암호화 + gzip 압축 L5 Session 세션 ID 확인 L4 Transport TCP SYN, Port 54321→443 L3 Network IP: 192.168.1.100 → 123.45.67.89 L2 Data Link MAC: AA:BB... → 11:22... L1 Physical 전기 신호 (랜선) Internet L3 라우터 L4 방화벽 수신측 (서버) L1 Physical 전기 신호 수신 L2 Data Link Ethernet 프레임 해석 L3 Network IP 헤더 확인 L4 Transport Port 443으로 라우팅 L5 Session 세션 복원 L6 Presentation TLS 복호화 + 압축 해제 L7 Application API 요청 처리 응답: { users: [...] } 캡슐화 역캡슐화 ⬇ 송신: 각 계층이 헤더 추가 (캡슐화) | ⬆ 수신: 각 계층이 헤더 제거 (역캡슐화)

다이어그램 해석:

실무에서 자주 쓰는 표현
표현 의미 예시
L4 로드밸런서 Transport 계층(포트)에서 부하 분산 AWS NLB, HAProxy (포트 80/443 분산)
L7 로드밸런서 Application 계층(URL 경로, 헤더)에서 부하 분산 AWS ALB, Nginx (경로 기반 라우팅)
L3 스위치 IP 라우팅 기능이 있는 스위치 VLAN 간 라우팅
L2 네트워크 같은 브로드캐스트 도메인 (MAC 주소로 통신) 같은 사무실 네트워크
L7 방화벽 (WAF) HTTP 요청 내용을 분석하여 차단 SQL Injection, XSS 차단

장애 진단 시 계층별 접근법

함께 알면 좋은 개념