RFC 7494

IEEE 802.11 Medium Access Control (MAC) Profile for Control and Provisioning of Wireless Access Points (CAPWAP)

πŸ“… published April 2015, from ietf

RFC 7494: IEEE 802.11 MAC Profile for CAPWAP ✨

bestie, this one is the spec for the IEEE 802.11 MAC Profile in CAPWAP πŸ’– It's an Internet Standards Track document, so it's a real protocol spec that implementers build against. It was published in April 2015 and has ISSN 2070-1721 🌸

The authors are C. Shao and H. Deng (China Mobile), R. Pazhyannur (Cisco Systems), F. Bari (AT&T), R. Zhang (China Telecom), and S. Matsushima (SoftBank Telecom) 🫢 It doesn't obsolete or update any other RFCs, so it's a fresh standalone spec πŸ¦‹


Abstract ✨

okay so the CAPWAP binding for 802.11 defines two MAC modes for WTPs (Wireless Transmission Points): Split and Local MAC πŸŽ€ The problem is that in Split MAC, nobody clearly said where the encryption/decryption functions live. The spec just says 802.11 encryption is either on the AC (Access Controller) or on the WTP, and there's no clean way for the AC to tell the WTP which one it is 😭 That's a recipe for interoperability chaos, especially when the AC and WTP come from different vendors πŸ’€

So this spec adds an IEEE 802.11 MAC Profile message element. Each profile spells out an unambiguous split of the encryption work between the WTP and the AC, so everyone's on the same page πŸ”₯

Status of This Memo ✨

this is an Internet Standards Track document πŸ’… It's a product of the IETF, it represents community consensus, got public review, and was approved by the IESG πŸ‘‘ If you want more on Internet Standards, check Section 2 of RFC 5741 🌈

Info about the current status, errata, and where to send feedback lives at http://www.rfc-editor.org/info/rfc7494 🧚

Copyright (c) 2015 IETF Trust and the persons identified as the document authors. All rights reserved πŸ’œ

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as they stood on the publication date. Read those carefully, bestie, because they explain your rights and restrictions πŸ™ˆ Any Code Components pulled out of this document must include the Simplified BSD License text described in Section 4.e of the Trust Legal Provisions, and they come with no warranty, as the Simplified BSD License says πŸ“

Table of Contents ✨

1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
  2.  IEEE MAC Profile Descriptions . . . . . . . . . . . . . . . .   5
    2.1.  Split MAC with WTP Encryption . . . . . . . . . . . . . .   5
    2.2.  Split MAC with AC Encryption  . . . . . . . . . . . . . .   6
    2.3.  IEEE 802.11 MAC Profile Frame Exchange  . . . . . . . . .   8
  3.  MAC Profile Message Element Definitions . . . . . . . . . . .   8
    3.1.  IEEE 802.11 Supported MAC Profiles  . . . . . . . . . . .   8
    3.2.  IEEE 802.11 MAC Profile . . . . . . . . . . . . . . . . .   9
  4.  Security Considerations . . . . . . . . . . . . . . . . . . .   9
  5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  10
  6.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  11
    6.1.  Normative References  . . . . . . . . . . . . . . . . . .  11
    6.2.  Informative References  . . . . . . . . . . . . . . . . .  11
  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  12
  Contributors  . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  12

1. Introduction ✨

okay so CAPWAP supports two MAC modes, Split and Local MAC, as covered in [RFC5415] and [RFC5416] πŸ¦‹ But some MAC functions were never clearly defined. The big one is IEEE 802.11 [IEEE.802.11] encryption: it's specified as being on either the AC or the WTP, with no clear way to negotiate which 😭 Different vendors also define the MAC mode differently, so they map lots of MAC-layer functions to the WTP or the AC in their own way πŸ’…

What does that mean for operators? They have to run different configs depending on how their vendor built the two modes πŸ™ƒ Without a clear spec, WTPs and ACs from different vendors just won't play nice, and operators will feel it πŸ’€

Figure 1 from [RFC5416] shows which functions get processed where in Local MAC versus Split MAC 🌸 The key thing is that in Split MAC, IEEE 802.11 encryption/decryption is marked as WTP/AC, which basically means it could land on either side. Local MAC doesn't have this problem, because encryption is always on the WTP ✨

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            Functions                  | Local MAC | Split MAC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Distribution Service     |  WTP/AC   |     AC    |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Integration Service      |   WTP     |     AC    |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Beacon Generation        |   WTP     |     WTP   |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Probe Response Generation|   WTP     |     WTP   |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Function    |Power Mgmt/              |   WTP     |     WTP   |
+             |Packet Buffering         |           |           |
|             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Fragmentation/           |   WTP     |    WTP/AC |
+             |Defragmentation          |           |           |
|             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Assoc/Disassoc/Reassoc   |  WTP/AC   |     AC    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Classifying              |   WTP     |     AC    |
+   IEEE      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 802.11 QoS  |Scheduling               |   WTP     |    WTP/AC |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Queuing                  |   WTP     |    WTP    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |IEEE 802.1X/EAP          |   AC      |    AC     |
+   IEEE      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 802.11 RSN  |RSNA Key Management      |   AC      |    AC     |
+  (WPA2)     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |IEEE 802.11              |   WTP     |    WTP/AC |
+             |Encryption/Decryption    |           |           |
|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note:
  RSN - Robust Security Network
  RSNA - Robust Security Network Association
  WPA2 - Wi-Fi Protected Access 2

         Figure 1: Functions in Local MAC and Split MAC

so to fix this, the spec introduces the IEEE 802.11 MAC Profile πŸŽ€ It unambiguously says where each MAC functionality should live, so nobody has to guess πŸ‘‘

2. IEEE MAC Profile Descriptions ✨

an IEEE 802.11 MAC Profile is basically a description of how the MAC functionality gets split between the WTP and the AC, using the same breakdown as Figure 1 🧚

2.1. Split MAC with WTP Encryption ✨

this is the functional split for Split MAC with WTP encryption, shown in Figure 2 🌈 It's similar to the Split MAC description in [RFC5416], with one big difference: IEEE 802.11 encryption/decryption sits on the WTP πŸ’–

Fragmentation always happens at the same entity as encryption, so in this profile, fragmentation/defragmentation is also done only at the WTP πŸ™ˆ Scheduling is marked as WTP/AC. As [RFC5416] explains, that means the admission control part of IEEE 802.11 lives on the AC, while the real-time scheduling and queuing functions are on the WTP πŸ¦‹

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            Functions                  | Profile   |
|                                       |    0      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Distribution Service     |   AC      |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Integration Service      |   AC      |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Beacon Generation        |   WTP     |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Probe Response Generation|   WTP     |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Function    |Power Mgmt/              |   WTP     |
+             |Packet Buffering        |           |
|             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Fragmentation/           |   WTP     |
+             |Defragmentation          |           |
|             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Assoc/Disassoc/Reassoc   |   AC      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Classifying              |   AC      |
+   IEEE      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 802.11 QoS  |Scheduling               |   WTP/AC  |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Queuing                  |   WTP     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |IEEE 802.1X/EAP          |   AC      |
+   IEEE      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 802.11 RSN  |RSNA Key Management      |   AC      |
+  (WPA2)     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |IEEE 802.11              |   WTP     |
+             |Encryption/Decryption    |           |
|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note:
EAP - Extensible Authentication Protocol

        Figure 2: Functions in Split MAC with WTP Encryption

2.2. Split MAC with AC Encryption ✨

okay so the Split MAC with AC encryption πŸ” is the one where the functional split is shown in Figure 3 πŸ’… bestie, this profile is basically giving the same vibes as the Split MAC in [RFC5416] πŸŽ€, EXCEPT the IEEE 802.11 encryption/decryption happens at the AC πŸ‘‘. And since fragmentation always happens at the same entity as the encryption, in this profile the AC does the fragmentation/defragmentation too ✨ that's the whole plot twist 😭

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            Functions                  | Profile   |
|                                       |    1      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Distribution Service     |   AC      |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Integration Service      |   AC      |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Beacon Generation        |   WTP     |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Probe Response Generation|   WTP     |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Function    |Power Mgmt/              |   WTP     |
+             |Packet Buffering         |           |
|             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Fragmentation/           |   AC      |
+             |Defragmentation          |           |
|             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Assoc/Disassoc/Reassoc   |   AC      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Classifying              |   AC      |
+   IEEE      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 802.11 QoS  |Scheduling               |   WTP     |
+             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |Queuing                  |   WTP     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |IEEE 802.1X/EAP          |   AC      |
+   IEEE      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 802.11 RSN  |RSNA Key Management      |   AC      |
+  (WPA2)     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             |IEEE 802.11              |   AC      |
+             |Encryption/Decryption    |           |
|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

        Figure 3: Functions in Split MAC with AC encryption

2.3. IEEE 802.11 MAC Profile Frame Exchange πŸ¦‹

time for the message exchange πŸ’¬ Figure 4 shows an example of how the IEEE 802.11 MAC Profile message element gets used. First the WTP tells the AC which MAC Profiles it supports πŸ“£ that happens in either a Discovery Request message or the Join Request message 🫢 Then the AC picks the right profile and configures the WTP with it while it's setting up the WLAN ✨ the whole thing is literally a dance πŸ’ƒ

    +-+-+-+-+-+-+                             +-+-+-+-+-+-+
    |    WTP    |                             |    AC     |
    +-+-+-+-+-+-+                             +-+-+-+-+-+-+
          |Join Request[Supported IEEE 802.11       |
          |       MAC Profiles   ]                  |
          |---------------------------------------->|
          |                                         |
          |Join Response                            |
          |<----------------------------------------|
          |                                         |
          |IEEE 802.11 WLAN Config. Request [       |
          | IEEE 802.11 Add WLAN,                   |
          | IEEE 802.11 MAC Profile                 |
          |   ]                                     |
          |<----------------------------------------|
          |                                         |
          |IEEE 802.11 WLAN Config. Response        |
          |---------------------------------------->|

       Figure 4: Message Exchange for Negotiating MAC Profiles

3. MAC Profile Message Element Definitions πŸŽ€

3.1. IEEE 802.11 Supported MAC Profiles 🌸

the IEEE 802.11 Supported MAC Profile message element is how the WTP spills the tea on which profiles it supports πŸ«– It can show up in the Discovery Request message, the Primary Discovery Request message, and the Join Request message, and each of those may include one such message element πŸ’–

        0               1               2               3
        0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0
       +=+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
       | Num_Profiles  |  Profile_1    |   Profile_[2..N]..
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

            Figure 5: IEEE 802.11 Supported MAC Profiles
  • Type: 1060 for IEEE 802.11 Supported MAC Profiles πŸ“
  • Num_Profiles >=1: This refers to the number of profiles present in this message element. There must be at least one profile. πŸ’…
  • Profile: Each profile is identified by a value specified in Section 3.2. 🧚

3.2. IEEE 802.11 MAC Profile πŸ’œ

the IEEE 802.11 MAC Profile message element is the one where the AC gets to pick a profile πŸ‘‘ This message element may be provided along with the IEEE 802.11 ADD WLAN message element while the WLAN is being configured on the WTP ✨

        0 1 2 3 4 5 6 7
       +=+-+-+-+-+-+-+-+
       |  Profile      |
       +-+-+-+-+-+-+-+-+

                  Figure 6: IEEE 802.11 MAC Profile
  • Type: 1061 for IEEE 802.11 MAC Profile πŸ¦‹
  • Profile: The profile is identified by a value as given below 🌈
    • 0: This refers to the IEEE 802.11 Split MAC Profile with WTP encryption
    • 1: This refers to the IEEE 802.11 Split MAC Profile with AC encryption

4. Security Considerations 🚨

🚨 this section is SERIOUS, bestie, read it twice 🚨

This document does not introduce any new security risks compared to [RFC5416]. The negotiation messages between the WTP and AC have origin authentication and data integrity. As a result, an attacker cannot interfere with the messages to force a less-secure mode choice. The security considerations described in [RFC5416] apply here as well. πŸ”’πŸ’œ

5. IANA Considerations πŸ“‹

the following IANA actions have been completed βœ…

  • This specification defines two new message elements: IEEE 802.11 Supported MAC Profiles (described in Section 3.1) and the IEEE 802.11 MAC Profile (described in Section 3.2). These elements have been registered in the existing "CAPWAP Message Element Type" registry, defined in [RFC5415].
        CAPWAP Protocol Message Element                Type Value
        IEEE 802.11 Supported MAC Profiles              1060
        IEEE 802.11 MAC Profile                         1061
  • The IEEE 802.11 Supported MAC Profiles message element and IEEE 802.11 MAC Profile message element include a Profile field (as defined in Section 3.2). The Profile field in the IEEE 802.11 Supported MAC Profiles denotes the MAC Profiles supported by the WTP. The Profile field in the IEEE 802.11 MAC Profile denotes the MAC Profile assigned to the WTP. The namespace for the field is 8 bits (0-255). This specification defines two values: zero (0) and one (1) as described below. The remaining values (2-255) are controlled and maintained by IANA, and the registration procedure is Expert Review [RFC5226]. IANA has created a new subregistry called "IEEE 802.11 Split MAC Profile" under the existing registry "Control And Provisioning of Wireless Access Points (CAPWAP) Parameters". The registry format is given below.
         Profile                             Type Value  Reference
         Split MAC with WTP encryption       0           RFC 7494
         Split MAC with AC encryption        1           RFC 7494

6. References πŸ“š

6.1. Normative References πŸ’Ž

[IEEE.802.11]
           IEEE, "IEEE Standard for Information Technology -
           Telecommunications and information exchange between
           systems - Local and metropolitan area networks - Specific
           requirements Part 11: Wireless LAN Medium Access Control
           (MAC) and Physical Layer (PHY) Specifications", IEEE Std
           802.11-2012, March 2012,
           <http://standards.ieee.org/about/get/802/802.11.html>.

[RFC5415]  Calhoun, P., Ed., Montemurro, M., Ed., and D. Stanley,
           Ed., "Control And Provisioning of Wireless Access Points
           (CAPWAP) Protocol Specification", RFC 5415, March 2009,
           <http://www.rfc-editor.org/info/rfc5415>.

[RFC5416]  Calhoun, P., Ed., Montemurro, M., Ed., and D. Stanley,
           Ed., "Control and Provisioning of Wireless Access Points
           (CAPWAP) Protocol Binding for IEEE 802.11", RFC 5416,
           March 2009, <http://www.rfc-editor.org/info/rfc5416>.

6.2. Informative References 🌷

[RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
           IANA Considerations Section in RFCs", BCP 26, RFC 5226,
           May 2008, <http://www.rfc-editor.org/info/rfc5226>.

Acknowledgments πŸ’–

the authors are grateful for extremely valuable suggestions from Dorothy Stanley in developing this specification 🫢

guidance from the management team (Melinda Shore, Scott Bradner, Chris Liljenstolpe, Benoit Claise, Joel Jaeggli, and Dan Romascanu) is highly appreciated πŸ™Œ

Contributors πŸŽ€

Yifan Chen <chenyifan@chinamobile.com>

Naibao Zhou <zhounaibao@chinamobile.com>

Authors' Addresses 🧚

Chunju Shao
China Mobile
No.32 Xuanwumen West Street
Beijing  100053
China

EMail: shaochunju@chinamobile.com


Hui Deng
China Mobile
No.32 Xuanwumen West Street
Beijing  100053
China

EMail: denghui@chinamobile.com


Rajesh S. Pazhyannur
Cisco Systems
170 West Tasman Drive
San Jose, CA 95134
United States

EMail: rpazhyan@cisco.com


Farooq Bari
AT&T
7277 164th Ave NE
Redmond, WA 98052
United States

EMail: farooq.bari@att.com


Rong Zhang
China Telecom
No.109 Zhongshandadao avenue
Guangzhou  510630
China

EMail: zhangr@gsta.com


Satoru Matsushima
SoftBank Telecom
1-9-1 Higashi-Shinbashi, Munato-ku
Tokyo
Japan

EMail: satoru.matsushima@g.softbank.co.jp
πŸ“¦ where this page comes from