Computer Science/CS 네트워트 편

[Network] 8. 조각화 이론

미스터로즈 2021. 8. 11. 08:13

네트워크 관련된 유튜브 강의 정리 내용입니다.

정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다.


조각화란?

큰 IP 패킷들이 적은 MTU를 갖는 링크를 통하여 전송되려면 여러 개의 작은 패킷으로 쪼개어 / 조각화 되어 전송돼야 합니다.

즉, 목적지까지 패킷을 전달하는 과정에 통과하는 각 라우터마다 전송에 적합한 프레임으로 변환이 필요합니다.

일단 조각화되면, 최종 목적지에 도달할 때까지 재조립되지 않는 것이 일반적입니다.

IPv4에서는 발신지뿐만 아니라 중간 라우터에서도 IP 조각화가 가능합니다.

IPv6에서는 IP 단편화가 발신지에서만 가능합니다.

재조립은 항상 최종 수신지에서만 가능합니다.

 

조각화 과정

MTU 가 3300 bytes

IPv4 헤더 20 bytes

나머지 3280 bytes 씩 보낼 수 있음

 

 

데이터 2000 bytes

ICMP 8 bytes

IPv4 20 bytes

하지만 MTU가 1500 bytes로 지나갈 수가 없습니다.

 

이와 같이 데이터를 쪼개서 전송을 해줍니다.

ICMP는 가장 마지막 데이터에 붙여서 전송을 해줍니다.

따라서 1480 bytes 의 데이터씩 잘라줍니다.

 

 

MTU를 지나서 Ethernet 까지 붙여줍니다.

 

 

예시)

보내려는 데이터 크기 : 2379

MTU : 980

 

몇 개의 패킷으로 쪼개지는가?   3개

첫 번째 패킷의 데이터의 크기가 몇 인가?   960 bytes

마지막 패킷의 데이터의 크기가 몇 인가?    459 bytes

 

MTU가 980이면 IPv4크기를 고려하여 960 씩 잘라주면 됩니다.

 

960의 데이터 2개와 459의 데이터 1개가 발생합니다.