|
斐訊盒子N1終于找到真正的鍋了,關于N1進行speedtest測速忽快忽慢的原因,大家平時用斐訊盒子的時候也發(fā)現(xiàn)了這個問題,那么樓主今天就分析主要原因以及解決辦法吧。
首先:環(huán)境說明
光貓:SA1456C
N1 35+、35+o兩個版本,設置為旁路由或單臂主路由,
當N1做旁路由時,主路由是我家云+RTL8153(RTL8153是WAN口),占用了光貓的兩個LAN口
兩種模式下,N1 的網(wǎng)線都是直接插在光貓的LAN口上
光貓的最后一個LAN口是接K2P的(本測試與K2P無關)
我家云一直很穩(wěn)定而且快速,但N1總是有些問題,speedtest測電信站點,有時很慢(幾十m),有時又很快(幾百m),嘗試了各種辦法,換內核,換dtb等,終究是效果有限,
現(xiàn)在終于找到真正的鍋了,先看圖:
微信圖片_20200818105317.png (355.38 KB, 下載次數(shù): 6)
下載附件
保存到相冊
2020-8-18 10:54 上傳
微信圖片_202008181053171.png (425.09 KB, 下載次數(shù): 5)
下載附件
保存到相冊
2020-8-18 10:54 上傳
看出來了吧,原因就是網(wǎng)卡的流控方式影響的。(用dmesg | grep dwmac 命令查看) 當流控打開(rx/tx)時,測速很快,流控關閉(off) ,測速時快時慢不穩(wěn)定。
因為speedtest是大流量測速,所以必須控制流量,否則就會造成網(wǎng)絡堵塞,iperf3測速也有類似情況,就是 retr包數(shù)量很多。一般上網(wǎng)或看視頻時,流量其實并不大,所以沒什么影響。
那么,怎樣才能打開流控呢?很簡單,換個交換機吧,實測用tp-link sg1008m,以及水星sg105m接n1,以及接K2P的LAN口(潘多拉固件),流控都能打開,而接光貓則不行。
另外,為什么+o版采用 帶有 force_thresh_dma_mode的dtb,測速效果會比較好呢,原因是:force_thresh_dma_mode 實際上就是一種變相的流控方式,但副作用也很明顯, tx的速率下降到750m了。
有人問,那把N1接到硬路由的LAN口會怎么樣呢?這個還是以 dmesg| grep dwmac 的結果為準吧,如果顯示流控是開的就行(rx/tx),是off的就不行。
另外一口鍋是mtu來背的,主貼里已經講過某些時候eth0的mtu變成1536,這時需要修改mtu到1472才行。
1536的mtu, 用 ping -s 1492 任意ip地址 測試都是不通的,大包無法拆包,小包不影響
ping -s 1492,就是用1492+8字節(jié)包頭來ping,正常情況下應該拆成兩個包,但mtu是1536時凡是大于1500的包都拆不開,結果就不通了。1492換成更大的數(shù)字也一樣。
微信圖片_202008181053172.png (47.23 KB, 下載次數(shù): 7)
下載附件
保存到相冊
2020-8-18 10:54 上傳
最后,請回貼的網(wǎng)友能否貼一下自己的情況,交換機型號,流控是否打開,測速是否正常,以供其他網(wǎng)友參考,謝謝!
最終版DTB,推薦用+O版固件,已經接近完美了,當N1的網(wǎng)卡能夠開啟流控時,內網(wǎng)測速和speedtest測速都能跑滿,如果不能開啟流控,則使用帶thresh那個dtb,用軟流控代替硬流控。具體參見附件中的說明。
斐訊盒子N1+O版固件下載鏈接:點擊下載
注:修改/boot/uEnv.txt時,千萬不要圖省事復制粘貼,我說了只用改 FDT=/boot/dtb/amlogic/xxxxx.dtb那一行,其它的不能改。
如果你有斐訊盒子相關的問題歡迎加入我們的官方群進行討論:810386864
相關閱讀:斐訊N1一鍵免刷機精簡官改固件,簡化自制固件過程
|
上一篇: 解決斐訊N1盒子在Armbian下無線MAC相同的問題下一篇: 斐訊K3 梅林384.18.5 CFE適配版(軟件中心&屏幕可用)
|