万兆网卡实际吞吐量_案例探索 | 千兆/万兆网卡每秒转发包数处理能力上限到底有多大?...

“侦破”网卡传输能力的“个”案

作者:李烨楠

一个平静的下午,在某监控大厅,应急召集令发出,一时间应急电话、汇报、询问声音响成一片。这是怎么了?原来某重要+系统应用交易严重超时,业务产生大量积压,无法顺利进行。

一、问题到底出在哪里?

系统架构简单明了:后台为Oracle RAC DB数据库,前台为12台AP,AP连接到DB做业务。而业务处理响应缓慢的情况发生在所有的AP上,因此焦点集中到DB服务器、网络、存储等共用的资源及设备上。

经过各方的共同排查,存储正常、数据库正常,却发现DB与AP的网络通信存在问题,ping延时严重,AP与DB、DB与DB之间的ping延时达到十几毫秒并且一直持续(正常时的ping延时只有0.3毫秒左右)。 于是,网络与系统开始协同检查抓包,发现网络链路上未见异常,十几毫秒的延时都消耗在DB主机的响应时间上,系统上可见所有资源均正常,网卡流量远未达到瓶颈,只有网卡收发包数一直较大。

二、抽丝剥茧的分析,提出解决方案

到底是什么具体问题呢?让我们先来看看问题主机的环境:Power780物理机,生产、带管、心跳网卡均为etherchannel绑定的网卡,使用的是两块千兆网卡,由于为主备模式,实际只有一块网卡处于工作状态。

根据之前我们在PowerVM虚拟化环境应急的经验,怀疑是单块千兆网卡转发包数的处理能力达到了瓶颈。通过AIX的topas、nmon等工具都可以很方便的监控每秒网卡的接收及发送数据包数,查询结果如下:

128428714_1_20180327042724691

其中的I-pkts和O-pkts即是。一提到网卡,我们通常第一想到的就是带宽处理能力,像千兆、万兆、全双工等等指标更多展示的就是带宽有多大,但很少有人关心网卡的包处理能力上限在哪儿,到底是每秒1万、10万还是100万。为什么呢?因为极少有人会遇到包数转发处理能力的瓶颈,这种情况只出现在业务压力非常大、平均网络包size非常小的系统上,否则通常包数还没达到瓶颈呢,带宽已经满了,但是这种系统恰恰被我们碰上了!而且不止一次!

发生问题的DB主机,当时单块千兆网卡的收发包总数达到了15万左右,并且现象持续存在,一直到应用进行了流控之后,ping延时才得到了缓解,业务才逐渐恢复,这会是问题的症结么?

我们据此提出了紧急的解决

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在openEuler 22.03中,可以通过以下步骤配置双万兆网卡bond4: 1. 确认服务器上已经安装好了bonding模块,如果没有安装,可以执行以下命令进行安装: ``` sudo dnf install -y bonding ``` 2. 打开网络配置文件,编辑bond4接口的配置文件: ``` sudo vi /etc/sysconfig/network-scripts/ifcfg-bond4 ``` 3. 在配置文件中添加以下内容: ``` TYPE=Bond NAME=bond4 BONDING_MASTER=yes BOOTPROTO=none IPADDR=<IP地址> NETMASK=<子网掩码> GATEWAY=<网关地址> DNS1=<DNS服务器1> DNS2=<DNS服务器2> BONDING_OPTS="mode=4 miimon=100" ``` 其中,`<IP地址>`、`<子网掩码>`、`<网关地址>`、`<DNS服务器1>`和`<DNS服务器2>`需要根据实际情况进行修改。 4. 保存并关闭文件,然后打开eth3和eth4接口的配置文件: ``` sudo vi /etc/sysconfig/network-scripts/ifcfg-eth3 sudo vi /etc/sysconfig/network-scripts/ifcfg-eth4 ``` 5. 在每个配置文件中添加以下内容: ``` TYPE=Ethernet NAME=<设备名称> DEVICE=<设备名称> ONBOOT=yes MASTER=bond4 SLAVE=yes ``` 其中,`<设备名称>`需要根据实际情况进行修改。 6. 保存并关闭文件,然后重启网络服务: ``` sudo systemctl restart network ``` 7. 验证bond4接口是否正常工作: ``` sudo cat /proc/net/bonding/bond4 ``` 如果输出类似以下内容,则表示bond4接口已经正常工作: ``` Ethernet Channel Bonding Driver: v3.10.0 (June 2, 2014) Bonding Mode: IEEE 802.3ad Dynamic link aggregation Transmit Hash Policy: layer2 (0) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 802.3ad info LACP rate: slow Active Aggregator Info: Aggregator ID: 1 Number of ports: 2 Actor Key: 17 Partner Key: 32768 Partner Mac Address: 00:00:00:00:00:00 Slave Interface: eth3 MII Status: up Speed: 10000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:a6:f6:0a Aggregator ID: 1 Slave queue ID: 0 Slave Interface: eth4 MII Status: up Speed: 10000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:a6:f6:14 Aggregator ID: 1 Slave queue ID: 0 ``` 可以看到,bond4接口已经绑定了eth3和eth4接口,并且工作正常。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值