Tag Archives: Wireless

Wireless 的 Aggregation

電腦的世界內, 很多概念都是相同的, 有時候看看這些技術, 其實還很好玩的呢~

Aggregation 是一種概念, 我最近接觸到這個名詞是在 PreN 的 driver 上看到的, 主要的技術背景
就是將多個封包合而為一, 一起傳送出去. 主要還是減少大量封包傳輸時, 減少 Control Packet 的 Overhead.

其中主要的實作有以下幾種

  • Block ACK
  • Reducing Inter Frame Spacing (RIFS)
  • Frame Packing At MAC Layer (AMPDU)
  • Aggregating PPDU (APPDU)
  • 這些都是作用在底層的協定(Layer 2), 在實務上, 你用 Sniffer 並不會看到這些技術出現.

    首先來看 Block ACK 的機制, 這個機制就是希望在傳送的過程中, 不要再傳送 ACK
    而 Block ACK 又分成 immediate 和 delayed, immediate 是直接在 aggregation packet 傳送結束後,
    馬上傳回 ACK, 而 delayed 是等下一次傳送後再送出 ACK (心中 OS : 這種 Schema 有人用嗎…..?)
    一般來說, 大量資料傳送都會使用 Block ACK .
    而個人認為 Block ACK 也很像是 Scaling Window 的機制, 只是比較簡單, 不需要去判斷 Bandwidth.
    其實 ACK Packet 也是要耗用 Resource 去處理的, 如果這個 ACK 是用 hardware 處理也還好,
    不過如果這個 ACK Packet 是要用 CPU 去處理, 那就值得用 Block ACK 去減少 ACK 的耗用量
    畢竟一個 ACK 也是要耗用和一般 Packet 差不多的時間去處理(當然 Memory Copy 的時間少很多).

    RIFS 就比較容易理解了, 就是在 Frame 和 Frame 中間並沒有一些 Delay 或是空白的機制.
    以增加單位時間內可以傳輸的資料量.

    AMPDU
    AMPDU 圖示
    從這一張圖表可以很清楚的看到, AMPDU 就是將數個相同目地的資料, 集合成一次送出, 以減少底層 Hand Shaking 的時間, 同時也可以減少 Header 的重覆傳送, 以達到快速傳送的目地.

    APPDU
    和 AMPDU 不同的地方在於, APPDU 是 Physical Layer Header 集合在一起.

    一般來說, Aggregation 對於 Bulk Data Transfer 的效用並不大, 將 Header 減少的效用剛好在處理 Aggregation 這一段時間就補回來了, 但是 Aggregation 對於小封包就很有用了, 這時 Header 佔小封消耗的時間就比較多了.

    曾經看過 Aggregation 這樣處理的

    這樣的處理如果在 x86 內, 一點問題也沒有, 畢竟 x86 速度快, Memory Bandwidth 也大, 所以程式寫爛一點也沒有關係. 但是在 Embedded Linux 下, 畢竟資源有限.
    我們看到這個圖, 總共有幾次的 Memory Copy 呢? 答案是 3 次, 比起一般的收封包, 多了二次, 也就是三倍的 Memory 頻寬耗用量, 這還不包含 CPU 處理的時間.
    所以 Driver 這樣寫, 真是大方呀, 據我所知, 大概只有那家將文書編輯軟體內放模擬飛行的公司可以比而己…..

    這只是一個很簡單的例子, 在 Embedded Linux 下寫 Code 要特別小心, 並不是每次都有什麼 IXP420 266Mhz or 400MHZ+ 甚至是 C7 這樣高階的 CPU. 常常的狀況都是比較低階的 CPU .

    所以各位看倌可以發現, Aggregation 並沒有什麼了不起, 只是以前的概念拿來修修改改.
    在 802.11n 這些技術也己經很普遍了.

    Ref. 主要的參考文件
    Performance Analysis of Data Aggregation Techniques for Wireless LAN

    Anti-WiFI 油漆

    在 digg 看到的, DefendAir Radio Shield Paint
    這種油漆號稱可以阻止 WiFi, WiMax, BlueTooth 跑到別人家去.

    不過我第一個想到的用途應該是在抗議基地台的民眾家中塗這種油漆就是了.
    到不是防止 Wireless 外洩.

    其實我還算歡迎鄰居來用我的 Wireless Network .
    我正在 sniffer 中呢. 可惜的是, 似乎都沒有人來用 :-/

    Today’s Google ….

    Google Moon
    Google 應該是請了月球人做員工, 要不然要月球的 Maps 做什麼.
    值得一提的是, 放到最大就變奶油了, 這一定是惡搞呀~~~~~~~~~~
    Update: 忘了說了, 這是記念人類登上月球, 利用 Google Earth 界面做出的網頁.

    Google Alerts
    Google 定時 Search News , 寄到你信箱的服務, 印像中 OpenFind 很早就做過這樣的東西
    好不好用, 見仁見智囉.

    全國無線化…. Orz

    原文在此模里西斯將成為全球第一個有全國性WiFi的國家

    這下台北市敗了呀, 連全市無線化都沒有達到, 就被全國 WiFi 的國家打敗了.
    不過沒有什麼好傷心的, 我自己都不看好 802.11 Network.
    充其量只是提供上網的需求, 這樣的需求很容易就會被取代.

    802.11 其實是敗在不便利性, 你不能隨時隨地, 就隨便可以接上無線網路
    順順利利的到處連網, 將 Internet 接到自己身上…
    比較起來, 貴死人的 GPRS 還是比較方便.

    如果 3G (WCDMA/CDMA2000), 能夠提供便宜吃到飽的無線上網費率.
    我認為是大有可為呀, 基礎建設就是要便宜又大碗, 再用加值服務吸引民眾進一步消費.
    Internet 時代, 大家都被養成這樣的壞習慣了, 如果費率不便宜, 3G 有什麼好吸引民眾消費的?
    上網看電視? 無聊打發時間? 那不如買 SmartPhone, 然後灌無碼片進去來得實際.

    Car To Car Network

    The Register 提到Auto makers to create car-to-car WLAN by 2006
    要在 2006 年做到車對車的通訊, 用的是 802.11 的技術, Adhoc 模式. 跑 IPv6

    我個人認為實驗性很高.
    而且若是以 120KM 行進, 每秒 33M , 大概 4 秒就跑出 Wireless 的通訊範圍了,
    大概要加大天線吧.
    這樣的話高速公路上應該也是 Wireless 訊號亂跑….

    到時候再看看怎麼 implement 好了.
    我猜大概是用 Listen mode + udp broadcast . ….. 這樣可以快速 handshaking .

    WiFI Detector …… 隨時隨地找上網訊號

    之前有人 POST 類比的 WiFi Detector . 只能偵測 WiFi 訊號, 事實上用處不大
    Slashdot 有提到 The Digital Hotspotter

    照規格
    這一台可以偵測 Channel/Encypt WEP/WPA / 訊號強度/ MultiNetwork .
    時常出門在外掃 Wireless 設備的人上吧…

    破 WEP/LEAP 的工具.

    在 Slashdot 的WEP And PPTP Password Crackers Released 提到一個網頁 WEP: Dead Again, Part 1 提供了不少破解 WEP 的工具和評比

    而也有人提供了 Asleap – Cisco Attack Tool