MPLS virtual private network路由信息的发布过程
三个部分:
- 源端CE把普通IPv4路由发布到直连的PE上,然后转换成VPN-IPv4的路由。
- 源端PE把VPN-IPv4路由发布到目的端PE上,以使MPLS隧道两端的PE相互学习对端的私网路由。
- 目的端PE把所学习的源端VPN-IPv4路由转换成普通的IPv4路由发布到直连的CE上,使MPLS隧道两端的Site间相互学习对方的私密路由。
第一步和第三步是在CE与PE间建立动态路由邻居关系如OSPF,RIP或者静态路由或者建立EBGP邻居关系传递。我们这里主要是讨论第2步,PE间VPNv4路由发布的原理。
四个步骤:
一.私网标签分配:
在BGP/MPLS IP VPN中,PE通过MP-BGP发布私网路由给骨干网的其他相关的PE前,需要为私网路由分配VPN标签(私网标签)。当数据包在骨干网传输时,携带私网标签。
PE上分配私网标签的方法有如下两种:
基于路由的VPN标签分配:为VPN路由表的每一条路由分配一个标签。这种方式的缺点是:当路由数量比较多时,设备入标签映射表ILM(Incoming Label Map)需要维护的表项也会增多,从而提高了对设备容量的要求。
基于VPN实例的VPN标签分配:为整个VPN实例分配一个标签,该VPN实例里的所有路由都共享一个标签。使用这种分配方法的好处是节约了标签。MP-BGP为私网路由分配标签的前提是PE上使能MPLS功能。
二.私网路由交叉:
两台PE之间通过MP-BGP传播的路由是VPNv4路由。当接收到VPNv4路由,PE先进行如下处理:
检查其下一跳是否可达。如果下一跳不可达,该路由被丢弃。对于RR发送过来的VPNv4路由,如果收到的路由中cluster_list包含自己的cluster_id,则丢弃这条路由。
进行BGP的路由策略过滤,如果不通过,则丢弃该路由。之后,PE把没有丢弃的路由与本地的各个VPN实例的Import Target属性匹配。VPNv4路由与本地VPN实例的Import VPN-Target进行匹配的过程称为私网路由交叉。
PE上有种特殊的路由,即来自本地CE的属于不同VPN的路由。对于这种路由,如果其下一跳直接可达或可迭代成功,PE也将其与本地的其他VPN实例的Import Target属性匹配,该过程称为本地交叉。例如:CE1所在的Site属于VPN1,CE2所在的Site属于VPN2,且CE1和CE2同时接入PE1。当PE1收到来自CE1的VPN1的路由时,也会与VPN2对应的VPN实例的Import Target属性匹配。
VPNv4路由抓包:
三.公网隧道迭代:
为了将私网流量通过公网传递到另一端,需要有一条公网隧道承载这个私网流量。因此私网路由交叉完成后,需要根据目的IPv4前缀进行路由迭代,查找合适的隧道(本地交叉的路由除外);只有隧道迭代成功,该路由才被放入对应的VPN实例路由表。将路由迭代到相应的隧道的过程叫做隧道迭代。
隧道迭代成功后,保留该隧道的标识符(Tunnel ID),供后续转发报文时使用。Tunnel ID用于唯一标识一条隧道。VPN报文转发时根据Tunnel ID查找对应的隧道,然后从隧道上发送出去。
四.私网路由的选择规则:
经过路由交叉和隧道迭代的路由并不是全部被放入VPN实例路由表。从本地CE收到的路由和本地交叉路由也不是全部被放入VPN实例路由表。
对于到同一目的地址的多条路由,如果不进行路由的负载分担,按如下规则选择其中的一条:
同时存在直接从CE收到的路由和交叉成功后的同一目的地址路由,则优选从CE收到的路由。
同时存在本地交叉路由和从其他PE接收并交叉成功后的同一目的地址路由,则优选本地交叉路由。
对于到同一目的地址的多条路由,如果进行路由的负载分担,则:
优先选择从本地CE收到的路由。只有一条从本地CE收到的路由而有多条交叉路由的情况下,也只选择从本地CE收到的路由。
只在从本地CE收到的路由之间分担或只在交叉路由之间分担,不会在本地CE收到的路由和交叉路由之间分担。
负载分担的AS_PATH属性必须完全相同。
路由发布实例:
以下图为(PE-CE之间使用BGP,公网隧道为LSP)为例,说明将CE2的一条路由发送到CE1的过程。
- 在CE2的BGP IPv4单播地址族下引入IGP(Interior Gateway Protocol)路由。
- CE2将该路由随EBGP的Update消息一起发布给Egress PE。Egress PE从连接CE2的接口收到Update消息,把该路由转化为VPN IPv4路由,加入对应的VPN实例路由表。
- Egress PE为该路由分配VPN标签,并将标签和VPN IPv4路由信息加入MP-IBGP的Update消息中的NLRI字段中,Export-RT属性加入MP-BGP Update消息的扩展团体属性字段中,将Update消息发送给Ingress PE。
- Ingress PE对该路由进行路由交叉。交叉成功则根据路由目的IPv4地址进行隧道迭代,查找合适的隧道。如果迭代成功,则保留该隧道的Tunnel ID和标签,并将路由加入该VPN实例路由表。
- Ingress PE把该路由通过BGP Update消息发布给CE1。此时路由是普通IPv4路由。
- CE1收到该路由后,把该路由加入BGP路由表。通过在IGP中引入BGP路由的方法可使CE1把该路由加入IGP路由表。
上面过程只是将CE2的路由发布给CE1。要实现CE1与CE2的互通,还需要将CE1的路由发布给CE2,其过程与上面的步骤类似,此处不再复述。
整理资料来源:《华为hedex文档》
MPLS virtual private network路由信息的发布过程相关推荐
- MPLS Virtual Private Network
目录 传统Virtual Private Network 1.产生 2.网络结构 3.Virtual Private Network模型 3.1.Overlay Virtual Private Net ...
- MPLS virtual private network PE-CE之间的路由协议(OSPF)
基础配置: OSPF 协议是PE和CE之间路由协议的另一种选择,如果要将VPN用户路由传递到其他PE,那么需要在PE上把OSPF路由引入到MP-BGP,在远端PE上需要将MP-BGP的VPNv4路由引 ...
- MPLS virtual private network 跨域方案实现原理
概述: 随着MPLS技术的成熟,其应用越来越流行,尤其是在VPN方面.通过运营商提供的VPN服务,将分布在各地的站点通过运营商的网络连接起来,避免了租用专线,节省了大量的成本.近年来,由于MPLS V ...
- 华为数通笔记-MPLS virtual private network
简介 BGP MPLS VPN是一种L3VPN,它使用BGP在服务提供商骨干网发布VPN路由,使用MPLS,在骨干网中传递VPN路由. CE:用户边缘设备,与PE有相连的接口,感知不到VPN路由的存在 ...
- MPLS virtual private network报文转发过程
概述: 首先数据流由CE 到PE使用的是IP转发,这个很容易理解.而数据流要经过骨干网,因为骨干网内部Р路由器没有私网路由,也就是没办法使用P转发,这时就应该想到用MPLS标签转发技术.在IP报文进入 ...
- Virtual Private Network
VPN技术的运行机制与发展 虚拟专用网络(Virtual Private Network,VPN)是利用不可靠的公用互联网络作为信息传输媒介,通过附加的安全隧道.用户认证和访问控制等技术实现与专用网络 ...
- 虚拟专用网(Virtual Private Network)
虚拟专用网(Virtual Private Network) 假如一个公司的两个场所需要通信,那么每个场所至少需要有一个路由器和全球唯一的IP地址,当场所A中的X主机向B场所的Y主机发送信息时,主机X ...
- 企业路由器配置L2TP 站点到站点模式Virtual Private Network指南_3(外网访问内网资源)
应用场景: 企业路由器提供多类VPN功能.其中L2TP VPN可以实现企业站点之间搭建安全的数据传输通道,将接入Internet的企业分支机构与总部网络通过安全隧道互联,实现资源.信息共享. 资源说 ...
- Virtual Private Network虚拟专用网络-在Linux上搭建专用通道
一.VPN VPN属于远程访问技术,简单地说就是利用公用网络架设专用网络.例如某公司员工出差到外地,他想访问企业内网的服务器资源,这种访问就属于远程访问. 在传统的企业网络配置中,要进行远程访问,传统 ...
- 【计算机网络学习笔记17】网络安全、加密技术、“Virtual Private Network”技术
[计算机网络学习笔记17]网络安全.加密技术."Virtual Private Network"技术 一.网络安全概述 1.1 网络系统的安全目标: 1.可用性(Availabil ...
最新文章
- 使用date命令,进行时间戳和日期时间的互转
- 终止进程的方法总结(使用)
- SAP Cloud for Customer里的Sales Lead和Lead
- x264 struct学习 1
- vuex使用模块的时候 获取state里的数据语法
- Embeded linux之地址映射
- 求问模式达人,静态类可否代替单件?
- atitit.研发管理--标准化流程总结---java开发环境与项目部署环境的搭建工具包总结
- 卡巴斯基KEY被列入黑名单
- android第三方视频播放加密,android 视频 加密/解密(使用AES)
- 广州橙优设计:学习UI需要那些?UI设计必须会的软件
- 抖音新王牌:“多闪”怎么快速引流脚本爆粉软件?批量添加多闪群批量私信好友!...
- 当web应用包含了websocket长连接,如何在web应用前加一层nginx转发
- Python+OpenCV手势识别Mediapipe(基础篇)
- 安卓chrome插件开发!你有过迷茫吗?最全的BAT大厂面试题整理
- 51单片机控制的数字温度计 PROTEUS 和51单片机教程
- 星辉信息科技教程-Centos上silk微信语音转换成mp3格式
- php cache_expire,PHP session_cache_expire 会话函数
- SVN客户端安装和使用
- 数据处理(10):SHP与JSON格式文件相互转换