Note: Descriptions are shown in the official language in which they were submitted.
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
TITLE OF THE INVENTION
A POWER-SAVE METHOD FOR 802.11 MULTICAST PAGING APPLICATIONS
RELATED APPLICATION
The present system is related to United States Patent Application Serial No.
10/723,328 by Griswold, et. al. entitled "OPTIMIZING 802.11 POWER-SAVE FOR IP
MULTICAST GROUPS" filed on November 26, 2003, the entirety of which is hereby
incorporated by reference.
BACKGROUND
The present invention relates generally to wireless broadcast transmissions
and more
particularly to a method for power consumption by an IEEE 802.11 client
station containing
both a Voice-over-Internet Protocol and an Internet Protocol paging
application.
An IEEE 802.11 client station having both Voice-over-Internet Protocol (VoIP)
and
Internet Protocol paging applications must receive unicast VoIP messages,
broadcast Address
Resolution Protocol, or ARP, messages, and IP Multicast "paging" messages. In
a typical
computer network, unicast VoIP operation is a communications transmission
between a single
sender and a single receiver over a network.
In contrast to the unicast transmission of VoIP, paging is typically a
multicast
operation. Multicast is a technique that allows data, including data
encapsulated in packet
form, to be simultaneously transmitted to a selected set of destinations. Some
networks, such
as Ethernet, support multicast by allowing a network interface to belong to
one or more
multicast groups. In some applications of multicast, identical data is
simultaneously
transmitted to a selected set of destinations in a network, without obtaining
acknowledgement
that the transmission was received by the recipient devices. Multicast
transmissions are also
capable of being sent to a multicast address, which is typically a routing
address that is used
to address, i.e., designate, simultaneously all the computers in a group and
usually identifies a
group of computers that share a common protocol, as opposed to a group of
computers that
share a common network.
Thus, while multicast has a single sender and multiple recipients, unicast has
but a
single sender and a single recipient. Similar to multicast, broadcast
operation is the
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
transmission of signals that may be simultaneously received by stations that
typically make
no acknowledgement of the receipt of the transmission.
Address Resolution Protocol is a communications protocol used to map a
selected
Internet Protocol (IP) address to a preset Media Access Control (MAC) address.
ARP
matches higher-level IP addresses to the physical addresses of the destination
host. It uses a
lookup table (called an ARP cache) to perform the translation. When the
address is not found
in the ARP cache, a broadcast is sent out on the network with a special format
called the ARP
request. If one of the machines on the network recognizes its own IP address
in the request, it
sends an ARP reply back to the requesting host. The reply contains the
physical hardware
(MAC) address of the receiving host. The requesting host stores this address
in its ARP
cache so that all subsequent datagrams to this destination IP address can be
translated to a
physical address.
A Traffic Indication Message (TIM) may be found in an 802.11 Beacon Frame
which
is transmitted from an 802.11 access point (AP). In essence, a TIM is used by
access points
to tell power-save client devices that one or more unicast packets are waiting
for them. A
TIM consists of an array of bit flags, with one bit flag for each client
associated with the AP.
An AP sets a station's TIM bit to "1" if it has one or more frames buffered
for the client. An
AP sends Beacons at fixed intervals. If an 802.11 power-save station only
needs to receive
unicast frames, it can wake up to receive a Beacon, check its TIM bit, and
immediately return
to a "sleep" mode if the TIM bit is set to "0".
A Delivery Traffic Indication Message (DTIM) is contained in DTIM Beacons sent
by
access points. If a power-save station associated with an AP, then the AP
buffers broadcast
and multicast frames and sends the buffered frames to associated stations
immediately
following a DTIM Beacon. If a power-save station must receive broadcast or
multicast
frames, then it must wake up for each DTIM Beacon transmission and it must
stay awake
until the last broadcast/multicast frame is transmitted, following the DTIM
Beacon.
Proxy ARP refers to a method wherein an AP sends an ARP Reply, on behalf of an
associated station, when the AP receives and ARP Request directed to the
associated station.
Proxy ARP enables a power-save station to sleep during the broadcast/multicast
period,
following a DTIM Beacon, if it does not need to receive any of other multicast
or broadcast
frames.
Previous attempts to implement proxy ARP 802.11 VoIP phone applications have
been
met with limited success. Such uses of the proxy ARP has enabled the VoIP
phone to sleep,
or operate in power-save protocol mode, during lengthy broadcast/multicast
transmissions.
2
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
However, this mechanism, by itself, is not usable for an 802.11 VoIP/Paging
device insofar as
the paging application requires the phone to remain active following the DTIM
to receive
other multicast transmissions.
A problem associated with an 802.11 client device supporting both VoIP and
paging
applications is that the radio power consumption in an 802.11 VoIP phone is
much higher
than the radio power consumption in a cellular telephone. The greater drain on
energy has
limited the application of both VoIP and paging into a single device. Power-
save stations
must stay awake, for the duration of the multicast delivery period, to receive
multicast
transmissions. As a result, broadcast/multicast transmissions can reduce
battery life in
power-save stations.
Thus, there exists a need for a system and method to provide an effective
power-save
solution for combined VoIP/paging applications.
3
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
SUMMARY OF INVENTION
The present innovation addresses the above-noted deficiencies and others, and
teaches
a system and method for facilitating power-savings in an IEEE 802.11
VoIP/Paging device.
In accordance with the present invention, there is taught a power-save system
for
wireless data transmission. The access point stores a list of IP multicast
addresses for each
associated station, wherein each address in the list corresponds to an IP
multicast group. The
access point also maintains a set of IP multicast groups, wherein each
multicast group in the
set is identified by an IP multicast address. At least one station associated
with the access
point is a member of each of the multicast groups in the access point's set of
multicast
groups. Each multicast group is classified as either "active" or "power-save".
An access
point classifies a multicast group as "active" if all stations in the
multicast group are
operating in active mode; otherwise, the AP classifies a multicast group as
"power-save" if at
least one station in the multicast group is operating in power-save mode. On
802.11 links, an
access point transmits multicast packets, which are destined to an active
multicast group,
immediately; an access point buffers multicast packets, which are destined to
a power-save
multicast group, until the next delivery traffic indication message (DTIM)
Beacon; and an AP
does not transmit multicast packets, which are not destined to an active or
power-save
multicast group.
The access point includes a multicast traffic indication message (MTIM)
element in
each transmitted DTIM Beacon. The MTIM element comprises a list of zero or
more entries.
The MTIM element identifies power-save IP multicast groups, for which downlink
multicast
frames are buffered in the access point. When a power-save station is a member
of an IP
multicast group identified by an entry in the MTIM element, the station must
remain active to
receive all power-save multicast transmissions sent following the DTIM Beacon.
In one aspect of the present system, the MTIM element is comprised of a list
of zero
or more IP multicast addresses. In another aspect of the present system, the
MTIM element is
comprised of a list of zero or more multicast MAC addresses, where each MAC
address
corresponds to an IP multicast address. The multicast MAC address is suitably
generated by
concatenating a 3-byte hex 01005E prefix with the low-order 3-bytes of the
multicast IP
address. In yet another aspect of the present system, the MTIM element is
comprised of a list
stations that must stay awake, following a DTIM Beacon transmission, to
receive multicast
transmissions. The list of stations in the MTIM element can be structured as
an array of bit
flags, where each MTIM bit flag corresponds to the association identifier of a
station and the
4
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
AP sets the MTIM bit flag for a station to '1' if the station is participating
in a multicast
group where multicast frames are buffered for transmission following a DTIM
Beacon.
Still another aspect of the present system is the MTIM element notifies the
station in
an IP multicast group to stay active following the transmission of the
delivery traffic
indication message to receive downlink multicast frames buffered for the IP
multicast group.
Still yet another aspect of the present system is the MTIM element notifies
the associated
station that the access point supports the MTIM method and enables the
associated station to
selectively ignore useless multicast transmissions.
A further aspect of the present system is the combination of the multicast
traffic
indication message element with an existing Proxy ARP mechanism, to provide an
effective
power-save solution for combined VoIP/Paging applications. Further in
accordance with the
present invention, there is taught a power-save system for wireless data
streaming. The
system includes an access point that provides a wireless data link to at least
one associated
client. The access point is placed in wired data communication with a data
network. The
access point includes memory that stores an IP address and MAC address for
each associated
client station. The access point further includes memory that stores a list of
enabled IP
multicast addresses and a MAC address for each associated client station. The
system also
includes registration means adapted for registering each associated client
with the access
point. The system includes means adapted for registering IP group membership
information
of each associated client with the network infrastructure. The system
incorporates a receiver
associated with the access point, the receiver including means adapted for
receiving a data
stream from the selected data network. The system further includes means
adapted for
selectively notifying each associated client station of the data stream
according to the
relationship data. The access point then forwards the data stream from the
access point to
each notified associated client. The system also includes link maintenance
means adapted for
communicating link data between the access point and the associated client.
The link data
represents an ongoing, active wireless data streaming link between the access
point and the
associated client.
One aspect of the present system is that the data stream includes VoIP and
paging
data. Another aspect of the present system provides that the link maintenance
means further
includes a system adapted for communicating pending multicast transmissions to
client
stations. In yet another aspect of the present system, the access point
includes means adapted
for determining membership of each associated station in a streaming multicast
data group.
5
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
Further in accordance with the present invention, there is taught a power-save
method
on a selected network comprising an access point adapted to provide wireless
data link to at
least one associated client, the access point adapted to be placed in wired
data communication
with the selected network. The access point stores, in an associated memory,
an IP address
and a MAC address corresponding to each associated client. The access point
stores, in an
associated memory, a list of multicast addresses and a MAC address
corresponding to each
associated client. Each client is registered with the access point.
Relationship data
associating a MAC address, an IP address, and a list of multicast addresses,
for each
registered client is stored in the memory. The access point receives a data
stream from the
selected data network. The access point then selectively notifies each
associated client of the
data stream according to the relationship data. The access point signals a
client when it has
one or more pending multicast transmissions, wherein the destination multicast
address is in
the client's list of multicast addresses. The client then stays awake to
receive the multicast
transmissions.
One aspect of the subject invention is that a data stream includes VoIP and
paging
data. Yet another aspect of the present system is a teaching, wherein an
access point
determines membership of each associated station in a streaming multicast data
group.
Yet further in accordance with the present invention, there is taught a
computer-
readable medium for wireless data streaming. The computer readable medium
includes an
access point adapted to provide a wireless data link to at least one
associated client, wherein
the access point is placed in wired data communication with a selected data
network. The
computer-readable medium also includes means adapted for storing at least one
of IP address
data and MAC address data for each associated client in a memory associated
with the access
point. The computer-readable medium also includes means adapted for storing a
list of
multicast address and a MAC address for each associated power-save client in a
memory
associated with the access point. The computer-readable medium further
includes registration
means adapted for registering one associated client with the access point. The
access point
includes means adapted for storing, in the memory, relationship data
associating a MAC
address and IP address for each registered client. The access point includes
means adapted
for storing, in the memory, relationship data associating a MAC address and a
list of IP
multicast addresses for each registered client. The computer readable medium
teaches means
adapted for receiving, on a receiver associated with the access point, a data
stream from the
selected data network. The computer readable medium also teaches means adapted
for
selectively notifying each associated client station of the data stream
according to the
6
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
relationship data. The computer readable medium further includes link
maintenance means
adapted for communicating link data between the access point and the
associated client,
wherein the link data represents an ongoing, active wireless data streaming
link between the
access point and the associated client.
One advantage of the subject invention is that a data stream includes VoIP and
paging
data. Another advantage of the present computer readable medium is in the
teaching of a
system for communicating link open information to the associated client. Yet
another
advantage of the present system is a teaching, wherein an access point
determines
membership of each associated station in a streaming multicast data group.
Still yet further in accordance with the present invention, there is taught a
computer
implemented power-save method for wireless data streaming. An access point
stores, in an
associated memory, an IP address and a MAC address corresponding to each
associated
client. An access point also stores, in an associated memory, a list of IP
addresses and a
MAC address corresponding to associated clients. Each client is registered
with the access
point. Relationship data associating a MAC address and an IP address for each
registered
client is stored in the memory. Relationship data associating a list of
multicast addresses and
a MAC address for registered clients is also stored in the memory. The access
point receives
a data stream from the selected data network. The access point then
selectively notifies each
associated station of the data stream according to the relationship data.
One advantage of the subject invention is that a data stream includes VoIP and
paging
data. Yet another advantage of the present system is a teaching, wherein an
access point
determines membership of each associated station in a streaming data group.
Still yet another
advantage of the present system is the teaching of classification of the
streaming data group
into either a power-save or active group.
Further in accordance with the present invention, there is taught a power-save
method
for a network with an access point and an associated power-save client. The
access point
buffers wireless data that includes a unicast frame and a multicast frame. A
periodic
scheduled beacon message is transmitted with a unicast indication element and
a multicast
indication element. The unicast element instructs a client to remain awake to
receive a
buffered unicast frame, which includes a destination MAC address. The
multicast element
instructs a client to remain awake following the beacon to receive a buffered
multicast frame,
which includes a destination multicast address designating a multicast group
of which the
client is a member. At least one beacon message is designated as a multicast
delivery beacon.
The buffered multicast frame is transmitted following the designated multicast
beacon. The
7
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
multicast element contains a list of entries, each entry corresponding to
either a multicast
MAC address, multicast IP address, or client identifier.
Still other advantages of the present invention will become readily apparent
to those
skilled in this art from the following description wherein there is shown and
described a
preferred embodiment of this invention, simply by way of illustration of one
of the best
modes suited for to carry out the invention. As it will be realized, the
invention is capable of
other different embodiments and its several details are capable of
modifications in various
obvious aspects all without from the invention. Accordingly, the drawing and
descriptions
will be regarded as illustrative in nature and not as restrictive.
8
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings incorporated in and forming a part of the
specification,
illustrate several aspects of the present invention, and together with the
description serve to
explain the principles of the invention. In the drawings:
Figure 1 is a diagram illustrative of an IEEE 802.11 network;
Figure 2 is a flow chart illustrating the Address Resolution Protocol aspect
of the
present invention; and
Figure 3 is a flow chart illustrating the Multicast Traffic Indication Message
of the
present invention.
9
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
DETAILED DESCRIPTION OF THE EMBODIMENTS
The following includes examples of various embodiments and/or forms of
components that fall within the scope of the present system that are
advantageously used for
implementation. Of course, the examples are not intended to be limiting and
other
embodiments may be implemented without departing from the spirit and scope of
the
invention. Specifically, a power-save station is suitably configured to
eliminate the need to
stay awake to receive all power-save multicast/broadcast frames sent by its
parent AP
following a DTIM beacon.
As described herein, the present system and method has two primary components:
I. Proxy Address Resolution Protocol (Proxy ARP), and
II. Multicast Traffic Indication Message (MTIM).
Each of the components are discussed separately and in detail below. It will
be
appreciated that the mechanisms described herein capable of implementation
individually or
combined. As well, an artisan will appreciate that the system and method
described herein is
not limited to IEEE 802.11 Voice-over Internet Protocol (VoIP) and multicast
Paging
applications. However, for convenience and demonstrative purposes, the
described
embodiments are directed to a VoIP/Paging 802.11 application.
By way of background, Figure 1 illustrates a simplified system diagram of a
typical
network 100 in accordance with the present system and method. The network 100
includes
wireless stations 105-130 suitably configured and connected to access services
and receive
multicast transmission on the network 100 via an access point 135. It will be
appreciated that
the wireless stations 105-130 are capable of transmitting and/or receiving
data packets via a
wireless network such as any one of numerous wireless devices, including, but
not limited to,
a laptop/notebook portable computer having a Cardbus network adapter suitable
for wireless
communication with a wired network, an electronic tablet having a suitable
wireless network
adapter, a handheld device or personal digital assistant containing a suitable
wireless network
adapter for communicating to a wired network or the like.
The Basic Service Set (BSS) 140 of the access point 135 is shown. Wireless
stations
105-130 are suitably configured to communicate with the access point 135 so
long as they
remain in the BSS 140. In other words, as members of the BSS 140, wireless
stations 105-
130 are physically located within the access point 135 wireless communication
coverage
area.
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
A backbone 145 is used to connect the access point 135 and a network server
150 via
a physical wired connection 155. Typically, the backbone is a wired network
connection such
as Ethernet. An artisan will appreciate that any suitable means, wired or
wireless, as well as
any networking protocol known in the art, are suitably employed without
departing from the
spirit and scope of the present system and method.
During normal operation of the system 100, the network server 150 is used
together
with the access point 135 to authenticate wireless stations 105-130. While the
aforementioned network 100 illustrates a single access point and six wireless
stations, one of
skill in the art can readily appreciate that a network may comprise any number
of access
points and any number or type of wireless stations.
It will be appreciated that the relative position of wireless stations 105-130
may
change with respect to each other and to the access point 135. However,
provided the
wireless stations 105-130 remain within the coverage area of the BSS 140, they
will remain
members of the BSS 140 of the access point 135.
In operation, an IP multicast stream 160 is received by the system 100 from a
remote
location. It will be appreciated by one of ordinary skill in the art that a
location of the
sender(s) of the multicast stream 160 is not particularly relevant to the
present system. In
other words, the present system and method is configured to operate as well
with a local
sender as with an extremely distant sender.
The wireless stations 105, 110 and 115 are suitably configured into a
multicast group
165. As well, wireless stations 120, 125 and 130 are suitably configured into
a second
multicast group 160. Of course, the generation of multicast groups is
accomplished in
accordance with the above-referenced related U.S. patent application.
The wireless stations 105, 115, and 125 are configured to subscribe to the
multicast
stream IP multicast stream 160 and are in active mode. Conversely, wireless
stations 110,
120 and 130 shown are in sleep or power-save mode. As illustrated, wireless
stations 110,
120 and 130 are not subscribers to the multicast stream IP multicast stream
160.
In accordance with earlier implementations, upon receipt of the IP multicast
stream
160 by the access point 135, the access point 135 determines the mode, power-
save or active,
of all stations contained within the BSS 140. In this example, the access
point 135 is suitably
configured to determine the mode of all stations in the individual multicast
groups 165, 170.
Wireless stations 110, 120 and 130 are in power-save mode while all remaining
stations 105, 115 and 125 are operating in active mode. In accordance with
earlier systems,
because at least one station 110, 120 or 130 is operating in power-save or PSP
mode, the
11
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
access point 135 would automatically batch and queue all incoming multicast
packets 160
until the next Delivery Traffic Indication Message (DTIM) beacon is sent to
the BSS 140.
However, in accordance with the method and system of the above-mentioned
related
application, the system is suitably configured to establish multicast groups
165, 170 in order
to streamline delivery of multicast messages. In such circumstances, each
individual group
would adopt the characteristics of the BSS of earlier implementations.
I. PROXY ARP POWER-SAVE MECHANISM
Referring now to Figure 2, there is shown the Address Resolution Protocol
component
200 of the present invention, wherein a Proxy ARP server is suitably
configured to respond to
address resolution requests targeted to an associated client station. As will
be understood by
those skilled in the art, ARP matches higher-level IP addresses to the
physical (i.e, Media
Access Control, or MAC) addresses of the destination host. When an IP address
is not found
in the ARP cache, a broadcast is sent out on the network with a special format
called an ARP
request. When one of the machines on the network recognizes its own IP address
in the
request, it sends an ARP reply back to the requesting host. The reply contains
the physical
hardware address of the receiving host. The requesting host stores this
address in its ARP
cache so that all subsequent datagrams to this destination IP address can be
translated to a
physical address. Proxy ARP enables an access point to respond to the ARP
request for an
associated station in power-save protocol operation.
For explanatory purposes, Figure 2 shows, via steps 205-235, the method
wherein the
Proxy ARP server learns the associated client station address. Beginning at
step 205, the
Proxy ARP server in the access point determines whether it already has the
address for the
associated or associating client. When the Proxy ARP server determines at step
205 that the
client address is known, the Proxy ARP server identifies IP/MAC address
bindings for the
associated station at step 225. The skilled artisan will appreciate that the
storage of the
IP/MAC address bindings enables the Proxy ARP server to properly function in
accordance
with the subject method. It will be appreciated that any one of the 802.11
client stations 105-
130 will not need to receive broadcast ARP requests when the Proxy ARP server
in the parent
access point 135 is already aware of that client's IP address.
In the event that the Proxy ARP server has determined, at step 205, that the
Proxy
ARP server does not know the client address, the Proxy ARP server then
proceeds to step
210, wherein it is determined that the client has not sent any IP packets or
previously
12
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
responded, through the access point, to an ARP request. A negative
determination at step 210
prompts the Proxy ARP server, at step 230, to snoop IP and/or ARP packets sent
by the client
to gain knowledge of the client address. For example, the access point 135
automatically
determines the IP address of a client 105, by snooping IP and ARP packets sent
by that client
105. After ascertaining the client address, the Proxy ARP server proceeds to
store the address
in the IP/1VIA.C address bindings for associated stations at step 225.
When the client station has not sent any IP or ARP packets at step 210, the
Proxy ARP
server progresses to step 215, wherein the Proxy ARP server determines that
the client station
has roamed from a previous access point to the current access point. Upon such
a
determination, the Proxy ARP server proceeds to step 220, wherein the IP
address associated
with the client station is transferred from the old access point to the new
access point via a
context transfer protocol. The IP address of any or all of the wireless
clients 105-120 are
transferred from the old access point 135 to the new access point, via the
context transfer
protocol when the wireless client or clients 105-120 roam from the current BSS
140. Once
the IP address has been transferred, the Proxy ARP server proceeds to store
the IP/MAC
address bindings at step 225.
Returning to step 215, when the Proxy ARP server determines that the client
station
has not roamed from a previous access point, the Proxy ARP server gathers the
client station
IP address, at step 235, through the registration process with the parent
access point by
including an IP address element in an association or re-association message.
For example,
upon roaming from BSS 140 into a new access point's (not shown) BSS (not
shown), wireless
clients 105-120 register their corresponding IP addresses with their new
parent access point
by including an IP address in their association or re-association request
messages. Upon
receipt of the client station IP address, the Proxy ARP server proceeds to
store the IP/MAC
address bindings at step 225.
Proceeding with the method illustrated in the flow chart of Figure 2, the
access point
receives a broadcast ARP request on its Ethernet port at step 240. The access
point then, at
step 245, searches its IP/MAC address bindings for an IP address that matches
the target IP
address embedded within the body of the ARP request. Upon the determination,
at step 250,
that the access point cannot find a match for the target IP address in the
IP/MAC address
bindings it stores, the access point then discards the ARP request at step
255.
When the access point determines that a matching IP address is found at step
250, the
access point then determines whether a Proxy ARP server is responding to the
ARP request
for the target IP address at step 260. When a Proxy ARP server is responsible
for responding
13
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
to ARP requests for the target IP address, the Proxy ARP server transmits an
ARP reply
message with the MAC address corresponding to the target IP address, on its
Ethernet link, at
step 265.
If, at step 260, the Proxy ARP server determines that it is not responding to
the ARP
request for an associated client station, the Proxy ARP server translates the
destination
broadcast MAC address in the ARP Request to the unicast MAC address that
corresponds to
the target IP address at step 270. The resulting unicast ARP request frame is
subsequently
forwarded, at step 275, to the target station as any other (e.g. power-save)
unicast message.
Upon receipt of the unicast ARP request, the target station generates an ARP
Reply. For
example, upon receiving an ARP request targeted for station 105, the Proxy ARP
server (not
shown) within the access point 135 is configured to translate the broadcast
MAC address
contained within the ARP request into a unicast MAC address corresponding to
the target IP
address in order to transmit the message to station 105.
A power-save 802.11 station is not required to remain in an active state to
receive
multicast/broadcast transmissions if i) the Proxy ARP server within the access
point is
generating proxy ARP replies for the client; ii) the client does not have any
other pending
multicast messages, and iii) the client is aware of the proxy ARP service. In
order to facilitate
the awareness of the client for the proxy ARP service, the access point is
suitably configured
to "advertise" that the access point is providing the service via a Proxy ARP
flag contained
within a proprietary 802.11 information element. The proprietary information
element is
suitably included in an 802.11 Beacon and/or association or re-association
response
messages.
An artisan will appreciate that in accordance with 802.11 network protocol, a
power-
save VoIP station, in standby mode, must wake up periodically to receive
beacons, even if it
does not need to receive multicast/broadcast frames. In order to notify a
station that it has
pending multicast/broadcast messages, a Beacon TIM bit, which corresponds to
the station's
Association ID (AID), is set when the access point has frames buffered for the
particular
station. Accordingly, a station operating in power-save mode, which does not
need to receive
multicast/broadcast, may immediately return to sleep after it receives a
beacon with its TIM
3o bit set "OFF".
14
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
II. MULTICAST TIM POWER-SAVE MECHANISM
As will be appreciated by those skilled in the art, the above Proxy ARP method
is
useful for a VoIP client station that receives unicast transmissions. A purely
VoIP operating
station greatly benefits from the lower power-consumption when using the Proxy
ARP
method described above. However, when the client station is both a VoIP
station, as well as a
paging station, the above method results in missed multicasts for the paging
application. For
instance, if a dual-application station does not stay awake to receive power-
save
broadcast/multicast transmission, it will miss IP multicast frames directed to
the Paging
Application. This section describes the present system and method whereby an
access point
uses a Multicast Traffic Indication Message (MTIM) to indicate that it has
pending IP
multicast frames buffered for stations in respective power-save multicast
groups. For
example, the access point 135, through the use of a MTIM, alerts stations 105,
110 and 115 in
a power-save multicast group 165 of buffered IP multicast frames.
It will be understood by those skilled in the art that an IP multicast group,
such as IP
groups 165 and 170 of Figure 1, are identifiable by and associated with a
single IP multicast
address. Furthermore, a one-to-one correspondence between IP multicast
applications and IP
multicast addresses exists in most configurations and applications.
Referring now to Figure 3, there is shown a flow chart of an embodiment of the
methodology 300 adapted to incorporate a Multicast Traffic Indication Message
into a
multicast transmission network in accordance with a disclosed embodiment.
Initially, at step
305, the access point observes Internet Group Management Protocol (IGMP)
Membership
messages from associated stations to determine membership in IP multicast
groups. As will
be appreciated by those skilled in the art, in the event that a station has
roamed from a
previous access point to a new access point, the new access point transmits an
IGMP general
query to solicit membership reports, thereby identifying in which IP multicast
groups the
roaming station subscribes. Alternatively, group membership information is
stored, e.g.,
cached, in the network infrastructure and transferred to the new parent access
point when a
station roams using a context transfer protocol.
For example, the parent access point 135 IGMP Membership Report Messages, sent
by associated stations 105-120 to determine each station's membership in a
specific IP
multicast group, i.e, groups 165 and 170. It will be understood by those
skilled in the art that
the use of two multicast groups is for exemplary purposes only and the subject
invention is
not limited solely to two groups. Alternatively, the access point 135 is
suitably capable of
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
sending an IGMP general query to solicit membership reports when a station
(e.g. 105-120)
roams from its home BSS 140.
At step 310, the access point identifies stations corresponding to IP
multicast group
registration. In other words, as described in the above-identified related
application, the
system identifies specific multicast groups and their corresponding member
stations. The
access point then classifies each multicast group having an associated station
as to the type,
such as active or power-save, of the identified multicast groups at step 315.
For example,
once the IP multicast groups 165, 170 are identified, the access point 135
classifies each IP
multicast group 165, 170 as active or power-save. A multicast group is
classified as active if
all stations in the group are operating in 802.11 active mode. Otherwise, an
IP multicast
group is classified as power-save; e.g. if at least 1 client or station in the
group is operating in
802.11 power-save mode. It will be appreciated that the IEEE 802.11
specification defines
the mechanics of an access point to determine the active/power-save mode of
associated
stations.
Each multicast group having an associated station is then identified by the
access
point as to type and number of associated stations at step 320. Concurrently,
at step 320 the
type and station count of each IP multicast group having an associated station
is stored by the
access point. In reference to Figure 1, the access point 135 stores the type,
active or power-
save, and station count for each IP multicast group 165, 170. As well, the
access point 135
stores a list of IP multicast addresses for each associated station 105-120.
Next, the access point determines, at step 325 if the corresponding multicast
group
station count is '0'. If a determination that the station count is '0' is made
at step 325, the
access point realizes that it has no associated stations in the pre-identified
multicast group, for
example as a result of disassociation of a station, and discards the subject
multicast message,
or downlink IP multicast frames, at step 330. It will be appreciated that the
station count for
each multicast group may be incremented or decremented when any of the
stations 105-120,
in a multicast group 165 and 170 associates, disassociates, joins a multicast
group, leaves a
multicast group, or changes its power-save state.
When the access point determines at step 325 that the station count is greater
than'0',
the access point then determines, at step 330, if the target multicast group
has all stations in a
constantly active mode. When the access point determines all associated
stations in the target
IP multicast group are in active mode, the access point immediately forwards
the IP
multicast/broadcast traffic at step 340 to the target IP multicast group. In
operation, the
access point 135 immediately sends an IP multicast packet destined to an
active multicast
16
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
group 165, without waiting for a DTIM beacon. If at step 335, the access point
determines
that at least one station in the target IP multicast group is operating in
power-save, the access
point will buffer and queue the multicast/broadcast traffic at step 345. Thus,
the access point
135 buffers a multicast packet destined to a power-save multicast group 170,
until the next
DTIM beacon.
The system proceeds to step 350, where the access point determines if a
Delivery
Traffic Indication Message is due to be sent. If the time has not yet come for
a DTIM Beacon
to be sent, the access point returns to buffering and queuing incoming IP
multicast packets at
step 345. When a DTIM Beacon is due to be transmitted by the access point at
step 350, the
access point transmits, at step 355, a DTIM Beacon including a MTIM element.
The access point 135 includes a unique MTIM information element in each DTIM
Beacon. The MTIM functions to notify stations 120-130, in a power-save IP
multicast group
170, to stay awake following a DTIM beacon in order to receive downlink
multicast frames
buffered for the respective group 170. The MTIM is also functioning to notify
stations 105-
120 that the access point 135 supports the MTIM method, thus prompting
stations 105-120 to
selectively skip useless power-save multicastlbroadcast transmissions.
The MTIM element consists of a list of zero or more entries. The MTIM entries
are
capable of two alternative implementations. First, the MTIM lists pending
multicast
addresses for which downlink multicast frames are buffered in the access point
135. Thus,
the stations, upon waking to receive the DTIM/MTIM Beacon, review the list of
pending
addresses to determine if any of the pending addresses correspond to an IP
multicast address.
Alternatively, the MTIM lists only those stations for which downlink multicast
frames are
buffered in the access point 135. Thus, the station, upon receipt of the
DTIM/MTIM Beacon,
reviews the list of stations to determine if the station has pending multicast
messages. In the
preferred embodiment, an MTIM is structured exactly as an 802.11 TIM. An MTIM
consists
of an array of bit flags, where each bit flag corresponds to the Association
Identifier (AID) of
an associated station. An access point sets an MTIM bit for a station to " 1 "
if the station is a
member of a multicast group and the access point has frames buffered for that
multicast
group.
A VoIP/Paging station, 105-120, configured to support the Proxy ARP and MTIM
mechanisms, wakes for each DTIM beacon. Moreover, such a station 105-120
returns to
sleep (e.g. power-save) immediately without receiving useless downlink
multicast/broadcast
frames, if the station's TIM bit is representative of an "OFF" state, and the
station is not a
member of a multicast group (e.g. 165, 170) identified by an entry in the
MTIM.
17
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
One skilled in the art will appreciate that if an MTIM is comprised of a list
of
multicast addresses, then an MTIM entry is configured as an IP multicast
address or the
corresponding multicast MAC address. It will further be understood by the
skilled artisan
that a multicast MAC address, for an IP multicast group, is generated by
concatenating a 3-
byte hex 01005E prefix with the low-order 3 bytes of the multicast IP address.
Therefore, a
station is capable of deriving the MAC address from the IP address. Because
Multicast MAC
addresses are explicitly enabled on client LAN interface cards (e.g. Ethernet
or 802.11), it
will further be appreciated that a management interface exists for a client
station to determine
multicast group membership.
It will be understood by those skilled in the art that the access point
programming and
methodology, including logic and data structures, used to support the MTIM
mechanism are
suitably identical to those needed to support active IP multicast groups, as
discussed in the
above-identified related United States patent application.
It will be understood by the skilled artisan that there is an infrequent need
to transmit
"legitimate" broadcast packets for all associated stations to receive. The AID
0 bit in the
standard 802.11 TIM does not distinguish between broadcast and multicast, so,
with an
MTIM present, the AID 0 bit indicates to the MTIM-aware client to monitor the
MTIM for
further information. In the event that an actual broadcast is intended, the
AID 0 bit in the
MTIM should be set to indicate the broadcast. Such an indication would result
in all MTIM-
aware clients remaining awake to receive the necessary broadcast. Setting the
AID 0 bit in
the MTIM is preferable to just setting the all per-client MTIM bits, since the
AID 0 bit is
insensitive to any transient IP multicast membership changes made by the
client.
Returning to Figure 3, the system progresses to step 360, where a
determination is
made that the station is a member of an IP multicast group identified by an
entry in the
MTIM. Upon this positive determination, the station remains in an active
state, at step 375,
to receive the buffered IP multicast/broadcast traffic that the access point
has queued for
transmittal. When it is determined at step 360 that the station is not
identified by an entry in
the MTIM, the station verifies that the traffic indication message bit
corresponding to that
station is set to 'OFF' at step 365. When the traffic indication message bit
is set to 'OFF', the
station returns to power-save protocol operation at step 370. In the event
that the traffic
indication bit is not set to'OFF' at step 365, the station remains awake at
step 375 to receive
the buffered IP multicast traffic. The skilled artisan will appreciate that
if, upon receipt of the
buffered IP multicast/broadcast traffic, the station realizes it is not an
intended recipient, the
traffic is discarded and the station will return to power-save protocol
operation.
18
CA 02565534 2006-11-02
WO 2005/114882 PCT/US2005/016306
The present methodology is capable of implementation by hardware, software or
a
combination of both. The subject invention need not and is not intended to be
limited to the
embodiments described above. While the present method has been illustrated by
the
description of embodiments thereof, and while the embodiments have been
described in
considerable detail, it is not the intention of the applicants to restrict or
in any way limit the
scope of the appended claims to such detail. Additional advantages and
modifications will
readily appear to those skilled in the art. Therefore, the system, in its
broader aspects, is not
limited to the specific details, the representative apparatus, and
illustrative examples shown
and described. Accordingly, departures may be made from such details without
departing
from the spirit or scope of the applicant's general inventive concept.
19