SR与LDP互操作研究 何晓明 杨广铭 刘志华【摘 要】对SR与LDP两种标签交换技术在同一网络中共存及SR与LDP互操作性进行了详细的原理性分析和实验验证并结合运营商网络的三种典型应用场景深入探讨了SR与LDP互操作,对传统IP/MPLS网络中引入SR技术具有较好的指导意义关键词】分段路由;标签分发协议;互操作;SR隧道和LDP隧道无缝对接1 引言多协议标签交换(MPLS, Multi-Protocol Label Switching)技术因其具有端到端面向连接的特点,目前已广泛应用于运营商的IP网络基础设施,用于提供二层/三层VPN服务、QoS、快速重路由(FRR, Fast Reroute)以及流量工程然而,传统MPLS网络基于标签分发协议(LDP, Label Distribution Protocol),这种复杂的控制协议带来网络运维复杂性的同时,LDP与内部网关协议(IGP, Interior Gateway Protocol)的同步问题也增加了网络部署的难度基于流量工程扩展的资源预留协议(RSVP-TE, Resource Reservation Protocol-Traffic Engineering)在实现全网流量工程时需要网络中间节点维护每流的状态信息,存在网络扩展性问题,实际网络中很少部署。
近年来,一种基于源路由网络(SPRING, Source Packet Routing in Networking)的分段路由(SR, Segment Routing)技术引起了网络界的广泛关注,并成为业界研究的热点SR只需要通过对IGP和BGP进行协议扩展,进而实现段标签的分发,并在网络节点中维护段标签的转发信息表边缘入口节点为报文流维护策略状态信息,无需中间节点维护每报文流的策略状态信息,即可实现IP报文按指定路径在一个IGP域内甚至跨域的端到端转发,极大地简化了网络设备的复杂性分段路由是对MPLS技术的继承和发展,并能支持同现有网络基础设施的互操作和平滑演进,在实现网络虚拟化(如二层/三层VPN实现)、网络节点及链路保护、负载均衡和流量工程等方面具有独特优势分段路由技术产生的初衷并不是为了取代LDP,而是为了弥补现有IP/MPLS技术的不足当前,IP RAN网络广泛应用于全球主流运营商移动网络的3G/4G业务承载IP RAN基于IP/MPLS技术提供二层/三层VPN、QoS、业务保护等服务由于构建IP RAN的网元数量巨大,并且多种网络技术的叠加增加了网络控制的复杂度,使得网络运维压力日益凸显。
随着5G商用临近,5G承载网需要满足“增强移动带宽(eMBB)、超可靠低时延通信(uRLLC)、大规模机器类通信(mMTC)”等多业务场景的差异化承载,这对承载网功能和性能以及运维管理提出了更高要求IP RAN需要在能力方面有所提升以适应5G承载需求在IP RAN中引入SR技术也成为业界研究的热点鉴于传统MPLS网络基础设施已在运营商网络中广泛部署,并仍将发挥重要作用SR作为一种可替代LDP的标签交换新技术还处于不断完善和发展的过程中,可以预计SR与LDP将会在网络中长期共存本文对SR与LDP在网络中共存及其互操作进行技术分析,并结合运营商网络实际应用场景,试图从LDP Tunnel保护、LDP Tunnel向SR Tunnel迁移、LDP Tunnel与SR Tunnel跨域互连等三个方面对SR与LDP的互操作进行深入探讨2 SR与LDP共存分析基于LDP的MPLS技术提供的VPN服务在运营商网络中得到了广泛部署,同样,SR也可用于实现VPN为便于问题描述,现以图1为例分析SR与LDP在网络中的共存,互为独立地为各自客户提供VPN服务假设运营商为银行客户提供PE1<->PE3的三层VPN服务,而为保险客户提供PE2<->PE4的三层VPN服务。
运营商想为PE1<->PE3之间提供基于LDP的Tunnel,为PE2<->PE4之间提供基于SR的Tunnel为达成这个目的,可对图1中PE1、PE2、PE3、PE4、P1、P2、P3做如下数据配置:PE1、PE2、PE3、PE4的loopback地址分别配置为192.0.2.201/32、192.0.2.202/32、192.0.2.203/32、192.0.2.204/32PE1與PE3之间、PE2与PE4之间分别建立MP-iBGP会话同时,PE在MP-BGP中通告各自的VPN路由时设置next-hop为各自的loopback地址,如PE1通告银行客户路由时设置next-hop为192.0.2.201/32P1、P2、P3的loopback地址分别配置为192.0.2.1/32、192.0.2.2/32、192.0.2.3/32为PE2、P1、P2、P3、PE4的loopback地址分别绑定全局唯一的Node-SID:202、101、102、103、204网络设备在通告各自loopback地址与Node-SID绑定关系时可配置为次末跳弹出机制配置PE1、P1、P2、P3、PE3为LDP使能,配置PE2、P1、P2、P3、PE4为SR使能。
上述配置完成后,PE之间开始交换客户VPN路由假设PE3向PE1发送的VPN路由的next-hop地址为192.0.2.203,携带的VPN标签为10001同时,PE1收到来自P1的关于FEC为192.0.2.203的LDP标签绑定(假设为1037),P1收到来自P2的关于FEC为192.0.2.203的LDP标签绑定(假设为2048)同样,P2和P3都会收到来自下游节点关于FEC为192.0.2.203的LDP标签绑定当PE1收到发往PE3的客户流量时,PE1对发送到PE3的客户流量报文进行2层标签封装:顶层标签为1037,底层标签为10001,然后转发到P1P1对收到的PE1的VPN客户流量报文进行顶层标签交换为2048,然后转发给P2同样,P2和P3对收到的VPN客户报文进行顶层标签交换,然后转发给下游节点最终,该VPN客户报文转发给PE3又假设PE4向PE2发送的VPN路由的next-hop地址为192.0.2.204,携带的VPN标签为10002同时,PE4的loopback地址为192.0.2.204,绑定的Node-SID(204)通过IGP扩展向全网发布,这时PE2、P1、P2、P3的转发表(FIB)都安装了SID为204的转发信息。
当PE2收到发往PE4的客户流量时,PE2對发送到PE4的客户流量报文进行2层标签封装:顶层标签为204,底层标签为10002,然后转发到P1P1对收到的PE2的VPN客户流量报文进行顶层标签交换为204,然后转发给P2同样,P2和P3对收到的VPN客户报文进行顶层标签交换,然后转发给下游节点最终,该VPN客户报文转发给PE4根据上述分析,发现两种模式的MPLS Tunnel在同一个网络和设备中可以和谐共存对于同一个Prefix,网络设备只需同时保存基于LDP和基于SR的标签转发条目以P1为例,PE3的loopback地址192.0.2.203,通过LDP分发得到的标签转发条目:入标签为1037,出标签为2048,下一跳为P2;通过IGP扩展分发得到的标签转发条目:入标签为203,出标签为203,下一跳为P2为了评估设备同时开启LDP和SR时的转发性能,测试了华为、思科的多款路由设备测试结果表明同时开启LDP和SR时设备转发性能同只开启任一项特性时的转发性能相当查看设备转发表发现,对于同一个Prefix,测试设备的标签转发表(LFIB)同时生成了LDP和SR两个转发条目,跟上述SR与LDP共存的原理分析一致。
由于转发表查找匹配基于硬件TCAM芯片,因此对设备的转发性能基本没有影响3 SR与LDP互操作分析当前,基于LDP的MPLS作为一种非常成熟的技术已经在运营商网络中得到广泛部署而SR技术因其具有简化网络优势所赋予的强大生命力,正逐渐被越来越多的运营商所接受为保护现有网络投资,运营商希望通过现网升级,为网络注入新动能因此,在同样一张网络中实现SR与LDP的互操作成为一种必然选择为模拟真实场景,假设在一个提供端到端业务的运营商网络中,一部分新网络支持SR,而另一部分旧网络支持LDP那么,怎样在这张新旧共存的网络中建立一个连续的MPLS Tunnel呢?现以图2为例分析SR与LDP互操作过程:假设P2、P3、P4、PE3、PE4支持LDP,PE1、PE2、P1、P2支持SRP2充当网关设备,同时支持LDP和SR显而易见,LDP/SR节点必须具备一种把LDP标签和SR标签进行拼接的机制为简化分析,从MPLS Tunnel建立的两个方向分别讨论SR与LDP的互操作过程1)从LDP到SR方向建立MPLS TunnelPE3收到来自PE1的客户VPN路由,下一跳为PE1同时,PE3收到来自P4的关于PE1 loopback地址的LDP标签绑定信息,于是PE3把去往PE1的客户流量转发给P4。
P4的标签转发表存在一个来自P3的关于PE1 loopback地址的LDP标签绑定信息,于是P4继续把该客户流量转发到P3P3的标签转发表存在一个来自P2的关于PE1 loopback地址的LDP标签绑定信息,于是P3继续把该客户流量转发到P2由于P1不支持LDP,P2没有来自P1的关于PE1 loopback地址的LDP标签绑定信息然而,P2通过IGP扩展学到了关于PE1 loopback地址的SR标签绑定信息,因此,P2把关于PE1 loopback地址的本地分发的LDP标签同SR标签进行交换,并把标签修改后的客户流报文转发给P1P1弹出关于PE1 loopback地址的SR标签(PE1支持次末跳弹出机制),最后转发到头端PE1PE1接收到带业务标签的客户报文并对其进行处理这样,一条从LDP标签到SR标签的端到端MPLS Tunnel建立完成需要注意,从LDP域到SR域的隧道建立过程中,网络设备无需使能附加的信令或状态然而,作为同时支持SR和LDP的网关节点P2必须为SR域学到的每个Prefix-SID或Node-SID创建LDP标签绑定关系,即为LDP域中每个FEC,把进入的LDP标签拼接成外出的SR标签。
2)从SR到LDP方向建立MPLS Tunnel为实现从SR到LDP方向MPLS Tunnel的建立,需引入分段路由映射服务器(Segment Routing Mapping Server,SRMS)支持SR的SRMS通过IGP扩展,可代理不支持SR节点实现附着该节点的Prefix或Node对应的SID映射关系在本SR域内通告SRMS可位于IGP泛洪区域的任何位置,并且在同一个IGP区域可存在多个SRMS(如实现冗余备份)当多个SRMS通告同一Prefix与SID映射关系时必须保证通告信息的一致性在图2中,可配置P1为SRMS,代理P3、P4、PE3、PE4通告Prefix与SID映射关系,分别假定为(P3, 103)、(P4, 104)、(PE3, 203)、(PE4, 204)IGP区域内的SR节点在标签转发表安装对应SR标签的转发条目,这些Prefix与SID映射关系就像不支持SR节点本身通告一样下面描述SR到LDP方向标签交换及转发过程例如,PE1通过P1代理学到PE3 loopback地址的SR标签并安装了SID为203的标签转发条目,下一跳为P1当PE1通过MP-BGP收到来自PE3的客户路由时,由于PE1事先保存有节点PE3的SID转发条目,PE1为转发到P1的客户流报文封装2层标签:顶层标签为203,底层标签为客户VPN标签。
P1根据对应SR标签转发条目修改外出。