CHƢƠNG 1 GIỚI THIỆU
2.1 Cách tiếp cận truyền thống và hệ quả
Để quản lý kích thƣớc hàng đợi trong kỹ thuật truyền thống, ta thiết lập độ dài tối đa cho mỗi hàng đợi. Các gói tin đến sẽ đƣợc cho vào hàng đợi, khi hàng đợi đầy, các gói tin đến sau đó sẽ bị loại bỏ, đến khi hàng đợi có chỗ trống do có gói tin đƣợc chuyển đi thì càng gói tin tiếp theo mới đƣợc nhận vào hàng đợi (đây là chính sách FIFO, trong NS đƣợc biết đến với tên là DropTail). Phƣơng pháp này đƣợc sử dụng trong Internet trong nhiều năm, song nó có 2 nhƣợc điểm chính sau đây [8, 1]:
2.1.1 Hiện tƣợng Lock-Out và Global Synchronization
Trong một vài tính huống đặc biệt, DropTail cho phép một hoặc một vài dòng lƣu lƣợng độc quyền chiếm hàng đợi, làm cho các gói tin của các kết nối khác không thể đƣợc nhận vào, ta nói chúng bị “lock-out”. Khi hiện tƣợng “lock-out” xảy ra, nếu thực thẻ gửi sử dụng giao thức TCP thì chúng sẽ bị timeout khi đi qua hàng đợi, lúc này theo thuật toán tránh tắc nghẽn chúng sẽ đồng thời giảm kích thƣớc cửa sổ phát và thực hiện rút lui theo hàm mũ theo thuật toán tránh tắc nghẽn, làm cho lƣu lƣợng trên mạng giảm
38
mạnh. Đó là hiện tƣợng đồng thời giảm lƣu lƣợng trên toàn mạng, đƣợc gọi là - “global synchronization”, gây lãng phí dải thông của mạng [20].
2.1.2 Hiện tƣợng Full Queues
Với “Tail-Drop”, hàng đợi có thể thƣờng xuyên ở trạng thái đầy hoặc gần đầy trong khoảng thời gian dài, vì việc loại bỏ gói tin đến chỉ thực hiện khi hàng đợi đã đầy. Ngoài ra, vì lƣu lƣợng trên Internet thƣờng xuyên có sự bùng nổ, các gói tin đến hàng loạt một lúc gây nên bùng nổ trong mạng, để đáp ứng đƣợc nhu cầu phục vụ ta phải tăng kích thƣớc hàng đợi đủ để có thể hấp thu đƣợc sự bùng nổ dữ liệu. Nhƣng việc tăng kích thƣớc hàng đợi sẽ dẫn đến độ trễ và Jitter tăng cao. Nên việc sử dụng “Tail-Drop” sẽ dẫn đến việc độ trễ và thăng giáng độ trễ của các gói tin đi qua mạng có giá trị cao. Ngoài “Tail-Drop”, hai phƣơng pháp khác có thể đƣợc áp dụng khi hàng đợi đầy là loại bỏ ngẫu nhiên hoặc loại bỏ ở đầu khi đầy. Cả hai trƣờng hợp này có thể giải quyết đƣợc vấn đề “lock-out” nhƣ đã nói ở trên nhƣng không giải quyết đƣợc vấn đề thứ 2 là “full- queue”.