Internet-Draft WBA Connect-Info October 2024
Grayson, et al. Expires 18 April 2025 [Page]
Workgroup:
RADEXT Working Group
Internet-Draft:
draft-grayson-connectinfo-00
Published:
Intended Status:
Informational
Expires:
Authors:
M. Grayson
Cisco Systems
J. Redmore
CableLabs
S. Gundavelli
Cisco Systems
B. Tomas
Wireless Broadband Alliance
M. Sym
Single Digits

A syntax for the RADIUS Connect-Info attribute used in Wi-Fi networks

Abstract

This document describes a syntax for the Connect-Info attribute used with the Remote Authentication Dial In User Service (RADIUS) protocol, enabling clients to provide servers information pertaining to the operation of an IEEE 802.11 wireless network.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 18 April 2025.

1. Introduction

The Connect-Info attribute is defined in [RFC2865] to enable a Network Access Server (NAS) to indicate to a RADIUS server "the nature of the user's connection". [RFC2869] includes the recommendation that:

  • The connection speed SHOULD be included at the beginning of the first Connect-Info attribute in the packet. If the transmit and receive connection speeds differ, they may both be included in the first attribute with the transmit speed first (the speed the NAS modem transmits at), a slash (/), the receive speed, then optionally other information.

but where the definition of "speed" is not defined in [RFC2869].

The Connect-Info attribute can be sent in both Access-Request and Accounting-Request messages, as shown in Figure 1.

+--------------------------------------------------------------+
| Attribute | Request | Accept | Reject | Challenge | Acct-Req |
+--------------------------------------------------------------+
| Connect-  |   0-1   |   0    |   0    |     0     |    0+    |
| Info (77) |         |        |        |           |          |
+--------------------------------------------------------------+

Figure 1: RFC2869 defined occurrence rules for Connect-Info attribute

Many NAS implementations have implemented the Connect-Info attribute. Wi-Fi vendors supporting the Connect-Info attribute start the text field with "CONNECT" that is typically followed by a floating point value representing the maximum connection speed in Mbps. Implementations follow this with text information about the 802.11 version supported, as illustrated in Figure 2.

Connect-Info = "CONNECT 11.00 Mbps  802.11b"

Figure 2: Example #1 Wi-Fi Connect-Info attribute

Other implementations have extended this baseline to signal additional information to the RADIUS server, as illustrated in Figure 3

Connect-Info = "CONNECT 54.00 Mbps / 802.11n / RSSI: 53 / Channel: 1"

Figure 3: Example #2 Wi-Fi Connect-Info attribute

The Wireless Broadband Alliance (WBA) defines the Wireless Roaming Intermediary eXchange (WRIX) framework, aimed at facilitating interconnectivity between Wi-Fi operators and the Wi-Fi roaming hub services, the Carrier Wi-Fi Services program that provides guidelines to improve customer experience on Carrier Wi-Fi networks, as well as the technical and legal frameworks that support the OpenRoaming federation of access and identity providers, enabling an automatic and secure Wi-Fi roaming experience globally [I-D.tomas-openroaming].

As part of its work program, the WBA has identified a number of use-cases that benefit from being able to share Wi-Fi access network quality metrics between a NAS and a server, including where the NAS is operated by an OpenRoaming Access Network Provider (ANP) and the server is operated by an OpenRoaming Identity Provider (IDP).

The rest of this document describes a syntax for the Connect-Info attribute that is simultaneously able to support existing vendor implementations, while being enhanced with additional optional information to support new use-cases and requirements.

1.1. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

1.2. Terminology

Access Network Provider (ANP):

  • A Wi-Fi operator that has configured its Wi-Fi equipment to support inbound roaming of users.

Identity Provider (IDP):

  • An entity that authenticates end-user Wi-Fi devices onto ANP networks.

Received Signal Strength Indicator (RSSI):

  • A measurement of the power level that is received by an antenna from a wireless device.

Wireless Roaming Intermediary eXchange (WRIX):

  • A framework, aimed at facilitating interconnectivity between operators and the Wi-Fi roaming hub services.

2. Types of Connect-Info Metrics

The access network characteristics that can be shared between NAS and AAA include those that can be used to derive a quality metric of the performance of a Wi-Fi network. These include characteristics associated with the IEEE 802.11 connection:

  • the Wi-Fi 802.11 version,

  • the Wi-Fi channel number, and

  • the Wi-Fi transmit and receive bit rates.

Other use cases benefit from being able to share characteristics able to be calculated by the Wi-Fi access point's 802.11 driver, including:

  • frame loss rate, and

  • frame retry rate.

Still other use cases benefit from sharing characteristics pertaining to the static configuration of the Wi-Fi network, including:

  • the configured value of the minimum RSSI level for a device to associate/authenticate to the access point.

Finally, other quality characteristics include measured values of:

  • received signal strength indicator (RSSI),

  • airtime utilization, and

  • noise floor.

The identified use cases include those where the metrics shared using the Connect-Info attribute are compared between different Wi-Fi systems, that may be operated using equipment from different vendors. In such a scenario, the algorithm used to generate a quality metric on a first installation may be different from the algorithm used to generate the same quality metric in a second installation. In order to facilitate comparisons in such a situation, there are benefits in sharing additional information pertaining to how a quality metric is calculated. This additional information includes:

  • whether a calculation represents an average or a median value,

  • whether an average value represent a linear or exponential moving average, and

  • the configuration of the time duration over which a metric was calculated.

3. ABNF syntax for Connect-Info

The Augmented Backus-Naur form (ABNF) is a syntax for specifications defined in [RFC5234]. The proposed ABNF syntax for the text of the Connect-Info attribute is shown below. The ABNF syntax allows measured

;-----------------------------------------------------------------------
; Connect-Info RADIUS Attribute #77 Syntax
;-----------------------------------------------------------------------

connect-info-77  =  "CONNECT" *SP connectAttribute
                        *( DELIMITER connectAttribute )

connectAttribute =  (MAXSPEED " Mbps") / PHYRATE
                                                ; indication of maximum
                                                ; achievable data rate

connectAttribute =/ "802.11" WIFIGEN            ; Wi-Fi 802.11 version

;-----------------------------------------------------------------------
; connectAttributes - NON-DEVICE/CLIENT RELATED.
;
; These key-value pairs MAY be included in the Connect-Info attribute
; when the attribute is included in the Access-Request or
; Accounting-Request message.
;-----------------------------------------------------------------------

connectAttribute =/ "Channel:" *SP CHANNUM    ; Wi-Fi channel number

connectAttribute =/ "Band:" *SP ("2.4"/"5"/"6")
                                              ; the Wi-Fi band - used to
                                              ; differentiate between
                                              ; re-use of channel
                                              ; numbers in 6 GHz

connectAttribute =/ "RSSI-min:" *SP SS        ; the absolute value of
                                              ; configured minimum RSSI
                                              ; in dBm on the WLAN
                                              ; Access Point

connectAttribute =/ "Noise:" *SP SS ["(" CALC ")"]
                                              ; the absolute value of
                                              ; current noise floor
                                              ; in the operating band
                                              ; measured in dBm and
                                              ; optionally the
                                              ; algorithm used to
                                              ; calculate the value

connectAttribute =/ "ChanUtil:" *SP PCT ["(" CALC ")"]
                                              ; percentage of time AP
                                              ; considers channel busy
                                              ; due to 802.11 traffic,
                                              ; encoded as an integer %
                                              ; and optionally the
                                              ; algorithm used to
                                              ; calculate the value

;-----------------------------------------------------------------------
; connectAttributes - DEVICE/CLIENT RELATED
;
; The calculation of FrameLoss and FrameRetry attributes benefit from
; being based on a number of frames exchanged between device and access
; point. Their inclusion in the Connect-Info attribute MAY be limited to
; use cases where the attribute is included in the Accounting-Request
; message when the Acct-Status-Type has a value of Interim-Update or
; Stop.
;-----------------------------------------------------------------------

connectAttribute =/ "RSSI:" *SP SS ["(" CALC ")"]
                                              ; the absolute value of
                                              ; Station RSSI in dBm and
                                              ; optionally the
                                              ; algorithm used to
                                              ; calculate the value

connectAttribute =/ "TxBitRate:" *SP RATE     ; the latest TxRate used
                                              ; by the AP to send to
                                              ; the device

connectAttribute =/ "RxBitRate:" *SP RATE     ; the latest RxRate used
                                              ; by the AP to receive
                                              ; from the device

connectAttribute =/ "FrameLoss:" *SP PCT      ; the average 802.11 frame
                                              ; loss rate experienced,
                                              ; encoded as an integer %

connectAttribute =/ "FrameRetry:" *SP PCT     ; the average 802.11 frame
                                              ; retry rate experienced,
                                              ; encoded as an integer %

;-----------------------------------------------------------------------
; Definitions
;-----------------------------------------------------------------------

MAXSPEED         =  (DIGIT / (NZDIGIT DIGIT) / (NZDIGIT DIGIT DIGIT) /
                    (NZDIGIT DIGIT DIGIT DIGIT) /
                    (NZDIGIT DIGIT DIGIT DIGIT DIGIT)) "." DIGIT DIGIT
                    ; Maximum AP to Device speed in Mbps,
                    ; (0.00 - 99999.99), calculated as:
                    ; SC * MD * CR * SS / (SYM + GD)
                    ; where:
                    ; SC  = Number of Data Sub-Carriers
                    ; CR  = Coding Rate, e.g., 0.5 (BPSK), 0.75 (256QAM)
                    ; MD  = Modulation rate (1-8),
                    ;       where 2^MD = num mod'n states
                    ; SS  = number of spatial streams
                    ; SYM = symbol interval (micro-seconds)
                    ; GD  = guard interval (micro-seconds)

PHYRATE          =  "MaxRate" *SP "MCS" (DIGIT/(NZDIGIT DIGIT)) "-"
                        NZDIGIT "SS"
                    ; where the digits after "MCS" corresponds to the
                    ; Modulation and Coding Scheme and the digits
                    ; preceding "SS" correspond to the number of
                    ; spatial streams

RATE             =  (DIGIT / (NZDIGIT DIGIT) / (NZDIGIT DIGIT DIGIT) /
                    (NZDIGIT DIGIT DIGIT DIGIT))

WIFIGEN          =  "b" / "g" / "a" / "n" / "ac" / "ax" / "be"

SS               =  DIGIT / (NZDIGIT DIGIT) / ("1" DIGIT DIGIT)
                    ; Absolute value of Received Signal Strength when
                    ; expressed in dBm
                    ; e.g. 41 represents -41 dBm

CHANNUM          =  NZDIGIT / (NZDIGIT DIGIT) / ("1" DIGIT DIGIT) /
                    ("2" U4DIGIT DIGIT)
                    ; Encoding for Channel Numbers (1 - 249)

PCT              =  DIGIT / (NZDIGIT DIGIT) / "100"
                    ; Percentage (0 - 100)

CALC             =  METRIC [ "-" ALG ]

METRIC           = "AVG" / "MED"
                    ; AVG indicates the metric is an average value
                    ; MED indicates the metric is a median value

ALG              = "LIN" DURATION
                    ; LIN indicates the algorithm used is a linear
                    ; average

ALG              =/"EXP" WEIGHT
                    ; EXP indicates the algorithm used is an exponential
                    ; moving average

DURATION         = ( DIGIT / (NZDIGIT DIGIT)/(NZDIGIT DIGIT DIGIT) ) "S"
                    ; The duration in seconds over which an algorithm
                    ; operates

WEIGHT           =  NZDIGIT
                    ; where the exponential weighting is 2^WEIGHT

DELIMITER        =  SLASH / 1*SP
                    ; existing vendor delimiters

SP               =  %x20
SLASH            =  *SP %x2F *SP

DIGIT            =  %x30-39 ; 0-9
NZDIGIT          =  %x31-39 ; 1-9
U4DIGIT          =  %x30-34 ; 0-4 (up to 4)

Figure 4: ABNF definition for encoding of Connect-Info text field

4. Example encoding in Access-Request

The Connect-Info attribute value is limited to 253 bytes. Example encodings using the ABNF definition are illustrated in Figure 5, indicating that the metrics can be signaled while keeping the attribute size below 253 bytes. In these examples, less than 180 bytes are used to encode the access network metric information.

Connect-Info = "CONNECT 54.00 Mbps / 802.11n / Channel: 1 / RSSI: 53"

Connect-Info = "CONNECT 400.00 Mbps 802.11ac Channel:46 RSSI:50
                RSSI-min:80"

Connect-Info = "CONNECT 400.00 Mbps 802.11ac Channel:46
                RSSI:48(AVG-EXP8) RSSI-min:80 Noise:94"

Connect-Info = "CONNECT 400.00 Mbps 802.11ac Channel:46
                RSSI:48(AVG-EXP8) RSSI-min:80 Noise:94(MED-LIN80S)
                ChanUtil:25(AVG-LIN600S)"

Connect-Info = "CONNECT 400.00 Mbps 802.11ac
                Channel:46 RSSI:56(AVG-EXP8) RSSI-min:80
                Noise:90(MED-LIN80S) ChanUtil:35(AVG-LIN300S)
                TxBitRate:150.0 RxBitRate:150.0"

Connect-Info = "CONNECT 400.00 Mbps 802.11ac Channel:46 Band:5
                RSSI:56(AVG-EXP8) RSSI-min:80 Noise:90(MED-LIN80S)
                ChanUtil:35(AVG-LIN300S) TxBitRate:150.0
                RxBitRate:150.0 FrameLoss:3 FrameRetry:6"

Connect-Info = "CONNECT MaxRate MCS11-2SS / 802.11ax / Channel:37 /
                Band:6 / RSSI:43(AVG-EXP8) / Noise:50 /
                ChanUtil:2(AVG-LIN5S)"
Figure 5: Example encodings of Connect-Info attribute using ABNF definition

5. Implementations

A proof of concept has been built using modified hostapd code (https://w1.fi/) that is able to populate the connect-info attributes according to the syntax defined above.

6. Summary

To be completed.

7. IANA Considerations

To be completed.

8. References

8.1. Normative References

[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/rfc/rfc2119>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/rfc/rfc8174>.

8.2. Informative References

[I-D.tomas-openroaming]
Tomas, B., Grayson, M., Canpolat, N., Cockrell, B. A., and S. Gundavelli, "WBA OpenRoaming Wireless Federation", Work in Progress, Internet-Draft, draft-tomas-openroaming-03, , <https://datatracker.ietf.org/doc/html/draft-tomas-openroaming-03>.
[RFC2865]
Rigney, C., Willens, S., Rubens, A., and W. Simpson, "Remote Authentication Dial In User Service (RADIUS)", RFC 2865, DOI 10.17487/RFC2865, , <https://www.rfc-editor.org/rfc/rfc2865>.
[RFC2869]
Rigney, C., Willats, W., and P. Calhoun, "RADIUS Extensions", RFC 2869, DOI 10.17487/RFC2869, , <https://www.rfc-editor.org/rfc/rfc2869>.
[RFC5234]
Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/RFC5234, , <https://www.rfc-editor.org/rfc/rfc5234>.

Acknowledgements

The authors would like to thank all the members of the WBA's Access Network Metrics project team who help review and refine the Connect-Info syntax.

Authors' Addresses

Mark Grayson
Cisco Systems
10 New Square Park
Feltham
TW14 8HA
United Kingdom
Joshua Redmore
CableLabs
858 Coal Creek Cr.
Louisville, 80027
United States of America
Sri Gundavelli
Cisco Systems
170 West Tasman Drive
San Jose, 95134
United States of America
Bruno Tomas
Wireless Broadband Alliance
5000 Executive Parkway, Suite 302
San Ramon, 94583
United States of America
Michael Sym
Single Digits
4 Bedford Farms Drive, Suite 210
Bedford, 1608
United States of America