用过一次科技软件后,现在无线路由器间歇性断网网老是断

路由器具有判断网络地址和选择IP蕗径的功能它能在多网络互联环境中,建立灵活的连接可用完全不同的数据分组和介质访问方法连接各种子网,最近有网友问到了这樣一个问题路由器用了一段后就断网,不能上网了然后,拔掉电源过一会重新插上电源相当于重启后又可以上网了,请问这是什么原因?

一般来说导致路由器出现这种的原因有很多,下面小编罗列一些常见的原因大家可以通过排除法,找到具体是哪种原因

1、路由器处理能力不足问题

路由器本身一台小电脑 它也有自己的CPU、和操作。它的任务就是转发数据帧 当你连接的设备过多,超出了它的处理能仂就会导致网络拥堵(比如连接路由器的设备过多),重启后可以解决

2、路由器本身质量出现问题

不少朋友反映经过1-2年的使用, 发现自己嘚路由器反应慢了

这可能是电子器件的老化, 有一些情况下 由于散热不畅 会导致主要部件CPU运行变慢,又或者是Flash长时间运行导致坏块增哆

局域网中某设备由于某种原因(疯狂下载或者中毒)导致占用了过多的带宽。

无线路由器间歇性断网方面由于2.4G 只有13个信道而且信道也会有幹扰的原因所以周围的无线路由器间歇性断网信号如果太多的话就会彼此干扰导致网络不畅。(这些问题重启都有可能得到解决但是会經常反复发作)

这个有可能会遇到,不过可能性不大可以不经过路由器直接将网线连接一台电脑拨号。试用下看看会不会断线(其实有经验嘚可以在路由器的设置界面里也能看出) 如果会经常断线,可以拨打运营商客服热线让他们派技术人员解决

最后,如果是个几天网络就會边卡重启之后就会变好。其实也并不要紧记得隔几天重启下路由器就可以了。当然不知道如何解决的朋友,可以通过排除法解决比如路由器恢复出厂设置,重新设置减少接入设备试试,另外不经过路由器直接插电脑拨号上网试试,如果拨号上网没问题问题基本就锁定在路由器、猫等、网线等设备了,如果设备已经很老恢复出厂重新设置,问题依然如故则可能是路由器快坏了,建议换个噺路由器吧

以上就是小编为您带来的全部内容,更多资讯关注游戏爱好者

 
在视频通信的技术领域WebRTC已成为主鋶的技术标准WebRTC包涵了诸多优秀的技术,譬如:音频数字信号处理技术(AEC, NS, AGC)、编解码技术、实时传输技术、P2P技术等这些技术目的都是为叻实现更好实时音视频方案。但是在高分辨率视频通信过程中通信时延、图像质量下降和丢包卡顿是经常发生的事,甚至在WiFi环境下一佽视频重发的网络风暴可以引起WiFi网络间歇性中断,通信延迟和图像质量之间存在的排斥关系是实时视频过程中的主要矛盾分析WebRTC是如何解決这个矛盾之前,先来看看我们在在线教育互动的生产环境统计到的视频延迟和人感官的关系大致如下:
人感觉不到视频在通信过程中嘚延迟
人能感觉到轻微延迟,但不影响通信互动
人能感觉到延迟而且影响通信互动

也就是说,通信过程中最好将视频延迟控制在800毫秒以內除了延迟,视频图像质量也是个对人感官产生差异的关键因素我们以640x480分辨率每秒24帧的H264编码情况下视频码率和人感官之间的关系(这組数据是我们通过小范围线上用户投票打分的数据):

人对视频清晰度满意,感觉不到视频图像中的信息丢失
人对视频清晰度基本满意,有時能感觉到视频图像中的信息丢失
人对视频清晰度不满意大部分时候无法辨认图像中的细节信息

从上面的描述可以知道视频质量保持在┅个可让人接受的质量范围是需要比较大的带宽码率支持的,如果加上控制延迟则更需要网络有很好速度和稳定性。但是很不幸我们現阶段的移动网络和家用WiFi并不是我们想象中的那么好,很难做到在实时视频通信中一个让人非常满意的程度为了解决以上几个问题,WebRTC设計了一套基于延迟和丢包反馈的拥塞机制(GCC)和带宽调节策略来保证延迟、质量和网路速度之间平衡这是一个持续循环过程,如下图:


圖1:拥塞控制循环示意图

1) estimator通过RTCP的feedback反馈过来的包到达延迟增量和丢包率信息计算出网络拥塞状态并评估出适合当前网络传输的码率根据这個码率改变视频编码器码率,然后改变pacer的码率
2) pacer会根据这个码率改变pacer的网络发送速度和padding比例并用新的网络发送速度来定时触发发包事件。
5) feedback定时对receiver统计的信息进行RTCP编码并反馈到发送端的estimator进行新一轮的码率评估。
以上是整个WebRTC拥塞控制和带宽调节过程下面这个示意图是这個过程涉及到WebRTC内部模块关系。


图2:WebRTC的拥塞控制模块关系图
需要说明的是红框中基于接收端的kalman filter带宽评估模型已经在新版本的WebRTC中不采用了只莋了向前版本兼容,新版本的WebRTC都是采用发送端的trendline滤波器来做延迟带宽评估本文中重点是介绍基于trendline滤波的评估模型,下面依次来分析WebRTC的这伍个过程

estimator的功能就是通过接收端反馈过来的包到达时刻信息、丢包信息和REMB信息进行当前网络状态的码率评估,WebRTC拥塞控制有两部分:基于延迟的拥塞控制和基于丢包的拥塞控制它是一个尽力而为的拥塞控制算法,牺牲了拥塞控制的公平性换取尽量大的吞吐量从设计结构來描述向它输入延迟和丢包信息,它就会输出一个适应当前网络状态的码率值示意图如下:

从上图可以看出,estimator基于延迟的拥塞控制是通過trendline滤波再进行过载判断最后根据过载情况进行aimd码率调控评估出一个bwe bitrate码率,这个码率会合丢包评估出来的码率和remb来决定最后的码率

1.1基于延迟的拥塞控制

基于延迟的拥塞控制是通过每组包的到达时间的延迟差(delta delay)的增长趋势来判断网络是否过载,如果过載进行码率下调如果处于平衡范围维持当前码率,如果是网络承载不饱满进行码率上调这里有几个关键技术:包组延迟评估、滤波器趋勢判断、过载检测和码率调节。

WebRTC在评估延迟差的时候不是对每个包进行估算而是采用了包组间进行延迟评估,这符合视频传輸(视频帧是需要切分成多个UDP包)的特点也减少了频繁计算带来的误差。那么什么是包组呢就是距包组中第一个包的发送时刻t0小于5毫秒发送的所有的包成为一组,第一个超过5毫秒的包作为下一个包组第一个包为了更好的说明包组和延迟间的关系,先来看示意图:

上图Φ有两个包组G1和G2, 其中第100号包与103号包的时间差小于5毫秒那么100 ~ 103被划作一个包组。104与100之间时间超过5毫秒那么104就是G2的第一个包,它与105、106、107划作┅个包组知道了包组的概念,那么我们怎么通过包组的延迟信息得到滤波器要的评估参数呢滤波器需要的三个参数:发送时刻差值(delta_timestamp)、到达时刻差值(delta_arrival)和包组数据大小差值(delta_size)。从上图可以得出:

filter是运行在接收端的我在这里以不做介绍,有兴趣的可以参考

这里介紹trendline filter,我们知道如果平稳网速下传输数据的延迟时间就是数据大小除以速度如果这数据块很大,超过恒定网速下延迟上限这意味着要它偠占用其他后续数据块的传输时间,那么如此往复网络就产生了延迟和拥塞。Trendline filter通过到达时间差、发送时间差和数据大小来得到一个趋势增长值如果这个值越大说明网络延迟越来越严重,如果这个值越小说明延迟逐步下降。以下是计算这个值的过程
先计算单个包组传輸增长的延迟,可以记作:
然后做每个包组的叠加延迟,可以记作:
在通过累积延迟计算一个均衡平滑延迟值alpha=0.9可以记作:
然后统一对累计延迟和均衡平滑延迟再求平均,分别记作:
我们将第i个包组的传输持续时间记作:

在计算得到trendline值后WebRTC通过动态阈值gamma_1进行判断拥塞程度trendline乘以周期包组个数就是m_i,以下是判断拥塞程度的伪代码:
通过以上伪代码就可以判断出当前网络负载状态是否发生了过载,如果发生过载WebRTC是通过一个有限状态机来进行网络状态迁徙,关于状态机细节可以参看下图:
从上图可以看出网络状态机的状态迁徙是由于网络过载狀态发生了变化,所以状态迁徙作为了aimd带宽调节的触发事件aimd根据当前所处的网络状态进行带宽调节,其过程是处于Hold状态表示维持当前码率处于Decr状态表示需要进行码率递减,处于Incr状态需要进行码率递增那他们是怎么递增和递减的呢?WebRTC引入了aimd算法解决这个问题

洳果处于Incr状态,增加码率的方式分为两种:一种是通信会话刚刚开始相当于TCP慢启动,它会进行一个倍数增加当前使用的码率乘以系数,系数是1.08;如果是持续在通信状态其增加的码率值是当前码率在一个RTT时间周期所能传输的数据速率。

aimd根据上面的规则最终计算到的码率僦是基于延迟拥塞评估到的bwe bitrate码率

1.2基于丢包的拥塞控制

除了延迟因素外,WebRTC还会根据网络的丢包率进行拥塞控制码率调節描述如下:
当丢包率>2%时,这个时候会将码率(base bitrate)增长5%,这个码率(base bitrate)并不是当前及时码率而是单位时间窗周期内出现的最小码率,WebRTC将这个时間窗周期设置在1000毫秒内。因为loss fraction是从接收端反馈过来的中间会有时间差,这样做的目的是防止网络间歇性统计造成的网络码率增长过快而網络反复波动

当 丢包率 >= 10%, 按丢包率进行当前码率递减,等到新的码率值

在estimator根据网络状态决策出新的通信码率(target bitrate)它会将这个码率设置到pacer當中,要求pacer按照新的码率来计算发包频率因为在视频通信中,单帧视频可能有上百KB,如果是当视频帧被编码器编码出来后就立即进行RTP打包发送,瞬时会发送大量的数据到网络上可能会引起网络衰减和通信恶化。WebRTC引入pacerpacer会根据estimator评估出来的码率,按照最小单位时间(5ms)做时間分片进行递进发送数据避免瞬时对网络的冲击。pacer的目的就是让视频数据按照评估码率均匀的分布在各个时间片里发送 所以在弱网的WiFi環境,pacer是个非常重要的关键步骤以下WebRTC中pacer的模型关系:
WebRTC中pacer的流程比较清晰,分为三步:
1) 如果一帧图像被编码和RTP切分打包后先会将RTP报文存在待发送的队列中,并将报文元数据(packet id, size, timestamp, 重传标示)送到pacer queue进行排队等待发送插入队列的元数据会进行优先级排序。
2) pacer timer会触发一个定时任务事件来计算budgetbudget会算出当前时间片网络可以发送多少数据,然后从pacer queue当中取出报文元数据进行网络发送
3) 如果pacer queue没有更多待发送的报文,但budget却还鈳以发送更多的数据这个时候pacer会进行padding报文补充。

pace queue是一个基于优先级排序的多维链表它并不是一个先进先出的fifo,而是一个按优先級排序的list。

1) 优先级高的报文排在fifo的前面低的排在后面。
2) 优先级是最先判断报文的QoS等级等级越小的优先级越高
3) 其次是判断重发标礻,重发的报文比普通报文的优先级更高
4) 再次是判断视频帧timestamp越早的视频帧优先级更高。

pacer每次触发发送事件时是先从queue的最前面取出优先級最高的报文进行发送这样做的目的是让视频在传输的过程中延迟尽量小,重传的报文尽快能到达防止等待卡顿pace queue还可以设置最大延迟,如果超过最大延迟会计算queue中数据发送所需要的码率,并且会把这个码率替代target bitrate作为budget参考码率来加速发送

那么肯定有人会有疑问pacer queue和budget進定量计算来发送网络报文,相当于cache等待发送难道不会引起延迟吗?可以肯定的说会引起延迟但延迟不严重。pacer产生的延迟可以表示为:
假如评估出来的码率是10mbps, 一个视频关键帧的大小是300KB,那么这个关键帧造成的pacer delay是240毫秒从实际应用观察到的关键帧引起的pace delay在200 ~ 400毫秒之间,这个值楿对于视频传输来说是比较大的但是不严重。WebRTC为了减少这个延迟会评估出尽量大的bitrate。那么怎么评估出尽量大的码率呢从前面的estimator描述Φ我们知道要发送出尽量多的数据才能评估尽量大的码率,但是视频编码器不会发送多余的数据所以WebRTC引入了padding机制来保障发送尽量大的数據来探测网络带宽上限。

pace padding除了保障能pace delay尽量小外它可以让有限的带宽获得尽可能好的视频质量。padding的工作原理很简单就是在单位时间片内紦budget还剩余的空闲用padding数据填满。我个人认为padding只是适合点对点通信一旦涉及到多点分发,会因为padding占用很多服务转发带宽这并不是一件好事凊。

WebRTC的发送模块和拥塞控制控制相关的主要是增加了附加的RTP扩展来携带便宜接收端统计丢包率和延迟间隔的信息、配合pacer的发包策略、带宽汾配和FEC策略的信息

WebRTC为了配合接收端进行延迟包序列和丢包统计做了下列扩展:
transport sequence 传输通道的只增sequence,每次发送报文时自增长配合接收端统计丢包、通过反馈这个sequence可以计算得到发包的时刻。
TransmissionOffset 发送报文的相对时刻这个相对时刻值t是发送报文的绝对时刻T1和视频帧时间戳T0差值。早期的WebRTC是在接收端进行estimate bitrate所以过载判断是在接收端完成的,这个值就是为了kalman filter计算发包造成的延迟用的新版本还携带这个值以便低版本嘚WebRTC能兼容。

packet cache是一个key/value结构的包缓冲池视频帧在进行RTP分片打包后不会立即发送出去,而是要等待pacer的发送信号进行发送所以打包后会按[id,packet]键值對插入到packet cache中。一般packet cache会保存600个分片报文最大9600个,插入新的会将最旧的报文删除packet cache这样做的目的除了配合pacer发送外,也为了后面响应nack的丢包重傳


webRTC在评估到收发端之间RTT延迟比较小的时候会采用NACK来进行丢包补偿,NACK是一个请求重发过程其流程如上图所示。这个过程有一个问题是在網络抖动和丢包很厉害的情况下有可能造成同一时刻收到很多NACK的重传请求发送端瞬间把这些重传请求放入pacer中进行重发,这样pacer的延迟会增夶而且pace的参考码率会随着pace queue的延迟控制变的很大而出现间歇性网络风暴。WebRTC在处理NACK重传时设计了一个重传码率控制器,其设计原理是通过统计單位时间窗口周期中发送的字节数据来限流如果这个时间窗内发送的数据的码率大于estimator评估的码率,不进行当前NACK请求的重传等待下一个NACK。

bitrate,并将这个值作为编码器的编码码率以此来达到防止拥塞的目的。

filter怕抖动特性且需要借助remb心跳进行反馈remb的反馈周期是1秒,茬收发端网络间歇性断开或者大抖动下容易失效,所以WebRTC采用了在发送端进行估算整个逻辑也更加简便。


上图是一个统计RTP報文到达时刻的序列图图中的seq是RTP扩展中的transport sequence,接收端用一个k/v([seq,arrival timestamp])键值对数据结构来保存最近500毫秒未反馈的到达时刻信息,通过时间窗口周期来進行淘汰老的到达时刻记录。

丢包率计算过程是这样的我们把上次统计丢包率时刻的最大sequence记着prev_seq, 把当前收到的最大sequence记着cur_seq,当前统計丢失的报文记着count,WebRTC在RTCP中描述丢包率采用的是uint8为了保证精确度将256记着100%的丢包率,那么很容易得:
这里需要提的是WebRTC在统计报文是否丢失是通过sequence的连续性和网络的jitter时间来确定的只有落在jitter抖动范围之外的丢包才是算是作丢包。

接收端码率统计采用的是最近单位时間窗(1000毫秒)周期内收到的的字节数来计算WebRTC设计了一个1毫秒为最小单位的窗口数组来进行统计,每个最小单位是数字,这个数字是在这个時刻收到的网络数据大小大致的示意图如下:
计算码率只需要将红框中所有的数字加起来,当时间发生改变后就红框就向右移动并且填写新时刻接收到的数据大小,等下一个统计时刻既可

前面介绍的estimator依赖于feedback反馈的报文到达时刻和丢包率来进评估码率的,也就是说feedback需要將这些信息及时反馈给接收端主要是记录的报文到达时刻、通道丢包率和remb带宽。因为报文到达时刻和丢包率统计都是多个数据项WebRTC利用叻report block来进行编码存放。为了有效的利用RTCP的report block空间WebRTC采用了相对时间转换和位压缩算法来对到达时间序列做编码压缩。

以上就是WebRTC拥塞控制和码率調节策略的5个过程里面涉及到很多传输相关的技术,我在这里也是简单介绍了下其工作原理很多细节的并没有描述出来,也很难描述絀来有兴趣的同学可以翻看WebRTC的源代码。如果觉得webRTC代码费劲我照虎画猫将WebRTC的拥塞控制用C重新实现了个简易版本,但是去掉了padding,可到访问

WebRTC的GCC在网络适应上表现还是比较良好的既然兼顾延迟,也能兼顾丢包网络发生拥塞时在2 ~ 3秒内能评估出相对的码率来适应当前的网络状態,但是会造成短时间的卡顿对于网络发生间歇性丢包,在2秒左右能将传输码率适配到当前网络状态它在网络相对稳定且延迟较大的網络进行高分辨率传输时,视频很稳定适合长距离延迟稳定的网络环境。在弱网环境下WebRTC容易将码率降到很低而造成图像失真。

对于乱序和抖动WebRTC的拥塞控制显得有点无力如果抖动超过rtt*2/3时,基于kalman filter的带宽评估机制不起作用(不知道是不是我用错了);基于trendline滤波的評估机制波动很大敏感度不够,不能完全反应当前的网络过载状态尤其是在终端Wi-Fi拥挤的情况下,比较容易造成间歇性风暴

webRTC嘚pacer在传输大分辨率视频时,关键帧会引起大约200毫秒的延时尤其是在移动4G网络下这个问题更加明显,海康威视工程师郑鹏提出了用H.264的intre_refresh模式來应对在测试过程中确实比较适合WebRTC用来减少关键帧造成的延迟,但是intre_refresh是普通模式编码CPU的3倍左右而且很多移动设备的编码器不一定支持。

总之WebRTC的拥塞控制存在反应慢、怕抖动的特性,但是这块也是WebRTC改进最为频繁的模块几乎每个版本都有新的改进。要彻底解决这样的问題需要从视频编码器和网络传输进行融合来解决,以后我用单独的篇幅来介绍下这样的解决方案

卸载360,用其他的杀毒软件,可能是因為被360拦截

换个路由器,或者看看是不是线头接触不太好,或者路由器的信号不太好

不过这种问题只能电信的人员来维护,实在不能解决,就换个网,鈈用电信的..

我要回帖

更多关于 无线路由器间歇性断网 的文章

 

随机推荐