OSI 7 Layer
계층화
네트워크 통신에는 케이블 신호 처리부터 애플리케이션 데이터 해석까지 매우 이질적인 작업이 섞여 있다. 이를 한 덩어리로 다루면 다음과 같은 문제가 생긴다.
- 한 부분만 수정해도 전체를 다시 설계해야 한다
- 서로 다른 벤더의 장비가 호환되기 어렵다
- 장애가 어느 단계에서 발생했는지 추적하기 힘들다
계층화는 각 계층이 바로 위, 아래 계층의 인터페이스만 알면 동작하도록 만들어, 한 계층의 내부 구현이 바뀌어도 다른 계층은 영향을 받지 않게 한다. 예를 들어 물리 매체가 광케이블에서 무선으로 바뀌어도 상위 계층(IP, TCP, HTTP)은 영향을 받지 않는다.
OSI 7 Layer Model
OSI(Open Systems Interconnection) 모델은 ISO에서 1984년 표준화한 네트워크 통신을 7개의 계층으로 나눈 참조 모델이다. 서로 다른 시스템이 통신할 수 있도록 통신 과정을 기능 단위로 분리하고, 각 계층이 어떤 역할을 맡는지 정의한다.
실제 인터넷은 TCP/IP 모델을 기반으로 동작하지만, OSI는 통신 과정을 이해하고 설계나 진단을 할 때의 표준 언어 역할을 한다. "L2 스위치", "L3 라우팅", "L7 로드밸런서" 같은 표현이 모두 OSI 계층 번호를 가리킨다.
OSI 모델은 아래에서 위로 다음과 같이 구성된다.
| 계층 | 이름 | PDU | 대표 프로토콜 | 대표 장비 |
|---|---|---|---|---|
| 7 | Application | Data | HTTP, FTP, DNS, SMTP | - |
| 6 | Presentation | Data | TLS, JPEG, ASCII | - |
| 5 | Session | Data | NetBIOS, RPC | - |
| 4 | Transport | Segment | TCP, UDP | - |
| 3 | Network | Packet | IP, ICMP | 라우터 |
| 2 | Data Link | Frame | Ethernet | 스위치, 브리지 |
| 1 | Physical | Bit | - | 허브, 리피터, UTP, 광케이블 |
PDU(Protocol Data Unit)는 각 계층에서 다루는 데이터 단위를 말한다.
1. Physical Layer
전기 신호, 광 신호, 무선 주파수 같은 물리적 매체를 통해 비트를 전송하는 계층이다. 케이블 종류, 커넥터 모양, 전압 레벨, 전송 속도 같은 물리적 사양을 정의한다.
- PDU: Bit (0과 1)
- 대표 장비: 허브, 리피터, 케이블, NIC의 물리 인터페이스
- 표준 예시: 100BASE-TX, 1000BASE-T, IEEE 802.11 (Wi-Fi)
2. Data Link Layer
같은 네트워크 구간(LAN) 안에서 인접한 노드 사이의 데이터 전달을 담당한다. 프레임 단위로 데이터를 묶고, MAC 주소로 송수신 장치를 식별하며, 오류 검출(CRC)도 수행한다.
데이터 링크 계층은 다시 LLC(Logical Link Control) 와 MAC(Media Access Control) 로 세분화되는데, MAC 부계층이 매체 접근 제어(CSMA/CD 등)와 주소 지정을 담당한다.
3. Network Layer
서로 다른 네트워크 간에 end-to-end로 패킷을 전달하는 계층이다. 출발지에서 목적지까지 어떤 경로로 갈지 결정하는 라우팅이 핵심이다.
- PDU: Packet
- 주소 체계: IP 주소
- 대표 장비: 라우터, L3 스위치
- 대표 프로토콜: IPv4, IPv6, ICMP, OSPF, BGP
데이터 링크가 같은 LAN 안의 전달을 책임진다면, 네트워크 계층은 LAN과 LAN을 잇는 역할을 한다.
4. Transport Layer
호스트에 도착한 데이터를 올바른 포트에 전달하고, 신뢰성 있는 통신을 제공하는 계층이다.
- PDU: Segment(TCP), Datagram(UDP)
- 주소 체계: 포트 번호 (16bit)
- 대표 프로토콜: TCP, UDP
TCP는 연결 지향, 흐름 제어, 혼잡 제어, 재전송으로 신뢰성을 제공한다. UDP는 신뢰성을 포기하는 대신 오버헤드가 적어 실시간 스트리밍, DNS, DHCP 등에 쓰인다.
5. Session Layer
통신 양 끝점 사이의 세션을 만들고, 유지하고, 종료하는 계층이다. 체크포인트를 통해 통신이 끊겼을 때 중간 지점부터 재개하는 기능도 담당한다.
- 대표 프로토콜: NetBIOS, RPC, SOCKS
실제 TCP/IP 구현에서는 세션 관리 기능이 전송 계층(TCP)이나 응용 계층(HTTP cookie, TLS session resumption)에 흡수된 경우가 많다.
6. Presentation Layer
애플리케이션 데이터의 표현 형식 변환을 담당하는 계층이다.
- 인코딩 변환: ASCII ↔ EBCDIC, UTF-8 변환
- 압축: gzip, JPEG, MP3
- 암호화: TLS/SSL이 이 계층의 대표적인 예
송신 측이 데이터를 어떤 형식으로 보냈든 수신 측이 동일하게 해석할 수 있도록 표준 형식으로 맞춰주는 역할이다.
7. Application Layer
사용자나 애플리케이션이 직접 사용하는 프로토콜들이 동작하는 계층이다.
- 웹: HTTP, HTTPS
- 메일: SMTP, POP3, IMAP
- 파일 전송: FTP, SFTP
- 네임 서비스: DNS, DHCP
- 원격 접속: SSH, Telnet
브라우저, 메일 클라이언트, 원격 접속 도구 같은 애플리케이션이 이 계층의 프로토콜을 호출해 통신한다.
캡슐화와 역캡슐화
데이터가 송신 호스트에서 수신 호스트로 전달될 때 계층을 따라 내려가며 헤더를 붙이고(캡슐화), 올라가며 헤더를 떼어낸다(역캡슐화).
[송신측] [수신측]
Application → Data Data ← Application
Transport → [TCP][Data] [TCP][Data] → Transport
Network → [IP][TCP][Data] [IP][TCP][Data] → Network
Data Link → [Eth][IP][TCP][Data] [Eth][IP][TCP][Data] → Data Link
Physical → 0101010101... 0101010101... → Physical
각 계층은 자기 헤더만 처리하고 상위 계층의 페이로드는 그대로 전달한다.
OSI vs TCP/IP
OSI는 이론적인 참조 모델이고, 실제 인터넷은 더 단순한 TCP/IP 4계층 모델로 동작한다.
| OSI 7계층 | TCP/IP 4계층 |
|---|---|
| Application | |
| Presentation | Application |
| Session | |
| Transport | Transport |
| Network | Internet |
| Data Link | Network Access |
| Physical |
TCP/IP는 OSI의 5, 6, 7계층을 하나로 합치고, 1, 2계층도 묶어서 다룬다. 실제 구현은 TCP/IP 모델을 따르지만, OSI는 통신 과정을 분석하고 장애를 진단할 때의 공통 기준 역할을 한다.