본문 바로가기

Library/Computer Network

Internet Protocol

IP를 규정하는 RFC791은 다음과 같이 시작된다.

"인터넷 프로토콜은 상호 연결된 패킷 스위칭 컴퓨터 통신 네트워크에서 사용하려고 설계되었다. 인터넷 프로토콜은 데이터그램이라는 데이버 블록을 출발지(source)에서 목적지(destination)로 전송한다. 또 작은 패킷으로 전송할 것을 요구하는 네트워크를 통해 큰 데이터그램을 보내는 경우, 분열(fragmentation)과 재배열(reassembly) 기능을 제공한다."

이어지는 내용은 다음과 같다.

"인터넷 프로토콜의 활용 범위는 상호 연결된 네트워크를 통해 비트(인터넷 데이터그램)를 출발지에서 목적지까지 전달하는 데 필요한 기능을 제공하는 것으로 제한되어 있다. 종단간(end-to-end) 데이터의 신뢰성 향상, 흐름 제어, 순서 제어 및 기타 호스트간(host-to-host) 프로토콜의 보편적인 기능을 제공할 메커니즘은 갖추지 않았다."

RFC791은 다음과 같이 요약할 수 있다. 출발지 시스템은 직접(목적지 시스템이 로컬 네트워크 내에 있을 경우) 또는 로컬 네트워크의 다른 시스템을 거쳐 목적지 시스템의 데이터그램을 전송한다. 송수신 시스템을 연결하는 물리적 매체(physical medium)의 수용 능력이 충분하면 IP는 모든 데이터를 한꺼번에 전송한다. 하지만 그렇지 못할 경우 네트워크의 물리적 매체가 처리할 수 있는 크기로 데이터를 조각(fragment)내어 전송한다.

일단 데이터그램을 전송하고 나면 그에 대해서는 잊어버리고, 다음 데이터그램의 처리로 넘어간다. 오류 수정, 흐름 제어 및 관리 기능을 제공하지 않는다는 얘기다. 단지 한 번에 한 네트워크에 대해, 한 호스트에서 다른 호스트로 데이터그램을 전송할 뿐이다.


Quotes from Internet Core Protocols, Eric A. Hall, O'Reilly, 인터넷 핵심 프로토콜 가이드, 한빛미디어