개념 정리
OSI 7계층과 TCP/IP 모델
단원 개요
네트워크 통신의 국제 표준인 OSI 7계층과 실무 인터넷 표준 TCP/IP 4계층, 데이터 캡슐화/역캡슐화, TCP 3-Way Handshake 및 UDP와의 차이를 학습합니다.선수 개념
필수 키워드:| 전송 계층 |(TCP) / Datagram(UDP) || 인터넷 계층 |(패킷) |(목적지 호스트 탐색,| 네트워크 인터페이스 |(프레임) |(물리적 인접 노드간 전송,재전송(ARQ)하며, 수신자의 처리 속도에 맞춘
1
OSI 7계층과 TCP/IP 4계층 매핑 및 PDU·주소 식별자
네트워크 통신 과정을 계층별로 분리(모듈화)하면 특정 계층의 장비나 기술이 바뀌어도 다른 계층에 영향을 주지 않고, 장애 발생 시 원인을 신속히 격리할 수 있습니다.
| 계층 | OSI 7계층 | TCP/IP 4계층 | 전송 단위 (PDU) | 핵심 식별 주소 / 장비·프로토콜 |
|---|---|---|---|---|
| 7 | 응용 (Application) | 응용 계층 | Data / Message | HTTP, HTTPS, DNS,SSH, SMTP |
| 6 | 표현 (Presentation) | 응용 계층 | Data / Message | 인코딩(UTF-8), 압축, 암호화(TLS) |
| 5 | 세션 (Session) | 응용 계층 | Data / Message | 세션 수립·유지·종료, 동기화 |
| 4 | 전송 (Transport) | 전송 계층 | Segment(TCP) / Datagram(UDP) | Port 번호 (프로세스 식별, 0~65535) |
| 3 | 네트워크 (Network) | 인터넷 계층 | Packet (패킷) | IP 주소 (목적지 호스트 탐색, 라우터) |
| 2 | 데이터 링크 (Data Link) | 네트워크 인터페이스 | Frame (프레임) | MAC 주소 (물리적 인접 노드간 전송, 스위치) |
| 1 | 물리 (Physical) | 네트워크 인터페이스 | Bit (비트, 0/1) | 전기/광 신호, 랜선(UTP), 광케이블, 허브 |
•
캡슐화(Encapsulation)와 역캡슐화(Decapsulation): 송신 측이 데이터를 보낼 때 상위 계층에서 하위 계층으로 내려가며 TCP 헤더(Port) ➔ IP 헤더(IP) ➔ 이더넷 헤더/트레일러(MAC)를 차례로 덧씌우는 것을 캡슐화라 하며, 수신 측이 아래에서 위로 헤더를 하나씩 벗겨내는 것을 역캡슐화라고 합니다.
핵심 원리
한 줄로 정리하는 MAC vs IP vs Port: MAC 주소(2계층)는 '바로 다음 정거장(라우터/공유기)의 하드웨어 주소'이고, IP 주소(3계층)는 '최종 목적지 컴퓨터(건물)의 주소'이며, Port 번호(4계층)는 '그 컴퓨터 안에서 대기 중인 특정 프로그램(방 호수, 예: 웹 서버 443번)'입니다!2
전송 계층의 양대 산맥: TCP vs UDP와 3-Way Handshake
1
TCP (Transmission Control Protocol - 신뢰성·연결 지향):
•
데이터를 보내기 전 반드시 논리적 연결을 수립하며, 패킷이 유실되면 재전송(ARQ)하고 뒤바뀐 패킷 순서를 시퀀스 번호(Sequence Number)로 재조립하며, 수신자의 처리 속도에 맞춘 흐름 제어(Flow Control)와 네트워크 상태에 맞춘 혼잡 제어(Congestion Control)를 수행합니다.
•
연결 수립 (3-Way Handshake):
①
클라이언트 ➔ 서버:
SYN (, 연결 요청: "내 말 들리나요?")②
서버 ➔ 클라이언트:
SYN + ACK (, 수락 및 응답: "잘 들립니다. 제 말도 들리나요?")③
클라이언트 ➔ 서버:
ACK (, 확인 완료: "네, 이제 데이터를 보냅니다!")•
정상 종료는 양방향을 각각 닫는 4-Way Handshake (
FIN ➔ ACK ➔ FIN ➔ ACK)로 설명하지만, ACK와 FIN이 한 세그먼트에 함께 실릴 수도 있습니다. 재전송·순서 제어는 신뢰성 있는 바이트 스트림을 제공하며, 연결 장애가 나도 무조건 전달된다는 뜻은 아닙니다.2
UDP (User Datagram Protocol - 비연결형 데이터그램):
•
UDP 자체에는 연결 수립 절차, 유실 데이터의 재전송, 순서 보장 기능이 없습니다. 헤더는 8바이트이며, 필요한 기능은 응용 프로그램이나 상위 프로토콜에서 구현합니다. UDP라는 이유만으로 실제 지연 시간이 항상 더 짧아지는 것은 아닙니다.
•
TCP는 HTTP/1.1·HTTP/2와 이메일·파일 전송 등에 널리 쓰입니다. 게임·음성 통화 등에서는 UDP를 활용하기도 하며, 실제 선택은 서비스 설계에 달려 있습니다. DNS는 UDP와 TCP를 모두 사용합니다.
•
HTTP/3는 UDP 위에서 동작하는 QUIC를 사용합니다. QUIC는 유실 복구·흐름 제어·혼잡 제어와 스트림별 순서 있는 신뢰성 전송을 제공합니다. 따라서 HTTP/3를 '데이터가 빠져도 상관없는 통신'으로 분류하면 안 됩니다.
풀이
TCP 핸드셰이크에서 응답 확인 번호(Ack)는 '상대방이 보낸 Seq 번호 + 1(다음으로 받고 싶은 번호)' 규칙을 따릅니다.
1) 1단계 (Client → Server): SYN [Seq = 1000]
2) 2단계 (Server → Client): SYN + ACK
•
서버는 클라이언트의 1000번을 잘 받았으므로 Ack = 1000 + 1 = 1001을 보냅니다.
•
동시에 서버 자신의 초기 번호인 Seq = 5000을 함께 보냅니다. ➔ [Seq = 5000, Ack = 1001]
3) 3단계 (Client → Server): ACK
•
클라이언트는 자신의 다음 번호인 Seq = 1001과, 서버의 5000번을 확인했다는 의미로 Ack = 5000 + 1 = 5001을 보냅니다. ➔ [Seq = 1001, Ack = 5001]
3
사설 IP와 공인 IP, NAT, ARP 프로토콜 실무 포인트
•
IPv4 주소 고갈과 NAT (Network Address Translation):
•
32비트인 IPv4 주소(약 43억 개)의 부족 문제를 해결하기 위해 가정이나 사내망 내부에서는 사설 IP(Private IP, 예:
192.168.x.x, 10.x.x.x)를 부여하고, 인터넷 공유기(라우터) 밖으로 나갈 때만 하나의 공인 IP(Public IP)와 포트로 변환해 주는 기술이 NAT(네트워크 주소 변환)입니다.•
ARP (Address Resolution Protocol):
•
통신할 상대방의 논리적 IP 주소는 알지만 물리적 MAC 주소를 모를 때, 같은 네트워크에 브로드캐스트로 "이 IP 쓰는 사람의 MAC 주소가 무엇인가?"라고 물어보아 IP 주소를 MAC 주소로 변환해 주는 필수 프로토콜입니다.
학습 도움말
보안/네트워크 면접 포인트: 'SYN Flooding 공격이란?' -> 해커가 3-Way Handshake의 1단계인 SYN만 수만 번 보내고 마지막 3단계 ACK를 안 보내서 서버의 대기 큐(Backlog Queue)를 고갈시키는 대표적인 DDoS 서비스 거부 공격입니다.핵심 요약
- ✓데이터 링크 계층(2계층)은 MAC 주소와 스위치를, 네트워크 계층(3계층)은 IP 주소와 라우터를, 전송 계층(4계층)은 포트 번호를 사용한다.
- ✓송신 시 상위에서 하위로 헤더를 붙이는 과정을 캡슐화(Encapsulation), 수신 시 헤더를 벗기는 과정을 역캡슐화라고 한다.
- ✓TCP는 3-Way Handshake(SYN ➔ SYN+ACK ➔ ACK)로 연결을 맺고 재전송과 순서 제어로 신뢰성 있는 바이트 스트림을 제공하지만, 연결 장애까지 없애지는 않는다.
- ✓UDP 자체는 재전송·순서를 보장하지 않는다. HTTP/3의 QUIC는 UDP 위에서 스트림별 신뢰성 전송과 유실 복구를 구현한다.