Các router bên trong sử dụng thuật toán để điều chỉnh tốc độ gửi của luồng theo thông tin QoS được phản hồi về từ các router biên.. Các router đầu ra sau đó sẽ điền các tham số QoS vào c
Trang 1Hoạt động của thuật toán ARED
và maxth
roundtrip và trong những bước nhỏ
1
max
Trang 2Hình 3.13 : Phát hiện sớm ngẫu nhiên thay đổi thích ứng với max p thay đổi
chế độ giảm theo cấp số nhân và tăng theo cấp số cộng (AIMD)
Thuật toán ARED:
Every interval seconds:
If (avg > target and max p ≤ 0.5)
Tăng giá trị max p
Trang 3target : giá trị mong đợi cho avg nằm trong khoảng
[minth + 0.4 * (maxth - minth) ; minth + 0.6 * (maxth - minth)]
β : nhân tố giảm ; 0.9
Đáp ứng được với sự thay đổi của kích thước hàng đợi trung bình để có thể chiếm ưu thế trong các khoảng thời gian nhỏ Việc thích ứng chậm giá trị
Ngoài cách này ra còn có một cách điều khiển tuyến tính khác là MIDC (tăng theo cấp số nhân, giảm theo cấp số nhân) cũng được yêu cầu để quản lý hàng đợi
3.3.5.2 Các tham số của ARED
a Giá trị max p
Cố gắng tối ưu RED để tốc độ loại bỏ gói tin <50% Hơn nữa khi tốc độ
xác suất loại bỏ các gói thay đổi từ 0→ 1 khi kích thước hàng đợi thay đổi từ Minth→ 2Maxth Điều này giúp cho hiệu năng truyền lớn ngay cả khi tốc độ loại bỏ gói vượt quá 50%
b Tham số α, β
tham số đưa ra là 24.5s) Tương tự có ít nhất log0.02/logβ khoảng cho giá trị
Trang 4cầu đặt ra là ngay cả khi hoạt động dưới điều kiện bình thường thì bất kì một
kích thước hàng đợi trung bình
p cũng được duy trì và kích thước hàng đợi trung bình dịch chuyển đơn giản để
Nó là sự giảm của giá trị:
đợi giảm đột ngột từ giá trị biên trên xuống giá trị biên dưới Tham số α, β phải thoả mãn:
ra hiện tượng kích thước hàng đợi trung bình tăng từ giá trị biên giới tới giá trị biên trên Phân tích tương tự như α:
Chọn β:
1 ≤ 0.2 ; β > 0.83
c Thiết lập các tham số max th và w q
Trang 5ARED loại bỏ sự phụ thuộc của RED vào tham số maxp và một số tham
“hằng số thời gian” Nó được chỉ định trong các gói đến để đánh giá kích thước hàng đợi trung bình, nhưng bản thân nó lại không mang tính chất thời gian Các
với 10 RTT) để đánh giá kích thước hàng đợi trung bình Giả sử rằng RTT mặc
wq = 1- exp(-1/C)
C : là khả năng kết nối các gói trên 1s, được tính bắng số các gói trên một kích thước mặc định đã được chỉ ra
3.3.6 RED với các cổng vào ra (RIO-RED with In/Out)
3.3.6.1 Giới thiệu chung về RIO
Trong chương 1 đã giới thiệu về các dịch vụ DS Nhìn chung kiến trúc DS nhằm mục đích cung cấp QoS có đảm bảo tại mức các luồng được tổng hợp Nó phân loại các gói tin IP thành các nhóm lưu lượng nhỏ hơn tuỳ theo các giá trị DSCP được đánh dấu trong tiêu đề gói IP tại các đường biên của mạng Trong lõi mạng chúng sẽ được truyền theo các PHB tương ứng DS không yêu cầu duy trì trạng thái luồng, hay các tiến trình báo hiệu bên trong các mạng lõi, do đó nó giảm bớt gánh nặng làm việc cho các router trong mạng lõi Các router biên trong các mạng DS giám sát và đánh dấu các gói của luồng lưu lượng Các gói tuân theo các profile của người sử dụng sẽ được đánh dấu là “In profile” còn các
Trang 6gói nằm ngoài các profile dịch vụ sẽ được đánh dấu là out profile Một thuật toán được hỗ trợ bên trong các router lõi của mạng phân biệt là RIO (phát hiện sớm ngẫu nhiên vào ra) Trong suốt quá trình tắc nghẽn các gói có profile out sẽ
bị loại bỏ trước các gói In profile Với các chính sách loại bỏ gói, các AFPHB sẽ đưa ra quyền ưu tiên cho các gói In và cung cấp các mức dịch vụ khác nhau cho người sử dụng trên cơ sở các proifile dịch vụ của họ Để điều khiển tắc nghẽn cho các luồng được tổng hợp trong mạng DS ta có thể sử dụng lược đồ điều khiển tắc nghẽn từ biên tới biên (edge to edge congestion control scheme-E2E-CCS) Trong lược đồ này thì gói điều khiển QoS được gửi từ các router bên trong ra các router bên ngoài tại mỗi khoảng thời gian cố định Các router bên trong sử dụng thuật toán để điều chỉnh tốc độ gửi của luồng theo thông tin QoS được phản hồi về từ các router biên
Ta đang xét thuật toán RIO trong mạng DS Kiến trúc một mạng DS bao gồm 2 loại router: router biên và router lõi Các router biên được lắp đặt tại đường biên của các mạng, nó hỗ trợ cho các điều kiện lưu lượng như: phân lớp, định dạng, và đánh dấu gói tin Còn các router lõi được lắp đặt bên trong mạng, cung cấp chức năng phân loại đơn giản và một số chức năng định hướng khác Các router biên lại bao gồm các node đầu ra và các node đầu vào vùng DS
E2E-CCS coi các router đầu vào và đầu ra cũng như phía thu và phía phát các gói điều khiển QoS Phía phát sẽ gửi các gói tin điều khiển trong cùng một nhóm tới phía thu để tại các khoảng thời gian T đều đặn Gói điều khiển được sử dụng để truyền các thông tin QoS giữa các router đầu ra và router đầu vào Khi router đầu ra nhận được gói điều khiển, nó sẽ tính toán tốc độ đầu ra của các gói
In và Out được đánh dấu bởi ECN Các router đầu ra sau đó sẽ điền các tham số QoS vào các trường tương ứng trong các gói điều khiển và gửi chúng ngược trở lại router đầu vào Các gói điều khiển luôn có mức ưu tiên cao nhất trong các mạng DS Khi các router đầu vào nhận được các gói điều khiển phản hồi từ các
Trang 7router đầu ra thì nó sẽ chỉnh sửa tốc độ gửi trong các thông tin QoS đặt trong các gói điều khiển
Thuật toán quản lý hàng đợi của router lõi là thuật toán RIO, có thể được xem như sự phối hợp của hai thuật toán RED với các xác suất loại bỏ gói tin khác nhau cho các gói In và các gói Out Do đó nó cũng có hai bộ giá trị ngưỡng giống như trong RED: (minth(in), maxth(in) ,maxp(in)) và (minth(out) maxth(out), maxp(out)), được sử dụng cho việc tính toán xác suất loại bỏ các gói In, Out Thông thường các tham số của các gói Out được thiết lập cao hơn các gói In để có thể loại bỏ các Out trước khi có bất kì một gói In nào bị loại bỏ Thêm vào đó kích thước hàng đợi trung bình của các gói Out được tính toán dựa trên cơ sở tổng các gói (gói In và các gói Out) trong hàng đợi Trong khi kích thước hàng đợi trung bình của các gói In chỉ được tính toán dựa trên các gói In
a Cấu trúc router đầu vào
Hình 3.14 : Cấu trúc router đầu vào
TC (Traffic Controller) : bộ điều khiển lưu lượng
QoS controller Hander
To network core router
QoS control packet from egress router
Incoming traffic
from end Host
Trang 8Rate Controller : bộ điều khiển tốc độ
Traffic Classifier : bộ phân loại lưu lượng
Tại các router đầu vào mạng lưu lượng đến đầu tiên sẽ được phân loại trong các tập hợp lưu lượng theo các giá trị DSCP được đánh dấu trong phần tiêu đề của gói tin Mỗi tập hợp này được giám sát bởi bộ điều phối lưu lượng để đánh giá tốc độ tổ hợp lưu lượng hiện hành và phải chắc chắn rằng mỗi tổ hợp lưu lượng này sẽ không vượt quá tốc độ thông tin đỉnh của nó Các lưu lượng
mà vượt quá tốc độ có thể cho phép thì sẽ bị loại bỏ và bị đánh dấu lại để ngăn chặn việc các luồng lưu lượng này chiếm giữ tài nguyên mạng nhiều hơn tìa nguyênđã được chia sẻ Bộ điều khiển tốc độ điều chỉnh tốc độ đầu ra của bộ điều phối lưu lượng theo các tham số đã được ấn định trong các gói điều khiển QoS khi nó được phản hồi lại từ các router đầu ra
b Cấu trúc router đầu ra
Về cấu trúc thì các router đầu ra tương tự như các router đầu vào Bộ giám sát lưu lượng có thể đáp ứng cho việc đánh giá tốc độ đến của các gói In và Out với số đo profile TSW (Time Sliding Window - cửa sổ trượt thời gian) và ghi lại số lượng các gói In, Out nhận được trong suốt các khoảng thời gian đều đặn T
from core Router
QoS control packet to
ingress Router
Trang 9Hình 3.15 : Cấu trúc router đầu ra Thuật toán điều khiển tốc độ gói In và Out cho cả router đầu vào và đầu ra
Tại mỗi khoảng thời gian T
Router cổng vào sẽ nhận các gói điều khiển QoS
If N s = N r then
If EN r In > 0 then
giảm tốc độ của các gói In và Out
else if EN r Out > 0 then
giảm tốc độ gửi của các gói Out
=1
Tại router đầu vào, thuật toán tăng đơn giản thực hiện chức năng tăng tốc độ gửi Rs:
Rs = Rs * (1+ α) 0< α < 1
Trang 10Trong E2E-CCS thuật toán giảm được sử dụng để chỉnh sửa tốc độ gửi của các gói In và Out tuỳ theo thông tin điều khiển QoS nhận được Thuật toán giảm:
3.3.6.2 Thuật toán RIO
RED có các cổng vào ra In/Out (RIO) là cơ chế AQM cơ sở phù hợp cho
bộ AF PHB RIO là phần mở rộng của RED sử dụng hai tập các tham số để phân biệt loại bỏ các gói In(In profile) và các gói ngoài Out(out profile) Để quyết định khi nào loại bỏ các gói Out thì RIO sử dụng kích thước trung bình của tổng chiều dài hàng đợi RIO sẽ được mở rộng để xử lý n>2 precedence cho cùng một nguyên lý Xác suất loại bỏ các gói của Precedence 1≤ j <n phụ thuộc vào kích thước trung bình của hàng đợi ảo chứa các gói có Precedence từ 1 tới j Với các gói có mức precedence n (ví dụ là ưu tiên thấp nhất), xác suất loại bỏ các gói là chức năng của độ chiếm giữ trung bình của hàng đợi vật lý Cách thức ban đầu này còn gọi là RIO-C (RIO coupled) để phân biệt với các cách thức sau đó Ví
dụ WRED sử dụng kích thước hàng đợi trung bình tổng cho tất cả precedence trong khi RIO-DC (RIO decoupled) tính toán xác suất mất gói của precedence j như một chức năng của số lượng trung bình các gói có cùng một Precedence RIO-C phân biệt các gói theo các precedence theo 3 cách Cách thứ nhất sử dụng các mức ngưỡng khác nhau cho các precedence khác nhau, do đó các gói
có precedence thấp sẽ bị loại bỏ trước các gói có độ ưu tiên cao hơn Cách thứ
Trang 11hai là sử dụng xác suất loại bỏ tăng tại tốc độ khác nhau cho các độ ưu tiên khác nhau Cách thứ 3 nằm trong tính toán kết hợp của xác suất loại bỏ gói Trên thực
tế xác suất loại bỏ gói có precedence j sử dụng số lượng trung bình các gói của tất cả các precedence thấp hơn Hai cách đầu tiên dựa trên việc thiết lập đơn giản các tham số khác nhau do đó chúng không loại trừ lẫn nhau
Bên cạnh đó RIO được dùng để hỗ trợ cho các bộ điều khiển tốc độ để quyết định xem nên điều chỉnh tốc độ như thế nào cho hợp lý tại các router đầu vào Trong cơ chế E2E-CCS các router lõi giám sát hàng đợi đầu ra và đánh dấu các bit ECN trong các gói đến một cách ngẫu nhiên Do đó điều khiển tắc nghẽn sẽ được thực hiện khi độ chiếm giữ hàng đợi trong router lõi bắt đầu đạt tới mức ngưỡng hiện thời Bên trong mạng, tại các Router sẽ không có sự chia sẻ lưu lượng từ phía người sử dụng trong các luồng khác nhau hoặc trong các hàng đợi Các gói của tất cả các người sử dụng được tậphợp lại trong một hàng đợi Các người sử dụng khác nhau có các Profile khác nhau do họ có số lượng các gói In trong hàng đợi khác nhau
Thuật toán RIO:
For arrival packet
If là gói In
Tính toán kích thước hàng đợi In trung bình avg in
Else tính toán kích thước hàng đợi tổng avg total
If là gói In
If min in ≤ avg in < max in
Tính toán xác suất P in ;
với P in là xác suất loại bỏ gói
else if max in ≤ avg in
Loại bỏ gói này
Trang 12If là gói Out
If min out ≤ avg total < max out
Tính toán xác suất P out ;
với P out là xác suất loại bỏ gói này
else if max out ≤ avg total
loại bỏ gói này
Bằng cách lựa chọn các tham số để thể hiện thuật toán, RIO có thể đối xử với các gói Out khác nhau tại thời điểm tắc nghẽn và ưu tiên loại bỏ gói khi có tắc nghẽn xảy ra
Nhìn chung mỗi khi có gói đến router sẽ kiểm tra xem gói đó là gói In hay
của gói In), nếu nó là các gói Out, router sẽ tính toán các avgtotal (kích thước hàng đợi trung bình của các gói Out) Xác suất loại bỏ các gói In phụ thuộc vào
Hoạt động của thuật toán RIO
các tham số: minout ,maxout , Pmax(out)
Việc phân biệt đối xử các gói Out được thực hiện bằng việc lựa chọn các
so với các gói In Trong pha tránh tắc nghẽn thì xác suất loại bỏ các gói out sẽ lớn hơn khi thiết lập Pmax(out)>Pmax(in) Thứ 3: các gói Out sẽ tiến tới pha điều
loại bỏ các gói out đầu tiên ngay khi có dấu hiệu của tắc nghẽn xảy ra, và nó sẽ loại bỏ toàn bộ các gói Out khi có tắc nghẽn Trong thuật toán RIO trên thì sử
Trang 13dụng avgtotal để quyết định xác suất loại bỏ các gói Out, router có thể duy trì kích thước hàng đợi bé và khả năng thông qua cao mà không ảnh hưởng tới các lưu lượng trộn trong đó
Trong lược đồ điều khiển tắc nghẽn thì việc tăng hay giảm tốc độ gửi của tập hợp các luồng là một vấn đề quan trọng Tại các router đầu vào, thuật toán điều khiển việc tăng hay giảm các luồng lưu lượng đầu vào dựa trên các thông tin điều khiển QoS Tần số đưa ra quyết định này phụ thuộc vào việc thay đổi tốc độ có thường xuyên hay không Trong lược đồ này khi các router đầu vào nhận được các gói điều khiển từ router đầu ra, nó sẽ thay đổi tốc độ theo các chức năng quyết định và các thuật toán tăng, giảm Do đó tần số quyết định của E2E-CCS được quyết định bởi việc các router đầu vào có thường xuyên gửi các gói điều khiển QoS hay không Tần số quyết định hay T được thiết lập tới giá trị RTT ngắn nhất giữa các router đầu vào và đầu ra trong trường hợp không có tắc nghẽn
3.3.7 Thuật toán RIO thích ứng (ARIO)
Một phần mở rộng của thuật toán RIO là thuật toán ARIO (Adaptive RIO) được dùng trong quản lý hàng đợi tích cực Thuật toán ARIO là sự pha trộn của hai thuật toán ARED và RIO Mục đích chính của thuật toán ARIO là:
Đơn giản hoá cấu hình của các router hỗ trợ DS bằng việc làm giảm bớt các vấn đề trong việc thiết lập các tham số trong hầu hết các thuật toán ARED hiện thời
Tự động biên dịch các tham số của QoS thành bộ các tham số của Router
Cố gắng giữ cho độ chiếm giữ hàng đợi ổn định xung quanh giá trị cuối cùng bên dưới các tải mạng nặng
ARED là sự mở rộng trực tiếp của các thuật toán ARED và RIO-C Cũng giống như thuật toán ARED, ARIO cần một tham số đầu vào đơn, trễ cần đạt
Trang 14tới, được biên dịch thành bộ các tham số router được yêu cầu Tính năng này có thể rất hữu ích đối với việc cung cấp các dịch vụ phân biệt: cấu hình các router trong nhóm các trễ, trọng số QoS có liên quan trực tiếp tới việc định rõ dịch vụ
và các yêu cầu khách hàng nên nó sẽ đơn giản nhóm các tham số như các mức ngưỡng hàng đợi, xác suất loại bỏ các gói, trọng số trung bình
ARIO cố gắng để đạt được khả năng thông qua lớn nhất trong khi vẫn kiểm soát được độ trễ trong biên giới đã định trước, các khoảng thời gian có thể đoán trước được trong khi tải hàng đợi vẫn cao Trong ngữ cảnh của dịch vụ phân biệt, phải nhận thức đúng các gói được đánh dấu với các trường Precedence tương ứng
Do đó thuật toán ARIO dựa trên hai nguyên lý: Thứ nhất là việc sử dụng thuật toán ARED cho mỗi mức Precedence trong lớp AF (hàng đợi vật lý) Nguyên lý thứ hai là sử dụng các mức ngưỡng chồng chéo hoàn toàn cho tất cả các Precedence
Một số diểm chính trong ARED vẫn được giữ nguyên trong ARIO:
độ trễ theo yêu cầu dt và khả năng kết nối C (gói/s) có mức biên thấp
=1-exp(-1/C)
2maxth
động mạnh trong kích thước hàng đợi