Phân mảnh

Một phần của tài liệu Công nghệ MPLS với hoạt động phân phối nhãn và chuyển mạch gói tin_Full Code (Trang 30)

Công nghệ IP sử dụng một kỹ thuật gọi là phân mảnh để giải quyết vấn đề của việc không đồng nhất các MTU. Khi gói tin lớn hơn MTU của mạng mà nó phải đi qua thì nó được chia thành các mảnh nhỏ hơn và được gửi riêng biệt .Quá trình này được minh họa trong hình sau:

Hình 2.2 : Phân mảnh

Để phân mảnh gói tin, một máy chủ hoặc router sử dụng MTU và kích thước tiêu đề gói tin để tính toán xem gói tin được phân mảnh thành bao nhiêu gói tin khác (phải là bội số của 8 octet). Sau đó, tiêu đề của gói tin ban đầu được sao chép vào các tiêu đề của mỗi gói tin nhỏ được phân mảnh. Có các trường sau đây bị thay đổi :

 Tổng độ dài gói tin ngắn hơn.

 Thêm cờ trong tất cả các mảnh cuối cùng.

 Fragment offset để xác định vị trí của đoạn trong gói tin gốc.

 Header checksum.

Từng phân đoạn trở thành các gói tin riêng lẽ và được định tuyến độc lập như bất kì gói tin khác. Điều này có thể làm cho các phân đoạn của gói tin ban đầu đi tới đích không đúng trật tự.

Tại đích quá trình xây dựng lại gói tin ban đầu được gọi là reassembly. Xác định các phân đoạn thành một nhóm lại với nhau, thậm chí từ cùng một nguồn.

CHƢƠNG 2: CẤU TRÚC GÓI TIN TRONG MPLS

Trang 21

Fragment offset giúp cho việc xác định vị trí của các phân đoạn.

Ví dụ :

1 gói tin IP datagram chiều dài là 4000 byte , nó sẽ có 20 byte header + 3980 byte dữ liệu. Mà trên đường truyền chỉ cho phép truyền tối đa là 1500 byte , cho nên gói tin sẽ phần thành 3 mảnh nhỏ . Mỗi mảnh đều có header là 20 byte , còn phần dữ liệu lần lượt của 3 mảnh là 1480 byte , 1480 byte , 1020 byte . Nên offset của 3 mảnh lần lượt là 0 , 1480 , 2960 . Dựa vào offset để ráp lại thành mảnh lớn ở bên nhận . Cuối cùng là trường Flag bên nhận xác định được mảnh cuối cùng.

ID ở mỗi mảnh nhỏ = x , nghĩa là cùng thuộc 1 mảnh lớn

CHƢƠNG 2: CẤU TRÚC GÓI TIN TRONG MPLS

Trang 22

Một phần của tài liệu Công nghệ MPLS với hoạt động phân phối nhãn và chuyển mạch gói tin_Full Code (Trang 30)