产品
产品中心
< 返回主菜单
产品

交换机

交换机所有产品
< 返回产品
交换机
查看交换机首页 >

无线

无线所有产品
< 返回产品
无线
查看无线首页 >

云桌面

云桌面产品方案中心
< 返回产品
云桌面
查看云桌面首页 >

安全

安全所有产品
< 返回产品
安全
查看安全首页 >
产品中心首页 >
行业
行业中心
< 返回主菜单
行业
行业中心首页 >

SRv6 Policy隧道引流技术

本文介绍了SRv6 Policy如何将报文引流至指定的SRv6隧道,使得报文按预期的路径转发,并讲解了SRv6 Policy相关技术原理。

  • 发布时间:2022-06-13

  • 点击量:

  • 点赞:

分享至

我想评论

1 SRv6 Policy隧道引流技术
1.1   SRv6 Policy背景
在传统MPLS TE场景的VPN内部,有的业务需要在低延时的路径下转发,有的业务需要在大带宽的路径下转发,存在无法对业务进行精细划分的问题,而基于SRv6技术的SRv6 Policy隧道引流技术可以解决该问题。
1.2   SRv6 Policy概述
SRv6网络主要有SRv6 BE和SRv6 Policy两种引流技术。SRv6 BE通过IGP收敛得出最短路径,业务无法按照指定路径转发。而SRv6 Policy可以在网络的任意节点间进行路径规划。相比于SRv6 BE,使用SRv6 Policy不但可以满足用户网络在时延、带宽、抖动和可靠性等各方面的差异化诉求,还能通过时延和带宽的精细化控制提高网络带宽利用率,节省投资。
SRv6 Policy路径表示为指定路径的段列表(Segment List),也称为SID列表(Segment ID List)。每个SID列表是从源到目的地的一条显式路径。SID列表指示网络中的设备必须遵循指定的路径,而不是遵循由IGP计算得出的最短路径。如果数据报文被导入SRv6 Policy中,则由生成SRv6 Policy的节点将SID列表添加到数据包上,网络中的其余设备执行SRv6 Policy SID列表中指定的路径。

1.3   SRv6 Policy原理解析
1.3.1  SRv6 Policy基本原理
1.     SRv6 Policy三元组
SRv6 Policy包括以下三元组:
●    头端(HeadEnd):表示SRv6 Policy生成的节点,无需在配置上额外体现。
●    端点(Endpoint):表示SRv6 Policy的目的地址。
●    颜色(Color):扩展团体属性。颜色可以标识不同时延或带宽的路径,因此通过颜色可以区分同一个头端到端点之间的不同SRv6 Policy。
SRv6 Policy需要在头端配置颜色和端点,头端通过路由携带的颜色属性和下一跳信息,匹配对应的SRv6 Policy,实现业务报文转发。

2.     SRv6 Policy模型
SRv6 Policy的模型如图1-1所示。一个SRv6 Policy至少包含一条候选路径(Candidate Path),候选路径携带优先级(Preference),SRv6 Policy会选择优先级最高的有效候选路径作为主路径。一个候选路径可以包含多个Segment List,每个Segment List都是一个显式SID栈,用于指示网络设备转发报文。每个Segment List携带Weight属性,同一候选路径下的多个Segment List之间可以依据Weight属性负载分担流量。

图1-1    SRv6 Policy模型

 

1.3.2  SRv6 Policy创建
SRv6业务网采用控制器+转发器的技术架构,控制器和转发器之间通过南向协议交互:
●    控制器:相当于总指挥,掌握全网拓扑、实时流量、SRv6 SID等信息,负责将业务需求转化成SRv6 Policy,并通过南向协议下发给转发器。
●    转发器:负责路由计算和SRv6 Policy封装转发,以及向控制器报告Underlay(承载网络)和SRv6 Policy状态。
●    南向协议:主要为控制器和转发器之间运行的BGP-LS和BGP IPv6 SR-Policy协议。
●    Binding SID:用于标识SRv6 Policy主候选路径的SID。
SRv6 Policy既可以在转发器上通过CLI或Netconf静态配置,也可以由控制器上动态生成然后通过BGP或其他方式传递给转发器。动态方式相比于静态配置更利于网络智能化部署。

1.     静态配置SRv6 Policy
SRv6 Policy创建时可以使用End SID、End.X SID、End.DT4、Anycast SID或者Binding SID(用于标识整个Candidate path)等进行组合。如图1-2所示,用户可以通过CLI或Netconf静态配置SRv6 Policy。当采用静态方式配置SRv6 Policy时,必须配置端点、颜色、候选路径的优先级和Segment List。

图1-2    静态配置SRv6 Policy

2.     控制器下发SRv6 Policy
首先需要在控制器和转发器之间建立BGP-LS邻居,搜集带宽和时延等信息进行路径计算。控制器完成路径计算后,通过BGP SRv6-Policy邻居关系将SRv6 Policy下发到网络的头端。头端根据BGP update报文生成SRv6 Policy表项。
控制器下发SRv6 Policy过程如图1-3所示。其主要过程如下:
      a     控制器通过BGP-LS收集网络拓扑和SID信息。
      b     控制器与头端转发器A之间建立IPv6 SR-Policy地址族的BGP邻居。
      c     控制器计算SRv6 Policy,然后通过BGP邻居下发给头端。头端生成SRv6 Policy表项。

图1-3    控制器下发SRv6 Policy

1.3.3  SRv6 Policy流量导入
●    路由着色
支持通过颜色将路由导入到SRv6 Policy。在路由导入前,需要对路由进行着色。路由着色是指通过路由策略对路由增加颜色扩展团体属性,携带颜色属性的路由可以根据颜色属性与下一跳地址将路由迭代到SRv6 Policy。
路由着色的过程如下:
      a     创建路由图,匹配指定路由,并设置路由的颜色属性
      b     将路由图应用到BGP邻居入口或出口。
●    路由导入
通过颜色进行路由导入时,首先对路由的颜色和SRv6 Policy的颜色进行匹配,其次对路由的下一跳和SRv6 Policy的目的地址(即端点)进行匹配。如果匹配成功,则可将路由导入到不同的SRv6 Policy中。具体过程如图1-4所示。

图1-4    通过颜色进行路由导入

SRv6 Policy路由导入过程简述如下:
      a     通过控制器向设备A下发SRv6 Policy,此时A作为SRv6 Policy的头端。SRv6 Policy的颜色是101,端点是设备B的地址1000::1。
      b     在设备B上配置BGP出口策略或者VPN出口策略(也可以在设备A上配置BGP入口策略或者VPN入口策略),通过路由策略为路由前缀1000::/96设置颜色扩展团体属性101,路由下一跳是设备B的地址1000::1。将路由通过BGP邻居发送给设备A。
      c     在头端设备A上配置SRv6 Policy,当设备A接收到BGP路由1000::/96后,由于路由的颜色101和SRv6 Policy的颜色101匹配,并且路由的下一跳1000::1和SRv6 Policy的目的地址(即端点)也匹配,故此路由可以导入SRv6 Policy。设备A将路由和关联的SRv6 Policy安装到FIB表。转发时,设备A为目的地址匹配1000::/96的报文添加一个具体的SID栈<C,E,G,B>。
1.3.4  SRv6 Policy数据转发
●    SRv6 Policy数据转发
以下以L3VPNv4 over SRv6 Policy为例,描述SRv6 Policy数据转发过程。具体如图1-5所示:
      a     控制器通过BGP-LS下发SRv6 Policy给头端PE1设备。
      b     端点PE2设备通过BGP VPNv4邻居出方向应用路由图做路由染色,并通告路由10.2.2.2/32和VPN SID 4::100(End.DT4 SID)给头端PE1设备,BGP路由的下一跳是PE2设备的地址1000::1/128。
      c     PE1设备在接收到BGP路由以后,根据路由的颜色和路由的下一跳将路由导入到SRv6 Policy,SRv6 Policy的SID List是<2::2,3::3,4::4>。其中SID List<2::2,3::3,4::4>用在数据转发场景时,也可以表示为(4::4,3::3,2::2)。
      d     头端PE1接收到CE1发送的普通单播报文后,通过查找VPN实例路由表,确认该路由的出接口为SRv6 Policy。PE1为单播报文插入SRH信息,封装VPN SID 4::100和SRv6 Policy的SID List,然后封装IPv6报文头信息。完成之后,PE1将报文转发给P1。
      e     P1收到报文后,根据IPv6 Header的目的地址(2::2)查找Locator。命中End.X SID,执行End.X的转发动作:
P1将SL减1(此时SL为2)。P1将SL指示的路径分段信息(即Segment List[1]=3::3)拷贝到IPv6 Header的目的地址字段。根据End.X指定的出接口,将报文转发到P2。
      f     P2收到报文后,根据IPv6 Header的目的地址(3::3)查找Locator。命中End.X SID,执行End.X的转发动作:
P1将SL减1(此时SL为1)。P1将SL指示的路径分段信息(即Segment List[1]=4::4)拷贝到IPv6 Header的目的地址字段。根据End.X指定的出接口,将报文转发到PE2。
      g     PE2收到报文,使用报文的IPv6目的地址4::4查找本地SID表并命中End SID,PE2将报文SL减1,IPv6目的地址变更为VPN SID 4::100。PE2使用VPN SID 4::100查找本地SID表并命中End.DT4 SID,PE2解封装报文,剥离SRH和IPv6报文头。PE2使用报文内层目的地址查找VPN SID 4::100对应的VPN实例路由表,最后PE2将报文转发给CE2。

图1-5    L3VPNv4 over SRv6 Policy数据转发

1.4   总结
随着5G和物联网时代的到来,作为基础协议的IPv6也迎来了快速发展,而基于IPv6的SRv6 Policy,凭借着其独有的技术优势,已在不同的用户网络中规划部署,相信未来也将在更多的用户网络中得到更广泛的应用。

 

相关链接

新一代IP承载核心技术SRv6的转发原理 —一文带你了解网络新贵

SRv6新一代IP承载协议


 

相关标签:

点赞

更多技术博文

任何需要,请联系我们

返回顶部

请选择服务项目
关闭咨询页
售前咨询 售前咨询
售前咨询
售后服务 售后服务
售后服务
意见反馈 意见反馈
意见反馈
更多联系方式