b. Bảo mật
3.2.2 Thuật toán
Phần này sẽ mô tả giải thuật cho các RED gateways. RED gateways tính kích thước hàng đợi trung bình bằng một bộ lọc thông thấp (Low-Pass Filter). Kích thước hàng đợi trung bình này được so sánh với hai ngưỡng: ngưỡng dưới minth và ngưỡng trên maxth. Khi kích thước hàng đợi trung bình bé hơn ngưỡng dưới thì không gói tin đến nào bị đánh dấu hay loại bỏ; khi kích thước hàng đợi trung bình lớn hơn ngưỡng trên thì tất cả các gói tin đến đều bị loại bỏ. Khi kích thước hàng đợi trung bình nằm giữa minth và maxth thì mỗi gói tin đến được đánh dấu hoặc loại bỏ theo một xác suất pa, trong đó pa là một hàm theo kích thước hàng đợi trung bình avg; xác suất đánh dấu hoặc loại bỏ một gói tin của một kết nối cụ thể tỷ lệ với phần băng thông chia sẻ của kết nối đó tại gateway. Giải thuật tổng quát của RED gateway được mô tả như sau: [5]
For each packet arrival
Caculate the average queue size avg If minth ≤ avg < maxth
Caculate propability pa With propability pa:
mark the ariving packet else maxth ≤ avg
mark the ariving packet
Như vậy, giải thuật tại RED gateway gồm hai giải thuật tách biệt: Giải thuật tính kích thước hàng đợi trung bình quyết định mức độ bùng nổ cho phép trong hàng đợi tại gateway và giải thuật tính xác suất đánh dấu quyết định mức độ thường xuyên của việc đánh dấu gói tin của gateway. Giải thuật tính xác suất đánh dấu phải đảm bảo sao cho các gói tin được đánh dấu tại những khoảng không gian đều nhau, để tránh hiện tượng đồng bộ toàn cầu, trong khi vẫn giữ kích thước hàng đợi trung bình ở một giới hạn nhất định.
Giải thuật chi tiết của RED tại gateway được mô tả như sơ đồ dưới đây:
Theo giải thuật, mỗi khi có một gói tin đến, sẽ tính kích thước hàng đợi trung bình – avg bằng bộ lọc thông thấp:
Trong đó: q là kích thước hàng đợi hiện thời; wq là trọng số hàng đợi, nhận giá trị trong miền 0..1, wq còn được gọi là hệ số làm trơn, wq càng nhỏ thì mức độ làm trơn càng cao, wq càng lớn thì avg càng bám sát giá trị tức thời của q. Như vậy wq quyết định độ lớn và độ kéo dài cho phép của sự bùng nổ lưu lượng.
Khi avg chạy từ minth đến maxth thì xác suất pb thay đổi tuyến tính từ 0 đến maxp:
Xác suất đánh dấu gói tin pa tăng chậm khi số gói tin từ gói cuối cùng được đánh dấu count tăng lên: pa ← pb / (1 – count.pb), điều này đảm bảo cho gateway không phải đợi quá lâu trước khi đánh dấu một gói tin. RED gateway đánh dấu tất cả các gói tin đến nếu như avg vượt quá maxth.
RED có một tuỳ chọn: để đảm bảo xác suất một gói bị loại bỏ tỉ lệ với thông lượng tính bằng bit/s chứ không phải packet/s, pb được tính như sau:
Trong trường hợp này, một gói tin lớn dễ bị loại bỏ hơn là một gói tin nhỏ.