wiki:802.11/MAC/Upper/AP

Access Point

The Access Point implementation in the Mango 802.11 Reference Design allows 802.11 stations to associate and bridge their traffic over the Ethernet port of a WARP v3 kit.

Top-level view of AP States

There are three broad classes of events that pull the AP implementation out of an idle state. Those classes are:

  1. Wireless MPDU Receptions
  2. Ethernet Frame Receptions
  3. Scheduled Events

In our implementation, each of these state transitions occurs via an interrupt.

Wireless MPDU Receptions

MPDU Reception States

When receiving a wireless MPDU, an 802.11 AP must filter on the type of packet and where it came from (i.e. transmitter address TA). In the event that the received MPDU is a data frame intended to be delivered to the wired Ethernet portal, it is passed off to the MAC High Framework's Ethernet de-encapsulation function before being transmitted via the Ethernet MAC and PHY. When a received MPDU is one of the many management frametypes, the AP honors the 802.11 standard's protocol for handshakes during the association process. This handshake is visualized in the above state diagram.

Ethernet Frame Receptions

Ethernet Reception States

Ethernet frame receptions come from the Ethernet portal and are delivered to some subset of the wireless stations associated with the AP. If the received Ethernet frame is destined for a broadcast hardware address, the AP sends the frame with a broadcast receiver address (RA) such that all associated nodes can decode it. When the Ethernet frame is destined for a unicast address, the AP only forwards the packet if that address has been associated with the AP. If not, it will throw the packet away.

Scheduled Events

Scheduled Events

In addition to processing wired and wireless receptions, the AP must also deal with scheduled events. For example, at boot, the AP sets up a schedule to periodically transmit a beacon frame. Additionally, it periodically culls through the current list of associated devices and manually removes and deauthenticates any devices that have been idle for too long.

Last modified 6 years ago Last modified on Nov 25, 2013, 12:17:02 PM