MPLS QoS

Một phần của tài liệu Triển khai Traffic Engineering nâng cao với MPLS (Trang 33)

QoS là một dịch vụ đã đƣợc phổ biến trong những năm trƣớc đây. Ngoài một số mạng có băng thông không giới hạn, còn lại tắc nghẽn là một vấn đề xảy ra ở hầu hết các mạng. Và QoS bảo đảm cho các luồng lƣu lƣợng quan trọng hơn vƣợt qua tắc nghẽn và đƣợc chuyển đi. 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ụ.

- 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. Sự khác nhau giữa IntServ và DiffServ:

DiffServ IntServ

Không dùng bất kì giao thức báo hiệu nào để dành trƣớc băng thông mạng, do vậy tiết kiệm đƣợc

băng thông mạng.

Dùng giao thức báo hiệu RSVP để dành trƣớc băng thông mạng, do đó sẽ tốn tài nguyên mạng vô ích. Có thể sử dụng cho mạng lớn và cả mạng nhỏ với số lƣu lƣợng rất lớn Chỉ có thể sử dụng cho mạng cỡ nhỏ với số lƣợng lƣu lƣợng nhỏ

Ít tốn tài nguyên mạng Tốn nhiều tài nguyên mạng Xét ƣu tiên gói trên từng chặn. Khởi tạo một kênh truyền

trƣớc khi truyền. Khả năng mở rộng mạng cao

và phục vụ đa dịch vụ

Khả năng mở rộng mạng thấp và phục vụ ít dịch vụ.

Bảng I.1 Bảng so sánh IntServ và DiffServ

CHƢƠNG II. KỸ THUẬT LƢU LƢỢNG VỚI MPLS

II.1. TỔNG QUAN KỸ THUẬT LƢU LƢỢNG VỚI MPLS

MPLS TE là sự kết hợp khả năng điều khiển lƣu lƣợng của ATM với sự mềm dẻo của IP và sự khác nhau của các lớp dịch vụ. MPLS cho phép xây dựng các con đƣờng chuyển nhãn (LSP - Label Switch Path) trong mạng để giảm lƣu lƣợng chuyển tiếp. MPLS TE (có thể gọi là đƣờng hầm điều khiển lƣu lƣợng - TE Tunnel) dùng một đƣờng hầm TE điều khiển lƣu lƣợng trên đƣờng đến một đích cụ thể. Phƣơng pháp này mềm dẻo hơn kỹ thuật lƣu lƣợng chuyển tiếp chỉ dựa trên địa chỉ đích, và giúp MPLS tránh đƣợc sự quá tải ở router và ở đƣờng truyền.

MPLS TE dự trữ băng thông khi xây dựng LSP. Khi LSP đƣợc thêm vào mạng chúng có thể tìm ra con đƣờng có băng thông đƣợc lƣu trữ sẵn. MPLS bắt buộc có sự dự trữ của mặt phẳng điều khiển, nghĩa là nếu một LSR dự trữ 10Mb và gửi đến nó 100Mb trên LSP đó, mạng sẽ thử phân chia 100 Mb đó trừ khi lƣu lƣợng ở nguồn đã bị kỹ thuật QoS ràng buộc.

Cách giải quyết bài toán con cá với kỹ thuật lƣu lƣợng MPLS (MPLS TE):

Hình II.1 Bài toán con cá với MPLS TE

MPLS TE hoạt động giống nhƣ ATM, nhƣng có những điểm khác biệt: - MPLS TE chuyển tiếp gói (packet); ATM sử dụng tế bào (Cell).

- ATM yêu cầu mạng lƣới đầy đủ các tuyến lân cận (routing adjacenies) còn MPLS không cần.

- Trong ATM, công nghệ lõi không thể thấy các router trên biên của mạng, còn MPLS thấy đƣợc nhờ các giao thức định tuyến IP quảng bá (advertise) thông tin của nó.

II.2.1. Cấu hình cơ bản MPLS TE

Để cài đặt kỹ thuật lƣu lƣợng MPLS, mạng cần có các điều kiện sau:

Cài đặt hệ điều hành Cisco (Cisco IOS) có hỗ trợ Kỹ thuật lƣu lƣợng MPLS. Trong mạng cho phép CEF (Cisco Express Forwarding). Một giao thức định tuyến trạng thái liên kết (OSPF hoặc IS-IS) cũng nhƣ giao thức cổng nội IGP (Interior Gateway Protocol). Các router có hỗ trợ MPLS TE. Một giao diện loopback (mặt nạ 255.255.255.255) sử dụng nhƣ MPLS Traffic Engineering router ID (RID). Các lệnh cấu hình đƣờng hầm TE cơ bản xem thêm Phụ lục 1.

II.2.2. Các dạng thông tin đƣợc phân phối Băng thông có sẵn (available bandwidth) :

Một thuộc tính quan trọng của MPLS TE là khả năng dành riêng băng thông qua mạng. Cấu hình một lƣợng băng thông dành riêng trên một liên kết bằng cách sử dụng lệnh sau:

router(config-if)#ip rsvp bandwidth [<1-10000000 total-reservable- bandwidth>[per-flow-bandwidth]]

Độ ƣu tiên đƣờng hầm (Tunnel Priortity) :

MPLS TE cung cấp cơ chế ƣu tiên cho một số đƣờng hầm làm việc trƣớc những đƣờng hầm khác. Mỗi đƣờng hầm có một độ ƣu tiên, các đƣờng hầm ít quan trọng hơn bị đẩy ra khỏi đƣờng đi và đƣợc tính toán lại đƣờng đi, và tài nguyên của nó nhƣờng lại cho đƣờng hầm quan trọng hơn.

Các mức độ ƣu tiên (Priority Level):

Một đƣờng hầm có thể đƣợc thiết lập độ ƣu tiên với giá trị trong khoảng từ 0 đến 7. Giá trị ƣu tiên càng lớn thì sự quan trọng của đƣờng hầm càng thấp.

Những cơ sở của sự chiếm quyền :

Những đƣờng hầm quan trọng hơn có quyền đẩy những đƣờng hầm khác ra khỏi đƣờng đi khi muốn dành riêng băng thông. Điều này đƣợc gọi là sự chiếm trƣớc đƣờng hầm (tunnel preemption).

Độ ƣu tiên thiết lập và độ ƣu tiên lƣu giữ :

Mỗi đƣờng hầm có hai độ ƣu tiên : độ ƣu tiên thiết lập (Setup priority) và độ ƣu tiên lƣu giữ (Hold priority).

Cả hai độ ƣu tiên đƣợc xác định chi tiết trong RFC 3209. Khi một đƣờng hầm đƣợc thiết lập lần đầu tiên ta quan tâm đến độ ƣu tiên thiết lập của nó lúc quyết định công nhận đƣờng hầm đó. Khi có đƣờng hầm khác đến cạnh tranh băng thông trên liên kết với đƣờng hầm đầu tiên này, độ ƣu tiên thiết lập của đƣờng hầm mới

đƣợc so sánh với độ ƣu tiên lƣu giữ của đƣờng hầm đầu tiên. Độ ƣu tiên thiết lập có thể khác với độ ƣu tiên lƣu giữ cho một vài ứng dụng thực tế. Cấu hình độ ƣu tiên cho đƣờng hầm:

tunnel mpls traffic-eng priority setup [holding]

Nếu không chỉ định một độ ƣu tiên lƣu giữ thì ngầm định bằng với giá trị của độ ƣu tiên thiết lập. Độ ƣu tiên ngầm định là 7 (cho cả hai độ ƣu tiên thiết lập và lƣu giữ).

Các cờ thuộc tính (Attribute Flags):

Một đặc tính khác của MPLS TE là các cờ thuộc tính. Một cờ thuộc tính là một ảnh bipmap 32-bit trên một kết nối có thể chứa 32 thuộc tính riêng biệt trên một kết nối. Lệnh trên kết nối nhƣ sau:

router(config-if)#mpls traffic-eng attribute-flags attributes (0x0- 0xFFFFFFFF)

Các thuộc tính (attributes) có thể từ 0x0 đến 0xFFFFFFFF. Nó đại diện một ảnh bitmap của 32 thuộc tính (bit), với giá trị của một thuộc tính là 0 hoặc 1. Ngầm định là 0x0, hay tất cả 32 thuộc tính trong ảnh bitmap là 0. Bạn có thể tự quyết định cho những bit này.

Trong trƣờng hợp muốn tất cả các liên kết đều mang giá trị cờ nhƣ nhau, ta dùng câu lệnh với mặt nạ sau:

tunnel mpls traffic-eng affinity 0x0-0xFFFFFFFF string [mask <0x- 0xFFFFFFFF>]

Trọng số quản trị của cổng (Administrative Weight):

Chi phí trên kết nối chia làm hai loại: chi phí điều khiển lƣu lƣợng (TE cost) và chi phí của giao thức cổng nội (IGP cost). Cho phép tính toán đƣờng đi TE, thiết lập chi phí kết nối khác với đƣờng đi ngắn nhất đầu tiên của giao thức IGP (IGP SPF).Chi phí TE ngầm định trên một kết nối bằng với chi phí IGP. Thay đổi chi phí TE khác với chi phí IGP bằng cách sử dụng lệnh sau:

mpls traffic-eng administrative-weight (0-4294967295)

Administrative-weight là lệnh dùng để thiết lập trọng lƣợng quản trị hay metric trên một giao tiếp.

II.2.3. Khi nào thông tin đƣợc phân phối

Trong một mạng khi không sử dụng kỹ thuật lƣu lƣợng MPLS (MPLS TE), các giao thức IGP có thể làm tràn (flood) thông tin trong một kết nối trong ba trƣờng hợp:

- Một là, khi một liên kết hoạt động hay không (up or down).

- Hai là, khi một cấu hình của kết nối thay đổi (Ví dụ: thay đổi chi phí kết nối,…).

- Ba là, khi đến thời gian làm tràn thông tin IGP định kỳ của router. Các hoạt động gây ngập này đƣợc kết hợp với các loại bộ định thời gian. Sự khác biệt của chúng phụ thuộc vào giao thức IGP đƣợc sử dụng.

Còn khi sử dụng MPLS TE, có thêm một nguyên nhân khác để làm tràn thông tin: khi băng thông của kết nối thay đổi. Khi các đƣờng hầm đƣợc thiết lập (set up) và bị giảm đi qua các cổng, lƣợng băng thông có sẵn trên cổng sẽ bị thay đổi để phù hợp cho một giao tiếp đó.

II.2.4. Thông tin đƣợc phân phối nhƣ thế nào?

Phần này, chúng ta sẽ tìm hiểu cách MPLS TE phân phối thông tin trong các giao thức IGP, cụ thể là giao thức OSPF.

Ta dùng hai câu lệnh để kích hoạt MPLS TE trong OSPF:

router ospf 1

mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0

- mpls traffic-eng router-id Loopback0 : Đặt TE RID, tƣơng tự nhƣ OSPF RID nhƣng mang giá trị khác.

- mpls traffic-eng area 0 : Chỉ ra khu vực mà TE (kỹ thuật lƣu lƣợng) sẽ

hoạt động.

Và một câu lệnh nữa hữu ích trong MPLS TE OSPF khi gặp phải sơ đồ mạng nhƣ hình sau :

Hình II.2 Liên kết ảo trong mạng OSPF [1] (Hình 3-7 Chương 3) mpls traffic-eng interface interface-name area area

Trong đó, interface-name là tên của cổng của liên kết ảo và Area là tên vùng mà muốn quảng bá liên kết ảo.

II.3. TÍNH TOÁN VÀ THIẾT LẬP ĐƢỜNG ĐI TRONG MPLS TE II.3.1. Thuật toán SPF (Shortest path first)

Thuật toán SPF là thuật toán tìm đƣờng đi ngắn nhất đƣợc sử dụng trong giao thức OSPF và IS –IS.

Các bƣớc hoạt động của SPF:

Bƣớc 1: Đặt nút cần xét trong danh sách PATH khoảng cách bằng 0, và tên

1 nút kế tiếp của nó. Router chạy SPF tham chiếu đến nút cần xét.

Bƣớc 2: Đặt tên nút bổ sung vào cây đƣờng ngắn nhất là V. Đối với mỗi kênh nối vào nút này, kiểm tra các nút phía còn lại của kênh. Đánh dấu các nút này là W.

Nếu nhƣ nút W này đã có trong danh sách cây đƣờng ngắn nhất thì kiểm tra tiếp với các kênh còn laị nối với nút V. Trong trƣờng hợp ngƣợc lại (W không nằm trong danh sách cây đƣờng ngắn nhất) thì tính độ dài của đƣờng nối từ gốc đến nút W ( độ dài này bằng tổng độ dài của đƣờng nối từ gốc đến nút V cộng với độ dài từ nút V đến nút W).

Nếu nhƣ W không nằm trong danh sách các nút ứng cử thì giá trị độ dài đƣờng hiện thời lớn hơn giá trị độ dài đƣờng mới tính và gán giá trị độ dài đƣờng từ gốc đến nút W bằng độ dài mới tính

Bƣớc 3: Trong danh sách nút ứng cử tìm một nút với độ dài đƣờng ngắn nhất. Bổ sung nút này vào cây đƣờng ngắn nhất và xoá nút này khỏi danh sách nút ứng cử. Nếu nút này là nút D thì thuật toán kết thúc và ta đƣợc cây đƣờng ngắn nhất từ nút nguồn SPF đến nút đích D. Nếu nhƣ nút này chƣa phải là nút D thì quay trở lại bƣớc 2

II.3.2. Thuật toán CSPF (Contrained shortest path first) II.3.2.1. Giới thiệu

 Có hai điểm khác biệt đáng quan tâm giữa SPF bình thƣờng do các giao thức định tuyến thực hiện và CSPF của MPLS TE. Thứ nhất, tiến trình thiết lập tuyến không đƣợc thiết kế để tìm ra đƣờng đi tốt nhất đến mọi bộ định tuyến mà chỉ đến điểm cuối đƣờng hầm (tunnel endpoint). Thứ hai, thay vì chỉ quan tâm đến một loại chi phí trên kết nối giữa hai láng giềng còn phải quan tâm đến: băng thông, các thuộc tính kết nối, trọng số quản trị, bốn thuộc tính đƣợc thể hiện hiện trong danh sách PATH/TENT: {link, cost, next hop, available bandwidth}.

II.4.2.2. Các bƣớc hoạt động của CSPF

Bƣớc 1: Một nút tự đƣa thông tin của chính mình vào danh sách PATH với

cost = 0, nút kế tiếp là chính nó và thiết lập băng thông = N/A.

Bƣớc 2: Xem xét nút vừa vào danh sách PATH, và gọi nó là nút PATH. Kiểm tra danh sách các nút láng giềng của nó. Thêm mỗi láng giềng vào danh sách TENT với một nút kế tiếp của nút PATH, trừ khi nút láng giềng đã có có danh sách TENT hoặc PATH với chi phí thấp hơn. Không thêm đƣờng đi này vào TENT trừ khi nó đƣợc cấu hình ràng buộc cho đƣờng hầm – băng thông (bandwidth) và quan hệ (affinity). Nếu nút vừa đƣợc thêm vào danh sách TENT đã có trong danh sách, nhƣng với một chi phí cao hơn hoặc thấp hơn băng thông tối thiểu, thay thế đƣờng đi có chi phí cao hơn bằng đƣờng hiện tại.

Bƣớc 3: Tìm láng giềng trong danh sách TENT với chi phí thấp hơn, thêm láng giềng đó vào danh sách PATH, và lặp lại bƣớc 2. Nếu TENT rỗng hoặc trên PATH còn lại nút ở cuối đƣờng hầm thì dừng.

II.3.2.3. Các phƣơng pháp quyết định trong CSPF (Tiebreakers in CSPF)

SPF thông thƣờng (dùng trong OSPF, IS-IS) có thể sử dụng nhiều đƣờng đi đến đích có cùng chi phí. Điều này thỉnh thoảng đƣợc gọi là ECMP – Equal-Cost MultiPath, nó rất hữu dụng trong giao thức định tuyến nội (IGP – Interior Gateway Protocol). Tuy nhiên trong CSPF, không đƣợc tính mọi đƣờng đi tốt nhất đến mọi đích có thể. Bạn phải tìm một đƣờng đi đến một đích. Bạn sẽ làm gì khi đặt một nút vào TENT và nút đó đã có trong TENT với cùng chi phí? Bạn cần tìm ra một cách để phân biệt các đƣờng đi với nhau. Đây là các phƣơng pháp quyết định đƣờng đi có cùng chi phí:

- Chọn đƣờng đi có băng thông có sẵn tối thiểu rộng nhất.

- Nếu chƣa đƣợc, chọn đƣờng đi có hop count thấp nhất (số lƣợng router trong đƣờng đi).

- Nếu vẫn chƣa thỏa, chọn đƣờng đi ngẫu nhiên.

II.3.2.4. Những yếu tố khác ảnh hƣởng đến CSPF

Băng thông khá quan trọng. Một đƣờng đi không đƣợc chọn sử dụng cho một đƣờng hầm MPLS TE cụ thể nếu nó không có đủ băng thông yêu cầu.

Thuộc tính kết nối cũng nhƣ băng thông, nếu các bit của một đƣờng hầm không phù hợp với chuỗi thuộc tính đƣợc cấu hình trên một kết nối, kết nối đó không đƣợc lựa chọn để sử dụng cho một đƣờng hầm MPLS TE cụ thể.

Trọng số quản trị đƣợc sử dụng bởi IGP khi nó làm ngập lụt thông tin điều khiển lƣu lƣợng (traffic enfineering information). Ngầm định chỉ trọng số quản trị đƣợc dùng để tính toán đƣờng đi của đƣờng hầm.

II.3.3. Tính toán lại đƣờng đi trong MPLS TE (tunnel reoptimization)

Điều gì xảy ra nếu trong lúc một đƣờng hầm đang hoạt động, một đƣờng đi khác tốt hơn xuất hiện.

Khi một router tìm thấy một đƣờng đi tốt hơn đƣờng hầm TE đã đƣợc lập thì đƣợc xem là tái tối ƣu. Các yếu tố tác động đến sự tái tối ƣu:

- Tái tối ƣu định kỳ (periodic reoptimization).

- Tái tối ƣu thủ công (manual reoptimization).

- Tái tối ƣu hƣớng theo sự kiện (Event-driven reoptimization)

Tái tối ƣu không đƣợc thực hiện khi đƣờng hầm bị rớt. Nếu một đƣờng bị rớt thì không cần đợi bộ định thời tái tối ƣu (reoptimization timer) kích hoạt trƣớc khi tìm ra đƣờng hầm mới mà việc tính toán sẽ đƣợc thực hiện ngay lập tức.

Tái tối ƣu định kỳ (periodic reoptimization)

Cisco thực thi một bộ định thời tái tối ƣu định kỳ (periodic reoptimization timer), nó có thể đƣợc cấu hình toàn cục. Sau khi một đƣờng hầm đi vào hoạt động, tiến hành một sự cố gắng tìm ra một đƣờng đi mới cho nó, theo các ràng buộc đƣợc cấu hình của đƣờng hầm. Ngầm định, việc này đƣợc thực hiện một lần mỗi giờ. Bộ định thời này đƣợc cấu hình bằng lệnh :

mpls traffic-eng tunnels reoptimize timers frequency 0-604800.

Tái tối ƣu thủ công (manual reoptimization)

Khi có một thay đổi trong mạng mà bạn không muốn đợi bộ định thời tái tối ƣu của đƣờng hầm kích hoạt trƣớc khi tìm ra đƣờng đi tốt hơn, bạn có thể sử dụng lệnh sau: mpls traffic-eng reoptimize [tunnel-name] để buộc router thực hiện tái tối ƣu một đƣờng hầm cụ thể tại bất kỳ lúc nào.

Hình II.3 Ví dụ về sự xuất hiện ường hầm TE tốt hơn

Xem xét kết nối giữa RtrD và RtrH trong hình trên. Nếu kết nối hoạt động,

Một phần của tài liệu Triển khai Traffic Engineering nâng cao với MPLS (Trang 33)

Tải bản đầy đủ (PDF)

(97 trang)