LỜI NÓI ĐẦU
Trong quá trình hoạt động của các hệ thống mạng truyền số liệu, luôn xảy ra hiệntượng tắc nghẽn Để hệ thống làm việc hiệu quả và có độ tin cậy cao người ta đã đưa ra rấtnhiều giải pháp để điều khiển tắc nghẽn mạng Trong đó, quản lý hàng đợi tích cực -Active Queue Management (AQM) là một giải pháp Trong những năm gần đây, phươngpháp quản lý hàng đợi tích cực được đánh giá là phương pháp tốt hơn cả Cơ chế này hoạtđộng tại Router nhằm điều khiển số lượng gói tin trong hàng đợi của Router bằng cách loạibỏ gói tin đến một cách chủ động Để thực hiện cơ chế này, đã có rất nhiều phương phápđược đề xuất cho phép hoạt động của mạng có được độ trễ tốt hơn và thông lượng cao hơntrong các điều kiện khác nhau về lưu lượng.
Việc cập nhật, nắm rõ và phân tích được đặc điểm của các thuật toán AQM Từ đóphân tích, đánh giá các thuật toán và đề xuất lựa chọn các thuật toán thích hợp trong từng
điều kiện cụ thể Được sự hướng dẫn của PGS TS Lê Bá Dũng, tôi xin hoàn thành luậnvăn tốt nghiệp cao học với nội dung: Phân tích đánh giá một số thuật toán quản lý hàngđợi tích cực trong TCP network Đề tài gồm các nội dung chính như sau:
Chương 1: Tổng quan các thuật toán về quản lý hàng đợi Chương 2: Các phương pháp quản lý hàng đợi tích cực
Chương 3: Nghiên cứu các thuật toán RED, BLUE và phân tích, đánh giá cácthuật toán
Do điều kiện tiếp cận để nghiên cứu cũng như năng lực của bản thân còn hạn chếnên đề tài có thể chưa đề cập hết các vấn đề liên quan đến một cách đầy đủ, sâu sắc vàtrong quá trình nghiên cứu, trình bày cũng không tránh khỏi những thiếu sót Kính mongcác thầy, cô giáo và các bạn quan tâm đến nội dung của đề tài, đóng góp ý kiến để tôi cóđiều kiện tiếp thu và phát triển đề tài cũng như bổ xung thêm kiến thức cho bản thân đượcđầy đủ, đúng đắn và để luận văn của tôi được hoàn thiện hơn.
Tôi xin chân thành cảm ơn!
Thái Nguyên, ngày 26 tháng 11 năm 2012
Người thực hiện
Trang 2CHƯƠNG 1
TỔNG QUAN CÁC THUẬT TOÁN VỀ QUẢN LÝ HÀNG ĐỢI1.1 Truyền dữ liệu trên một hệ thống mạng
Hình 1.1: Kiến trúc mạng đơn giản
Hình 1.2: Kiến trúc cơ bản của một router
1.2 Điều khiển tắc nghẽn
1.2.1 Khái niệm
1.2.2 Các kỹ thuật được sử dụng trong quản lý tắc nghẽn
1.2.3 Điều khiển tắc nghẽn và tránh tắc nghẽn trong mạng TCP
Trang 3Hình 1.3 Mô hình hàng đợi đơn giản trong mạng
Bảng 1.1: Bảng các tham số cơ bản của hàng đợi
vận tốc ٨ trên một đơn vị thời gian (s)
độ µ trên một đơn vị thời gianHiệu suất sử dụng dịch
Có hai định nghĩa:
Thứ nhất: được tính bằng tất cả thờigian gói tin đến xử lý (bao gồm cả các góikhông phải chờ trong hàng đợi)
Thứ hai: chỉ tính TB thời gian các góitin phải chờ trong hàng đợi
Thời gian TB giữa thời điểm gửi góitới server và thời điểm rời khỏi server
Trang 4gồm các gói đang được sử dụng và các góiđang chờ trong hàng đợi.
Hình 1.4: Tiến trình xử lý hàng đợi trong router
1.3.2 Quản lý hàng đợi (Queue management)
Quản lý hàng đợi bao gồm các hoạt động:
- Thêm gói vào hàng đợi theo ngữ cảnh của gói khi hàng đợi chưa đầy.- Loại bỏ gói nếu hàng đợi đã đầy.
- Xóa bỏ gói khi được yêu cầu bởi bộ lập lịch.- Thường xuyên quản lý độ chiếm giữ của hàng đợi.- Loại bỏ gói khi hàng đợi đã đầy.
- Đánh dấu các gói khi hàng đợi chuẩn bị đầy.
Trang 5Hình 2.1: Phân loại các phương pháp quản lý hàng đợi tích cực
2.2 Quản lý hàng đợi tích cực dựa trên chiều dài hàng đợi
2.2.1 Cơ chế ECN (Explicit Congestion Notification)
2.2.1.1 Khái niệm chung
2.2.1.2 Sự đánh dấu trong IP header
ECN FIELD (Trường ECN trong IP header)
Queue Length & Load BasedActive Queue Managament
RED 10 SHRED FRED 11 HREDCBT 12 AREDSRET 13 RARED
DSRED 14 QAVREDMRED 15 PUNSI
Adaptive RED 16 CHOCKe
PDRED 17 Stochastic REDLRED
REMSVBRaQ
Trang 62.2.1.4 Cơ chế hoạt động
2.2.2 Cơ chế hủy bỏ sớm ngẫu nhiên theo trọng số WRED (Weighted Random EarlyDetection)
2.2.2.1 Khái quát
2.2.2.2 Cơ chế hoạt động
Hình 2.5: Sơ đồ hoạt động của WRED
Trang 7Hình 2.6: Cơ chế loại bỏ gói tin của WRED
2.2.2.3 Sự ảnh hưởng của thông số MPD (mark probability denominator) đếnsự hoạt động của WRED
2.2.3 Adaptive RED
2.2.31 Tổng quan về Adaptive RED
Every Q(ave) Update:
if (minth < Q(ave) < maxth) status = Between;
if Q(ave) < minth && status !=Below) status = Below;
Trang 8Every interval seconds:
if (avg > target and maxp ≤ 0.5) increase maxp:
2.2.4.1 Mô hình hệ thống và các thành phần
Hình 2.9: Một mô hình kiến trúc mạng để thực hiện giải thuật DRED2.2.4.2 Phân tích mô hình hệ thống
2.2.4.3 Điều chỉnh trọng số hàng đợi Wq
Trang 9oldwq, R € [0,0.1]
oldwq x 4, R € [0.1,0.2]
oldwq x 12, R € [0.3,0.4]oldwq x 16, R € [0.4,0.5]oldwq x 20, R € [0.5,1]
Hình 2.11: Trọng số hàng đợi nwq của giải thuật DRED2.2.4.4 Điều chỉnh xác suất loại bỏ gói cực đại maxp
2.2.5 Stabilized RED (SRED)
2.2.5.1 Cơ chế và ý nghĩa
Hình 2.12: Một topo mạng gồm 2 router sử dụng SRED2.2.5.2 Giải thuật của Stabilized RED và ý nghĩa các tham số
Ở công thức trên, B là kích thước bộ đệm của router Pmax là tham số điềukhiển của SRED và là xác suất loại bỏ gói tin cực đại SRED ngẫu nhiên loại bỏ góitin với một xác suất Pzap được xác định bởi công thức:
Trang 10Pzap = PsRED(q)*min (1, (256*())2
P )*(1+ HP((nn)) )
2.2.6 Phát hiện sớm ngẫu nhiên cân bằng FRED
2.3 Quản lý hàng đợi tích cực dựa trên kiểm soát tải nạp
Ratelimit ()Else
Mark/drop with probability Pmin;
Hình 2.13: Thuật toán SFB
.2.3.2 Thuật toán SFED
2.3.3 Thuật toán FABA
Trang 11Hình 2.15: Hệ số chia sẻ công bằng đối với các kết nối HTTP và FTP của một số các thuật toán AQM
2.3.4 Thuật toán hàng đợi ảo thích nghi AVQ (Adaptive Virtual Queue)2.3.5 Thuật toán hàng đợi ảo thích nghi ổn định hóa (SAVQ)
Bảng 2.4: Các chỉ số hoạt động của AVQ và SAVQ
= 1.0 = 0.98
STD của Độ dài hàng đợi trung
2.3.6 Thuật toán hàng đợi ảo thích nghi ổn định nâng cao (EAVQ)2.3.7 Yellow
2.3.8 Giải thuật tiếp cận theo hiệu quả sử dụng tuyến (LUBA)
Trang 12CHƯƠNG 3
NGHIÊN CỨU CÁC THUẬT TOÁN RED, BLUE VÀ PHÂN TÍCH, ĐÁNH GIÁ CÁC THUẬT TOÁN3.1 Thuật toán RED (Random Early Detection)
3.1.1 Mô tả khái quát về thuật toán
Hình 3.1: Mô hình quản lý hàng đợi dùng thuật toán RED.
3.1.2 Giải thuật RED và các tham số
Giải thuật RED được mô tả như sau:
Round Trip Time (R)
AcknowledgmentsRandom Packet
Marking Queneaveragin
For each packet arrival
calculate the avegare queuen size avgif minth avg < maxth
calculate probability Pawith probability Pa:
mark: the arriving packetelse if maxth avg
Trang 13Hình 3.3: Giải thuật RED truyền thông
Hình 3.4: Giải thuật RED với “gentle option”
3.2 Thuật toán BLUE
3.2.1 Giới thiệu
Upon packet loss event:
if (now – last_update) > free_time) then
Trang 14Pm = Pm + deltalast_update = nowUpon link idle event:
if (now – last_update) > free_time) thenPm = Pm - delta
last_update = now
Hình 3.5: Giải thuật BLUE
3.3 Phân tích, đánh giá các thuật toán
3.3.1 Tỷ lệ tổn thất gói tin khi sử dụng RED và BLUE
Hình 3.6: Network topology
Bảng 3.1 Cấu hình của RED
Trang 15Bảng 3.2 Cấu hình của BLUE
Hình 3.7 Tỷ lệ mất gói của RED và BLUE
3.3.2 Đánh dấu tác động của RED và BLUE
Trang 16Hình 3.8 Lô chiều dài hàng đợi RED và BLUE
Hình 3.9 Đánh dấu tác động của RED
Trang 173.3.3 Hiệu quả của ECN timeouts
HÌnh 3.11 Chiều dài hàng đợi lô RED và BLUE với ECN timeouts
Hình 3.12 Đánh dấu hành vi với ECN thời gian chờ
3.4 So sánh một số giải thuật AQM qua mô phỏng
3.4.1 So sánh hoạt động của một số thuật toán dựa trên kiểm soát tải nạp vàdựa trên hàng đợi
3.4.1.1 Kịch bản mô phỏng
Phân tích đánh giá một số thuật toán quản lý hàng đợi tích cực trong TCP Network
Routerr1 Routerr2
Trang 18Hình 3.13: Kiến trúc mạng mô phỏng3.4.1.2 Các tham số mô phỏng
3.4.1.3 Kết quả mô phỏng
Hình 3.14: Thông lượng của các luồng UDP với các thuật toán khác nhau
Trang 19Hình 3.15: Kích thước bộ đệm khi sử dụng một số thuật toán khác nhau
Hình 3.16: Kích thước hàng đợi đối với các thuật toán khác nhau
3.4.2 Đánh giá hoạt động của các thuật toán AQM thích nghi và không thíchnghi trong môi trường băng thông đầu ra thay đổi
3.4.2.1 Kịch bản mô phỏng
Trang 20Hình 3.17: Cấu hình mạng mô phỏng
Hình 3.18: Dung lượng đầu ra theo thời gian3.4.2.2 Các tham số mô phỏng
3.4.2.3 Kết quả mô phỏng
Trang 21Hình 3.19: Độ dài trung bình của hàng đợi được điều khiểnbởi các thuật toán AQM
KẾT LUẬN
Từ khi ý tưởng về quản lý hàng đợi tích cực ra đời năm 1999 tới nay đã gần 100cơ chế được phát triển và một số ít các phương pháp nổi bật được đề cập ở trên.Mục đích của AQM là duy trì một hàng đợi ổn định nhằm đạt được độ sử dụng tàinguyên cao và trễ hàng đợi ổn định nhằm đạt được độ sử dụng tài nguyên cao và trễhàng đợi nhỏ Các nhược điểm về vấn đề khóa và đầy hàng đợi của cơ chế loại bỏđuôi là các tiêu chí để xem xét khi phát triển bất kỳ một thuật toán AQM nào đó.
Trong các thuật toán đã phân tích, có thể thấy rằng RED là một thuật toán đượcsử dụng rộng rãi nhất và điều chỉnh các tham số của RED là mục tiêu chính của hầuhết các thuật toán AQM được công bố Một loạt các thuật toán như SRED, DRED,DSRED, MRED, RARED… được công bố dựa trên cơ sở này Thuật toán SREDkhông tính toán độ dài trung bình của hàng đợi, nếu các nghiên cứu tiếp theo vềSRED đưa ra cách thức để cải tiến hoạt động của SRED bằng cách thêm vào tínhtoán về kích cỡ hàng đợi trung bình sẽ đem lại lợi ích đáng kể Mặc dù hoạt độngcủa MRED tốt hơn RED một chút nhưng có rất ít sự quan tâm về phát triển giảithuật này AVQ đạt được hệ số sử dụng tuyến tốt trong khi vẫn giữ chiều dài trungbình của hàng đợi nhỏ Bên cạnh đó CHOKe đem lại hệ số công bằng lớn hơnnhưng lại không có hệ số sử dụng tuyến cao như AVQ Hệ số sử dụng tuyến thayđổi theo thời gian của SAVQ cải thiện rất nhiều đáp ứng tức thời của thuật toán nàyvà độ dài hàng đợi trung bình của SAVQ nhanh chóng hội tụ đến giá trị mongmuốn Việc sử dụng tốc độ đến của các luồng lưu lượng như một độ đo chính đolường sự tắc nghẽn và tỷ lệ sử dụng tuyến mong muốn là độ đo phụ làm cho EAVQkhai thác tuyến một trăm phần trăm Tương tự như EAVQ, Yellow cũng sử dụnghai đại lượng này để quản lý tắc nghẽn Thuật toán này đạt được hệ số sử dụngtuyến rất cao bằng cách xem hệ số tải là tiêu chí chính và hàm điều khiển hàng đợilà tiêu chí sơ cấp Thuật toán AVQRED có sự kết hợp của cả AVQ và RED thực
Trang 22hiện cải tiến cách thức mà các bộ đệm ảo được điều chỉnh để thích ứng với đặc tínhđộng học của tài nguyên gateway.
Tuy nhiên RED không hiệu quả trong việc ngăn ngừa việc mất mát các gói tin.Trong khi đó Blue lại có thể khắc phục được nhược điểm trên bằng cách BLUEthực hiện việc quản lý các gói tin bị mất.
Kiến nghị, trong trường hợp quản lý hàng đợi có không gian đủ lớn thì chúng tanên sử dụng thuật toán RED trong trường hợp quản lý hàng đợi có không gian hẹpthì chúng ta nên sử dụng thuật toán BLUE.
Trong tất cả các trường hợp, các kịch bản mô phỏng được giới thiệu trong cácthuật toán cải tiến AQM chỉ tập trung vào một số ít các tình huống chung và quáđơn giản trong quá trình phân tích hành vi của giao thức ở các tình huống phichuẩn Các công bố về phương pháp AQM phần lớn dựa trên kết quả mô phỏng vàcần được trên thực tế Việc mô hình hóa các điều kiện về lưu lượng trên Internet làquá phức tạp trong mô phỏng mạng làm cho nó trở thành nhân tố quan trọng trongviệc đánh giá các thuật toán AQM trong các điều kiện thực tế.
Chắc chắn trong tương lai, sẽ còn nhiều cơ chế AQM cải tiến mới ra đời nhằmkhắc phục những nhược điểm của phương pháp cũ Để đánh giá một cách toàn diệnvề thuật toán mới này ta cần dựa trên một số các tiêu chí như: Mục đích của thuậttoán, phương pháp tiếp cận, cách thức phát hiện tắc nghẽn, độ công bằng đối vớicác luồng, đặc tính phát hiện luồng vi phạm, mục tiệu chất lượng, số lượng cáctham số cần xác định trước, các tham số ảnh hưởng đến xác suất loại bỏ gói và mộtsố đặc điểm nổi bật của thuật toán Ta có dùng sự đánh giá này cho những thuậttoán đã phân tích ở trên và kết quả đánh giá được thể hiện qua các bảng sau:
Thái Nguyên, ngày 26 tháng 11 năm 2012
Người thực hiện
Trang 23Ngô Văn Thuật
Trang 24TÀI LIỆU THAM KHẢO
[1] Braen,B, Clark, D,et.al (1998), “ Recommendations on queue management and
congestion avoidance in the Internet ” IETF RFC (Information) 2309
[2] Joerg Widmer., Robert Denda, Martin Mauve Prakitsche Informatik IV (2001) ,
“ A Survey of TCP Friendly Congestion Control ” , IEEE Transactions on
[3] E.Hashem (1998), “ Analysis of Random drop for gateway congestion
Control” report LCS, TR - 465, Laboratory for Computer Science, MIT,
Cambridge, MA, , p 103.
[4] T.V Lakshman, A Neidhardt, T Ott, The Drop From Straegy in TCP Over
ATM and Its Interworking with Other Control Features, Proc Infocom 96,
pp 242 – 1250.
[5] S.Floyd, V Jacobson (1993), “ Random Early Detection Gateways for
Congestion Avoidance ” , IEEE/ACM Transaction on Networking
[6] W.Feng, D.D Kandlur, D.Saha, K.G.Shin (1999), “ A Self Configuring RED
Gateway ” , Proceedings of IEEE INFOCOMM, Vol 3 pp 1320 – 1328 [7] D.lin, R.Morris (1997), “ Dynamics of Random early Detection ” , Proceedings
of ACM SIGCOMM.
[8] Mark Parris, Kevin Jeffay, F Donelson Smith (1999), “ Lightweight ActiveRouter Queue management for Multimedia Networking ” Multimedia
Computing and Networking 1999, Proceedings, SPIE Proceeding Series,
Volume 3654, San Jose, CA, pages 162-174
[9] T.J.Ott, T.V.Lakshman, and L.Wong (1999), “ SRED: Stablised RED ” in
IEEE INFOCOMM
[10] Bing Zheng, Mogammed Atiquzzaman (2000), “ DSRED: An active Queue
Management Scheme for Next Generation Network”, Proceedings of 25th
Trang 25[11] Jahoon Koo, Byunghun Song, Kwangsue Chung, Hyukjoon Lee, Hyunkook
International Coference on Information Networking.
[12] S.Floyd, R.Gummadi, S.Shenkar and ICSI ”Adaptive RED: An algorithm for
Increasing the robustness of RED’s active Queue Management”, Berkely,
CA[online] http:www.icir.org/floyd/red.html.
[13] Jinsheng Sun, King-Tim Ko, Guanrong Chen, Sammy Chan, Moshe
Sukerman (2003), “PD – RED: To Improve Performance of RED”, IEEE
[15] Mark Claypool, Robert Kinicki, Mathew Hartling (2004), “Active Queue
Management for Web Traffic” IEEE International Conference on
Performance, Computing and Comunication 2004.
[16] Liujia Hu, Ajay D.Kshemkalyani (2004), “HRED: A simple and Efficient
Active Queue Management Algorithm”, 13th International Conferrence onComputer Communications and Networking ICCCN 2004.
[17] Yue-Dong Xu, Zhen-Yu Wang, Hua Wang (2005), “ARED A Novel Adative
Congestion Controller” IEEE International Conference on Machine
Learning and Cybernetics.
[18] Tae-Hoon Kim, Kee-Hyun Lee (2006), “Refined Adaptive RED in TCP/IP
Networks”, IEEE ICASE.
[19] Jiong-Hwan Seol, Ki Young Lee, Yoon Sik Hong (2006), “PerformanceImprovement of Adaptive AQM Using the Variation of Queue Length”
IEEE Region 10 Conferencer TENCON.
[20] Tetsuji Yamaguchi, Yutaka Takahashi (2007), “A queue Management
algorithrm for fair bandwidth allocation” Computer Communication.