MPLS VPN là một trong những ứng dụng cực kỳ thành công của MPLS ra đời là sự kết hợp những tính năng có lợi và bo đi các khuyết điểm của các loại hình VPN. Ví dụ như MPLS VPN kết hợp những đặc điểm tốt nhất của Overlay VPN và Peer-to-Peer VPN: Các bộ định tuyến PE tham gia vào quá trình định tuyến của khách hàng (Customer). Tối ưu việc định tuyến giữa các điểm khách hàng. Các bộ định tuyến PE sử dụng các bảng
định tuyến ảo ( Virtual Routing Table) cho từng khách hàng nhằm cung cấp khả năng kết nối vào mạng của nhà cung cấp cho nhiều khách hàng.
Các khách hàng có thể sẽ chứa thông tin về các định tuyến riêng biệt cho mỗi điểm khách hàng sử dụng địa chỉ IP trùng nhau (Overlap Addresses) MPLS VPN và các điểm trao đổi thông tin khách hàng định tuyến ở lớp 3.
Hình 3.1: Mô hình cơ bản của một mạng MPLS-VPN.
Một bộ định tuyến PE có kết nối trực tiếp với một bộ định tuyến CE ở lớp 3. Một bộ định tuyến của nhà cung cấp P thì không có kết nối trực tiếp tới bộ định tuyến của khách hàng. Trong việc thi hành MPLS-VPN cả router P và PE đều chạy MPLS. Việc này có nghĩa là chúng có thể phân phối nhãn giữa chúng và gởi chuyển tiếp các gói đã được dán nhãn. Một bộ định tuyến CE kết nối trực tiếp ở lớp 3 với bộ định tuyến PE. Một bộ định tuyến khách hàng C là bộ định tuyến không có một kết nối trực tiếp với các bộ định tuyến PE. Một bộ định tuyến CE không cần chạy MPLS bởi vì CE và PE tương tác với nhau ở lớp 3, giữa chúng phải chạy một giao thức định tuyến (hoặc là một định tuyến tĩnh) giữa chúng. Nếu bộ định tuyến là đa địa chỉ nó có thể ngang hàng với nhiều bộ định tuyến PE. Bộ định
tuyến CE thì không ngang hàng với bất kỳ của bộ định tuyến CE từ một điểm khác ngang qua mạng của nhà cung cấp dịch vụ, như với mô hình overlay. Mô hình peer to peer thì nhận được từ việc thiết lập CE và PE ngang hàng ở lớp 3.
A.Các thành phần trong MPLS-VPN:
1.Chuyển tiếp định tuyến ảo VRF (Virtual Routing Forwarding).
VRF là ví dụ về định tuyến và chuyển tiếp VPN mỗi VPN được kết hợp với một bảng định tuyến và chuyển tiếp VRF riêng biệt. VRF cung cấp các thông tin về mối quan hệ trong VPN của một vị trí khách hàng khi được nối với bộ định tuyến PE. Bảng VRF bao gồm thông tin bảng định tuyến IP, bảng CEF (Cisco Express Forwarding), các quy tắc giao diện của bảng định tuyến, các tham số của giao thức định tuyến... Mỗi vị trí chỉ có thể kết hợp với một và chỉ một VRF. Các VRF của vị trí khách hàng mang toàn bộ thông tin về các “tuyến” có sẵn từ vị trí đó tới VPN mà nó là thành viên.
Hình 3.2: VRF trong VPN
Bởi vì việc định tuyến sẽ được tách rời riêng lẻ cho mỗi khách hàng VPN trên một bộ định tuyến PE, mỗi VPN sẽ có một bảng định tuyến riêng của riêng mình. Bảng định tuyến riêng này được gọi là bảng định tuyến VRF. Giao diện trên bộ định tuyến PE hướng về phía bộ định tuyến CE là thuộc của một VRF. Như vậy, tất cả các gói IP thu được trên giao diện VRF được phân biệt rõ là thuộc về VRF đó. Bởi vì có một bảng định tuyến riêng trên mỗi VPN, có bảng định tuyến CEF riêng trên mỗi VPN để chuyển tiếp những gói này trên bộ định tuyến PE. Đó chính là bảng VRF CEF đối với bảng định tuyến chung và bảng CEF chung, bảng VRF CEF được lấy từ bảng định tuyến VRF.Chúng ta có thể tạo ra VRF
trên bộ định tuyến PE với lệnh ip vrf. Bạn sử dụng lệnh ip vrf forwarding để gán những giao diện PE và CE trên bộ định tuyến PE cho VRF. Bạn có thể gán một giao diện cho một VRF, nhưng cũng có thể gán những giao diện riêng cho các VRF giống nhau. Bộ định tuyến PE sau đó tự động tạo ra bảng định tuyến VRF và bảng CEF. Bảng định tuyến VRF không khác với bảng định tuyến chính trong Cisco IOS, hơn nữa nó được sử dụng cho thiết bị VPN và nó được tách biệt hoàn toàn từ tất cả các bảng định tuyến khác.
Chú ý: Trong cisco IOS, CEF chỉ là phương pháp chuyển mạch áp dụng cho các gói IP
chuyển tiếp từ giao diện VRF. Như vậy, CEF phải có khả năng bao trùm tất cả các router PE và tất cả các giao diện VRF.
2.RD (Route Distinguishers).
VPN được truyền qua mạng MPLS VPN bằng giao thức BGP (MP-BGP). Điều khó khăn là khi BGP vận chuyển giao thức IPv4 qua mạng của nhà cung cấp dịch vụ chúng phải là địa chỉ IP duy nhất nếu như khách hàng có địa chỉ trùng lắp việc định tuyến sẽ bị sai. Để giải quyết vấn đề này, khái niệm RD được trình bày để cấu tạo tiền tố IP duy nhất. Khái niệm cơ sở là mỗi tiền tố từ mỗi khách hàng thu nhận định danh duy nhất (RD) để phân biệt tiền tố giống nhau từ những khách hàng khác nhau. Tiền tố bắt nguồn từ sự kết hợp của tiền tố IPv4 và RD gọi chung là VPNv4. MP-BGP cần để vận chuyển những VPNv4 này giữa các router PE.
RD là một trường 64 bít sử dụng để tạo nên những tiền VRF duy nhất khi MP- BGP vận chuyển chúng. RD không biểu thị ra mà do tiền tố VRF biểu thị điều đó. Chức năng của RD không phải là định danh VPN bởi vì cấu trúc VPN phức tạp hơn nếu yêu cầu nhiều hơn một RD trên mỗi VPN. Mỗi VRF đưa ra trên bộ định tuyến PE phải có một RD gán đến nó. Giá trị 64-bit này có hai định dạng sau: ASN: nn hoặc IP-address:nn, trong đó nn là hằng số.
RD là một định danh 64 bit duy nhất. Giải quyết trùng địa chỉ IP của các khách hang bằng cách ghép thêm 64 bit vao IPv4 tạo thành địa chỉ VPNv4 (96 bit). Do đó chỉ duy nhất một RD được cấu hình cho một VRF tren router PE. Các địa chỉ VPNv4 được trao đổi giữa các router PE qua BGP.
RD có thể có hai định dạng : dạng địa chỉ IP hoặc chỉ số AS.
Hình 3.3: Cấu trúc của một RD.
Thông thường nhất sử dụng định dạng ASN:nn,trong đó ASN (Autonomous System Number) đứng trong số các hệ thống tự trị thông thường nhà cung cấp dịch vụ sử dụng ASN:nn, trong đó ASN là số hệ thống tự trị mà IANA (Internetassigned Numbers Authority ) gán đến nhà cung cấp dịch vụ và nn là số nhà cung cấp dịch vụ duy nhất gán đến VRF, RD phải được sử dụng để nhận diện các tuyến VPN. Điều này là cần thiết bởi vì các tuyến IPv4 từ mỗi khách hàng có thể bị trùng lắp với các tuyến IPv4 từ khách hàng khác. Sự kết hợp của RD với tiền tố IPv4 cung cấp một VPNv4, với chiều dài là 96-bit. Trong đó có 32-bit IPv4 kết hợp 64-bit RD. Nếu bạn có địa chỉ IPv4 prefix là 10.1.1.0/24 và RD là 1:1 thì VPNv4 có địa chỉ 1:1:10.1.1.0/24 khi đó một khách hàng có thể sử dụng các RD khác nhau cho tuyến IPv4 giống nhau. Khi mà một VPN được kết nối đến hai bộ định tuyến PE, các tuyến từ VPN có được hai RD khác nhau phụ thuộc vào bộ định tuyến
PE được thu nhận từ các tuyến. Mỗi tuyến IPv4 sẽ có được 2 RD khác nhau gán vào và có hai tuyến VPNv4 khác nhau hoàn toàn. Điều này cho phép BGP xem chúng như những tuyến khác nhau và áp dụng chính sách khác nhau cho các tuyến.
3.RT (Route Targets.)
Nếu RDs được sử dụng để nhận biết VPN thì sự truyền thông tin giữa các điểm của những VPN khác nhau sẽ không rõ ràng. Một điểm như công ty A sẽ không có khả năng nói chuyện với điểm của công ty B bởi vì các RD không phù hợp. Khái niệm có những điểm của công ty A có khả năng nói chuyện với những điểm của công ty B được gọi là mạng nội bộ mở rộng VPN. Trường hợp sự truyền thông tin giữa các điểm của công ty giống nhau,VPN giống nhau được gọi là mạng nội bộ. Sự truyền thông tin giữa các điểm được điều khiển bởi MPLS VPN khác gọi là RTs. Một RT là BGP mở rộng để nhận biết những tuyến nào được nhập vào VRF từ MP-BGP. Việc xuấ một RT nghĩa là một tuyến VPNv4 được xuất khi theo đó BGP được mở rộng đây là RT, như cấu hình dưới đây ip vrf trên bộ định tuyến PE, khi tuyến được phân phối lại từ bảng định tuyến VRF thành MP-BGP. Việc nhập một RT có nghĩa là thu nhận một tuyến VPNv4 từ MP-BGP và được kiểm tra cho phù hợp với sự mở rộng đây là mục tiêu tuyến đường với những điểm được cấu hình. Nếu kết quả là phù hợp, thì tiền tố được đặt vào bảng định tuyến VRF là một tuyến IPv4. Nếu không phù hợp thì prefix sẽ loại ra. Câu lệnh để cấu hình RTs cho một VRF là route-target { import | export | both }route- target-ext-community.Từ khóa both cho biết cả import và export.
Hình dưới mô tả RTs điều khiển những tuyến nào được nhập vào VRF từ những router PE ở xa và những RT nào mà các tuyến VPNv4 được xuất khẩu hướng về phía các router PE ở xa. Nhiều hơn một RT gắn vào tuyến VPNv4. Để VRF cho phép cần được nhập vào thì chỉ một RT phù hợp từ tuyến VPNv4 với cấu hình của các RT xuất.
Hình 3.4: Hoạt động của RT.
Khi cấu hình một VRF với những điểm người dùng cá nhân thuộc một VPN không phải truyền đến điểm thuộc VPN khác, bạn cần cấu hình một RT để nhập và xuất trên tất cả các bộ định tuyến PE với điểm thuộc VRF. Đây là trường hợp của mạng cục bộ. Khi bạn có những điểm thuộc một VPN mà cần để truyền tới những site từ VPN khác (trường hợp của
mạng cục bộ mở rộng) dành cho một đường để cấu hình RTs chính xác.
Hình 3.5:Giới thiệu về Cust one và Cust two
Điểm A và điểm B từ VRF cust-one có khả năng liên lạc với các mỗi thành phần khác. Tương tự đối với site A và site B của VRF cust-two. RT mà VPN cust-one sử dụng là 1:1. RT mà VPN cust-two sử dụng là 1:2. Site A của VRF cust-one cần để nói chuyện với site A của VRF cust-two. Đây hoàn toàn có thể và được xác định rõ bằng cấu hình RTs cho phù hợp. RT 100:1 là được nhập khẩu và xuất khẩu cho site A của VRF cust-one và cust- two trên PE1 và PE2 để đạt được điều này. Đây gọi là extranet.
Hình 3.6: Sự truyền bá định tuyến VPNv4 trong mạng MPLS VPN.
VRF phân biệt các tuyến đường của khách hàng trên các bộ định tuyến PE, nhưng làm thế nào là tiền tố vận chuyển qua mạng của nhà cung cấp dịch vụ ? Bởi vì, có khả năng nhiều tuyến đường và có lẽ hàng trăm hàng ngàn tuyến đường có thể được vận chuyển, BGP là ứng cử viên lý tưởng vì nó chứng minh là một giao thức định tuyến ổn định và để thực hiện bằng nhiều tuyến đường. Chỉ cần nhận ra rằng BGP tiêu chuẩn định tuyến tiêu các giao thức để thực hiện các bảng định tuyến hoàn chỉnh lên Internet. Bởi vì tuyến đường khách hàng VPN thực hiện duy nhất bằng cách thêm các RD cho mỗi tuyến đường IPv4 biến chúng thành VPNv4 trên tất cả các tuyến đường của khách hàng một cách an toàn và có thể được vận chuyển qua các mạng MPLS VPN.
Hình 3.7: Topology MPLS VPN
MPLS cung cấp một giải pháp kết nối multi-site linh hoạt cho khách hàng khi không chỉ nộ bộ các site khách hàng có thể giao tiếp được với nhau mà từ site của khách hàng này cũng có thể kết nối được tới site của khách hàng khác. Khi chạy MPLS VPN, trước hết MPLS phải được xây dựng trước bằng việc chạy định tuyến nội trong vùng MPLS backbone và bật các tính năng MPLS để hình thành nên các bảng chứa thông tin nhãn.
Tính chất VPN được xây dựng thông qua các bước như sau:
• Mỗi router biên của nhà cung cấp dịch vụ sẽ chạy định tuyến cùng với khách hàng. Thông tin về định tuyến với mỗi khách hàng sẽ được lưu trong một bảng định tuyến riêng cho khách hàng đó gọi là VRF (virtual route forwarding). Các thông tin định tuyến sau đó sẽ được redistribute tức quảng bá qua lại giữa CE và PE.
• Thiết lập phiên kết nối giữa các PE và chỉ có PE mới cần chạy IBGP với nhau. Các con P trung chuyển không cần phải thiết lập IBGP.
• Lúc này, các PE sẽ sử dụng một loại địa chỉ 96 bit mới để giao dịch với nhau gọi là VPNv4, nó là sự kết hợp của 32 bit địa chỉ IP và 64 bit giá trị RD (router distinguisher). Với RD là giá trị để nhận dạng cho một dải địa chỉ của một site khách hàng.
• Ứng với mỗi RD cần xác định giá trị RT. Giá trị này nhằm xác định đích đến của gói tin trong trường hợp muốn kết nối đến site của khách hàng khác.
MPLS VPN sử dụng 2 loại nhãn là IGP label và VPN label. IGP label là nhãn được gán cho các prefix IPv4 trong bảng định tuyến RIB được xây dựng bởi các giao thức định tuyến nội IGP, nhãn này nằm ở trên cùng trên chồng nhãn và sẽ được sử dụng trong việc chuyển mạch các gói tin trong mạng lõi MPLS. VPN label là nhãn dùng để xác định VRF mà một gói tin thuộc về. Nhãn này nằm dưới cùng trong chồng nhãn. Trong nhiều trường hợp, nó dùng để xác định next hop để forward gói tin về đúng CE từ một PE.