wiki:802.11/MAC/Upper

Version 14 (modified by murphpo, 11 years ago) (diff)

--

The 802.11 Reference Design and its documentation are under active development by the Mango team. The current release should be considered a beta- updates with bug fixes, API changes, new features and other refinements will be posted frequently. Please check the downloads page for the latest updates and post any questions about the design to the forums.

Upper-level MAC Description

The upper-level MAC is responsible for inter-packet states that are not time critical. The state machine implemented by the upper-level MAC has 6 states: Idle, MPDU Tx, MPDU Rx, Ethernet Tx, Ethernet Rx, and Scheduled Event.

States

  • Idle: This state is the default state where no actions are performed by the upper-level MAC. All other states return to Idle when completed.
  • MPDU Tx: This state handles the transmission of wireless MPDUs from a transmit queue.
  • MPDU Rx: This state handles the reception of wireless MPDUs.
  • Ethernet Tx: This state handles the transmission of wired Ethernet frames.
  • Ethernet Rx: This state handles the reception of wired Ethernet frames.
  • Scheduled Event: This state handles actions by the high-level MAC that are internally scheduled for times in the future.

State Transitions

  • IdleMPDU Tx: This transition occurs when two conditions are met:
    1. The lower-level MAC has indicated that it is ready to receive another packet for wireless transmission and
    2. The transmit queue in the upper-level MAC contains a packet that is ready for wireless transmission.
  • IdleMPDU Rx: This transition occurs when the low-level MAC has indicated that a reception has occurred which meets the following criteria:
    1. The received packet is not a control packet (e.g. ACK, RTS, CTS) and
    2. The received packet has a receiver address that is either a broadcast packet or a unicast packet whose address matches the local node's MAC address.
  • MPDU RxEthernet Tx: This transition occurs when a wireless MPDU data reception occurs that should be de-encapsulated and sent via Ethernet. The Ethernet Tx state does not employ a queue, as wired transmissions are expected to be much faster than wireless receptions and the wireless PHY does not block while the Ethernet transmission proceeds. This state is entered directly from the MPDU Rx state without transitioning through Idle.
  • IdleEthernet Rx: This transition occurs when any packet has been received by the Ethernet MAC on the board.
  • IdleScheduled Event: This transition occurs when a timer indicates that a scheduled event should be processed.