조각화
큰 IP 패킷들이 적은 MTU(Maximum Transmission Unit)를 갖는 링크를 통하여 전송되려면 여러 개의 작은 패킷으로 쪼개어/조각화 되어 전송되어야 한다. 즉, 목적지까지 패킷을 전달하는 과정에 통과하는 각 라우터마다 전송에 적합한 프레임으로 변환이 필요하다. 조각화되면 최종 목적지에 도달할 때까지 재조립되지 않는 것이 일반적이며, IPv4에서는 발신지뿐만 아니라 중간 라우터에서도 조각화가 가능하지만 IPv6에서는 조각화가 발신지에서 만 가능하다. 재조립은 항상 최종 수신지에서 만 가능하다.
IPv4 조각화 과정
페이로드 2000Byte + ICMP 프로토콜 8Byte + IPv4 프로토콜 20Byte일 경우 MTU가 1500Byte이면 전송이 불가하다. 따라서 전송하기위해서는 데이터의 조각화가 필요하다.
MTU가 1500Byte이므로 IPv4프로토콜의 20Byte를 뺀 1480Byte씩 나누어 조각화가 진행된다.
- 페이로드가 2000Byte이었으므로 1480Byte와 528Byte(ICMP 프로토콜의 8Byte를 더함)로 나누어진다.
- ICMP 프로토콜은 마지막 패킷에만 붙게 되고 IPv4 프로토콜은 모든 패킷에 붙게 되어 1500Byte(1480Byte+20Byte)와 548Byte(528Byte+20Byte)로 나누어진다.
- 그 이후 이더넷 프로토콜이 붙게 되어 조각화가 이루어진다.
예시 ) 전송하려는 데이터가 4800Byte이고 MTU가 1500Byte일 경우 조각화되는 과정
4개의 패킷으로 조각화가 이루어지며 3개의 패킷까지는 다음의 패킷이 있으므로 MF가 1이고 마지막 패킷은 다음 패킷이 없기 때문에 MF가 0이다. offset은 페이로드를 8로 나눈 값이 들어가게 된다 처음 패킷은 앞의 패킷이 없기 때문에 0 두 번째는 1480/8이므로 185 세 번째는 (1480/8)+(1480/8)이므로 370 마지막 패킷은 (1480/8)+(1480/8)+(1480/8)이므로 555로 각 IPv4의 offset값이 세팅된다.
'Network' 카테고리의 다른 글
Port Number (0) | 2021.09.02 |
---|---|
IPv4 프로토콜 & ICMP 프로토콜 (0) | 2021.08.30 |
ARP 프로토콜 (0) | 2021.08.27 |
Ethernet 프로토콜 (0) | 2021.08.27 |
IP주소 (0) | 2021.08.27 |