|1.5 All IP 2.0的钥匙:SRv6|
前文提到解决IPv6问题的关键在于找到IPv6支持而IPv4不支持的业务,从而通过商业收益驱动运营商升级到IPv6。那么什么才是IPv6支持而IPv4不支持的业务呢?那就是IPv6的网络编程能力,基于这个能力,可以快速地部署一些新业务,实现商业价值。
虽然IPv4的报文结构中也有可编程Option字段,但只可用于故障定位和测量等场景,并不适合其他应用。而IPv6则从最开始设计的时候就考虑到报文头的可扩展性,设计了逐跳选项扩展报文头、目的选项扩展报文头和路由扩展报文头等[18],用于支持扩展功能。这个可扩展性正是IPv4和MPLS所不具备的。
然而,在过去20多年的时间里,IPv6扩展报文头的应用非常有限。随着5G和云业务等新业务的兴起和网络编程技术的发展,业务要求网络的转发平面有更强的可编程能力,同时需要更简洁的融合网络解决方案。在这种背景下,SRv6应运而生。SRv6是一种基于IPv6数据平面实现的SR网络架构,支持在头节点插入转发指令指导数据报文转发。如图1-11所示,SRv6结合了SR-MPLS头端编程和IPv6报文头可扩展性两方面的优势,让人们看到了IPv6的转机。
图1-11 SR + IPv6 = SRv6
SRv6网络编程标准文稿 [22]提出不过两年多的时间,SRv6已经被部署到多个商业网络中,发展速度之快在IP技术的发展历史上并不多见。在推动SRv6创新和标准化的过程中,华为与业界专家进行了广泛的交流,对互联网技术发展历史上的经验教训进行了很多反思,因此对于SRv6的价值和意义也有了更进一步的认识。
总结一下,以MPLS为基础的All IP 1.0获得了巨大的成功,同时也带来了一些问题和挑战,主要体现在以下3个方面。
• IP承载网的孤岛问题。虽然MPLS统一了承载网,但是IP骨干网、城域网、移动承载网之间是分离的,需要使用跨域VPN等复杂的技术来互联,导致端到端业务的部署非常困难。
• IPv4与MPLS封装的可编程空间有限。当前很多新业务需要在转发平面加入更多的转发信息,但IETF已经发表声明,停止为IPv4制定更新的标准,并且MPLS标签的字段格式和长度固定,缺乏可扩展性,这些导致它们很难满足未来业务的网络编程需求。
• 应用与承载网的解耦,导致网络自身的优化十分困难,而且难以提升网络的价值。当前运营商普遍面临被管道化的挑战,无法从增值应用中获得相应的收益;而应用信息的缺失,也使得运营商只能采用粗放的方式进行网络调度和优化,造成资源的浪费。在网络技术发展的历史上,人们也尝试过将网络技术推进到应用侧,例如ATM到桌面,但是都失败了。而MPLS也曾经试图更靠近主机和应用,如MPLS入云,但实际上MPLS很难在数据中心部署,反而是VXLAN成了数据中心的事实标准。
SRv6技术承担了解决这些关键问题的使命。
• SRv6兼容IPv6的路由转发,基于IP可达性更加容易实现不同网络互联,不需要像MPLS那样使用额外信令,也不需要全网升级。
• SRv6基于SRH(Segment Routing Header,段路由扩展报文头)能够支持更多种类的封装,可以很好地满足新业务的多样化需求。
• SRv6对于IPv6的亲和性使得它能够将IP承载网与支持IPv6的应用无缝融合在一起,通过网络感知应用,使运营商可以提供更多可能的增值业务。
IPv6这20多年的发展历程证明,仅仅依靠地址空间的需求难以推动IPv6的规模部署。而SRv6技术的快速发展说明了通过新业务的需求引导可以更好地促进IPv6的发展应用。如图1-12所示,随着5G、云业务和物联网等新业务的发展,更多网络设备的接入对于地址扩展的需求和网络可编程的需求都在增加。基于SRv6可以更好地满足这些业务的需求,推动网络业务的发展,促使网络进入一个新的All IP时代,即基于All IPv6迎来万物互联的智简网络时代。在本书中,我们称这一时代为“All IP 2.0时代”。
图1-12 IP技术发展代际