Try   HackMD

802.11 - DCF (Fragmentation)

課程影片

第 3K 講IEEE 802.11 無線區域網路 (Wireless LAN) L03 11

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Fragmentation 簡介

如果傳輸的資料無法包含在單一封包裡面,就需要切分成多個封包傳輸。這種 「把單一資料切分成多個部分,並各自以封包傳輸」的動作,就稱為 fragmentation。而每一個裝有資料片段的封包,就稱為一個 fragment

在發生這種狀況時,並不會每傳送一個 fragment 之前都做一次 RTS/CTS,而是:

  1. 讓上一個 fragment 兼具 RTS 的功能:而 duration 則是藉由設定該 fragmentduration 欄位做到。
  2. 上一個 ACK 兼具 CTS 封包的功能:而原理一樣是藉由設定這個 ACK 封包的 duration 欄位。

而最後一個 fragmentACKduration 欄位就會是 0

例子:RTS/CTS 交握 + 3 個 Fragment

在這個例子中,資料被分為 3 個 fragment。在傳輸之前,首先進行 CTS/RTS 交握,接著逐一傳輸 fragment

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

而傳輸的步驟,大致可以區分為以下四個部分:

Step 0:RTS/CTS 交握

這一步就是前面講到的 RTS/CTS 機制:

  1. src 發送一個 RTS,裡面的 duration 欄位告訴 dst 他需要傳送多少時間。
  2. 所有聽到這個 RTS 的節點,將這個 RTSduration 紀錄在自己的 NAV 中。
  3. dst 在等待 SIFS 時間後,廣播一個 CTS。當中的 duration 欄位表示自己需要多少時間傳輸。
  4. 除了 src 以外的所有節點聽到這個 CTS 之後,將這個 CTS 中的 duration 紀錄在自己的 NAV 中。

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Step 1:第一個 Fragment

  1. 交握完畢之後,傳送第一個封包。與前面的傳輸不一樣的是:這個 fragment 的封包當中的 duration 欄位記錄著「下一次傳輸需要多久的時間」,所以其實兼具下一次傳輸的 RTS
  2. 所有聽到這個 fragment 的節點,自動把這段時間加到 NAV 中。
  3. 收到 fragmentdst 在等待一段 SIFS 之後,廣播 ACK。這個 ACK 同時作為下一個封包的 CTS,當中的 duration 欄位也會被填寫。
  4. 所有聽到這個 ACK 的節點,一樣將這個 ACKduration 加到自己的 NAV 上。

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Step 2:第二個 Fragment

接下來的過程與第一個 fragment 發師的事情一樣:fragment 兼具下一個封包的 RTS,而 ACK 則同時作為下一個 fragmentCTS

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Step 3:最後的 Fragment

最後一個 fragment 中,發生的事情類似。只是這個 fragmentduration 欄位,以及 ACKduration 欄位通通都是 0。這樣一來在這個封包結束時,其他節點的 NAV 就會在這個 fragment 結束之後變成 0。因此這兩個節點在其他節點眼中就會是閒置的:

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →