uSID:SRv6新范式

摘要:本文介绍最新的SRv6创新uSID(Micro Segment)。uSID兼容既有的SRv6框架,将极大地改变SRv6的设计、实现和部署方式,成为SRv6的新范式。

111111111111111

一、SRv6 101

Segment Routing(以下简称SR)指由思科院士Clarence Filsfils发明,并主要由IETF SPRING(Source Packet Routing In Networking)工作组进行标准化的新一代网络传送技术。SR基于源路由并且只在网络边缘维持状态,这使得SR非常适合于超大规模SDN部署,现已成为支持5G、物联网、多云、微服务发展的标准网络传送技术。

Clarence在发明SR的第一天,就为SR数据平面设计了两种实现方式(详见RFC 8402):一种是SR-MPLS,其重用了MPLS数据平面,可以在现有IP/MPLS网络上增量部署;另一种是SRv6,使用IPv6数据平面,基于IPv6路由扩展头进行扩展(SRv6报头格式详见IETF草案draft-ietf-6man-segment-routing-header-21),可以在现有IPv6网络上增量部署。

如果说SR-MPLS可以简单地认为是“下一代MPLS”的话,那么SRv6则是代表了全新的思考、设计、运营网络的方式?——网络即计算机(详见IETF草案draft-ietf-spring-srv6-network-programming-01)。下图是笔者经常使用的一张类比示意图:

222222222222
图1 网络即计算机-X86架构vs SRv6架构
图中左侧是大家熟悉的X86体系,程序最终是通过X86的CPU指令来操控服务器;右侧是SRv6体系,SDN通过SRv6 Segment来操控网络。
与X86 CPU指令是固定的不同,SRv6 Segment指令是可以任意扩充的(我们建议把新的Segment指令提交IETF进行标准化,但私有的Segment指令也是允许的),这赋予了SRv6极高的灵活性和极强的可扩展性。
目前多个IETF草案定义了多种SRv6 Segment指令,包括Underlay的Segment(转发、TE),也包括Overlay的Segment(L2/L3 ×××),还包括服务编程的Segment(服务链)以及用于5G移动核心网用户面的Segment等。可以看出,SRv6早已超出了Underlay的范畴,朝着全功能、网络级指令集演进。
还需要强调的是,SRv6实现了网络极简:控制平面是支持IPv6的IGP/BGP,转发平面则是纯IPv6。“简单即力量”,SRv6无疑在降低OPEX/CAPEX方面有着非常好的前景。
SRv6极简和可编程两大特性得到了业界的广泛认可。事实上,SRv6的生态系统发展的很快,如下图所示:

3333333333333333333
图2 SRv6生态系统
但SRv6在实际网络中的部署却很少,部署的业务也只是尽力而为的L3××× over SRv6,没有SRv6流量工程,更没有服务链这类高级功能。与之相对的是,随着Linux/VPP/智能网卡对SRv6的支持,SRv6在主机侧的应用和创新则是蓬勃发展(详见本文作者发表的Linux SRv6系列文章)。

SRv6在网络侧和主机侧呈现完全不同的情况,原因是什么?如何加速网络侧的SRv6部署?网络侧SRv6与主机侧SRv6如何整合/联动从而实现“网络即计算机”的愿景?

二、SRv6的阿喀琉斯之踵

前面谈到了SRv6在网络侧和主机侧呈现出完全不同的发展速度,根本原因是两者在查找和转发机制上存在根本的差异。

网络侧:ASIC/NPU收到数据包后,把数据包存在外置的内存中。ASIC/NPU读取固定长度的报头内容(一般是96~128字节),然后查找芯片本地/外部内存中的转发表,进行转发。如果报文头太长,无法在一个处理周期完成读取,则需要使用两个处理周期进行读取(Recycle),这将导致吞吐量下降一半。
主机侧:CPU读取完整的(一组)数据包,查找路由表/缓存,进行转发。因此报文头的长度对主机的吞吐不会有太大的影响,当然代价就是吞吐量远低于ASIC/NPU。
在SR-MPLS下,协议引入的开销较小,因此现有的大多数网络设备硬件均可以在一个处理周期内读取完SR报头信息,完成转发,意味着现有的硬件无须替换,只需升级软件即可支持SR-MPLS。这是SR-MPLS能迅速得到大量部署的技术基础之一。

但SRv6引入的协议开销远大于SR-MPLS[1] ,Segment所对应的操作也比SR-MPLS复杂,因此SRv6对网络设备提出了非常高的要求。如果按照目前的SRv6协议实现,要么需要替换掉绝大多数的网络设备,要么网络吞吐降低一半(Recycle),这对于很多用户而言是难以接受的。毕竟SRv6虽好,但如果其前期门槛是如此高的话,网络业界都会踌躇不前;缺乏网络侧SRv6(Underlay)的支持,主机侧(APP/Overlay)的SRv6创新也难以大规模部署,因为无法确保端到端的用户体验——这成为了SRv6的阿喀琉斯之踵。

下面我们通过一个例子来具体分析SR-MPLS和SRv6在协议开销、承载效率、MTU和对硬件芯片要求等方面的异同。假设净荷是IPv4报文,净荷长度是IMIX 440B,需要经过具有5个Segment的路径转发数据包。

44444444444444444444
表1 SR-MPLS vs SRv6
从上表可以看出,SRv6在网络可编程性和负载均衡方面有着巨大的优势,但要发挥其优势,需要迫切解决SRv6在协议开销、承载效率、MTU和对硬件要求方面的问题。这几个问题,其实本质上都是同一个问题:如何提高SRv6 Segment效率?

三、uSID原理是什么呢?

原文地址:https://blog.51cto.com/14355923/2421518

时间: 2024-10-11 04:30:48

uSID:SRv6新范式的相关文章

区块链对人工智能的变革:去中心化将带来数据新范式

区块链对人工智能的变革:去中心化将带来数据新范式 2017-01-03 14:59:27  来源:网络大数据  CIO时代抢沙发 摘要:本文基于我个人在人工智能和区块链研究方面的经验,描述了区块链技术可以如何辅助人工智能.二者结合一处即发!区块链技术--尤其是行星尺度的--可以帮助实现人工智能和数据团体长期以来的一些梦想,并打开一些机会.关键词: 区块链 人工智能 近年,从围棋到人类水平的语音识别,人工智能(AI)研究者终于在他们几十年一直努力探索的领域取得了突破.取得突破进展的关键一点是研究者

函数式编程思想:耦合和组合,第2部分

习惯于使用面向对象构建块(继承.多态等)的编程者可能会对这一方法的缺点及其他的可选做法视而不见,函数式编程使用不同的构建块来实现重用,其基于的是 更一般化的概念,比如说列表转换和可移植代码.函数式编程思想的这一部分内容比较了作为重用机制的经由继承的耦合和组合,指出了命令式编程和函数式编程之 间的主要区别之一. 在上一部分内容中,我说明了代码重用的不同做法.在面向对象的版本中,我提取出了重复的方法,把他们和一个受保护(protected)域一起移到 一个超类中.在函数式版本中,我把纯函数(不会带来

转——《将人性置之死地而后生》刘夙

本文由刘夙授权(果壳网)发表,文章著作权为原作者所有. 按:本文于11月10日发表于<东方早报·上海书评>,发表时题目改为“自私的天性何以使利他成为可能”.既然是书评,而不是正式的学术文章,文字间带一点情绪是不可避免的,甚至也可以说是必要的. 文中最核心的几句话之一是“当苏东剧变和中国的改革开放使‘全世界的共产主义运动陷入低潮’之后,奠基于‘理性人’假设之上的自由主义就成了现代乌托邦的最后一个顽固堡垒”,感谢编辑,把这句话原封不动登了出来.就像我友贾晋京在许多公开发表的文章中对近几十年世界工业

越专业的人,在下一个时代死得越惨烈!

越专业的人,在下一个时代死得越惨烈! 01 商业上的重大失误源于心理假象 罗素有一个非常著名的比喻,农场里面有一只鸡,每一次看到农场主来会被喂食,这只鸡就认为农场主的到来和喂食存在着因果关系.结果有一天,农场主带来的不是鸡食而是猎枪. 我们几乎在所有的时候都是这只鸡.商业上所有重大失误就是把心理假象当成了逻辑的必然.建立在因果律上的连续性,只是心理假设而已. 02 越专业的人,在下一个时代死得越惨烈 这跟你的能力无关,而是跟你的思维结构有关系.连续性一旦建立.不可突破,所以我认为遭遇不连续性是企

深度学习综述(LeCun、Bengio和Hinton)

原文摘要:深度学习可以让那些拥有多个处理层的计算模型来学习具有多层次抽象的数据的表示.这些方法在很多方面都带来了显著的改善,包含最先进的语音识别.视觉对象识别.对象检測和很多其他领域,比如药物发现和基因组学等.深度学习可以发现大数据中的复杂结构.它是利用BP算法来完毕这个发现过程的.BP算法可以指导机器怎样从前一层获取误差而改变本层的内部參数,这些内部參数可以用于计算表示.深度卷积网络在处理图像.视频.语音和音频方面带来了突破,而递归网络在处理序列数据.比方文本和语音方面表现出了闪亮的一面. 机

Git版本控制管理学习笔记1-介绍

    几乎所有的版本控制工具都是出于同样的目的:开发以及维护开发出来的代码,方便读取代码的历史,记录所有的修改.这里,介绍的是当前在开源社区内非常流行的版本控制工具Git.它是由Linus Torvalds发明的,最初是为了方便管理linux内核的开发工作. Git的诞生: 通常来说,当工具跟不上项目需求时,开发人员就会开发一个新的工具来替代它.大部分工具在发明之前,都会已经存在一些类似的工具,新工具则是在原有工具的思想上进行了更加合理的修改.那么在Git之前,有哪些版本控制工具呢?它们都有哪

深度学习-LeCun、Bengio和Hinton的联合综述(下)

深度学习-LeCun.Bengio和Hinton的联合综述(下) [编者按]三大牛Yann LeCun.Yoshua Bengio和Geoffrey Hinton在深度学习领域的地位无人不知.为纪念人工智能提出60周年,最新的<Nature>杂志专门开辟了一个“人工智能 + 机器人”专题 ,发表多篇相关论文,其中包括了Yann LeCun.Yoshua Bengio和Geoffrey Hinton首次合作的这篇综述文章“Deep Learning”.本文为该综述文章中文译文的下半部分,详细介绍

翻译界的一些问题探讨

翻译的游击战与阵地战 这个说法是萧乾先生提出来的. 在翻译界,由于种种原因,有的译家是遇着什么就译什么,犹如东方打一枪,西放一炮的游击队:有的则是选准一个阵地,仔细侦查,充分准备,精心部署,持续进攻,犹如攻城拔地的攻坚部队.前者之中,有些人译了一两篇.一两本书以后便销声匿迹,有些人译作等身,但精品寥寥,也有人篇篇都是精品,可惜篇幅太少.后者之中,则名家甚多,如朱生豪之于莎士比亚,傅雷之于巴尔扎克,张谷若之于哈代,李文俊之于福克纳,草婴之于托尔斯泰,英若诚之于阿瑟米勒,当然还有不少名家,均是选择一

追本溯源 解析“大数据生态环境”发展现状(CSDN)

程学旗先生是中科院计算所副总工.研究员.博士生导师.网络科学与技术重点实验室主任.本次程学旗带来了中国大数据生态系统的基础问题方面的内容分享.大数据的发展越来越快,但是对于大数据的认知大都还停留在最初的阶段——大数据是一类资源.一类工具,其实“大数据”更多的体现的是一个认知和思维,是一种战略.认知和文化. 以下为分享实录全文: 一年多来,通过组织中国大数据技术大会.CCF大数据学术会议以及各类大大小小的应用峰会与学术论坛,结合我们科学院网络数据科学与技术重点实验室所承担的与大数据相关的重大基础课