IP Internetworking and Transport Foundations
이 페이지는 인터넷을 "통신 네트워크들의 상호 연결"로 정의하는 데서 출발해, 그 안에서 종단 시스템과 중간 시스템(bridge/router)이 맡는 역할, IP가 connectionless로 설계된 이유, 그리고 그 위 전송 계층이 지는 책임을 다룬다.
기본 용어
| 용어 | 설명 |
|---|---|
| 통신 네트워크 (Communication Network) | 네트워크에 연결된 장치 간에 데이터 전송 서비스를 제공하는 시설[1] |
| 인터넷 (Internet) | 브리지/라우터로 상호 연결된 통신 네트워크의 집합[1:1] |
| 인트라넷 (Intranet) | 단일 조직이 내부 용도로 사용하는 인터넷. WWW 등 주요 인터넷 응용 포함. 인터넷과 고립되거나 연결 가능[2] |
| 서브네트워크 (Subnetwork) | 인터넷을 구성하는 개별 네트워크. 사용자 관점에서는 전체 인터넷이 단일 네트워크로 보임[1:2] |
| 종단 시스템 (End System, ES) | 인터넷 네트워크 중 하나에 연결된 최종 사용자 응용/서비스 장치[1:3] |
| 중간 시스템 (Intermediate System, IS) | 두 네트워크를 연결해 서로 다른 네트워크 ES 간 통신을 허용하는 장치[1:4] |
Bridge vs Router
| 장치 | 연결 대상 | OSI 계층 | 동작 방식 |
|---|---|---|---|
| Bridge | 유사한 LAN 프로토콜을 쓰는 두 LAN | 2계층 (Data Link) | 주소 필터로 동작한다. 한 LAN에서 다른 LAN 목적지인 패킷만 전달하며, 패킷 내용을 수정하거나 추가하지 않는다.[3] |
| Router | 유사하거나 다를 수 있는 두 네트워크 | 3계층 (Network) | 각 라우터와 각 ES가 IP를 갖춘다. 서로 다른 네트워크 프로토콜을 연결할 수 있다.[3:1] |
비연결 인터네트워킹 (Connectionless Internetworking)
인터네트워킹은 IP(인터넷 프로토콜) 수준에서 연결 없는 작동을 포함한다. IP는 DARPA 인터넷 프로젝트를 위해 처음 개발됐고, 특정 네트워크에 접근하기 위해 필요한 프로토콜이다.[4]
IP가 종단 시스템 간 연결 없는 서비스를 제공하는 이유는 세 가지다.[5]
- 유연성 — 사전 연결 설정 없이 어느 라우터든 경유할 수 있다.
- 견고함 — 일부 라우터 장애 시 경로를 우회할 수 있다.
- 불필요한 오버헤드 미부과 — 연결 상태를 유지하는 비용이 없다.
IP 설계 문제
IP 설계 시 다뤄야 할 핵심 문제 5가지다.[6]
- 라우팅 (Routing) — 패킷이 목적지까지 가는 경로 결정
- 데이터그램 수명 (Datagram Lifetime) — 무한 순환 방지를 위한 TTL
- 단편화 및 재조립 (Fragmentation and Re-assembly)
- 오류 제어 (Error Control)
- 흐름 제어 (Flow Control)
단편화 (Fragmentation)
프로토콜은 두 엔티티 간 데이터를 교환한다. 하위 수준 프로토콜은 데이터를 더 작은 블록으로 분할해야 할 수 있으며 이를 단편화라 한다.[7]
| 장점 | 단점 |
|---|---|
| 네트워크는 특정 크기의 블록만 수용 | 더 많은 인터럽트와 처리 시간 |
| 더 효율적인 오류 제어·작은 재전송 단위 | 더 작은 버퍼 필요 |
| 공유 시설에 대한 더 공정한 접근 | - |
| 더 작은 버퍼 | - |
IP Fragmentation의 특징
- IP는 목적지에서만 재조립을 수행한다. 중간 라우터에서는 재조립하지 않는다.[8]
- IP 헤더는 이를 위한 4가지 필드를 가진다.[8:1]
- Data Unit Identifier (ID) — 종단 시스템이 생성한 데이터그램 식별
- Data length — 사용자 데이터 길이 (옥텟 단위)
- Offset — 원래 데이터그램에서 사용자 데이터 단편의 위치. 64비트(8옥텟) 단위
- More flag — 이 단편이 마지막 단편이 아님을 나타냄
중간 라우터가 재조립을 하지 않기 때문에, 다양한 MTU를 가진 서브네트워크를 통과할 때마다 재단편화가 일어날 수 있다. 목적지 ES는 ID/Offset/More flag를 기반으로 원래 데이터그램을 복원한다.
전송 프로토콜 (Transport Protocol)
전송 서비스는 두 유형으로 나뉜다.[9]
- 연결 지향 (Connection-oriented) — TS 사용자 간 논리 연결을 설정·유지·종료한다. 신뢰할 수 있는 서비스를 의미하며 가장 일반적이다.
- 비연결/데이터그램 (Connectionless/datagram) — 연결 설정 없이 전송한다.
신뢰할 수 있는 순서 지정 네트워크 서비스에서는 세그먼트가 순서대로 전달됨이 보장된다. 예로 연결 모드 LLC 서비스를 쓰는 IEEE 802.3 LAN, 연결 모드 프레임 릴레이 등이 있다.[9:1]
그런 신뢰 순서 서비스 위에서도 전송 계층이 다뤄야 할 문제는 남는다.[9:2]
- 주소 지정 (Addressing) — TS 사용자 식별
- 다중화 (Multiplexing) — 여러 연결을 한 네트워크 연결로 통합
- 흐름 제어 (Flow Control) — 수신자 압박 회피
즉 하위 계층의 신뢰성이 전송 계층의 책임을 줄이지 않는다.
계층화가 여기서 하는 일
단편화의 "목적지에서만 재조립"은 IP를 단순하게 유지하는 핵심 설계 결정이다. 전송 계층이 신뢰 네트워크 위에서도 주소 지정·다중화·흐름 제어를 계속 책임진다는 점은, 하위 계층 신뢰성이 곧 상위 계층 책임 제거로 이어지지 않는다는 계층화 원칙을 보여준다고 볼 수 있다.[10]
흔히 놓치는 지점
- Bridge와 Router를 모두 "중간 장치"로만 보고 계층(2 vs 3)을 무시하는 경우가 있다.
- IP를 연결 지향으로 가정해 연결 상태를 라우터에 저장하려는 경우가 있다.
- 중간 라우터에서 단편화를 재조립하려 하면 MTU별 재단편화 비용·지연이 폭증한다.
- TTL(Datagram Lifetime) 없이는 라우팅 루프가 생기면 패킷이 영원히 순환한다.
- 신뢰 네트워크 위에서 전송 계층 흐름 제어를 생략하면 수신자 버퍼 오버플로우가 발생할 수 있다.
관련
- CS Network 다른 concept이 ingest되면 상호 연결 예정이다 (Data Link Control, LAN Architecture, WAN Switching 후보).
출처
테스트 질문
- Bridge와 Router의 OSI 계층과 동작 차이는 무엇인가?
- IP가 connectionless 서비스를 선택한 이유 3가지는?
- IP 단편화에서 재조립이 중간 라우터가 아니라 목적지 ES에서만 일어나는 이유는?
- 인트라넷과 인터넷의 정의 차이는 무엇인가?
- 신뢰할 수 있는 순서 지정 네트워크 서비스 위에서도 전송 계층이 다뤄야 할 문제 3가지는?
Data and Computer Communications.md — 용어 표: 통신 네트워크, 인터넷, 서브네트워크, 종단 시스템, 중간 시스템 정의 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
Data and Computer Communications.md — "특히 월드 와이드 웹(World Wide Web)을 포함한 주요 인터넷 응용 프로그램을 제공하는 단일 조직에 의해 사용되는 인터넷 ... 인터넷과 연결될 수도 있음" ↩︎
Data and Computer Communications.md — "브리지는 주소 필터로 작동하여 ... 패킷의 내용을 수정하지 않으며 ... 브리지는 OSI 모델의 2계층에서 작동", "라우터는 ... 각 종단 시스템에 인터넷 프로토콜 존재 ... 라우터는 OSI 모델의 3계층에서 작동" ↩︎ ↩︎
Data and Computer Communications.md — "인터네트워킹은 인터넷 프로토콜(IP) 수준에서 연결 없는 작동을 포함", "DARPA 인터넷 프로젝트를 위해 처음 개발됨" ↩︎
Data and Computer Communications.md — "IP는 종단 시스템 간에 연결 없는 서비스를 제공 ... 유연성 / 견고하게 만들 수 있음 / 불필요한 오버헤드를 가하지 않음" ↩︎
Data and Computer Communications.md — "IP 설계 문제": 라우팅, 데이터그램 수명, 단편화 및 재조립, 오류 제어, 흐름 제어 ↩︎
Data and Computer Communications.md — "하위 수준의 프로토콜은 데이터를 더 작은 블록으로 분할해야 할 수 있으며, 이를 단편화라고 함", 단편화 이유/단점 목록 ↩︎
Data and Computer Communications.md — "IP는 목적지에서만 재조립을 수행", 헤더 필드 Data Unit Identifier / Data length / Offset / More flag ↩︎ ↩︎
출처 매핑 미확인 — "전송 프로토콜(CH15)" 절의 연결 지향/비연결 서비스 구분, 신뢰할 수 있는 순서 지정 네트워크 서비스 예시(IEEE 802.3 LAN, 프레임 릴레이), 주소 지정/다중화/흐름 제어 목록은 현재 그렙 가능한
Data and Computer Communications.md범위(CH14 인터넷 프로토콜)에서 확인되지 않는다. 같은 course 자료의 CH15(전송 프로토콜) 원본을 대조해 확인할 것. ↩︎ ↩︎ ↩︎출처 매핑 미확인 — "하위 계층 신뢰성이 상위 계층 책임 제거로 이어지지 않는다"는 계층화 원칙 해석은 source 개별 사실을 엮은 Wiki 차원의 종합이다. ↩︎