TCP/IP의 이해
이번 포스팅에는 현실에서 진짜 쓰는 TCP/IP 프로토콜 스택을 소개하고, OSI 7계층과 나란히 비교해 둘의 관계를 정리합니다.
학습 목표:
OSI(참조 모델)와 TCP/IP(실제 프로토콜)의 차이를 이해하고, TCP/IP 4계층 모델이 OSI 7계층 모델과 어떻게 대응되는지, 그리고 현장에서 계층 이름을 어떻게 부르는지 설명할 수 있어야 합니다.
1. 핵심 충격 — OSI는 “지도”일 뿐, 실제 도로는 TCP/IP
OSI 계층 기능은 잘 알게 됐는데… 정작 OSI 프로토콜을 정확히 지켜서 실제 통신하는 컴퓨터는 찾기 어렵다!
왜냐하면 OSI는 말 그대로 “참조 모델(reference model)”이기 때문이에요. 개념을 이해하고 토론하기 위한 지도·기준틀이지, 오늘날 실제로 돌아가는 프로토콜이 아닙니다.
그럼 실제로 뭘 쓸까요? 👉 TCP/IP.
- 과거엔 IPX 등 여러 프로토콜이 있었지만, TCP/IP가 등장해 표준이 됐습니다.
- TCP/IP는 미국 국방부(DoD)가 만들었습니다.
- TCP/IP는 실제 프로토콜 스택(protocol stack) — 즉 여러 프로토콜이 함께 일하는 묶음(suite)으로, OSI 모델이 “설명”한 기능들을 실제로 구현합니다.
💡 한 줄 정리: OSI = 개념(설명용 지도) / TCP/IP = 현실(실제 달리는 차).
2. TCP/IP 4계층과 OSI 7계층 나란히 비교
TCP/IP는 OSI의 7개 기능을 더 적은 수의 계층으로 묶어 구현합니다.
| OSI 7계층 | → | TCP/IP 계층 | 담당 기능 (두 모델 동일) |
|---|---|---|---|
| 7 Application 6 Presentation 5 Session | → | Application (응용) | 세 계층을 하나로 통합. 네트워크 서비스 + 암호화/복호화·압축 + 세션 설정·관리 |
| 4 Transport | → | Transport (전송, = host-to-host) | 중간관리자 역할 — 신뢰성 있는/없는 전달, 큰 메시지 분할 |
| 3 Network | → | Internet (인터넷) | 우편실 역할 — 논리적 IP 주소 추가 (“집 번호 + 거리 이름”) |
| 2 Data Link 1 Physical | → | Network Access (네트워크 접근) | 봉투 담당 + FedEx 트럭 — 올바른 프레이밍 + 실제 물리 전송 |
짝짓기 핵심
- OSI 5·6·7 → TCP/IP “Application” 하나로 압축. (상위 기능을 한 덩어리로 취급)
- OSI 4(Transport) → TCP/IP “Transport” (별명: host-to-host 계층). 기능 동일.
- OSI 3(Network) → TCP/IP “Internet” 계층. 이름만 다르고 책임·기능은 동일(IP 주소 부여).
- OSI 2+1 → TCP/IP “Network Access” 하나로 통합.
💡 IP 주소의 비유: 우편 주소가 “거리 이름 + 집 번호”로 목적지를 특정하듯, 논리적 IP 주소도 패킷을 정확한 목적지 기기로 배달할 수 있게 해줍니다.
3. 현장에서의 이름 — “OSI 이름을 빌려 쓴다”
여기서 현장에서 경험하는 실전 문제가 있습니다.
TCP/IP를 쓰는데, 교재에서 “layer 2 장비”라고 하면 그건 어디에 해당하지? 🤔
TCP/IP 공식 계층 이름(Application/Transport/Internet/Network Access)만으로는 “몇 번 계층 장비”라고 콕 집어 말하기 애매합니다. 그래서 현실에서는 OSI의 계층 이름·번호를 빌려와 섞어 씁니다.
| 계층 번호 | 실무에서 부르는 이름 | 비고 |
|---|---|---|
| Layer 1 | Physical (물리) | OSI 이름 차용 |
| Layer 2 | Data Link (데이터 링크) | OSI 이름 차용 |
| Layer 3 | Network (네트워크) | TCP/IP의 원래 이름 “Internet”을 Network로 다시 부름 |
| Layer 4 | Transport (전송) | 그대로 사용 |
| Layers 5·6·7 | Application (응용) | 위쪽 세 계층을 한 덩어리로 “응용”이라 부름 |
왜 이렇게 하나? — 장비를 정확히 지칭하려고
- 예: 새 네트워크 어댑터(NIC)를 컴퓨터에 꽂아 물리적으로 연결한다면 → 그 어댑터는 Layer 1(물리 계층) 장비라고 정확히 말할 수 있습니다.
- 즉, “Layer 1 장비”, “Layer 2 장비”, “Layer 3 장비”처럼 부르면 그 부품이 무슨 일을 하는지 한 단어로 통한다는 게 큰 장점이에요.
🔑 결론: 실제로는 TCP/IP를 쓰지만, 계층을 말할 땐 OSI 번호·이름(Physical/Data Link/Network/Transport/Application)을 빌려 쓴다. 이게 현업의 표준 관행입니다.
4. 계층별 데이터 이름 (PDU) 복습 — 정확히 쓰면 의사소통이 명확해진다
데이터가 스택을 내려가며 계층마다 이름이 바뀝니다. (Bob이 브라우저로 네트워크 서비스에 접근 → 응용 계층이 제공 → 아래로 전달)
| 계층 | 데이터 이름 | 신하(비유) |
|---|---|---|
| 4 Transport | 세그먼트 (Segment) | 중간관리자 |
| 3 Network | 패킷 (Packet) | 우편실 |
| 2 Data Link | 프레임 (Frame) | 봉투 담당 |
| 1 Physical | 비트 (Bits) | FedEx 트럭 |
⚠️ “용어를 느슨하게 쓰는 사람” 주의
- 누군가 “packet”이라고 말한다고 항상 정확히 Layer 3을 뜻하는 건 아닙니다. 사람들은 용어를 두루뭉술하게 쓰기도 하므로 문맥(context)으로 판단해야 합니다.
- 하지만 정확한 용어를 아는 우리끼리는 약속이 분명합니다.
- 누가 “segment of data”라고 하면 → Layer 4 데이터를 가리키는 것.
- “frame”이라고 하면 → Layer 2 데이터를 가리키는 것.
- 👉 정확한 용어 사용 = 정확한 의사소통. 이게 이 용어들을 배우는 실질적 이유입니다.
5. 한눈에 보는 종합 정리표
| Layer | OSI 이름 | TCP/IP 이름 | 데이터(PDU) | 대표 기능 |
|---|---|---|---|---|
| 7·6·5 | Application/Presentation/Session | Application | Data | 서비스·암호화·세션 |
| 4 | Transport | Transport (host-to-host) | Segment | 신뢰성·분할 |
| 3 | Network | Internet (실무선 “Network”) | Packet | IP 주소 부여 |
| 2 | Data Link | Network Access | Frame | 프레이밍 |
| 1 | Physical | Network Access | Bits | 물리 전송 |
꼭 기억할 포인트
- OSI = 참조 모델(개념) / TCP/IP = 실제 프로토콜(DoD 제작).
- TCP/IP 4계층: Application · Transport · Internet · Network Access.
- OSI 5·6·7 → TCP/IP Application 하나 / OSI 1·2 → TCP/IP Network Access 하나.
- 실무 계층 명칭은 OSI 이름을 차용(물리·데이터링크·네트워크·전송·응용).
- 데이터 이름: 세그먼트(4) → 패킷(3) → 프레임(2) → 비트(1).
6. 셀프 점검 문제
문제
- OSI 모델과 TCP/IP의 가장 본질적인 차이는?
- TCP/IP는 누가 만들었는가?
- OSI의 5·6·7 계층은 TCP/IP에서 어떤 하나의 계층으로 묶이는가?
- TCP/IP의 “Internet 계층”은 OSI의 몇 번 계층에 해당하며, 무슨 일을 하는가?
- OSI 1·2 계층을 통합한 TCP/IP 계층의 이름은?
- 실제로 TCP/IP를 쓰면서도 “Layer 2 장비”처럼 부를 수 있는 이유는?
- 네트워크 어댑터(NIC)를 물리적 연결 용도로 본다면 몇 번 계층 장비인가?
- 세그먼트·패킷·프레임은 각각 몇 번 계층의 데이터인가?
- “누가 ‘packet’이라고 하면 무조건 Layer 3이다.” — 맞는가, 틀린가? 이유는?
📌 정답 보기
- OSI는 개념적 참조 모델(실제 통신에 쓰이지 않음), TCP/IP는 실제로 동작하는 프로토콜 스택.
- 미국 국방부(DoD).
- TCP/IP의 Application(응용) 계층 하나로 통합.
- OSI Layer 3(네트워크)에 해당. 논리적 IP 주소를 추가해 패킷을 목적지로 배달.
- Network Access(네트워크 접근) 계층.
- 실무에서 계층을 지칭할 때 OSI의 번호·이름을 빌려 쓰기 때문. 그래야 부품을 정확히 가리킬 수 있음.
- Layer 1 (물리 계층) 장비.
- 세그먼트 = L4, 패킷 = L3, 프레임 = L2. (비트 = L1)
- 틀림. 사람들이 용어를 느슨하게 쓰기도 하므로 문맥으로 판단해야 함. 단, 정확히 아는 사람끼리는 segment=L4, frame=L2처럼 약속이 분명함.
✅ 마무리 학습 팁: OSI 7계층과 TCP/IP 4계층을 나란히 그려놓고, 어떤 OSI 계층들이 어떤 TCP/IP 계층으로 합쳐지는지 손으로 그려보세요. 그리고 “실무 이름(물리·데이터링크·네트워크·전송·응용)”과 “데이터 이름(비트·프레임·패킷·세그먼트)”을 계층 번호와 묶어 암송하면, 다음에 배울 포트·프로토콜 단원이 훨씬 수월해집니다.