2013年7月7日 星期日

High Performance Browser Networking ch5, ch6 心得

Chapter 5. Introduction to Wireless Networks

http://chimera.labs.oreilly.com/books/1230000000545/ch05.html

  • 影響傳輸頻寬的項目: C=BW×log2(1+S/N)
    • C is the channel capacity, and is measured in bits per second
    • BW is the available bandwidth, and is measured in hertz
    • S is signal and N is noise, and are measured in watts
  • 訊號的強弱就像聲音一樣:
    • 若環境音很吵, 很難聽清楚對方說的話。
    • 離愈遠愈不清楚。
  • 頻段受法律影響, 不是想用那一段就可以用那一段。

Chapter 6. Wi-Fi

http://chimera.labs.oreilly.com/books/1230000000545/ch06.html

  • 802.11 (Wi-Fi) 基於 802.3 (Ethernet) 的修改而來的
  • Ethernet 的作法是 "先聽一聽, 確定沒人說話之後再說話"。若有人同時想說話, 各自隨機休息一段時間, 再重試一次。
  • Wi-Fi 的作法和 Ethernet 相似, 只是受到無線通訊硬體的限制, 送資料的時候無法偵測是否有人在說話, 所以要由接受者回應 ACK 得知是否傳送成功。
  • 這個基於 Ethernet 而來的通訊協定只適用於低負擔的無線環境, 反之會很慘。
  • Wi-Fi 有重新傳輸 packet 的機制, TCP packet lost 比例通常不會因 physical layer 使用 Ehternet 或 Wi-Fi 而有差別, 但是使用 Wi-Fi 時很可能有較高且不同的延遲時間。
  • Wi-Fi 有分 2.4GHz 和 5GHz 兩個不同頻段區間。各區間有數個 channel, 若使用者使用不同 channel, 傳輸的訊號就不會打架, 這是提升傳輸品質的最好方法。
  • 這裡有 802.11b 不同 channel 對應到不同頻段的示意圖。使用 2.4GHz 的 Wi-Fi 協定時, 選用 1、6、11 最適當, 可減少和其它 channel 相衝。
  • 5GHz 有比較多 channel, 因此不容易和別人相衝。但是頻率愈高, 使用範圍愈窄。此外, 較舊的手機 (如 iPhone 4S 以前的 iPhone 機種) 只支援 2.4GHz。
  • 總之, Wi-Fi 沒有保證傳輸的頻寬以及延遲時間。
  • 可用 inSSIDer 觀察週圍的無線品質, Android、Windows、Mac OS X 上有軟體可用, Android 上有免費軟體。
  • 開發應用程式時, 可考慮監控過去的流量變化, 決定傳輸內容的品質。不過也要留意監控的結果是否夠即時、穩定, 若變化過大的話, 動態內容的品質有可能反而幫倒忙。

沒有留言:

張貼留言

在 Fedora 下裝 id-utils

Fedora 似乎因為執行檔撞名,而沒有提供 id-utils 的套件 ,但這是使用 gj 的必要套件,只好自己編。從官網抓好 tarball ,解開來編譯 (./configure && make)就是了。 但編譯後會遇到錯誤: ./stdio.h:10...