Advertisement

DPDK流分类与多队列(Python版本)

阅读量:

1.前言

多队列与流分类技术已被广泛应用于各类DPDK网关项目之中,例如开源的DPVS以及美团所开发的四层网关等。通过采用多队列和分流机制,能够使网络接口卡更有效地与多核处理器及多任务操作系统协同运作,从而实现更为高效的输入输出处理效果。

本节将选取英特尔的网络接口卡作为案例,阐述多队列与流分类技术如何协同运作,分析不同分类方法适用于何种应用场景,并探讨DPDK是如何借助这些网卡特性的。

2.多队列

2.1 网卡多队列的由来

提及该网卡多队列特性时,显然指的是传统网卡所具备的多个DMA队列,并且其内部存在针对多个DMA队列的分配方式。图中展示了Intel 82580网卡的结构示意图,从中可以清晰地看到多队列在网卡中的具体分布位置。

图2-1 82580网卡简易框图

网卡多队列技术与多核处理器技术之间存在紧密联系。在早期的计算机系统中,处理器通常仅配备单一核心,所有从网卡接收到的以太网数据包都需由该核心处理。随着半导体技术的进步,处理器核心数量逐步增加,随之而来的一个问题是:如何决定由哪一个核心来处理网卡接收的数据包?又该如何将不同的核心分配至相应

全部评论 (0)

还没有任何评论哟~