Cỏc cơ chế trỏnh tắc nghẽn và chớnh sỏch loại bỏ gúi tin

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nâng cao chất lượng dịch vụ mạng Internet (Trang 87)

Chớnh sỏch loại bỏ gúi tin (packet drop policy) là một thuật toỏn quản lý hàng đợi, quản lý cỏc gúi tin và chiều dài hàng đợi trong một hệ thống hàng đợi. Thụng thƣờng sự quản lý hàng đợi kiểu vào trƣớc, ra trƣớc (First in, First out - FIFO) sử dụng cơ chế loại bỏ cuối hàng đơn giản (tail-drop policy), rớt bất kỳ gúi tin nào đến khi hàng đợi đầy.

Giao thức TCP đang đƣợc sử dụng làm giao thức truyền tải trờn mạng Internet hiện nay [2]. Trong phần này sẽ bàn luận về cơ chế điều khiển tắc nghẽn bằng

TCP và lƣu lƣợng TCP phản ứng nhƣ thế nào khi xảy ra loại bỏ cuối hàng. Nú đũi hỏi một thuật toỏn quản lý hàng đợi tớch cực - phỏt hiện sớm ngẫu nhiờn (Random Early Detection-RED). Thuật toỏn này trỏnh nghẽn mạng bằng việc loại bỏ gúi tin sớm một cỏch chủ động để bỏo hiệu nghẽn mạng tới cỏc nguồn TCP với sự kiểm soỏt phản hồi thớch nghi toàn trỡnh (end-to-end).

2.3.1 Khởi động chậm giao thức kiểm soỏt truyền dẫn (TCP Slow Start) và Loại trừ nghẽn Loại trừ nghẽn

Nguồn TCP dựng một cửa sổ nghẽn mạng để loại trừ nghẽn [15]. Khi một phiờn TCP nguồn đƣợc thiết lập, cửa sổ nghẽn mạng đƣợc khởi tạo, dựa trờn cơ chế khởi động chậm, giỏ trị là một phõn đoạn (kớch thƣớc lớn nhất của phõn đoạn [MSS] đƣợc thụng bỏo bởi đầu cuối đối diện hoặc đƣợc cài đặt mặc định, thụng thƣờng là 536 bytes hoặc 512 bytes). Cửa sổ nghẽn mạng chỉ thị tổng dữ liệu lớn nhất mà ngƣời gửi cú thể gửi qua một phiờn TCP mà khụng nhận bản tin phỳc đỏp.

Khi gúi tin đầu tiờn đƣợc phỳc đỏp, nguồn TCP sẽ tăng kớch thƣớc cửa sổ lờn 2, tại điểm này 2 gúi tin cú thể gửi. Khi 2 gúi tin đƣợc phỳc đỏp, kớch thƣớc cửa sổ tăng lờn 4. Theo cỏch thức này, thỡ kớch thƣớc cửa sổ sẽ tăng theo hàm mũ. Chỳ ý rằng việc tăng kớch thƣớc cửa sổ cú thể khụng chớnh xỏc theo hàm mũ, tuy nhiờn, vỡ bộ thu TCP khụng cần phỳc đỏp trờn mỗi gúi tin, do nú thƣờng dựng cỏc phỳc đỏp trễ và gửi một phỳc đỏp cho cả 2 gúi tin mà nú nhận. Nguồn TCP hoạt động theo thuật toỏn khởi động chậm, nú gửi cỏc gúi tin mới vào trong mạng với tốc độ phỳc đỏp đƣợc nhận từ đầu cuối đối diện, tạo ra sự tự đồng bộ TCP (TCP self-clocking).

Trong TCP, mất gúi tin là một chỉ thị của tắc nghẽn. Nguồn TCP phỏt hiện tắc nghẽn khi khụng thể nhận một phỳc đỏp cho một gúi tin trong khoảng thời gian cho phộp phỏt lại (Retransmit Timer Timeout - RTT). Trong trƣờng hợp nhƣ vậy, nú đặt lại cửa sổ nghẽn mạng với giỏ trị 1 phõn đoạn và khởi động lại thuật toỏn Slow-start (khởi động chậm). Nú cũng giảm ngƣỡng khởi động chậm (slow start threshold (ssthresh)) xuống bằng một nửa kớch thƣớc cửa sổ tắc nghẽn tại thời

điểm đƣợc yờu cầu truyền lại. Khi một phiờn TCP đƣợc thiết lập, ssthresh đƣợc cài đặt bằng kớch thƣớc của cửa sổ nhận, đƣợc thụng bỏo bởi đầu cuối đối diện, hoặc mặc định là 65,535 bytes.

Sau một RTT timeout, bờn gửi sẽ theo thuật toỏn khởi động chậm đến khi kớch thƣớc cửa sổ đạt tới ngƣỡng ssthresh. Tiếp sau đú, kớch thƣớc cửa sổ đƣợc tăng lờn gần nhƣ tuyến tớnh (1/cwnd) trờn một phỳc đỏp đƣợc nhận. Kớch thƣớc cửa sổ đƣợc tăng lờn chậm hơn sau khi nú đạt ngƣỡn ssthresh bởi vỡ ngƣỡng

ssthresh đỏnh giỏ tớch số độ trễ - dải thụng cho kết nối TCP. Thuật toỏn khởi động chậm của TCP và sự loại trừ tắc nghẽn đƣợc mụ tả trờn hỡnh 2-23.

Hỡnh 2-23 Mụ tả cửa sổ nghẽn mạng TCP khởi động chậm và cỏc hoạt động trỏnh nghẽn mạng

Khi xảy ra mất gúi tin do nhiều nguyờn nhõn khỏc ngoài nghẽn mạng, việc đợi thời gian RTT trụi qua cú thể cú tỏc động xấu trở lại đến thụng số vận hành, đặc biệt là trong mạng tốc độ cao. Để trỏnh tỡnh trạng này, ngƣời ta dựng cỏc thuật toỏn truyền lại nhanh TCP (TCP fast retransmit) và thuật toỏn khụi phục.

2.3.2 Hoạt động của lƣu lƣợng TCP trong mụ hỡnh loại bỏ cuối hàng (Tail-

1. Khởi động chậm

2. Hết thời gian định thời phát lại 3. Chống tắc nghẽn/tâng tuyến tính Cửa sổ bộ thu Cửa sổ nghẽn (cwnd) Thời gian Ng-ỡng khởi động chậm

Drop)

Thụng thƣờng, cỏc gúi tin đến hàng đợi khi hàng đợi đó đạt tới kớch thƣớc tối đa thỡ sẽ bị loại bỏ. Tỡnh trạng này tiếp tục diễn ra đến khi hàng đợi giảm xuống do đó truyền bớt gúi tin. Kỹ thuật quản lý hàng đợi này đƣợc gọi là loại bỏ cuối hàng (tail-drop).

Bởi vỡ việc gúi tin bị loại bỏ sẽ bỏo hiệu ngẽn mạng tới một nguồn TCP, cơ chế loại bỏ cuối hàng bỏo hiệu nghẽn mạng chỉ khi hàng đợi đầy hoàn toàn. Một gúi tin bị loại bỏ làm cho nguồn TCP giảm kớch thƣớc cửa sổ cũn một phõn đoạn và bắt đầu chế độ khởi động chậm, làm cho lƣu lƣợng từ nguồn giảm xuống mạnh mẽ. Bởi vỡ hàng nghỡn luồng TCP lƣu thụng qua một bộ định tuyến lừi trờn Internet hoặc mạng IP quy mụ lớn, một kịch bản loại bỏ cuối hàng sẽ gõy ra việc mất gúi tin cho một số lớn cỏc phiờn TCP. Cỏc nguồn TCP của toàn bộ cỏc phiờn TCP sẽ đồng thời chậm lại, kết quả là lƣu lƣợng đến hàng đợi giảm mạnh mẽ, và do đú giảm kớch thƣớc hàng đợi một cỏch đỏng kể.

Hỡnh 2-24 Đồng bộ toàn cục

Toàn bộ cỏc nguồn TCP đó thực hiện khởi động chậm với một cửa sổ cú kớch thƣớc đƣợc đặt là 1 phõn đoạn, nay lại bắt đầu tăng kớch thƣớc cửa sổ của chỳng theo hàm mũ, tăng lƣu lƣợng tại hàng đợi. Lƣu lƣợng tăng đều đặn hỡnh thành lại cỏc hàng đợi, dẫn đến việc loại bỏ gúi tin. Loại bỏ gúi một lần nữa là nguyờn

1. Loại bỏ cuối hàng làm cho một lƣợng lớn cỏc nguồn TCP đổi kớch thƣớc cửa sổ thành 1 và bƣớc vào chế độ khởi động chậm trong cựng một lỳc.

2. Hoạt động khởi động chậm của một lƣợng lớn cỏc nguồn TCP xảy ra cựng một lỳc,

Chiều dài hàng đợi tổng cộng Kớch thƣớc

hàng đợi

nhõn một số lƣợng lớn cỏc nguồn TCP giảm tốc độ, lập tức gõy ra hiện tƣợng giảm lƣu lƣợng. Khi cỏc nguồn TCP này tăng đều đặn kớch thƣớc cửa sổ, chỳng cú thể lại gõy ra tắc nghẽn và rớt cỏc gúi tin.

Phản ứng cú tớnh chu kỳ của sự suy giảm và tắc nghẽn quy mụ lớn gõy ra một hiệu ứng súng trong kớch thƣớc hàng đợi, thƣờng đƣợc gọi bằng thuật ngữ đồng bộ toàn cục global synchronization. Hoạt động đồng bộ toàn cục đƣợc mụ tả ở hỡnh 2-24. Gọi nhƣ vậy vỡ nú sẽ đồng bộ cho hoạt động của một số lƣợng lớn cỏc nguồn TCP dẫn tới cỏc thăng giàng khụng mong muốn về hàng đợi. Nú cũng gõy ra trƣợt (jitter) lớn cho lƣu lƣợng và làm giảm thụng lƣợng chung của mạng.

2.3.3 Phỏt hiện sớm ngẫu nhiờn (RED): Quản lý hàng đợi tớch cực để trỏnh nghẽn mạng nghẽn mạng

Phản ứng của nguồn TCP đối với hiện tƣợng loại bỏ cuối hàng làm nổi lờn nhu cầu cho việc quản lý hàng đợi tớch cực để bỏo hiệu tắc nghẽn trƣớc khi hàng đợi đầy và để điều khiển kớch thƣớc hàng đợi sao cho trễ trờn hàng đợi là thấp nhất. RED là một cơ chế loại trừ tắc nghẽn đƣợc đề xuất bởi Sally Floyd và Van Jacobson. Đõy là một kỹ thuật quản lý hàng đợi tớch cực cú mục đớch cung cấp nhiều ƣu điểm về thụng số vận hành hơn so với phƣơng phỏp loại bỏ cuối hàng (tail-drop).

RED là cỏch tiếp cận tớch cực đối với tắc nghẽn. Thay vỡ đợi đến khi hàng đợi đầy hoàn toàn, RED khởi động việc rớt cỏc gúi với một xỏc suất rớt khỏc 0 sau khi kớch thƣớc hàng đợi trung bỡnh vƣợt một ngƣỡng nhỏ nhất nào đú. Xỏc suất loại bỏ gúi tin phải đảm bảo rằng RED rớt bỏ gúi tin một cỏch ngẫu nhiờn chỉ từ một số ớt luồng, trỏnh đồng bộ toàn cục. Một gúi tin bị loại bỏ để bỏo hiệu nguồn TCP phải giảm dần lƣợng phỏt. Luồng TCP đỏp ứng sẽ giảm dần lƣợng phỏt sau khi gúi tin bị mất bằng cỏch sử dụng chế độ khởi động chậm.

Nếu kớch thƣớc hàng đợi trung bỡnh vẫn tiếp tục tăng mặc dự đó làm rớt ngẫu nhiờn, khả năng gúi tin bị loại bỏ bỏ tăng tuyến tớnh để điều khiển kớch thƣớc hàng đợi trung bỡnh. Nhƣ vậy, tốc độ loại bỏ gúi tin tăng tuyến tớnh khi kớch thƣớc hàng đợi trung bỡnh tăng từ giỏ trị ngƣỡng nhỏ nhất đến giỏ trị ngƣỡng lớn

nhất. Kớch thƣớc hàng đợi trung bỡnh sẽ bị giới hạn đến giỏ trị ngƣỡng lớn nhất bởi vỡ toàn bộ gúi tin mới tới đều bị loại bỏ (với xỏc suất là 100%, tƣơng tự giống loại bỏ cuối hàng) khi kớch thƣớc hàng đợi trung bỡnh đạt ngƣỡng lớn nhất. Do đú mục đớch của RED là giảm kớch thƣớc hàng đợi trung bỡnh từ đú sẽ làm giảm trễ hàng đợi.

Xỏc suất loại bỏ gúi tin dựa vào kớch thƣớc hàng đợi trung bỡnh hàm mũ theo trọng số, đƣợc mụ tả trong phần “Tớnh toỏn kớch thƣớc hàng đợi trung bỡnh”, do đú RED khụng gõy ra lƣu lƣợng burst nhất thời trong khi điều khiển sự tắc nghẽn kộo dài. Nếu chiều dài trung bỡnh của hàng đợi ngắn, hoặc dƣới giỏ trị ngƣỡng nhỏ nhất, RED khụng đƣa đến một lợi ớch thực tế nào. Ngƣợc lại, nếu sự tắc nghẽn duy trỡ trong một thời gian dài, RED - với một hàng đợi dài và một giỏ trị ngƣỡng cực đại cao - sẽ hoạt động giống nhƣ cơ chế loại bỏ cuối hàng. Mục đớch chớnh của RED để đỏp ứng cỏc bursts tạm thời, phỏt hiện và ngăn chặn nghẽn mạng kộo dài bằng cỏch bỏo hiệu cho cỏc nguồn để giảm dần tốc độ. Điều này giỳp trỏnh nghẽn mạng nếu cỏc nguồn hợp tỏc và giảm lƣu lƣợng. Nếu cỏc nguồn khụng hợp tỏc, bất kỳ gúi tin nào đến mà vƣợt qua chiều dài ngƣỡng lớn nhất của hàng đợi sẽ bị loại bỏ. Mục đớch chớnh của RED bao gồm:

Giảm tối thiểu trƣợt trễ gúi của cỏc gúi bằng việc điều khiển kớch thƣớc hàng đợi trung bỡnh

Trỏnh đồng bộ toàn cục cho lƣu lƣợng TCP

Hỗ trợ lƣu lƣợng burst nhƣng khụng cú xu hƣớng gõy ra burst

Áp đặt nghiờm ngặt giới hạn trờn đối với giới hạn hàng đợi trung bỡnh RED đƣợc thực hiện bởi 2 thuật toỏn khỏc nhau:

Tớnh toỏn kớch thước hàng đợi trung bỡnh: Xỏc định mức độ tớnh burst (burstsiness) đƣợc cho phộp trong hàng đợi.

Xỏc suất loại bỏ gúi tin: đối với một kớch thƣớc hàng đợi trung bỡnh, xỏc suất để một gúi tin bị loại bỏ xỏc định tần suất router loại bỏ gúi tin. Những thuật toỏn này đƣợc đề cập trong cỏc phần sau.

RED tớnh toỏn một kớch thƣớc hàng đợi trung bỡnh theo trọng số hàm mũ chứ khụng tớnh kớch thƣớc hàng đợi hiện tại để đƣa ra xỏc suất loại bỏ gúi tin. Chiều dài trung bỡnh của hàng đợi hiện tại phụ thuộc vào giỏ trị trung bỡnh trƣớc đú và kớch thƣớc hiện tại của hàng đợi. Sử dụng một kớch thƣớc hàng đợi trung bỡnh RED sẽ đạt đƣợc mục đớch khụng phản ứng với tớnh burst tức thời trong mạng, và chỉ phản ứng khi nghẽn mạng kộo dài. Cụng thức đú là:

giỏ trị trung bỡnh = (giỏ trị trung bỡnh cũì (1–1/2 n) + (kớch thƣớc hàng đợi hiện tạiì1/2 n)

trong đú n là hệ số mũ, biến số cấu hỡnh của ngƣời sử dụng.

Hệ số mũ là tham số chủ chốt xỏc định ý nghĩa của giỏ trị trung bỡnh cũ và giỏ trị của kớch thƣớc hàng đợi hiện tại trong việc tớnh toỏn giỏ trị trung bỡnh của kớch thƣớc hàng đợi. Mặc định giỏ trị n bằng 9 thƣờng cho kết quả tốt nhất. Trong tớnh toỏn kớch thƣớc hàng đợi trung bỡnh, giỏ trị n cao làm tăng ý nghĩa của kớch thƣớc hàng đợi trung bỡnh cũ so với kớch thƣớc hàng đợi hiện tại trong việc tớnh toỏn kớch thƣớc hàng đợi trung bỡnh; giỏ trị n thấp làm giảm ý nghĩa của kớch thƣớc hàng đợi trung bỡnh cũ so với kớch thƣớc hàng đợi hiện tại.

Với giỏ trị n cao, kớch thƣớc hàng đợi trung bỡnh gần bằng kớch thƣớc hàng đợi trung bỡnh cũ và ớt phụ thuộc kớch thƣớc hàng đợi hiện tại, kết quả của cơ chế RED nhƣ sau:

Kớch thƣớc hàng đợi trung bỡnh thay đổi chậm và khụng biến đổi quỏ nhanh, trỏnh việc kớch thƣớc dao động quỏ mạnh.

RED chấp nhận burst tạm thời trong lƣu lƣợng, san bằng giỏ trị cỏc giỏ trị đỉnh và đỏy trong kớch thƣớc hàng đợi hiện tại.

RED chậm khởi động việc loại bỏ gúi tin, nhƣng nú cú thể tiếp tục loại bỏ gúi tin ở thời điểm sau khi kớch thƣớc hàng đợi thực tế thấp hơn ngƣỡng bộ nhất.

Nếu n quỏ cao, RED sẽ khụng cú ảnh hƣởng đến tắc nghẽn, do kớch thƣớc hàng đợi hiện tại khụng cú ý nghĩa trong việc tớnh toỏn kớch thƣớc hàng đợi trung bỡnh. Cỏc gúi tin đƣợc truyền đi hoặc bị loại bỏ theo cỏch giống nhƣ khụng cú

RE.

Với giỏ trị n thấp, kớch thƣớc hàng đợi trung bỡnh gần bằng kớch thƣớc hàng đợi hiện tại. Khi đú RED cú đặc điểm sau:

Kớch thƣớc hàng đợi trung bỡnh thay đổi nhanh và thăng giỏng cựng với những thay đổi trong mức độ lƣu lƣợng

Tiến trỡnh RED đỏp ứng nhanh với hàng đợi dài. Khi hàng đợi bộ hơn ngƣỡng nhỏ nhất, tiến trỡnh sẽ dừng quỏ trỡnh loại bỏ gúi tin

Nếu n quỏ thấp, RED sẽ ảnh hƣởng quỏ mức mạng tới burst lƣu lƣợng tạm thời và làm rớt lƣu lƣợng một cỏch khụng cần thiết.

Xỏc suất loại bỏ gúi tin

Xỏc suất loại bỏ gúi tin là một hàm tuyến tớnh của kớch thƣớc hàng đợi trung bỡnh. Nú cũng dựa vào giỏ trị ngƣỡng nhỏ nhất và giỏ trị ngƣỡng lớn nhất, và mẫu số xỏc suất đỏnh dấu (mark probability denominato), là một phần của số lƣợng gúi tin bị loại bỏ khi độ dài hàng đợi trung bỡnh ở ngƣỡng lớn nhất. Vớ dụ, nếu (mẫu số xỏc suất đỏnh dấu là 10, 1 trong mỗi 10 gúi tin bị loại bỏ khi hàng đợi trung bỡnh ở giỏ trị ngƣỡng lớn nhất.

Hỡnh 2-25 Xỏc suất loại bỏ gúi tin RED

Khi độ dài hàng đợi trung bỡnh lớn hơn giỏ trị ngƣỡng bộ nhất, RED bắt đầu rớt cỏc gúi tin. Tốc độ loại bỏ gúi tin tăng tuyến tớnh khi kớch thƣớc hàng đợi trung bỡnh tăng, đến khi kớch thƣớc hàng đợi trung bỡnh đạt đến giỏ trị ngƣỡng lớn nhất.

Khi kớch thƣớc hàng đợi trung bỡnh lớn hơn giỏ trị ngƣỡng lớn nhất, toàn bộ gúi tin sẽ bị loại bỏ. Xỏc suất loại bỏ gúi tin đƣợc minh họa trong hỡnh 2-25.

2.3.4 Phỏt hiện sớm ngẫu nhiờn cú trọng số (WRED)

WRED phõn biệt cỏc cấp độ dịch vụ giữa cỏc gúi dựa trờn xỏc suất loại bỏ gúi tin và cho phộp cỏc tham số chọn lọc của RED dựa vào giao thức mức ƣu tiờn IP. Kết quả là WRED sẽ loại bỏ gúi nhiều hơn đối với cỏc gúi tin cú cấp độ ƣu tiờn này và ớt hơn đối với cỏc gúi cú cấp độ ƣu tiờn khỏc.

Triển khai WRED

WRED cú thể chạy trờn bộ xử lý trung tõm của bộ định tuyến hoặc theo chế độ phõn tỏn trờn dũng router 7500 của Cisco với bộ xử lý giao diện linh hoạt (Versatile Interface Processors- VIPs). Giỏ trị mặc định của ngƣỡng lớn nhất giống với tất cả cỏc cấp độ mức ƣu tiờn, nhƣng ngƣỡng nhỏ nhất thay đổi theo mức ƣu tiờn. Do dú, cỏc gúi tin cú mức ƣu tiờn thấp sẽ bị loại bỏ nhiều hơn cỏc gúi tin cú mức ƣu tiờn cao hơn. Giỏ trị ngƣỡng nhỏ nhất mặc định cho lƣu lƣợng cú mức ƣu tiờn 0 bằng một nửa giỏ trị ngƣỡng lớn nhất.

Ta cú thể kớch hoạt WRED dựa vào cỏc loại lƣu lƣợng, bằng cỏch sử dụng mụđun QoS CLI. Mụ đun QoS CLI cho phộp cỏc tham số RED khỏc nhau cho mỗi loại lƣu lƣợng.

2.3.5 Phỏt hiện sớm ngẫu nhiờn cú trọng số theo luồng (Flow WRED)

Chỉ cú cỏc luồng TCP thớch nghi đỏp ứng với tớn hiệu nghẽn và giảm tốc độ phỏt, trong khi cỏc luồng UDP khụng thớch nghi khụng đỏp ứng tới tớn hiệu

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nâng cao chất lượng dịch vụ mạng Internet (Trang 87)

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

(120 trang)