单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2020/2/2,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2020/2/2,#,Server Switch:A Programmable and High Performance Platform for Data Center Networks,姓,名,:,李 晓,学 院:,计 算 机 学 院,专 业:,计算机应用技术,Server Switch:A Programmable,1,内容提要,基本概念,ServerSwitch,研究动机,DCN,设计存在方法,ServerSwitch,设计目标,ServerSwitch,构架,ServerSwitch,实验,ServerSwitch,局限性,总结,2024/11/18,2,内容提要基本概念2023/9/202,数据中心,数据,中心(,data,center,),:,为大型,复杂信息系统的海量,数据提供,分布式存储和计算的运行,平台。,人类,产生语言开始,,知识,最多的人(酋长,/,祭祀)就是数据中心,,口口,相传就相当于现如今的网络,传输,。,2024/11/18,3,数据中心2023/9/203,数据中心网络,数据中心相互连接,云计算,服务核心部分,数据中心的网络基础设施,它通过,高速,的链路和交换机连接着大量的,服务器,这是新领域,包括:,拓扑设计和路由,流量调度,拥塞控制,虚拟化,应用支持,2024/11/18,4,数据中心网络数据中心相互连接2023/9/204,云计算,2024/11/18,5,云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。,云计算2023/9/205云计算是一种基于互联网的计算方式,,动机,DCN,设计与现有的方法不同,1PortLand,的,目的,MAC,地址,采用,最,长前缀,匹配,2BCube,采用,源路由,转发,3,量化,拥塞,通知采用基于速率,的,拥塞控制,当前,的以太网交换机和,IP,路由器不能用于实现这些,设计,因此,需要,一个,平台来实现这些,DCN,设计,2024/11/18,6,动机DCN设计与现有的方法不同2023/9/206,DCN,设计存在方法,实现这些设计需要可编程的平台,纯,软件,系统,可编程;性能差,,开销高,,,有,处理延迟,基于,FPGA,的,平台,难以编程,(,硬件,描述语言如,Verilog,),NetFPGA,成本高,OpenFlow,交换机侧重,于,控制,面板,功能,2024/11/18,7,DCN设计存在方法实现这些设计需要可编程的平台2023/9/,三大设计目标,提供可编程数据包转发引擎,,,实现高性能,转发速率,支持新的路由和信令,流量,/,拥塞控制设计,处理延迟,支持,新的,DCN,服务(网络缓存),编程性,2024/11/18,8,三大设计目标提供可编程数据包转发引擎,实现高性能2023/9,可编程的数据包转发引擎,网络拓扑信息嵌入到服务器地址,数据包转发,时,利用,此,拓扑信息,PortLand,把,fat-tree,拓扑信息编码到设备的,MAC,地址,物理,MAC,使用最长前缀匹配,BCube,使用源路由,并,引入,nhi,(下一跳指数),减少路由路径长度,新的,DCN,设计需要,可编程的数据包转发引擎,2024/11/18,9,可编程的数据包转发引擎网络拓扑信息嵌入到服务器地址2023/,新的路由和信令流量,/,拥塞控制,新的,DCN,设计还在,控制,面板,引进,新的控制和信令,协议,PortLand,交换机需要拦截,ARP,报文,,,重定向到,Fabric,管理器,BCube,使用自适应,路由,,选择最大带宽路线,2024/11/18,10,新的路由和信令流量/拥塞控制新的DCN设计还在控制面板引进新,网络包处理,数据中心,由单一,的运营商,管理,技术创新之一:,数据中心,引入智能?,网络,流量,处理,如:,CamCube,提出了缓存,服务,引入,包,过滤,,加工,和,缓存,丰富的可编程性:,任意数据包修改,处理和缓存,高性能:,低开销,低线速,数据处理,2024/11/18,11,网络包处理数据中心由单一的运营商管理2023/9/2011,两,大,额外要求,实现三大设计目标,需要一个平台,:,1,对数据和控制面板可编程,2,可以实现高吞吐量和低处理延迟,两,大,额外要求,可,编程,性,易于使用,商品组件,价格便宜,2024/11/18,12,两大额外要求实现三大设计目标两大额外要求2023/9/201,ServerSwitch,1,交换芯片可编程,用,TCAM,表,,进行,任意字段匹配,2,PCI-E,接口,几十,Gb/s,的,吞吐量和微秒级的延迟,3,商用服务器,最好,的编程器件,2024/11/18,13,ServerSwitch1 交换芯片可编程2023/9/20,ServerSwitch,架构,硬件,-,交换芯片,-,多核,CPU,-,PCI-E,接口,软件堆栈,APIs,内核和用户空间数据包处理,2024/11/18,14,ServerSwitch架构2023/9/2014,ServerSwitch,满足要求,1,交换芯片提供可编程的数据包转发引擎,2ServerSwitch,驱动器和,PCI-E,接口,提供,低延迟通信,3,对交换芯片编程,提供高吞吐量,1,编程使用标准的,C/C+,2,使用商用便宜的部件,缺点:受,switching chip,,,PCI-E,接口,服务,器系统,的限制,2024/11/18,15,ServerSwitch满足要求1交换芯片提供可编程的数据包,可编程数据包转发引擎,Destination-based forwarding,e.g.,IP,Ethernet,Tag-based forwarding,e.g.,MPLS,Source Routing based forwarding,e.g.,BCube,2024/11/18,16,可编程数据包转发引擎2023/9/2016,源路由转发,NISA:,转发引擎,使用查找,表,的第一,个,中间,地址,ISA,:转发引擎使用,索引,i,和,基于索引的,IAi,2024/11/18,17,源路由转发NISA:转发引擎使用查找表的第一个中间地址202,基于目的和标签,的,转发,目,的,地址可以放置在报文头的,任意,地方,所以引擎必须能够对任意字段进行匹配,。,基于标签的路由采用直接提取,查找键。,标签,仅,有局部意义,,因此,,标签,需要,修改,。,2024/11/18,18,基于目的和标签的转发目的地址可以放置在报文头的任意地方,所以,ServerSwitch API,控制,交换芯片,和发送,/,接收数据包,1,设置查找键(,UDLK,),SetUDLK(1,(B0-5)/,目的,mac,地址为第一个,UDLK,2,设置查找表,SetLookupTable(TCAM,1,1,000001020001,FFFFFF000000,act=REDIRECT_VIF,vif=3),设置,TCAM,第一项为目的,mac,地址,比较目的,mac,地址和值,000001020001,,掩码,FFFFFF000000,,包转发到第三个虚拟接口,2024/11/18,19,ServerSwitch API 控制交换芯片和发送/接收数,ServerSwitch API,3,设置虚拟接口表,SetVIfTable(3,001F29D417E8,NULL,2),4,读,/,写寄存器,ReadRegister(OUTPUT_QUEUE_BYTES_PORT0),5,发送,/,接收数据包,int SendPacket(char*pkt,int oport),int RecvPacket(char*pkt,int*iport),2024/11/18,20,ServerSwitch API 3设置虚拟接口表2023/,DCN,设计,使用,ServerSwitch,实施,几个有,代表性的,DCN,设计,。,第一,,实现,Bcube,。,说明在,ServerSwitch,如何,支持,索引源路由。,BCube,包转发在硬件进行。,第二,,QCN,拥塞控制。,QCN,实验,表明,ServerSwitch,可以产生低延迟控制消息,。,第,三,,网络缓存,。,2024/11/18,21,DCN设计使用ServerSwitch实施几个有代表性的DC,Bcube,实验,Bcube,是,服务器为中心的,DCN,架构,。,灰色部分是自定义的头,,NH,是,NHA,有效字段的数目,。,BCube,采用递归的构建方法,2024/11/18,22,Bcube实验Bcube是服务器为中心的DCN架构。202,转发性能,ServerSwitch,没有数据,包丢失;,转发延迟小,,,线性增长,。,基于,软件,实现,Bcube,:当,数据包小于或等于,512,字节,数据包丢失,;,转发延迟大,。,表明,ServerSwitch,转发性能好,2024/11/18,23,转发性能ServerSwitch没有数据包丢失;转发延迟小,量化拥塞通知,2024/11/18,24,量化拥塞通知2023/9/2024,QCN,实验,2024/11/18,25,QCN实验2023/9/2025,网络缓存,实验,A,Server,switch,A,通过,ServerSwitch,发送请求数据包到,B,当,B,接收到一个请求,它回应一个,数据包,。,报文,在,报文头,有,唯一,的,ID,。,ServerSwitch,匹配成功,发给,A,。,ServerSwitch,匹配失败,发给,B,。,B,网络缓存实验AServerA通过ServerSwitch发送,26,/29,网络缓存性能,缓存命中率越高,1,、,ServerSwitch,和,B,之间带宽节省越多,2,、,ServerSwitch,的,CPU,利用率越高,结论:性能好于软件方法,2024/11/18,27,网络缓存性能2023/9/2027,局限性,1,只支持标准协议的修改,如改变以太网,MAC,地址,减少,IP,的,TTL,,改变,IP,的,DSCP,,修改,MPLS,头,2,数据包处理延迟,相对高,不适合,实时处理的协议如,XCP,3,受端口数量和速度限制,服务器只提供,4GbE,端口,不能直接用于,fat-tree,和,VL2,2024/11/18,28,局限性1只支持标准协议的修改2023/9/2028,总结,ServerSwitch,:,DCN,可编程高性能平台,ServerSwitch,平台构建,新的,DCN,设计,1BCube,和,PortLand,2,拥塞控制算法,QCN,3,网络,缓存服务,特点:对用户定义的转发方案线速转发,-,支持新的信令和拥塞控制机制,-,支持网络数据处理,2024/11/18,29,总结ServerSwitch:DCN可编程高性能平台202,西安电子科技大学,谢谢,2024/11/18,30,西安电子科技大学谢谢2023/9/2030,