叙述:SRv6 Policy隧道引流技术-!
1SRv6Policy隧道引流技术
11SRv6Policy背景
在传统MPLSTE场景的VPN内部,有的业务需要在低延时的路径下转发,有的业务需要在大带宽的路径下转发,存在法对业务进行精细划分的问题,而基于SRv6技术的SRv6Policy隧道引流技术可以解决该问题。
12SRv6Policy概述
SRv6络主要有SRv6BE和SRv6Policy两种引流技术。SRv6BE通过IGP收敛得出比较短路径,业务法按照指定路径转发。而SRv6Policy可以在络的任意节点间进行路径规划。相比于SRv6BE,使用SRv6Policy不但可以满足用户络在时延、带宽、抖动和可靠性等各方面的差异化诉求,还能通过时延和带宽的精细化控制提高络带宽利用率,节省投资。
SRv6Policy路径表示为指定路径的段列表(SegmentList),也称为SID列表(SegmentIDList)。每个SID列表是从源到目的地的一条显式路径。SID列表指示络中的设备必须遵循指定的路径,而不是遵循由IGP计算得出的比较短路径。如果数据报文被导入SRv6Policy中,则由生成SRv6Policy的节点将SID列表添加到数据包上,络中的其余设备执行SRv6PolicySID列表中指定的路径。
13SRv6Policy原理解析
131SRv6Policy基本原理
1SRv6Policy元组
SRv6Policy包括以下元组:
●头端(HeadEnd):表示SRv6Policy生成的节点,需在配置上额外体现。
●端点(Endpoint):表示SRv6Policy的目的地址。
●颜色(Color):扩展团体属性。颜色可以标识不同时延或带宽的路径,因此通过颜色可以区分同一个头端到端点之间的不同SRv6Policy。
SRv6Policy需要在头端配置颜色和端点,头端通过路由携带的颜色属性和下一跳信息,匹配对应的SRv6Policy,现业务报文转发。
2SRv6Policy模型
SRv6Policy的模型如图1-1所示。一个SRv6Policy至少包含一条候选路径(CandidatePath),候选路径携带先级(Preference),SRv6Policy会选择先级比较高的有效候选路径作为主路径。一个候选路径可以包含多个SegmentList,每个SegmentList都是一个显式SID栈,用于指示络设备转发报文。每个SegmentList携带Weight属性,同一候选路径下的多个SegmentList之间可以依据Weight属性负载分担流量。
图1-1SRv6Policy模型
132SRv6Policy创建
SRv6业务采用控制器+转发器的技术架构,控制器和转发器之间通过南向协议交互:
●控制器:相当于总指挥,掌握全拓扑、时流量、SRv6SID等信息,负责将业务需求转化成SRv6Policy,并通过南向协议下发给转发器。
●转发器:负责路由计算和SRv6Policy封装转发,以及向控制器报告Underlay(承载络)和SRv6Policy状态。
●南向协议:主要为控制器和转发器之间运行的BGP-LS和BGPIPv6SR-Policy协议。
●BindingSID:用于标识SRv6Policy主候选路径的SID。
SRv6Policy既可以在转发器上通过CLI或Netconf静态配置,也可以由控制器上动态生成然后通过BGP或其他方式传递给转发器。动态方式相比于静态配置更利于络智能化部署。
1静态配置SRv6Policy
SRv6Policy创建时可以使用EndSID、EndXSID、EndDT4、AnycastSID或者BindingSID(用于标识整个Candidatepath)等进行组合。如图1-2所示,用户可以通过CLI或Netconf静态配置SRv6Policy。当采用静态方式配置SRv6Policy时,必须配置端点、颜色、候选路径的先级和SegmentList。
图1-2静态配置SRv6Policy
2控制器下发SRv6Policy
首先需要在控制器和转发器之间建立BGP-LS邻居,搜集带宽和时延等信息进行路径计算。控制器完成路径计算后,通过BGPSRv6-Policy邻居关系将SRv6Policy下发到络的头端。头端根据BGPupdate报文生成SRv6Policy表项。
控制器下发SRv6Policy过程如图1-3所示。其主要过程如下:
a控制器通过BGP-LS收集络拓扑和SID信息。
b控制器与头端转发器A之间建立IPv6SR-Policy地址族的BGP邻居。
c控制器计算SRv6Policy,然后通过BGP邻居下发给头端。头端生成SRv6Policy表项。
图1-3控制器下发SRv6Policy
133SRv6Policy流量导入
●路由着色
支持通过颜色将路由导入到SRv6Policy。在路由导入前,需要对路由进行着色。路由着色是指通过路由策略对路由增加颜色扩展团体属性,携带颜色属性的路由可以根据颜色属性与下一跳地址将路由迭代到SRv6Policy。
路由着色的过程如下:
a创建路由图,匹配指定路由,并设置路由的颜色属性
b将路由图应用到BGP邻居入口或出口。
●路由导入
通过颜色进行路由导入时,首先对路由的颜色和SRv6Policy的颜色进行匹配,其次对路由的下一跳和SRv6Policy的目的地址(即端点)进行匹配。如果匹配成功,则可将路由导入到不同的SRv6Policy中。具体过程如图1-4所示。
图1-4通过颜色进行路由导入
SRv6Policy路由导入过程简述如下:
a通过控制器向设备A下发SRv6Policy,此时A作为SRv6Policy的头端。SRv6Policy的颜色是101,端点是设备B的地址1000::1。
b在设备B上配置BGP出口策略或者VPN出口策略(也可以在设备A上配置BGP入口策略或者VPN入口策略),通过路由策略为路由前缀1000::96设置颜色扩展团体属性101,路由下一跳是设备B的地址1000::1。将路由通过BGP邻居发送给设备A。
c在头端设备A上配置SRv6Policy,当设备A接收到BGP路由1000::96后,由于路由的颜色101和SRv6Policy的颜色101匹配,并且路由的下一跳1000::1和SRv6Policy的目的地址(即端点)也匹配,故此路由可以导入SRv6Policy。设备A将路由和关联的SRv6Policy安装到FIB表。转发时,设备A为目的地址匹配1000::96的报文添加一个具体的SID栈<C,E,G,B。
134SRv6Policy数据转发
●SRv6Policy数据转发
以下以L3VPNv4overSRv6Policy为例,描述SRv6Policy数据转发过程。具体如图1-5所示:
a控制器通过BGP-LS下发SRv6Policy给头端PE1设备。
b端点PE2设备通过BGPVPNv4邻居出方向应用路由图做路由染色,并通告路由1022232和VPNSID4::100(EndDT4SID)给头端PE1设备,BGP路由的下一跳是PE2设备的地址1000::1128。
cPE1设备在接收到BGP路由以后,根据路由的颜色和路由的下一跳将路由导入到SRv6Policy,SRv6Policy的SIDList是<2::2,3::3,4::4。其中SIDList<2::2,3::3,4::4用在数据转发场景时,也可以表示为(4::4,3::3,2::2)。
d头端PE1接收到CE1发送的普通单播报文后,通过查找VPN例路由表,确认该路由的出接口为SRv6Policy。PE1为单播报文插入SRH信息,封装VPNSID4::100和SRv6Policy的SIDList,然后封装IPv6报文头信息。完成之后,PE1将报文转发给P1。
eP1收到报文后,根据IPv6Header的目的地址(2::2)查找Locator。命中EndXSID,执行EndX的转发动作:
P1将SL减1(此时SL为2)。P1将SL指示的路径分段信息(即SegmentList=3::3)拷贝到IPv6Header的目的地址字段。根据EndX指定的出接口,将报文转发到P2。
fP2收到报文后,根据IPv6Header的目的地址(3::3)查找Locator。命中EndXSID,执行EndX的转发动作:
P1将SL减1(此时SL为1)。P1将SL指示的路径分段信息(即SegmentList=4::4)拷贝到IPv6Header的目的地址字段。根据EndX指定的出接口,将报文转发到PE2。
gPE2收到报文,使用报文的IPv6目的地址4::4查找本地SID表并命中EndSID,PE2将报文SL减1,IPv6目的地址变更为VPNSID4::100。PE2使用VPNSID4::100查找本地SID表并命中EndDT4SID,PE2解封装报文,剥离SRH和IPv6报文头。PE2使用报文内层目的地址查找VPNSID4::100对应的VPN例路由表,比较后PE2将报文转发给CE2。
图1-5L3VPNv4overSRv6Policy数据转发
14总结
随着5G和物联时代的到来,作为基础协议的IPv6也迎来了速发展,而基于IPv6的SRv6Policy,凭借着其独有的技术势,已在不同的用户络中规划部署,相信未来也将在更多的用户络中得到更广泛的应用。
相关链接
新一代IP承载核心技术SRv6的转发原理一文带你了解络新贵
SRv6新一代IP承载协议
正是因为国产数据库的迅猛发展,所以给行业也带来了新的契机。OceanBase 完全自主研发,已连续 10 余年稳定支撑双 11 ,创新推出“三地五中心”城市级容灾新标准,是全球唯一在 TPC-C 和 TPC-H 测试上都刷新了世界纪录的原生分布式数据库。https://www.oceanbase.com/topic/techwiki-guochanshujukuhttps://obcommunityprod.oss-cn-shanghai.aliyuncs.com/prod/blog/2024-12/f91087f7-ce8a-4e82-b101-30d29713874a.png
页:
[1]