TCP/IP
OSI 7계층(Open Systems Interconnection Model)은 하나의 장치에서 다른 장치로 데이터를 송수신할 때, 그 과정을 7개의 계층으로 나누어 설명하는 표준 네트워크 통신 모델입니다. 각 계층은 특정한 역할을 수행하며, 계층 간에 명확한 책임 분리를 통해 구조적인 통신이 가능하도록 합니다.
7. 애플리케이션 계층 (Application Layer)
- 역할: 사용자 애플리케이션이 네트워크 서비스에 접근할 수 있도록 지원합니다.
- 실제 동작 예시:
- 사용자가 웹사이트 주소를 입력하면 웹 브라우저가 HTTP 요청을 생성합니다.
- 이메일 클라이언트가 SMTP로 메일을 전송합니다.
- 대표 프로토콜: HTTP, FTP, SMTP, DNS, Telnet
6. 표현 계층 (Presentation Layer)
- 역할: 데이터 형식을 변환하고, 암호화 및 압축을 통해 호환성과 보안을 제공합니다.
- 실제 동작 예시:
- JPEG 이미지나 MP3 오디오 포맷으로 변환
- TLS를 통한 HTTPS 암호화
- ASCII ↔ EBCDIC 변환
- 대표 기술/형식: TLS, SSL, JPEG, MPEG, ASCII
5. 세션 계층 (Session Layer)
- 역할: 애플리케이션 간의 세션을 생성하고, 유지하며, 종료합니다.
- 실제 동작 예시:
- 웹사이트 로그인 세션 유지
- 통신 도중 중단 시 체크포인트 설정 및 재전송
- 대표 프로토콜: NetBIOS, RPC, PPTP
4. 전송 계층 (Transport Layer)
- 역할: 종단 간(end-to-end) 연결을 제공하고, 오류 제어 및 흐름 제어를 수행합니다.
- 실제 동작 예시:
- 파일 다운로드 시 데이터를 세그먼트로 나눔
- TCP가 패킷의 순서를 보장하고 손실 시 재전송
- UDP를 활용한 실시간 스트리밍
- 대표 프로토콜: TCP, UDP
3. 네트워크 계층 (Network Layer)
- 역할: IP 주소를 기반으로 데이터를 목적지까지 라우팅합니다.
- 실제 동작 예시:
- 라우터가 발신지/목적지 IP를 분석해 경로 결정
- ICMP로 도달 불가 응답 반환 (예: ping 실패)
- 대표 프로토콜: IP, ICMP, ARP, RIP, OSPF
2. 데이터 링크 계층 (Data Link Layer)
- 역할: 오류 없는 데이터 전송을 위해 프레임 단위로 처리하며 MAC 주소 기반 통신을 수행합니다.
- 실제 동작 예시:
- 스위치가 MAC 주소로 목적지 포트를 결정
- 프레임의 CRC 검사 및 오류 재전송 처리
- 대표 기술: Ethernet, Wi-Fi, PPP, MAC
1. 물리 계층 (Physical Layer)
- 역할: 데이터를 전기적/광학적 신호로 변환해 실제 물리 매체를 통해 전송합니다.
- 실제 동작 예시:
- 0과 1의 비트를 전기 신호로 변환하여 케이블로 전송
- 무선 주파수를 통한 Wi-Fi 통신
- 대표 장비: UTP 케이블, 광케이블, 리피터, 허브, Bluetooth
OSI 7계층을 통한 데이터 전송 흐름
시나리오
A가 채팅 애플리케이션을 통해 B에게 메시지를 보낸다.
A가 메시지를 보낼 때
계층 | 계층 이름 | 설명 |
---|
7 | 응용 계층 (Application) | 메시지를 전송하기 위해 채팅 애플리케이션에서 사용자 입력을 수집하고, 전송 요청 발생 |
6 | 표현 계층 (Presentation) | 메시지를 UTF-8로 인코딩하고, TLS 암호화 또는 압축 수행 |
5 | 세션 계층 (Session) | 수신자와 세션 생성 또는 기존 세션 재사용 |
4 | 전송 계층 (Transport) | 데이터를 세그먼트로 분할하고 TCP를 통해 순서 보장 및 재전송 처리 |
3 | 네트워크 계층 (Network) | 세그먼트를 패킷으로 캡슐화하고, IP 주소 기반 라우팅 처리 |
2 | 데이터 링크 계층 (Data Link) | 패킷을 프레임으로 구성하고, MAC 주소를 사용해 네트워크 내 전송 |
1 | 물리 계층 (Physical) | 프레임을 비트로 변환하여 유선/무선 신호로 전송 |
B가 메시지를 받을 때
계층 | 계층 이름 | 설명 |
---|
1 | 물리 계층 (Physical) | 신호를 비트 단위로 수신하여 디지털 데이터로 변환 |
2 | 데이터 링크 계층 (Data Link) | 비트를 프레임으로 재구성하고 오류 검출 후 패킷 추출 |
3 | 네트워크 계층 (Network) | 패킷의 IP 주소 확인 후 세그먼트로 추출 |
4 | 전송 계층 (Transport) | 세그먼트를 조립하여 원본 메시지로 복원 |
5 | 세션 계층 (Session) | 세션 확인 및 유지, 흐름 관리 |
6 | 표현 계층 (Presentation) | 암호화 해제, 압축 해제, 텍스트 디코딩 수행 |
7 | 응용 계층 (Application) | 복원된 메시지를 채팅 앱에 전달하여 사용자에게 표시 |