Loại bỏ gói sớm (RED)

Một phần của tài liệu luận văn môn báo hiệu và điểu khiển kết nối đề tài tìm hiểu về QOS (Trang 110)

Loại bỏ gói sớm (RED) làm giảm tắc nghẽn trong hàng đợi bằng cách loại bỏ các gói tin do đó mà một số kết nối của TCP tạm thời gửi ít gói tin hơn vào trong mạng. Thay vì chờ đợi cho đến khi một hàng đợi đầy, gây ra một số lượng lớn gói đuôi bị loại bỏ, RED có ý nghĩa quan trọng trong việc loại bỏ các gói tin trước khi hàng đợi đầy. Hành động này cố gắng làm cho máy tính giảm lưu lượng tải gửi vào trong mang.

Bản thân tên “Random Early Detection” mô tả hoạt động tổng thể của thuật toán. RED chọn các gói ngẫu nhiên để loại bỏ sau khi quyết định bỏ một số gói. RED phát hiện ra hàng đợi bị tắc nghẽn sớm, trước khi hàng đợi thực sự đầy, do đó tránh khỏi việc loại bỏ đuôi và đồng bộ hóa. Trong thời gian ngắn, RED loại bỏ một số gói dữ liệu ngẫu nhiên sớm, trước khi tắc nghẽn thực sự trở nên xấu đi và hàng đợi đầy.

Chú ý:

Ba công cụ cơ bản của RED hỗ trợ IOS: Weighted RED (WRED), Explicit Congestion Notification (ECN) và Flow-Based WRED (FRED). Bản thân RED không được hỗ trợ trong IOS.

Logic RED bao gồm 2 phần chính. RED phải phát hiện tắc nghẽn đầu tiên trước khi nó xảy ra; nói cách khác, RED phải chọn điều kiện mà nó nên loại bỏ gói tin. Khi RED quyết định loại bỏ gói tin, nó phải quyết định loại bỏ bao nhiêu gói tin.

111

Đầu tiên, RED đo độ sâu trung bình của hàng đợi. RED tính toán độ sâu trung bình và sau đó quyết định tắc nghẽn có xảy ra không dựa trên độ sâu trung bình. RED sử dụng độ sâu trung bình và không phải là độ sâu thực tế của hàng đợi, bởi vì độ sâu thực tế của hàng đợi có thể thay đổi nhanh hơn nhiều so với độ sâu trung bình. Vì RED muốn tránh những tác động của việc đồng bộ. Hình 3-5 cho thấy biểu đồ độ sâu thực tế của hàng đợi đặc trưng, so sánh với độ sâu trung bình hàng đợi.

Hình 3-5: Đồ thị của độ sâu hàng đợi thức tế với độ sâu hàng đợi trung bình

Như đã thấy trong biểu đồ, việc tính toán độ sâu hàng đợi trung bình thay đổi chậm hơn độ sâu thực tế của hàng đợi. RED sử dụng theo thuật toán sau để tính toán độ sâu trung bình hàng đợi:

_ ( _ *(1 2 )) ( urrn _ _ * 2 )n

New averageOld average    C ent Q depth

WRED sử dụng thuật toán này, với mặc định n = 9. Phương trình trên được viết lại như sau:

_ ( _ *0.998) ( urr _ _ *0.002)

New averageOld averageC ent Q depth

Nói cách khác, độ sâu hàng đợi phổ biến chỉ chiếm 2% mức trung bình mới mỗi khi nó được tính toán. Do đó, mức trung bình thay đổi từ từ, giúp RED ngăn chặn sự phản ứng mạnh mẽ để thay đổi độ sâu trong hàng đợi. Khi cấu hình WRED, bạn có thể thay đổi giá trị của n trong công thức này bằng cách đặt trọng số mũ tăng liên tục. Bằng cách tạo ra trọng số mũ nhỏ hơn, bạn thực hiện thay đổi giá trị trung bình nhanh hơn; bằng cách làm cho nó lớn hơn, với mức trung bình thay đổi chậm hơn.

RED quyết định có loại bỏ gói tin hay không bằng việc so sánh độ sâu trung bình với 2 ngưỡng, được gọi là ngưỡng tối thiểu và ngưỡng tối đa. Bảng 3-1 mô tả logic tổng thể khi RED lọai bỏ gói tin, như minh họa trong hình 3-6.

112

Bảng 3-1: Ba mức loại bỏ gói tin của RED.

Average Queue Depth Versus Thresholds

Action Name

Average < minimum threshold

Không có gói tin nào bị loại bỏ. No Drop Minimum threshold <

average depth < maximum threshold

Một số gói tin bị loại bỏ. Tỷ lệ phần trăm các gói tin bị loại bỏ tăng từ 0 đến giá trị max khi độ sâu trung bình di chuyển từ ngưỡng nhỏ nhất đến ngưỡng lớn nhất.

Random Drop

Average depth > maximum threshold

Tất cả các gói tin bị loại bỏ tương tự loại bỏ đuôi.

Full Drop

Hình 3-6: Logic loại bỏ gói tin RED sử dụng độ sâu trung bình, ngưỡng nhỏ nhất và ngưỡng lớn nhất.

Khi độ sâu trung bình hàng đợi rất thấp hoặc rất cao, hành động này là điều hiển nhiên. Khi nhìn vào bảng 3-1 và hình 3-6, RED không loại bỏ các gói tin khi độ sâu trung bình hàng đợi nằm dưới ngưỡng minimum. Khi độ sâu trung bình tăng trên ngưỡng maximum, RED loại bỏ tất cả các gói tin. Trong khi hành động này có thể thấy giống như một hành động loại bỏ đuôi, nói đến kỹ thuật được sử dụng thì không phải như vậy, bởi vì hàng đợi thực tế có lẽ chưa bao giờ đầy. Do đó, để nhận định giữa loại bỏ đuôi đúng và trường hợp khi độ sâu hàng đợi trung bình RED đạt tới ngưỡng lớn nhất, RED gọi hành động này là Full Drop.

Nằm giữa 2 ngưỡng, RED sẽ loại bỏ một phần gói tin, tỷ lệ gói bị loại bỏ tăng tuyến tính khi độ sâu trung bình tăng. Khái niệm nhân đằng sau RED trở thành rõ ràng hơn nếu bạn chú ý rằng tỷ lệ phần trăm gói tin bị loại bỏ lớn nhất vẫn nhỏ hơn loại bỏ toàn bộ các gói tin. Một lần nữa, RED muốn loại bỏ một số gói tin, không phải tất cả các gói tin. Khi tắc nghẽn tăng, RED loại bỏ tỷ lệ phần tăm gói tin lớn hơn. Cuối cùng, tắc nghẽn có thể tăng đến một điểm mà RED loại bỏ tất cả các gói tin.

113

Bạn có thể thiết lập tỷ lệ phần trăm gói tin loại bỏ lớn nhất bằng việc thiết lập MPD (mark probability denominator) trong IOS. IOS tính toán tỷ lệ phần trăm lớn nhất sử dụng cho 1/MPD. Ví dụ, một MPD của 10 yields , giá trị tính toán là 1/10, có nghĩa là tỷ lệ gói tin bị loại bỏ lớn nhất là 10%.

RED loại bỏ tỷ lệ gói tin lớn hơn khi độ sâu trung bình hàng đợi tiến đến ngưỡng lớn nhất, như đã chỉ ra đồ thị trong hình 3-6. RED cũng chọn lựa ngẫu nhiên gói tin để loại bỏ.

Bảng 3-2 tóm tắt một số từ khóa liên quan đến RED.

Bảng 3-2 Thuật ngữ RED

Thuật ngữ Ý nghĩa Actual queue

depth

Số gói tin thực tế có trong hàng đợi tai một thời điểm. Average queue

depth

Phép đo này được tính toán dựa trên độ sâu hàng đợi thực tế và giá trị trung bình trước đó. Được thiết kế để điều chỉnh chậm lại sự thay đổi nhanh chóng của độ sâu hàng đợi thực tế.

Minumum threshold

So sánh với độ sâu hàng đợi trung bình để quyết định xem các gói tin có nên bị loại bỏ hay không. Không có gói tin nào bị loại bỏ nếu độ sâu trung bình hàng đợi thấp dưới giá trị ngưỡng.

Maximum threshold

Tương tự như ngưỡng nhỏ nhất. Tất cả gói tin bị loại bỏ nếu độ sâu hàng đợi trung bình lớn hơn ngưỡng lớn nhất.

Mark probability denominator

Sử dụng để tính toán tỷ lệ phần trăm gói tin lớn nhất bị loại bỏ khi độ sâu trung bình hàng đợi nằm giữa ngưỡng nhỏ nhất và lớn nhất. Exponential

weighting constant

Sử dụng để tính toán tốc độ tại đó độ sâu trung bình hàng đợi thay đổi khi so sánh với độ sâu hàng đợi hiện thời.

No Drop Độ sâu hàng đợi trung bình nằm dưới ngưỡng nhỏ nhất. Không loại bỏ gói tin nào.

Random Drop Độ sâu hàng đợi trung bình nằm giữa ngưỡng nhỏ nhất và lớn nhất . Một phần gói tin được lựa chọn ngẫu nhiên để loại bỏ.

Full Drop Độ sâu hàng đợi trung bình vượt quá ngưỡng lớn nhất. Tất cả các gói tin bị loại bỏ.

Một phần của tài liệu luận văn môn báo hiệu và điểu khiển kết nối đề tài tìm hiểu về QOS (Trang 110)

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

(137 trang)