인터넷 프로토콜(IP: Internet Protocol)
네트워크 계층에서 TCP/IP 프로토콜이 사용하는 전송 메커니즘
데이터그램 방법을 사용하는 패킷 교환 네트워크를 위해 설계된 비연결형 프로토콜
→ 각 데이터그램이 독립적으로 처리되고 목적지까지 다른 경로를 통하여 전달될 수 있음(일부는 분실/훼손될 수 있음)
→ 상위 계층의 프로토콜에 의존함
데이터그램(datagram): 네트워크(인터넷) 계층의 패킷
버전(VER): 4비트 필드는 IP 프로토콜의 버전을 나타냄, 시스템 내에서 수행되고 있는 IP 소프트웨어에게 데이터그램 버전 4임을 알려줌
→ 장래에 버전 6(IPv6)으로 대치될 것
헤더 길이(HLEN): 데이터그램 헤더의 전체 길이를 4바이트 단위로 나타냄(20byte ~ 60byte)
- 선택사항이 없다면 헤더의 길이는 20바이트 → 필드의 값은 5(5 x 4 = 20)
- 선택사항 필드가 최대 길이라면 이 필드의 값 HLEN = 15
서비스 유형: IP 헤더의 초기 설계에서 이 필드는 TOS(Type of Service)라 불림
데이터그램이 어떻게 처리되어야 하는가를 정의
- 처리 내용: 데이터그램의 우선순위(precedence)를 정의, 나머지는 서비스 유형(저지연, 고처리율 등)을 정의
단편화
대부분 프로토콜에서 각 데이터링크 계층은 자신의 프레임 형식을 가지고 있다.
프레임 형식에 정의된 필드 중 하나는 데이터 필드의 최대 크기인 최대 전달 단위(MTU: Maximum Transfer Unit)
데이터그램이 프레임 속에 캡슐화될 때, 데이터그램의 크기는 이 최대 크기보다 작아야 한다.
IP 프로토콜을 물리적 네트워크에 독립적으로 만들기 위해 설계자들은 IP 데이터그램의 최대 길이를 65,535바이트로 결정했다.
단편화(fragmentation): MTU가 작은 다른 네트워크에서는 데이터그램을 나누어서 보내야 함
경로 기록 옵션
경로 기록(record route) 옵션: 데이터그램을 처리한 인터넷 라우터들을 기록하기 위해 사용됨
IP 데이터그램의 헤더 최대 길이가 60byte, 이 중 20byte는 기본 헤더 → 최대 9개의 IP 주소까지 기록할 수 있음
검사합
검사합(checksum): 대부분의 TCP/IP 프로토콜에 의해 사용되는 오류 검출 방법
패킷 전달 중 발생할 수 있는 오류로부터 패킷을 보호함
송신자에 의해 검사합이 계산되고 패킷과 함께 전송됨. 수신자는 검사합을 포함하고 있는 전체 패킷에 대해 같은 계산을 반복함
송신자의 검사합 계산
송신자에서 패킷은 n비트 조각으로 나뉘어짐, 보통 n = 16
1의 보수 연산을 사용하여 전부 더해져서 n비트의 결과를 생성한다.
이 결과 값의 0을 1로, 1은 0으로 바꾸는 방법을 사용하여 이 결과에 대한 보수를 구하게 되는데, 이 보수가 검사합이다.
데이터 전달과 처리 과정에서 오류가 없다면, 수신자가 모든 조각을 더하고 1의 보수를 구한 결과가 0이 되어야 한다.
- IP 검사합은 헤더만 대상으로 하고 데이터는 포함하지 않음
셀 라우팅하기
ATM 네트워크는 두 개의 라우터 사이에 경로를 생성함, 이 라우터들을 진입점(entering-point) 라우터와 진출점(exiting-point) 라우터라고 부른다.
주소
셀을 하나의 특정 진입점 라우터에서 진출점 라우터로 라우팅하기 위해서는 세 개의 주소가 필요함
- IP 주소, 물리 주소, 가상 회선 식별자
IP 주소
ATM 네트워크에 연결된 각 라우터는 IP 주소를 갖는다.
IP 주소는 IP 계층에서 라우터를 정의한다. (ATM 네트워크와는 무관)
물리 주소
ATM 네트워크에 연결된 각 라우터는 물리 주소를 가짐, 각 주소는 네트워크에서 유일해야 하고 네트워크 관리자에 의해 정의됨
ATM 네트워크에서의 물리 주소는 LAN에서의 MAC 주소와 동일한 역할을 수행함
가상 회선 식별자
ATM 네트워크 내의 교환기들은 가상 회선 식별자(VPI, VCI)에 근거하여 셀을 라우팅한다.
가상 회선 식별자들은 데이터 전송에 사용된다.
Reference
Behrouz A. Forouzan (2009), TCP/IP 프로토콜(Protoccol Suite), 4th Edition
'Networking > Network' 카테고리의 다른 글
[TCP/IP Protocol #17] Part 4 | Chapter 17. 응용 계층 개요 (0) | 2024.01.29 |
---|---|
DNS - 정의, 배경, 서버 분류, 동작 원리 (0) | 2024.01.29 |
[TCP/IP #6] Part 2 | Chapter 6. IP 패킷의 전달과 포워딩 - 라우터 구조 (0) | 2024.01.25 |
[TCP/IP #4] Part 2 | Chapter 4. 네트워크 계층의 소개 - 오류/흐름/혼잡 제어 (1) | 2024.01.25 |
[TCP/IP Protocol #3] Part 1 | Chapter 3. 기반 기술 (0) | 2024.01.24 |