draft-ietf-capwap-protocol-specification-10.txt   draft-ietf-capwap-protocol-specification-11.txt 
Network Working Group P. Calhoun, Editor Network Working Group P. Calhoun, Editor
Internet-Draft Cisco Systems, Inc. Internet-Draft Cisco Systems, Inc.
Expires: September 14, 2008 M. Montemurro, Editor Intended status: Standards Track M. Montemurro, Editor
Research In Motion Expires: January 11, 2009 Research In Motion
D. Stanley, Editor D. Stanley, Editor
Aruba Networks Aruba Networks
March 13, 2008 July 10, 2008
CAPWAP Protocol Specification CAPWAP Protocol Specification
draft-ietf-capwap-protocol-specification-10 draft-ietf-capwap-protocol-specification-11
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 37 skipping to change at page 1, line 37
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on September 14, 2008. This Internet-Draft will expire on January 11, 2009.
Abstract Abstract
This specification defines the Control And Provisioning of Wireless This specification defines the Control And Provisioning of Wireless
Access Points (CAPWAP) Protocol. The CAPWAP protocol meets the IETF Access Points (CAPWAP) Protocol. The CAPWAP protocol meets the
CAPWAP working group protocol requirements. The CAPWAP protocol is Objectives for Control and Provisioning of Wireless Access Points
designed to be flexible, allowing it to be used for a variety of (CAPWAP). The CAPWAP protocol is designed to be flexible, allowing
wireless technologies. This document describes the base CAPWAP it to be used for a variety of wireless technologies. This document
protocol. The CAPWAP protocol binding which defines extensions for describes the base CAPWAP protocol, while separate binding extensions
use with the IEEE 802.11 wireless LAN protocol is available in will enable its use with additional wireless technologies.
[I-D.ietf-capwap-protocol-binding-ieee80211]. Extensions are
expected to be defined to enable use of the CAPWAP protocol with
additional wireless technologies.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 7 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1. Goals . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.1. Goals . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2. Conventions used in this document . . . . . . . . . . . . 9 1.2. Conventions used in this document . . . . . . . . . . . 9
1.3. Contributing Authors . . . . . . . . . . . . . . . . . . 9 1.3. Contributing Authors . . . . . . . . . . . . . . . . . . 9
1.4. Terminology . . . . . . . . . . . . . . . . . . . . . . . 10 1.4. Terminology . . . . . . . . . . . . . . . . . . . . . . 10
2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 12 2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 12
2.1. Wireless Binding Definition . . . . . . . . . . . . . . . 13 2.1. Wireless Binding Definition . . . . . . . . . . . . . . 13
2.2. CAPWAP Session Establishment Overview . . . . . . . . . . 14 2.2. CAPWAP Session Establishment Overview . . . . . . . . . 14
2.3. CAPWAP State Machine Definition . . . . . . . . . . . . . 16 2.3. CAPWAP State Machine Definition . . . . . . . . . . . . 16
2.3.1. CAPWAP Protocol State Transitions . . . . . . . . . . 18 2.3.1. CAPWAP Protocol State Transitions . . . . . . . . . . 18
2.3.2. CAPWAP/DTLS Interface . . . . . . . . . . . . . . . . 31 2.3.2. CAPWAP/DTLS Interface . . . . . . . . . . . . . . . . 31
2.4. Use of DTLS in the CAPWAP Protocol . . . . . . . . . . . 33 2.4. Use of DTLS in the CAPWAP Protocol . . . . . . . . . . . 33
2.4.1. DTLS Handshake Processing . . . . . . . . . . . . . . 33 2.4.1. DTLS Handshake Processing . . . . . . . . . . . . . . 34
2.4.2. DTLS Session Establishment . . . . . . . . . . . . . 34 2.4.2. DTLS Session Establishment . . . . . . . . . . . . . 35
2.4.3. DTLS Error Handling . . . . . . . . . . . . . . . . . 35 2.4.3. DTLS Error Handling . . . . . . . . . . . . . . . . . 35
2.4.4. DTLS EndPoint Authentication and Authorization . . . 36 2.4.4. DTLS EndPoint Authentication and Authorization . . . 37
3. CAPWAP Transport . . . . . . . . . . . . . . . . . . . . . . 40 3. CAPWAP Transport . . . . . . . . . . . . . . . . . . . . . . 41
3.1. UDP Transport . . . . . . . . . . . . . . . . . . . . . . 40 3.1. UDP Transport . . . . . . . . . . . . . . . . . . . . . 41
3.2. UDP-Lite Transport . . . . . . . . . . . . . . . . . . . 40 3.2. UDP-Lite Transport . . . . . . . . . . . . . . . . . . . 41
3.3. AC Discovery . . . . . . . . . . . . . . . . . . . . . . 41 3.3. AC Discovery . . . . . . . . . . . . . . . . . . . . . . 42
3.4. Fragmentation/Reassembly . . . . . . . . . . . . . . . . 42 3.4. Fragmentation/Reassembly . . . . . . . . . . . . . . . . 43
3.5. MTU Discovery . . . . . . . . . . . . . . . . . . . . . . 42 3.5. MTU Discovery . . . . . . . . . . . . . . . . . . . . . 43
4. CAPWAP Packet Formats . . . . . . . . . . . . . . . . . . . . 43 4. CAPWAP Packet Formats . . . . . . . . . . . . . . . . . . . . 44
4.1. CAPWAP Preamble . . . . . . . . . . . . . . . . . . . . . 45 4.1. CAPWAP Preamble . . . . . . . . . . . . . . . . . . . . 46
4.2. CAPWAP DTLS Header . . . . . . . . . . . . . . . . . . . 45 4.2. CAPWAP DTLS Header . . . . . . . . . . . . . . . . . . . 46
4.3. CAPWAP Header . . . . . . . . . . . . . . . . . . . . . . 46 4.3. CAPWAP Header . . . . . . . . . . . . . . . . . . . . . 47
4.4. CAPWAP Data Messages . . . . . . . . . . . . . . . . . . 49 4.4. CAPWAP Data Messages . . . . . . . . . . . . . . . . . . 50
4.4.1. CAPWAP Data Keepalive . . . . . . . . . . . . . . . . 49 4.4.1. CAPWAP Data Channel Keepalive . . . . . . . . . . . . 50
4.4.2. Data Payload . . . . . . . . . . . . . . . . . . . . 50 4.4.2. Data Payload . . . . . . . . . . . . . . . . . . . . 51
4.4.3. Establishment of a DTLS Data Channel . . . . . . . . 51 4.4.3. Establishment of a DTLS Data Channel . . . . . . . . 52
4.5. CAPWAP Control Messages . . . . . . . . . . . . . . . . . 51 4.5. CAPWAP Control Messages . . . . . . . . . . . . . . . . 52
4.5.1. Control Message Format . . . . . . . . . . . . . . . 52 4.5.1. Control Message Format . . . . . . . . . . . . . . . 53
4.5.2. Control Message Quality of Service . . . . . . . . . 55 4.5.2. Control Message Quality of Service . . . . . . . . . 56
4.5.3. Retransmissions . . . . . . . . . . . . . . . . . . . 55 4.5.3. Retransmissions . . . . . . . . . . . . . . . . . . . 56
4.6. CAPWAP Protocol Message Elements . . . . . . . . . . . . 56 4.6. CAPWAP Protocol Message Elements . . . . . . . . . . . . 57
4.6.1. AC Descriptor . . . . . . . . . . . . . . . . . . . . 58 4.6.1. AC Descriptor . . . . . . . . . . . . . . . . . . . . 59
4.6.2. AC IPv4 List . . . . . . . . . . . . . . . . . . . . 60 4.6.2. AC IPv4 List . . . . . . . . . . . . . . . . . . . . 61
4.6.3. AC IPv6 List . . . . . . . . . . . . . . . . . . . . 61 4.6.3. AC IPv6 List . . . . . . . . . . . . . . . . . . . . 62
4.6.4. AC Name . . . . . . . . . . . . . . . . . . . . . . . 61 4.6.4. AC Name . . . . . . . . . . . . . . . . . . . . . . . 62
4.6.5. AC Name with Index . . . . . . . . . . . . . . . . . 62 4.6.5. AC Name with Index . . . . . . . . . . . . . . . . . 63
4.6.6. AC Timestamp . . . . . . . . . . . . . . . . . . . . 62 4.6.6. AC Timestamp . . . . . . . . . . . . . . . . . . . . 63
4.6.7. Add MAC ACL Entry . . . . . . . . . . . . . . . . . . 63 4.6.7. Add MAC ACL Entry . . . . . . . . . . . . . . . . . . 64
4.6.8. Add Station . . . . . . . . . . . . . . . . . . . . . 63 4.6.8. Add Station . . . . . . . . . . . . . . . . . . . . . 64
4.6.9. Add Static MAC ACL Entry . . . . . . . . . . . . . . 64 4.6.9. Add Static MAC ACL Entry . . . . . . . . . . . . . . 65
4.6.10. CAPWAP Control IPv4 Address . . . . . . . . . . . . . 64 4.6.10. CAPWAP Control IPv4 Address . . . . . . . . . . . . . 65
4.6.11. CAPWAP Control IPv6 Address . . . . . . . . . . . . . 65 4.6.11. CAPWAP Control IPv6 Address . . . . . . . . . . . . . 66
4.6.12. CAPWAP Local IPv4 Address . . . . . . . . . . . . . . 66 4.6.12. CAPWAP Local IPv4 Address . . . . . . . . . . . . . . 67
4.6.13. CAPWAP Local IPv6 Address . . . . . . . . . . . . . . 66 4.6.13. CAPWAP Local IPv6 Address . . . . . . . . . . . . . . 67
4.6.14. CAPWAP Timers . . . . . . . . . . . . . . . . . . . . 67 4.6.14. CAPWAP Timers . . . . . . . . . . . . . . . . . . . . 68
4.6.15. CAPWAP Transport Protocol . . . . . . . . . . . . . . 67 4.6.15. CAPWAP Transport Protocol . . . . . . . . . . . . . . 68
4.6.16. Data Transfer Data . . . . . . . . . . . . . . . . . 68 4.6.16. Data Transfer Data . . . . . . . . . . . . . . . . . 69
4.6.17. Data Transfer Mode . . . . . . . . . . . . . . . . . 69 4.6.17. Data Transfer Mode . . . . . . . . . . . . . . . . . 70
4.6.18. Decryption Error Report . . . . . . . . . . . . . . . 69 4.6.18. Decryption Error Report . . . . . . . . . . . . . . . 71
4.6.19. Decryption Error Report Period . . . . . . . . . . . 70 4.6.19. Decryption Error Report Period . . . . . . . . . . . 71
4.6.20. Delete MAC ACL Entry . . . . . . . . . . . . . . . . 70 4.6.20. Delete MAC ACL Entry . . . . . . . . . . . . . . . . 72
4.6.21. Delete Station . . . . . . . . . . . . . . . . . . . 71 4.6.21. Delete Station . . . . . . . . . . . . . . . . . . . 72
4.6.22. Delete Static MAC ACL Entry . . . . . . . . . . . . . 71 4.6.22. Delete Static MAC ACL Entry . . . . . . . . . . . . . 73
4.6.23. Discovery Type . . . . . . . . . . . . . . . . . . . 72 4.6.23. Discovery Type . . . . . . . . . . . . . . . . . . . 74
4.6.24. Duplicate IPv4 Address . . . . . . . . . . . . . . . 73 4.6.24. Duplicate IPv4 Address . . . . . . . . . . . . . . . 74
4.6.25. Duplicate IPv6 Address . . . . . . . . . . . . . . . 73 4.6.25. Duplicate IPv6 Address . . . . . . . . . . . . . . . 75
4.6.26. Idle Timeout . . . . . . . . . . . . . . . . . . . . 74 4.6.26. Idle Timeout . . . . . . . . . . . . . . . . . . . . 76
4.6.27. Image Data . . . . . . . . . . . . . . . . . . . . . 75 4.6.27. Image Data . . . . . . . . . . . . . . . . . . . . . 76
4.6.28. Image Identifier . . . . . . . . . . . . . . . . . . 75 4.6.28. Image Identifier . . . . . . . . . . . . . . . . . . 77
4.6.29. Image Information . . . . . . . . . . . . . . . . . . 76 4.6.29. Image Information . . . . . . . . . . . . . . . . . . 77
4.6.30. Initiate Download . . . . . . . . . . . . . . . . . . 77 4.6.30. Initiate Download . . . . . . . . . . . . . . . . . . 78
4.6.31. Location Data . . . . . . . . . . . . . . . . . . . . 77 4.6.31. Location Data . . . . . . . . . . . . . . . . . . . . 79
4.6.32. Maximum Message Length . . . . . . . . . . . . . . . 77 4.6.32. Maximum Message Length . . . . . . . . . . . . . . . 79
4.6.33. Radio Administrative State . . . . . . . . . . . . . 78 4.6.33. Radio Administrative State . . . . . . . . . . . . . 80
4.6.34. Radio Operational State . . . . . . . . . . . . . . . 78 4.6.34. Radio Operational State . . . . . . . . . . . . . . . 80
4.6.35. Result Code . . . . . . . . . . . . . . . . . . . . . 79 4.6.35. Result Code . . . . . . . . . . . . . . . . . . . . . 81
4.6.36. Returned Message Element . . . . . . . . . . . . . . 81 4.6.36. Returned Message Element . . . . . . . . . . . . . . 83
4.6.37. Session ID . . . . . . . . . . . . . . . . . . . . . 81 4.6.37. Session ID . . . . . . . . . . . . . . . . . . . . . 84
4.6.38. Statistics Timer . . . . . . . . . . . . . . . . . . 82 4.6.38. Statistics Timer . . . . . . . . . . . . . . . . . . 84
4.6.39. Vendor Specific Payload . . . . . . . . . . . . . . . 82 4.6.39. Vendor Specific Payload . . . . . . . . . . . . . . . 84
4.6.40. WTP Board Data . . . . . . . . . . . . . . . . . . . 83 4.6.40. WTP Board Data . . . . . . . . . . . . . . . . . . . 85
4.6.41. WTP Descriptor . . . . . . . . . . . . . . . . . . . 84 4.6.41. WTP Descriptor . . . . . . . . . . . . . . . . . . . 86
4.6.42. WTP Fallback . . . . . . . . . . . . . . . . . . . . 85 4.6.42. WTP Fallback . . . . . . . . . . . . . . . . . . . . 88
4.6.43. WTP Frame Tunnel Mode . . . . . . . . . . . . . . . . 86 4.6.43. WTP Frame Tunnel Mode . . . . . . . . . . . . . . . . 89
4.6.44. WTP IPv4 IP Address . . . . . . . . . . . . . . . . . 87 4.6.44. WTP IPv4 IP Address . . . . . . . . . . . . . . . . . 89
4.6.45. WTP IPv6 IP Address . . . . . . . . . . . . . . . . . 87 4.6.45. WTP IPv6 IP Address . . . . . . . . . . . . . . . . . 90
4.6.46. WTP MAC Type . . . . . . . . . . . . . . . . . . . . 88 4.6.46. WTP MAC Type . . . . . . . . . . . . . . . . . . . . 90
4.6.47. WTP Name . . . . . . . . . . . . . . . . . . . . . . 89 4.6.47. WTP Name . . . . . . . . . . . . . . . . . . . . . . 91
4.6.48. WTP Operational Statistics . . . . . . . . . . . . . 89 4.6.48. WTP Radio Statistics . . . . . . . . . . . . . . . . 91
4.6.49. WTP Radio Statistics . . . . . . . . . . . . . . . . 90 4.6.49. WTP Reboot Statistics . . . . . . . . . . . . . . . . 93
4.6.50. WTP Reboot Statistics . . . . . . . . . . . . . . . . 91 4.6.50. WTP Static IP Address Information . . . . . . . . . . 94
4.6.51. WTP Static IP Address Information . . . . . . . . . . 92 4.7. CAPWAP Protocol Timers . . . . . . . . . . . . . . . . . 95
4.7. CAPWAP Protocol Timers . . . . . . . . . . . . . . . . . 93 4.7.1. ChangeStatePendingTimer . . . . . . . . . . . . . . . 95
4.7.1. ChangeStatePendingTimer . . . . . . . . . . . . . . . 93 4.7.2. DataChannelKeepAlive . . . . . . . . . . . . . . . . 95
4.7.2. DataChannelKeepAlive . . . . . . . . . . . . . . . . 93 4.7.3. DataChannelDeadInterval . . . . . . . . . . . . . . . 96
4.7.3. DataChannelDeadInterval . . . . . . . . . . . . . . . 94 4.7.4. DataCheckTimer . . . . . . . . . . . . . . . . . . . 96
4.7.4. DataCheckTimer . . . . . . . . . . . . . . . . . . . 94 4.7.5. DiscoveryInterval . . . . . . . . . . . . . . . . . . 96
4.7.5. DiscoveryInterval . . . . . . . . . . . . . . . . . . 94 4.7.6. DTLSSessionDelete . . . . . . . . . . . . . . . . . . 96
4.7.6. DTLSSessionDelete . . . . . . . . . . . . . . . . . . 94 4.7.7. EchoInterval . . . . . . . . . . . . . . . . . . . . 96
4.7.7. EchoInterval . . . . . . . . . . . . . . . . . . . . 94 4.7.8. IdleTimeout . . . . . . . . . . . . . . . . . . . . . 96
4.7.8. ImageDataStartTimer . . . . . . . . . . . . . . . . . 94 4.7.9. ImageDataStartTimer . . . . . . . . . . . . . . . . . 97
4.7.9. MaxDiscoveryInterval . . . . . . . . . . . . . . . . 95 4.7.10. MaxDiscoveryInterval . . . . . . . . . . . . . . . . 97
4.7.10. MaxFailedDTLSSessionRetry . . . . . . . . . . . . . . 95 4.7.11. ReportInterval . . . . . . . . . . . . . . . . . . . 97
4.7.11. ResponseTimeout . . . . . . . . . . . . . . . . . . . 95 4.7.12. RetransmitInterval . . . . . . . . . . . . . . . . . 97
4.7.12. RetransmitInterval . . . . . . . . . . . . . . . . . 95 4.7.13. SilentInterval . . . . . . . . . . . . . . . . . . . 97
4.7.13. SilentInterval . . . . . . . . . . . . . . . . . . . 95 4.7.14. StatisticsTimer . . . . . . . . . . . . . . . . . . . 97
4.7.14. StatisticsTimer . . . . . . . . . . . . . . . . . . . 95 4.7.15. WaitDTLS . . . . . . . . . . . . . . . . . . . . . . 98
4.7.15. WaitDTLS . . . . . . . . . . . . . . . . . . . . . . 95 4.8. CAPWAP Protocol Variables . . . . . . . . . . . . . . . 98
4.7.16. WaitJoin . . . . . . . . . . . . . . . . . . . . . . 96 4.8.1. AdminState . . . . . . . . . . . . . . . . . . . . . 98
4.8. CAPWAP Protocol Variables . . . . . . . . . . . . . . . . 96 4.8.2. DiscoveryCount . . . . . . . . . . . . . . . . . . . 98
4.8.1. AdminState . . . . . . . . . . . . . . . . . . . . . 96 4.8.3. FailedDTLSAuthFailCount . . . . . . . . . . . . . . . 98
4.8.2. DiscoveryCount . . . . . . . . . . . . . . . . . . . 96 4.8.4. FailedDTLSSessionCount . . . . . . . . . . . . . . . 98
4.8.3. FailedDTLSAuthFailCount . . . . . . . . . . . . . . . 96 4.8.5. MaxDiscoveries . . . . . . . . . . . . . . . . . . . 98
4.8.4. FailedDTLSSessionCount . . . . . . . . . . . . . . . 96 4.8.6. MaxFailedDTLSSessionRetry . . . . . . . . . . . . . . 98
4.8.5. IdleTimeout . . . . . . . . . . . . . . . . . . . . . 96 4.8.7. MaxRetransmit . . . . . . . . . . . . . . . . . . . . 99
4.8.6. MaxDiscoveries . . . . . . . . . . . . . . . . . . . 96 4.8.8. RetransmitCount . . . . . . . . . . . . . . . . . . . 99
4.8.7. MaxRetransmit . . . . . . . . . . . . . . . . . . . . 97 4.8.9. WTPFallBack . . . . . . . . . . . . . . . . . . . . . 99
4.8.8. ReportInterval . . . . . . . . . . . . . . . . . . . 97 4.9. WTP Saved Variables . . . . . . . . . . . . . . . . . . 99
4.8.9. RetransmitCount . . . . . . . . . . . . . . . . . . . 97 4.9.1. AdminRebootCount . . . . . . . . . . . . . . . . . . 99
4.8.10. WTPFallBack . . . . . . . . . . . . . . . . . . . . . 97 4.9.2. FrameEncapType . . . . . . . . . . . . . . . . . . . 99
4.9. WTP Saved Variables . . . . . . . . . . . . . . . . . . . 97 4.9.3. LastRebootReason . . . . . . . . . . . . . . . . . . 99
4.9.1. AdminRebootCount . . . . . . . . . . . . . . . . . . 97 4.9.4. MacType . . . . . . . . . . . . . . . . . . . . . . . 99
4.9.2. FrameEncapType . . . . . . . . . . . . . . . . . . . 97 4.9.5. PreferredACs . . . . . . . . . . . . . . . . . . . . 99
4.9.3. LastRebootReason . . . . . . . . . . . . . . . . . . 97 4.9.6. RebootCount . . . . . . . . . . . . . . . . . . . . . 100
4.9.4. MacType . . . . . . . . . . . . . . . . . . . . . . . 97 4.9.7. Static ACL Table . . . . . . . . . . . . . . . . . . 100
4.9.5. PreferredACs . . . . . . . . . . . . . . . . . . . . 98 4.9.8. Static IP Address . . . . . . . . . . . . . . . . . . 100
4.9.6. RebootCount . . . . . . . . . . . . . . . . . . . . . 98 4.9.9. WTPLinkFailureCount . . . . . . . . . . . . . . . . . 100
4.9.7. Static ACL Table . . . . . . . . . . . . . . . . . . 98 4.9.10. WTPLocation . . . . . . . . . . . . . . . . . . . . . 100
4.9.8. Static IP Address . . . . . . . . . . . . . . . . . . 98 4.9.11. WTPName . . . . . . . . . . . . . . . . . . . . . . . 100
4.9.9. WTPLinkFailureCount . . . . . . . . . . . . . . . . . 98 5. CAPWAP Discovery Operations . . . . . . . . . . . . . . . . . 101
4.9.10. WTPLocation . . . . . . . . . . . . . . . . . . . . . 98 5.1. Discovery Request Message . . . . . . . . . . . . . . . 101
4.9.11. WTPName . . . . . . . . . . . . . . . . . . . . . . . 98 5.2. Discovery Response Message . . . . . . . . . . . . . . . 102
5. CAPWAP Discovery Operations . . . . . . . . . . . . . . . . . 99 5.3. Primary Discovery Request Message . . . . . . . . . . . 103
5.1. Discovery Request Message . . . . . . . . . . . . . . . . 99 5.4. Primary Discovery Response . . . . . . . . . . . . . . . 104
5.2. Discovery Response Message . . . . . . . . . . . . . . . 100 6. CAPWAP Join Operations . . . . . . . . . . . . . . . . . . . 106
5.3. Primary Discovery Request Message . . . . . . . . . . . . 101 6.1. Join Request . . . . . . . . . . . . . . . . . . . . . . 106
5.4. Primary Discovery Response . . . . . . . . . . . . . . . 102 6.2. Join Response . . . . . . . . . . . . . . . . . . . . . 107
6. CAPWAP Join Operations . . . . . . . . . . . . . . . . . . . 104 7. Control Channel Management . . . . . . . . . . . . . . . . . 110
6.1. Join Request . . . . . . . . . . . . . . . . . . . . . . 104 7.1. Echo Request . . . . . . . . . . . . . . . . . . . . . . 110
6.2. Join Response . . . . . . . . . . . . . . . . . . . . . . 105 7.2. Echo Response . . . . . . . . . . . . . . . . . . . . . 110
7. Control Channel Management . . . . . . . . . . . . . . . . . 108 8. WTP Configuration Management . . . . . . . . . . . . . . . . 112
7.1. Echo Request . . . . . . . . . . . . . . . . . . . . . . 108 8.1. Configuration Consistency . . . . . . . . . . . . . . . 112
7.2. Echo Response . . . . . . . . . . . . . . . . . . . . . . 108 8.1.1. Configuration Flexibility . . . . . . . . . . . . . . 113
8. WTP Configuration Management . . . . . . . . . . . . . . . . 110 8.2. Configuration Status . . . . . . . . . . . . . . . . . . 113
8.1. Configuration Consistency . . . . . . . . . . . . . . . . 110 8.3. Configuration Status Response . . . . . . . . . . . . . 114
8.1.1. Configuration Flexibility . . . . . . . . . . . . . . 111 8.4. Configuration Update Request . . . . . . . . . . . . . . 115
8.2. Configuration Status . . . . . . . . . . . . . . . . . . 111 8.5. Configuration Update Response . . . . . . . . . . . . . 116
8.3. Configuration Status Response . . . . . . . . . . . . . . 112 8.6. Change State Event Request . . . . . . . . . . . . . . . 116
8.4. Configuration Update Request . . . . . . . . . . . . . . 113 8.7. Change State Event Response . . . . . . . . . . . . . . 118
8.5. Configuration Update Response . . . . . . . . . . . . . . 114 8.8. Clear Configuration Request . . . . . . . . . . . . . . 118
8.6. Change State Event Request . . . . . . . . . . . . . . . 114 8.9. Clear Configuration Response . . . . . . . . . . . . . . 118
8.7. Change State Event Response . . . . . . . . . . . . . . . 116 9. Device Management Operations . . . . . . . . . . . . . . . . 120
8.8. Clear Configuration Request . . . . . . . . . . . . . . . 116 9.1. Firmware Management . . . . . . . . . . . . . . . . . . 120
8.9. Clear Configuration Response . . . . . . . . . . . . . . 116 9.1.1. Image Data Request . . . . . . . . . . . . . . . . . 124
9. Device Management Operations . . . . . . . . . . . . . . . . 118 9.1.2. Image Data Response . . . . . . . . . . . . . . . . . 125
9.1. Firmware Management . . . . . . . . . . . . . . . . . . . 118 9.2. Reset Request . . . . . . . . . . . . . . . . . . . . . 126
9.1.1. Image Data Request . . . . . . . . . . . . . . . . . 121 9.3. Reset Response . . . . . . . . . . . . . . . . . . . . . 127
9.1.2. Image Data Response . . . . . . . . . . . . . . . . . 122 9.4. WTP Event Request . . . . . . . . . . . . . . . . . . . 127
9.2. Reset Request . . . . . . . . . . . . . . . . . . . . . . 123 9.5. WTP Event Response . . . . . . . . . . . . . . . . . . . 128
9.3. Reset Response . . . . . . . . . . . . . . . . . . . . . 123 9.6. Data Transfer . . . . . . . . . . . . . . . . . . . . . 128
9.4. WTP Event Request . . . . . . . . . . . . . . . . . . . . 124 9.6.1. Data Transfer Request . . . . . . . . . . . . . . . . 129
9.5. WTP Event Response . . . . . . . . . . . . . . . . . . . 125 9.6.2. Data Transfer Response . . . . . . . . . . . . . . . 130
9.6. Data Transfer Request . . . . . . . . . . . . . . . . . . 125 10. Station Session Management . . . . . . . . . . . . . . . . . 132
9.7. Data Transfer Response . . . . . . . . . . . . . . . . . 126 10.1. Station Configuration Request . . . . . . . . . . . . . 132
10. Station Session Management . . . . . . . . . . . . . . . . . 127 10.2. Station Configuration Response . . . . . . . . . . . . . 132
10.1. Station Configuration Request . . . . . . . . . . . . . . 127 11. NAT Considerations . . . . . . . . . . . . . . . . . . . . . 134
10.2. Station Configuration Response . . . . . . . . . . . . . 127 12. Security Considerations . . . . . . . . . . . . . . . . . . . 136
11. NAT Considerations . . . . . . . . . . . . . . . . . . . . . 129 12.1. CAPWAP Security . . . . . . . . . . . . . . . . . . . . 136
12. Security Considerations . . . . . . . . . . . . . . . . . . . 131 12.1.1. Converting Protected Data into Unprotected Data . . . 137
12.1. CAPWAP Security . . . . . . . . . . . . . . . . . . . . . 131
12.1.1. Converting Protected Data into Unprotected Data . . . 132
12.1.2. Converting Unprotected Data into Protected Data 12.1.2. Converting Unprotected Data into Protected Data
(Insertion) . . . . . . . . . . . . . . . . . . . . . 132 (Insertion) . . . . . . . . . . . . . . . . . . . . . 137
12.1.3. Deletion of Protected Records . . . . . . . . . . . . 132 12.1.3. Deletion of Protected Records . . . . . . . . . . . . 137
12.1.4. Insertion of Unprotected Records . . . . . . . . . . 132 12.1.4. Insertion of Unprotected Records . . . . . . . . . . 137
12.2. Session ID Security . . . . . . . . . . . . . . . . . . . 132 12.2. Session ID Security . . . . . . . . . . . . . . . . . . 137
12.3. Discovery or DTLS Setup Attacks . . . . . . . . . . . . . 133 12.3. Discovery or DTLS Setup Attacks . . . . . . . . . . . . 138
12.4. Interference with a DTLS Session . . . . . . . . . . . . 134 12.4. Interference with a DTLS Session . . . . . . . . . . . . 139
12.5. CAPWAP Pre-Provisioning . . . . . . . . . . . . . . . . . 134 12.5. CAPWAP Pre-Provisioning . . . . . . . . . . . . . . . . 139
12.6. Use of Preshared Keys in CAPWAP . . . . . . . . . . . . . 135 12.6. Use of Preshared Keys in CAPWAP . . . . . . . . . . . . 140
12.7. Use of Certificates in CAPWAP . . . . . . . . . . . . . . 136 12.7. Use of Certificates in CAPWAP . . . . . . . . . . . . . 141
12.8. AAA Security . . . . . . . . . . . . . . . . . . . . . . 137 12.8. AAA Security . . . . . . . . . . . . . . . . . . . . . . 142
13. Management Considerations . . . . . . . . . . . . . . . . . . 138 13. Operational Considerations . . . . . . . . . . . . . . . . . 143
14. Transport Considerations . . . . . . . . . . . . . . . . . . 139 14. Transport Considerations . . . . . . . . . . . . . . . . . . 144
15. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 140 15. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 145
15.1. CAPWAP Message Types . . . . . . . . . . . . . . . . . . 140 15.1. CAPWAP Message Types . . . . . . . . . . . . . . . . . . 145
15.2. Wireless Binding Identifiers . . . . . . . . . . . . . . 140 15.2. CAPWAP Header Flags . . . . . . . . . . . . . . . . . . 145
16. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 141 15.3. CAPWAP Control Message Flags . . . . . . . . . . . . . . 145
17. References . . . . . . . . . . . . . . . . . . . . . . . . . 142 15.4. CAPWAP Control Message Type . . . . . . . . . . . . . . 145
17.1. Normative References . . . . . . . . . . . . . . . . . . 142 15.5. Wireless Binding Identifiers . . . . . . . . . . . . . . 145
17.2. Informational References . . . . . . . . . . . . . . . . 143 15.6. AC Security Types . . . . . . . . . . . . . . . . . . . 146
Editors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 144 15.7. AC DTLS Policy . . . . . . . . . . . . . . . . . . . . . 146
Intellectual Property and Copyright Statements . . . . . . . . . 145 15.8. AC Information Type . . . . . . . . . . . . . . . . . . 146
15.9. CAPWAP Transport Protocol Types . . . . . . . . . . . . 146
15.10. Data Transfer Type . . . . . . . . . . . . . . . . . . . 146
15.11. Data Transfer Mode . . . . . . . . . . . . . . . . . . . 146
15.12. Discovery Types . . . . . . . . . . . . . . . . . . . . 147
15.13. Radio Admin State . . . . . . . . . . . . . . . . . . . 147
15.14. Radio Operational State . . . . . . . . . . . . . . . . 147
15.15. Radio Failure Causes . . . . . . . . . . . . . . . . . . 147
15.16. Result Code . . . . . . . . . . . . . . . . . . . . . . 147
15.17. Returned Message Element Reason . . . . . . . . . . . . 147
15.18. WTP Board Data Type . . . . . . . . . . . . . . . . . . 148
15.19. WTP Descriptor Type . . . . . . . . . . . . . . . . . . 148
15.20. WTP Fallback Mode . . . . . . . . . . . . . . . . . . . 148
15.21. WTP Frame Tunnel Mode . . . . . . . . . . . . . . . . . 148
15.22. WTP MAC Type . . . . . . . . . . . . . . . . . . . . . . 148
15.23. WTP Radio Stats Failure Type . . . . . . . . . . . . . . 148
15.24. WTP Reboot Stats Failure Type . . . . . . . . . . . . . 149
16. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 150
17. References . . . . . . . . . . . . . . . . . . . . . . . . . 151
17.1. Normative References . . . . . . . . . . . . . . . . . . 151
17.2. Informational References . . . . . . . . . . . . . . . . 152
Editors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 154
Intellectual Property and Copyright Statements . . . . . . . . . 155
1. Introduction 1. Introduction
This document describes the CAPWAP Protocol, a standard, This document describes the CAPWAP Protocol, a standard,
interoperable protocol which enables an Access Controller (AC) to interoperable protocol which enables an Access Controller (AC) to
manage a collection of Wireless Termination Points (WTPs). The manage a collection of Wireless Termination Points (WTPs). The
CAPWAP protocol is defined to be independent of layer 2 technology. CAPWAP protocol is defined to be independent of layer 2 technology,
and meets the Objectives for Control and Provisioning of Wireless
Access Points (CAPWAP) [RFC4564].
The emergence of centralized IEEE 802.11 Wireless Local Area Network The emergence of centralized IEEE 802.11 Wireless Local Area Network
(WLAN) architectures, in which simple IEEE 802.11 WTPs are managed by (WLAN) architectures, in which simple IEEE 802.11 WTPs are managed by
an Access Controller (AC) suggested that a standards based, an Access Controller (AC) suggested that a standards based,
interoperable protocol could radically simplify the deployment and interoperable protocol could radically simplify the deployment and
management of wireless networks. WTPs require a set of dynamic management of wireless networks. WTPs require a set of dynamic
management and control functions related to their primary task of management and control functions related to their primary task of
connecting the wireless and wired mediums. Traditional protocols for connecting the wireless and wired mediums. Traditional protocols for
managing WTPs are either manual static configuration via HTTP, managing WTPs are either manual static configuration via HTTP,
proprietary Layer 2 specific or non-existent (if the WTPs are self- proprietary Layer 2 specific or non-existent (if the WTPs are self-
skipping to change at page 8, line 41 skipping to change at page 8, line 43
Centralization of these functions will enable reduced cost and Centralization of these functions will enable reduced cost and
higher efficiency by applying the capabilities of network higher efficiency by applying the capabilities of network
processing silicon to the wireless network, as in wired LANs. processing silicon to the wireless network, as in wired LANs.
2. To enable shifting of the higher level protocol processing from 2. To enable shifting of the higher level protocol processing from
the WTP. This leaves the time critical applications of wireless the WTP. This leaves the time critical applications of wireless
control and access in the WTP, making efficient use of the control and access in the WTP, making efficient use of the
computing power available in WTPs which are the subject to severe computing power available in WTPs which are the subject to severe
cost pressure. cost pressure.
3. To provide a generic encapsulation and transport mechanism, 3. To provide an extensible protocol that is not bound to a specific
enabling the CAPWAP protocol to be applied to many access point wireless technology. Extensibility is provided via a generic
types in the future, via a specific wireless binding. encapsulation and transport mechanism, enabling the CAPWAP
protocol to be applied to many access point types in the future,
via a specific wireless binding.
The CAPWAP protocol concerns itself solely with the interface between The CAPWAP protocol concerns itself solely with the interface between
the WTP and the AC. Inter-AC and station-to AC-communication are the WTP and the AC. Inter-AC and station-to AC-communication are
strictly outside the scope of this document. strictly outside the scope of this document.
1.2. Conventions used in this document 1.2. 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 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
1.3. Contributing Authors 1.3. Contributing Authors
This section lists and acknowledges the authors of significant text This section lists and acknowledges the authors of significant text
and concepts included in this specification. and concepts included in this specification.
The CAPWAP Working Group selected the Lightweight Access Point The CAPWAP Working Group selected the Lightweight Access Point
Protocol (LWAPP) [add reference, when available] to be used as the Protocol (LWAPP) [I-D.ohara-capwap-lwapp] to be used as the basis of
basis of the CAPWAP protocol specification. The following people are the CAPWAP protocol specification. The following people are authors
authors of the LWAPP document: of the LWAPP document:
Bob O'Hara, Cisco Systems, Inc. Bob O'Hara
170 West Tasman Drive, San Jose, CA 95134 Email: bob.ohara@computer.org
Phone: +1 408-853-5513, Email: bob.ohara@cisco.com
Pat Calhoun, Cisco Systems, Inc. Pat Calhoun, Cisco Systems, Inc.
170 West Tasman Drive, San Jose, CA 95134 170 West Tasman Drive, San Jose, CA 95134
Phone: +1 408-853-5269, Email: pcalhoun@cisco.com Phone: +1 408-902-3240, Email: pcalhoun@cisco.com
Rohit Suri, Cisco Systems, Inc. Rohit Suri, Cisco Systems, Inc.
170 West Tasman Drive, San Jose, CA 95134 170 West Tasman Drive, San Jose, CA 95134
Phone: +1 408-853-5548, Email: rsuri@cisco.com Phone: +1 408-853-5548, Email: rsuri@cisco.com
Nancy Cam Winget, Cisco Systems, Inc. Nancy Cam Winget, Cisco Systems, Inc.
170 West Tasman Drive, San Jose, CA 95134 170 West Tasman Drive, San Jose, CA 95134
Phone: +1 408-853-0532, Email: ncamwing@cisco.com Phone: +1 408-853-0532, Email: ncamwing@cisco.com
Scott Kelly, Aruba Networks Scott Kelly, Aruba Networks
1322 Crossman Ave, Sunnyvale, CA 94089 1322 Crossman Ave, Sunnyvale, CA 94089
Phone: +1 408-754-8408, Email: skelly@arubanetworks.com Phone: +1 408-754-8408, Email: skelly@arubanetworks.com
Michael Glenn Williams, Nokia, Inc. Michael Glenn Williams, Nokia, Inc.
313 Fairchild Drive, Mountain View, CA 94043 313 Fairchild Drive, Mountain View, CA 94043
Phone: +1 650-714-7758, Email: Michael.G.Williams@Nokia.com Phone: +1 650-714-7758, Email: Michael.G.Williams@Nokia.com
Sue Hares, Nexthop Technologies, Inc. Sue Hares, Green Hills Software
825 Victors Way, Suite 100, Ann Arbor, MI 48108 825 Victors Way, Suite 100, Ann Arbor, MI 48108
Phone: +1 734 222 1610, Email: shares@nexthop.com Phone: +1 734 222 1610, Email: shares@ndzh.com
DTLS is used as the security solution for the CAPWAP protocol. The Datagram Transport Layer Security (DTLS) [RFC4346] is used as the
following people are authors of significant DTLS-related text security solution for the CAPWAP protocol. The following people are
included in this document: authors of significant DTLS-related text included in this document:
Scott Kelly, Aruba Networks Scott Kelly, Aruba Networks
1322 Crossman Ave, Sunnyvale, CA 94089 1322 Crossman Ave, Sunnyvale, CA 94089
Phone: +1 408-754-8408, Email: skelly@arubanetworks.com Phone: +1 408-754-8408, Email: skelly@arubanetworks.com
Eric Rescorla, Network Resonance Eric Rescorla, Network Resonance
2483 El Camino Real, #212,Palo Alto CA, 94303 2483 El Camino Real, #212,Palo Alto CA, 94303
Email: ekr@networkresonance.com Email: ekr@networkresonance.com
The concept of using DTLS to secure the CAPWAP protocol was part of The concept of using DTLS to secure the CAPWAP protocol was part of
the Secure Light Access Point Protocol (SLAPP) proposal [add the Secure Light Access Point Protocol (SLAPP) proposal
reference when available]. The following people are authors of the [I-D.narasimhan-ietf-slapp]. The following people are authors of the
SLAPP proposal: SLAPP proposal:
Partha Narasimhan, Aruba Networks Partha Narasimhan, Aruba Networks
1322 Crossman Ave, Sunnyvale, CA 94089 1322 Crossman Ave, Sunnyvale, CA 94089
Phone: +1 408-480-4716, Email: partha@arubanetworks.com Phone: +1 408-480-4716, Email: partha@arubanetworks.com
Dan Harkins, Tropos Networks Dan Harkins, Tropos Networks
555 Del Rey Avenue, Sunnyvale, CA, 95085 555 Del Rey Avenue, Sunnyvale, CA, 95085
Phone: +1 408 470 7372, Email: dharkins@tropos.com Phone: +1 408 470 7372, Email: dharkins@tropos.com
skipping to change at page 12, line 29 skipping to change at page 12, line 29
an AC. The CAPWAP Data and Control packets are sent over separate an AC. The CAPWAP Data and Control packets are sent over separate
UDP ports. Since both data and control packets can exceed the UDP ports. Since both data and control packets can exceed the
Maximum Transmission Unit (MTU) length, the payload of a CAPWAP data Maximum Transmission Unit (MTU) length, the payload of a CAPWAP data
or control message can be fragmented. The fragmentation behavior is or control message can be fragmented. The fragmentation behavior is
defined in Section 3. defined in Section 3.
The CAPWAP Protocol begins with a discovery phase. The WTPs send a The CAPWAP Protocol begins with a discovery phase. The WTPs send a
Discovery Request message, causing any Access Controller (AC) Discovery Request message, causing any Access Controller (AC)
receiving the message to respond with a Discovery Response message. receiving the message to respond with a Discovery Response message.
From the Discovery Response messages received, a WTP selects an AC From the Discovery Response messages received, a WTP selects an AC
with which to establish a secure DTLS session. CAPWAP protocol with which to establish a secure DTLS session. In order to establish
the secure DTLS connection, the WTP will need some amount of pre-
provisioning, which is specified in Section 12.5. CAPWAP protocol
messages will be fragmented to the maximum length discovered to be messages will be fragmented to the maximum length discovered to be
supported by the network. supported by the network.
Once the WTP and the AC have completed DTLS session establishment, a Once the WTP and the AC have completed DTLS session establishment, a
configuration exchange occurs in which both devices agree on version configuration exchange occurs in which both devices agree on version
information. During this exchange the WTP may receive provisioning information. During this exchange the WTP may receive provisioning
settings. The WTP is then enabled for operation. settings. The WTP is then 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 CAPWAP protocol is used to encapsulate and the WTP is enabled, the CAPWAP protocol is used to encapsulate
skipping to change at page 13, line 15 skipping to change at page 13, line 16
The CAPWAP protocol provides a mechanism for the AC to obtain The CAPWAP protocol provides a mechanism for the AC to obtain
statistical information collected by the WTP. statistical information collected by the WTP.
The CAPWAP protocol provides for a keep alive feature that preserves The CAPWAP protocol provides for a keep alive feature that preserves
the communication channel between the WTP and AC. If the AC fails to the communication channel between the WTP and AC. If the AC fails to
appear alive, the WTP will try to discover a new AC. appear alive, the WTP will try to discover a new AC.
2.1. Wireless Binding Definition 2.1. Wireless Binding Definition
The CAPWAP protocol is independent of a specific WTP radio The CAPWAP protocol is independent of a specific WTP radio
technology. Elements of the CAPWAP protocol are designed to technology, as well its associated wireless link layer protocol.
accommodate the specific needs of each wireless technology in a Elements of the CAPWAP protocol are designed to accommodate the
standard way. Implementation of the CAPWAP protocol for a particular specific needs of each wireless technology in a standard way.
wireless technology MUST follow the binding requirements defined for Implementation of the CAPWAP protocol for a particular wireless
that technology. technology MUST follow the binding requirements defined for that
technology.
When defining a binding for wireless technologies, the authors MUST When defining a binding for wireless 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: a minimum, a binding MUST provide:
1. The definition for a binding-specific Statistics message element, 1. The definition for a binding-specific Statistics message element,
carried in the WTP Event Request message carried in the WTP Event Request message
2. A message element carried in the Station Configuration Request 2. A message element carried in the Station Configuration Request
skipping to change at page 14, line 9 skipping to change at page 14, line 12
protocol specification, or any published CAPWAP binding protocol specification, or any published CAPWAP binding
specification. A separate WTP Radio Information message element MUST specification. A separate WTP Radio Information message element MUST
be created to properly advertise support for the specification. This be created to properly advertise support for the specification. This
mechanism allows for future protocol extensibility, while providing mechanism allows for future protocol extensibility, while providing
the necessary capabilities advertisement, through the WTP Radio the necessary capabilities advertisement, through the WTP Radio
Information message element, to ensure WTP/AC interoperability. Information message element, to ensure WTP/AC interoperability.
2.2. CAPWAP Session Establishment Overview 2.2. CAPWAP Session Establishment Overview
This section describes the session establishment process message This section describes the session establishment process message
exchanges in the ideal case. The annotated ladder diagram shows the exchanges between a CAPWAP WTP and AC. The annotated ladder diagram
AC on the right, the WTP on the left, and assumes the use of shows the AC on the right, the WTP on the left, and assumes the use
certificates for DTLS authentication. The CAPWAP Protocol State of certificates for DTLS authentication. The CAPWAP Protocol State
Machine is described in detail in Section 2.3. Note that DTLS allows Machine is described in detail in Section 2.3. Note that DTLS allows
certain messages to be aggregated into a single frame, which is certain messages to be aggregated into a single frame, which is
denoted via an asterisk in the following figure. denoted via an asterisk in Figure 3.
============ ============ ============ ============
WTP AC WTP AC
============ ============ ============ ============
[----------- begin optional discovery ------------] [----------- begin optional discovery ------------]
Discover Request Discover Request
------------------------------------> ------------------------------------>
Discover Response Discover Response
<------------------------------------ <------------------------------------
skipping to change at page 15, line 49 skipping to change at page 16, line 4
Echo Response Echo Response
<------------------------------------ <------------------------------------
: :
: :
Event Request Event Request
------------------------------------> ------------------------------------>
Event Response Event Response
<------------------------------------ <------------------------------------
: :
: :
Figure 3: CAPWAP Control Protocol Exchange
At the end of the illustrated CAPWAP message exchange, the AC and WTP At the end of the illustrated CAPWAP message exchange, the AC and WTP
are securely exchanging CAPWAP control messages. This is an are securely exchanging CAPWAP control messages. This illustration
idealized illustration, provided to clarify protocol operation. is provided to clarify protocol operation, and does not include any
Section 2.3 provides a detailed description of the corresponding possible error conditions. Section 2.3 provides a detailed
state machine. description of the corresponding state machine.
2.3. CAPWAP State Machine Definition 2.3. CAPWAP State Machine Definition
The following state diagram represents the lifecycle of a WTP-AC The following state diagram represents the lifecycle of a WTP-AC
session. Use of DTLS by the CAPWAP protocol results in the session. Use of DTLS by the CAPWAP protocol results in the
juxtaposition of two nominally separate yet tightly bound state juxtaposition of two nominally separate yet tightly bound state
machines. The DTLS and CAPWAP state machines are coupled through an machines. The DTLS and CAPWAP state machines are coupled through an
API consisting of commands (see Section 2.3.2.1) and notifications API consisting of commands (see Section 2.3.2.1) and notifications
(see Section 2.3.2.2). Certain transitions in the DTLS state machine (see Section 2.3.2.2). Certain transitions in the DTLS state machine
are triggered by commands from the CAPWAP state machine, while are triggered by commands from the CAPWAP state machine, while
skipping to change at page 17, line 48 skipping to change at page 17, line 48
| | | Idle | | Disc | | Authorize | | Dead | | | | Idle | | Disc | | Authorize | | Dead |
| | +------+<--+------+ +-----------+ +--------+ | | +------+<--+------+ +-----------+ +--------+
| | ^ 0^ 2 |! | | ^ 0^ 2 |!
| | | | | +-------+ | | | | | +-------+
*| |u | \---------+---| Start | *| |u | \---------+---| Start |
| | |@ | +-------+ | | |@ | +-------+
| \->+---------+<------/ | \->+---------+<------/
\--->| Sulking | \--->| Sulking |
+---------+& +---------+&
Figure 3: CAPWAP Integrated State Machine Figure 4: CAPWAP Integrated State Machine
The CAPWAP protocol state machine, depicted above, is used by both The CAPWAP protocol state machine, depicted above, is used by both
the AC and the WTP. In cases where states are not shared (i.e. not the AC and the WTP. In cases where states are not shared (i.e. not
implemented in one or the other of the AC or WTP), this is explicitly implemented in one or the other of the AC or WTP), this is explicitly
called out in the transition descriptions below. For every state called out in the transition descriptions below. For every state
defined, only certain messages are permitted to be sent and received. defined, only certain messages are permitted to be sent and received.
The CAPWAP control message definitions specify the state(s) in which The CAPWAP control message definitions specify the state(s) in which
each message is valid. each message is valid.
Since the WTP only communicates with a single AC, it only has a Since the WTP only communicates with a single AC, it only has a
skipping to change at page 18, line 22 skipping to change at page 18, line 22
uses the concept of three threads. Note that the term thread used uses the concept of three threads. Note that the term thread used
here does not necessarily imply that implementers must use threads, here does not necessarily imply that implementers must use threads,
but it is one possible way of implementing the AC's state machine. but it is one possible way of implementing the AC's state machine.
Listener Thread: The AC's Listener thread handles inbound DTLS Listener Thread: The AC's Listener thread handles inbound DTLS
session establishment requests, through the DTLSListen command. session establishment requests, through the DTLSListen command.
Upon creation, the Listener thread starts in the DTLS Setup state. Upon creation, the Listener thread starts in the DTLS Setup state.
Once a DTLS session has been validated, which occurs when the Once a DTLS session has been validated, which occurs when the
state machine enters the "Authorize" state, the Listener thread state machine enters the "Authorize" state, the Listener thread
creates a WTP session specific Service thread and state context. creates a WTP session specific Service thread and state context.
The state machine transitions in figure Figure 3 are represented The state machine transitions in Figure 4 are represented by
by numerals. It is necessary for the AC to protect itself against numerals. It is necessary for the AC to protect itself against
various attacks that exist with non-authenticated frames. See various attacks that exist with non-authenticated frames. See
Section 12 for more information. Section 12 for more information.
Discovery Thread: The AC's Discovery thread is responsible for Discovery Thread: The AC's Discovery thread is responsible for
receiving, and responding to, Discovery Request messages. The receiving, and responding to, Discovery Request messages. The
state machine transitions in figure Figure 3 are represented by state machine transitions in Figure 4 are represented by numerals.
numerals. Note that the Discovery thread does not maintain any Note that the Discovery thread does not maintain any per-WTP
per-WTP specific context information, and a single state context specific context information, and a single state context exists.
exists. It is necessary for the AC to protect itself against It is necessary for the AC to protect itself against various
various attacks that exist with non-authenticated frames. See attacks that exist with non-authenticated frames. See Section 12
Section 12 for more information. for more information.
Service Thread: The AC's Service thread handles the per-WTP states, Service Thread: The AC's Service thread handles the per-WTP states,
and one such thread exists per-WTP connection. This thread is and one such thread exists per-WTP connection. This thread is
created by the listener thread when the Authorize state is created by the listener thread when the Authorize state is
reached. When created, the Service thread inherits a copy of the reached. When created, the Service thread inherits a copy of the
state machine context from the Listener thread. When state machine context from the Listener thread. When
communication with the WTP is complete, the Service thread is communication with the WTP is complete, the Service thread is
terminated and all associated resources are released. The state terminated and all associated resources are released. The state
machine transitions in figure Figure 3 are represented by machine transitions in Figure 4 are represented by alphabetic
alphabetic characters. characters.
2.3.1. CAPWAP Protocol State Transitions 2.3.1. CAPWAP Protocol State Transitions
This section describes the various state transitions, and the events This section describes the various state transitions, and the events
that cause them. This section does not discuss interactions between that cause them. This section does not discuss interactions between
DTLS- and CAPWAP-specific states. Those interactions, and DTLS- DTLS- and CAPWAP-specific states. Those interactions, and DTLS-
specific states and transitions, are discussed in Section 2.3.2. specific states and transitions, are discussed in Section 2.3.2.
Start to Idle (0): This transition occurs once device initialization Start to Idle (0): This transition occurs once device initialization
is complete. is complete.
skipping to change at page 20, line 44 skipping to change at page 20, line 44
WTP: All packets received from the AC while in the sulking state WTP: All packets received from the AC while in the sulking state
are ignored. are ignored.
AC: This is an invalid state transition for the AC. AC: This is an invalid state transition for the AC.
Idle to DTLS Setup (3): This transition occurs to establish a secure Idle to DTLS Setup (3): This transition occurs to establish a secure
DTLS session with the peer. DTLS session with the peer.
WTP: The WTP initiates this transition by invoking the DTLSStart WTP: The WTP initiates this transition by invoking the DTLSStart
command, which starts the DTLS session establishment with the command(see Section 2.3.2.1), which starts the DTLS session
chosen AC. When the discovery phase is bypassed, it is assumed establishment with the chosen AC and the WaitDTLS timer is
the WTP has locally configured ACs. started (see Section 4.7). When the discovery phase is
bypassed, it is assumed the WTP has locally configured ACs.
AC: Upon entering the Idle state from the Start state, the newly AC: Upon entering the Idle state from the Start state, the newly
created Listener thread automatically transitions to the DTLS created Listener thread automatically transitions to the DTLS
Setup and invokes the DTLSListen command (see Section 2.3.2.1). Setup and invokes the DTLSListen command (see Section 2.3.2.1),
and the WaitDTLS timer is started (see Section 4.7).
Discovery to DTLS Setup (%): This transition occurs to establish a Discovery to DTLS Setup (%): This transition occurs to establish a
secure DTLS session with the peer. secure DTLS session with the peer.
WTP: The WTP initiates this transition by invoking the DTLSStart WTP: The WTP initiates this transition by invoking the DTLSStart
command (see Section 2.3.2.1), which starts the DTLS session command (see Section 2.3.2.1), which starts the DTLS session
establishment with the chosen AC. The decision of which AC to establishment with the chosen AC. The decision of which AC to
connect to is the result of the discovery phase, which is connect to is the result of the discovery phase, which is
described in Section 3.3. described in Section 3.3.
skipping to change at page 21, line 26 skipping to change at page 21, line 26
DTLS Setup to Idle ($): This transition occurs when the DTLS DTLS Setup to Idle ($): This transition occurs when the DTLS
connection setup fails. connection setup fails.
WTP: The WTP initiates this state transition when it receives a WTP: The WTP initiates this state transition when it receives a
DTLSEstablishFail notification from DTLS (see Section 2.3.2.2), DTLSEstablishFail notification from DTLS (see Section 2.3.2.2),
and the FailedDTLSSessionCount or the FailedDTLSAuthFailCount and the FailedDTLSSessionCount or the FailedDTLSAuthFailCount
counter have not reached the value of the counter have not reached the value of the
MaxFailedDTLSSessionRetry variable (see Section 4.8). This MaxFailedDTLSSessionRetry variable (see Section 4.8). This
error notification aborts the secure DTLS session error notification aborts the secure DTLS session
establishment. When this notification is received, the establishment. When this notification is received, the
FailedDTLSSessionCount counter is incremented. FailedDTLSSessionCount counter is incremented. This state
transition also occurs if the WaitDTLS timer has expired.
AC: This is an invalid state transition for the AC. AC: This is an invalid state transition for the AC.
DTLS Setup to Sulking (*): This transition occurs when repeated DTLS Setup to Sulking (*): This transition occurs when repeated
attempts to setup the DTLS connection have failed. attempts to setup the DTLS connection have failed.
WTP: The WTP enters this state when the FailedDTLSSessionCount or WTP: The WTP enters this state when the FailedDTLSSessionCount or
the FailedDTLSAuthFailCount counter reaches the value of the the FailedDTLSAuthFailCount counter reaches the value of the
MaxFailedDTLSSessionRetry variable (see Section 4.8). Upon MaxFailedDTLSSessionRetry variable (see Section 4.8). Upon
entering this state, the WTP MUST start the SilentInterval entering this state, the WTP MUST start the SilentInterval
skipping to change at page 23, line 8 skipping to change at page 23, line 11
authorized the WTP's credentials (see Section 2.4.4). This is authorized the WTP's credentials (see Section 2.4.4). This is
done by invoking the DTLSAccept DTLS command (see done by invoking the DTLSAccept DTLS command (see
Section 2.3.2.1). Section 2.3.2.1).
Authorize to DTLS Teardown (b): This transition occurs to notify the Authorize to DTLS Teardown (b): This transition occurs to notify the
DTLS stack that the session should be aborted. DTLS stack that the session should be aborted.
WTP: This state transition occurs when the WTP was unable to WTP: This state transition occurs when the WTP was unable to
authorize the AC, using the AC credentials. The WTP then authorize the AC, using the AC credentials. The WTP then
aborts the DTLS session by invoking the DTLSAbortSession aborts the DTLS session by invoking the DTLSAbortSession
command (see Section 2.3.2.1). command (see Section 2.3.2.1). This state transition also
occurs if the WaitDTLS timer has expired. The WTP starts the
DTLSSessionDelete timer (see Section 4.7.6).
AC: This state transition occurs when the AC was unable to AC: This state transition occurs when the AC was unable to
authorize the WTP, using the WTP credentials. The AC then authorize the WTP, using the WTP credentials. The AC then
aborts the DTLS session by invoking the DTLSAbortSession aborts the DTLS session by invoking the DTLSAbortSession
command (see Section 2.3.2.1). command (see Section 2.3.2.1). This state transition also
occurs if the WaitDTLS timer has expired. The AC starts the
DTLSSessionDelete timer (see Section 4.7.6).
DTLS Connect to DTLS Teardown (c): This transition occurs when the DTLS Connect to DTLS Teardown (c): This transition occurs when the
DTLS Session failed to be established. DTLS Session failed to be established.
WTP: This state transition occurs when the WTP receives either a WTP: This state transition occurs when the WTP receives either a
DTLSAborted or DTLSAuthenticateFail notification (see DTLSAborted or DTLSAuthenticateFail notification (see
Section 2.3.2.2), indicating that the DTLS session was not Section 2.3.2.2), indicating that the DTLS session was not
successfully established. When this transition occurs due to successfully established. When this transition occurs due to
the DTLSAuthenticateFail notification, the the DTLSAuthenticateFail notification, the
FailedDTLSAuthFailCount is incremented, otherwise the FailedDTLSAuthFailCount is incremented, otherwise the
FailedDTLSSessionCount counter is incremented. FailedDTLSSessionCount counter is incremented. This state
transition also occurs if the WaitDTLS timer has expired. The
WTP starts the DTLSSessionDelete timer (see Section 4.7.6).
AC: This state transition occurs when the AC receives either a AC: This state transition occurs when the AC receives either a
DTLSAborted or DTLSAuthenticateFail notification (see DTLSAborted or DTLSAuthenticateFail notification (see
Section 2.3.2.2), indicating that the DTLS session was not Section 2.3.2.2), indicating that the DTLS session was not
successfully established, and both of the successfully established, and both of the
FailedDTLSAuthFailCount and FailedDTLSSessionCount counters FailedDTLSAuthFailCount and FailedDTLSSessionCount counters
have not reached the value of the MaxFailedDTLSSessionRetry have not reached the value of the MaxFailedDTLSSessionRetry
variable (see Section 4.8). variable (see Section 4.8). This state transition also occurs
if the WaitDTLS timer has expired. The AC starts the
DTLSSessionDelete timer (see Section 4.7.6).
DTLS Connect to Join (d): This transition occurs when the DTLS DTLS Connect to Join (d): This transition occurs when the DTLS
Session is successfully established. Session is successfully established.
WTP: This state transition occurs when the WTP receives the WTP: This state transition occurs when the WTP receives the
DTLSEstablished notification (see Section 2.3.2.2), indicating DTLSEstablished notification (see Section 2.3.2.2), indicating
that the DTLS session was successfully established. When this that the DTLS session was successfully established. When this
notification is received, the FailedDTLSSessionCount counter is notification is received, the FailedDTLSSessionCount counter is
set to zero. set to zero. The WTP enters the Join state by transmiting the
Join Request to the AC. The WTP stops the WaitDTLS timer.
AC: This state transition occurs when the AC receives the AC: This state transition occurs when the AC receives the
DTLSEstablished notification (see Section 2.3.2.2), indicating DTLSEstablished notification (see Section 2.3.2.2), indicating
that the DTLS session was successfully established. When this that the DTLS session was successfully established. When this
notification is received, the FailedDTLSSessionCount counter is notification is received, the FailedDTLSSessionCount counter is
set to zero, and the WaitJoin timer is started (see set to zero. The AC stops the WaitDTLS timer.
Section 4.7).
Join to DTLS Teardown (e): This transition occurs when the join Join to DTLS Teardown (e): This transition occurs when the join
process failed. process failed.
WTP: This state transition occurs when the WTP receives a Join WTP: This state transition occurs when the WTP receives a Join
Response message with a Result Code message element containing Response message with a Result Code message element containing
an error, if the Image Identifier provided by the AC in the an error, if the Image Identifier provided by the AC in the
Join Response message differs from the WTP's currently running Join Response message differs from the WTP's currently running
firmware version and the WTP has the requested image in its firmware version and the WTP has the requested image in its
non-volatile memory, or if the WaitDTLS timer expires. This non-volatile memory, or if the WaitDTLS timer expires. This
causes the WTP to initiate the DTLSShutdown command (see causes the WTP to initiate the DTLSShutdown command (see
Section 2.3.2.1). This transition also occurs if the WTP Section 2.3.2.1). This transition also occurs if the WTP
receives one of the following DTLS notifications: DTLSAborted, receives one of the following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect. DTLSReassemblyFailure or DTLSPeerDisconnect. The WTP starts
the DTLSSessionDelete timer (see Section 4.7.6).
AC: This state transition occurs either if the WaitJoin timer AC: This state transition occurs either if the WaitDTLS timer
expires or if the AC transmits a Join Response message with a expires or if the AC transmits a Join Response message with a
Result Code message element containing an error. This causes Result Code message element containing an error. This causes
the AC to initiate the DTLSShutdown command (see the AC to initiate the DTLSShutdown command (see
Section 2.3.2.1). This transition also occurs if the AC Section 2.3.2.1). This transition also occurs if the AC
receives one of the following DTLS notifications: DTLSAborted, receives one of the following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect. DTLSReassemblyFailure or DTLSPeerDisconnect. The AC starts the
DTLSSessionDelete timer (see Section 4.7.6).
Join to Image Data (f): This state transition is used by the WTP and Join to Image Data (f): This state transition is used by the WTP and
the AC to download executable firmware. the AC to download executable firmware.
WTP: The WTP enters the Image Data state when it receives a WTP: The WTP enters the Image Data state when it receives a
successful Join Response message and determines and the successful Join Response message and determines that the
included Image Identifier message element is not the same as software version in the Image Identifier message element is not
its currently running image. The WTP also detects that the the same as its currently running image. The WTP also detects
requested image version is not currently available in the WTP's that the requested image version is not currently available in
non-volatile storage (see Section 9.1 for a full description of the WTP's non-volatile storage (see Section 9.1 for a full
the firmware download process). The WTP initializes the description of the firmware download process). The WTP
EchoInterval timer (see Section 4.7), and transmits the Image initializes the EchoInterval timer (see Section 4.7), and
Data Request message (see Section 9.1.1) requesting the start transmits the Image Data Request message (see Section 9.1.1)
of the firmware download. requesting the start of the firmware download.
AC: This state transition occurs when the AC receives the Image AC: This state transition occurs when the AC receives the Image
Data Request message from the WTP. The AC MUST transmit an Data Request message from the WTP, after having sent its Join
Image Data Response message (see Section 9.1.2) to the WTP, Response to the WTP. The AC MUST transmit an Image Data
which includes a portion of the firmware. The AC MUST start Response message (see Section 9.1.2) to the WTP, which includes
the ImageDataStartTimer timer (see Section 4.7). a portion of the firmware. The AC MUST start the
ImageDataStartTimer timer (see Section 4.7).
Join to Configure (g): This state transition is used by the WTP and Join to Configure (g): This state transition is used by the WTP and
the AC to exchange configuration information. the AC to exchange configuration information.
WTP: The WTP enters the Configure state when it receives a WTP: The WTP enters the Configure state when it receives a
successful Join Response message, and determines that the successful Join Response message, and determines that the
included Image Identifier message element is the same as its included Image Identifier message element is the same as its
currently running image. The WTP transmits the Configuration currently running image. The WTP transmits the Configuration
Status message (see Section 8.2) to the AC with message Status message (see Section 8.2) to the AC with message
elements describing its current configuration. The WTP also elements describing its current configuration.
starts the ResponseTimeout timer (see Section 4.7).
AC: This state transition occurs immediately after the AC AC: This state transition occurs when it receives the
transmits the Join Response message to the WTP. If the AC Configuration Status message from the WTP (see Section 8.2),
receives the Configuration Status message from the WTP, the AC which MAY include specific message elements to override the
MUST transmit a Configuration Status Response message (see WTP's configuration. The AC transmits the Configuration Status
Section 8.3) to the WTP, and MAY include specific message Response message (see Section 8.3) and starts the
elements to override the WTP's configuration. The AC also ChangeStatePendingTimer timer (see Section 4.7).
starts the ChangeStatePendingTimer timer (see Section 4.7).
Configure to Reset (h): This state transition is used to reset the Configure to Reset (h): This state transition is used to reset the
connection either due to an error during the configuration phase, connection either due to an error during the configuration phase,
or when the WTP determines it needs to reset in order for the new or when the WTP determines it needs to reset in order for the new
configuration to take effect. configuration to take effect. The CAPWAP Reset command is used to
indicate to the peer that it will initiate a DTLS teardown.
WTP: The WTP enters the Reset state when it receives a WTP: The WTP enters the Reset state when it receives a
Configuration Status Response message indicating an error or Configuration Status Response message indicating an error or
when it determines that a reset of the WTP is required, due to when it determines that a reset of the WTP is required, due to
the characteristics of a new configuration. the characteristics of a new configuration.
AC: The AC transitions to the Reset state when it receives a AC: The AC transitions to the Reset state when it receives a
Change State Event message from the WTP that contains an error Change State Event message from the WTP that contains an error
for which AC policy does not permit the WTP to provide service. for which AC policy does not permit the WTP to provide service.
This state transition also occurs when the AC This state transition also occurs when the AC
ChangeStatePendingTimer timer expires. ChangeStatePendingTimer timer expires.
Configure to DTLS Teardown (i): This transition occurs when the Configure to DTLS Teardown (i): This transition occurs when the
configuration process aborts due to a DTLS error. configuration process aborts due to a DTLS error.
WTP: The WTP enters this state when it receives one of the WTP: The WTP enters this state when it receives one of the
following DTLS notifications: DTLSAborted, following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect (see DTLSReassemblyFailure or DTLSPeerDisconnect (see
Section 2.3.2.2). The WTP MAY tear down the DTLS session if it Section 2.3.2.2). The WTP MAY tear down the DTLS session if it
receives frequent DTLSDecapFailure notifications. receives frequent DTLSDecapFailure notifications. The WTP
starts the DTLSSessionDelete timer (see Section 4.7.6).
AC: The AC enters this state when it receives one of the AC: The AC enters this state when it receives one of the
following DTLS notifications: DTLSAborted, following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect (see DTLSReassemblyFailure or DTLSPeerDisconnect (see
Section 2.3.2.2). The WTP MAY tear down the DTLS session if it Section 2.3.2.2). The AC MAY tear down the DTLS session if it
receives frequent DTLSDecapFailure notifications. receives frequent DTLSDecapFailure notifications. The AC
starts the DTLSSessionDelete timer (see Section 4.7.6).
Image Data to Image Data (j): The Image Data state is used by the Image Data to Image Data (j): The Image Data state is used by the
WTP and the AC during the firmware download phase. WTP and the AC during the firmware download phase.
WTP: The WTP enters the Image Data state when it receives an WTP: The WTP enters the Image Data state when it receives an
Image Data Response message indicating that the AC has more Image Data Response message indicating that the AC has more
data to send. data to send. This state transition also occurs when the WTP
receives the subsequent Image Data Requests, at which time it
resets the ImageDataStartTimer time to ensure it receives the
next expected Image Data Request from the AC.
AC: This state transition occurs when the AC receives the Image AC: This state transition occurs when the AC receives the Image
Data Request message from the WTP while already in the Image Data Response message from the WTP while already in the Image
Data state. The AC resets the ImageDataStartTimer timer. Data state. The AC disables the ImageDataStartTimer timer.
Image Data to Reset (k): This state transition is used to reset the Image Data to Reset (k): This state transition is used to reset the
DTLS connection prior to restarting the WTP after an image DTLS connection prior to restarting the WTP after an image
download. download.
WTP: When an image download completes, the WTP enters the Reset WTP: When an image download completes, or if the
ImageDataStartTimer timer expires, the WTP enters the Reset
state. The WTP MAY also transition to this state upon state. The WTP MAY also transition to this state upon
receiving an Image Data Response message from the AC (see receiving an Image Data Response message from the AC (see
Section 9.1.2) indicating a failure. Section 9.1.2) indicating a failure.
AC: The AC enters the Reset state when an error occurs during the AC: The AC enters the Reset state either when the image transfer
image download process or if the ImageDataStartTimer timer has successfully completed, an error occurs during the image
expires. download process or if the ImageDataStartTimer timer expires.
Image Data to DTLS Teardown (l): This transition occurs when the Image Data to DTLS Teardown (l): This transition occurs when the
firmware download process aborts due to a DTLS error. firmware download process aborts due to a DTLS error.
WTP: The WTP enters this state when it receives one of the WTP: The WTP enters this state when it receives one of the
following DTLS notifications: DTLSAborted, following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect (see DTLSReassemblyFailure or DTLSPeerDisconnect (see
Section 2.3.2.2). The WTP MAY tear down the DTLS session if it Section 2.3.2.2). The WTP MAY tear down the DTLS session if it
receives frequent DTLSDecapFailure notifications. receives frequent DTLSDecapFailure notifications. The WTP
starts the DTLSSessionDelete timer (see Section 4.7.6).
AC: The AC enters this state when it receives one of the AC: The AC enters this state when it receives one of the
following DTLS notifications: DTLSAborted, following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect (see DTLSReassemblyFailure or DTLSPeerDisconnect (see
Section 2.3.2.2). The WTP MAY tear down the DTLS session if it Section 2.3.2.2). The AC MAY tear down the DTLS session if it
receives frequent DTLSDecapFailure notifications. receives frequent DTLSDecapFailure notifications. The AC
starts the DTLSSessionDelete timer (see Section 4.7.6).
Configure to Data Check (m): This state transition occurs when the Configure to Data Check (m): This state transition occurs when the
WTP and AC confirm the configuration. WTP and AC confirm the configuration.
WTP: The WTP enters this state when it receives a successful WTP: The WTP enters this state when it receives a successful
Configuration Status Response message from the AC. The WTP Configuration Status Response message from the AC. The WTP
initializes the EchoInterval timer (see Section 4.7), and initializes the EchoInterval timer (see Section 4.7), and
transmits the Change State Event Request message (see transmits the Change State Event Request message (see
Section 8.6). Section 8.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 message (see Section 8.6) from the WTP. State Event Request message (see Section 8.6) from the WTP.
The AC responds with a Change State Event Response message (see The AC responds with a Change State Event Response message (see
Section 8.7). The AC MUST start the DataCheckTimer timer (see Section 8.7). The AC MUST start the DataCheckTimer timer and
Section 4.7). stops the ChangeStatePendingTimer timer (see Section 4.7).
Data Check to DTLS Teardown (n): This transition occurs when the WTP Data Check to DTLS Teardown (n): This transition occurs when the WTP
does not complete the Data Check exchange. does not complete the Data Check exchange.
WTP: This state transition occurs if the WTP does not receive the WTP: This state transition occurs if the WTP does not receive the
Change State Event Response message before a CAPWAP Change State Event Response message before a CAPWAP
transmission timeout occurs. retransmission timeout occurs. The WTP also transitions to
this state if the underlying reliable transport's
RetransmitCount counter has reached the MaxRetransmit variable
(see Section 4.7). The WTP starts the DTLSSessionDelete timer
(see Section 4.7.6).
AC: The AC enters this state when the DataCheckTimer timer AC: The AC enters this state when the DataCheckTimer timer
expires (see Section 4.7). expires (see Section 4.7). The AC starts the DTLSSessionDelete
timer (see Section 4.7.6).
Data Check to Run (o): This state transition occurs when the linkage Data Check to Run (o): This state transition occurs when the linkage
between the control and data channels is established, causing the between the control and data channels is established, causing the
WTP and AC to enter their normal state of operation. WTP and AC to 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
Change State Event Response message from the AC. The WTP Change State Event Response message from the AC. The WTP
initiates the data channel, which MAY require the establishment initiates the data channel, which MAY require the establishment
of a DTLS session, starts the DataChannelKeepAlive timer (see of a DTLS session, starts the DataChannelKeepAlive timer (see
Section 4.7) and transmits a Data Channel Keep Alive packet Section 4.7.2) and transmits a Data Channel Keep Alive packet
(see Section 4.4.1). The WTP then starts the (see Section 4.4.1). The WTP then starts the
DataChannelDeadInterval timer (see Section 4.7). DataChannelDeadInterval timer (see Section 4.7).
AC: This state transition occurs when the AC receives the Data AC: This state transition occurs when the AC receives the Data
Channel Keep Alive packet (see Section 4.4.1), with a Session Channel Keep Alive packet (see Section 4.4.1), with a Session
ID message element matching that included by the WTP in the ID message element matching that included by the WTP in the
Join Request message. The AC disables the DataCheckTimer Join Request message. The AC disables the DataCheckTimer
timer. Note that if AC policy is to require the data channel timer. Note that if AC policy is to require the data channel
to be encrypted, this process would also require the to be encrypted, this process would also require the
establishment of a data channel DTLS session. Upon receiving establishment of a data channel DTLS session. Upon receiving
skipping to change at page 28, line 5 skipping to change at page 28, line 26
has occurred in the DTLS stack, causing the DTLS session to be has occurred in the DTLS stack, causing the DTLS session to be
torn down. torn down.
WTP: The WTP enters this state when it receives one of the WTP: The WTP enters this state when it receives one of the
following DTLS notifications: DTLSAborted, following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect (see DTLSReassemblyFailure or DTLSPeerDisconnect (see
Section 2.3.2.2). The WTP MAY tear down the DTLS session if it Section 2.3.2.2). The WTP MAY tear down the DTLS session if it
receives frequent DTLSDecapFailure notifications. The WTP also receives frequent DTLSDecapFailure notifications. The WTP also
transitions to this state if the underlying reliable transitions to this state if the underlying reliable
transport's RetransmitCount counter has reached the transport's RetransmitCount counter has reached the
MaxRetransmit variable (see Section 4.7). MaxRetransmit variable (see Section 4.7). The WTP starts the
DTLSSessionDelete timer (see Section 4.7.6).
AC: The AC enters this state when it receives one of the AC: The AC enters this state when it receives one of the
following DTLS notifications: DTLSAborted, following DTLS notifications: DTLSAborted,
DTLSReassemblyFailure or DTLSPeerDisconnect (see DTLSReassemblyFailure or DTLSPeerDisconnect (see
Section 2.3.2.2). The WTP MAY tear down the DTLS session if it Section 2.3.2.2). The AC MAY tear down the DTLS session if it
receives frequent DTLSDecapFailure notifications. The AC receives frequent DTLSDecapFailure notifications. The AC
transitions to this state if the underlying reliable transitions to this state if the underlying reliable
transport's RetransmitCount counter has reached the transport's RetransmitCount counter has reached the
MaxRetransmit variable (see Section 4.7). MaxRetransmit variable (see Section 4.7). This state
transition also occurs when the AC's EchoInterval timer (see
Section 4.7.7) expires. The AC starts the DTLSSessionDelete
timer (see Section 4.7.6).
Run to Run (q): This is the normal state of operation. Run to Run (q): This is the normal state of operation.
WTP: This is the WTP's normal state of operation. There are many WTP: This is the WTP's normal state of operation. The WTP resets
events that result this state transition: its EchoInterval timer whenever it transmits a request to the
AC. There are many events that result this state transition:
Configuration Update: The WTP receives a Configuration Update Configuration Update: The WTP receives a Configuration Update
Request message(see Section 8.4). The WTP MUST respond with Request message(see Section 8.4). The WTP MUST respond with
a Configuration Update Response message (see Section 8.5). a Configuration Update Response message (see Section 8.5).
Change State Event: The WTP receives a Change State Event Change State Event: The WTP receives a Change State Event
Response message, or determines that it must initiate a Response message, or determines that it must initiate a
Change State Event Request message, as a result of a failure Change State Event Request message, as a result of a failure
or change in the state of a radio. or change in the state of a radio.
Echo Request: The WTP sends an Echo Request message Echo Request: The WTP sends an Echo Request message
(Section 7.1) or receives the corresponding Echo Response (Section 7.1) or receives the corresponding Echo Response
message, (see Section 7.2) from the AC. message, (see Section 7.2) from the AC. When the WTP
receives the Echo Response, it resets its EchoInterval timer
(see Section 4.7.7).
Clear Config Request: The WTP receives a Clear Configuration Clear Config Request: The WTP receives a Clear Configuration
Request message (see Section 8.8). The WTP MUST reset its Request message (see Section 8.8) and MUST generate a
configuration back to manufacturer defaults. corresponding Clear Configuration Response message (see
Section 8.9). The WTP MUST reset its configuration back to
manufacturer defaults.
WTP Event: The WTP sends a WTP Event Request message, WTP Event: The WTP sends a WTP Event Request message,
delivering information to the AC (see Section 9.4). The WTP delivering information to the AC (see Section 9.4). The WTP
receives a WTP Event Response message from the AC (see receives a WTP Event Response message from the AC (see
Section 9.5). Section 9.5).
Data Transfer: The WTP sends a Data Transfer Request message Data Transfer: The WTP sends a Data Transfer Request or Data
to the AC (see Section 9.6). The WTP receives a Data Transfer Response message to the AC (see Section 9.6). The
Transfer Response message from the AC (see Section 9.7). WTP receives a Data Transfer Request or Data Transfer
Response message from the AC (see Section 9.6). Upon
receipt of a Data Transfer Request, the WTP transmits a Data
Transfer Response to the AC.
Station Configuration Request: The WTP receives a Station Station Configuration Request: The WTP receives a Station
Configuration Request message (see Section 10.1), to which Configuration Request message (see Section 10.1), to which
it MUST respond with a Station Configuration Response it MUST respond with a Station Configuration Response
message (see Section 10.2). message (see Section 10.2).
AC: This is the AC's normal state of operation: AC: This is the AC's normal state of operation. Note that the
receipt of any Request from the WTP causes the AC to reset its
EchoInterval timer (see Section 4.7.7).
Configuration Update: The AC sends a Configuration Update Configuration Update: The AC sends a Configuration Update
Request message (see Section 8.4) to the WTP to update its Request message (see Section 8.4) to the WTP to update its
configuration. The AC receives a Configuration Update configuration. The AC receives a Configuration Update
Response message (see Section 8.5) from the WTP. Response message (see Section 8.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 message (see Section 8.6), to which it MUST respond Request message (see Section 8.6), to which it MUST respond
with the Change State Event Response message (see with the Change State Event Response message (see
Section 8.7). Section 8.7).
Echo Request: The AC receives an Echo Request message (see Echo Request: The AC receives an Echo Request message (see
Section 7.1), to which it MUST respond with an Echo Response Section 7.1), to which it MUST respond with an Echo Response
message(see Section 7.2). message(see Section 7.2).
Clear Config Response: The AC receives a Clear Configuration Clear Config Response: The AC sends a Clear Configuration
Request message (see Section 8.8) to the WTP to clear its
configuration. The AC receives a Clear Configuration
Response message from the WTP (see Section 8.9). Response message from the WTP (see Section 8.9).
WTP Event: The AC receives a WTP Event Request message from WTP Event: The AC receives a WTP Event Request message from
the WTP (see Section 9.4) and MUST generate a corresponding the WTP (see Section 9.4) and MUST generate a corresponding
WTP Event Response message (see Section 9.5). WTP Event Response message (see Section 9.5).
Data Transfer: The AC receives a Data Transfer Request message Data Transfer: The AC sends a Data Transfer Request or Data
from the WTP (see Section 9.6) and MUST generate a Transfer Response message to the WTP (see Section 9.6). The
corresponding Data Transfer Response message (see AC receives a Data Transfer Request or Data Transfer
Section 9.7). Response message from the WTP (see Section 9.6). Upon
receipt of a Data Transfer Request, the AC transmits a Data
Transfer Response to the WTP.
Station Configuration Request: The AC sends a Station Station Configuration Request: The AC sends a Station
Configuration Request message (see Section 10.1) or receives Configuration Request message (see Section 10.1) or receives
the corresponding Station Configuration Response message the corresponding Station Configuration Response message
(see Section 10.2) from the WTP. (see Section 10.2) from the WTP.
Run to Reset (r): This state transition is used when either the AC Run to Reset (r): This state transition is used when either the AC
or WTP tear down the connection. This may occur as part of normal or WTP tear down the connection. This may occur as part of normal
operation, or due to error conditions. operation, or due to error conditions.
WTP: The WTP enters the Reset state when it receives a Reset WTP: The WTP enters the Reset state when it receives a Reset
Request message from the AC. Request message from the AC.
AC: The AC enters the Reset state when it transmits a Reset AC: The AC enters the Reset state when it transmits a Reset
Request message to the WTP. Request message to the WTP.
Reset to DTLS Teardown (s): This transition occurs when the CAPWAP Reset to DTLS Teardown (s): This transition occurs when the CAPWAP
reset is complete, to terminate the DTLS session. reset is complete, to terminate the DTLS session.
WTP: This state transition occurs when the WTP receives a Reset WTP: This state transition occurs when the WTP transmits a Reset
Response message. This causes the WTP to initiate the Response message. The WTP does not invoke the DTLSShutdown
DTLSShutdown command (see Section 2.3.2.1). command (see Section 2.3.2.1). The WTP starts the
DTLSSessionDelete timer (see Section 4.7.6).
AC: This state transition occurs when the AC transmits a Reset AC: This state transition occurs when the AC receives a Reset
Response message. The AC does not invoke the DTLSShutdown Response message. This causes the AC to initiate the
command (see Section 2.3.2.1). DTLSShutdown command (see Section 2.3.2.1). The AC starts the
DTLSSessionDelete timer (see Section 4.7.6).
DTLS Teardown to Idle (t): This transition occurs when the DTLS DTLS Teardown to Idle (t): This transition occurs when the DTLS
session has been shutdown. session has been shutdown.
WTP: This state transition occurs when the WTP has successfully WTP: This state transition occurs when the WTP has successfully
cleaned up all resources associated with the control plane DTLS cleaned up all resources associated with the control plane DTLS
session. The data plane DTLS session is also shutdown, and all session, or if the DTLSSessionDelete timer (see Section 4.7.6)
expires. The data plane DTLS session is also shutdown, and all
resources released, if a DTLS session was established for the resources released, if a DTLS session was established for the
data plane. Any timers set for the current instance of the data plane. Any timers set for the current instance of the
state machine are also cleared. state machine are also cleared.
AC: This is an invalid state transition for the AC. AC: This is an invalid state transition for the AC.
DTLS Teardown to Sulking (u): This transition occurs when repeated DTLS Teardown to Sulking (u): This transition occurs when repeated
attempts to setup the DTLS connection have failed. attempts to setup the DTLS connection have failed.
WTP: The WTP enters this state when the FailedDTLSSessionCount or WTP: The WTP enters this state when the FailedDTLSSessionCount or
skipping to change at page 30, line 44 skipping to change at page 31, line 37
AC: This is an invalid state transition for the AC. AC: This is an invalid state transition for the AC.
DTLS Teardown to Dead (w): This transition occurs when the DTLS DTLS Teardown to Dead (w): This transition occurs when the DTLS
session has been shutdown. session has been shutdown.
WTP: This is an invalid state transition for the WTP. WTP: This is an invalid state transition for the WTP.
AC: This state transition occurs when the AC has successfully AC: This state transition occurs when the AC has successfully
cleaned up all resources associated with the control plane DTLS cleaned up all resources associated with the control plane DTLS
session. The data plane DTLS session is also shutdown, and all session , or if the DTLSSessionDelete timer (see Section 4.7.6)
expires. The data plane DTLS session is also shutdown, and all
resources released, if a DTLS session was established for the resources released, if a DTLS session was established for the
data plane. Any timers set for the current instance of the data plane. Any timers set for the current instance of the
state machine are also cleared. The AC's Service thread is state machine are also cleared. The AC's Service thread is
terminated. terminated.
2.3.2. CAPWAP/DTLS Interface 2.3.2. CAPWAP/DTLS Interface
This section describes the DTLS Commands used by CAPWAP, and the This section describes the DTLS Commands used by CAPWAP, and the
notifications received from DTLS to the CAPWAP protocol stack. notifications received from DTLS to the CAPWAP protocol stack.
skipping to change at page 32, line 5 skipping to change at page 32, line 44
2.3.2.2. DTLS to CAPWAP Notifications 2.3.2.2. DTLS to CAPWAP Notifications
DTLS notifications are defined for the DTLS to CAPWAP API. These DTLS notifications are defined for the DTLS to CAPWAP API. These
"notifications" are conceptual, and may be implemented in numerous "notifications" are conceptual, and may be implemented in numerous
ways (e.g. as function return values). This API definition is ways (e.g. as function return values). This API definition is
provided to clarify interactions between the DTLS and CAPWAP provided to clarify interactions between the DTLS and CAPWAP
components of the integrated CAPWAP state machine. It is important components of the integrated CAPWAP state machine. It is important
to note that the notifications listed below MAY cause the CAPWAP to note that the notifications listed below MAY cause the CAPWAP
state machine to jump from one state to another using a state state machine to jump from one state to another using a state
transition not listed in Section 2.3.1. When a notification listed transition not listed in Section 2.3.1. When a notification listed
below occurs, the target CAPWAP state shown in Figure 3 becomes the below occurs, the target CAPWAP state shown in Figure 4 becomes the
current state. current state.
Below is a list of the API notifications: Below is a list of the API notifications:
o DTLSPeerAuthorize is sent to the CAPWAP component during DTLS o DTLSPeerAuthorize is sent to the CAPWAP component during DTLS
session establishment once the peer's identity has been received. session establishment once the peer's identity has been received.
This notification MAY be used by the CAPWAP component to authorize This notification MAY be used by the CAPWAP component to authorize
the session, based on the peer's identity. The authorization the session, based on the peer's identity. The authorization
process will lead to the CAPWAP component initiating either the process will lead to the CAPWAP component initiating either the
DTLSAccept or DTLSAbortSession commands. DTLSAccept or DTLSAbortSession commands.
skipping to change at page 33, line 28 skipping to change at page 34, line 17
to DTLS) and 'notifications' (DTLS to CAPWAP) as they would be to DTLS) and 'notifications' (DTLS to CAPWAP) as they would be
encountered during the normal course of operation. encountered during the normal course of operation.
2.4.1. DTLS Handshake Processing 2.4.1. DTLS Handshake Processing
Details of the DTLS handshake process are specified in [RFC4347]. Details of the DTLS handshake process are specified in [RFC4347].
This section describes the interactions between the DTLS session This section describes the interactions between the DTLS session
establishment process and the CAPWAP protocol. Note that the establishment process and the CAPWAP protocol. Note that the
conceptual DTLS state is shown below to help understand the point at conceptual DTLS state is shown below to help understand the point at
which the DTLS states transition. In the normal case, the DTLS which the DTLS states transition. In the normal case, the DTLS
handshake will proceed as follows (NOTE: this example uses handshake will proceed as shown in Figure 5. (NOTE: this example
certificates, but preshared keys are also supported): uses certificates, but preshared keys are also supported):
============ ============ ============ ============
WTP AC WTP AC
============ ============ ============ ============
ClientHello ------> ClientHello ------>
<------ HelloVerifyRequest <------ HelloVerifyRequest
(with cookie) (with cookie)
ClientHello ------> ClientHello ------>
(with cookie) (with cookie)
<------ ServerHello <------ ServerHello
<------ Certificate <------ Certificate
<------ ServerHelloDone <------ ServerHelloDone
(WTP callout for AC authorization (WTP callout for AC authorization
occurs in CAPWAP Auth state) occurs in CAPWAP Auth state)
Certificate* Certificate*
ClientKeyExchange ClientKeyExchange
CertificateVerify* CertificateVerify*
[ChangeCipherSpec] ChangeCipherSpec
Finished ------> Finished ------>
(AC callout for WTP authorization (AC callout for WTP authorization
occurs in CAPWAP Auth state) occurs in CAPWAP Auth state)
[ChangeCipherSpec] ChangeCipherSpec
<------ Finished <------ Finished
Figure 5: DTLS Handshake
DTLS, as specified, provides its own retransmit timers with an DTLS, as specified, provides its own retransmit timers with an
exponential back-off. However, DTLS will never terminate the exponential back-off. However, DTLS will never terminate the
handshake due to non-responsiveness; instead, DTLS will continue to handshake due to non-responsiveness; instead, DTLS will continue to
increase its back-off timer period. Hence, timing out incomplete increase its back-off timer period. Hence, timing out incomplete
DTLS handshakes is entirely the responsibility of the CAPWAP module. DTLS handshakes is entirely the responsibility of the CAPWAP module.
The DTLS implementation used by CAPWAP MUST support TLS Session The DTLS implementation used by CAPWAP MUST support TLS Session
Resumption. Session resumption is used to establish the DTLS session Resumption. Session resumption is used to establish the DTLS session
used for the data channel. The DTLS implementation on the WTP MUST used for the data channel. The DTLS implementation on the WTP MUST
return some unique identifier to the CAPWAP module to enable return some unique identifier to the CAPWAP module to enable
skipping to change at page 36, line 44 skipping to change at page 37, line 14
a transmission request will result in a packet which exceeds the MTU. a transmission request will result in a packet which exceeds the MTU.
2.4.4. DTLS EndPoint Authentication and Authorization 2.4.4. DTLS EndPoint Authentication and Authorization
DTLS supports endpoint authentication with certificates or preshared DTLS supports endpoint authentication with certificates or preshared
keys. The TLS algorithm suites for each endpoint authentication keys. The TLS algorithm suites for each endpoint authentication
method are described below. method are described below.
2.4.4.1. Authenticating with Certificates 2.4.4.1. Authenticating with Certificates
Note that only block ciphers are currently recommended for use with CAPWAP implementations only use cipher suites that are recommended
DTLS. To understand the reasoning behind this, see [DTLS-DESIGN]. for use with DTLS, see [DTLS-DESIGN]. At present, the following
At present, the following algorithms MUST be supported when using algorithms MUST be supported when using certificates for CAPWAP
certificates for CAPWAP authentication: authentication:
o TLS_RSA_WITH_AES_128_CBC_SHA o TLS_RSA_WITH_AES_128_CBC_SHA [RFC4279]
The following algorithms SHOULD be supported when using certificates: The following algorithms SHOULD be supported when using certificates:
o TLS_DH_RSA_WITH_AES_128_CBC_SHA o TLS_DHE_RSA_WITH_AES_128_CBC_SHA [RFC4279]
The following algorithms MAY be supported when using certificates: The following algorithms MAY be supported when using certificates:
o TLS_RSA_WITH_AES_256_CBC_SHA o TLS_RSA_WITH_AES_256_CBC_SHA [RFC4279]
o TLS_DH_RSA_WITH_AES_256_CBC_SHA o TLS_DHE_RSA_WITH_AES_256_CBC_SHA [RFC4279]
Additional ciphers MAY be defined in follow on CAPWAP specifications.
2.4.4.2. Authenticating with Preshared Keys 2.4.4.2. Authenticating with Preshared Keys
Pre-shared keys present significant challenges from a security Pre-shared keys present significant challenges from a security
perspective, and for that reason, their use is strongly discouraged. perspective, and for that reason, their use is strongly discouraged.
Several methods for authenticating with preshared keys are defined Several methods for authenticating with preshared keys are defined
[RFC4279], and we focus on the following two: [RFC4279], and we focus on the following two:
o PSK key exchange algorithm - simplest method, ciphersuites use o Pre-Shared Key (PSK) key exchange algorithm - simplest method,
only symmetric key algorithms ciphersuites use only symmetric key algorithms
o DHE_PSK key exchange algorithm - use a PSK to authenticate a o DHE_PSK key exchange algorithm - use a PSK to authenticate a
Diffie-Hellman exchange. These ciphersuites give some additional Diffie-Hellman exchange. These ciphersuites give some additional
protection against dictionary attacks and also provide Perfect protection against dictionary attacks and also provide Perfect
Forward Secrecy (PFS). Forward Secrecy (PFS).
The first approach (plain PSK) is susceptible to passive dictionary The first approach (plain PSK) is susceptible to passive dictionary
attacks; hence, while this algorithm MUST be supported, special care attacks; hence, while this algorithm MUST be supported, special care
should be taken when choosing that method. In particular, user- should be taken when choosing that method. In particular, user-
readable passphrases SHOULD NOT be used, and use of short PSKs SHOULD readable passphrases SHOULD NOT be used, and use of short PSKs SHOULD
be strongly discouraged. be strongly discouraged.
The following cryptographic algorithms MUST be supported when using The following cryptographic algorithms MUST be supported when using
preshared keys: preshared keys:
o TLS_PSK_WITH_AES_128_CBC_SHA o TLS_PSK_WITH_AES_128_CBC_SHA [RFC4279]
o TLS_DHE_PSK_WITH_AES_128_CBC_SHA o TLS_DHE_PSK_WITH_AES_128_CBC_SHA [RFC4279]
The following algorithms MAY be supported when using preshared keys: The following algorithms MAY be supported when using preshared keys:
o TLS_PSK_WITH_AES_256_CBC_SHA o TLS_PSK_WITH_AES_256_CBC_SHA [RFC4279]
o TLS_DHE_PSK_WITH_AES_256_CBC_SHA o TLS_DHE_PSK_WITH_AES_256_CBC_SHA [RFC4279]
o TLS_DHE_PSK_WITH_AES_256_CBC_SHA [RFC4279]
Additional ciphers MAY be defined in follow on CAPWAP specifications.
2.4.4.3. Certificate Usage 2.4.4.3. Certificate Usage
Certificate authorization by the AC and WTP is required so that only Certificate authorization by the AC and WTP is required so that only
an AC may perform the functions of an AC and that only a WTP may an AC may perform the functions of an AC and that only a WTP may
perform the functions of a WTP. This restriction of functions to the perform the functions of a WTP. This restriction of functions to the
AC or WTP requires that the certificates used by the AC MUST be AC or WTP requires that the certificates used by the AC MUST be
distinguishable from the certificate used by the WTP. To accomplish distinguishable from the certificate used by the WTP. To accomplish
this differentiation, the x.509 certificates MUST include the this differentiation, the x.509 certificates MUST include the
Extended Key Usage (EKU) certificate extension [RFC3280]. Extended Key Usage (EKU) certificate extension [RFC5280].
The EKU field indicates one or more purposes for which a certificate The EKU field indicates one or more purposes for which a certificate
may be used. It is an essential part in authorization. Its syntax may be used. It is an essential part in authorization. Its syntax
is as follows: is as follows:
ExtKeyUsageSyntax ::= SEQUENCE SIZE (1..MAX) OF KeyPurposeId ExtKeyUsageSyntax ::= SEQUENCE SIZE (1..MAX) OF KeyPurposeId
KeyPurposeId ::= OBJECT IDENTIFIER KeyPurposeId ::= OBJECT IDENTIFIER
Here we define two KeyPurposeId values, one for the WTP and one for Here we define two KeyPurposeId values, one for the WTP and one for
skipping to change at page 38, line 33 skipping to change at page 39, line 17
security(5) mechanisms(5) pkix(7) 3 } security(5) mechanisms(5) pkix(7) 3 }
id-kp-capwapAC OBJECT IDENTIFIER ::= { id-kp 18 } id-kp-capwapAC OBJECT IDENTIFIER ::= { id-kp 18 }
id-kp-capwapWTP OBJECT IDENTIFIER ::= { id-kp 19 } id-kp-capwapWTP OBJECT IDENTIFIER ::= { id-kp 19 }
All capwap devices MUST support the ExtendedKeyUsage certificate All capwap devices MUST support the ExtendedKeyUsage certificate
extension if it is present in a certificate. If the extension is extension if it is present in a certificate. If the extension is
present, then the certificate MUST have either the id-kp-capwapAC or present, then the certificate MUST have either the id-kp-capwapAC or
the id-kp-anyExtendedKeyUsage keyPurposeID to act as an AC. the id-kp-anyExtendedKeyUsage keyPurposeID to act as an AC.
Similarly, if the extension is present, a device must have the id-kp- Similarly, if the extension is present, a device MUST have the id-kp-
capwapWTP or id-kp-anyExtendedKeyUsage keyPurposeID to act as a WTP. capwapWTP or id-kp-anyExtendedKeyUsage keyPurposeID to act as a WTP.
Part of the CAPWAP certificate validation process includes ensuring Part of the CAPWAP certificate validation process includes ensuring
that the proper EKU is included and allowing the CAPWAP session to be that the proper EKU is included and allowing the CAPWAP session to be
established only if the extension properly represents the device. established only if the extension properly represents the device.
For instance, an AC SHOULD NOT accept a connection request from For instance, an AC SHOULD NOT accept a connection request from
another AC, and therefore MUST verify that the id-kp-capwapWTP EKU is another AC, and therefore MUST verify that the id-kp-capwapWTP EKU is
present in the certificate. present in the certificate.
CAPWAP implementations MUST support certificates where the common CAPWAP implementations MUST support certificates where the common
skipping to change at page 40, line 34 skipping to change at page 41, line 34
One of the CAPWAP protocol requirements is to allow a WTP to reside One of the CAPWAP protocol requirements is to allow a WTP to reside
behind a middlebox, firewall and/or Network Address Translation (NAT) behind a middlebox, firewall and/or Network Address Translation (NAT)
device. Since a CAPWAP session is initiated by the WTP (client) to device. Since a CAPWAP session is initiated by the WTP (client) to
the well-known UDP port of the AC (server), the use of UDP is a the well-known UDP port of the AC (server), the use of UDP is a
logical choice. The UDP checksum field in CAPWAP packets MUST be set logical choice. The UDP checksum field in CAPWAP packets MUST be set
to zero. to zero.
CAPWAP protocol control packets sent from the WTP to the AC use the CAPWAP protocol control packets sent from the WTP to the AC use the
CAPWAP control channel, as defined in Section 1.4. The CAPWAP CAPWAP control channel, as defined in Section 1.4. The CAPWAP
control port at the AC is the well known UDP port [to be IANA control port at the AC is the well known UDP port 5246. The CAPWAP
assigned]. The CAPWAP control port at the WTP can be any port control port at the WTP can be any port selected by the WTP.
selected by the WTP.
CAPWAP protocol data packets sent from the WTP to the AC use the CAPWAP protocol data packets sent from the WTP to the AC use the
CAPWAP data channel, as defined in Section 1.4. The CAPWAP data port CAPWAP data channel, as defined in Section 1.4. The CAPWAP data port
at the AC is the well known UDP port [to be IANA assigned]. The at the AC is the well known UDP port 5247. The CAPWAP data port at
CAPWAP data port at the WTP can be any port selected by the WTP. the WTP can be any port selected by the WTP.
3.2. UDP-Lite Transport 3.2. UDP-Lite Transport
When CAPWAP is run over IPv6, UDP-Lite is the default transport When CAPWAP is run over IPv6, UDP-Lite is the default transport
protocol, which reduces the checksum processing required for each protocol, which reduces the checksum processing required for each
packet (compared to the use of UDP over IPv6 [RFC1883]). When UDP- packet (compared to the use of UDP over IPv6 [RFC2460]). When UDP-
Lite is used, the checksum field MUST have a coverage of 8 [RFC3828]. Lite is used, the checksum field MUST have a coverage of 8 [RFC3828].
UDP-Lite uses the same port assignments as UDP. UDP-Lite uses the same port assignments as UDP.
3.3. AC Discovery 3.3. AC Discovery
The AC discovery phase allows the WTP to determine which ACs are The AC discovery phase allows the WTP to determine which ACs are
available, and chose the best AC with which to establish a CAPWAP available, and chose the best AC with which to establish a CAPWAP
session. The discovery phase occurs when the WTP enters the optional session. The discovery phase occurs when the WTP enters the optional
Discovery state. A WTP does not need to complete the AC Discovery Discovery state. A WTP does not need to complete the AC Discovery
skipping to change at page 41, line 40 skipping to change at page 42, line 40
WTP use of a limited IP broadcast, multicast or unicast IP address is WTP use of a limited IP broadcast, multicast or unicast IP address is
implementation dependent. implementation dependent.
When a WTP transmits a Discovery Request message to a unicast When a WTP transmits a Discovery Request message 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: See [I-D.calhoun-dhc-capwap-ac-option] for more information on DHCP: See [I-D.ietf-capwap-dhc-ac-option] for more information on
the use of DHCP to discover AC IP addresses. the use of DHCP to discover AC IP addresses.
DNS: The DNS name "CAPWAP-AC-Address" MAY be resolvable to one or DNS: The DNS name "CAPWAP-AC-Address" MAY be resolvable to one or
more AC addresses. more AC addresses.
An AC MAY also communicate alternative ACs to the WTP within the An AC MAY also communicate alternative ACs to the WTP within the
Discovery Response message through the AC IPv4 List (see Discovery Response message through the AC IPv4 List (see
Section 4.6.2) and AC IPv6 List (see Section 4.6.2). The addresses Section 4.6.2) and AC IPv6 List (see Section 4.6.2). The addresses
provided in these two message elements are intended to help the WTP provided in these two message elements are intended to help the WTP
discover additional ACs through means other than those listed above. discover additional ACs through means other than those listed above.
skipping to change at page 42, line 29 skipping to change at page 43, line 29
3.4. Fragmentation/Reassembly 3.4. Fragmentation/Reassembly
While fragmentation and reassembly services are provided by IP, the While fragmentation and reassembly services are provided by IP, the
CAPWAP protocol also provides such services. Environments where the CAPWAP protocol also provides such services. Environments where the
CAPWAP protocol is used involve firewall, NAT and "middle box" CAPWAP protocol is used involve firewall, NAT and "middle box"
devices, which tend to drop IP fragments to minimize possible DoS devices, which tend to drop IP fragments to minimize possible DoS
attacks. By providing fragmentation and reassembly at the attacks. By providing fragmentation and reassembly at the
application layer, any fragmentation required due to the tunneling application layer, any fragmentation required due to the tunneling
component of the CAPWAP protocol becomes transparent to these component of the CAPWAP protocol becomes transparent to these
intermediate devices. Consequently, the CAPWAP protocol can be used intermediate devices. Consequently, the CAPWAP protocol can be used
in any network configuration. in any network topology including firewall, NAT and middlebox
devices.
3.5. MTU Discovery 3.5. MTU Discovery
Once a WTP has discovered the AC it wishes to establish a CAPWAP Once a WTP has discovered the AC it wishes to establish a CAPWAP
session with, it SHOULD perform a Path MTU (PMTU) discovery. The MTU session with, it SHOULD perform a Path MTU (PMTU) discovery. The MTU
discovered is used to configure the DTLS component (see discovered is used to configure the DTLS component (see
Section 2.3.2.1), while non-DTLS frames need to be fragmented to fit Section 2.3.2.1), while non-DTLS frames need to be fragmented to fit
the MTU, defined in Section 3.4. The procedures described in the MTU, defined in Section 3.4. The procedures described in
[RFC1191], for IPv4, or [RFC1981], for IPv6 SHOULD be used. [RFC1191], for IPv4, or [RFC1981], for IPv6 SHOULD be used.
Alternatively, implementers MAY use the procedures defined in Alternatively, implementers MAY use the procedures defined in
skipping to change at page 45, line 12 skipping to change at page 46, line 12
CAPWAP message of length 4096 bytes. A CAPWAP implementation MAY CAPWAP message of length 4096 bytes. A CAPWAP implementation MAY
indicate that it supports a higher maximum message length, by indicate that it supports a higher maximum message length, by
including the Maximum Message Length message element, see including the Maximum Message Length message element, see
Section 4.6.32 in the Join Request message or the Join Response Section 4.6.32 in the Join Request message or the Join Response
message. message.
4.1. CAPWAP Preamble 4.1. CAPWAP Preamble
The CAPWAP preamble is common to all CAPWAP transport headers and is The CAPWAP preamble is common to all CAPWAP transport headers and is
used to identify the header type that immediately follows. The used to identify the header type that immediately follows. The
reason for this header is to avoid needing to perform byte reason for this preamble is to avoid needing to perform byte
comparisons in order to guess whether the frame is DTLS encrypted or comparisons in order to guess whether the frame is DTLS encrypted or
not. It also provides an extensibility framework that can be used to not. It also provides an extensibility framework that can be used to
support additional transport types. The format of the preamble is as support additional transport types. The format of the preamble is as
follows: follows:
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
|Version| Type | |Version| Type |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
skipping to change at page 47, line 19 skipping to change at page 48, line 19
RID: A 5 bit field which contains the Radio ID number for this RID: A 5 bit field which contains the Radio ID number for this
packet. Given that MAC Addresses are not necessarily unique packet. Given that MAC Addresses are not necessarily unique
across physical radios in a WTP, the Radio Identifier (RID) field across physical radios in a WTP, the Radio Identifier (RID) field
is used to indicate which physical radio the message is associated is used to indicate which physical radio the message is associated
with. with.
WBID: A 5 bit field which is the wireless binding identifier. The WBID: A 5 bit field which is the wireless binding identifier. The
identifier will indicate the type of wireless packet associated identifier will indicate the type of wireless packet associated
with the radio. The following values are defined: with the radio. The following values are defined:
0 - Reserved
1 - IEEE 802.11 1 - IEEE 802.11
2 - IEEE 802.16 2 - IEEE 802.16
3 - EPCGlobal 3 - EPCGlobal [EPCGlobal]
T: The Type 'T' bit indicates the format of the frame being T: The Type 'T' bit indicates the format of the frame being
transported in the payload. When this bit is set to one (1), the transported in the payload. When this bit is set to one (1), the
payload has the native frame format indicated by the WBID field. payload has the native frame format indicated by the WBID field.
When this bit is zero (0) the payload is an IEEE 802.3 frame. When this bit is zero (0) the payload is an IEEE 802.3 frame.
F: The Fragment 'F' bit indicates whether this packet is a fragment. F: 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.
skipping to change at page 48, line 37 skipping to change at page 49, line 37
units of 8 octets (64 bits). The first fragment has offset zero. units of 8 octets (64 bits). The first fragment has offset zero.
Note the CAPWAP protocol does not allow for overlapping fragments. Note the CAPWAP protocol does not allow for overlapping fragments.
Reserved: The 3-bit field is reserved for future use. All Reserved: The 3-bit field is reserved for future use. All
implementations complying with this protocol MUST set to zero any implementations complying with this protocol MUST set to zero any
bits that are reserved in the version of the protocol supported by bits that are reserved in the version of the protocol supported by
that implementation. Receivers MUST ignore all bits not defined that implementation. Receivers MUST ignore all bits not defined
for the version of the protocol they support. for the version of the protocol they support.
Radio MAC Address: This optional field contains the MAC address of Radio MAC Address: This optional field contains the MAC address of
the radio receiving the packet. This is useful in packets sent the radio receiving the packet. Because the native wireless frame
from the WTP to the AC, when the native wireless frame format is format to IEEE 802.3 format causes the MAC address of the WTP's
converted to 802.3 by the WTP. This field is only present if the radio to be lost, this field allows the address to be communicated
'M' bit is set. The HLEN field assumes 4 byte alignment, and this to the AC. This field is only present if the 'M' bit is set. The
field MUST be padded with zeroes (0x00) if it is not 4 byte HLEN field assumes 4 byte alignment, and this field MUST be padded
aligned. with zeroes (0x00) if it is not 4 byte aligned.
The field contains the basic format: The field contains the basic 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Length | MAC Address | Length | MAC Address
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Length: The length of the MAC Address field [EUI-48] [EUI-64]. Length: The length of the MAC Address field. The following
formats, and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: The MAC Address of the receiving radio. MAC Address: The MAC Address of the receiving radio.
Wireless Specific Information: This optional field contains Wireless Specific Information: This optional field contains
technology specific information that may be used to carry per technology specific information that may be used to carry per
packet wireless information. This field is only present if the packet wireless information. This field is only present if the
'W' bit is set. The WBID field in the CAPWAP header is used to 'W' bit is set. The WBID field in the CAPWAP header is used to
identify the format of the wireless specific information optional identify the format of the wireless specific information optional
field. The HLEN field assumes 4 byte alignment, and this field field. The HLEN field assumes 4 byte alignment, and this field
MUST be padded with zeroes (0x00) if it is not 4 byte aligned. MUST be padded with zeroes (0x00) if it is not 4 byte aligned.
The Wireless Specific Information field uses the following format: The Wireless Specific Information field uses 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Length | Data... | Length | Data...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Length: The length of the data field Length: The 8 bit field contains the length of the data field,
with a maximum size of 255.
Data: Wireless specific information, defined by the wireless Data: Wireless specific information, defined by the wireless
specific binding specified in the CAPWAP Header's WBID field. specific binding specified in the CAPWAP Header's WBID field.
Payload: This field contains the header for a CAPWAP Data Message or Payload: This field contains the header for a CAPWAP Data Message or
CAPWAP Control Message, followed by the data contained in the CAPWAP Control Message, followed by the data contained in the
message. message.
4.4. CAPWAP Data Messages 4.4. CAPWAP Data Messages
There are two different types of CAPWAP data packets, CAPWAP Data There are two different types of CAPWAP data packets, CAPWAP Data
Channel Keep Alive packets and Data Payload packets. The first is Channel Keep Alive packets and Data Payload packets. The first is
used by the WTP to synchronize the control and data channels, and to used by the WTP to synchronize the control and data channels, and to
maintain freshness of the data channel. The second is used to maintain freshness of the data channel. The second is used to
transmit user payloads between the AC and WTP. This section transmit user payloads between the AC and WTP. This section
describes both types of CAPWAP data packet formats. describes both types of CAPWAP data packet formats.
Both CAPWAP data messages are transmitted on the CAPWAP data channel. Both CAPWAP data messages are transmitted on the CAPWAP data channel.
4.4.1. CAPWAP Data Keepalive 4.4.1. CAPWAP Data Channel Keepalive
The CAPWAP Data Channel Keep Alive packet is used to bind the CAPWAP The CAPWAP Data Channel Keep Alive packet is used to bind the CAPWAP
control channel with the data channel, and to maintain freshness of control channel with the data channel, and to maintain freshness of
the data channel, ensuring that the channel is still functioning. the data channel, ensuring that the channel is still functioning.
The CAPWAP Data Channel Keep Alive packet is transmitted by the WTP The CAPWAP Data Channel Keep Alive packet is transmitted by the WTP
when the DataChannelKeepAlive timer expires. When the CAPWAP Data when the DataChannelKeepAlive timer expires (see Section 4.7.2).
Channel Keep Alive packet is transmitted, the WTP sets the When the CAPWAP Data Channel Keep Alive packet is transmitted, the
DataChannelDeadInterval timer. WTP sets the DataChannelDeadInterval timer.
In the CAPWAP Data Channel Keep Alive packet, all of the fields in In the CAPWAP Data Channel Keep Alive packet, all of the fields in
the CAPWAP header, except the HLEN field and the K bit, are set to the CAPWAP header, except the HLEN field and the K bit, are set to
zero upon transmission. Upon receiving a CAPWAP Data Channel Keep zero upon transmission. Upon receiving a CAPWAP Data Channel Keep
Alive packet, the AC transmits a CAPWAP Data Channel Keep Alive Alive packet, the AC transmits a CAPWAP Data Channel Keep Alive
packet back to the WTP. The contents of the transmitted packet are packet back to the WTP. The contents of the transmitted packet are
identical to the contents of the received packet. identical to the contents of the received packet.
Upon receiving a CAPWAP Data Channel Keep Alive packet, the WTP Upon receiving a CAPWAP Data Channel Keep Alive packet, the WTP
cancels the DataChannelDeadInterval timer and resets the cancels the DataChannelDeadInterval timer and resets the
skipping to change at page 50, line 30 skipping to change at page 51, line 32
The CAPWAP Data Channel Keep Alive packet contains the following The CAPWAP Data Channel Keep Alive packet contains the following
payload immediately following the CAPWAP Header (see Section 4.3) payload immediately following the CAPWAP Header (see Section 4.3)
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 Element Length | Message Element [0..N] ... | Message Element Length | Message Element [0..N] ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Message Element Length: The Length field indicates the number of Message Element Length: The 8 bit Length field indicates the number
bytes following the CAPWAP Header. of bytes following the CAPWAP Header, with a maximum size of
65535.
Message Element[0..N]: The message element(s) carry the information Message Element[0..N]: The message element(s) carry the information
pertinent to each of the CAPWAP Data Keepalive message. The pertinent to each of the CAPWAP Data Channel Keepalive message.
following message elements MUST be present in this CAPWAP message: The following message elements MUST be present in this CAPWAP
message:
Session ID, see Section 4.6.37 Session ID, see Section 4.6.37
4.4.2. Data Payload 4.4.2. Data Payload
A CAPWAP protocol Data Payload packet encapsulates a forwarded A CAPWAP protocol Data Payload packet encapsulates a forwarded
wireless frame. The CAPWAP protocol defines two different modes of wireless frame. The CAPWAP protocol defines two different modes of
encapsulation; IEEE 802.3 and native wireless. IEEE 802.3 encapsulation; IEEE 802.3 and native wireless. IEEE 802.3
encapsulation requires that for 802.11 frames, the 802.11 encapsulation requires that for 802.11 frames, the 802.11
*Integration* function be performed in the WTP. An IEEE 802.3 *Integration* function be performed in the WTP. An IEEE 802.3
skipping to change at page 51, line 14 skipping to change at page 52, line 19
The CAPWAP protocol also defines the native wireless encapsulation The CAPWAP protocol also defines the native wireless encapsulation
mode. The format of the encapsulated CAPWAP data frame is subject to mode. The format of the encapsulated CAPWAP data frame is subject to
the rules defined by the specific wireless technology binding. Each the rules defined by the specific wireless technology binding. Each
wireless technology binding MUST contain a section entitled "Payload wireless technology binding MUST contain a section entitled "Payload
Encapsulation", which defines the format of the wireless payload that Encapsulation", which defines the format of the wireless payload that
is encapsulated within CAPWAP Data packets. is encapsulated within CAPWAP Data packets.
For 802.3 payload frames, the 802.3 frame is encapsulated (excluding For 802.3 payload frames, the 802.3 frame is encapsulated (excluding
the IEEE 802.3 FCS checksum). If the encapsulated frame would exceed the IEEE 802.3 FCS checksum). If the encapsulated frame would exceed
the transport layer's MTU, the sender is responsible for the transport layer's MTU, the sender is responsible for
fragmentation of the frame, as specified in Section 3.4. fragmentation of the frame, as specified in Section 3.4. The CAPWAP
protocol can support IEEE 802.3 frames whose length is defined in the
IEEE 802.3as specification [FRAME-EXT].
4.4.3. Establishment of a DTLS Data Channel 4.4.3. Establishment of a DTLS Data Channel
If the AC and WTP are configured to tunnel the data channel over If the AC and WTP are configured to tunnel the data channel over
DTLS, the proper DTLS session must be initiated. To avoid having to DTLS, the proper DTLS session must be initiated. To avoid having to
reauthenticate and reauthorize an AC and WTP, the DTLS data channel reauthenticate and reauthorize an AC and WTP, the DTLS data channel
MUST be initiated using the TLS session resumption feature [RFC4346]. MUST be initiated using the TLS session resumption feature [RFC4346].
When establishing the DTLS-encrypted data channel, the WTP MUST When establishing the DTLS-encrypted data channel, the WTP MUST
provide the identifier returned during the initialization of the provide the identifier returned during the initialization of the
skipping to change at page 52, line 46 skipping to change at page 54, line 8
| Message Type | | Message Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Seq Num | Msg Element Length | Flags | | Seq Num | Msg Element Length | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Msg Element [0..N] ... | Msg Element [0..N] ...
+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+
4.5.1.1. Message Type 4.5.1.1. Message Type
The Message Type field identifies the function of the CAPWAP control The Message Type field identifies the function of the CAPWAP control
message. The Message Type field is comprised of an IANA Enterprise message. To provide extensibility, the Message Type field is
Number and an enterprise specific message type number. The first comprised of an IANA Enterprise Number [RFC3232] and an enterprise
three octets contain the enterprise number in network byte order, specific message type number. The first three octets contain the
with zero used for CAPWAP protocol defined message types and the IEEE IANA Enterprise Number in network byte order, with zero used for
802.11 IANA assigned enterprise number 13277 is used for IEEE 802.11 CAPWAP base protocol (this specification) defined message types. The
technology specific message types. The last octet is the enterprise last octet is the enterprise specific message type number, which has
specific message type number, which has a range from 0 to 255. a range from 0 to 255.
The message type field is defined as: The message type field is defined as:
Message Type = Message Type =
IANA Enterprise Number * 256 + IANA Enterprise Number * 256 +
Enterprise Specific Message Type Number Enterprise Specific Message Type Number
The CAPWAP protocol reliability mechanism requires that messages be The CAPWAP protocol reliability mechanism requires that messages be
defined in pairs, consisting of both a Request and a Response defined in pairs, consisting of both a Request and a Response
message. The Response message MUST acknowledge the Request message. message. The Response message MUST acknowledge the Request message.
skipping to change at page 55, line 40 skipping to change at page 56, line 40
unrecognized message element(s). unrecognized message element(s).
4.5.2. Control Message Quality of Service 4.5.2. Control Message Quality of Service
It is recommended that CAPWAP control messages be sent by both the AC It is recommended that CAPWAP 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 occurrences of ensuring that congestion in the network minimizes occurrences of
CAPWAP control channel disconnects. Therefore, a Quality of Service CAPWAP control channel disconnects. Therefore, a Quality of Service
enabled CAPWAP device SHOULD use the following values: enabled CAPWAP device SHOULD use the following values:
802.1P: The precedence value of 7 SHOULD be used. 802.1Q: The priority tag of 7 SHOULD be used.
DSCP: The DSCP tag value of 46 SHOULD be used. DSCP: The DSCP value of 46 SHOULD be used.
4.5.3. Retransmissions 4.5.3. Retransmissions
The CAPWAP control protocol operates as a reliable transport. For The CAPWAP control protocol operates as a reliable transport. For
each Request message, a Response message is defined, which is used to each Request message, a Response message is defined, which is used to
acknowledge receipt of the Request message. In addition, the control acknowledge receipt of the Request message. In addition, the control
header Sequence Number field is used to pair the Request and Response header Sequence Number field is used to pair the Request and Response
messages (see Section 4.5.1). messages (see Section 4.5.1).
Response messages are not explicitly acknowledged, therefore if a Response messages are not explicitly acknowledged, therefore if a
skipping to change at page 56, line 51 skipping to change at page 57, line 51
field, defined below. The total length of the message elements is field, defined below. The total length of the message elements is
indicated in the message element Length field. indicated in the message 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 to similar to the one below in order to depict its format. Note that to
simplify this specification, these diagrams do not include the header simplify this specification, these diagrams do not include the header
fields (Type and Length). The header field values are defined in the fields (Type and Length). The header field values are defined in the
message element descriptions. message element descriptions.
Unless otherwise specified, a control message that lists a set of Unless otherwise specified, a control message that lists a set of
supported (or expected) message elements MUST not expect the message supported (or expected) message elements MUST NOT expect the message
elements to be in any specific order. The sender MAY include the elements to be in any specific order. The sender MAY include the
message elements in any order. Unless otherwise noted, one message message elements in any order. Unless otherwise noted, one message
element of each type is present in a given control message. element of each type is present in a given control message.
Unless otherwise specified, any configuration information sent by the
AC to the WTP MAY be saved to non-volatile storage (see Section 8.1)
for more information).
Additional message elements may be defined in separate IETF 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 57, line 49 skipping to change at page 59, line 5
AC IPv4 List 2 AC IPv4 List 2
AC IPv6 List 3 AC IPv6 List 3
AC Name 4 AC Name 4
AC Name with Index 5 AC Name with Index 5
AC Timestamp 6 AC Timestamp 6
Add MAC ACL Entry 7 Add MAC ACL Entry 7
Add Station 8 Add Station 8
Add Static MAC ACL Entry 9 Add Static MAC ACL Entry 9
CAPWAP Control IPV4 Address 10 CAPWAP Control IPV4 Address 10
CAPWAP Control IPV6 Address 11 CAPWAP Control IPV6 Address 11
CAPWAP Local IPV4 Address TBD CAPWAP Local IPV4 Address 12
CAPWAP Local IPV6 Address TBD CAPWAP Local IPV6 Address 13
CAPWAP Timers 12 CAPWAP Timers 14
CAPWAP Transport Protocol TBD CAPWAP Transport Protocol 15
Data Transfer Data 13 Data Transfer Data 16
Data Transfer Mode 14 Data Transfer Mode 17
Decryption Error Report 15 Decryption Error Report 18
Decryption Error Report Period 16 Decryption Error Report Period 19
Delete MAC ACL Entry 17 Delete MAC ACL Entry 20
Delete Station 18 Delete Station 21
Delete Static MAC ACL Entry 19 Delete Static MAC ACL Entry 22
Discovery Type 20 Discovery Type 23
Duplicate IPv4 Address 21 Duplicate IPv4 Address 24
Duplicate IPv6 Address 22 Duplicate IPv6 Address 25
Idle Timeout 23 Idle Timeout 26
Image Data 24 Image Data 27
Image Identifier 25 Image Identifier 28
Image Info 26 Image Info 29
Initiate Download 27 Initiate Download 30
Location Data 28 Location Data 31
Maximum Message Length 29 Maximum Message Length 32
Radio Administrative State 31 Radio Administrative State 33
Radio Operational State 32 Radio Operational State 34
Result Code 33 Result Code 35
Returned Message Element 34 Returned Message Element 36
Session ID 35 Session ID 37
Statistics Timer 36 Statistics Timer 38
Vendor Specific Payload 37 Vendor Specific Payload 39
WTP Board Data 38 WTP Board Data 40
WTP Descriptor 39 WTP Descriptor 41
WTP Fallback 40 WTP Fallback 42
WTP Frame Tunnel Mode 41 WTP Frame Tunnel Mode 43
WTP IPv4 IP Address 42 WTP IPv4 IP Address 44
WTP IPv6 IP Address 43 WTP IPv6 IP Address 45
WTP MAC Type 44 WTP MAC Type 46
WTP Name 45 WTP Name 47
WTP Operational Statistics 46 Unused/Reserved 48
WTP Radio Statistics 47 WTP Radio Statistics 49
WTP Reboot Statistics 48 WTP Reboot Statistics 50
WTP Static IP Address Information 49 WTP Static IP Address Information 51
4.6.1. AC Descriptor 4.6.1. AC Descriptor
The AC Descriptor message element is used by the AC to communicate The AC Descriptor message element is used by the AC to communicate
its 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Stations | Limit | | Stations | Limit |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Active WTPs | Max WTPs | | Active WTPs | Max WTPs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Security | R-MAC Field | Reserved1 | DTLS Policy | | Security | R-MAC Field | Reserved1 | DTLS Policy |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier | | AC Information Sub-Element...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=4 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=5 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 1 for AC Descriptor Type: 1 for AC Descriptor
Length: >= 12 Length: >= 12
Stations: The number of stations currently served by the AC Stations: The number of stations currently served by the AC
Limit: The maximum number of stations supported by the AC Limit: The maximum number of stations supported by the AC
skipping to change at page 60, line 21 skipping to change at page 61, line 9
DTLS Policy: The AC communicates its policy on the use of DTLS for DTLS Policy: The AC communicates its policy on the use of DTLS for
the CAPWAP data channel. The AC MAY communicate more than one the CAPWAP data channel. The AC MAY communicate more than one
supported option, represented by the bit field below. The WTP supported option, represented by the bit field below. The WTP
MUST abide by one of the options communicated by AC. The MUST abide by one of the options communicated by AC. The
following bit field values are supported: following bit field values are supported:
1 - Clear Text Data Channel Supported 1 - Clear Text Data Channel Supported
2 - DTLS Enabled Data Channel Supported 2 - DTLS Enabled Data Channel Supported
Vendor Identifier: A 32-bit value containing the IANA assigned "SMI AC Information Sub-Element: The AC Descriptor message element
Network Management Private Enterprise Codes" contains multiple AC Information sub-elements, and defines two
sub-types, each of which MUST be present. The AC Information sub-
element has the following format:
Type: Vendor specific encoding of AC information. The following 0 1 2 3
values are supported. The Hardware and Software Version values 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
MUST be included. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC Information Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC Information Type | AC Information Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC Information Data...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
AC Information Vendor Identifier: A 32-bit value containing the
IANA assigned "SMI Network Management Private Enterprise Codes"
AC Information Type: Vendor specific encoding of AC information.
The following enumerated values are supported. Both the
Hardware and Software Version sub-elements MUST be included in
the AC Descriptor message element.
4 - Hardware Version: The AC's hardware version number. 4 - Hardware Version: The AC's hardware version number.
5 - Software Version: The AC's Software (firmware) version 5 - Software Version: The AC's Software (firmware) version
number. number.
Length: Length of vendor specific encoding of AC information. AC Information Length: Length of vendor specific encoding of AC
information, with a maximum size of 1024.
Value: Vendor specific encoding of AC information. AC Information Data: Vendor specific encoding of AC information.
4.6.2. AC IPv4 List 4.6.2. AC IPv4 List
The AC IPv4 List message element is used to configure a WTP with the The AC IPv4 List message element is used to configure a WTP with the
latest list of ACs available for the WTP to join. latest list of ACs available for the WTP to join.
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: 2 for AC IPv4 List Type: 2 for AC IPv4 List
Length: >= 4 Length: >= 4
The AC IP Address: An array of 32-bit integers containing AC IPv4 AC IP Address: An array of 32-bit integers containing AC IPv4
Addresses. Addresses, containing no more than 1024 addresses.
4.6.3. AC IPv6 List 4.6.3. AC IPv6 List
The AC IPv6 List message element is used to configure a WTP with the The AC IPv6 List message element is used to configure a WTP with the
latest list of ACs available for the WTP to join. latest list of ACs available for the WTP to join.
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[] |
skipping to change at page 61, line 32 skipping to change at page 62, line 32
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC IP Address[] | | AC IP Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AC IP Address[] | | AC IP Address[] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 3 for AC IPV6 List Type: 3 for AC IPV6 List
Length: >= 16 Length: >= 16
The AC IP Address: An array of 128-bit integers containing AC IPv6 AC IP Address: An array of 128-bit integers containing AC IPv6
Addresses. Addresses, containing no more than 1024 addresses.
4.6.4. AC Name 4.6.4. AC Name
The AC Name message element contains an UTF-8 representation of the The AC Name message element contains an UTF-8 representation of the
AC identity. The value is a variable length byte string. The string AC identity. The value is a variable length byte string. The string
is NOT zero terminated. 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: 4 for AC Name Type: 4 for AC Name
Length: > 0 Length: >= 1
Name: A variable length UTF-8 encoded string containing the AC's Name: A variable length UTF-8 encoded string containing the AC's
name name, whose maximum size MUST NOT exceed 512 bytes.
4.6.5. AC Name with Index 4.6.5. 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 of this message to configure preferred ACs. The number of instances of this message
element is equal to the number of ACs configured on the WTP. element is equal to the number of ACs 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: 5 for AC Name with Index Type: 5 for AC Name with Index
Length: > 2 Length: >= 2
Index: The index of the preferred server (1=primary, 2=secondary). Index: The index of the preferred server (1=primary, 2=secondary).
AC Name: A variable length UTF-8 encoded string containing the AC AC Name: A variable length UTF-8 encoded string containing the AC
name. name, whose maximum size MUST NOT exceed 512 bytes.
4.6.6. AC Timestamp 4.6.6. AC Timestamp
The AC Timestamp message element is sent by the AC to synchronize the The AC Timestamp message element is sent by the AC to synchronize the
WTP clock. WTP clock.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Timestamp | | Timestamp |
skipping to change at page 63, line 24 skipping to change at page 64, line 24
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| Length | MAC Address ... | Num of Entries| Length | MAC Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 7 for Add MAC ACL Entry Type: 7 for Add MAC ACL Entry
Length: >= 8 Length: >= 8
Num of Entries: The number of instances of the Type/MAC Addresses Num of Entries: The number of instances of the Type/MAC Addresses
fields in the array. fields in the array. This value MUST NOT exceed 255.
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: MAC Addresses to add to the ACL. MAC Address: MAC Addresses to add to the ACL.
4.6.8. Add Station 4.6.8. Add Station
The Add Station message element is used by the AC to inform a WTP The Add Station message element is used by the AC to inform a WTP
that it should forward traffic for a station. The Add Station that it should forward traffic for a station. The Add Station
message element is accompanied by technology specific binding message element is accompanied by technology specific binding
information element(s) which may include security parameters. information element(s) which may include security parameters.
Consequently, the security parameters MUST be applied by the WTP for Consequently, the security parameters MUST be applied by the WTP for
skipping to change at page 64, line 10 skipping to change at page 65, line 10
| Radio ID | Length | MAC Address ... | Radio ID | Length | MAC Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VLAN Name... | VLAN Name...
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 8 for Add Station Type: 8 for Add Station
Length: >= 8 Length: >= 8
Radio ID: An 8-bit value representing the radio Radio ID: An 8-bit value representing the radio
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: The station's MAC Address MAC Address: The station's MAC Address
VLAN Name: An optional variable length UTF-8 encoded string VLAN Name: An optional variable length UTF-8 encoded string, with a
containing the VLAN Name on which the WTP is to locally bridge maximum length of 512 octets, containing the VLAN Name on which
user data. Note this field is only valid with WTPs configured in the WTP is to locally bridge user data. Note this field is only
Local MAC mode. valid with WTPs configured in Local MAC mode.
4.6.9. Add Static MAC ACL Entry 4.6.9. Add Static MAC ACL Entry
The Add Static MAC ACL Entry message element is used by an AC to add The Add Static MAC ACL Entry message element is used by an AC to add
a permanent ACL entry on a WTP, ensuring that the WTP no longer a permanent ACL entry on a WTP, ensuring that the WTP no longer
provides any service to the MAC addresses provided in the message. provides any service to the MAC addresses provided in the message.
The MAC Addresses provided in this message element are expected to be The MAC Addresses provided in this message element are expected to be
saved in non-volatile memory on the WTP. saved in non-volatile 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| Length | MAC Address ... | Num of Entries| Length | MAC Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 9 for Add Static MAC ACL Entry Type: 9 for Add Static MAC ACL Entry
Length: >= 8 Length: >= 8
Num of Entries: The number of instances of the Type/MAC Addresses Num of Entries: The number of instances of the Type/MAC Addresses
fields in the array. fields in the array. This value MUST NOT exceed 255.
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: MAC Addresses to add to the permanent ACL. MAC Address: MAC Addresses to add to the permanent ACL.
4.6.10. CAPWAP Control IPv4 Address 4.6.10. CAPWAP Control IPv4 Address
The CAPWAP Control IPv4 Address message element is sent by the AC to The CAPWAP Control IPv4 Address message element is sent by the AC to
the WTP during the discovery process and is used by the AC to provide the WTP during the discovery process and is used by the AC to provide
the interfaces available on the AC, and the current number of WTPs the interfaces available on the AC, and the current number of WTPs
connected. When multiple CAPWAP Control IPV4 Address message connected. When multiple CAPWAP Control IPV4 Address message
elements are returned, the WTP SHOULD perform load balancing across elements are returned, the WTP SHOULD perform load balancing across
skipping to change at page 65, line 19 skipping to change at page 66, line 21
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP Count | | WTP Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 10 for CAPWAP Control IPv4 Address Type: 10 for CAPWAP 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,
with a maximum value of 65535.
4.6.11. CAPWAP Control IPv6 Address 4.6.11. CAPWAP Control IPv6 Address
The CAPWAP Control IPv6 Address message element is sent by the AC to The CAPWAP Control IPv6 Address message element is sent by the AC to
the WTP during the discovery process and is used by the AC to provide the WTP during the discovery process and is used by the AC to provide
the interfaces available on the AC, and the current number of WTPs the interfaces available on the AC, and the current number of WTPs
connected. This message element is useful for the WTP to perform connected. This message element is useful for the WTP to perform
load balancing across multiple interfaces. load balancing across multiple interfaces.
0 1 2 3 0 1 2 3
skipping to change at page 65, line 46 skipping to change at page 67, line 4
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP Count | | WTP Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 11 for CAPWAP Control IPv6 Address Type: 11 for CAPWAP Control IPv6 Address
Length: 18 Length: 18
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,
with a maximum value of 65535.
4.6.12. CAPWAP Local IPv4 Address 4.6.12. CAPWAP Local IPv4 Address
The CAPWAP Local IPv4 Address message element is sent by either the The CAPWAP Local IPv4 Address message element is sent by either the
WTP or the AC in the Join Request, Configuration Status Request or WTP or the AC in the Join Request, Configuration Status Request or
Image Data Request message in order to communicate the IP Address of Image Data Request message in order to communicate the IP Address of
the transmitter. The receiver uses this to determine whether a the transmitter. The receiver uses this to determine whether a
middlebox exists between the two peers, by comparing the source IP middlebox exists between the two peers, by comparing the source IP
address of the packet against the value of the message element. address of the packet against the value of the message element.
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: TBD for CAPWAP Local IPv4 Address Type: 12 for CAPWAP Local IPv4 Address
Length: 4 Length: 4
IP Address: The IP Address of the sender. IP Address: The IP Address of the sender.
4.6.13. CAPWAP Local IPv6 Address 4.6.13. CAPWAP Local IPv6 Address
The CAPWAP Local IPv6 Address message element is sent by either the The CAPWAP Local IPv6 Address message element is sent by either the
WTP or the AC in the Discovery Response or Join Request in order to WTP or the AC in the Discovery Response or Join Request in order to
communicate the IP Address of the transmitter. The receiver uses communicate the IP Address of the transmitter. The receiver uses
skipping to change at page 66, line 46 skipping to change at page 68, line 4
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: 13 for CAPWAP Local IPv6 Address
Type: TBD for CAPWAP Local IPv6 Address
Length: 16 Length: 16
IP Address: The IP Address of the sender. IP Address: The IP Address of the sender.
4.6.14. CAPWAP Timers 4.6.14. CAPWAP Timers
The CAPWAP Timers message element is used by an AC to configure The CAPWAP Timers message element is used by an AC to configure
CAPWAP timers on a WTP. CAPWAP 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 67, line 17 skipping to change at page 68, line 21
The CAPWAP Timers message element is used by an AC to configure The CAPWAP Timers message element is used by an AC to configure
CAPWAP timers on a WTP. CAPWAP 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: 12 for CAPWAP Timers Type: 14 for CAPWAP Timers
Length: 2 Length: 2
Discovery: The number of seconds between CAPWAP Discovery messages, Discovery: The number of seconds between CAPWAP Discovery messages,
when the WTP is in the discovery phase. when the WTP is in the discovery phase. This value is used to
configure the MaxDiscoveryInterval timer (see Section 4.7.10).
Echo Request: The number of seconds between WTP Echo Request CAPWAP Echo Request: The number of seconds between WTP Echo Request CAPWAP
messages. The default value for this message element is specified messages. This value is used to configure the EchoInterval timer
in Section 4.7.7. (see Section 4.7.7). The AC sets its EchoInterval timer to this
value, plus the maximum retransmission time as described in
Section 4.5.3.
4.6.15. CAPWAP Transport Protocol 4.6.15. CAPWAP Transport Protocol
When CAPWAP is run over IPv6, the UDP-Lite or UDP transports MAY be When CAPWAP is run over IPv6, the UDP-Lite or UDP transports MAY be
used (see Section 3). The CAPWAP IPv6 Transport Protocol message used (see Section 3). The CAPWAP IPv6 Transport Protocol message
element is used by either the WTP or the AC to signal which transport element is used by either the WTP or the AC to signal which transport
protocol is to be used for the CAPWAP data channel. protocol is to be used for the CAPWAP data channel.
Upon receiving the Join Request, the AC MAY set the CAPWAP Transport Upon receiving the Join Request, the AC MAY set the CAPWAP Transport
Protocol to UDP-Lite in the Configuration Status Request or Image Protocol to UDP-Lite in the Configuration Status Request or Image
skipping to change at page 68, line 11 skipping to change at page 69, line 17
For any other condition, the CAPWAP Transport Protocol MUST be set to For any other condition, the CAPWAP Transport Protocol MUST be set to
UDP. UDP.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Transport | | Transport |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: TBD for CAPWAP Transport Protocol Type: 15 for CAPWAP Transport Protocol
Length: 1 Length: 1
Transport: The transport to use for the CAPWAP data channel. Transport: The transport to use for the CAPWAP data channel. The
following enumerated values are supported:
1 - UDP-Lite The UDP-Lite transport protocol is to be used for 1 - UDP-Lite: The UDP-Lite transport protocol is to be used for
the CAPWAP data channel. Note that this option is illegal is the CAPWAP data channel. Note that this option is illegal is
either the WTP or the AC uses IPv4. either the WTP or the AC uses IPv4.
2 - UDP The UDP transport protocol is to be used for the CAPWAP 2 - UDP: The UDP transport protocol is to be used for the CAPWAP
data channel. data channel.
4.6.16. Data Transfer Data 4.6.16. 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 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 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 Mode | Data Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data ....
+-+-+-+-+-+-+-+-+
Type: 13 for Data Transfer Data Type: 16 for Data Transfer Data
Length: >= 3 Length: >= 5
Data Type: An 8-bit value the type of information being sent. The Data Type: An 8-bit value representing the transfer Data Type. The
following values are supported: following enumerated values are supported:
1 - Transfer data is included
2 - Last Transfer Data Block is included (EOF)
5 - An error occurred. Transfer is aborted
Data Mode: An 8-bit value the type of information being
transmitted. The following enumerated values are supported:
0 - Reserved
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, with a maximum size of 65535.
Data: Debug information. Data: Data being transferred from the WTP to the AC, whose type is
identified via the Data Mode field.
4.6.17. Data Transfer Mode 4.6.17. Data Transfer Mode
The Data Transfer Mode message element is used by the WTP to indicate The Data Transfer Mode message element is used by the WTP to indicate
the type of data transfer information it is sending to the AC for the type of data transfer information it is sending to the AC for
debugging purposes. debugging purposes.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Data Type | | Data Mode |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 14 for Data Transfer Mode Type: 17 for Data Transfer Mode
Length: 1 Length: 1
Data Type: An 8-bit value the type of information being requested. Data Mode: An 8-bit value the type of information being requested.
The following values are supported: The following enumerated values are supported:
0 - Reserved
1 - WTP Crash Data 1 - WTP Crash Data
2 - WTP Memory Dump 2 - WTP Memory Dump
4.6.18. Decryption Error Report 4.6.18. 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 occurred since the to inform the AC of decryption errors that have occurred since the
last report. Note that this error reporting mechanism is not used if last report. Note that this error reporting mechanism is not used if
encryption and decryption services are provided in the AC. encryption and decryption services are provided in the AC.
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 | Length | MAC Address... | Radio ID |Num Of Entries | Length | MAC Address...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 15 for Decryption Error Report Type: 18 for Decryption Error Report
Length: >= 9 Length: >= 9
Radio ID: The Radio Identifier refers to an interface index on the Radio ID: The Radio Identifier refers to an interface index on the
WTP. WTP.
Num of Entries: The number of instances of the Type/MAC Addresses Num of Entries: The number of instances of the Type/MAC Addresses
fields in the array. fields in the array. This field MUST NOT exceed the value of 255.
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: MAC addresses of the station that has caused MAC Address: MAC addresses of the station that has caused
decryption errors. decryption errors.
4.6.19. Decryption Error Report Period 4.6.19. 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 how frequently it should send decryption
error report messages. Note that this error reporting mechanism is error report messages. Note that this error reporting mechanism is
not used if encryption and decryption services are provided in the not used if encryption and decryption services are provided in the
AC. AC.
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: 16 for Decryption Error Report Period Type: 19 for Decryption Error Report Period
Length: 3 Length: 3
Radio ID: The Radio Identifier refers to an interface index on the Radio ID: The Radio Identifier refers to an interface index on the
WTP. WTP.
Report Interval: A 16-bit unsigned integer indicating the time, in Report Interval: A 16-bit unsigned integer indicating the time, in
seconds. The default value for this message element can be found seconds. The default value for this message element can be found
in Section 4.8.8. in Section 4.7.11.
4.6.20. Delete MAC ACL Entry 4.6.20. Delete MAC ACL Entry
The Delete MAC ACL Entry message element is used by an AC to delete a The Delete MAC ACL Entry message element is used by an AC to delete a
MAC ACL entry on a WTP, ensuring that the WTP provides service to the MAC ACL entry on a WTP, ensuring that the WTP provides service to the
MAC addresses provided in the message. 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| Length | MAC Address ... | Num of Entries| Length | MAC Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 17 for Delete MAC ACL Entry Type: 20 for Delete MAC ACL Entry
Length: >= 8 Length: >= 8
Num of Entries: The number of instances of the Type/MAC Addresses Num of Entries: The number of instances of the Type/MAC Addresses
fields in the array. fields in the array. This field MUST NOT exceed the value of 255.
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: An array of MAC Addresses to delete from the ACL. MAC Address: An array of MAC Addresses to delete from the ACL.
4.6.21. Delete Station 4.6.21. Delete Station
The Delete Station message element is used by the AC to inform a WTP The Delete Station message element is used by the AC to inform a WTP
that it should no longer provide service to a particular station. that it should no longer provide service to a particular station.
The WTP MUST terminate service to the station immediately upon The WTP MUST terminate service to the station immediately upon
receiving this message element. receiving this message element.
skipping to change at page 71, line 34 skipping to change at page 73, line 12
no longer being provided service. This could occur as a result of an no longer being provided service. This could occur as a result of an
Idle Timeout (see section 4.4.43), due to internal resource shortages Idle Timeout (see section 4.4.43), due to internal resource shortages
or for some other reason. or for some other reason.
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 | Length | MAC Address... | Radio ID | Length | MAC Address...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 18 for Delete Station Type: 21 for Delete Station
Length: >= 8 Length: >= 8
Radio ID: An 8-bit value representing the radio Radio ID: An 8-bit value representing the radio
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: The station's MAC Address MAC Address: The station's MAC Address
4.6.22. Delete Static MAC ACL Entry 4.6.22. Delete Static MAC ACL Entry
The Delete Static MAC ACL Entry message element is used by an AC to The Delete Static MAC ACL Entry message element is used by an AC to
delete a previously added static MAC ACL entry on a WTP, ensuring delete a previously added static MAC ACL 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| Length | MAC Address ... | Num of Entries| Length | MAC Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 19 for Delete Static MAC ACL Entry Type: 22 for Delete Static MAC ACL Entry
Length: >= 8 Length: >= 8
Num of Entries: The number of instances of the Type/MAC Addresses Num of Entries: The number of instances of the Type/MAC Addresses
fields in the array. fields in the array. This field MUST NOT exceed the value of
1024.
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: An array of MAC Addresses to delete from the static MAC Address: An array of MAC Addresses to delete from the static
MAC ACL entry. MAC ACL entry.
4.6.23. Discovery Type 4.6.23. Discovery Type
The Discovery Type message element is used by the WTP to indicate how The Discovery Type message element is used by the WTP to indicate how
it has come to know about the existence of the AC to which it is it has come to know about the existence of the AC to which it is
sending the Discovery Request message. sending the Discovery Request message.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Discovery Type| | Discovery Type|
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 20 for Discovery Type Type: 23 for Discovery Type
Length: 1 Length: 1
Discovery Type: An 8-bit value indicating how the WTP discovered Discovery Type: An 8-bit value indicating how the WTP discovered
the AC. The following values are supported: the AC. The following enumerated values are supported:
0 - Unknown 0 - Unknown
1 - Static Configuration 1 - Static Configuration
2 - DHCP 2 - DHCP
3 - DNS 3 - DNS
4 - AC Referral (used when the AC was configured either through 4 - AC Referral (used when the AC was configured either through
the AC IPv4 List or AC IPv6 List message element) the AC IPv4 List or AC IPv6 List message element)
4.6.24. Duplicate IPv4 Address 4.6.24. Duplicate IPv4 Address
The Duplicate IPv4 Address message element is used by a WTP to inform The Duplicate IPv4 Address message element is used by a WTP to inform
an AC that it has detected another IP device using the same IP an AC that it has detected another IP device using the same IP
address that the WTP is currently using. address that the WTP is currently using.
The WTP MUST transmit this message element with the status set to 1 The WTP MUST transmit this message element with the status set to 1
skipping to change at page 73, line 25 skipping to change at page 75, line 4
that the duplicate IP address has been cleared, it MUSY send this that the duplicate IP address has been cleared, it MUSY send this
message element with the status set to 0. message element with the status set to 0.
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status | Length | MAC Address ... | Status | Length | MAC Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 24 for Duplicate IPv4 Address
Type: 21 for Duplicate IPv4 Address
Length: >= 12 Length: >= 12
IP Address: The IP Address currently used by the WTP. IP Address: The IP Address currently used by the WTP.
Status: The status of the duplicate IP address. The value MUST be Status: The status of the duplicate IP address. The value MUST be
set to 1 when a duplicate address is detected, and 0 when the set to 1 when a duplicate address is detected, and 0 when the
duplicate address has been cleared. duplicate address has been cleared.
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: The MAC Address of the offending device. MAC Address: The MAC Address of the offending device.
4.6.25. Duplicate IPv6 Address 4.6.25. Duplicate IPv6 Address
The Duplicate IPv6 Address message element is used by a WTP to inform The Duplicate IPv6 Address message element is used by a WTP to inform
an AC that it has detected another host using the same IP address an AC that it has detected another host using the same IP address
that the WTP is currently using. that the WTP is currently using.
The WTP MUST transmit this message element with the status set to 1 The WTP MUST transmit this message element with the status set to 1
skipping to change at page 74, line 19 skipping to change at page 75, line 44
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address | | IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status | Length | MAC Address ... | Status | Length | MAC Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 23 for Duplicate IPv6 Address Type: 25 for Duplicate IPv6 Address
Length: >= 24 Length: >= 24
IP Address: The IP Address currently used by the WTP. IP Address: The IP Address currently used by the WTP.
Status: The status of the duplicate IP address. The value MUST be Status: The status of the duplicate IP address. The value MUST be
set to 1 when a duplicate address is detected, and 0 when the set to 1 when a duplicate address is detected, and 0 when the
duplicate address has been cleared. duplicate address has been cleared.
Length: The length of the MAC Address field. Length: The length of the MAC Address field. The following formats,
and lengths, are supported [EUI-48] and [EUI-64].
MAC Address: The MAC Address of the offending device. MAC Address: The MAC Address of the offending device.
4.6.26. Idle Timeout 4.6.26. 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 the idle timeout value that the WTP SHOULD enforce for its provide the idle timeout value that the WTP SHOULD enforce for its
active stations. The value applies to all radios on the WTP. active stations. The value applies to all radios 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Timeout | | Timeout |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 23 for Idle Timeout Type: 26 for Idle Timeout
Length: 4 Length: 4
Timeout: The current idle timeout to be enforced by the WTP. The Timeout: The current idle timeout, in seconds, to be enforced by
default value for this message element is specified in the WTP. The default value for this message element is specified
Section 4.8.5. in Section 4.7.8.
4.6.27. Image Data 4.6.27. Image Data
The Image Data message element is present in the Image Data Request The Image Data message element is present in the Image Data Request
message sent by the AC and contains the following fields. message sent by the AC and 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 | Value ... | Data Type | Data ....
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 24 for Image Data Type: 27 for Image Data
Length: >= 1 Length: >= 1
Opcode: An 8-bit value representing the transfer opcode. The Data Type: An 8-bit value representing the image Data Type. The
following values are supported: following enumerated values are supported:
1 - Image data is included 1 - Image data is included
2 - Last Image Data Block is included (EOF) 2 - Last Image Data Block is included (EOF)
5 - An error occurred. Transfer is aborted 5 - An error occurred. Transfer is aborted
Value: The Image Data field contains up to 1024 characters. If the Data: The Image Data field contains up to 1024 characters, and its
block being sent is the last one, the Opcode is set to 2. The AC length is inferred from this message element's length field. If
MAY opt to abort the data transfer by setting the Opcode to 5. the block being sent is the last one, the Opcode is set to 2. The
AC MAY opt to abort the data transfer by setting the Opcode to 5.
When the Opcode is 5, the Value field has a zero length. When the Opcode is 5, the Value field has a zero length.
4.6.28. Image Identifier 4.6.28. Image Identifier
The Image Identifier message element is sent by the AC to the WTP and The Image Identifier message element is sent by the AC to the WTP and
is used to indicate the expected active software version that is to is used to indicate the expected active software version that is to
be run on the WTP. The value is a variable length UTF-8 encoded be run on the WTP. The value is a variable length UTF-8 encoded
string, which is NOT zero terminated. string, which is NOT zero terminated.
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value... | Data...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 25 for Image Identifier
Type: 28 for Image Identifier
Length: >= 1 Length: >= 1
Value: A variable length UTF-8 encoded string containing the Data Length: Length of data field, with a maximum size of 65535.
firmware identifier to be run on the WTP.
Data: A variable length UTF-8 encoded string containing the
firmware identifier to be run on the WTP, whose length MUST NOT
exceed 1024 octets. The length of this field is inferred from
this message element's length field.
4.6.29. Image Information 4.6.29. Image Information
The Image Information message element is present in the Image Data The Image Information message element is present in the Image Data
Response message sent by the AC to the WTP and contains the following Response message sent by the AC to the WTP and contains the following
fields. 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 76, line 31 skipping to change at page 78, line 19
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Hash | | Hash |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Hash | | Hash |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Hash | | Hash |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Hash | | Hash |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 26 for Image Information Type: 29 for Image Information
Length: 18 Length: 20
File Size: A 32-bit value containing the size of the file, in File Size: A 32-bit value containing the size of the file, in
bytes, that will be transferred by the AC to the WTP. bytes, that will be transferred by the AC to the WTP.
Hash: A 16 octet hash of the image. The hash is computed using Hash: A 16 octet hash of the image. The hash is computed using
MD5, using the following pseudo-code: MD5, using the following pseudo-code:
#include <md5.h> #include <md5.h>
CapwapCreateHash(char *hash, char *image, int image_len) CapwapCreateHash(char *hash, char *image, int image_len)
{ {
skipping to change at page 77, line 13 skipping to change at page 78, line 47
} }
4.6.30. Initiate Download 4.6.30. Initiate Download
The Initiate Download message element is used by the AC to inform the The Initiate Download message element is used by the AC to inform the
WTP that the WTP SHOULD initiate a firmware upgrade. The WTP WTP that the WTP SHOULD initiate a firmware upgrade. The WTP
subsequently transmits an Image Data Request message which includes subsequently transmits an Image Data Request message which includes
the Image Download message element. This message element does not the Image Download message element. This message element does not
contain any data. contain any data.
Type: 27 for Initiate Download Type: 30 for Initiate Download
Length: 0 Length: 0
4.6.31. Location Data 4.6.31. Location Data
The Location Data message element is a variable length byte UTF-8 The Location Data message element is a variable length byte UTF-8
encoded string containing user defined location information (e.g. encoded string containing user defined location information (e.g.
"Next to Fridge"). This information is configurable by the network "Next to Fridge"). This information is configurable by the network
administrator, and allows the WTP location to be determined. The administrator, and allows the WTP location to be determined. 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
+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-
| Location ... | Location ...
+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-
Type: 28 for Location Data Type: 31 for Location Data
Length: > 0 Length: >= 1
Location: A non-zero terminated UTF-8 encoded string containing the Location: A non-zero terminated UTF-8 encoded string containing the
WTP location. WTP location, whose maximum size MUST NOT exceed 1024.
4.6.32. Maximum Message Length 4.6.32. Maximum Message Length
The Maximum Message Length message element is included in the Join The Maximum Message Length message element is included in the Join
Request message by the WTP to indicate the maximum CAPWAP message Request message by the WTP to indicate the maximum CAPWAP message
length that it supports to the AC. The Maximum Message Length length that it supports to the AC. The Maximum Message Length
message element is optionally included in Join Response message by message element is optionally included in Join Response message by
the AC to indicate the maximum CAPWAP message length that it supports the AC to indicate the maximum CAPWAP message length that it supports
to the WTP. to the WTP.
0 1 2 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Maximum Message Length | | Maximum Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 29 for Maximum Message Length
Type: 32 for Maximum Message Length
Length: 2 Length: 2
Maximum Message Length An 16-bit unsigned integer indicating the Maximum Message Length An 16-bit unsigned integer indicating the
maximum message length. maximum message length.
4.6.33. Radio Administrative State 4.6.33. Radio Administrative State
The Radio Administrative State message element is used to communicate The Radio Administrative State message element is used to communicate
the state of a particular radio. The Radio Administrative State the state of a particular radio. The Radio Administrative State
skipping to change at page 78, line 28 skipping to change at page 80, line 22
phase, in the Configuration Status Request message, to ensure that AC phase, in the Configuration Status Request message, to ensure that AC
has the WTP radio current administrative state settings. The message has the WTP radio current administrative state settings. The message
element contains the following fields. element contains the following 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: 31 for Radio Administrative State Type: 33 for Radio 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. If an AC wishes to change the administrative to identify the WTP. If an AC wishes to change the administrative
state of a WTP, it includes 0xff in the Radio ID field. state of a WTP, it includes 0xff in the 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 default value for the Admin State field is of the radio. The default value for the Admin State field is
listed in Section 4.8.1. The following values are supported: listed in Section 4.8.1. The following enumerated values are
supported:
0 - Reserved
1 - Enabled 1 - Enabled
2 - Disabled 2 - Disabled
4.6.34. Radio Operational State 4.6.34. Radio Operational State
The Radio Operational State message element is sent by the WTP to the The Radio Operational State message element is sent by the WTP to the
AC to communicate a radio's operational state. This message element AC to communicate a radio's operational state. This message element
is included in the Configuration Update Response message by the WTP is included in the Configuration Update Response message by the WTP
skipping to change at page 79, line 16 skipping to change at page 81, line 12
occur due to a hardware failure. Note that the operational state occur due to a hardware failure. Note that the operational state
setting is not saved on the WTP, and therefore does not remain across setting is not saved on the WTP, and therefore does not remain across
WTP resets. The value contains three fields, as shown below. WTP resets. The value contains three fields, as shown below.
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 | State | Cause | | Radio ID | State | Cause |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 32 for Radio Operational State Type: 34 for Radio Operational State
Length: 3 Length: 3
Radio ID: The Radio Identifier refers to an interface index on the Radio ID: The Radio Identifier refers to an interface index on the
WTP. A value of 0xFF is invalid, as it is not possible to change WTP. A value of 0xFF is invalid, as it is not possible to change
the WTP's operational state. the WTP's operational state.
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 The following enumerated values are supported:
it.
0 - Reserved
1 - Enabled
2 - Disabled
Cause: When a radio is inoperable, the cause field contains the Cause: When a radio is inoperable, the cause field contains the
reason the radio is out of service. The following values are reason the radio is out of service. The following enumerated
supported: values are supported:
0 - Normal 0 - Normal
1 - Radio Failure 1 - Radio Failure
2 - Software Failure 2 - Software Failure
3 - Administratively Set 3 - Administratively Set
4.6.35. Result Code 4.6.35. 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 message corresponding to the indicating the result of the Request message corresponding to the
Sequence Number included in the Response message. Sequence Number included in the Response 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Result Code | | Result Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 33 for Result Code Type: 35 for Result Code
Length: 4 Length: 4
Result Code: The following values are defined: Result Code: The following enumerated 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)
2 Success (NAT detected) 2 Success (NAT detected)
3 Join Failure (unspecified) 3 Join Failure (unspecified)
4 Join Failure (Resource Depletion) 4 Join Failure (Resource Depletion)
skipping to change at page 81, line 10 skipping to change at page 83, line 10
17 Image Data Error (Image Already Present) 17 Image Data Error (Image Already Present)
18 Message Unexpected (Invalid in current state) 18 Message Unexpected (Invalid in current state)
19 Message Unexpected (Unrecognized Request) 19 Message Unexpected (Unrecognized Request)
20 Failure - Missing Mandatory Message Element 20 Failure - Missing Mandatory Message Element
21 Failure - Unrecognized Message Element 21 Failure - Unrecognized Message Element
22 Data Transfer Error (No Information to Transfer)
4.6.36. Returned Message Element 4.6.36. Returned Message Element
The Returned Message Element is sent by the WTP in the Change State The Returned Message Element is sent by the WTP in the Change State
Event Request message to communicate to the AC which message elements Event Request message to communicate to the AC which message elements
in the Configuration Status Response it was unable to apply locally. in the Configuration Status Response it was unable to apply locally.
The Returned Message Element message element contains a result code The Returned Message Element message element contains a result code
indicating the reason that the configuration could not be applied, indicating the reason that the configuration could not be applied,
and encapsulates the failed message element. and encapsulates the failed message element.
0 1 2 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reason | Message Element... | Reason | Length | Message Element...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 34 for Returned Message Element Type: 36 for Returned Message Element
Length: >= 1 Length: >= 6
Reason: The reason why the configuration in the offending message Reason: The reason why the configuration in the offending message
element could not be applied by the WTP. element could not be applied by the WTP. The following enumerated
values are supported:
0 - Reserved
1 - Unknown Message Element 1 - Unknown Message Element
2 - Unsupported Message Element 2 - Unsupported Message Element
3 - Unknown Message Element Value 3 - Unknown Message Element Value
4 - Unsupported Message Element Value 4 - Unsupported Message Element Value
Length: The length of the Message Element field, which MUST NOT
exceed 65535 octets.
Message Element: The Message Element field encapsulates the message Message Element: The Message Element field encapsulates the message
element sent by the AC in the Configuration Status Response element sent by the AC in the Configuration Status Response
message that caused the error. message that caused the error.
4.6.37. Session ID 4.6.37. Session ID
The Session ID message element value contains a randomly generated The Session ID message element value contains a randomly generated
unsigned 32-bit integer. 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: 35 for Session ID Type: 37 for Session ID
Length: 16 Length: 4
Session ID: A 32-bit unsigned integer used as a random session Session ID: A 32-bit unsigned integer used as a random session
identifier identifier
4.6.38. Statistics Timer 4.6.38. 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 with which it expects to receive inform the WTP of the frequency with which it expects to receive
updated statistics. updated 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: 36 for Statistics Timer Type: 38 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. The default value for this timer is specified in seconds. The default value for this timer is specified in
Section 4.7.14. Section 4.7.14.
4.6.39. Vendor Specific Payload 4.6.39. Vendor Specific Payload
The Vendor Specific Payload message element is used to communicate The Vendor Specific Payload message element is used to communicate
vendor specific information between the WTP and the AC. The Vendor vendor specific information between the WTP and the AC. The Vendor
Specific Payload message element MAY be present in any CAPWAP Specific Payload message element MAY be present in any CAPWAP
message. The message element uses the following format: message. The message element uses 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier | | Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Element ID | Value... | | Element ID | Data...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 37 for Vendor Specific
Type: 39 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" [RFC3232] Network Management Private Enterprise Codes" [RFC3232]
Element ID: A 16-bit Element Identifier which is managed by the Element ID: A 16-bit Element Identifier which is managed by the
vendor. vendor.
Value: The value associated with the vendor specific element. Data: Variable length vendor specific information, whose contents
and format are proprietary and understood based on the Element ID
field. This field MUST NOT exceed 2048 octets.
4.6.40. WTP Board Data 4.6.40. 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier | | Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=0 | Length | | Board Data Sub-Element...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=1 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional additional vendor specific WTP board data TLVs.....
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 38 for WTP Board Data Type: 40 for WTP Board Data
Length: >=14 Length: >=14
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" Network Management Private Enterprise Codes"
Type: The following values are supported: Board Data Sub-Element: The WTP Board Data message element contains
multiple Board Data sub-elements, some of which are mandatory and
some are optional, as described below. The Board Data sub-element
has the following format:
0 - WTP Model Number: The WTP Model Number MUST be included in 0 1 2 3
the WTP Board Data message element. 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Board Data Type | Board Data Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Board Data Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
1 - WTP Serial Number: The WTP Serial Number MUST be included in Board Data Type: The Board Data Type field identifies the data
the WTP Board Data message element. being encoded. The CAPWAP protocol defines the following
values, and each of these types identify whether their presence
is mandatory or optional:
0 - WTP Model Number: The WTP Model Number MUST be included
in the WTP Board Data message element.
1 - WTP Serial Number: The WTP Serial Number MUST be included
in the WTP Board Data message element.
2 - Board ID: A hardware identifier, which MAY be included in 2 - Board ID: A hardware identifier, which MAY be included in
the WTP Board Data message element. the WTP Board Data message element.
3 - Board Revision A revision number of the board, which MAY be 3 - Board Revision A revision number of the board, which MAY
included in the WTP Board Data message element. be included in the WTP Board Data message element.
4 - Base MAC Address The WTP's Base MAC Address, which MAY be 4 - Base MAC Address The WTP's Base MAC Address, which MAY be
assigned to the primary Ethernet interface. assigned to the primary Ethernet interface.
Board Data Length: The length of the data in the Board Data
Value field, whose length MUST NOT exceed 1024 octets.
Board Data Value: The data associated with the Board Data Type
field for this Board Data sub-element.
4.6.41. WTP Descriptor 4.6.41. WTP Descriptor
The WTP Descriptor message element is used by a WTP to communicate The WTP Descriptor message element is used by a WTP to communicate
its current hardware and software (firmware) configuration. The its current hardware and software (firmware) configuration. The
value contains the following fields. 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Max Radios | Radios in use | Encryption Capabilities | | Max Radios | Radios in use | Encryption Capabilities |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier | | Descriptor Sub-Element...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=0 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=1 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=2 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=3 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 39 for WTP Descriptor Type: 41 for WTP Descriptor
Length: >= 31 Length: >= 31
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 Radio ID field) supported by the each radio is identified via the Radio ID field) supported by the
WTP. WTP.
Radios in use: An 8-bit value representing the number of radios in Radios in use: An 8-bit value representing the number of radios in
use in the WTP. use 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 its capabilities to the AC. A WTP that does not have communicate its capabilities to the AC. A WTP that does not have
any encryption capabilities sets this field to zero (0). Refer to any encryption capabilities sets this field to zero (0). Refer to
the specific wireless binding for further specification of the the specific wireless binding for further specification of the
Encryption Capabilities field. Encryption Capabilities field.
Vendor Identifier: A 32-bit value containing the IANA assigned "SMI Descriptor Sub-Element: The WTP Descriptor message element contains
Network Management Private Enterprise Codes". multiple Descriptor sub-elements, some of which are mandatory and
some are optional, as described below. The Descriptor sub-element
has the following format:
Type: The following values are supported. The Hardware Version, 0 1 2 3
Active Software Version, and Boot Version values MUST be included. 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
Zero or more Other Software Version values MAY be included. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Descriptor Vendor Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Descriptor Type | Descriptor Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Descriptor Data...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0 - Hardware Version: The WTP hardware version number. Descriptor Vendor Identifier: A 32-bit value containing the IANA
assigned "SMI Network Management Private Enterprise Codes".
Descriptor Type: The Descriptor Type field identifies the data
being encoded. The CAPWAP protocol defines the following
values, and each of these types identify whether their presence
is mandatory or optional:
0 - Hardware Version: The WTP hardware version number MUST be
present.
1 - Active Software Version: The WTP running software version 1 - Active Software Version: The WTP running software version
number. number MUST be present.
2 - Boot Version: The WTP boot loader version number. 2 - Boot Version: The WTP boot loader version number MUST be
present.
3 - Other Software Version: The WTP non-running software 3 - Other Software Version: The WTP non-running software
(firmware) version number. (firmware) version number MAY be present. This type is used
to communicate alternate software versions that are
available on the WTP's non-volatile storage.
Length: Length of vendor specific encoding of WTP information. Descriptor Length: Length of vendor specific encoding of
Descriptor Data field, whose length MUST NOT exceed 1024
octets.
Value: Vendor specific data of WTP information encoded in the UTF-8 Descriptor Data: Vendor specific data of WTP information encoded
format. in the UTF-8 format.
4.6.42. WTP Fallback 4.6.42. 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 CAPWAP fallback in the event that a WTP enable or disable automatic CAPWAP 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: 40 for WTP Fallback Type: 42 for WTP Fallback
Length: 1 Length: 1
Mode: The 8-bit value indicates the status of automatic CAPWAP Mode: The 8-bit value indicates the status of automatic CAPWAP
fallback on the WTP. When enabled, if the WTP detects that its fallback on the WTP. When enabled, if the WTP detects that its
primary AC is available, and that the WTP is not connected to the primary AC is available, and that the WTP is not connected to the
primary AC, the WTP SHOULD automatically disconnect from its primary AC, the WTP SHOULD automatically disconnect from its
current AC and reconnect to its primary AC. If disabled, the WTP current AC and reconnect to its primary AC. If disabled, the WTP
will only reconnect to its primary AC through manual intervention will only reconnect to its primary AC through manual intervention
(e.g., through the Reset Request message). The default value for (e.g., through the Reset Request message). The default value for
this field is specified in Section 4.8.10. The following values this field is specified in Section 4.8.9. The following
are supported: enumerated values are supported:
1 - Enabled 0 - Reserved
1 - Enabled
2 - Disabled 2 - Disabled
4.6.43. WTP Frame Tunnel Mode 4.6.43. WTP Frame Tunnel Mode
The WTP Frame Tunnel Mode message element allows the WTP to The WTP Frame Tunnel Mode message element allows the WTP to
communicate the tunneling modes of operation which it supports to the communicate the tunneling modes of operation which it supports to the
AC. A WTP that advertises support for all types allows the AC to AC. A WTP that advertises support for all types allows the AC to
select which type will be used, based on its local policy. select which type will be used, based on its local policy.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Tunnel Mode | | Tunnel Mode |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 41 for WTP Frame Tunnel Mode Type: 43 for WTP Frame Tunnel Mode
Length: 1 Length: 1
Frame Tunnel Mode: The Frame Tunnel mode specifies the tunneling Frame Tunnel Mode: The Frame Tunnel mode specifies the tunneling
modes for station data that are supported by the WTP. The modes for station data that are supported by the WTP. The
following values are supported: following values are supported for this bit field:
1 - Local Bridging: When Local Bridging is used, the WTP does 1 - Local Bridging: When Local Bridging is used, the WTP does
not tunnel user traffic to the AC; all user traffic is locally not tunnel user traffic to the AC; all user traffic is locally
bridged. This value MUST NOT be used when the WTP MAC Type is bridged. This value MUST NOT be used when the WTP MAC Type is
set to Split-MAC. set to Split-MAC.
2 - 802.3 Frame Tunnel Mode: The 802.3 Frame Tunnel Mode 2 - 802.3 Frame Tunnel Mode: The 802.3 Frame Tunnel Mode
requires the WTP and AC to encapsulate all user payload as requires the WTP and AC to encapsulate all user payload as
native IEEE 802.3 frames (see Section 4.4). All user traffic native IEEE 802.3 frames (see Section 4.4). All user traffic
is tunneled to the AC. This value MUST NOT be used when the is tunneled to the AC. This value MUST NOT be used when the
skipping to change at page 87, line 34 skipping to change at page 90, line 11
4.6.44. WTP IPv4 IP Address 4.6.44. WTP IPv4 IP Address
The WTP IPv4 address is used to perform NAT detection. The WTP IPv4 address is used to perform NAT detection.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP IPv4 IP Address | | WTP IPv4 IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 42 for WTP IPv4 IP Address Type: 44 for WTP IPv4 IP Address
Length: 4 Length: 4
WTP IPv4 IP Address: The IPv4 address from which the WTP is sending WTP IPv4 IP Address: The IPv4 address from which the WTP is sending
packets. This field is used for NAT detection. packets. This field is used for NAT detection.
4.6.45. WTP IPv6 IP Address 4.6.45. WTP IPv6 IP Address
The WTP IPv6 address is used to perform NAT detection (e.g., IPv4 to The WTP IPv6 address is used to perform NAT detection (e.g., IPv4 to
IPv6 NAT to help with technology transition). IPv6 NAT to help with technology transition).
skipping to change at page 88, line 17 skipping to change at page 90, line 35
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP IPv6 IP Address | | WTP IPv6 IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP IPv6 IP Address | | WTP IPv6 IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP IPv6 IP Address | | WTP IPv6 IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| WTP IPv6 IP Address | | WTP IPv6 IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 43 for WTP IPv6 IP Address Type: 45 for WTP IPv6 IP Address
Length: 32 Length: 32
WTP IPv6 IP Address: The IPv6 address from which the WTP is sending WTP IPv6 IP Address: The IPv6 address from which the WTP is sending
packets. This field is used for NAT detection. packets. This field is used for NAT detection.
4.6.46. WTP MAC Type 4.6.46. WTP MAC Type
The WTP MAC-Type message element allows the WTP to communicate its The WTP MAC-Type message element allows the WTP to communicate its
mode of operation to the AC. A WTP that advertises support for both mode of operation to the AC. A WTP that advertises support for both
modes allows the AC to select the mode to use, based on local policy. modes allows the AC to select the mode to use, based on local policy.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| MAC Type | | MAC Type |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Type: 44 for WTP MAC Type Type: 46 for WTP MAC Type
Length: 1 Length: 1
MAC Type: The MAC mode of operation supported by the WTP. The MAC Type: The MAC mode of operation supported by the WTP. The
following values are supported following enumerated values are supported:
0 - Local-MAC: Local-MAC is the default mode that MUST be 0 - Local-MAC: Local-MAC is the default mode that MUST be
supported by all WTPs. supported by all WTPs.
1 - Split-MAC: Split-MAC support is optional, and allows the AC 1 - Split-MAC: Split-MAC support is optional, and allows the AC
to receive and process native wireless frames. to receive and process native wireless frames.
2 - Both: WTP is capable of supporting both Local-MAC and Split- 2 - Both: WTP is capable of supporting both Local-MAC and Split-
MAC. MAC.
skipping to change at page 89, line 19 skipping to change at page 91, line 38
The WTP Name message element is a variable length byte UTF-8 encoded The WTP Name message element is a variable length byte UTF-8 encoded
string. The string is not zero terminated. string. The string is not zero terminated.
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-
| WTP Name ... | WTP Name ...
+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-
Type: 45 for WTP Name Type: 47 for WTP Name
Length: variable Length: >= 1
WTP Name: A non-zero terminated UTF-8 encoded string containing the WTP Name: A non-zero terminated UTF-8 encoded string containing the
WTP name. WTP name, whose maximum size MUST NOT exceed 512 bytes.
4.6.48. WTP Operational Statistics
The WTP Operational Statistics message element is sent by the WTP to
the AC to provide statistics related to the operation of the WTP.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Radio ID | Tx Queue Level | Wireless Link Frames per Sec |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 46 for WTP Operational Statistics
Length: 4
Radio ID: The radio ID of the radio to which the statistics apply.
Wireless Transmit Queue Level: The percentage of Wireless Transmit
queue utilization, calculated as the sum of utilized transmit
queue lengths divided by the sum of maximum transmit queue
lengths, multiplied by 100. The Wireless Transmit Queue Level is
representative of congestion conditions over wireless interfaces
between the WTP and stations.
Wireless Link Frames per Sec: The number of frames transmitted or
received per second by the WTP over the air interface.
4.6.49. WTP Radio Statistics 4.6.48. WTP Radio Statistics
The WTP Radio Statistics message element is sent by the WTP to the AC The WTP Radio Statistics message element is sent by the WTP to the AC
to communicate statistics on radio behavior and reasons why the WTP to communicate statistics on radio behavior and reasons why the WTP
radio has been reset. radio has been reset. These counters are never reset on the WTP, and
will therefore roll over to zero when the maximum size has been
reached.
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 | Last Fail Type| Reset Count | | Radio ID | Last Fail Type| Reset Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SW Failure Count | HW Failure Count | | SW Failure Count | HW Failure Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Other Failure Count | Unknown Failure Count | | Other Failure Count | Unknown Failure Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Config Update Count | Channel Change Count | | Config Update Count | Channel Change Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Band Change Count | Current Noise Floor | | Band Change Count | Current Noise Floor |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 47 for WTP Radio Statistics Type: 49 for WTP Radio Statistics
Length: 20 Length: 20
Radio ID: The radio ID of the radio to which the statistics apply. Radio ID: The radio ID of the radio to which the statistics apply.
Last Failure Type: The last WTP failure. The following values are Last Failure Type: The last WTP failure. The following enumerated
supported: values are supported:
0 - Statistic Not Supported 0 - Statistic Not Supported
1 - Software Failure 1 - Software Failure
2 - Hardware Failure 2 - Hardware Failure
3 - Other Failure 3 - Other Failure
255 - Unknown (e.g., WTP doesn't keep track of info) 255 - Unknown (e.g., WTP doesn't keep track of info)
skipping to change at page 91, line 29 skipping to change at page 93, line 20
Channel Change Count: The number of times that the radio channel Channel Change Count: The number of times that the radio channel
has been changed. has been changed.
Band Change Count: The number of times that the radio has changed Band Change Count: The number of times that the radio has changed
frequency bands. frequency bands.
Current Noise Floor: A signed integer which indicates the noise Current Noise Floor: A signed integer which indicates the noise
floor of the radio receiver in units of dBm. floor of the radio receiver in units of dBm.
4.6.50. WTP Reboot Statistics 4.6.49. 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 reasons why WTP reboots have occurred. AC to communicate reasons why WTP reboots have occurred. These
counters are never reset on the WTP, and will therefore roll over to
zero when the maximum size has been reached.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reboot Count | AC Initiated Count | | Reboot Count | AC Initiated Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Failure Count | SW Failure Count | | Link Failure Count | SW Failure Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| HW Failure Count | Other Failure Count | | HW Failure Count | Other Failure Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unknown Failure Count |Last Failure Type| | Unknown Failure Count |Last Failure Type|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 48 for WTP Reboot Statistics Type: 50 for WTP Reboot Statistics
Length: 15 Length: 15
Reboot Count: The number of reboots that have occurred due to a WTP Reboot Count: The number of reboots that have occurred due to a WTP
crash. A value of 65535 implies that this information is not crash. A value of 65535 implies that this information is not
available on the WTP. available on the WTP.
AC Initiated Count: The number of reboots that have occurred at the AC Initiated Count: The number of reboots that have occurred at the
request of a CAPWAP protocol message, such as a change in request of a CAPWAP protocol message, such as a change in
configuration that required a reboot or an explicit CAPWAP configuration that required a reboot or an explicit CAPWAP
protocol reset request. A value of 65535 implies that this protocol reset request. A value of 65535 implies that this
information is not available on the WTP. information is not available on the WTP.
skipping to change at page 92, line 31 skipping to change at page 94, line 22
connection with an AC has failed due to hardware related reasons. connection with an AC has failed due to hardware related reasons.
Other Failure Count: The number of times that a CAPWAP protocol Other Failure Count: The number of times that a CAPWAP protocol
connection with an AC has failed due to known reasons, other than connection with an AC has failed due to known reasons, other than
AC initiated, link, SW or HW failure. AC initiated, link, SW or HW failure.
Unknown Failure Count: The number of times that a CAPWAP protocol Unknown Failure Count: The number of times that a CAPWAP protocol
connection with an AC has failed for unknown reasons. connection with an AC has failed for unknown reasons.
Last Failure Type: The failure type of the most recent WTP failure. Last Failure Type: The failure type of the most recent WTP failure.
The following values are supported: The following enumerated values are supported:
0 - Not Supported 0 - Not Supported
1 - AC Initiated (see Section 9.2) 1 - AC Initiated (see Section 9.2)
2 - Link Failure 2 - Link Failure
3 - Software Failure 3 - Software Failure
4 - Hardware Failure 4 - Hardware Failure
5 - Other Failure 5 - Other Failure
255 - Unknown (e.g., WTP doesn't keep track of info) 255 - Unknown (e.g., WTP doesn't keep track of info)
4.6.51. WTP Static IP Address Information 4.6.50. 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
a 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: 49 for WTP Static IP Address Information Type: 51 for WTP Static IP Address Information
Length: 13 Length: 13
IP Address: The IP Address to assign to the WTP. This field is IP Address: The IP Address to assign to the WTP. This field is
only valid if the static field is set to one. only valid if the static field is set to one.
Netmask: The IP Netmask. This field is only valid if the static Netmask: The IP Netmask. This field is only valid if the static
field is set to one. field is set to one.
Gateway: The IP address of the gateway. This field is only valid Gateway: The IP address of the gateway. This field is only valid
skipping to change at page 93, line 39 skipping to change at page 95, line 39
Netmask: The IP Netmask. This field is only valid if the static Netmask: The IP Netmask. This field is only valid if the static
field is set to one. field is set to one.
Static: An 8-bit boolean stating whether the WTP should use a Static: An 8-bit boolean stating whether the WTP should use a
static IP address or not. A value of zero disables the static IP static IP address or not. A value of zero disables the static IP
address, while a value of one enables it. address, while a value of one enables it.
4.7. CAPWAP Protocol Timers 4.7. CAPWAP Protocol Timers
This section contains the CAPWAP timers. This section contains the definition of the CAPWAP timers.
4.7.1. ChangeStatePendingTimer 4.7.1. ChangeStatePendingTimer
The maximum time, in seconds, the AC will wait for the Change State The maximum time, in seconds, the AC will wait for the Change State
Event Request from the WTP after having transmitted a successful Event Request from the WTP after having transmitted a successful
Configuration Status Response message. The default value is 25 Configuration Status Response message.
seconds.
Default: 25 seconds
4.7.2. DataChannelKeepAlive 4.7.2. DataChannelKeepAlive
The DataChannelKeepAlive timer is used by the WTP to determine the The DataChannelKeepAlive timer is used by the WTP to determine the
next opportunity when it must transmit the Data Channel KeepAlive. next opportunity when it must transmit the Data Channel KeepAlive, in
seconds.
Default: 30 Default: 30 seconds
4.7.3. DataChannelDeadInterval 4.7.3. DataChannelDeadInterval
The minimum time, in seconds, a WTP MUST wait without having received The minimum time, in seconds, a WTP MUST wait without having received
a Data Channel Keep Alive packet before the destination for the Data a Data Channel Keep Alive packet before the destination for the Data
Channel Keep Alive packets may be considered dead. The value of this Channel Keep Alive packets may be considered dead. The value of this
timer MUST be no less than 2*DataChannelKeepAlive seconds and no timer MUST be no less than 2*DataChannelKeepAlive seconds and no
greater that 240 seconds. greater that 240 seconds.
Default: 5 Default: 60
4.7.4. DataCheckTimer 4.7.4. DataCheckTimer
The number of seconds the AC will wait for the Data Channel Keep The number of seconds the AC will wait for the Data Channel Keep
Alive, which is required by the CAPWAP state machine's Data Check Alive, which is required by the CAPWAP state machine's Data Check
state. The AC resets the state machine if this timer expires prior state. The AC resets the state machine if this timer expires prior
to transitioning to the next state. to transitioning to the next state.
Default: 30 Default: 30
skipping to change at page 94, line 47 skipping to change at page 96, line 48
Default: 5 Default: 5
4.7.7. EchoInterval 4.7.7. EchoInterval
The minimum time, in seconds, between sending Echo Request messages The minimum time, in seconds, between sending Echo Request messages
to the AC with which the WTP has joined. to the AC with which the WTP has joined.
Default: 30 Default: 30
4.7.8. ImageDataStartTimer 4.7.8. IdleTimeout
The number of seconds the AC will wait for the WTP to initiate the The default Idle Timeout is 300 seconds.
Image Data process.
4.7.9. ImageDataStartTimer
The number of seconds the AC or WTP will wait for its peer to
transmit the Image Data Request.
Default: 30 Default: 30
4.7.9. MaxDiscoveryInterval 4.7.10. MaxDiscoveryInterval
The maximum time allowed between sending Discovery Request messages, The maximum time allowed between sending Discovery Request messages,
in seconds. This value MUST be no less than 2 seconds and no greater in seconds. This value MUST be no less than 2 seconds and no greater
than 180 seconds. than 180 seconds.
Default: 20 seconds. Default: 20 seconds.
4.7.10. MaxFailedDTLSSessionRetry 4.7.11. ReportInterval
The maximum number of failed DTLS session establishment attempts
before the CAPWAP device enters a silent period.
Default: 3.
4.7.11. ResponseTimeout
The minimum time, in seconds, in which the WTP or AC MUST respond to The ReportInterval is used by the WTP to determine the interval the
a CAPWAP Request message. WTP uses between sending the Decryption Error message elements to the
AC to decryption errors, in seconds.
Default: 1 The default Report Interval is 120 seconds.
4.7.12. RetransmitInterval 4.7.12. RetransmitInterval
The minimum time, in seconds, in which a non-acknowledged CAPWAP The minimum time, in seconds, in which a non-acknowledged CAPWAP
packet will be retransmitted. packet will be retransmitted.
Default: 3 Default: 3
4.7.13. SilentInterval 4.7.13. SilentInterval
For a WTP, this is the minimum time, in seconds, a WTP MUST wait For a WTP, this is the minimum time, in seconds, a WTP MUST wait
before it MAY again send Discovery Request messages or attempt to a before it MAY again send Discovery Request messages or attempt to a
establish DTLS session. For an AC, this is the minimum time, in establish DTLS session. For an AC, this is the minimum time, in
seconds, during which the AC SHOULD ignore all CAPWAP and DTLS seconds, during which the AC SHOULD ignore all CAPWAP and DTLS
packets received from the WTP that is in the Sulking state. packets received from the WTP that is in the Sulking state.
Default: 30 Default: 30 seconds
4.7.14. StatisticsTimer 4.7.14. StatisticsTimer
The default Statistics Interval is 120 seconds. The StatisticsTimer is used by the WTP to determine the interval the
WTP uses between the WTP Events Requests it transmits to the AC to
communicate its statistics, in seconds.
Default: 120 seconds
4.7.15. WaitDTLS 4.7.15. WaitDTLS
The maximum time, in seconds, a WTP MUST wait without having received The maximum time, in seconds, a WTP MUST wait without having received
a DTLS Handshake message from an AC. This timer MUST be greater than a DTLS Handshake message from an AC. This timer MUST be greater than
30 seconds. 30 seconds.
Default: 60 Default: 60
4.7.16. WaitJoin
The maximum time, in seconds, after which the DTLS session has been
established that the AC will wait before receiving a Join Request
message. This timer MUST be greater than 30 seconds.
Default: 60
4.8. CAPWAP Protocol Variables 4.8. CAPWAP Protocol Variables
A WTP or AC that implements the CAPWAP Discovery phase MUST allow for This section defines the CAPWAP protocol variables, which are used
the following variables to be configured by system management; for various protocol functions. Some of these variables are
default values are specified, making explicit configuration configurable, while others are counters or have a fixed value. For
unnecessary in many cases. If the default values are explicitly non counter related variables, default values are specified.
overridden by the AC, the WTP MUST save the values sent by the AC. However, when a WTP's variable configuration is explicitly overridden
by an AC, the WTP MUST save the new value.
4.8.1. AdminState 4.8.1. AdminState
The default Administrative State value is enabled (1). The default Administrative State value is enabled (1).
4.8.2. DiscoveryCount 4.8.2. DiscoveryCount
The number of Discovery Request messages transmitted by a WTP to a The number of Discovery Request messages transmitted by a WTP to a
single AC. This is a monotonically increasing counter. single AC. This is a monotonically increasing counter.
4.8.3. FailedDTLSAuthFailCount 4.8.3. FailedDTLSAuthFailCount
The number of failed DTLS session establishment attempts due to The number of failed DTLS session establishment attempts due to
authentication failures. authentication failures.
4.8.4. FailedDTLSSessionCount 4.8.4. FailedDTLSSessionCount
The number of failed DTLS session establishment attempts. The number of failed DTLS session establishment attempts.
4.8.5. IdleTimeout 4.8.5. MaxDiscoveries
The default Idle Timeout is 300 seconds.
4.8.6. MaxDiscoveries
The maximum number of Discovery Request messages that will be sent The maximum number of Discovery Request messages that will be sent
after a WTP boots. after a WTP boots.
Default: 10 Default: 10
4.8.6. MaxFailedDTLSSessionRetry
The maximum number of failed DTLS session establishment attempts
before the CAPWAP device enters a silent period.
Default: 3.
4.8.7. MaxRetransmit 4.8.7. MaxRetransmit
The maximum number of retransmissions for a given CAPWAP packet The maximum number of retransmissions for a given CAPWAP packet
before the link layer considers the peer dead. before the link layer considers the peer dead.
Default: 5 Default: 5
4.8.8. ReportInterval 4.8.8. RetransmitCount
The default Report Interval is 120 seconds.
4.8.9. RetransmitCount
The number of retransmissions for a given CAPWAP packet. This is a The number of retransmissions for a given CAPWAP packet. This is a
monotonically increasing counter. monotonically increasing counter.
4.8.10. WTPFallBack 4.8.9. WTPFallBack
The default WTP Fallback value is enabled (1). The default WTP Fallback value is enabled (1).
4.9. WTP Saved Variables 4.9. WTP Saved Variables
In addition to the values defined in Section 4.8, the following In addition to the values defined in Section 4.8, the following
values SHOULD be saved on the WTP in non-volatile memory. CAPWAP values SHOULD be saved on the WTP in non-volatile memory. CAPWAP
wireless bindings MAY define additional values that SHOULD be stored wireless bindings MAY define additional values that SHOULD be stored
on the WTP. on the WTP.
4.9.1. AdminRebootCount 4.9.1. AdminRebootCount
The number of times the WTP has rebooted administratively, defined in The number of times the WTP has rebooted administratively, defined in
Section 4.6.50. Section 4.6.49.
4.9.2. FrameEncapType 4.9.2. FrameEncapType
For WTPs that support multiple Frame Encapsulation Types, it is For WTPs that support multiple Frame Encapsulation Types, it is
useful to save the value configured by the AC. The Frame useful to save the value configured by the AC. The Frame
Encapsulation Type is defined in Section 4.6.43. Encapsulation Type is defined in Section 4.6.43.
4.9.3. LastRebootReason 4.9.3. LastRebootReason
The reason why the WTP last rebooted, defined in Section 4.6.50. The reason why the WTP last rebooted, defined in Section 4.6.49.
4.9.4. MacType 4.9.4. MacType
For WTPs that support multiple MAC Types, it is useful to save the For WTPs that support multiple MAC Types, it is useful to save the
value configured by the AC. The MACType is defined in value configured by the AC. The MACType is defined in
Section 4.6.46. Section 4.6.46.
4.9.5. PreferredACs 4.9.5. PreferredACs
The preferred ACs, with the index, defined in Section 4.6.5. The preferred ACs, with the index, defined in Section 4.6.5.
4.9.6. RebootCount 4.9.6. RebootCount
The number of times the WTP has rebooted, defined in Section 4.6.50. The number of times the WTP has rebooted, defined in Section 4.6.49.
4.9.7. Static ACL Table 4.9.7. Static ACL Table
The static ACL table saved on the WTP, as configured by the Add The static ACL table saved on the WTP, as configured by the Add
Static MAC ACL Entry message element, see Section 4.6.9. Static MAC ACL Entry message element, see Section 4.6.9.
4.9.8. Static IP Address 4.9.8. Static IP Address
The static IP Address assigned to the WTP, as configured by the WTP The static IP Address assigned to the WTP, as configured by the WTP
Static IP Address Information message element (see Section 4.6.51). Static IP Address Information message element (see Section 4.6.50).
4.9.9. WTPLinkFailureCount 4.9.9. WTPLinkFailureCount
The number of times the link to the AC has failed, see The number of times the link to the AC has failed, see
Section 4.6.50. Section 4.6.49.
4.9.10. WTPLocation 4.9.10. WTPLocation
The WTP Location, defined in Section 4.6.31. The WTP Location, defined in Section 4.6.31.
4.9.11. WTPName 4.9.11. WTPName
The WTP Name, defined in Section 4.6.47. The WTP Name, defined in Section 4.6.47.
5. CAPWAP Discovery Operations 5. CAPWAP Discovery Operations
skipping to change at page 105, line 28 skipping to change at page 107, line 28
o WTP IPv4 IP Address, see Section 4.6.44 o WTP IPv4 IP Address, see Section 4.6.44
o WTP IPv6 IP Address, see Section 4.6.45 o WTP IPv6 IP Address, see Section 4.6.45
The following message element MAY be included in the Join Request The following message element MAY be included in the Join Request
message. message.
o Maximum Message Length, see Section 4.6.32 o Maximum Message Length, see Section 4.6.32
o WTP Reboot Statistics, see Section 4.6.50 o WTP Reboot Statistics, see Section 4.6.49
o WTP IPv4 IP Address, see Section 4.6.44 o WTP IPv4 IP Address, see Section 4.6.44
o WTP IPv6 IP Address, see Section 4.6.45 o WTP IPv6 IP Address, see Section 4.6.45
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
6.2. Join Response 6.2. Join Response
The Join Response message is sent by the AC to indicate to a WTP that The Join Response message is sent by the AC to indicate to a WTP that
skipping to change at page 106, line 20 skipping to change at page 108, line 20
Code message element to "Binding Not Supported". Code message element to "Binding Not Supported".
The AC includes the Image Identifier message element to indicate the The AC includes the Image Identifier message element to indicate the
software version it expects the WTP to run. This information is used software version it expects the WTP to run. This information is used
to determine whether the WTP MUST either change its currently running to determine whether the WTP MUST either change its currently running
firmware image, or download a new version (see Section 9.1.1). firmware image, or download a new version (see Section 9.1.1).
The Join Response message is sent by the AC when in the Join State. The Join Response message is sent by the AC when in the Join State.
The WTP does not transmit this message. The WTP does not transmit this message.
The following message elements MAY be included in the Join Response
message.
o AC IPv4 List, see Section 4.6.2
o AC IPv6 List, see Section 4.6.3
o Image Identifier, see Section 4.6.28
o Maximum Message Length, see Section 4.6.32
o Vendor Specific Payload, see Section 4.6.39
The following message elements MUST be included in the Join Response The following message elements MUST be included in the Join Response
message. message.
o Result Code, see Section 4.6.35 o Result Code, see Section 4.6.35
o AC Descriptor, see Section 4.6.1 o AC Descriptor, see Section 4.6.1
o AC Name, see Section 4.6.4 o AC Name, see Section 4.6.4
o WTP Radio Information message element(s)that the AC supports; o WTP Radio Information message element(s)that the AC supports;
These are defined by the individual link layer CAPWAP Binding These are defined by the individual link layer CAPWAP Binding
Protocols (see Section 2.1). Protocols (see Section 2.1).
One of the following message elements MUST be included in the One of the following message elements MUST be included in the Join
Discovery Response Message: Response Message:
o CAPWAP Control IPv4 Address, see Section 4.6.10 o CAPWAP Control IPv4 Address, see Section 4.6.10
o CAPWAP Control IPv6 Address, see Section 4.6.11 o CAPWAP Control IPv6 Address, see Section 4.6.11
The following message elements MAY be included in the Join Response
message.
o AC IPv4 List, see Section 4.6.2
o AC IPv6 List, see Section 4.6.3
o Image Identifier, see Section 4.6.28
o Maximum Message Length, see Section 4.6.32
o Vendor Specific Payload, see Section 4.6.39
7. Control Channel Management 7. 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
maintain a control communication channel. CAPWAP control messages, maintain a control communication channel. CAPWAP control messages,
such as the WTP Event Request message sent from the WTP to the AC such as the WTP Event Request message sent from the WTP to the AC
indicate to the AC that the WTP is operational. When such control indicate to the AC that the WTP is operational. When such control
messages are not being sent, the Echo Request and Echo Response messages are not being sent, the Echo Request and Echo Response
messages are used to maintain the control communication channel. messages are used to maintain the control communication channel.
7.1. Echo Request 7.1. Echo Request
skipping to change at page 108, line 41 skipping to change at page 110, line 41
When an AC receives an Echo Request message it responds with an Echo When an AC receives an Echo Request message it responds with an Echo
Response message. Response message.
7.2. Echo Response 7.2. Echo Response
The Echo Response message acknowledges the Echo Request message. The Echo Response message acknowledges the Echo Request message.
An Echo Response message is sent by an AC after receiving an Echo An Echo Response message is sent by an AC after receiving an Echo
Request message. After transmitting the Echo Response message, the Request message. After transmitting the Echo Response message, the
AC SHOULD reset its EchoInterval timer. If another Echo Request AC SHOULD reset its EchoInterval timer (see Section 4.7.7. If
message or other control message is not received by the AC when the another Echo Request message or other control message is not received
timer expires, the AC SHOULD consider the WTP to be no longer by the AC when the timer expires, the AC SHOULD consider the WTP to
reachable. be no longer reachable.
The Echo Response message is sent by the AC when in the Run State. The Echo Response message is sent by the AC when in the Run State.
The WTP does not transmit this message. The WTP does not transmit this message.
The following message elements MAY be included in the Echo Response The following message elements MAY be included in the Echo Response
message: message:
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
When a WTP receives an Echo Response message it initializes the When a WTP receives an Echo Response message it initializes the
EchoInterval to the configured value. EchoInterval to the configured value.
8. WTP Configuration Management 8. WTP Configuration Management
WTP Configuration messages are used to exchange configuration WTP Configuration messages are used to exchange configuration
information between the AC and the WTP. information between the AC and the WTP.
8.1. Configuration Consistency 8.1. Configuration Consistency
The CAPWAP protocol provides flexibility in how WTP configuration is The CAPWAP protocol provides flexibility in how WTP configuration is
managed. A WTP has two options: managed. A WTP can behave in one of two ways, which is
implementation specific:
1. The WTP retains no configuration and accepts the configuration 1. The WTP retains no configuration and accepts the configuration
provided by the AC. provided by the AC.
2. The WTP retains the configuration of parameters provided by the AC 2. The WTP saves the configuration of parameters provided by the AC
that are non-default values. that are non-default values into local non-volatile memory, and
are enforced during the WTP's power up initialization phase.
If the WTP opts to save configuration locally, the CAPWAP protocol If the WTP opts to save configuration locally, the CAPWAP protocol
state machine defines the Configure state, which allows for state machine defines the Configure state, which allows for
configuration exchange. In the Configure state, the WTP sends its configuration exchange. In the Configure state, the WTP sends its
current configuration overrides to the AC via the Configuration current configuration overrides to the AC via the Configuration
Status message. A configuration override is a non-default parameter. Status message. A configuration override is a non-default parameter.
As an example, in the CAPWAP protocol, the default antenna As an example, in the CAPWAP protocol, the default antenna
configuration is internal omni antenna. A WTP that either has no configuration is internal omni antenna. A WTP that either has no
internal antennas, or has been explicitly configured by the AC to use internal antennas, or has been explicitly configured by the AC to use
external antennas, sends its antenna configuration during the external antennas, sends its antenna configuration during the
skipping to change at page 111, line 48 skipping to change at page 113, line 49
Status message. Status message.
o AC Name, see Section 4.6.4 o AC Name, see Section 4.6.4
o AC Name with Index, see Section 4.6.5 o AC Name with Index, see Section 4.6.5
o Radio Administrative State, see Section 4.6.33 o Radio Administrative State, see Section 4.6.33
o Statistics Timer, see Section 4.6.38 o Statistics Timer, see Section 4.6.38
o WTP Reboot Statistics, see Section 4.6.50 o WTP Reboot Statistics, see Section 4.6.49
The following message elements MAY be included in the Configuration The following message elements MAY be included in the Configuration
Status message. Status message.
o WTP Static IP Address Information, see Section 4.6.51 o WTP Static IP Address Information, see Section 4.6.50
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
8.3. Configuration Status Response 8.3. Configuration Status Response
The Configuration Status Response message is sent by an AC and The Configuration Status Response message is sent by an AC and
provides a mechanism for the AC to override a WTP's requested provides a mechanism for the AC to override a WTP's requested
configuration. configuration.
A Configuration Status Response message is sent by an AC after A Configuration Status Response message is sent by an AC after
skipping to change at page 112, line 50 skipping to change at page 115, line 5
o Decryption Error Report Period, see Section 4.6.19 o Decryption Error Report Period, see Section 4.6.19
o Idle Timeout, see Section 4.6.26 o Idle Timeout, see Section 4.6.26
o WTP Fallback, see Section 4.6.42 o WTP Fallback, see Section 4.6.42
The following message element MAY be included in the Configuration The following message element MAY be included in the Configuration
Status Response message. Status Response message.
o WTP Static IP Address Information, see Section 4.6.51 o WTP Static IP Address Information, see Section 4.6.50
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
8.4. Configuration Update Request 8.4. Configuration Update Request
Configuration Update Request messages are sent by the AC to provision Configuration Update Request messages are sent by the AC to provision
the WTP while in the Run state. This is used to modify the the WTP while in the Run state. This is used to modify the
configuration of the WTP while it is operational. configuration of the WTP while it is operational.
When a WTP receives a Configuration Update Request message, it When a WTP receives a Configuration Update Request message, it
responds with a Configuration Update Response message, with a Result responds with a Configuration Update Response message, with a Result
skipping to change at page 113, line 48 skipping to change at page 116, line 4
o Decryption Error Report Period, see Section 4.6.19 o Decryption Error Report Period, see Section 4.6.19
o Delete MAC ACL Entry, see Section 4.6.20 o Delete MAC ACL Entry, see Section 4.6.20
o Delete Static MAC ACL Entry, see Section 4.6.22 o Delete Static MAC ACL Entry, see Section 4.6.22
o Idle Timeout, see Section 4.6.26 o Idle Timeout, see Section 4.6.26
o Location Data, see Section 4.6.31 o Location Data, see Section 4.6.31
o Radio Administrative State, see Section 4.6.33 o Radio Administrative State, see Section 4.6.33
o Statistics Timer, see Section 4.6.38 o Statistics Timer, see Section 4.6.38
o WTP Fallback, see Section 4.6.42 o WTP Fallback, see Section 4.6.42
o WTP Name, see Section 4.6.47 o WTP Name, see Section 4.6.47
o WTP Static IP Address Information, see Section 4.6.51 o WTP Static IP Address Information, see Section 4.6.50
o Image Identifier, see Section 4.6.28 o Image Identifier, see Section 4.6.28
o Initiate Download, see Section 4.6.30 o Initiate Download, see Section 4.6.30
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
8.5. Configuration Update Response 8.5. Configuration Update Response
The Configuration Update Response message is the acknowledgement The Configuration Update Response message is the acknowledgement
skipping to change at page 117, line 5 skipping to change at page 119, line 5
8.9. Clear Configuration Response 8.9. Clear Configuration Response
The Clear Configuration Response message is sent by the WTP after The Clear Configuration Response message is sent by the WTP after
receiving a Clear Configuration Request message and resetting its receiving a Clear Configuration Request message and resetting its
configuration parameters to the manufacturing default values. configuration parameters to the manufacturing default values.
The Clear Configuration Response is sent by the WTP when in the Run The Clear Configuration Response is sent by the WTP when in the Run
State. The AC does not transmit this message. State. The AC does not transmit this message.
The Clear Configuration Request message MUST include the following The Clear Configuration Response message MUST include the following
message element. message element.
o Result Code, see Section 4.6.35 o Result Code, see Section 4.6.35
The following message elements MAY be included in the Clear The following message elements MAY be included in the Clear
Configuration Request message: Configuration Request message:
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
9. Device Management Operations 9. Device Management Operations
This section defines CAPWAP operations responsible for debugging, This section defines CAPWAP operations responsible for debugging,
gathering statistics, logging, and firmware management. gathering statistics, logging, and firmware management. The
management operations defined in this section are used by the AC to
either push/pull information to/from the WTP, or request that the WTP
reboot. This section does not deal with the management of the AC per
se, and assumes that the AC is operational and configured.
9.1. Firmware Management 9.1. Firmware Management
This section describes the firmware download procedures used by the This section describes the firmware download procedures used by the
CAPWAP protocol. Firmware download can occur during the Image Data CAPWAP protocol. Firmware download can occur during the Image Data
or Run state. or Run state.
Figure 4 provides an example of a WTP that performs a firmware Figure 6 provides an example of a WTP that performs a firmware
upgrade while in the Image Data state. In this example, the WTP does upgrade while in the Image Data state. In this example, the WTP does
not already have the requested firmware (Image Identifier = x), and not already have the requested firmware (Image Identifier = x), and
downloads the image from the AC. downloads the image from the AC.
WTP AC WTP AC
Join Request Join Request
--------------------------------------------------------> -------------------------------------------------------->
Join Response (Image Identifier = x) Join Response (Image Identifier = x)
skipping to change at page 119, line 4 skipping to change at page 121, line 36
..... .....
Image Data Request (Image Data = EOF) Image Data Request (Image Data = EOF)
<------------------------------------------------------ <------------------------------------------------------
Image Data Response (Result Code = Success) Image Data Response (Result Code = Success)
--------------------------------------------------------> -------------------------------------------------------->
(WTP enters the Reset State) (WTP enters the Reset State)
Figure 4: WTP Firmware Download Case 1
Figure 5 provides an example in which the WTP has the image specified Figure 6: WTP Firmware Download Case 1
by the AC in its non-volative storage. The WTP opts to NOT download
the firmware and immediately reset. Figure 7 provides an example in which the WTP has the image specified
by the AC in its non-volative storage, but is not its current running
image. In this case, the WTP opts to NOT download the firmware and
immediately reset to the requested image.
WTP AC WTP AC
Join Request Join Request
--------------------------------------------------------> -------------------------------------------------------->
Join Response (Image Identifier = x) Join Response (Image Identifier = x)
<------------------------------------------------------ <------------------------------------------------------
(WTP enters the Reset State) (WTP enters the Reset State)
Figure 5: WTP Firmware Download Case 2 Figure 7: WTP Firmware Download Case 2
Figure 6 provides an example of a WTP that performs a firmware Figure 8 provides an example of a WTP that performs a firmware
upgrade while in the Run state. This mode of firmware upgrade allows upgrade while in the Run state. This mode of firmware upgrade allows
the WTP to download its image while continuing to provide service. the WTP to download its image while continuing to provide service.
The WTP will not automatically reset until it is notified by the AC, The WTP will not automatically reset until it is notified by the AC,
with a Reset Request message. with a Reset Request message.
WTP AC WTP AC
Configuration Update Request (Image Identifier = x) Configuration Update Request (Image Identifier = x)
<------------------------------------------------------ <------------------------------------------------------
skipping to change at page 120, line 44 skipping to change at page 123, line 44
..... .....
(administratively requested reboot request) (administratively requested reboot request)
Reset Request (Image Identifier = x) Reset Request (Image Identifier = x)
<------------------------------------------------------ <------------------------------------------------------
Reset Response (Result Code = Success) Reset Response (Result Code = Success)
--------------------------------------------------------> -------------------------------------------------------->
Figure 6: WTP Firmware Download Case 3 Figure 8: WTP Firmware Download Case 3
Figure 7 provides another example of the firmware download while in Figure 9 provides another example of the firmware download while in
the Run state. In this example, the WTP already has the image the Run state. In this example, the WTP already has the image
specified by the AC in its non-volative storage. The WTP opts to NOT specified by the AC in its non-volative storage. The WTP opts to NOT
download the firmware. The WTP resets upon receipt of a Reset download the firmware. The WTP resets upon receipt of a Reset
Request message from the AC. Request message from the AC.
WTP AC WTP AC
Configuration Update Request (Image Identifier = x, Configuration Update Request (Image Identifier = x,
Image Information = {size,hash}, Image Information = {size,hash},
Initiate Download) Initiate Download)
skipping to change at page 121, line 24 skipping to change at page 124, line 24
..... .....
(administratively requested reboot request) (administratively requested reboot request)
Reset Request (Image Identifier = x) Reset Request (Image Identifier = x)
<------------------------------------------------------ <------------------------------------------------------
Reset Response (Result Code = Success) Reset Response (Result Code = Success)
--------------------------------------------------------> -------------------------------------------------------->
Figure 7: WTP Firmware Download Case 4 Figure 9: WTP Firmware Download Case 4
9.1.1. Image Data Request 9.1.1. Image Data Request
The Image Data Request message is used to update firmware on the WTP. The Image Data Request message is used to update firmware on the WTP.
This message and its companion Response message are used by the AC to This message and its companion Response message are used by the AC to
ensure that the image being run on each WTP is appropriate. ensure that the image being run on each WTP is appropriate.
Image Data Request messages are exchanged between the WTP and the AC Image Data Request messages are exchanged between the WTP and the AC
to download a new firmware image to the WTP. When a WTP or AC to download a new firmware image to the WTP. When a WTP or AC
receives an Image Data Request message it responds with an Image Data receives an Image Data Request message it responds with an Image Data
skipping to change at page 121, line 47 skipping to change at page 124, line 47
request. request.
The decision that new firmware is to be downloaded to the WTP can The decision that new firmware is to be downloaded to the WTP can
occur in one of two ways: occur in one of two ways:
When the WTP joins the AC, the Join Response message includes the When the WTP joins the AC, the Join Response message includes the
Image Identifier message element, which informs the WTP of the Image Identifier message element, which informs the WTP of the
firmware it is expected to run. if the WTP does not currently have firmware it is expected to run. if the WTP does not currently have
the requested firmware version, it transmits an Image Data Request the requested firmware version, it transmits an Image Data Request
message, with the appropriate Image Identifier message element. message, with the appropriate Image Identifier message element.
If the WTP already has the requested firmware, it simply resets. If the WTP already has the requested firmware in its non-volatile
flash, but is not its currently running image, it simply resets to
run the proper firmware.
Once the WTP is in the Run state, it is possible for the AC to Once the WTP is in the Run state, it is possible for the AC to
cause the WTP to initiate a firmware download by sending a cause the WTP to initiate a firmware download by sending a
Configuration Update Request message with the Initiate Download Configuration Update Request message with the Initiate Download
and Image Identifier message elements. The WTP then transmits the and Image Identifier message elements. The WTP then transmits the
Image Data Request message, which includes the Image Identifier Image Data Request message, which includes the Image Identifier
message element to start the download process. Note that when the message element to start the download process. Note that when the
firmware is downloaded in this way, the WTP does not automatically firmware is downloaded in this way, the WTP does not automatically
reset after the download is complete. The WTP will only reset reset after the download is complete. The WTP will only reset
when it receives a Reset Request message from the AC. If the WTP when it receives a Reset Request message from the AC. If the WTP
skipping to change at page 124, line 46 skipping to change at page 128, line 4
The WTP Event Request message is sent by the WTP when in the Run The WTP Event Request message is sent by the WTP when in the Run
State. The AC does not transmit this message. State. The AC does not transmit this message.
The WTP Event Request message MUST contain one of the message The WTP Event Request message MUST contain one of the message
elements listed below, or a message element that is defined for a elements listed below, or a message element that is defined for a
specific wireless technology. More than one of each message element specific wireless technology. More than one of each message element
listed MAY be included in the WTP Event Request message. listed MAY be included in the WTP Event Request message.
o Decryption Error Report, see Section 4.6.18 o Decryption Error Report, see Section 4.6.18
o Duplicate IPv4 Address, see Section 4.6.24 o Duplicate IPv4 Address, see Section 4.6.24
o Duplicate IPv6 Address, see Section 4.6.25 o Duplicate IPv6 Address, see Section 4.6.25
o WTP Operational Statistics, see Section 4.6.48
o WTP Radio Statistics, see Section 4.6.49 o WTP Radio Statistics, see Section 4.6.48
o WTP Reboot Statistics, see Section 4.6.50 o WTP Reboot Statistics, see Section 4.6.49
o Delete Station, see Section 4.6.21 o Delete Station, see Section 4.6.21
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
9.5. WTP Event Response 9.5. WTP Event Response
The WTP Event Response message acknowledges receipt of the WTP Event The WTP Event Response message acknowledges receipt of the WTP Event
Request message. Request message.
skipping to change at page 125, line 30 skipping to change at page 128, line 32
Event Request message. Event Request message.
The WTP Event Response message is sent by the AC when in the Run The WTP Event Response message is sent by the AC when in the Run
State. The WTP does not transmit this message. State. The WTP does not transmit this message.
The following message elements MAY be included in the WTP Event The following message elements MAY be included in the WTP Event
Response message: Response message:
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
9.6. Data Transfer Request 9.6. Data Transfer
This section describes the data transfer procedures used by the
CAPWAP protocol. The data transfer mechanism is used to upload
information available at the WTP to the AC, such as crash or debug
information. The data transfer messages can only be exchanged while
in the Run state.
Figure 10 provides an example of an AC that requests that the WTP
transfer its latest crash file. Once the WTP acknowledges that it
has information to send, via the Data Transfer Response, it transmits
its own Data Transfer Request. Upon receipt, the AC responds with a
Data Transfer Response, and the exchange continues until the WTP
transmits a Data Transfer Data message element that indicates an End
of File (EOF).
WTP AC
Data Transfer Request (Data Transfer Mode = Crash Data)
<------------------------------------------------------
Data Transfer Response (Result Code = Success)
-------------------------------------------------------->
Data Transfer Request (Data Transfer Data = Data)
-------------------------------------------------------->
Data Transfer Response (Result Code = Success)
<------------------------------------------------------
.....
Data Transfer Request (Data Transfer Data = EOF)
-------------------------------------------------------->
Data Transfer Response (Result Code = Success)
<------------------------------------------------------
Figure 10: WTP Data Transfer Case 1
Figure 11 provides an example of an AC that requests that the WTP
transfer its latest crash file. However, in this example, the WTP
does not have any crash information to send, and therefore sends a
Data Transfer Response with a Result Code indicating the error.
WTP AC
Data Transfer Request (Data Transfer Mode = Crash Data)
<------------------------------------------------------
Data Transfer Response (Result Code = Data Transfer
Error (No Information to Transfer))
-------------------------------------------------------->
Figure 11: WTP Data Transfer Case 2
9.6.1. Data Transfer Request
The Data Transfer Request message is used to deliver debug The Data Transfer Request message is used to deliver debug
information from the WTP to the AC. information from the WTP to the AC.
Data Transfer Request messages are sent by the WTP to the AC when the The Data Transfer Request messages can be sent either by the AC or
WTP determines that it has important information to send to the AC. the WTP. When sent by the AC, it is used to request that data be
For instance, if the WTP detects that its previous reboot was caused transmitted from the WTP to the AC, and includes the Data Transfer
by a system crash, it can send the crash file to the AC. The remote Mode message element, which specifies the information desired by the
debugger function in the WTP also uses the Data Transfer Request AC. The Data Transfer Request is sent by the WTP in order to
message to send console output to the AC for debugging purposes. transfer actual data to the AC, through the Data Transfer Data
message element.
When the AC receives a Data Transfer Request message it responds to Given that the CAPWAP protocol minimizes the need for WTPs to be
the WTP with a Data Transfer Response message. The AC MAY log the directly managed, the Data Transfer Request is an important
information received. troubleshooting tool used by the AC to retrieve information that may
be available on the WTP. For instance, some WTPs implementations may
store crash information to help manufacturers identify software
faults. The Data Transfer Request message can be used to send such
information from the WTP to the AC. Another possible use would be to
allow a remote debugger function in the WTP to use the Data Transfer
Request message to send console output to the AC for debugging
purposes.
The Data Transfer Request message is sent by the WTP when in the Run When the WTP or AC receives a Data Transfer Request message it
State. The AC does not transmit this message. responds to the WTP with a Data Transfer Response message. The AC
MAY log the information received through the Data Transfer Data
message element.
The Data Transfer Request message MUST contain one of the message The Data Transfer Request message is sent by the WTP or AC when in
elements listed below. the Run State.
o Data Transfer Data, see Section 4.6.16 When sent by the AC, the Data Transfer Request message MUST contain
the following message elements:
o Data Transfer Mode, see Section 4.6.17 o Data Transfer Mode, see Section 4.6.17
The following message elements MAY be included in the Data Transfer When sent by the WTP, the Data Transfer Request message MUST contain
Request message: the following message elements:
o Data Transfer Data, see Section 4.6.16
Regardless of whether the Data Transfer Request is sent by the AC or
WTP, the following message elements MAY be included in the Data
Transfer Request message:
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
9.7. Data Transfer Response 9.6.2. Data Transfer Response
The Data Transfer Response message acknowledges the Data Transfer The Data Transfer Response message acknowledges the Data Transfer
Request message. Request message.
A Data Transfer Response message is sent in response to a received A Data Transfer Response message is sent in response to a received
Data Transfer Request message. Its purpose is to acknowledge receipt Data Transfer Request message. Its purpose is to acknowledge receipt
of the Data Transfer Request message. of the Data Transfer Request message. When sent by the WTP, the
Result Code message element is used to indicate whether the data
transfer requested by the AC can be completed. When sent by the AC,
the Result Code message element is used to indicate receipt of the
data transfered in the Data Transfer Request message.
The Data Transfer Response message is sent by the AC when in the Run The Data Transfer Response message is sent by the WTP or AC when in
State. The WTP does not transmit this message. the Run State.
The following message element MUST be included in the Data Transfer
Response message.
o Result Code, see Section 4.6.35
The following message elements MAY be included in the Data Transfer The following message elements MAY be included in the Data Transfer
Response message: Response message:
o Vendor Specific Payload, see Section 4.6.39 o Vendor Specific Payload, see Section 4.6.39
Upon receipt of a Data Transfer Response message, the WTP transmits Upon receipt of a Data Transfer Response message, the WTP transmits
more information, if more information is available. more information, if more information is available.
10. Station Session Management 10. Station Session Management
skipping to change at page 129, line 18 skipping to change at page 134, line 18
used in conjunction with a CAPWAP-enabled deployment. The first used in conjunction with a CAPWAP-enabled deployment. The first
consists of a configuration in which a single WTP is behind a NAT consists of a configuration in which a single WTP is behind a NAT
system. Since all communication is initiated by the WTP, and all system. Since all communication is initiated by the WTP, and all
communication is performed over IP using two UDP ports, the protocol communication is performed over IP using two UDP ports, the protocol
easily traverses NAT systems in this configuration. easily traverses NAT systems in this configuration.
In the second case, two or more WTPs are deployed behind the same NAT In the second case, two or more WTPs are deployed behind the same NAT
system. Here, the AC would receive multiple connection requests from system. Here, the AC would receive multiple connection requests from
the same IP address, and cannot differentiate the originating WTP of the same IP address, and cannot differentiate the originating WTP of
the connection requests. The CAPWAP Data Check state, which the connection requests. The CAPWAP Data Check state, which
establishes the data plane connection and communicates the Data establishes the data plane connection and communicates the CAPWAP
Keepalive, includes the Session Identifier message element, which is Data Channel Keepalive, includes the Session Identifier message
used to bind the control and data plane. Use of the Session element, which is used to bind the control and data plane. Use of
Identifier message element enables the AC to match the control and the Session Identifier message element enables the AC to match the
data plane flows from multiple WTPs behind the same NAT system control and data plane flows from multiple WTPs behind the same NAT
(multiple WTPs sharing the same IP address). system (multiple WTPs sharing the same IP address).
In the third configuration, the AC is deployed behind a NAT. Two In the third configuration, the AC is deployed behind a NAT. Two
issues exist in this situation. First, an AC communicates its issues exist in this situation. First, an AC communicates its
interfaces and corresponding WTP load using the CAPWAP Control IPv4 interfaces and corresponding WTP load using the CAPWAP Control IPv4
Address and CAPWAP Control IPv6 Address message elements. This Address and CAPWAP Control IPv6 Address message elements. This
message element is mandatory, but contains invalid information if a message element is mandatory, but contains invalid information if a
middlebox is present between the AC and WTP. The WTP MUST NOT middlebox is present between the AC and WTP. The WTP MUST NOT
utilize the information in these message elements if it detects a NAT utilize the information in these message elements if it detects a NAT
(as described in the CAPWAP Transport Protocol message element). (as described in the CAPWAP Transport Protocol message element).
Note this would disable the load balancing capabilities of the CAPWAP Note this would disable the load balancing capabilities of the CAPWAP
skipping to change at page 131, line 34 skipping to change at page 136, line 34
EAP Credential EAP Credential
<------------------------------------------> <------------------------------------------>
wireless link layer wireless link layer
(e.g.802.11 PTK) (e.g.802.11 PTK)
<--------------> or <--------------> or
<---------------------------> <--------------------------->
(derived) (derived)
Figure 12: STA Session Setup
Within CAPWAP, DTLS is used to secure the link between the WTP and Within CAPWAP, DTLS is used to secure the link between the WTP and
AC. In addition to securing control messages, it's also a link in AC. In addition to securing control messages, it's also a link in
this chain of trust for establishing link layer keys. Consequently, this chain of trust for establishing link layer keys. Consequently,
much rests on the security of DTLS. much rests on the security of DTLS.
In some CAPWAP deployment scenarios, there are two channels between In some CAPWAP deployment scenarios, there are two channels between
the WTP and AC: the control channel, carrying CAPWAP control the WTP and AC: the control channel, carrying CAPWAP control
messages, and the data channel, over which client data packets are messages, and the data channel, over which client data packets are
tunneled between the AC and WTP. Typically, the control channel is tunneled between the AC and WTP. Typically, the control channel is
secured by DTLS, while the data channel is not. secured by DTLS, while the data channel is not.
skipping to change at page 136, line 5 skipping to change at page 141, line 5
capability for generation of new random PSKs, taking RFC 4086 capability for generation of new random PSKs, taking RFC 4086
[RFC4086] into account. [RFC4086] into account.
o Preshared keys SHOULD be periodically updated. Implementations o Preshared keys SHOULD be periodically updated. Implementations
MAY facilitate this by providing an administrative interface for MAY facilitate this by providing an administrative interface for
automatic key generation and periodic update, or it MAY be automatic key generation and periodic update, or it MAY be
accomplished manually instead. accomplished manually instead.
Every pairwise combination of WTP and AC on the network SHOULD have a Every pairwise combination of WTP and AC on the network SHOULD have a
unique PSK. This prevents the domino effect (see Guidance for AAA unique PSK. This prevents the domino effect (see Guidance for AAA
Key Management [I-D.housley-aaa-key-mgmt]). If PSKs are tied to Key Management [RFC4962]). If PSKs are tied to specific WTPs, then
specific WTPs, then knowledge of the PSK implies a binding to a knowledge of the PSK implies a binding to a specified identity that
specified identity that can be authorized. can be authorized.
If PSKs are shared, this binding between device and identity is no If PSKs are shared, this binding between device and identity is no
longer possible. Compromise of one WTP can yield compromise of longer possible. Compromise of one WTP can yield compromise of
another WTP, violating the CAPWAP security hierarchy. Consequently, another WTP, violating the CAPWAP security hierarchy. Consequently,
sharing keys between WTPs is NOT RECOMMENDED. sharing keys between WTPs is NOT RECOMMENDED.
12.7. Use of Certificates in CAPWAP 12.7. Use of Certificates in CAPWAP
For public-key-based DTLS deployments, each device SHOULD have unique For public-key-based DTLS deployments, each device SHOULD have unique
credentials, with an extended key usage authorizing the device to act credentials, with an extended key usage authorizing the device to act
skipping to change at page 138, line 5 skipping to change at page 143, line 5
security. When used with TLS or IPsec, security guidelines specified security. When used with TLS or IPsec, security guidelines specified
in RFC 3539 [RFC3539] SHOULD be followed. in RFC 3539 [RFC3539] SHOULD be followed.
In general, the link between the AC and AAA server SHOULD be secured In general, the link between the AC and AAA server SHOULD be secured
using a strong ciphersuite keyed with mutually authenticated session using a strong ciphersuite keyed with mutually authenticated session
keys. Implementations SHOULD NOT rely solely on Basic RADIUS shared keys. Implementations SHOULD NOT rely solely on Basic RADIUS shared
secret authentication as it is often vulnerable to dictionary secret authentication as it is often vulnerable to dictionary
attacks, but rather SHOULD use stronger underlying security attacks, but rather SHOULD use stronger underlying security
mechanisms. mechanisms.
13. Management Considerations 13. Operational Considerations
The CAPWAP protocol assumes that it is the only configuration The CAPWAP protocol assumes that it is the only configuration
interface to the WTP to configure parameters that are specified in interface to the WTP to configure parameters that are specified in
the CAPWAP specifications. While the use of a separate management the CAPWAP specifications. While the use of a separate management
protocol MAY be used for the purposes of monitoring the WTP directly, protocol MAY be used for the purposes of monitoring the WTP directly,
configuring the WTP through a separate management interface is not configuring the WTP through a separate management interface is not
recommended. Configuring the WTP through a separate protocol, such recommended. Configuring the WTP through a separate protocol, such
as via a CLI or SNMP, could lead to the AC state being out of sync as via a CLI or SNMP, could lead to the AC state being out of sync
with the WTP. with the WTP.
The CAPWAP protocol does not deal with the management of the ACs.
The AC is assumed to be configured through some separate management
interface, which could be via a proprietary CLI, SNMP, NETCONF or
some other management protocol.
The CAPWAP protocol's control channel is fairly light weight from a
traffic perspective. Once the WTP has been configured, the WTP sends
periodic statistics. Further, the specification calls for a
keepalive packet to be sent on the protocol's data channel to make
sure that any possible middleboxes (e.g., NAT) maintain their UDP
state. The overhead associated with the control and data channel is
not expected to impact network traffic. That said, the CAPWAP
protocol does allow for the frequency of these packets to be modified
through the DataChannelKeepAlive and StatisticsTimer (see
Section 4.7.2 and Section 4.7.14, respectively).
14. Transport Considerations 14. Transport Considerations
The CAPWAP WG carefully considered the congestion control The CAPWAP WG carefully considered the congestion control
requirements of the CAPWAP protocol, both for the CAPWAP control and requirements of the CAPWAP protocol, both for the CAPWAP control and
data channels. data channels.
CAPWAP specifies a single-threaded command/response protocol to be CAPWAP specifies a single-threaded command/response protocol to be
used on the control channel, and we have specified that an used on the control channel, and we have specified that an
exponential back-off algorithm should be used when commands are exponential back-off algorithm should be used when commands are
retransmitted. When CAPWAP runs in its default mode (Local MAC), the retransmitted. When CAPWAP runs in its default mode (Local MAC), the
skipping to change at page 140, line 7 skipping to change at page 145, line 7
cause the firmware download process to take some time, depending upon cause the firmware download process to take some time, depending upon
the RTT. This is not expected to be a problem since the CAPWAP the RTT. This is not expected to be a problem since the CAPWAP
protocol allows firmware to be downloaded while the WTP provides protocol allows firmware to be downloaded while the WTP provides
service to wireless clients/devices. service to wireless clients/devices.
It is necessary for the WTP and AC to configure their MTU based on It is necessary for the WTP and AC to configure their MTU based on
the capabilities of the path. See Section 3.5 for more information. the capabilities of the path. See Section 3.5 for more information.
15. IANA Considerations 15. IANA Considerations
A separate UDP port for data channel communications is (currently)
the selected demultiplexing mechanism, and a port must be assigned
for this purpose in Section 3.1. The UDP port numbers are listed by
IANA at http://www.iana.org/assignments/port-numbers.
IANA needs to assign an organization local multicast address called IANA needs to assign an organization local multicast address called
the "All ACs multicast address" from the IPv6 multicast address the "All ACs multicast address" from the IPv6 multicast address
registry in Section 3.3 registry in Section 3.3
15.1. CAPWAP Message Types 15.1. CAPWAP Message Types
The Message Type field in the CAPWAP header (Section 4.5.1.1) is used The Message Type field in the CAPWAP header (see Section 4.5.1.1) is
to identify the operation performed by the message. There are used to identify the operation performed by the message. There are
multiple namespaces, which is identified via the first three octets multiple namespaces, which is identified via the first three octets
of the field containing the IANA Enterprise Number [RFC2434]. When of the field containing the IANA Enterprise Number [RFC5226]. When
the Enterprise Number is set to zero, the message types are reserved the Enterprise Number is set to zero, the message types are reserved
for use by the base CAPWAP specification which are controlled and for use by the base CAPWAP specification which are controlled and
maintained by IANA and requires a Standards Action. maintained by IANA and requires a Standards Action.
15.2. Wireless Binding Identifiers 15.2. CAPWAP Header Flags
The Flags field in the CAPWAP header (see Section 4.3) is used to
identify any special treatment related to the message. There are
currently three unused, reserved bits. These bits are controlled and
maintained by IANA and requires a Standards Action.
15.3. CAPWAP Control Message Flags
The Flags field in the CAPWAP Control Message header (see
Section 4.5.1.4) is used to identify any special treatment related to
the control message. There are currently eight unused, reserved
bits. These bits are controlled and maintained by IANA and requires
a Standards Action.
15.4. CAPWAP Control Message Type
The Type field in the CAPWAP Control Message header (see Section 4.6)
is used to identify the data being transported. The 32 bit
enumerated values are currently defined in Section 4.5.1.1. These
values are controlled and maintained by IANA and requires a Standards
Action.
15.5. Wireless Binding Identifiers
The Wireless Binding Identifier (WBID) field in the CAPWAP header The Wireless Binding Identifier (WBID) field in the CAPWAP header
(Section 4.3) is used to identify the wireless technology associated (see Section 4.3) is used to identify the wireless technology
with the packet. Due to the limited address space available, a new associated with the packet. Due to the limited address space
WBID request requires Standards Action. available, a new WBID request requires Standards Action.
15.6. AC Security Types
The Security field in the AC Descriptor message element (see
Section 4.6.1) is used to identify the authentication type available
on the AC. This document defines two bits, and the remaining bits
are controlled and maintained by IANA and requires a Standards
Action.
15.7. AC DTLS Policy
The DTLS Policy field in the AC Descriptor message element (see
Section 4.6.1) is used to identify the how, and if, the CAPWAP Data
Channel is to be secured. This document defines two bits, and the
remaining bits are controlled and maintained by IANA and requires a
Standards Action.
15.8. AC Information Type
The Information Type field in the AC Descriptor message element (see
Section 4.6.1) is used to represent information about the AC. This
document defines two values, and the remaining values are controlled
and maintained by IANA and requires a Standards Action.
15.9. CAPWAP Transport Protocol Types
The Transport field in the CAPWAP Transport Protocol message element
(see Section 4.6.15) is used to identify the transport to use for the
CAPWAP Data Channel. This document defines two values, and the
remaining values are controlled and maintained by IANA and requires a
Standards Action.
15.10. Data Transfer Type
The Data Type field in the Data Transfer Data message element (see
Section 4.6.16) and Image Data message element (see Section 4.6.27)
is used to provide information about the data being carried. This
document defines three values, and the remaining values are
controlled and maintained by IANA and requires a Standards Action.
15.11. Data Transfer Mode
The Data Mode field in the Data Transfer Data message element (see
Section 4.6.16) and Data Transfer Mode message element (see
Section 15.11) is used to provide information about the data being
carried. This document defines three values, and the remaining
values are controlled and maintained by IANA and requires a Standards
Action.
15.12. Discovery Types
The Discovery Type field in the Discovery Type message element (see
Section 4.6.23) is used by the WTP to indicate to the AC how it was
discovered. This document defines five values, and the remaining
values are controlled and maintained by IANA and requires a Standards
Action.
15.13. Radio Admin State
The Radio Admin field in the Radio Administrative State message
element (see Section 4.6.33) is used by the WTP to represent the
state of its radios. This document defines two bits, and the
remaining bits are controlled and maintained by IANA and requires a
Standards Action.
15.14. Radio Operational State
The State field in the Radio Operational State message element (see
Section 4.6.34) is used by the WTP to represent the operational state
of its radios. This document defines two bits, and the remaining
bits are controlled and maintained by IANA and requires a Standards
Action.
15.15. Radio Failure Causes
The Cause field in the Radio Operational State message element (see
Section 4.6.34) is used by the WTP to represent the reason why a
radio may have failed. This document defines four values, and the
remaining values are controlled and maintained by IANA and requires a
Standards Action.
15.16. Result Code
The Result Code field in the Result Code message element (see
Section 4.6.35) is used to indicate the success, or failure, of a
CAPWAP control message. This document defines 23 values, and the
remaining values are controlled and maintained by IANA and requires a
Standards Action.
15.17. Returned Message Element Reason
The Reason field in the Returned Message Element message element (see
Section 4.6.36) is used to indicate the reason why a message element
was not processed successfully. This document defines five values,
and the remaining values are controlled and maintained by IANA and
requires a Standards Action.
15.18. WTP Board Data Type
The Board Data Type field in the WTP Board Data message element (see
Section 4.6.40) is used to represent information about the WTP
hardware. This document defines five values, and the remaining
values are controlled and maintained by IANA and requires a Standards
Action.
15.19. WTP Descriptor Type
The Descriptor Type field in the WTP Descriptor message element (see
Section 4.6.41) is used to represent information about the WTP
software. This document defines four values, and the remaining
values are controlled and maintained by IANA and requires a Standards
Action.
15.20. WTP Fallback Mode
The Mode field in the WTP Fallback message element (see
Section 4.6.42) is used to indicate to the WTP the type of AC
fallback mechanism it should employ. This document defines three
values, and the remaining values are controlled and maintained by
IANA and requires a Standards Action.
15.21. WTP Frame Tunnel Mode
The Tunnel Type field in the WTP Frame Tunnel Mode message element
(see Section 4.6.43) is used to indicate the type of tunneling to use
between the WTP and the AC. This document defines four values, and
the remaining values are controlled and maintained by IANA and
requires a Standards Action.
15.22. WTP MAC Type
The MAC Type field in the WTP MAC Type message element (see
Section 4.6.46) is used to indicate the type of MAC to use in
tunneled frames between the WTP and the AC. This document defines
three values, and the remaining values are controlled and maintained
by IANA and requires a Standards Action.
15.23. WTP Radio Stats Failure Type
The Last Failure Type field in the WTP Radio Statistics message
element (see Section 4.6.48) is used to indicate the last WTP
failure. This document defines five values, and the remaining values
are controlled and maintained by IANA and requires a Standards
Action.
15.24. WTP Reboot Stats Failure Type
The Last Failure Type field in the WTP Reboot Statistics message
element (see Section 4.6.49) is used to indicate the last reboot
reason. This document defines seven values, and the remaining values
are controlled and maintained by IANA and requires a Standards
Action.
16. Acknowledgements 16. Acknowledgements
The following individuals are acknowledged for their contributions to The following individuals are acknowledged for their contributions to
this protocol specification: Puneet Agarwal, Abhijit Choudhury, this protocol specification: Puneet Agarwal, Abhijit Choudhury,
Saravanan Govindan, Peter Nilsson, and David Perkins. Saravanan Govindan, Peter Nilsson, David Perkins and Yong Zhang.