.9 Lưu đồ điểu khiển TCP-Reno

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu ảnh hưởng của lỗi đường truyền lên kết nối internet qua đường truyền vệ tinh. (Trang 26 - 27)

2.3.3. TCP New-Reno

TCP New-Reno là một cải tiến của Reno, có thể phát hiện ra mất nhiều gói trong cùng một cửa sổ. Giống như Reno, New-Reno cũng bắt đầu giai đoạn Fast-Retransmit khi nhận được các dupACKs. Tuy nhiên, khác với Reno, New-Reno không thoát khỏi giai đoạn Fast-Recovery cho đến khi tất cả các gói tin đã phát nhưng chưa được biên nhận (outstanding segment) được biên nhận. Do đó, New-Reno giải quyết được vấn đề giảm cwnd nhiều lần khi mất nhiều gói.

Trong giai đoạn Fast-Recovery, nếu nhận được một ACK mới, có hai trường hợp xảy ra. Thứ nhất, nếu ACK cho biết tất cả các dữ liệu được xác nhận, thì New-Reno hoạt động giống như Reno. Trong trường hợp ngược lại (gọi là Partial ACK), suy ra rằng, có nhiều hơn một gói bị mất. Trong trường hợp này, có nhiều cách xử lý khác nhau, nhưng nhìn chung, New-Reno tiến hành gửi lại gói mất cho đến khi tất cả các outstanding segment được xác nhận. Chi tiết về thuật toán này được mô tả trong RFC 3782. Hạn chế của New-Reno là mặc dù hỗ trợ gửi lại nhiều gói, nhưng phải mất một khoảng thời gian RTT để New-Reno phát hiện ra mỗi gói mất.

2.3.4. TCP SACK

SACK được công bố bởi M.Mathis, J.Mahdavi, S.Floy và A.Romanow và được mô tả trong RFC2018 vào tháng 10 năm 1996. SACK là thuật ngữ viết tắt của Selective Acknowedgment Options – nghĩa là ACK có lựa chọn.

Khác với cơ chế gửi ACK như Tahoe, Reno, hay NewReno (còn gọi là cơ chế cumulative acknowledgment – ACK tích lũy), SACK không gửi ACK cho từng segment đến mà gửi ACK cho một nhóm các segment. Trong đó, có các thông tin về các khối segment liên tiếp. Từ đó, có thể suy ra được các segment mất. Hình 2.10 dưới đây minh họa phương thức hoạt động của SACK.

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu ảnh hưởng của lỗi đường truyền lên kết nối internet qua đường truyền vệ tinh. (Trang 26 - 27)

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

(64 trang)