Tốc độ đến TB λ Thời gian gói tin đến hệ thống hàng đợi với vận tốc λ trên một đơn vị thời giansTốc độ rời khỏi TB μ Các gói tin rời khỏi hệ thống với tốc độ μ trên một đơn vị thời gian
Trang 1ĐỀ TÀI
CÁC CƠ CHẾ HÀNG ĐỢI RED VÀ FIFO
GIẢNG VIÊN: NGUYỄN THỊ THU HẰNG
Nhóm 10: Lê văn sơn Trần mạnh dũng
Đỗ thị nhàn Đinh văn duy Nguyễn thị huyền
Trang 2
1 2 3 4
GIỚI THIỆU CHUNG
KỸ THUẬT HÀNG ĐỢI FIFO
PHƯƠNG PHÁP QUẢN LÝ HÀNG ĐỢI – THUẬT TOÁN
RED
KẾT LUẬN
Trang 3TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
CHƯƠNG 1: GIỚI THIỆU CHUNG
1.1 Giới thiệu hàng đợi:
1.1.1 Khái niệm:
Hàng đợi là một danh sách nhưng các phép toán chỉ được thực hiện ở hai đỉnh của danh sách Một đỉnh gọi là đầu hàng, đỉnh còn lại gọi là cuối hàng.
Ví dụ: • Xếp hàng mua vé tàu xe, giao dịch với ngân hàng.
Lý thuyết hàng đợi nảy sinh một cách tự nhiên trong việc nghiên cứu các chuyển mạch kênh, và chuyển mạch gói
Trang 4
Thời gian sử dụng bộ đệm (trễ hàng đợi) là một vấn đề quan trọng trong truyền dẫn thông tin Thời gian này phụ thuộc vào các thời gian xử
lý, độ dài bản tin hay thời gian chờ xử lý khi chưa có tài nguyên sử dụng.
Trong các ứng dụng tương tác và thời gian thực thì thời gian trả lời trung bình được xem như một tiêu chuẩn quan trọng còn trong các ứng dụng khác thì thông lượng lại là điều quan trọng nhất.
Cuộc gọi đến chuyển mạch ngẫu nhiên, mỗi cuộc gọi sẽ giữ kênh trong
một khoảng thời gian ngẫu nhiên nào đó
Các gói tin với các chiều dài khác nhau đi qua mạng, tài nguyên mạng (các chuyển mạch,kết nối sẽ được chia sẻ cho các gói)
Các bản tin được định tuyến đến các node tiếp theo
Trang 5TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
Tin tức (có thể là gói tin hay bản tin) đến hệ thống để yêu cầu phục vụ Nếu server rỗi thì gói tin sẽ được phục vụ ngay lập tức, ngược lại chúng
sẽ được lưu giữ trong các hàng đợi Khi rời khỏi hàng đợi các gói sẽ được xử lý.
Trang 6Tốc độ đến TB λ Thời gian gói tin đến hệ thống hàng đợi với vận tốc λ trên một đơn vị thời gian(s)
Tốc độ rời khỏi TB μ Các gói tin rời khỏi hệ thống với tốc độ μ trên một đơn vị thời gian
Hiệu suất sử dụng dịch vụ p Là khoảng thời gian server bận do phải xử lý lý, đo bằng P= λ /μ
Độ dài TB Lw Là số gói nằm trong hàng đợi trung bình tại tất cả các thời điểm t
Thời gian đợi TB Tw Có hai định nghĩa:
Thứ nhất: được tính bằng tất cả thời gian gói tin đến xử lý (bao gồm cả các gói không phải chờ trong hàng đợi)
Thứ hai: chỉ tính TB thời gian các gói tin phải chờ trong hàng đợi
Thời gian phục vụ TB Ts Thời gian TB giữa thời điểm gửi gói tới server và thời điểm rời khỏi server
Độ dài hàng đợi TB Lq Số gói trung bình trong hệ thống, bao gồm các gói đang được sử dụng và các gói đang chờ trong hàng đợi.
Thời gian xếp hàng TB Tq Thời gian các gói ở trong hệ thống.
Trang 7Đề tài : Tìm hiểu các cơ chế hàng đợi : RED, FIFO trong mạng truyền thông
- Điều khiển tắc nghẽn là vấn đề quan trọng cần giải quyết trong việc truyền tin trong mạng Nó sử dụng hai cơ chế độc lập:
+ Cơ chế điều khiển vòng kín (Closed Loop control): điều khiển việc truyền các gói từ các nguồn đầu cuối tới đích.
+ Các thuật toán lập lịch vòng hở (opened loop control): ràng buộc độ ưu tiên được cấu hình từ trước và phân phối băng thông cho các kết nối.
Hệ thống điều khiển vòng kín bao gồm các thuật toán nguồn được điều khiển bởi các thuật toán kết nối Các thuật toán điều khiển kết nối hay
còn gọi là các thuật toán quản lý hàng đợi (hoặc quản lý hàng đợi tích cực AQM) Các thuật toán AQM bao gồm thuật toán loại bỏ đuôi, thuật toán phát hiện sớm ngẫu nhiên (RED) Thuật toán AQM thực hiện việc báo hiệu tới nguồn bằng việc đánh dấu các gói, thông báo tắc nghẽn tường minh (ECN) hay loại bỏ các gói.
Trang 8- Quá trình lập lịch của gói điều khiển trật tự truyền dẫn giống như phân bố băng thông tương ứng cho mỗi lớp dịch vụ Lập lịch bao gồm các thuật toán liên quan tới hàng đợi: hàng đợi FIFO, hàng đợi cân bằng có trọng số WFQ, và các thuật toán lập lịch như: thuật toán RR
Hình 1.2 : Tiến trình xử lý hàng đợi trong router
Trang 9TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
CHƯƠNG 2: KỸ THUẬT HÀNG ĐỢI FIFO
Trang 10- Hàng đợi hoạt động như một nơi lưu giữ các gói để tránh việc loại bỏ các gói không cần thiết khi có dấu hiệu của tắc nghẽn
- Khi có tắc nghẽn xảy ra và hàng đợi tràn thì tất cả các gói đến sẽ bị loại bỏ
- Không có hiện tượng bỏ đói hàng đợi.
- Hàng đợi FIFO không có sự phân loại vì tất cả các gói được thuộc về cùng một lớp
- Hàng đợi FIFO sử dụng một hàng đợi đơn cho bộ giao tiếp Vì chỉ có một hàng đợi nên không cần phân lớp để quyết định khi gói đi vào Và cũng không cần lập lịch ban đầu để cho hàng đợi lấy gói tiếp theo.
Trang 11TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
2.2 Lưu lượng,tốc độ và hình.
- Hàng đợi FIFO sử dụng cho mọi loại lưu lượng,cung cấp cách xếp hàng nhanh nhất và hiệu quả đối với các kết nối có độ tắc nghẽn nhỏ nhất.
- Tốc độ xử lý gói phải nhanh hơn tốc độ các gói đến hàng đợi IF0 thì mới tránh được hiện tượng tắc nghẽn trong mạng (hàng đợi IF1 rỗng)
- Chỉ quan tâm đến cách cấu hình chiều dài hàng đợi FIFO tránh tác động đến độ trễ và mất gói.
- Hàng đợi FIFO sử dụng kỹ thuật hủy gói cuối hàng đợi để quyết định khi nào bỏ gói hay cho gói vào hàng đợi
Trang 122.3 Ưu, nhược điểm của FIFO:
bị huỷ bỏ)
- Sự bùng nổ cao hay thấp gây ra tình trạng đầy hàng đợi FIFO Các gói đi vào một hàng đợi đầy phải chờ một thời gian dài trước khi chúng được truyền.
Trang 13TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
2.4 Tổng kết:
Hàng đợi FIFO dựa vào hệ thống đầu cuối để điều khiển tắc nghẽn thông qua cơ chế điều khiển tắc nghẽn.
Hàng đợi ưu tiên (PQ), hàng đợi cân bằng (FQ), hàng đợi có trọng số (WQ) là một trong các hàng đợi có thể thay thế hàng đợi FIFO khi không điều khiển được tắc nghẽn.
FIFO vẫn là một hàng đợi được sử dụng khá phổ biến và được sử dụng mặc định trong tất cả các router trên toàn thế giới.
Trang 14CHƯƠNG 3: PHƯƠNG PHÁP QUẢN LÝ HÀNG ĐỢI - THUẬT TOÁN RED
3.1 Mục đích, ý nghĩa:
3.1.1 Mục đích thiết kế thuật toán RED
Tránh tắc nghẽn Tránh đồng bộ toàn cục
- RED có thể điều khiển được kích thước hàng đợi trung bình do đó điều khiển được trễ hàng đợi.
3.1.2 Ý nghĩa của thuật toán RED:
- Dùng để tính toán kích thước hàng đợi trung bình, được quyết định bởi mức độ của các bó được cho phép đi vào hàng đợi của router
- Được sử dụng để tính toán xác suất đánh dấu gói và sau đó quyết định xem router đánh dấu các gói có thường xuyên không, để đưa ra các mức tắc nghẽn rõ ràng Mục đích đánh dấu các gói một cách đều đặn của các router là tránh đồng bộ trên toàn thể các luồng TCP, tránh lệch và điều khiển kích thước hàng đợi trung bình
Trang 15TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
3.2 Thuật toán RED
3.2.1 Nội dung thuật toán RED
- RED (Random Early Detection – Phát hiện sớm ngẫu nhiên) tính toán kích thước hàng đợi trung bình dựa trên bộ lọc thông thấp và trung bình dịch chuyển có trọng số tăng theo hàm mũ Kích thước hàng đợi trung bình được so sánh với hai giá trị ngưỡng: mức ngưỡng nhỏ nhất và mức ngưỡng lớn nhất.
Hình 3.1: Mối quan hệ giữa xác suất loại bỏ gói và kích thước hàng đợi trung bình.
Trang 16Mỗi gói đến được đánh dấu bằng một xác suất
Pa
Kích thước hàng đợi trung bình
Không có gói nào bị đánh đấu.
Mức ngưỡng nhỏ nhất
Tất cả các gói đến đều bị đánh dấu.
Mức ngưỡng
(Trong đó Pa là một hàm của kích thước hàng đợi trung bình)
- Tại mỗi thời điểm một gói bị đánh dấu, xác suất của gói bị đánh dấu phải tương xứng với băng thông được chia sẻ của các kết nối tại router.
- 3 trường hợp trên được xem như 3 pha của quá trình tắc nghẽn:
+ Pha thứ nhất : hoạt động bình thường
+ Pha thứ hai : tránh tắc nghẽn
+ Pha tắc nghẽn : điều khiển tắc nghẽn
Trang 17TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
Nhìn chung thuật toán RED được chia thành 2 phần riêng:
- Phần 1: Dùng để tính toán kích thước hàng đợi trung bình, được quyết định bởi mức độ của các bó được cho phép đi vào hàng đợi của router.
- Phần 2: Được sử dụng để tính toán xác suất đánh dấu gói và sau đó quyết định xem router đánh dấu các gói có thường xuyên không, để đưa ra các mức tắc nghẽn rõ ràng.
Hình 3.2: Mô tả mối quan hệ giữa maxp và độ chiếm giữ hàng đợi
Trang 183.2.2.Thuật toán chung cho router RED
For mỗi gói đến
Tính toán kích thước hàng đợi trung bình của hàng đợi avg
If minth ≤ avg < maxth
Tính toán xác suất Pa với Pa là xác suất đánh dấu các gói đến;
Else if maxth ≤ avg
Trang 19TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
Thuật toán chi tiết của RED:
Count ← -1
Avg ← 0
For mỗi gói đến
Tính toán kích thước hàng đợi mới avg;
if minth ≤ avg ≤ maxth
- RED là thuật toán được đưa ra và được điều khiển bởi các Gateway RED trong router Các gateway này được thực hiện việc loại bỏ tắc nghẽn bằng việc sử dụng thuật toán RED để tính toán các giá trị hàng đợi trung bình
tăng biến count tính toán xác suất Pa ;
Pa ← maxp (avg - minth) / (maxth - minth)
Pa ← Pb / (1 – count * Pb) Với xác suất Pa ;
Đánh dấu các gói đến
count ← 0else count ← -1 Khi hàng đợi bắt đầu đầy
q_time ← time
Trang 20- Cổng này có thể thông báo tới các kết nối bị tắc nghẽn, cũng như loại bỏ các gói đến cổng hoặc thiết lập các bit trong phần tiêu đề của các gói
- Khi kích thước hàng đợi trung bình vượt qua mức ngưỡng cho phép thì Gateway sẽ loại bỏ hoặc đánh dấu các gói đến bằng một hàm xác suất của kích thước hàng đợi trung bình Các gateway RED giữ cho kích thước hàng đợi trung bình thấp trong khi vẫn cho phép các gói đến dưới dạng
bó đi vào hàng đợi
- Trong suốt thời gian tắc nghẽn xác suất các gateway thông báo cho các kết nối giảm kích thước cửa sổ của nó phải cân xứng với băng thông của các kết nối được chia sẻ qua gateway
- Các gateway RED được thiết kế để hỗ trợ giao thức điều khiển tắc nghẽn lớp truyền tải như TCP.
Trang 21TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
3.3 Các tham số của RED:
3.3.1 Kích thước hàng đợi trung bình ( avg)
- Sau mỗi chu kỳ rỗi router tính toán kích thước hàng đợi trung bình như có m gói đã được truyền vào hàng đợi trong suốt chu kỳ đó.
Với : m là số lượng các gói có thể truyền trong suốt các chu kỳ rỗi.
Trang 223.3.2 Trọng số của hàng đợi ( wq)
wq quyết định thời gian của bộ lọc thông thấp và hằng số thời gian cho quá trình tính toán kích thước hàng đợi trung bình:
+ wq quá thấp : kích thước hàng đợi trung bình đáp ứng chậm so với tắc nghẽn trong suốt.
+ wq quá cao : kích thước hàng đợi trung bình gần với kích thước hàng đợi tức thời.
* Biên giới trên của wq
- Khi wq quá lớn thì các thủ tục sẽ không xác định được tắc nghẽn qua gateway Giả sử ban đầu hàng đợi rỗng ( avg = 0) và có L gói đến hàng đợi, sau khi có các gói, số gói trong hàng đợi sẽ tăng từ 0 đến L gói:
Trang 23TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
- Khi đưa ra giá trị minth : cho phép số lượng các bó của L gói đến gateway.
- Trọng số wq được lựa chọn để thỏa mãn :
Trang 24
* Biên dưới của wq
- Các gateway RED được thiết kế sao cho thuật toán RED luôn giữ kết quả tính toán kích thước hàng đợi trung bình nằm dưới mức ngưỡng nào
không loại bỏ được các mức nghẽn ban đầu.
3.3.3 Các giá trị ngưỡng: minth, maxth
- Giá trị tối ưu của minth, maxth phụ thuộc vào kích thước hàng đợi trung bình mong muốn
- Giá trị minth phụ thuộc chính xác vào việc cân bằng theo mong muốn giữa trễ trung bình thấp và sự tận dụng kết nối cao tại router.
- Giá trị maxth tối ưu phụ thuộc vào trễ trung bình lớn nhất được cho phép bởi gateway
Trang 25TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
3.3.4 Xác suất loại bỏ gói
Các biến ngẫu nhiên có hình thức
Pb : xác suất mất gói
Khi avg thay đổi từ minth đến maxth thì Pb thay đổi tuyến tính từ 0 đến maxp
Pb = maxp [(avg – minth) / (maxth – minth) ]
Yêu cầu : đánh dấu các gói tại các khoảng đều đặn
Khi có quá nhiều gói được đánh dấu gần nhau hoặc khoảng cách các gói đánh dấu quá dài thì có thể gây ra hiện tượng đồng bộ toàn thể các luồng TCP và các kết nối giảm kích thước cửa sổ tại cùng một thời điểm.
Trang 26 Các biến ngẫu nhiên đồng bộ
Pa : xác suất loại bỏ gói
Count : số lượng các gói đến ngay sau gói cuối cùng bị đánh dấu.
Pa = Pb / (1 – count Pb)
⇒
Trong đó :
Biến ngẫu nhiên đồng bộ trọng số [1,2,…,1/Pb ] với E [X ] = 1/(2*Pb) + 1.
i : biến chạy của các gói đến router ngay sau gói cuối cùng bị đánh dấu.
3.3.5 Xác suất loại bỏ gói lớn nhất ( maxp )
Trang 27TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
3.4 Ưu, nhược điểm của RED:
3.4.1 Ưu điểm
+ Quản lý kích thước hàng đợi linh hoạt.
+ RED có các chính sách gửi nhiều gói để nâng cao hiệu năng phục vụ và có sự chia sẽ giữa các luồng khác nhau, đồng thời tránh đồng bộ trên các luồng TCP.
+ Phát hiện sớm , tránh tắc nghẽn.
+ RED là giải pháp phòng tránh tắc nghẽn rất hữu dụng trong các mạng TCP tốc độ cao.
+ Điều khiển được kích thước hàng đợi trung bình.
+ Giảm tỷ lệ mất tin và sự thăng giáng độ trễ hàng đợi.
Trang 283.4.2 Nhược điểm
+ RED không đảm bảo lưu lượng được chia sẻ băng tần công bằng.
+ RED quản lý hàng đợi dựa trên kích thước trung bình của hàng đợi nên :
- khi tắc nghẽn xảy ra nhẹ hay maxp cao thì kích thước hàng đợi gần tới giá trị minth
- khi tắc nghẽn trong mạng nặng thì kích thước hàng đợi trung bình ≥ maxth
+ Khả năng thông qua trong thuật toán RED phụ thuộc nhiều vào tải lưu lượng và các tham số
+ RED chỉ hữu dụng trong các mạng TCP và việc đồng bộ gói tin sử dụng giao thức TCP
+ Tính toán phức tạp và nhiều thông số cần cấu hình để phù hợp với từng mạng khác nhau.
Trang 29TÌM HIỂU CÁC CƠ CHẾ HÀNG ĐỢI: RED, FIFO
KẾT LUẬN