QoS trong mạng IP Kết luận
MỘT SỐ KỸ THUẬT NÂNG CAO QoS TRONG MẠNG IP
Ở chương III “các thành phần của QoS mạng ”, đã cung cấp cái nhìn tổng quan về
mạng IP, đưa ra cho chúng ta thấy các thành phần phát triển của QoS trong mạng IP. Tiếp
đó là các tiến hành hoạt động với gói thông qua sự chiếm dụng ở các hop kế tiếp những
sự thực thi như: phân loại, hàng đợi và kiến trúc lập lịch (CQS) cung cấp cho những thông
số chuyển tiếp khác biệt. Trong một tình huống thêm vào, những đường liên kết cần có
thông số QoS dự báo trước của mình cho mối liên hệ với sự điều khiển thời gian hợp lý
được cung cấp bởi các router. Tiêu điểm của chương này tập chung vào router, các thành
phần của nó, QoS đối với router và kiến trúc CQS.
4.1 Vấn đề định tuyến hoá và QoS
Ở đây chúng ta đứng trên quan điểm của nhà quản lý mạng. Sự nâng cao chất
lượng QoS được thực hiện dưới dạng các thành phần mạng. Đặc biệt là hỗi trợ QoS
dựa trên thiết bị router. Để biết hiểu rõ hơn về vấn đề này chúng ta trước tìm hiểu
một chút về router.
Một router thông thường có một số chức năng cơ bản sau đây:
• Giao diện ( giao diện ở đây khá phức tạp)
• Bộ chuyển tiếp
• Bộ phận chức năng quản lý
Những gói phù hợp từ những router khác đưa vào những giao diện, và (trên cơ sở địa
chỉ đích của mỗi gói IP) bộ phận chuyển tiếp chuyển gói qua giao diện đầu ra phù hợp.
Mỗi giao diện sau khi sử dụng kỹ thuật đường liên kết riêng để truyền dẫn đến router
(hay host) kế tiếp dọc theo đường liên kết. Khi router chắc chắn rằng vùng nghẽn đang
tăng lên không còn phù hợp, những gói này có thể bị loại bỏ hay bị đánh dấu lại bằng
cách chỉ ra trạng thái của nó trên mạng. Các thiết bị xử lý gói không liên tục kế tiếp
(lựa chọn giao diện đầu ra và trả lời nghẽn) thì được xử lý sau cùng bởi thiết bị quản lý
mạng.
Khối chuyển tiếp FBI (forwarding information base) chứa các thông tin phục vụ cho
sự định tuyến của các router, các router sẽ quyết định định tuyến những gói đến dựa
trên, FBI và địa chỉ đích. Với tất cả những địa chỉ đích phù hợp, việc tìm kiếm tiền tố
phù hợp dài nhất được thực hiện qua FIB. Khi sự tìm kiếm xác nhận là tìm thấy, bộ phận
QoS trong mạng IP Kết luận
chuyển tiếp biết gói đi đến là phù hợp nó sẽ chuyển gói đến cổng ra phù hợp, có thể tiếp
nhận; nếu không tìm thấy, thì ngược lại gói sẽ bị loại bỏ.
Chú ý rằng, biết về mô hình hình học phụ cận cho phép FIB của những hop kế tiếp
được tìm thấy từ tính toán những cây đường dẫn ngắn nhất cho tất cả địa chỉ đích/
những tiền tố.
Chuyển tiếp
cập nhật nội hạt, bản tin cho những router khác.
những thống kê nội hạt, bản tin từ những router khác.
Quản lý
Hình 4.1: Bộ định tuyến IP hỗi trợ tối đa thông thường
Những router đơn giản điển hình có chung tâm tín hiệu CPU thiết lập tất cả những
chức năng quản lý và chuyển tiếp gói. Từ khi những router có sự phát triển theo hướng
kiến trúc phấn tán, tất cả những thiết kế đều nhằm thực hiện loại bỏ hay giảm những
điểm thắt cổ chai. Trong những router đường trục thực thi cao, bộ phận chuyển tiếp
được phân tán thiết lập trong những cạc giao diện dược liên kết bởi cơ cấu hay mặt bằng
nền tảng chuyển mạch tốc độ cao. Tuy nhiên, tất cả những router phải có trình tự chung
theo các bước xử lý khi gói đi qua. Ngày nay QoS đang trở nên quan trọng, quá trình
chuyển tiếp được thiết kế lại với chi phí nhiều hơn cho router gửi gói. Hình 4.2 cung cấp
tổng quan về lý thuyết quá trình xử lý xảy ra trong khối chuyển tiếp ở hình 4.1. Thông
thường một gói gửi qua thì thông qua ba giai đoạn chinh sau:
QoS trong mạng IP Kết luận
• Phân loại và tìm kiếm FIB (thiết lập nhận dạng gói và tìm giao diện đầu ra).
• Đánh dấu và lập chính sách (dùng để đối phó với những trường hợp gói không
đến trong khung thời gian phù hợp)
• Hàng đợi và lập lịch (cho chuyển tiếp gói phụ thuộc vào những quy tắc chia sẻ
đường liên kết hay loại hình lưu lượng còn cho loại bỏ thì phụ thuộc vào những
quy tắc điều khiển nghẽn).
Giai đoạn phân loại gói thiết lập toàn bộ ngữ cảnh “context” cho những gói đến sau
sự thiết lập này được thao tác bởi router. Mặc dù hầu hết tất cả “context” được sử dụng
để thiết lập các thông số thao tác thời về thời gian (lập chính sách, đánh dấu, hàng đợi,
lập lịch), một số “context” thêm vào có thể được dùng cho chuyển đổi một số quyết
định chuyển tiếp. Ví dụ một router hiện đại có thể duy trì sử dụng nhiều FIB phức tạp
(đại diện những cây đường dẫn ngắn nhất dựa trên cơ sở đơn vị khác nhau) và lựa chọn
giữa chúng bằng cách sử dụng những thông tin khác nhau trong phần tiêu đề gói (như
địa chỉ nguồn của gói). Một cách tương tự hay tối thiểu một mối quan hệ đóng thường
tồn tại giữa tình huống của gói (thiết lập thông qua phân loại) và các phân loại của nó (ta
có thể thấy được chúng trên cơ sở từ cuối- tới-cuối).
Hình 4.2: Sự phân loại từng chặng điều khiển chặng kế tiếp, hàng đợi và lập lịch.
Chú ý rằng một router cũng có thể nhận chặng tiếp theo bằng một phần ngữ cảnh
của gói, nhưng sự sắp xếp chi tiết thì phụ thuộc nhiều vào sự thực thi.
Hình 4.2 phản ánh một giả định đơn giản tắc nghẽn xảy ra chỉ ở giao diện đầu ra.
Kiến trúc CQS được yêu cầu ở tất cả những điểm tắc nghẽn, dù có trong mạng hay
QoS trong mạng IP Kết luận
router. Kiến trúc router cũng có thể có những điểm tắc nghẽn nội (ví dụ ở đầu vào của
trường chuyển mạch hoặc mặt bằng phía sau) và cũng phải cung cấp hàng đợi và lập
lịch khác biệt ở tất cả những điểm này.
Đoạn kế tiếp diễn tả sắp xếp theo thứ tự phân loại, lập chính sách, đánh dấu, hàng
đợi và lập lịch đã có phát triển từ trước.
4.2 Phân loại
Sự xử lý phân loại gói trong những luồng ở bộ định tuyến gọi là phân loại gói. Tất
cả các gói thuộc luồng giống nhau (theo quy ước) thì được xử lý giống nhau trong bộ
định tuyến. Ví dụ địa chỉ nguồn và đích giống nhau.
Cơ chế phân loại gói của một router ảnh hưởng trực tiếp đến nhân tố tách các lớp
hoặc các loại lưu lượng IP khác nhau. Trong thực tế, tình trạng của một gói tin phụ
thuộc vào cả hai thông tin mang bởi bản thân gói và thông tin tình hình mạng được nhận
từ giao diện của nó.
4.2.1 Những quy tắc
Một sơ đồ phân loại chung lựa chọn một số mẫu N bit trong phần tiêu đề của gói tin
để phân biệt tới 2
N
loại (hoặc lớp) gói. Mẫu này được gọi là khoá phân loại. Hoạt động
phân loại một gói đòi hỏi kết hợp một số trường trong chìa khoá dựa vào một tập các
quy tắc phân loại. Một phân loại gói phải bao gồm sự phù hợp những trường trong quy
tắc. Quy tắc phân loại phải tồn tại “bao phủ” tất cả phân loại đặc biệt của yêu cầu cách
thức xử lý của router - Những quy tắc định rõ “context”, nó chi phối sự xử lý gói phù
hợp tiếp theo của router.
Một khóa không thể dài tuỳ ý - bộ nhớ của một router bắt buộc phải giới hạn số
lượng thông tin trạng thái mà nó có thể lưu giữ để nhận biết lớp. (Tuy nhiên ý nghĩa của
các bit tồn tại trong trường phân loại có thể ít hơn nhiều so với 2
N
trường hợp để giải
quyết). Thời gian xử mỗi gói kết hợp trong từng bước phân loại cũng tăng lên theo chiều
dài khóa (mặc dù không phải luôn theo đường thẳng), điều đó có thể cản trở hiệu suất
của router. Mặt khác một khoá không thể quá ngắn – 2
N
phải bằng hoặc lớn hơn giá trị
cực tiểu của lớp lưu lượng yêu cầu bởi mạng đã được thiết kế.
Ngoại trừ các trường đã được phân loại, giai đoạn phân loại phải có khả năng giữ
được tốc độ gói đỉnh. Cho đến khi “context” của gói được thiết lập, hàng đợi khác biệt
không được cung cấp. Khi mà giai đoạn phân loại chậm hơn tốc độ gói đến, thì hàng
đợi FIFO xuất hiện trước giai đoạn phân loại.
QoS trong mạng IP Kết luận
Hầu hết các sơ đồ phân loại hỗn hợp điển hình sử dụng một khoá bao gồm nhiều
trường trong tiêu đề gói IP được chú giải như là phân loại đa trường (MF). Khoá này có
thể thêm một vài hoặc tất cả các trường thường định nghĩa một luồng IP – thông thường
là địa chỉ nguồn và địa chỉ đích, trường giao thức, và chỉ số cổng TCP/UDP nguồn và
đích. Phân loại MF cung cấp tổng số lớn nhất “context” của bộ định tuyến cho các giai
đoạn xử lý kế tiếp. Tuy nhiên, khi một người thiết kế mạng tin rằng chỉ một số lớp lưu
lượng nhỏ cần phân biệt tại một vài chặng cho trước, giải pháp thường được ấn định cho
một nhóm bit tại một vị trí cố định trong tiêu đề gói được phân loại. Octet ToS của IPv4,
octet TC của IPv6 và trường dịch vụ khác biệt hoàn toàn phù hợp trong trường hợp này.
4.2.2 ToS, traffic Class (IPv4, IPv6)
Trường ToS (IPv4):
Gói IPv4 có một byte ToS trong phần tiêu đề cho phép phân loại gói tại mỗi chặng
theo một cách đơn giản. Hình vẽ 4.3 đưa ra tiêu đề gói IPv4 (theo RFC 1349), trong đó
3 bít được gán để biểu thị quyền ưu tiên của gói và 4 bít chỉ thị loại dịch vụ. Bít cuối
cùng được dự trữ và được thiết lập bằng 0.
Hình 4.3 Trường ToS trong Ipv4
Chúng ta có thể chia lưu lượng thành 2
3
lớp dịch vụ (Class of Service - CoS) sử
dụng ưu tiên IP (hai loại khác được dành riêng cho việc sử dụng mạng nội bộ). Các kỹ
thuật hàng đợi trên toàn mạng sau đó có thể sử dụng dấu hiệu này để cung cấp cách xử
lý phù hợp.
Ba bit trọng số lớn nhất (tương ứng với nhị phân là các giá trị 32,64,128) của trường
ToS trong tiêu đề IP tạo thành các bít được sử dụng cho ưu tiên IP. Các bít này được sử
dụng để cung cấp độ ưu tiên từ 0 đến 7 cho gói IP. Trong đó ưu tiên IP 6 và 7 là để dự
QoS trong mạng IP Kết luận
trữ và nhà quản trị mạng không được thiết lập, sáu mức ưu tiên còn lại dành cho các
luồng lưu lượng IP.
Bốn bít ToS có ý nghĩa như là một khoá phân loại cho việc thay đổi việc tìm kiếm
FIB. Nó chỉ ra loại định tuyến/dịch vụ chuyển tiếp được yêu cầu theo khuyến nghị
[RFC1349], bit cuối cùng được dùng cho dự phòng và thường được đặt bằng không.
Các thiết lập khác nhau của các bít ToS yêu cầu gói phải được định tuyến dọc theo
đường đã chọn dựa theo các tiêu chí độ trễ, thông lượng, độ tin cậy và các lý do về giá
thành. Hình 4.3 minh họa 5 trong số 16 nhóm bít ToS và các ý nghĩa cụ thể của chúng.
11 nhóm bít còn lại theo RFC 1349 thì chưa được định nghĩa.
Chú ý: một kỹ thuật được sử dụng sớm hơn là RFC791 sử dụng 3 bit thay cho 4 bit và
mỗi bit được sử dụng như một cờ riêng yêu cầu trễ, công suất hoặc độ tin cậy là hệ thống
định tuyến lựa chọn.
IPv6: Một cách tương tự các đặc trưng RFC2460, tiêu đề gói tin IPv6 bao gồm một
octet TC(traffic Class) đơn cho việc phân loại lưu lượng đơn giản [RFC2460]. Tuy
nhiên RFC2460 định nghĩa không chi tiết về octet TC
4.2.3 Diffirent Services Fied (trường dịch vụ khác biệt)
Một vấn đề với byte ToS trong RFC 1349 là mô hình xử lý lưu lượng phân biệt bị
hạn chế. Gần đây, IETF đã đưa ra mô hình DiffServ, trong đó, byte ToS IPv4 trở thành
trường DiffServ, cho phép chỉ thị nhiều kiểu xếp hàng gói và quy tắc lập lịch.
Như minh hoạ trong hình vẽ 4.4, sáu bít của byte ToS cũ cấu tạo nên trường mã
điểm DiffServ (DSCP), theo lý thuyết thì cho phép lên đến 64 trường hợp khác nhau, và
do đó tương ứng với 64 cách đệm gói trong hàng đợi và 64 cách lập lịch.
IHL
Ver
ToS
Độ dài gói
Sè nhËn diÖn
Flags
Offset
TTL
Giao thức
Header Checksum
QoS trong mạng IP Kết luận
Địa chỉ nguồn
Địa chỉ đích
Trường mã điểm DS
Không sử dụng
Trêng Diffserv
Mµo ®Çu gãi IPv4 truyÒn thèng
Hình 4.4 Trường DiffServ
4.2.4 Phân loại đa trường
Chỉ sử dụng trường DiffServ cho việc phân loại gói sẽ có một số hạn chế. Thứ nhất,
số lượng lớp lưu lượng tối đa là 64 và thông thường là ít hơn nhiều. Thứ hai, với sự
phân loại như vậy, bộ định tuyến biết rất ít về các nguồn và đích của gói. Một kỹ thuật
khác được đưa ra là phân loại đa trường.
Thông thường bộ phân loại đa trường được sử dụng để phân biệt giữa các luồng ứng
dụng. Điều này cần đến một khoá phân loại bao gồm các trường địa chỉ đích và nguồn
(để xác định các điểm đầu cuối tham gia), trường giao thức, số hiệu cổng đích và nguồn
TCP/UDP (chỉ thị ứng dụng, giả sử tải trọng là TCP hay UDP).
Mặc dù không phải là phần bắt buộc phải có trong tiêu đề gói tin IP, nhưng số hiệu
cổng TCP/UDP luôn có trong 32 bít đầu sau phần tiêu đề IPv4 và bộ phân loại đa trường
có thể dễ dàng xác định vị trí của chúng.
• Phân loại IPv4
QoS trong mạng IP Kết luận
Hình 1.11 biễu diễn một số trường thông thường cần quan tâm trong một gói IPv4.
Hai vùng phức tạp được đánh địa chỉ bởi khối phân loại MF. Trước hết các trường địa
chỉ, giao thức và chỉ số cổng lên tới 104 bit, nó phải được kiểm tra trong mọi gói tin
chuyển qua router. Thứ hai, một số quy tắc phân loại áp dụng cho các luồng đa ứng
dụng một cách đồng thời và thường được diễn đạt trong giới hạn điều kiện đường biên
trong trường con trong khoá phân loại. Trong một số trường hợp điều kiện đường biên
có thể được biểu diễn trong giới hạn đặc biệt được kiểm tra còn một số trường hợp khác
thì không; sau đó router có thể xác nhận bằng một bộ phân loại phối hợp chính xác đơn
giản. Tuy nhiên nếu nhu cầu thuộc phạm vi xác định chuyên quyền (chẳng hạn như quan
hệ địa chỉ nguồn giữa 128.90.80.20 và 129.0.0.0 với một cổng nguồn TCP giữa 1024 và
1090, và một vài giá trị trong các trường khác) thì router yêu cầu một giai đoạn phân
loại MF sắp xếp phù hợp.
Mặc dù 104 bit được hỗi trợ, bộ phân loại MF nhận được ít hơn 2104 hoán vị rất
nhiều bởi vì hầu hết các trường con không thể chấp nhận các trường hợp bất kỳ. Ví dụ
sự phân phối các giá trị địa chỉ IP phụ thuộc vào vị trí trong mạng mà router đang tồn tại
- những địa chỉ nguồn và đích hướng tới biên của mạng ít hơn là hướng tới lõi. Thêm
vào đó chỉ một nhóm 256 giao thức có khả năng được xem xét. Nói cách khác một bộ
phân loại MF phải thừa nhận rằng chỉ số cổng TCP/UDP có thể đảm nhận một số giá trị
trong đó. Thậm chí cho phép sự hạn chế này, số hoán vị có khả năng lên tới hàng triệu
đặc biệt là trong mạng lõi (một kết quả cho router mạng lõi cố gắng cung cấp sự phân
cách dịch vụ mức luồng và một sự giải thích cho mô hình DiffServ ).
Một hạn chế của phân loại MF là sự phân mảnh gói tin IPv4 mang chỉ số cổng
TCP/UDP trong mảnh đầu tiên duy nhất. Như vậy bộ phân loại MF tìm kiếm chỉ số cổng
TCP hoặc chỉ số cổng UDP đặc trưng hầu như bỏ qua phân loại kế tiếp của các gói giống
nhau ( trừ khi bộ phân loại liên quan tới phân đoạn tiếp theo trong phân đoạn đầu tiên
mang chỉ số cổng ). Trái lại byte ToS/DiffServ luôn mang trong mọi phân đoạn.
• Phân loại IPv6
Phân loại đa trường có hơi khác đối với IPv6 (hình vẽ 1.13). Thứ nhất, mỗi trường địa
chỉ bây giờ cần đến 128 bít. Một địa chỉ cộng với khoá phân loại số hiệu cổng dài hơn 288
bít. Thứ hai, việc xác định số hiệu cổng UDP hay TCP có thể phải cần đến sự phân tích một
danh sách các trường mở rộng tiêu đề cho đến khi bộ phân loại định vị được vị trí bắt đầu
của tải trọng TCP hay UDP hoặc xác định rằng gói không thuộc bất kỳ giao thức nào.
QoS trong mạng IP Kết luận
Để trợ giúp cho việc thực hiện bộ phân loại đa trường, IPv6 thêm nhãn cho luồng dài
20 bít để có thể được biên dịch dựa vào địa chỉ nguồn của gói. Bằng cách sử dụng một
khoá phân loại chỉ bao gồm các trường địa chỉ nguồn và nhãn luồng (tổng số là 148 bít)
các bộ định tuyến dọc theo đường truyền có thể tách các gói ra khỏi mức luồng, tức là
không kiểm tra trường địa chỉ đích và tìm kiếm các số hiệu cổng TCP/UDP. Trong IPv6
số địa chỉ nguồn hiện tại ít hơn 2128, vì vậy, số nhãn luồng cộng với địa chỉ nguồn ít
hơn 2148.
Việc sử dụng nhãn luồng và địa chỉ nguồn cho việc phân loại sẽ giới hạn năng lực của bộ
định tuyến để có thể tập trung một vài loại luồng với nhau. Phía nguồn chịu trách nhiệm
gán các nhãn luồng cho gói và có thể gán cùng một nhãn cho các gói thuộc về rất nhiều
luồng ứng dụng khác nhau. Do nhãn luồng không mang một ý nghĩa cụ thể (trừ một điều,
nó là duy nhất cho các gói yêu cầu duy nhất một kỹ thuật lập lịch và xếp hàng), các bộ định
tuyến có thể có một sự suy diễn bất cứ cái gì về mối quan hệ giữa các luồng ứng dụng chia
sẻ một nhãn chung. Ngược lại, do rất nhiều ứng dụng sử dụng số hiệu cổng TCP hay UDP
đã biết, việc phân loại rõ ràng các số hiệu cổng này cho phép các bộ định tuyến nhận ra các
luồng từ các ứng dụng có liên quan.
• Quy tắc ưu tiên
Bộ phân loại MF cũng phải có khả năng giải quyết nhiều quy tắc liên quan của một
gói. Đối với mỗi luồng đến router có thể có nhiều quy tắc cùng phù hợp, như vậy đặt ra
một vấn đề phải lựa chọn ra một quy tắc phù hợp. Điều đó quan hệ tới thông tin thêm
trong router và thứ tự được sử dụng các quy tắc cho sự phân loại, các quy tắc nhất định
có thể định rõ để biết chúng là một tập con hay là một tập siêu con của các quy tắc khác.
Quy tắc chính xác hơn sẽ có quyền ưu tiên hơn (trong trường hợp này là quy tắc
hai), và chắc chắn sẽ được lựa chọn. Tuy nhiên các quy tắc chồng chéo không phải bao
giờ cũng dễ dàng được biểu thị chính xác hơn hoặc kém hơn.
Phân loại đa trường có thể thêm trường DiffServ
Mặc dù trường DiffServ thường được sử dụng thay cho phân loại MF. Không có lý
do tại sao một bộ phân loại MF không thể có thêm trường DiffServ trong khoá phân loại
của nó. Một cách lựa chọn là một router có thể dùng một bộ xử lý phân loại hai tầng
trong đó sự phân loại ban đầu thiết lập trường hợp trong tầng để giải thích nội dung của
trường DiffServ ( có thể tạo miền DiffServ ảo có ý nghĩa trường DiffServ khác ). Lựa
chọn phụ thuộc vào nhiều cách phân loại.
QoS trong mạng IP Kết luận
4.2.5 Bảo mật đưa ra
Phân loại gói nhằm đảm bảo rằng các gói đạt mức dịch vụ cho phép (và chỉ có mức
dịch vụ đó). Giả sử rằng các gói truyền đi với các giá trị hợp lệ trong các trường được
sử dụng cho việc phân loại. Có hai vấn đề làm phức tạp thêm việc lựa chọn phương
pháp phân loại phù hợp. Thứ nhất, phương pháp này phải được đảm bảo về vấn đề bảo
mật. Thứ hai, phương pháp này phải làm việc với sự hiện diện của mã hoá tải trọng giữa
các đầu cuối.
Khi một mạng sử dụng trường DiffServ (hay byte ToS/TC) để xác định băng tần và
độ ưu tiên cho một luồng gói cụ thể, mạng không thể đơn giản cho phép người dùng
thiết lập các giá trị trường DiffServ. Tưởng tượng rằng người A trả tiền cho dịch vụ
thông lượng thấp và thiết lập DiffServ =X trên tất cả các gói được truyền đi. Giả sử
mạng cung cấp băng tần cao hơn rất nhiều cho các gói có DiffServ =Y. Đối với người A,
điều này thật hấp dẫn khi thiết lập DiffServ=Y trên tất cả các gói của mình, thấy rằng
các gói của người A sẽ đi đến đích ngay cả khi anh ta đang sử dụng một mức dịch vụ
không phải trả tiền.
Mã hoá tải trọng giữa các đầu cuối cũng đặt ra một thách thức thú vị cho phân loại
đa trường. Mã hoá gói che thông tin khỏi các con mắt tò mò càng nhiều càng tốt trong
khi vẫn để lại một lượng thông tin chưa được mã hoá để các bộ định tuyến có thể
chuyển gói đi một cách chính xác.
4.2.6 Xử lý tốc độ đường dây
Nhân tố hạn chế thực hiện của hầu hết các router là số tiêu đề gói có thể được xử
lý trên một giây, một hạn chế có thể thấy trên lưu lượng bao gồm nhiều gói nhỏ hơn là
một lượng ít các gói lớn hơn. Khi phân loại gói MF thêm vào tìm kiếm FIB, tầng phân
loại gói tự nó trở thành một điểm nghẽn trong router. Nếu bộ xử lý phân loại không thể
giữ các gói như giao diện bên trong yêu cầu chúng, một bộ đệm được được yêu cầu
trước tầng phân loại. Các gói vào có thể được sắp xếp trong hàng đợi FIFO ở đây
không quan tâm tới những loại nào, chúng có thể là một vùng nhớ hoặc là được loại bỏ
từ bộ đệm này chỉ nhanh bằng hoạt động giai đoạn phân loại (xem hình 4.5). Thủ tục
này thêm vào một thành phần jitter không phân biệt với tất cả lưu lượng truyền qua bộ
phân loại
QoS trong mạng IP Kết luận
Hình 4.5: Bộ đệm được yêu cầu nếu bộ phân loại là chậm hơn tốc độ đỉnh đến
Bộ đệm trước phân loại là một điều bất thường cho các router nỗ lực tối đa,
nhưng rất quan trọng khi cân nhắc đến vai trò của một router trong một mạng IP có
QoS cho phép. Bộ đệm này thậm chí có thể chấp nhận được nếu hoạt động phân loại
ở một tỷ lệ thoả đáng của tốc độ đỉnh đầu vào (điều đó được đánh giá là việc sử
dụng kích thước gói tin IP nhỏ nhất, của một router như đã thấy, lớn hơn kích cỡ gói
IP trung bình lý tưởng, thường từ 250 đến 350 byte). Phụ thuộc vào sự bùng nổ mong
đợi của gói tin IP nhỏ đến, bộ đệm có thể đủ nhỏ để trường hợp jitter xấu nhất có thể
chịu đựng được.
Chú ý: Lưu lượng IP giới thiệu sự phân phối kích thước đa phương tiện với đỉnh lớn
khảng từ 40 đến 41 byte và khoảng giữa 500 byte. Các ứng dụng VoIP xuốt hiện dường
như tạo ra các đỉnh mới trong phạm vi 100 byte.
Với một router mà tầng phân loại luôn nhanh hơn tốc độ gói đến trong trường hợp
xấu nhất thì chúng ta không cần phải quan tâm.
4.3 Đánh dấu và lập chính sách
Tất cả các lớp lưu lượng đều có hạn chế nhất định tới phương thức thời gian cho phép
của nó - một hạn chế trong đó là các gói có thể đến nhanh tới mức nào hoặc số gói có thể
đến trong một khoảng thời gian đặc biệt (thỉnh thoảng được xem như một hồ sơ lưu lượng
“traffic profile” ). Kiểm soát và đánh dấu có quan hệ đóng được thực hiện bởi một router,
khi nó quyết định một gói ở bên ngoài giới hạn được thiết kế cho lớp lưu lượng mà trong đó
gói là một phần tử. Kiểm soát là môt biện pháp mạnh, các gói tin ngoài hồ sơ sẽ dễ dàng bị
loại. Đánh dấu là một quan hệ mềm hơn – các gói ngoài hồ sơ được đánh dấu bằng cách
QoS trong mạng IP Kết luận
làm giảm một hoặc nhiều bit tiêu đề thay vì loại bỏ. Và chuyển qua hàng đợi và tầng lập
lịch đầu ra của router.
Chú ý: Các bit hiện tại được sử dụng để mang một dấu hiệu phụ thuộc vào sơ đồ
phân loại các gói đặc biệt trong sử dụng.
Một chức năng liên quan đó là định hướng lưu lượng, mà việc làm giảm đặc trưng
thời gian của một lớp lưu lượng bởi lựa chọn trì hoãn chuyển tiếp gói.
4.3.1 Metering
Lập chính sách và đánh dấu chia sẻ một thành phần chung, một chức năng đo để
xác định mỗi gói là “in profile” hay “out of profile”. Một ví dụ đơn giản là bộ đo
token bucket cổ điển. Các token được thêm vào một bucket với tốc độ cố định X (số
token trên một giây) và được loại bỏ khỏi bucket bất cứ khi nào một gói đến. Mỗi
bucket có một chiều sâu hạn chế, nó không bao giờ chứa quá Y token, minh hoạ hình
4.6.
Khi có một gói đến ít nhất có một thẻ có hiệu lực thì thẻ bài được rời khỏi và gói
được xem như “in profile”. Nếu không có thẻ bài nào ở trong thùng khi gói đến, gói
được xem như “out profile”. Tốc độ bổ sung token X biểu thị giới hạn tốc độ dài hạn
trung bình nếu các gói vẫn là “in profile”. Tuy nhiên các gói có thể đến trong sự
bùng nổ ngắn vẫn được coi như ở trong hồ sơ – có thể lên tới Y thẻ bài có hiệu lực
trong thùng, và trước đó có thể có tới Y gói đến kế tiếp nhau mà vẫn được qua. Lựa
chọn sáng suốt giữa X và Y cho phép một hồ sơ bắt buộc một tốc độ gói trung bình
dài hạn như yêu cầu trong khi chịu đựng sự bùng nổ ngắn các gói đến nhanh hơn X
gói/giây.
QoS trong mạng IP Kết luận
Hình 4.6: Các token Bucket cung cấp chức năng đo đơn giản
Một cách lựa chọn để hình dung hoạt động của thùng thẻ bài được cho ở hình 4.7.
Khi một gói đến ở tốc độ R nhỏ hơn X, thường được lấp đầy thêm X-R thẻ/giây, và
dừng lại khi đạt được Y thẻ. Nếu R=X thì số thẻ trong thùng là không đổi. Khi R bắt
đầu vượt quá X, thùng cho thoát tại tốc độ R-X thẻ/giây. Lâu dần thùng vẫn duy trì ít
nhấn một thẻ, lúc đó các gói được xem như là các gói ở trong hồ sơ. Nếu R vượt quá
X trong một thời gian dài thì thùng sẽ rỗng và các gói kế tiếp được xem như ngoài hồ
sơ. Trạng thái ngoài hồ sơ vẫn còn tiếp tục cho đến khi R rớt xuống thấp hơn X. Một
thùng thẻ bài có thể được xem như một quy tắc bắt buộc mà tổng số gói gửi qua
điểm đo trong một khoảng thời gian T phải nhỏ hơn T*X+Y.
Hình 4.7: Minh hoạ hoạt động của một token Bucket
Rất nhiều token bucket có thể hoạt động một cách đồng thời, thiết lập thành một bảng
các bộ đếm và các tham số X, Y có liên quan. Khi một gói đến, ngữ cảnh của nó (được thiết
lập bởi giai đoạn phân loại) lựa chọn một token bucket để thực hiện đo, hình 4.8.
QoS trong mạng IP Kết luận
Hình 4.8 Lựa chọn token Bucket thực hiện chức năng đo
Điểm cuối cùng là xem xét bộ đo sẽ đếm các gói như một đơn vị dữ liệu hay là số
byte được truyền qua bộ đo (nếu đơn vị là gói, một gói là “in profile” bất cứ khi nào số
token trong buket nhiều hơn số byte của gói). Cả hai phương pháp đo với đơn vị là gói và
byte đều được sử ddông.
4.3.2 Tiered profiles
“Tiered profiles” được sử dụng khi một tốc độ trung bình đơn và sức chịu đựng
bùng nổ không đủ để biểu lộ đặc trưng thời gian cho phép của lưu lượng. Nhiều mức
kiểm tra hồ sơ cho phép nhiều mức độ đánh dấu hoặc một sự kết hợp đánh dấu và kiểm
tra các tình huống gói giống nhau.
Ví dụ, Tiered profiles có thể định rõ các gói vượt quá tốc độ xác định X gói/giây đã
được đánh dấu, nhưng nếu tốc độ gói dư vượt quá tốc độ cao hơn W gói/giây, ngay lập
tức kiểm soát có hiệu lực. Chức năng đếm thích hợp có thể được xây dựng bởi hai hay
nhiều thùng thẻ bài. Coi như hai thùng thẻ bài có chiều sâu Y, thùng 1 cung tại tốc độ X
và thùng 2 cung cấp tại tốc độ W, X nhỏ hơn W. Khi một gói đến, một sự cố gắng được
thực hiện để chuyển đi một thẻ bài giữa cả hai thùng. Thừa nhận xẩy ra một trong các
trường hợp sau:
- Nếu các thẻ có hiệu lực từ cả hai thùng, một thẻ được rút ra từ mỗi thùng và gói được
chuyển tiếp một cách bình thường.
- Nếu thùng 1 không có thẻ nhưng thùng 2 có sau đó một thẻ được rút ra từ thùng 2 và gói
được đánh dấu trước khi được chuyển tiếp một cách thông thường.
- Nếu cả hai thùng đều rỗng thì gói bị rớt (kiểm soát).
QoS trong mạng IP Kết luận
Lưu lượng đến chậm hơn X luôn luôn ở trong hồ sơ. Lên tới Y gói có thể nhanh hơn
X nhưng chậm hơn W vẫn được xem như ở trong hồ sơ, sau đó chúng được đánh dấu.
Nếu gói tiếp tục đến nhanh hơn X nhưng thấp hơn W chúng tiếp tục được đánh dấu
( thùng 1 rỗng và thùng 2 còn đầy ) tới Y gói đến có thể nhanh hơn W trước khi chúng
bắt đầu bị rớt.
4.3.3 Bảo vệ mạng
Kiểm soát và đánh dấu như là những công cụ bảo vệ phần luồng xuống mạng từ
router tại đó sự kiểm soát và đánh dấu xảy ra một cách tích cực (thường thêm vào chính
khung chuyển mạch của router và cơ cấu hàng đợi cũng như lập lịch đầu ra). Cuối cùng
chúng ta cố gắng bảo vệ tất cả các điểm hàng đợi đến sau từ sự bùng nổ tạm thời xa
nhất của lớp lưu lượng xuống. Kiểm soát bảo mật chuyển dời các gói từ luồng dữ liệu –
không phải gói, không có hàng đợi. Đánh dấu bảo mật bằng thông tin các router đường
xuống mà các gói được đánh dấu có thể được đối xử như là hệ thống lớp hai nếu không
gian hàng đợi được thắt chặt. Một chức năng liên quan, định hướng lưu lượng được
tường thuật trong phần 4.5 “lập lịch”.
4.4 Quản lý hàng đợi
Quản lý hàng đợi đưa ra khả năng chia sẻ của một kết nối trong một kiểu điều khiển
lưu lượng có sự cạnh tranh lưu lượng được phân phối qua nhiều hàng đợi tại giao diện
đầu ra. Mọi lớp lưu lượng có yêu cầu đặc điểm lập lịch riêng phải được đặt trong chính
hàng đợi của nó với mỗi gói trực tiếp tới hàng đợi thích hợp sử dụng thông tin tình
huống thu thập từ tầng phân loại trước đó. Không có các hàng đợi riêng biệt nó không
thể có khả năng cho tầng lập lịch sau phân biệt giữa nhiều lớp lưu lượng cạnh tranh một
đường kết nối đơn. Một chức năng bộ quản lý hàng đợi đó là chịu trách nhiêm thiết lập
và duy trì hàng đợi và phương thức hàng đợi trong router. Chức năng này bào gồm bốn
hoạt động cơ bản:
Thêm một gói vào hàng đợi được chỉ rõ bằng tình huống của gói (như được thiết
lập trong tầng phân loại) nếu hàng đợi không đầy.
Loại bỏ môt gói nếu hàng đợi đầy.
Loại bỏ một gói khi được yêu cầu bởi bộ lập lịch.
Giám sát lựa chọn sự chiếm dụng hàng đợi (số gói hoặc byte chiếm dụng hàng
đợi ) và dựa vào một trong các bước thực hiện sau để giữ mức chiếm dụng thấp:
- Loại bỏ một gói (hoặc không chọn thêm một gói ) khi hàng đợi đã đầy
QoS trong mạng IP Kết luận
- Đánh dấu một gói khi hàng đợi bắt đầu đầy.
Tại một vài điểm mọi hàng đợi công bố đầy để đảm bảo rằng không một lớp lưu
lượng nào dùng tất cả không gian nhớ hạn chế của router để tạo hàng đợi.
Tuy nhiên chỉ chắc chắn rằng một hàng đợi không thiếu các hàng đợi khác không
đủ. Thêm vào đó một vài độ chiếm dụng trung bình của hàng đợi riêng biệt được giữ ở
mức thấp. Việc quản lý hàng đợi tích cực có thời hạn thường áp dụng phương pháp
giám sát và điều khiển độ chiếm dụng hàng đợi trung bình. Độ chiếm dụng trung bình
thấp có hai lợi ích:
- Tồn tại các hàng đợi giải quýêt vấn đề bùng nổ lưu lượng không thể tránh khỏi mà
không làm mất gói.
- Trễ trung bình trải qua bởi sự chia sẻ lưu lượng một hàng đợi cho trước tăng lên.
Giữ cho độ chiếm dụng giảm giúp giữ cho trễ end – to – end giảm.
Chú ý: Khi một sự bùng nổ xảy ra trong khi độ chiếm dụng ở mức cao nhiều gói có
thể bị loại bỏ đồng thời nếu sự loại bỏ ảnh hưởng tới nhiều luồng TCP cùng một lúc thì
phương thức tránh nghẽn ở tất cả các luồng trở nên đồng bộ và một sự chia sẻ loại bỏ
xảy ra trong sự thực hiện trung bình.
Sự quan sát này nắm giữ cân bằng cho các router chỉ có một hàng đợi FIFO đơn
trên mỗi đầu ra, như vậy tiện ích của quản lý hàng đợi tích cực là là có hiệu quả cân
bằng mà không cần nhiều hàng đợi và bộ lập lịch.
4.4.1 Tránh ghi lại
Trước khi đi sâu tranh luận về cơ chế quản lý hàng đợi riêng biệt, điều quan trọng
cần chú ý là việc đánh dấu gói được sử dụng như thế nào. Đánh dấu cho biết rằng một
router đường lên tìm một gói ngoài hồ sơ, nhưng không đủ để biện minh cho việc loại
bỏ tức thời. Với mục đích là để các router đường xuống có thể đối sử với các gói bị
đánh dấu như là hệ thống lớp 2 khi nghẽn nội xuất hiện.
Tuy nhiên, có hai khả năng để giải quyết các gói như là hệ thống lớp 2. Một là hạ
thấp quyền ưu tiên chuyển tiếp của chúng bằng ấn định chúng tới các hàng đợi khác dựa
vào dấu hiệu của chúng. Cách khác là thay đổi thuật toán, một bộ quản lý hàng đợi được
sử dụng để giữ độ chiếm dụng hàng đợi ở mức thấp là hạn chế độ chiếm dụng được
phép cho các gói bị đánh dấu hơn là các gói không bị đánh dấu.
QoS trong mạng IP Kết luận
Gợi ý thứ nhất có thể dẫn tới việc sắp xếp lại các gói bị đánh dấu liên quan tới các gói
không bị đánh dấu trong một lớp lưu lượng. Có thể là hàng đợi đi vào mà các gói bị đánh
dấu bị loại bỏ được thiết kế một bộ lập lịch khác quyền ưu tiên liên quan tới hàng đợi
thiết kế cho các gói thông thường trong cùng một lớp lưu lượng (xem hình 3.7). Việc sắp
xếp lại xảy ra khi một gói bị đánh dấu đến trước một gói không bị đánh dấu.
Mặc dù IP không ngăn ngừa gói được sắp xếp bởi mạng nhưng hầu hết các giao
thức end – to – end không lưu giữ trường hợp có khả năng này. Gần với điểm này hồ sơ
gốc được đánh dấu gói ảnh hưởng tới việc quản lý hàng đợi tích cực được áp dụng trong
mỗi gói – trong một hàng đợi đơn phục vụ tất cả các gói thuộc về lớp end – to – end cho
trước không kể chúng được đánh dấu như thế nào.
4.4.2 Giảm thời gian chiếm đóng hàng đợi
Độ chiếm dụng của một hàng đợi tăng lên khi tải trọng cung cấp (lưu lượng đến)
vượt quá tốc độ mà bộ lập lịch lưu thoát gói khỏi hàng đợi. Bởi vì tốc độ tại một bất kì
hàng đợi riêng để lưu thoát phụ thuộc vào bộ lập lịch của nó tác động lại các lưu lượng
từ các hàng đợi cạnh tranh khác cho việc truy cập kết nối đầu ra. Độ chiếm dụng có thể
được xem như phản ánh mức nghẽn hiện thời tại giao diện đầu ra của router.
Để làm giảm độ chiếm dụng của một hàng đợi yêu cầu một vài phương pháp khơi
mào phương thức tránh nghẽn trong giao thức truyền tải thông thường các luồng đi qua
hàng đợi. Bởi sự xuất hiện trễ hạn chế trước bất kỳ giao thức truyền tải có thể bắt đầu
tác động lại tới nghẽn trong một router, quản lý hàng đợi phải nhận hai loại nghẽn cơ
bản sau:
- Nghẽn tạm thời, xuất hiện trong khoảng thời gian ngắn hơn thời gian phản ứng lại
tránh nghẽn truyền tải vào các giao thức.
- Nghẽn dài hạn, kết quả của tình huống không đổi do tốc độ của tất cả các luồng đi
qua hàng đợi.
Nghẽn tạm thời gây nên thường ngắn và liên quan đến sự bùng nổ lưu lượng từ một
hoặc nhiều luồng. Thông thường một router không muốn loại bỏ các gói từ một bùng nổ
trừ phi khi thực sự cần thiết và như vậy người vận hành và nhân viên lựa chọn kích cỡ hàng
đợi để bảo vệ sự bùng nổ mà họ thường thấy. Tuy nhiên điều này luôn tình cờ một sự bùng
nổ sẽ lấp đầy hàng đợi tại một điểm mà sự loại bỏ gói có khả năng lựa chọn.
Nghẽn trung bình của một hàng đợi được đo trong vài khoảng thời gian gần đây, độ
chiếm dụng trung bình ảnh hưởng đến trễ trải qua bởi tất cả các gói đi qua hàng đợi đó.
QoS trong mạng IP Kết luận
Một bộ quản lý hàng đợi cần tiếp tục cung cấp phản hồi các giao thức truyền tải để giảm
độ chiếm dụng dài hạn. Về nguyên tắc có thể áp dụng phản hồi theo hai cách:
- Trong dải đánh dấu của gói.
- Loại bỏ các gói.
Trong dải đánh dấu của các gói yêu cầu giao thức truyền tải tác động lại để nhận
được các gói bị đánh dấu bởi sự tránh nghẽn ban đầu. Thực tế là việc loại bỏ được đề
cập đến gần mạng IP. Bởi vì TCP sử dụng các gói mất để khơi mào phương thức tránh
nghẽn của nó. Sự loại bỏ gói cũng có một lợi ích bên cạnh hiệu quả làm giảm tải đường
xuống ngay lập tức.
4.4.2.1 Thông báo nghẽn tường minh
Mặc dù việc loại bỏ gói hiện thời là một cách được ưu tiên hơn để áp dụng phản hồi,
nhưng là phương pháp tích cực (phương pháp đó không liên quan tới việc mất gói) của
việc báo hiệu nghẽn được thiết kế và ước lượng. Sự loại bỏ gói thực chất lãng phí nguồn
tài nguyên được sử dụng thiết lập gói tới router khi thấy sắp xảy ra nghẽn, như vậy chỉ
dẫn nghẽn để tránh sự loại bỏ nếu tất cả khả năng đều có thể được để ý đến.
Một ví dụ về “thông báo nghẽn tường minh” ECN (explicit congestion notification)
được mô tả trong RFC2481 [RFC2481]. Hai bít không sử dụng hiện tại CU (currently
unused) từ trường DiffServ được định nghĩa lại như là bít ECT (capable Transport) và bit
CE (congestion experience). Một người gửi giao thức truyền tải thiết lập bit ECT trên các
gói ngoài giới hạn khi nó biết rằng cả hai điểm cuối luồng đều hiểu bít CE. Nếu không
phản hồi điều khiển nghẽn được yêu cầu, bit CE không cần để ý. Khi một router dọc
đường truyền muốn áp dụng phản hồi điều khiển nghẽn sẽ có hai lựa chọn:
• Nếu bít ECT được lập, lập bít CE.
• Nếu bít ECT được lập lại, loại bỏ gói.
Nếu RFC 2481 cũng để xuất sự thay đổi TCP, cho phép khách hàng TCP có khả
năng khai báo nghẽn cụ thể thừa nhận mỗi mỗi điểm khác trong khi thiết lập kết nối và
thiết lập bít ECT thích hợp trên gói dữ liệu kế tiếp.
4.4.2.2 Sự loại bỏ phía trước
Một vấn đề đặt ra khi loại bỏ gói là sẽ loại bỏ những gói nào. Từ một viễn cảnh thực
hiện, loại bỏ gói vừa đến là đơn giản vì gói đó có thể loại bỏ một cách dễ dàng bằng
QoS trong mạng IP Kết luận
cách không chèn nó vào trong hàng đợi. Tuy nhiên, một chiến lược thay thế là loại bỏ
gói hiện thời tại đầu hàng đợi - loại bỏ phía trước DFS.
DFS xúc tiến phương thức tránh nghẽn của TCP - một gói bị mất thậm trí tại đầu hàng
đợi được thông báo sớm hơn ở cuối hàng đợi có thể đã có một mức nghiêm trọng các gói bị
ùn tắc [DFS94]. Tuy nhiên DFS thỉnh thoảng được coi như là một sự phức tạp không cần
thiết, yêu cầu thao tác vận hành hàng đợi cụ thể loại bỏ tiếp nhận vào đang tồn tại.
DFS đặc biệt không phủ nhận tác động trên lưu lượng điều khiển không phải
luồng, và một vài lợi ích không đáng kể có thể diễn đạt cho những luồng thời gian thực.
Một hàng đợi không rỗng đưa đến tất cả các gói phải chịu trễ, và gói đầu hàng đợi hầu
như có khả năng sống sót không tin cậy bởi thời gian tới đích của nó.
4.4.4.3 Khi nào thực hiện?
Phần phức tạp nhất của thiết lập bộ quản lý hàng đợi là xác lập hệ thống điều khiển
của chính nó để quyết định khi nào (mức độ nào) áp dụng phản hồi. Các thuật toán phải
dựa vào tài khoản của ngữ cảnh gói được cung cấp bởi tầng phân loại gói. Ví dụ, sự
phân loại MF luồng trọng điểm dẫn tới sự tách rời các hàng đợi trong tất cả các luồng
ứng dụng, mỗi luồng được cách ly từ phương thức thụ động hoặc phương thức xâm
chiếm của các luồng khác nhau. Router có thể có đủ khả năng áp dụng một quá trình
quyết định ngưỡng đầy/không đầy đơn giản trên mỗi hàng đợi, chính các mục đích
luồng riêng này là nguyên nhân gây ra nghẽn tạm thời.
Tuy nhiên nơi mà các router sử dụng phân loại TOS/DS cơ sở, hàng chục, hàng trăm,
thậm chí hàng nghìn luồng ứng dụng có thể được sắp xếp vào cùng một hàng đợi. Trong
trường hợp này sơ đồ phản hồi phải làm việc với các luồng thực sự gây nên nghẽn dài hạn
tại các thời điểm cho trước. Một số sơ đồ địa chỉ hoá vấn đề bằng cách đưa vào các tín hiệu
phản hồi thống kê, nó được bắt nguồn từ sự kết hợp các đầu vào biến đổi được, như là độ
chiếm dụng trung bình của hàng đợi và đánh dấu trước khi áp dụng cho gói từ các router
đường xuống. Một cơ chế phản hồi được biết đến như là một bộ tách sớm ngẫu nhiên
(RED: Random Early Detection) được mô tả kỹ hơn trong phần tiếp theo.
4.4.3 Tìm kiếm ngẫu nhiên sớm
Trải qua nhiều năm nghiên cứu vấn đề điều khiển độ chiếm dụng trung bình của
hàng đợi chia sẻ bởi nhiều luồng thay đổi khác nhau, tổ chức IRTF kết luận rằng giải
pháp tốt nhất với router thực hiện trong tài khoản gồm tín hiệu phản hồi phân phối ngẫu
QoS trong mạng IP Kết luận
nhiên, thống kê. Điển hình mà IRTF sử dụng cho phương thức này như là bộ tách sớm
ngẫu nhiên RED.
RED sử dụng độ chiếm dụng trung bình của hàng đợi như là một tham số, một chức
năng ngẫu nhiên mà nó quyết định có chế tránh nghẽn phải được khơi mào hay không.
Sau khi độ chiếm dụng trung bình tăng lên thì khả năng loại bỏ gói cũng sẽ tăng lên.
Hình 4.9 biểu diễn một hàm khả thi đơn giản.
- Độ chiếm dụng lên tới một ngưỡng thấp hơn min
TH
, các gói chuyển qua không bị
ảnh hưởng (khả năng loại bỏ gói bằng không). Trên giới hạn min
TH
, khả năng
loại bỏ gói tăng theo đường thẳng với khả năng vươn tới max
P
cho một độ chiếm
dụng của max
TH
. Tại và trên max
TH
các gói chắc chắn bị loại bỏ.
- Ba giai đoạn này thỉnh thoảng chỉ dẫn đến tránh nghẽn và điều khiển nghẽn.
Trường hợp xấu nhất kích thước hàng đợi bị giới hạn bởi max
TH
. RED bắt đầu
khai mào sự chỉ dẫn nghẽn trước khi hàng đợi bị đầy.
Độ chiếm dụng trung bình được tính toán lại tại mọi thời điểm một gói đến và dựa
vào bộ lọc thông thấp hoặc độ chiếm dụng trung bình hoạt động trọng số hàm mũ
(EWMA) của độ chiếm dụng hàng đợi tức thời. Công thức của nó là:
qinstavgavg
WQQQ
.q
).W1(
+−=
avg
Q
là độ chiếm dụng trung binh.
.inst
Q
là độ chiếm dụng tức thời.
W
q
là trọng số của hàm di chuyển trung bình.
W
q
có ảnh hưởng mật thiết tới tham số chiếm dụng trung bình theo độ chiếm dụng tức
thời của hàng đợi. Giá trị cao hơn thì mức xung đột nhiều hơn và giá trị thấp hơn thì
mức duy trì hơn. Mục đích là chọn lựa một giá trị cho phép RED bỏ qua tạm thời ngắn
hạn mà không gây mất gói khi truyền dẫn nhưng có tác dụng duy trì các mức độ chiếm
dụng trước độ trễ của mọi tác động một cách vô hạn hoặc những luồng đồng bộ của việc
tránh nghẽn của TCP chịu ảnh hưởng.
QoS trong mạng IP Kết luận
Hình 4.9: khả năng loại bỏ biến thay đổi với thời gian chiếm dụng hàng đợi
Một router có thể giữ các giá trị minTH, maxTH và maxP khác nhau cho các hàng
đợi khác nhau, cân bằng với tổng không gian khả dụng của hàng đợi, số lượng hàng đợi
yêu cầu và độ trễ, độ rung pha hạn chế của lớp lưu lượng sử dụng các hàng đợi khác
nhau. Thêm vào đó Wq phải khác nhau trong mỗi hàng đợi.
Chiến lược loại bỏ ngẫu nhiên có những đặc điểm hữu ích sau:
• Chúng tạo ra một cơ chế phản hồi không tích cực cho TCP và cường độ tăng lên theo
hàm mức nghẽn trong router.
• Các luồng chịu sự chi phối chia sẻ thông qua hàng đợi (các gói vào hàng đợi thường
xuyên hơn) thì chịu cường độ phản hồi tốt hơn.
• Sự đồng bộ được giảm tới mức cực tiểu giữa nỗ lực tránh nghẽn của phiên truyền
dẫn độc lập chia sẻ một hàng đợi riêng biệt.
Sự bắt đầu loại bỏ ngẫu nhiên sớm (trước khi hàng đợi thực sự sử dụng hết hoàn
toàn không gian cho phép của nó) tăng lên thì có thể dễ dàng xếp ngoài vùng nghẽn tạm
thời trước độ chiếm dụng hàng đợi là quá cao. Quá trình ngẫu nhiên phân phối loại bỏ
trong giai đoạn đầu làm giảm tính ngẫu nhiên của nhiều luồng cho loại bỏ gói.
Hai khoá giả định làm nền tảng cho loại bỏ dựa vào quản lý hàng đợi tích cực :
• Nhiều hoặc hầu hết các tầng gây ra nghẽn tạm thời là nền tảng TCP và trước đó đáp
lại tới phản hồi không tích cực của mất gói sớm.
• Các gói thực sự loại bỏ thuộc về luồng (hoặc các luồng) TCP gây ra nghẽn.
QoS trong mạng IP Kết luận
Sự vắng mặt của các phương tiện phân loại và hàng đợi mỗi luồng mà các giả định
này có thể không luôn có hiệu lực. Lúc này chúng thường hợp lý. Việc các gói đến trong
suốt một khoảng thời gian nghẽn sẽ thuộc về các luồng chiếm dụng nhiều hơn là các
luồng khác. Nó giữ vững lý do để loại bỏ gói trong suốt khoảng thời gian nghẽn như gặp
phải một luồng góp phần gây nghẽn. Đặc tính thời gian của các luồng gây nghẽn cho
phép RED và biến thể của nó tập trung các luồng thích hợp.
4.4.3.1 RED theo trọng số
Các bộ quản lý hàng đợi không hạn chế việc cung cấp một loại phương thức đơn
trên một vài hàng đợi cho trước thông tin thêm vào từ tình huống của gói có thể lựa
chọn một trong nhiều chức năng huỷ bỏ gói. Ví dụ, một gói được đánh dấu tại một số
điểm đường xuống cho quyền ưu tiên trong một hồ sơ lưu lượng là đối tượng để kiểm
soát, huỷ bỏ, xâm chiếm thêm. So sánh các gói khác được phân loại trong cùng một
hàng đợi (các gói được đánh dấu vẫn được qua khi mạng gần như không bị nghẽn). Chủ
định một cách đơn giản, một router loại bỏ các luồng ngoài hồ sơ đầu tiên khi mọi thứ
trở nên chật chội hoặc các gói đặt vào lớp dịch vụ khác tại nguồn có thể có chức năng
huỷ bỏ liên kết khác nhau.
Trong hình 4.10 là một bộ quản lý hàng đợi chọn lựa một trong hai đường mà một
hàng đợi đơn đưa vào, ví dụ một bit đơn trong byte ToS của trường DiffServ. Các gói
không bị đánh dấu là đối tượng cho RED với min1
TH
như là ngưỡng dưới của nó,
max1
TH
như là ngưỡng trên của nó, và max
p
là khả năng loại bỏ gói định trước khi hàm
nhảy tới 1. Nói cách khác các gói bị đánh dấu là đối tượng để tăng đường xâm chiếm
trong đó loại bỏ ngẫu nhiên bắt đầu tại một mức chiếm dụng thấp mức min2
TH
, tăng
nhanh chóng tới 1 tại min2
TH
.
QoS trong mạng IP Kết luận
hình 4.10: Đánh dấu gói có thể thay đổi chức năng loại bỏ
Việc giảm bớt những chức năng có thể dựa vào tình huống gói thỉnh thoảng được đề
cập đến như là một trọng điểm. Ít nhất một đại diện router chính sử dụng trường ưu tiên
IPv4 để lựa chọn tám tham số minTH, maxTH, và maxP cho thuật toán RED (mặc dù
không có tham số Wq cho hàm EWMA ) liên quan tới sơ đồ WRED.
4.4.3.2 RED với vào ra
Một thuật toán gần với WRED là RED với bit vào/ra (RIO), nó cũng sử dụng việc
đánh dấu gói tin để hiệu chỉnh thuật toán RED trên cơ sở từng gói. RIO giả sử rằng
những gói tin đó đi qua bộ phận đánh dấu và một bit trong phần tiêu đề gói tin chỉ ra
cho bộ phận đánh dấu có thể tìm ra gói tin đó thuộc loại ưu tiên hay không. RIO khác
với WRED ở chỗ nó hiệu chỉnh hàm EWMA dựa trên đánh dấu gói tin.
Mục đích của RIO là phân biệt những gói tin trong những thời gian tắc nghẽn. Nó
làm điều đó bằng cách chạy hai thuật toán chiếm dụng EWMA song song trên cùng một
hàng đợi- QavgIN cho những gói tin vào và QavgOUT cho những gói tin ra. Tương tự
hình 3.13, hai bộ giá trị minTH, maxTH và minP một cho gói tin vào và một cho gói tin
ra. MinTH và maxTH cho những gói tin vào nhỏ hơn cho những gói tin ra, trong khi đó
minP cho những gói tin ra lớn hơn cho những gói tin vào.
Khi tính toán hàm xác suất huỷ cho những gói tin vào, mức chiếm dụng hàng đợi
được lấy từ QavgIN, trong khi cho những gói tin ra, mức chiếm dụng hàng đợi được lấy
từ QavgOUT. QavgIN dựa trên mức chiếm dụng hàng đợi trung bình của từng gói tin
QoS trong mạng IP Kết luận
riêng lẻ, trong khi QavgOUT dựa trên tổng số mức chiếm dụng hàng đợi trung bình (của
cả những gói tin vào và ra).
Trong thuật toán này, số lượng gói tin đi ra khỏi hàng đợi không ảnh hưởng tới xác
suất huỷ bỏ của những gói tin vào hàng đợi.
4.4.3.3 Tương thích RED
Với sự có mặt của ít luồng TCP, tắc nghẽn có thể hình thành tương đối chậm và Wq
có thể thấp. Tuy nhiên việc cùng một giá trị Wq trong trường hợp nhiều luồng TCP dẫn
đến pha tránh tắc nghẽn của RED không đáp ứng đủ sớm hoặc đủ mạnh. Ngược lại,
chọn lọc Wq cho phép RED đối phó đủ nhanh với nhiều luồng TCP có thể dẫn tới mất
gói trường hợp mất gói toàn bộ khi ít luồng TCP chia sẻ một hàng đợi.
Hình 4.11: ARED thay đổi giá trị maxp
ARED cố gắng giải quyết vấn đề này bằng cách cho phép RED cải tiến các tham số
dựa trên lịch sử tắc nghẽn gần đây. ARED tập trung vào N kết nối chia sẻ một hàng đợi,
hiệu quả bất kì sự huỷ gói tin nào mà RED gây ra là giảm tải trọng bởi hệ số (1-1/
(2*N)). Nói cách khác, khi N tăng, RED cần hoạt động mạnh hơn để đạt được hiệu quả
không đổi..
Để giải quyết vấn đề này, ARED điều chỉnh maxP dựa trên sự thay đổi gần nhất của
Qavg. Nếu Qavg thấp hơn minth, maxp được tính lại thận trọng hơn. Nếu Qavg tăng lên
quá maxth, giá trị maxp lớn hơn được tính lại. Nếu Qavg dao động quanh minth, ARED
giảm maxp một cách liên tục. Nếu Qavg dao động quanh maxth, maxp tăng liên tục (do
sự huỷ gói không bị ảnh hưởng), hình 4.11.
QoS trong mạng IP Kết luận
Kết quả là thuật toán ARED thay đổi tải trong hàng đợi do tăng hay giảm số lượng
luồng TCP đi qua hàng đợi đó ở bất kì thời điểm nào. Thuật toán hoạt động không đòi
hỏi bất cứ thông tin mở rộng chính xác nào về số lượng các luồng.
4.4.3.4 Luồng RED
Nhận diện luồng ngẫu nhiên sớm (FRED) là một thuật toán RED tinh vi hơn. Giải
pháp để giải quyết xu hướng không công bằng khi hàng đợi bị chia sẻ bởi nhiều luồng
có thông báo tắc nghẽn sớm khác nhau. Đặc tính này được gọi là “Nhận diện tắc nghẽn
sớm động”:
- Những luồng không tương thích - giao thức truyền tải lờ đi việc huỷ bỏ gói.
- Những luồng tốc độ cao - những kết nối TCP với thời gian trễ vòng (RTT) ngắn,
do đó phải nhanh chóng khôi phục những gói tin bị huỷ.
- Những luồng tốc độ thấp - những kết nối TCP với RTT dài, do đó chậm khôi phục
những gói tin bị huỷ.
Khi có sự trộn lẫn giữa những luồng trên qua một hàng đợi có thuật toán quản lý
RED, những luồng không tương thích có thể đặt Qavg trên giá trị minTH và do đó gây
nên mất gói cho tất cả các luồng thậm chí cả khi những luồng khác cũng làm như vậy.
Tương tự như vậy, những luồng tốc độ cao ít bị ảnh hưởng bởi việc mất bất kỳ gói đơn
lẻ nào hơn là những luồng tốc độ thấp do tốc độ khôi phục gói tin TCP phụ thuộc vào
RTT của luồng. Hiệu quả chung là những thông báo tắc nghẽn ảnh hưởng khác nhau tới
những luồng khác nhau.
FRED kiểm soát tình trạng này bằng cách điều chỉnh cách ứng xử với từng gói tin bị
huỷ dựa trên những trạng thái ngắn hạn của từng luồng (chỉ với những luồng có những
gói tin trong hàng đợi). Hai biến minq và maxq đại diện cho số lượng gói của bất kì
luồng nào được đặt trong hàng đợi. Biến Avgcq đại diện cho số lượng gói trung bình
ước lượng của mỗi luồng trong hàng đợi.
Khi Qavg thấp hơn maxTH, FRED luôn chấp nhận những gói tin của những luồng
có nhỏ hơn minq gói tin trong hàng đợi. Thiết lập minq giữa 2 và 4 đảm bảo không gian
hàng đợi thấp nhất cho những kết nói tốc độ thấp. Nếu luồng có nhiều hơn minq gói
trong hàng đợi, FRED huỷ các gói mới bất chấp Qavg. Khi một luồng có số lượng gói
giữa minq và maxq trong hàng đợi, FRED sử dụng RED thông thường để nhận ra gói
mới được chấp nhận hay phải huỷ bỏ. Mặc dù FRED không đòi hỏi xếp hàng từng