Tải bản đầy đủ (.pdf) (7 trang)

Giáo trình Advanced Certificate in Information Technology - Sanlein part 5 doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (139.14 KB, 7 trang )

MPLS Traffic Engineering


Tác giả: Nguyễn Tuấn Vũ


I. Tổng quan về quản lý lưu lượng MPLS

Quản lý lưu lượng là quá trình điều khiển các tắt nghẽn trong mạng, xử lý,
tính toán, kiểm soát lưu lượng, tối ưu hóa các tài nguyên mạng theo yêu
cầu cho các mục đích khác nhau.

Trước khi MPLS ra đời, người ta thực hiện quản lý lưu lượng trên m
ạng IP
và ATM.

IP traffic engineering điều khiển lưu lượng dựa trên đơn giá của đường
truyền, không điều khiển được lưu lượng đến (traffic from), mà chỉ điều
khiển được lưu lượng đi (traffic to).
ATM traffic engineering sử dụng các PVC để truyền cho phép quản lý lưu
lượng tốt hơn. Tuy nhiên cần phải xây dựng full-mesh PVC và phải điều
chỉnh kích cỡ, vị trí của các PVC tuỳ vào loại traffic tại mỗi thời điểm, khi
một kết nối bị down sẽ tạo ra flooding rất lớn.

MPLS traffic engineering kết hợp những lợi điểm của ATM TE với tính
linh hoạt, mềm dẻo của mạng IP cho phép xây dựng đường chuyển mạch
nhãn LSP (còn gọi là TE tunnel) để truyền lưu lượng.

MPLS TE tránh được vấn đề flooding mà ATM gặp phải do MPLS TE sử
dụng cơ chế gọi là autoroute để xây dựng bảng định tuyến thông qua các
tunnel mà không cần dựa vào full-mesh of routing như ATM.



II. Yêu cầu để cấu hình MPLS TE

- Router và IOS có hỗ trợ MPLS TE.
- Mạng có hỗ trợ Cisco Express Forwarding (CEF).
- Giao thức định tuyến link-state: OSPF hay IS-IS
- Kích hoạt traffic engineering ở global mode và ở interface mode
Router(config)#mpls traffic-eng tunnels
Router(config-if)#mpls traffic-eng tunnels
- Interface loopback để làm routerID (RID) trong MPLS TE
int lo0
ip address 10.1.1.1 255.255.255.255
- Cấu hình TE tunnel, ví dụ:
int Tunnel0
ip unnumbered Loopback0
tunnel mode mpls traffic-eng
tunnel destination <địa chỉ IP đích>


III. Hoạt động của MPLS TE

Gồm 3 quá trình: Phân phối thông tin tài nguyên hiện có, thiết lập đường
truyền và vận chuyển lưu lượng theo các tunnel.

1 Information Distribution
Ta cần giải quyết 3 vấn đề: thông tin gì được phân phối, khi nào thì thực
hiện phân phối thông tin và thông tin được phân phối như thế nào?
(What/When/How information is distributed)

1.1 What information is distributed?


MPLS TE sử dụng OSPF/IS-IS để phân phối thông tin về tài nguyên hiện
có. Các thông tin phân phối bao gồm:
- Thông tin về băng thông hiện có trên interface
Router(config-if)# ip rsvp bandwidth <kbps>
- Độ ưu tiên của tunnel
Tunnel có priority mang giá trị từ 0 đến 7, giá trị càng thấp thì càng ưu
tiên, chia làm 2 loại Setup priority và Holding Priority. Setup priority
quyết định khi nào thì chấp nhận 1 tunnel. Setup priority của tunnel mới
được dùng để so sánh với Hold Priority của tunnel cũ để ra quyết định sẽ
chọn tunnel nào.
Router(config-if)# mpls traffic-eng priority 1 7
Ví dụ ta có tunnel1 và tunnel2 cùng yêu cầu sử dụng băng thông, cả 2 đều
có SP = 1 và HP = 7. Khi đó:
1. Tunnel1 đến trước và chiếm dụng băng thông với HP=7.
2. Tunnel2 đến sau, so sánh SP của tunnel 2 (1) <HP của tunnel 1(7) nên
sẽ ưu tiên cho tunnel2 và đẩy Tunnel1 ra khỏi đường truyền, tunnel2
chiếm dụng băng thông với HP=7.
3. Tunnel1 đến, so sánh SP> HP của tunnel 2 nên sẽ đẩy tunnel2 ra khỏi
đường truyền và chiếm dụng băng thông với HP=7.
Quá trình lặp lại…

Recommend: Ta thường cấu hình giá trị Setup Priority > Hold Priority.

- Các thuộc tính cờ (attribute flags)
Attribute flag gồm 32 bit chỉ trạng thái, tính chất của đường truyền.
Router(config-if)#mpls traffic-eng attribute-flags 0x3
(Phần này chưa rõ lắm)

-Trọng số (administrative weight) của interface

Giải thuật SPF sử dụng cost để tính toán đường đi. Mặc định TE cost =
IGP cost. Giả sử kết nối 2 router có TE metric = IGP metric = 1. Để thay
đổi TE cost mà không đổi IGP cost ta sử dụng lệnh:
Router(config-if)# mpls traffic-eng administrative-weight 3
Khi đó TE metric = TE admin weight = 3, IGP metric = 1

Một vấn đề đặt ra là khi nào thì thông tin được phân phối?

1.2 When information is distributed?

Khi mạng không dùng MPLS TE, IGP sẽ flood các thông tin đư
ờng truyền
khi: thay đổi trạng thái kết nối (a link goes up or down), khi cấu hình kết
nối thay đổi (link cost is modified, or link’s configuration is changed,…),
khi đến chu kỳ flooding dữ liệu.

MPLS TE có thêm 1 yếu tố nữa để ra quyết định flooding là khi băng
thông thay đổi đáng kể. Tunnel được thiết lập hay loại bỏ dựa vào sự thay
đổi băng thông dành trước trên interface. Nhưng khi nào thì router sẽ
thông báo sự thay đổi băng thông này? Nếu router sẽ thông báo khi có sự
thay đổi băng thông thì với số lượng lớn tunnel thay đổi, thông tin
flooding này cũng sẽ chiếm đầy tài nguyên mạng chẳng khác gì so với
IGP. Do đó ta phải định ra ngưỡng giới hạn để điều khiển quá tr
ình này, có
3 cách xác định ngưỡng:

- Flood significant changes immediately
Router(config-if)#mpls traffic-eng flooding thresholds {up|down} <list of
threshold percentages>
Percent là phần trăm băng thông dành cho kết nối.

Up/Down là nếu sử dụng băng thông vượt qua ngưỡng/thấp hơn ngưỡng
thì sẽ thực hiện flooding.

- Flood insignificant changes periodically, but more often than the IGP
refresh interval
Router(config)# mpls traffic-eng link-management timers periodic-
flooding <0-3600s>
Mặc định, sau 3 phút sẽ kiểm tra TE Link Manager, nếu có sự thay đổi về
yêu cầu dự trữ băng thông thì sẽ tiến hành flooding.

Recommend: Không nên thay đổi chu kỳ flooding, nếu ta thay đổi chu kỳ
quá thấp như 1s thì router sẽ làm việc liên tục và hậu quả sẽ khó lường.

- If a change that has not yet been flooded is known to cause an error,
flood immediately
Khi có error do RSVP gửi về khi thiết lập đường truyền thì sẽ tiến hành
flooding thông tin đi để thông báo trạng thái.

Kế tiếp ta xem xét thông tin sẽ được phân phối như thế nào?

1.3 How Information Is Distributed?
ở đây ta quan tâm đến MPLS TE trong OSPF.
Router ospf 1
Mpls traffic-eng router-id Loopback0
Mpls traffic-eng area 0
LSA mờ(opaque LSA – LSA type 10) định nghĩa thêm trường TLV
(Type/Length/Variable) được sử dụng để trao đổi thông tin.

1. How SPF Works
Giả sử ta có mạng như hình 1, khi tính toán SPF, mỗi router sẽ xây dựng 2

danh mục PATH list(chứa danh mục các shortest path để đến đích) và
TENT list(chứa danh mục các next-hop trong quá trình tính toán). Trong
đó, (node, cost, next-hop) sẽ biểu diễn kết quả tính toán trên mỗi router.

PATH list TENT list
B1: (A,0,0)……………(empty)

B2: (A,0,0)……………(B,5,B), (C,10,C)

B3: (A,0,0)……………(C,10,C)
(B,5,B)

B4: (A,0,0)
(B,5,B)……………(C,8,B), (D,13,B)

B5: (A,0,0)…………….(D,13,B)
(B,5,B)
(C,8,B)

B6: (A,0,0)
(B,5,B)……………(D,12,C)
(C,8,B)

B7: (A,0,0)…………… (empty)
(B,5,B)
(C,8,B)
(D,12,C)

Khi đó, bảng định tuyến trên router A là:
Node

Cost Next Hop
A……………………0………………….Self
B……………………5………………….B (directly connected)
C……………………8………………….B
D………………… 12………………….C

Khi đó các đường đi xuất phát từ A là A—B, A—B—C, A—B—C—D

2. How CSPF Works
Đường đi ngắn nhất trong MPLS TE còn phải dựa vào các yếu tố về
bandwidth, link attributes và administrative weight.

Giả sử băng thông cấp phát cho các kết nối như sau: A-B(100Mbps), A-
C(100), B-C(50), B-D( 90), C-D(60). Xem hình 2

Khi đó đường đi từ A—B—C—D có cost là 12 sẽ chỉ cho phép băng
thông cao nhất là 60Mbps.

Giải thuật CSPF có đưa tham số bandwidth để tính toán (node, cost, next-
hop, bandwidth)

PATH list TENT list
B1:…(A,0,self,N/A)……(empty)

B2:…(A,0,self,N/A)……(B,5,B,100), (C,10,C,100)

B3:…(A,0,self, N/A)…(C,10,C,100)
………(B,5,B,100)………(D,13,B,90)

B4:…(A,0,self, N/A)……(D,13,B,90)

………(B,5,B,100)
………(C,10,C,100)

B5:…(A,0,self, N/A)…….(empty)
………(B,5,B,100)
………(C,10,C,100)
………(D,13,B,90)


Khi đó, bảng định tuyến trên router A là:
Node
Cost Bandwidth Next Hop
A 0 N/A Self
B 5 100 B (directly connected)
C 8 100 C
D 12 90 B
Các đường đi xuất phát từ A: A—B, A—C, A—B—D

3. Resource Reservation Protocol (RSVP)
Sau khi tính toán xong đường đi bằng giải thuật CSPF sẽ thực hiện thiết
lập đường truyền thông qua giao thức dự trữ tài nguyên RSVP.

Xét ví dụ hình 3, giả sử ta muốn dự trữ tài nguyên theo đường hầm R1-R2-
R3-R5-R6-R7, các bước thực hiện như sau:

1. R1 gửi PATH message đến R2, R2 nhận thông điệp, kiểm tra định dạng
thông điệp, kiểm tra trạng thái kết nối TE Link Manager để đảm bảo có đủ
băng thông yêu cầu cấp phát. Nếu có sai sót, R2 sẽ gửi error message về
lại R1. Nếu tất cả đều tốt, chuyển sang bước 2.
2. R2 gửi PATH mess đến R3, kiểm tra tương tự R1

3. R3 gửi PATH mess đến R5, kiểm tra tương tự
4. R5 gửi PATH mess đến R6, kiểm tra tương tự
5. R6 gửi PATH mess đến R7, kiểm tra tương tự
6. R7 là cuối tunnel, sẽ gửi RESV message về lại R6 báo rằng nhãn R7 sẽ
cấp phát cho các gói trên đường truyền này là explicit-null.
7. R6 gửi RESV mess đến R5 và báo là muốn nhận nhãn đến mang giá trị
42. Nghĩa là trên đường truyền R5-R6, traffic sẽ nhận nhãn 42 và thực
hiện loại bỏ nhãn tại R6 (label swaping) để gửi đến R7.
8. R5 gửi RESV mess đến R3, báo nhãn cho R3 là 10921.
9. R3 gửi RESV mess đến R2, báo nhãn cho R2 là 21.
10. R2 gửi RESV mess đến R1, báo nhãn cho R1 là 18.

Khi R1 nhận thông điệp RESV, đường hầm từ R1 đến R2 sẽ sẵn s
àng và ta
biết được giá trị nhãn sử dụng trong tunnel.

Còn rất nhiều các vấn đề khac như điều khiển lưu lượng đi qua tunnel dựa
vào static route, policy routing, autoroute, vấn đề sử dụng chung băng
thông, cân bằng tải và điều khiển metric trong đường hầm TE tunnel, vấn
đề chất lượng dịch vụ trong MPLS TE, Fast Reroute (FRR)…

×