Not too long ago I got involved in an issue a client had with its wireless voice infrastructure – one-way audio.
The installation involved the following equipment:
- Cisco 5508 Wireless LAN Controller
- Cisco 3700 Series Access Points
- Spectralink 84-series Wireless Telephones
The one-way voice issue for this client was not the usual where the far end can’t here the person on the wireless phone because of AP transmit power levels. For areas where there is deficient coverage and you then increase the AP transmit power to levels that the client devices cannot support would only increase coverage on the downlink.
This one-way audio was in the other direction, the wireless client could not hear the person speaking on the far end. The more I investigated the issue and doing research on it three possible solutions kept on coming up:
- Disable 802.11n on the radios
- Don’t use WPA2-PSK – rather use mac-filtering
- Disable A-MSDU or A-MPDU on the 802.11a radio
The first two options I found ridiculous and later found they both relate to option three, so I needed to look into option three.
What is A-MSDU and A-MPDU? Every frame transmitted by an 802.11 device has a significant amount of overhead, including radio level headers, Media Access Control (MAC) frame fields, interframe spacing and acknowledgment of transmitted frames. At the highest data rates, this overhead can consume more bandwidth than the payload data frame. To address this issue, the 802.11n standard defines two types of frame aggregation: MAC Service Data Unit (MSDU) aggregation and MAC Protocol Data Unit (MPDU) aggregation. Both types group several data frames into one large frame. Because management information needs to be specified only once per frame, the ratio of payload data to the total volume of data is higher, allowing higher throughput.
In 802.11n standard, Frame Aggregation was the most important MAC enhancement proposed which maximize throughput and efficiency. There are two methods available to perform frame aggregation:
- Aggregate MAC Service Data Unit (A-MSDU)
- Aggregate MAC Protocol Data Unit (A-MPDU)
The main distinction between MSDU & MPDU is the former corresponds to upper part of MAC sub-layer.
A-MSDU: The concept of A-MSDU is to allow multiple MSDUs (MAC Service Data Units) to be sent to the same receiver concatenated in a single MPDU. This supporting function for A-MSDU within 802.11n is mandatory at the receiver. Due to Destination Address (DA) and sender Address (SA) in the sub-frame header must match to same receiver address (RA) and the transmitter address (TA) in the MAC header, A-MSDU cannot be used for broadcast & multicast.
A-MPDU: The concept of A-MPDU aggregation is to join Multiple MPDU sub frames with a single leading PHY header. A key difference from A-MSDU aggregation is that A-MPDU functions after the MAC header encapsulation process. This method offer higher MAC throughput compare to A-MSDU.
So what was happening? Since the client was on a Cisco infrastructure and using Spectralink wireless phones we were hitting an issue where A-MSDU is enabled and thus allowing multiple MSDUs to be sent to the same receiver and A-MSDU is not mandatory at the receiver end which then causes the phone to start dropping traffic from the AP after it was received. This means audio from the far end would be missing. A wireless trace in promiscuous mode would appear perfectly normal (voice packets and ACKs all accounted for). This problem only shows up with WPA/WPA2, and only when 802.11n aggregated frames are received.
Disabling 802.11n altogether can be a quick way to verify the problem is gone, but you don’t need to disable 802.11n, you just need to disable A-MSDU frame aggregation.
Follow this configuration on the WLC to resolve the issue (In this example we are disabling it on 802.11a):
config 802.11a disable network config 802.11a 11nsupport a-msdu tx priority all disable config 802.11a enable network save config
If a Cisco 1142 AP is in use, disable MPDU aggregation:
config 802.11a disable network config 802.11a 11nsupport a-mpdu tx priority all disable config 802.11a enable network save config
Since then no more one-way audio.
Reference Cisco Site Survey Guidelines for WLAN Deployment VIEW Certified Configuration Guide http://mrncciew.com/2013/04/11/a-mpdu-a-msdu/ http://community.polycom.com/t5/SpectraLink/8440-Stops-responding/td-p/18208/page/2