Giải thuật BLUE

Một phần của tài liệu Đề tài : Nghiên cứu cải tiến phương pháp quản lý hàng đợi cho truyền video trên mạng ip (Trang 80 - 82)

Vấn đề cố hữu với những thuật toỏn AQM là chỳng sử dụng độ dài hàng đợi như cỏc chỉ số về mức độ nghiờm trọng của tỡnh trạng tắc nghẽn mà khụng quan tõm đến cỏc yếu tố khỏc chẳng hạn như mức độ sử dụng đường truyền mạng. Sử dụng cỏc thuật toỏn quản lý hàng đợi tớch cực được đề nghị bởi IETF nhằm ngăn chặn tắc nghẽn và giảm tỷ lệ mất gúi. Nguyờn tắc chớnh của cỏc thuật toỏn là loại bỏ cỏc gúi tin một cỏch cú hệ thống để thụng bỏo cho cỏc nỳt cuối về tắc nghẽn trờn cỏc Gateway. BLUE, một giải thuật quản lý hàng đợi tớch cực mới, cú nhiều ưu điểm hơn giải thuật quản lý hàng đợi tớch cực phổ biến RED trong một số điều kiện cụ thể [17, 28, 85].

BLUE đó được Wu-chang Feng và cộng sự đề xuất năm 1999 [85]. Tỏc động quan trọng nhất của việc sử dụng BLUE là điều khiển tắc nghẽn cú thể được thực hiện với kớch thước khụng gian đệm tối thiểu [17, 28, 33, 85]. Điều này làm giảm độ trễ end-to-end qua mạng, do đú cải thiện hiệu quả của cỏc thuật toỏn điều khiển tắc nghẽn.

BLUE là một giải thuật quản lý hàng đợi tớch cực để quản lý kiểm soỏt tắc nghẽn dựa trờn sự kiện mất gúi dữ liệu và mức độ sử dụng đường truyền thay vỡ chiếm dụng hàng đợi. BLUE duy trỡ một xỏc suất pm duy nhất để đỏnh dấu (hoặc loại bỏ) cỏc gúi tin. Khi tràn bộ đệm, nếu hàng đợi liờn tục loại cỏc gúi tin, BLUE sẽ tăng pm, do đú tăng tốc độ gửi lại thụng bỏo tắc nghẽn hoặc loại bỏ cỏc gúi tin. Ngược lại, nếu hàng đợi trở nờn trống rỗng hoặc nếu liờn kết được nhàn rỗi, BLUE lại giảm xỏc suất đỏnh dấu (hay loại) gúi tin của nú. Trong hỡnh 4.1 trỡnh bày mó giả của giải thuật BLUE:

Dựa trờn sự kiện mất gúi tin hay qlen> L :

if (( now -last_update) > freeze_time ) {

pm = pm + d1; last_update = now; }

Dựa trờn sự kiện đường truyền rỗi hay qlen= 0:

if((now–last_update)>

freeze_time ){

pm= pm – d2;

last_update = now; }

Đỏnh dấu (loại bỏ) cỏc gúi tin với xỏc suất pm

Hỡnh 4.1 Mó giả giải thuật BLUE.

Cỏc tham số sử dụng trong giải thuật:

- pm: xỏc suất đỏnh dấu hoặc loại gúi tin,

- freeze_time: là một tham số xỏc định khoảng thời gian tối thiểu giữa hai lần cập nhật liờn tiếp của pm,

- d1: xỏc định lượng tăng lờn của pm khi hàng đợi tràn, - d2: xỏc định lượng giảm pm khi liờn kết là nhàn rỗi, - now: thời điểm hiện tại,

66

- qlen: là độ dài hàng đợi hiện tại,

- L: xỏc định ngưỡng cho phộp gúi tin đến tại hàng đợi. Chỳng ta cú thể mụ tả hoạt động của thuật toỏn theo 5 bước:

Bước 1: Kiểm tra nếu xảy ra sự kiện mất gúi tin thỡ qua bước 2, nếu khụng, kiểm tra xem nếu sự kiện đường truyền rỗi thỡ qua bước 3, ngược lại qua bước 4.

Bước 2: Kiểm tra, nếu khoảng thời gian từ lần cập nhật cuối cựng đến thời điểm hiện tại mà lớn hơn ngưỡng cho phộp thỡ tăng xỏc suất đỏnh dấu (hoặc loại bỏ) gúi pm lờn, Sau đú qua bước 5. Nếu khoảng thời gian từ lần cập nhật cuối cựng đến thời điểm hiện tại mà nhỏ hơn ngưỡng cho phộp qua bước 5.

Bước 3: Kiểm tra, nếu đường truyền rỗi chuyển qua bước 4 ngược lại chuyển qua bước 5. Bước 4: Kiểm tra, nếu khoảng thời gian từ lần cập nhật cuối cựng đến thời điểm hiện tại mà lớn hơn ngưỡng cho phộp thỡ giảm xỏc suất đỏnh dấu (hoặc loại bỏ) gúi pm xuống, Sau đú qua bước 5. Nếu khoảng thời gian từ lần cập nhật cuối cựng đến thời điểm hiện tại mà nhỏ hơn ngưỡng cho phộp qua bước 5 .

Bước 5: Đỏnh dấu (hoặc loại bỏ) gúi tin đến với xỏc suất pm.

Giải thuật quản lý hàng đợi BLUE cũng cú thể trỡnh bày dạng lưu đồ như trong hỡnh 4.2.

Hỡnh 4.2 Lưu đồ giải thuật BLUE

Trong mụ phỏng giỏ trị mặc định của cỏc tham số tĩnh BLUE là: d1= 0.02; d2 = 0.002, free_time = 0.01s. d1 được thiết lập nhỏ hơn d2 một cỏch đỏng kể. Nguyờn nhõn là do liờn kết dưới mức ứng dụng cú thể xảy ra khi quản lý tắc nghẽn hoặc là quỏ nguyờn tắc hoặc quỏ linh hoạt, nhưng mất gúi xảy ra chỉ khi quản lý ựn tắc là quỏ cứng nhắc (cosservative)

Do trọng số chống mất gúi lớn hơn so với mức độ sử dụng đường truyền, BLUE cú thể nhanh chúng phản ứng với sự gia tăng đỏng kể tải giao thụng. Một nguyờn tắc cơ bản là: d2 = d1/10. Phõn tớch sự phụ thuộc của cỏc tham số: Để BLUE làm việc hiệu quả, một điều rất quan trọng là việc thiết lập cỏc tham số hợp lý.

Khi xảy ra hiện tượng mất gúi tin, kớch thước hàng đợi vượt quỏ ngưỡng L, thỡ BLUE tăng pm

do đú tăng tốc độ gửi lại thụng bỏo tắc nghẽn hay loại bỏ gúi tin, tốc độ thụng bỏo này tăng d1 trờn mỗi freetime giõy. Nờn cỏc nỳt nguồn sẽ giảm kớch thước cửa sổ phỏt và do đú tốc độ gửi

pm = pm - d2

Gúi tin đến

Xảy ra sự kiện mất gúi tin

(Hoặc qlen> L)?

Xảy ra sự kiện đường truyền rỗi? Now – last_update > Freeze_time ? Now – last_update > Freeze_time ? pm = pm + d1

Đỏnh dấu (hay loại bỏ gúi)

với xỏc suất pm Kết thỳc Y N Y N N Y Y N

67

chậm lại. Khi liờn kết nhàn rỗi tốc độ thụng bỏo giảm bằng tham số d2 trờn mỗi freezetime giõy. Bằng cỏch này, tốc độ thụng bỏo tỡnh trạng tắc nghẽn pm hội tụ đến một giỏ trị để kiểm soỏt tốc độ đến để hàng đợi đú là dưới ngưỡng L, và liờn kết khụng bị nhàn rỗi và qua đú nõng cao được mức độ sử dụng đường truyền. Dưới đõy là cụng thức tớnh mức độ sử dụng đường truyền. Gọi y là mức độ sử dụng đường truyền, y được tớnh như sau:

- byte_departurest: số bytes được truyền đi trong t giõy, - B: băng thụng của đường truyền,

- t: Thời gian truyền;

Thứ nhất: Tham số freeze_time cần phải được thiết lập trờn cơ sở thời gian khứ hồi hiệu quả nhằm cho phộp bất kỳ sự thay đổi nào trong việc gỏn xỏc suất sẽ được phản ỏnh đến nơi gửi trước khi sự thay đổi tiếp theo xảy ra. Với cỏc đường truyền dài như cỏc đường truyền vệ tinh, tham số freeze_time cần được tăng lờn cho phự hợp với thời gian khứ hồi (roundtrip time) dài hơn.

Thứ hai: tập hợp cỏc tham số d1, d2 được thiết lập sao cho đường truyền cú khả năng thớch nghi hiệu quả với những thay đổi lớn trong lưu lượng truyền qua đường kết nối. Với cỏc đường truyền mà tại đú trung bỡnh trong vài phỳt xảy ra sự thay đổi rất lớn trong lưu lượng truyền thỡ d1, d2 , cần được thiết lập gắn với freeze_time để cho phộp pm thay đổi giỏ trị từ 0 đến 1 trong khoảng thời gian trung bỡnh 10 phỳt. Điều này tương phản với với cỏch tiếp cận theo kớch thước hiện thời của hàng đợi khi xỏc suất gỏn và xỏc suất hủy bỏ nằm trong khoảng 0 đến 1 trung bỡnh trong vài mili-giõy. Sau khi được xem xột kỹ, giỏ trị freeze_time được thiết lập trong khoảng giữa 10ms và 500ms và thiết lập giỏ trị của d1, d2 để chỳng cho phộp pm nằm trong khoảng từ 0 đến 1 trung bỡnh trong 5 đến 30 giõy[28, 33].Việc xỏc định cỏc tham số d1, d2 và freetime trong giải thuật BLUE là rất quan trọng, bản thõn Wu-chang Feng trong [85] đó thiết lập giỏ trị d2 nhỏ hơn d1 đỏng kể để đỏp ứng nhanh chúng với sự kiện mất gúi tin, d2 = (1/10)d1. Và thường lấy cỏc giỏ trị cấu hỡnh như trong [85].

Bảng 4.1 Cấu hỡnh tham số freezetime và d1, d2 của BLUE [79]

Kể từ khi được W.Feng cụng bố (1999) đến nay BLUE đó được nhiều nhà khoa học tiếp tục nghiờn cứu và đề xuất cỏc cải tiến, cỏc cụng trỡnh này cú thể kể ra như SFB [28], Modelling BLUE [33], BLUE-RWM[83],…

Một phần của tài liệu Đề tài : Nghiên cứu cải tiến phương pháp quản lý hàng đợi cho truyền video trên mạng ip (Trang 80 - 82)