Bít cuối cùng của nhóm DSCP thứ nhất được ấn định là bít 0. Năm bít khác của nhóm DSCP này có thể là bít 0 hoặc bít 1. Vì thế, nhóm 1 có 32 giá trị DSCP khác nhau. Nhóm 1 gồm các mã DSCP yêu cầu các hoạt động theo tiêu chuẩn của IETF và được sử dụng cho toàn cầu. Nhóm 2 có 2 bít cuối được ấn định là “11”. 4 bít còn lại được phép nhận các giá trị khác nhau, như vậy tổng cộng có 16 giá trị DSCP thuộc nhóm 2. Nhóm DSCP 2 không yêu cầu các hoạt động tiêu chuẩn và được sử dụng cho thử nghiệm và các mục đích nội bộ. Các gói DiffServ được truyền trong một mạng nội bộ riêng có thể được đánh dấu bởi nhóm DSCP 2, các gói thuộc nhóm này không được nhận dạng bên ngoài mạng nội bộ.
Nhóm DSCP 3 luôn luôn kết thúc với “01”, nhóm này cũng có 16 giá trị DSCP khác nhau như nhóm 2. Nhóm này được dành cho việc thử nghiệm và sử dụng trong mạng nội bộ; tuy nhiên điểm khác biệt so với nhóm 2 là nhóm DSCP 3 có thể sử dụng cho các hoạt động tiêu chuẩn cần thiết.
3.2.4. Các phương pháp xử lý gói trong DiffServ
Quy tắc ứng xử theo từng chặng là sự mô tả bề ngoài của ứng xử chuyển tiếp một nút DS được áp dụng cho một tập ứng xử DS cụ thể. Để tạo ra các hành vi chuyển tiếp gói được định nghĩa theo quy tắc ứng xử từng chặng PHB (Per- hop Behavior), các cơ cấu kỹ thuật đảm bảo QoS như AQM và lập lịch gói được ứng dụng.
Nhóm làm việc về DiffServ của IETF định nghĩa hai loại PHB trong RFC 2598 [14], RFC 3246 và RFC 2597 [14], đó là: Chuyển tiếp nhanh EF(Expedited Forwarding) và chuyển tiếp đảm bảo AF (Assured Forwarding).
PHB chuyển tiếp nhanh EF PHB
Về cơ bản, EF PHB đảm bảo tính năng về tốc độ hơn là độ tin cậy. Nó được yêu cầu đưa ra các dịch vụ với khả năng tổn hao thấp, trễ thấp, thăng giáng trễ thấp và đảm bảo băng thông. Vì thăng giáng và trễ gây nên chủ yếu bởi thời gian mà gói tin phải chờ trong bộ đệm (hàng đợi), nên một bộ định tuyến EF phải đảm bảo rằng lưu lượng EF được đưa đến những bộ nhớ đệm nhỏ, tốc độ đầu ra của bộ định tuyến này phải bằng hoặc lớn hơn tốc độ vào.
Khi xảy ra hiện tượng quá tải, nút biên miền DS không cho phép lưu lượng dạng này đi vào trong miền vì nó là nguyên nhân gây tắc nghẽn tại các bộ định tuyến trong miền DS. Vấn đề này được điều chỉnh bởi thỏa thuận mức dịch vụ SLA và xác định lưu lượng truyền có điều kiện.
Hình 3.7. Xử lý chuyển tiếp nhanh EF PHB
Chuyển tiếp nhanh EF PHB khả thi nếu băng thông đầu ra và kích thước bộ nhớ đệm đủ để các luồng lưu lượng ra với tốc độ phục vụ µ. Tốc độ phục vụ µ luôn lớn hơn tốc độ đầu vào tại các bộ đệm EF. EF PHB làm cho nút DiffServ chuyển tiếp gói tin tương tự như một kênh truyền hay một đường dây được thuê riêng và rất thích hợp cho các dịch vụ thời gian thực như thoại, video.
Với kỹ thuật lập lịch ưu tiên, chuyển tiếp EF đảm bảo được tính ưu tiên cho các luồng lưu lượng theo yêu cầu.
Nhóm chuyển tiếp có đảm bảo AF PHB
Chuyển tiếp có đảm bảo AF PHB (Assured Forwarding PHB) gần tương đương với dịch vụ tải có điều khiển trong mô hình IntServ. Có nhiều mức chuyển tiếp bảo đảm khác nhau cho các gói tin IP qua một miền DS. Đặc điểm của AF PHB là phân phối dữ liệu đảm bảo với khả năng mất gói thấp. Đó là điều kiện tốt nhất khi sử dụng các giao thức không thực hiện xử lý sửa lỗi hoặc không có giải pháp truyền lại gói.
AF PHB bao gồm 4 lớp chuyển tiếp và mỗi lớp chuyển tiếp có 3 mức ưu tiên loại bỏ gói tin, mỗi lớp được gán một băng thông và khoảng nhớ đệm xác định. Nếu một gói bị loại bỏ, bộ định tuyến có cách nhận biết gói nào bị loại bỏ đầu tiên. Ngoài ra, mỗi lớp chuyển tiếp được phân bổ một số lượng cực nhỏ băng thông và bộ nhớ đệm. Nếu bộ nhớ đệm đầy thì quá trình loại bỏ sẽ bắt đầu theo trật tự loại bỏ theo mức ưu tiên. Các phân loại AF được thể hiện trên hình 3.8 và bảng 3.8
Hình 3.8. Các phân lớp AF PHB
Lớp PHB Phân lớp Dự đoán mất gói DSCP AF4 AF41 AF42 AF43 Thấp Trung bình Cao 100010 100100 100111 AF3 AF31 AF32 AF33 Thấp Trung bình Cao 011010 011100 100010 AF2 AF21 AF22 AF23 Thấp Trung bình Cao 010010 010100 010110 AF1 AF11 AF12 AF13 Thấp Trung bình Cao 001010 001100 001110 Bảng 3.8. Chi tiết phân lớp chuyển tiếp đảm bảo AF PHB
3.2.5. Ví dụ về Differentiated Services
Chúng ta sẽ xem xét một ví dụ về mô hình và cơ chế hoạt động của mô hình dịch vụ phân biệt DiffServ, được minh họa trên Hình 3.10; Trong đó các router R1, R2, R6, R7 là router biên, các router R3, R4, R5 là router lõi, còn H1, H2, H3, H4 là các máy tính của người sử dụng.
Chức năng của các router biên: Gồm phân loại, đánh dấu gói tin và điều hòa lưu lượng. Ở biên vào của mạng, các gói đến sẽ được đánh dấu. Đặc biệt, trường DS nằm trên phần header gói được thiết lập một giá trị nhất định. Ví dụ trên hình 3.10 các gói được gửi từ H1 đến H3 sẽ được đánh dấu tại R1, trong khi các gói từ H2 tới H4 được đánh dấu tại R2. Những nhãn được đánh dấu trên gói nhận được chính là định danh lớp dịch vụ mà nó thuộc vào. Các lớp lưu lượng khác nhau sẽ nhận được các dịch vụ khác nhau trong mạng lõi. Định nghĩa của RFC sử dụng thuật ngữ tổng hợp hành vi mà không dùng thuật ngữ class traffic. Sau khi được đánh dấu, một gói có thể được chuyển tiếp ngay lập tức vào mạng, trễ một khoảng thời gian trước khi được chuyển đi, hoặc có thể bị loại bỏ. Chúng ta sẽ thấy có nhiều yếu tố ảnh hưởng tới việc gói bị đánh dấu như thế nào, và chúng được chuyển tiếp ngay, trễ lại hay bị loại bỏ.
Hình 3.9. Ví dụ về DiffServ
Chức năng của các router lõi: Khi một gói đã được đánh dấu DS đi đến một router hỗ trợ DiffServ, các gói được chuyển tiếp tới router kế tiếp dựa vào kỹ thuật hành vi theo từng chặng gắn với các lớp của gói. Hành vi từng chặng ảnh hưởng tới bộ đệm của router và băng thông đường truyền được chia sẻ giữa các lớp đang cạnh tranh nhau về lưu lượng. Một nguyên tắc quan trọng của kiến trúc DiffServ là các cư xử từng chặng của router sẽ chỉ dựa vào đánh dấu gói hay lớp lưu lượng mà nó thuộc vào. Bởi vậy, các gói được gửi từ H1 tới H3 sẽ được đánh dấu giống như đối với các gói từ H2 tới H4, nghĩa là khi đó các router mạng cư xử các gói hoàn toàn giống nhau, mà không quan tâm gói xuất phát từ H1 hay H2. Ví dụ, R3 không phân biệt giữa các gói từ H1 và H3 khi chuyển tiếp các gói tới R4. Bởi vậy, kiến trúc DiffServ tránh được việc phải lưu giữ trạng thái trên router về các cặp nguồn đích riêng biệt – đây là vấn đề (ưu điểm) quan trọng đối với vấn đề mở rộng mạng.
3.3. Tích hợp mô hình IntServ với mô hình DiffServ - Mô hình đề xuất
Chúng ta đã biết, hiện nay các mạng (đặc biệt là mạng Internet) đang sử dụng một trong hai mô hình IntServ hoặc DiffServ để cung cấp các dịch vụ có hỗ trợ đảm bảo chất lượng, như vận chuyển dữ liệu, voice, video,.... Với việc áp dụng mô hình IntServ thì chất lượng của các dịch vụ được bảo đảm, tuy nhiên do nhược điểm tính khả mở kém, nên khó áp dụng trong thực tế. Nếu áp dụng mô hình DiffServ, thì chất lượng các dịch vụ, đặc biệt là dịch vụ truyền voice, video thời gian thực sẽ không được đảm bảo chắc chắn và liên tục, có thể sẽ dẫn đến bị mất hình, âm thanh bị trễ,... Do vậy, trong phần này, luận văn sẽ trình bày chi tiết việc đề xuất một mô hình tích hợp hai mô hình dịch vụ IntServ và
DiffServ với nhau, phát huy được ưu điểm của cả hai mô hình, bằng cách sử dụng hàm ánh xạ.
Hiện nay, các mạng thông thường (không áp dụng các mô hình đảm bảo QoS) chỉ dùng một hàng đợi chung cho các lưu lượng của dịch vụ dữ liệu, voice và video. Để tăng hiệu quả của mạng và đảm bảo chất lượng dịch vụ cho các ứng dụng đa phương tiện thời gian thực, chúng ta cần thực hiện phân biệt các loại lưu lượng và sử dụng các hàng đợi có chính sách phục vụ theo mức ưu tiên cho từng loại ứng dụng. Cụ thể: Đối với ba luồng lưu lượng dữ liệu, voice, video thì chúng ta có thể sử dụng ba hàng đợi khác nhau. Đồng thời, có thể gán các thứ tự ưu tiên cho các gói tin thuộc các luồng lưu lượng như sau: video, voice và dữ liệu.
Hình 3.10. Mô hình kết hợp IntServ với mô hình DiffServ
Trong mô hình đề xuất, sử dụng mô hình IntServ cung cấp đảm bảo chất lượng dịch vụ cho các ứng dụng cuối và mô hình DiffServ được thiết kế đảm bảo chất lượng dịch vụ cho nhân của mạng. Điều này dẫn đến, sự kết hợp của mô hình IntServ tại cạnh và DiffServ tại nhân sẽ có thể cung cấp đảm bảo chất lượng dịch vụ tới các ứng dụng cuối.
3.3.1. Ánh xạ giữa mô hình IntServ và mô hình DiffServ [18]
Trong mô hình IntServ, việc giành trước nguồn tài nguyên được thực hiện khi có yêu cầu của kiểu dịch vụ được định nghĩa bởi tập các tham số đã biết, các tham số này được gọi là Tspec (Traffic Specification – đặc điểm chi tiết về kỹ thuật của luồng). Mỗi tập tham số xác định một mức độ ưu tiên thích hợp. Khi kết nối với một mức độ ưu tiên cụ thể được ánh xạ tới vùng DiffServ, các yêu cầu cơ bản dưới đây sẽ được thỏa mãn.
PHBs trong vùng DiffServ phải được lựa chọn thích hợp cho mỗi dịch vụ được yêu cầu trong vùng IntServ. Tại router biên của vùng DiffServ phải kiểm soát được các yêu cầu đưa lưu lượng vào mạng, xác định kiểu lưu lượng đưa vào và gán nhãn cho từng gói tin. Xét tài nguyên sẵn sàng sử dụng trong vùng DiffServ, điều khiển các gói tin đi vào vùng DiffServ phải được hoàn thành trên luồng đến từ vùng IntServ.
Hình 3.10. Hàm ánh xạ giữa mô hình IntServ và mô hình DiffServ
3.3.2. Hàm ánh xạ [18]
Hàm ánh xạ được sử dụng để chỉ định một mã DSCP thích hợp cho các gói tin đến từ luồng được chỉ bởi các tham số Tspec của vùng IntServ. Hàm này đảm bảo cho việc chất lượng dịch vụ thích hợp có thể đạt được cho các luồng IntServ khi chạy trên vùng DiffServ. Để đạt được mục tiêu trên, chúng tôi giới thiệu một hàm ánh xạ tại router biên của vùng DiffServ được trình bày trong Hình 3.10. Mỗi gói tin trong luồng từ vùng IntServ có một ID luồng, được chỉ ra trong trường flow-id của IP (Internet Protocol) header. Thuộc tính ID luồng với tham số Tspec được sử dụng để xác định gói tin thuộc về luồng nào.
Đầu tiên, các gói tin được chỉ ra bởi các tham số Tspec trong vùng IntServ được ánh xạ tới PHBs tương ứng trong vùng DiffServ bởi chỉ định một DSCP phù hợp phụ thuộc hàm ánh xạ. Khi đó, các gói tin được định tuyến trong vùng DiffServ, trong vùng này, các gói tin nhận được xử lý dựa trên mã DSCP của chúng. Trong vùng DiffServ, các gói tin được phân nhóm thành BAs. Bảng 3.8 trình bày một ví dụ về hàm ánh xạ, cụ thể: Một luồng trong vùng IntServ được chỉ ra cụ thể bởi r=0:7 Mb, b = 5000 bytes và ID luồng = 0 được ánh xạ tới EF PHB (tương ứng mã DSCP là: 101110) trong miền DiffServ. r và b tương ứng miêu tả tốc độ băng thông và kích thước dữ liệu.
Tspec ID luồng PHB DSCP r=0.7 Mb, b=5000 bytes 0 EF 101110 r=0.7 Mb, b=5000 bytes 1 EF 101110 r=0.5 Mb, b=8000 bytes 2 AF 001010 r=0.5 Mb, b=8000 bytes 3 AF 001010 r=0.5 Mb, b=8000 bytes 4 AF 001010
Bảng 3.9. Hàm ánh xạ ví dụ giữa mô hình IntServ và mô hình DiffServ Đầu tiên, người gửi chỉ ra dịch vụ được yêu cầu của họ dùng Tspec. Chú Đầu tiên, người gửi chỉ ra dịch vụ được yêu cầu của họ dùng Tspec. Chú ý rằng, có thể những người gửi khác nhau cùng dùng Tspec. Tuy nhiên, những
người gửi được phân biệt bởi ID luồng. Hơn nữa, cũng có thể, các luồng khác nhau được ánh xạ tới cùng PHB trong vùng DiffServ.
3.4. Kết luận
Mô hình IntServ đi theo hướng đảm bảo chất lượng dịch vụ cho từng luồng, nó được xây dựng gần giống với mô hình chuyển mạch kênh với việc sử dụng giao thức dành trước tài nguyên RSVP. IntServ phù hợp với các dịch vụ đòi hỏi băng thông cố định không bị chia sẻ như các dịch vụ VoIP, dịch vụ multicast Tivi. Tuy nhiên, mô hình IntServ có những nhược điểm như sử dụng nhiều tài nguyên mạng, khả năng khả mở kém và không mềm dẻo.
DiffServ ra đời với ý tưởng giải quyết những nhược điểm của mô hình IntServ. DiffServ đi theo hướng đảm bảo chất lượng dựa trên việc phân loại gói tin thành các lớp ưu tiên khác nhau và nguyên lý hành vi của các router trong việc chuyển tiếp các gói tin theo từng chặng căn cứ vào mức ưu tiên của các gói tin đã được đánh dấu. Việc đưa ra chính sách với các loại lưu lượng khác nhau là do người quản trị quyết định và có thể thay đổi theo thực tế nên nó rất mềm dẻo. DiffServ tận dụng tốt tài nguyên mạng hơn, tránh được tình trạng nhàn rỗi băng thông và năng lực xử lý trên router, ngoài ra mô hình DiffServ có thể triển khai trên nhiều miền độc lập do vậy khả năng mở rộng mạng trở nên dễ dàng.
Ngoài ra, luận văn cũng trình bày một mô hình đề xuất, đó là kết hợp giữa hai mô hình IntServ và mô hình DiffServ với nhau, mô hình IntServ được thiết kế tại cạnh của mạng, còn mô hình DiffServ được thiết kế tại nhân của mạng. Sự kết hợp này được dựa trên hàm ánh xạ.
Để thử nghiệm các mô hình đảm bảo chất lượng dịch vụ trong Chương này, Chương tới chúng tôi sẽ tập trung vào xây dựng các mô hình bằng phần mềm NS-2, sau đó tiến hành mô phỏng để đưa ra kết quả đánh giá.
Chƣơng 4
ĐÁNH GIÁ YÊU CẦU TÀI NGUYÊN MẠNG
CỦA ỨNG DỤNG VIDEO CONFERENCE BẰNG MÔ PHỎNG
Trong chương này, tôi giới thiệu chung về hệ mô phỏng NS-2, khả năng mô phỏng mạng theo mô hình IntServ và DifServ của NS-2. Từ đó sử dụng NS-2 để xây dựng các mạng mô phỏng theo mô hình IntServ, DiffServ. Sử dụng các kết quả mô phỏng thu được để phân tích, đánh giá yêu cầu tài nguyên mạng của các ứng dụng.
4.1. Bộ mô phỏng mạng NS-2
4.1.1. Khái quát về NS-2
NS (Network Simulator) là phần mềm mô phỏng mạng theo phương thức điều khiển sự kiện rời rạc và hướng đối tượng. Được phát triển tại đại học California Berkeley, viết bằng ngôn ngữ C++ và OTcl, Tcl. NS rất hữu ích cho việc mô phỏng mạng diện rộng (WAN) và mạng nội bộ (LAN), ngoài ra NS còn có khả năng mô phỏng rất nhiều lĩnh vực như mạng thông tin di động, thông tin vệ tinh,... Khi sử dụng NS chúng ta có thể thực hiện được một số khả năng sau [11]:
Khả năng kiểm tra tính ổn định của các giao thức mạng
Khả năng đánh giá các giao thức mới trước khi đưa vào sử dụng
Khả năng thực thi những mô hình mạng lớn mà gần như ta không thể triển khai được trong thực tế
Khả năng mô phỏng nhiều loại mạng khác nhau
Đi cùng sự phát triển của NS là các công cụ hiển thị trực quan NAM, XGRAPH. NAM là công cụ cho phép người nghiên cứu nhìn thấy bằng đồ họa hình trạng mạng, sự chuyển động của các gói số liệu trên mạng. Còn XGRAPH là một chương trình ứng dụng có chức năng vẽ đồ thị trong không gian hai