Intel X710的RSS哈希函数支持微软的Toeplitz算法以及XOR算法。并且支持对称和非对称操作。与82599不同,X710的Toeplitz算法使用416位(52字节)的秘钥,82599网卡使用320位(40字节)的秘钥。

I40E驱动定义的秘钥值结构如下:

struct i40e_aqc_get_set_rss_key_data {u8 standard_rss_key[0x28];u8 extended_hash_key[0xc];
};

VPP默认使用的秘钥,以下可见:

vpp# show hardware-interfacesName                Idx   Link  Hardware
m1/1                               1     up   m1/1Link speed: 10 GbpsIntel X710/XL710 Familyrss key length:    52rss key:           0x44 0x39 0x79 0x6b 0xb5 0x4c 0x50 0x23 0xb6 0x750xea 0x5b 0x12 0x4f 0x9f 0x30 0xb8 0xa2 0xc0 0x3d0xdf 0xdc 0x4d 0x02 0xa0 0x8c 0x9b 0x33 0x4a 0xf60x4a 0x4c 0x05 0xc6 0xfa 0x34 0x39 0x58 0xd8 0x550x7d 0x99 0x58 0x3a 0xe1 0x38 0xc9 0x2e 0x81 0x150x03 0x66

在DPDK中,函数i40e_hash_parse_key默认设置此hash秘钥值rss_key_default。

static void
i40e_hash_parse_key(const struct rte_flow_action_rss *rss_act,struct i40e_rte_flow_rss_conf *rss_conf)
{const uint8_t *key = rss_act->key;if (!key || rss_act->key_len != sizeof(rss_conf->key)) {const uint32_t rss_key_default[] = {0x6b793944,0x23504cb5, 0x5bea75b6, 0x309f4f12, 0x3dc0a2b8,0x024ddcdf, 0x339b8ca0, 0x4c4af64a, 0x34fac605,0x55d85839, 0x3a58997d, 0x2ec938e1, 0x66031581};if (rss_act->key_len != sizeof(rss_conf->key))PMD_DRV_LOG(WARNING,"RSS key length invalid, must be %u bytes, now set key to default",(uint32_t)sizeof(rss_conf->key));memcpy(rss_conf->key, rss_key_default, sizeof(rss_conf->key));} else {memcpy(rss_conf->key, key, sizeof(rss_conf->key));}rss_conf->conf.key = rss_conf->key;rss_conf->conf.key_len = sizeof(rss_conf->key);

启用对称哈希,可以使用如下的秘钥值。而不用启用X710的对称设置。

uint8_t symmetric_rss_hash_key[52] = {0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a,0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a,0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a,0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a,0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a,0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a, 0x6d, 0x5a,0x6d, 0x5a, 0x6d, 0x5a
};

X710网卡RSS对称哈希相关推荐

  1. linux网卡rss支持,一种网卡RSS配置装置及方法与流程

    本发明涉及网卡配置领域,具体涉及一种网卡RSS配置装置及方法. 背景技术: 多队列网卡是一种技术,最初是用来解决网络IO QoS(quality of service)问题的,后来随着网络IO的带宽的 ...

  2. Linux网卡固件,CentOS下X710网卡升级驱动和固件脚本 | 聂扬帆博客

    对于CentOS7.1和7.5版本,安装X710网卡的驱动和固件版本太低,使用会有问题.这边整理了一份脚本自动检测安装,脚本会判断是否是DELL的几款机型,因为DELL机型的驱动和固件不能使用inte ...

  3. linux网卡rss支持,ETHTOOL设置网卡接收哈希(RSS)

    ethtool命令设置接收端哈希功能,按照哈希结果将数据流分发到网卡的不同接收队列中.例如以下命令,指定ipv4的tcp数据流中参与哈希的字段(sdfn): / # ethtool --config- ...

  4. linux 网卡rss hash,使用RSS提升DPDK应用的性能

    本文描述了RSS以及在DPDK中如何配置RSS达到性能提升和统一分发. DPDK 1.8.0 什么是RSS RSS(Receive Side Scaling)是一种能够在多处理器系统下使接收报文在多个 ...

  5. linux对称哈希 路由,基于 IP 哈希的路由

    虚拟交换机可根据每个数据包的源和目标 IP 地址选择虚拟机的上行链路. 要计算虚拟机的上行链路,虚拟交换机会获取数据包中源和目标 IP 地址的最后一个八位字节并对其执行 XOR 运算,然后根据网卡组中 ...

  6. X710网卡接收丢包

    通过ethtool命令看到是rx_dropped一项有数值. / # ethtool -S eth0 | more NIC statistics:rx_packets: 88037562tx_pack ...

  7. 网卡多队列:RPS、RFS、RSS、Flow Director(DPDK支持)

    Table of Contents 多队列简介 RPS介绍(Receive Packet Steering) RFS介绍(Receive flow steering) RSS介绍(receive si ...

  8. DPDK笔记 RSS(receive side scaling)网卡分流机制

    DPDK笔记 RSS(receive side scaling)网卡分流机制 RToax 2020年9月 DPDK 网卡RSS(receive side scaling)简介 DPDK-RSS负载均衡 ...

  9. dpdk-18.11网卡多队列RSS设置

    背景 最近在做将基于dpdk-16.11.1开发的程序,转移到基于dpdk-18.11版本下开发.遇到了网卡RSS配置的问题,在这里纪录一下. 问题 dpdk-16.11.1 在dpdk-16.11. ...

最新文章

  1. 【转】二层交换机之间的跨网段访问
  2. Install zabbix 2.2 + PostgreSQL + nginx + php on CentOS 6.x x64
  3. java的函数传值_java 函数形参传值和传引用的区别[转]
  4. 【组合数学】组合数学简介 ( 组合思想 3 : 上下界逼近 | 上下界逼近示例 Remsey 数 )
  5. HDOJ HDU 1106 排序 ACM 1106 IN HDU
  6. mongodb转实体对像_MongoDB 计划从“Data Sprawl”中逃脱
  7. JDK 11 马上就要来了!JDK 12 还会远吗?
  8. Git学习笔记:Git简介
  9. Django 模板中使用css, javascript
  10. 如何查询编程语言或者网站里一些特殊符号的unicode编码
  11. 配置本地及网络yum源(详细步骤)
  12. php集成环境还需要mysql吗_是选择php集成环境好还是分开安装的原生版好
  13. bios开启虚拟化技术
  14. 《人工智能》机器学习 - 第1章 机器学习简介
  15. 云计算中网络基础知识(升级版)
  16. pacman 查询_ArchLinux的包管理系统: pacman
  17. Java笔记16 网络编程
  18. 网友自曝:编程从入门到放弃!方法比选择更重要!
  19. Android工程师面试准备知识点
  20. OpenCV图像处理(十一)---图像梯度

热门文章

  1. 试水技术论坛:泥巴乐园技术社区bbs.webgameexpress.com
  2. BFS-BZOJ-1615-[Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
  3. 国企领导与山大王的区别 (转载黑色传奇)
  4. 快速理解Linux系统中用户和组的概念及如何查看存储用户与组信息的文件/etc/passwd,/etc/shadow,/etc/group及其子段意思
  5. npm install xxx 出现Unexpected token < in
  6. 尝试从数学的角度分析三国杀国战的胜率
  7. ping指令的格式及参数
  8. 火车头采集器采集图片文章详细 教程
  9. 关于Google上架短信与通话记录权限的一深坑
  10. 英语berylite绿宝石BERYLITE绿柱石