移動網絡訪問雲上對象存儲最佳實踐

一、背景

隨着移動應用的廣泛應用,智能移動設備在不同的無線通信網絡情況下,會有不同的網絡速度,如何在2G、3G、4G、5G無線通信網絡下訪問雲存儲的用戶體驗更好,是應用設計的核心競爭力,特別是弱網情況下的體驗。

二、網絡技術分析

實際網絡中,沒有絕對的弱網,核心是“新應用針對新一代網絡設計(4G下行速率爲100Mbps)、從而在前一代網絡運行(2G下行速率爲9.6Kbps)時網絡體驗差”。因此,需要先分析網絡速率。

2.1 移動網絡分析

2.1.1 術語

簡稱 全稱
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 技術。

2.1.2 網絡速度

技術點 上行速率(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 應用

2.2 網絡環境參數

除了上述的上/下行帶寬外,還要關注上/下行丟包率、上/下行延遲、最大傳輸單元(MTU, Maximum Transmission Unit)、DNS延遲、連接穩定性等指標。

三、訪問雲上對象存儲實踐

假設網絡上傳帶寬爲 uBW,下載帶寬爲 dBW,應用超時t
所以

上傳數據包大小 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,此時可以從前端緩衝區上進行優化控制。

典型的網絡測試:

  1. SIM卡的網絡切換
    手機—設置—移動網絡設置—網絡類型選擇
  2. 具體弱網場景測試,常見場景包括:地鐵、電梯、樓梯間、衛生間
  3. 使用無線網卡、路由器修改寬帶速度模擬網絡速度
  4. 使用軟件進行網絡代理,模擬不同的網絡帶寬、延時率、丟包率

參考

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章