Mô hình kiến trúc dịch vụ phân biệt DiffServ được coi là bước phát triển tiếp theo của mô hình tích hợp dịch vụ IntServ. Hướng tiếp cận của mô hình này là không xử lý theo từng luồng lưu lượng riêng biệt mà ghép chúng vào 1 số lượng hạn chế các lớp lưu lượng mà băng thông và các tài nguyên mạng khác được chỉ định trong các lớp lưu lượng này. Mặt khác, DiffServ hướng tới xử lý trong từng vùng dịch vụ phân biệt DS (Differential Service) thay vì xử lý từ đầu cuối tới đầu cuối như trong mô hình tích hợp dịch vụ IntServ.
Trong cấu trúc DiffServ, bộ định tuyến được chia làm 2 thể loại, bộ định tuyến biên và bộ định tuyến lõi. Tuy nhiên, khác với mô hình IntServ, chỉ có các bộ định tuyến biên cần khả năng xử lý các luồng IP vi mô, các bộ định tuyến lõi thay vì xử lý một lượng rất lớn các luồng IP vi mô thì nó chỉ xử lý vài luồng IP tổng trong cấu trúc DiffServ. Luồng IP tổng chứa tất cả các gói của luồng IP vi mô thuộc về cùng một chủng loại. Chỉ cần định nghĩa một vài chủng loại cơ bản, yêu cầu với bộ định tuyến trở nên đơn giản hơn rất nhiều.
Cơ chế DiffServ đưa ra sự phân loại cho 3 loại hình dịch vụ: Dịch vụ ưu tiên, dịch vụ đảm bảo và dịch vụ ứng biến theo khả năng tối đa. Dịch vụ cuối cùng chính là dịch vụ được cung cấp bởi mạng Internet hiện nay. Ứng với mỗi loại hình dịch vụ, DiffServ định nghĩa cách thức xử lí các gói tin IP tại bộ định tuyến lõi. Nói cách khác, tại các bộ định tuyến lõi, các gói IP sẽ được xử lí tương ứng với loại hình dịch vụ của chúng. Gói IP của dịch vụ ưu tiên nhận được cách xử lí chuyển nhanh, còn gói IP của dịch vụ đảm bảo nhận được cách xử lí chuyển đảm bảo.
Nguyên lí hoạt động của kiến trúc DiffServ gồm các đặc điểm cơ bản sau. Khi bắt đầu đi vào mạng DiffServ mà trực tiếp là bộ định tuyến biên, gói IP sẽ được phân loại. Bộ định tuyến biên sẽ thực hiện việc phân loại bằng cách kiểm tra mã DSCP (DiffServ Code Point) chứa chủng loại dịch vụ nằm trong phần đầu gói cùng với một số dữ liệu khác liên quan đến luồng vi mô của gói tin IP (địa chỉ đầu gửi, địa chỉ đầu nhận). Sau khi chủng loại của gói IP được xác định, bộ định tuyến biên sẽ thực hiện một số điều chỉnh cho gói tuân theo những tính chất đã được định nghĩa cho chủng loại của nó. Tại bộ định tuyến lõi, gói IP sẽ được xử lý trên cơ sở duy nhất là chủng loại của nó. Bộ định tuyến lõi chỉ có nhiệm vụ kiểm tra chủng loại của gói IP và chuyển tiếp gói IP theo cách mà chủng loại đó được nhận bao gồm: định tuyến cho gói, xếp gói vào bộ đệm thích hợp.
2.8 TỔNG KẾT.
Trong chương này đã giới thiệu các chức năng định tuyến và báo hiệu cơ bản trong mặt phảng điều khiển của MPLS để hỗ trợ tự động hóa việc cấu hình của mặt phẳng chuyển tiếp. Trình bầy một số giao thức báo hiệu MPLS thực hiện phân phối nhãn theo các đặc tính chung như tuyến tường minh hay tuyến từng chặng, phân phối theo yêu cầu hay không cần yêu cầu... Cạnh đó cũng trình bày khái niệm dịch vụ tích hợp và dịch vụ phân biệt, là các khái niệm quan trọng khi nhắc tới điều khiển lưu lượng dựa trên chất lượng dịch vụ QoS. Với các giao thức cơ bản trên sẽ giúp chúng ta có được cơ sở để nghiên cứu về kỹ thuật lưu lượng TE (Traffic Enginneering ) dựa trên MPLS, một giải pháp rất hiệu quả trong việc điều khiển các luồng dữ liệu đi qua mạng sao cho tối ưu hóa việc sử dụng tài nguyên và hiệu năng của mạng. Chúng ta sẽ tìm hiểu cụ thể vấn đề này trong chương sau.
Chương III : KỸ THUẬT LƯU LƯỢNG TRONG MPLS. 3.1 KỸ THUẬT LƯU LƯỢNG (TRAFFIC ENGINEER ).
Kỹ thuật lưu lượng (TE) là quá trình điều khiển các luồng lưu lượng qua mạng sao cho tối ưu hóa việc sử dụng tài nguyên và hiệu năng mạng.
3.1.1 Các mục tiêu triển khai kỹ thuật lưu lượng.
3.1.1.a Phân loại.
Các mục tiêu triển khai kỹ thuật lưu lượng có thể phân chia thành hai hướng sau:
- Hướng lưu lượng. - Hướng tài nguyên.
Các mục tiêu hướng lưu lượng liên quan đến việc tăng cường QoS cho các luồng lưu lượng, các mục tiêu như: giảm thiểu độ trễ và mất gói, tăng tối đa thông lượng và tuân thủ các hợp đồng mức dịch vụ... Các mục tiêu hướng tài nguyên liên quan đến việc tối ưu hóa sử dụng tài nguyên. Băng thông là một tài nguyên cốt yếu của mạng, do đó chức năng trọng tâm của kỹ thuật lưu lượng là quản lý hiệu quả tài nguyên băng thông.
3.1.1.b Bài toán nghẽn.
Nghẽn thường xảy ra theo hai hướng sau:
• Khi bản thân các tài nguyên mạng không đủ để cấp cho tải yêu cầu.
• Khi các dòng lưu lượng được ánh xạ không hiệu quả đến các tài nguyên, làm cho một số tập con tài nguyên trở nên quá tải trong khi số khác nhàn. Có thể giải quyết tắc nghẽn bằng cách:
• Tăng dung lượng hoặc ứng dụng các kỹ thuật điều khiển nghẽn cơ bản như: giới hạn tốc độ, điều khiển luồng, quản trị hàng đợi, điều khiển lịch trình... • Dùng kỹ thuật lưu lượng nếu nghẽn là do cấp phát tài nguyên chưa hiệu quả Đối tượng giải quyết của kỹ thuật lưu lượng là nghẽn kéo dài chứ không phải là nghẽn nhất thời do bùng phát lưu lượng.
3.1.2 Hàng đợi lưu lượng.
3.1.2.a Hàng đợi FIFO (First-In,First-Out).
Hàng đợi vào trước, ra trước là cơ chế mặc định cho các gói tin khi đi vào một nút mạng khi không có sự hiện diện của thuật toán đặc biệt nào tại đó. Trong hàng đợi FIFO các gói tin được xếp vào cùng một hàng đợi và được chuyển đi theo cùng một cách mà chúng được sắp xếp trong hàng đợi. Ưu điểm chính của hàng đợi FIFO là ở tính đơn giản của nó, không có bất kỳ giải thuật phức tạp nào được thiết kế riêng cho FIFO. Trong hàng đợi FIFO, các gói tin được đối xử như nhau.
Do đó hàng đợi này chỉ dùng để sử dụng cho loại dịch vụ “nỗ lực tối đa” (BE) và cũng là loại dịch vụ được hỗ trợ duy nhất trong mạng IP truyền thống.
3.1.2.b Hàng đợi PQ (Priority Queuing).
Hàng đợi theo độ ưu tiên là sự cải tiến của FIFO. Trước khi được đưa vào hàng đợi tương ứng, các gói tin phải được phân loại theo từng loại dịch vụ. Các hàng đợi được thiết kế theo độ ưu tiên của loại gói tin mà nó phải chứa. Các gói tin ở hàng đợi có độ ưu tiên thấp hơn chỉ được xử lý khi và chỉ khi không còn bất cứ các gói tin nào trong các hàng đợi có độ ưu tiên cao hơn. PQ cho phép người quản lý mạng cấu hình bốn thuộc tính lưu lượng cao (high), thông thường (normal), trung bình (medium) và thấp (low). Lưu lượng đến được gán vào một trong bốn hàng đợi. Trong thực tế người ta sử dụng hàng đợi PQ được điều khiển tốc độ. Với loại hàng đợi này, các gói tin trong hàng đợi có độ ưu tiên cao chỉ được xử lý nếu tổng số gói tin trong hàng đợi đó nhỏ hơn một lượng xác định.
3.1.2.c Hàng đợi WFQ (Weighted Fair Queuing).
Băng thông rỗi được chia cho các hàng đợi tùy thuộc vào trọng số (weight) của chúng. Xét ví dụ: có 12 luồng lưu lượng A,B,C...,N và trọng số của chúng được đánh số như hình sau, trong đó: có bốn luồng (D,E,F,G) có trọng số 5, có hai luồng trọng số 4, còn trọng số khác chỉ có một luồng.
Tổng trọng số: 8 + 7 + 6 + 5*4 + 4*2 + 3 + 2 + 1 = 55. Khi đó mỗi luồng có trọng số 5 sẽ nhận được 5/55 phần băng thông, luồng có trọng số thấp nhất (1) sẽ nhận được 1/55 phần băng thông và luồng có trọng số cao nhất (8) nhận được 8/55 phần băng thông. Tượng tự cho các luồng có trọng số khác.
3.1.3 Giải thuật thùng rò và thùng Token.
Thùng rò và thùng Token là cơ chế thực hiện chức năng giám sát và nắn dạng lưu lượng để đo tốc độ nhận hay truyền dữ liệu. Giám sát loại bỏ gói dư thừa để đảm bảo tốc độ truyền không vượt quá tốc độ thỏa thuận. Nắn dạng xếp các gói dư thừa này vào hàng đợi, và đi ra hàng đợi ở tốc độ nắn dạng.
3.1.3.a Giải thuật thùng rò (Leaky Bucket).
Mô hình thùng rò có thể được diễn tả hình tượng như sau: bất chấp tốc độ nước đổ vào thùng là bao nhiêu, thì tốc độ dòng chảy ra là không thay đổi miễn là trong thùng còn nước. Một khi thùng đầy nước, lượng nước được đổ thêm vào sẽ bị tràn và mất. Tương tự như dữ liệu khi tới một router trong mạng nếu hàng đợi đã đầy thì gói tin sẽ bị “drop”. Các thông số cần chú ý trong mô hình thùng rò là kích thước của thùng và tốc độ dòng chảy ra.
Hình 3.2 Giải thuật thùng rò.
Mô hình trên có thể áp dụng cho gói. Bất kể lưu lượng tới có tốc độ biến động như thế nào, lưu lượng ra đều có tốc độ không thay đổi.
3.1.3.b Giải thuật thùng Token (Token Bucket).
Thùng Token có kích thước B, các gói tin chảy vào thùng được gọi là Token. Tốc độ Token chảy vào thùng không đổi là p. Nếu số Token trong thùng vượt quá B, thùng sẽ tràn và bị mất, do đó B là số lượng Token tối đa trong thùng. Trong mô hình thùng Token, mỗi Token cho phép truyền một bit. Mỗi lần truyền được một gói, thì sẽ sử dụng Token từ thùng Token để dành quyền truyền gói. Nếu gói tin có độ dài 1000 bit thì 1000 Token sẽ được lấy ra từ thùng Token.
Hình 3.3: Giải thuật thùng Token.
Gọi G là kích thước gói đến, một gói là hợp lệ khi lượng Token trong thùng lớn hơn hay bằng G, đồng thời lượng Token trong thùng được giảm đi G. Ngược lại khi lượng Token trong thùng nhỏ hơn kích thước gói, gói được xem là vượt mức hay không hợp lệ. Tuỳ vào các chính sách khác nhau mà các gói hợp lệ hoặc không hợp lệ được xử lý khác nhau.
Một điều cần lưu ý trong giải thuật thùng Token là tốc độ chảy vào và tốc độ chảy ra phải bằng nhau. Thùng token cho phép dữ liệu bùng phát ở một mức nhất định (kích thước B), nhưng không cho phép tốc độ chảy vào thùng vượt quá p trong một khoảng thời gian nhất định. Giải thuật thùng Token có thể được dùng trong việc sửa dạng lưu lượng hay được ứng dụng trong việc thực thi khống chế. Trong việc sửa dạng lưu lượng, thuật toán thùng Token cho phép một ít bùng phát ở ngõ ra, điều này không có ở thuật toán thùng rò vì tốc độ đầu ra là không đổi. Như vậy thùng Token cho đáp ứng ra tốt hơn so với thùng rò. Trong việc thực thi khống chế, thùng Token có thể được dùng độc lập hay dùng phối hợp.
3.1.4 Giải pháp mô hình chồng phủ (Overlay Model).
Một cách tiếp cận phổ biến đề bù đắp các thiếu sót của các giao thức IGP (Interior Gateway Protocol) là sử dụng mô hình chồng phủ (IP over ATM hay IP over FR). Tất cả các giao thức lớp 3 được kết nối trực tiếp với nhau bằng một mạng lưới full-mesh các mạng ảo VC. Kỹ thuật lưu lượng được thực hiện ở lớp 2 (ATM hay FR).
• Tốn kém thêm nhiều thiết bị (đòi hỏi nhiều các chuyển mạch ATM hay FR) • Quản lý mạng phức tạp: Mạng lớp 2 có cộng cụ quản lý riêng với nhiều tác
vụ hỗ trợ kỹ thuật lưu lượng. Đồng thời các router lớp 3 với các giao thức IGP cùng phải được quản lý. Việc quản lý 2 lớp mạng này không tích hợp được.
• Phát sinh nhiều vấn đề mở rộng đối với IGP do số lượng quá lớn các neighbor khi kết nối full-mesh để tận dụng các tiện ích cung cấp bởi lớp 2. • Tốn thêm băng thông cho lượng overhead của ATM hoặc FR (cell tax). • Không hỗ trợ dịch vụ phân biệt (Diffserv). Mọi dịch vụ phân biệt của IP
đưa xuống (PPP của Frame hoặc AAL5 của ATM) đều trở thành “best- effort”.
Hình 3.4: Mô hình chồng phủ (overlay model).
3.2 MPLS VÀ KỸ THUẬT LƯU LƯỢNG.
MPLS có ý nghĩa chiến lược đối với kỹ thuật lưu lượng vì nó cung cấp hầu hết các chức năng hiện có ở mô hình chồng phủ nhưng theo cách thích hợp với chi phí thấp hơn. Điều quan trọng là MPLS còn đề xuất khả năng tự động hóa các chức năng kỹ thuật lưu lượng.
3.2.1 Khái niệm trung kế lưu lượng (Traffic Trunk).
MPLS giới thiệu khái niệm trung kế lưu lượng để thực hiện mục tiêu TE. Đặc tính trong một LSR là cho phép tập hợp các đặc tính của mọi luồng dữ liệu đi trong mạng như tốc độ cực đại, tốc độ trung bình và kích cỡ bùng nổ (burst) cực đại. Những đặc tính này vốn có ở trong tất cả các luồng dữ liệu, khi đi vào mạng MPLS nhờ có trung kế lưu lượng là một khối thu gom (aggregate) các luồng lưu lượng trong mạng, được đặt bên trong một LSP mà dữ liệu được quản lý hiệu quả hơn. Trung kế lưu lượng có thể thu gom các luồng dữ liệu trên cùng một lớp (đơn lớp) hay có thể trên đa lớp.
• Trong mô hình dịch vụ đa lớp, một trung kế lưu lượng có thể đóng gói toàn bộ lưu lượng giữa một router lối vào và một router lối ra. Trong trường hợp phức tạp hơn, lưu lượng của các lớp dịch vụ phân biệt (DiffServ) với các đặc tính lựa chọn QoS cho các gói tin, sẽ được ấn định vào các trung kế lưu lượng riêng biệt.
• Trung kế lưu lượng là đối tượng có thể định tuyến.
• Trung kế lưu lượng phân biệt với LSP là đường cho trung kế đi xuyên qua. Trong bối cảnh hoạt động, một trung kế lưu lượng có thể chuyển từ một LSP này sang một LSP mới, hay nhiều trung kế lưu lượng có thể cùng đi chung trên một LSP.
• Trung kế lưu lượng là đơn hướng.
3.2.2 Đồ hình nghiệm suy (Induced Graph).
Đồ hình nghiệm suy gần giống như topo ảo trong mô hình chồng phủ. Nó được ánh xạ lên mạng vật lý thông qua việc lựa chọn các đường LSP cho các trung kế lưu lượng.
Một đồ hình nghiệm suy gồm một nhóm các nút LSR được kết nối luận lý với nhau bằng các LSP. Khái niệm này rất quan trọng vì bài toán quản lý băng thông cơ bản trong một miền MPLS đặt ra là làm thế nào để ánh xạ hiệu quả đồ hình nghiệm suy lên trên mạng topo mạng vật lý. Đồ hình nghiệm suy được công thức hóa như sau:
Đặt G = ( V, E, C ) là một đồ hình mô tả topo vật lý của mạng. Trong đó, V là tập hợp các nút mạng, E là tập hợp các đường link, C là tập hợp các khả năng và ràng buộc cho E và V (như độ trễ, dung lượng...). Ta coi G là topo cơ sở.
Đặt H = ( U, F, D ) là đồ hình MPLS nghiệm suy. Trong đó, U là tập con của V gồm một nhóm các LSR tại các đầu của LSP. F là tập hợp các LSP. Tham số D là tập hợp các yêu cầu và chế tài cho F. Như vậy H là một đồ hình trực tiếp và phụ thuộc vào các đặc tính truyền tải của G.
3.2.3 Bài toán cơ bản của kỹ thuật lưu lượng.
Có ba vấn đề cơ bản liên quan đến kỹ thuật lưu lượng trên MPLS là: • Ánh xạ các gói tin lên các lớp chuyển tiếp tương đương (FEC). • Ánh xạ các FEC lên các trung kế lưu lượng (traffic trunk).
• Ánh xạ các trung kế lưu lượng lên topo mạng vật lý thông qua các LSP. Các phần sau của chương sẽ tập trung vào vấn đề thứ ba, tức là tính toán đường đi tốt nhất qua mạng cho các trung kế lưu lượng sao cho mạng hoạt động hiệu quả và tin cậy. Đây chính là bài toán ánh xạ đồ hình nghiệm suy H lên topo mạng cơ sở G.
3.3 TRUNG KẾ LƯU LƯỢNG VÀ CÁC THUỘC TÍNH.
Để xây dựng và duy trì trung kế lưu lượng, người ta tìm cách mô hình hóa nó