Multicast Considerations
over IEEE 802 Wireless MediaFuturewei Inc.2330 Central ExpresswaySanta Clara95050CAUSA+1-408-330-4586charliep@computer.orgHewlett Packard Enterprise2000 North Naperville Rd.Naperville60566ILUSA+1 630 979 1572dstanley@arubanetworks.comGoogle1600 Amphitheatre ParkwayMountain View94043CAUSAwarren@kumari.netSIGFOX425 rue Jean RostandLabege31670Francej.c.zuniga@ieee.org
Internet
Internet AreaMulticastIEEE 802 Wireless Multicast Performance issues have been observed when multicast packet
transmissions of IETF protocols are used over IEEE 802 wireless media.
Even though enhamcements for multicast transmissions have been
designed at both IETF and IEEE 802, there seems to exist a disconnect
between specifications, implementations and configuration choices.
This draft describes the different issues that have been observed,
the multicast enhancement features that have been specified at IETF
and IEEE 802 for wireless media, as well as the operational chioces
that can be taken to improve the performace of the network. Finally,
it provides some recommendations about the usage and combination of
these features and operational choices.
Many IETF protocols depend on multicast/broadcast for delivery of
control messages to multiple receivers. Multicast is used for various
purposes such as neighborhood discovery, network flooding, address
resolution, as well minimizing media occupancy for the
transmission of data that is intended for multiple receivers. IETF protocols typically rely on network protocol layering in order
to reduce or eliminate any dependence of higher level protocols on
the specific nature of the MAC layer protocols or the physical media.
In the case of multicast transmissions, higher level protocols have
traditionally been designed as if transmitting a packet to an IP
address had the same cost in interference and network media access,
regardless of whether the destination IP address is a unicast address
or a multicast or broadcast address. This model was reasonable for
networks where the physical medium was wired, like Ethernet.
Unfortunately, for many wireless media, the costs to access the
medium can be quite different. Some enhancements have been designed
in IETF protocols that are assumed to work primarily over wireless
media. However, these enhancements are usually implemented in limited
deployments and not widely spread on most wireless networks. IEEE 802 wireless protocols have been designed with certain features
to support multicast traffic. For instance, lower modulations are
used to transmit multicast frames, so that these can be received by
all stations in the cell, regardless of the distance or path
attenuation from the base station or access point. However, these
lower modulation transmissions occupy the medium longer;
they hamper efficient transmission of traffic using
higher order modulations to nearby stations.
For these and other reasons, IEEE 802 working
groups such as 802.11 have designed features to improve the
performance of multicast transmissions at Layer 2 [REF 11-15-1261-03].
In addition to protocol design features, certain operational and
configuration enhancements can ameliorate the network
performance issues created by multicast traffic. This Internet Draft details various problems caused by
multicast transmission over wireless networks. It also explains
some enhancements that have been designed at IETF and IEEE 802,
as well as the operational choices that can be taken, to ameliorate
the effects of multicast traffic. Recommendations about how to use
and combine these enhancements are also provided.This document uses the following definitions:
IEEE 802.11 Access Point. 802.11 station (e.g. handheld device). The "lowest common denominator"
data rate at which multicast and broadcast traffic is generally
transmitted. Modulation and Coding Scheme. In this section we list some of the issues related to the use of
multicast transmissions over IEEE 802 wireless technologies. Multicast traffic is typically much less reliable than unicast
traffic. Since multicast makes point-to-multipoint communications,
multiple acknowledgements would be needed to guarantee the
reception on all recipients. Because more robust MCSs have longer range but also lower data
rate, multicast / broadcast traffic is generally transmitted at
the lowest common denominator rate, also known as the basic
rate. On IEEE 802.11 networks (aka WiFi), this rate might be
as low as 6 Mbps, when some unicast links in the same cell can
be operating at rates up to 600 Mbps. Transmissions at a lower
rate require longer occupancy of the wireless medium and thus
take away from the airtime of other communications and
degrade the overall capacity. Wired multicast also affects wireless LANs when the AP extends
the wired segment; in that case, multicast / broadcast frames
on the wired LAN side are copied to WLAN. Since broadcast
messages are transmitted at the most robust MCS,
many large frames are sent at a slow rate over the air. Multicast can work poorly with the power-save mechanisms defined in
IEEE 802.11.
Both unicast and multicast traffic can be delayed by
power-saving mechanisms. A unicast packet is delayed until a STA wakes up and requests
it. Unicast traffic may also be delayed to improve power
save, efficiency and increase probability of aggregation. Multicast traffic is delayed in a wireless network if any of
the STAs in that network are power savers.
All STAs associated to the AP have to be
awake at a known time to receive multicast traffic. Packets can also be discarded due to buffer limitations in
the AP and non-AP STA. This section identifies some representative IETF protocols, and
describes possible negative effects due to performance degradation
when using multicast
transmissions for control messages. Common uses of multicast include:
Control plane for IPv4 and IPv6ARP and Neighbor DiscoveryService discoveryApplications (video delivery, stock data etc)Other L3 protocols (non-IP) The following list contains a few representative IPv4 protocols
using multicast.
ARPDHCPmDNS After initial configuration, ARP and DHCP occur much less
commonly. IPv6 makes much more extensive use of multicast, including
the following:
DHCPv6 IPv6 Neighbor Discovery Protocol (NDP) is not very tolerant of
packet losses.
In particular, the Duplicate Address Detection (DAD) process
fails when the owner of an address does not receive the multicast
DAD message from another node that wishes to own that same
address. This can result in an address being duplicated in the
subnet, breaking a basic assumption of IPv6 connectivity.
IPv6 NDP Neighbor Solicitation (NS) messages used in DAD
and Address Lookup make use of Link-Scope multicast. In
contrast to IPv4, an IPv6 Node will typically use multiple
addresses, and may change them often for privacy reasons. This
multiplies the impact of multicast messages that are associated
to the mobility of a Node. Router advertisement (RA) messages
are also periodically multicasted over the Link.
Neighbors may be considered lost if several consecutive packets
fail.Address ResolutionService DiscoveryRoute DiscoveryDecentralized Address AssignmentGeographic routing Multicast Listener Discovery(MLD) is often
used to identify members of a multicast group that are connected to
the ports of a switch. Forwarding multicast frames into a WiFi-enabled
area can use such switch support for hardware forwarding state
information. However, since IPv6 makes heavy use of multicast, each
STA with an IPv6 address will require state on the switch for several
and possibly many multicast solicited-node addresses. Multicast
addresses that do not have forwarding state installed (perhaps due to
hardware memory limitations on the switch) cause frames to be flooded
on all ports of the switch. On the Internet there is a "background radiation" of scanning
traffic (people scanning for vulnerable machines) and backscatter
(responses from spoofed traffic, etc). This means that routers
very often receive packets destined for machines whose IP addresses
may or may not be in use. In the cases where the IP is assigned to a
host, the router broadcasts an ARP request, gets back an ARP
reply, and caches it; then traffic can be delivered to the host.
When the IP address is not in use, the router broadcasts one (or
more) ARP requests, and never gets a reply. This means that it does
not populate the ARP cache, and the next time there is traffic for
that IP address the router will rebroadcast the ARP requests.
The rate of these ARP requests is proportional to the size of the
subnets, the rate of scanning and backscatter, and how long the
router keeps state on non-responding ARPs. As it turns out, this
rate is inversely proportional to how occupied the subnet is
(valid ARPs end up in a cache, stopping the broadcasting; unused
IPs never respond, and so cause more broadcasts). Depending on
the address space in use, the time of day, how occupied the
subnet is, and other unknown factors, on the order of 2000
broadcasts per second have been observed at the IETF NOCs. On a wired network, there is not a huge difference amongst unicast,
multicast and broadcast traffic; but this is not true in the
wireless realm. Wireless equipment often is unable to send this
amount of broadcast and multicast traffic. Consequently, on the
wireless networks, we observe a significant amount of dropped
broadcast and multicast packets. This, in turn, means that when
a host connects it is often not able to complete DHCP, and IPv6
RAs get dropped, leading to users being unable to use the
network. This section lists some optimizations that have been specified in
IEEE 802 and IETF that are aimed at reducing or eliminating the
issues discussed in .The AP knows the MAC address and IP address for all associated STAs.
In this way, the AP acts as the central "manager" for all the 802.11
STAs in its BSS. Proxy ARP is easy to implement at the AP, and offers
the following advantages:
Reduced broadcast traffic (transmitted at low MCS) on the
wireless medium STA benefits from extended power save in sleep mode, as ARP
requests for STA's IP address are handled instead by the AP. ARP frames are kept off the wireless medium. No changes are needed to STA implementation. Here is the specification language as
described in clause 10.23.13 of :
When the AP supports Proxy ARP "[...] the AP shall maintain a
Hardware Address to Internet Address mapping for each associated
station, and shall update the mapping when the Internet Address of
the associated station changes. When the IPv4 address being
resolved in the ARP request packet is used by a non-AP STA
currently associated to the BSS, the proxy ARP service shall
respond on behalf of the non-AP STA"
As used in this section,
a Low-Power Wireless Personal Area Network (6LoWPAN) denotes a low
power lossy network (LLN) that supports
6LoWPAN Header Compression (HC).
A 6TiSCH network
is an example of a 6LowPAN.
In order to control the use of IPv6 multicast over 6LoWPANs, the
6LoWPAN Neighbor Discovery (6LoWPAN ND)
standard defines an address registration mechanism that relies on a
central registry to assess address uniqueness, as a substitute to the
inefficient Duplicate Address Detection (DAD) mechanism found in the
mainstream IPv6 Neighbor Discovery Protocol (NDP)
.
The 6lo Working Group is now completing an
update to RFC6775.
The update enables the registration to a
Backbone Router,
which proxies for the registered addresses with the mainstream IPv6
NDP running on a high speed aggragating backbone. The update also
enables a proxy registration on behalf of the registered node, e.g.
by a 6LoWPAN router to which the mobile node is attached.
The general idea behind the backbone router concept is that in a variety
of Wireless Local Area Networks (WLANs) and Wireless Personal Area
Networks (WPANs), the broadcast/multicast domain should be controlled,
and connectivity to a particular link that provides the subnet should
be left to Layer-3. The model for the Backbone Router operation is
represented in .
LLN nodes can move freely from an LLN anchored at one IPv6 Backbone Router
to an LLN anchored at another Backbone Router on the same backbone,
keeping any of the IPv6 addresses they have configured.
The Backbone Routers maintain a Binding Table of their
Registered Nodes, which serves as a distributed database of all the LLN
Nodes. An extension to the Neighbor Discovery Protocol is introduced to
exchange that information across the Backbone Link in the reactive
fashion of mainstream IPv6 Neighbor Discovery.
RFC6775 and follow-on work are designed to address the needs of
LLNs, but the techniques are likely to be valuable on any type of
link where sleeping devices are attached, or where the use of
broadcast and multicast operations should be limited. The AP acts on behalf of STAs in various ways. In order to improve
the power-saving feature for STAs in its BSS, the AP buffers frames
for delivery to the STA at the time when the STA is scheduled for
reception. IPv6 uses Neighbor Discovery Protocol (NDP) instead of ARP.
Every IPv6 node subscribes to a special multicast address
for this purpose.
Here is the specification language from clause 10.23.13
of :
"When an IPv6 address is being resolved, the Proxy Neighbor
Discovery service shall respond with a Neighbor Advertisement
message [...] on behalf of an associated STA to an [ICMPv6]
Neighbor Solicitation message [...]. When MAC address mappings
change, the AP may send unsolicited Neighbor Advertisement
Messages on behalf of a STA."NDP may be used to request additional information
Maximum Transmission UnitRouter SolicitationRouter Advertisement, etc.
NDP messages are sent as group addressed (broadcast) frames
in 802.11. Using the proxy operation helps to keep NDP messages off
the wireless medium. It is often possible to transmit multicast control and data messages
by using unicast transmissions to each station individually. There are situations where more is needed than simply converting
multicast to unicast.
For these purposes, DMS
enables a client to request that the AP transmit multicast group
addressed frames destined to the requesting clients as individually
addressed frames [i.e., convert multicast to unicast]. Here are some
characteristics of DMS:
Requires 802.11n A-MSDUs Individually addressed frames are acknowledged and are
buffered for power save clients The requesting STA may specify traffic characteristics for
DMS traffic DMS was defined in IEEE Std 802.11v-2011 DMS requires changes to both AP and STA implementation.
DMS is not currently implemented in products.GCR (defined in ) provides greater
reliability by using either unsolicited retries or a block
acknowledgement mechanism. GCR increases probability of broadcast
frame reception success, but still does not guarantee success.For the block acknowledgement mechanism, the AP transmits each
group addressed frame as conventional group addressed transmission.
Retransmissions are group addressed, but hidden from non-11aa clients.
A directed block acknowledgement scheme is used to harvest reception
status from receivers; retransmissions are based upon these
responses.GCR is suitable for all group sizes including medium to large
groups. As the number of devices in the group increases, GCR can send
block acknowledgement requests to only a small subset of the group.
GCR does require changes to both AP and STA implementation. GCR may introduce unacceptable latency. After sending a group of
data frames to the group, the AP has do the following:
unicast a Block Ack Request (BAR) to a subset of members.wait for the corresponding Block Ack (BA).retransmit any missed frames.resume other operations which may have been delayed. This latency may not be acceptable for some traffic. There are ongoing extensions in 802.11 to improve GCR performance.
BAR is sent using downlink MU-MIMO (note that downlink MU-MIMO
is already specified in 802.11-REVmc 4.3). BA is sent using uplink MU-MIMO (which is a .11ax feature). Additional 802.11ax extensions are under consideration; see
Latency may also be reduced by simultaneously receiving BA
information from multiple clients. This section lists some operational optimizations that can be
implemented when deploying wireless IEEE 802 networks to mitigate
the issues discussed in . An ARP Sponge
sits on a network and learn which IPs addresses are actually in
use. It also listen for ARP requests, and, if it sees an ARP for
an IP address which it believes is not used, it will reply with
its own MAC address. This means that the router now has an IP to
MAC mapping, which it caches. If that IP is later assigned to an
machine (e.g using DHCP), the ARP sponge will see this, and will
stop replying for that address. Gratuitous ARPs (or the machine
ARPing for its gateway) will replace the sponged address in the
router ARP table. This technique is quite effective; but,
unfortunately, the ARP sponge daemons were not really designed for
this use (the standard one , was
designed to deal with the disappearance of participants from an
IXP) and so are not optimized for this purpose. We have to run one
daemon per subnet, the tuning is tricky (the scanning rate versus
the population rate versus retires, etc.) and sometimes the
daemons just seem to stop, requiring a restart of the daemon and
causing disruption. Some
routers (often those based on Linux) implement a "negative ARP
cache" daemon. Simply put, if the router does not see a reply to
an ARP it can be configured to cache this information for some
interval. Unfortunately, the core routers which we are using do
not support this. When a host connects to network and gets an IP
address, it will ARP for its default gateway (the router). The
router will update its cache with the IP to host MAC mapping
learnt from the request (passive ARP learning). The
distribution of users on wireless networks / subnets changes from
meeting to meeting (e.g the "IETF-secure" SSID was renamed to
"IETF", fewer users use "IETF-legacy", etc). This utilization is
difficult to predict ahead of time, but we can monitor the usage
as attendees use the different networks. By configuring multiple
DHCP pools per subnet, and enabling them sequentially, we can have
a large subnet, but only assign addresses from the lower portions
of it. This means that we can apply input IP access lists, which
deny traffic to the upper, unused portions. This means that the
router does not attempt to forward packets to the unused portions
of the subnets, and so does not ARP for it. This method has proven
to be very effective, but is somewhat of a blunt axe, is fairly
labor intensive, and requires coordination. In general, the router does not need to ARP for
hosts; when a host connects, the router can learn the IP to MAC
mapping from the ARP request sent by that host. This means that we
should be able to disable and / or filter ARP requests from the
router. Unfortunately, ARP is a very low level / fundamental part
of the IP stack, and is often offloaded from the normal control
plane. While many routers can filter layer-2 traffic, this is
usually implemented as an input filter and / or has limited
ability to filter output broadcast traffic. This means that the
simple "just disable ARP or filter it outbound" seems like a
really simple (and obvious) solution, but implementations /
architectural issues make this difficult or awkward in practice.
The broadcasts are
overwhelmingly being caused by outside scanning / backscatter
traffic. This means that, if we were to NAT the entire (or a large
portion) of the attendee networks, there would be no NAT
translation entries for unused addresses, and so the router would
never ARP for them. The IETF NOC has discussed NATing the entire
(or large portions) attendee address space, but a: elegance and b:
flaming torches and pitchfork concerns means we have not attempted
this yet. Another
obvious solution would be to put a stateful firewall between the
wireless network and the Internet. This firewall would block
incoming traffic not associated with an outbound request. The IETF
philosophy has been to have the network as open as possible /
honor the end-to-end principle. An attendee on the meeting network
should be an Internet host, and should be able to receive
unsolicited requests. Unfortunately, keeping the network working
and stable is the first priority and a stateful firewall may be
required in order to achieve this. Many of the causes of performance degradation described in earlier
sections are also observable for wireless media other than 802.11. For instance, problems with power save, excess media occupancy, and
poor reliability will also affect 802.15.3 and 802.15.4. However,
802.15 media specifications do not include mechanisms similar to
those developed for 802.11. In fact, the design philosophy
for 802.15 is oriented towards minimality, with the result that many
such functions would more likely be relegated to operation within higher
layer protocols. This leads to a patchwork of non-interoperable and
vendor-specific solutions. See for some additional
discussion, and a proposal for a task group to resolve similar issues,
in which the multicast problems might be considered for mitigation. This section provides some recommendations about the usage and
combinations of the multicast enhancements described in
and .(FFS) This document does not introduce any security mechanisms, and does
not have any impact on existing security mechanisms.This document does not specify any IANA actions.
This document has benefitted from discussions with the following people,
in alphabetical order:
Pascal Thubert
LLC Proposal for 802.15.4"IEEE 802 Wireless"https://mentor.ieee.org/802.15/dcn/15/15-15-0521-01-wng0-llc-proposal-for-802-15-4.pptxMultiplexing of Acknowledgements for Multicast
Transmission"IEEE 802 Wireless"https://mentor.ieee.org/802.11/dcn/15/11-15-0800-00-00ax-multiplexing-of-acknowledgements-for-multicast-transmission.pptxPart 11: Wireless LAN Medium Access Control (MAC) and
Physical Layer (PHY) Specifications"IEEE 802 Wireless"http://standards.ieee.org/getieee802/download/802.11-2012.pdf
(includes 802.11v amendment)IEEE 802.11 multicast properties"IEEE 802 Wireless"https://mentor.ieee.org/802.11/dcn/15/11-15-1161-02-0arc-802-11-multicast-properties.pptArp Sponge"AMS"https://ams-ix.net/downloads/arpsponge/3.12.2/arpsponge-3.12.2/arpsponge.txtProxy ARP in 802.11ax"IEEE 802 Wireless"https://mentor.ieee.org/802.11/dcn/15/11-15-1015-01-00ax-proxy-arp-in-802-11ax.pptxPart 11: Wireless LAN Medium Access Control (MAC) and
Physical Layer (PHY) Specifications Amendment 2: MAC Enhancements
for Robust Audio Video Streaming"IEEE 802 Wireless"http://standards.ieee.org/getieee802/download/802.11aa-2012.pdfMulticast on 802.11"IAB, IEEE 802 Wireless"https://www.iab.org/wp-content/IAB-uploads/2013/01/multicast-problem-statement.pptx