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

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

Đ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 3.1 Các kĩ thuật hàng đợi 3.1.1 Giới thiệu hàng đợi trong Router 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. Trong các mạng chuyển mạch kênh, 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 đó. Trong mạng chuyển mạch gói, 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. 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. Việc mô tả hàng đợi theo lý thuyết toán học rất phức tạp nên ta chỉ mô tả chúng theo mô hình đơn giản được sử dụng trong các mạng IP: Hình 3.1: Mô hình hàng đợi đơn giản trong mạng 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ý. Các tham số cơ bản liên quan tới hàng đợi: Bảng 3.1 : Bảng các tham số cơ bản của hàng đợi Server Queue Dispatching discipline departures w=items wait T w =wait time q= items in queuing system T q = queuing time T s = service time P= utilization arrivals λ =arrival rate Tham số Kí hiệu Chú thích 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 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 L w 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 T w 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 T s 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 L q 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 T q Thời gian các gói ở trong hệ thống. Các gói đến hàng đợi với tốc độ thay đổi λ và đây là một quá trình poisson, thời giạ phục vụ có phân bố mũ tốc độ µ (thực chất là thời gian trung bình mà các gói tin rời khỏi hàng đợi). Khi các gói đến hệ thống tăng thì hiệu suất sử dụng hệ thống cũng tăng, dẫn tới tắc nghẽn có khả năng xảy ra. Với p =1 thì các server bão hoà do đó tốc lớn nhất theo lý thuyết mà hệ thống có thể xử lý được là: λ max = 1/T s Tại λ max thì kích thước hàng đợi rất dài không thể kiểm soát được. Trong thực tế thời gian trả lời và những yêu cầu kích thước hàng đợi giới hạn tốc độ đầu vào của thông tin là 70-90% so với λ max theo lý thuyết. Tại các router và chuyển mạch trong phần lõi của kiến trúc các dịch vụ phân biệt của mạng Internet có các thuật toán lập lịch và quản lý hàng đợi. Ngày nay kiến trúc dịch vụ phân biệt bao gồm hàng đợi cân bằng có trọng số (WFQ) cùng kĩ thuật tách sớm có trọng số (WRED). Các kĩ thuật trên được sử dụng trong mạng Internet làm nhiệm vụ điều khiển tắc nghẽn và điều khiển luồng lưu lượng trong mạ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. Thuật toán nguồn này là bất kì giao thức nào được truyền tải trên mạng Internet (ví dụ: TCP, UDP, RTP) và chúng không nhất thiết phải có phản hồi đáp ứng với tắc nghẽn. 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. Các thuật toán lập lịch vòng mở quyết định xem gói nào sẽ được gửi kế tiếp. Thuật toán này quyết định trật tự các gói truyền dẫn trên cơ sở trật tự sắp xếp các gói đến và các lớp lưu lượng ưu tiên trong gói. Còn dịch vụ phân biệt sử dụng 3 bit trong tiêu đề mỗi gói để định nghĩa lớp. 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, thuật toán PS. Hình 3.2 : Tiến trình xử lý hàng đợi trong router Để hiểu rõ về các hàng đợi được sử dụng trong có chế điều khiển tắc nghẽn ta phải trả lời các câu hỏi:  Các gói sẽ được lắp đặt như thế nào trong hàng đợi.  Thứ tự hay cách thức nào mà các thiết bị mạng phục vụ các hàng đợi của chúng.  Các hoạt động nào của mạng để đối xử với các bó lưu lượng và hàng đợi bị tràn. Router được xem như hộp lớn, trong đó có các thành phần thực hiện việc truyền thông tin. Trong ví dụ này ta xét router có 2 giao diện. Gói tin đi từ mạng A tới mạng B. Mạng A tiếp xúc với router qua giao diện IF0, mạng B tiếp xúc với router qua giao diện IF1. Sau khi các gói được đưa đến từ giao diện IF0 sẽ được đặt vào trong hàng đợi queue 0 (hàng đợi đầu vào). Tiếp theo các gói đi vào trong router và được định hướng tới router kế tiếp dựa trên địa chỉ đích lưu giữ trong phần header của gói tin,một số gói tin đi ra từ hàng đợi queue 0 được đưa vào hàng đợi queue 1 kết nối với giao diện IF1. Hàng đợi queue1 còn gọi là hàng đợi đầu ra. Có rất nhiều kĩ thuật hàng đợi: FIFO (first in first out), PQ (priority queue- hàng đợ ưu tiên), FQ (fair queue-hàng đợi cân bằng). FIFO đây là kĩ thuật xếp hàng vào trước ra trước cơ bản. Các gói đến trước sẽ là các gói đầu tiên được xử lý. Khi hàng đợi đầy và có tắc nghẽn xảy ra thì các gói đến sẽ bị loại bỏ. 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. Do loại hàng đợi này rất đơn giản nhiều khi không điều khiển được tắc nghẽn nên ta thường xét các loại hàng đợi hiệu quả hơn: hàng đợi ưu tiên(PQ), hàng đợi cân bằng (FQ), hàng đợi có trọng số (WQ). 3.1.2 Hàng đợi FIFO (First In First Out) FIFO là hàng đợi mặc định được sử dụng trong hầu hết các router trên thế giới. Hoạt động của FIFO. Các gói đến từ các luồng khác nhau được đối xử công bằng bằng cách đưa vào các hàng đợi theo trật tự đến (gói nào đến trước sẽ được đưa vào trước và được phục vụ trước) Hình 3.3 : Hoạt động của hàng đợi FIFO 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ỏ. Hàng đợi FIFO được sử dụng hầu hết trong các router, nó đơn giản do không phải định cấu hình cho nó mà chỉ việc sử dụng luôn. Trong các router của cisco, khi không có kế hoạch hàng đợi nào khác được cấu hình, thì tất cả các giao diện(ngoại trừ các giao diện có tốc độ bằng hoặc nhỏ hơn luồng E1) đều sử dụng hàng đợi FIFO mặc định. 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), khi tốc độ xử lý quá thấp hơn so với tốc độ các gói vào, có nghĩa là tốc độ ra nhỏ hơn tốc gói vào (hàng đợi đầu ra dễ bị tràn) thì sẽ xảy ra tắc nghẽn khi có quá nhiều gói đi vào trong mạng, và khi vấn đề này xảy ra thì các gói đến sau sẽ bị loại bỏ 3.1.3 Hàng đợi ưu tiên PQ (Priority Queue) Kĩ thuật này được sử dụng trong trường hợp đa hàng đợi, mỗi hàng đợi có một mức ưu tiên khác nhau, hàng đợi nào có mức ưu tiên cao nhất sẽ được ưu tiên phục vụ trước. Khi có tắc nghén xảy ra thì các gói trong các hàng đợi có độ ưu tiên thấp sẽ bị loại bỏ. Có một vấn đề đối với kĩ thuật này: khi các hàng đợi có độ ưu tiên cao quá nhiều thì các gói trong hàng đợi có độ ưu tiên thấp sẽ không bao giờ được phục vụ. Các gói được phân loại và được sắp xếp vào hàng đợi tuỳ thuộc vào thông tin bên trong các gói. Tuy nhiên kĩ thuật này dễ bị lạm dụng bởi người sử dụng hay các ứng dụng do ấn định các độ ưu tiên không cho phép. Vậy PQ cho phép định nghĩa các luồng lưu lượng ưu tiên như thế nào trong mạng? Ta có thể cấu hình các độ ưu tiên lưu lượng, có thể định nghĩa một loạt các bộ lọc trên cơ sở các đặc điểm của gói qua router để sắp xếp các lưu lượng trong các hàng đợi. Hàng đợi có độ ưu tiên cao nhất sẽ được phục vụ trước cho đến khi hàng đợi rỗng, sau đó các hàng đợi có độ ưu tiên thấp hơn sẽ được phục vụ lần lượt. Câu hỏi đặt ra là PQ làm việc như thế nào? Trong quá trình truyền dẫn,các hàng đợi có độ ưu tiên cao được đối xử ưu tiên hơn các hàng đợi có mức ưu tiên thấp hơn, hay nói cách khác các, lưu lượng quan trọng sẽ được gán các mức ưu tiên cao và lưu lượng có mức ưu tiên cao nhất được truyền trước, còn lại các lưu lượng ít quan trọng hơn. Các gói được phân loại dựa trên các tiêu chuẩn phân loại của người sử dụng,và được đặt ở một trong số các hàng đợi đầu ra với các độ ưu tiên: độ ưu tiên cao, trung bình, bình thường (không được ưu tiên), ưu tiên thấp. Các gói không được ấn định độ ưu tiên sẽ được đưa tới các hàng đợi bình thường. Khi các gói được gửi tới giao diện đầu ra, các hàng đợi ưu tiên tại giao diện đó được quét các gói theo thứ tự độ ưu tiên giảm dần. Hàng đợi có độ ưu tiên cao nhất được quét đầu tiên, sau đó đến các hàng đợi trung bình và tiếp tục các hàng đợi có độ ưu tiên khác. Gói đứng đầu hàng đợi có độ ưu tiên cao nhất được truyền đầu tiên. Thủ tục này được lặp lại mỗi khi có một gói được truyền. Chiều dài lớn nhất của hàng đợi được định nghĩa theo chiều dài giới hạn. Khi một hàng đợi dài hơn chiều dài hàng đợi giới hạn thì các gói đến sau sẽ bị loại bỏ. Cơ chế hàng đợi đầu ra ưu tiên có thể được sử dụng để quản lý lưu lượng từ tất cả các giao thức trong mạng. PQ cung cấp cách đối sử ưu tiên cho các luồng lưu lượng có độ ưu tiên cao, chắc chắn rằng các luồng lưu lượng then chốt khi qua các kết nối WAN sẽ đạt được độ ưu tiên cao. Các gói được phân loại như thế nào trong kĩ thuật PQ Danh sách ưu tiên là một tập các luật lệ mô tả các gói sẽ được ấn định các độ ưu tiên như thế nào trong các hàng đợi. Ngoài ra nó cũng có thể mô tả độ ưu tiên mặc định hoặc giới hạn kích thước hàng đợi của các hàng đợi ưu tiên. Các gói được phân loại theo:  Loại giao thức hoặc giao thức con  Giao diện đầu vào  Kích thước các gói tin  Các Fragment  Danh sách truy nhập Tất cả các lưu lượng dùng để quản lý và điều khiển mạng đều được ấn định độ ưu tiên cao nhất để trong trường hớp có tắc nghẽn xảy ra thì chúng được ưu tiên truyền trước. Các lưu lượng không được ấn định mức ưu tiên nào thì được đưa vào các hàng đợi bình thường. PQ cung cấp thời gian đáp ứng nhanh hơn so với các kĩ thuật hàng đợi khác. Mặc dù có thể ấn định các độ ưu tiên cho các hàng đợi tại bất kì giao diện đầu nào nhưmg nó thường được sử dụng cho các lưu lượng có băng thông thấp. Để giải quyết vấn đề các hàng đợi có độ ưu tiên thấp không được xử lý khi có quá nhiều hàng đợi có độ ưu tiên cao thì ta có thể sử dụng các kiểu hàng đợi khác: hàng đợi cân bằng có trọng số (WFQ) hay hàng đợi cân bằng (FQ), đơn giản hơn ta có thể sử dụng cơ chế định dạng lưu lượng hay CAR để giới hạn tốc độ của lưu lượng có độ ưu tiên cao hơn. PQ sử dụng định cấu hình tĩnh do đó nó không thể thích ứng với các mạng thay đổi. Cơ chế xếp hàng ưu tiên là cơ chế đơn giản, có thể cung cấp các lớp dịch vụ phân biệt và cần ít nhất hai hàng đợi FIFO. Lấy một ví dụ sau: cho các hàng đợi FIFO và ta sẽ ấn định các mức ưu tiên khác nhau cho chúng: mức ưu tiên cao, mức ưu tiên trung bình, mức ưu tiên bình thường, mức ưu tiên thấp. Hình 3.4 : Cơ chế làm việc của PQ Sau đó cần hai cơ chế sau:  Một bộ phân loại có nhiệm vụ kiểm tra các phần header của gói tin để quyết định xem gói nào nên được đưa vào hàng đợi nào. [...]... không xử lý hiệu quả được hiện tượng này nên cách tốt nhất là sử dụng quản lý hàng đợi tích cực để quản lý các gói đi vào trong hàng đợi RED là một thuật toán quản lý hàng đợi tích cực cho phép quản lý hiệu quả quá trình các gói đi vào trong hàng đợi 3.2.2 Giảm chiếm giữ hàng đợi Chiếm giữ hàng đợi là hiện tượng các gói tin ở lâu trong hàng đợi mà chưa được xử lý Các gói tin chiếm giữ hàng đợi làm cho... tính của các loại hàng đợi cho phép sử dụng hiệu quả kĩ thuật này trong việc điều khiển tắc nghẽn và điều khiển lưu lượng Các loại hàng đợi này hầu hết cũng được sử dụng trong các thuật toán lập lịch 3.2 Các kĩ thuật liên quan tới hàng đợi Trong chương 2 chúng ta đã biết sơ qua về khái niệm quản lý hàng đợi, trong chương này sẽ đi sâu hơn Thực chất quản lý hàng đợi (hay quản lý hàng đợi tích cực- AQM)... dụng để cân bằng các hàng đợi Thêm vào đó một số hàng đợi có thể bị đầy hơn các hàng đợi khác và chúng yêu cầu phải được phục vụ nhiều hơn nhưng kĩ thuật hàng đợi cân bằng sẽ phục vụ mỗi hàng đợi công bằng 3.1.5 Hàng đợi cân bằng có trọng số WFQ (Weighted Fair Queue) Thuật toán hàng đợi cân bằng có trọng số là một thuật toán nằm trong họ các thuật toán hàng đợi cân bằng (FQ) Kĩ thuật này có thể được... làm rỗng các hàng đợi, bắt đầu bằng hàng đợi có độ ưu tiên cao nhất sau đó đến các hàng đợi trung bình, tiếp theo là các hàng đợi trung bình, cuối cùng là hàng đợi có độ ưu tiên thấp Các hàng đợi được phục vụ cho tới khi nào không còn gói nào trong chúng thì lúc đó bộ lập lịch mới chuyển sang hàng đợi khác 3.1.4 Hàng đợi cân bằng FQ (Fair Queue) Kĩ thuật này giải quyết vấn đề một số hàng đợi không được... xem là sự phối hợp của hai kĩ thuật hàng đợi cân bằng và hàng đợi ưu tiên Tất cả các hàng đợi đều được phục vụ do đó có thể tránh được tình trạng bỏ đói hàng đợi, tuy nhiên sẽ có một số hàng đợi được ưu tiên phục vụ nhiều hơn Một trọng số sẽ được gán cho một số hàng đợi để ấn định chỉ số ưu tiên cao hơn cho chúng Hình 3.5 : Hoạt động của hàng đợi WFQ Ví dụ: có một hàng đợi sẽ chiếm một nửa băng thông... pháp quản lý hàng đợi Quản lý hàng đợi là là một nhóm tổ hợp các phương pháp quản lý bộ đệm và lập lịch gói, đây là một trong những cơ chế cung cấp chất lượng dịch vụ (QoS) Quản lý bộ đệm quyết định việc phân phối bộ đệm và loại bỏ các gói đến theo một chính sách được quyết định trước Trong khi đó lập lịch cho phép quản lý băng thông hay nói cách khác là nó quyết định xem gói nào sẽ được đưa ra từ hàng. .. ra từ hàng đợi nào Do đó có rất nhiều các thuật toán được đưa ra trong kĩ thuật quản lý hàng đợi Đối với quản lý bộ đệm có các thuật toán : RED, Blue, PBS (chia sẻ bộ đệm từng phần), loại bỏ đuôi….quá trình lập lịch có nhiều phương pháp : RR, WFQ, EDF (Earliest Deadline First) Trong chương này chủ yếu đi sâu vào các phương pháp quản lý bộ đệm 3.3.1 Kĩ thuật Tail Drop Loại bỏ đuôi là kĩ thuật truyền... ra trong mạng Có hai cách đối xử với các gói bị đánh dấu này: cách thứ nhất đánh giá thấp độ ưu tiên của gói bằng cách ấn định chúng vào các hàng đợi khác nhau trên quá trình đánh dấu Cách thứ 2 hoán vị thuật toán quản lý hàng đợi để giữ cho độ chiếm giữ hàng đợi thấp Cách thứ nhất thường gây ra hiện tượng sắp xếp lại trong hàng đợi của cùng một lớp lưu lượng, hầu hết các giao thức đầu cuối trong mạng. .. thuật truyền thống nhằm quản lý chiều dài hàng đợi của router, thiết lập chiều dài hàng đợi lớn nhất cho mỗi hàng đợi, chấp nhận các gói đến cho tới khi đạt được chiều dài lớn nhất Các gói đến sau sẽ bị loại bỏ cho tới kích thước hàng đợi giảm khi xuống Xác suất loại bỏ gói 100% 0 max chiều dài hàng đợi Hình 3.7 : Lược đồ xác suất loại bỏ các gói trong Tail Drop Khi độ chiếm giữ hàng đợi nhỏ hơn giá trị... thước hàng đợi trung bình giảm  Tắc nghẽn dài hạn : là kết quả từ tốc độ trạng thái không đổi của tất cả các luồng khi chuyển qua hàng đợi Khi có tắc nghẽn trong mạng thì quản lý hàng đợi sẽ sử dụng cơ chế phản hồi cho các giao thức truyền tải để giữ cho trễ dài hạn giảm Về nguyên lý có thể gửi phản hồi theo hai cách : + Đánh dấu các gói trong nhóm + Loại bỏ các gói Để giảm độ chiếm giữ hàng đợi có . 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 3. 1 Các kĩ thuật hàng đợi 3. 1. 1 Giới thiệu hàng đợi trong Router Lý thuyết hàng đợi. trong mạng TCP không xử lý hiệu quả được hiện tượng này nên cách tốt nhất là sử dụng quản lý hàng đợi tích cực để quản lý các gói đi vào trong hàng đợi. RED là một thuật toán quản lý hàng đợi. hàng đợi này hầu hết cũng được sử dụng trong các thuật toán lập lịch. 3. 2 Các kĩ thuật liên quan tới hàng đợi Trong chương 2 chúng ta đã biết sơ qua về khái niệm quản lý hàng đợi, trong chương

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