---
title: 网卡调优
description: "1. 调整rx_buff。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200/bds/kunpengbdsml_05_0008.html
sourcePath: /source/zh/kunpengboostkithistory/2200/bds/kunpengbdsml_05_0008.html
indexId: c1670445245bc5361b6659fc613994327cbf328bf85df566dbf96b819fc5c59c68
---
# 网卡调优

#### 网卡参数调优

1. 调整rx_buff。
1822网卡默认的rx_buff配置为2KB，在聚合64KB报文的时候，需要多片不连续的内存，使用率较低；该参数可以配置为2/4/8/16KB，修改后可以减少不连续的内存，提高内存使用率。修改与查看方式如下。

  a. 查看rx_buff参数。

```
cat /sys/bus/pci/drivers/hinic/module/parameters/rx_buff
```


  b. 修改rx_buff配置参数为8KB。

```
add this to /etc/modprobe.d/hinic.conf
options hinic rx_buff=8
rmmod hinic
modprobe hinic
```


  c. 查看修改结果。

```
cat /sys/bus/pci/drivers/hinic/module/parameters/rx_buff
```


2. 修改Ring Buffer大小。
  1822网卡Ring Buffer最大支持4096，默认配置为1024，可以增大buffer大小用于提高网卡Ring大小。修改方式如下。

```
ethtool -G enp4s0 rx 4096 tx 4096
```


3. 开启LRO。
  1822网卡与82599网卡相同，支持LRO（Large Receive Offload），最好打开这个选项，并合理配置1822 LRO参数。修改方式如下。

```
ethtool -K enp4s0 lro on
hinicadm lro -i hinic0 -t <TIME>
#表示最大TIME微秒后聚合发出，默认16us
hinicadm lro -i hinic0 -n <NUM>
#表示最大收到NUM包后聚合发出，默认4个，此处调优修改为8个包
```


#### 网卡中断绑核

相比使用内核的irqbalance使网卡中断在所有核上进行调度，使用手动绑核将中断固定住能有效提高业务网络收发包的能力。

网卡软中断绑核操作方法：

1. 关闭irqbalance服务。

```
systemctl stop irqbalance
systemctl disable irqbalance
```


2. 查询网卡归属于哪个NUMA节点。

```
cat /sys/class/net/<网口名>/device/numa_node
```


3. 查询该NUMA节点对应哪些CPU core。

```
lscpu
```


4. 查询网卡中断号。

```
cat /proc/interrupts | grep <网口名> | awk -F ':' '{print $1}'
```


5. 将软中断绑定到该NUMA节点对应的core上。

```
echo <core编号> > /proc/irq/<中断号>/smp_affinity_list
```
