SRv6技术快速演进
在网络的发展初期,为满足不同的业务需求,存在多种网络形态,如X.25网络、FR(Frame Relay,帧中继)网络、ATM(Asynchronous Transfer Mode,异步传输模式)网络、IP网络。IP网络凭借其成本低廉和与计算机网络天然匹配的优势逐步取代了各种网络,成为电信网络与计算机网络的统一协议,而IP协议的“尽力而为”无法严格保证QoS的短板又催生了MPLS协议蓬勃发展。随着云的普遍发展,多域互联、云网融合的需求让MPLS不堪重负,今天一种以IPv6为基础吸收Segment Routing思想的SRv6协议登上了历史的舞台。SRv6基于IP的可达性,更容易实现不同网络域的互联,SRv6基于原生的IPv6,更容易与应用无缝融合在一起,更容易实现云网的无缝融合。随着5G、云业务、物联网等新兴业务发展,SRv6协议已经迎来了其蓬勃发展的新时代。
SRv6技术标准化进展
SRv6的标准化工作主要由IETF的SPRING工作组承担,6MAN工作组承担了SRH基础报文格式的定义。SRv6的北向控制协议由LSR、IDR、PCE等工作组负责。EVPN相关的协议则由BESS工作组负责。截至目前,SRv6的标准化分为基础协议和面向新应用的扩展协议两大部分。
SRv6基础协议主要包括SRv6报文封装格式SRH、SRv6网络编程框架、IGP基础路由扩展、BGP VPN扩展、OAM监控、BGP-LS北向接口、PCEP北向接口、YANG接口等。这些基础协议可以支持完成基于SRv6的VPN、路径规划、链路保护、SDN管控等基础业务部署,相关协议标准化基本完成。报文封装格式SRH已经正式发布为RFC8754,其余协议标准也基本达到工作组文稿状态。
表1 SRv6标准进展
随着SRv6的技术逐步商用,SRv6在适应新应用、新场景方面衍生出了新的协议。例如,在与MPLS网络互联互通方面的互操作协议、在高价值应用服务质量监控方面的高精度OAM协议、在面向云的业务服务链等方面都不断迸发出新的协议研究热点,由于这些应用需求的研究刚刚起步,在标准化上还处于起步阶段,大部分的协议文稿还是个人草案。
SRv6技术规模应用案例
SRv6作为下一代IP网络革命性基础协议,是推动云网融合的利器。三大运营商都在积极推动SRv6技术的部署和落地,如中国电信已协同紫光股份旗下新华三集团等厂商率先实现了SRv6大规模商用部署。
中国电信以IPRAN为基础引入大容量新型设备和SRv6/FlexE等新技术,构建了5G承载网Smart Transport Network(简称STN),用于实现3G / 4G / 5G等移动回传业务、政企以太专线、云专线/云专网等5G+云网的统一承载。2020年初,中国电信在国内启动5G承载网STN工程招标,全网规模部署近4万台STN路由器。在关键网络转型期,借助重大工程推动技术创新,中国电信在全程使能IPv6的基础上,以SRv6为抓手实现技术引领,于2020年4月初完成了SRv6+EVPN+FlexE目标工程组网验证。目前,STN已覆盖全国大多数本地网,成为全球较大规模的使能SRv6网络,极大地简化了网络协议,实现了网络的智能、敏捷、高效。
部署SRv6可以支撑中国电信实现政企快速入云。在云端和接入点使能SRv6 BE功能,中间节点仅需支持IPv6转发,即可实现“一跳入云”,大大降低了业务开通难度,缩短了业务开通时间。面向5G千行百业的应用,不同的应用对SLA提出了不同的要求,通过SRv6 Policy将同一张物理网络划分为多个逻辑切片网络,可以为不同的客户提供不同的服务质量保障,加快了5G赋能全社会数字化转型。同时SRv6通过对IGP的扩展,极大地简化了网络协议栈,在方便运维的同时也使云网统一运维具备可行性。年轻的SRv6协议正在不断使承载网络更加智能、更加便捷、更加统一。
SRv6发展中存在的问题
SRv6 虽然具备诸多优点,但是缺点同样明显,主要的缺点在于当SID 数目增多时,报文头开销过大。SRv6头格式如图1所示:
图1 SRv6与MPLS报文头格式对比
表2 SRv6与MPLS报文效率
SRv6头长度给大规模部署带来的问题:
1. 对转发芯片带来的压力
芯片预取报文头装载到内部高速内存中,如果SID在SRv6报文中所处的位置超过预取报文头范围,则需要触发芯片重新装载一次后续报文,多次的硬件片内高速内存装载会导致转发芯片的性能下降。
2. 对现网MTU设置的压力
因为SRv6头的增加可能会使最终生成的SRv6报文大小超出线路MTU限制,而导致中途分片或丢包。
3. 对承载效率带来的压力
SRv6头长度的增加会导致链路的有效载荷占比下降,进而导致链路实际带宽使用率下降。
压缩型SRv6技术进展
2020年中国移动协同新华三集团等业界多个厂家积极探索解决SRv6头效率问题,并发布了G-SRv6头压缩技术白皮书。
一个SRv6 SID 是一个128bit 的IPv6 地址。在SRv6 可编程网络中,它通常由如图2所示的三部分组成。
图2 SRv6 SID格式
1.Locator 是网络拓扑中分配给一个网络节点的标识,用于指导转发数据包到该节点。
2.Function 用来指示网络节点要执行的转发动作。
3.Arguments(Args)是可选执行参数,可能包含流、服务或其它任何相关信息。
Locator 可以细分为两段,首段用于标识SRv6 SID Block,通常用Prefix 来表示,通常某个范围内的网络中前缀相同。末段则是该网络内区分节点的标识。实际上,一个SRv6 网络中很多SID 都具有共同前缀(Common Prefix),一个SID List 中SID 的共同前缀部分都是重复冗余的。所以,SID list 中去掉SRv6 SID 中的Common Prefix 部分和其他冗余部分,保留Node ID 和Function 作为压缩SID,从而达到减少包头开销。新的压缩型SRH头(G-SRH)格式定义如图3所示。
图3 压缩型SRH头
新的压缩型SRH头与标准的SRH头格式定义完全兼容,唯一的区别是在压缩型SRH头的Segment List中存储的并非全长的128bits的SID,而是刨除了Common Prefix部分之后剩下标识网络内节点的字段。考虑到字节对齐和压缩效率等,压缩型SRH建议压缩性SID(X-SID)的长度采用32bits作为标识网络内节点的字段,这样原来单个128bits的SID的存储空间可以存放4个压缩后的32bits X-SID,压缩率达75%。
X-SID经过压缩后与标准的SID存在差异,为了能在现有SRv6网络中分发和传递X-SID,需要对SRv6 IGP协议进行扩展,用以通告X-SID。在控制器北向接口方面还需要对现有BGP-LS、BGP SR等进行扩展以便控制器能够直接下发和收集X-SID的信息。
2020 年7 月,中国移动组织新华三集团等厂商在国际信息港完成压缩型SRv6 数据面实验室互通测试,包括了单压缩域、多压缩域、压缩域与标准域混编场景、P/PE 多类型路由器设备。2020 年10 月完成控制器厂商中盈优创资讯科技有限公司与新华三等设备厂商开展压缩型SRv6 控制面和数据面的实验室综合互通测试,包括ISIS、BGP-LS、BGP SRv6 Policy 等协议互通,以及SRv6 Policy 主备保护等可靠性方案互通。
观点
随着越来越多的场景开始考虑引入SRv6,其开始走出实验室,技术短板在实际应用中不断被优化、完善。压缩性SRv6技术的出现解决了开销大、跨传输等问题并简化了工程实现。在国家的政策引导和通信产业界的共同努力下,以SRv6为主要载体的IPv6技术内涵必将不断丰富和完善,并逐步走向IPv6应用的新时代。