2020年的最后一篇技术科普,我来聊聊SRv6。
这两年,SRv6可谓是通信界的“超级网红”。不管是技术峰会,还是行业论坛,都少不了它的身影。很多大佬甚至声称:“SRv6是未来网络的灵魂”。
究竟SRv6是个什么东东?它真的这么牛掰吗?
表急,且听我从头开始说起——
大家都知道,我们现在喜闻乐见的互联网,是20世纪80年代诞生并发扬光大的。
互联网的基础是啥?当然是IP啊,Internet Protocol(网际互连协议)。
你电脑或手机没有安装IP协议,没有分配IP地址,就没办法上网,更没办法撩妹、刷剧、玩游戏。
其实说白了,互联网就是一套“快递系统”。IP地址就是你的通信地址,IP协议是快递公司的“工作流程和制度”。
所有的文字、音频、视频,都被打包成一个个的“快递包裹”,然后经过快递系统的运输,最终送到目的地。
最早期的IP协议,并不成熟。捣鼓了几个版本(version)之后,到了version 4,总算比较靠谱了,然后开始广泛部署。
这个version 4,也就是我们一直以来使用的IPv4。IPv4地址和IPv4协议,通常直接简称为IP地址和IP协议。
所以说,虽然IP协议的版本是v4,但实际上,我们应该将它称为“IP 1.0时代”。
“IP 1.0”奠定了早期互联网的基础。但是,随着互联网的迅速膨胀,它很快暴露出自身的问题。
在“IP 1.0”的网络里面,每个路由器都是独立对数据包进行路由决策的。也就是说,快递送到每个站点,站点都需要拆开快递盒,看看里面的内容,然后决定送到哪里去。这样一来,整个系统的效率就会非常低下。
拆快递,看内容,做决定
即便是决定了运送方向,快递员也是采取“勉力而为”的态度,尽量运送。如果这条线路包裹太多,他拿不下,就直接扔掉。
拿不下,就扔掉
这样的机制,毫无灵活性和可靠性可言,运送能力也很差。
到了20世纪,砖家们对“IP 1.0”越来越不爽。于是,提出了MPLS(Multi-Protocol Label Switching,多协议标签交换)。
MPLS,关键在于这个标签Label。
前面说了,传统的路由网络里面,每个经手的快递站点都需要打开盒子,看看里面的内容,再决定送往哪。
在MPLS网络里面,数据被封装在了盒子里,上面贴了标签。每个经手的快递站点,只需要读标签就知道盒子该送到哪。
MPLS出现之后,迅速风靡了整个IP网络,成为主流技术。尤其是面向政企用户,MPLS提供的稳定可靠服务,帮助运营商赚了不少小钱钱。
以MPLS为代表的时代,我们可以称为“IP 2.0”时代。这个时代,一直持续到现在。
好了,终于轮到IPv6和SRv6闪亮登场了。
SRv6,简单来理解,其实就是SR+IPv6。我们先说说IPv6。
IPv6大家应该都非常熟悉了,网上介绍它的文章很多。但是,大部分文章都只强调了IPv6的地址更长,数量更多。
IPv6的地址范例:
2001:0db8:85a3:08d3:1319:8a2e:0370:7344
其实,如果只站在普通用户上网的角度,采用“公网+私网”的方式,省着点用,我们的网络完全可以再撑个几年,甚至十几年。
所谓私网,其实说白了,就是个“门卫”技术。
一栋楼,住着很多住户。因为邮箱数量不够,所以,每次快递到了,都只能放在门卫那里。门卫认识每个住户,会进行二次派送。
这就是私网地址的用法,技术上叫做NAT(Network Address Translation,网络地址转换)。
我们绝大多数的上网设备,不太需要公网地址。因为我们是访问者,是需要找数据的人。真正更需要公网地址的,是产生数据和存放的设备,是被访问者。
而现在不断崛起的物联网设备,就属于被访问者。例如网络摄像头、共享单车、智能水表、智能电表等,它们产生数据,并且接受云端的控制。
物联网设备采用公网IP地址,可以更容易实现端到端的“直达”,便于数据上传和指令下发。
还是以刚才的门卫为例。如果你非常期待这件快递,你会希望快递员直接送到你的手上,而不是送到门卫或丰巢快递柜那边,不是吗?
“门卫技术”有一定的好处(例如安全、节约地址资源),但是,它意味着更大的时延,对门卫更高的要求,以及不必要的能耗和成本。
而IPv6,直接干掉了门卫,让每个人都实现了“快递收发自由”,大大简化了网络架构。
虽然IPv6大幅增加了IP地址数量,但这并不是运营商耗费巨资进行全网升级的原因和动力。或者说,IPv6的地址数量优点,只占了它全部优点的30%。它最大的改进,是数据包报文格式的扩容和升级。
换句话说,IPv6的最大优势,不是邮箱数的增加,而是快递包装盒的改变。
IPv6的数据包报文格式,比IPv4更加“豪华”。
![](https://s5.51cto.com/oss/202012/31/7686b1f5b8bba056542f221d84b0f4ad.png)
再继续介绍IPv6之前,我们先说说SR。
SR的全名叫Segment Routing,分段路由。它的落地时间,比IPv6更早。
大家都知道,整个IP网络,如下图所示,就是一段一段的。
对于SR网络来说,连接任意两个SR节点的一段网络,就叫Segment。Segment由一个Segment ID (SID) 标识。
注意,并不一定是相邻节点
SR的核心原理,就是诸葛亮的“锦囊妙计”。
当一个数据包进入网络的时候,网络会把它要经过的所有链路和节点信息,全部告诉这个数据包。
N张纸条,排好顺序。每过一地,撕掉一张。等撕完的时候,你也就到终点了。
而传统的MPLS,是把所有的路径信息,下发给每个节点,然后数据包到了之后,再去问路。
SR技术可以直接运用在MPLS架构上。IPv6出现后,SR开始和IPv6亲密接触。于是,就有了SRv6。
SRv6的基本原理和SR是一样的,也是“锦囊妙计”技术。IPv6独特的报文结构,可以与SR完美搭配。
SRv6还可以和现在很流行的SDN技术相结合。SDN就是软件定义网络,说白了,整个网络被统一控制起来,集中管理。
SDN网络
SRv6的优点都是基于技术的,限于篇幅,改天小枣君详细说明。总之大家记住,它简单高效,而且具备可编程能力。
什么是可编程能力?
简单来说,数据网络就像是计算机硬件,SDN就是程序,SRv6就是指令。SDN借助SRv6,可以驱动数据网络,按需求进行运作。
图片来自CISCO
IPv6这个豪华快递包装盒,可以贴很多的“标签”,让快递员和快递站可以很方便地知道里面是什么类型的物品。这样一来,非常容易实现对包裹的“区别对待”。
举个例子来说,如果贴着“小心轻放”,说明是贵重业务。如果贴着“加急”,则说明是紧急业务。
对网络来说,时延、带宽、优先级等,都是标签,都可以通过Label进行标识。这对业务来说,充满了“人性化”,更加灵活。
尽管SRv6看上去非常美好,但存在一个致命的缺陷,那就是——资源浪费。按数通网络的传统说法,就是开销太大。
你想啊,数据包格式变得那么庞大,报文头变得那么复杂。那么,真正的用户数据,占整个包裹的重量比,不是更小了吗?
SRv6报文封装格式
快递员累得半死搬个10公斤重的快递,其中只有5公斤是货,你说这不是扯淡嘛?
![](https://s3.51cto.com/oss/202012/31/9a6c551aa63568ceb933b81682ab591b.png)
作为数据网络的所有者,电信运营商对网络效率非常敏感。他们砸钱扩容网络容量,是为了发送更多的真实货物,而非快递箱。
而且,报文长度太长,对硬件处理芯片的要求也更高,增加了成本和难度。
于是,大家就把注意力放在针对原生SRv6的“头压缩”上。好几家公司提出了自己的“头压缩”方案,希望将包头尽可能压缩到最小,提升真实货物的占比。
这个,就有点像视频、音频和图片的压缩格式,比拼的就是各自的算法。例如中国移动主推的G-SRv6,就属于压缩方案之一。
最后我再说说IPv6和SRv6的商用化进展。
以IPv6、SRv6为代表的新IP网络,我们可以称之为“IP 3.0”。
我们国家是世界上推动IPv6最积极的国家。原因不仅是因为我们人口多,还因为我们非常重视5G和万物互联。我们主推的工业互联网、车联网,还有智慧城市、智慧教育、智慧医疗、智慧矿山等等,全部都需要IPv6。
传统IPv4,依赖于ICANN的地址分配,总归是受制于人。所以,实现IPv6,其实也就是为了“摆脱控制”。
而且,我们国家是网络大国,我们的骨干网规模在全球排名前列。越先进的网络技术,越能提升我们的网络效率,降低网络运行的能耗。
正因为我们着急,所以我们在标准上也很激进。我们国家在IPv6标准的制定方面,是和国际标准同步甚至有所领先的。说是中国引领世界,完全不过分。
运营商方面,目前中国移动在标准制定上,冲在最前面。而中国电信,在具体落地上,动作更快一些。
设备商就更不用说了,技术上新,就意味着大量的设备需要替换,业绩又有了新着落,简直美滋滋。
好啦,以上就是IPv6和SRv6的大概情况。搞懂了这篇文章,你也就知道了这些概念背后的基本逻辑关系。搞懂了逻辑关系,你再去学习具体技术细节,就简单多了。
就算不深入学习技术,至少和小伙伴吹吹牛皮,也是够用了。对不?