Custom Meta Data in PMDs

在开放源码和私有开发中都有一些在DPDK出现之前创建的数据包处理应用程序。开源中的一些示例是VPP,OVS等。这些应用程序定义了自己的数据包元数据。这些应用程序中的协议栈广泛使用该元数据。这些应用程序已经集成了DPDK,以利用丰富的PMD集。但是,他们不能直接在其协议栈中使用rte_mbuf中的元数据,因为这将需要重写协议栈。因此,他们最终从rte_mbuf转换为他们的应用程序特定的元数据格式。这会导致〜20%到〜30%的性能损失。这迫使这些应用程序编写自己的本机PMD,从而导致DPDK和这些项目之间的代码/工作重复。

可以在PMD中创建抽象层,以便用户可以定义rte_mbuf转换代码的描述符。这将允许应用程序避免rte_mbuf到应用程序特定的数据包元数据格式的转换,从而节省了性能损失。

本演讲讨论了对抽象层的需求,如何创建这样的抽象及其好处。请注意,这仍在进行中。无法保证它会成功,在这种情况下,本演示文稿将讨论尝试了什么以及面临的问题。可能是社区可以建议解决方案

展开查看详情

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

15.