V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
KyonLi
V2EX  ›  问与答

路由器长时间开机网速会变慢?

  •  
  •   KyonLi · 2014-08-15 17:08:00 +08:00 via Android · 23565 次点击
    这是一个创建于 3513 天前的主题,其中的信息可能已经有所发展或是发生改变。
    光猫+无线路由器,开机1天以上有时网速就会变得非常慢,重启猫和路由后立即满血复活。
    为此想请教各位v友,是因为换了个IP才恢复正常还是什么其他原因?如果是IP,像学校宿舍那种固定IP是不是变慢后就只能忍受?
    45 条回复    2014-10-01 22:45:07 +08:00
    Jarvanh
        1
    Jarvanh  
       2014-08-15 17:10:44 +08:00
    正常路由肯定不会
    wy315700
        2
    wy315700  
       2014-08-15 17:11:24 +08:00
    你让那种好几年不重启的路由器怎么活
    seki
        3
    seki  
       2014-08-15 17:11:39 +08:00
    程序没写好,内存泄漏了?

    毕竟刷 openwrt 的机器连续开机一周甚至一个月是没啥大问题的(不蛋疼的话
    KyonLi
        4
    KyonLi  
    OP
       2014-08-15 17:15:18 +08:00 via Android
    @wy315700 所以搞得我很纠结,一感觉变慢就要重启,晚上躺在床上看视频卡了还得爬起来摸路由…
    wy315700
        5
    wy315700  
       2014-08-15 17:16:46 +08:00
    @KyonLi 啥路由啊 报一下型号看看,不是小米路由吧
    wy315700
        6
    wy315700  
       2014-08-15 17:17:02 +08:00
    @seki 一年都没问题哒
    KyonLi
        7
    KyonLi  
    OP
       2014-08-15 17:18:00 +08:00 via Android
    @seki @Jarvanh 水星最普通的路由 不能刷,一个150M一个300M的都有这样的问题
    KyonLi
        8
    KyonLi  
    OP
       2014-08-15 17:20:03 +08:00 via Android
    @wy315700 水星MW310R和MW150R
    wy315700
        9
    wy315700  
       2014-08-15 17:21:35 +08:00
    @KyonLi 更新固件看看?
    ooxxcc
        10
    ooxxcc  
       2014-08-15 17:22:07 +08:00   ❤️ 1
    置换法
    seki
        11
    seki  
       2014-08-15 17:22:42 +08:00
    @wy315700 虽然知道放几年也没事,但是心理上还是接受不了……网速一有问题就首先想着重启
    ooxxcc
        12
    ooxxcc  
       2014-08-15 17:22:45 +08:00
    总之先接个路由试试,然后借个光猫换上……看看哪里有问题
    wy315700
        13
    wy315700  
       2014-08-15 17:23:44 +08:00
    @seki 我这里TT路由,最长5个月没重启,上次重启还是因为停电。。。
    xenme
        14
    xenme  
       2014-08-15 17:24:36 +08:00
    一般是带机量的问题。
    家里的路由器带个5-10个感觉就有点吃力。
    用过 TP 水星 D-Link Cisco 家用的。超过10个很不稳定。
    快点一个星期要重启一次,长点一个月左右要重启一次。
    独立路由+AP 的模式或者路由只当 AP 用的话比较稳定。
    seki
        15
    seki  
       2014-08-15 17:26:18 +08:00
    @KyonLi 水星是 TP-LINK 的马甲。用过另外一个马甲 FAST 的路由,当初是五六年前家里买的用得好好的所以才买的,但是发现现在的低端路由都太省钱了,Flash 和 RAM 都能省则省,程序也写得不好,时间长了或者通讯量大了卡死也是正常的
    KyonLi
        16
    KyonLi  
    OP
       2014-08-15 17:33:32 +08:00 via Android
    @wy315700
    版本控,一直保持最新固件

    @ooxxcc
    有机会找个猫换上试试

    @xenme
    算了一下接入7个设备,活跃的就3个,感觉应该不会太吃力
    tobyzw
        17
    tobyzw  
       2014-08-15 17:33:33 +08:00
    水星的地段路由是这样的
    如果多台设备接入,且传输数据量比较大,可能连WIFI都连不上
    长时间不重启也会出现网速变慢的情况
    拔了排插后第二天再插上,可能还需要拔路由的电源线再接上才能正常联网,不然本地连接都是感叹号
    momou
        18
    momou  
       2014-08-15 17:33:49 +08:00
    除了停电路由就没重启过。。。
    treo
        19
    treo  
       2014-08-15 17:47:03 +08:00   ❤️ 7
    换个RAM大于32MB的路由吧,最好能刷openwrt。也就50~100块。

    以下为引用:


    张先生是TPLink无线路由器的前研发负责人,他下面的回答会让大家清楚这些现象背后的原因。 我们具体的疑问如下:
    Q1. 为啥长时间使用低端路由后,路由器上网速度会变慢,为啥建议经常重启低端路由器?
    Q2,为啥有的路由器无线上不转发ip组播但有线会转发
    Q3,有的路由器完全不转发ip组播包,导致基于IP组播的米联有时候不能工作
    Q4,多线程同时启动下载有时候会把无线路由器打死,必须重启才能恢复


    答:问题1与问题4原因相同。这个问题与路由器的演进历程有关,当前路由器的市场,以TP为首挑国内品牌挑了价格战,在几年时间内,让进口路由器市场份额缩到30%以内,如D-LINK,Netgear,Linksys,甚至有些国外品牌已经退出了中国市场。原因就是国人买东西只看价格不看品质。而这些国内品牌看中了国人的这种价值观,于是对于路由器一再的降低成本,原则是先从无技术难度的降,比如一些替代料,用上后性能略有影响,但价格便宜很多;然后再从有技术难度上的降,比如DDR。你们现在看到的这个问题,就与DDR有关,现在跑在路由器上的操作系统最多的是两个:vxWorks与Linux,Linux的体积比较大,很难裁剪,但有些厂商为了低成本,还是会去裁剪;vxWorks操作系统容易裁剪,就成为一些厂家的首选(如TP),所以,用了vxWorks的操作系统后,厂商对操作系统进行了裁剪,DDR的大小可以用的很小,比如8MB(64Mbit),成本相对于16MB的可以省2-3元人民币;而vxWorks的操作系统最大的特点是内存地址空间不分内核态和用户态,所有的代码运行在同一地址空间,当进行系统开发时,如果编程人员的水平不足,很容易出现用户态的程序直接访问内核态的数据(如网络协议),这种情况下很容易出现冲突和异常,同时,又因为网络数据包在一个余量很小(比如剩余1-2MB)的DDR中,长时间跑大的网络流量,很容易出现缓冲数据包,重传数据包,PS数据包(Power Save)等等,以至于让可本来就很小余量的DDR,变的更小,从而产生了分配时失败,需要等待,再分配的恶性循环,因此,系统会变慢;如果分配时失败没有做处理,那么会死机。这就是问题1与问题4的两个不同结果;问题1是会变慢,问题4会死机。
    对于采用Linux操作系统作为路由器OS的厂商,如果也去做Cost down,用小内存跑系统,更容易出现不稳定的问题,因为vxWorks操作系统可以有内存池的概念,可以预分配,OOM的概率降低很多;而linux操作系统在进行网络数据包的处理时,很难做内存池,因为它区分用户态与内核态,数据包收到时存在内核态,内容到用户态处理完才可以释放,因此,数据包的传递有malloc与free的操作,并且是大量的。在这个过程中,很容易出现异步,即上层还未处理完数据包,下层又来大量的数据,导致系统运作失控,很容易变慢或者死机。之所以变慢是因为当free状态的memory不足时,操作系统会从cached中要回memory,如果这个操作还不能满足需求,则会随机的kill优先级低的进程,来保证系统不死机,但,这个就是饮鸩止渴,最后,系统还是会死机,因为谁也不知道它会kill哪个进程,我们看到过很多这种案例。最好的作法就是不让它oom去触发kill进程的操作,即留足够的内存余量。


    问题2与问题3原因相同,这个问题有两种可能。你们的组播数据肯定是从Internet上的Server到路由器,然后路由器到小米盒子,这样的通路。在这样的链路建立的过程是小米盒子发起组播请求,给Internet上的server,在经过路由器WAN口时,由IGMP Proxy协议把局域网地址转成Internet地址,server收到后把组播响应发回路由器WAN口,由IGMP Proxy将组播响应传回内网,这样,就实现了组播可以NAT的效果。接下来,已此原理看你们看到的问题:问题2,有的路由器无线不行有线行,说明这个路由器是支持IGMP Proxy的,只不过实现的时候无线没有考虑,只实现了有线;问题3,有的路由器完全不行,原因是这个路由器不支持IGMP Proxy,所以,不能进行组播NAT。你们可以做个实验,对于那些不能转发IP组播包的路由器,你们把server路由器接在同一个交换机下,看看路由器是否能够转发组播包就知道答案了。
    对于问题2的还有一种可能是,它的无线也可以转组播,只不过无线驱动里面没有去做组播转单播的设计,无线驱动对于组播包的传输,是以1Mbps或者11Mbps的速率在发送,这个速率下很容易出现收不到的情况。一般的作法是当组播包到无线驱动后,会将他转成单播包,以11N的速率发出来。所以,对于问题2,你们可以抓包,看看是否从路由器的无线中,有发出组播包,就知道是驱动没有做IGMP Proxy的处理还是没有做组播转单播的处理。

    via 张先生,TPlink路由器 研发负责人。
    jiangpeng
        20
    jiangpeng  
       2014-08-15 17:54:47 +08:00
    光猫很渣
    xenme
        21
    xenme  
       2014-08-15 17:56:52 +08:00
    换个好点的无线路由器就好了。
    不是硬件配置低或者选料差就是固件烂。
    KyonLi
        22
    KyonLi  
    OP
       2014-08-15 18:00:01 +08:00 via Android
    @treo 有这么便宜?上个月150买了个tplink wr703n,后来因为接口少、ss跑不起来速度出掉了
    KyonLi
        23
    KyonLi  
    OP
       2014-08-15 18:01:54 +08:00 via Android
    @jiangpeng 光猫是华为HG8010C,不知道是什么水平
    Ellison
        24
    Ellison  
       2014-08-15 18:20:41 +08:00
    滚去看了下,继上次重启之后,已经2个月了...
    不过光猫时常会抽风...
    aliuwr
        25
    aliuwr  
       2014-08-15 19:44:15 +08:00
    这种路由低端了点,上网需求较高的话还是买个好些的路由。
    我以前用的100块左右的 MW300R,路由器2天死一次。
    后来花 300 买了个 Netgear 3700,再没死机过。
    seki
        26
    seki  
       2014-08-15 19:48:10 +08:00
    @KyonLi 淘宝上的二手路由或者魔改路由都可以的

    魔改的比如华为 HG522,还有 TL 的 WR841N

    价格都在百元以下

    我就用的 WR841N v7
    ytzong
        27
    ytzong  
       2014-08-15 20:03:58 +08:00
    如果能设置定时重启的话,每天凌晨自己重启一下
    treo
        28
    treo  
       2014-08-15 20:19:39 +08:00
    @KyonLi wr703n卖150?你买的是改装的吧,没必要,原装的4M/32M已经足够了,改大flash还不如插个废旧小容量U盘。
    703的ar9331 cpu性能也算不错的了。不过现在买703n性价比太低了,mt7620/16M/64M的配置也就99,比如如意云。
    ouqihang
        29
    ouqihang  
       2014-08-15 20:57:37 +08:00
    @treo 703n的NAT可以去到8MB/s ,校园网挂客户端加电脑端P2P,主要受制于无线150M又无额外网口,不然可以更快 (芯片好烫),网线直插电脑是超10M的
    其实32M刷op 不搞太多东西真心足够了
    KyonLi
        30
    KyonLi  
    OP
       2014-08-15 21:01:38 +08:00 via Android
    @treo 入了二手网件WNDR3800,希望能给力
    snip
        31
    snip  
       2014-08-15 22:19:15 +08:00
    前几天刚买了磊科的q3,刷236w固件,稳定运行7天,流量120g
    zzColin
        32
    zzColin  
       2014-08-16 00:12:09 +08:00
    @treo 同是刷不了 OpenWrt 的 TP 低端路由器,被前房客遗忘的那台 WR745N 丢包超级严重,而我自己那台老掉牙的 WR340G 只要别开 UPnP 就不会有任何问题……
    wy315700
        33
    wy315700  
       2014-08-16 07:25:21 +08:00
    把upnp关了试试
    jasontse
        34
    jasontse  
       2014-08-16 08:37:50 +08:00 via iPad
    @treo
    这个张先生我猜是极路由张导😔
    KyonLi
        35
    KyonLi  
    OP
       2014-08-16 09:08:28 +08:00 via Android
    @wy315700 好的,我试试,是因为upnp占用资源过多?
    lazyphp
        36
    lazyphp  
       2014-08-16 09:16:37 +08:00
    检查附近是否有相同信道的其他wifi影响。
    emric
        37
    emric  
       2014-08-16 09:38:30 +08:00
    应该和华为的光猫没有关系, 譬如 HG8245 简直业界良心...
    ouqihang
        38
    ouqihang  
       2014-08-16 09:40:38 +08:00
    @jasontse 貌似是了 带领开发703n的负责人去了极路由
    xuan_lengyue
        39
    xuan_lengyue  
       2014-08-16 10:16:39 +08:00
    换个好路由就行了,以前用刷了 OpenWrt 的 WR720,有相同情况。后来换了 NetGear WNDR 4500,就非常正常了。
    kiwiwin
        40
    kiwiwin  
       2014-08-16 11:28:33 +08:00 via Android
    为什么我的水星mw300r基本半年都没有重启过 速度也没有见变慢啊,,,,
    frankzeng
        41
    frankzeng  
       2014-08-16 11:55:54 +08:00
    肯定不会,我家里的路由开了大半年了,就没关过,而且是放在弱电箱里,散热也不好,每次去查看里面跟蒸笼一样,环境真残酷。
    dant
        42
    dant  
       2014-08-16 12:25:13 +08:00 via iPhone
    珍爱生命,远离TP-LINK
    yangkeao
        43
    yangkeao  
       2014-08-16 15:31:30 +08:00
    家里的路由从来没有重启过,放在门口鞋柜旁边的柜子里,两个路由器重叠//不是我虐待,是真的没地方了。

    我不会告诉你都是TP-LINK
    BinbinWang
        44
    BinbinWang  
       2014-08-16 15:45:03 +08:00
    NETGEAR 省心好用不折腾...
    quericy
        45
    quericy  
       2014-10-01 22:45:07 +08:00
    @treo 涨姿势了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1212 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 18:08 · PVG 02:08 · LAX 11:08 · JFK 14:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.