NGHIÊN CỨU KỸ THUẬT QUẢN LÝ HÀNG ĐỢI TRONG MẠNG IP CHƯƠNG 3_2 potx

24 389 0
NGHIÊN CỨU KỸ THUẬT QUẢN LÝ HÀNG ĐỢI TRONG MẠNG IP CHƯƠNG 3_2 potx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TỐT NGHIỆP ĐẠI HỌC Đề tài: NGHIÊN CỨU KỸ THUẬT QUẢN LÝ HÀNG ĐỢI TRONG MẠNG IP CHƯƠNG 3: QUẢN LÝ HÀNG ĐỢI VÀ CÁC THUẬT TOÁN Hàm xác suất loại bỏ gói tin : 0 nếu q < max buffer size d(q) = 1 nếu q > max buffer size Khi các gói đến hàng đợi dưới dạng bó, các gói đến với tốc độ thay đổi λ (quá trình các gói đến là quá trình poisson) và mỗi bó có B gói tin, và phân bố mũ là µ. Các gói được đệm trong hàng đợi có dạng chuỗi Markov có phân bố dừng là π. Cho kích thước hàng đợilà K, ta có công thức tính xác suất loại bỏ gói của tail drop : P TD = π(K) +π(K-1)d(K-1) +… + π(1)d(1) Tail drop rất đơn giản, nhưng nó có hai điều hạn chế.  Trong một số trương hợp nó chỉ cho phép một kết nối đơn hoặc một vài kết nối độc quyền chiếm dụng không gian hàng đợi, ngăn cản các kết nối khác đến hàng đợi. Đây là hiện tượng chặn luồng từ các kết nối khác (lock out). Hiện tượng lock out là kêt quả của các ảnh hưởng đồng bộ và định thời của lưu lượng.  Tail drop cho phép các hàng đợi duy trì trạng thái đầy trong chu kì thời gian dài kể từ lúc có thông báo tắc nghẽn của tail drop xuất hiện thông qua hiện tượng mất gói khi hàng đợi bắt đầu đầy. Điều này rất quan trọng để giảm kích thước hàng đợi ở trạng thái không đổi trong quản lý hàng đợi. Do các gói đến hàng đợi dưới dạng bó nên việc loại bỏ gói trong một bó dễ gây ra loại đa gói. Điều này có thể dẫn đến đồng bộ trên toàn thể luồng. Khi hàng đợi đầy có hai cách loại bỏ gói tin đến :  Loại bỏ trong hàng đợi: nếu hàng đợi đầy mà có các gói tin hàng đợi thì việc loại bỏ gói tin sẽ xảy ra ngẫu nhiên bên trong hàng đợi. Một gói mới sẽ đến hàng đợi  Loại bỏ đầu hàng đợi : nếu hàng đợi đầy mà vẫn có gói tin đến hàng đợi thì router sẽ loại bỏ gói tin nằm tại vị trí đầu hàng đợi. Cả hai cách trên đều giải quyết được vấn đề lock out nhưng vẫn không giải quyết được vấn đề đầy hàng đợi. Trong mạng Internet hiện tại việc loại bỏ gói tin giống như cơ chế thông báo tắc nghẽn tới các node đích. Giải pháp cho vấn đề hàng đợi đầy là router loại bỏ các gói trước khi hàng đợi bắt đầu đầy, do đó các node cuối có thể phản ứng lại với tắc nghẽn trước khi bộ đệm tràn. 3.3.2 Thuật toán Blue Thuật toán quản lý hàng đợi Blue sử dụng độ mất gói và độ khả dụng liên kết để quản lý tắc nghẽn bằng cách phát hiện và điều chỉnh tốc độ của các gói bị loại bỏ hoặc bị đánh dấu. Nó thường sử dụng tham số xác suất P m để đánh dấu (bằng cách sửdụng ECN) hoặc loại bỏ các gói đã được xếp hàng. P m tăng ngay cả khi các gói đã được loại bỏ từ hàng đợi và giảm khi kết nối được sử dụng không đúng mức. Lượng tăng của P m thể hiện bởi δ 1 và lượng giảm của P m được thể hiện bằng δ 2 . Đại lượngnày luôn được cập nhật khi có sự thay đỏi của P m , khi kích thước hàng đợi vượt quá giá trị ngưỡng hiện tại L, tại tốc độ 1/freeze_time. Tham số freeze_time thể hiện khoảng thời gian giữa các lần cập nhật thành công P m Thuật toán Blue : Dựa trên độ mất gói : if ((now-last_update) > freeze_time) then P m = P m + δ 1 Last_update = now Dựa trên kết nối rỗi : if ((now – last_update) > freeze_time) then P m = P m – δ 2 Last_update = now P m : xác suất đánh dấu hoặc loại bỏ gói tin δ 1 : lượng tăng của P m δ 2 : lượng giảm của P m now : thời gian hiện hành last_update : thời gian cuối cùng P m thay đổi freeze_time : lượng thời gian giữa các thay đổi thành công Điểm khác biệt dễ thấy nhất giữa Blue và RED là Blue quản lý hàng đợi trực tiếp trên cơ sở độ mất gói và độ khả dụng của kết nối chứ không phải dựa trên kích thước hàng đợi như trong RED. Nếu hàng đợi tiếp tục lợi bỏ các gói để tránh hàng đợi bị tràn thì thuật toán Blue sẽ tăng giá trị P m do đó sẽ tăng tốc độ gửi lại các thông báo tắc nghẽn. Ngược lại nếu hàng đợi bắt đầu rỗng hoặc nếu có một tuyến nào đó rỗng thì Blue sẽ xác suất đánh dấu gói. Điều này cho phép Blue biết chính xác được tốc độ mà nó cần gửi thông báo tắc nghẽn phản hồi. Từ thuật toán trên ta thấy xác suất đánh dấu gói tin được cập nhật khi kích thước hàng đợi vượt quá giá trị chính xác nào đó. Việc chỉnh sửa này cho phép giải phóng không gian hàng đợi khi các gói chiếm dụng quá lâu trong hàng đợi, đồng thời cho phép hàng đợi điều khiển trễ hàng đợi khi kích thước hàng đợi được sử dụng quá lớn. Tham số freeze_time quyết định khoảng thời gian nhỏ nhất giữa hai lần update thành công của P m . Nó cho phép thay đổi xác suất đánh dấu trước khi giá trị được update lại. Giá trị này nên được ngẫu nhiên hoá để tránh đồng bộ trên toàn thể các luồng. 3.3.3 Thuật toán RED 3.3.3.1 Thuật toán Khi có dấu hiệu của tắc nghẽn xảy ra trong mạng, các bộ đệm của router được điền đầy và router bắt đầu loại bỏ các gói. Đối với các luồng lưu lượng TCP thì đây là tín hiệu để bắt đầu pha khởi đầu chậm và để giảm tải trong mạng và làm dịu tắc nghẽn. Có hai vấn đề nan giải trong mạng: thứ nhất các gói bị mất sẽ phải được truyền lại, việc này làm tăng tải trong mạng đồng thời phát sinh ra trễ các luồng lưu lượng. Một vấn đề thứ hai là đồng bộ trên toàn luồng. Với lưu lượng dạng bó, các hàng đợi được điền đầy và các gói đến sau bị loại bỏ. Kết quả là kết nối nhiều kết nối TCP bị ảnh hưởng và chyển sang chế độ khởi đầu chậm. Việc có nhiều kết nối TCP cùng chuyển sang chế độ khởi đầu chậm tại một thời điểm và cùng thoát khỏi chế độ này do đó sẽ gây ra thêm các bó lưu lượng lớn. Một giải pháp cho việc có nhiều lưu lượng dạng bó đến router là xây dựng các bộ đệm đủ lớn để có thể đệm được các bó lưu lượng này tránh việc phải loại bỏ các gói. Nhưng giải pháp này không khả thi bộ đệm càng lớn thì độ trễ hàng đợi càng lớn, làm giảm chất lượng dịch vụ và nếu có quá nhiều bó lưu lượng lớn đến kế tiếp nhau thì kích thước bộ đệm không đủ lớn giữ được tất cả các lưu lượng này, điều này dễ gây ra tắc nghẽn. Một giải pháp tối ưu để giải quyết tắc nghẽn là thông báo cho các luồng TCP tại thời điểm bắt đầu xảy ra tắc nghẽn để giảm tốc độ đến, nếu cần thiết thì giảm tốc độ các luồng khác. Do đó trong trường hợp tắc nghẽn thì giảm tải lưu lượng TCP trong mạng mà không được đồng bộ toàn luồng. Đây chính là giải pháp của thuật toán RED. Thuật toán RED lần đầu tiên được nghĩ ra bởi Sally Floyd và Van Jacobson cho chức năng quản lý hàng đợi tích cực (AQM), sau đó nó được chuẩn hoá lại theo yêu cầu của IETF. RED có khả năng chống đồng bộ trên toàn thể các luồng TCP, duy trì khả năng thông qua cao cũng như độ trễ thấp cùng với cách đối xử công bằng qua đa kết nối TCP. Mục đích thiết kế thuật toán RED  Tránh tắc nghẽn: RED được thiết kế để tránh tắc nghẽn hơn là giải quyết nó. Do đó RED được sử dụng để phát hiện ra tắc nghẽn ngay khi nó mới bắt đầu hình thành để duy trì mạng trong miền độ trễ thấp và độ thông qua  Tránh đồng bộ toàn cục: Khi có dấu hiệu tắc nghẽn xảy ra trong mạng, router sẽ phải quyết định xem kết nối nào để gửi thông báo phản hồi. Bằng việc phát hiện sớm tắc nghẽn và chỉ thông báo cho các kết nối khi cần thiết do đó tránh được hiện tượng đồng bộ toàn thể luồng TCP.  Đường biên của kích thước hàng đợi trung bình: 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. 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 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ũ (EWMA- Exponential Weighted Moving Average). 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.  Khi kích thước hàng đợi trung bình nhỏ hơn mức ngưỡng nhỏ nhất thì không có gói nào bị đánh dấu.  Khi kích thước hàng đợi trung bình lớn hơn mức ngưỡng tối đa cho cho phép thì tất cả các gói đến đều bị đánh dấu. Và trên thực tế các gói có thể bị loại bỏ. Khi các gói bị loại bỏ hoặc nếu tất cả các nguồn cùng hợp tác với nhau thì kích thước hàng đợi trung bình sẽ không vượt quá giá trị ngưỡng tối đa cho phép.  Khi kích thước hàng đợi trung bình nằm trong khoảng giá trị ngưỡng nhỏ nhất và giá trị ngưỡng lớn nhất thì mỗi gói đến đều được đánh dấu bằng một xác suất P a , P a 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. Drop=0 Non-zero and Increasing likely- hood of Drop min th max th 100% Max p 0 1 Guaranteed Drop Average Occupacy Drop Probability Hình 3.8 : 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 3 trường hợp trên được xem như 3 pha của quá trình 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 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. Nó đưa ra bản mô tả các chu kì khi hàng đợi rỗng (chu kì rỗi) bằng cách đánh giá số lượng m của các gói nhỏ có thể được truyền trong suốt chu kì rỗi bởi router. Sau mỗi chu kì rỗi router lại tính toán kích thước hàng đợi trung bình như thể m gói đã đến được hàng đợi rỗng trong suốt chu kì đó.  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. 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. Độ chiếm giữ hàng đợi lớn thì xác suất loại bỏ gói càng cao, độ chiếm giữ hàng đợi càng gần giá trị max th thì xác suất loại bỏ gói dần tiến tới giá trị max p Hình 3.9 : Mô tả mối quan hệ giữa max p và độ chiếm giữ hàng đợi 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 min th ≤ avg < max th Tính toán xác suất P a với P a là xác suất đánh dấu các gói đến; else if max th ≤ avg Đánh dấu các gói đến Else Chấp nhận các gói đến hàng đợi; Độ chiếm giữ hàng đợi Max p Khi kích thước hàng đợi nằm giữa mức ngưỡng min và max, thì mỗi gói đến sẽ được đánh dấu bằng xác suất P a , đây là một chức năng của kích thước hàng đợi trung bình. Tại mỗi thời điểm có một gói bị đánh dấu và xác suất gói bị đánh dấu từ một kết nối điển hình tỉ lệ với băng thông chia sẻ kết nối tại mỗi router. 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 hàng đợi không rỗng avg ← avg + w* (q- avg) Else m= (time – q_time)/s avg ← (1- w) m avg if min th ≤ avg < max th tăng biến count tính toán xác suất P a ; P a ←max p (avg - min th ) / (max th - min th ) P a ← P b / (1- count* P b ) với xác suất P a ; đánh dấu các gói đến count ← 0 else if max th ≤ avg Đánh dấu các gói đến count ← 0 else count ← -1 Khi hàng đợi bắt đầu đầy q_time ← time Các biến: avg : kích thước hàng đợi trung bình q_time : thời điểm bắt đầu hàng đợi rỗi count : số các gói đến ngay sau gói cuối cùng bị đánh dấu Tham số cố định: w q : trọng số hàng đợi min th : chiều dài ngưỡng nhỏ nhất của hàng đợi max th : chiều dài ngưỡng lớn nhất của hàng đợi max p : giá trị lớn nhất của P b s : thời gian truyền dẫn điển hình (của các gói nhỏ) q : kích thước hàng đợi hiện tại P a : xác suất đánh dấu gói hiện tại time : thời gian hiện tại Router tính toán avg tại mỗi gói đến sử dụng công thức: avg ← avg + w * (q - avg) [...]... trì việc sử dụng kết nối cao Bên trong các bộ đệm lớn này có sử dụng quản lý bộ đệm loại bỏ đằng đuôi, nếu xảy ra tắc nghẽn tại các router thì các gói sẽ bị trễ hàng đợi lớn Do đó quản lý bộ đệm loại bỏ đằng đuôi buộc mạng phải lựa chọn giữa độ sử dụng cao (yêu cầu kích thước hàng đợi lớn) hay độ trễ nhỏ (yêu cầu kích thước hàng đợi nhỏ) Còn quản lý hàng đợi sử dụng thuật toán RED thì tích cực hơn do... gói có thể chỉnh sửa chức năng loại bỏ gói Kích thước hàng đợi trung bình trong thuật toán WRED Router tự động quyết định các tham số được sử dụng trong các toán WRED Kích thước hàng đợi trung bình dựa trên kích thước hàng đợi trung bình trước đó và kích thước hàng đợi trung bình hiện tại Công thức: Average = (avg cũ * (1 – 2-n)) + (kích thước hàng đợi hiện tại * 2-n) n : tác nhân trọng số theo luỹ thừa... rộng của thuật toán RED ARED về cơ bản vẫn dựa trên thuật toán RED nhưng chỉ chỉnh sửa tham số maxp để giữ cho kích thước hàng đợi trung bình luôn nằm trong khoảng minth và maxth Thêm vào thuật toán ARED tự động thiết lập các tham số khác của RED, nó có thể tối thiểu hoá khả năng kích thước hàng đợi trung bình vượt quá giá trị maxth do đó hạn chế khả năng mất gói và sự dao động trong trễ hàng đợi Các... loại bỏ gói ngẫu nhiên bằng việc thay đổi kích thước hàng đợi trung bình Mục tiêu chính của RED là phối hợp giữa trung bình hoá chiều dài của hàng đợi (cung cấp lưu lượng dạng bó) và thông báo tắc nghẽn sớm (giảm kích thước hàng đợi trung bình) để đạt được trễ hàng đợi trung bình thấp và độ thông qua cao Tuy nhiên RED lại có mặt hạn chế: kích thước hàng đợi trung bình thay đổi theo mức tắc nghẽn và các... vào tính tự nhiên và dạng bó của lưu lượng truyền qua hàng đợi trên cơ sở RED Ta thấy khi kết nối xảy ra tức nghẽn nhẹ hay giá trị maxp cao thì kích thước hàng đợi trung bình sẽ gần giá trị minth, còn khi kết nối bị tắc nghẽn nặng, hay giá trị maxp thấp thì kích thước trung bình hàng đợi gần bằng hoặc lớn hơn maxth Kết quả là trễ hàng đợi hàng đợi trung bình rất nhạy với tải lưu lượng và tham số do... 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 quá 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... thước hàng đợi lớn nhất 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 Các gateway hoạt động hiệu quả nhất khi giá trị (maxth- minth) rộng hơn lượng tăng thêm kích thước hàng đợi trung bình được tính toán trong một thời gian Roundtrip Thường chọn maxth = 3 minth 3.3.4 Phát hiện sớm ngẫu nhiên có trọng số WRED 3.3.4.1 Khái niệm chung Đối với mỗi hàng đợi đưa ra nhà quản. .. trên  Biên giới trên của wq Nếu wq quá lớn thì các thủ tục sẽ không xác đinh được tắc nghẽn qua gateway Giả sử ban đầu hàng đợi rỗng (kích thước trung bình =0), sau khi có các gói, số gói trong hàng đợi sẽ tăng từ 0 đến L gói (giả sử có L gói đến hàng đợi) , lúc này kích thước hàng đợi trung bình được xác định như sau: L avgL =  iw L q (1  wq ) L i = wq(1-wq) i 1 L i 1 x  ( Lx  L  1) x L 1... Mục đích thứ cấp của RED nói riêng hay của quản lý hàng đợi nói chung là để cung cấp trễ hàng đợi trung bình thấp và độ thông qua cao Do đó để định giá ARED thì ta sử dụng các trọng số của trễ hàng đợi trung bình và độ thông qua Mục đích nữa của ARED là giới hạn số lượng các gói bị loại bỏ và tốc độ đánh dấu Tất cả các trọng số được xây dựng trên cơ sở router Trong khi các trọng số người sử dụng đầu...  1  iP ) i 0 = Pb với 1≤ n ≤ 1/ Pb b prob[X= n] = 0 với n> 1/Pb Với biến ngẫu nhiên đồng bộ trong số [1,2,3,…1/Pb] với E[X] =1/(2*Pb)+1/2 i: là biến chạy của các gói đến router ngay sau gói cuối cùng bị đánh dấu b Chiều dài hàng đợi trung bình và wq Cổng RED sử dụng bộ lọc thông thấp để tính toán kích thước hàng đợi trung bình Do đó các khoảng thời gian ngắn hạn sẽ tăng tới kích thước hàng đợi đây . TỐT NGHIỆP ĐẠI HỌC Đề tài: NGHIÊN CỨU KỸ THUẬT QUẢN LÝ HÀNG ĐỢI TRONG MẠNG IP CHƯƠNG 3: QUẢN LÝ HÀNG ĐỢI VÀ CÁC THUẬT TOÁN Hàm xác suất loại bỏ gói tin : 0 nếu. Khi hàng đợi đầy có hai cách loại bỏ gói tin đến :  Loại bỏ trong hàng đợi: nếu hàng đợi đầy mà có các gói tin hàng đợi thì việc loại bỏ gói tin sẽ xảy ra ngẫu nhiên bên trong hàng đợi. Một. Blue quản lý hàng đợi trực tiếp trên cơ sở độ mất gói và độ khả dụng của kết nối chứ không phải dựa trên kích thước hàng đợi như trong RED. Nếu hàng đợi tiếp tục lợi bỏ các gói để tránh hàng đợi

Ngày đăng: 06/08/2014, 00:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan