Trong trạng thái ổn định, sử dụng thuật toán tránh tắc nghẽn TCP để từ từ tăng tốc độ truyền. Trong giai đoạn này, cửa sổ tắc nghẽn của một kết nối tăng tuyến tính với một segment / RTT. Trong thời gian tắc nghẽn khi lượng lớn kết nối cạnh tranh với băng thông, kích thước cửa sổ của mỗi kết nối là nhỏ. Đáng tiếc, đối với các cửa sổ nhỏ, tăng tuyến tính là sự nhầm lẫn kể từ khi tăng kích thước cửa sổ một segment có thể có tác động phi tuyến lên tốc độ truyền của kết nối. Ví dụ, khi một kết nối có cửa sổ tắc nghẽn là 1, nó tăng gấp đôi tốc độ gửi khi tăng cửa sổ sau một segment. Khi lượng lớn các kết nối với cửa sổ nhỏ được tổng hợp, mạng thấy được lưu lượng tăng và giảm theo hàm mũ. Điều này gây ra biến động nhanh chóng tới chiều dài hàng đợi, giai đoạn khả dụng cao và mất gói sau đó là giai đoạn không khả dụng.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Kiểu lưu lượng như vậy cũng đánh bại các cơ chế phát hiện sớm giống như RED vì hàng đợi lớn hơn có thể tích lũy trong khoảng thời gian rất ngắn.
Trong phần này, sửa đổi các thuật toán tăng tuyến tính cho phép TCP làm việc tốt hơn khi tắc nghẽn nặng. Hai kỹ thuật đặc biệt được xem xét: (1) tăng tuyến tính tỉ lệ và (2) tăng tuyến tính dựa trên băng thông. Ý tưởng phía sau sự tăng tỷ lệ là tăng cửa sổ tắc nghẽn một lượng rất nhỏ khi cửa sổ tắc nghẽn nhỏ. Đây là sự suy luận giống như các thuật toán tăng tuyến tính hiện tại. Trong khi chắc chắn có thể giảm bớt một số vấn đề với tăng tuyến tính tiêu chuẩn, tăng cố định nói chung có vấn đề hoặc là không đủ tích cực khi mạng không bị tắc nghẽn hoặc là quá tích cực khi mạng bị tắc nghẽn. Hình 2.22 cho thấy thuật toán tăng tuyến tính tỷ lệ được sử dụng. Trong thí nghiệm, sự tăng tỷ lệ được sử dụng để làm chậm sự tăng tốc độ truyền khi cửa sổ tắc nghẽn dưới một. Vì vậy, khi mạng không tắc nghẽn, các nguồn đơn lẻ cư xử như nguồn TCP bình thường.
Ngoài các thuật toán tăng tuyến tính tỷ lệ, dựa trên thực nghiệm, thuật toán tăng tuyến tính dựa trên băng thông cũng được khảo sát. Động lực của thuật toán dựa trên băng thông khá trực quan. Giả sử các router nút cổ chai có đủ bộ đệm để hấp thụ X% cao hơn băng thông cổ chai trong khoảng một RTT. Đây là thời gian cần thiết để thông báo tắc nghẽn phản hồi lại qua kết nối cổ chai. Sau đó, nếu mỗi nguồn chỉ tăng tốc độ truyền lớn nhất là X% cho mỗi RTT, mạng có thể đảm bảo một lượng mất gói tối thiểu. Tăng băng thông cơ sở vốn phụ thuộc vào RTT của mỗi kết nối. Bởi vì phải mất ít nhất một RTT để thông báo tắc nghẽn có thể tác động tới tải cung cấp được quan sát bởi router. Tăng băng thông cơ sở vốn cũng phụ thuộc vào số lượng bộ đệm tại kết nối cổ chai. Nếu bộ đệm tại kết nối cổ chai được tăng lên, các nguồn cuối có thể tích cực hơn để đạt được tốc độ truyền. Mặt khác, tăng bộ đệm cũng có thể ngăn chặn các nguồn nhanh chóng đạt tốc độ truyền bằng cách tăng RTT và do đó gây trễ trong việc phân phối thông báo tắc nghẽn. Ngay cả với băng thông cơ sở tăng, vẫn còn một khả năng nhỏ là tràn bộ đệm. Lý do là trong trường hợp hàng đợi RED, thông báo tắc nghẽn xác định chỉ gây ra khi chiều dài hàng đợi trung bình vượt quá maxth. Chiều dài hàng đợi thực tế thường lớn hơn chiều dài hàng đợi trung bình đặc biệt là khi tải được cấp tăng đều đặn. Lý do khác là lưu lượng TCP biểu hiện bằng những loạt chuỗi (burstiness) làm cho tải được cung cấp phải lớn hơn nhiều so với thực tế [103]. Những loạt chuỗi như vậy có thể gây ra tràn bộ đệm ngay cả khi toàn bộ tải được cung cấp thấp hơn khả năng của
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
kết nối cổ chai. Tuy nhiên, lợi thế quan trọng của việc sử dụng tăng tuyến tính dựa trên băng thông là hành vi của lưu lượng tổng hợp chủ yếu độc lập với số lượng kết nối hiện tại.
Hình 2.22 Thuật toán SUBTCP dựa trên băng thông
Router quan sát lưu lượng này sẽ tăng lên với lượng tốc độ khá ổn định bất kể tắc nghẽn trong mạng. Quá trình điều khiển hành vi của lưu lượng tổng hợp cho phép cơ chế AQM hoạt động như đã dự đoán. Hình 2.23 cho thấy, thuật toán tăng tuyến tính dựa trên băng thông dùng trong các thí nghiệm. Thuật toán cho thấy, tăng cửa sổ được dùng để tính toán tối thiểu hoá sự tăng tuyến tính hiện tại của TCP và tính toán sự tăng dựa trên băng thông. Lưu ý rằng một trong những nhược điểm của thuật toán tăng dựa trên băng thông giảm một bậc so với thuật toán lý thuyết đã chứng tỏ là không thể cung cấp Max-Min chia sẻ công bằng cho đáp ứng [24, 61]. Trong khi sự công bằng rất được quan tâm, ngay cả với thuật toán điều khiển tắc nghẽn TCP hiện tại, sự công bằng giữa các kết nối đã được chứng tỏ là quá tồi trong thời gian tắc nghẽn và giữa các kết nối với sự thay đổi RTT [45, 74]. Ngoài ra, các mô hình lý tưởng được sử dụng trong [24] giả định rằng thông báo tắc nghẽn được gửi tới tất cả các nguồn khi kết nối cổ chai bị bão hòa. Với thuật toán hàng đợi thông minh hơn như RED và FRED [46, 67] chúng phân phối thông báo tắc nghẽn ưu tiên cho các luồng băng thông cao hơn, nó có thể thực hiện được các thuật toán tăng/giảm với bậc lớn hơn để nhanh chóng hội tụ về max-min chia sẻ công bằng.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
(a) Tỷ lệ mất gói (b) Kết nối cổ chai khả dụng
Hình 2.24 Hiệu suất của thuật toán tăng tuyến tính đã sửa đổi
Với các thuật toán tăng sửa đổi, các thí nghiệm trước được lặp lại để đánh giá hiệu suất của chúng. Hình 2.24 cho thấy tỷ lệ mất gói và các kết nối khả dụng được quan sát. Để tăng tỷ lệ cố định, các biểu đồ cho thấy các kết quả sử dụng hệ số tỉ lệ là 1/4. Đối với các thuật toán tăng tuyến tính dựa trên băng thông, phần trăm băng thông tăng được thiết lập là 1% để ngăn chặn mất gói tin trong mạng thể hiện trong hình 2.19 khi sử dụng hàng đợi RED 25KB với minth là 5KB và maxth là 20KB. Hình 2.24(a) cho thấy tỷ lệ mất gói đã quan sát sử dụng các cơ chế TCP khác nhau. Biểu đồ cho thấy, sử dụng đường tăng tuyến tính phụ lớn làm giảm lượng mất gói. Thực tế, với kích thước bộ nhớ đệm nhỏ hơn, sự khác biệt trong tỷ lệ mất gói lớn như độ khuếch đại. Đặc biệt thuật toán dựa trên băng thông, cung cấp tỷ lệ mất gói rất thấp khi tắc nghẽn nặng ngay cả khi sử dụng số lượng nhỏ bộ đệm. Hình 2.24(b) cho thấy kết nối khả dụng quan sát được trên tất cả các phương pháp. Trong khi thuật toán tăng tuyến tính tỷ lệ cung cấp gói mất thấp, nó không thể duy trì kết nối khả dụng hoàn toàn. Mặt khác, các thuật toán dựa trên băng thông, duy trì độ khả dụng kết nối cao trên tất cả các kích thước bộ đệm.
Để hiểu tại sao các thuật toán tăng tuyến tính tỷ lệ thấy độ khả dụng kết nối thấp hơn và đôi khi mất gói cao hơn thuật toán dựa trên băng thông, biểu đồ chiều dài hàng đợi của hàng đợi cổ chai được bắt giữ. Hình 2.25(a) biểu thị chiều dài hàng đợi từ thí nghiệm bằng cách sử dụng maxth là 80KB. Sự phác hoạ cho thấy sử dụng sự tăng tuyến tính phụ làm cho TCP tổng hợp ít tích cực, do đó duy trì thời gian ngăn ngừa mất gói quan sát được trong các thí nghiệm trước đó thể hiện trong hình 2.21. Tuy nhiên, hình 2.25(a) cũng cho thấy, nguồn vẫn còn đủ tích cực để đánh bại cơ chế phát hiện sớm. Phải mất một khoảng thời gian duy trì thông báo tắc nghẽn
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
khi chiều dài hàng đợi trung bình vượt quá maxth cho tải được cung cấp để giảm thấp hơn năng lực của kết nối. Như trình bày trong phần 2.2.2.2, duy trì thông báo tắc nghẽn có thể gây bất lợi cho kết nối khả dụng chắc chắn gây ra quá nhiều nguồn trở lại (back-off) tốc độ truyền của chúng. Như đồ thị hàng đợi cho thấy, khi maxth được kích hoạt, các kết nối cổ chai sau đó có thể trở thành không khả dụng. Có 2 cách khắc phục vấn đề này. Cách thứ nhất sẽ làm tăng tỷ lệ ngay cả nhỏ hơn phát hiện sớm tĩnh có khả năng báo hiệu cho máy chủ cuối trong thời gian ngăn cản maxth từ lúc diễn ra. Một cách khác để cải thiện hiệu suất chỉ đơn giản là làm cho cơ chế phát hiện sớm tích cực hơn như được mô tả trong Phần 2.2.2.2. Các thí nghiệm bổ sung đã cho thấy cả hai cách có hiệu quả trong việc cải thiện hiệu suất tăng tỷ lệ.
(a) Sự tăng tỷ lệ (hệ số =1/4 ) (b) Sự tăng băng thông cơ sở
Hình 2.25 Hiệu suất tuyến tính phụ SUBTCP
Trái ngược với sự tăng tuyến tính tỷ lệ, hình 2.25(b) cho thấy đồ thị chiều dài hàng đợi khi mỗi nguồn sử dụng sự tăng dựa trên băng thông. Như hình vẽ cho thấy, tổng lưu lượng biến động không đáng kể, cho phép phát hiện sớm thực hiện như dự định.
2.2.4 Điều chỉnh hiệu suất tối ƣu
Hai phần trước đã cho thấy 2 cơ chế riêng lẻ, AQM và cơ chế máy chủ cuối có thể được dùng để giảm mất gói đáng kể trong mạng. Khi sử dụng cùng nhau, chúng tạo thành sự kết hợp cộng tác có thể cho phép mạng đạt được hiệu quả rất cao ngay cả trong thời gian tắc nghẽn nặng. Hình 2.26 cho thấy tỷ lệ mất gói và độ khả dụng kết nối cổ chai trên một loạt các tải làm việc sử dụng thuật toán SUBTCP dựa trên băng thông với hàng đợi ARED trong mạng. Trong các thí nghiệm này, cấu trúc mạng trong hình 2.19 được sử dụng và số kết nối đi qua kênh 1.5Mbs được thay đổi
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
từ 25 tới 300. Như hình vẽ cho thấy, tỷ lệ mất gói rất thấp trong khi độ khả dụng kết nối cổ chai vẫn còn khá cao trên tất cả các thí nghiệm.
(a) Tỷ lệ mất gói (b) Độ khả dụng kết nối cổ chai
Hình 2.26 Hiệu suất thông qua lưu lượng lải
Để so sánh sự cải thiện đối với các phương pháp khác, tỷ lệ mất gói sử dụng tải lưu lượng gồm 100 kết nối. Hình 2.27(a) biểu thị tỷ lệ mất gói cho một loạt các máy chủ cuối và cơ chế quản lý hàng đợi. Hình vẽ này cho thấy hiệu suất của TCP bình thường sử dụng cả hàng đợi cắt-đuôi và RED giống như hiệu suất của TCP thông thường dùng ECN sử dụng cả hai hàng đợi RED-ECN tĩnh và hàng đợi ARED-ECN. Ngoài ra, hình vẽ biểu thị hiệu suất thuật toán SUBTCP dựa trên băng thông cho cả hai hàng đợi RED-ECN tĩnh và thích nghi. Trong hình này, đồ thị cho thấy tách thông báo tắc nghẽn từ gói tin mất thông qua việc sử dụng ECN cải thiện tỷ lệ mất gói đáng kể. Đồ thị cũng cho thấy cả ARED và SUBTCP sửa đổi cung cấp sự cải thiện hiệu suất đáng kể và khi chúng được sử dụng cùng với nhau cho phép mạng đạt được hiệu suất tối ưu.
Các thí nghiệm trước đó cố định cả RTT và tăng phần trăm băng thông sử dụng (1%). Hình 2.27(b) biểu thị tỷ lệ mất gói sử dụng 100 kết nối khi tăng phần trăm băng thông sử dụng là 10%, 30%, và 50%. Các thí nghiệm cũng thay đổi trễ truyền dẫn qua kết nối cổ chai từ 5ms tới 10ms và 50ms, do đó làm tăng đáng kể RTT. Như hình vẽ cho thấy, mỗi nguồn cho phép tăng tốc độ truyền nhanh hơn, tỷ lệ mất gói từ từ tăng lên như những loạt truyền được thấy tại router tăng lên. Tuy nhiên, ngay cả với sự tăng phần trăm lớn hơn, tỷ lệ mất gói vẫn còn tương đối thấp so với các đề xuất khác. Hình vẽ cũng cho thấy rằng tăng RTT có tác động một chút tới hiệu suất, với tỷ lệ mất gói cũng rất thấp.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
(a) Sự so sánh giữa các phương pháp (b) Thông số và độ nhạy RTT
Hình 2.27 So sánh hiệu suất
2.2.5 Kết luận và công việc tƣơng lai
Chương này đã cho thấy cách thức AQM và thuật toán điều khiển tắc nghẽn máy chủ cuối có thể được thiết kế để đem lại hiệu quả loại trừ mất gói trong các mạng tắc nghẽn. Đặc biệt, cơ chế ARED biết rõ số lượng kết nối hoạt động và sử dụng sự tăng tuyến tính dựa trên băng thông cả hai có thể cung cấp lợi ích đáng kể trong việc giảm mất gói tin và tăng độ khả dụng mạng. Có một vài cách có thể mở rộng các cơ chế này. Đặc biệt, một số phương pháp nâng cao sự thích nghi của thuật toán RED đang được khảo sát. Phần này trình bày một thuật toán cụ thể cho các thông số RED tailoring cho lưu lượng đầu vào. Có nhiều khả năng thay thế khác để làm được điều đó. Ví dụ, hàng đợi RED thực tế có thể kiểm tra số lượng kết nối hoạt động và thay đổi tích cực cho phù hợp. Một cơ chế khác cho phép hàng đợi RED suy ra số lượng kết nối hiện tại nhờ tốc độ mà tại đó độ dài hàng đợi trung bình thay đổi và sau đó thích ứng với các thông số phù hợp. Nó cũng có thể thích ứng với các thông số RED khác thay vì maxp để tối ưu hóa hiệu suất. Ví dụ, sự thích nghi có thể thay đổi xác suất mất liên gói hoặc giá trị ngưỡng RED tùy thuộc vào lưu lượng đầu vào.
Cuối cùng, trong các mạng hoàn toàn tắc nghẽn mà không đủ khả năng thiết lập maxp lên 1, chúng có thể làm cho mất gói/đánh dấu thậm chí tích cực hơn bởi có sự thay đổi xác suất đánh dấu như một hàm phi tuyến của chiều dài hàng đợi trung bình. Hình 2.28 cho thấy một ví dụ về hàm mất gói/đánh dấu có thể được sửa đổi để nâng cao hơn nữa hiệu suất của RED. Hình vẽ cho thấy, khi maxp không đủ thiết lập
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
là 1, hàm đánh dấu giả định có dạng phi tuyến cho phép đánh dấu trở nên tích cực hơn. Thay đổi hàm đánh dấu theo cách này có thể cho phép RED điều khiển tắc nghẽn, ngay cả tắc nghẽn rất nặng.
Độ dài hàng đợi trung bình
Hình 2.28 Sự mở rộng cho ARED
Ngoài ra việc cải thiện các thuật toán kiểm soát tắc nghẽn máy chủ cuối cũng đang được khảo sát. Trong khi tăng dựa trên băng thông cung cấp cho máy chủ cuối với giá trị giới hạn trên để tích cực nhằm đạt được tốc độ truyền, nó thường muốn nguồn thay đổi tốc độ gửi chậm hơn hoặc không gửi gói nào khi gần điểm tắc nghẽn để tránh sự dao động trong thuật toán cửa sổ của TCP [23, 94, 95]. Kết hợp các kỹ thuật đó vào thuật toán tăng dựa trên băng thông đang được khám phá. Các cơ chế bổ sung để nâng cao tính công bằng trên khoảng thời gian ngắn đang được xem xét. Một trong những lợi thế của tránh tắc nghẽn TCP là thuận lợi với các luồng băng thông thấp. Đối với các luồng tương đương RTT, các luồng băng thông thấp với cửa sổ tắc nghẽn nhỏ tăng hiệu quả tốc độ gửi nhanh hơn so với các luồng băng thông cao với các cửa sổ lớn hơn khi sử dụng thuật toán tránh tắc nghẽn của TCP. Để giải