if (m_SimulateModem) {
//Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = 300
//Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = 150
}
對于算法鹤盒,網(wǎng)上有兩種解釋:
網(wǎng)絡(luò)取值的算法就是 1000/下載速度 = 需要delay的時間(毫秒)蚕脏,比如50kb/s 需要delay200毫秒來接收數(shù)據(jù)。
首先來判斷m_SimulateModem是否為true侦锯,也就是是否設(shè)置了弱網(wǎng)模式驼鞭。
oSession[“request-trickle-delay”] = “300”; 注釋的也很明白,Delay sends by 300ms per KB uploaded.上傳1KB需要300ms尺碰,轉(zhuǎn)化一下上傳速度:1Kb/0.3s = 10/3(KB/s)挣棕,如果你想設(shè)置上傳的速度為50KB/s,你則需要設(shè)置Delay 時間為 20ms
就是這兩個解釋讓我懵逼的計算了一段時間亲桥,發(fā)現(xiàn)結(jié)果不對洛心。又是kb又是Kb又是KB的,什么鬼两曼?1kb和1KB是有區(qū)別的皂甘,專業(yè)知識來講1B=8b玻驻,我第一反應(yīng)是這樣的悼凑。但是這兩段解釋的思路是正確的偿枕,可能是作者忽略了格式轉(zhuǎn)換的問題,就是把kb=KB了户辫。所以渐夸,第一段解釋中,50kb/s應(yīng)該修改成50KB/S渔欢,第二段解釋中墓塌,1kb/0.3s應(yīng)該修改成1KB/0.3s。
可以通過以下參數(shù)設(shè)置需要模擬的2/3/4G和wifi網(wǎng)絡(luò)情況:
同樣的方法奥额,也可以限制上傳的速度苫幢,調(diào)整oSession[“response-trickle-delay”]即可。