Phân mảnh và tái hợp

Một phần của tài liệu các phương pháp truyền IP trên mạng quang (Trang 65)

Phân mảnh

Các IP datagram có độ dài tối đa là 65535 byte. Nhưng trong thực tế, frame của các liên kết truyền dẫn có các kích thước vùng dữ liệu bị giới hạn. Giá trị giới hạn này gọi là đơn vị truyền dẫn lớn nhất MTU của liên kết.

Mặt khác, các datagram lại phải qua nhiều liên kết khác nhau trước khi đến đích nên MTU cũng thay đổi theo từng liên kết. MTU có giá trị nhỏ nhất trong các MTU của các liên kết tạo nên đường truyền dẫn được gọi là path MTU (MTU của đường truyền). Các datagram có thể định tuyến theo các con đường khác nhau nên path MTU giữa hai host không phải là một hằng số. Nó sẽ phụ thuộc vào tuyến được lựa chọn định tuyến tại thời gian đang sử dụng. Path MTU hướng thuận khác với path MTU hướng ngược.

Để các datagram có thể đóng gói vào các frame của tầng liên kết thì IP phải có khả năng phân mảnh datagram thành các fragment có kích thước phù hợp. Việc phân mảnh có thể ở ngay nguồn hay ở các bộ định tuyến mà tại đó datagram có kích thước lớn hơn kích thước vùng dữ liệu của frame. Các fragment đầu sẽ có kích thước tối đa sao cho vừa với vùng dữ liệu của frame, riêng fragment cuối cùng sẽ là

mảnh được thực hiện nhờ các trường Flag, Fragment Offset và làm thay đổi các trường Total Length, Header Checksum.

Tái hợp

Các Fragment được truyền như những datagram độc lập cho đến máy đích mới được tái hợp lại. Thực hiện tái hợp sẽ nhờ vào trường Flag để biết được Fragment cuối cùng cũng như sử dụng Identification để biết được fragment thuộc vào datagram nào. Như vậy, các fragment có giá trị bốn trường Identification, Source Address, Destination Address và Protocol giống nhau thì sẽ thuộc cùng vào một datagram để truyền lên lớp cao.

Chỉ khi phía thu nhận đủ fragment thì mới thực hiện quá trình tái hợp. Vì vậy, cần có các bộ đệm, một bảng theo bit chỉ các khối fragment đã nhận được, một bộ đếm thời gian tái hợp. Dữ liệu của fragment được đặt vào một bộ đệm dữ liệu và vị trí của nó phụ thuộc vào Fragment Offset, bit trong bảng tương ứng với Fragment nhận được sẽ được lập. Nếu nhận được fragment đầu tiên có Fragment Offset bằng 0 tiêu đề của nó được đặt vào bộ đệm tiêu đề. Nếu nhận được fragment cuối cùng (có MF của trường Fragment bằng 0) thì độ dài tổng sẽ được tính. Khi đã nhận đủ các fragment (biết được bằng cách kiểm tra các bit trong bảng bit khối Fragment) thì sau đó datagram được gửi lên tầng trên. Mặt khác, bộ đếm thời gian tái hợp nhận giá trị lớn nhất là giá trị của bộ đếm thời gian tái hợp hiện thời hoặc giá trị của trường Time to Live trong Fragment.

Chý ý: Trong quá trình tái hợp, nếu bộ đếm thời gian tái hợp đã hết thì các tài nguyên phục vụ cho quá trình tái hợp (các bộ đệm, một bảng theo bit chỉ các khối fragment đã nhận được) sẽ bị giải phóng, các fragment đã nhận được sẽ bị huỷ mà không xử lý gì datagram. Khi tái hợp, giá trị khởi đầu của bộ đếm thời gian tái hợp thường thấp hơn giới hạn thời gian thực hiện tái hợp. Đó là vì thời gian thực hiện tái hợp sẽ tăng lên nếu Time to Live trong fragment nhận được lớn hơn giá trị hiện thời của bộ đếm thời gian tái hợp nhưng nó lại không giảm nếu nhỏ hơn.

Đối với các datagram có kích thước nhỏ, trong quá trình truyền không phải phân mảnh (có trường Fragment Offset và vùng MF của trường Flag bằng 0) thì phía thu không cần thực hiện tái hợp mà datagram được gửi luôn lên tầng trên.

Việc chỉ tái hợp các fragment ở đích cuối cùng có những hạn chế sau: sau khi phân mảnh các fragment có thể đi qua mạng có MTU lớn hơn, do đó không tận dụng được hiệu quả truyền dẫn. Ngoài ra, như ta đã biết các fragment chỉ được tái hợp lại khi đã nhận đủ. Với số lượng fragment lớn thì xác suất mất fragment cao hơn, khi đó kéo theo xác suất mất datagram cũng cao vì chỉ cần một fragment không về đến đích trước khi bộ đếm thời gian bằng 0 thì toàn bộ datagram sẽ mất.

Nhưng việc kết hợp các gói tin tại đích sẽ giúp cho chức năng của các router đơn giản hơn, xử lý nhanh hơn và tránh được tình trạng tái hợp rồi lại phân mảnh. Vì thế, cơ cấu này vẫn được sử dụng trong IP.

Một phần của tài liệu các phương pháp truyền IP trên mạng quang (Trang 65)

Tải bản đầy đủ (DOC)

(155 trang)
w