问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

MPLS VPN的基本原理

创作时间:
作者:
@小白创作中心

MPLS VPN的基本原理

引用
CSDN
1.
https://blog.csdn.net/lulinhao/article/details/144498329

本文是基于华为技术资料和网络资源整理的MPLS VPN原理总结,适合对网络技术感兴趣的读者学习参考。

VPN:虚拟专用网络,在一个公共网络中实现虚拟的专用网络
MPLS VPN也是属于VPN的一种

MPLS VPN概述

定义:BGP/MPLS IP VPN网络一般由运营商搭建,VPN用户购买VPN服务来实现用户网络之间的路由传递,数据互通

MPLS VPN网络架构:

  • CE:用户网络边缘设备,有接口直接与运营商网络相连,可以是路由器或者交换机,也可以是一台主机
  • PE:运营商边缘路由器,是运营商网络的边缘设备,与CE直接相连。在MPLS网络中,对VPN的所有处理都发生在PE上,对性能要求
  • 站点:就是MPLS VPN的用户,由CE和其他用户设备构成

理解站点的含义

  • 指相互之间具备IP连通性的一组IP系统,并且这组IP系统的IP连通性不需通过运营商网络实现
  • 站点的划分是根据设备的拓扑关系,而不是地理位置
  • 对于多个连接到同一服务提供商网络的站点,通过制定策略,可以将它们划分为不同的集合,只有属于相同集合的站点之间才能通过服 务提供商网络互访,这种集合就是VPN
  • 一个站点中的设备Site可以属于多个VPN

MPLA VPN常见组网

  • Intranet:一个VPN中的所有用户形成闭合用户群,同一VPN站点之间可以互访,不同VPN站点之间不能互访
  • Extranet:一个VPN用户希望提供部分本VPN的站点资源给其他VPN的用户访问的场景
  • Hub$Spoke:在VPN中设置中心访问控制设备,其他用户都通过中心访问控制设备进行

入口PE到出口PE路由传递

如果想要实现同一个VPN的不同站点之间的通信,首先需要完成不同站点之间的路由交互

VPN路由信息发布过程:本地CE到入口PE,入口PE到出口PE,出口PE到远端CE,(经过骨干网)

CE与PE之间可以使用静态路由、OSPF、IS-IS或BGP交换路由信息。无论使用哪种路由协议,CE和PE之间交换的都是标准IPv4路由

RD:路由标识符
PE可能收到不同VPN的CE发来的相同的IPv4地址前缀,根据VPN实例配置去区分,由于VPN实例只是一个本地的概念,PE无法将VPN实例信息传递到对端PE,故有了路由标识符
MP-BGP将VPNv4传递到远端PE之后,远端PE需要将VPNv4路由导入正确的VPN实例

PE根据VPNv4路由所携带的RT将路由导入正确的VPN实例之后,VPNv4路由的RD值剥除,将IPv4路由通告给相应的客户的CE设备

RT:
在PE上,每一个VPN实例都会与一个或多个VPN Target属性绑定,两类VPN Target属性:

  • Export Target:PE从直连站点学到IPv4路由后,转换为VPN IPv4路由,并为路由添加Export Target属性
  • Import Target:PE收到其它PE发布的VPN-IPv4路由时,检查其Export Target属性。当属性与PE上某个VPN实例的Import Target匹配 时,PE就把路由加入到该VPN实例的路由表

VPN-IPv4地址
又被称为VPNv4地址:VPNv4地址共有12个字节,包括8字节的路由标识符RD和4字节的IPv4地址前缀
本地PE在发布VPNv4路由前附上RT属性,对端PE在接到VPNv4路由后根据RT将路由导入对应的VPN实例

骨干网中的BGP路由传递
PE之间建立BGP邻居关系,并通过BGP进行路由传递
BGP使用TCP作为其传输层协议,提高了协议的可靠性。可以跨路由器的两个PE设备之间直接交换路由
BGP拓展性强,为PE间传播VPN路由提供了便利
PE之间需要传送的路由条目可能较大,BGP只发送更新的路由,提高传递路由数量的同时不占用过多链路带宽
MPLS VPN使用BGP扩展团体属性-VPN Target(也称为Route Target)来控制VPN路由信息的发布与接收

MP-BGP
MP-BGP的作用是为了正确处理VPN的路由,是使用地址族来区分不同的网络层协议
MP-BGP新增了两种路径属性:

  • MP_REACH_NLRI用于发布可达路由及下一跳信息,地址族信息、下一跳信息、网络可达性信息组成

  • 地址族信息:AFI标识网络层协议,例如IPv4的值是1,IPv6的值是2。SAFI表示NLRI(网络可达信息)的类型

  • 下一跳信息:由一字节的下一跳网络地址长度和可变长度的下一跳网络地址组成

  • MP_UNREACH_NLRI用于通知对等体删除不可达的路由

  • 地址族标识AFI:与MP_REACH_NLRI属性中的相同

  • 子地址族标识SAFI

  • 撤销路由:不可达路由列表由一个或多个NLRI组成,BGP可以通过在撤销路由域中携带之前发布的可达路由中相同的NLRI来撤销路由

标签分发和隧道建立
PE上分配私网标签的的两种方法:
1,基于路由的MPLS标签分发:为VPN路由表中的每一条路由分配一个标签
2,基于VPN实例的MPLS标签分配:为整个VPN实例分配一个标签

PE和P设备之间运行LDP,交换公网标签,建立PE之间的LSP隧道(公网隧道)

入口PE在通过MP-BGP传递VPNv4路由时,会携带私网标签,用于区分不同VPN的数据
出口PE在接收到VPNv4路由后,需要执行私网路由交叉和隧道迭代来选择路由

私网路由交叉:VPNv4路由与本地VPN实例的VPN-Target进行匹配的过程

隧道迭代:查询IPv4路由的下一跳有对应的LSP存在,只有隧道迭代成功,该路由才被放入对应的VPN实例路由表

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号