admin管理员组

文章数量:1648973

概述

Intel近期发布了其新一代E810网络适配器,该适配器提供了一种DDP(Dynamic Device Personalization, 动态设备个性化)能力可以有效加速多种协议报文的处理。本篇文章将以http://FD.io VPP为例,介绍怎么利用Intel E810网卡的这种能力加速GTP-U报文的处理。

Intel E810网卡及DDP简介

英特尔® 以太网800系列是新一代英特尔® 以太网控制器和网络适配器,采用增强的可编程报文处理引擎,可实现更深入、更多样化的报文协议头处理。这种片上功能称为动态设备个性化(DDP)。在英特尔®以太网800系列中,每台设备的驱动都可以动态加载DDP软件包。Comms DDP包除了支持通用DDP包含的协议之外,还增加了对GTP和PPPoE协议的支持。本篇文章中加速GTP-U报文所使用的就是这种Comms DDP包。

VPP简介

开源项目VPP(Vector Packet Processing)是由cisco贡献给http://FD.io社区的核心项目。VPP是一个运行于用户态的高性能可扩展报文处理框架。VPP的报文处理建立在各种graph node上。通过组织这些node的顺序,VPP可以高效灵活地组织各种基础组件和plugins来处理特定的业务逻辑,而不需要修改核心代码。

VPP从19.04版本开始支持Intel E800系列网卡,在即将发布的VPP 20.09版本中,很多高级DDP特性已经支持。

VPP vnet/flow infrastructure简介

VPP提供了vnet/flow infrastructure来利用硬件网卡的卸载能力。当使用DPDK plugin作为基础IO插件时, dpdk plugin使用rte_flow来支持这些flow类型。

vnet/flow支持的flow类型有:

  • Ethernet_type,
  • IPv4, IPv6,
  • IP4_N_TUPLE, IP6_N_TUPLE,
  • IP4_L2TPV3OIP,
  • IP4_IPSEC_ESP, IP4_IPSEC_AH,
  • IP4_VXLAN, IP6_VXLAN,
  • IP4_GTPC, IP4_GTPU

Intel E810网卡支持绝大多数的flow类型。

Vnet/flow infra支持的action有:

本文标签: 框架intelDDPoffloadVPP