5. Cấu trúc của luận văn
2.3. Giao thức QuickVegas
Một vấn đề quan trọng trong việc thiết kế một thuật toán điều khiển tắc nghẽn TCP là nó sẽ cho phép các giao thức nhanh chóng điều chỉnh tốc độ thông tin liên lạc từ đầu đầu cuối đến đầu cuối với băng thông vào liên kết nút cổ chai. Tuy nhiên, điều khiển tắc nghẽn TCP có thể hoạt động kém trong mạng có độ trễ băng thông cao vì phản ứng chậm với cửa sổ tắc nghẽn lớn. Trong phần này, tôi tìm hiểu một phiên bản nâng cao của TCP Vegas gọi là Quick Vegas [6]. Thuật toán điều khiển cửa sổ tắc nghẽn của Quick Vegas cải thiện các kỹ thuật ở giai đoạn khởi động chậm (slow start) và tránh tắc nghẽn (congestion avoidance) của TCP Vegas.
2.3.1. Cơ chế hoạt động
Nhắc lại công thức tính số lượng dữ liệu thêm (Δ) được ước tính như sau:
Δ = (Expected - Actual) × BaseRTT, (1)
Expected = CWnd / BaseRTT (băng thông dự kiến) Actual = CWnd / RTT (băng thông thực tế)
- Các CWnd được giữ ổn định khi Δ là giữa hai ngưỡng α và β.
- Nếu Δ > β, nó được coi là một dấu hiệu cho tắc nghẽn, do đó CWnd sẽ được giảm.
- N nếu Δ < α, kết nối có thể sử dụng băng thông có sẵn. Do đó, CWnd sẽ được tăng lên.
Việc cập nhật của CWnd là cơ sở cho mỗi RTT. Nguyên tắc điều chỉnh cửa sổ tắc nghẽn có thể được thể hiện như sau:
TCP gửi các gói dữ liệu nhiều lên trong giai đoạn khởi động chậm của nó do sự gia tăng nhanh cửa sổ và việc truyền tải dựa trên ACK. Hiện tượng này gây ra TCP Vegas thay đổi từ giai đoạn khởi động chậm đến giai đoạn tránh tắc nghẽn quá sớm trong các liên kết có độ trễ băng thông lớn. Bên cạnh đó, lượng gói tin và số trạm gửi mang tính cạnh tranh có thể thay đổi theo thời gian không thể lường trước. Để phản ứng nhanh hơn và tốt hơn với các mạng có độ trễ băng thông lớn, thì thuật toán điều chỉnh cửa sổ của giai đoạn chống nghẽn mạng nên cải tiến tốt hơn so với trước. Giao thức Quick Vegas cố gắng giải quyết những vấn đề này.