基于DPDK的虚拟网络包代理(broker)

1、虚拟网络包代理的商业需求

    网络需要较好地分析与可视化最好的客户体验和投资回报率,这一点NPB(Network Packet Broker)可以做到,涵盖服务质量性能、工具和应用性能、安全。

但是,对于网卡出现的越来越偏向软件的需求(vEPC:virtual Evolved Packet Core,CORD等),物理NPB不足以或无法高效地完成,涉及到对网络流编程/重新编程、分析业务流程这两个方面。

2、虚拟网络包代理支持以下功能

    基于以上的商业需求,我们需要开发一个可以支持以下功能的网络包代理:

3、高层架构

    下图显示的是虚拟网络包代理的运作方式,基于DPDK的转发agent是我们solution中的一部分。

4、所遇到的挑战
  • 控制报文处理

尽管Mgmt控制报文由Mgmt界面(interface)通过使用标准的linux IP stack进行处理 , 我们不得不为其他控制报文例如ARP,ICMP做好准备。为做到这一点,我们专门创建了一个独立的队列。

  • Egress上的包分段

连接到Egress界面的分析设备可能不支持Jumbo Frames,那么就需要Egress支持对包进行分段。

5、基于DPDK的Forwarding Agent Ingress报文处理

6、基于DPDK的Forwarding Agent Engress报文处理

7、所取得的成就

    Happiest Minds已经解决了在DPDK上虚拟网络报代理中以上出现的所有提到的问题。

与未修改的DPDK forwarding应用的性能相比,吞吐率只下降了20%。

原文:DPDK开源社区

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注