隨着移動應用的普遍應用,智能移動設備在不一樣的無線通訊網絡狀況下,會有不一樣的網絡速度,如何在2G、3G、4G、5G無線通訊網絡下訪問雲存儲的用戶體驗更好,是應用設計的核心競爭力,特別是弱網狀況下的體驗。html
實際網絡中,沒有絕對的弱網,核心是「新應用針對新一代網絡設計(4G下行速率爲100Mbps)、從而在前一代網絡運行(2G下行速率爲9.6Kbps)時網絡體驗差」。所以,須要先分析網絡速率。前端
簡稱 | 全稱 |
---|---|
2G | 2nd-Generation |
3G | 3rd-Generation |
4G | 4rd-Generation |
5G | 5rd-Generation |
GSM | Global System for Mobile Communications |
EGSM | Extend-Global System for Mobile Communications |
DCS | Digital Cellular System/Digital Communications System |
PCS | Personal Communications Service |
GPRS | General Packet Radio Service |
EDGE | Enhanced Data rates for GSM Evolution |
CDMA | Code Division Multiple Access |
TD-SCDMA | Time Division - Synchronous Code Division Multiple Access |
WCDMA | Wide band Code Division Multiple Access |
其中,2G 包含 GSM900/EGSM/DCS1800/PCS1800 技術、2.5G 包含 GPRS 技術, 3G 包含 CDMA2000/TD-SCDMA/WCDMA 技術、4G 包含 TD-LTE/FDD-LTE 技術。git
技術點 | 上行速率(bps) | 下載速率(bps) | 備註 | |
---|---|---|---|---|
1G | 無數據傳輸 | N/A | N/A | 發明於 1980s |
2G | GSM900 | 2.7K | 9.6K | 發明於 1995,短信應用 |
EGSM900 | 2.7K | 9.6K | ||
GSM1800 | 2.7K | 9.6K | ||
GSM1900 | 2.7K | 9.6K | ||
2.5G | GPRS | 42.8K | 85.6K | |
EDGE | 45K | 90K | ||
3G | CDMA2000(中國電信) | 1.8M | 3.1M | 發明於 2003,圖片、語音應用 |
TD-SCDMA(中國移動) | 384K | 2.8M | ||
WCDMA/HSPA/HSPA+(中國聯通) | 1.8M/5.76M | 2.4M/7.2M/21M | ||
4G | 中國電信 | 50M | 100~150M | 發明於 2009,視頻應用 |
中國移動 | 50M | 100~150M | ||
中國聯通 | 50M | 100~150M | ||
5G | WiFI | 600M | 1Gbps~20Gbps(理論帶寬) | 發明於2020,IoT 應用 |
除了上述的上/下行帶寬外,還要關注上/下行丟包率、上/下行延遲、最大傳輸單元(MTU, Maximum Transmission Unit)、DNS延遲、鏈接穩定性等指標。網絡
假設網絡上傳帶寬爲 uBW
,下載帶寬爲 dBW
,應用超時t
。
因此ide
上傳數據包大小 uPKG = uBW * t 下載數據包大小 dPKG = dBW * t 例如 2.5G 網絡技術GPRS下,上傳帶寬 uBW 爲 42.8K,下載帶寬 dBW 爲85.6K, 假設爲優化應用體驗設置超時爲 1 秒,那麼: 上傳數據包大小 uPKG = 42.8 Kbps * 1s /8 = 5.35 KB 下載數據包大小 dPKG = 85.6 Kbps * 1s /8 = 10.7 KB 例如 3G 網絡技術WCDMA下,上傳帶寬 uBW 爲 1.8M,下載帶寬 dBW 爲2.4M, 假設爲優化應用體驗設置超時爲 1 秒,那麼: 上傳數據包大小 uPKG = 1.8 Mbps * 1s / 8 = 230 KB 下載數據包大小 dPKG = 2.4 Mbps * 1s / 8 = 300 KB 例如 4G 網絡技術下,上傳帶寬 uBW 爲 50M,下載帶寬 dBW 爲 100M, 假設爲優化應用體驗設置超時爲 1 秒,那麼: 上傳數據包大小 uPKG = 50 Mbps * 1s / 8 = 6.25 MB 下載數據包大小 dPKG = 100 Mbps * 1s / 8 = 12.5 MB 例如 5G 網絡技術GPRS下,上傳帶寬 uBW 爲 600M,下載帶寬 dBW 爲 1G, 假設爲優化應用體驗設置超時爲 1 秒,那麼: 上傳數據包大小 uPKG = 600 Mbps * 1s / 8 = 75 MB 下載數據包大小 dPKG = 1000 Mbps * 1s / 8 = 125 MB
基於上述計算,若是但願在單次請求中傳輸更大的對象,能夠設置更大的超時值,好比10 秒。若是傳輸的對象很是大,好比GB級的對象,可使用分片上傳。測試
固然,若是在網絡速度較低時,好比2.5G網絡的GPRS下每秒上傳數據包爲5.35KB、下載數據包爲10.7KB,此時能夠從前端緩衝區上進行優化控制。優化
典型的網絡測試:.net