51

网络转型中的设备硬件形态选择初探

 4 years ago
source link: https://www.sdnlab.com/23189.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

作者简介:Domi

引言

江湖,武侠门派众多,武功众多,不一样的武功,有着不同的境界,同一种武功,随习武者悟性与天资的不同,武功境界也是参差不齐。从讲究招式,中规中距,到旁门左道,剑走偏锋;从天下之术,皆为我用,到盖世神功,深不可测;从武学宝典,出神入化,到自创武功,自成一派,不一而足。

015.jpg

网络,即江湖,亦如是。接着上一篇大道至简——迈向融合的未来网络,继续来聊下网络设备流派及网络转型之下硬件形态选择问题。网络江湖门派错综复杂,盘根错节,试图进行框架科普介绍,详细深入研究,待后续另开专题展开。

万物互联的核心即网络,网络赖以工作的原理倒也简单:传输 + 路由交换,但网络的庞大复杂却无与伦比。按照接入层次及业务领域,网络全貌大体如下:

001.jpg

上图基本涵盖了所有领域,其任一领域,如有线接入网,继续展开,可呈现大体如下拓扑:

002.jpg

上图任一层级随着逐步的聚焦深入,网络会暴露各式各样的网络设备,以至于单单是设备名称就足以让人抓狂。

一方面,随着新型业务层出不穷的涌现,在已有庞杂的网络上展开新的业务,甚至开拓新的领域,无论是运营商,还是设备商,还是芯片厂商都面临巨大挑战。网络全貌图中标红的领域为当前的热点领域,这里面有在传统业务领域基础上发生的变革,如在传统UnderLay之上进行OverLay的SD-WAN变革,也有革命性的采用新架构的SDN WAN。也有两者兼具的复杂演进,如BRAS向vBRAS的演进,既有设备形态上的变化,又波及网络架构转控分离的革命。更有彻底革命性变化,如5G网络的诞生,形成端到端的革命,从终端设备到基站,基站到骨干网,从移动通信到固定宽带,从实体网元到NFV网络切片,均为颠覆性的存在。

另一方面网络设备市场空间巨大,却被为数不多的几家厂商把控,面对如此巨大的蛋糕,只要沾边的厂商都想分一杯羹,形成了种种不同的抱团社区。面对纷繁复杂的变化,好在网络的演进方向清晰而明确。其中虽有运营商和设备商的角逐,传统芯片厂商和新兴芯片厂商的较量,网络的总体演进奔着解耦,开放,可编程的方向演进。

网络设备演进方向

纵观整个产业的发展,在过去的三十年中,互联网已经变得非常商业化,企业网络的协议和技术已经发生了变迁。但是我们也应该看到,虽然作为互联网中坚力量的以太网和TCP/IP协议栈显然是开放的,但是交换芯片和交换机制造商都对内部的组件讳莫如深。在过去几十年里,他们也很享受这种全盘控制给他们心理上、技术上和经济上带来的快感。领先交换芯片制造商(如Broadcom,Mellanox Technologies,Barefoot,Cavium和Innovium)详细谈论他们的技术。但与我们从全球CPU制造商那里获得的技术相比,他们公开的技术太肤浅。而且交换机的元件也没有像我们可以从任何一台OEM或ODM想要组装的服务器上那样被详细地列出。传统设备商如思科,华为等,让他们深度公开技术,更是难上加难。

网络设备的演进,基本围绕针对传统网络设备的解耦进行,进行解耦的方法动作,也逐渐清晰,具体体现为如下三层解耦:

1.网络系统软件解耦

  • 借力开源,可持续发展
  • 社区化协作,高效研发

2.软硬件解耦

  • 硬件标准化,提供更多选择
  • 掌控软件,沉淀研发运维能力

3.芯片解耦

  • 避免芯片锁定
  • 通用跨芯片平台

完成三层解耦,依赖的关键技术框架为SDN/NFV。网络设备完成架构转型,最终形成业务系统设计复杂,而灵活可弹性扩展;转发器尽量简单,业务无关形成融合,且可编程。

设备商流派

通过解耦从传统芯片厂商那里,完成芯片级替换革命,其方向和过程将曲折而漫长,涉及到技术和市场等多方面因素,角色可大体做如下划分:

传统网络设备商:现有网络中,传统设备既有者,如华为,思科等,占据了绝对市场空间,面对网络转型考虑的是如何维护既得分额,同时不丢失新兴市场。面对浩浩荡荡的解耦趋势,传统设备商不得不将固守多年的设备为用户提供开发接口;不得不拥抱开源社区,通过贡献源码,搅局开源社区,引导社区向自己方向发展。以至于FD.io,OpenDayLight,ONOS,Open vSwitch等开源社区,到处可见传统设备商身影;不得不折中两手准备,一方面主力推传统设备,一方面做新兴设备拓展。

运营商:随着自身利益空间不断被互联网厂商压缩,避免自己被管道化,要自主掌控自身命运,对网络设备的革命极为迫切,亟待实现三层解耦,实现厂商互操作,设备标准化。要做到这点,运营商不断推动进行三层解耦测试,网络转型方案试点,如vBRAS,SD-WAN,MEC,5G等试点。同时,积极创建和参与开源社区,和传统设备商进行方案方向角逐,ONAP,CORD,Stratum,凤凰项目等风起云涌。

新兴设备商:在传统网络中从未或很小占据市场空间,在网络转型中极力附和运营商,拥抱新兴框架,谋求网络彻底革命,以实现弯道超车,打开市场。新兴小厂商无任何负担,在新兴事物推动上较为积极。和运营商合作撬开市场,存在较多机遇。

转发芯片厂商:无论网络怎么转型,只要采用实体硬件转发,均离不开转发芯片,他们只需做好转发芯片的可编程能力,唯一的挑战来自于摆脱流量硬件卸载,纯软转发。该领域涉及:ASIC,NP,智能网卡,FPGA,P4等芯片厂商。面对可编程挑战,智能网卡,FPGA,P4正逐步成为新宠。

x86厂商:以其灵活的业务编程能力,同时借助NFV趋势,推动纯软转发势不可挡,如火如荼的FD.io,DPDK,VPP,Open vSwitch等开源社区可见一斑。

厂商流派的不同,侧重的硬件形态不同,硬件形态不同意味着强耦合和定制化。这里我们可以理解三层解耦的难度之大,转控分离南向关键接口的难以标准化。

下面按照解耦开放程度,依次介绍下设备商流派。

传统网络设备

最典型的传统数通设备厂商,如思科,华为,Juniper等。基本都采用了ASIC芯片及NP处理器。系统软件和硬件无法解耦,彻底捆绑,无法为用户提供编程能力,提供的是全套固定能力产品。

003.png

其关键在于硬件和软件的接口API层,是专有的,无法公开,无法标准化,形成一套封闭的系统。在开放趋势下,厂商不得不进行妥协,一定程度上开放编程接口,但效果甚微。

004.png

SDN化设备

SDN化趋势不可阻挡。原生的SDN思想非常理想,也最具革命性,典型如ONOS社区,南向接口只采用Openflow,Netconf等,业界叫做狭义SDN。传统设备商无法丢弃已有产品,已有蛋糕,同时又无法阻挡SDN大势,便采用传统数通协议完成SDN化,实现转控分离,于是南向接口复杂而广博了许多,如BGP-LS,PCEP,BGP等都出现了,业界称之为广义SDN,典型如OpenDayLight社区。SDN化设备实际上可以涵盖所有设备商流派,便于区分这里狭义特指传统设备的SDN化。传统设备商多采用该方式,实现自身传统设备向SDN架构的支持。传统设备商依托市面上强大的市场占有率,是成功的搅局者,逐步将最初狭义SDN空间压缩,以至于寸步难行。无论南向接口方面,还是硬件芯片生态层面,原生狭义SDN,很少商用,多停留在研究层面。

005.jpg

服务器形态设备

世界上现有的路由交换制造商可以从服务器(server racket)上学到一些东西。实际上,他们也的确这样做。打破网络设备的捆绑封闭,最值得借鉴的应该是PC或服务器行业,做到全面解耦。

006.jpg

硬件形态,规格参数严格标准化,通过操作系统OS驱动屏蔽硬件差异,实现业务应用的硬件无关,平台无关。直接引入至路由交换领域,采用标准服务器可否直接做网络设备?当然可以,但存在性能瓶颈,故而DPDK开源后大热。围绕转发业务层面,VPP,Open vSwitch等受热捧。

007.jpg

在软转加速方面,DPDK无法绕过,它源于Linux一直被诟病的转发性能问题,相信Linux内核后续会融入DPDK机制或对内核进行深度优化。DPDK在用户态通过CPU主动轮询方式托管接替了Linux内核被动中断机制,据说性能可提升10倍以上,但需要CPU主动轮询,无论报文多少都需要空转CPU。这意味着随着设备吞吐量的增加,需要线性堆加CPU进行绑定转发处理。CPU厂商可大量出货CPU,不得不说这是一个蛋糕点,或许大家能够猜测到厂商将DPDK开源的意义。Linux内核转发和DPDK转发处理路径对比如下:

008.jpg
009.jpg

DPDK机制在一定程度上可提升转发性能,个人认为并不能从根本上解决问题,跨CPU访问,PCI总线限制等,都制约了其向更大吞吐量,性能要求更苛刻的领域应用。一言以蔽之,CPU设计初衷在计算密集业务处理,不擅长流量转发,仍依赖于外置实体路由交换设备进行流量卸载。集中服务器形态,提升吞吐性能,只能集成硬件芯片卸载流量。如采用智能网卡(Smart NIC),FPGA等。FPGA也可理解为智能网卡的一种实现方式。智能网卡有两个使命:

1.解放服务器昂贵的CPU计算资源,流量硬件卸载;
2.和服务器集成,实现可定制,提供裸金属服务器。

围绕三层解耦,目前市面上智能网卡各自为战,无统一接口标准,可编程能力层次不齐,这是智能网卡所面临的问题,继续深究会发掘只是将捆绑从设备层面转移到了转发网卡层面。事实上,这涉及到网络设备解耦的本质。关注上层业务灵活扩展,同时对吞吐量有一定的要求,但对三层解耦无过多要求,智能网卡不失为一种选择。

P4设备

尽管SDN化的设备有了一定的可编程能力,但其扩展仍旧是有限的,且进行私有扩展无法形成标准。于是衍生了完全可编程的SDN思想,即P4(Programming Protocol-Independent Packet Processors),它提供了一种芯片可编程语言,屏蔽底层硬件,硬件芯片提供对应能力接口即可,通过P4语言实现对流量的可编程处理。

010.jpg

P4芯片的可编程能力通过无差异的可编程逻辑单元实现,每个逻辑单元做匹配及处理动作,用户通过编程语言编排定义逻辑单元,实现整体的可编程。

011.jpg

P4联盟的开创者,两位SDN大师,普林斯顿的Jennifer Rexford和斯坦福的Nick McKeown,他们也是SDN整个领域的开创者。主流开源控制器ODL,ONOS等已支持P4,P4硬件芯片也有问世。抛开P4芯片厂商不谈,P4本身确实提供了一种很好的思路方向,个人认为是演进的方向,形式倒不一定是P4。

彻底革命派

围绕三层解耦,尽管运营商,设备商,芯片厂商都给出了SDN/NFV方案,但各厂商站在自身利益层面,基本上依旧各自为战,无法实现彻底解耦。比如采用标准服务器,是真正彻底解耦了,还是陷入了更为彻底的捆绑?服务器CPU,芯片是否解耦?和传统网络设备有无本质区别?这是个值得思考的问题。运营商,学术研究机构及互联网厂商的看法和动作或许更值得关注。Google,FaceBook等厂商源于自身业务爆炸式增长,面对雷打不动,铁板一块的传统网络设备,动了彻底革命之心。Googel的B4项目,FaceBook开源分布式网络路由平台Open/R,更主动推动OCP(Open Compute Project)。再看国内,阿里,腾讯,百度,京东,中国移动,中国联通最初六家单位成立凤凰项目,以不捆绑任何特定商用软件平台,实现网络设备自研。在成熟度及影响力上,这里想谈下FackBook主导推动的OCP开源计算工程。它几乎涉及了网络设备的所有领域,它的变革思路,宏大,广博而彻底,值得借鉴。在网络设备领域,OCP做到硬件和网络操作系统NOS解耦的核心为ONIE(Open Network Install Environment),ONIE类似于PC电脑里的BIOS,提供设备硬件和网络操作系统之间的一层适配。

在裸金属服务器或白盒设备上,预装ONIE,通过ONIE可以安装不同厂商网络操作系统(NOS)。这点类似于标准服务器通过BIOS,可以引导安装Windows,Linux,FreeBsd等不同操作系统,这里可以再次印证网络设备借鉴服务器领域的发展方向。ONIE对下屏蔽硬件架构差异,目前支持ARM,x86,PowerPC架构;对上屏蔽不同操作系统。似乎平淡无奇,但确实关键一步,简直是巧夺天工。

ONIE可以理解为一套具备系统引导功能的微型操作系统,它管理网络设备的CPU,存储及原始的接口管理,但不具备转发能力。简单架构如下:

012.jpg

预装了ONIE的网络设备首次上电后,进行网络操作系统安装(如:SONiC,ONL等),其过程如下:

013.jpg

网络操作系统安装好之后,再次启动,系统引导至已安装的操作系统,而跳过ONIE,过程如下:

014.jpg

网络操作系统方面,ONL(Open Network Linux)值得一提,它作为OCP工程的一部分,旨在打造网络领域的开源标准Linux,目前已在CORD 和Stratum项目中有落地。ONL支持多种数据平面抽象接口:OF-DPA, OpenNSL 及 SAI。同时兼容大部分路由转发代理项目:FRRouting, Quagga, BIRD, Facebook FBOSS, Google gNOS以及 Azure SONiC。

展望

江湖门派林立,招式繁多,至简融合转型之道,已强势来临。网络转型中,硬件形态林林总总,决策因素,不一而足。乾坤未定,都是黑马;胜负未分,皆有变数,倚楼听风雨,淡看江湖事。。。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK