Định tuyến IP truyền thống qua bộ xử lý Router không còn đáp ứng được các nhu cầu tin cậy, tốc độ , độ trễ….Việc xử lý một gói tin IP sẽ rất phức tạp và mất nhiều thời gian khi phải tìm
Trang 1TRIỂN KHAI CÔNG NGHỆ CHUYỂN MẠCH NHÃN MPLS - VPN
*****
Tóm tắt
Internet ngày càng được mở rộng và phát triển, kèm theo đó là sự đáp ứng nhu cầu sử dụng và các dịch
vụ về chất lượng và độ trễ Định tuyến IP truyền thống qua bộ xử lý Router không còn đáp ứng được các nhu cầu tin cậy, tốc độ , độ trễ….Việc xử lý một gói tin IP sẽ rất phức tạp và mất nhiều thời gian khi phải tìm kiếm trong bảng định tuyến, cập nhật, và tốn tài nguyên để xử lý
Để khắc phục những nhược điểm trên thì công nghệ chuyển mạch nhãn đa giao thức MPLS (Multiple Protocol Lable Switching) đã ra đời để đáp ứng các nhu cầu về tốc độ và chuyển mạch nhanh của Internet MPLS là công nghệ kết hợp những ưu điểm của định tuyến lớp 3 và chuyển mạch lớp 2, cho phép chuyển tải các gói rất nhanh trong mạng lõi (Core Network) và định tuyến tốt ở mạng biên (Edge Network) bằng cách dựa vào nhãn (label) MPLS được các thành viên IETF xây dựng và chuẩn hóa Một trong những ứng dụng tiêu biểu của công nghệ MPLS là MPLS - VPN Với MPLS, độ trễ trong mạng được giữ ở mức thấp nhất do các gói tin trong mạng không phải thông qua các hoạt động đóng gói và
mã hóa MPLS - VPN đảm bảo tính riêng biệt và bảo mật, có cách đánh địa chỉ linh hoạt, cơ chế xử lý thông tin của MPLS - VPN nằm trong phần lõi độc lập với khách hàng Điểm nổi bật là mạng khách hàng không cần yêu cầu thiết bị hỗ trợ MPLS, đồng thời dễ mở rộng và phát triển MPLS - VPN cũng là đối tượng nghiên cứu chính trong đề tài này
Từ khóa: MPLS, MPLS VPN, Lable Switching, Multiple Protocol
1 GIỚI THIỆU
Ngày nay, với sự phát triển của ngành công nghệ thông tin và điện tử viễn thông đã đóng góp không nhỏ trong những hoạt động kinh doanh của doanh nghiệp Không một tổ chức nào phủ nhận sự đóng góp của công nghệ trong lộ trình phát triển kinh doanh của họ Mỗi một tổ chức đã bắt đầu ý thức nhiều hơn về việc đầu tư vào công nghệ thông tin không chỉ ở hạ tầng mạng nội bộ LAN mà đã đi sâu hơn về mạng diện rộng WAN để mở rộng hơn cánh cửa kinh doanh của mình ở trong nước mà vươn ra quốc tế
Để đáp ứng sự phát triển và đầu tư, yêu cầu về tốc độ, chi phí, dịch vụ băng thông, và khả năng phục vụ của các công nghệ WAN truyền thống thư TDM, FRAME RELAY, ATM….đã không còn theo kịp với thời đại Công nghệ MPLS ra đời để đáp ứng những yêu cầu của thi trường Công nghệ MPLS với dịch vụ mạng riêng ảo VPN là giải pháp để kết nối mạng linh hoạt, mềm dẻo, chi phí thấp và điểm nổi bật hơn là hợp nhất hạ tầng mạng sẵn có
2 TỔNG QUAN VỀ MPLS
MPLS là chữ viết tắt của Multi Protocol Label Switching, chuyển mạch nhãn đa giao thức Mỗi gói tin IP bao gồm cả IPv4 và IPv6 hoặc cả những khung Frame lớp 2 khi đi vào miền MPLS sẽ được gán nhãn và truyền đi trong môi trường mạng Bằng cách này gói tin có thể chuyển mạch nhanh hơn và có thể kết hợp được đa tầng mạng hợp nhất
2.1 Cấu trúc MPLS
Cấu trúc của MPLS sẽ chia làm 02 mặt phẳng riêng biệt
- Mặt phẳng điều khiển: chứa các giao thức định tuyến để thiết lập các đường đi được sử dụng cho việc chuyển tiếp gói tin ở lớp 3 Ngoài ra mặt phẳng điều khiển còn chứa giáo thức phân phối nhãn để đáp ứng cho việc tạo và duy trì thông tin chuyển tiếp nhãn (gọi là binding) giữa một nhóm switch chuyển mạch nhãn kết nối với nhau Các giao thức định tuyến như OSPF, ISIS, EIGRP và các giao thức trao đổi nhãn như LDP, BGP
Trang 2- Mặt phẳng dữ liệu: sử dụng cơ sở dữ liệu chuyển tiếp nhãn (LFIB-label forwarding information base) được duy trì bởi một thiết bị chuyển mạch nhãn để thực hiện việc chuyển tiếp gói tin dựa trên thông tin nhãn mang trên gói tin Mặt phẳng dữ liệu chỉ là một thành phần chuyển tiếp dựa trên nhãn đơn giản độc lập với các giao thức định tuyến và các giao thức trao đổi nhãn
Hình 1: Cấu trúc MPLS 2.2 Cấu trúc nhãn
Nhãn của MPLS là 1 trường 32 bit cố định với cấu trúc xác định Trong đó :
- Label : có giá trị từ 0->220 -1 Giá trị từ 0 à15 là giá trị dành riêng, sử dụng giá trị từ 16 -> 220 -1
- EXP (Experimental) : dùng cho QoS
- S (Bottom of Stack) : cho biết đây là nhãn cuối cùng của chồng nhãn (label stack) chưa
- TTL (Time – To – Live) : tương tự như trường TTL của IP header
Hình 2: Nhãn MPLS
Một số nhãn đặt biệt trong công nghệ MPLS:
Hình 3: Nhãn đặc biệt trong MPLS
- Nhãn untagged: gói MPLS được chuyển thành gói IP và được chuyển tiếp đến đích Untagged được dùng trong thực thi MPLS VPN
- Nhãn pop hay implicit null:
Trang 3• Nhãn này được gán bằng P Router gần LSR nhất khi gói tin MPLS được chuyển đến LSR.
• Dùng 1 giá trị riêng là 3 khi được quảng bá bởi LSR láng giềng
• Nhãn được dùng trong mạng MPLS cho những trạm kế cuối
- Nhãn Explicit-null:
• Được gán để giữ giá trị EXP cho nhãn top của gói đến
• Được sử dụng khi thực hiện QoS với MPLS
- Nhãn aggregate: với nhãn này, khi gói tin MPLS đến nó bị bóc tất cả nhãn trong chồng nhãn ra thành gói IP, sau đó tìm kiếm trong FIB để xác định giao thức ngõ ra cho gói tin này
2.3 Qúa trình gán nhãn cho gói tin
- Xây dựng bảng định tuyến
• Các Router sau khi khởi tạo sẽ dựa vào giao thức định tuyến để xây dựng bảng định tuyến RIB (Routing Table Information Base) và được lưu trử trong mặt phẳng điều khiển
• Dựa vào bảng RIB, Router sẽ tạo ra bảng FIB (Forwarding Information Base) và được lưu trữ trong mặt phẳng dữ liệu
Hình 4: Xây dựng bảng FIB
- Xây dựng bảng LIB
• Giao thức trao đổi nhãn LDP sẽ khởi tạo và trao đổi nhãn giữa những Router trong miền MPLS để tạo ra bảng LIB (Label Information Base)
Trang 4Hình 5: Xây dựng bảng LIB
- Xây dựng bản LFIB
• Sự kết hợp giữa bản LIB và bảng FIB sẽ tạo ra bảng LFIB
Hình 6: Xây dựng bảng LFIB
- Chuyển tiếp gói tin
• Ở chặn đầu tiên, gói tin IP đi vào miền MPLS, Router biên sẽ dựa vào địa chỉ đích tìm kiếm trong bảng FIB để gán nhãn cho gói tin
• Ở chặn kế tiếp, Router trong miền MPLS sẽ dựa vào nhãn được lưu trong bảng LFIB để xác định nút kế tiếp, thay đổi nhãn và forward gói tin đi
Trang 5• Ở chặn cuối cùng, Router biên sẽ dựa vào nhãn đặc biệt để gở bỏ gói tin và gởi ra ngoài miền MPLS
Hình 7: Chuyển tiếp gói tin trong MPLS
3 ỨNG DỤNG CÔNG NGHỆ MPLS - VPN
3.1 Giới thiệu
VPN là công nghệ mạng riêng ảo được xây dựng dựa trên hạ tầng của MPLS Một mạng riêng yêu cầu
các khách hang đầu cuối có thể kết nối với nhau và hoàn toàn độc lập với các mạng riêng khác Ngày nay, mỗi công ty đều có các chi nhánh được phân bố khắp nơi, yêu cầu của công nghệ VPN là xây dựng các kết nối ảo (Tunnel) thay cho các kết nối thật (Lease Line) kết nối các chi nhánh lại với nhau thông qua hạ tầng của nhà cung cấp dịch vụ chung Dịch vụ VPN được xây dựng dưa trên 2 mô hình chính:
- Overlay VPNs: dùng khi ISP cung cấp kết nối ảo (virtual point-to-point links) giữa các site khách hàng (Frame Relay là 1 ví dụ của Overlay VPNs)
Hình 8: Overlay VPNs
- Peer-to-peer VPNs: dùng khi ISP cùng tham gia trong quá trình định tuyến cho khách hàng
Trang 6Hình 9: Peer-to-peer VPNs 3.2 Mô hình mạng MPLS VPN
Nhà cung cấp dịch dụ sẽ cung cấp hạ tầng dung chung cho các khách hang có kết nối VPN Trong đó:
- Mạng khách hàng (customer network): thường là miền điều khiển của khách hàng gồm các thiết bị hay các router trải rộng trên nhiều site của cùng một khách hàng Các router CE- là những router trong mạng khách hàng giao tiếp với mạng của nhà cung cấp Ở hình 10, mạng khách hàng của Customer A gồm các router CE1-A, CE2-A và các thiết bị trong Site1 và Site2 của Customer A Các router CE của Customer A là CE1-A, CE2-A, router CE của Customer B là CE1-B, CE2-B
- Mạng của nhà cung cấp (provider network): miền thuộc điều khiển của nhà cung cấp gồm các router biên và lõi để kết nối các site thuộc vào các khách hàng trong một hạ tầng mạng chia sẻ Các router PE là các router trong mạng của nhà cung cấp giao tiếp với router biên của khách hàng Các router P là router trong lõi của mạng, giao tiếp với router lõi khác hoặc router biên của nhà cung cấp Trong hình 10, mạng của nhà cung cấp gồm các router PE1, PE2, P1, P2, P3, P4 Trong đó, PE1 và PE2 là router biên của nhà cung cấp trong miền MPLS - VPN cho khách hàng A và B Router P1, P2, P3, P4 là router nhà cung cấp (provider router)
Hình 10: Cấu trúc mạng MPLS - VPN 3.3 Thành phần trong cấu trúc MPLS VPN
Bảng định tuyến và chuyển mạch ảo VRF
Trang 7VRF -Virtual Routing Forwarding: là một tổ hợp định tuyến và chuyển mạch đi kèm với một giao thức định tuyến trên PE router Trên PE mỗi VRF được gán cho 1 VPN của khách hang để phân biệt các khách hang với nhau Chấp nhận cho phép các khách hang khác nhau có thể trùng lập IP lẫn nhau
Hình 11: Chức năng của VRF
Route Distinguisher
Trong mô hình định tuyến MPLS VPN, router PE phân biệt các khách hàng bằng VRF Tuy nhiên, thông tin này cần được mang theo giữa các router PE để cho phép truyền dữ liệu giữa các site khách hàng qua MPLS VPN backbone Router PE phải có khả năng thực thi các tiến trình cho phép các mạng khách hàng kết nối vào có không gian địa chỉ trùng lắp (overlapping address spaces) Router PE học các tuyến này
từ các mạng khách hàng và quảng bá thông tin này bằng mạng trục chia sẻ của nhà cung cấp (share provider backbone) Điều này thực hiện bằng việc kết hợp với RD (route distinguisher) trong bảng định tuyến ảo (virtual routing table) trên một route PE RD là một định danh 64-bit duy nhất, thêm vào trước 32-bit địa chỉ tuyến được học từ router CE tạo thành địa chỉ 96-bit duy nhất có thể được chuyển vận giữa các router PE trong miền MPLS Do đó, duy nhất một RD được cấu hình cho 1 VRF trên router PE Địa chỉ 96-bit cuối cùng (tổng hợp của 32-bit địa chỉ khách hàng và 64-bit RD) được gọi là một địa chỉ VPNv4 (Hình 12)
Địa chỉ VPNv4 được truyền tải giữa các Router PE bằng giáo thức MPBGP (Multiprotocol BGP)
Trang 8Hình 12: Hoạt động của RD
Route-Target (RT)
RD chỉ sử dụng riêng cho 1 VPN để phân biệt địa chỉ IP đẫn đến việc các khách hang có nhiều kết nối VPN trở nên khó giải quyết Khi thực thi các cấu trúc mạng VPN phức tạp (như: extranet VPN, Internet access VPNs, network management VPN…) sử dụng công nghệ MPLS VPN thì RT giữ vai trò nồng cốt Một địa chỉ mạng có thể được kết hợp với một hoặc nhiều export RT khi quảng bá qua mạng MPLS VPN Như vậy , RT có thể kết hợp với nhiều site thành viên của nhiều VPN
3.4 Thông tin định tuyến qua môi trường MPLS - VPN
Hình 13: Thông tin định tuyến qua môi trường MPLS
Gói tin IPv4 được gởi từ CE Router đến PE Router và được cập nhật vào trong bảng VRF
Gói tin IPv4 sẽ được gắn vào thông số RD để phân biệt những địa chỉ IP trùng lấp trở thành địa chỉ VPNv4 và được gởi từ PE router này đến PE router khác bằng giao thức MP BGP
PE Router đầu xa nhận được địa chỉ VPNv4 gở bỏ giá trị RD , cho vào bảng VRF dựa vào giá trị RT để xác định cổng ra và gởi đến cho CE Router đích
4 TRIỂN KHAI MPLS VPN CHO KHÁCH HÀNG
4.1 Mô hình triển khai
Trang 9Hình 14: Mô hình triển khai 4.2 Các bước triển khai cấu hình
- Bước 1: Enable CEF trên PE1, PE2, P
- Bước 2: Cấu hình giao thức định tuyến OSPF trên router PE1, PE2, P (các router trong miền MPLS
sử dụng giao thức OSPF để định tuyến)
- Bước 3: Cấu hình MPLS trên các interface hoạt động trong miền MPLS
- Bước 4: Cấu hình định tuyến BGP PE-PE trên router PE1, PE2
- Bước 5: Định dạng VRF và các thuộc tính trên router PE: cấu hình VRF trên router PE, RD, RT, liên kết với interface
- Bước 6: Cấu hình giao thức định tuyến RIPv2 giữa PE-CE
4.3 Kiểm tra cấu hình
A1#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 10.10.10.10/32 is directly connected, Loopback0
C 10.10.1.0/24 is directly connected, Ethernet0/0
11.0.0.0/24 is subnetted, 1 subnets
R 11.11.1.0 [120/5] via 10.10.1.2, 00:00:19, Ethernet0/0
30.0.0.0/24 is subnetted, 1 subnets
R 30.30.30.0 [120/5] via 10.10.1.2, 00:00:19, Ethernet0/0
A2#sh ip route
10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
R 10.10.10.10/32 [120/5] via 11.11.1.2, 00:00:05, Ethernet0/0
R 10.10.1.0/24 [120/5] via 11.11.1.2, 00:00:05, Ethernet0/0
11.0.0.0/24 is subnetted, 1 subnets
C 11.11.1.0 is directly connected, Ethernet0/0
30.0.0.0/24 is subnetted, 1 subnets
Trang 10C 30.30.30.0 is directly connected, Loopback0
B1#sh ip route
20.0.0.0/24 is subnetted, 1 subnets
C 20.20.20.0 is directly connected, Loopback0
40.0.0.0/32 is subnetted, 1 subnets
R 40.40.40.40 [120/5] via 10.10.2.2, 00:00:14, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
C 10.10.2.0 is directly connected, FastEthernet0/0
11.0.0.0/24 is subnetted, 1 subnets
R 11.11.2.0 [120/5] via 10.10.2.2, 00:00:14, FastEthernet0/0
B2#sh ip route
20.0.0.0/24 is subnetted, 1 subnets
R 20.20.20.0 [120/5] via 11.11.2.2, 00:00:12, Ethernet0/0
40.0.0.0/32 is subnetted, 1 subnets
C 40.40.40.40 is directly connected, Loopback0
10.0.0.0/24 is subnetted, 1 subnets
R 10.10.2.0 [120/5] via 11.11.2.2, 00:00:12, Ethernet0/0
11.0.0.0/24 is subnetted, 1 subnets
C 11.11.2.0 is directly connected, Ethernet0/0
P#sh ip route
Gateway of last resort is not set
1.0.0.0/32 is subnetted, 1 subnets
O 1.1.1.1 [110/2] via 10.10.3.2, 00:10:18, FastEthernet0/0
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/2] via 10.10.4.2, 00:10:18, FastEthernet0/1
10.0.0.0/24 is subnetted, 2 subnets
C 10.10.3.0 is directly connected, FastEthernet0/0
C 10.10.4.0 is directly connected, FastEthernet0/1
P#sh mpls int
Interface IP Tunnel Operational
FastEthernet0/0 Yes (ldp) No Yes
FastEthernet0/1 Yes (ldp) No Yes
P#sh mpls forwarding-table
Local Outgoing Prefix Bytes tag Outgoing Next Hop tag tag or VC or Tunnel Id switched interface
16 Pop tag 1.1.1.1/32 3783 Fa0/0 10.10.3.2
17 Pop tag 2.2.2.2/32 4331 Fa0/1 10.10.4.2
P#sh ip cef
Prefix Next Hop Interface
0.0.0.0/0 drop Null0 (default route handler entry)
0.0.0.0/32 receive
1.1.1.1/32 10.10.3.2 FastEthernet0/0
Trang 112.2.2.2/32 10.10.4.2 FastEthernet0/1 10.10.3.0/24 attached FastEthernet0/0 10.10.3.0/32 receive
10.10.3.1/32 receive
10.10.3.2/32 10.10.3.2 FastEthernet0/0 10.10.3.255/32 receive
10.10.4.0/24 attached FastEthernet0/1 10.10.4.0/32 receive
10.10.4.1/32 receive
10.10.4.2/32 10.10.4.2 FastEthernet0/1 10.10.4.255/32 receive
224.0.0.0/4 drop
224.0.0.0/24 receive
255.255.255.255/32 receive
PE1#sh run
version 12.4
!
hostname PE1
!
ip cef
ip vrf A
rd 1:1
route-target export 1:1
route-target import 1:1
!
ip vrf B
rd 2:2
route-target export 2:2
route-target import 2:2
!
interface Loopback0
ip address 1.1.1.1 255.255.255.255
!
interface FastEthernet0/0.1
encapsulation dot1Q 2
ip vrf forwarding A
ip address 10.10.1.2 255.255.255.0
!
interface FastEthernet0/0.2
encapsulation dot1Q 3
ip vrf forwarding B
ip address 10.10.2.2 255.255.255.0
!
interface FastEthernet0/1