Linux网络协议栈 / 多队列网卡原理

本文介绍了在Linux环境下,针对LVS故障的解决方案,即升级内核并使用支持MSI-X的多队列网卡。通过这种方式,LVS服务器的性能得到显著提升,处理能力和流量承载力大幅增强。同时,详细阐述了多队列网卡在网络协议栈数据流程中的作用,以及NAPI如何减少中断次数,提高网络效率。
摘要由CSDN通过智能技术生成

有疑问或深入讨论可加qq: 2542956244


1. LVS故障: 

       背景: 近日因公司大促, mysql从服务器前端共享的一台LVS因流量跑到2Gps 而出现 LVS丢包, Client端代码不停抛出mysql connect failed异常. 

        故障特征:大流量时为LVS的CPU其中一个core使用率100%, 其他23个core使用率小于10% ; 明显地 

        根本原因: LVS使用Linux内核为2.6.18, kernel处理入站数据包时全部交给一个核心处理;  

        解决方法: 升级OS为kernel 2.6.32以上版本, 使用支持MSI-X网卡(现市面大部分机型如Dell R730、HP DL580都支持), LVS软件调优

        优化效果: top的si%(软中断)平均分布到所有核心, 单机承载力上升400%, new_connection处理能力从3w上升到20w, 流量承载力从700M上升到1500M. 




2. 网络协议栈数据流程(M

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值