Mô hình MPLS/VPN

Một phần của tài liệu Tìm hiểu công nghệ mpls - vpn (Trang 25)

Kiến trúc MPLS VPN kết hợp được những đặc điểm tốt nhất của mô hình Overlay VPN và Peer-to-peer VPN:

Hình 2.10 Cấu trúc MPLS-VPN

- Hoạt động của MPLS VPN tương tự như mô hình Peer-to-peer, router PE tham gia vào việc định tuyến với phía khách hàng, đảm bảo tối ưu định tuyến giữa các site khách hàng với nhau.Từ góc độ của một router CE, tất cả các thông tin cập nhật IPv4 cũng như dữ liệu đều được “forward” cho router PE. Router CE không cần một cấu hình đặc biệt nào để cho phép nó tham gia vào miền MPLS VPN. Yêu cầu duy nhất của CE router là phải cấu hình một giao thức định tuyến, có thể là tĩnh hoặc động để nó có thể trao đổi thông tin định tuyển giữa các PE router khác.

- Trong mô hình MPLS-VPN, router PE thực hiện nhiều chức năng cùng lúc. Trước tiên là phân tách dữ liệu khách hàng khi có nhiều khách hàng cùng kết nối với router đó. Mỗi khách hàng được gán một bảng định tuyến độc lập tương tự như có một router PE dành riêng (do đó đảm bảo được các

routes từ các khách hàng khác nhau có thể đặt trùng địa chỉ mạng nhưng vẫn có thể phân biệt được routes nào thuộc khách hàng nào). Thực hiện định tuyến, trao đổi thông tin định tuyến giữa các site khách hàng với nhau thông qua mạng xương sống (SP backbone) được dựa trên các quy trình trong bảng định tuyến chung. Router P cung cấp chuyển mạch nhãn giữa các router PE và hoàn toàn không biết về định tuyến VPN, cũng như router CE không biết đến sự tồn tại của router P, vì vậy, mạng SP hoàn toàn trong suốt đối với khách hàng.

2.2.2 Các kỹ thuật sử dụng trong MPLS-VPN:

2.2.2.1 Bảng chuyển tiếp ảo VRF (Virtual Routing Forwarding):

Việc phân tách lưu lượng khách hàng được thực hiện bằng cách sử dụng một bảng chuyển tiếp và định tuyến riêng cho mỗi khách hàng, gọi là bảng VRF. Điều này giống như việc xây dựng nhiều router dành riêng cho các khách hàng. Chức năng của VRF tương tự như như bảng định tuyến chung, chỉ khác là nó chỉ chứa tất cả thông tin đường đi của một VPN nào đó thay vì cho toàn mạng. Bảng VRF cũng chứa bảng chuyển tiếp CEF riêng, bảng này cũng mô tả kết nối và giao thức cho mỗi site khách hàng trên cùng một router PE. VRF mô tả các phạm vi của giao thức định tuyến của VPN đó cũng như các interface trên PE router và là một phần của VPN đó.

Hình 2.11 Bảng VRF trong router PE

Interface thuộc VRF phải hỗ trợ chuyển mạch CEF. Số interface có thể được cho vào một VRF là phụ thuộc vào số interface trên router đó, một interface vật lý chỉ được phép gán cho một VRF. VRF chứa một bảng định tuyến IP tương ứng với bảng định tuyến IP toàn cục, một bảng CEF-VRF, liệt kê các giao tiếp tham gia vào VRF, và một tập hợp các nguyên tắc xác định giao thức định tuyến trao đổi với các router CE (routing protocol contexts). VRF còn chứa các định danh VPN (VPN identifier) như thông tin thành viên VPN (RD và RT).

2.2.2.2 Kỹ thuật phân biệt tuyến trong mạng core:

Sự trao đổi thông tin định tuyến giữa các router PE chỉ sử dụng giao thức định tuyến duy nhất là BGP, các thông tin định tuyến trao đổi giữa các VRF thuộc các VPN

khác nhau chuyển qua mạng core có thể trùng lặp địa chỉ (địa chỉ IP ở mạng khách hàng. Vậy làm sao BGP có thể giúp hội tụ định tuyến ở các PE router trong khi vẫn giữ sự cách ly giữa các mạng ảo?

Cách duy nhất giải quyết vấn đề trên là mở rộng thành phần địa chỉ IP của mạng khách hàng khi gói tin từ mạng khách hàng đi vào mạng core sao cho các gói tin IP ở các VPN khác nhau nhưng có cùng địa chỉ IP khi ở C-network trở nên duy nhất khi vào mạng core. Trong MPLS phần mở rộng này gồm 64 bit được gọi là RD. Kết quả nhận được khi mở rộng IPv4 được gọi là VPNv4 gồm 96 bit, trong đó 32 bit IPv4 và 64 bit RD.

VPNv4 chỉ được dùng để thực hiện giao thức định tuyến giữa các PE router bằng giao thức BGP, các CE router trong C network không sử dụng VPNv4. Ở PE router khi nhận được gói tin IPv4 từ CE router phải chuyển thành gói tin VPNv4 rồi mới thực hiện trao đổi thông tin định tuyến với PE khác bằng BGP. Giao thức BGP ở PE router nói trên được gọi là Multiprotocol BGP (MP-BGP). MP-BGP không chỉ hỗ trợ mạng khách hàng hoạt động ở giao thức mạng là IP mà còn hỗ trợ IPx, AppleTalk v.v…do gói tin bao gồm cả địa chỉ IPv4 khi vào PE router được coi như là dữ liệu để chuyển thành VPNv4.

2.2.2.3 Số nhận dạng đường đi (RD-Route Distinguisher):

RD không có vai trò thiết yếu trong mô hình hoạt động của mạng MPLS VPN. 64 bit RD chỉ cung cấp khả năng sử dụng trùng lắp địa chỉ IPv4 (public) giữa các khách hàng khi dùng MPLS VPN, vốn đòi hỏi phải là duy nhất trong mạng IP truyền thống. RDs được cấu hình tại PE router như một phần của quá trình thiết lập các site trong VPN. Các CE router không nhận biết hay xử lý RDs.

RD có thể có hai định dạng: dạng địa chỉ IP hoặc chỉ số AS. Giá trị 64 bit có thể có 2 định dạng: ASN:nn hoặc IP-address:nn (ở đây nn là số nhận dạng vpn). Trong đó định dạng ASN:nn được sử dụng nhiều hơn (ở đây ASN viết tắt của số hệ thống tự trị - autonomous system number). RD được sử dụng để tránh trường hợp tuyến IPv4 của một khách hàng trùng với tuyến IPv4 của khách hàng khác.

Hình 2.12 Cấu trúc tổng quát của RD

Chức năng duy nhất của RD là mở rộng IPv4, do đó mỗi 64 bit RD chỉ đại diện riêng cho một site và tương ứng là một VPN duy nhất. Do đó mô hình MPLS VPN sử dụng RD chỉ trong mô hình đơn giản, khi sự trao đổi thông tin diễn ra một cách cục bộ

trong từng VPN riêng biệt. Nhưng nếu các VPN khác nhau cần trao đổi thông tin hoặc khi dịch vụ yêu cầu một site thuộc về nhiều VPN khác nhau thì ta cần phải có một phương pháp linh động hơn việc chỉ sử dụng RD.

2.2.2.4 Số phân biệt đường đi (RT-Route Targets):

RD không thể đặc trưng cho một site khi site này tham gia vào nhiều VPN khác nhau. Do đó cần một phương thức sao cho một bảng định tuyến ảo nhận biết được một tuyến thuộc VRF khác là thành viên của mình. RT được ứng dụng trong cấu trúc MPLS VPN để đáp ứng yêu cầu trên. RT phải đáp ứng được hai yêu cầu:

• Giúp các VRF ở hai phía mạng core nhận biết nhau nhưng đồng thời cũng cách ly các bảng định tuyến ảo khác VPN. Chức năng này tương tự như chức năng của RDs.

• RT phải xác định một tuyến là thành viên của VPN nào khi truyền qua mạng core bằng giao thức MP-BGP.

Cấu trúc của RT gồm có 4byte trong đó 16bits đầu là AS number, 16bits sau là VPN Identifier, cụ thể thì định dạng RT như sau: ASN:nn.

RT là một thuộc tính mở rộng của BGP, nó chỉ ra những tuyến nào nên được nhập từ MP-BGP trong VRF. Khi 1 tuyến VPN học từ 1 CE được đưa vào VPNv4 thì 1 RT được kết hợp với nó.

• RT export: dùng xác định xem tuyến này có phải là thành viên VPN không. RT export được nối thêm vào địa chỉ khách hàng khi chuyển thành VPNv4 và sau đó sẽ được quảng bá trong các cập nhật MP-BGP.

• RT import: dùng để kết hợp với mỗi VRF và xác định các tuyến VPNv4 được thêm vào VRF cho khách hàng cụ thể.

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.

Hình 2.13 Quảng bá tuyến bằng RT và MP-BGP (adsbygoogle = window.adsbygoogle || []).push({});

Các tiến trình xảy ra trong suốt quá trình quảng bá tuyến ở hình trên như sau: Mạng 172.16.10.0/24 được nhận từ CE1-A, tham gia vào VRF CustomerA trên PE1- AS1. PE1 kết hợp một giá trị RD 1:100 và một giá trị export RT 1:100 khi cấu hình cho VRF trên router PE1-AS1. Các tuyến học từ CE1-A được phân phối vào tiến trình MP-BGP trên PE1-AS1 với prefix 172.16.10.0/24 và thêm vào đầu giá trị RD 1:100 để trở thành VPNv4, export RT 1:100 được nối thêm vào. Sau đó địa chỉ VPNv4 và export RT này được gửi tham gia cập nhật MP- iBGP giữa các PE. Nhãn VPN (3 byte) được gán cho mỗi địa chỉ học từ các tiến trình của CE chứa trong một VRF từ tiến trình MP-BGP của PE. MP-BGP chạy trong miền MPLS của nhà cung cấp dịch vụ nên mang theo địa chỉ VPNv4 (Ipv4 + RD) và BGP RT.

Nhãn VPN chỉ được hiểu bởi egress PE kết nối trực tiếp với CE quảng bá mạng đó. Các trạm kế (next hop) phải được học từ IGP khi thực thi MPLS VPN chứ không phải học được từ các tiến trình quảng cáo của BGP. Trong hình trên nhãn VPN được mô tả bằng trường V1 và V2. Cập nhật MP-BGP được nhận bởi PE2 và tuyến được lưu trữ trong bảng VRF tương ứng cho Customer A dựa trên nhãn VPN. Các tuyến MP-BGP nhận được sẽ được phân phối vào bảng định tuyến ảo VRF trên PE2-AS1, và sau đó tuyến sẽ được quảng bá tới CE2-A.

2.2.3. Hoạt động của mặt phẳng điều khiển trên MPLS VPN:

Mặt phẳng điều khiển trong mạng MPLS VPN bao gồm tất cả các thông tin định tuyến lớp 3 và các tiến trình trao đổi thông tin của các IP prefix được gán và phân phối nhãn bằng LDP.

Trong mạng MPLS, các router CE được kết nối với các router PE và giữa chúng yêu cầu một giao thức định tuyến như IGP, BGP hoặc đơn giản chỉ

là định tuyến tĩnh để quảng bá thông tin NLRI (lớp mạng có thể đến được). Còn trong MPLS VPN backbone gồm các router P và PE, giữa chúng đòi hỏi cấu hình định tuyến nội IGP (OSPF hoặc IS-IS), cộng thêm giao thức phân phối nhãn LDP. LDP được sử dụng để xác định cũng như phân phối các nhãn trong miền MPLS. IGP thì được sử dụng để trao đổi thông tin về khả năng đến được của một mạng NLRI cũng như ánh xạ NLRI đó vào MP-BGP. Phiên MP-BGP được duy trì giữa các router biên của nhà cung cấp (PE) để cập nhập thông tin địa chỉ VPNv4, cộng với các thuộc tính BGP mở rộng (RT export...) liên kết với địa chỉ VPNv4 tương ứng.

Hình 2.14 Các giao thức trong mặt phẳng điều khiển

Các gói từ CE đến PE luôn được quảng bá như các gói Ipv4. Hoạt động của mặt phẳng điều khiển MPLS VPN có thể được diễn ta trong ví dụ sau:

Hình 2.15 Hoạt động của mặt phẳng điều khiển MPLS VPN

Quá trình quảng bá địa chỉ mạng 172.16.10.0/24 (lúc này mạng MPLS vẫn chưa hội tụ hoàn toàn) trong MPLS VPN từ router CE1 sẽ diễn ra:

 Đầu tiên PE1 sẽ quảng bá mình đến các PE khác:

• MPLS chạy trên lõi. Thông qua các giao thức iBGP mà mỗi router sẽ quảng cáo địa chỉ loopback của nó cho các router khác: PE1 quảng cáo 10.10.10.101/32 và PE2 quảng cáo 10.10.10.102/32. TDP hay LDP dùng để phân phối thông tin gán nhãn giữa các router chạy MPLS.

• Router PE2-AS1 yêu cầu một nhãn cho 10.10.10.101/32 sử dụng LDP ánh xạ nhãn yêu cầu từ láng giềng xuôi dòng (downstream neighbor) của nó, P1-AS1. PE1-AS1 xác định một nhãn implicit- null cho 10.10.10.101/32, chỉnh sửa mục trong LFIB liên quan đến 10.10.10.101/32, và gửi đến P1-AS1 bằng LDP reply.

• P1-AS1 sử dụng nhãn implicit-null nhận được từ PE1-AS1 làm giá trị nhãn xuất (outbound label) của nó, xác định một nhãn (L1) cho 10.10.10.101/32, và sửa mức trong LFIB cho 10.10.10.101/32. Sau đó P1-AS1 gửi giá trị nhãn này đến P2-AS1 bằng LDP reply.

• P2-AS1 dùng nhãn L1 làm giá trị nhãn xuất, xác định nhãn L2 cho 10.10.10.101/32, và sửa mức trong LFIB cho 10.10.10.101/32. Sau đó P2-AS1 gửi giá trị nhãn này đến PE2-AS1 bằng LDP reply. Giá trị nhãn L2 này sẽ được lưu trong LFIB của PE2 và thế là PE1 đã quảng bá thành công địa chỉ loopback của mình đến PE2.

 Kế đó sẽ là quá trình cập nhật của mạng 172.16.10.0/24 xuất phát từ PE1. Quá trình này diễn ra như sau: PE1 nhận và vận chuyển tuyến Ipv4, 172.16.10.0/24, tuyến IPv4 được gắn với RD 1:100 để trở thành VPNv4, tiếp đó RT export 1:100 cũng được gắn thêm vào dựa trên cấu hình VRF trên PE1. Một nhãn VPN V1 được định vị và gắn cho cập nhật 172.16.10.0/24 đồng thời viết lại thuộc tính trạm kế (Next-hop) cho địa chỉ 10.10.10.101 của loopback0 trên PE1. Sự quảng bá nhãn cho 10.10.10.101/32 từ PE1 tới PE2-AS2 nhanh chóng được thay thế ngay khi mạng MPLS VPN của nhà cung cấp được thiết lập và thực hiện quảng bá VPNv4 trong mạng.

 Cuối cùng là quá trình cập nhật mạng 172.16.10.0/24 vào bảng định tuyến của CE2. Quá trình này diễn ra như sau: PE2 đã được cấu hình import RT cho bảng VRF. Bảng tin update cảa MP-BGP từ PE1 gửi đến PE2, tại đây PE2 sẽ so sánh export RT trong bản tin update với import RT của mình. Nếu nó thấy khớp thì nó sẽ chuyển cập nhập VPNv4 sang IPv4 và chèn thông tin định tuyến về mạng

172.16.10.0/24 vào bảng VRF của khách hàng A. Sau đó PE2 lại tiếp tục quảng bá route này đến CE2-A.

2.2.4 Hoạt động của mặt phẳng dữ liệu trên MPLS VPN:

Hoạt động của mặt phẳng dữ liệu MPLS VPN bao gồm sự sử dụng label stack (chồng nhãn). Label stack trong MPLS VPN có hai nhãn, nhãn trên cùng (top label) được gán và hoán đổi (swap) để chuyển tiếp gói dữ liệu đi trong lõi MPLS. Nhãn thứ hai (VPN label) được kết hợp với VRF ở router egress PE để chuyển tiếp gói đến các CE.

Khi dữ liệu được gửi đến một mạng cụ thể thuộc một VPN thông qua mạng core dựa trên MPLS, chỉ có nhãn trên cùng trong label stack là được hoán đổi khi gói tin đi qua từng node mạng. Nhãn VPN còn nguyên vẹn và chỉ được bóc khi qua router egress/downstream PE. Kết quả là gói tin sẽ được chuyển tiếp đến đúng outgoing interface, DesIP trong gói tin được tra cứu trong bảng VRF tương ứng nào trên router PE là phụ thuộc vào giá trị của nhãn VPN.

Thực sự thì khái niệm có một nhãn VPN chỉ ra gói nào thuộc VRF nào cũng không thực sự đúng. Nó có thể đúng trong vài trường hợp, nhưng đa số là không. Nhãn VPN thường chỉ ra trên exgress PE nút tiếp theo mà gói phải được chuyển tiếp tới. Do đó, mục đích của nó là để chỉ bộ định tuyến CE đúng như bước tiếp theo của gói.

Tất cả các gói của khách hàng được chuyển tiếp với 2 nhãn: nhãn IGP như là nhãn trên cùng và nhãn VPN như là nhãn dưới cùng. Nhãn IGP được phân phối bởi LDP giữa tất cả các bộ định tuyến P và PE hop by hop. Nhãn VPN được quảng bá bởi MP–iBGP từ PE đến PE. Những bộ định tuyến P sử dụng nhãn IGP để chuyển tiếp gói tới bộ định tuyến PE ra tương ứng. Bộ định tuyến PE ra sử dụng nhãn VPN để chuyển tiếp gói IP tới bộ định tuyến CE tương ứng.

Hình 2.16 Hoạt động của mặt phẳng dữ liệu

• Bước 2: PE2-AS1 nhận gói và gán nhãn VPN V1 và nhãn LDP V2, sau đó gửi gói đến cho P2-AS1.

• Bước 3: P2-AS1 nhận gói tin, hoán đổi nhãn LDP L2 vào vị trí của L1.

• Bước 4: P1-AS1 nhận gói tin, bóc nhãn trên cùng đi vì nó nhận một nhãn implicit-null cho 10.10.10.101/32 từ PE1-AS1. Kết quả là gói tin với nhãn VPN được gửi cho PE1-AS1.

• Bước 5: PE1-AS1 bóc nhãn VPN, gửi gói cho CE1-A nơi mà mạng 172.16.10.0 được định vị.

2.2.5 Định tuyến giữa PE-CE.

Để các PE có đường đi đến các lớp mạng (subnets) của khách hàng cũng như ngược (adsbygoogle = window.adsbygoogle || []).push({});

Một phần của tài liệu Tìm hiểu công nghệ mpls - vpn (Trang 25)