Cơ chế phân phát dữ liệu trong SCTP

Một phần của tài liệu 214533 (Trang 55 - 56)

SCTP phân biệt các luồng bản tin khác nhau trong một liên kết SCTP. Điều này cho phép thực hiện một cơ chế mà theo đó thì chỉ cần duy trì một chuỗi các bản tin trong một luồng (phân phát theo chuỗi từng phần). Điều này sẽ làm giảm nghẽn đầu dòng không cần thiết giữa các luồng bản tin khác nhau. Hơn nữa, SCTP cho phép thực hiện một cơ chế để chuyển tiếp dịch vụ phân phát tuần tự, sao cho các bản tin đ−ợc phân phát tới ng−ời sử dụng của SCTP ngay khi chúng đ−ợc nhận đầy đủ (phân phát thứ tự đến).

Điều khiển luồng và điều khiển tắc nghẽn trong SCTP đ−ợc thực hiện để đảm bảo rằng l−u l−ợng SCTP trong mạng đ−ợc coi nh− l−u l−ợng IP. Điều này cho phép thực hiện các dịch vụ SCTP không theo kiểu luồng trên nền mạng IP hiện tại.

SCTP hoạt động tại hai mức:

Trong một liên kết, việc truyền tải tin cậy datagram đ−ợc đảm bảo bằng cách sử dụng tr−ờng kiểm tra tổng, số thứ tự và cơ chế truyền lại có chọn lọc. Mỗi chunk dữ liệu đ−ợc nhận chính xác sẽ đ−ợc chuyển tới mức thứ hai, độc lập với mức này.

Mức thứ hai thực hiện một cơ chế phân phát tin cậy dựa trên khái niệm về việc sử dụng nhiều luồng datagram độc lập trong một liên kết.

Chu Quang Hiển – D2001VT 52 Việc phát hiện lỗi và lặp chunk dữ liệu đ−ợc thực hiện bởi đánh số thứ tự tất cả các chunk dữ liệu phía gửi bằng Số thứ tự truyền tải TSN. Sự công nhận gửi từ phía thu tới phía phát đ−ợc dựa trên những số thứ tự này.

Việc truyền lại đ−ợc điều khiển bởi bộ đếm thời gian. Thời gian đếm này đ−ợc tính toán từ việc kiểm tra liên tục thời gian trễ toàn trình. Ngay khi bộ đếm thời gian này bị dừng, tất cả các gói tin không đ−ợc xác nhận sẽ đ−ợc truyền lại và bộ đếm lại đ−ợc khởi động lại với thời gian đếm gấp đôi.

Mỗi gói tin đ−ợc nhận sẽ đ−ợc xác nhận bằng một chunk SACK. Thông qua các SACK này phía gửi tin cũng sẽ biết đ−ợc số các khoảng trống giữa các chunk dữ liệu. Khi phía gửi nhận đ−ợc 4 SACK liên tiếp thông báo việc thiếu cùng một chunk dữ liệu thì chunk này đ−ợc gửi lại ngay lập tức.

Phân phát gói tin linh hoạt

SCTP gán mỗi gói tin cho một trong những luồng trong một liên kết. Khi một liên kết đ−ợc thiết lập, số các luồng khả dụng ở mỗi h−ớng đ−ợc trao đổi giữa các thực thể ngang hàng. Trong mỗi luồng, SCTP gán Số thứ tự luồng (SSN) độc lập cho các gói tin. Các số này đ−ợc sử dụng để tại phía thu để xác định số thứ tự phân phát. SCTP thực hiện việc phân phát theo thứ tự đối với mỗi luồng (đối với các gói tin không đ−ợc đánh dấu là không phát theo thứ tự). Cơ chế này tránh đ−ợc nghẽn đầu dòng giữa các luồng bản tin khác nhau. Với TCP, điều này chỉ đạt đ−ợc bằng cách thiết lập một số các kết nối cho một luồng, có nghĩa là phải tăng chi phí và dung l−ợng.

Nh− đã đề cập ở trên, SCTP cho phép đánh dấu các bản tin để những bản tin này có thể đ−ợc phân phát không theo thứ tự. Nó có thể đ−ợc sử dụng cho các bản tin quan trọng để đ−ợc −u tiên tr−ớc, chẳng hạn nh− bản tin huỷ bỏ phiên của một ứng dụng.

Một phần của tài liệu 214533 (Trang 55 - 56)