(dpdk f-stack) -网卡多队列
Posted ygmdream
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(dpdk f-stack) -网卡多队列相关的知识,希望对你有一定的参考价值。
网卡是如何将网络中的报文分发到不同的队列呢?
常用的方法有微软提出的RSS与英特尔提出的Flow Director技术,前者是根据哈希值希望均匀地将包分发到多个队列中。后者是基于查找的精确匹配,将包分发到指定的队列中。
1、RSS(Receive-Side Scaling,接收方扩展)
RSS就是根据如下“关键字”通过哈希函数计算出哈希值,再由哈希值对网卡队列数求余确定数据包放到哪个队列。
关键字是如何确定的呢?
哈希函数一般选取微软托普利兹算法(Microsoft Toeplitz Based Hash)或者对称哈希。
2、Flow Director技术是Intel公司提出的根据包的字段精确匹配,将其分配到某个特定队列的技术:网卡上存储了一个Flow Director的表,表的大小受硬件资源限制,它记录了需要匹配字段的关键字及匹配后的动作;
驱动负责操作这张表,包括初始化、增加表项、删除表项;网卡从线上收到数据包后根据关键字查Flow Director的这张表,匹配后按照表
以上是关于(dpdk f-stack) -网卡多队列的主要内容,如果未能解决你的问题,请参考以下文章