注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

早衰男的巢

大音希声 道隐无名

 
 
 

日志

 
 

DD-WRT: ksoftirqd_CPU0吃CPU100% wifi断流终极处理  

2012-06-05 13:37:13|  分类: others note. |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

被折腾得没有办法了,出下策

DD官方论坛指这个是 V24 RC版的一个缺陷,可以即由升级固件解决

但我不想重新配置路由,太折腾。

所以后来用一种变通的方式实现

起初的版本

1.通过telnet连接路由

2.top

监控

3.一旦发现ksoftirqd开始吃cpu

4.ifconfig eth1 down

禁用无线网卡

5.ifconfig eth1 up

启用网卡,等于做了一次wifi的复位

这样不必pppoe重新拨号,只是把wifi瞬间断一下,注意不要操作错了 eth0 这是 LAN的。而且只能在接网线的主机上操作,不然down了之后telnet也断了就悲剧了。

进阶版本

启用dd-wrt 的cron

加入以下的定时执行指令

1 * * * * ifconfig eth1 down

2 * * * * ifconfig eth1 up

保存,应用

这样路由器就每个小时的第一分钟(例如13:01)禁用wifi,然后在1分钟后 重启wifi ,缺点是停用的间隙比较长,因为cron的最小间隔单位是1分钟…

进阶改良版

后来发现表达式是可以管道命令的..那么cron脚本就改成一条

30 * * * * ifconfig eth1 down && ifconfig eth1 up

代表每个小时的半点(如14:30) 执行无线网卡禁用,禁用执行成功后重新启用.. 对于wifi客户端来说可能只是丢一个包的瞬间,甚至不可能察觉到无线网络的短线,而路由器上的堵塞也重置了。

以上脚本也就是说如果发生了堵塞,至少在一个小时内会得到重置。

晚上再改良一下,如果有办法监控到ksoftirqd 的cpu占用或者取到当前的系统负载做逻辑判断就更好了..

  评论这张
 
阅读(1712)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018