intel网卡安装奇遇记

最近项目上碰到一个有意思的事,客户要求实现roce组网,但是云服务商提供的网卡是intel800系列,驱动没有适配国产OS。

官网产品主页

intel官方驱动只支持红帽和suse

从BMC查询的网卡型号为NIC-E810CQDA2G2P5-E810,在intel官网上查询(第二次查询才找到这个全量包),发现其对os的支持范围非常窄(红帽、SUSE、ubuntu等),没有对国产麒麟、欧拉的支持。

第一次查询E810网卡驱动时,base driver,rdma driver都是单独的页面

真心话,intel的驱动查询网站着实不如英伟达的

驱动和操作系统适配


从上表可以看出,810系列网卡,其驱动实际分为两种,base driver和rdma driver,其中base driver又分为物理机和虚拟机两种驱动。

安装驱动

intel的驱动安装相比英伟达网卡,要复杂一些。首先,要安装网卡的基本驱动,启动网卡并设置ip地址。然后再安装rdma驱动,并安装rdma库(从github下载)。最后,为了最大化rdma的性能,要打开流量控制标识(PFC或LFC),同时对应交换机的端口也要设置PFC。

RDMA协议里,只有rocev2从pfc收益最多,原因也很简单,roce是over udp的,而udp可以说是原本就不靠谱的以太网协议里,更不靠谱的一种协议,如果没有流量控制,当出现丢包时,整个网络传输就基本不可用了。

供应商

服务器硬件供应商提供了一个网卡驱动“nic-e810-kylinlinuxv10sp2.rpm,吊诡的是,他们找不到 下载链接。

驱动下载

除了github外,20年前最火爆的开源项目网站是sourceforge.
目前sourceforge活得有滋有味,因为不可言说的原因,在国内可以畅通无阻访问,这点完胜github。

总结,以后配套设备驱动下载的顺序依次为

  • 原厂商官网,如intel,英伟达
  • 集成商或经销商的官网,一般可以在原厂商官网上找到,如intel
  • 开源网站