OSI 7계층
네트워크 통신의 표준 설계 모델. 각 계층이 무엇을 담당하고, 데이터가 어떻게 캡슐화되어 전달되는지 이해한다.
OSI 모델이란?
OSI(Open Systems Interconnection) 모델은 1984년 ISO가 제정한 네트워크 통신의 표준 참조 모델이다. 서로 다른 제조사, 서로 다른 운영체제를 쓰는 시스템들이 일관된 방식으로 통신할 수 있도록 통신 과정을 7개의 계층(Layer)으로 분리해 정의한다.
실제 인터넷은 TCP/IP 4계층 모델을 사용하지만, OSI 모델은 개념을 이해하고 문제를 진단하는 데 여전히 핵심적인 프레임워크로 사용된다. "3계층 문제", "4계층 로드밸런서" 같은 표현이 모두 OSI 계층 번호에서 비롯된다.
7개 계층 전체 구조
하위→상위: "Please Do Not Throw Sausage Pizza Away"
각 계층 상세 해설
7계층 — 응용 계층 (Application Layer)
최종 사용자 애플리케이션이 네트워크에 접근하는 진입점이다. 프로토콜은 서비스의 종류에 따라 달라진다. 웹 브라우저가 서버에 페이지를 요청할 때는 HTTP, 메일을 보낼 때는 SMTP, 파일을 옮길 때는 FTP를 사용한다.
HTTP/HTTPSFTP/SFTPSMTP/POP3/IMAPDNSSSHSNMP
6계층 — 표현 계층 (Presentation Layer)
데이터를 응용 계층이 이해할 수 있는 형식으로 변환하는 역할을 한다. 주요 기능은 세 가지다: 변환(Translation) — ASCII ↔ EBCDIC 등 문자 인코딩 변환, 암호화/복호화 — TLS/SSL이 여기서 데이터를 암호화, 압축 — 전송량 최소화. 실제 TCP/IP 구현에서는 5·6계층이 응용 계층에 흡수되는 경우가 많다.
5계층 — 세션 계층 (Session Layer)
두 응용 프로세스 간의 대화(Dialog)를 관리한다. 세션을 열고(Open), 유지하며(Maintain), 닫는(Close) 기능을 제공한다. 체크포인팅(Checkpointing) 기능으로 긴 전송 도중 오류가 발생해도 마지막 체크포인트부터 재개할 수 있다.
4계층 — 전송 계층 (Transport Layer) ⭐
종단 간(End-to-End) 통신을 보장하며, 포트 번호로 같은 호스트의 여러 프로세스를 구분한다. TCP는 연결 지향으로 신뢰성 있는 전송을 보장하고, UDP는 비연결로 빠른 전송을 제공한다.
3계층 — 네트워크 계층 (Network Layer) ⭐
출발지에서 목적지까지 최적 경로를 선택(라우팅)하는 계층이다. IP 주소를 사용해 논리적으로 장치를 식별하며, 라우터가 이 계층에서 동작한다. 라우팅 프로토콜(OSPF, BGP)이 경로 정보를 교환해 최적 경로를 계산한다.
2계층 — 데이터링크 계층 (Data Link Layer)
동일 네트워크 내의 노드 간 통신을 담당한다. MAC(Media Access Control) 주소로 장치를 식별하며, 스위치가 이 계층에서 동작한다. LLC(Logical Link Control)와 MAC 두 개의 서브 계층으로 나뉘며, CRC를 통한 오류 검출 기능도 제공한다.
1계층 — 물리 계층 (Physical Layer)
비트(0과 1)를 물리적 신호(전압, 광 펄스, 전파)로 변환해 전송하는 계층이다. 케이블의 종류(UTP, 광섬유), 커넥터 규격, 신호 전압 레벨이 모두 이 계층의 명세에 해당한다.
캡슐화와 역캡슐화
데이터가 송신 측에서 계층을 내려갈 때마다 각 계층은 자신의 헤더(Header)를 앞에 붙인다. 이를 캡슐화(Encapsulation)라 한다. 수신 측은 반대로 계층을 올라가며 헤더를 제거한다 — 역캡슐화(Decapsulation).
계층별 PDU (Protocol Data Unit)
| 계층 | PDU 이름 | 장비 | 주소 체계 |
|---|---|---|---|
| 7·6·5 응용/표현/세션 | 데이터 (Data) | 방화벽, 프록시 | — |
| 4 전송 | 세그먼트 (Segment) | 방화벽(L4) | 포트 번호 |
| 3 네트워크 | 패킷 (Packet) | 라우터 | IP 주소 |
| 2 데이터링크 | 프레임 (Frame) | 스위치, 브리지 | MAC 주소 |
| 1 물리 | 비트 (Bit) | 허브, 케이블 | — |
OSI vs TCP/IP 비교
| OSI 계층 | TCP/IP 계층 | 대표 프로토콜 |
|---|---|---|
| 7 · 6 · 5 | 응용 (Application) | HTTP, FTP, DNS, SMTP |
| 4 | 전송 (Transport) | TCP, UDP |
| 3 | 인터넷 (Internet) | IP, ICMP, ARP |
| 2 · 1 | 네트워크 접근 (Network Access) | 이더넷, Wi-Fi, PPP |
OSI 모델이 개념 정의에 충실하다면, TCP/IP 모델은 실제 인터넷 구현에 맞춰 단순화된 모델이다. 현실에서 개발자가 코드를 짤 때는 TCP/IP 모델을 기준으로 생각하지만, 네트워크 문제를 계층별로 진단할 때는 OSI 7계층 개념이 훨씬 유용하다.
실무에서의 활용
2계층:
arp -a로 MAC 주소 확인, 스위치 포트 상태3계층:
ping, traceroute로 IP 경로 확인4계층:
telnet host port, netstat으로 포트 오픈 여부7계층: HTTP 응답 코드, 애플리케이션 로그 확인
# 계층별 주요 진단 명령어 # L1/L2 확인 $ ip link show $ arp -n # L3 확인 $ ping 8.8.8.8 $ traceroute 8.8.8.8 $ ip route show # L4 확인 $ ss -tlnp $ telnet google.com 80 # L7 확인 $ curl -v https://example.com $ nslookup example.com
댓글