MỤC LỤC
Ta thấy rằng điều khiển chống tắc nghẽn mạng là một vấn đề phức tạp, nhất là khi mạng ngày càng phát triển rộng lớn, dịch vụ gia tăng nhanh, các dịch vụ mới ngày càng nhiều, số lượng người sử dụng tăng đột biến kèm theo vấn đề lưu lượng tăng vọt và biến đổi động. • Điều khiển tắc nghẽn mạng: trong lược đồ này, các hệ thống đầu cuối giảm tốc độ của luồng lưu lượng để tránh tắc nghẽn trong mạng, cơ chế này tương tự như điều khiển luồng đầu cuối, nhưng mục đích chính là để giảm tắc nghẽn trong mạng chứ không phải phía thu.
• Thời gian đáp ứng nhanh (Small response time): Thuật toán phải nhanh chóng phát hiện được tắc nghẽn và thời gian kể từ khi phát hiện tắc nghẽn đến khi có tác động của điều khiển chống tắc nghẽn phải càng nhanh càng. 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).
Có rất nhiều kỉ thuật hàng đợi: FIFO (first in first out), PQ (priority-hàng đợi ưu tiên),FQ (fair queue –hàng đợi cân bằng). 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.
Trog 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, 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 hơn 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. Vì vậy, nó không chỉ bảo đảm các lưu lượng có độ ưu tiên cao được truyền đi (các gói tin trong hàng đợi có độ ưu tiên cao có thể đòi 100% băng thông của liên kết với độ trễ nhỏ, và jitter nhỏ) mà còn có lợi trong việc hạn chế số lượng lưu lượng đi qua mạng nhằm hạn chế tắc nghẽn trên đường truyền. CQ xử lý lưu lượng bằng cách gán cho mỗi lớp lưu lượng một lượng không gian, kích thước hàng đợi và sau đó xử lý các gói tin theo thuật toán Roud- robin.
Hàng đợi tùy biến có 16 hàng đợi FIFO để lưu trữ các lưu lượng thuộc các lớp khác nhau, ngoài ra nó còn có một hàng đợi nữa, đó là hàng đợi số 0, hàng đợi này lưu trữ thông điệp của hệ thống như kiểm tra keepalive trên các interface để sẵn sàng gửi update khi có kết nối, tín hiệu vv.., nó được sử dụng cấu hình, nhưng không được khởi động lại.
Tuy nhiên, giống như hàng đợi PQ, CQ được cấu hình tĩnh và không tự động thích ứng với sự thay đổi của môi trường mạng. • Bước thứ nhất, WFQ sẽ xem xét giới hạn của tất cả các gói tin trong hàng đợi của tất cả các hàng đợi, giới hạn này gọi là hold-queue out limit. • Bước thứ hai, WFQ sẽ kiểm tra chiều dài của một hàng đợi mà trong đó những gói tin sẽ được đưa vào, giới hạn loại bỏ tắc nghẽn CDT (Congestive Discard Threshold) sẽ được kiểm tra với chiều dài thực sự của hàng đợi đó.
Một số hàng đợi trong WFQ có thể dùng giao thức dự trữ tài nguyên RSVP để giữ băng thông tối thiểu cho những dòng lưu lượng.
Nếu một gói tin đến hàng đợi và đạt tới giới hạn hold-queue out limit thì gói tin sẽ bị loại bỏ. Nếu chiều hàng đợi lớn hơn CDT, một gói tin sẽ bị loại bỏ, nhưng có thể không phải là những gói tin mới đi vào. Gói tin có chỉ số tuần tự (SN) cao nhất trong tất cả các hàng đợi của WFQ sẽ bị loại bỏ.
Trong các thiết bị định tuyến, phương pháp loại bỏ “đuôi” lưu lượng là phương pháp được sử dụng chủ yếu. Đây là kiểu hàng đợi thụ động, các gói tin tự động bị loại bỏ khi hàng đợi đầy. Ý tưởng chính của kỹ thuật tránh tắc nghẽn là dự đoán trước khả năng tắc nghẽn và đưa ra một số hoạt động điều khiển để chống lại hoặc giảm thiểu khả năng tắc nghẽn.
Kỹ thuật RED và WRED liên quan tới các hoạt động loại bỏ gói tin trong hàng đợi và không liên quan trực tiếp tới người sử dụng đầu cuối.
Chức năng chính của module dự báo tắc nghẽn là làm thế nào để ước lượng được hay đánh giá được hành vi của lưu lượng trong bộ đệm theo thời gian và phát hiện khả năng tắc nghẽn. Cách tiếp cận đơn giản nhất là dựa vào chiều dài hàng đợi (N) và xác định trạng thái tắc nghẽn dựa trên cơ sở hàng đợi bị đầy hay không bằng cách so sánh với kích thước bộ đệm hàng đợi (B). Một phương pháp khác được sử dụng để dự đoán tắc nghẽn dựa trên thuật toán thời gian trung bình của hàng đợi, đầu ra của module dự đoán tắc nghẽn là chiều dài hàng đợi trung bình trọng số (ηN).
Chế độ “cắt bớt phần đuôi” là “ảo” trên hàng đợi có nghĩa là hàng đợi thực thi chế độ này trong khi bộ đệm có thể chưa đầy hoàn toàn, bởi vì α không phải là phần trăm bộ đệm đầy thực sự.
Đường truyền vô tuyến băng thông thấp thường có độ trể lớn, rớt gói cao, thường bị tắc nghẽn trên đường truyền, do đó để tìm ra một thuật toán phù hợp với nó ngày càng bức thiết hơn, qua những phân tích ở trên ta thấy rằng thuật toán hàng đợi cân bằng có trọng số WFQ (Weighted Fair Queue) là phù hợp nhất để hạn chế quá trình tắc nghẽn trên đường truyền vô tuyến băng thông thấp nhất. Lưu lượng có thể được ưu tiên tùy theo các gói được đánh dấu, địa chỉ IP đích, địa chỉ gói tin IP, WFQ đánh các trọng số cho các luồng lưu lượng do đó các lưu lượng có mức băng thông thấp sẽ đạt được các mức ưu tiên bằng nhau. Ngoài các bit precedence thì WFQ có thể phân loại lưu lượng các luồng khác nhau dựa trên cơ sở mạng, mạng nguồn hoặc địa chỉ MAC… Có loại xử lý luồng: các phiên làm việc có băng thông cao và các phiên làm việc có băng thông thấp.
Ngoài ra WFQ có thể làm việc với RSVP (giao thức đặt trước tài nguyên) để xây dựng nên các cấu trúc dịch vụ tích hợp, hay liên kết với các lược đồ thông báo tắc nghẽn Frame Relay bằng việc chỉnh sửa các trọng số của hàng đợi để đáp ứng cho các thôn báo tắc nghẽn thuận (FECN) và thông báo tắc nghẽn ngược (BECN) , và một chút để xây dựng kiến trúc dịch vụ phân biệt sử dụng các bit IP Precedence.
WFQ sẽ sử dụng thuật toán Băm để chia cắt luồng lưu lượng ra thành các luồng nhỏ rồi đưa vào một số giới hạn các hàng đợi được lựa chọn bởi người sử dụng hay được cố định bởi mặc định. Lưu lượng băng thông thấp có độ ưu tiên hiệu quả hơn so với lưu lượng yêu cầu băng thông lớn và các lưu lượng băng thông lớn chia sẽ dịch vụ truyền dẫn tương ướng theo các trọng số được ấn định. Các luồng lưu lượng băng thông thấp bao gồm các phần chính lưu lượng, dịch vụ ưu đãi nhận, cho phép toàn bộ tài nguyên cung cấp được gửi trong khuôn mẫu mang tính thời gian.
WFQ cung cấp giải pháp cho các trường hợp yêu cầu thời gian nhất quán cho các người sử dùng mạng có tài năng và nhẹ giống như là không cung cấp thêm băng thông thừa.
Nếu một số lượng lớn luồng cùng diễn ra điều đó cũng giống như 2 luồng cùng vào một hàng đợi giống nhau. Chú ý thông thường việc phân phối băng thông trên một giao diện không thể vượt quá 75% băng thông của giao diện bởi vì 25% còn lại được sử dụng cho mục đích truyền tải các từ tiêu đề bao gôm tiêu đề lớp 2, thông tin định tuyến lưu lượng, và các dịch vụ đặc biệt. Tuy nhiên trong từng ứng dụng truyền tải ta có thể cấu hình vượt quá 75% băng thông cho tổng cộng cho tổng lưu lượng của các lớp hay các luồng nhưng vẫn phải đảm bảo phần băng thông khả dụng cho mục địch truyền tải các mào đầu nói trên.
Với Class-based DWFQ các gói được gán tới các hàng đợi khác nhau dựa trên nhóm QoS của chúng hoặc giá trị ưu tiên IP rong trường ToS. Một nhóm QoS là một sự phân lớp nội bộ của các gói, được thiết bị định tuyến dùng để xác định cách thức xử lý các gói tin trên những đặc tính QoS xác định. Có thể sử dụng CAR (Commited Access Rate) hoặc sự truyền bá chính sách QoS thông qua BGP (Border Gateway Protocol) để gán các gói tin vào các nhóm QoS khác nhau.
Ví dụ nếu 1lớp được gán trọng số là 50 thì trong suốt quá trình tắc nghẽn các gói tin từ lớp này được phân phối ít nhất 50 phần trăm băng thông khả dụng.
Trong suốt quá trình tắc nghẽn, DWFQ phân phối băng thông như nhau cho mỗi hàng đợi đang được gửi. Tuy nhiên nếu muốn phân loại các gói chỉ dựa trên 3 bits phõn quyền IP thỡ cú thể sử dụng DWFQ dựa trờn trường ToS. Trong suốt quá trình tắc nghẽn, mỗi nhóm được phân phối phần trăm băng thông tương ứng với trọng số của lớp đó.
Trong trường hợp các giao diện không có tắc nghẽn các hàng đợi có thể được gửi đi thông qua bất cứ phần băng thông khả dụng nào.
Sử dụng các kỹ thuật hàng đợi trong lab FIFO, PQ, WFQ để mô phỏng.