CHƯƠNG 1. TỔNG QUAN VỀ QOS VÀ 1 SỐ CƠ CHẾ QOS CƠ BẢN 1. Tổng quan về QoS [1,4] Chất lượng dịch vụ (QoS) đang trở thành một khía cạnh ngày càng quan trọng của cơ sở hạ tầng CNTT doanh nghiệp ngày nay. QoS không chỉ cần thiết cho truyền phát giọng nói và video qua mạng, đây còn là một yếu tố quan trọng trong việc hỗ trợ Internet vạn vật (IoT) đang phát triển.
Một ví dụ là trong lĩnh vực sản xuất, nơi các máy móc đang bắt đầu tận dụng mạng để cung cấp thông tin trạng thái thời gian thực về bất kỳ vấn đề nào có thể xảy ra. Bất kỳ sự chậm trễ nào trong việc xác định một vấn đề có thể dẫn đến những sai lầm trong sản xuất tốn hàng chục ngàn đô la mỗi giây. Với QoS, luồng dữ liệu trạng thái sản xuất có thể được ưu tiên trong mạng để đảm bảo luồng thông tin kịp thời. Một trường hợp sử dụng khác có thể là cho các dự án IoT quy mô lớn như tòa nhà thông minh hoặc thành phố thông minh.
Phần lớn dữ liệu được thu thập và phân tích, như nhiệt độ, độ ẩm và nhận thức vị trí, rất nhạy cảm với thời gian. Do độ nhạy thời gian này, dữ liệu này cần được xác định chính xác, đánh dấu và xếp hàng phù hợp. Tại sao QoS quan trọng? Một số ứng dụng chạy trên mạng rất nhạy cảm với độ trễ. Các ứng dụng này thường sử dụng giao thức UDP trái ngược với giao thức TCP.
Sự khác biệt chính giữa TCP và UDP là khi sử dụng TCP nếu bất kỳ gói tin nào bị mất, không đúng định dạng hoặc bị lỗi, giao thức TCP có thể truyền lại và sắp xếp lại các gói để tạo lại tệp trên PC đích. Nhưng đối với các ứng dụng UDP như cuộc gọi điện thoại IP, bất kỳ gói bị mất nào cũng không thể được truyền lại vì các gói thoại đi vào dưới dạng luồng được đặt hàng; truyền lại các gói là vô ích. Do đó bất kỳ gói bị mất hoặc bị trì hoãn cho các ứng dụng chạy giao thức UDP là một vấn đề thực sự. Trong ví dụ về cuộc gọi thoại, việc mất thậm chí một vài gói sẽ dẫn đến chất lượng giọng nói trở nên khó hiểu và không thể hiểu được.
Nếu mạng của bạn có nhiều băng thông và không có lưu lượng truy cập vượt quá những gì nó có thể xử lý, bạn sẽ không gặp vấn đề với mất gói, trễ hoặc biến thiên độ trễ - jitter. Nhưng trong nhiều mạng doanh nghiệp, sẽ có lúc các liên kết bị tắc nghẽn quá mức đến mức các bộ định tuyến và bộ chuyển 11 TIEU LUAN MOI download : skknchat@gmail.com mạch bắt đầu loại bỏ các gói vì các gói vào/ra nhanh hơn những gì các bộ định tuyến có thể được xử lý. Đây là nơi QoS xuất hiện. Thông thường, mạng thường phải truyền tải nhiều loại gói tin với các yêu cầu về hiệu năng là khác nhau.
Có thể loại gói tin đó là rất quan trọng trong dịch vụ này nhưng lại không quá quan trọng trong dịch vụ khác. Vì thế một cơ chế đảm bảo chất lượng dịch vụ được triển khai trong một mạng phải xem xét đến sự xung đột các yêu cầu về hiệu năng và cân bằng các yếu tố khác nhau để đạt được sự kết hợp tốt nhất giữa chúng. Các tham số hiệu suất QoS [1,4] Các tham số hiệu suất QoS thường được sử dụng bao gồm: − Thông lượng (throughput): số đơn vị thông tin tính trung bình được vận chuyển qua mạng trong một đơn vị thời gian. Đơn vị thông tin ở đây có thể là bit, byte hay gói số liệu.
− Thời gian trễ (delay time, delay): thời gian trung bình để vận chuyển một gói số liệu qua mạng từ nguồn tới đích. Tốc độ truyền tin càng lớn thì độ trễ càng nhỏ và ngược lại. Delay liên quan chặt chẽ tới băng thông. Với các ứng dụng giới hạn băng thông thì băng thông càng lớn độ trễ càng nhỏ.
− Jitter (biến thể của độ trễ): là sự khác nhau về độ trễ của các gói tin khác nhau trong cùng một dòng lưu lượng. Một số ứng dụng rất nhạy cảm với jitter là các ứng dụng thời gian thực như voice, video. − Tốc độ mất gói (Packet loss): Các gói có thể bị mất trong mạng vì chúng có thể bị hủy khi bộ đệm trong nút mạng tràn. Ngoài ra, theo quan điểm của ứng dụng thời gian thực, một gói tin đến đích sau một thời gian nhất định (giới hạn độ trễ) có thể là vô ích và do đó có thể được tính là bị mất.
Hầu hết các ứng dụng thời gian thực đều có mức dung sai nhất định đối với việc mất gói. Thông thường hơn là đặt tỷ lệ mất gói cụ thể phụ thuộc vào các cơ chế bảo vệ / phục hồi mất gói được sử dụng bởi các ứng dụng và đánh giá chủ quan của người dùng về mức chất lượng. Nó thường được coi là chấp nhận được nếu tốc độ mất gói của một luồng cụ thể có thể được giữ dưới mức dung sai cụ thể trong hầu hết thời gian. 12 TIEU LUAN MOI download : skknchat@gmail.
Các cơ chế QoS cơ bản 1. Cơ chế bỏ đuôi -DropTail Drop Tail là cách thức quản lý hàng đợi đơn giản, truyền thống dựa vào cơ chế FIFO và chỉ đặt độ dài tối đa cho mỗi hàng đợi tại bộ định tuyến. Theo cơ chế này, tất cả các gói tin đến được xếp vào hàng đợi; khi hàng đợi đầy thì các gói tin đến sau đều bị loại bỏ; để chọn các gói tin truyền đi thì gói tin nào đến trước được phục vụ trước. Trong Drop Tail, lưu lượng không được phân biệt, mỗi gói đều có cùng mức độ ưu tiên.
Drop Tail sẽ tiếp tục loại bỏ / thả gói tin cho đến khi hàng đợi có đủ chỗ cho các gói mới. Do đặc tính đơn giản, dễ triển khai mà DropTail đã được sử dụng nhiều năm trên thiết bị định tuyến ở Internet, tuy nhiên giải thuật này có những nhược điểm như sau: − Hiện tượng đầy Queue: các gói tin đến thiết bị định tuyến thường theo từng cụm chứ không phải lần lượt. Vì thế cơ chế hoạt động của DropTail khiến cho hàng đợi có thể dễ dàng bị đầy trong 1 khoảng thời gian dài, dẫn đến thời gian trễ trung bình của các gói tin lớn. Để tránh hiện tượng này thì với DropTail chỉ có cách là tăng bộ đệm của thiết bị định tuyến, cách này tỏ ra hết sức tốn kém và không hiệu quả.
− Không đảm bảo QoS: Với cơ chế DropTail thì không có cách nào để ưu tiên những gói tin quan trọng được truyền qua thiết bị định tuyến sớm hơn khi tất cả đang ở trong hàng đợi. Cơ chế loại bỏ ngẫu nhiên – RED [5] 1. Tổng quan RED (Random Early Detection of congestion; Random Early Drop) là một trong những thuật toán AQM đầu tiên được đề xuất vào năm 1993 bởi Sally Floyd và Van Jacobson, hai nhà khoa học của Phòng thí nghiệm Lawrence Berkeley thuộc Đại học Califonia, Mỹ. Điểm cơ bản nhất trong công trình của họ là cho rằng nơi hiệu quả nhất để phát hiện tắc nghẽn và phản ứng lại hiện tượng này chính là tại các gateway hay router.
Chỉ có gateway mới có cái nhìn đúng đắn về trạng thái của hàng đợi và có thể phân biệt đáng tin cậy giữa độ trễ lan truyền (propagation delay) và độ trễ hàng đợi (persistent queueing delay). 13 TIEU LUAN MOI download : skknchat@gmail.com RED gateway theo dõi độ dài trung bình của hàng đợi, dựa vào đó để phát hiện sớm dấu hiệu tắc nghẽn sắp xảy ra. RED gateway có thể loại bỏ gói tin ở gateway hoặc đánh dấu bằng cách đặt bit “có tắc nghẽn” trong header gói tin tùy thuộc vào giao thức tầng giao vận. Mục tiêu chính của RED là tránh tắc nghẽn bằng cách điều khiển kích thước hàng đợi trung bình nằm trong một vùng đủ nhỏ và ổn định.
Việc thực hiện mục tiêu này cũng giúp: tránh hiện tượng đồng bộ toàn cục, không chống lại các dòng lưu lượng có đặc tính đột biến và duy trì cận trên của kích thước hàng đợi trung bình ngay cả khi không có được sự hợp tác từ các giao thức tầng giao vận. Để đạt được các mục tiêu trên, các RED gateways phải làm được các việc sau: − Việc đầu tiên của cơ chế tránh tắc nghẽn tại gateway là phát hiện tắc nghẽn, duy trì mạng trong khu vực có độ trễ thấp và thông lượng cao. Kích thước hàng đợi trung bình nên được giữ ở mức thấp, trong khi các dao động trong kích thước hàng đợi thực tế phải được phép để phù hợp với lưu lượng truy cập bùng nổ và tắc nghẽn tạm thời. Bởi vì gateway có thể theo dõi kích thước của hàng đợi theo thời gian, nên gateway là tác nhân thích hợp để phát hiện tắc nghẽn.
Và gateway có một cái nhìn thống nhất về các nguồn khác nhau góp phần vào sự tắc nghẽn này đồng thời cũng là nơi thích hợp để quyết định những nguồn nào cần thông báo về sự tắc nghẽn này. − Việc thứ hai là thông báo tắc nghẽn tới nguồn phát. Việc này được thực hiện bằng cách đánh dấu và thông báo cho nguồn phát giảm lưu lượng xuống. Nếu tắc nghẽn được phát hiện trước khi bộ đệm gateway đầy, thì gateway đó không cần thiết phải loại bỏ các gói và thông báo tới các nguồn phát.
Việc đánh dấu và thông báo này có thể bao gồm việc loại bỏ một gói, đánh dấu bằng cách đặt bit trong header gói tin hoặc một số phương thức khác được hiểu bởi các giao thức tầng giao vận. − Việc thứ ba mà các RED gateway cần đạt được là tránh hiện tượng đồng bộ toàn cục và không chống lại các dòng lưu lượng có đặc tính đột biến. Với Drop Tail gateway và Random Drop gateway có sự sai lệch chống lại lưu lượng truy cập đột biến. Khi lưu lượng truy cập từ một kết nối cụ thể càng tăng thì càng có nhiều khả năng hàng đợi 14 TIEU LUAN MOI download : skknchat@gmail.com gateway sẽ bị tràn.
Còn hiện tượng đồng bộ toàn cục xảy ra khi tất cả các kết nối đồng loạt giảm kích thước cửa sổ, dẫn tới mất thông lượng trong mạng ở cùng một thời điểm. Để tránh hai hiện tượng này, các gateway có thể dùng các thuật toán riêng biệt để phát hiện tắc nghẽn và quyết định kết nối nào sẽ được thông báo tắc nghẽn tại gateway. RED gateway chọn ngẫu nhiên các gói tin đến để đánh dấu; với phương pháp này xác suất đánh dấu một gói tin từ một kết nối cụ thể gần như tỉ lệ thuận với phần băng thông được chia sẻ của kết nối đó tại gateway.