draft-ohara-capwap-lwapp-04.txt   rfc5412.txt 
Control and Provisioning of P. Calhoun Independent Submission P. Calhoun
Wireless Access Points Working B. O'Hara Request for Comments: 5412 R. Suri
Group R. Suri Category: Historic N. Cam-Winget
Internet-Draft N. Cam Winget ISSN: 2070-1721 Cisco Systems, Inc.
Intended status: Informational Cisco Systems, Inc.
Expires: September 3, 2007 S. Kelly
Facetime Communications
M. Williams M. Williams
Nokia, Inc. GWhiz Arts & Sciences
S. Hares S. Hares
Nexthop Technologies, Inc. B. O'Hara
March 2, 2007 S.Kelly
February 2010
Light Weight Access Point Protocol Lightweight Access Point Protocol
draft-ohara-capwap-lwapp-04.txt
Status of this Memo Abstract
By submitting this Internet-Draft, each author represents that any In recent years, there has been a shift in wireless LAN (WLAN)
applicable patent or other IPR claims of which he or she is aware product architectures from autonomous access points to centralized
have been or will be disclosed, and any of which he or she becomes control of lightweight access points. The general goal has been to
aware will be disclosed, in accordance with Section 6 of BCP 79. move most of the traditional wireless functionality such as access
control (user authentication and authorization), mobility, and radio
management out of the access point into a centralized controller.
Internet-Drafts are working documents of the Internet Engineering The IETF's CAPWAP (Control and Provisioning of Wireless Access
Task Force (IETF), its areas, and its working groups. Note that Points) WG has identified that a standards-based protocol is
other groups may also distribute working documents as Internet- necessary between a wireless Access Controller and Wireless
Drafts. Termination Points (the latter are also commonly referred to as
Lightweight Access Points). This specification defines the
Lightweight Access Point Protocol (LWAPP), which addresses the
CAPWAP's (Control and Provisioning of Wireless Access Points)
protocol requirements. Although the LWAPP protocol is designed to be
flexible enough to be used for a variety of wireless technologies,
this specific document describes the base protocol and an extension
that allows it to be used with the IEEE's 802.11 wireless LAN
protocol.
Internet-Drafts are draft documents valid for a maximum of six months Status of This Memo
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at This document is not an Internet Standards Track specification; it is
http://www.ietf.org/ietf/1id-abstracts.txt. published for the historical record.
The list of Internet-Draft Shadow Directories can be accessed at This document defines a Historic Document for the Internet community.
http://www.ietf.org/shadow.html. This is a contribution to the RFC Series, independently of any other
RFC stream. The RFC Editor has chosen to publish this document at
its discretion and makes no statement about its value for
implementation or deployment. Documents approved for publication by
the RFC Editor are not a candidate for any level of Internet
Standard; see Section 2 of RFC 5741.
This Internet-Draft will expire on September 3, 2007. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc5412.
Copyright Notice IESG Note
Copyright (C) The IETF Trust (2007). This RFC documents the LWAPP protocol as it was when submitted to the
IETF as a basis for further work in the CAPWAP Working Group, and
therefore it may resemble the CAPWAP protocol specification in RFC
5415 as well as other IETF work. This RFC is being published solely
for the historical record. The protocol described in this RFC has
not been thoroughly reviewed and may contain errors and omissions.
Abstract RFC 5415 documents the standards track solution for the CAPWAP
Working Group and obsoletes any and all mechanisms defined in this
RFC. This RFC is not a candidate for any level of Internet Standard
and should not be used as a basis for any sort of Internet
deployment.
In the recent years, there has been a shift in wireless LAN product Copyright Notice
architectures from autonomous access points to centralized control of
light weight access points. The general goal has been to move most
of the traditional wireless functionality such as access control
(user authentication and authorization), mobility and radio
management out of the access point into a centralized controller.
The IETF's CAPWAP WG has identified that a standards based protocol Copyright (c) 2010 IETF Trust and the persons identified as the
is necessary between a wireless Access Controller and Wireless document authors. All rights reserved.
Termination Points (the latter are also commonly referred to as Light
Weight Access Points). This specification defines the Light Weight This document is subject to BCP 78 and the IETF Trust's Legal
Access Point Protocol (LWAPP), which addresses the CAPWAP's protocol Provisions Relating to IETF Documents
requirements. Although the LWAPP protocol is designed to be flexible (http://trustee.ietf.org/license-info) in effect on the date of
enough to be used for a variety of wireless technologies, this publication of this document. Please review these documents
specific document describes the base protocol, and an extension that carefully, as they describe your rights and restrictions with respect
allows it to be used with the IEEE's 802.11 wireless LAN protocol. to this document.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 8 1. Introduction ....................................................8
1.1. Conventions used in this document . . . . . . . . . . . 9 1.1. Conventions Used in This Document ..........................9
2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 10 2. Protocol Overview ..............................................10
2.1. Wireless Binding Definition . . . . . . . . . . . . . . 11 2.1. Wireless Binding Definition ...............................11
2.2. LWAPP State Machine Definition . . . . . . . . . . . . . 12 2.2. LWAPP State Machine Definition ............................12
3. LWAPP Transport Layers . . . . . . . . . . . . . . . . . . . 21 3. LWAPP Transport Layers .........................................20
3.1. LWAPP Transport Header . . . . . . . . . . . . . . . . . 21 3.1. LWAPP Transport Header ....................................21
3.1.1. VER Field . . . . . . . . . . . . . . . . . . . . . 21 3.1.1. VER Field ..........................................21
3.1.2. RID Field . . . . . . . . . . . . . . . . . . . . . 21 3.1.2. RID Field ..........................................21
3.1.3. C Bit . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.3. C Bit ..............................................21
3.1.4. F Bit . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.4. F Bit ..............................................21
3.1.5. L Bit . . . . . . . . . . . . . . . . . . . . . . . 22 3.1.5. L Bit ..............................................22
3.1.6. Fragment ID . . . . . . . . . . . . . . . . . . . . 22 3.1.6. Fragment ID ........................................22
3.1.7. Length . . . . . . . . . . . . . . . . . . . . . . . 22 3.1.7. Length .............................................22
3.1.8. Status and WLANS . . . . . . . . . . . . . . . . . . 22 3.1.8. Status and WLANS ...................................22
3.1.9. Payload . . . . . . . . . . . . . . . . . . . . . . 22 3.1.9. Payload ............................................22
3.2. Using IEEE 802.3 MAC as LWAPP transport . . . . . . . . 22 3.2. Using IEEE 802.3 MAC as LWAPP Transport ...................22
3.2.1. Framing . . . . . . . . . . . . . . . . . . . . . . 23 3.2.1. Framing ............................................23
3.2.2. AC Discovery . . . . . . . . . . . . . . . . . . . . 23 3.2.2. AC Discovery .......................................23
3.2.3. LWAPP Message Header format over IEEE 802.3 MAC 3.2.3. LWAPP Message Header Format over IEEE 802.3
transport . . . . . . . . . . . . . . . . . . . . . 23 MAC Transport ......................................23
3.2.4. Fragmentation/Reassembly . . . . . . . . . . . . . . 23 3.2.4. Fragmentation/Reassembly ...........................24
3.2.5. Multiplexing . . . . . . . . . . . . . . . . . . . . 24 3.2.5. Multiplexing .......................................24
3.3. Using IP/UDP as LWAPP transport . . . . . . . . . . . . 24 3.3. Using IP/UDP as LWAPP Transport ...........................24
3.3.1. Framing . . . . . . . . . . . . . . . . . . . . . . 24 3.3.1. Framing ............................................24
3.3.2. AC Discovery . . . . . . . . . . . . . . . . . . . . 24 3.3.2. AC Discovery .......................................25
3.3.3. LWAPP Message Header format over IP/UDP transport . 25 3.3.3. LWAPP Message Header Format over IP/UDP Transport ..25
3.3.4. Fragmentation/Reassembly for IPv4 . . . . . . . . . 26 3.3.4. Fragmentation/Reassembly for IPv4 ..................26
3.3.5. Fragmentation/Reassembly for IPv6 . . . . . . . . . 26 3.3.5. Fragmentation/Reassembly for IPv6 ..................26
3.3.6. Multiplexing . . . . . . . . . . . . . . . . . . . . 26 3.3.6. Multiplexing .......................................26
4. LWAPP Packet Definitions . . . . . . . . . . . . . . . . . . 27 4. LWAPP Packet Definitions .......................................26
4.1. LWAPP Data Messages . . . . . . . . . . . . . . . . . . 27 4.1. LWAPP Data Messages .......................................27
4.2. LWAPP Control Messages Overview . . . . . . . . . . . . 27 4.2. LWAPP Control Messages Overview ...........................27
4.2.1. Control Message Format . . . . . . . . . . . . . . . 28 4.2.1. Control Message Format .............................28
4.2.2. Message Element Format . . . . . . . . . . . . . . . 30 4.2.2. Message Element Format .............................29
4.2.3. Quality of Service . . . . . . . . . . . . . . . . . 31 4.2.3. Quality of Service .................................31
5. LWAPP Discovery Operations . . . . . . . . . . . . . . . . . 32 5. LWAPP Discovery Operations .....................................31
5.1. Discovery Request . . . . . . . . . . . . . . . . . . . 32 5.1. Discovery Request .........................................31
5.1.1. Discovery Type . . . . . . . . . . . . . . . . . . . 33 5.1.1. Discovery Type .....................................32
5.1.2. WTP Descriptor . . . . . . . . . . . . . . . . . . . 33 5.1.2. WTP Descriptor .....................................33
5.1.3. WTP Radio Information . . . . . . . . . . . . . . . 34 5.1.3. WTP Radio Information ..............................34
5.2. Discovery Response . . . . . . . . . . . . . . . . . . . 35 5.2. Discovery Response ........................................34
5.2.1. AC Address . . . . . . . . . . . . . . . . . . . . . 35 5.2.1. AC Address .........................................35
5.2.2. AC Descriptor . . . . . . . . . . . . . . . . . . . 36 5.2.2. AC Descriptor ......................................35
5.2.3. AC Name . . . . . . . . . . . . . . . . . . . . . . 37 5.2.3. AC Name ............................................36
5.2.4. WTP Manager Control IPv4 Address . . . . . . . . . . 37 5.2.4. WTP Manager Control IPv4 Address ...................37
5.2.5. WTP Manager Control IPv6 Address . . . . . . . . . . 38 5.2.5. WTP Manager Control IPv6 Address ...................37
5.3. Primary Discovery Request . . . . . . . . . . . . . . . 38 5.3. Primary Discovery Request .................................38
5.3.1. Discovery Type . . . . . . . . . . . . . . . . . . . 39 5.3.1. Discovery Type .....................................38
5.3.2. WTP Descriptor . . . . . . . . . . . . . . . . . . . 39 5.3.2. WTP Descriptor .....................................38
5.3.3. WTP Radio Information . . . . . . . . . . . . . . . 39 5.3.3. WTP Radio Information ..............................38
5.4. Primary Discovery Response . . . . . . . . . . . . . . . 39 5.4. Primary Discovery Response ................................38
5.4.1. AC Descriptor . . . . . . . . . . . . . . . . . . . 39 5.4.1. AC Descriptor ......................................39
5.4.2. AC Name . . . . . . . . . . . . . . . . . . . . . . 39 5.4.2. AC Name ............................................39
5.4.3. WTP Manager Control IPv4 Address . . . . . . . . . . 40 5.4.3. WTP Manager Control IPv4 Address ...................39
5.4.4. WTP Manager Control IPv6 Address . . . . . . . . . . 40 5.4.4. WTP Manager Control IPv6 Address ...................39
6. Control Channel Management . . . . . . . . . . . . . . . . . 41 6. Control Channel Management .....................................39
6.1. Join Request . . . . . . . . . . . . . . . . . . . . . . 41 6.1. Join Request ..............................................39
6.1.1. WTP Descriptor . . . . . . . . . . . . . . . . . . . 42 6.1.1. WTP Descriptor .....................................40
6.1.2. AC Address . . . . . . . . . . . . . . . . . . . . . 42 6.1.2. AC Address .........................................40
6.1.3. WTP Name . . . . . . . . . . . . . . . . . . . . . . 42 6.1.3. WTP Name ...........................................40
6.1.4. Location Data . . . . . . . . . . . . . . . . . . . 42 6.1.4. Location Data ......................................41
6.1.5. WTP Radio Information . . . . . . . . . . . . . . . 43 6.1.5. WTP Radio Information ..............................41
6.1.6. Certificate . . . . . . . . . . . . . . . . . . . . 43 6.1.6. Certificate ........................................41
6.1.7. Session ID . . . . . . . . . . . . . . . . . . . . . 43 6.1.7. Session ID .........................................42
6.1.8. Test . . . . . . . . . . . . . . . . . . . . . . . . 44 6.1.8. Test ...............................................42
6.1.9. XNonce . . . . . . . . . . . . . . . . . . . . . . . 44 6.1.9. XNonce .............................................42
6.2. Join Response . . . . . . . . . . . . . . . . . . . . . 44 6.2. Join Response .............................................43
6.2.1. Result Code . . . . . . . . . . . . . . . . . . . . 45 6.2.1. Result Code ........................................44
6.2.2. Status . . . . . . . . . . . . . . . . . . . . . . . 45 6.2.2. Status .............................................44
6.2.3. Certificate . . . . . . . . . . . . . . . . . . . . 46 6.2.3. Certificate ........................................45
6.2.4. WTP Manager Data IPv4 Address . . . . . . . . . . . 46 6.2.4. WTP Manager Data IPv4 Address ......................45
6.2.5. WTP Manager Data IPv6 Address . . . . . . . . . . . 47 6.2.5. WTP Manager Data IPv6 Address ......................45
6.2.6. AC IPv4 List . . . . . . . . . . . . . . . . . . . . 47 6.2.6. AC IPv4 List .......................................46
6.2.7. AC IPv6 List . . . . . . . . . . . . . . . . . . . . 48 6.2.7. AC IPv6 List .......................................46
6.2.8. ANonce . . . . . . . . . . . . . . . . . . . . . . . 48 6.2.8. ANonce .............................................47
6.2.9. PSK-MIC . . . . . . . . . . . . . . . . . . . . . . 49 6.2.9. PSK-MIC ............................................48
6.3. Join ACK . . . . . . . . . . . . . . . . . . . . . . . . 50 6.3. Join ACK ..................................................48
6.3.1. Session ID . . . . . . . . . . . . . . . . . . . . . 50 6.3.1. Session ID .........................................49
6.3.2. WNonce . . . . . . . . . . . . . . . . . . . . . . . 50 6.3.2. WNonce .............................................49
6.3.3. PSK-MIC . . . . . . . . . . . . . . . . . . . . . . 51 6.3.3. PSK-MIC ............................................49
6.4. Join Confirm . . . . . . . . . . . . . . . . . . . . . . 51 6.4. Join Confirm ..............................................49
6.4.1. Session ID . . . . . . . . . . . . . . . . . . . . . 51 6.4.1. Session ID .........................................50
6.4.2. PSK-MIC . . . . . . . . . . . . . . . . . . . . . . 51 6.4.2. PSK-MIC ............................................50
6.5. Echo Request . . . . . . . . . . . . . . . . . . . . . . 51 6.5. Echo Request ..............................................50
6.6. Echo Response . . . . . . . . . . . . . . . . . . . . . 52 6.6. Echo Response .............................................50
6.7. Key Update Request . . . . . . . . . . . . . . . . . . . 52 6.7. Key Update Request ........................................51
6.7.1. Session ID . . . . . . . . . . . . . . . . . . . . . 52 6.7.1. Session ID .........................................51
6.7.2. XNonce . . . . . . . . . . . . . . . . . . . . . . . 52 6.7.2. XNonce .............................................51
6.8. Key Update Response . . . . . . . . . . . . . . . . . . 52 6.8. Key Update Response .......................................51
6.8.1. Session ID . . . . . . . . . . . . . . . . . . . . . 53 6.8.1. Session ID .........................................51
6.8.2. ANonce . . . . . . . . . . . . . . . . . . . . . . . 53 6.8.2. ANonce .............................................51
6.8.3. PSK-MIC . . . . . . . . . . . . . . . . . . . . . . 53 6.8.3. PSK-MIC ............................................52
6.9. Key Update ACK . . . . . . . . . . . . . . . . . . . . . 53 6.9. Key Update ACK ............................................52
6.9.1. WNonce . . . . . . . . . . . . . . . . . . . . . . . 53 6.9.1. WNonce .............................................52
6.9.2. PSK-MIC . . . . . . . . . . . . . . . . . . . . . . 53 6.9.2. PSK-MIC ............................................52
6.10. Key Update Confirm . . . . . . . . . . . . . . . . . . . 53 6.10. Key Update Confirm .......................................52
6.10.1. PSK-MIC . . . . . . . . . . . . . . . . . . . . . . 54 6.10.1. PSK-MIC ...........................................52
6.11. Key Update Trigger . . . . . . . . . . . . . . . . . . . 54 6.11. Key Update Trigger .......................................52
6.11.1. Session ID . . . . . . . . . . . . . . . . . . . . . 54 6.11.1. Session ID ........................................53
7. WTP Configuration Management . . . . . . . . . . . . . . . . 55 7. WTP Configuration Management ...................................53
7.1. Configuration Consistency . . . . . . . . . . . . . . . 55 7.1. Configuration Consistency .................................53
7.2. Configure Request . . . . . . . . . . . . . . . . . . . 56 7.2. Configure Request .........................................54
7.2.1. Administrative State . . . . . . . . . . . . . . . . 56 7.2.1. Administrative State ...............................54
7.2.2. AC Name . . . . . . . . . . . . . . . . . . . . . . 57 7.2.2. AC Name ............................................55
7.2.3. AC Name with Index . . . . . . . . . . . . . . . . . 57 7.2.3. AC Name with Index .................................55
7.2.4. WTP Board Data . . . . . . . . . . . . . . . . . . . 57 7.2.4. WTP Board Data .....................................56
7.2.5. Statistics Timer . . . . . . . . . . . . . . . . . . 58 7.2.5. Statistics Timer ...................................56
7.2.6. WTP Static IP Address Information . . . . . . . . . 59 7.2.6. WTP Static IP Address Information ..................57
7.2.7. WTP Reboot Statistics . . . . . . . . . . . . . . . 59 7.2.7. WTP Reboot Statistics ..............................58
7.3. Configure Response . . . . . . . . . . . . . . . . . . . 60 7.3. Configure Response ........................................58
7.3.1. Decryption Error Report Period . . . . . . . . . . . 61 7.3.1. Decryption Error Report Period .....................59
7.3.2. Change State Event . . . . . . . . . . . . . . . . . 61 7.3.2. Change State Event .................................59
7.3.3. LWAPP Timers . . . . . . . . . . . . . . . . . . . . 62 7.3.3. LWAPP Timers .......................................60
7.3.4. AC IPv4 List . . . . . . . . . . . . . . . . . . . . 62 7.3.4. AC IPv4 List .......................................60
7.3.5. AC IPv6 List . . . . . . . . . . . . . . . . . . . . 62 7.3.5. AC IPv6 List .......................................61
7.3.6. WTP Fallback . . . . . . . . . . . . . . . . . . . . 63 7.3.6. WTP Fallback .......................................61
7.3.7. Idle Timeout . . . . . . . . . . . . . . . . . . . . 63 7.3.7. Idle Timeout .......................................61
7.4. Configuration Update Request . . . . . . . . . . . . . . 63 7.4. Configuration Update Request ..............................62
7.4.1. WTP Name . . . . . . . . . . . . . . . . . . . . . . 64 7.4.1. WTP Name ...........................................62
7.4.2. Change State Event . . . . . . . . . . . . . . . . . 64 7.4.2. Change State Event .................................62
7.4.3. Administrative State . . . . . . . . . . . . . . . . 64 7.4.3. Administrative State ...............................62
7.4.4. Statistics Timer . . . . . . . . . . . . . . . . . . 64 7.4.4. Statistics Timer ...................................62
7.4.5. Location Data . . . . . . . . . . . . . . . . . . . 64 7.4.5. Location Data ......................................62
7.4.6. Decryption Error Report Period . . . . . . . . . . . 64 7.4.6. Decryption Error Report Period .....................62
7.4.7. AC IPv4 List . . . . . . . . . . . . . . . . . . . . 64 7.4.7. AC IPv4 List .......................................62
7.4.8. AC IPv6 List . . . . . . . . . . . . . . . . . . . . 64 7.4.8. AC IPv6 List .......................................62
7.4.9. Add Blacklist Entry . . . . . . . . . . . . . . . . 64 7.4.9. Add Blacklist Entry ................................63
7.4.10. Delete Blacklist Entry . . . . . . . . . . . . . . . 65 7.4.10. Delete Blacklist Entry ............................63
7.4.11. Add Static Blacklist Entry . . . . . . . . . . . . . 66 7.4.11. Add Static Blacklist Entry ........................64
7.4.12. Delete Static Blacklist Entry . . . . . . . . . . . 66 7.4.12. Delete Static Blacklist Entry .....................64
7.4.13. LWAPP Timers . . . . . . . . . . . . . . . . . . . . 67 7.4.13. LWAPP Timers ......................................65
7.4.14. AC Name with Index . . . . . . . . . . . . . . . . . 67 7.4.14. AC Name with Index ................................65
7.4.15. WTP Fallback . . . . . . . . . . . . . . . . . . . . 67 7.4.15. WTP Fallback ......................................65
7.4.16. Idle Timeout . . . . . . . . . . . . . . . . . . . . 67 7.4.16. Idle Timeout ......................................65
7.5. Configuration Update Response . . . . . . . . . . . . . 67 7.5. Configuration Update Response .............................65
7.5.1. Result Code . . . . . . . . . . . . . . . . . . . . 67 7.5.1. Result Code ........................................65
7.6. Change State Event Request . . . . . . . . . . . . . . . 67 7.6. Change State Event Request ................................65
7.6.1. Change State Event . . . . . . . . . . . . . . . . . 68 7.6.1. Change State Event .................................66
7.7. Change State Event Response . . . . . . . . . . . . . . 68 7.7. Change State Event Response ...............................66
7.8. Clear Config Indication . . . . . . . . . . . . . . . . 68 7.8. Clear Config Indication ...................................66
8. Device Management Operations . . . . . . . . . . . . . . . . 69 8. Device Management Operations ...................................66
8.1. Image Data Request . . . . . . . . . . . . . . . . . . . 69 8.1. Image Data Request ........................................66
8.1.1. Image Download . . . . . . . . . . . . . . . . . . . 69 8.1.1. Image Download .....................................67
8.1.2. Image Data . . . . . . . . . . . . . . . . . . . . . 69 8.1.2. Image Data .........................................67
8.2. Image Data Response . . . . . . . . . . . . . . . . . . 70 8.2. Image Data Response .......................................68
8.3. Reset Request . . . . . . . . . . . . . . . . . . . . . 70 8.3. Reset Request .............................................68
8.4. Reset Response . . . . . . . . . . . . . . . . . . . . . 70 8.4. Reset Response ............................................68
8.5. WTP Event Request . . . . . . . . . . . . . . . . . . . 71 8.5. WTP Event Request .........................................68
8.5.1. Decryption Error Report . . . . . . . . . . . . . . 71 8.5.1. Decryption Error Report ............................69
8.5.2. Duplicate IPv4 Address . . . . . . . . . . . . . . . 71 8.5.2. Duplicate IPv4 Address .............................69
8.5.3. Duplicate IPv6 Address . . . . . . . . . . . . . . . 72 8.5.3. Duplicate IPv6 Address .............................70
8.6. WTP Event Response . . . . . . . . . . . . . . . . . . . 73 8.6. WTP Event Response ........................................70
8.7. Data Transfer Request . . . . . . . . . . . . . . . . . 73 8.7. Data Transfer Request .....................................71
8.7.1. Data Transfer Mode . . . . . . . . . . . . . . . . . 73 8.7.1. Data Transfer Mode .................................71
8.7.2. Data Transfer Data . . . . . . . . . . . . . . . . . 74 8.7.2. Data Transfer Data .................................71
8.8. Data Transfer Response . . . . . . . . . . . . . . . . . 74 8.8. Data Transfer Response ....................................72
9. Mobile Session Management . . . . . . . . . . . . . . . . . . 75 9. Mobile Session Management ......................................72
9.1. Mobile Config Request . . . . . . . . . . . . . . . . . 75 9.1. Mobile Config Request .....................................72
9.1.1. Delete Mobile . . . . . . . . . . . . . . . . . . . 75 9.1.1. Delete Mobile ......................................73
9.2. Mobile Config Response . . . . . . . . . . . . . . . . . 76 9.2. Mobile Config Response ....................................73
9.2.1. Result Code . . . . . . . . . . . . . . . . . . . . 76 9.2.1. Result Code ........................................74
10. LWAPP Security . . . . . . . . . . . . . . . . . . . . . . . 77 10. LWAPP Security ................................................74
10.1. Securing WTP-AC communications . . . . . . . . . . . . . 77 10.1. Securing WTP-AC Communications ...........................74
10.2. LWAPP Frame Encryption . . . . . . . . . . . . . . . . . 78 10.2. LWAPP Frame Encryption ...................................75
10.3. Authenticated Key Exchange . . . . . . . . . . . . . . . 78 10.3. Authenticated Key Exchange ...............................76
10.3.1. Terminology . . . . . . . . . . . . . . . . . . . . 79 10.3.1. Terminology .......................................76
10.3.2. Initial Key Generation . . . . . . . . . . . . . . . 80 10.3.2. Initial Key Generation ............................77
10.3.3. Refreshing Cryptographic Keys . . . . . . . . . . . 84 10.3.3. Refreshing Cryptographic Keys .....................81
10.4. Certificate Usage . . . . . . . . . . . . . . . . . . . 85 10.4. Certificate Usage ........................................82
11. IEEE 802.11 Binding . . . . . . . . . . . . . . . . . . . . . 86 11. IEEE 802.11 Binding ...........................................82
11.1. Division of labor . . . . . . . . . . . . . . . . . . . 86 11.1. Division of Labor ........................................82
11.1.1. Split MAC . . . . . . . . . . . . . . . . . . . . . 86 11.1.1. Split MAC .........................................83
11.1.2. Local MAC . . . . . . . . . . . . . . . . . . . . . 88 11.1.2. Local MAC .........................................85
11.2. Roaming Behavior and 802.11 security . . . . . . . . . . 91 11.2. Roaming Behavior and 802.11 Security .....................87
11.3. Transport specific bindings . . . . . . . . . . . . . . 92 11.3. Transport-Specific Bindings ..............................88
11.3.1. Status and WLANS field . . . . . . . . . . . . . . . 92 11.3.1. Status and WLANS Field ............................88
11.4. BSSID to WLAN ID Mapping . . . . . . . . . . . . . . . . 93 11.4. BSSID to WLAN ID Mapping .................................89
11.5. Quality of Service . . . . . . . . . . . . . . . . . . . 93 11.5. Quality of Service .......................................89
11.6. Data Message bindings . . . . . . . . . . . . . . . . . 93 11.6. Data Message Bindings ....................................90
11.7. Control Message bindings . . . . . . . . . . . . . . . . 93 11.7. Control Message Bindings .................................90
11.7.1. Mobile Config Request . . . . . . . . . . . . . . . 94 11.7.1. Mobile Config Request .............................90
11.7.2. WTP Event Request . . . . . . . . . . . . . . . . . 100 11.7.2. WTP Event Request .................................96
11.8. 802.11 Control Messages . . . . . . . . . . . . . . . . 102 11.8. 802.11 Control Messages ..................................97
11.8.1. IEEE 802.11 WLAN Config Request . . . . . . . . . . 102 11.8.1. IEEE 802.11 WLAN Config Request ...................98
11.8.2. IEEE 802.11 WLAN Config Response . . . . . . . . . . 107 11.8.2. IEEE 802.11 WLAN Config Response .................103
11.8.3. IEEE 802.11 WTP Event . . . . . . . . . . . . . . . 107 11.8.3. IEEE 802.11 WTP Event ............................103
11.9. Message Element Bindings . . . . . . . . . . . . . . . . 109 11.9. Message Element Bindings ................................105
11.9.1. IEEE 802.11 WTP WLAN Radio Configuration . . . . . . 109 11.9.1. IEEE 802.11 WTP WLAN Radio Configuration .........105
11.9.2. IEEE 802.11 Rate Set . . . . . . . . . . . . . . . . 111 11.9.2. IEEE 802.11 Rate Set .............................107
11.9.3. IEEE 802.11 Multi-domain Capability . . . . . . . . 111 11.9.3. IEEE 802.11 Multi-Domain Capability ..............107
11.9.4. IEEE 802.11 MAC Operation . . . . . . . . . . . . . 112 11.9.4. IEEE 802.11 MAC Operation ........................108
11.9.5. IEEE 802.11 Tx Power . . . . . . . . . . . . . . . . 114 11.9.5. IEEE 802.11 Tx Power .............................109
11.9.6. IEEE 802.11 Tx Power Level . . . . . . . . . . . . . 114 11.9.6. IEEE 802.11 Tx Power Level .......................110
11.9.7. IEEE 802.11 Direct Sequence Control . . . . . . . . 115 11.9.7. IEEE 802.11 Direct Sequence Control ..............110
11.9.8. IEEE 802.11 OFDM Control . . . . . . . . . . . . . . 116 11.9.8. IEEE 802.11 OFDM Control .........................111
11.9.9. IEEE 802.11 Antenna . . . . . . . . . . . . . . . . 117 11.9.9. IEEE 802.11 Antenna ..............................112
11.9.10. IEEE 802.11 Supported Rates . . . . . . . . . . . . 118 11.9.10. IEEE 802.11 Supported Rates .....................113
11.9.11. IEEE 802.11 CFP Status . . . . . . . . . . . . . . . 118 11.9.11. IEEE 802.11 CFP Status ..........................114
11.9.12. IEEE 802.11 WTP Mode and Type . . . . . . . . . . . 119 11.9.12. IEEE 802.11 WTP Mode and Type ...................114
11.9.13. IEEE 802.11 Broadcast Probe Mode . . . . . . . . . . 119 11.9.13. IEEE 802.11 Broadcast Probe Mode ................115
11.9.14. IEEE 802.11 WTP Quality of Service . . . . . . . . . 120 11.9.14. IEEE 802.11 WTP Quality of Service ..............115
11.9.15. IEEE 802.11 MIC Error Report From Mobile . . . . . . 121 11.9.15. IEEE 802.11 MIC Error Report From Mobile ........117
11.10. IEEE 802.11 Message Element Values . . . . . . . . . . . 122 11.10. IEEE 802.11 Message Element Values .....................117
12. LWAPP Protocol Timers . . . . . . . . . . . . . . . . . . . . 123 12. LWAPP Protocol Timers ........................................118
12.1. MaxDiscoveryInterval . . . . . . . . . . . . . . . . . . 123 12.1. MaxDiscoveryInterval ....................................118
12.2. SilentInterval . . . . . . . . . . . . . . . . . . . . . 123 12.2. SilentInterval ..........................................118
12.3. NeighborDeadInterval . . . . . . . . . . . . . . . . . . 123 12.3. NeighborDeadInterval ....................................118
12.4. EchoInterval . . . . . . . . . . . . . . . . . . . . . . 123 12.4. EchoInterval ............................................118
12.5. DiscoveryInterval . . . . . . . . . . . . . . . . . . . 123 12.5. DiscoveryInterval .......................................118
12.6. RetransmitInterval . . . . . . . . . . . . . . . . . . . 123 12.6. RetransmitInterval ......................................119
12.7. ResponseTimeout . . . . . . . . . . . . . . . . . . . . 124 12.7. ResponseTimeout .........................................119
12.8. KeyLifetime . . . . . . . . . . . . . . . . . . . . . . 124 12.8. KeyLifetime .............................................119
13. LWAPP Protocol Variables . . . . . . . . . . . . . . . . . . 125 13. LWAPP Protocol Variables .....................................119
13.1. MaxDiscoveries . . . . . . . . . . . . . . . . . . . . . 125 13.1. MaxDiscoveries ..........................................119
13.2. DiscoveryCount . . . . . . . . . . . . . . . . . . . . . 125 13.2. DiscoveryCount ..........................................119
13.3. RetransmitCount . . . . . . . . . . . . . . . . . . . . 125 13.3. RetransmitCount .........................................119
13.4. MaxRetransmit . . . . . . . . . . . . . . . . . . . . . 125 13.4. MaxRetransmit ...........................................120
14. NAT Considerations . . . . . . . . . . . . . . . . . . . . . 126 14. NAT Considerations ...........................................120
15. Security Considerations . . . . . . . . . . . . . . . . . . . 128 15. Security Considerations ......................................121
15.1. Certificate based Session Key establishment . . . . . . 129 15.1. Certificate-Based Session Key Establishment .............122
15.2. PSK based Session Key establishment . . . . . . . . . . 129 15.2. PSK-Based Session Key Establishment .....................123
16. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 130 16. Acknowledgements .............................................123
17. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 131 17. References ...................................................123
18. IPR Statement . . . . . . . . . . . . . . . . . . . . . . . . 132 17.1. Normative References ....................................123
19. References . . . . . . . . . . . . . . . . . . . . . . . . . 133 17.2. Informative References ..................................124
19.1. Normative References . . . . . . . . . . . . . . . . . . 133
19.2. Informational References . . . . . . . . . . . . . . . . 134
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 135
Intellectual Property and Copyright Statements . . . . . . . . . 137
1. Introduction 1. Introduction
Unlike wired network elements, Wireless Termination Points (WTPs) Unlike wired network elements, Wireless Termination Points (WTPs)
require a set of dynamic management and control functions related to require a set of dynamic management and control functions related to
their primary task of connecting the wireless and wired mediums. their primary task of connecting the wireless and wired mediums.
Today, protocols for managing WTPs are either manual static Today, protocols for managing WTPs are either manual static
configuration via HTTP, proprietary Layer 2 specific or non-existent configuration via HTTP, proprietary Layer 2-specific, or non-existent
(if the WTPs are self-contained). The emergence of simple 802.11 (if the WTPs are self-contained). The emergence of simple 802.11
WTPs that are managed by a WLAN appliance or switch (also known as an WTPs that are managed by a WLAN appliance or switch (also known as an
Access Controller, or AC) suggests that having a standardized, Access Controller, or AC) suggests that having a standardized,
interoperable protocol could radically simplify the deployment and interoperable protocol could radically simplify the deployment and
management of wireless networks. In many cases the overall control management of wireless networks. In many cases, the overall control
and management functions themselves are generic and could apply to an and management functions themselves are generic and could apply to an
AP for any wireless Layer 2 protocol. Being independent of specific AP for any wireless Layer 2 (L2) protocol. Being independent of
wireless Layer 2 technologies, such a protocol could better support specific wireless Layer 2 technologies, such a protocol could better
interoperability between Layer 2 devices and enable smoother support interoperability between Layer 2 devices and enable smoother
intertechnology handovers. intertechnology handovers.
The details of how these functions would be implemented are dependent The details of how these functions would be implemented are dependent
on the particular Layer 2 wireless technology. Such a protocol would on the particular Layer 2 wireless technology. Such a protocol would
need provisions for binding to specific technologies. need provisions for binding to specific technologies.
LWAPP assumes a network configuration that consists of multiple WTPs LWAPP assumes a network configuration that consists of multiple WTPs
communicating either via layer 2 (MAC) or layer 3 (IP) to an AC. The communicating either via Layer 2 (Medium Access Control (MAC)) or
WTPs can be considered as remote RF interfaces, being controlled by Layer 3 (IP) to an AC. The WTPs can be considered as remote radio
the AC. The AC forwards all L2 frames it wants to transmit to an WTP frequency (RF) interfaces, being controlled by the AC. The AC
via the LWAPP protocol. Packets from mobile nodes are forwarded by forwards all L2 frames it wants to transmit to a WTP via the LWAPP
the WTP to the AC, also via this protocol. Figure 1 illustrates this protocol. Packets from mobile nodes are forwarded by the WTP to the
arrangement as applied to an IEEE 802.11 binding. AC, also via this protocol. Figure 1 illustrates this arrangement as
applied to an IEEE 802.11 binding.
+-+ 802.11frames +-+ +-+ 802.11 frames +-+
| |--------------------------------| | | |--------------------------------| |
| | +-+ | | | | +-+ | |
| |--------------| |---------------| | | |--------------| |---------------| |
| | 802.11 PHY/ | | LWAPP | | | | 802.11 PHY/ | | LWAPP | |
| | MAC sublayer | | | | | | MAC sublayer | | | |
+-+ +-+ +-+ +-+ +-+ +-+
STA WTP AC STA WTP AC
Figure 1: LWAPP Architecture Figure 1: LWAPP Architecture
Security is another aspect of Wireless Termination Point management Security is another aspect of Wireless Termination Point management
that is not well served by existing solutions. Provisioning WTPs that is not well served by existing solutions. Provisioning WTPs
with security credentials, and managing which WTPs are authorized to with security credentials, and managing which WTPs are authorized to
provide service are today handled by proprietary solutions. Allowing provide service are today handled by proprietary solutions. Allowing
these functions to be performed from a centralized AC in an these functions to be performed from a centralized AC in an
interoperable fashion increases managability and allows network interoperable fashion increases manageability and allows network
operators to more tightly control their wireless network operators to more tightly control their wireless network
infrastructure. infrastructure.
This document describes the Light Weight Access Point Protocol This document describes the Lightweight Access Point Protocol
(LWAPP), allowing an AC to manage a collection of WTPs. The protocol (LWAPP), allowing an AC to manage a collection of WTPs. The protocol
is defined to be independent of Layer 2 technology, but an 802.11 is defined to be independent of Layer 2 technology, but an 802.11
binding is provided for use in growing 802.11 wireless LAN networks. binding is provided for use in growing 802.11 wireless LAN networks.
Goals Goals:
The following are goals for this protocol: The following are goals for this protocol:
1. Centralization of the bridging, forwarding, authentication and 1. Centralization of the bridging, forwarding, authentication, and
policy enforcement functions for a wireless network. Optionally, policy enforcement functions for a wireless network. Optionally,
the AC may also provide centralized encryption of user traffic. the AC may also provide centralized encryption of user traffic.
This will permit reduced cost and higher efficiency when applying This will permit reduced cost and higher efficiency when applying
the capabilities of network processing silicon to the wireless the capabilities of network processing silicon to the wireless
network, as it has already been applied to wired LANs. network, as it has already been applied to wired LANs.
2. Permit shifting of the higher level protocol processing burden 2. Permit shifting of the higher-level protocol processing burden
away from the WTP. This leaves the computing resource of the WTP away from the WTP. This leaves the computing resource of the WTP
to the timing critical applications of wireless control and to the timing-critical applications of wireless control and
access. This makes the most efficient use of the computing power access. This makes the most efficient use of the computing power
available in WTPs that are the subject of severe cost pressure. available in WTPs that are the subject of severe cost pressure.
3. Providing a generic encapsulation and transport mechanism, the 3. Providing a generic encapsulation and transport mechanism, the
protocol may be applied to other access point type in the future protocol may be applied to other access point types in the future
by adding the binding. by adding the binding.
The LWAPP protocol concerns itself solely with the interface between The LWAPP protocol concerns itself solely with the interface between
the WTP and the AC. Inter-AC, or mobile to AC communication is the WTP and the AC. Inter-AC, or mobile-to-AC communication is
strictly outside the scope of this document. strictly outside the scope of this document.
1.1. Conventions used in this document 1.1. Conventions Used in This Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [1]. document are to be interpreted as described in RFC 2119 [1].
2. Protocol Overview 2. Protocol Overview
LWAPP is a generic protocol defining how Wireless Termination Points LWAPP is a generic protocol defining how Wireless Termination Points
communicate with Access Controllers. Wireless Termination Points and communicate with Access Controllers. Wireless Termination Points and
Access Controllers may communicate either by means of Layer 2 Access Controllers may communicate either by means of Layer 2
protocols or by means of a routed IP network. protocols or by means of a routed IP network.
LWAPP messages and procedures defined in this document apply to both LWAPP messages and procedures defined in this document apply to both
types of transports unless specified otherwise. Transport types of transports unless specified otherwise. Transport
independence is achieved by defining formats for both MAC level and independence is achieved by defining formats for both MAC-level and
IP level transport (see Section 3). Also defined are framing, IP-level transport (see Section 3). Also defined are framing,
fragmentation/reassembly, and multiplexing services to LWAPP for each fragmentation/reassembly, and multiplexing services to LWAPP for each
transport type. transport type.
The LWAPP Transport layer carries two types of payload. LWAPP Data The LWAPP Transport layer carries two types of payload. LWAPP data
Messages are forwarded wireless frames. LWAPP Control Messages are messages are forwarded wireless frames. LWAPP control messages are
management messages exchanged between an WTP and an AC. The LWAPP management messages exchanged between a WTP and an AC. The LWAPP
transport header defines the "C-bit", which is used to distinguish transport header defines the "C-bit", which is used to distinguish
data and control traffic. When used over IP, the LWAPP data and data and control traffic. When used over IP, the LWAPP data and
control traffic are also sent over separate UDP ports. Since both control traffic are also sent over separate UDP ports. Since both
data and control frames can exceed PMTU, the payload of an LWAPP data data and control frames can exceed Path Maximum Transmission Unit
or control message can be fragmented. The fragmentation behavior is (PMTU), the payload of an LWAPP data or control message can be
highly dependent upon the lower layer transport and is defined in fragmented. The fragmentation behavior is highly dependent upon the
Section 3. lower-layer transport and is defined in Section 3.
The Light Weight Access Protocol (LWAPP) begins with a discovery The Lightweight Access Protocol (LWAPP) begins with a discovery
phase. The WTPs send a Discovery Request frame, causing any Access phase. The WTPs send a Discovery Request frame, causing any Access
Controller (AC) , receiving that frame to respond with a Discovery Controller (AC), receiving that frame to respond with a Discovery
Response. From the Discovery Responses received, an WTP will select Response. From the Discovery Responses received, a WTP will select
an AC with which to associate, using the Join Request and Join an AC with which to associate, using the Join Request and Join
Response. The Join Request also provides an MTU discovery mechanism, Response. The Join Request also provides an MTU discovery mechanism,
to determine whether there is support for the transport of large to determine whether there is support for the transport of large
frames between the WTP and it's AC. If support for large frames is frames between the WTP and its AC. If support for large frames is
not present, the LWAPP frames will be fragmented to the maximum not present, the LWAPP frames will be fragmented to the maximum
length discovered to be supported by the network. length discovered to be supported by the network.
Once the WTP and the AC have joined, a configuration exchange is Once the WTP and the AC have joined, a configuration exchange is
accomplished that will cause both devices to agree on version accomplished that will cause both devices to agree on version
information. During this exchange the WTP may receive provisioning information. During this exchange, the WTP may receive provisioning
settings. For the 802.11 binding, this information would typically settings. For the 802.11 binding, this information would typically
include a name (802.11 Service Set Identifier, SSID), and security include a name (802.11 Service Set Identifier, SSID), and security
parameters, the data rates to be advertised as well as the radio parameters, the data rates to be advertised, as well as the radio
channel (channels, if the WTP is capable of operating more than one channel (channels, if the WTP is capable of operating more than one
802.11 MAC and PHY simultaneously) to be used. Finally, the WTPs are 802.11 MAC and Physical Layer (PHY) simultaneously) to be used.
enabled for operation. Finally, the WTPs are enabled for operation.
When the WTP and AC have completed the version and provision exchange When the WTP and AC have completed the version and provision exchange
and the WTP is enabled, the LWAPP encapsulates the wireless frames and the WTP is enabled, the LWAPP encapsulates the wireless frames
sent between them. LWAPP will fragment its packets, if the size of sent between them. LWAPP will fragment its packets, if the size of
the encapsulated wireless user data (Data) or protocol control the encapsulated wireless user data (Data) or protocol control
(Management) frames causes the resultant LWAPP packet to exceed the (Management) frames cause the resultant LWAPP packet to exceed the
MTU supported between the WTP and AC. Fragmented LWAPP packets are MTU supported between the WTP and AC. Fragmented LWAPP packets are
reassembled to reconstitute the original encapsulated payload. reassembled to reconstitute the original encapsulated payload.
In addition to the functions thus far described, LWAPP also provides In addition to the functions thus far described, LWAPP also provides
for the delivery of commands from the AC to the WTP for the for the delivery of commands from the AC to the WTP for the
management of devices that are communicating with the WTP. This may management of devices that are communicating with the WTP. This may
include the creation of local data structures in the WTP for the include the creation of local data structures in the WTP for the
managed devices and the collection of statistical information about managed devices and the collection of statistical information about
the communication between the WTP and the 802.11 devices. LWAPP the communication between the WTP and the 802.11 devices. LWAPP
provides the ability for the AC to obtain any statistical information provides the ability for the AC to obtain any statistical information
collected by the WTP. collected by the WTP.
LWAPP also provides for a keep alive feature that preserves the LWAPP also provides for a keepalive feature that preserves the
communication channel between the WTP and AC. If the AC fails to communication channel between the WTP and AC. If the AC fails to
appear alive, the WTP will try to discover a new AC to communicate appear alive, the WTP will try to discover a new AC to communicate
through. through.
This Document uses terminology defined in [5] This document uses terminology defined in [5].
2.1. Wireless Binding Definition 2.1. Wireless Binding Definition
This draft standard specifies a protocol independent of a specific This draft standard specifies a protocol independent of a specific
wireless access point radio technology. Elements of the protocol are wireless access point radio technology. Elements of the protocol are
designed to accommodate specific needs of each wireless technology in designed to accommodate specific needs of each wireless technology in
a standard way. Implementation of this standard for a particular a standard way. Implementation of this standard for a particular
wireless technology must follow the binding requirements defined for wireless technology must follow the binding requirements defined for
that technology. This specification includes a binding for the IEEE that technology. This specification includes a binding for the IEEE
802.11 (see Section 11). 802.11 (see Section 11).
When defining a binding for other technologies, the authors MUST When defining a binding for other technologies, the authors MUST
include any necessary definitions for technology-specific messages include any necessary definitions for technology-specific messages
and all technology-specific message elements for those messages. At and all technology-specific message elements for those messages. At
a minimum, a binding MUST provide the definition for a binding- a minimum, a binding MUST provide the definition for a binding-
specific Statistics message element, which is carried in the WTP specific Statistics message element, which is carried in the WTP
Event Request message, and Add Mobile message element, which is Event Request message, and Add Mobile message element, which is
carried in the Mobile Configure Request. If any technology specific carried in the Mobile Configure Request. If any technology-specific
message elements are required for any of the existing LWAPP messages message elements are required for any of the existing LWAPP messages
defined in this specification, they MUST also be defined in the defined in this specification, they MUST also be defined in the
technology binding document. technology-binding document.
The naming of binding-specific message elements MUST begin with the The naming of binding-specific message elements MUST begin with the
name of the technology type, e.g., the binding for IEEE 802.11, name of the technology type, e.g., the binding for IEEE 802.11,
provided in this standard, begins with "IEEE 802.11"." provided in this standard, begins with "IEEE 802.11".
2.2. LWAPP State Machine Definition 2.2. LWAPP State Machine Definition
The following state diagram represents the lifecycle of an WTP-AC The following state diagram represents the life cycle of a WTP-AC
session: session:
/-------------\ /-------------\
| v | v
| +------------+ | +------------+
| C| Idle |<-----------------------------------\ | C| Idle |<-----------------------------------\
| +------------+<-----------------------\ | | +------------+<-----------------------\ |
| ^ |a ^ | | | ^ |a ^ | |
| | | \----\ | | | | | \----\ | |
| | | | +------------+ | | | | | +------------+ |
skipping to change at page 12, line 43 skipping to change at page 12, line 43
| +---------+ v |i 2| | | +---------+ v |i 2| |
| C| Sulking | +------------+ +--------------+ | | C| Sulking | +------------+ +--------------+ |
| +---------+ C| Join |--->| Join-Confirm | | | +---------+ C| Join |--->| Join-Confirm | |
| g+------------+z +--------------+ | | g+------------+z +--------------+ |
| |h m| 3| |4 | | |h m| 3| |4 |
| | | | v |o | | | | v |o
|\ | | | +------------+ |\ | | | +------------+
\\-----------------/ \--------+---->| Image Data |C \\-----------------/ \--------+---->| Image Data |C
\------------------------------------/ +------------+n \------------------------------------/ +------------+n
Figure 2: LWAPP State Machine Figure 2: LWAPP State Machine
The LWAPP state machine, depicted above, is used by both the AC and The LWAPP state machine, depicted above, is used by both the AC and
the WTP. For every state defined, only certain messages are the WTP. For every state defined, only certain messages are
permitted to be sent and received. In all of the LWAPP control permitted to be sent and received. In all of the LWAPP control
messages defined in this document, the state for which each command messages defined in this document, the state for which each command
is valid is specified. is valid is specified.
Note that in the state diagram figure above, the 'C' character is Note that in the state diagram figure above, the 'C' character is
used to represent a condition that causes the state to remain the used to represent a condition that causes the state to remain the
same. same.
The following text discusses the various state transitions, and the The following text discusses the various state transitions, and the
events that cause them. events that cause them.
Idle to Discovery (a): This is the initialization state. Idle to Discovery (a): This is the initialization state.
WTP: The WTP enters the Discovery state prior to transmitting the WTP: The WTP enters the Discovery state prior to transmitting the
first Discovery Request (see Section 5.1). Upon entering this first Discovery Request (see Section 5.1). Upon entering
state, the WTP sets the DiscoveryInterval timer (see this state, the WTP sets the DiscoveryInterval timer (see
Section 12). The WTP resets the DiscoveryCount counter to zero Section 12). The WTP resets the DiscoveryCount counter to
(0) (see Section 13). The WTP also clears all information from zero (0) (see Section 13). The WTP also clears all
ACs (e.g., AC Addresses) it may have received during a previous information from ACs (e.g., AC Addresses) it may have
Discovery phase. received during a previous discovery phase.
AC: The AC does not need to maintain state information for the AC: The AC does not need to maintain state information for the
WTP upon reception of the Discovery Request, but it MUST WTP upon reception of the Discovery Request, but it MUST
respond with a Discovery Response (see Section 5.2). respond with a Discovery Response (see Section 5.2).
Discovery to Discovery (b): This is the state the WTP uses to Discovery to Discovery (b): This is the state the WTP uses to
determine which AC it wishes to connect to. determine to which AC it wishes to connect.
WTP: This event occurs when the DiscoveryInterval timer expires. WTP: This event occurs when the DiscoveryInterval timer expires.
The WTP transmits a Discovery Request to every AC which the WTP The WTP transmits a Discovery Request to every AC to which
hasn't received a response to. For every transition to this the WTP hasn't received a response. For every transition to
event, the WTP increments DisoveryCount counter. See this event, the WTP increments the DisoveryCount counter.
Section 5.1) for more information on how the WTP knows which See Section 5.1 for more information on how the WTP knows to
ACs it should transmit the Discovery Requests to. The WTP which ACs it should transmit the Discovery Requests. The
restarts the DiscoveryInterval timer. WTP restarts the DiscoveryInterval timer.
AC: This is a noop. AC: This is a noop.
Discovery to Sulking (d): This state occurs on a WTP when Discovery Discovery to Sulking (d): This state occurs on a WTP when Discovery
or connectivity to the AC fails. or connectivity to the AC fails.
WTP: The WTP enters this state when the DiscoveryInterval timer WTP: The WTP enters this state when the DiscoveryInterval timer
expires and the DiscoveryCount variable is equal to the expires and the DiscoveryCount variable is equal to the
MaxDiscoveries variable (see Section 13). Upon entering this MaxDiscoveries variable (see Section 13). Upon entering
state, the WTP will start the SilentInterval timer. While in this state, the WTP will start the SilentInterval timer.
the Sulking state, all LWAPP messages received are ignored. While in the Sulking state, all LWAPP messages received are
ignored.
AC: This is a noop. AC: This is a noop.
Sulking to Idle (e): This state occurs on a WTP when it must restart Sulking to Idle (e): This state occurs on a WTP when it must restart
the discovery phase. the discovery phase.
WTP: The WTP enters this state when the SilentInterval timer (see WTP: The WTP enters this state when the SilentInterval timer (see
Section 12) expires. Section 12) expires.
AC: This is a noop. AC: This is a noop.
Discovery to Join (f): This state is used by the WTP to confirm its Discovery to Join (f): This state is used by the WTP to confirm its
commitment to an AC that it wishes to be provided service. commitment to an AC that it wishes to be provided service.
WTP: The WTP selects the best AC based on the information it WTP: The WTP selects the best AC based on the information it
gathered during the Discovery Phase. It then transmits a Join gathered during the discovery phase. It then transmits a
Request (see Section 6.1 to its preferred AC. The WTP starts Join Request (see Section 6.1) to its preferred AC. The WTP
the WaitJoin Timer (see Section 12). starts the WaitJoin timer (see Section 12).
AC: The AC enters this state for the given WTP upon reception of AC: The AC enters this state for the given WTP upon reception of
a Join Request. The AC processes the request and responds with a Join Request. The AC processes the request and responds
a Join Response. with a Join Response.
Join to Join (g): This state transition occurs during the join Join to Join (g): This state transition occurs during the join
phase. phase.
WTP: The WTP enters this state when the WaitJoin timer expires, WTP: The WTP enters this state when the WaitJoin timer expires,
and the underlying transport requires LWAPP MTU detection and the underlying transport requires LWAPP MTU detection
Section 3). (Section 3).
AC: This state occurs when the AC receives a retransmission of a AC: This state occurs when the AC receives a retransmission of a
Join Request. The WTP processes the request and responds with Join Request. The WTP processes the request and responds
the Join Response.. with the Join Response.
Join to Idle (h): This state is used when the join process failed. Join to Idle (h): This state is used when the join process has
failed.
WTP: This state transition occurs if the WTP is configured to use WTP: This state transition occurs if the WTP is configured to use
PSK security and receives a Join Response that includes an pre-shared key (PSK) security and receives a Join Response
invalid PSK-MIC message element. that includes an invalid PSK-MIC (Message Integrity Check)
message element.
AC: The AC enters this state when it transmits an unsuccessful AC: The AC enters this state when it transmits an unsuccessful
Join Response. Join Response.
Join to Discovery (i): This state is used when the join process Join to Discovery (i): This state is used when the join process has
failed. failed.
WTP: The WTP enters this state when it receives an unsuccessful WTP: The WTP enters this state when it receives an unsuccessful
Join Response. Upon entering this state, the WTP sets the Join Response. Upon entering this state, the WTP sets the
DiscoveryInterval timer (see Section 12). The WTP resets the DiscoveryInterval timer (see Section 12). The WTP resets
DiscoveryCount counter to zero (0) (see Section 13). This the DiscoveryCount counter to zero (0) (see Section 13).
state transition may also occur if the PSK-MIC (see This state transition may also occur if the PSK-MIC (see
Section 6.2.9) message element is invalid. Section 6.2.9) message element is invalid.
AC: This state transition is invalid. AC: This state transition is invalid.
Join to Join-Confirm (z): This state is used to provide key Join to Join-Confirm (z): This state is used to provide key
confirmation during the join process. confirmation during the join process.
WTP: This state is entered when the WTP receives a Join Response. WTP: This state is entered when the WTP receives a Join Response.
In the event that certificate based security is utilized, this In the event that certificate-based security is utilized,
transition will occur if the Certificate message element is this transition will occur if the Certificate message
present and valid in the Join Response. For pre-shared key element is present and valid in the Join Response. For pre-
security, the Join Response must include a valud and shared key security, the Join Response must include a valid
authenticated PSK-MIC message element. The WTP MUST respond and authenticated PSK-MIC message element. The WTP MUST
with a Join ACK, which is used to provide key confirmation. respond with a Join ACK, which is used to provide key
confirmation.
AC: The AC enters this state when it receives a valid Join ACK. AC: The AC enters this state when it receives a valid Join ACK.
For certificate based security, the Join ACK MUST include a For certificate-based security, the Join ACK MUST include
valid and authenticated xxxx message element. For pre-shared the WNonce message element. For pre-shared key security,
key security, the message must include a valid PSK-MIC message the message must include a valid PSK-MIC message element.
element. The AC MUST respond with a Join Confirm message, The AC MUST respond with a Join Confirm message, which
which includes the Session Key message element. includes the Session Key message element.
Join-Confirm to Idle (3): This state is used when the join process Join-Confirm to Idle (3): This state is used when the join process
failed. has failed.
WTP: This state transition occurs when the WTP receives an WTP: This state transition occurs when the WTP receives an
invalid Join Confirm. invalid Join Confirm.
AC: The AC enters this state when it receives an invalid Join AC: The AC enters this state when it receives an invalid Join
ACK. ACK.
Join-Confirm to Configure (2): This state is used by the WTP and the Join-Confirm to Configure (2): This state is used by the WTP and the
AC to exchange configuration information. AC to exchange configuration information.
WTP: The WTP enters this state when it receives a successful Join WTP: The WTP enters this state when it receives a successful Join
Confirm, and determines that its version number and the version Confirm and determines that its version number and the
number advertised by the AC are the same. The WTP transmits version number advertised by the AC are the same. The WTP
the Configure Request (see Section 7.2) message to the AC with transmits the Configure Request (see Section 7.2) message to
a snapshot of its current configuration. The WTP also starts the AC with a snapshot of its current configuration. The
the ResponseTimeout timer (see Section 12). WTP also starts the ResponseTimeout timer (see Section 12).
AC: This state transition occurs when the AC receives the AC: This state transition occurs when the AC receives the
Configure Request from the WTP. The AC must transmit a Configure Request from the WTP. The AC must transmit a
Configure Response (see Section 7.3) to the WTP, and may Configure Response (see Section 7.3) to the WTP, and may
include specific message elements to override the WTP's include specific message elements to override the WTP's
configuration. configuration.
Join-Confirm to Image Data (4): This state is used by the WTP and Join-Confirm to Image Data (4): This state is used by the WTP and
the AC to download executable firmware. the AC to download executable firmware.
WTP: The WTP enters this state when it receives a successful Join WTP: The WTP enters this state when it receives a successful Join
Confirm, and determines that its version number and the version Confirm, and determines that its version number and the
number advertised by the AC are different. The WTP transmits version number advertised by the AC are different. The WTP
the Image Data Request (see Section 8.1) message requesting transmits the Image Data Request (see Section 8.1) message
that the AC's latest firmware be initiated. requesting that the AC's latest firmware be initiated.
AC: This state transition occurs when the AC receives the Image AC: This state transition occurs when the AC receives the Image
Data Request from the WTP. The AC must transmit a Image Data Data Request from the WTP. The AC must transmit an Image
Response (see Section 8.2) to the WTP, which includes a portion Data Response (see Section 8.2) to the WTP, which includes a
of the firmware. portion of the firmware.
Image Data to Image Data (n): This state is used by WTP and the AC Image Data to Image Data (n): This state is used by the WTP and the
during the firmware download phase. AC during the firmware download phase.
WTP: The WTP enters this state when it receives a Image Data WTP: The WTP enters this state when it receives an Image Data
Response that indicates that the AC has more data to send. Response that indicates that the AC has more data to send.
AC: This state transition occurs when the AC receives the Image AC: This state transition occurs when the AC receives the Image
Data Request from the WTP while already in this state, and it Data Request from the WTP while already in this state, and
detects that the firmware download has not completed. it detects that the firmware download has not completed.
Image Data to Reset (o): This state is used when the firmware Image Data to Reset (o): This state is used when the firmware
download is completed. download is completed.
WTP: The WTP enters this state when it receives a Image Data WTP: The WTP enters this state when it receives an Image Data
Response that indicates that the AC has no more data to send, Response that indicates that the AC has no more data to
or if the underlying LWAPP transport indicates a link failure. send, or if the underlying LWAPP transport indicates a link
At this point, the WTP reboots itself. failure. At this point, the WTP reboots itself.
AC: This state transition occurs when the AC receives the Image AC: This state transition occurs when the AC receives the Image
Data Request from the WTP while already in this state, and it Data Request from the WTP while already in this state, and
detects that the firmware download has completed, or if the it detects that the firmware download has completed or if
underlying LWAPP transport indicates a link failure. Note that the underlying LWAPP transport indicates a link failure.
the AC itself does not reset, but it places the specific WTPs Note that the AC itself does not reset, but it places the
context it is communicating with in the reset state, meaning specific WTP's context it is communicating with in the reset
that it clears all state associated with the WTP. state: meaning that it clears all state associated with the
WTP.
Configure to Reset (p): This state transition occurs if the Configure to Reset (p): This state transition occurs if the
Configure phase fails. configure phase fails.
WTP: The WTP enters this state when the reliable transport fails WTP: The WTP enters this state when the reliable transport fails
to deliver the Configure Request, or if the ResponseTimeout to deliver the Configure Request, or if the ResponseTimeout
Timer (see Section 12)expires. timer (see Section 12) expires.
AC: This state transition occurs if the AC is unable to transmit AC: This state transition occurs if the AC is unable to transmit
the Configure Response to a specific WTP. Note that the AC the Configure Response to a specific WTP. Note that the AC
itself does not reset, but it places the specific WTPs context itself does not reset, but it places the specific WTP's
it is communicating with in the reset state, meaning that it context it is communicating with in the reset state: meaning
clears all state associated with the WTP. that it clears all state associated with the WTP.
Configure to Run (q): This state transition occurs when the WTP and Configure to Run (q): This state transition occurs when the WTP and
AC enters their normal state of operation. AC enter their normal state of operation.
WTP: The WTP enters this state when it receives a successful WTP: The WTP enters this state when it receives a successful
Configure Response from the AC. The WTP initializes the Configure Response from the AC. The WTP initializes the
HeartBeat Timer (see Section 12), and transmits the Change HeartBeat timer (see Section 12), and transmits the Change
State Event Request message (see Section 7.6). State Event Request message (see Section 7.6).
AC: This state transition occurs when the AC receives the Change AC: This state transition occurs when the AC receives the Change
State Event Request (see Section 7.6) from the WTP. The AC State Event Request (see Section 7.6) from the WTP. The AC
responds with a Change State Event Response (see Section 7.7) responds with a Change State Event Response (see Section
message. The AC must start the Session ID and Neighbor Dead 7.7) message. The AC must start the Session ID and
timers (see Section 12). NeighborDead timers (see Section 12).
Run to Run (r): This is the normal state of operation. Run to Run (r): This is the normal state of operation.
WTP: This is the WTP's normal state of operation, and there are WTP: This is the WTP's normal state of operation, and there are
many events that cause this to occur: many events that cause this to occur:
Configuration Update: The WTP receives a Configuration Update Configuration Update: The WTP receives a Configuration Update
Request (see Section 7.4). The WTP MUST respond with a Request (see Section 7.4). The WTP MUST respond with a
Configuration Update Response (see Section 7.5). Configuration Update Response (see Section 7.5).
Change State Event: The WTP receives a Change State Event Change State Event: The WTP receives a Change State Event
Response, or determines that it must initiate a Change State Response, or determines that it must initiate a Change State
Event Request, as a result of a failure or change in the Event Request, as a result of a failure or change in the state
state of a radio. of a radio.
Echo Request: The WTP receives an Echo Request message Echo Request: The WTP receives an Echo Request message
Section 6.5), which it MUST respond with an Echo Response (Section 6.5), to which it MUST respond with an Echo Response
(see Section 6.6). (see Section 6.6).
Clear Config Indication: The WTP receives a Clear Config Clear Config Indication: The WTP receives a Clear Config
Indication message Section 7.8). The WTP MUST reset its Indication message (Section 7.8). The WTP MUST reset its
configuration back to manufacturer defaults. configuration back to manufacturer defaults.
WTP Event: The WTP generates a WTP Event Request to send WTP Event: The WTP generates a WTP Event Request to send
information to the AC Section 8.5). The WTP receives a WTP information to the AC (Section 8.5). The WTP receives a WTP
Event Response from the AC Section 8.6). Event Response from the AC (Section 8.6).
Data Transfer: The WTP generates a Data Transfer Request to Data Transfer: The WTP generates a Data Transfer Request to
the AC Section 8.7). The WTP receives a Data Transfer the AC (Section 8.7). The WTP receives a Data Transfer
Response from the AC Section 8.8). Response from the AC (Section 8.8).
WLAN Config Request: The WTP receives an WLAN Config Request WLAN Config Request: The WTP receives a WLAN Config Request
message Section 11.8.1), which it MUST respond with an WLAN message (Section 11.8.1), to which it MUST respond with a WLAN
Config Response (see Section 11.8.2). Config Response (see Section 11.8.2).
Mobile Config Request: The WTP receives an Mobile Config Mobile Config Request: The WTP receives an Mobile Config
Request message Section 9.1), which it MUST respond with an Request message (Section 9.1), to which it MUST respond with a
Mobile Config Response (see Section 9.2). Mobile Config Response (see Section 9.2).
AC: This is the AC's normal state of operation, and there are AC: This is the AC's normal state of operation, and there are
many events that cause this to occur: many events that cause this to occur:
Configuration Update: The AC sends a Configuration Update Configuration Update: The AC sends a Configuration Update
Request (see Section 7.4) to the WTP to update its Request (see Section 7.4) to the WTP to update its
configuration. The AC receives a Configuration Update configuration. The AC receives a Configuration Update Response
Response (see Section 7.5) from the WTP. (see Section 7.5) from the WTP.
Change State Event: The AC receives a Change State Event Change State Event: The AC receives a Change State Event
Request (see Section 7.6), which it MUST respond to with the Request (see Section 7.6), to which it MUST respond with the
Change State Event Response (see Section 7.7). Change State Event Response (see Section 7.7).
Echo: The AC sends an Echo Request message Section 6.5) or Echo: The AC sends an Echo Request message (Section 6.5) or
receives the associated Echo Response (see Section 6.6) from receives the associated Echo Response (see Section 6.6) from
the WTP. the WTP.
Clear Config Indication: The AC sends a Clear Config Clear Config Indication: The AC sends a Clear Config
Indication message Section 7.8). Indication message (Section 7.8).
WLAN Config: The AC sends an WLAN Config Request message WLAN Config: The AC sends a WLAN Config Request message
Section 11.8.1) or receives the associated WLAN Config (Section 11.8.1) or receives the associated WLAN Config
Response (see Section 11.8.2) from the WTP. Response (see Section 11.8.2) from the WTP.
Mobile Config: The AC sends an Mobile Config Request message Mobile Config: The AC sends a Mobile Config Request message
Section 9.1) or receives the associated Mobile Config (Section 9.1) or receives the associated Mobile Config Response
Response (see Section 9.2) from the WTP. (see Section 9.2) from the WTP.
Data Transfer: The AC receives a Data Transfer Request from Data Transfer: The AC receives a Data Transfer Request from
the AC (see Section 8.7) and MUST generate the associated the AC (see Section 8.7) and MUST generate the associated Data
Data Transfer Response message (see Section 8.8). Transfer Response message (see Section 8.8).
WTP Event: The AC receives a WTP Event Request from the AC WTP Event: The AC receives a WTP Event Request from the AC
(see Section 8.5) and MUST generate the associated WTP Event (see Section 8.5) and MUST generate the associated WTP Event
Response message (see Section 8.6). Response message (see Section 8.6).
Run to Reset (s): This event occurs when the AC wishes for the WTP Run to Reset (s): This event occurs when the AC wishes for the WTP
to reboot. to reboot.
WTP: The WTP enters this state when it receives a Reset Request WTP: The WTP enters this state when it receives a Reset Request
(see Section 8.3). It must respond with a Reset Response (see (see Section 8.3). It must respond with a Reset Response
Section 8.4), and once the reliable transport acknowledgement (see Section 8.4), and once the reliable transport
has been received, it must reboot itself. acknowledgement has been received, it must reboot itself.
AC: This state transition occurs either through some AC: This state transition occurs either through some
administrative action, or via some internal event on the AC administrative action, or via some internal event on the AC
that causes it to request that the WTP disconnect. Note that that causes it to request that the WTP disconnect. Note
the AC itself does not reset, but it places the specific WTPs that the AC itself does not reset, but it places the
context it is communicating with in the reset state. specific WTPs context it is communicating with in the reset
state.
Run to Idle (t): This event occurs when an error occurs in the Run to Idle (t): This event occurs when an error occurs in the
communication between the WTP and the AC. communication between the WTP and the AC.
WTP: The WTP enters this state when the underlying reliable WTP: The WTP enters this state when the underlying reliable
transport in unable to transmit a message within the transport is unable to transmit a message within the
RetransmitInterval timer (see Section 12), and the maximum RetransmitInterval timer (see Section 12), and the maximum
number of RetransmitCount counter has reached the MaxRetransmit number of RetransmitCount counter has reached the
variable (see Section 13). MaxRetransmit variable (see Section 13).
AC: The AC enters this state when the underlying reliable AC: The AC enters this state when the underlying reliable
transport in unable to transmit a message within the transport in unable to transmit a message within the
RetransmitInterval timer (see Section 12), and the maximum RetransmitInterval timer (see Section 12), and the maximum
number of RetransmitCount counter has reached the MaxRetransmit number of RetransmitCount counter has reached the
variable (see Section 13). MaxRetransmit variable (see Section 13).
Run to Key Update (u): This event occurs when the WTP and the AC are Run to Key Update (u): This event occurs when the WTP and the AC are
to exchange new keying material, with which it must use to protect to exchange new keying material, with which it must use to protect
all future messages. all future messages.
WTP: This state transition occurs when the KeyLifetime timer WTP: This state transition occurs when the KeyLifetime timer
expires (see Section 12). expires (see Section 12).
AC: The WTP enters this state when it receives a Key Update AC: The WTP enters this state when it receives a Key Update
Request (see Section 6.7). Request (see Section 6.7).
Key Update to Key Confirm (w): This event occurs during the rekey Key Update to Key Confirm (w): This event occurs during the rekey
phase and is used to complete the loop. phase and is used to complete the loop.
WTP: This state transition occurs when the WTP receives the Key WTP: This state transition occurs when the WTP receives the Key
Update Response. The WTP MUST only accept the message if it is Update Response. The WTP MUST only accept the message if it
authentic. The WTP responds to this response with a Key Update is authentic. The WTP responds to this response with a Key
ACK. Update ACK.
AC: The AC enters this state when it receives an authenticated AC: The AC enters this state when it receives an authenticated
Key Update ACK message. Key Update ACK message.
Key Confirm to Run (5): This event occurs when the rekey exchange Key Confirm to Run (5): This event occurs when the rekey exchange
phase is completed. phase is completed.
WTP: This state transition occurs when the WTP receives the Key WTP: This state transition occurs when the WTP receives the Key
Update Confirm. The newly derived encryption key and IV must Update Confirm. The newly derived encryption key and
be plumbed into the crypto module after validating the Initialization Vector (IV) must be plumbed into the crypto
message's authentication. module after validating the message's authentication.
AC: The AC enters this state when it transmits the Key Update AC: The AC enters this state when it transmits the Key Update
Confirm message. The newly derived encryption key and IV must Confirm message. The newly derived encryption key and IV
be plumbed into the crypto module after transmitting a Key must be plumbed into the crypto module after transmitting a
Update Confirm message. Key Update Confirm message.
Key Update to Reset (x): This event occurs when the key exchange Key Update to Reset (x): This event occurs when the key exchange
phase times out. phase times out.
WTP: This state transition occurs when the WTP does not receive a WTP: This state transition occurs when the WTP does not receive a
Key Update Response from the AC. Key Update Response from the AC.
AC: The AC enters this state when it is unable to process a Key AC: The AC enters this state when it is unable to process a Key
Update Request. Update Request.
Reset to Idle (y): This event occurs when the state machine is Reset to Idle (y): This event occurs when the state machine is
restarted. restarted.
WTP: The WTP reboots itself. After reboot the WTP will start its WTP: The WTP reboots itself. After rebooting, the WTP will start
LWAPP state machine in the Idle state. its LWAPP state machine in the Idle state.
AC: The AC clears out any state associated with the WTP. The AC AC: The AC clears out any state associated with the WTP. The AC
generally does this as a result of the reliable link layer generally does this as a result of the reliable link layer
timing out. timing out.
3. LWAPP Transport Layers 3. LWAPP Transport Layers
The LWAPP protocol can operate at layer 2 or 3. For layer 2 support, The LWAPP protocol can operate at Layer 2 or 3. For Layer 2 support,
the LWAPP messages are carried in a native Ethernet frame. As such, the LWAPP messages are carried in a native Ethernet frame. As such,
the protocol is not routable and depends upon layer 2 connectivity the protocol is not routable and depends upon Layer 2 connectivity
between the WTP and the AC. Layer 3 support is provided by between the WTP and the AC. Layer 3 support is provided by
encapsulating the LWAPP messages within UDP. encapsulating the LWAPP messages within UDP.
3.1. LWAPP Transport Header 3.1. LWAPP Transport Header
All LWAPP protocol packets are encapsulated using a common header All LWAPP protocol packets are encapsulated using a common header
format, regardless of the transport used to carry the frames. format, regardless of the transport used to carry the frames.
However, certain flags are not applicable for a given transport, and However, certain flags are not applicable for a given transport, and
it is therefore necessary to refer to the specific transport section it is therefore necessary to refer to the specific transport section
in order to determine which flags are valid. in order to determine which flags are valid.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|VER| RID |C|F|L| Frag ID | Length | |VER| RID |C|F|L| Frag ID | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status/WLANs | Payload... | | Status/WLANs | Payload... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
3.1.1. VER Field 3.1.1. VER Field
A 2 bit field which contains the version of LWAPP used in this A 2-bit field that contains the version of LWAPP used in this packet.
packet. The value for this draft is 0. The value for this document is 0.
3.1.2. RID Field 3.1.2. RID Field
A 3 bit field which contains the Radio ID number for this packet. A 3-bit field that contains the Radio ID number for this packet.
WTPs with multiple radios but a single MAC Address use this field to WTPs with multiple radios but a single MAC address use this field to
indicate which radio is associated with the packet. indicate which radio is associated with the packet.
3.1.3. C Bit 3.1.3. C Bit
The Control Message 'C' bit indicates whether this packet carries a The control message 'C' bit indicates whether this packet carries a
data or control message. When this bit is zero (0), the packet data or control message. When this bit is zero (0), the packet
carries an LWAPP data message in the payload (see Section 4.1). When carries an LWAPP data message in the payload (see Section 4.1). When
this bit is one (1), the packet carries an LWAPP control message as this bit is one (1), the packet carries an LWAPP control message as
defined in section Section 4.2 for consumption by the addressed defined in Section 4.2 for consumption by the addressed destination.
destination.
3.1.4. F Bit 3.1.4. F Bit
The Fragment 'F' bit indicates whether this packet is a fragment. The Fragment 'F' bit indicates whether this packet is a fragment.
When this bit is one (1), the packet is a fragment and MUST be When this bit is one (1), the packet is a fragment and MUST be
combined with the other corresponding fragments to reassemble the combined with the other corresponding fragments to reassemble the
complete information exchanged between the WTP and AC. complete information exchanged between the WTP and AC.
3.1.5. L Bit 3.1.5. L Bit
The Not Last 'L' bit is valid only if the 'F' bit is set and The Not Last 'L' bit is valid only if the 'F' bit is set and
indicates whether the packet contains the last fragment of a indicates whether the packet contains the last fragment of a
fragmented exchange between WTP and AC. When this bit is 1, the fragmented exchange between the WTP and AC. When this bit is 1, the
packet is not the last fragment. When this bit is 0, the packet is packet is not the last fragment. When this bit is 0, the packet is
the last fragment. the last fragment.
3.1.6. Fragment ID 3.1.6. Fragment ID
An 8 bit field whose value is assigned to each group of fragments An 8-bit field whose value is assigned to each group of fragments
making up a complete set. The fragment ID space is managed making up a complete set. The Fragment ID space is managed
individually for every WTP/AC pair. The value of Fragment ID is individually for every WTP/AC pair. The value of Fragment ID is
incremented with each new set of fragments. The Fragment ID wraps to incremented with each new set of fragments. The Fragment ID wraps to
zero after the maximum value has been used to identify a set of zero after the maximum value has been used to identify a set of
fragments. LWAPP only supports up to 2 fragments per frame. fragments. LWAPP only supports up to 2 fragments per frame.
3.1.7. Length 3.1.7. Length
The 16 bit length field contains the number of bytes in the Payload. The 16-bit length field contains the number of bytes in the Payload.
The field is encoded as an unsigned number. If the LWAPP packet is The field is encoded as an unsigned number. If the LWAPP packet is
encrypted, the length field includes the AES-CCM MIC (see encrypted, the length field includes the Advanced Encryption Standard
Section 10.2 for more information). Counter with CBC-MAC (AES-CCM) MIC (see Section 10.2 for more
information).
3.1.8. Status and WLANS 3.1.8. Status and WLANS
The interpretation of this 16 bit field is binding specific. Refer The interpretation of this 16-bit field is binding-specific. Refer
to the transport portion of the binding for a wireless technology for to the transport portion of the binding for a wireless technology for
the specification. the specification.
3.1.9. Payload 3.1.9. Payload
This field contains the header for an LWAPP Data Message or LWAPP This field contains the header for an LWAPP data message or LWAPP
Control Message, followed by the data associated with that message. control message, followed by the data associated with that message.
3.2. Using IEEE 802.3 MAC as LWAPP transport 3.2. Using IEEE 802.3 MAC as LWAPP Transport
This section describes how the LWAPP protocol is provided over native This section describes how the LWAPP protocol is provided over native
ethernet frames. An LWAPP packet is formed from the MAC frame header Ethernet frames. An LWAPP packet is formed from the MAC frame
followed by the LWAPP message header. The following figure provides header, followed by the LWAPP message header. The following figure
an example of the frame formats used when LWAPP is used over the IEEE provides an example of the frame formats used when LWAPP is used over
802.3 transport. the IEEE 802.3 transport.
Layer 2 LWAPP Data Frame Layer 2 LWAPP Data Frame
+-----------------------------------------------------------+ +-----------------------------------------------------------+
| MAC Header | LWAPP Header [C=0] | Forwarded Data ... | | MAC Header | LWAPP Header [C=0] | Forwarded Data ... |
+-----------------------------------------------------------+ +-----------------------------------------------------------+
Layer 2 LWAPP Control Frame Layer 2 LWAPP Control Frame
+---------------------------------------------------+ +---------------------------------------------------+
| MAC Header | LWAPP Header [C=1] | Control Message | | MAC Header | LWAPP Header [C=1] | Control Message |
+---------------------------------------------------+ +---------------------------------------------------+
| Message Elements ... | | Message Elements ... |
+----------------------+ +----------------------+
3.2.1. Framing 3.2.1. Framing
Source Address Source Address
A MAC address belonging to the interface from which this message is A MAC address belonging to the interface from which this message is
sent. If multiple source addresses are configured on an interface, sent. If multiple source addresses are configured on an interface,
then the one chosen is implementation dependent. then the one chosen is implementation-dependent.
Destination Address Destination Address
A MAC address belonging to the interface to which this message is to A MAC address belonging to the interface to which this message is to
be sent. This destination address MAY be either an individual be sent. This destination address MAY be either an individual
address or a multicast address, if more than one destination address or a multicast address, if more than one destination
interface is intended. interface is intended.
Ethertype Ethertype
The Ethertype field is set to 0x88bb. The Ethertype field is set to 0x88bb.
3.2.2. AC Discovery 3.2.2. AC Discovery
When run over IEEE 802.3, LWAPP messages are distributed to a When run over IEEE 802.3, LWAPP messages are distributed to a
specific MAC level broadcast domain. The AC discovery mechanism used specific MAC-level broadcast domain. The AC discovery mechanism used
with this transport is for an WTP to transmit a Discovery Request with this transport is for a WTP to transmit a Discovery Request
message to a broadcast destination MAC address. The ACs will receive message to a broadcast destination MAC address. The ACs will receive
this message and reply based on their policy. this message and reply based on their policy.
3.2.3. LWAPP Message Header format over IEEE 802.3 MAC transport 3.2.3. LWAPP Message Header Format over IEEE 802.3 MAC Transport
All of the fields described in Section 3.1 are used when LWAPP uses All of the fields described in Section 3.1 are used when LWAPP uses
the IEEE 802.3 MAC transport. the IEEE 802.3 MAC transport.
3.2.4. Fragmentation/Reassembly 3.2.4. Fragmentation/Reassembly
Fragmentation at the MAC layer is managed using the F,L and Frag ID Fragmentation at the MAC layer is managed using the F, L, and Frag ID
fields of the LWAPP message header. The LWAPP protocol only allows a fields of the LWAPP message header. The LWAPP protocol only allows a
single packet to be fragmented into 2, which is sufficient for a single packet to be fragmented into 2, which is sufficient for a
frame that exceeds MTU due to LWAPP encapsulation. When used with frame that exceeds MTU due to LWAPP encapsulation. When used with
layer 2 (Ethernet) transport, both fragments MUST include the LWAPP Layer 2 (Ethernet) transport, both fragments MUST include the LWAPP
header. header.
3.2.5. Multiplexing 3.2.5. Multiplexing
LWAPP control messages and data messages are distinguished by the C LWAPP control messages and data messages are distinguished by the 'C'
Bit in the LWAPP message header. bit in the LWAPP message header.
3.3. Using IP/UDP as LWAPP transport 3.3. Using IP/UDP as LWAPP Transport
This section defines how LWAPP makes use of IP/UDP transport between This section defines how LWAPP makes use of IP/UDP transport between
the WTP and the AC. When this transport is used, the MAC layer is the WTP and the AC. When this transport is used, the MAC layer is
controlled by the IP stack, and there are therefore no special MAC controlled by the IP stack, and there are therefore no special MAC-
layer requirements. The following figure provides an example of the layer requirements. The following figure provides an example of the
frame formats used when LWAPP is used over the IP/UDP transport. IP frame formats used when LWAPP is used over the IP/UDP transport. IP
stacks can be either IPv4 or IPv6. stacks can be either IPv4 or IPv6.
Layer 3 LWAPP Data Frame Layer 3 LWAPP Data Frame
+--------------------------------------------+ +--------------------------------------------+
| MAC Header | IP | UDP | LWAPP Header [C=0] | | MAC Header | IP | UDP | LWAPP Header [C=0] |
+--------------------------------------------+ +--------------------------------------------+
|Forwarded Data ... | |Forwarded Data ... |
+-------------------+ +-------------------+
Layer 3 LWAPP Control Frame Layer 3 LWAPP Control Frame
+--------------------------------------------+ +--------------------------------------------+
| MAC Header | IP | UDP | LWAPP Header [C=1] | | MAC Header | IP | UDP | LWAPP Header [C=1] |
+--------------------------------------------+ +--------------------------------------------+
| Control Message | Message Elements ... | | Control Message | Message Elements ... |
+-----------------+----------------------+ +-----------------+----------------------+
3.3.1. Framing 3.3.1. Framing
Communication between WTP and AC is established according to the Communication between the WTP and AC is established according to the
standard UDP client/server model. The connection is initiated by the standard UDP client/server model. The connection is initiated by the
WTP (client) to the well-known UDP port of the AC (server) used for WTP (client) to the well-known UDP port of the AC (server) used for
control messages. This UDP port number of the AC is 12222 for LWAPP control messages. This UDP port number of the AC is 12222 for LWAPP
data and 12223 for LWAPP control frames. data and 12223 for LWAPP control frames.
3.3.2. AC Discovery 3.3.2. AC Discovery
When LWAPP is run over routed IP networks, the WTP and the AC do not When LWAPP is run over routed IP networks, the WTP and the AC do not
need to reside in the same IP subnet (broadcast domain). However, in need to reside in the same IP subnet (broadcast domain). However, in
the event the peers reside on separate subnets, there must exist a the event the peers reside on separate subnets, there must exist a
mechanism for the WTP to discover the AC. mechanism for the WTP to discover the AC.
As the WTP attempts to establish communication with the AC, it sends As the WTP attempts to establish communication with the AC, it sends
the Discovery Request message and receives the corresponding response the Discovery Request message and receives the corresponding response
message from the AC. The WTP must send the Discovery Request message message from the AC. The WTP must send the Discovery Request message
to either the limited broadcast IP address (255.255.255.255), a well to either the limited broadcast IP address (255.255.255.255), a well
known multicast address or to the unicast IP address of the AC. Upon known multicast address, or the unicast IP address of the AC. Upon
receipt of the message, the AC issues a Discovery Response message to receipt of the message, the AC issues a Discovery Response message to
the unicast IP address of the WTP, regardless of whether Discovery the unicast IP address of the WTP, regardless of whether a Discovery
Request was sent as a broadcast, multicast or unicast message. Request was sent as a broadcast, multicast, or unicast message.
Whether the WTP uses a limited IP broadcast, multicast or unicast IP Whether the WTP uses a limited IP broadcast, multicast or unicast IP
address is implementation dependent. address is implementation-dependent.
In order for a WTP to transmit a Discovery Request to a unicast In order for a WTP to transmit a Discovery Request to a unicast
address, the WTP must first obtain the IP address of the AC. Any address, the WTP must first obtain the IP address of the AC. Any
static configuration of an AC's IP address on the WTP non-volatile static configuration of an AC's IP address on the WTP non-volatile
storage is implementation dependent. However, additional dynamic storage is implementation-dependent. However, additional dynamic
schemes are possible, for example: schemes are possible: for example:
DHCP: A comma delimited ASCII encoded list of AC IP addresses is DHCP: A comma-delimited, ASCII-encoded list of AC IP addresses is
embedded inside a DHCP vendor specific option 43 extension. An embedded inside a DHCP vendor-specific option 43 extension.
example of the actual format of the vendor specific payload for An example of the actual format of the vendor-specific payload
IPv4 is of the form "10.1.1.1, 10.1.1.2". for IPv4 is of the form "10.1.1.1, 10.1.1.2".
DNS: The DNS name "LWAPP-AC-Address" MAY be resolvable to or more AC DNS: The DNS name "LWAPP-AC-Address" MAY be resolvable to one or
addresses more AC addresses.
3.3.3. LWAPP Message Header format over IP/UDP transport 3.3.3. LWAPP Message Header Format over IP/UDP Transport
All of the fields described in Section 3.1 are used when LWAPP uses All of the fields described in Section 3.1 are used when LWAPP uses
the IPv4/UDP or IPv6/UDP transport, with the following exceptions: the IPv4/UDP or IPv6/UDP transport, with the following exceptions.
3.3.3.1. F Bit 3.3.3.1. F Bit
This flag field is not used with this transport, and MUST be set to This flag field is not used with this transport, and MUST be set to
zero. zero.
3.3.3.2. L Bit 3.3.3.2. L Bit
This flag field is not used with this transport, and MUST be set to This flag field is not used with this transport, and MUST be set to
zero. zero.
3.3.3.3. Frag ID 3.3.3.3. Frag ID
This field is not used with this transport, and MUST be set to zero. This field is not used with this transport, and MUST be set to zero.
3.3.4. Fragmentation/Reassembly for IPv4 3.3.4. Fragmentation/Reassembly for IPv4
When LWAPP is implemented at L3, the transport layer uses IP When LWAPP is implemented at L3, the transport layer uses IP
fragmentation to fragment and reassemble LWAPP messages that are fragmentation to fragment and reassemble LWAPP messages that are
longer than MTU size used by either WTP or AC. The details of IP longer than the MTU size used by either the WTP or AC. The details
fragmentation are covered in [8]. When used with the IP transport, of IP fragmentation are covered in [8]. When used with the IP
only the first fragment would include the LWAPP header transport, only the first fragment would include the LWAPP header.
[ed: IP fragmentation may raise security concerns and bring
additional configuration requirements for certain firewalls and NATs.
One alternative is to re-use the layer 2 (application layer)
fragmentation reassembly. Comments are welcomed.]
3.3.5. Fragmentation/Reassembly for IPv6 3.3.5. Fragmentation/Reassembly for IPv6
IPv6 does MTU discovery so fragmentation and re-assembly is not IPv6 does MTU discovery so fragmentation and re-assembly is not
necessary for UDP packets. necessary for UDP packets.
3.3.6. Multiplexing 3.3.6. Multiplexing
LWAPP messages convey control information between WTP and AC, as well LWAPP messages convey control information between WTP and AC, as well
as binding specific data frames or binding specific management as binding specific data frames or binding specific management
frames. As such, LWAPP messages need to be multiplexed in the frames. As such, LWAPP messages need to be multiplexed in the
transport sub-layer and be delivered to the proper software entities transport sub-layer and be delivered to the proper software entities
in the endpoints of the protocol. However, the 'C' bit is still used in the endpoints of the protocol. However, the 'C' bit is still used
to differentiate between data and control frames. to differentiate between data and control frames.
In case of Layer 3 connection, multiplexing is achieved by use of In case of Layer 3 connection, multiplexing is achieved by use of
different UDP ports for control and data packets (see Section 3.3.1. different UDP ports for control and data packets (see Section 3.3.1).
As part of Join procedure, the WTP and AC may negotiate different IP As part of the Join procedure, the WTP and AC may negotiate different
Addresses for data or control messages. The IP Address returned in IP Addresses for data or control messages. The IP address returned
the AP Manager Control IP Address message element is used to inform in the AP Manager Control IP Address message element is used to
the WTP with the IP address to which it must sent all control frames. inform the WTP with the IP address to which it must send all control
The AP Manager Data IP Address message element MAY be present only if frames. The AP Manager Data IP Address message element MAY be
the AC has a different IP Address which the WTP is to use to send its present only if the AC has a different IP address that the WTP is to
data LWAPP frames. use to send its data LWAPP frames.
In the event the WTP and AC are separated by a NAT, with the WTP In the event the WTP and AC are separated by a NAT, with the WTP
using private IP address space, it is the responsibility of the NAT using private IP address space, it is the responsibility of the NAT
to manage appropriate UDP port mapping. to manage appropriate UDP port mapping.
4. LWAPP Packet Definitions 4. LWAPP Packet Definitions
This section contains the packet types and format. The LWAPP This section contains the packet types and format. The LWAPP
protocol is designed to be transport agnostic by specifying packet protocol is designed to be transport-agnostic by specifying packet
formats for both MAC frames and IP packets. An LWAPP packet consists formats for both MAC frames and IP packets. An LWAPP packet consists
of an LWAPP Transport Layer packet header followed by an LWAPP of an LWAPP Transport Layer packet header followed by an LWAPP
message. message.
Transport details can be found in Section 3. Transport details can be found in Section 3.
4.1. LWAPP Data Messages 4.1. LWAPP Data Messages
An LWAPP data message is a forwarded wireless frame. When forwarding An LWAPP data message is a forwarded wireless frame. When forwarding
wireless frames, the sender simply encapsulates the wireless frame in wireless frames, the sender simply encapsulates the wireless frame in
an LWAPP data packet, using the appropriate transport rules defined an LWAPP data packet, using the appropriate transport rules defined
in section Section 3. in Section 3.
In the event that the encapsulated frame would exceed the transport In the event that the encapsulated frame would exceed the transport
layer's MTU, the sender is responsible for the fragmentation of the layer's MTU, the sender is responsible for the fragmentation of the
frame, as specified in the transport specific section of Section 3. frame, as specified in the transport-specific section of Section 3.
The actual format of the encapsulated LWAPP data frame is subject to The actual format of the encapsulated LWAPP data frame is subject to
the rules defined under the specific wireless technology binding. the rules defined under the specific wireless technology binding.
4.2. LWAPP Control Messages Overview 4.2. LWAPP Control Messages Overview
The LWAPP Control protocol provides a control channel between the WTP The LWAPP Control protocol provides a control channel between the WTP
and the AC. The control channel is the series of control messages and the AC. The control channel is the series of control messages
between the WTP and AC, associated with a session ID and key. between the WTP and AC, associated with a session ID and key.
Control messages are divided into the following distinct message Control messages are divided into the following distinct message
skipping to change at page 27, line 46 skipping to change at page 27, line 38
Discovery: LWAPP Discovery messages are used to identify potential Discovery: LWAPP Discovery messages are used to identify potential
ACs, their load and capabilities. ACs, their load and capabilities.
Control Channel Management: Messages that fall within this Control Channel Management: Messages that fall within this
classification are used for the discovery of ACs by the WTPs as classification are used for the discovery of ACs by the WTPs as
well as the establishment and maintenance of an LWAPP control well as the establishment and maintenance of an LWAPP control
channel. channel.
WTP Configuration: The WTP Configuration messages are used by the AC WTP Configuration: The WTP Configuration messages are used by the AC
to push a specific configuration to the WTPs it has a control to push a specific configuration to the WTPs with which it has a
channel with. Messages that deal with the retrieval of statistics control channel. Messages that deal with the retrieval of
from the WTP also fall in this category. statistics from the WTP also fall in this category.
Mobile Session Management: Mobile session management messages are Mobile Session Management: Mobile Session Management messages are
used by the AC to push specific mobile policies to the WTP. used by the AC to push specific mobile policies to the WTP.
Firmware Management: Messages in this category are used by the AC to Firmware Management: Messages in this category are used by the AC to
push a new firmware image down to the WTP. push a new firmware image down to the WTP.
Control Channel, WTP Configuration and Mobile Session Management MUST Control Channel, WTP Configuration, and Mobile Session Management
be implemented. Firmware Management MAY be implemented. MUST be implemented. Firmware Management MAY be implemented.
In addition, technology specific bindings may introduce new control In addition, technology-specific bindings may introduce new control
channel commands that depart from the above list. channel commands that depart from the above list.
4.2.1. Control Message Format 4.2.1. Control Message Format
All LWAPP control messages are sent encapsulated within the LWAPP All LWAPP control messages are sent encapsulated within the LWAPP
header (see Section 3.1). Immediately following the header, is the header (see Section 3.1). Immediately following the header is the
LWAPP control header, which has the following format: LWAPP control header, which has the following format:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Type | Seq Num | Msg Element Length | | Message Type | Seq Num | Msg Element Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Session ID | | Session ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Msg Element [0..N] | | Msg Element [0..N] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4.2.1.1. Message Type 4.2.1.1. Message Type
The Message Type field identifies the function of the LWAPP control The Message Type field identifies the function of the LWAPP control
message. The valid values for Message Type are the following: message. The valid values for a Message Type are the following:
Description Value Description Value
Discovery Request 1 Discovery Request 1
Discovery Response 2 Discovery Response 2
Join Request 3 Join Request 3
Join Response 4 Join Response 4
Join ACK 5 Join ACK 5
Join Confirm 6 Join Confirm 6
Unused 7-9 Unused 7-9
Configure Request 10 Configure Request 10
Configure Response 11 Configure Response 11
Configuration Update Request 12 Configuration Update Request 12
Configuration Update Response 13 Configuration Update Response 13
WTP Event Request 14 WTP Event Request 14
WTP Event Response 15 WTP Event Response 15
Change State Event Request 16 Change State Event Request 16
Change State Event Response 17 Change State Event Response 17
Unused 18-21 Unused 18-21
Echo Request 22 Echo Request 22
Echo Response 23 Echo Response 23
Image Data Request 24 Image Data Request 24
Image Data Response 25 Image Data Response 25
Reset Request 26 Reset Request 26
Reset Response 27 Reset Response 27
Unused 28-29 Unused 28-29
Key Update Request 30 Key Update Request 30
Key Update Response 31 Key Update Response 31
Primary Discovery Request 32 Primary Discovery Request 32
Primary Discovery Response 33 Primary Discovery Response 33
Data Transfer Request 34 Data Transfer Request 34
Data Transfer Response 35 Data Transfer Response 35
Clear Config Indication 36 Clear Config Indication 36
WLAN Config Request 37 WLAN Config Request 37
WLAN Config Response 38 WLAN Config Response 38
Mobile Config Request 39 Mobile Config Request 39
Mobile Config Response 40 Mobile Config Response 40
4.2.1.2. Sequence Number 4.2.1.2. Sequence Number
The Sequence Number Field is an identifier value to match request/ The Sequence Number field is an identifier value to match request/
response packet exchanges. When an LWAPP packet with a request response packet exchanges. When an LWAPP packet with a request
message type is received, the value of the sequence number field is message type is received, the value of the Sequence Number field is
copied into the corresponding response packet. copied into the corresponding response packet.
When an LWAPP control frame is sent, its internal sequence number When an LWAPP control frame is sent, its internal sequence number
counter is monotonically incremented, ensuring that no two requests counter is monotonically incremented, ensuring that no two requests
pending have the same sequence number. This field will wrap back to pending have the same sequence number. This field will wrap back to
zero. zero.
4.2.1.3. Message Element Length 4.2.1.3. Message Element Length
The Length field indicates the number of bytes following the Session The length field indicates the number of bytes following the Session
ID field. If the LWAPP packet is encrypted, the length field ID field. If the LWAPP packet is encrypted, the length field
includes the AES-CCM MIC (see Section 10.2 for more information). includes the AES-CCM MIC (see Section 10.2 for more information).
4.2.1.4. Session ID 4.2.1.4. Session ID
The Session ID is a 32-bit unsigned integer that is used to identify The Session ID is a 32-bit unsigned integer that is used to identify
the security context for encrypted exchanges between the WTP and the the security context for encrypted exchanges between the WTP and the
AC. Note that a Session ID is a random value that MUST be unique AC. Note that a Session ID is a random value that MUST be unique
between a given AC and any of the WTP it may be communicating with. between a given AC and any of the WTPs with which it may be
communicating.
4.2.1.5. Message Element[0..N] 4.2.1.5. Message Element [0..N]
The message element(s) carry the information pertinent to each of the The message element(s) carry the information pertinent to each of the
control message types. Every control message in this specification control message types. Every control message in this specification
specifies which message elements are permitted. specifies which message elements are permitted.
4.2.2. Message Element Format 4.2.2. Message Element Format
The message element is used to carry information pertinent to a The message element is used to carry information pertinent to a
control message. Every message element is identified by the Type control message. Every message element is identified by the Type
field, whose numbering space is managed via IANA (see Section 16). field, whose numbering space is managed via IANA (see Section 16).
The total length of the message elements is indicated in the Message The total length of the message elements is indicated in the Message
Element Length field. Element Length field.
All of the message element definitions in this document use a diagram All of the message element definitions in this document use a diagram
similar to the one below in order to depict its format. Note that in similar to the one below in order to depict their formats. Note that
order to simplify this specification, these diagrams do not include in order to simplify this specification, these diagrams do not
the header fields (Type and Length). However, in every message include the header fields (Type and Length). However, in each
element description, the header's fields values will be defined. message element description, the header's field values will be
defined.
Note that additional message elements may be defined in separate IETF Note that additional message elements may be defined in separate IETF
documents. documents.
The format of a message element uses the TLV format shown here: The format of a message element uses the TLV format shown here:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... | | Type | Length | Value ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where Type (8 bit) identifies the character of the information where Type (8 bits) identifies the character of the information
carried in the Value field and Length (16 bits) indicates the number carried in the Value field and Length (16 bits) indicates the number
of bytes in the Value field. of bytes in the Value field.
4.2.2.1. Generic Message Elements 4.2.2.1. Generic Message Elements
This section includes message elements that are not bound to a This section includes message elements that are not bound to a
specific control message. specific control message.
4.2.2.1.1. Vendor Specific 4.2.2.1.1. Vendor Specific
The Vendor Specific Payload is used to communicate vendor specific The Vendor-Specific Payload is used to communicate vendor-specific
information between the WTP and the AC. The value contains the information between the WTP and the AC. The value contains the
following format: following format:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier | | Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Element ID | Value... | | Element ID | Value... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 104 for Vendor Specific Type: 104 for Vendor Specific
Length: >= 7 Length: >= 7
Vendor Identifier: A 32-bit value containing the IANA assigned "SMI Vendor Identifier: A 32-bit value containing the IANA-assigned "SMI
Network Management Private Enterprise Codes" [13] Network Management Private Enterprise Codes" [13].
Element ID: A 16-bit Element Identifier which is managed by the Element ID: A 16-bit Element Identifier that is managed by the
vendor. vendor.
Value: The value associated with the vendor specific element. Value: The value associated with the vendor-specific element.
4.2.3. Quality of Service 4.2.3. Quality of Service
It is recommended that LWAPP control messages be sent by both the AC It is recommended that LWAPP control messages be sent by both the AC
and the WTP with an appropriate Quality of Service precedence value, and the WTP with an appropriate Quality-of-Service precedence value,
ensuring that congestion in the network minimizes occurences of LWAPP ensuring that congestion in the network minimizes occurrences of
control channel disconnects. Therefore, a Quality of Service enabled LWAPP control channel disconnects. Therefore, a Quality-of-Service-
LWAPP device should use: enabled LWAPP device should use:
802.1P: The precedence value of 7 SHOULD be used. 802.1P: The precedence value of 7 SHOULD be used.
DSCP: The dscp tag value of 46 SHOULD be used. DSCP: The Differentiated Services Code Point (DSCP) tag value of 46
SHOULD be used.
5. LWAPP Discovery Operations 5. LWAPP Discovery Operations
The Discovery messages are used by an WTP to determine which ACs are The Discovery messages are used by a WTP to determine which ACs are
available to provide service, as well as the capabilities and load of available to provide service, as well as the capabilities and load of
the ACs. the ACs.
5.1. Discovery Request 5.1. Discovery Request
The Discovery Request is used by the WTP to automatically discover The Discovery Request is used by the WTP to automatically discover
potential ACs available in the network. An WTP must transmit this potential ACs available in the network. A WTP must transmit this
command even if it has a statically configured AC, as it is a command even if it has a statically configured AC, as it is a
required step in the LWAPP state machine. required step in the LWAPP state machine.
Discovery Requests MUST be sent by an WTP in the Discover state after Discovery Requests MUST be sent by a WTP in the Discover state after
waiting for a random delay less than MaxDiscoveryInterval, after an waiting for a random delay less of than MaxDiscoveryInterval, after a
WTP first comes up or is (re)initialized. An WTP MUST send no more WTP first comes up or is (re)initialized. A WTP MUST send no more
than a maximum of MaxDiscoveries discoveries, waiting for a random than a maximum of MaxDiscoveries discoveries, waiting for a random
delay less than MaxDiscoveryInterval between each successive delay less than MaxDiscoveryInterval between each successive
discovery. discovery.
This is to prevent an explosion of WTP Discoveries. An example of This is to prevent an explosion of WTP Discoveries. An example of
this occurring would be when many WTPs are powered on at the same this occurring would be when many WTPs are powered on at the same
time. time.
Discovery requests MUST be sent by an WTP when no echo responses are Discovery Requests MUST be sent by a WTP when no Echo Responses are
received for NeighborDeadInterval and the WTP returns to the Idle received for NeighborDeadInterval and the WTP returns to the Idle
state. Discovery requests are sent after NeighborDeadInterval, they state. Discovery Requests are sent after NeighborDeadInterval, they
MUST be sent after waiting for a random delay less than MUST be sent after waiting for a random delay less than
MaxDiscoveryInterval. An WTP MAY send up to a maximum of MaxDiscoveryInterval. A WTP MAY send up to a maximum of
MaxDiscoveries discoveries, waiting for a random delay less than MaxDiscoveries discoveries, waiting for a random delay less than
MaxDiscoveryInterval between each successive discovery. MaxDiscoveryInterval between each successive discovery.
If a discovery response is not received after sending the maximum If a Discovery Response is not received after sending the maximum
number of discovery requests, the WTP enters the Sulking state and number of Discovery Requests, the WTP enters the Sulking state and
MUST wait for an interval equal to SilentInterval before sending MUST wait for an interval equal to SilentInterval before sending
further discovery requests. further Discovery Requests.
The Discovery Request message may be sent as a unicast, broadcast or The Discovery Request message may be sent as a unicast, broadcast, or
multicast message. multicast message.
Upon receiving a discovery request, the AC will respond with a Upon receiving a Discovery Request, the AC will respond with a
Discovery Response sent to the address in the source address of the Discovery Response sent to the address in the source address of the
received discovery request. received Discovery Request.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
5.1.1. Discovery Type 5.1.1. Discovery Type
The Discovery message element is used to configure an WTP to operate The Discovery message element is used to configure a WTP to operate
in a specific mode. in a specific mode.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Discovery Type| | Discovery Type|
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 58 for Discovery Type Type: 58 for Discovery Type
Length: 1 Length: 1
Discovery Type: An 8-bit value indicating how the AC was Discovery Type: An 8-bit value indicating how the AC was
discovered. The following values are supported: discovered. The following values are supported:
0 - Broadcast 0 - Broadcast
1 - Configured 1 - Configured
5.1.2. WTP Descriptor 5.1.2. WTP Descriptor
The WTP descriptor message element is used by the WTP to communicate The WTP Descriptor message element is used by the WTP to communicate
it's current hardware/firmware configuration. The value contains the its current hardware/firmware configuration. The value contains the
following fields. following fields.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Hardware Version | | Hardware Version |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Software Version | | Software Version |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Boot Version | | Boot Version |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Max Radios | Radios in use | Encryption Capabilities | | Max Radios | Radios in use | Encryption Capabilities |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 3 for WTP Descriptor Type: 3 for WTP Descriptor
Length: 16 Length: 16
Hardware Version: A 32-bit integer representing the WTP's hardware Hardware Version: A 32-bit integer representing the WTP's hardware
version number version number.
Software Version: A 32-bit integer representing the WTP's Firmware Software Version: A 32-bit integer representing the WTP's Firmware
version number version number.
Boot Version: A 32-bit integer representing the WTP's boot loader's Boot Version: A 32-bit integer representing the WTP's boot loader's
version number version number.
Max Radios: An 8-bit value representing the number of radios (where Max Radios: An 8-bit value representing the number of radios (where
each radio is identified via the RID field) supported by the WTP each radio is identified via the RID field) supported by the WTP.
Radios in use: An 8-bit value representing the number of radios Radios in Use: An 8-bit value representing the number of radios
present in the WTP present in the WTP.
Encryption Capabilities: This 16-bit field is used by the WTP to Encryption Capabilities: This 16-bit field is used by the WTP to
communicate it's capabilities to the AC. Since most WTPs support communicate its capabilities to the AC. Since most WTPs support
link layer encryption, the AC may make use of these services. link-layer encryption, the AC may make use of these services.
There are binding dependent encryption capabilites. An WTP that There are binding-dependent encryption capabilites. A WTP that
does not have any encryption capabilities would set this field to does not have any encryption capabilities would set this field to
zero (0). Refer to the specific binding for the specification. zero (0). Refer to the specific binding for the specification.
5.1.3. WTP Radio Information 5.1.3. WTP Radio Information
The WTP radios information message element is used to communicate the The WTP Radio Information message element is used to communicate the
radio information in a specific slot. The Discovery Request MUST radio information in a specific slot. The Discovery Request MUST
include one such message element per radio in the WTP. The Radio- include one such message element per radio in the WTP. The Radio-
Type field is used by the AC in order to determine which technology Type field is used by the AC in order to determine which technology-
specific binding is to be used with the WTP. specific binding is to be used with the WTP.
The value contains two fields, as shown. The value contains two fields, as shown:
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID | Radio Type | | Radio ID | Radio Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 4 for WTP Radio Information Type: 4 for WTP Radio Information
Length: 2 Length: 2
Radio ID: The Radio Identifier, typically refers to some interface Radio ID: The Radio Identifier, typically refers to some interface
index on the WTP index on the WTP.
Radio Type: The type of radio present. The following values are Radio Type: The type of radio present. The following values are
supported supported:
1 - 802.11bg: An 802.11bg radio. 1 - 802.11bg: An 802.11bg radio.
2 - 802.11a: An 802.11a radio. 2 - 802.11a: An 802.11a radio.
3 - 802.16: An 802.16 radio. 3 - 802.16: An 802.16 radio.
4 - Ultra Wideband: An UWB radio. 4 - Ultra Wideband: A UWB radio.
7 - all: Used to specify all radios in the WTP. 7 - all: Used to specify all radios in the WTP.
5.2. Discovery Response 5.2. Discovery Response
The Discovery Response is a mechanism by which an AC advertises its The Discovery Response is a mechanism by which an AC advertises its
services to requesting WTPs. services to requesting WTPs.
Discovery Responses are sent by an AC after receiving a Discovery Discovery Responses are sent by an AC after receiving a Discovery
Request. Request.
When an WTP receives a Discovery Response, it MUST wait for an When a WTP receives a Discovery Response, it MUST wait for an
interval not less than DiscoveryInterval for receipt of additional interval not less than DiscoveryInterval for receipt of additional
Discovery Responses. After the DiscoveryInterval elapses, the WTP Discovery Responses. After the DiscoveryInterval elapses, the WTP
enters the Joining state and will select one of the ACs that sent a enters the Joining state and will select one of the ACs that sent a
Discovery Response and send a Join Request to that AC. Discovery Response and send a Join Request to that AC.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
5.2.1. AC Address 5.2.1. AC Address
The AC address message element is used to communicate the identity of The AC Address message element is used to communicate the identity of
the AC. The value contains two fields, as shown. the AC. The value contains two fields, as shown:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | MAC Address | | Reserved | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 2 for AC Address Type: 2 for AC Address
Length: 7 Length: 7
Reserved: MUST be set to zero Reserved: MUST be set to zero
Mac Address: The MAC Address of the AC
MAC Address: The MAC address of the AC
5.2.2. AC Descriptor 5.2.2. AC Descriptor
The AC payload message element is used by the AC to communicate it's The AC Descriptor message element is used by the AC to communicate
current state. The value contains the following fields. its current state. The value contains the following fields:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Hardware Version ... | | Reserved | Hardware Version ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| HW Ver | Software Version ... | | HW Ver | Software Version ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SW Ver | Stations | Limit | | SW Ver | Stations | Limit |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Limit | Radios | Max Radio | | Limit | Radios | Max Radio |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Max Radio | Security | | Max Radio | Security |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 6 for AC Descriptor Type: 6 for AC Descriptor
Length: 17 Length: 17
Reserved: MUST be set to zero Reserved: MUST be set to zero
Hardware Version: A 32-bit integer representing the AC's hardware Hardware Version: A 32-bit integer representing the AC's hardware
version number version number.
Software Version: A 32-bit integer representing the AC's Firmware Software Version: A 32-bit integer representing the AC's Firmware
version number version number.
Stations: A 16-bit integer representing number of mobile stations Stations: A 16-bit integer representing the number of mobile
currently associated with the AC stations currently associated with the AC.
Limit: A 16-bit integer representing the maximum number of stations Limit: A 16-bit integer representing the maximum number of stations
supported by the AC supported by the AC.
Radios: A 16-bit integer representing the number of WTPs currently Radios: A 16-bit integer representing the number of WTPs currently
attached to the AC attached to the AC.
Max Radio: A 16-bit integer representing the maximum number of WTPs Max Radio: A 16-bit integer representing the maximum number of WTPs
supported by the AC supported by the AC.
Security: A 8 bit bit mask specifying the security schemes Security: An 8-bit bitmask specifying the security schemes
supported by the AC. The following values are supported (see supported by the AC. The following values are supported (see
Section 10): Section 10):
1 - X.509 Certificate Based 1 - X.509 Certificate-Based
2 - Pre-Shared Secret 2 - Pre-Shared Secret
5.2.3. AC Name 5.2.3. AC Name
The AC name message element contains an ASCII representation of the The AC Name message element contains an ASCII representation of the
AC's identity. The value is a variable length byte string. The AC's identity. The value is a variable-length byte string. The
string is NOT zero terminated. string is NOT zero terminated.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Name ... | Name ...
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 31 for AC Name Type: 31 for AC Name
Length: > 0 Length: > 0
Name: A variable-length ASCII string containing the AC's name.
Name: A variable length ASCII string containing the AC's name
5.2.4. WTP Manager Control IPv4 Address 5.2.4. WTP Manager Control IPv4 Address
The WTP Manager Control IPv4 Address message element is sent by the The WTP Manager Control IPv4 Address message element is sent by the
AC to the WTP during the discovery process and is used by the AC to AC to the WTP during the discovery process and is used by the AC to
provide the interfaces available on the AC, and their current load. provide the interfaces available on the AC, and their current load.
This message element is useful for the WTP to perform load balancing This message element is useful for the WTP to perform load balancing
across multiple interfaces. across multiple interfaces.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP Count | | WTP Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 99 for WTP Manager Control IPv4 Address Type: 99 for WTP Manager Control IPv4 Address
Length: 6 Length: 6
IP Address: The IP Address of an interface.
IP Address: The IP address of an interface.
WTP Count: The number of WTPs currently connected to the interface. WTP Count: The number of WTPs currently connected to the interface.
5.2.5. WTP Manager Control IPv6 Address 5.2.5. WTP Manager Control IPv6 Address
The WTP Manager Control IPv6 Address message element is sent by the The WTP Manager Control IPv6 Address message element is sent by the
AC to the WTP during the discovery process and is used by the AC to AC to the WTP during the discovery process and is used by the AC to
provide the interfaces available on the AC, and their current load. provide the interfaces available on the AC, and their current load.
This message element is useful for the WTP to perform load balancing This message element is useful for the WTP to perform load balancing
across multiple interfaces. across multiple interfaces.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP Count | | WTP Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 137 for WTP Manager Control IPv6 Address Type: 137 for WTP Manager Control IPv6 Address
Length: 6 Length: 6
IP Address: The IP Address of an interface. IP Address: The IP address of an interface.
WTP Count: The number of WTPs currently connected to the interface. WTP Count: The number of WTPs currently connected to the interface.
5.3. Primary Discovery Request 5.3. Primary Discovery Request
The Primary Discovery Request is sent by the WTP in order to The Primary Discovery Request is sent by the WTP in order to
determine whether its preferred (or primary) AC is available. determine whether its preferred (or primary) AC is available.
Primary Discovery Request are sent by an WTP when it has a primary AC Primary Discovery Requests are sent by a WTP when it has a primary AC
configured, and is connected to another AC. This generally occurs as configured, and is connected to another AC. This generally occurs as
a result of a failover, and is used by the WTP as a means to discover a result of a failover, and is used by the WTP as a means to discover
when its primary AC becomes available. As a consequence, this when its primary AC becomes available. As a consequence, this
message is only sent by a WTP when it is in the Run state. message is only sent by a WTP when it is in the Run state.
The frequency of the Primary Discovery Requests should be no more The frequency of the Primary Discovery Requests should be no more
often than the sending of the Echo Request message. often than the sending of the Echo Request message.
Upon receiving a discovery request, the AC will respond with a Upon receiving a Discovery Request, the AC will respond with a
Primary Discovery Response sent to the address in the source address Primary Discovery Response sent to the address in the source address
of the received Primary Discovery Request. of the received Primary Discovery Request.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
5.3.1. Discovery Type 5.3.1. Discovery Type
The Discovery Type message element is defined in section The Discovery Type message element is defined in Section 5.1.1.
Section 5.1.1.
5.3.2. WTP Descriptor 5.3.2. WTP Descriptor
The WTP Descriptor message element is defined in section The WTP Descriptor message element is defined in Section 5.1.2.
Section 5.1.2.
5.3.3. WTP Radio Information 5.3.3. WTP Radio Information
An WTP Radio Information message element must be present for every A WTP Radio Information message element must be present for every
radio in the WTP. This message element is defined in section radio in the WTP. This message element is defined in Section 5.1.3.
Section 5.1.3.
5.4. Primary Discovery Response 5.4. Primary Discovery Response
The Primary Discovery Response is a mechanism by which an AC The Primary Discovery Response is a mechanism by which an AC
advertises its availability and services to requesting WTPs that are advertises its availability and services to requesting WTPs that are
configured to have the AC as its primary AC. configured to have the AC as its primary AC.
Primary Discovery Responses are sent by an AC after receiving a Primary Discovery Responses are sent by an AC after receiving a
Primary Discovery Request. Primary Discovery Request.
When an WTP receives a Primary Discovery Response, it may opt to When a WTP receives a Primary Discovery Response, it may opt to
establish an LWAPP connection to its primary AC, based on the establish an LWAPP connection to its primary AC, based on the
configuration of the WTP Fallback Status message element on the WTP. configuration of the WTP Fallback Status message element on the WTP.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
5.4.1. AC Descriptor 5.4.1. AC Descriptor
The Discovery Type message element is defined in section The Discovery Type message element is defined in Section 5.2.2.
Section 5.2.2.
5.4.2. AC Name 5.4.2. AC Name
The AC Name message element is defined in section Section 5.2.3. The AC Name message element is defined in Section 5.2.3.
5.4.3. WTP Manager Control IPv4 Address 5.4.3. WTP Manager Control IPv4 Address
An WTP Radio Information message element MAY be present for every A WTP Radio Information message element MAY be present for every
radio in the WTP which are reachable via IPv4. This message element radio in the WTP that is reachable via IPv4. This message element is
is defined in section Section 5.2.4. defined in Section 5.2.4.
5.4.4. WTP Manager Control IPv6 Address 5.4.4. WTP Manager Control IPv6 Address
An WTP Radio Information message element must be present for every A WTP Radio Information message element must be present for every
radio in the WTP which are reachable via IPv6. This message element radio in the WTP that is reachable via IPv6. This message element is
is defined in section Section 5.2.5. defined in Section 5.2.5.
6. Control Channel Management 6. Control Channel Management
The Control Channel Management messages are used by the WTP and AC to The Control Channel Management messages are used by the WTP and AC to
create and maintain a channel of communication on which various other create and maintain a channel of communication on which various other
commands may be transmitted, such as configuration, firmware update, commands may be transmitted, such as configuration, firmware update,
etc. etc.
6.1. Join Request 6.1. Join Request
The Join Request is used by an WTP to inform an AC that it wishes to The Join Request is used by a WTP to inform an AC that it wishes to
provide services through it. provide services through it.
Join Requests are sent by an WTP in the Joining state after receiving Join Requests are sent by a WTP in the Joining state after receiving
one or more Discovery Responses. The Join Request is also used as an one or more Discovery Responses. The Join Request is also used as an
MTU discovery mechanism by the WTP. The WTP issues a Join Request MTU discovery mechanism by the WTP. The WTP issues a Join Request
with a Test message element, bringing the total size of the message with a Test message element, bringing the total size of the message
to exceed MTU. to exceed MTU.
If the transport used does not provide MTU path discovery, the If the transport used does not provide MTU path discovery, the
initial Join Request is padded with the Test message element to 1596 initial Join Request is padded with the Test message element to 1596
bytes. If a Join Response is received, the WTP can forward frames bytes. If a Join Response is received, the WTP can forward frames
without requiring any fragmentation. If no Join Response is without requiring any fragmentation. If no Join Response is
received, it issues a second Join Request padded with the Test received, it issues a second Join Request padded with the Test
payload to a total of 1500 bytes. The WTP continues to cycle from payload to a total of 1500 bytes. The WTP continues to cycle from
large (1596) to small (1500) packets until a Join Response has been large (1596) to small (1500) packets until a Join Response has been
received , or until both packets sizes have been retransmitted 3 received, or until both packets' sizes have been retransmitted 3
times . If the Join Response is not received after the maximum times. If the Join Response is not received after the maximum number
number of retransmissions, the WTP MUST abandon the AC and restart of retransmissions, the WTP MUST abandon the AC and restart the
the discovery phase. discovery phase.
When an AC receives a Join Request it will respond with a Join When an AC receives a Join Request, it will respond with a Join
Response. If the certificate based security mechanism is used, the Response. If the certificate-based security mechanism is used, the
AC validates the certificate found in the request. If valid, the AC AC validates the certificate found in the request. If valid, the AC
generates a session key which will be used to secure the control generates a session key that will be used to secure the control
frames it exchanges with the WTP. When the AC issues the Join frames it exchanges with the WTP. When the AC issues the Join
Response, the AC creates a context for the session with the WTP. Response, the AC creates a context for the session with the WTP.
If the pre-shared session key security mechanism is used, the AC If the pre-shared session key security mechanism is used, the AC
saves the WTP's nonce, found in the WNonce message element, creates saves the WTP's nonce, found in the WNonce message element, and
its own nonce which it includes in the ANonce message element. creates its own nonce, which it includes in the ANonce message
Finally, the AC creates the PSK-MIC, which is computed using a key element. Finally, the AC creates the PSK-MIC, which is computed
that is derived from the PSK. using a key that is derived from the PSK.
A Join Request that includes both a WNonce and a Certificate message A Join Request that includes both a WNonce and a Certificate message
element MUST be considered invalid. element MUST be considered invalid.
Details on the key generation is found in Section 10. Details on the key generation are found in Section 10.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.1.1. WTP Descriptor 6.1.1. WTP Descriptor
The WTP Descriptor message element is defined in section The WTP Descriptor message element is defined in Section 5.1.2.
Section 5.1.2.
6.1.2. AC Address 6.1.2. AC Address
The AC Address message element is defined in section Section 5.2.1. The AC Address message element is defined in Section 5.2.1.
6.1.3. WTP Name 6.1.3. WTP Name
The WTP name message element value is a variable length byte string. The WTP Name message element value is a variable-length byte string.
The string is NOT zero terminated. The string is NOT zero terminated.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Name ... | Name ...
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 5 for WTP Name Type: 5 for WTP Name
Length: > 0 Length: > 0
Name: A non zero terminated string containing the WTP's name. Name: A non-zero-terminated string containing the WTP's name.
6.1.4. Location Data 6.1.4. Location Data
The location data message element is a variable length byte string The Location Data message element is a variable-length byte string
containing user defined location information (e.g. "Next to containing user-defined location information (e.g., "Next to
Fridge"). The string is NOT zero terminated. Fridge"). The string is NOT zero terminated.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Location ... | Location ...
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 35 for Location Data Type: 35 for Location Data
Length: > 0 Length: > 0
Location: A non zero terminated string containing the WTP's
Location: A non-zero-terminated string containing the WTP's
location. location.
6.1.5. WTP Radio Information 6.1.5. WTP Radio Information
An WTP Radio Information message element must be present for every A WTP Radio Information message element must be present for every
radio in the WTP. This message element is defined in section radio in the WTP. This message element is defined in Section 5.1.3.
Section 5.1.3.
6.1.6. Certificate 6.1.6. Certificate
The certificate message element value is a byte string containing a The Certificate message element value is a byte string containing a
DER-encoded x.509v3 certificate. This message element is only DER-encoded x.509v3 certificate. This message element is only
included if the LWAPP security type used between the WTP and the AC included if the LWAPP security type used between the WTP and the AC
makes use of certificates (see Section 10 for more information). makes use of certificates (see Section 10 for more information).
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Certificate... | Certificate...
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 44 for Certificate Type: 44 for Certificate
Length: > 0 Length: > 0
Certificate: A non zero terminated string containing the device's Certificate: A non-zero-terminated string containing the device's
certificate. certificate.
6.1.7. Session ID 6.1.7. Session ID
The session ID message element value contains a randomly generated The Session ID message element value contains a randomly generated
[4] unsigned 32-bit integer. [4] unsigned 32-bit integer.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Session ID | | Session ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 45 for Session ID Type: 45 for Session ID
Length: 4 Length: 4
Session ID: 32 bit random session identifier. Session ID: 32-bit random session identifier.
6.1.8. Test 6.1.8. Test
The test message element is used as padding to perform MTU discovery, The Test message element is used as padding to perform MTU discovery,
and MAY contain any value, of any length. and it MAY contain any value, of any length.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Padding ... | Padding ...
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 18 for Test Type: 18 for Test
Length: > 0 Length: > 0
Padding: A variable length pad. Padding: A variable-length pad.
6.1.9. XNonce 6.1.9. XNonce
The XNonce is used by the WTP to communicate its random nonce during The XNonce is used by the WTP to communicate its random nonce during
the join or rekey phase. See Section 10 for more information. the join or rekey phase. See Section 10 for more information.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 111 for XNonce Type: 111 for XNonce
Length: 16 Length: 16
Nonce: 1 16 octet random nonce. Nonce: 1 16-octet random nonce.
6.2. Join Response 6.2. Join Response
The Join Response is sent by the AC to indicate to an WTP whether it The Join Response is sent by the AC to indicate to a WTP whether it
is capable and willing to provide service to it. is capable and willing to provide service to it.
Join Responses are sent by the AC after receiving a Join Request. Join Responses are sent by the AC after receiving a Join Request.
Once the Join Response has been sent, the heartbeat timer is Once the Join Response has been sent, the Heartbeat timer is
initiated for the session to EchoInterval. Expiration of the timer initiated for the session to EchoInterval. Expiration of the timer
will result in deletion of the AC-WTP session. The timer is will result in deletion of the AC-WTP session. The timer is
refreshed upon receipt of the Echo Request. refreshed upon receipt of the Echo Request.
If the security method used is certificate based, when a WTP receives If the security method used is certificate-based, when a WTP receives
a Join Response it enters the Joined state and initiates either a a Join Response, it enters the Joined state and initiates either a
Configure Request or Image Data to the AC to which it is now joined. Configure Request or Image Data to the AC to which it is now joined.
Upon entering the Joined state, the WTP begins timing an interval Upon entering the Joined state, the WTP begins timing an interval
equal to NeighborDeadInterval. Expiration of the timer will result equal to NeighborDeadInterval. Expiration of the timer will result
in the transmission of the Echo Request. in the transmission of the Echo Request.
If the security method used is pre-shared secret based, when a WTP If the security method used is pre-shared-secret-based, when a WTP
receives a Join Response that includes a valid PSK-MIC message receives a Join Response that includes a valid PSK-MIC message
element, it responds with a Join ACK that also MUST include a locally element, it responds with a Join ACK that also MUST include a locally
computed PSK-MIC message element. computed PSK-MIC message element.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.2.1. Result Code 6.2.1. Result Code
The Result Code message element value is a 32-bit integer value, The Result Code message element value is a 32-bit integer value,
indicating the result of the request operation corresponding to the indicating the result of the request operation corresponding to the
sequence number in the message. The Result Code is included in a sequence number in the message. The Result Code is included in a
successful Join Response. successful Join Response.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Result Code | | Result Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 2 for Result Code Type: 2 for Result Code
Length: 4 Length: 4
Result Code: The following values are defined: Result Code: The following values are defined:
0 Success 0 Success
1 Failure (AC List message element MUST be present) 1 Failure (AC List message element MUST be present)
6.2.2. Status 6.2.2. Status
The Status message element is sent by the AC to the WTP in a non- The Status message element is sent by the AC to the WTP in a non-
successful Join Response message. This message element is used to successful Join Response message. This message element is used to
indicate the reason for the failure and should only be accompanied indicate the reason for the failure and should only be accompanied
with a Result Code message element that indicates a failure. with a Result Code message element that indicates a failure.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Status | | Status |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 60 for Status Type: 60 for Status
Length: 1 Length: 1
Status: The status field indicates the reason for an LWAPP failure. Status: The Status field indicates the reason for an LWAPP failure.
The following values are supported: The following values are supported:
1 - Reserved - do not use 1 - Reserved - do not use
2 - Resource Depletion 2 - Resource Depletion
3 - Unknown Source 3 - Unknown Source
4 - Incorrect Data 4 - Incorrect Data
6.2.3. Certificate 6.2.3. Certificate
The Certificate message element is defined in section Section 6.1.6. The Certificate message element is defined in Section 6.1.6. Note
Note this message element is only included if the WTP and the AC make this message element is only included if the WTP and the AC make use
use of certificate based security as defined in section Section 10. of certificate-based security as defined in Section 10.
6.2.4. WTP Manager Data IPv4 Address 6.2.4. WTP Manager Data IPv4 Address
The WTP Manager Data IPv4 Address message element is optionally sent The WTP Manager Data IPv4 Address message element is optionally sent
by the AC to the WTP during the join phase. If present, the IP by the AC to the WTP during the join phase. If present, the IP
Address contained in this message element is the address the WTP is Address contained in this message element is the address the WTP is
to use when sending any of its LWAPP data frames. to use when sending any of its LWAPP data frames.
Note this message element is only valid when LWAPP uses the IP/UDP Note that this message element is only valid when LWAPP uses the
layer 3 transport IP/UDP Layer 3 transport.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 138 for WTP Manager Data IPv4 Address Type: 138 for WTP Manager Data IPv4 Address
Length: 4 Length: 4
IP Address: The IP Address of an interface. IP Address: The IP address of an interface.
6.2.5. WTP Manager Data IPv6 Address 6.2.5. WTP Manager Data IPv6 Address
The WTP Manager Data IPv6 Address message element is optionally sent The WTP Manager Data IPv6 Address message element is optionally sent
by the AC to the WTP during the join phase. If present, the IP by the AC to the WTP during the join phase. If present, the IP
Address contained in this message element is the address the WTP is Address contained in this message element is the address the WTP is
to use when sending any of its LWAPP data frames. to use when sending any of its LWAPP data frames.
Note this message element is only valid when LWAPP uses the IP/UDP Note that this message element is only valid when LWAPP uses the
layer 3 transport IP/UDP Layer 3 transport.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 139 for WTP Manager Data IPv6 Address Type: 139 for WTP Manager Data IPv6 Address
Length: 4 Length: 4
IP Address: The IP Address of an interface. IP Address: The IP address of an interface.
6.2.6. AC IPv4 List 6.2.6. AC IPv4 List
The AC List message element is used to configure an WTP with the The AC List message element is used to configure a WTP with the
latest list of ACs in a cluster. This message element MUST be latest list of ACs in a cluster. This message element MUST be
included if the Join Response returns a failure indicating that the included if the Join Response returns a failure indicating that the
AC cannot handle the WTP at this time, allowing the WTP to find an AC cannot handle the WTP at this time, allowing the WTP to find an
alternate AC to connect to. alternate AC to which to connect.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC IP Address[] | | AC IP Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 59 for AC List Type: 59 for AC List
Length: >= 4 Length: >= 4
AC IP Address: An array of 32-bit integers containing an AC's IPv4 AC IP Address: An array of 32-bit integers containing an AC's IPv4
Address. Address.
6.2.7. AC IPv6 List 6.2.7. AC IPv6 List
The AC List message element is used to configure an WTP with the The AC List message element is used to configure a WTP with the
latest list of ACs in a cluster. This message element MUST be latest list of ACs in a cluster. This message element MUST be
included if the Join Response returns a failure indicating that the included if the Join Response returns a failure indicating that the
AC cannot handle the WTP at this time, allowing the WTP to find an AC cannot handle the WTP at this time, allowing the WTP to find an
alternate AC to connect to. alternate AC to which to connect.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC IP Address[] | | AC IP Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC IP Address[] | | AC IP Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC IP Address[] | | AC IP Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC IP Address[] | | AC IP Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 141 for AC List Type: 141 for AC List
Length: >= 4 Length: >= 4
AC IP Address: An array of 32-bit integers containing an AC's IPv6 AC IP Address: An array of 32-bit integers containing an AC's IPv6
Address. Address.
6.2.8. ANonce 6.2.8. ANonce
The ANonce message element is sent by a AC during the join or rekey The ANonce message element is sent by an AC during the join or rekey
phase. The contents of the ANonce are encrypted as described in phase. The contents of the ANonce are encrypted as described in
section Section 10 for more information. Section 10 for more information.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 108 for ANonce Type: 108 for ANonce
Length: 16 Length: 16
Nonce: An encrypted 16 octet random nonce. Nonce: An encrypted, 16-octet random nonce.
6.2.9. PSK-MIC 6.2.9. PSK-MIC
The PSK-MIC message element includes a message integrity check, whose The PSK-MIC message element includes a message integrity check, whose
purpose is to provide confirmation to the peer that the sender has purpose is to provide confirmation to the peer that the sender has
the proper session key. This message element is only included if the the proper session key. This message element is only included if the
security method used between the WTP and the AC is the pre-shared security method used between the WTP and the AC is the pre-shared
secret mechanism. See Section 10 for more information. secret mechanism. See Section 10 for more information.
When present, the PSK-MIC message element MUST be the last message When present, the PSK-MIC message element MUST be the last message
element in the message. The MIC is computed over the complete LWAPP element in the message. The MIC is computed over the complete LWAPP
packet, from the LWAPP control header as defined in Section 4.2.1 to packet, from the LWAPP control header as defined in Section 4.2.1 to
the end of the packet (which MUST be this PSK-MIC message element). the end of the packet (which MUST be this PSK-MIC message element).
The MIC field in this message element and the sequence number field The MIC field in this message element and the Sequence Number field
in the LWAPP control header MUST be set to zeroes prior to computing in the LWAPP control header MUST be set to zeroes prior to computing
the MIC. The length field in the LWAPP control header must already the MIC. The length field in the LWAPP control header must already
include this message element prior to computing the MIC. include this message element prior to computing the MIC.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SPI | MIC ... | SPI | MIC ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 109 for PSK-MIC Type: 109 for PSK-MIC
Length: > 1 Length: > 1
SPI: The SPI field specifies the cryptographic algorithm used to
create the message integrity check. The following values are SPI: The Security Parameter Index (SPI) field specifies the
supported: cryptographic algorithm used to create the message integrity
check. The following values are supported:
0 - Unused 0 - Unused
1 - HMAC-SHA-1 (RFC 2104 [16]) 1 - HMAC-SHA-1 (RFC 2104 [15])
MIC: A 20 octet Message Integrity Check. MIC: A 20-octet Message Integrity Check.
6.3. Join ACK 6.3. Join ACK
The Join ACK message is sent by the WTP upon receiving a Join The Join ACK message is sent by the WTP upon receiving a Join
Response, which has a valid PSK-MIC message element, as a means of Response, which has a valid PSK-MIC message element, as a means of
providing key confirmation to the AC. The Join ACK is only used in providing key confirmation to the AC. The Join ACK is only used in
the case where the WTP makes use of the pre-shared key LWAPP mode the case where the WTP makes use of the pre-shared key LWAPP mode
(See Section 10 for more information). (see Section 10 for more information).
Note that the AC should never receive this message unless the Note that the AC should never receive this message unless the
security method used between the WTP and the AC is pre-shared secret security method used between the WTP and the AC is pre-shared-secret-
based. based.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.3.1. Session ID 6.3.1. Session ID
The Session ID message element is defined in section Section 6.1.7. The Session ID message element is defined in Section 6.1.7.
6.3.2. WNonce 6.3.2. WNonce
The WNonce message element is sent by a WTP during the join or rekey The WNonce message element is sent by a WTP during the join or rekey
phase. The contents of the ANonce are encrypted as described in phase. The contents of the ANonce are encrypted as described in
section Section 10 for more information. Section 10 for more information.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce | | Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 107 for WNonce Type: 107 for WNonce
Length: 16 Length: 16
Nonce: An encrypted 16 octet random nonce. Nonce: An encrypted, 16-octet random nonce.
6.3.3. PSK-MIC 6.3.3. PSK-MIC
The PSK-MIC message element is defined in section Section 6.2.9. The PSK-MIC message element is defined in Section 6.2.9.
6.4. Join Confirm 6.4. Join Confirm
The Join Confirm message is sent by the AC upon receiving a Join ACK, The Join Confirm message is sent by the AC upon receiving a Join ACK,
which has a valid PSK-MIC message element, as a means of providing which has a valid PSK-MIC message element, as a means of providing
key confirmation to the WTP. The Join Confirm is only used in the key confirmation to the WTP. The Join Confirm is only used in the
case where the WTP makes use of the pre-shared key LWAPP mode (See case where the WTP makes use of the pre-shared key LWAPP mode (see
Section 10 for more information). Section 10 for more information).
If the security method used is pre-shared key based, when an WTP If the security method used is pre-shared-key-based, when a WTP
receives a Join Confirm it enters the Joined state and initiates receives a Join Confirm, it enters the Joined state and initiates
either a Configure Request or Image Data to the AC to which it is now either a Configure Request or Image Data to the AC to which it is now
joined. Upon entering the Joined state, the WTP begins timing an joined. Upon entering the Joined state, the WTP begins timing an
interval equal to NeighborDeadInterval. Expiration of the timer will interval equal to NeighborDeadInterval. Expiration of the timer will
result in the transmission of the Echo Request. result in the transmission of the Echo Request.
This message is never received, or sent, when the security type used This message is never received, or sent, when the security type used
between the WTP and the AC is certificated based. between the WTP and the AC is certificated-based.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.4.1. Session ID 6.4.1. Session ID
The Session ID message element is defined in section Section 6.1.7. The Session ID message element is defined in Section 6.1.7.
6.4.2. PSK-MIC 6.4.2. PSK-MIC
The PSK-MIC message element is defined in section Section 6.2.9. The PSK-MIC message element is defined in Section 6.2.9.
6.5. Echo Request 6.5. Echo Request
The Echo Request message is a keepalive mechanism for the LWAPP The Echo Request message is a keepalive mechanism for the LWAPP
control message. control message.
Echo Requests are sent periodically by an WTP in the Run state (see Echo Requests are sent periodically by a WTP in the Run state (see
Figure 2) to determine the state of the connection between the WTP Figure 2) to determine the state of the connection between the WTP
and the AC. The Echo Request is sent by the WTP when the Heartbeat and the AC. The Echo Request is sent by the WTP when the Heartbeat
timer expires, and it MUST start its NeighborDeadInterval timer. timer expires, and it MUST start its NeighborDeadInterval timer.
The Echo Request carries no message elements. The Echo Request carries no message elements.
When an AC receives an Echo Request it responds with an Echo When an AC receives an Echo Request, it responds with an Echo
Response. Response.
6.6. Echo Response 6.6. Echo Response
The Echo Response acknowledges the Echo Request, and are only The Echo Response acknowledges the Echo Request, and is only accepted
accepted while in the Run state (see Figure 2). while in the Run state (see Figure 2).
Echo Responses are sent by an AC after receiving an Echo Request. Echo Responses are sent by an AC after receiving an Echo Request.
After transmitting the Echo Response, the AC should reset its After transmitting the Echo Response, the AC should reset its
Heartbeat timer to expire in the value configured for EchoInterval. Heartbeat timer to expire in the value configured for EchoInterval.
If another Echo request is not received by the AC when the timer If another Echo request is not received by the AC when the timer
expires, the AC SHOULD consider the WTP to no longer be reachable. expires, the AC SHOULD consider the WTP to no longer be reachable.
The Echo Response carries no message elements. The Echo Response carries no message elements.
When an WTP receives an Echo Response it stops the When a WTP receives an Echo Response it stops the
NeighborDeadInterval timer, and starts the Heartbeat timer to NeighborDeadInterval timer, and starts the Heartbeat timer to
EchoInterval. EchoInterval.
If the NeighborDeadInterval timer expires prior to receiving an Echo If the NeighborDeadInterval timer expires prior to receiving an Echo
Response, the WTP enters the Idle state. Response, the WTP enters the Idle state.
6.7. Key Update Request 6.7. Key Update Request
The Key Update Request is used by the WTP to initiate the rekeying The Key Update Request is used by the WTP to initiate the rekeying
phase. This message is sent by a WTP when in the Run state and MUST phase. This message is sent by a WTP when in the Run state and MUST
include a new unique Session Identifier. This message MUST also include a new unique Session Identifier. This message MUST also
include a unique Nonce in the XNonce message element, which is used include a unique nonce in the XNonce message element, which is used
to protect against replay attacks (see Section 10). to protect against replay attacks (see Section 10).
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.7.1. Session ID 6.7.1. Session ID
The Session ID message element is defined in section Section 6.1.7. The Session ID message element is defined in Section 6.1.7.
6.7.2. XNonce 6.7.2. XNonce
The XNonce message element is defined in section Section 6.1.9. The XNonce message element is defined in Section 6.1.9.
6.8. Key Update Response 6.8. Key Update Response
The Key Update Response is sent by the AC in response to the request The Key Update Response is sent by the AC in response to the request
message, and includes an encrypted ANonce, which is used to derive message, and includes an encrypted ANonce, which is used to derive
new session keys. This message MUST include a Session Identifier new session keys. This message MUST include a Session Identifier
message element, whose value MUST be identical to the one found in message element, whose value MUST be identical to the one found in
the Key Update Request. the Key Update Request.
The AC MUST include a PSK-MIC message element, which provides message The AC MUST include a PSK-MIC message element, which provides message
integrity over the whole message. integrity over the whole message.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.8.1. Session ID 6.8.1. Session ID
The Session ID message element is defined in section Section 6.1.7. The Session ID message element is defined in Section 6.1.7.
6.8.2. ANonce 6.8.2. ANonce
The ANonce message element is defined in section Section 6.2.8. The ANonce message element is defined in Section 6.2.8.
6.8.3. PSK-MIC 6.8.3. PSK-MIC
The PSK-MIC message element is defined in section Section 6.2.9. The PSK-MIC message element is defined in Section 6.2.9.
6.9. Key Update ACK 6.9. Key Update ACK
The Key Update ACK is sent by the WTP and includes an encryption The Key Update ACK is sent by the WTP and includes an encrypted
version of the WTP's Nonce, which is used in the key derivation version of the WTP's nonce, which is used in the key derivation
process. The session keys derived are then used as new LWAPP control process. The session keys derived are then used as new LWAPP control
message encryption keys (see Section 10). message encryption keys (see Section 10).
The WTP MUST include a PSK-MIC message element, which provides The WTP MUST include a PSK-MIC message element, which provides
message integrity over the whole message. message integrity over the whole message.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.9.1. WNonce 6.9.1. WNonce
The WNonce message element is defined in section Section 6.3.2. The WNonce message element is defined in Section 6.3.2.
6.9.2. PSK-MIC 6.9.2. PSK-MIC
The PSK-MIC message element is defined in section Section 6.2.9. The PSK-MIC message element is defined in Section 6.2.9.
6.10. Key Update Confirm 6.10. Key Update Confirm
The Key Update Confirm closes the rekeying loop, and allows the WTP The Key Update Confirm closes the rekeying loop, and allows the WTP
to recognize that the AC has received and processed the key update to recognize that the AC has received and processed the Key Update
messages. At this point, the WTP updates its session key in its messages. At this point, the WTP updates its session key in its
crypto engine, and the associated Initialization Vector, ensuring crypto engine, and the associated Initialization Vector, ensuring
that all future LWAPP control frames are encrypted with the newly that all future LWAPP control frames are encrypted with the newly
derived encryption key. derived encryption key.
The WTP MUST include a PSK-MIC message element, which provides The WTP MUST include a PSK-MIC message element, which provides
message integrity over the whole message. message integrity over the whole message.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.10.1. PSK-MIC 6.10.1. PSK-MIC
The PSK-MIC message element is defined in section Section 6.2.9. The PSK-MIC message element is defined in Section 6.2.9.
6.11. Key Update Trigger 6.11. Key Update Trigger
The Key Update Trigger is used by the AC to request that a Key Update The Key Update Trigger is used by the AC to request that a Key Update
Request be initiated by the WTP. Request be initiated by the WTP.
Key Update Trigger are sent by an AC in the Run state to inform the Key Update Triggers are sent by an AC in the Run state to inform the
WTP to initiate a Key Update Request message. WTP to initiate a Key Update Request message.
When a WTP receives a Key Update Trigger it generates a key Update When a WTP receives a Key Update Trigger, it generates a Key Update
Request. Request.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
6.11.1. Session ID 6.11.1. Session ID
The Session ID message element is defined in section Section 6.1.7. The Session ID message element is defined in Section 6.1.7.
7. WTP Configuration Management 7. WTP Configuration Management
The Wireless Termination Point Configuration messages are used to The Wireless Termination Point Configuration messages are used to
exchange configuration between the AC and the WTP. exchange configuration between the AC and the WTP.
7.1. Configuration Consistency 7.1. Configuration Consistency
The LWAPP protocol provides flexibility in how WTP configuration is The LWAPP protocol provides flexibility in how WTP configuration is
managed. To put it simply, a WTP has one of two options: managed. To put it simply, a WTP has one of two options:
1. WTP retain no configuration and simply abides by the configuration 1. The WTP retains no configuration and simply abides by the
provided by the AC. configuration provided by the AC.
2. WTP retain the configuration of parameters provided by the AC that 2. The WTP retains the configuration of parameters provided by the AC
are non-default values. that are non-default values.
If the WTP opts to save configuration locally, the LWAPP protocol If the WTP opts to save configuration locally, the LWAPP protocol
state machine defines the "configure" state, which is used during the state machine defines the "Configure" state, which is used during the
initial binding WTP-AC phase, which allows for configuration initial binding WTP-AC phase, which allows for configuration
exchange. During this period, the WTP sends its current exchange. During this period, the WTP sends its current
configuration overrides to the AC via the COnfigure Request message. configuration overrides to the AC via the Configure Request message.
A configuration override is a parameter that is non-default. One A configuration override is a parameter that is non-default. One
example is that in the LWAPP protocol the default antenna example is that in the LWAPP protocol, the default antenna
configuration is internal omni antenna. However, a WTP that either configuration is an internal-omni antenna. However, a WTP that
has no internal antennas, or has been explicitely configured by the either has no internal antennas, or has been explicitely configured
AC to use external antennas, would send its antenna configuration by the AC to use external antennas would send its antenna
during the configure phase, allowing the AC to become aware of the configuration during the configure phase, allowing the AC to become
WTP's current configuration. aware of the WTP's current configuration.
Once the WTP has provided its configuration to the AC, the AC sends Once the WTP has provided its configuration to the AC, the AC sends
down its own configuration. This allows the WTP to inherit the down its own configuration. This allows the WTP to inherit the
configuration and policies on the AC. configuration and policies on the AC.
An LWAPP AC maintains a copy of each active WTP's configuration. An LWAPP AC maintains a copy of each active WTP's configuration.
There is no need for versioning or other means to identify There is no need for versioning or other means to identify
configuration changes. If a WTP becomes inactive, the AC MAY delete configuration changes. If a WTP becomes inactive, the AC MAY delete
the configuration associated with it. If a WTP were to fail, and the configuration associated with it. If a WTP were to fail, and
connect to a new AC, it would provide its overriden configuration connect to a new AC, it would provide its overridden configuration
parameters, allowing the new AC to be aware of the WTP's parameters, allowing the new AC to be aware of the WTP's
configuration. configuration.
As a consequence, this model allows for relisiency, whereby in light As a consequence, this model allows for resiliency, whereby in light
of an AC failure, another AC could provide service to the WTP. In of an AC failure, another AC could provide service to the WTP. In
this scenario, the new AC would be automatically updated on any this scenario, the new AC would be automatically updated on any
possible WTP configuration changes - eliminating the need for possible WTP configuration changes -- eliminating the need for Inter-
inter-AC communication or the need for all ACs to be aware of the AC communication or the need for all ACs to be aware of the
configuration of all WTPs in the network. configuration of all WTPs in the network.
Once the LWAPP protocol enters the Run state, the WTPs begin to Once the LWAPP protocol enters the Run state, the WTPs begin to
provide service. However, it is quite common for administrators to provide service. However, it is quite common for administrators to
require that configuration changes be made while the network is require that configuration changes be made while the network is
operational. Therefore, the Configuration Update Request is sent by operational. Therefore, the Configuration Update Request is sent by
the AC to the WTP in order to make these changes at run-time. the AC to the WTP in order to make these changes at run-time.
7.2. Configure Request 7.2. Configure Request
The Configure Request message is sent by an WTP to send its current The Configure Request message is sent by a WTP to send its current
configuration to its AC. configuration to its AC.
Configure Requests are sent by an WTP after receiving a Join Configure Requests are sent by a WTP after receiving a Join Response,
Response, while in the Configure state. while in the Configure state.
The Configure Request carries binding specific message elements. The Configure Request carries binding-specific message elements.
Refer to the appropriate binding for the definition of this Refer to the appropriate binding for the definition of this
structure. structure.
When an AC receives a Configure Request it will act upon the content When an AC receives a Configure Request, it will act upon the content
of the packet and respond to the WTP with a Configure Response. of the packet and respond to the WTP with a Configure Response.
The Configure Request includes multiple Administrative State message The Configure Request includes multiple Administrative State message
Elements. There is one such message element for the WTP, and then elements. There is one such message element for the WTP, and then
one per radio in the WTP. one per radio in the WTP.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
7.2.1. Administrative State 7.2.1. Administrative State
The administrative event message element is used to communicate the The Administrative Event message element is used to communicate the
state of a particular radio. The value contains the following state of a particular radio. The value contains the following
fields. fields.
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID | Admin State | | Radio ID | Admin State |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 27 for Administrative State Type: 27 for Administrative State
Length: 2 Length: 2
Radio ID: An 8-bit value representing the radio to configure. The Radio ID: An 8-bit value representing the radio to configure. The
Radio ID field may also include the value of 0xff, which is used Radio ID field may also include the value of 0xff, which is used
to identify the WTP itself. Therefore, if an AC wishes to change to identify the WTP itself. Therefore, if an AC wishes to change
the administrative state of an WTP, it would include 0xff in the the administrative state of a WTP, it would include 0xff in the
Radio ID field. Radio ID field.
Admin State: An 8-bit value representing the administrative state Admin State: An 8-bit value representing the administrative state
of the radio. The following values are supported: of the radio. The following values are supported:
1 - Enabled 1 - Enabled
2 - Disabled 2 - Disabled
7.2.2. AC Name 7.2.2. AC Name
The AC Name message element is defined in section Section 5.2.3. The AC Name message element is defined in Section 5.2.3.
7.2.3. AC Name with Index 7.2.3. AC Name with Index
The AC Name with Index message element is sent by the AC to the WTP The AC Name with Index message element is sent by the AC to the WTP
to configure preferred ACs. The number of instances where this to configure preferred ACs. The number of instances where this
message element would be present is equal to the number of ACs message element would be present is equal to the number of ACs
configured on the WTP. configured on the WTP.
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Index | AC Name... | Index | AC Name...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 90 for AC Name with Index Type: 90 for AC Name with Index
Length: 5 Length: 5
Index: The index of the preferred server (e.g., 1=primary, Index: The index of the preferred server (e.g., 1=primary,
2=secondary). 2=secondary).
AC Name: A variable length ASCII string containing the AC's name. AC Name: A variable-length ASCII string containing the AC's name.
7.2.4. WTP Board Data 7.2.4. WTP Board Data
The WTP Board Data message element is sent by the WTP to the AC and The WTP Board Data message element is sent by the WTP to the AC and
contains information about the hardware present. contains information about the hardware present.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Card ID | Card Revision | | Card ID | Card Revision |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP Model | | WTP Model |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP Model | | WTP Model |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP Serial Number ... | | WTP Serial Number ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ethernet MAC Address | | Ethernet MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ethernet MAC Address | | Ethernet MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 50 for WTP Board Data Type: 50 for WTP Board Data
Length: 26 Length: 26
Card ID: A hardware identifier. Card ID: A hardware identifier.
Card Revision: 4 byte Revision of the card. Card Revision: 4-byte Revision of the card.
WTP Model: 8 byte WTP Model Number. WTP Model: 8-byte WTP Model Number.
WTP Serial Number: 24 byte WTP Serial Number. WTP Serial Number: 24-byte WTP Serial Number.
Reserved: A 4 byte reserved field that MUST be set to zero (0). Reserved: A 4-byte reserved field that MUST be set to zero (0).
Ethernet MAC Address: MAC Address of the WTP's Ethernet interface. Ethernet MAC Address: MAC address of the WTP's Ethernet interface.
7.2.5. Statistics Timer 7.2.5. Statistics Timer
The statistics timer message element value is used by the AC to The Statistics Timer message element value is used by the AC to
inform the WTP of the frequency which it expects to receive updated inform the WTP of the frequency that it expects to receive updated
statistics. statistics.
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Statistics Timer | | Statistics Timer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 37 for Statistics Timer Type: 37 for Statistics Timer
Length: 2 Length: 2
Statistics Timer: A 16-bit unsigned integer indicating the time, in Statistics Timer: A 16-bit unsigned integer indicating the time, in
seconds seconds.
7.2.6. WTP Static IP Address Information 7.2.6. WTP Static IP Address Information
The WTP Static IP Address Information message element is used by an The WTP Static IP Address Information message element is used by an
AC to configure or clear a previously configured static IP address on AC to configure or clear a previously configured static IP address on
an WTP. a WTP.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Netmask | | Netmask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Gateway | | Gateway |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Static | | Static |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 82 for WTP Static IP Address Information Type: 82 for WTP Static IP Address Information
Length: 13 Length: 13
IP Address: The IP Address to assign to the WTP. IP Address: The IP address to assign to the WTP.
Netmask: The IP Netmask. Netmask: The IP Netmask.
Gateway: The IP address of the gateway. Gateway: The IP address of the gateway.
Netmask: The IP Netmask. Netmask: The IP Netmask.
Static: An 8-bit boolean stating whether the WTP should use a Static: An 8-bit Boolean stating whether or not the WTP should use
static IP address or not. A value of zero disables the static IP a static IP address. A value of zero disables the static IP
address, while a value of one enables it. address, while a value of one enables it.
7.2.7. WTP Reboot Statistics 7.2.7. WTP Reboot Statistics
The WTP Reboot Statistics message element is sent by the WTP to the The WTP Reboot Statistics message element is sent by the WTP to the
AC to communicate information about reasons why reboots have AC to communicate information about reasons why reboots have
occurred. occurred.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Crash Count | LWAPP Initiated Count | | Crash Count | LWAPP Initiated Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Failure Count | Failure Type | | Link Failure Count | Failure Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 67 for WTP Reboot Statistics Type: 67 for WTP Reboot Statistics
Length: 7 Length: 7
Crash Count: The number of reboots that have occurred due to an WTP Crash Count: The number of reboots that have occurred due to a WTP
crash. crash.
LWAPP Initiated Count: The number of reboots that have occured at LWAPP Initiated Count: The number of reboots that have occurred at
the request of some LWAPP message, such as a change in the request of some LWAPP message, such as a change in
configuration that required a reboot or an explicit LWAPP reset configuration that required a reboot or an explicit LWAPP reset
request. request.
Link Failure Count: The number of times that an LWAPP connection Link Failure Count: The number of times that an LWAPP connection
with an AC has failed. with an AC has failed.
Failure Type: The last WTP failure. The following values are Failure Type: The last WTP failure. The following values are
supported: supported:
0 - Link Failure 0 - Link Failure
1 - LWAPP Initiated 1 - LWAPP Initiated
2 - WTP Crash 2 - WTP Crash
7.3. Configure Response 7.3. Configure Response
The Configure Response message is sent by an AC and provides an The Configure Response message is sent by an AC and provides an
opportunity for the AC to override an WTP's requested configuration. opportunity for the AC to override a WTP's requested configuration.
Configure Responses are sent by an AC after receiving a Configure Configure Responses are sent by an AC after receiving a Configure
Request. Request.
The Configure Response carries binding specific message elements. The Configure Response carries binding-specific message elements.
Refer to the appropriate binding for the definition of this Refer to the appropriate binding for the definition of this
structure. structure.
When an WTP receives a Configure Response it acts upon the content of When a WTP receives a Configure Response, it acts upon the content of
the packet, as appropriate. If the Configure Response message the packet, as appropriate. If the Configure Response message
includes a Change State Event message element that causes a change in includes a Change State Event message element that causes a change in
the operational state of one of the Radio, the WTP will transmit a the operational state of one of the Radios, the WTP will transmit a
Change State Event to the AC, as an acknowledgement of the change in Change State Event to the AC as an acknowledgement of the change in
state. state.
The following subsections define the message elements that MUST be The following subsections define the message elements that MUST be
included in this LWAPP operation. included in this LWAPP operation.
7.3.1. Decryption Error Report Period 7.3.1. Decryption Error Report Period
The Decryption Error Report Period message element value is used by The Decryption Error Report Period message element value is used by
the AC to inform the WTP how frequently it should send decryption the AC to inform the WTP of how frequently it should send decryption
error report messages. error report messages.
0 1 2 0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID | Report Interval | | Radio ID | Report Interval |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 38 for Decryption Error Report Period Type: 38 for Decryption Error Report Period
Length: 3 Length: 3
Radio ID: The Radio Identifier, typically refers to some interface Radio ID: The Radio Identifier: typically refers to some interface
index on the WTP index on the WTP.
Report Interval: A 16-bit unsigned integer indicating the time, in Report Interval: A 16-bit, unsigned integer indicating the time, in
seconds seconds.
7.3.2. Change State Event 7.3.2. Change State Event
The WTP radios information message element is used to communicate the The WTP Radio Information message element is used to communicate the
operational state of a radio. The value contains two fields, as operational state of a radio. The value contains two fields, as
shown. shown.
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID | State | Cause | | Radio ID | State | Cause |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 26 for Change State Event Type: 26 for Change State Event
Length: 3 Length: 3
Radio ID: The Radio Identifier, typically refers to some interface Radio ID: The Radio Identifier: typically refers to some interface
index on the WTP. index on the WTP.
State: An 8-bit boolean value representing the state of the radio. State: An 8-bit Boolean value representing the state of the radio.
A value of one disables the radio, while a value of two enables A value of one disables the radio, while a value of two enables
it. it.
Cause: In the event of a radio being inoperable, the cause field Cause: In the event of a radio being inoperable, the Cause field
would contain the reason the radio is out of service.
Cause: In the event of a radio being inoperable, the cause field
would contain the reason the radio is out of service. The would contain the reason the radio is out of service. The
following values are supported: following values are supported:
0 - Normal 0 - Normal
1 - Radio Failure 1 - Radio Failure
2 - Software Failure 2 - Software Failure
7.3.3. LWAPP Timers 7.3.3. LWAPP Timers
The LWAPP Timers message element is used by an AC to configure LWAPP The LWAPP Timers message element is used by an AC to configure LWAPP
timers on an WTP. timers on a WTP.
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Discovery | Echo Request | | Discovery | Echo Request |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 68 for LWAPP Timers Type: 68 for LWAPP Timers
Length: 2 Length: 2
Discovery: The number of seconds between LWAPP Discovery packets, Discovery: The number of seconds between LWAPP Discovery packets
when the WTP is in the discovery mode. when the WTP is in the discovery mode.
Echo Request: The number of seconds between WTP Echo Request LWAPP Echo Request: The number of seconds between WTP Echo Request LWAPP
messages. messages.
7.3.4. AC IPv4 List 7.3.4. AC IPv4 List
The AC List message element is defined in section Section 6.2.6. The AC List message element is defined in Section 6.2.6.
7.3.5. AC IPv6 List 7.3.5. AC IPv6 List
The AC List message element is defined in section Section 6.2.7. The AC List message element is defined in Section 6.2.7.
7.3.6. WTP Fallback 7.3.6. WTP Fallback
The WTP Fallback message element is sent by the AC to the WTP to The WTP Fallback message element is sent by the AC to the WTP to
enable or disable automatic LWAPP fallback in the event that an WTP enable or disable automatic LWAPP fallback in the event that a WTP
detects its preferred AC, and is not currently connected to it. detects its preferred AC, and is not currently connected to it.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Mode | | Mode |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 91 for WTP Fallback Type: 91 for WTP Fallback
Length: 1 Length: 1
Mode: The 8-bit boolean value indicates the status of automatic Mode: The 8-bit Boolean value indicates the status of automatic
LWAPP fallback on the WTP. A value of zero disables the fallback LWAPP fallback on the WTP. A value of zero disables the fallback
feature, while a value of one enables it. When enabled, if the feature, while a value of one enables it. When enabled, if the
WTP detects that its primary AC is available, and it is not WTP detects that its primary AC is available, and it is not
connected to it, it SHOULD automatically disconnect from its connected to it, it SHOULD automatically disconnect from its
current AC and reconnect to its primary. If disabled, the WTP current AC and reconnect to its primary. If disabled, the WTP
will only reconnect to its primary through manual intervention will only reconnect to its primary through manual intervention
(e.g., through the Reset Request command). (e.g., through the Reset Request command).
7.3.7. Idle Timeout 7.3.7. Idle Timeout
The Idle Timeout message element is sent by the AC to the WTP to The Idle Timeout message element is sent by the AC to the WTP to
provide it with the idle timeout that it should enforce on its active provide it with the idle timeout that it should enforce on its active
mobile station entries. mobile station entries.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Timeout | | Timeout |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 97 for Idle Timeout Type: 97 for Idle Timeout
Length: 4 Length: 4
Timeout: The current idle timeout to be enforced by the WTP. Timeout: The current idle timeout to be enforced by the WTP.
7.4. Configuration Update Request 7.4. Configuration Update Request
Configure Update Requests are sent by the AC to provision the WTP Configure Update Requests are sent by the AC to provision the WTP
skipping to change at page 64, line 14 skipping to change at page 62, line 20
When an AC receives a Configuration Update Request it will respond When an AC receives a Configuration Update Request it will respond
with a Configuration Update Response, with the appropriate Result with a Configuration Update Response, with the appropriate Result
Code. Code.
The following subsections define the message elements introduced by The following subsections define the message elements introduced by
this LWAPP operation. this LWAPP operation.
7.4.1. WTP Name 7.4.1. WTP Name
The WTP Name message element is defined in section Section 6.1.3. The WTP Name message element is defined in Section 6.1.3.
7.4.2. Change State Event 7.4.2. Change State Event
The Change State Event message element is defined in section The Change State Event message element is defined in Section 7.3.2.
Section 7.3.2.
7.4.3. Administrative State 7.4.3. Administrative State
The Administrative State message element is defined in section The Administrative State message element is defined in Section 7.2.1.
Section 7.2.1.
7.4.4. Statistics Timer 7.4.4. Statistics Timer
The Statistics Timer message element is defined in section The Statistics Timer message element is defined in Section 7.2.5.
Section 7.2.5.
7.4.5. Location Data 7.4.5. Location Data
The Location Data message element is defined in section The Location Data message element is defined in Section 6.1.4.
Section 6.1.4.
7.4.6. Decryption Error Report Period 7.4.6. Decryption Error Report Period
The Decryption Error Report Period message element is defined in The Decryption Error Report Period message element is defined in
section Section 7.3.1. Section 7.3.1.
7.4.7. AC IPv4 List 7.4.7. AC IPv4 List
The AC List message element is defined in section Section 6.2.6. The AC List message element is defined in Section 6.2.6.
7.4.8. AC IPv6 List 7.4.8. AC IPv6 List
The AC List message element is defined in section Section 6.2.7. The AC List message element is defined in Section 6.2.7.
7.4.9. Add Blacklist Entry 7.4.9. Add Blacklist Entry
The Add Blacklist Entry message element is used by an AC to add a The Add Blacklist Entry message element is used by an AC to add a
blacklist entry on an WTP, ensuring that the WTP no longer provides blacklist entry on a WTP, ensuring that the WTP no longer provides
any service to the MAC addresses provided in the message. The MAC any service to the MAC addresses provided in the message. The MAC
Addresses provided in this message element are not expected to be addresses provided in this message element are not expected to be
saved in non-volative memory on the WTP. saved in non-volative memory on the WTP.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Num of Entries| MAC Address[] | | Num of Entries| MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address[] | | MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 65 for Add Blacklist Entry Type: 65 for Add Blacklist Entry
Length: >= 7 Length: >= 7
Num of Entries: The number of MAC Addresses in the array. Num of Entries: The number of MAC addresses in the array.
MAC Address: An array of MAC Addresses to add to the blacklist MAC Address: An array of MAC addresses to add to the blacklist
entry. entry.
7.4.10. Delete Blacklist Entry 7.4.10. Delete Blacklist Entry
The Delete Blacklist Entry message element is used by an AC to delete The Delete Blacklist Entry message element is used by an AC to delete
a previously added blacklist entry on an WTP, ensuring that the WTP a previously added blacklist entry on a WTP, ensuring that the WTP
provides service to the MAC addresses provided in the message. provides service to the MAC addresses provided in the message.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Num of Entries| MAC Address[] | | Num of Entries| MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address[] | | MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 66 for Delete Blacklist Entry Type: 66 for Delete Blacklist Entry
Length: >= 7 Length: >= 7
Num of Entries: The number of MAC Addresses in the array. Num of Entries: The number of MAC addresses in the array.
MAC Address: An array of MAC Addresses to delete from the blacklist MAC Address: An array of MAC addresses to delete from the blacklist
entry. entry.
7.4.11. Add Static Blacklist Entry 7.4.11. Add Static Blacklist Entry
The Add Static Blacklist Entry message element is used by an AC to The Add Static Blacklist Entry message element is used by an AC to
add a permanent blacklist entry on an WTP, ensuring that the WTP no add a permanent Blacklist Entry on a WTP, ensuring that the WTP no
longer provides any service to the MAC addresses provided in the longer provides any service to the MAC addresses provided in the
message. The MAC Addresses provided in this message element are message. The MAC addresses provided in this message element are
expected to be saved in non-volative memory on the WTP. expected to be saved in non-volative memory on the WTP.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Num of Entries| MAC Address[] | | Num of Entries| MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address[] | | MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 70 for Delete Blacklist Entry Type: 70 for Delete Blacklist Entry
Length: >= 7 Length: >= 7
Num of Entries: The number of MAC Addresses in the array. Num of Entries: The number of MAC addresses in the array.
MAC Address: An array of MAC Addresses to add to the permanent MAC Address: An array of MAC addresses to add to the permanent
blacklist entry. blacklist entry.
7.4.12. Delete Static Blacklist Entry 7.4.12. Delete Static Blacklist Entry
The Delete Static Blacklist Entry message element is used by an AC to The Delete Static Blacklist Entry message element is used by an AC to
delete a previously added static blacklist entry on an WTP, ensuring delete a previously added static blacklist entry on a WTP, ensuring
that the WTP provides service to the MAC addresses provided in the that the WTP provides service to the MAC addresses provided in the
message. message.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Num of Entries| MAC Address[] | | Num of Entries| MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address[] | | MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 71 for Delete Blacklist Entry Type: 71 for Delete Blacklist Entry
Length: >= 7 Length: >= 7
Num of Entries: The number of MAC Addresses in the array. Num of Entries: The number of MAC addresses in the array.
MAC Address: An array of MAC Addresses to delete from the static MAC Address: An array of MAC addresses to delete from the static
blacklist entry. blacklist entry.
7.4.13. LWAPP Timers 7.4.13. LWAPP Timers
The LWAPP Timers message element is defined in section Section 7.3.3. The LWAPP Timers message element is defined in Section 7.3.3.
7.4.14. AC Name with Index 7.4.14. AC Name with Index
The AC Name with Index message element is defined in section The AC Name with Index message element is defined in Section 7.2.3.
Section 7.2.3.
7.4.15. WTP Fallback 7.4.15. WTP Fallback
The WTP Fallback message element is defined in section Section 7.3.6. The WTP Fallback message element is defined in Section 7.3.6.
7.4.16. Idle Timeout 7.4.16. Idle Timeout
The Idle Timeout message element is defined in section Section 7.3.7. The Idle Timeout message element is defined in Section 7.3.7.
7.5. Configuration Update Response 7.5. Configuration Update Response
The Configuration Update Response is the acknowledgement message for The Configuration Update Response is the acknowledgement message for
the Configuration Update Request. the Configuration Update Request.
Configuration Update Responses are sent by an WTP after receiving a Configuration Update Responses are sent by a WTP after receiving a
Configuration Update Request. Configuration Update Request.
When an AC receives a Configure Update Response the result code When an AC receives a Configure Update Response, the result code
indicates if the WTP successfully accepted the configuration. indicates if the WTP successfully accepted the configuration.
The following subsections define the message elements that must be The following subsections define the message elements that must be
present in this LWAPP operation. present in this LWAPP operation.
7.5.1. Result Code 7.5.1. Result Code
The Result Code message element is defined in section Section 6.2.1. The Result Code message element is defined in Section 6.2.1.
7.6. Change State Event Request 7.6. Change State Event Request
The Change State Event is used by the WTP to inform the AC of a The Change State Event is used by the WTP to inform the AC of a
change in the operational state. change in the operational state.
The Change State Event message is sent by the WTP when it receives a The Change State Event message is sent by the WTP when it receives a
Configuration Response that includes a Change State Event message Configuration Response that includes a Change State Event message
element. It is also sent in the event that the WTP detects an element. It is also sent in the event that the WTP detects an
operational failure with a radio. The Change State Event may be sent operational failure with a radio. The Change State Event may be sent
in either the Configure or Run state (see Figure 2. in either the Configure or Run state (see Figure 2).
When an AC receives a Change State Event it will respond with a When an AC receives a Change State Event it will respond with a
Change State Event Response and make any necessary modifications to Change State Event Response and make any necessary modifications to
internal WTP data structures. internal WTP data structures.
The following subsections define the message elements that must be The following subsections define the message elements that must be
present in this LWAPP operation. present in this LWAPP operation.
7.6.1. Change State Event 7.6.1. Change State Event
The Change State Event message element is defined in section The Change State Event message element is defined in Section 7.3.2.
Section 7.3.2.
7.7. Change State Event Response 7.7. Change State Event Response
The Change State Event Response acknowledges the Change State Event. The Change State Event Response acknowledges the Change State Event.
Change State Event Response are sent by an WTP after receiving a Change State Event Responses are sent by a WTP after receiving a
Change State Event. Change State Event.
The Change State Event Response carries no message elements. Its The Change State Event Response carries no message elements. Its
purpose is to acknowledge the receipt of the Change State Event. purpose is to acknowledge the receipt of the Change State Event.
The WTP does not need to perform any special processing of the Change The WTP does not need to perform any special processing of the Change
State Event Response message. State Event Response message.
7.8. Clear Config Indication 7.8. Clear Config Indication
The Clear Config Indication is used to reset an WTP's configuration. The Clear Config Indication is used to reset a WTP's configuration.
The Clear Config Indication is sent by an AC to request that an WTP The Clear Config Indication is sent by an AC to request that a WTP
reset its configuration to manufacturing defaults. The Clear Config reset its configuration to manufacturing defaults. The Clear Config
Indication message is sent while in the Run LWAPP state. Indication message is sent while in the Run LWAPP state.
The Reset Request carries no message elements. The Reset Request carries no message elements.
When an WTP receives a Clear Config Indication it will reset its When a WTP receives a Clear Config Indication, it will reset its
configuration to manufacturing defaults. configuration to manufacturing defaults.
8. Device Management Operations 8. Device Management Operations
This section defines LWAPP operations responsible for debugging, This section defines LWAPP operations responsible for debugging,
gathering statistics, logging, and firmware management. gathering statistics, logging, and firmware management.
8.1. Image Data Request 8.1. Image Data Request
The Image Data Request is used to update firmware on the WTP. This The Image Data Request is used to update firmware on the WTP. This
message and its companion response are used by the AC to ensure that message and its companion response are used by the AC to ensure that
the image being run on each WTP is appropriate. the image being run on each WTP is appropriate.
Image Data Requests are exchanged between the WTP and the AC to Image Data Requests are exchanged between the WTP and the AC to
download a new program image to an WTP. download a new program image to a WTP.
When an WTP or AC receives an Image Data Request it will respond with When a WTP or AC receives an Image Data Request, it will respond with
a Image Data Response. an Image Data Response.
The format of the Image Data and Image Download message elements are The format of the Image Data and Image Download message elements are
described in the following subsections. described in the following subsections.
8.1.1. Image Download 8.1.1. Image Download
The image download message element is sent by the WTP to the AC and The Image Download message element is sent by the WTP to the AC and
contains the image filename. The value is a variable length byte contains the image filename. The value is a variable-length byte
string. The string is NOT zero terminated. string. The string is NOT zero terminated.
8.1.2. Image Data 8.1.2. Image Data
The image data message element is present when sent by the AC and The Image Data message element is present when sent by the AC and
contains the following fields. contains the following fields.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opcode | Checksum | Image Data | | Opcode | Checksum | Image Data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Image Data ... | | Image Data ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 33 for Image Data Type: 33 for Image Data
Length: >= 5 Length: >= 5
Opcode: An 8-bit value representing the transfer opcode. The Opcode: An 8-bit value representing the transfer opcode. The
following values are supported: following values are supported:
3 - Image data is included 3 - Image Data is included.
5 - An error occurred. Transfer is aborted 5 - An error occurred. Transfer is aborted.
Checksum: A 16-bit value containing a checksum of the image data Checksum: A 16-bit value containing a checksum of the Image Data
that follows that follows.
Image Data: The Image Data field contains 1024 characters, unless Image Data: The Image Data field contains 1024 characters, unless
the payload being sent is the last one (end of file) the payload being sent is the last one (end of file).
8.2. Image Data Response 8.2. Image Data Response
The Image Data Response acknowledges the Image Data Request. The Image Data Response acknowledges the Image Data Request.
An Image Data Responses is sent in response to an Image Data Request. An Image Data Responses is sent in response to an Image Data Request.
Its purpose is to acknowledge the receipt of the Image Data Request Its purpose is to acknowledge the receipt of the Image Data Request
packet. packet.
The Image Data Response carries no message elements. The Image Data Response carries no message elements.
No action is necessary on receipt. No action is necessary on receipt.
8.3. Reset Request 8.3. Reset Request
The Reset Request is used to cause an WTP to reboot. The Reset Request is used to cause a WTP to reboot.
Reset Requests are sent by an AC to cause an WTP to reinitialize its Reset Requests are sent by an AC to cause a WTP to reinitialize its
operation. operation.
The Reset Request carries no message elements. The Reset Request carries no message elements.
When an WTP receives a Reset Request it will respond with a Reset When a WTP receives a Reset Request it will respond with a Reset
Response and then reinitialize itself. Response and then reinitialize itself.
8.4. Reset Response 8.4. Reset Response
The Reset Response acknowledges the Reset Request. The Reset Response acknowledges the Reset Request.
Reset Responses are sent by an WTP after receiving a Reset Request. Reset Responses are sent by a WTP after receiving a Reset Request.
The Reset Response carries no message elements. Its purpose is to The Reset Response carries no message elements. Its purpose is to
acknowledge the receipt of the Reset Request. acknowledge the receipt of the Reset Request.
When an AC receives a Reset Response it is notified that the WTP will When an AC receives a Reset Response, it is notified that the WTP
now reinitialize its operation. will now reinitialize its operation.
8.5. WTP Event Request 8.5. WTP Event Request
WTP Event Request is used by an WTP to send an information to its AC. The WTP Event Request is used by a WTP to send information to its AC.
These types of events may be periodical, or some asynchronous event These types of events may be periodical, or some asynchronous event
on the WTP. For instance, an WTP collects statistics and uses the on the WTP. For instance, a WTP collects statistics and uses the WTP
WTP Event Request to transmit this information to the AC. Event Request to transmit this information to the AC.
When an AC receives a WTP Event Request it will respond with a WTP When an AC receives a WTP Event Request, it will respond with a WTP
Event Request. Event Request.
The WTP Event Request message MUST contain one of the following The WTP Event Request message MUST contain one of the following
message element described in the next subsections, or a message message element described in the next subsections, or a message
element that is defined for a specific technology. element that is defined for a specific technology.
8.5.1. Decryption Error Report 8.5.1. Decryption Error Report
The Decryption Error Report message element value is used by the WTP The Decryption Error Report message element value is used by the WTP
to inform the AC of decryption errors that have occured since the to inform the AC of decryption errors that have occurred since the
last report. last report.
0 1 2 0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID |Num Of Entries | Mobile MAC Address | | Radio ID |Num Of Entries | Mobile MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mobile MAC Address[] | | Mobile MAC Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 39 for Decryption Error Report Type: 39 for Decryption Error Report
Length: >= 8 Length: >= 8
Radio ID: The Radio Identifier, typically refers to some interface Radio ID: The Radio Identifier, typically refers to some interface
index on the WTP index on the WTP.
Num Of Entries: An 8-bit unsigned integer indicating the number of Num Of Entries: An 8-bit unsigned integer indicating the number of
mobile MAC addresses. mobile MAC addresses.
Mobile MAC Address: An array of mobile station MAC addresses that Mobile MAC Address: An array of mobile station MAC addresses that
have caused decryption errors. have caused decryption errors.
8.5.2. Duplicate IPv4 Address 8.5.2. Duplicate IPv4 Address
The Duplicate IPv4 Address message element is used by an WTP to The Duplicate IPv4 Address message element is used by a WTP to inform
inform an AC that it has detected another host using the same IP an AC that it has detected another host using the same IP address it
address it is currently using. is currently using.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 77 for Duplicate IPv4 Address Type: 77 for Duplicate IPv4 Address
Length: 10 Length: 10
IP Address: The IP Address currently used by the WTP. IP Address: The IP address currently used by the WTP.
MAC Address: The MAC Address of the offending device. MAC Address: The MAC address of the offending device.
8.5.3. Duplicate IPv6 Address 8.5.3. Duplicate IPv6 Address
The Duplicate IPv6 Address message element is used by an WTP to The Duplicate IPv6 Address message element is used by a WTP to inform
inform an AC that it has detected another host using the same IP an AC that it has detected another host using the same IP address it
address it is currently using. is currently using.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 77 for Duplicate IPv6 Address Type: 77 for Duplicate IPv6 Address
Length: 10 Length: 10
IP Address: The IP Address currently used by the WTP. IP Address: The IP address currently used by the WTP.
MAC Address: The MAC Address of the offending device. MAC Address: The MAC address of the offending device.
8.6. WTP Event Response 8.6. WTP Event Response
WTP Event Response acknowledges the WTP Event Request. The WTP Event Response acknowledges the WTP Event Request.
WTP Event Response are sent by an AC after receiving a WTP Event WTP Event Responses are sent by an AC after receiving a WTP Event
Request. Request.
The WTP Event Response carries no message elements. The WTP Event Response carries no message elements.
8.7. Data Transfer Request 8.7. Data Transfer Request
The Data Transfer Request is used to upload debug information from The Data Transfer Request is used to upload debug information from
the WTP to the AC. the WTP to the AC.
Data Transfer Requests are sent by the WTP to the AC when it Data Transfer Requests are sent by the WTP to the AC when it
determines that it has important information to send to the AC. For determines that it has important information to send to the AC. For
instance, if the WTP detects that its previous reboot was caused by a instance, if the WTP detects that its previous reboot was caused by a
system crash, it would want to send the crash file to the AC. The system crash, it would want to send the crash file to the AC. The
remote debugger function in the WTP also uses the data transfer remote debugger function in the WTP also uses the Data Transfer
request in order to send console output to the AC for debugging Request in order to send console output to the AC for debugging
purposes. purposes.
When an AC receives an Data Transfer Request it will respond with a When an AC receives a Data Transfer Request, it will respond with a
Data Transfer Response. The AC may log the information received, as Data Transfer Response. The AC may log the information received as
it sees fit. it sees fit.
The data transfer request message MUST contain ONE of the following The Data Transfer Request message MUST contain ONE of the following
message element described in the next subsection. message element described in the next subsection.
8.7.1. Data Transfer Mode 8.7.1. Data Transfer Mode
The Data Transfer Mode message element is used by the AC to request The Data Transfer Mode message element is used by the AC to request
information from the WTP for debugging purposes. information from the WTP for debugging purposes.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Data Type | | Data Type |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 52 for Data Transfer Mode Type: 52 for Data Transfer Mode
Length: 1 Length: 1
Data Type: An 8-bit value the type of information being requested.
The following values are supported: Data Type: An 8-bit value describing the type of information being
requested. The following values are supported:
1 - WTP Crash Data 1 - WTP Crash Data
2 - WTP Memory Dump 2 - WTP Memory Dump
8.7.2. Data Transfer Data 8.7.2. Data Transfer Data
The Data Transfer Data message element is used by the WTP to provide The Data Transfer Data message element is used by the WTP to provide
information to the AC for debugging purposes. information to the AC for debugging purposes.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data Type | Data Length | Data .... | Data Type | Data Length | Data ....
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 53 for Data Transfer Data Type: 53 for Data Transfer Data
Length: >= 3 Length: >= 3
Data Type: An 8-bit value the type of information being sent. The Data Type: An 8-bit value describing the type of information being
following values are supported: sent. The following values are supported:
1 - WTP Crash Data 1 - WTP Crash Data
2 - WTP Memory Dump 2 - WTP Memory Dump
Data Length: Length of data field. Data Length: Length of data field.
Data: Debug information. Data: Debug information.
8.8. Data Transfer Response 8.8. Data Transfer Response
The Data Transfer Response acknowledges the Data Transfer Request. The Data Transfer Response acknowledges the Data Transfer Request.
An Data Transfer Response is sent in response to an Data Transfer A Data Transfer Response is sent in response to a Data Transfer
Request. Its purpose is to acknowledge the receipt of the Data Request. Its purpose is to acknowledge the receipt of the Data
Transfer Request packet. Transfer Request packet.
The Data Transfer Response carries no message elements. The Data Transfer Response carries no message elements.
Upon receipt of a Data Transfer Response, the WTP transmits more Upon receipt of a Data Transfer Response, the WTP transmits more
information, if any is available. information, if any is available.
9. Mobile Session Management 9. Mobile Session Management
Messages in this section are used by the AC to create, modify or Messages in this section are used by the AC to create, modify, or
delete mobile station session state on the WTPs. delete mobile station session state on the WTPs.
9.1. Mobile Config Request 9.1. Mobile Config Request
The Mobile Config Request message is used to create, modify or delete The Mobile Config Request message is used to create, modify, or
mobile session state on an WTP. The message is sent by the AC to the delete mobile session state on a WTP. The message is sent by the AC
WTP, and may contain one or more message elements. The message to the WTP, and may contain one or more message elements. The
elements for this LWAPP control message include information that is message elements for this LWAPP control message include information
generally highly technology specific. Therefore, please refer to the that is generally highly technology-specific. Therefore, please
appropriate binding section or document for the definitions of the refer to the appropriate binding section or document for the
messages elements that may be used in this control message. definitions of the messages elements that may be used in this control
message.
This section defines the format of the Delete Mobile message element, This section defines the format of the Delete Mobile message element,
since it does not contain any technology specific information. since it does not contain any technology-specific information.
9.1.1. Delete Mobile 9.1.1. Delete Mobile
The Delete Mobile message element is used by the AC to inform an WTP The Delete Mobile message element is used by the AC to inform a WTP
that it should no longer provide service to a particular mobile that it should no longer provide service to a particular mobile
station. The WTP must terminate service immediately upon receiving station. The WTP must terminate service immediately upon receiving
this message element. this message element.
The transmission of a Delete Mobile message element could occur for The transmission of a Delete Mobile message element could occur for
various reasons, including for administrative reaons, as a result of various reasons, including administrative reasons, as a result of the
the fact that the mobile has roamed to another WTP, etc. fact that the mobile has roamed to another WTP, etc.
Once access has been terminated for a given station, any future Once access has been terminated for a given station, any future
packets received from the mobile must result in a deauthenticate packets received from the mobile must result in a deauthenticate
message, as specified in [6]. message, as specified in [6].
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID | MAC Address | | Radio ID | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 30 for Delete Mobile Type: 30 for Delete Mobile
Length: 7 Length: 7
Radio ID: An 8-bit value representing the radio Radio ID: An 8-bit value representing the radio
MAC Address: The mobile station's MAC Address MAC Address: The mobile station's MAC address
9.2. Mobile Config Response 9.2. Mobile Config Response
The Mobile Configuration Response is used to acknowledge a previously The Mobile Configuration Response is used to acknowledge a previously
received Mobile Configuration Request, and includes a Result Code received Mobile Configuration Request, and includes a Result Code
message element which indicates whether an error occured on the WTP. message element that indicates whether an error occurred on the WTP.
This message requires no special processing, and is only used to This message requires no special processing and is only used to
acknowledge the Mobile Configuration Request. acknowledge the Mobile Configuration Request.
The data transfer request message MUST contain the message elements The Data Transfer Request message MUST contain the message elements
described in the next subsection. described in the next subsection.
9.2.1. Result Code 9.2.1. Result Code
The Result Code message element is defined in section Section 6.2.1. The Result Code message element is defined in Section 6.2.1.
10. LWAPP Security 10. LWAPP Security
Note: This version only defines a certificate and a shared secret Note: This version only defines a certificate and a shared-secret-
based mechanism to secure control LWAPP traffic exchanged between the based mechanism to secure control LWAPP traffic exchanged between the
WTP and the AC. WTP and the AC.
10.1. Securing WTP-AC communications 10.1. Securing WTP-AC Communications
While it is generally straightforward to produce network While it is generally straightforward to produce network
installations in which the communications medium between the WTP and installations in which the communications medium between the WTP and
AC is not accessible to the casual user (e.g. these LAN segments are AC is not accessible to the casual user (e.g., these LAN segments are
isolated, no RJ45 or other access ports exist between the WTP and the isolated, and no RJ45 or other access ports exist between the WTP and
AC), this will not always be the case. Furthermore, a determined the AC), this will not always be the case. Furthermore, a determined
attacker may resort to various more sophisticated monitoring and/or attacker may resort to various, more sophisticated monitoring and/or
access techniques, thereby compromising the integrity of this access techniques, thereby compromising the integrity of this
connection. connection.
In general, a certain level of threat on the local (wired) LAN is In general, a certain level of threat on the local (wired) LAN is
expected and accepted in most computing environments. That is, it is expected and accepted in most computing environments. That is, it is
expected that in order to provide users with an acceptable level of expected that in order to provide users with an acceptable level of
service and maintain reasonable productivity levels, a certain amount service and maintain reasonable productivity levels, a certain amount
of risk must be tolerated. It is generally believed that a certain of risk must be tolerated. It is generally believed that a certain
perimeter is maintained around such LANs, that an attacker must have perimeter is maintained around such LANs, that an attacker must have
access to the building(s) in which such LANs exist, and that they access to the building(s) in which such LANs exist, and that they
must be able to "plug in" to the LAN in order to access the network. must be able to "plug in" to the LAN in order to access the network.
With these things in mind, we can begin to assess the general With these things in mind, we can begin to assess the general
security requirements for AC-WTP communications. While an in-depth security requirements for AC-WTP communications. While an in-depth
security analysis of threats and risks to these communication is security analysis of threats and risks to these communications is
beyond the scope of this document, some discussion of the motivation beyond the scope of this document, some discussion of the motivation
for various security-related design choices is useful. The for various security-related design choices is useful. The
assumptions driving the security design thus far include the assumptions driving the security design thus far include the
following: following:
o WTP-AC communications take place over a wired connection which may o WTP-AC communications take place over a wired connection that may
be accessible to a sophisticated attacker be accessible to a sophisticated attacker.
o access to this connection is not trivial for an outsider (i.e. o access to this connection is not trivial for an outsider (i.e.,
someone who does not "belong" in the building) to access someone who does not "belong" in the building) to access.
o if authentication and/or privacy of end to end traffic for which o if authentication and/or privacy of end-to-end traffic for which
the WTP and AC are intermediaries is required, this may be the WTP and AC are intermediaries is required, this may be
provided via IPsec [15]. provided via IPsec [14].
o privacy and authentication for at least some WTP-AC control o privacy and authentication for at least some WTP-AC control
traffic is required (e.g. WEP keys for user sessions, passed from traffic is required (e.g., Wired Equivalent Privacy (WEP) keys for
AC to WTP) user sessions, passed from the AC to the WTP).
o the AC can be trusted to generate strong cryptographic keys o the AC can be trusted to generate strong cryptographic keys.
AC-WTP traffic can be considered to consist of two types: data The AC-WTP traffic can be considered to consist of two types: data
traffic (e.g. to or from an end user), and control traffic which is traffic (e.g., to or from an end user), and control traffic, which is
strictly between the AC and WTP. Since data traffic may be secured strictly between the AC and WTP. Since data traffic may be secured
using IPsec (or some other end-to-end security mechanism), we confine using IPsec (or some other end-to-end security mechanism), we confine
our solution to control traffic. The resulting security consists of our solution to control traffic. The resulting security consists of
two components: an authenticated key exchange, and control traffic two components: an authenticated key exchange and control traffic
security encapsulation. The security encapsulation is accomplished security encapsulation. The security encapsulation is accomplished
using AES CCM, described in [3]. This encapsulation provides for using AES-CCM, described in [3]. This encapsulation provides for
strong AES-based authentication and encryption. The exchange of strong AES-based authentication and encryption [2]. The exchange of
cryptographic keys used for CCM is described below. cryptographic keys used for CCM is described below.
10.2. LWAPP Frame Encryption 10.2. LWAPP Frame Encryption
While, the LWAPP protocol uses AES-CCM to encrypt control traffic, it While the LWAPP protocol uses AES-CCM to encrypt control traffic, it
is important to note that not all control frames are encrypted. The is important to note that not all control frames are encrypted. The
LWAPP discovery and join phase are not encrypted. The Discovery LWAPP discovery and join phase are not encrypted. The Discovery
messages are sent in the clear since there does not exist a security messages are sent in the clear since there does not exist a security
association between the WTP and the AC during the discovery phase. association between the WTP and the AC during the discovery phase.
The Join phase is an authenticated exchange used to negotiate The join phase is an authenticated exchange used to negotiate
symmetric session keys (see Section 10.3). symmetric session keys (see Section 10.3).
Once the join phase has been successfully completed, the LWAPP state Once the join phase has been successfully completed, the LWAPP state
machine Figure 2 will move to the Configure state, at which time all machine Figure 2 will move to the Configure state, at which time all
LWAPP control frames are encrypted using AES-CCM. LWAPP control frames are encrypted using AES-CCM.
Encryption of a control message begins at the Message Element field, Encryption of a control message begins at the Message Element field:
meaning the Msg Type, Seq Num, Msg Element Length and Session ID meaning the Msg Type, Seq Num, Msg Element Length, and Session ID
fields are left intact (see Section 4.2.1). fields are left intact (see Section 4.2.1).
The AES-CCM 12 byte authentication data is appended to the end of the The AES-CCM 12-byte authentication data is appended to the end of the
message. The authentication data is calculated from the start of the message. The authentication data is calculated from the start of the
LWAPP packet, and includes the complete LWAPP control header (see LWAPP packet and includes the complete LWAPP control header (see
Section 4.2.1). Section 4.2.1).
The AES-CCM block cipher protocol requires an initialization vector. The AES-CCM block cipher protocol requires an initialization vector.
The LWAPP protocol requires that the WTP and the AC maintain two The LWAPP protocol requires that the WTP and the AC maintain two
separate IVs, one for transmission and one for reception. The IV separate IVs, one for transmission and one for reception. The IV
derived during the key exchange phase by both the WTP and the AC is derived during the key exchange phase by both the WTP and the AC is
used as the base for all encrypted packets with a new key. used as the base for all encrypted packets with a new key.
10.3. Authenticated Key Exchange 10.3. Authenticated Key Exchange
This section describes the key management component of the LWAPP This section describes the key management component of the LWAPP
protocol. There are two modes supported by LWAPP; certificate and protocol. There are two modes supported by LWAPP: certificate and
pre-shared key. pre-shared key.
10.3.1. Terminology 10.3.1. Terminology
This section details the key management protocol which makes use of This section details the key management protocol that makes use of
pre-shared secrets. pre-shared secrets.
The following notations are used throughout this section: The following notations are used throughout this section:
o PSK - the pre-shared key shared between the WTP and the AC o PSK - the pre-shared key shared between the WTP and the AC.
o Kpriv - the private key of a public-private key pair o Kpriv - the private key of a public-private key pair.
o Kpub - the public key of the pair o Kpub - the public key of the pair.
o SessionID - randomly generated LWAPP session identifier, provided o SessionID - a randomly generated LWAPP session identifier,
by the WTP in the Join Request provided by the WTP in the Join Request.
o E-x{Kpub, M} - RSA encryption of M using X's public key o E-x{Kpub, M} - RSA encryption of M using X's public key.
o D-x{Kpriv, C} - RSA decryption of C using X's private key o D-x{Kpriv, C} - RSA decryption of C using X's private key.
o AES-CMAC(key, packet) - A message integrity check, using AES-CMAC o AES-CMAC(key, packet) - A message integrity check, using AES-CMAC
and key, of the complete LWAPP packet, with the sequence number and key, of the complete LWAPP packet, with the Sequence Number
field and the payload of the PSK-MIC message element set to zero. field and the payload of the PSK-MIC message element set to zero.
o AES-E(key, plaintext) - Plaintext is encrypted with key, using o AES-E(key, plaintext) - Plaintext is encrypted with key, using
AES. AES.
o AES-D(key, ciphertext) - ciphertext is decrypted with key, using o AES-D(key, ciphertext) - ciphertext is decrypted with key, using
AES. AES.
o Certificate-AC - AC's Certificate o Certificate-AC - AC's Certificate.
o Certificate-WTP - WTP's Certificate o Certificate-WTP - WTP's Certificate.
o WTP-MAC - The WTP's MAC Address. o WTP-MAC - The WTP's MAC address.
o AC-MAC - The AC's MAC Address. o AC-MAC - The AC's MAC address.
o RK0 - the root key, which is created through a KDF function. o RK0 - the root key, which is created through a Key Derivation
Function (KDF) function.
o RK0E - the root Encryption key, derived from RK0. o RK0E - the root Encryption key, derived from RK0.
o RK0M - the root MIC key, derived from RK0. o RK0M - the root MIC key, derived from RK0.
o SK1 - the session Key o SK1 - the session key.
o SK1C - the session confirmation Key, derived from SK
o SK1E - the session encryption Key, derived from SK o SK1C - the session confirmation key, derived from SK.
o SK1W - the session keywrap Key, derived from SK (see RFC 3394 [9]) o SK1E - the session encryption key, derived from SK.
o WNonce - The WTP's randomly generated Nonce. o SK1W - the session keywrap key, derived from SK (see RFC 3394
[9]).
o ANonce - The AC's randomly generated Nonce. o WNonce - The WTP's randomly generated nonce.
o ANonce - The AC's randomly generated nonce.
o EWNonce - The payload of the WNonce message element, which o EWNonce - The payload of the WNonce message element, which
includes the WNonce. includes the WNonce.
o EANonce - The payload of the ANonce message element, which o EANonce - The payload of the ANonce message element, which
includes the ANonce. includes the ANonce.
10.3.2. Initial Key Generation 10.3.2. Initial Key Generation
The AC and WTP accomplish mutual authentication and a cryptographic The AC and WTP accomplish mutual authentication and a cryptographic
key exchange in a dual round trip using the Join Request, Join key exchange in a dual round trip using the Join Request, Join
Response, Join ACK and Join Confirm (see Section 6.1). Response, Join ACK, and Join Confirm (see Section 6.1).
The following text describes the exchange between the WTP and the AC The following text describes the exchange between the WTP and the AC
that creates a session key, which is used to secure LWAPP control that creates a session key, which is used to secure LWAPP control
messages. messages.
o The WTP creates a Join Request using the following process: o The WTP creates a Join Request using the following process:
o If Certificate based security is used, the WTP adds the o If certificate-based security is used, the WTP adds the
Certificate message element (see Section 6.1.6) with its Certificate message element (see Section 6.1.6) with its
contents set to Certificate-WTP. contents set to Certificate-WTP.
o Adds the Session ID message element (see Section 6.1.7) with o The WTP adds the Session ID message element (see Section 6.1.7)
the contents set to a randomly generated session identifer (see with the contents set to a randomly generated session
RFC 1750 [4]). The WTP MUST save the Session ID in order to identifier (see RFC 1750 [4]). The WTP MUST save the Session
validate the Join Response. ID in order to validate the Join Response.
o Creates a random Nonce, included in the XNonce message element o The WTP creates a random nonce, included in the XNonce message
(see Section 6.1.9). The WTP MUST save the XNonce to validate element (see Section 6.1.9). The WTP MUST save the XNonce to
the Join Response. validate the Join Response.
o The WTP transmits the Join Request to the AC. o The WTP transmits the Join Request to the AC.
o Upon receiving the Join Request the AC uses the following process: o Upon receiving the Join Request, the AC uses the following
process:
o The AC creates the Join Response, and ensures that the Session o The AC creates the Join Response, and ensures that the Session
ID message element matches the value found in the Join Request. ID message element matches the value found in the Join Request.
o If Certificate based security is used, the AC: o If certificate-based security is used, the AC:
o Adds the Certificate-AC to the Certificate message element. o adds the Certificate-AC to the Certificate message element.
o Creates a random 'AC Nonce' and encrypts it using the o creates a random 'AC Nonce' and encrypts it using the
following algorithm E-wtp(Kpub, XNonce XOR 'AC Nonce'). The following algorithm E-wtp(Kpub, XNonce XOR 'AC Nonce'). The
encrypted contents are added to the ANonce's message element encrypted contents are added to the ANonce's message element
payload. payload.
o If pre-shared key based security is used, the AC: o If a pre-shared-key-based security is used, the AC:
o Creates RK0 through the following algorithm: RK0 = KDF- o creates RK0 through the following algorithm: RK0 = KDF-
256{PSK, "LWAPP PSK Top K0" || Session ID || WTP-MAC || AC- 256{PSK, "LWAPP PSK Top K0" || Session ID || WTP-MAC || AC-
MAC}, where WTP-MAC is the WTP's MAC Address in the form MAC}, where WTP-MAC is the WTP's MAC address in the form
"xx:xx:xx:xx:xx:xx". Similarly, the AC-MAC is an ASCII "xx:xx:xx:xx:xx:xx". Similarly, the AC-MAC is an ASCII
encoding of the AC's MAC Address, of the form "xx:xx:xx:xx: encoding of the AC's MAC address, of the form "xx:xx:xx:xx:
xx:xx". The resulting K0 is split into the following: xx:xx". The resulting K0 is split into the following:
o The first 16 octets is known as RK0E, and is used as an o The first 16 octets are known as RK0E, and are used as an
encryption key encryption key.
o The second 16 octets is known as RK0M, and is used for o The second 16 octets are known as RK0M, and are used for
MIC'ing purposes MIC'ing purposes.
o Creates a random 'AC Nonce' and encrypts it using the o The AC creates a random 'AC Nonce' and encrypts it using the
following algorithm AES-E(RK0E, XNonce XOR 'AC Nonce'). The following algorithm: AES-E(RK0E, XNonce XOR 'AC Nonce').
encrypted contents are added to the ANonce's message element The encrypted contents are added to the ANonce's message
payload. element payload.
o The AC adds a MIC to the contents of the Join Response using o The AC adds a MIC to the contents of the Join Response using
AES-CMAC(RK0M, Join Response) and adds the resulting hash to AES-CMAC(RK0M, Join Response) and adds the resulting hash to
the PSK-MIC (Section 6.2.9) message element. the PSK-MIC (Section 6.2.9) message element.
o Upon receiving the Join Response the WTP uses the following o Upon receiving the Join Response, the WTP uses the following
process: process:
o If Pre-shared key is used, the WTP authenticates the Join o If a pre-shared key is used, the WTP authenticates the Join
Response's PSK-MIC message element. If authentication fails, Response's PSK-MIC message element. If authentication fails,
the packet is dropped. the packet is dropped.
o The WTP decrypts the ANonce message element and XOR's the value o The WTP decrypts the ANonce message element and XOR's the value
with XNonce to retrieve the 'AC Nonce'. The ANonce payload is with XNonce to retrieve the 'AC Nonce'. The ANonce payload is
referred to as ciphertext below: referred to as ciphertext below:
o If Pre-shared key is used, use AES-D(RK0E, ciphertext). The o If a pre-shared key is used, use AES-D(RK0E, ciphertext).
'AC Nonce' is then recovered using XNonce XOR plaintext. The 'AC Nonce' is then recovered using XNonce XOR plaintext.
o If certificates are used, use d-wtp(Kpriv, ciphertext). The o If certificates are used, use d-wtp(Kpriv, ciphertext). The
'AC Nonce' is then recovered using XNonce XOR plaintext. 'AC Nonce' is then recovered using XNonce XOR plaintext.
o The WTP creates a random 'WTP Nonce'. o The WTP creates a random 'WTP Nonce'.
o The WTP uses the KDF function to create a 64 octet session key o The WTP uses the KDF function to create a 64-octet session key
(SK). The KDF function used is as follows: KDF-512{'WTP Nonce' (SK). The KDF function used is as follows: KDF-512{'WTP Nonce'
|| 'AC Nonce', "LWAPP Key Generation", WTP-MAC || AC-MAC}. The || 'AC Nonce', "LWAPP Key Generation", WTP-MAC || AC-MAC}. The
KDF function is defined in [7]. KDF function is defined in [7].
o SK is then broken down into three separate session keys with o SK is then broken down into three separate session keys with
different purposes: different purposes:
o The first 16 octets is known as SK1C, and is used as a o The first 16 octets are known as SK1C, and are used as a
confirmation key confirmation key.
o The second 16 octets is known as SK1E, and is as the o The second 16 octets are known as SK1E, and are as the
encryption key encryption key.
o The third 16 octets is known as SK1D, and is used as the o The third 16 octets are known as SK1D, and are used as the
keywrap key keywrap key.
o The fourth 16 octets is known as IV, and is used as the o The fourth 16 octets are known as IV, and are used as the
Initialization Vector during encryption Initialization Vector during encryption.
o The WTP creates the Join ACK message. o The WTP creates the Join ACK message.
o If Certificate based security is used, the AC: o If certificate-based security is used, the AC:
o Encrypt the 'WTP Nonce' using following algorithm E-ac(Kpub, o encrypts the 'WTP Nonce' using the following algorithm: E-
'WTP Nonce'). The encrypted contents are added to the ac(Kpub, 'WTP Nonce'). The encrypted contents are added to
WNonce's message element payload. the WNonce's message element payload.
o If pre-shared key based security is used, the AC: o If a pre-shared-key-based security is used, the AC:
o Encrypt the 'WTP Nonce' using following algorithm AES- o encrypts the 'WTP Nonce' using the following algorithm:
E(RK0E, 'WTP Nonce'). The encrypted contents are added to AES-E(RK0E, 'WTP Nonce'). The encrypted contents are added
the WNonce's message element payload. to the WNonce's message element payload.
o The WTP adds a MIC to the contents of the Join ACK using AES- o The WTP adds a MIC to the contents of the Join ACK using
CMAC(SK1M, Join ACK) and adds the resulting hash to the PSK-MIC AES-CMAC(SK1M, Join ACK) and adds the resulting hash to the
(Section 6.2.9) message element. PSK-MIC (Section 6.2.9) message element.
o The WTP then transmits the Join ACK to the AC. o The WTP then transmits the Join ACK to the AC.
o Upon receiving the Join ACK the AC uses the following process: o Upon receiving the Join ACK, the AC uses the following process:
o The AC authenticates the Join ACK through the PSK-MIC message o The AC authenticates the Join ACK through the PSK-MIC message
element. If authentic, the AC decrypts the WNonce message element. If authentic, the AC decrypts the WNonce message
element to retrieve the 'WTP Nonce'. If the Join ACK could not element to retrieve the 'WTP Nonce'. If the Join ACK cannot be
be authenticated, the packet is dropped. authenticated, the packet is dropped.
o The AC decrypts the WNonce message element to retrieve the 'WTP o The AC decrypts the WNonce message element to retrieve the 'WTP
Nonce'. The WNonce payload is referred to as ciphertext below: Nonce'. The WNonce payload is referred to as ciphertext below:
o If Pre-shared key is used, use AES-D(RK0E, ciphertext). The o If a pre-shared key is used, use AES-D(RK0E, ciphertext).
plaintext is then considered the 'WTP Nonce'. The plaintext is then considered the 'WTP Nonce'.
o If certificates are used, use d-ac(Kpriv, ciphertext). The o If certificates are used, use d-ac(Kpriv, ciphertext). The
plaintext is then considered the 'WTP Nonce'. plaintext is then considered the 'WTP Nonce'.
o The AC then uses the KDF function to create a 64 octet session o The AC then uses the KDF function to create a 64-octet session
key (SK). The KDF function used is as follows: KDF-512{'WTP key (SK). The KDF function used is as follows: KDF-512{'WTP
Nonce' || 'AC Nonce', "LWAPP Key Generation", WTP-MAC || AC- Nonce' || 'AC Nonce', "LWAPP Key Generation", WTP-MAC ||
MAC}. The KDF function is defined in [7]. The SK is split AC-MAC}. The KDF function is defined in [7]. The SK is split
into SK1C, SK1E, SK1D and IV as previously noted. into SK1C, SK1E, SK1D, and IV, as previously noted.
o The AC creates the Join Confirm. o The AC creates the Join Confirm.
o The AC adds a MIC to the contents of the Join Confirm using o The AC adds a MIC to the contents of the Join Confirm using
AES-CMAC(SK1M, Join Confirm) and adds the resulting hash to the AES-CMAC(SK1M, Join Confirm) and adds the resulting hash to the
MIC (Section 6.2.9) message element. MIC (Section 6.2.9) message element.
o The AC then transmits the Join Confirm to the WTP. o The AC then transmits the Join Confirm to the WTP.
o Upon receiving the Join Confirm the WTP uses the following o Upon receiving the Join Confirm, the WTP uses the following
process: process:
o The WTP authenticates the Join Confirm through the PSK-MIC o The WTP authenticates the Join Confirm through the PSK-MIC
message element. If the Join Confirm could not be message element. If the Join Confirm cannot be authenticated,
authenticated, the packet is dropped. the packet is dropped.
o SK1E is now plumbed into the AC and WTP's crypto engine as the o SK1E is now plumbed into the AC and WTP's crypto engine as the
AES-CCM LWAPP control encryption session key. Furthermore, the AES-CCM LWAPP control encryption session key. Furthermore, the
random IV is used as the base Initialization Vector. From this random IV is used as the base Initialization Vector. From this
point on, all control protocol payloads between the WTP and AC are point on, all control protocol payloads between the WTP and AC are
encrypted and authenticated using the new session key. encrypted and authenticated using the new session key.
10.3.3. Refreshing Cryptographic Keys 10.3.3. Refreshing Cryptographic Keys
Since AC-WTP associations will tend to be relatively long-lived, it Since AC-WTP associations will tend to be relatively long-lived, it
is sensible to periodically refresh the encryption and authentication is sensible to periodically refresh the encryption and authentication
keys; this is referred to as "rekeying". When the key lifetime keys; this is referred to as "rekeying". When the key lifetime
reaches 95% of the configured value, identified in the KeyLifetime reaches 95% of the configured value, identified in the KeyLifetime
timer (see Section 12), the rekeying will proceed as follows: timer (see Section 12), the rekeying will proceed as follows:
o The WTP creates RK0 through the previously defined KDF algorithm: o The WTP creates RK0 through the previously defined KDF algorithm:
RK0 = KDF-256{SK1D, "LWAPP PSK Top K0" || Session ID || WTP-MAC || RK0 = KDF-256{SK1D, "LWAPP PSK Top K0" || Session ID || WTP-MAC ||
AC-MAC}. Note the difference in this specific instance is that AC-MAC}. Note that the difference in this specific instance is
SK1D that was previously generated is used instead of the PSK. that SK1D that was previously generated is used instead of the
Note this is used in both the certificate and pre-shared key PSK. Note this is used in both the certificate and pre-shared key
modes. The resulting RK0 create RK0E, RK0M. modes. The resulting RK0 creates RK0E, RK0M.
o The remaining steps used are identical as the join process, with o The remaining steps used are identical to the join process, with
the exception that the rekey messages are used instead of join the exception that the rekey messages are used instead of join
messages, and the fact that the messages are encrypted using the messages, and the fact that the messages are encrypted using the
previously created SK1E. This means the Join Request is replaced previously created SK1E. This means the Join Request is replaced
with the Rekey Request, the Join Response is replaced with the with the Rekey Request, the Join Response is replaced with the
Rekey Response, etc. The two differences between the rekey and Rekey Response, etc. The two differences between the rekey and
the join process are: the join process are:
o The Certificate-WTP and Certificate-AC are not included in the o The Certificate-WTP and Certificate-AC are not included in the
Rekey-Request and Rekey-Response, respectively. Rekey-Request and Rekey-Response, respectively.
o Regardless of whether certificates or pre-shared key was used o Regardless of whether certificates or pre-shared keys were used
in the initial key derivation, the process now uses the pre- in the initial key derivation, the process now uses the pre-
shared key mode only, using SK1D as the "PSK". shared key mode only, using SK1D as the "PSK".
o The Key Update Request is sent to the AC. o The Key Update Request is sent to the AC.
o The newly created SK1E is now plumbed into the AC and WTP's crypto o The newly created SK1E is now plumbed into the AC and WTP's crypto
engine as the AES-CCM LWAPP control encryption session key. engine as the AES-CCM LWAPP control encryption session key.
Furthermore, the new random IV is used as the base Initialization Furthermore, the new random IV is used as the base Initialization
Vector. From this point on, all control protocol payloads between Vector. From this point on, all control protocol payloads between
the WTP and AC are encrypted and authenticated using the new the WTP and AC are encrypted and authenticated using the new
skipping to change at page 86, line 10 skipping to change at page 82, line 43
extension does not represent the same role as the device validating extension does not represent the same role as the device validating
the certificate. For instance, a WTP MUST NOT accept a certificate the certificate. For instance, a WTP MUST NOT accept a certificate
whose NetscapeComment field is set to "CAPWAP WTP Device whose NetscapeComment field is set to "CAPWAP WTP Device
Certificate". Certificate".
11. IEEE 802.11 Binding 11. IEEE 802.11 Binding
This section defines the extensions required for the LWAPP protocol This section defines the extensions required for the LWAPP protocol
to be used with the IEEE 802.11 protocol. to be used with the IEEE 802.11 protocol.
11.1. Division of labor 11.1. Division of Labor
The LWAPP protocol, when used with IEEE 802.11 devices, requires a The LWAPP protocol, when used with IEEE 802.11 devices, requires a
specific behavior from the WTP and the AC, specifically in terms of specific behavior from the WTP and the AC, specifically in terms of
which 802.11 protocol functions are handled. which 802.11 protocol functions are handled.
For both the Split and Local MAC approaches, the CAPWAP functions, as For both the Split and Local MAC approaches, the CAPWAP functions, as
defined in the taxonomy specification, reside in the AC. defined in the taxonomy specification, reside in the AC.
11.1.1. Split MAC 11.1.1. Split MAC
This section shows the division of labor between the WTP and the AC This section shows the division of labor between the WTP and the AC
in a Split MAC architecture. Figure 3 shows the clear separation of in a Split MAC architecture. Figure 3 shows the clear separation of
functionality among LWAPP components. functionality among LWAPP components.
Function Location Function Location
Distribution Service AC Distribution Service AC
Integration Service AC Integration Service AC
Beacon Generation WTP Beacon Generation WTP
Probe Response WTP Probe Response WTP
Power Mgmt/Packet Buffering WTP Power Mgmt/Packet Buffering WTP
Fragmentation/Defragmentation WTP Fragmentation/Defragmentation WTP
Assoc/Disassoc/Reassoc AC Assoc/Disassoc/Reassoc AC
802.11e 802.11e
Classifying AC Classifying AC
Scheduling WTP/AC Scheduling WTP/AC
Queuing WTP Queuing WTP
802.11i 802.11i
802.1X/EAP AC 802.1X/EAP AC
Key Management AC Key Management AC
802.11 Encryption/Decryption WTP or AC 802.11 Encryption/Decryption WTP or AC
Figure 3: Mapping of 802.11 Functions for Split MAC Architecture Figure 3: Mapping of 802.11 Functions for Split MAC Architecture
The Distribution and Integration services reside on the AC, and The Distribution and Integration services reside on the AC, and
therefore all user data is tunneled between the WTP and the AC. As therefore all user data is tunneled between the WTP and the AC. As
noted above, all real-time 802.11 services, including the control noted above, all real-time 802.11 services, including the control
protocol and the beacon and probe response frames, are handled on the protocol and the beacon and Probe Response frames, are handled on the
WTP. WTP.
All remaining 802.11 MAC management frames are supported on the AC, All remaining 802.11 MAC management frames are supported on the AC,
including the Association Request which allows the AC to be involved including the Association Request, which allows the AC to be involved
in the access policy enforcement portion of the 802.11 protocol. The in the access policy enforcement portion of the 802.11 protocol. The
802.1X and 802.11i key management function are also located on the 802.1X and 802.11i key management function are also located on the
AC. AC.
While the admission control component of 802.11e resides on the AC, While the admission control component of 802.11e resides on the AC,
the real time scheduling and queuing functions are on the WTP. Note the real-time scheduling and queuing functions are on the WTP. Note
this does not exclude the AC from providing additional policing and that this does not exclude the AC from providing additional policing
scheduling functionality. and scheduling functionality.
Note that in the following figure, the use of '( - )' indicates that Note that in the following figure, the use of '( - )' indicates that
processing of the frames is done on the WTP. processing of the frames is done on the WTP.
Client WTP AC Client WTP AC
Beacon Beacon
<----------------------------- <-----------------------------
Probe Request Probe Request
----------------------------( - )-------------------------> ----------------------------( - )------------------------->
Probe Response Probe Response
<----------------------------- <-----------------------------
802.11 AUTH/Association 802.11 AUTH/Association
<---------------------------------------------------------> <--------------------------------------------------------->
Add Mobile (Clear Text, 802.1X Only) Add Mobile (Clear Text, 802.1X Only)
<-------------------------> <------------------------->
802.1X Authentication & 802.11i Key Exchange 802.1X Authentication & 802.11i Key Exchange
<---------------------------------------------------------> <--------------------------------------------------------->
Add Mobile (AES-CCMP, PTK=x) Add Mobile (AES-CCMP, PTK=x)
<-------------------------> <------------------------->
802.11 Action Frames 802.11 Action Frames
<---------------------------------------------------------> <--------------------------------------------------------->
802.11 DATA (1) 802.11 DATA (1)
<---------------------------( - )-------------------------> <---------------------------( - )------------------------->
Figure 4: Split MAC Message Flow Figure 4: Split MAC Message Flow
Figure 4 provides an illustration of the division of labor in a Split Figure 4 provides an illustration of the division of labor in a Split
MAC architecture. In this example, a WLAN has been created that is MAC architecture. In this example, a WLAN has been created that is
configured for 802.11i, using AES-CCMP for privacy. The following configured for 802.11i, using AES-CCMP for privacy. The following
process occurs: process occurs:
o The WTP generates the 802.11 beacon frames, using information o The WTP generates the 802.11 beacon frames, using information
provided to it through the Add WLAN (see Section Section 11.8.1.1) provided to it through the Add WLAN (see Section 11.8.1.1) message
message element. element.
o The WTP processes the probe request and responds with a o The WTP processes the Probe Request and responds with a
corresponding probe response. The problem request is then corresponding Probe Response. The problem request is then
forwarded to the AC for optional processing. forwarded to the AC for optional processing.
o The WTP forwards the 802.11 Authentication and Association frames o The WTP forwards the 802.11 Authentication and Association frames
to the AC, which is responsible for responding to the client. to the AC, which is responsible for responding to the client.
o Once the association is complete, the AC transmits an LWAPP Add o Once the association is complete, the AC transmits an LWAPP Add
Mobile request to the WTP (see section Section 11.7.1.1. In the Mobile Request to the WTP (see Section 11.7.1.1). In the above
above example, the WLAN is configured for 802.1X, and therefore example, the WLAN is configured for 802.1X, and therefore the
the '802.1X only' policy bit is enabled. '802.1X only' policy bit is enabled.
o If the WTP is providing encryption/decryption services, once the o If the WTP is providing encryption/decryption services, once the
client has completed the 802.11i key exchange, the AC transmits client has completed the 802.11i key exchange, the AC transmits
another Add Mobile request to the WTP, stating the security policy another Add Mobile Request to the WTP, stating the security policy
to enforce for the client (in this case AES-CCMP), as well as the to enforce for the client (in this case AES-CCMP), as well as the
encryption key to use. If encryption/decryption is handled in the encryption key to use. If encryption/decryption is handled in the
AC, the Add Mobile request would have the encryption policy set to AC, the Add Mobile Request would have the encryption policy set to
"Clear Text". "Clear Text".
o The WTP forwards any 802.11 Action frames received to the AC. o The WTP forwards any 802.11 Action frames received to the AC.
o All client data frames are tunneled between the WTP and the AC. o All client data frames are tunneled between the WTP and the AC.
Note that the WTP is responsible for encrypting and decrypting Note that the WTP is responsible for encrypting and decrypting
frames, if it was indicated in the Add Mobile request. frames, if it was indicated in the Add Mobile Request.
11.1.2. Local MAC 11.1.2. Local MAC
This section shows the division of labor between the WTP and the AC This section shows the division of labor between the WTP and the AC
in a Local MAC architecture. Figure 5 shows the clear separation of in a Local MAC architecture. Figure 5 shows the clear separation of
functiionality among LWAPP components. functionality among LWAPP components.
Function Location Function Location
Distribution Service WTP Distribution Service WTP
Integration Service WTP Integration Service WTP
Beacon Generation WTP Beacon Generation WTP
Probe Response WTP Probe Response WTP
Power Mgmt/Packet Buffering WTP Power Mgmt/Packet Buffering WTP
Fragmentation/Defragmentation WTP Fragmentation/Defragmentation WTP
Assoc/Disassoc/Reassoc WTP Assoc/Disassoc/Reassoc WTP
802.11e 802.11e
Classifying WTP Classifying WTP
Scheduling WTP Scheduling WTP
Queuing WTP Queuing WTP
802.11i 802.11i
802.1X/EAP AC 802.1X/EAP AC
Key Management AC Key Management AC
802.11 Encryption/Decryption WTP 802.11 Encryption/Decryption WTP
Figure 5: Mapping of 802.11 Functions for Local AP Architecture Figure 5: Mapping of 802.11 Functions for Local AP Architecture
Given the Distribution and Integration Services exist on the WTP, Given that Distribution and Integration Services exist on the WTP,
client data frames are not forwarded to the AC, with the exception client data frames are not forwarded to the AC, with the exception
listed in the following paragraphs. listed in the following paragraphs.
While the MAC is terminated on the WTP, it is necessary for the AC to While the MAC is terminated on the WTP, it is necessary for the AC to
be aware of mobility events within the WTPs. As a consequence, the be aware of mobility events within the WTPs. As a consequence, the
WTP MUST forward the 802.11 Association Requests to the AC, and the WTP MUST forward the 802.11 Association Requests to the AC, and the
AC MAY reply with a failed Association Response if it deems it AC MAY reply with a failed Association Response if it deems it
necessary. necessary.
The 802.1X and 802.11i Key Management function resides in the AC. The 802.1X and 802.11i Key Management function resides in the AC.
Therefore, the WTP MUST forward all 802.1X/Key Management frames to Therefore, the WTP MUST forward all 802.1X/Key Management frames to
the AC and forward the associated responses to the station. the AC and forward the associated responses to the station.
Note that in the following figure, the use of '( - )' indicates that Note that in the following figure, the use of '( - )' indicates that
processing of the frames is done on the WTP. processing of the frames is done on the WTP.
Client WTP AC Client WTP AC
Beacon Beacon
<----------------------------- <-----------------------------
Probe Probe
<----------------------------> <---------------------------->
802.11 AUTH 802.11 AUTH
<----------------------------- <-----------------------------
802.11 Association 802.11 Association
<---------------------------( - )-------------------------> <---------------------------( - )------------------------->
Add Mobile (Clear Text, 802.1X Only) Add Mobile (Clear Text, 802.1X Only)
<-------------------------> <------------------------->
802.1X Authentication & 802.11i Key Exchange 802.1X Authentication & 802.11i Key Exchange
<---------------------------------------------------------> <--------------------------------------------------------->
802.11 Action Frames 802.11 Action Frames
<---------------------------------------------------------> <--------------------------------------------------------->
Add Mobile (AES-CCMP, PTK=x) Add Mobile (AES-CCMP, PTK=x)
<-------------------------> <------------------------->
802.11 DATA 802.11 DATA
<-----------------------------> <----------------------------->
Figure 6: Local MAC Message Flow Figure 6: Local MAC Message Flow
Figure 6 provides an illustration of the division of labor in a Local Figure 6 provides an illustration of the division of labor in a Local
MAC architecture. In this example, a WLAN has been created that is MAC architecture. In this example, a WLAN has been created that is
configured for 802.11i, using AES-CCMP for privacy. The following configured for 802.11i, using AES-CCMP for privacy. The following
process occurs: process occurs:
o The WTP generates the 802.11 beacon frames, using information o The WTP generates the 802.11 beacon frames, using information
provided to it through the Add WLAN (see Section Section 11.8.1.1) provided to it through the Add WLAN (see Section 11.8.1.1) message
message element. element.
o The WTP processes the probe request and responds with a o The WTP processes the Probe Request and responds with a
corresponding probe response. corresponding Probe Response.
o The WTP forwards the 802.11 Authentication and Association frames o The WTP forwards the 802.11 Authentication and Association frames
to the AC, which is responsible for responding to the client. to the AC, which is responsible for responding to the client.
o Once the association is complete, the AC transmits an LWAPP Add o Once the association is complete, the AC transmits an LWAPP Add
Mobile request to the WTP (see section Section 11.7.1.1. In the Mobile Request to the WTP (see Section 11.7.1.1. In the above
above example, the WLAN is configured for 802.1X, and therefore example, the WLAN is configured for 802.1X, and therefore the
the '802.1X only' policy bit is enabled. '802.1X only' policy bit is enabled.
o The WTP forwards all 802.1X and 802.11i key exchange messages to o The WTP forwards all 802.1X and 802.11i key exchange messages to
the AC for processing. the AC for processing.
o The AC transmits another Add Mobile request to the WTP, stating o The AC transmits another Add Mobile Request to the WTP, stating
the security policy to enforce for the client (in this case AES- the security policy to enforce for the client (in this case, AES-
CCMP), as well as the encryption key to use. The Add Mobile CCMP), as well as the encryption key to use. The Add Mobile
request MAY include a VLAN name, which when present is used by the Request MAY include a VLAN name, which when present is used by the
WTP to identify the VLAN on which the user's data frames are to be WTP to identify the VLAN on which the user's data frames are to be
bridged. bridged.
o The WTP forwards any 802.11 Action frames received to the AC. o The WTP forwards any 802.11 Action frames received to the AC.
o The WTP locally bridges all client data frames, and provides the o The WTP locally bridges all client data frames, and provides the
necessary encryption and decryption services. necessary encryption and decryption services.
11.2. Roaming Behavior and 802.11 security 11.2. Roaming Behavior and 802.11 Security
It is important that LWAPP implementations react properly to mobile It is important that LWAPP implementations react properly to mobile
devices associating to the networks in how they generate Add Mobile devices associating to the networks in how they generate Add Mobile
and Delete Mobile messages. This section expands upon the examples and Delete Mobile messages. This section expands upon the examples
provided in the previous section, and describes how the LWAPP control provided in the previous section, and describes how the LWAPP control
protocol is used in order to provide secure roaming. protocol is used in order to provide secure roaming.
Once a client has successfully associated with the network in a Once a client has successfully associated with the network in a
secure fashion, it is likely to attempt to roam to another access secure fashion, it is likely to attempt to roam to another access
point. Figure 7 shows an example of a currently associated station point. Figure 7 shows an example of a currently associated station
moving from its "Old WTP" to a new WTP. The figure is useful for moving from its "Old WTP" to a new "WTP". The figure is useful for
multiple different security policies, including standard 802.1X and multiple different security policies, including standard 802.1X and
dynamic WEP keys, WPA or even WPA2 both with key caching (where the dynamic WEP keys, WPA or even WPA2 both with key caching (where the
802.1x exchange would be bypassed) and without. 802.1x exchange would be bypassed) and without.
Client Old WTP WTP AC Client Old WTP WTP AC
Association Request/Response Association Request/Response
<--------------------------------------( - )--------------> <--------------------------------------( - )-------------->
Add Mobile (Clear Text, 802.1X Only) Add Mobile (Clear Text, 802.1X Only)
<----------------> <---------------->
802.1X Authentication (if no key cache entry exists) 802.1X Authentication (if no key cache entry exists)
<--------------------------------------( - )--------------> <--------------------------------------( - )-------------->
802.11i 4-way Key Exchange 802.11i 4-way Key Exchange
<--------------------------------------( - )--------------> <--------------------------------------( - )-------------->
Delete Mobile Delete Mobile
<----------------------------------> <---------------------------------->
Add Mobile (AES-CCMP, PTK=x) Add Mobile (AES-CCMP, PTK=x)
<----------------> <---------------->
Figure 7: Client Roaming Example Figure 7: Client Roaming Example
11.3. Transport specific bindings 11.3. Transport-Specific Bindings
All LWAPP transports have the following IEEE 802.11 specific All LWAPP transports have the following IEEE 802.11 specific
bindings: bindings:
11.3.1. Status and WLANS field 11.3.1. Status and WLANS Field
The interpretation of this 16 bit field depends on the direction of The interpretation of this 16-bit field depends on the direction of
transmission of the packet. Refer to the figure in Section transmission of the packet. Refer to the figure in Section 3.1.
Section 3.1.
Status Status
When an LWAPP packet is transmitted from an WTP to an AC, this field When an LWAPP packet is transmitted from a WTP to an AC, this field
is called the status field and indicates radio resource information is called the Status field and indicates radio resource information
associated with the frame. When the message is an LWAPP control associated with the frame. When the message is an LWAPP control
message this field is transmitted as zero. message this field is transmitted as zero.
The status field is divided into the signal strength and signal to The Status field is divided into the signal strength and signal-to-
noise ratio with which an IEEE 802.11 frame was received, encoded in noise ratio with which an IEEE 802.11 frame was received, encoded in
the following manner: the following manner:
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RSSI | SNR | | RSSI | SNR |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
RSSI: RSSI is a signed, 8-bit value. It is the received signal RSSI: RSSI is a signed, 8-bit value. It is the received signal
strength indication, in dBm. strength indication, in dBm.
SNR: SNR is a signed, 8-bit value. It is the signal to noise ratio SNR: SNR is a signed, 8-bit value. It is the signal-to-noise ratio
of the received IEEE 802.11 frame, in dB. of the received IEEE 802.11 frame, in dB.
WLANs field: When an LWAPP data message is transmitted from an AC WLANs field: When an LWAPP data message is transmitted from an AC
to an WTP, this 16 bit field indicates on which WLANs the to a WTP, this 16-bit field indicates on which WLANs the
encapsulated IEEE 802.11 frame is to be transmitted. For unicast encapsulated IEEE 802.11 frame is to be transmitted. For unicast
packets, this field is not used by the WTP. For broadcast or packets, this field is not used by the WTP. For broadcast or
multicast packets, the WTP might require this information if it multicast packets, the WTP might require this information if it
provides encryption services. provides encryption services.
Given that a single broadcast or multicast packet might need to be Given that a single broadcast or multicast packet might need to be
sent to multiple wireless LANs (presumably each with a different sent to multiple wireless LANs (presumably each with a different
broadcast key), this field is defined as a bit field. A bit set broadcast key), this field is defined as a bit field. A bit set
indicates a WLAN ID (see Section Section 11.8.1.1) which will be indicates a WLAN ID (see Section 11.8.1.1), which will be sent the
sent the data. The WLANS field is encoded in the following data. The WLANS field is encoded in the following manner:
manner:
0 1 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WLAN ID(s) | | WLAN ID(s) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
11.4. BSSID to WLAN ID Mapping 11.4. BSSID to WLAN ID Mapping
The LWAPP protocol makes assumptions regarding the BSSIDs used on the The LWAPP protocol makes assumptions regarding the BSSIDs used on the
WTP. It is a requirement for the WTP to use a contiguous block of WTP. It is a requirement for the WTP to use a contiguous block of
BSSIDs. The WLAN Identifier field, which is managed by the AC, is BSSIDs. The WLAN Identifier field, which is managed by the AC, is
used as an offset into the BSSID list. used as an offset into the BSSID list.
For instance, if a WTP had a base BSSID address of 00:01:02:00:00:00, For instance, if a WTP had a base BSSID address of 00:01:02:00:00:00,
and the AC sent an Add WLAN message with a WLAN Identifier of 2 (see and the AC sent an Add WLAN message with a WLAN Identifier of 2 (see
Section Section 11.8.1.1), the BSSID for the specific WLAN on the WTP Section 11.8.1.1), the BSSID for the specific WLAN on the WTP would
would be 00:01:02:00:00:02. be 00:01:02:00:00:02.
The WTP communicates the maximum number of BSSIDs that it supports The WTP communicates the maximum number of BSSIDs that it supports
during the Config Request within the IEEE 802.11 WTP WLAN Radio during the Config Request within the IEEE 802.11 WTP WLAN Radio
Configuration message element (see Section 11.9.1). Configuration message element (see Section 11.9.1).
11.5. Quality of Service 11.5. Quality of Service
It is recommended that 802.11 MAC management be sent by both the AC It is recommended that 802.11 MAC management be sent by both the AC
and the WTP with appropriate Quality of Service values, ensuring that and the WTP with appropriate Quality-of-Service (QoS) values,
congestion in the network minimizes occurences of packet loss. ensuring that congestion in the network minimizes occurrences of
Therefore, a Quality of Service enabled LWAPP device should use: packet loss. Therefore, a QoS-enabled LWAPP device should use:
802.1P: The precedence value of 6 SHOULD be used for all 802.11 MAC 802.1P: The precedence value of 6 SHOULD be used for all 802.11 MAC
management messages, except for Probe Requests which SHOULD use 4. management messages, except for Probe Requests, which SHOULD use
4.
DSCP: The dscp tag value of 46 SHOULD be used for all 802.11 MAC DSCP: The DSCP tag value of 46 SHOULD be used for all 802.11 MAC
management messages, except for Probe Requests which SHOULD use management messages, except for Probe Requests, which SHOULD use
34. 34.
11.6. Data Message bindings 11.6. Data Message Bindings
There are no LWAPP Data Message bindings for IEEE 802.11. There are no LWAPP data message bindings for IEEE 802.11.
11.7. Control Message bindings 11.7. Control Message Bindings
The IEEE 802.11 binding has the following Control Message The IEEE 802.11 binding has the following control message
definitions. definitions.
11.7.1. Mobile Config Request 11.7.1. Mobile Config Request
This section contains the 802.11 specific message elements that are This section contains the 802.11-specific message elements that are
used with the Mobile Config Request. used with the Mobile Config Request.
11.7.1.1. Add Mobile 11.7.1.1. Add Mobile
The Add Mobile Request is used by the AC to inform an WTP that it The Add Mobile Request is used by the AC to inform a WTP that it
should forward traffic from a particular mobile station. The add should forward traffic from a particular mobile station. The Add
mobile request may also include security parameters that must be Mobile Request may also include security parameters that must be
enforced by the WTP for the particular mobile. enforced by the WTP for the particular mobile.
When the AC sends an Add Mobile Request, it includes any security When the AC sends an Add Mobile Request, it includes any security
parameters that may be required. An AC that wishes to update a parameters that may be required. An AC that wishes to update a
mobile's policy on an WTP may be done by simply sending a new Add mobile's policy on a WTP may do so by simply sending a new Add Mobile
Mobile message element. message element.
When an WTP receives an Add Mobile message element, it must first When a WTP receives an Add Mobile message element, it must first
override any existing state it may have for the mobile station in override any existing state it may have for the mobile station in
question. The latest Add Mobile overrides any previously received question. The latest Add Mobile overrides any previously received
messages. If the Add Mobile message element's EAP Only bit is set, messages. If the Add Mobile message element's EAP-Only bit is set,
the WTP MUST drop all 802.11 packets that do not contain EAP packets. the WTP MUST drop all 802.11 packets that do not contain EAP packets.
Note that when EAP Only is set, the Encryption Policy field MAY have Note that when EAP Only is set, the Encryption Policy field MAY have
additional values, and therefore it is possible to inform an WTP to additional values, and therefore it is possible to inform a WTP to
only accept encrypted EAP packets. Once the mobile station has only accept encrypted EAP packets. Once the mobile station has
successfully completed EAP authentication, the AC must send a new Add successfully completed EAP authentication, the AC must send a new Add
Mobile message element to push the session key down to the WTP as Mobile message element to push the session key down to the WTP as
well as to remove the EAP Only restriction. well as to remove the EAP Only restriction.
If the QoS field is set, the WTP MUST observe and provide policing of If the QoS field is set, the WTP MUST observe and provide policing of
the 802.11e priority tag to ensure that it does not exceed the value the 802.11e priority tag to ensure that it does not exceed the value
provided by the AC. provided by the AC.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID | Association ID | MAC Address | | Radio ID | Association ID | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Address |E|C| Encryption Policy | | MAC Address |E|C| Encryption Policy |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Encrypt Policy | Session Key... | |Encrypt Policy | Session Key... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Pairwise TSC... | | Pairwise TSC... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Pairwise RSC... | | Pairwise RSC... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Capabilities | WLAN ID | WME Mode | | Capabilities | WLAN ID | WME Mode |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 802.11e Mode | Qos | Supported Rates | | 802.11e Mode | Qos | Supported Rates |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Supported Rates | | Supported Rates |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VLAN Name... | VLAN Name...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 29 for Add Mobile Type: 29 for Add Mobile
Length: 36 Length: 36
Radio ID: An 8-bit value representing the radio Radio ID: An 8-bit value representing the radio.
Association ID: A 16-bit value specifying the 802.11 Association Association ID: A 16-bit value specifying the 802.11 Association
Identifier Identifier.
MAC Address: The mobile station's MAC Address MAC Address: The mobile station's MAC address.
E: The one bit field is set by the AC to inform the WTP that is E: The 1-bit field is set by the AC to inform the WTP that it MUST
MUST NOT accept any 802.11 data frames, other than 802.1X frames. NOT accept any 802.11 data frames, other than 802.1X frames. This
This is the equivalent of the WTP's 802.1X port for the mobile is the equivalent of the WTP's 802.1X port for the mobile station
station to be in the closed state. When set, the WTP MUST drop to be in the closed state. When set, the WTP MUST drop any
any non-802.1X packets it receives from the mobile station. non-802.1X packets it receives from the mobile station.
C: The one bit field is set by the AC to inform the WTP that C: The 1-bit field is set by the AC to inform the WTP that
encryption services will be provided by the AC. When set, the WTP encryption services will be provided by the AC. When set, the WTP
SHOULD police frames received from stations to ensure that they SHOULD police frames received from stations to ensure that they
comply to the stated encryption policy, but does not need to take comply to the stated encryption policy, but does not need to take
specific cryptographic action on the frame. Similarly, for specific cryptographic action on the frame. Similarly, for
transmitted frames, the WTP only needs to forward already transmitted frames, the WTP only needs to forward already
encrypted frames. encrypted frames.
Encryption Policy: The policy field informs the WTP how to handle Encryption Policy: The policy field informs the WTP how to handle
packets from/to the mobile station. The following values are packets from/to the mobile station. The following values are
supported: supported:
0 - Encrypt WEP 104: All packets to/from the mobile station must 0 - Encrypt WEP 104: All packets to/from the mobile station must
be encrypted using standard 104 bit WEP. be encrypted using a standard 104-bit WEP.
1 - Clear Text: All packets to/from the mobile station do not 1 - Clear Text: All packets to/from the mobile station do not
require any additional crypto processing by the WTP. require any additional crypto processing by the WTP.
2 - Encrypt WEP 40: All packets to/from the mobile station must 2 - Encrypt WEP 40: All packets to/from the mobile station must
be encrypted using standard 40 bit WEP. be encrypted using a standard 40-bit WEP.
3 - Encrypt WEP 128: All packets to/from the mobile station must