1. IPv4 Header
1) IPv4 Header
(1) Version
- IP Version을 표시
(2) HL(Header Length)
- 옵션을 포함한 Header Total Length
(3) ToS(Type of Service)
- 트래픽 우선순위를 결정
- DSCP와 ECN으로 구분
(4) Total Length
- IP Packet의 Total Length
- 'L3 Header + Data'의 Length를 의미
(5) Identification
- 분할된 데이터가 목적지에 도착했을 때 해당 Field를 이용하여 원래 같은 데이터 조각인지 구분 가능
- 패킷을 전송하는 장비가 분할된 패킷에 ID를 부여하여 원래 하나의 패킷이었다는 것을 표시
(6) IP Flag
- X bit
- 현재 미사용
- D bit (Do not Fragment)
- D=0 : 데이터 분할 가능
- D=1 : 데이터 분할 불가능
- M bit (More Fragment)
- M=0 : 뒤에 데이터가 존재하지 않으므로 마지막 데이터임을 의미
- M=1 : 뒤에 데이터가 존재하므로 마지막 데이터가 아님을 의미
(7) Fragment Offset
- Identification Field로 원래 패킷의 순서까지 확인 불가능
- 분할된 데이터가 목적지에 도착했을 때 원래의 순서로 조립하는 데 사용
- Fragment 공격을 방지하기 위해 분할된 데이터를 조립할 수 없으면 해당 데이터를 Discard
- 데이터 분할 시, 8byte 단위로 블록 생성
(8) TTL(Time To Live)
- IP Packet의 Lift Time을 제한하여 IP Packet Loop을 방지
- 네트워크 장비에서 라우팅 시, TTL 1씩 감소
- 라우터에서 1초 이상 지연 발생 시, 초당 TTL 1씩 감소
- TTL의 기본값은 운영체제에 따라 결정
- 패킷을 수신한 장비는 라우팅해야 하는 패킷이면 TTL을 1 감소시키고 감소한 TTL 값이 1 이상이면 라우팅하여 패킷을 전달하며 감소한 TTL 값이 0이면 장비는 해당 패킷을 Drop 하고 S-IP로 ICMP Message를 전달
(9) Protocol
- 상위 계층에 어떤 프로토콜로 전달해야 하는지 알려주는 역할
- Ethernet Header에서 'Ether Type'의 역할
(10) Header Checksum
- Error Check를 하기 위한 Field
- 송수신 측 Checksum이 다르면 Error 발생으로 판단
- 프로토콜마다 Checksum이 동작하는 원리가 상이
- Checksum 계산 방법 : Checksum을 제외한 나머지 IP Header를 16진수로 표시하여 위와 같이 계산
(11) Option
- 반드시 4byte 단위로 생성
- Ex) 3byte를 사용하기 위해 4byte Option을 생성
2. MTU vs Pass MTU
1) MTU(Maximum Transmission Unit)
- 프레임 또는 패킷 단위에서 한 번에 전송될 수 있는 최대 크기
- 패킷을 분할하지 않고 전송하면 패킷이 모두 도달할 때까지 해당 구간을 점유
- 네트워크 장비 MTU가 단말의 MTU보다 작으면 네트워크 장비에서 DF bit를 확인
- 'DF bit = 0'이면 분할하여 처리
- 'DF bit = 1'이면 Drop&ICMP 발생
- 1500byte 패킷을 'IP MTU=500byte'로 설정했을 때 위 그림과 같이 분할
2) Pass MTU Discovery
- Local 장비의 MTU가 아닌 목적지까지 Path에 대한 MTU를 찾기 위해 사용하는 방법
- 데이터의 MTU가 커서 전송할 수 없으면 ICMP Error Message를 전송
- IP Header의 DF bit를 1로 전송하여, MTU 초과 시 데이터를 Drop 하고 ICMP Destination Unreachable을 회신
- 관리자가 적절한 Path MTU를 찾거나 DF bit가 0이 될 때까지 계속 같은 결과가 발생
'Network > Network Basic' 카테고리의 다른 글
Ethernet Auto-Negotiation (1) | 2024.11.22 |
---|---|
Subnetting(FLSM, VLSM) (2) | 2024.11.20 |
Mask(Subnet Mask, Wildcard Mask) (1) | 2024.11.18 |
Introduction to IPv4 (0) | 2024.11.14 |
Network Interface Type (0) | 2024.11.12 |
Ethernet Header (0) | 2024.11.10 |
Introduction to Ethernet and CSMA/CD (0) | 2024.11.08 |
OSI 7 Layer 및 TCP/IP (0) | 2024.11.06 |