http://bbs.xiaomi.cn/thread-7027790-1-1.html

经常使用无线路由器的同学会发现有时候家里的路由器长时间运行后上网速度会越来越慢,尤其是使用BT等软件下载东东会发现路由器非常慢,有时候发现小米盒子上的无线信号满格,但网络却不通?而上述问题出现后一般重启路由器就可以解决?这到底是为啥原因呢?

张先生是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路由器 研发负责人。

TPlink无线路由器研发负责人谈常见路由器问题相关推荐

  1. 绕过tp路由器管理密码_怎么用手机设置路由器?TPlink无线路由器安装设置方法...

    TP-link无线路由器是大家常用的路由器,信号稳定,功能强大,用的人很多.所以给大家分享下TP-link无线路由器设置上网的方法,是有必要的. TP-link无线路由器设置前的网线连接方法: 首先宽 ...

  2. php控制wifi上网时长,怎么限制wifi网速 TP-LINK无线路由器设置方法【步骤方法】...

    怎么限制wifi网速? 如果是利用路由器共享上网,那么你要做的不是提高网速, 下面为大家带来 TP-LINK无线路由器设置教程,一起来看看. 我们知道,双绞线是由四对线按严格的规定紧密地绞和在一起的, ...

  3. html link 怎么设置密码,TP-Link 无线路由器设置密码方法_设置tp link路由器的无线密码方法图解...

    下面介绍TP-Link无线路由器如何设置无线接入密码,如果您的tp link无线路由器还没有设置好上网连接的话请参考 1.登录路由器的设置界面. 打开网页浏览器,在浏览器的地址栏中输入路由器的IP地址 ...

  4. 华为路由器、H3C交换机和TPLINK无线路由器组建无线网

    网络环境: 光纤接入至华为路由器,通过交换机组成一个网络.后应业主需求,增加一个无线网络. 解决方案: 通过增加一个TPLINK无线路由器,级连到交换机上. 步骤: 1.配置无线路由器:将WAN口设置 ...

  5. tpwr886n路由器设置虚拟服务器,TP-LINK无线路由器WR886N怎么设置密码

    使用这款TP-WR886N路由器的人非常多,而现在TPlink路由器也是支持手机登录设置界面的.那么在设置这款无线路由器密码之前,我们是需要正确配置这款路由器上网参数的.我们先来看看路由器的配置操作. ...

  6. xp系统无线配置服务器,TP-Link无线路由器上网设置(XP 系统)

    本文介绍了在Windows XP系统的电脑上安装和配置TP-Link无线路由器的方法,在Windows XP电脑下TP-Link无线路由器的安装和上网配置可以分为3个步骤:1.路由器安装:2.配置电脑 ...

  7. TP-Link 无线路由器的配置

    TP-Link 无线路由器是很常见的路由器,今晚花了不少时间捣腾设置,将结果记录下来,下次可以提高效率. 一般的tp-link服务器配置的方法: 1,拿一根网线连接tp-link的wan端口,另一头连 ...

  8. 常见路由器开源系统(固件)简介

    前段时间在折腾如何通过 SD-WAN 组网方式打通办公室和家里的异地局域网.需要用到路由器的静态路由表功能,但是遍历整个家用路由器市场几乎没有支持这个功能的路由器(只有华硕 RT-AX57 有这个功能 ...

  9. TP-LINK无线路由器WR340G+ 54M支持WDS - 东莞市泰讯电子科技有限公司

    TP-LINK无线路由器WR340G+ 54M支持WDS - 东莞市泰讯电子科技有限公司 TP-LINK无线路由器WR340G+ 54M支持WDS - 东莞市泰讯电子科技有限公司 TP-LINK无线路 ...

最新文章

  1. static slice是什么呢?
  2. linux查看log4c版本号,linux下安装log4cplus
  3. 23,148,855,308,184,500是一个神奇的数字,还是纯粹的机会?
  4. boost::fusion::map用法的测试程序
  5. Boot Loader的启动流程和开发经验总结
  6. 【转】Dynamics CRM 365零基础入门学习(五)权限管理
  7. (转)学习directx遇到的问题
  8. POJ 3734_Blocks
  9. mysql utf8存不了中文乱码_MySQL怎么存文本不乱码?
  10. 《深度学习笔记》——初识PyTorch的学习笔记
  11. 基于springboot+vue的商城/体育用品商城/衣服商城系统(前后端分离)
  12. 兄弟连php课程,LAMP兄弟连PHP课程学习笔记 第一天 PHP基本语法
  13. 显示upnp服务器 sonos,蒲公英的上层设备如何开启UPnP及其优点
  14. 拼多多卖家必知:店铺评分和评价那点事
  15. 计算机linux认证-1,Linux认证:Linux点评Debian5个五功能
  16. 新版白话空间统计(25):方向分布(标准差椭圆)
  17. vsphere添加数据存储_vsphere入门之数据存储与vMotion迁移技术
  18. 爷爷八十大寿,程序员为他写了一个书本朗读App
  19. 高中物理创新实验室有哪些建设要求
  20. SONY VISCA协议及其简单认识

热门文章

  1. CVPR2018已公布关于视频目标跟踪的论文简要分析与总结
  2. Java中的tiles_Spring mvc整合tiles框架的简单入门教程(maven)
  3. 【PageHelper】排查PageHelper分页失效问题
  4. 2021年安全员-B证考试及安全员-B证报名考试
  5. 基于http的API的安全性
  6. 政务外网、政务专网、政务内网
  7. 2023西南石油大学计算机考研信息汇总
  8. java考勤管理系统源码java学生考勤请假系统java学生考勤管理系统 java考勤系统java学生信息管理系统java学生管理系统
  9. Agisoft Metashape 电力线检测
  10. 百度快速收录,百度新网站快速收录服务是什么site首页收录