6강-Fragmentation
IPv4의 조각화는 IP 패킷이 네트워크를 통해 전달될 때 **MTU(Maximum Transmission UInit)**을 초과하지 않도록 패킷을 여러 조각으로 나누는 과정이다.
조각화는 경로 상의 라우터들이 MTU크기에 맞게 패킷을 처리할 수 있도록 돕는 중요한 메커니즘 !! 조각화는 네트워크 성능을 유지하고, 데이터 손실을 방지하기 위해 필수적인 과정이다.
MTU(Maximum Transmission Unit)
MTU는 네트워크 장치가 전송할 수 있는 데이터의 최대 크기를 정의한다. 각 네트워크는 다른 MTU를 가질 수 있으며, 패킷이 여러 네트워크를 경유할 때 각 네트워크의 MTU를 고려해야 한다.
MTU가 1000바이트인 네트워크에서 IP 패킷이 1000바이트를 넘으면 조각화가 필요하다. IPv4 헤더는 기본적으로 20바이트이므로, 실제 데이터는 980바이트까지 전송 가능하다.
IPv4 패킷 조각화의 주요 필드
Identification :
원래 패킷이 무엇이었는지 식별하는 값이다.
해당 값을 통해 목적지에서 다시 재조립할 수 있다.
Flags :
조각화에 필요한 정보가 포함된다.
DF (Don’t Fragment) : 1로 설정되면 조각화가 금지된다. 패킷이 큰 경우 폐기
MF (More Fragment) : 마지막 조각이 아니면 1로 설정되고 마지막 조각은 0으로 설정된다.
Fragment Offset
조각화된 데이터가 원래 패킷에서 어느위치에 해당하는지를 나타낸다.
Offset 값은 8바이트 단위로 계산된다.
조각화 예시
원래 데이터 크기: 1500바이트
MTU: 1000바이트
첫 번째 조각:
IPv4 헤더: 20바이트
데이터: 980바이트 (MTU에서 20바이트 헤더를 제외한 값)
Offset: 0
MF: 1 (다음 조각이 존재)
두 번째 조각:
IPv4 헤더: 20바이트
데이터: 나머지 520바이트
Offset: 122 (980바이트의 데이터가 이미 전송되었으므로, 이를 8로 나눈 값)
MF: 0 (마지막 조각)


Last updated