[Chương 1,2] [chương 4]
Nhưng khi internet càng ngày càng phát triển và phát triển thêm các dịch vụ HTTP, Voice, Video… thì điều này sẽ làm cho chất lượng của các dịch vụ này giảm đi rõ rệt vì delay lớn, độ jitter lớn và không đủ băng thông để truyền, phương án tăng băng thông của mạng cũng không giải quyết được vấn đề này mà lại còn rất tốn kém
QoS (Quanlity of Service) là một khái niệm dùng để đề cập đến tất cả các khía cạnh liên quan đến hiệu quả hoạt động của mạng. QoS bao gồm hai thành phần chính:
+ Tìm đường qua mạng nhằm cung cấp cho dịch vụ được yêu cầu.
+ Duy trì hiệu lực hoạt động của dịch vụ.
Hai mô hình cung cấp chất lượng dịch vụ được sử dụng phổ biến ngày nay là:
+ Mô hình dịch vụ tích hợp IntServ (Intergrated Services).
+ Mô hình dịch vụ phân biệt DiffServ (Differentiated Services).
Có nhiều nguyên nhân giải thích tại sao mô hình IntServ không được sử dụng để theo kịp mức độ phát triển của Internet. Thay vào đó, IntServ chỉ được sử dụng phổ biến trong các mô hình mạng với quy mô nhỏ và trung bình. Trong khi đó, DiffServ lại là mô hình cung cấp chất lượng dịch vụ có khả năng mở rộng. Cơ chế hoạt động của mô hình này bao gồm quá trình phân loại lưu lượng và tại thành phần biên mạng, quá trình xếp hàng
tại mỗi nút mạng và xử lý huỷ gói trong lõi mạng. Trong đó, phần lớn các quản lý xử lý được thực hiện tại thành phần biên mạng mà không cần phải lưu giữ trạng thái của các luồng lưu lượng trong lõi mạng.
Các kĩ thuật QoS trong mạng IP.
Hình 3.1: Các kĩ thuật QoS trong mạng IPNguyên nhân thành công của giao thức IP chính là sự đơn giản của nó. Mọi tính năng phức tạp được cài đặt tại đầu cuối mạng còn mạng lõi thì đơn giản. Bộ định tuyến trong mạng sẽ căn cứ vào địa chỉ IP và các nút trong mạng để tìm nút mạng kế tiếp được nhận gói.
- Nếu hàng đợi dành cho nút mạng kế tiếp quá dài, thời gian trễ của gói dữ liệu sẽ lớn. Nếu hàng đợi đầy không còn chỗ trống gói dữ liệu sẽ bị hủy.
- Như vậy, mạng IP chỉ cung cấp mô hình dịch vụ “nỗ lực tối đa ”_best effort service_có nghĩa là mạng sẽ khai thác hết khả năng trong giới hạn cho phép, nhưng không đảm bảo độ trễ và mất mát dữ liệu. Vì vậy, khi có nhiều luồng lưu lượng truyền đi trong mạng và vượt quá khả năng của mạng, dịch vụ không bị từ chối nhưng chất lượng dịch vụ giảm: thời gian
trễ tăng, tốc độ giảm và mất dữ liệu. Do đó, mạng IP không thích hợp với những ứng dụng yêu cầu thời gian thực. Ngoài ra, với thông tin đa điểm (multicast) đồng thời phục vụ hàng triệu khách hàng thì hiện nay mạng IP không thực hiện được. Nếu có thể triển khai tốt thông tin quảng bá có thể tích hợp phát thanh truyền hình vào mạng IP.
- Sự ra đời các giao thức chất lượng dịch vụ QoS cung cấp cho mạng các tính năng giúp mạng có thể phân biệt được các lưu lượng có đòi hỏi thời gian thực với các lưu lượng có độ trễ, mất mát hay độ biến động trễ (jitter). Băng thông sẽ được quản lý và sử dụng hiệu quả để có thể đáp ứng những yêu cầu về chất lượng của các luồng lưu lượng. Mục tiêu của QoS là cung cấp một số mức dự báo và điều khiển lưu lượng.
- Trong các mạng số liệu, QoS được đánh giá qua các tham số chính sau:
• Độ sẵn sàng của dịch vụ
• Độ trễ (delay).
• Độ biến động trễ (jitter)
• Thông lượng hay băng thông
• Tỷ lệ tổn thất gói (packet loss rate): tỷ lệ các gói bị mất, bị hủy, và bị lỗi khi đi trong mạng.
Hiện nay, có hai loại chất lượng dịch vụ cơ bản:
• Dành trước tài nguyên (Resource Reservation) với mô hình “Tích hợp dịch vụ” IntServ (Intergrated Service). Tùy theo yêu cầu của dịch vụ và chính sách quản lý băng thông mà mạng sẽ cung cấp tài nguyên phục vụ cho từng ứng dụng.
• Sự ưu tiên (Prioritization) với mô hình các “dịch vụ phân biệt” ( DiffServ-Differentiated Service). Lưu lượng vào mạng được phân loại và được cung cấp theo chỉ tiêu của chính sách quản lý băng thông. Chất lượng dịch vụ được áp dụng cho từng luồng dữ liệu riêng biệt hoặc một nhóm luồng. Luồng được xác định dựa vào 5 thông tin:
• giao thức lớp vận chuyển.
• địa chỉ IP nguồn.
• địa chỉ IP đích.
• chỉ số cổng nguồn.
• chỉ số cổng đích.
3.1 CẤU TRÚC QoS
Khi nói đến QoS ta sẽ nghĩ ngay tới các kĩ thuật hàng đợi như: Weighted Fair Queuing (WFQ), hay Custom Queuing (CQ), nhưng thật ra nó có nhiều hơn thế, ngoài hàng đợi QoS còn có các kỉ thuật khác gồm: nén (compression), policing và shaping, loại gói (drop packet), và một số khác.
Vì sao chúng ta lại cần QoS?
Như trước đây, khi mà nhu cầu sử dụng mạng của con người chưa cao bởi vì sự mới mẻ, chưa phổ biến và các ứng dụng chưa nhiều thì lưu lượng trên mạng có thể đáp ứng cho hầu hết các ứng dụng lúc bây giờ, nhưng khi nó trở nên phổ biến số người dùng nhiều và các ứng dụng cũng tăng lên thì tài nguyên băng thông mạng trở nên thiếu hụt, điều này sẽ dẫn tới việc mất gói đáng kể khi truyền qua mạng, Để khắc phục điều này thì QoS ra đời với nhiệm vụ ưu tiên cho các ứng dụng thời gian thực bằng cách cấp phát thêm băng thông và đặt chúng ở mức ưu tiên cao hơn các ứng dụng khác.
Nếu một mạng không áp dụng QoS thì sẽ xảy ra các trường hợp như sau:
Hình 3.2: Dữ liệu với không QoSQoS sẽ ảnh hưởng tới các thông số mạng như: Bandwidth (Băng thông), Delay (trễ), Jitter (Bất ổn định), Loss (độ mất gói).
Các mạng ngày nay đền phải sử dụng QoS để đảm bảo chất lượng dịch vụ, tuy nhiên với mỗi ứng dụng thì cần có các mức độ QoS khác nhau
Hình 3.3: Mức độ yêu cầu QoS cho các loại dữ liệuCác thông số QoS
+ Độ trễ toàn trình “Delay”: trễ quá mức từ đầu cuối đến đầu cuối khiến cuộc đàm thoại bất tiện và mất tự nhiên. Mỗi thành phần trong tuyến truyền dẫn: máy phát, mạng lưới, máy thu đều tham gia làm tăng độ trễ. ITU-TG.114 khuyến cáo độ trễ tối đa theo một hướng là 150 ms để đảm bảo thoại có chất lượng cao.
+ Độ trễ pha “Jitter”: định lượng độ trễ trên mạng đối với từng gói khi đến máy thu. Các gói được phát đi một cách đều đặn từ Gateway bên trái đến được Gateway bên phải ở các thời khoảng không đều. Jitter quá lớn sẽ làm cho cuộc đàm thoại đứt quãng và khó hiểu. Jitter được tính trên thời gian đến của các gói kế tiếp nhau. Bộ đệm Jitter được dùng để giảm tác động “trồi sụt” của mạng và tạo ra dòng gói đến đều đặn hơn ở máy thu.
Công thức tính độ jitter: Di = ( Ri – Si ) - ( Ri-1 – Si-1 )
Di = ( Ri – Ri-1 ) – ( Si – Si-1 )
AvgJitter =
+ Độ mất gói “Packet Loss”: có thể xảy ra theo cụm hoặc theo chu kỳ do mạng bị nghẽn liên tục. Mất gói theo chu kỳ đến 5-10% số gói phát ra có thể làm chất lượng thoại xuống cấp đáng kể. Từng cụm gói bị mất không thường xuyên cũng khiến đàm thoại gặp khó khăn.
+ Mất trình tự gói ”Sequence Error”: nghẽn trên mạng chuyển mạch gói có thể khiến gói chọn nhiều tuyến khác nhau để đi đến đích. Gói có thể đến đích không đúng trình tự làm cho tiếng nói bị đứt khoảng.
Các bước thực hiện QoS:
Hình 3.4: Các bước thực hiện QoS
3.1.1: Dịch vụ tích hợp IntServĐứng trước nhu cầu ngày càng tăng trong việc cung cấp dịch vụ thời gian thực (thoại, video) và băng thông cao (đa phương tiện), dịch vụ tích hợp IntServ đã ra đời. Đây là sự phát triển của mạng IP nhằm đồng thời cung cấp dịch vụ truyền thống Best Effort và các dịch vụ thời gian thực. Sau đây là những động lực thúc đẩy sự ra đời của mô hình này:
+ Dịch vụ cố gắng tối đa không còn đủ đáp ứng nữa, ngày càng có nhiều ứng dụng khác nhau, các yêu cầu khác nhau về đặc tính lưu lượng được triển khai, đồng thời người sử dụng
cũng yêu cầu chất lượng dịch vụ ngày càng cao hơn. Các ứng dụng đa phương tiện ngày càng xuất hiện nhiều.
+ Mạng IP phải có khả năng hỗ trợ không chỉ đơn dịch vụ mà còn hỗ trợ đa dịch vụ của nhiều loại lưu lượng khác nhau từ thoại, số liệu đến video. Tối ưu hóa hiệu suất sử dụng mạng và tài nguyên mạng.
+ Đảm bảo hiệu quả sử dụng và đầu tư. Tài nguyên mạng sẽ được dự trữ cho lưu lượng có độ ưu tiên cao hơn, phần còn lại sẽ dành cho số liệu best effort. Cung cấp dịch vụ tốt nhất.
+ Mô hình IntServ cho phép nhà cung cấp mạng tung ra những dịch vụ tốt nhất, khác biệt với các đối thủ cạnh tranh khác.
Hình 3.5: Mô hình mạng IntServ- Mô hình IntServ được IETF giới thiệu vào giữa thập niên 90 với mục đích hỗ trợ chất lượng dịch vụ từ đầu cuối tới đầu cuối. Các ứng dụng nhận được băng thông đúng yêu cầu và truyền đi trong mạng với độ trễ cho phép.
- Trên thực tế giao thức RSVP là giao thức duy nhất dùng để báo hiệu cho mô hình IntServ. Vì thế đôi khi người ta lầm lẫn dùng RSVP để nói về IntServ.Thật ra, IntServ là kiến trúc hỗ trợ chất lượng dịch vụ mạng, còn RSVP là giao thức báo hiệu cho IntServ.
- Ngoài giao thức báo hiệu, mô hình tích hợp dịch vụ còn định nghĩa thêm một số lớp dịch vụ.
- Một ứng dụng sẽ xác định đặc tính của luồng lưu lượng mà nó đưa vào mạng đồng thời xác định một số yêu cầu về mức dịch vụ mạng. Đặc tính lưu lượng Tspec (Traffic Specification) và yêu cầu mức chất lượng dịch vụ Rspec (Required Specification).
Vì thế các bộ định tuyến phải có khả năng thực hiện các công việc sau:
• Kiểm soát ( bằng các policing): kiểm tra TSpec của luồng lưu lượng; nếu không phù hợp thì loại bỏ luồng.
• Điều khiển chấp nhận: kiểm tra xem tài nguyên mạng có đáp ứng được yêu cầu của ứng dụng hay không. Nếu không thể đáp ứng, mạng sẽ từ chối.
• Phân lớp (Classification): phân loại gói dữ liệu căn cứ vào mức yêu cầu chất lượng dịch vụ của gói.
• Hàng đợi và lập lịch (queuing and scheduling): đưa gói dữ liệu vào hàng đợi tương ứng và quyết định hủy gói dữ liệu nào khi xảy ra xung đột.
a. Các lớp dịch vụ
Có hai loại dịch vụ: đảm bảo dịch vụ (Guaranteed Service) và kiểm soát tải (Control load service).
a.1 Đảm bảo dịch vụ
- Cho phép giới hạn thời gian chuyển tiếp các gói dữ liệu đến đích trong một khoảng thời gian nhất định, đảm bảo số dữ liệu không bị loại bỏ khi hàng đợi đầy.
- Thông tin Tspec phải bao gồm các thông số như: tốc độ đỉnh, kích thước lớn nhất của gói dữ liệu. Trong khi đó thông số quan trọng nhất của Rspec là tốc độ dịch vụ. Thông số này cho phép xác định băng thông mà lưu lượng cần khi đi trong mạng. Thông số này
cùng với các thông số trong Rspec cho phép xác định thời gian trễ lớn nhất có thể chấp nhận được của dữ liệu.
- Nhược điểm của lớp dịch vụ này là hiệu quả sử dụng tài nguyên mạng thấp vì nó đòi hỏi mỗi luồng lưu lượng có hàng đợi riêng.
a.2 Kiểm soát tải
- Các ứng dụng của dịch vụ này có thể chấp nhận khả năng mất dữ liệu và thay đổi độ trễ ở một mức độ nhất định. Luồng dữ liệu khi đi vào mạng sẽ được kiểm tra đối chiếu với những đặc tả lưu lượng Tspec đã được đăng ký. Nếu không phù hợp với các đặc tả đã được đăng ký trước thì dữ liệu sẽ được chuyển tiếp theo phương thức “nỗ lực tối đa”.
b. Giao thức dành trước tài nguyên RSVP
- RSVP là giao thức báo hiệu cung cấp thủ tục để thiết lập và điều khiển quá trình chiếm giữ tài nguyên, hay nói cách khác RSVP cho phép các chương trình ứng dụng thông báo cho mạng những yêu cầu về mức chất lượng dịch vụ; và mạng sẽ hồi đáp chấp nhận hoặc không chấp nhận yêu cầu đó.
- Các bản tin RSVP được các bộ định tuyến hay các bộ chuyển mạch trên liên kết giữa hai đầu cuối gửi và nhận trao đổi với nhau để đáp ứng yêu cầu về mức chất lượng dịch vụ của ứng dụng.
- RSVP có 2 bản tin cơ bản: bản tin Path (hay Request) và bản tin Resv. Bản tin Path (hay Request) mang thông tin về đặc tả luồng lưu lượng Tspec và các thông tin như: địa chỉ IP của nút gửi, địa chỉ IP nút nhận, chỉ số cổng UDP. Và khi nhận được bản tin Path (hay Request), nút mạng đích sẽ gửi lại bản tin Resv. Bản tin Resv sẽ gửi kèm theo phần mô tả yêu cầu RSpec chỉ định kiểu dịch vụ tích hợp là kiểm soát tải hay đảm bảo dịch vụ; ngoài ra còn có dấu hiệu nhận dạng luồng (flow descriptor) mà mỗi bộ định tuyến dùng để nhận diện mỗi phiên chiếm giữ tài nguyên.
- Khi nhận được bản tin Resv, mỗi bộ định tuyến trung gian sẽ tiến hành quá trình điều khiển chấp nhận (admission control). Nếu yêu cầu không được chấp nhận, do không đủ tài nguyên mạng thì bộ định tuyến sẽ báo lỗi về phía đầu thu. Nếu yêu cầu được chấp
nhận thì bộ định tuyến sẽ gửi bản tin Resv đến bộ định tuyến đã gửi bản tin Path (hay Request) cho nó.
- Ngoài ra, RSVP là giao thức mềm, có nghĩa là các bản tin Path (hay Request) và Resv sẽ được gửi lại sau khoảng thời gian nhất định để duy trì lâu dài sự chiếm giữ tài nguyên. Nếu sau khoảng thời gian này không có bản tin nào gửi đi, sự dự trữ tài nguyên sẽ bị xóa bỏ.
- Mặt khác, lưu lượng RSVP có thể đi qua bộ định tuyến không hỗ trợ RSVP. Tại những bộ định tuyến này dịch vụ được phục vụ theo mô hình nỗ lực tối đa.
- Nói tóm lại, RSVP đóng vai trò quan trọng trong quá trình triển khai việc chuyển tải nhiều dịch vụ như: âm thanh, hình ảnh và dữ liệu trong cùng một hạ tầng mạng. Các ứng dụng có thể lựa chọn nhiều mức chất lượng dịch vụ khác nhau cho luồng lưu lượng của mình.
c. Kiến trúc IntServ
- Cấu trúc của các bộ định tuyến và các bộ chuyển mạch có hỗ trợ RSVP trong mạng
Hình 3.6: Mô hình dịch vụ IntServ- Như vậy ta thấy cấu trúc gồm các khối:
• Khối điều khiển lưu lượng bao gồm: bộ phân loại (Classifier), bộ lập lịch gói (scheduler).
• Khối điều khiển thu nhận và thiết lập dự trữ (set up).
- Đầu tiên các ứng dụng đưa ra yêu cầu lớp dịch vụ: đảm bảo dịch vụ hoặc kiểm soát tải đồng thời đặt đường dẫn và chiếm giữ tài nguyên mạng cho việc truyền dữ liệu. Khối điều khiển thu nhận sẽ xem xét có thể đáp ứng được các yêu cầu mà dịch vụ đưa ra hay không. Bộ phân loại tiến hành phân loại và đưa các gói dữ liệu nhận được vào hàng đợi riêng. Bộ lập lịch sẽ lập cách xử lý để đáp ứng yêu cầu về chất lượng dịch vụ.
Hình 3.7: Trao đổi thông tin với IntServ
Hình 3.8: Trao đổi thông tin với IntServHình vẽ trên là cách thức hoạt động của RSVP, các ứng dụng đưa ra yêu cầu mức chất lượng dịch vụ dành cho luồng lưu lượng xác định qua giao diện dịch vụ ứng dụng. Bộ điều khiển thu nhận và thiết lập dự trữ đáp ứng yêu cầu của các ứng dụng bằng cách tạo ra các bản tin của giao thức RSVP yêu cầu chiếm giữ tài nguyên. Bản tin này sẽ đi
qua các bộ định tuyến nằm trên đường dẫn từ đầu gửi đến đầu thu. Tại mỗi bộ định tuyến, khối điều khiển thu nhận sẽ tiến hành quá trình điều khiển chấp nhận kết nối, quyết định xem có thể đáp ứng được yêu cầu chất lượng dịch vụ mà ứng dụng đưa ra hay không. Nếu được, bộ định tuyến sẽ dựa vào thông tin trong bản tin RSVP để cấu hình cho bộ điều khiển lưu lượng.
- Chúng ta đã xem xét kiến trúc của mô hình tích hợp dịch vụ cũng như một giao thức rất quan trọng RSVP. Mô hình này cho phép triển khai các ứng dụng thời gian thực và lưu lượng truyền thông trên cùng một hạ tầng mạng.
CHƯƠNG 3: TỔNG QUAN QoS
Trước đây, khi mà internet chủ yếu là truyền data thì người ta không cần quan tâm đến việc phân biệt và ưu tiên cho các gói tin bởi vì lúc này băng thông mạng và các tài nguyên khác đủ để cung cấp cho các ứng dụng trong mạng, vì vậy các ISPs sẽ cung cấp cho khách hàng của họ dịch vụ best-effort (BE) khi đó tất cả các khách hàng sẽ được đối sử như nhau họ chỉ khác nhau ở loại kết nối. Đây là dịch vụ phố biến trên mạng Internet hay mạng IP nói chung. Các gói thông tin được truyền đi theo nguyên tắc “đến trước được phục vụ trước” mà không quan tâm đến đặc tính lưu lượng của dịch vụ là gì. Điều này dẫn đến rất khó hỗ trợ các dịch vụ đòi hỏi độ trễ thấp như các dịch vụ thời gian thực hay video. Cho đến thời điểm này, đa phần các dịch vụ được cung cấp bởi mạng Internet vẫn sử dụng nguyên tắc Best Effort này.Nhưng khi internet càng ngày càng phát triển và phát triển thêm các dịch vụ HTTP, Voice, Video… thì điều này sẽ làm cho chất lượng của các dịch vụ này giảm đi rõ rệt vì delay lớn, độ jitter lớn và không đủ băng thông để truyền, phương án tăng băng thông của mạng cũng không giải quyết được vấn đề này mà lại còn rất tốn kém
QoS (Quanlity of Service) là một khái niệm dùng để đề cập đến tất cả các khía cạnh liên quan đến hiệu quả hoạt động của mạng. QoS bao gồm hai thành phần chính:
+ Tìm đường qua mạng nhằm cung cấp cho dịch vụ được yêu cầu.
+ Duy trì hiệu lực hoạt động của dịch vụ.
Hai mô hình cung cấp chất lượng dịch vụ được sử dụng phổ biến ngày nay là:
+ Mô hình dịch vụ tích hợp IntServ (Intergrated Services).
+ Mô hình dịch vụ phân biệt DiffServ (Differentiated Services).
Có nhiều nguyên nhân giải thích tại sao mô hình IntServ không được sử dụng để theo kịp mức độ phát triển của Internet. Thay vào đó, IntServ chỉ được sử dụng phổ biến trong các mô hình mạng với quy mô nhỏ và trung bình. Trong khi đó, DiffServ lại là mô hình cung cấp chất lượng dịch vụ có khả năng mở rộng. Cơ chế hoạt động của mô hình này bao gồm quá trình phân loại lưu lượng và tại thành phần biên mạng, quá trình xếp hàng
tại mỗi nút mạng và xử lý huỷ gói trong lõi mạng. Trong đó, phần lớn các quản lý xử lý được thực hiện tại thành phần biên mạng mà không cần phải lưu giữ trạng thái của các luồng lưu lượng trong lõi mạng.
Các kĩ thuật QoS trong mạng IP.
Hình 3.1: Các kĩ thuật QoS trong mạng IP
- Nếu hàng đợi dành cho nút mạng kế tiếp quá dài, thời gian trễ của gói dữ liệu sẽ lớn. Nếu hàng đợi đầy không còn chỗ trống gói dữ liệu sẽ bị hủy.
- Như vậy, mạng IP chỉ cung cấp mô hình dịch vụ “nỗ lực tối đa ”_best effort service_có nghĩa là mạng sẽ khai thác hết khả năng trong giới hạn cho phép, nhưng không đảm bảo độ trễ và mất mát dữ liệu. Vì vậy, khi có nhiều luồng lưu lượng truyền đi trong mạng và vượt quá khả năng của mạng, dịch vụ không bị từ chối nhưng chất lượng dịch vụ giảm: thời gian
trễ tăng, tốc độ giảm và mất dữ liệu. Do đó, mạng IP không thích hợp với những ứng dụng yêu cầu thời gian thực. Ngoài ra, với thông tin đa điểm (multicast) đồng thời phục vụ hàng triệu khách hàng thì hiện nay mạng IP không thực hiện được. Nếu có thể triển khai tốt thông tin quảng bá có thể tích hợp phát thanh truyền hình vào mạng IP.
- Sự ra đời các giao thức chất lượng dịch vụ QoS cung cấp cho mạng các tính năng giúp mạng có thể phân biệt được các lưu lượng có đòi hỏi thời gian thực với các lưu lượng có độ trễ, mất mát hay độ biến động trễ (jitter). Băng thông sẽ được quản lý và sử dụng hiệu quả để có thể đáp ứng những yêu cầu về chất lượng của các luồng lưu lượng. Mục tiêu của QoS là cung cấp một số mức dự báo và điều khiển lưu lượng.
- Trong các mạng số liệu, QoS được đánh giá qua các tham số chính sau:
• Độ sẵn sàng của dịch vụ
• Độ trễ (delay).
• Độ biến động trễ (jitter)
• Thông lượng hay băng thông
• Tỷ lệ tổn thất gói (packet loss rate): tỷ lệ các gói bị mất, bị hủy, và bị lỗi khi đi trong mạng.
Hiện nay, có hai loại chất lượng dịch vụ cơ bản:
• Dành trước tài nguyên (Resource Reservation) với mô hình “Tích hợp dịch vụ” IntServ (Intergrated Service). Tùy theo yêu cầu của dịch vụ và chính sách quản lý băng thông mà mạng sẽ cung cấp tài nguyên phục vụ cho từng ứng dụng.
• Sự ưu tiên (Prioritization) với mô hình các “dịch vụ phân biệt” ( DiffServ-Differentiated Service). Lưu lượng vào mạng được phân loại và được cung cấp theo chỉ tiêu của chính sách quản lý băng thông. Chất lượng dịch vụ được áp dụng cho từng luồng dữ liệu riêng biệt hoặc một nhóm luồng. Luồng được xác định dựa vào 5 thông tin:
• giao thức lớp vận chuyển.
• địa chỉ IP nguồn.
• địa chỉ IP đích.
• chỉ số cổng nguồn.
• chỉ số cổng đích.
3.1 CẤU TRÚC QoS
Khi nói đến QoS ta sẽ nghĩ ngay tới các kĩ thuật hàng đợi như: Weighted Fair Queuing (WFQ), hay Custom Queuing (CQ), nhưng thật ra nó có nhiều hơn thế, ngoài hàng đợi QoS còn có các kỉ thuật khác gồm: nén (compression), policing và shaping, loại gói (drop packet), và một số khác.
Vì sao chúng ta lại cần QoS?
Như trước đây, khi mà nhu cầu sử dụng mạng của con người chưa cao bởi vì sự mới mẻ, chưa phổ biến và các ứng dụng chưa nhiều thì lưu lượng trên mạng có thể đáp ứng cho hầu hết các ứng dụng lúc bây giờ, nhưng khi nó trở nên phổ biến số người dùng nhiều và các ứng dụng cũng tăng lên thì tài nguyên băng thông mạng trở nên thiếu hụt, điều này sẽ dẫn tới việc mất gói đáng kể khi truyền qua mạng, Để khắc phục điều này thì QoS ra đời với nhiệm vụ ưu tiên cho các ứng dụng thời gian thực bằng cách cấp phát thêm băng thông và đặt chúng ở mức ưu tiên cao hơn các ứng dụng khác.
Nếu một mạng không áp dụng QoS thì sẽ xảy ra các trường hợp như sau:
Hình 3.2: Dữ liệu với không QoS
Các mạng ngày nay đền phải sử dụng QoS để đảm bảo chất lượng dịch vụ, tuy nhiên với mỗi ứng dụng thì cần có các mức độ QoS khác nhau
Hình 3.3: Mức độ yêu cầu QoS cho các loại dữ liệu
+ Độ trễ toàn trình “Delay”: trễ quá mức từ đầu cuối đến đầu cuối khiến cuộc đàm thoại bất tiện và mất tự nhiên. Mỗi thành phần trong tuyến truyền dẫn: máy phát, mạng lưới, máy thu đều tham gia làm tăng độ trễ. ITU-TG.114 khuyến cáo độ trễ tối đa theo một hướng là 150 ms để đảm bảo thoại có chất lượng cao.
+ Độ trễ pha “Jitter”: định lượng độ trễ trên mạng đối với từng gói khi đến máy thu. Các gói được phát đi một cách đều đặn từ Gateway bên trái đến được Gateway bên phải ở các thời khoảng không đều. Jitter quá lớn sẽ làm cho cuộc đàm thoại đứt quãng và khó hiểu. Jitter được tính trên thời gian đến của các gói kế tiếp nhau. Bộ đệm Jitter được dùng để giảm tác động “trồi sụt” của mạng và tạo ra dòng gói đến đều đặn hơn ở máy thu.
Công thức tính độ jitter: Di = ( Ri – Si ) - ( Ri-1 – Si-1 )
Di = ( Ri – Ri-1 ) – ( Si – Si-1 )
AvgJitter =
+ Độ mất gói “Packet Loss”: có thể xảy ra theo cụm hoặc theo chu kỳ do mạng bị nghẽn liên tục. Mất gói theo chu kỳ đến 5-10% số gói phát ra có thể làm chất lượng thoại xuống cấp đáng kể. Từng cụm gói bị mất không thường xuyên cũng khiến đàm thoại gặp khó khăn.
+ Mất trình tự gói ”Sequence Error”: nghẽn trên mạng chuyển mạch gói có thể khiến gói chọn nhiều tuyến khác nhau để đi đến đích. Gói có thể đến đích không đúng trình tự làm cho tiếng nói bị đứt khoảng.
Các bước thực hiện QoS:
Hình 3.4: Các bước thực hiện QoS
3.1.1: Dịch vụ tích hợp IntServ
+ Dịch vụ cố gắng tối đa không còn đủ đáp ứng nữa, ngày càng có nhiều ứng dụng khác nhau, các yêu cầu khác nhau về đặc tính lưu lượng được triển khai, đồng thời người sử dụng
cũng yêu cầu chất lượng dịch vụ ngày càng cao hơn. Các ứng dụng đa phương tiện ngày càng xuất hiện nhiều.
+ Mạng IP phải có khả năng hỗ trợ không chỉ đơn dịch vụ mà còn hỗ trợ đa dịch vụ của nhiều loại lưu lượng khác nhau từ thoại, số liệu đến video. Tối ưu hóa hiệu suất sử dụng mạng và tài nguyên mạng.
+ Đảm bảo hiệu quả sử dụng và đầu tư. Tài nguyên mạng sẽ được dự trữ cho lưu lượng có độ ưu tiên cao hơn, phần còn lại sẽ dành cho số liệu best effort. Cung cấp dịch vụ tốt nhất.
+ Mô hình IntServ cho phép nhà cung cấp mạng tung ra những dịch vụ tốt nhất, khác biệt với các đối thủ cạnh tranh khác.
Hình 3.5: Mô hình mạng IntServ
- Trên thực tế giao thức RSVP là giao thức duy nhất dùng để báo hiệu cho mô hình IntServ. Vì thế đôi khi người ta lầm lẫn dùng RSVP để nói về IntServ.Thật ra, IntServ là kiến trúc hỗ trợ chất lượng dịch vụ mạng, còn RSVP là giao thức báo hiệu cho IntServ.
- Ngoài giao thức báo hiệu, mô hình tích hợp dịch vụ còn định nghĩa thêm một số lớp dịch vụ.
- Một ứng dụng sẽ xác định đặc tính của luồng lưu lượng mà nó đưa vào mạng đồng thời xác định một số yêu cầu về mức dịch vụ mạng. Đặc tính lưu lượng Tspec (Traffic Specification) và yêu cầu mức chất lượng dịch vụ Rspec (Required Specification).
Vì thế các bộ định tuyến phải có khả năng thực hiện các công việc sau:
• Kiểm soát ( bằng các policing): kiểm tra TSpec của luồng lưu lượng; nếu không phù hợp thì loại bỏ luồng.
• Điều khiển chấp nhận: kiểm tra xem tài nguyên mạng có đáp ứng được yêu cầu của ứng dụng hay không. Nếu không thể đáp ứng, mạng sẽ từ chối.
• Phân lớp (Classification): phân loại gói dữ liệu căn cứ vào mức yêu cầu chất lượng dịch vụ của gói.
• Hàng đợi và lập lịch (queuing and scheduling): đưa gói dữ liệu vào hàng đợi tương ứng và quyết định hủy gói dữ liệu nào khi xảy ra xung đột.
a. Các lớp dịch vụ
Có hai loại dịch vụ: đảm bảo dịch vụ (Guaranteed Service) và kiểm soát tải (Control load service).
a.1 Đảm bảo dịch vụ
- Cho phép giới hạn thời gian chuyển tiếp các gói dữ liệu đến đích trong một khoảng thời gian nhất định, đảm bảo số dữ liệu không bị loại bỏ khi hàng đợi đầy.
- Thông tin Tspec phải bao gồm các thông số như: tốc độ đỉnh, kích thước lớn nhất của gói dữ liệu. Trong khi đó thông số quan trọng nhất của Rspec là tốc độ dịch vụ. Thông số này cho phép xác định băng thông mà lưu lượng cần khi đi trong mạng. Thông số này
cùng với các thông số trong Rspec cho phép xác định thời gian trễ lớn nhất có thể chấp nhận được của dữ liệu.
- Nhược điểm của lớp dịch vụ này là hiệu quả sử dụng tài nguyên mạng thấp vì nó đòi hỏi mỗi luồng lưu lượng có hàng đợi riêng.
a.2 Kiểm soát tải
- Các ứng dụng của dịch vụ này có thể chấp nhận khả năng mất dữ liệu và thay đổi độ trễ ở một mức độ nhất định. Luồng dữ liệu khi đi vào mạng sẽ được kiểm tra đối chiếu với những đặc tả lưu lượng Tspec đã được đăng ký. Nếu không phù hợp với các đặc tả đã được đăng ký trước thì dữ liệu sẽ được chuyển tiếp theo phương thức “nỗ lực tối đa”.
b. Giao thức dành trước tài nguyên RSVP
- RSVP là giao thức báo hiệu cung cấp thủ tục để thiết lập và điều khiển quá trình chiếm giữ tài nguyên, hay nói cách khác RSVP cho phép các chương trình ứng dụng thông báo cho mạng những yêu cầu về mức chất lượng dịch vụ; và mạng sẽ hồi đáp chấp nhận hoặc không chấp nhận yêu cầu đó.
- Các bản tin RSVP được các bộ định tuyến hay các bộ chuyển mạch trên liên kết giữa hai đầu cuối gửi và nhận trao đổi với nhau để đáp ứng yêu cầu về mức chất lượng dịch vụ của ứng dụng.
- RSVP có 2 bản tin cơ bản: bản tin Path (hay Request) và bản tin Resv. Bản tin Path (hay Request) mang thông tin về đặc tả luồng lưu lượng Tspec và các thông tin như: địa chỉ IP của nút gửi, địa chỉ IP nút nhận, chỉ số cổng UDP. Và khi nhận được bản tin Path (hay Request), nút mạng đích sẽ gửi lại bản tin Resv. Bản tin Resv sẽ gửi kèm theo phần mô tả yêu cầu RSpec chỉ định kiểu dịch vụ tích hợp là kiểm soát tải hay đảm bảo dịch vụ; ngoài ra còn có dấu hiệu nhận dạng luồng (flow descriptor) mà mỗi bộ định tuyến dùng để nhận diện mỗi phiên chiếm giữ tài nguyên.
- Khi nhận được bản tin Resv, mỗi bộ định tuyến trung gian sẽ tiến hành quá trình điều khiển chấp nhận (admission control). Nếu yêu cầu không được chấp nhận, do không đủ tài nguyên mạng thì bộ định tuyến sẽ báo lỗi về phía đầu thu. Nếu yêu cầu được chấp
nhận thì bộ định tuyến sẽ gửi bản tin Resv đến bộ định tuyến đã gửi bản tin Path (hay Request) cho nó.
- Ngoài ra, RSVP là giao thức mềm, có nghĩa là các bản tin Path (hay Request) và Resv sẽ được gửi lại sau khoảng thời gian nhất định để duy trì lâu dài sự chiếm giữ tài nguyên. Nếu sau khoảng thời gian này không có bản tin nào gửi đi, sự dự trữ tài nguyên sẽ bị xóa bỏ.
- Mặt khác, lưu lượng RSVP có thể đi qua bộ định tuyến không hỗ trợ RSVP. Tại những bộ định tuyến này dịch vụ được phục vụ theo mô hình nỗ lực tối đa.
- Nói tóm lại, RSVP đóng vai trò quan trọng trong quá trình triển khai việc chuyển tải nhiều dịch vụ như: âm thanh, hình ảnh và dữ liệu trong cùng một hạ tầng mạng. Các ứng dụng có thể lựa chọn nhiều mức chất lượng dịch vụ khác nhau cho luồng lưu lượng của mình.
c. Kiến trúc IntServ
- Cấu trúc của các bộ định tuyến và các bộ chuyển mạch có hỗ trợ RSVP trong mạng
Hình 3.6: Mô hình dịch vụ IntServ
• Khối điều khiển lưu lượng bao gồm: bộ phân loại (Classifier), bộ lập lịch gói (scheduler).
• Khối điều khiển thu nhận và thiết lập dự trữ (set up).
- Đầu tiên các ứng dụng đưa ra yêu cầu lớp dịch vụ: đảm bảo dịch vụ hoặc kiểm soát tải đồng thời đặt đường dẫn và chiếm giữ tài nguyên mạng cho việc truyền dữ liệu. Khối điều khiển thu nhận sẽ xem xét có thể đáp ứng được các yêu cầu mà dịch vụ đưa ra hay không. Bộ phân loại tiến hành phân loại và đưa các gói dữ liệu nhận được vào hàng đợi riêng. Bộ lập lịch sẽ lập cách xử lý để đáp ứng yêu cầu về chất lượng dịch vụ.
Hình 3.7: Trao đổi thông tin với IntServ
Hình 3.8: Trao đổi thông tin với IntServ
qua các bộ định tuyến nằm trên đường dẫn từ đầu gửi đến đầu thu. Tại mỗi bộ định tuyến, khối điều khiển thu nhận sẽ tiến hành quá trình điều khiển chấp nhận kết nối, quyết định xem có thể đáp ứng được yêu cầu chất lượng dịch vụ mà ứng dụng đưa ra hay không. Nếu được, bộ định tuyến sẽ dựa vào thông tin trong bản tin RSVP để cấu hình cho bộ điều khiển lưu lượng.
- Chúng ta đã xem xét kiến trúc của mô hình tích hợp dịch vụ cũng như một giao thức rất quan trọng RSVP. Mô hình này cho phép triển khai các ứng dụng thời gian thực và lưu lượng truyền thông trên cùng một hạ tầng mạng.
Comment