首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

All Programmable SDN交换机加速网络功能虚拟化

All Programmable SDN交换机加速网络功能虚拟化

在分类模块中,我们根据L2、L3和L4字段配置了均衡哈希算法。此算法包含分段,以便负载均衡器能够根据内部隧道 (inner tunnel) 信息(如VXLAN或NVGRE)来执行均衡,而IP分片连接则可以由特定连接/CPU来进行处理。对于VM到VM连接而言,分类器和搜索引擎会将会话转发到目标VM,而不是vSwitch软件。同时,分类器功能根据其路由器输出来为每个输入流分配报头操控规则,同时监控修改 IP地址或卸载协议。

对于每个新流,目标选择模块的负载均衡器根据加权循环调度算法(WRR)技术从可用的VM中分配目标地址。将根据从VM负载监控模块派生的信息来配置WRR。

分层流量管理器模块在可用的VM之间实现分层WRR,并为每个VM 保持一个输出虚拟端口,以根据优先级、VM和物理端口分成三个调度层级。CPU层级表示特定VM,同时优先级层级可能在服务于特定VM的不同服务/流之间分配加权。ENET通过操作外部DDR3,可以支持100ms的缓存以克服特定VM的瞬时负载。

VM负载监控使用ENET可编程数据包生成器和数据包分析器对电信级以太网服务进行监控,这符合Y.1731和802.1ag标准。VM负载监控模块维护有关每个CPU/VM可用性的信息,对VM使用以太网CFM延迟测量报文(DMM)协议生成之类的指标。通过对每个数据包加盖时间戳并测量发送与接收之间的时间差,此模块可以确定每个VM的可用性,并据此指示可用VM上的目标选择模块。

资源选择模块所确定的是从主机发送至用户的哪些传出流量将被分类并确定数据包的资源。ENET中的报头操控模块将执行网络地址转换(NAT)以将输入地址替换为正确的VM IP地址,从而使NIC能够将流、数据包或服务转发至正确的VM。对于输出流量,NAT将执行相反操作并将数据包连同其原始IP地址一并发送给用户。此外,报头操控模块还将执行隧道封装。此时,报头操纵模块将执行分类器通过分类所分配的操作规则,并将在CPU操作之间剥离隧道报头或其他报头。在相反方向,其将原始隧道附加到输出用户端口。

随着运营商网络用户数量的增加,流表(flow table)的大小可能快速增加从而超过标准服务器的缓存容量。对于当前OpenFlow系统尤为如此,因为当前OpenFlow系统需要40个不同字段、IPv6地址、多协议标签交换(MPLS)和提供商骨干网桥(PBB)。ENET搜索引擎和包解析器可以支持对多个字段进行分类并提供数百万个流,因而可以从软件设备中卸载分类和搜索功能。

最后,通过ENET数据包报头操控引擎,ENET可将卸载任何协议处理并为VM以及TCP分段或者各种协议之间的联网(包括用于虚拟EPC(vEPC)实现的3GPP、XVLAN、MPLS、PBB、NAT/PAT等)提供原始数据信息。

除了固件之外,Ethernity还开发了我们称之为ACE-NIC的NFV NIC(图3)。要创建NIC,我们将ENET SoC固件(已部署到电信级以太网网络中的数十万个系统中)部署到单个Xilinx Kintex®-7 FPGA中。我们还将五个分立组件的功能集成到同一个FPGA中。NIC和SR-IOV支持;网络处理(包括分类、负载均衡、数据包修改、交换、路由以及OAM);100ms缓冲;帧分段;加密。

ACE-NIC是一款支持OpenFlow的硬件加速NIC,并在COTS服务器中运行。ACE-NIC将vEPC和vCPE NFV平台的性能提升50倍,极大降低了与NFV平台相关的端对端时延。新的ACE-NIC配备了四个10GE端口以及专为基于Ethernity ENET流处理器的FPGA SoC设计的软件和硬件,支持PCIe Gen3。ACE-NIC还配备了与FPGA SoC连接的板载DDR3,支持100ms缓冲并可搜索一百万条目。

Ethernity ENET流处理器SoC平台使用具有专利、独有的基于流的处理引擎来处理大小可变的任何数据单元,提供多协议联网、流量管理、交换、路由、分段、时间戳和网络处理。此平台在Xilinx 28nm Kintex-7XC7K325T FPGA上支持高达80Gbps的速率,或在更大型FPGA上支持更高速率。

ACE-NIC附带基本功能,比如纳秒精度以内的按帧时间戳、数据包生成器、数据包分析器、100ms缓冲、帧过滤以及VM之间的负载平衡。为提供多个云设备,其还能够按虚拟机分配虚拟端口。

此外,ACE-NIC还带有NFV vEPC的专用加速功能。这些功能包括帧报头操纵和卸载、16K虚拟端口交换实现、可编程帧分段、QoS、计数器和计费信息,这些功能可以由面向vEPC的OpenFlow进行控制。通过其独特的软件及硬件设计,ACE-NIC将软件性能提高了50倍。

ALL PROGRAMMABLE ETHERNITY SDN交换机
同样,Ethernity在FPGA中集成ENET SoC固件以创建全ALL PROGRAMMABLE SDN交换机,并支持OpenFlow的1.4版本和全套电信级以太网交换机功能,从而加速白盒SDN交换机部署的上市进程。


ENET SoC电信级以太网交换机是符合MEF标准的L2、L3和L4交换机/路由器,可以在分布于超过128个物理通道的16,000个内部虚拟端口之间交换和路由五个级别数据包报头的帧。其支持FE、GbE和10GbE以太网端口以及四种级别的流量管理调度层级。由于ENET的内在架构支持分段帧,因此ENET可以通过零拷贝技术执行IP分片和功能重新排序,这样一来,分段与重组便不再需要专用的存储和转发。此外,ENET还具有集成的可编程数据包生成器和数据包分析器,可简化CFM/OAM操作。最终,ENET可以在3GPP、LTE、移动回程和宽带接入中运行。其支持多个协议之间的互通,这些只需要通过零拷贝操作,并且不需要重新路由帧来进行报头操控。

显然,通信行业正处在新时代的开端。我们确信可以看到NFV和SDN领域会有很多创新。NFV性能提升或SDN交换机的任何新兴解决方案必须能够支持新版SDN。随着Intel收购Altera以及寻求更高可编程性的硬件架构不断增多,我们确信处理器与FPGA的组合架构也会越来越多,同时还会有新的创新方式来实现NFV性能提升。

基于FPGA的NFV NIC加速可以基于通用处理器来提供NFV的灵活性,同时提供GPP无法维持的必要吞吐量,并且还要执行GPP无法支持的特定网络功能加速。通过在FPGA平台上有效组合SDN与NFV,我们可以设计出All Programmable网络设备,从而推动网络应用领域中全新的IP厂商生态系统创新。



图1 – 在数据包到达时,NIC进入代表特定虚拟机的虚拟端口 (VP)。数据包随后通过DMA发送到服务器上的合适的虚拟机以进行处理。



图2 - 这一高级方框图显示了虚拟机的负载均衡和交换机。



图3 – Xilinx Kintex FPGA位于Ethernity NFV网卡的中心。
返回列表