视频讲解地址:
前言
网吧人一多就卡,第一反应往往是:
- 宽带不够了
- 交换机出问题
- 游戏服务器抽风
前几天有个网吧,就是这种表现。
人多的时候特别卡,而且卡的不是某一台,是整店一起卡。
最后查下来,凶手是一个聊天软件。
问题描述
现场时间大概在 晚上 10 点多到 12 点,最明显的时候是 晚上 11 点左右。
打开交换机 / 出口看流量,能直接看到:
- 外网这一条的 上传利用率顶在 99% 到 100%
- 不是瞬间冲一下,是一直顶在那里
- 下载并没有同样打满

上传打满之后,游戏、网页、语音会一起变差。
所以顾客感受就是:人多的时候,整个网吧特别卡。
远程排查情况
情况比较急,我第一步先做了限速,避免继续被单台机器拖死。
先开固定流控,让电脑平均一下
在高恪后台进入:
流控多线 → 固定流控
把固定流控启用,让客户机先按普通策略平分带宽。

这一步的目的很简单:
先别让某一台把上传独占掉,让大家都普通一下。
限了,但是没用
固定限速启用之后,上传还是下不来。
再看规则才发现原因:
- 内网 IP 地址组里,只写了几个地址
- 真正在传数据的机器,不在这个范围里
- 等于限速规则开着,限到的不是肇事机器

当时也签过固定 IP,也做过固定限速。
但上行流控本身调得太松,这一步压不住。
进一步测试
固定流控没压住之后,我在 高恪技术群 里问了一下。
群里同事马上远程进来,先按线路把流量拆开看,宽带和专线分开承载。
远程看单机连接之后,原因就清楚了。
上传最高的应用不是游戏,是 KOOK。

KOOK 平时的表现是:
- 只有一两个人在用
- 当普通聊天软件,基本没感觉
这次不一样。那天晚上用它聊天的人突然多了,效果和以前用 YY 语音差不多:
- 同时开了 四五台,到五六台
- 每一台上行都能到 1.5MB/s
- 几台加在一起,把整个网吧的上传干满

下行看起来并不夸张,问题全在上行。
游戏要的那点上传,被聊天软件先拿走了。
解决方案 / 建议 / 方法
高恪这边重新改过之后,整店就恢复了。
群里给的原话也很直接:之前调得太松了,已经修改。
这次能落地的做法是:
- 人多全店卡时,先看 外网上传利用率,不要只看下载
- 紧急时可以先开 固定流控,让客户机带宽平均
- 固定流控没效果,马上核对 内网 IP 地址组
- 只写了几个地址,等于没限到肇事机器
- 再看单机连接,按 应用 排序,找上传最高的那一项
- 确认是 KOOK 之后:
- 把 KOOK 从游戏分组里踢出去
- 或者 分流到别的线路
- 不要让它继续占游戏主线
- 上行流控不要调得太松。松了之后,语音软件一多,主线会直接被打满
结论 / 总结
这次全店卡顿的直接原因:
聊天软件 KOOK 在抢上传。
平时一两个人用没问题。
那天晚上四五台到五六台一起开,每台上行大约 1.5MB/s,外网上传利用率顶在 99% 到 100%,整个网吧就卡了。
前面固定流控没生效,是因为内网地址只覆盖了几个 IP,限速没限到真正在传的机器。
上行策略之前也调得太松。
把 KOOK 移出游戏分组,或分流到别的线路,并把上行流控收紧之后,问题就解决了。
给用户的建议 / 备注
网吧如果再遇到「人一多,全店一起卡」,可以按这个顺序看:
- 先看外网 上传 有没有打满,不要只盯下载
- 上传顶在 99%、100%,优先查单机应用,不要先怪游戏服务器
- 固定流控开了却没用,先核对地址组是不是只写了几个 IP
- 看到 KOOK、YY 这类语音聊天:
- 从游戏分组里拿掉
- 或者分流到别的线
- 上行流控宁可比游戏策略更严一点
主线一被语音打满,全店都会卡
聊天软件看着不大,上传真的能占得很满。
作者:不离不弃
网站名称:华夏网盟
