Native 802.11 Framework for IEEE 802.11 Networks

Windows Platform Design Notes
Design Information for the Microsoft ® Windows® Family of Operating Systems
Native 802.11 Framework for
IEEE 802.11 Networks
Abstract
This paper provides information to hardware vendors about a set of wireless
services for the Microsoft® Windows® family of operating systems, including
Windows CE and future versions of Windows.
Called Native 802.11, these services make it possible for a single network adapter
to be dynamically configured as an access point or a station. Designed to reduce
the long-term cost of goods and provide a superior end-user experience, Native
802.11 offers additional benefits to network adapter manufacturers, including new
and enhanced support for quality of service (QoS), location awareness, roaming,
and other features.
March 26, 2003
Contents
Introduction............................................................................................................................................. 3
IEEE 802.11 Standard ............................................................................................................................ 3
IEEE 802.11 Network Adapters and Native 802.11............................................................................ 4
Native 802.11 Miniport Driver Architecture ........................................................................................ 4
Native 802.11 Design Overview .............................................................................................................. 5
Native 802.11 STA Design ................................................................................................................ 6
Native 802.11 AP Design .................................................................................................................. 8
Offloaded PHY and MAC Functions ........................................................................................................ 9
PHY Layer Design ............................................................................................................................. 9
MAC Layer Design .......................................................................................................................... 10
NDIS Object Identifiers (OIDs)......................................................................................................... 10
Native 802.11 Benefits.......................................................................................................................... 11
Windows Logo Program Issues ............................................................................................................ 12
Call to Action and Resources ................................................................................................................ 12
Native 802.11 Framework for IEEE 802.11 Networks - 2
This is a preliminary document and may be changed substantially prior to final commercial
release of the software described herein.
The information contained in this document represents the current view of Microsoft
Corporation on the issues discussed as of the date of publication. Because Microsoft must
respond to changing market conditions, it should not be interpreted to be a commitment on
the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information
presented after the date of publication.
This White Paper is for informational purposes only. MICROSOFT MAKES NO
WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN
THIS DOCUMENT.
Complying with all applicable copyright laws is the responsibility of the user. Without limiting
the rights under copyright, no part of this document may be reproduced, stored in or
introduced into a retrieval system, or transmitted in any form or by any means (electronic,
mechanical, photocopying, recording, or otherwise), or for any purpose, without the express
written permission of Microsoft Corporation.
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual
property rights covering subject matter in this document. Except as expressly provided in
any written license agreement from Microsoft, the furnishing of this document does not give
you any license to these patents, trademarks, copyrights, or other intellectual property.
Unless otherwise noted, the example companies, organizations, products, domain names, email addresses, logos, people, places and events depicted herein are fictitious, and no
association with any real company, organization, product, domain name, email address, logo,
person, place or event is intended or should be inferred.
© 2003 Microsoft Corporation. All rights reserved.
Microsoft, Windows, and Windows NT are either registered trademarks or trademarks of
Microsoft Corporation in the United States and/or other countries.
The names of actual companies and products mentioned herein may be the trademarks of
their respective owners.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 3
Introduction
Native 802.11 is an architecture for wireless local area networks (WLAN) that is
integrated into the Microsoft® Windows® operating system. Native 802.11 is based
on the Institute of Electrical and Electronics Engineers (IEEE) 802.11 specification,
which defines a shared WLAN standard using media access control (MAC)
protocols that include carrier sense multiple access with collision avoidance
(CSMA/CA).
A unified infrastructure, Native 802.11 allows a wireless network adapter to be
configured into either a station (STA) or an access point (AP) mode through a user
interface. By supporting Native 802.11 miniport driver interfaces, a network adapter
can take advantage of all the Native 802.11 services, which include cooperative
roaming, location awareness, power management, and more.
Through Native 802.11, a single network adapter can be configured and used to
target both infrastructure networks, where an AP bridges wired and wireless LANs,
as well as the ad hoc networks. As a result, hardware vendors receive the following
benefits by supporting Native 802.11:

Reduced development cycle. In the short term, implementing Native 802.11
represents an investment in development. In the long term, however, network
adapter and driver/firmware requirements are reduced, as is ongoing
maintenance in terms of development time and resource.

Reduced cost of goods. Native 802.11 mitigates the need for a microcontroller
unit by providing IEEE 802.11 upper MAC functionality including MAC and
physical layer management support and thereby reduces the cost of goods.

Greater usage. As hardware costs decrease, the adoption rate increases as
the cell phone industry has aptly demonstrated.

Extensibility. Microsoft has defined the core infrastructure. The Native 802.11
framework includes versioning to ensure that future updates in standard
specifications and additional features can be incorporated later while
maintaining backward compatibility.
The information in this paper is intended primarily for network software developers
and decision makers responsible for lower-level, network-related Network Driver
Interface Specification (NDIS) device drivers for Windows operating systems.
IEEE 802.11 Standard
Windows operating systems support the IEEE 802.11 specification including
solutions for the security, configuration, and management issues that arise when an
enterprise considers deploying a wireless network.
IEEE 802.11 is a shared WLAN standard that allows for both direct sequence (DS)
and frequency-hopping (FH) spread spectrum transmissions at the physical layer.
The maximum data rate initially offered by this standard was 2 megabits per
second. A higher-speed version with a physical layer definition under the IEEE
802.11b specification allows a data rate of up to 11 megabits per second using DS
spread spectrum transmission. The IEEE standards committee has also defined
physical layer criteria under the IEEE 802.11a and IEEE 802.11g specifications,
which are based on orthogonal frequency-division multiplexing (OFDM) that permits
data transfer rates up to 54 megabits per second.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 4
IEEE 802.11 Network Adapters and Native 802.11
The adoption of IEEE 802.11, in both infrastructure and ad hoc network modes, can
be greatly enhanced by having the network adapter perform functions that it is
ideally suited for, such as lower MAC and physical layer functions. For example, the
network adapter would perform time-critical functions, such as the transmission of
IEEE 802.11 RTS/CTS. In this case, the Native 802.11 intermediate miniport (IM)
driver would provide upper MAC functionality and management support for MAC
and physical layer. The common Native 802.11 framework for network adapter
management in either AP or STA operational modes ensures a unified and
enhanced end-user experience.
Native 802.11 can configure the underlying network adapter into either STA or AP
role assuming the network adapter supports the required STA and AP interface
capabilities. The Native 802.11 service provides upper MAC functions in addition to
management support for MAC and physical layers in the operating system. This
ensures that base work at the Native 802.11 network adapter miniport driver level
becomes much simpler leading to an improvement in the network adapter miniport
driver quality and interoperability.
Native 802.11 defines the expected interaction sequence between the operating
system and the following:

An IEEE 802.11 network adapter operating as a STA in infrastructure mode.

An IEEE 802.11 network adapter operating as a STA in Independent Basic
Service Set (IBSS) mode.

An IEEE 802.11 network adapter operating as an AP.
Native 802.11 also specifies a network adapter’s expected operational behavior on
query and set operations directed at the network adapter.
Native 802.11 Miniport Driver Architecture
The lowest layer in the system architecture of an IEEE 802.11 wireless
infrastructure is a miniport driver, which performs the following tasks:

Forwards packets to the network adapter hardware for transmission.

Retrieves packets received from the network adapter hardware.

Handles interrupts.

Performs other control operations over the hardware.
Based on NDIS, Native 802.11 defines the way in which operations are uploaded
and offloaded between the operating system and network adapter. A network
adapter must support certain mandatory functions through this upload and offload
model, while Native 802.11 handles the transactions better accomplished through
the operating system.
At the lower edge, an IEEE 802.11 network adapter miniport driver uses NDIS to
communicate with the adapter hardware. At the upper edge, the miniport driver
communicates with the Native 802.11 intermediate miniport driver, which in turn
presents an interface to allow protocol drivers to configure the adapter and to send
and receive packets over the network.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 5
When operating in STA mode, decisions about when to roam, when media is
available to the upper-layer stack, and so on, are all handled by the upper-level
MAC functions, which reside in Native 802.11.
Native 802.11 also configures and initiates some lower-level MAC functions and
handles PHY layer management. A portion of the lower-layer MAC and PHY
functions, particularly time-sensitive functions, are handled by the network adapter.
For example, encryption and decryption based on the Wired Equivalent Privacy
(WEP) algorithm or Advanced Encryption Standard (AES) cipher are better
negotiated in the hardware. However, to ensure continued data transmissions and
receptions when keys are updated, Native 802.11 can optionally upload these
functions into the operating system. Once the required key management functions
are completed and the updated keys are handed off to the network adapter, Native
802.11 would offload these functions back to the network adapter.
NDIS 6.0
Native 802.11
Intermediate Driver
Native 802.11
Miniport Driver
Hardware
Figure 1. Network Driver Configuration
Native 802.11 Design Overview
Native 802.11 is defined in terms of a software-based STA and software-based AP,
which are merely logical entities used to clarify the behavior of a network adapter
that can take on either the STA or AP role. As it is implemented in the Windows
operating system, Native 802.11 is a unified infrastructure. The Native 802.11
functionality works for any Windows platform that includes a wireless network
adapter supporting the required Native 802.11 framework and its interfaces.
Figure 2 shows STA and AP architectures side by side. The Native 802.11
configuration service configures an IEEE 802.11 network adapter for AP or STA
operations.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 6
Native 802.11 Station (STA)
Native 802.11 Access Point (AP)
Native 802.11
STA UI
Native 802.11
AP UI
Native 802.11
STA Configuration
Service
802.1X
Supplicant
SAM
DB
Native 802.11
AP Configuration
Service
RADIUS
Client
802.1X
Authenticator
RADIUS
Server
User
Kernel
TCP
UDP
Others
TCP
UDP
Others
Passport
Server
IP
IP
Network Bridge (Optional)
Native 802.11 STA Driver
Native 802.11 AP Driver
LAN
802.11 STA
Network Adapter/Driver
802.11 AP
Network Adapter/Driver
802.3 Network
Adapter
WLAN
Figure 2. Native 802.11 Architecture in Windows Operating Systems
Among other benefits, Native 802.11 makes layer 2 authentication (IEEE 802.1X)
services available to the STA or AP. For example:

For a STA, enhanced security can be negotiated, such as through WiFi
Protected Access (WPA), a subset of IEEE 802.11i, using TKIP-MIC or AES.

For an AP, authentication services can be integrated with a RADIUS client in an
enterprise or a local SAM service or Passport server in a home or small office.
The sections below describe the Native 802.11 architecture in greater detail.
Native 802.11 STA Design
As Figure 3 illustrates, when an IEEE 802.11 physical network adapter is connected
to a WLAN, the Native 802.11 miniport driver functions as follows:

Receive path. The Native 802.11 miniport driver passes relevant IEEE 802.11
packets received by the network adapter to Native 802.11 STA intermediate
driver.

Send path. The Native 802.11 miniport driver receives IEEE 802.11 packets
from the Native 802.11 STA intermediate driver and sends them out by means
of the network adapter.

Hardware operations. The Native 802.11 miniport driver subsumes some
received IEEE 802.11 packets and generates some IEEE 802.11 packets on its
own and sends them out by means of the network adapter.
The Native 802.11 STA intermediate driver acts as an IEEE 802.3 virtual miniport
driver that handles IEEE 802.3-to-IEEE 802.11 packet conversion and vice-versa.
The driver also handles IEEE 802.11 station operations, such as association and
probe requests. The Native 802.11 STA intermediate driver functions as follows:
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 7

Receive path. It receives IEEE 802.11 packets from the Native 802.11 miniport
driver. It then converts relevant IEEE 802.11 packets to IEEE 802.3 packets
before passing them up to IEEE 802.3 protocols such as TCP/IP. It also passes
IEEE 802.1X packets to the IEEE 802.1X supplicant by calling up to the Native
802.11 STA server.

Send path. It receives IEEE 802.3 packets from any IEEE 802.3 protocols. It
then converts them to IEEE 802.11 packets before passing them to the Native
802.11 miniport driver. It also sends out IEEE 802.1X packets received from the
IEEE 802.1X supplicant by means of the Native 802.11 STA server.

Other STA operation. It performs other IEEE 802.11 station operations in the
software by potentially subsuming some IEEE 802.11 packets instead of
passing them up. It also generates IEEE 802.11 packets on its own.
Native 802.11 STA
Client-side DLL
802.1X Supplicant
Native 802.11 STA
Manager/Monitor
Native 802.11 STA
Server
User
Kernel
TCP
UDP
Others
IP
Native 802.11 STA Intermediate Driver
Native 802.11 Miniport Driver
802.11
Physical Network
Adapter
802.11 LAN
Figure 3. Native 802.11 STA Design
Native 802.11 STA User Mode Interactions
The Native 802.11 STA server configures an IEEE 802.11 network adapter into STA
mode. Through the server, an IEEE 802.1X supplicant can send IEEE 802.1X
packets to, and receive them from, an IEEE 802.1X authenticator. The Native
802.11 STA server acts as a conduit for all interested user-mode applications,
including any IEEE 802.1X supplicants as well as the Native 802.11
manager/monitor utility, and permits communication with the Native 802.11 STA
intermediate driver.
The Native 802.11 STA server exposes APIs to user-mode applications, which can
then call down to the Native 802.11 STA intermediate driver. When a user-mode
application registers with the Native 802.11 server, the application provides a
function table. The server uses this function table to pass a call from the Native
802.11 STA intermediate driver to the destined user-mode application.
Local and remote clients can access the APIs that the server exposes through the
Native 802.11 STA client-side DLL.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 8
Native 802.11 AP Design
The architecture for Native 802.11 AP is similar to the Native 802.11 STA
architecture with the addition of a bridge that coordinates data traffic coming from
an IEEE 802.3 LAN. See Figure 4.
Native 802.11 AP
Client-side DLL
802.1X
Authenticator
Native 802.11 AP
Manager/Monitor
Native 802.11 AP
Server
802.1X Supplicant
User
Kernel
TCP
UDP
Others
IP
Bridge (Native 802.11 AP VM
and 802.3 Physical Network Adapter)
Native 802.11 AP
Intermediate Driver
Native 802.11
Miniport Driver
802.3 LAN
802.3
Physical Network
Adapter
802.11
Physical Network
Adapter
802.11 LAN
Figure 4. Native 802.11 AP Design
All IEEE 802.11 packets that an IEEE 802.11 network adapter receives are passed
to the Native 802.11 AP intermediate driver. In effect, the network adapter acts like
a transceiver, that is, it takes packets in and ships them out. For the physical
network adapter connected to an IEEE 802.11 LAN, the Native 802.11 miniport
driver functions as follows:

Receive path. Native 802.11 miniport driver passes some IEEE 802.11 packets
to its protocol, the Native 802.11 AP intermediate driver.

Send path. Native 802.11 miniport driver receives IEEE 802.11 packets from
the Native 802.11 AP intermediate driver and sends them out by means of the
network adapter.

Hardware operations. Native 802.11 miniport driver subsumes some IEEE
802.11 packets instead of indicating them up and also generates some IEEE
802.11 packets on its own and sends them out by means of the network
adapter.
The Native 802.11 AP intermediate driver is a virtual miniport driver that handles
IEEE 802.3-to-IEEE 802.11 packet conversion and vice-versa. The driver also
handles IEEE 802.11 AP operations, such as association. The Native 802.11 AP
intermediate driver functions as follows:

Receive path. It receives IEEE 802.11 packets from the Native 802.11 miniport
driver and converts some to IEEE 802.3 packets before passing them up to a
bridge as needed. It also indicates IEEE 802.1X packets to the IEEE 802.1X
authenticator through calls to the Native 802.11 AP configuration server.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 9

Send path. It receives IEEE 802.3 packets from a bridge, converts them to
IEEE 802.11 packets before passing them to the Native 802.11 miniport driver.
It also sends the IEEE 802.1X packets received from the IEEE 802.1X
authenticator by means of the Native 802.11 AP server.

Other AP operations. Performs other IEEE 802.11 AP operations in the
software, such as managing association and authentication states, and can
subsume some IEEE 802.11 packets instead of indicating them up. It also
generates IEEE 802.11 packets on its own.
When connected to a wired LAN, a network bridge is the interface between an IEEE
802.3 physical network adapter and a Native 802.11 virtual miniport driver.
Native 802.11 AP User Mode Interactions
The Native 802.11 AP server configures a IEEE 802.11 network adapter into AP
mode. Through the server, an IEEE 802.1X authenticator can send IEEE 802.1X
packets to, and receive them from, an IEEE 802.1X supplicant. Optionally, in an APto-AP wireless range extension scenario, the IEEE 802.1X supplicant on the AP can
also send IEEE 802.1X packets to, and receive them from, an IEEE 802.1X
authenticator server on the peer AP that supports AP-to-AP wireless range
extension.
The Native 802.11 AP server acts as a conduit for all interested user-mode
applications, including the IEEE 802.1X Authenticator, IEEE 802.1X Supplicant, and
the Native 802.11 Manager/Monitor utility, and it permits communication with the
Native 802.11 AP intermediate driver. The server exposes APIs to user-mode
applications, which can then call down to the Native 802.11 AP intermediate driver.
When a user-mode application registers with the Native 802.11 server, the
application provides a function table. The server then uses the function table to
pass a call from the Native 802.11 AP intermediate driver to the destined user-mode
application.
Local and remote clients can access the APIs that the server exposes through the
Native 802.11 AP client-side DLL.
Offloaded PHY and MAC Functions
To support Native 802.11, vendors must provide an IEEE 802.11 offload engine
with the following capabilities:

Offload capability object identifiers (OIDs).

Offload WEP encryption and decryption functions.

Offload fragmentation and defragmentation functions.
In addition, vendors should also support the out-of-band data specified for Native
802.11 miniport driver interfaces as follows:

Miniport driver send path out-of-band data.

Miniport driver receive path out-of-band data.
PHY Layer Design
Native 802.11 implements some PHY-level management functions and offloads
others to the IEEE 802.11 network adapter. For example, a Native 802.11 STA
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 10
assumes IBSS functions are supported, which are mandatory for a network adapter
operating in STA mode.
Native 802.11 supports any of the following configurations for a network adapter
with Native 802.11 miniport driver:

STA: The network adapter supports only STA functionality.

AP: The network adapter supports only AP functionality.

Both: On initial startup, Native 802.11 starts the network adapter as a STA.
Subsequently, the network adapter can be switched into AP mode, and the
network adapter persists the AP mode across reboots. It is strongly
recommended that Native 802.11 miniport driver for a given network adapter be
capable of supporting both STA and AP functionalities.
Switched operation is supported for dual-band network adapters and those with
concurrent dual-PHY with dual-MAC operation. Windows does not support
simultaneous dual-PHY operation without dual-MAC. A dual-band network adapter
can pick up the default band; however, actual channel selection is initiated by a join
request (join an existing network) or a start request (start a network) issued by the
operating system.
MAC Layer Design
The IEEE 802.11 standard specifies the services to be provided by station services
(SS) and the distribution system services (DSS). Both station and distribution
system services are used by the IEEE 802.11 MAC sub-layer.
The SSs are present in every IEEE 802.11 station, and so both Native 802.11 AP
and Native 802.11 STA include them. They are as follows:

Authentication

Deauthentication

Privacy

MSDU delivery
Native 802.11 AP also incorporates DSS. These services are used to cross the
logical boundaries of media and address space and so are accessed only through a
station that also provides DSSs, such as an AP. The DSSs are as follows:

Association

Disassociation

Distribution

Integration

Reassociation
NDIS Object Identifiers (OIDs)
To support Native 802.11 services, a number of new OIDs are required from the
Native 802.11 miniport driver.
Describing the OIDs is beyond the scope of this paper; however, all functions will be
included with a future version of the Windows Driver Development Kit.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 11
Native 802.11 Benefits
Through support for the Native 802.11 framework, network adapter vendors need
not differentiate between STA and AP behavior, that is, there is no difference from
their perspective. They can also take advantage of other enhancements provided by
the Windows operating system that will be incrementally added to the Native 802.11
framework.
For network adapters operating as mobile stations, Native 802.11 incorporates the
following services:

Quality of Service (QoS). For example, 802.1p tagging and necessary IEEE
802.11e support is provided for network adapters that support them.

Location awareness. For example, a user computing device such as a laptop
or a Pocket PC can locate wireless LANs, such as enterprise or hotspot
infrastructures, allowing a Native 802.11 STA to gather location information
from the APs in radio range.

Security. IEEE 802.1X authentication services become available. In fact,
network adapters that do not support TKIP-MIC or AES can take advantage of
this support provided by Native 802.11. This upload functionality is particularly
applicable on the Native 802.11 STA side, though it is strongly recommended
that the network adapter provide the required support particularly in Native
802.11 AP deployments.

Power management. Native 802.11 provides power management constructs to
the network adapter using the Native 802.11 miniport driver based on network
usage and data latency characteristics. In addition, the network adapter can
also implement transmit power control based on the IEEE 802.11h standard.

Roaming. Native 802.11 when operating in STA mode provides roaming
functionality as the user computing device transitions from one AP to another
AP.

Frame translation. Native 802.11 handles IEEE 802.11-to-IEEE 802.3 and
IEEE 802.3-to-IEEE 802.11 frame translations.

Fundamental IEEE 802.11 services. Native 802.11 incorporates all of MAC
upper layer functions such as MAC sub-layer fragmentation, association, and
authentication services. In addition, Native 802.11 also provides MAC and
physical layer management functions.
On the AP side, Native 802.11 incorporates the following services in addition to
applicable services described earlier (though some services such as roaming are
not applicable to an AP):

Virtual LAN support. The Native 802.11 supports packets that are marked with
a VLAN identifier (ID) and can maintain a configured VLAN ID for each
associated peer network adapter.

Assistance to STAs in power management. The AP cooperates with STAs in
providing information that can help the STA make better decisions.

Assistance to STAs in roaming. As above, an AP can cooperate with STAs in
roaming decisions by providing information to the STA.

Basic service set (BSS) bridging. To support infrastructure mode operations
for wireless clients, Native 802.11 supports bridging on Ethernet-type
interfaces.
© 2003 Microsoft Corporation. All rights reserved
Native 802.11 Framework for IEEE 802.11 Networks - 12
Ultimately, the goal of Native 802.11 is to improve the wireless experience for users,
increase the value of personal computers, and make wireless networks truly
ubiquitous.
Windows Logo Program Issues
Proposed requirements for the “Designed for Windows” Logo Program for hardware
are defined in the review draft editions of Microsoft Windows Logo Program
System and Device Requirements, Version 3.0
(http://www.microsoft.com/winlogo/hardware/HWrequirements.mspx).
For information about these proposed requirements and how contact Microsoft, see
the “Designed for Windows” Logo Program Web site at
http://www.microsoft.com/winlogo/hardware/default.mspx.
Call to Action and Resources
Call to Action:

Develop and provide network adapter miniport driver/firmware to support Native
802.11.

Develop driver support based on the Windows DDK. To obtain the Windows
DDK, see http://www.microsoft.com/ddk/.

Meet the Windows Logo Program requirements for hardware, including the
wireless networking requirements that apply for IEEE 802.11 support.
Resources:
Microsoft Hardware and Driver Developer Information
http://www.microsoft.com/hwdev/
Microsoft Windows Driver Development Kit (DDK)
http://www.microsoft.com/ddk/
Microsoft Windows Logo Program System and Device Requirements
http://www.microsoft.com/winlogo/hardware/default.mspx
© 2003 Microsoft Corporation. All rights reserved