1、查看网口基本信息

$ ethtool eth0

2、点亮网卡灯

$ ethtool -p eth0 10    # 亮 10 秒

3、查询网口驱动相关信息

$ ethtool -i eth0driver: igbversion: 5.3.0-kfirmware-version: 1.67, 0x80000d38, 18.3.6bus-info: 0000:01:00.0supports-statistics: yessupports-test: yessupports-eeprom-access: yessupports-register-dump: yessupports-priv-flags: no

4、查询网口收发包统计信息

$ ethtool -S eth0    # 查看网口所有统计相关信息
$ ethtool -S eth0 | grep rx_queue | grep packets    # 查看网卡各个队列收包数据rx_queue_0_packets: 117947rx_queue_1_packets: 3050rx_queue_2_packets: 1098rx_queue_3_packets: 1204rx_queue_4_packets: 9679rx_queue_5_packets: 1172rx_queue_6_packets: 7435rx_queue_7_packets: 2403

5、显示网卡 offload 参数的状态

$ ethtool -k eth0Features for eth0:rx-checksumming: on tx-checksumming: on tcp-segmentation-offload: onudp-fragmentation-offload: off [fixed]generic-segmentation-offload: ongeneric-receive-offload: offlarge-receive-offload: off [fixed]... ...ntuple-filters: off [fixed]receive-hashing: on... ...

参数解释如下:

  • rx-checksumming: 接收包校验和
  • tx-checksumming: 发送包校验和
  • tcp-segmentation-offload: 简称为 TSO,利用网卡对 TCP 数据包分片
  • udp-fragmentation-offload: 简称为 UFO,针对 UDP 的
  • generic-segmentation-offload: 简称 GSO,基本思想就是尽可能的推迟数据分片直至发送到网卡驱动之前,检查网卡是否支持分片功能(如 TSO、UFO),如果支持直接发送到网卡,如果不支持就进行分片后再发往网卡。这样大数据包只需走一次协议栈,而不是被分割成几个数据包分别走,这就提高了效率
  • generic-receive-offload: 简称 GRO,基本思想跟 LRO 类似,克服了 LRO 的一些缺点,更通用。后续的驱动都使用 GRO 的接口,而不是 LRO
  • large-receive-offload: 简称 LRO,通过将接收到的多个 TCP 数据聚合成一个大的数据包,然后传递给网络协议栈处理,以减少上层协议栈处理 开销,提高系统接收 TCP 数据包的能力
  • ntuple-filters: ntuple

6、配置网卡 offload 参数

$ ethtool -K eth0 rx-checksum on|off
$ ethtool -K eth0 tx-checksum-ip-generic on|off
$ ethtool -K eth0 tso on|off
$ ethtool -K eth0 ufo on | off
$ ethtool -K eth0 gso on | off
$ ethtool -K eth0 ntuple on | off

7、查看网卡 ntuple 配置规则

$ ethtool -n eth5
24 RX rings available
Total 480 rules
Filter: 100Rule Type: Raw IPv4Src IP addr: 0.0.0.0 mask: 255.255.255.255Dest IP addr: 10.79.229.11 mask: 255.255.0.0TOS: 0x0 mask: 0xffProtocol: 0 mask: 0xffL4 bytes: 0x0 mask: 0xffffffffAction: Direct to queue 11

查看现有 flow-hash 配置

$ ethtool -n eth5 rx-flow-hash tcp4TCP over IPV4 flows use these fields for computing Hash flow key:IP SAIP DA

配置 flow-hash

$ ethtool -N eth5 rx-flow-hash udp4 sd
$ ethtool -N eth5 rx-flow-hash tcp4 sd
$ ethtool -N eth5 rx-flow-hash udp4 sdfn
$ ethtool -N eth5 rx-flow-hash tcp4 sdfn# 选项含义
s   Hash on the IP source address of the rx packet.
d   Hash on the IP destination address of the rx packet.
f   Hash on bytes 0 and 1 of the Layer 4 header of the rx packet.
n   Hash on bytes 2 and 3 of the Layer 4 header of the rx packet.

查看网卡队列数量

通过 -l 选项查看网卡队列数:

$ ethtool -l eth4
Channel parameters for eth4:
Pre-set maximums:
RX:             16
TX:             16
Other:          1
Combined:       16
Current hardware settings:
RX:             0
TX:             0
Other:          1
Combined:       8   # 当前网卡队列数是 8

查看网卡队列绑定信息

查看 CPU 与网卡多队列绑定信息,执行如下脚本即可:

# 注意修改网卡名称eth0
for i in `cat /proc/interrupts | grep eth0 \| awk -F: '{print $1}'`; do echo $i && cat /proc/irq/$i/smp_affinity ; done

新浪使用的驱动

  • igb 系列驱动:千兆网卡。包含:82575, 82576, 82580, I210, I211, I350, I354, DH89xx
  • ixgbe 系列驱动:万兆网卡。包含:82598, 82599, X520, X540, X550
  • i40e 系列驱动:万兆网卡。包含:X710, XL710, X722, XXV710

关于驱动常用的几个命令

  • modprobe:安装网卡驱动
  • modinfo:查看网卡驱动具体信息
  • ethtool -i eth0:查看某个网口的驱动信息
  • lvspci:查看pci信息
  • depmod:加载驱动ko的以来模块
  • cat /proc/interrupt | grep ethx:查看网卡的队列数。

执行以下命令,解决网卡驱动依赖问题

$ depmod -a  2.6.32-642.15.1.sina11.3.1.el6.alpha1.x86_64
$ modinfo igb -k 2.6.32-642.15.1.sina11.3.1.el6.alpha1.x86_64$ depmod -a  # 不加内核版本参数,就只针对当前内核

安装官方igb驱动

  • 官网下载即可
  • 编译驱动:cd src; make && make installl
  • 编译驱动程序依赖:kernel-devel 的rpm包
  • 安装完毕后执行:depmod -amodinfo igb

新驱动可能需要设置开启网卡队列

  • 安装新驱动后,reboot后需要查看网卡队列是否开启 cat /proc/interrupt | grep eth4
  • 如果没有开启队列,需要配置 /etc/modprobe.conf 或 /etc/modprobe.d/modprobe.conf
options igb InterruptThrottleRate=3000,3000,3000,3000 RSS=0,0,0,0 LRO=0,0,0,0 QueuePairs=0,0,0,0
# 具体参数要参考modinfo来设置,RSS=0,0,0,0 分别对应四个网口

千兆网卡出现CPU不均的情况

  • 网卡接收队列包数均匀
  • 网卡发送队列不均匀,基本上都分布在cpu6上
  • 查看中断对应的cpu:cat /proc/irq/71/smp_affinity
  • 驱动是igb千兆,网卡型号:82576
  • 现象:cpu6负载过高,整体cpu负载提高0.8倍

Linux系统下查看网卡相关数据相关推荐

  1. 【linux】Ubuntu 系统下查看显卡相关信息

    Ubuntu 系统下查看显卡相关信息 查看显卡信息 root@ubuntu:/home/ubuntu# lspci |grep -i vga 显示当前 GPU 使用情况 root@ubuntu:/ho ...

  2. linux 怎么查看系统用户,Linux系统下查看用户的常用方法

    使用Linux系统时经常需要查看用户信息,除了cat /etc/passwd文件外,其实还有很多命令可以直接查看系统用户信息,下面总结一些Linux系统下查看用户的常用方法: id命令 功能:打印指定 ...

  3. linux系统下查看cpu功耗,Linux系统下查看CPU信息

    Linux系统下查看CPU信息 查看CPU信息(型号): # cat /proc/cpuinfo| grep name | cut -f2 -d: | uniq -c 8 Intel(R) Xeon( ...

  4. linux系统下查看 显卡 信息

    linux系统下查看 显卡 信息 命令:lspci |grep -i vga 如果是Nvidia显卡 1.基本命令:nvidia-smi nvidia-smi(The Nvidia System Ma ...

  5. Linux系统下查看系统时间和硬件时间

    Linux系统下查看系统时间和硬件时间 1.具体命令使用如下: 查看当前系统时间 [root@littlelawson hbase-1.4.0]# date Mon Jun 18 10:36:45 P ...

  6. Linux系统下查看和修改 系统时间和硬件时间

    Linux系统下查看和修改 系统时间和硬件时间 1.具体命令使用如下: 查看当前系统时间 [root@littlelawson hbase-1.4.0]# date Mon Jun 18 10:36: ...

  7. linux系统查看usb口,Linux运维知识之Linux系统下查看USB设备名及使用USB设备

    本文主要向大家介绍了Linux运维知识之Linux系统下查看USB设备名及使用USB设备,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 1.系统插入USB设备后,从控制台界面有 ...

  8. Ubuntu系统下查看显卡相关信息

    今天抄了<PyTorch深度学习>书上的一个代码,看看识别效果和训练过程,同时想看一下显卡的状态,所以就找了篇博客参考,这里进行记录. Ubuntu系统下查看显卡相关信息 nvidia-s ...

  9. python在windows和linux系统下批量读取grib2数据

    python在windows系统和linux系统读取grib或者grib2数据所用的库不一样,下面分别细说. 1.python在linux系统下批量读取grib或grib2数据 linux系统对pyt ...

  10. Linux系统下MySQL的导出数据语句SELECT … INTO OUTFILE的用法

    文章目录 关于参数 secure_file_priv 按默认参数设定导出表数据到文本文件中 自定义分隔符,将表数据导出到 txt 文件中 自定义分隔符,将表数据导出到 csv 文件中 导出数据时,提示 ...

最新文章

  1. Nginx 路由--Location的使用
  2. σ(゚∀゚ ∬オレの性格だ
  3. C语言编写2048小游戏
  4. jQuery中国各个省份地图分部代码
  5. 前端学习(2468):echart复习电商管理通过路由加载数据
  6. 利用已有的标注文字信息制作fake数据
  7. 韩顺平php视频笔记83-87 防盗链 $_SERVER http协议相关 文件相关
  8. linux巡检 python_LINUX服务器批量巡检的PYTHON脚本
  9. oracle 9i/10g/11g(11.2.0.3)安装包和PATCH下载地址汇总
  10. 深度学习与计算机视觉教程(12) | 目标检测 (两阶段,R-CNN系列)(CV通关指南·完结)
  11. session的钝化和session的活化(序列化和反序列化)
  12. 【暴躁版】Java如何用IO流读取一个文本,按行输出到控制台?
  13. python pdf书籍领取
  14. python批量下载微博贴评论图片
  15. Centos清理内存 内存回收释放及内存使用查看的相关命令
  16. ipad发布会ipad_ipad十周年,从办公室的角度
  17. thinkphp6 循环 视图_ThinkPHP模板里怎么使用 for循环
  18. 三角形已知三边求面积
  19. 如何插入文献及交叉引用
  20. 镜头跑焦测试软件,新买的镜头是不是跑焦了?教你DIY跑焦测试卡

热门文章

  1. 深度解读:2021 中国低代码平台发展现状
  2. 【读书笔记】金字塔原理-呈现金字塔
  3. php libpng 不兼容,Python matplotlib和libpng不兼容issu
  4. iOS实现一个简单的视频播放器
  5. 集成电路--封装种类
  6. 机器学习基石-林轩田-第一周笔记
  7. RF无线射频电路设计干货分享
  8. Axure8.0 注册码
  9. 减少 JPG 文件大小
  10. SD卡无法格式化怎么办的解决方法