전 세계 통신이 동일한 구조로 이루어지도록 만든 표준 참조 모델
"네트워크 통신을 7개의 단계로 나눈 설명서"
왜 나누었을까?
- 문제 발생 시 어디서 문제가 났는지 찾기 쉽고
- 각 계층은 자기 역할만 책임져서 모듈화, 표준화가 가능하고
- 벤더(시스코, HP, 삼성, LG 등)가 달라도 통신 규격이 동일해질 수 있기 때문
OSI 7계층 전체
| 계층 | 이름 | 대표 기능 | 예시 프로토콜/장비 |
| 7 | 응용(Application) | 앱 서비스 제공 | HTTP, SMTP, FTP |
| 6 | 표현(Presentation) | 데이터 변환/암호화 | JPEG, SSL/TLS |
| 5 | 세션(Session) | 연결 유지/관리 | NetBIOS, RPC |
| 4 | 전송(Transport) | 신뢰성·전송 제어 | TCP, UDP |
| 3 | 네트워크(Network) | 경로 결정, IP 주소 | IP, 라우터 |
| 2 | 데이터 링크(Data link) | MAC 주소, 프레임 | 스위치, ARP |
| 1 | 물리(Physical) | 전기/광신호 | 케이블, 리피터 |
계층별 상세
1 계층 - 물리 계층 (Physical Layer)
: 신호 자체에 대해 다룸, 비트(0/1)를 전기 신호나 광 신호로 바꿔 보내는 역할
- 전기 신호, 빛의 강도, 무선 주파수 제어
- 케이블 규격, 커넥터 규격
- 전송 속도(baud rate)
- LAN 케이블
- 리피터
- 허브
2 계층 - 데이터 링크 계층 (Data Link Layer)
: 같은 네트워크 안의 장비들 간 데이터를 전달(프레임)하고 충돌 없는 전송을 보장
- MAC 주소
- 프레임 단위 전송
- 오류 검출(FCS)
- 스위치
- Ethernet
- ARP
- PPP
3 계층 - 네트워크 계층 (Network Layer)
: 다른 네트워크로 데이터를 보내기 위해 경로를 결정하고 IP 주소 기반 라우팅을 수행
- 라우팅
- IP 주소 처리
- 패킷 단위 전송
- 게이트웨이를 통해 다른 네트워크로 이동
4 계층 - 전송 계층 (Transport Layer)
: 종단 간(end-to-end) 신뢰성을 제공하는 계층
- 오류 제어
- 흐름 제어
- 재전송
- 포트 번호 관리
- 세그먼트 단위 전송
- TCP: 신뢰성 보장 (3-way handshake, 순서 보장)
5 계층 - 세션 계층 (Session Layer)
: 세션(=대화)의 생성, 유지 종료를 관리
(실무에서는 이 계층이 모호하고 TCP가 대부분 수행)
- 로그인 세션
- 서버와 클라이언트 간 연결 상태 유지
- 체크포인트/복구
6 계층 - 표현 계층 (Presentation Layer)
: 데이터를 읽을 수 있는 형태로 변환하는 계층
- 인코딩/디코딩
- 암호화/복호화
- 압축/해제
- SSL/TLS
- UTF-8, ASCII
7 계층 - 응용 계층 (Application Layer)
: 사용자와 가장 가까운 계층
실제 서비스가 동작하는 영역
- HTTP/HTTPS
- SMTP(메일)
- FTP
- DNS
- SSH
OSI 모델을 왜 배우는가?
실무에서는 TCP/IP가 중심이지만 OSI를 배우는 이유는 확실
1. 장애원인을 찾기 쉬움
- 핑이 안가? → 네트워크 계층 오류
- 포트가 안 열림? → 전송 계층 오류
- 웹만 안됨? → 응용 계층 오류
2. 네트워크 구조가 머릿속에 정리됨
계층 별 분리로 전체를 더 명확하게 이해 가능
3. 기업 면접에서 단골 질문
"OSI 7계층 설명해주세요"
"TCP와 UDP 차이가 뭔가요?"
실제 예시 흐름 ( PC → 구글 접속 )
7-응용 계층 : 브라우저에서 https://google.com 입력(HTTP Request 요청)
6-표현 계층 : TLS로 암호화
5-세션 계층 : 세션 유지
4-전송 계층 : TCP 포트 443으로 연결(3-way handshake)
3-네트워크 계층 : IP 주소로 구글 서버까지 라우팅
2-데이터 링크 계층 : MAC 주소 기반으로 스위치를 통과
1-물리 계층 : 전기 신호/광 신호로 케이블을 통해 전달
- 신호 → 1계층
- MAC 주소, 스위치 → 2계층
- IP, 라우터 → 3계층
- TCP,UDP, 포트 →4계층
- SSL, 인코딩 → 6계층
- HTTP, DNS, 서비스 → 7계층
프로그래머는 보통 Application Layer(HTTP, JSON, REST), Presentation Layer(SSL, Base64 암호화), Session Layer, Transport Layer(TCP/UDP 소켓)를 다룰 수 있음
Network Layer(IP, 라우팅), Data Link Layer(MAC, 스위치), Physical Layer(케이블/전기 신호)는 프로그래머가 제어 불가
'네트워크' 카테고리의 다른 글
| ARP(Address Resolution Protocol) (0) | 2025.11.26 |
|---|---|
| MAC(Media Access Control Address) (0) | 2025.11.26 |