RFC 8691

Basic Support for IPv6 Networks Operating Outside the Context of a Basic Service Set over IEEE Std 802.11

๐Ÿ“… published December 2019, from ietf

Basic Support for IPv6 Networks Operating Outside the Context of a Basic Service Set over IEEE Std 802.11 ๐Ÿš—๐Ÿ’จ

okay bestie, the title block is giving very official vibes so let me spill the tea ๐Ÿซถ This is RFC 8691 ๐Ÿ“œ, published December 2019 as a Standards Track document ๐Ÿ’…. The authors are N. Benamar (Moulay Ismail University of Meknes), J. Hรคrri (EURECOM), J. Lee (Sangmyung University), and T. Ernst (YoGoKo) โœจ. It's an ISSN 2070-1721 doc, and it doesn't obsolete or update any other RFCs, so it's a clean, standalone glow-up ๐Ÿฆ‹.

The whole point is giving IPv6 a place to live on 802.11-OCB links, the vehicular-friendly flavour of Wi-Fi where cars and roadside units talk to each other without a Basic Service Set ๐Ÿš™๐ŸŒธ.

Abstract

okay so the vibe here is: this doc gives you methods and settings to use IPv6 between nodes that are in range of each other over a single IEEE 802.11-OCB link ๐Ÿ›ฃ๏ธ. The best part? Existing stacks need minimal changes ๐Ÿ™Œ. It also spills the limitations of doing it this way ๐Ÿ’€. Fancier stuff like optimizations and IPv6 over more complicated setups is NOT covered here and is saved for future work ๐Ÿ”ฎ.

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 out Section 2 of RFC 7841 ๐Ÿ’œ. The current status, errata, and feedback info live at https://www.rfc-editor.org/info/rfc8691 ๐Ÿ“.

Copyright (c) 2019 IETF Trust and the document authors, all rights reserved โญ. This doc is subject to BCP 78 and the IETF Trust's Legal Provisions, so read those carefully because they spell out your rights ๐Ÿงš. If you extract Code Components from it, they need Simplified BSD License text (see Section 4.e of the Trust Legal Provisions) and come with no warranty ๐Ÿซถ.

Table of Contents

1.  Introduction
2.  Terminology
3.  Communication Scenarios Where IEEE 802.11-OCB Links Are Used
4.  IPv6 over 802.11-OCB
  4.1.  Maximum Transmission Unit (MTU)
  4.2.  Frame Format
  4.3.  Link-Local Addresses
  4.4.  Stateless Autoconfiguration
  4.5.  Address Mapping
    4.5.1.  Address Mapping -- Unicast
    4.5.2.  Address Mapping -- Multicast
  4.6.  Subnet Structure
5.  Security Considerations
  5.1.  Privacy Considerations
    5.1.1.  Privacy Risks of Meaningful Information in Interface
            IDs
  5.2.  MAC Address and Interface ID Generation
  5.3.  Pseudonymization Impact on Confidentiality and Trust
6.  IANA Considerations
7.  References
  7.1.  Normative References
  7.2.  Informative References
Appendix A.  802.11p
Appendix B.  Aspects Introduced by OCB Mode to 802.11
Appendix C.  Changes Needed on an 802.11a Software Driver to Become
        an 802.11-OCB Driver
Appendix D.  Protocol Layering
Appendix E.  Design Considerations
Appendix F.  IEEE 802.11 Messages Transmitted in OCB Mode
Appendix G.  Examples of Packet Formats
  G.1.  Capture in Monitor Mode
  G.2.  Capture in Normal Mode
Appendix H.  Extra Terminology
Appendix I.  Neighbor Discovery (ND) Potential Issues in Wireless
        Links
Acknowledgements
Contributors
Authors' Addresses

1. Introduction โœจ

okay so this doc is a baseline for using IPv6 between nodes in range of each other over a single IEEE 802.11-OCB link [IEEE-802.11-2016] (aka 802.11p, see Appendices A, B, and C) ๐Ÿšฆ. It keeps changes to existing stacks minimal and calls out the limitations ๐ŸŽ€. Concretely, it describes layering IPv6 on top of the IEEE Std 802.11 MAC layer, or on an IEEE Std 802.3 MAC layer with a frame translation underneath ๐Ÿงš. The resulting stack is derived from IPv6 over Ethernet [RFC2464] but runs over 802.11-OCB to give at least P2P (point-to-point) connectivity using IPv6 Neighbor Discovery (ND) and link-local addresses ๐Ÿฆ‹.

The IPv6 network layer works on 802.11-OCB the same way it works on Ethernet, with these exceptions ๐Ÿ‘‘:

  • ๐Ÿ’… Exceptions because IPv6 network layer behaves differently on 802.11 than on Ethernet. How IP works on Ethernet is described in [RFC1042] and [RFC2464].
  • ๐ŸŒธ Exceptions because 802.11-OCB is OCB, unlike plain 802.11. This affects security, privacy, subnet structure, and movement detection ๐Ÿ™ˆ. Security and privacy recommendations are discussed in Sections 4.4 and 5 ๐Ÿ’œ. The subnet structure is in Section 4.6 ๐Ÿ“. Movement detection on OCB links is NOT described in this document ๐Ÿ’€. Likewise, ND extensions and IP Wireless Access in Vehicular Environments (IPWAVE) optimizations for vehicular communications are out of scope here ๐Ÿš—. The expectation is that further specs will cover more complex vehicular networking scenarios ๐Ÿ”ฎ.

The reader can check [IPWAVE] for an overview of problems with running IPv6 over 802.11-OCB ๐Ÿ“š. Reiterating those problems is out of scope for this doc ๐Ÿซถ.

2. Terminology ๐ŸŽ€

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 ๐Ÿ’….

The doc uses these terms ๐Ÿ’–:

IP-OBU (Internet Protocol On-Board Unit): an IP-OBU is a computer sitting in a vehicle like a car, bicycle, or similar ๐Ÿšฒ. It has at least one IP interface that runs in mode OCB of 802.11 and has an "OBU" transceiver. See the definition of "OBU" in Appendix H โœจ.

IP-RSU (IP Roadside Unit): an IP-RSU sits along the road ๐Ÿ›ฃ๏ธ. It has at least two distinct IP-enabled interfaces. The wireless PHY/MAC layer of at least one of those interfaces is configured to operate in 802.11-OCB mode ๐ŸŒˆ. An IP-RSU talks to the IP-OBU over an 802.11 wireless link operating in OCB mode ๐Ÿ“ก. It's similar to an Access Network Router (ANR), defined in [RFC3753], and a Wireless Termination Point (WTP), defined in [RFC5415] ๐Ÿงš.

OCB (outside the context of a Basic Service Set - BSS): a mode where a station (STA) is not a member of a BSS and does not use IEEE Std 802.11 authentication, association, or data confidentiality ๐Ÿ™ˆ.

802.11-OCB: the mode specified in IEEE Std 802.11-2016 when the MIB attribute dot11OCBActivited is 'true' ๐Ÿ’œ.

IEEE 802.11-OCB networks are used for vehicular communications as 'Wireless Access in Vehicular Environments' ๐ŸŒธ. Check out [IPWAVE] for scenarios and requirements for IP in Intelligent Transportation Systems (ITS) ๐Ÿ“.

The link model is: STA --- 802.11-OCB --- STA ๐Ÿฆ‹. In vehicular networks, STAs can be IP-RSUs and/or IP-OBUs ๐Ÿš—. All links are assumed to be P2P, and multiple links can sit on one radio interface ๐Ÿ’–. While 802.11-OCB is clearly specified and a legacy IPv6 stack can operate on these links, the vehicular operating environment brings in new perspectives ๐Ÿ‘‘.

4. IPv6 over 802.11-OCB โœจ

4.1. Maximum Transmission Unit (MTU)

The default MTU for IP packets on 802.11-OCB is inherited from [RFC2464], so it's 1500 octets ๐Ÿ“. As noted in [RFC8200], every link on the Internet MUST have a minimum MTU of 1280 octets and MUST follow the other recommendations, especially about fragmentation ๐ŸŒˆ.

4.2. Frame Format ๐ŸŽ€

IP packets MUST be transmitted over 802.11-OCB media as QoS data frames whose format is specified in an IEEE 802.11 spec [IEEE-802.11-2016] ๐Ÿ’….

The IPv6 packet sent over 802.11-OCB is immediately preceded by a Logical Link Control (LLC) header and an 802.11 header ๐Ÿงš. In the LLC header, and following EtherType Protocol Discrimination (EPD; see Appendix D), the Type field MUST be set to 0x86DD (IPv6) ๐Ÿ’œ. The mapping to the 802.11 data service SHOULD use a 'priority' value of 1 (QoS with a 'Background' user priority), reserving higher priority values for safety-critical and time-sensitive traffic, including the ones listed in [ETSI-sec-archi] ๐Ÿšจ.

To simplify the API between the operating system and the 802.11-OCB media, device drivers MAY implement IPv6 over Ethernet as per [RFC2464], then do a frame translation from 802.3 to 802.11 to minimize code changes ๐Ÿ› ๏ธ.

There are several types of IPv6 addresses [RFC4291] [RFC4193] that MAY be assigned to an 802.11-OCB interface ๐ŸŒธ. Among these, only IPv6 link-local addresses can be formed using an EUI-64 identifier, particularly during transition time (the period before an interface starts using an address different from the LL one) ๐Ÿ“.

If the IPv6 link-local address is formed using an EUI-64 identifier, the mechanism for forming it is the same one used to form an IPv6 link-local address on Ethernet links ๐Ÿ’–. Regardless of whether the interface identifier is derived from the EUI-64 identifier, its length is 64 bits, as is the case for Ethernet [RFC2464] ๐Ÿซถ.


okay that's part 1 of 8 bestie ๐Ÿ’…๐ŸŽ€ more parts are coming, so stay tuned ๐ŸŒˆโœจ

4.4. Stateless Autoconfiguration โœจ

okay so the steps a host takes to autoconfigure its IPv6 interfaces are all spelled out in [RFC4862] ๐Ÿ’… this section is about how the Interface Identifiers (IIDs) get formed for 'Global' or 'Unique Local' IPv6 addresses. the IIDs for 'link-local' addresses get their own section, which is Section 4.3 ๐Ÿซถ

the RECOMMENDED way to form stable IIDs is described in [RFC8064] โœจ the method from Section 4 of [RFC2464] MAY be used during the transition period, especially for IPv6 link-local addresses ๐ŸŒธ and no matter which method you use, the IID is 64 bits long, same as IPv6 over Ethernet [RFC2464] ๐ŸŽ€

the bits in the IID don't have any specific meaning, so the identifier should be treated as an opaque value ๐Ÿฆ‹ BUT the 'Universal' and 'Group' bits in the identifier of an 802.11-OCB interface are significant, because that identifier is an IEEE link-layer address. the details of that are in [RFC7136] ๐Ÿ‘‘

semantically opaque IIDs, instead of meaningful IIDs derived from a valid and meaningful MAC address ([RFC2464], Section 4), help avoid certain privacy risks (see the risks mentioned in Section 5.1.1) ๐Ÿ™ˆ if you need semantically opaque IIDs, they may be generated using the method for generating semantically opaque IIDs with IPv6 Stateless Address Autoconfiguration given in [RFC7217]. typically, an opaque IID is formed starting from identifiers different from the MAC addresses and from cryptographically strong material. so privacy-sensitive information is absent from Interface IDs, because it is impossible to calculate back the initial value that the Interface ID was first generated from ๐Ÿ”ฅ

some applications that use IPv6 packets on 802.11-OCB links (among other link types) may benefit from IPv6 addresses whose IIDs don't change too often ๐Ÿงš it is RECOMMENDED to use the mechanisms described in [RFC7217] to permit the use of stable IIDs that do not change within one subnet prefix. a possible source for the Net_Iface parameter is a virtual interface name or logical interface name that is decided by a local administrator ๐Ÿ’œ


4.5. Address Mapping ๐ŸŒˆ

unicast and multicast address mapping MUST follow the procedures specified for Ethernet interfaces described in Sections 6 and 7 of [RFC2464]. no skipping, bestie ๐Ÿ’…

4.5.1. Address Mapping -- Unicast

this document is scoped for Address Resolution (AR) and Duplicate Address Detection (DAD) per [RFC4862] โœจ

4.5.2. Address Mapping -- Multicast

the multicast address mapping is performed according to the method specified in Section 7 of [RFC2464]. the meaning of the value "33-33" mentioned there is defined in Section 2.3.1 of [RFC7042] ๐Ÿฆ‹

transmitting IPv6 packets to multicast destinations over 802.11 links proved to have some performance issues [IEEE802-MCAST] ๐Ÿ˜ญ these issues may be exacerbated in OCB mode. future improvement to this specification should consider solutions for these problems ๐Ÿซถ


4.6. Subnet Structure ๐Ÿš—๐Ÿ’จ

when vehicles are in close range, a subnet may be formed over 802.11-OCB interfaces (not by their in-vehicle interfaces) ๐Ÿ‘‘ a Prefix List conceptual data structure ([RFC4861], Section 5.1) is maintained for each 802.11-OCB interface.

the IPv6 Neighbor Discovery protocol (ND) requires reflexive properties (bidirectional connectivity), which is generally, though not always, the case for P2P OCB links. ND also requires transitive properties for DAD and AR, so an IPv6 subnet can be mapped on an OCB network only if all nodes in the network share a single physical broadcast domain ๐Ÿ“ the extension to IPv6 ND operating on a subnet that covers multiple OCB links and does not fully overlap (i.e., non-broadcast multi-access (NBMA)) is not in scope of this document. finally, ND requires permanent connectivity of all nodes in the subnet to defend their addresses. in other words, very stable network conditions ๐Ÿฅบ

the structure of this subnet is ephemeral, since it is strongly influenced by the mobility of vehicles. hidden terminal effects appear, and the 802.11 networks in OCB mode may be considered ad hoc networks with an addressing model, as described in [RFC5889] ๐ŸŒช๏ธ on the other hand, the structure of the internal subnets in each vehicle is relatively stable ๐Ÿซง

as recommended in [RFC5889], when the timing requirements are very strict (e.g., fast-drive-through IP-RSU coverage), no on-link subnet prefix should be configured on an 802.11-OCB interface. in those cases, the exclusive use of IPv6 link-local addresses is RECOMMENDED ๐ŸŽ๏ธ

even if the timing requirements are not very strict (e.g., the moving subnet formed by two following vehicles is stable, and a fixed IP-RSU is absent), the subnet is disconnected from the Internet (i.e., a default route is absent), and the addressing peers are equally qualified (that is, it is impossible to determine whether some vehicle owns and distributes addresses to others). in that situation, the use of link-local addresses is RECOMMENDED ๐ŸŽ€

the baseline ND protocol [RFC4861] MUST be supported over 802.11-OCB links โœจ transmitting ND packets may prove to have some performance issues, as mentioned in Section 4.5.2 and Appendix I. these issues may be exacerbated in OCB mode. solutions for these problems should consider the OCB mode of operation, and future solutions to OCB should consider solutions for avoiding broadcast ๐Ÿ“ก the best of current knowledge indicates the kinds of issues that may arise with ND in OCB mode, and they are described in Appendix I ๐Ÿ“–

protocols like Mobile IPv6 [RFC6275] [RFC3963] and DNAv6 [RFC6059], which depend on timely movement detection, might need additional tuning work to handle the lack of link-layer notifications during handover. this topic is left for further study ๐Ÿ”ฎ


5. Security Considerations ๐Ÿ”

any security mechanism at the IP layer or above that may be implemented for the general case of IPv6 may also be implemented for IPv6 operating over 802.11-OCB ๐Ÿ’œ

the OCB operation does not use existing 802.11 link-layer security mechanisms. there is no encryption applied below the network layer running on 802.11-OCB. at the application layer, the IEEE 1609.2 document [IEEE-1609.2] provides security services for certain applications to use, but application-layer mechanisms are out of scope of this document. on the other hand, a security mechanism provided at the networking layer, such as IPsec [RFC4301], may provide data security protection to a wider range of applications ๐Ÿ›ก๏ธ

802.11-OCB does not provide any cryptographic protection, because it operates outside the context of a BSS (no Association Request/Response or Challenge messages). therefore, an attacker can sniff or inject traffic while within range of a vehicle or IP-RSU (by setting an interface card's frequency to the proper range). also, an attacker may not adhere to the legal limits for radio power and can use a very sensitive directional antenna. if attackers wish to attack a given exchange, they do not necessarily need to be in close physical proximity. hence, such a link is less protected than commonly used links (a wired link or the aforementioned 802.11 links with link-layer security) ๐Ÿ˜ฑ

therefore, any node can join a subnet and directly communicate with any nodes on the subset, including potentially impersonating another node. this design allows for a number of threats outlined in Section 3 of [RFC6959] ๐Ÿ’€ while not widely deployed, SEND [RFC3971] [RFC3972] is a solution that can address spoof-based attack vectors ๐Ÿงฏ


5.1. Privacy Considerations ๐Ÿ™ˆ

as with all Ethernet and 802.11 interface identifiers [RFC7721], the identifier of an 802.11-OCB interface may involve privacy, MAC address spoofing, and IP hijacking risks. a vehicle embarking an IP-OBU whose egress interface is 802.11-OCB may expose itself to eavesdropping and subsequent correlation of data. this may reveal data considered private by the vehicle owner, and there is a risk of being tracked ๐Ÿ˜ญ

in outdoor public environments, where vehicles typically circulate, the privacy risks are greater than in indoor settings. it is highly likely that attacker sniffers are deployed along routes that listen for IEEE frames, including IP packets, of vehicles passing by ๐Ÿ‘€ for this reason, in 802.11-OCB deployments, there is a strong necessity to use protection tools such as dynamically changing MAC addresses (Section 5.2), semantically opaque Interface Identifiers, and stable Interface Identifiers (Section 4.4) ๐Ÿ›ก๏ธ an example of a change policy is to change the MAC address of the OCB interface each time the system boots up. this may help mitigate privacy risks to a certain level ๐ŸŒธ

furthermore, for privacy concerns, [RFC8065] recommends using an address-generation scheme rather than generating addresses from a fixed link-layer address. however, there are some specificities related to vehicles ๐Ÿš™ since roaming is an important characteristic of moving vehicles, the use of the same Link-Local Address over time can indicate the presence of the same vehicle in different places, and thus lead to location tracking. hence, a vehicle should get hints about a change of environment (e.g., engine running, GPS, etc.) and renew the IID in its LLAs ๐Ÿ”„

5.1.1. Privacy Risks of Meaningful Information in Interface IDs

the privacy risks of using MAC addresses displayed in Interface Identifiers are important ๐Ÿšจ IPv6 packets can be captured easily on the Internet and on-link on public roads. for this reason, an attacker may realize many attacks on privacy. one such attack on 802.11-OCB is to capture, store, and correlate company ID information present in the MAC addresses of a large number of cars (e.g., listening for Router Advertisements or other IPv6 application data packets, and recording the value of the source address in these packets) ๐Ÿš—๐Ÿš—๐Ÿš— further correlation of this information with other data captured by other means, or with other visual information (e.g., car color), may constitute privacy risks ๐ŸŽจ


5.2. MAC Address and Interface ID Generation ๐ŸŽญ

in 802.11-OCB networks, the MAC addresses may change during well-defined renumbering events โœจ at the moment the MAC address is changed on an 802.11-OCB interface, all the Interface Identifiers of IPv6 addresses assigned to that interface MUST change ๐Ÿ”

implementations should use a policy dictating when the MAC address is changed on the 802.11-OCB interface. for more information on the motivation of this policy, please refer to the privacy discussion in Appendix B ๐Ÿ“–

a 'randomized' MAC address has the following characteristics:

  • The "Local/Global" bit is set to "locally administered".
  • The "Unicast/Multicast" bit is set to "Unicast".
  • The 46 remaining bits are set to a random value using a random number generator that meets the requirements of [RFC4086].

to meet the randomization requirements for the 46 remaining bits, a hash function may be used ๐Ÿง for example, the hash function defined in [SHA256] may be used with the input of a 256-bit local secret, the 'nominal' MAC address of the interface, and a representation of the date and time of the renumbering event ๐ŸŒˆ

a randomized Interface ID has the same characteristics of a randomized MAC address, except for the length in bits ๐Ÿ’–

5.3. Pseudonymization Impact on Confidentiality and Trust ๐ŸŽ€

okay bestie, so vehicle and driver privacy ๐Ÿš— is lowkey built on pseudonymization, like the stuff we just went through in Section 5.2 ๐Ÿฆ‹. which means upper-layer protocols and applications SHOULD NOT rely on layer-2 or layer-3 addresses to decide whether the other participant can be trusted ๐Ÿ™ˆ. a pseudonym is not a trust badge, periodt ๐Ÿ’…

6. IANA Considerations ๐ŸŒธ

no cap, this document has no IANA actions ๐Ÿซถ nothing to register, nothing to update, we're literally just chillin โœจ

7. References ๐Ÿ“š

7.1. Normative References ๐Ÿ’œ

here's the full reference list, every single entry, exactly as it's written ๐Ÿ“

[IEEE-802.11-2016]
              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
              Standard 802.11-2016, December 2016,
              <https://standards.ieee.org/findstds/
              standard/802.11-2016.html>.

[RFC1042]  Postel, J. and J. Reynolds, "Standard for the transmission
              of IP datagrams over IEEE 802 networks", STD 43, RFC 1042,
              DOI 10.17487/RFC1042, February 1988,
              <https://www.rfc-editor.org/info/rfc1042>.

[RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

[RFC2464]  Crawford, M., "Transmission of IPv6 Packets over Ethernet
              Networks", RFC 2464, DOI 10.17487/RFC2464, December 1998,
              <https://www.rfc-editor.org/info/rfc2464>.

[RFC4086]  Eastlake 3rd, D., Schiller, J., and S. Crocker,
              "Randomness Requirements for Security", BCP 106, RFC 4086,
              DOI 10.17487/RFC4086, June 2005,
              <https://www.rfc-editor.org/info/rfc4086>.

[RFC4191]  Draves, R. and D. Thaler, "Default Router Preferences and
              More-Specific Routes", RFC 4191, DOI 10.17487/RFC4191,
              November 2005, <https://www.rfc-editor.org/info/rfc4191>.

[RFC4193]  Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast
              Addresses", RFC 4193, DOI 10.17487/RFC4193, October 2005,
              <https://www.rfc-editor.org/info/rfc4193>.

[RFC4291]  Hinden, R. and S. Deering, "IP Version 6 Addressing
              Architecture", RFC 4291, DOI 10.17487/RFC4291, February
              2006, <https://www.rfc-editor.org/info/rfc4291>.

[RFC4301]  Kent, S. and K. Seo, "Security Architecture for the
              Internet Protocol", RFC 4301, DOI 10.17487/RFC4301,
              December 2005, <https://www.rfc-editor.org/info/rfc4301>.

[RFC4861]  Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
              "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
              DOI 10.17487/RFC4861, September 2007,
              <https://www.rfc-editor.org/info/rfc4861>.

[RFC4862]  Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless
              Address Autoconfiguration", RFC 4862,
              DOI 10.17487/RFC4862, September 2007,
              <https://www.rfc-editor.org/info/rfc4862>.

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

[RFC6059]  Krishnan, S. and G. Daley, "Simple Procedures for
              Detecting Network Attachment in IPv6", RFC 6059,
              DOI 10.17487/RFC6059, November 2010,
              <https://www.rfc-editor.org/info/rfc6059>.

[RFC6275]  Perkins, C., Ed., Johnson, D., and J. Arkko, "Mobility
              Support in IPv6", RFC 6275, DOI 10.17487/RFC6275, July
              2011, <https://www.rfc-editor.org/info/rfc6275>.

[RFC7042]  Eastlake 3rd, D. and J. Abley, "IANA Considerations and
              IETF Protocol and Documentation Usage for IEEE 802
              Parameters", BCP 141, RFC 7042, DOI 10.17487/RFC7042,
              October 2013, <https://www.rfc-editor.org/info/rfc7042>.

[RFC7136]  Carpenter, B. and S. Jiang, "Significance of IPv6
              Interface Identifiers", RFC 7136, DOI 10.17487/RFC7136,
              February 2014, <https://www.rfc-editor.org/info/rfc7136>.

[RFC7217]  Gont, F., "A Method for Generating Semantically Opaque
              Interface Identifiers with IPv6 Stateless Address
              Autoconfiguration (SLAAC)", RFC 7217,
              DOI 10.17487/RFC7217, April 2014,
              <https://www.rfc-editor.org/info/rfc7217>.

[RFC8064]  Gont, F., Cooper, A., Thaler, D., and W. Liu,
              "Recommendation on Stable IPv6 Interface Identifiers",
              RFC 8064, DOI 10.17487/RFC8064, February 2017,
              <https://www.rfc-editor.org/info/rfc8064>.

[RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

[RFC8200]  Deering, S. and R. Hinden, "Internet Protocol, Version 6
              (IPv6) Specification", STD 86, RFC 8200,
              DOI 10.17487/RFC8200, July 2017,
              <https://www.rfc-editor.org/info/rfc8200>.

7.2. Informative References โœจ

okay bestie, now we're in the "for your reading pleasure" list ๐Ÿ“š these are the extra sources the doc points to, and the references are kept exactly as they were ๐Ÿซถ


Appendix A. 802.11p ๐Ÿฆ‹

okay so "802.11p" is the OG name, and it's an earlier definition ๐Ÿ•ฐ๏ธ the behavior of "802.11p" networks got rolled into [IEEE-802.11-2016], and in that doc the term "802.11p" just disappears ๐Ÿ‘ป instead, every 802.11p feature is controlled by the IEEE Management Information Base (MIB) attribute OCBActivated [IEEE-802.11-2016] ๐Ÿ’…

whenever OCBActivated is set to true, the IEEE Std 802.11-OCB state is activated โœจ for example, an 802.11 STAtion operating outside the context of a BSS has the OCBActivated flag set ๐ŸŒธ and a station like that, once the flag is set, uses a BSS identifier equal to ff:ff:ff:ff:ff:ff ๐Ÿซถ

Appendix B. Aspects Introduced by OCB Mode to 802.11 ๐Ÿš—โœจ

okay so in IEEE 802.11-OCB mode, every node in wireless range can talk directly to every other node ๐Ÿซถ no authentication or association procedures needed, no cap. The channel stuff is simpler than BSS mode, but there's a catch. At the link layer, you have to statically set the same channel number (or frequency) on two stations that wanna communicate (in BSS mode, that happens automatically during 'scanning'). How stations set their channel number in OCB mode isn't specified in this document ๐Ÿคทโ€โ™€๏ธ. STA1 and STA2 can exchange IP packets only if they're set to the same channel. At the IP layer, they find each other using the IPv6 Neighbor Discovery protocol. And the allocation of a particular channel for a particular use is defined statically in standards by ETSI in Europe, the FCC in the United States of America, and similar organizations in South Korea, Japan, and other parts of the world ๐ŸŒ.

Briefly, the IEEE 802.11-OCB mode has the following properties:

  • The use by each node of a 'wildcard' BSS identifier (BSSID) (i.e., each bit of the BSSID is set to 1).
  • No IEEE 802.11 beacon frames are transmitted.
  • No authentication is required in order to be able to communicate.
  • No association is needed in order to be able to communicate.
  • No encryption is provided in order to be able to communicate.
  • Flag dot11OCBActivated is set to "true".

All the nodes in the radio communication range (IP-OBU and IP-RSU) receive all the messages transmitted (IP-OBU and IP-RSU) within the radio communication range. The MAC CDMA function resolves any eventual conflict(s). ๐Ÿ™ˆ

The message exchange diagram in Figure 1 shows a comparison between traditional 802.11 and 802.11 in OCB mode. The 'Data' messages can be IP packets such as HTTP or others. Other 802.11 management and control frames (non-IP) may be transmitted, as specified in the 802.11 standard. The names of these messages, as currently specified by the 802.11 standard, are listed in Appendix F. ๐Ÿ“‹

   STA                    AP              STA1                   STA2
   |                      |               |                      |
   |<------ Beacon -------|               |<------ Data -------->|
   |                      |               |                      |
   |---- Probe Req. ----->|               |<------ Data -------->|
   |<--- Probe Res. ------|               |                      |
   |                      |               |<------ Data -------->|
   |---- Auth Req. ------>|               |                      |
   |<--- Auth Res. -------|               |<------ Data -------->|
   |                      |               |                      |
   |---- Asso Req. ------>|               |<------ Data -------->|
   |<--- Asso Res. -------|               |                      |
   |                      |               |<------ Data -------->|
   |<------ Data -------->|               |                      |
   |<------ Data -------->|               |<------ Data -------->|

      (i) 802.11 Infrastructure mode         (ii) 802.11-OCB mode

   Figure 1: Difference between Messages Exchanged on 802.11 (Left)
                        and 802.11-OCB (Right)

The 802.11-OCB interface was specified in [IEEE-802.11p-2010], Amendment 6: Wireless Access in Vehicular Environments, as an amendment to [IEEE-802.11-2007]. Since then, this amendment has been integrated into [IEEE-802.11-2012] and [IEEE-802.11-2016]. ๐Ÿ“š

In [IEEE-802.11p-2010], anything qualified specifically as "OCBActivated" or "outside the context of a basic service" that is set to be "true" actually refers to OCB aspects introduced to 802.11. ๐Ÿง

To tell apart the aspects introduced by 802.11-OCB to 802.11, we refer to the earlier [IEEE-802.11p-2010]. The amendment is concerned with vehicular communications, where the wireless link is similar to that of Wireless LAN (using a PHY layer specified by 802.11a/b/g/n) but needs to cope with the high mobility factor inherent in scenarios of communications between moving vehicles and between vehicles and fixed infrastructure deployed along roads. While 'p' is a letter identifying the Amendment, just like 'a', 'b', 'g', and 'n' are, 'p' is concerned more with MAC modifications and is slightly concerned with PHY modifications; the others are mainly about PHY modifications. It is possible in practice to combine a 'p' MAC with an 'a' PHY by operating outside the context of a BSS with Orthogonal Frequency Division Multiplexing (OFDM) at 5.4 GHz and 5.9 GHz. ๐Ÿš™๐Ÿ’จ

The 802.11-OCB links are specified to be as compatible as possible with the behavior of 802.11a/b/g/n and future generation IEEE WLAN links. From the IP perspective, an 802.11-OCB MAC layer offers practically the same interface to IP as 802.11a/b/g/n and 802.3. A packet sent by an IP-OBU may be received by one or multiple IP-RSUs. The link-layer resolution is performed by using the IPv6 Neighbor Discovery protocol. ๐ŸŽ€

To back up this similarity (IPv6 is layered on top of LLC on top of 802.11-OCB in the same way that IPv6 is layered on top of LLC on top of 802.11a/b/g/n (for WLAN) or on top of LLC on top of 802.3 (for Ethernet)), it's useful to analyze the differences between the 802.11-OCB and 802.11 specifications. While doing this, we notice that whereas 802.11-OCB lists relatively complex and numerous changes to the MAC layer (and very few to the PHY layer), there are only a few characteristics that may be important for an implementation transmitting IPv6 packets on 802.11-OCB links. ๐Ÿ”

The most important 802.11-OCB aspect that influences IPv6 functioning is the OCB characteristic. An additional, less direct influence is the maximum bandwidth afforded by the PHY modulation/demodulation methods and channel access specified by 802.11-OCB. The maximum bandwidth theoretically possible in 802.11-OCB is 54 Mbit/s (when using, for example, the following parameters: a 20 MHz channel; modulation of 64-QAM; a coding rate R of 3/4). With regard to IP over 802.11-OCB, in practice, a commonly observed figure is 12 Mbit/s, and this bandwidth allows the operation of a wide range of protocols relying on IPv6. ๐Ÿ’œ

  • Operation outside the context of a BSS (OCB): The 802.11-OCB links (previously 802.11p) are operated without a BSS. This means that IEEE 802.11 beacon, Association Request/Response, Authentication Request/Response, and similar frames are not used. The used identifier of BSS (BSSID) always has a hexadecimal value of 0xffffffffffff (48 '1' bits, represented as MAC address ff:ff:ff:ff:ff:ff; otherwise, the 'wildcard' BSSID), as opposed to an arbitrary BSSID value set by an administrator (e.g., 'My-Home-AccessPoint'). The OCB operation (namely, the lack of beacon-based scanning and lack of authentication) should be taken into account when the Mobile IPv6 protocol [RFC6275] and the protocols for IP layer security [RFC4301] are used. The way these protocols adapt to OCB is not described in this document. This one is a big deal, bestie ๐Ÿ‘‘
  • Timing Advertisement: This is a new message defined in 802.11-OCB that does not exist in 802.11a/b/g/n. This message is used by stations to inform other stations about the value of time. It is similar to the time delivered by a Global Navigation Satellite System (GNSS) (e.g., Galileo, GPS, etc.) or by a cellular system. This message is optional for implementation. โฐ
  • Frequency range: This is a characteristic of the PHY layer; it has almost no impact on the interface between MAC and IP. However, it is worth considering that the frequency range is regulated by a regional authority (ARCEP, ECC/CEPT based on ENs from ETSI, FCC, etc.); as part of the regulation process, specific applications are associated with specific frequency ranges. In the case of 802.11-OCB, the regulator associates a set of frequency ranges or slots within a band to the use of applications of vehicular communications in a band known as "5.9 GHz". The 5.9 GHz band is different from the 2.4 GHz and 5 GHz bands used by Wireless LAN. However, as with Wireless LAN, the operation of 802.11-OCB in 5.9 GHz bands does not require a license in the EU (in the US, the 5.9 GHz is a licensed band of spectrum; for the fixed infrastructure, explicit FCC authorization is required; for an on-board device, a 'licensed-by-rule' concept applies, where rule certification conformity is required). Technical conditions are different from those of the "2.4 GHz" or "5 GHz" bands. The allowed power levels and, implicitly, the maximum allowed distance between vehicles is 33 dBm for 802.11-OCB (in Europe) compared to 20 dBm for Wireless LAN 802.11a/b/g/n; this leads to a maximum distance of approximately 1 km compared to approximately 50 m. Additionally, specific conditions related to congestion avoidance, jamming avoidance, and radar detection are imposed on the use of DSRC (in the US) and on the use of frequencies for Intelligent Transportation Systems (in the EU) compared to Wireless LAN (802.11a/b/g/n). ๐Ÿ“ก
  • 'Half-rate' encoding: As with the frequency range, this parameter is related to PHY and thus does not have much impact on the interface between the IP layer and the MAC layer. ๐Ÿงฉ
  • In vehicular communications using 802.11-OCB links, there are strong privacy requirements with respect to addressing. While the 802.11-OCB standard does not specify anything in particular with respect to MAC addresses, in these settings, there is a strong need for a dynamic change of these addresses (as opposed to the non-vehicular settings -- real wall protection -- where fixed MAC addresses do not currently pose privacy risks). This is further described in Section 5. A relevant function is described in [IEEE-1609.3] and [IEEE-1609.4]. ๐Ÿ”๐Ÿฆ‹

Appendix C. Changes Needed on an 802.11a Software Driver to Become an 802.11-OCB Driver โœจ

okay so the 802.11p amendment changes both the physical and MAC layers of the 802.11 stack ๐Ÿ’… but honestly? All of those changes can be pretty easily made by starting from an existing 802.11a ad hoc stack ๐Ÿซถ

For 802.11a hardware to be compliant with 802.11-OCB, these are the conditions:

  • The PHY entity shall be an OFDM system. It must support the frequency bands where the regulator recommends ITS communications. For example, the 802.11-OCB layer uses 5875 MHz to 5925 MHz in France. ๐Ÿ‡ซ๐Ÿ‡ท
  • The OFDM system must provide a "half-clocked" operation using 10 MHz channel spacings.
  • The chip transmit spectrum mask must be compliant with the "Transmit spectrum mask" from the IEEE 802.11p amendment. (Experimental environments do not require compliance, though ๐Ÿงช)
  • The chip should be able to transmit up to 44.8 dBm when used in the United States and up to 33 dBm in Europe. Other regional conditions apply. ๐ŸŒ

Now, the changes needed on the network stack in OCB mode:

  • Physical layer:
    • Orthogonal frequency-division multiple access The chip must use the Orthogonal Frequency Division Multiple Access (OFDMA) encoding mode. ๐ŸŒˆ
    • The chip must be set to half-mode rate mode (the internal clock frequency is divided by two). โฑ๏ธ
    • The chip must use dedicated channels and should allow the use of higher emission powers. This may require modifications to the local computer file that describes regulatory domains rules, if it is used by the kernel to enforce local specific restrictions. Such modifications to the local computer file must respect the location-specific regulatory rules. ๐Ÿ“œ
  • MAC layer:
    • All management frames (beacons, join, leave, and others) emission and reception must be disabled, except for frames of subtype Action and Timing Advertisement (defined below). ๐Ÿšซ
    • No encryption key or method must be used. ๐Ÿ”“
    • Packet emission and reception must be performed as in ad hoc mode using the wildcard BSSID (ff:ff:ff:ff:ff:ff). ๐Ÿ“ก
    • The functions related to joining a BSS (Association Request/Response) and authentication (Authentication Request/Reply, Challenge) are not called. ๐Ÿ™…โ€โ™€๏ธ
    • The beacon interval is always set to 0 (zero). 0๏ธโƒฃ
    • Timing Advertisement frames, defined in the amendment, should be supported. The upper layer should be able to trigger such frame emission and retrieve information contained in the received Timing Advertisements. โฐ

Appendix D. Protocol Layering ๐Ÿง

okay, this is the more theoretical, detailed view of how the layers stack up and how the IP layer talks to the 802.11-OCB layers ๐Ÿค“ It's shown in Figure 2. The IP layer sits on top of EtherType Protocol Discrimination (EPD), which is described in [IEEE-802.3-2012]. The interface between IPv6 and EPD is the LLC_SAP (Link Layer Control Service Access Point). ๐Ÿ”—

           +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
           |                 IPv6                  |
           +-+-+-+-+-+-{            }+-+-+-+-+-+-+-+
                       {   LLC_SAP  }                 802.11-OCB
           +-+-+-+-+-+-{            }+-+-+-+-+-+-+-+  Boundary
           |            EPD          |       |     |
           |                         | MLME  |     |
           +-+-+-{  MAC_SAP   }+-+-+-|  MLME_SAP   |
           |      MAC Sublayer       |       |     |  802.11-OCB
           |     and ch. coord.      |       | SME |  Services
           +-+-+-{   PHY_SAP  }+-+-+-+-+-+-+-|     |
           |                         | PLME  |     |
           |            PHY Layer    |   PLME_SAP  |
           +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 2: EtherType Protocol Discrimination

Appendix E. Design Considerations ๐Ÿš—

the networks defined by 802.11-OCB are in a lot of ways similar to other members of the 802.11 family ๐Ÿ‘ฏโ€โ™€๏ธ In theory, carrying IPv6 over 802.11-OCB could be really similar to running IPv6 over those other 802.11 networks. BUT the high mobility, strong link asymmetry, and very short connections make the 802.11-OCB link significantly different from the rest ๐Ÿ˜ญ Automotive applications also have their own specific requirements for reliability, security, and privacy, which add even more to what makes the 802.11-OCB link so particular. ๐Ÿ”โœจ


Appendix F. IEEE 802.11 Messages Transmitted in OCB Mode ๐Ÿ“จ

at the time of writing, this is the list of IEEE 802.11 messages that may be transmitted in OCB mode, meaning when dot11OCBActivated is true in a STA ๐Ÿ’œ

  • The STA may send management frames of subtype Action and, if the STA maintains a TSF Timer, subtype Timing Advertisement. ๐Ÿ“ฃ
  • The STA may send control frames except those of subtype PS-Poll, CF-End, and CF-End plus CFAck. ๐ŸŽ€
  • The STA MUST send data frames of subtype QoS Data. ๐Ÿ’–

Appendix G. Examples of Packet Formats ๐Ÿ“ฆ

this section walks through an example of an IPv6 packet captured over an IEEE 802.11-OCB link ๐Ÿ•ต๏ธโ€โ™€๏ธ

by way of example, we show that the headers are not modified when they're transmitted over 802.11-OCB networks. They travel just like any other 802.11 and Ethernet packets, no cap ๐Ÿงข

here's the experiment for capturing an IPv6 packet on an 802.11-OCB link. In the topology in Figure 3, the packet is an IPv6 Router Advertisement, emitted by a router on its 802.11-OCB interface. The packet is captured on the host with a network protocol analyzer (e.g., Wireshark). The capture is done in two different modes: direct mode and monitor mode. The topology used during the capture is shown below. ๐Ÿฆ‹

The host here is an IP-OBU that has an 802.11 interface in Peripheral Component Interconnect (PCI) Express format (an Industrial Technology Research Institute (ITRI) product). The kernel runs the ath5k software driver with modifications for OCB mode. The capture tool is Wireshark, and the file format for saving and analyzing is .pcap. The packet is generated by the router, which is an IP-RSU (also an ITRI product). ๐ŸŽ๏ธ

             +--------+                                +-------+
             |        |        802.11-OCB Link         |       |
          ---| Router |--------------------------------| Host  |
             |        |                                |       |
             +--------+                                +-------+

         Figure 3: Topology for Capturing IP Packets on 802.11-OCB

during several capture runs, lasting from a few moments to several hours, no messages relevant to the BSSID contexts were captured (Association Request/Response, Authentication Req/Resp, or beacon) ๐Ÿ™ˆ This shows that 802.11-OCB operates outside the context of a BSSID. That's the tea โ˜•

Overall, the captured message is identical to a capture of an IPv6 packet emitted on an 802.11b interface. The contents are exactly the same. ๐ŸŒธ

G.1. Capture in Monitor Mode โœจ

okay so this one is my favourite bit, bestie ๐Ÿซถ we're looking at an IPv6 RA packet as it gets caught in monitor mode ๐Ÿ‘€ The Radiotap header is basically the extra info your stack and OS stick on the front of the packet before it reaches userland, and it's NOT actually on the air ๐Ÿ™ˆ It's implementation-dependent, but it's SO useful because it lets you piggyback PHY info from the chip's registers (power levels, data rate, signal-to-noise ratio, the whole vibe) ๐Ÿ’…

The packet that IS on the air is made of four headers: the IEEE 802.11 Data header, the Logical Link Control header, the IPv6 Base header, and the ICMPv6 header ๐Ÿฆ‹

Figure 4: Radiotap Header v0

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |Header Revision|  Header Pad   |    Header Length              |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                         Present Flags                         |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  | Data Rate     |             Pad                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 5: IEEE 802.11 Data Header

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  Type/Subtype and Frame Ctrl  |          Duration             |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                      Receiver Address...
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  ... Receiver Address           |      Transmitter Address...
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   ... Transmitter Address                                        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                            BSS ID...
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   ... BSS ID                     |  Frag Number and Seq Number   |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 6: Logical Link Control Header

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |      DSAP   |I|     SSAP    |C| Control Field | Org. Code...
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   ... Organizational Code        |             Type              |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 7: IPv6 Base Header

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |Version| Traffic Class |           Flow Label                  |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |         Payload Length        |  Next Header  |   Hop Limit   |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  +                                                               +
  |                                                               |
  +                         Source Address                        +
  |                                                               |
  +                                                               +
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  +                                                               +
  |                                                               |
  +                      Destination Address                      +
  |                                                               |
  +                                                               +
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 8: Router Advertisement

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |     Type      |     Code      |          Checksum             |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  | Cur Hop Limit |M|O|  Reserved |       Router Lifetime         |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                         Reachable Time                        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                          Retrans Timer                        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |   Options ...
  +-+-+-+-+-+-+-+-+-+-+-+-

The value of the Data Rate field in the Radiotap header is set to 6 Mb/s. This indicates the rate at which this RA was received ๐Ÿš€

The value of the Transmitter Address in the IEEE 802.11 Data header is set to a 48-bit value. The value of the destination address is 33:33:00:00:00:1 (all-nodes multicast address) ๐ŸŒ Careful, that one is written exactly as the original has it, with only five groups after the first. The value of the BSS ID field is ff:ff:ff:ff:ff:ff, which the network protocol analyzer recognizes as "broadcast" ๐Ÿ“ก The Fragment number and Sequence number fields together are set to 0x90C6 ๐Ÿง

The value of the Organization Code field in the Logical Link Control header is set to 0x0, recognized as "Encapsulated Ethernet" ๐Ÿ“ The value of the Type field is 0x86DD (hexadecimal 86DD; otherwise, #86DD), recognized as "IPv6" ๐Ÿ’œ

A Router Advertisement is periodically sent by the router to multicast group address ff02::1. It is ICMP packet type 134. The IPv6 Neighbor Discovery's Router Advertisement message contains an 8-bit field reserved for single-bit flags, as described in [RFC4861] ๐ŸŒธ

The IPv6 header contains the link-local address of the router (source) configured via the EUI-64 algorithm, and the destination address is set to ff02::1 โœจ

The Ethernet Type field in the Logical Link Control header is set to 0x86dd, which indicates that the frame transports an IPv6 packet ๐ŸŽ€ In the IEEE 802.11 data, the destination address is 33:33:00:00:00:01, which is the corresponding multicast MAC address ๐Ÿฆ‹ The BSS ID is a broadcast address of ff:ff:ff:ff:ff:ff ๐Ÿ“ก Due to the short link duration between vehicles and the roadside infrastructure, there is no need in IEEE 802.11-OCB to wait for the completion of association and authentication procedures before exchanging data ๐Ÿš—๐Ÿ’จ IEEE 802.11-OCB enabled nodes use the wildcard BSSID (a value of all 1s) and may start communicating as soon as they arrive on the communication channel ๐Ÿ


G.2. Capture in Normal Mode โœจ

same IPv6 Router Advertisement packet as before, but this time it's been captured on the host in normal mode ๐Ÿ’… Here's what it looks like:

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                       Destination...
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  ...Destination                 |           Source...
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  ...Source                                                      |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |          Type                 |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 9: Ethernet II Header

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |Version| Traffic Class |           Flow Label                  |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |         Payload Length        |  Next Header  |   Hop Limit   |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  +                                                               +
  |                                                               |
  +                         Source Address                        +
  |                                                               |
  +                                                               +
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  +                                                               +
  |                                                               |
  +                      Destination Address                      +
  |                                                               |
  +                                                               +
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 10: IPv6 Base Header

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |     Type      |     Code      |          Checksum             |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  | Cur Hop Limit |M|O|  Reserved |       Router Lifetime         |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                         Reachable Time                        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                          Retrans Timer                        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |   Options ...
  +-+-+-+-+-+-+-+-+-+-+-+-

Figure 11: Router Advertisement

One notices that the Radiotap header, the IEEE 802.11 Data header, and the Logical Link Control headers are NOT present ๐Ÿ‘€ On the other hand, a new header named the Ethernet II header is present ๐Ÿงš

The Destination and Source addresses in the Ethernet II header contain the same values as the Receiver Address and Transmitter Address fields present in the IEEE 802.11 Data header in the monitor mode capture ๐Ÿซถ

The value of the Type field in the Ethernet II header is 0x86DD (recognized as "IPv6"); this value is the same as the value of the Type field in the Logical Link Control header in the monitor mode capture ๐Ÿ’œ

The knowledgeable experimenter will no doubt notice the similarity of this Ethernet II header with a capture in normal mode on a pure Ethernet cable interface ๐Ÿค“

A frame translation is inserted on top of a pure IEEE 802.11 MAC layer in order to adapt packets before delivering the payload data to the applications ๐Ÿ’– It adapts 802.11 LLC/MAC headers to Ethernet II headers. Specifically, this adaptation consists of the elimination of the Radiotap, 802.11, and LLC headers and the insertion of the Ethernet II header. In this way, IPv6 runs straight over LLC over the 802.11-OCB MAC layer; this is further confirmed by the use of the unique Type 0x86DD ๐Ÿ‘‘

Okay so bestie, this is the final stretch of RFC 8691 and it's giving glossary-plus-bonus-round energy ๐Ÿ’…๐ŸŽ€

Appendix H. Extra Terminology โœจ

okay so these terms are defined outside the IETF ๐ŸŒธ They're used to define the main terms in the terminology section (Section 2), so they're kind of the foundation for everything earlier in the doc ๐Ÿงš

DSRC (Dedicated Short Range Communication): okay so this is the US Federal Communications Commission (FCC) version of Dedicated Short Range Communication, defined in the Code of Federal Regulations (CFR) 47, Parts 90 [CFR-90] and 95 [CFR-95] ๐Ÿ“œ This Code gets referenced in the definitions below, so it's kind of a whole family thing ๐Ÿซถ At the time this document was written, the last update to this Code was dated December 6, 2019 ๐Ÿ“…

DSRCS (Dedicated Short-Range Communications Services): lowkey the vibe here is radio tech that moves data over short distances between roadside and mobile units, between mobile units, and between portable and mobile units ๐Ÿš—๐Ÿ’จ The goal is to improve traffic flow, traffic safety, and other intelligent transportation service apps in all kinds of environments โœจ DSRCS systems may also send status and instructional messages related to the units involved ๐Ÿ’Œ [CFR-90.7]

OBU (On-Board Unit): an On-Board Unit is a DSRCS transceiver that's normally mounted in or on a vehicle, but it can be a portable unit sometimes ๐Ÿš™ An OBU can be operational whether the vehicle or person is moving or standing still ๐Ÿง The OBUs receive and contend for time to transmit on one or more radio frequency (RF) channels ๐Ÿ“ก Except where specifically excluded, OBU operation is permitted wherever vehicle operation or human passage is permitted ๐ŸŒˆ The OBUs mounted in vehicles are licensed by rule under part 95 of [CFR-95] and communicate with Roadside Units (RSUs) and other OBUs ๐Ÿšฆ Portable OBUs are also licensed by rule under part 95 of [CFR-95] ๐ŸŽŸ๏ธ OBU operations in the Unlicensed National Information Infrastructure (U-NII) Bands follow the rules in those bands ๐ŸŽถ [CFR-90.7]

RSU (Roadside Unit): a Roadside Unit is a DSRC transceiver mounted along a road or pedestrian passageway ๐Ÿ›ฃ๏ธ An RSU may also be mounted on a vehicle or may be hand carried, but it may only operate when the vehicle or hand-carried unit is stationary ๐Ÿ›‘ Perhaps Furthermore, an RSU is restricted to the location where it is licensed to operate ๐Ÿ“ However, portable or handheld RSUs are permitted to operate where they do not interfere with a site-licensed operation ๐Ÿซง An RSU broadcasts data to OBUs or exchanges data with OBUs in its communications zone ๐Ÿ“ข An RSU also provides channel assignments and operating instructions to OBUs in its communications zone when required ๐ŸŽ€ [CFR-90.7]

okay so this one is a whole plot twist ๐Ÿ™ˆ IPv6 Neighbor Discovery (IPv6 ND) [RFC4861] [RFC4862] was designed for point-to-point and transit links, such as Ethernet, where multicast from the lower layer was expected to be cheap and reliable ๐Ÿ”Œ Section 3.2 of [RFC4861] says that operation on shared media and on NBMA networks needs additional support, e.g., for AR and DAD, which depend on multicast ๐Ÿ“ป An infrastructureless radio network such as OCB shares properties with both shared media and NBMA networks, and then adds its own complexity, e.g., from movement and interference that allow only transient and non-transitive reachability between any set of peers ๐Ÿ˜ญ

The uniqueness of an address within a scoped domain is a key pillar of IPv6 and is the basis for unicast IP communication ๐Ÿ’Ž [RFC4861] details the DAD method to prevent an address from being duplicated ๐Ÿ” For a link-local address, the scope is the link, whereas for a globally reachable address, the scope is much larger ๐ŸŒ The underlying assumption for DAD to work correctly is that the node owning an IPv6 address can reach any other node within the scope at the time it claims its address, which is done by sending a Neighbor Solicitation (NS) multicast message, and can hear any future claim for that address by another party within the scope for the duration of the address ownership ๐Ÿ‘‚

In the case of OCB, there is potentially a need to define a scope that is compatible with DAD ๐Ÿงฉ The scope cannot be the set of nodes that a transmitter can reach at a particular time, because that set varies all the time and does not meet the DAD requirements for a link-local address that can be used anytime and anywhere ๐Ÿ™ƒ The generic expectation of a reliable multicast is not ensured, and the operation of DAD and AR as specified by [RFC4861] cannot be guaranteed ๐Ÿ’€ Moreover, multicast transmissions that rely on broadcast are not only unreliable but are also often detrimental to unicast traffic (see [IEEE802-MCAST]) ๐Ÿšซ

Early experience indicates that it should be possible to exchange IPv6 packets over OCB while relying on IPv6 ND alone for DAD and AR (Address Resolution) in good conditions โ˜€๏ธ In the absence of a correct DAD operation, a node that relies only on IPv6 ND for AR and DAD over OCB should ensure that the addresses it uses are unique by means other than DAD ๐Ÿ” It must be noted that deriving an IPv6 address from a globally unique MAC address has this property but may yield privacy issues ๐Ÿ•ต๏ธโ€โ™€๏ธ

[RFC8505] provides a more recent approach to IPv6 ND, in particular DAD ๐Ÿ†• [RFC8505] is designed to fit wireless and otherwise constrained networks, where multicast and/or continuous access to the medium may not be guaranteed ๐Ÿ“ถ [RFC8505], Section 5.6 ("Link-Local Addresses and Registration") says the scope of uniqueness for a link-local address is restricted to a pair of nodes that use it to communicate, and it provides a method to assert uniqueness and resolve the link-layer address using a unicast exchange ๐Ÿ’Œ

[RFC8505] also lets a router (acting as a 6LR) own a prefix and act as a registrar (acting as a 6LBR) for addresses within the associated subnet ๐Ÿ  A peer host (acting as a 6LN) registers an address derived from that prefix and can use it for the lifetime of the registration ๐Ÿชช The prefix is advertised as not on-link, which means the 6LN uses the 6LR to relay its packets within the subnet, and participation in the subnet is constrained to the time of reachability to the 6LR โณ Note that an RSU that provides internet connectivity MAY announce a default router preference [RFC4191], whereas a car that does not provide that connectivity MUST NOT do so ๐Ÿš˜ This operation has similarities to that of an access point, but at Layer 3 ๐Ÿ›œ This is why [RFC8505] is well suited for wireless in general ๐Ÿ’œ

Support of [RFC8505] may be implemented on OCB ๐ŸŽ‰ OCB nodes that support [RFC8505] SHOULD support the 6LN operation so they can act as a host, and they MAY support the 6LR and 6LBR operations so they can act as a router, in particular to own a prefix that can be used by hosts compliant with [RFC8505] for address autoconfiguration and registration ๐Ÿ‘‘

Acknowledgements ๐Ÿซถ

The authors would like to thank Alexandre Petrescu for initiating this work and for being the lead author up to draft version 43 of this document ๐ŸŒท

The authors would like to thank Pascal Thubert for reviewing, proofreading, and suggesting modifications for this document ๐Ÿงš

The authors would like to thank Mohamed Boucadair for proofreading and suggesting modifications for this document ๐Ÿ“

The authors would like to thank Eric Vyncke for reviewing the suggested modifications of this document ๐Ÿ”Ž

The authors would like to thank Witold Klaudel, Ryuji Wakikawa, Emmanuel Baccelli, John Kenney, John Moring, Francois Simon, Dan Romascanu, Konstantin Khait, Ralph Droms, Richard 'Dick' Roy, Ray Hunter, Tom Kurihara, Michal Sojka, Jan de Jongh, Suresh Krishnan, Dino Farinacci, Vincent Park, Jaehoon Paul Jeong, Gloria Gwynne, Hans-Joachim Fischer, Russ Housley, Rex Buddenberg, Erik Nordmark, Bob Moskowitz, Andrew Dryden, Georg Mayer, Dorothy Stanley, Sandra Cespedes, Mariano Falcitelli, Sri Gundavelli, Abdussalam Baryun, Margaret Cullen, Erik Kline, Carlos Jesus Bernardos Cano, Ronald in 't Velt, Katrin Sjoberg, Roland Bless, Tijink Jasja, Kevin Smith, Brian Carpenter, Julian Reschke, Mikael Abrahamsson, Dirk von Hugo, Lorenzo Colitti, Pascal Thubert, Ole Troan, Jinmei Tatuya, Joel Halpern, Eric Gray, and William Whyte ๐Ÿ’– Their valuable comments clarified particular issues and generally helped improve the document ๐ŸŒˆ

Pierre Pfister, Rostislav Lisovy, and others wrote 802.11-OCB drivers for Linux ๐Ÿง๐Ÿ’ป

For the multicast discussion, the authors would like to thank Owen DeLong, Joe Touch, Jen Linkova, Erik Kline, Brian Haberman, and participants in network working groups ๐Ÿ“ฃ

The authors would like to thank the participants of the Birds-of-a-Feather "Intelligent Transportation Systems" meetings held at IETF in 2016 ๐Ÿšฆ

The human rights protocol considerations review was done by Amelia Andersdotter โœŠ

The work of Jong-Hyouk Lee was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (NRF-2018R1A4A1025632) ๐Ÿ‡ฐ๐Ÿ‡ท

The work of Jรฉrรดme Hรคrri was supported by EURECOM industrial members, namely BMW Group, IABG, Monaco Telecom, Orange, SAP and Symantec ๐Ÿ‡ซ๐Ÿ‡ท This RFC reflects the view of the IPWAVE WG and does not necessarily reflect the official policy or position of EURECOM industrial members ๐Ÿซง

Contributors ๐ŸŒธ

Christian Huitema and Tony Li contributed to this document ๐Ÿ’ซ

Romain Kuntz contributed extensively regarding IPv6 handovers between links running outside the context of a BSS (802.11-OCB links) ๐Ÿ”

Tim Leinmueller contributed the idea of using IPv6 over 802.11-OCB for the distribution of certificates ๐Ÿ“œ

Marios Makassikis, Jose Santa Lozano, Albin Severinson, and Alexey Voronov provided significant feedback on the experience of using IP messages over 802.11-OCB in initial trials ๐Ÿงช

Michelle Wetterwald contributed extensively to the MTU discussion, offered the ETSI ITS perspective, and reviewed other parts of the document ๐ŸŒŸ

Authors' Addresses ๐ŸŽ€

Nabil Benamar Moulay Ismail University of Meknes Morocco

Phone: +212670832236 Email: n.benamar@est.umi.ac.ma

Jรฉrรดme Hรคrri EURECOM 06904 Sophia-Antipolis France

Phone: +33493008134 Email: Jerome.Haerri@eurecom.fr

Jong-Hyouk Lee Sangmyung University 31, Sangmyeongdae-gil, Dongnam-gu Cheonan 31066 Republic of Korea

Email: jonghyouk@smu.ac.kr

Thierry ERNST YoGoKo 1137A Avenue des Champs-Blancs 35510 CESON-SEVIGNE France

Email: thierry.ernst@yogoko.fr ๐Ÿฆ‹

๐Ÿ“ฆ where this page comes from