LISP Working Group S. Barkai Internet-Draft B. Fernandez-Ruiz Intended status: Informational R. Tamir Expires: July 28,2023 Nexar Inc. A. Rodriguez-Natal F. Maino Cisco Systems A. Cabellos-Aparicio J. Paillisse-Vilanova Universitat Politecnica de Catalunya D. Farinacci lispers.net January 17, 2023 Network-Hexagons:Geolocation Mobility Edge Network Based On H3 and LISP draft-ietf-lisp-nexagon-47 Abstract This specification describes a mobility network that generates a dynamic map of road-routes and their current conditions. The map is generated by a network of vehicles equipped with vision AI and geolocation agents that apply consolidation AI functions. The map is generated using the Locator/IDSeparation Protocol (LISP) and a common data-model, H3 hierarchical hexagonal grid. Each geolocation agent is responsible for generating the dynamic map of its jurisdiction area tile-by-tile using data uploaded by vehicles. The network uses unique identifiers (HID) for each H3 tile in each resolution, and the geolocation agents' jurisdiction area HID is used as the basis for IPv6 endpoint identifiers (EIDs). The agents' EIDs are used as destination queues for vehicle uploads and source channels for map updates. The network uses algorithmic EID-based addressing of agents and vehicles, geospatial for agents and ephemeral for vehicles, as well as the LISP networking qualities to address issues such as geo- privacy, cache incoherency, context-switching, continuity, and scale of vehicles' subscriptions and notification replication. 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 February 28,2023. Barkai, et al. Expires July 28,2023 [Page 1] Internet-Draft LISP January 2023 Copyright Notice Copyright (c) 2023 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 (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Definition of Terms . . . . . . . . . . . . . . . . . . . . . 5 3. Deployment Assumptions . . . . . . . . . . . . . . . . . . . 7 4. Clients-Agents Networking . . . . . . . . . . . . . . . . . . 8 5. Mobility Unicast and Multicast . . . . . . . . . . . . . . . 9 6. Security Considerations . . . . . . . . . . . . . . . . . . . 15 7. Privacy Considerations . . . . . . . . . . . . . . . . . . . 15 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 16 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 10. Normative References . . . . . . . . . . . . . . . . . . . . 29 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 30 Barkai, et al. Expires July 28,2023 [Page 2] Internet-Draft LISP January 2023 1. Introduction This document provides a specification of a mobility network that is capable of generating a dynamic map of road-routes and their current conditions. This network utilizes a combination of vehicle vision AI and edge geolocation agents to process and consolidate data from a fleet of connected vehicles. The map is generated using a common protocol, the Locator/IDSeparation Protocol (LISP), and a common data- model, the H3 hierarchical hexagonal grid. The H3 grid is a hierarchical, spatially-aware system that uses a hexagonal tiling scheme to subdivide the earth's surface into nested hexagons, each with a unique identifier (HID). The grid allows for the efficient representation of both fine-grained and coarse-grained spatial data, and the HIDs are used as the basis for the IPv6 endpoint identifiers (EIDs) of the geolocation agents in the network. The geolocation agents, also referred to as "nexagons" in this document, consolidate and process the data uploaded by vehicles within their jurisdiction. Agents use their EIDs as destination queues for vehicle uploads and source channels for map updates. The agents are delegated dynamically to compute locations based on vehicle density and upload activity, and they constantly learn and adapt to the routes and conditions of the road network. This dynamics poses several key challenges, such as preserving the geo-privacy of vehicles, maintaining vehicle cache coherency as agents move, context-switching between agents as vehicles move, and continuity and scale of vehicles' subscriptions to and notification from agents' channels. To address these challenges, the network employs algorithmic EID-based addressing of agents and vehicles, geospatial for agents and ephemeral for vehicles, as well as the LISP networking qualities described in detail bellow. ___ / \ Addressable >> States >> Addressable Upload Queues \ ___ / Channels /\ Functions() \/ Figure 1: Nexagon Mapping & Conditions Consolidation _ _ _ _ / \/ \ / \/ \ ---- \_/\_/ \_/\_/ ---- Peak/Off-Peak nexagon allocation / \/ \ / \/ \ ---- Spread on compute locations \_/\_/ \_/\_/ ---- _ _ _ _ _ _ _ _ / \/ \ / \/ \ ---- / \/ \ / \/ \ / \/ \ / \/ \ ---- \_/\_/ \_/\_/ ---- \_/\_/ \_/\_/ \_/\_/ \_/\_/ ---- / \/ \ / \/ \ ---- / \/ \ / \/ \ / \/ \ / \/ \ ---- \_/\_/ \_/\_/ ---- \_/\_/ \_/\_/ \_/\_/ \_/\_/ ---- ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ Site Site Standby Site Site Site Site Standby Figure 2: Nexagon dynamic allocation through delegation per activity Barkai, et al. Expires July 28,2023 [Page 3] Internet-Draft LISP January 2023 Note 1: The nexagon agents in the system utilize a hierarchical hexagonal grid called [H3], which has clear tile adjacency properties. Each tile in the H3 grid has a unique 64-bit identifier called an HID, which is algorithmically mapped to an EID. The H3 grid is used at two different resolutions: one for the nexagons (called "h3.rB") and one for detections, navigation paths, and road segment mapping (called "h3.rS"). Mappings between GPS coordinates, HIDs, and EIDs are all algorithmic. The number of messages required to convey the state of a nexagon can be calculated based on the size of the area covered by the nexagon, the density of roads within it, and the maximum transmission unit (MTU) of the system. This calculation involves dividing the size of h3.rB by the size of h3.rS, multiplying by the road density and tile key-value state, divided by MTU. Note 2: In order to provide a concrete usability of this document for detection and dynamic mapping, 64 bits of information about "what" the detection is are outlined with the 64-bit HID of "where" the detection is, total 128 bits or 16 Bytes. These 64 bits are detailed in a bit-mask based on a taxonomy defined by Berkeley Deep Drive (BDD) and serve as a baseline that can be extended or overridden. Note 3: The mobility network requires a formal provisioning step for both clients and agents. For clients, this step involves an authentication, authorization, and accounting (AAA) procedure by which clients request and renew EIDs and tunnel-routers to be used to interact with agents. This process may be implemented using various methods or formal AAA. An example procedure is given bellow. Barkai, et al. Expires July 28,2023 [Page 4] Internet-Draft LISP January 2023 2. Definition of Terms Based on [RFC9300][RFC9301] H3AgentEID: H3AgentEID is an EID-addressable Geolocation agent, also known as a nexagon. It serves as a designated destination for geospatial detections and an (S,G) source of multicast themed detection channels. It has a LISP data-plane stack to encapsulate packets via ServerXTR. ServerXTR: ServerXTR is a data-plane only LISP protocol stack implementation that is co-located with the H3AgentEID process. It encapsulates and decapsulates packets to and from EdgeRTRs. MobilityClient: MobilityClient is an application that may be a part of a driving system, navigation, or gov-muni application, It has a LISP data-plane stack to encapsulate packets via ClientXTR. MobilityClientEID: MobilityClientEID is the IPv6 EID used by Mobility Clients. The destination of such packets are H3AgentEIDs. The EID format is assigned as part of the MobilityClient network AAA. ClientXTR: ClientXTR is a data-plane only LISP protocol stack implementation co-located with the Mobility Client application. It encapsulates and decapsulates packets to and from EdgeRTRs. EdgeRTR: The EdgeRTR network connects Mobility Clients to Agents and manages MobilityClientEIDs multicast registrations [RFC8378]. EdgeRTRs aggregate Mobility Clients and Geolocation Agents using encapsulation to facilitate access to the mobility network from hosting providers and mobile providers. RTRs re-encapsulate packets from ClientXTRs and ServerXTRs, and remote RTRs. EdgeRTRs glean H3 agent EIDs and MobilityClientEIDs when they decapsulate packets and store H3AgentEIDs and route locations (RLOCs) using map-caches. These mappings are registered to the LISP mapping system [RFC9301] and provisioned when Geolocation Agents are assigned EdgeRTRs. EdgeRTRs do not register MobilityClientEIDs. Enterprises may provide their own EdgeRTRs to protect geo-privacy. Barkai, et al. Expires July 28,2023 [Page 5] Internet-Draft LISP January 2023 nexagons ___ ___ H3AgentEIDs ___ / \ H3AgentEIDs ___ / \ ___ / | h3.rB | ___ / | h3.rB | / | h3.rB \ ___ / / | h3.rB \ ___ / | h3.rB \ ___ / sXTR | h3.rB \ ___ / sXTR \ ___ / sXTR || \ ___ / sXTR || sXTR || || sXTR || || || || || || || || || || || || || || = = = = = = EdgeRTR EdgeRTR = = = = = || (( () )) || ( Underlays used for LISP ) ( Mobility Network ) ( || (( ( ) () || ) || || = = = = = = = = = = = = = = || || EdgeRTR EdgeRTR .. .. .. .. .. .. .. .. ((((|)))) ((((|)))) ((((|)))) ((((|)))) /|\ RAN /|\ /|\ RAN /|\ || || || Queue uploads upstream Channel notifications downstream || || ___ ___ ___ || || << << << << / \/ \/ \<> \ ___ /\ ___ / >> >> >> >> >> >> Figure 3: Nexagon Network Figure 3 above describes: - MobilityClientA detections used by MobilityClientB - Clients: share information only via Geolocation agents - ClientXTR (cXTR):encapsulates packets over mobile access to EdgeRTR - ServerXTR (sXTR):encapsulates packets over metro area to EdgeRTR - Uploads: routed to appropriate Geolocation agent by EdgeRTRs - Notifications: from Geolocation agents replicated by EdgeRTRs Barkai, et al. Expires July 28,2023 [Page 6] Internet-Draft LISP January 2023 3. Deployment Assumptions Detections are enumerated in 16 fields x 16 enumerations. Nibbles are named using hexadecimal index according to the position where the most significant nibble has index 0. Enumeration based on [BDD] are defined in section 8. 0 1 2 3 4 5 6 7 +-------+-------+-------+-------+-------+-------+-------+-------+ |-0-|-1-|-2-|-3-|-4-|-5-|-6-|-7-|-8-|-9-|-A-|-B-|-C-|-D-|-E-|-F-| |012301230123012301230123 Index 01230123012301230123012301230123 +---------------------------------------------------------------+ Figure 4: Nibble based detection enumeration The authorization of Mobility Clients to the mobility network is renewed while driving. The AAA procedure described below can be used as an example for obtaining EIDs and EdgeRTRs, and for enabling the use of the network. Diameter [RFC6733] based AAA can be used to accommodate a wide range of Mobility Clients, including vehicles, driving assists, navigation applications, and smart city applications. An example procedure for clients XTRs to use the mobility network: 1) obtain the address of the mobility-network AAA using DNS 2) obtain MobilityClientEIDs and EdgeRTRs from AAA procedure 3) renewed periodically from AAA while using the network MobilityClient DomainNameServer AAA Server MobilityEdgeRTR | | | | | lookup AAA Server | | | |------------------->| | | |<-------------------| | | | AAA Server IP | | | | | | | | Client identifier and credentials | | |--------------------------------------->| | | | |Provision Client EID| | | |------------------->| | | |<-------------------| | | | Ack Provisioed EID | | Send ClientEID,EdgeRTR RLOC | | |<---------------------------------------| | . . . Use The H3-LISP Geolocation Mobility Network . . . |<----------------------------------------------------------->| . . . Renew AAA ClientEID and EdgeRTR provisioning . Figure 5: Example AAA procedure for mobility clients Barkai, et al. Expires July 28,2023 [Page 7] Internet-Draft LISP January 2023 4. Clients-Agents Networking The mobility network functions as a standard LISP overlay that delivers unicast and multicast packets across data plane XTRs, which are used in the stack of each mobility client and server. ClientXTRs and ServerXTRs are associated with EdgeRTRs, which allows MobilityClients to "show up" at any location within the mobility network, regardless of the network provider or network address translation domain. This structure also enables any H3 agent EID to be instantiated, delegated, or failed over to any compute location. In this specification, we assume a semi-random association between ClientXTRs and EdgeRTRs assigned by the AAA procedure, with a pool of EdgeRTRs, which can be dynamically allocated, distributing the load of MobilityClients within a given metro area. We also assume that EdgeRTRs are topologically equivalent and use LISP to encapsulate traffic to and from other EdgeRTRs. It is possible for there to be more than one ClientEID in the same process using the same ClientXTR. The implementation of such vendor-specific multiplexing is not specified. H3AgentEID == ServerXTR ServerXTR == H3AgentEID (Encryption and Decryption) || || (Encryption and Decryption) || X || EdgeRTR = = = = EdgeRTR || X || (Encryption and Decryption) || || (Encryption and Decryption) MobilityClient == ClientXTR ClientXTR == MobilityClient Figure 6: LISP network connecting MobilityClients and H3AgentEIDs The following Lisp Canonical Address Format (LCAF) [RFC8060] is used to encode H3-IDs into IPv6 address: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AFI = 16387 | Rsvd1 | Flags | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Type = 17 HID | Rsvd2 | Length = 8 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | HID (high-order) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | HID (low-order) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 7: LCAF for encoding HIDs in H3AgentEIDs Barkai, et al. Expires July 28,2023 [Page 8] Internet-Draft LISP January 2023 5. Mobility Unicast and Multicast The day in a life of unicast detection or road-segment mapping upload: 1. A client detects condition of interest using AI camera 2. The client uses its GPS to establish its h3.rS location 3. It then estimates the h3.rS location of the detection 4. Detection h3.rS center is used to calculate h3.rB => H3ServerEID 5. Client sends (encrypted) location-detection via its ClientXTR Outer Header src/dest: ClientXTR RLOC, EdgeRTR RLOC Inner Header src/dest: ClientEID, H3AgentEID 6. EdgeRTR gleans and caches ClientEID and ClientXTR RLOC 7. EdgeRTR resolves RLOC of remote EdgeRTR, and re-encapsulates: Outer Header src/dest: EdgeRTR RLOC, remote EdgeRTR RLOC Inner Header src/dest: ClientEID, H3AgentEID 8. Remote EdgeRTR lookups H3ServerEID ServerXTR RLOC, re-encapsulates: Outer Header src/dest: EdgeRTR RLOC, ServerXTR RLOC Inner Header src/dest: ClientEID, H3AgentEID 9. ServerXTR delivers ClientEID message to H3AgentEID The detection message headers consist of the following fields: - Outer headers size = 40 (IPv6) + 8 (UDP) + 8 (LISP) = 56 - Inner headers size = 40 (IPv6) + 8 (UDP) + 4 (Nexagon Header) = 52 - 1500 (MTU) - 56 - 52 = 1392 bytes of effective payload size Nexagon Header allows for key-value (kv) tuples or value-key,key ..(vkkk) using the same formats of key and value outlined bellow +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\ | Type |gzip | Reserved | Pair Count = X|Nexagon +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+/ Figure 8: Nexagon header format Nexagon Header Type 0:reserved (*) Type 1:key-value, key-value.. 1392 / (8 + 8) = 87 pairs Type 2:value, key,key,key.. (1392 - 8) / 8 = 173 h3.rS IDs Type 3-255: unassigned Nexagon Header GZIP field: 0x000 no compression, or (**) GZIP version. Nexagon Header Reserved bits Nexagon Header key and value count (in any format kv or vkkk) (*) Reserved fields are specified as being set to 0 on transmission, ignored when received. (**) GZIP refers to entire kv or vkkk payload and major GZIP version, packets with unsupported GZIP version are dropped Barkai, et al. Expires July 28,2023 [Page 9] Internet-Draft LISP January 2023 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ |Version| Traffic Class | Flow Label | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | Payload Length | Next Header | Hop Limit | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | | + + | | | | + Source MobilityClientEID + | | | IPv6 + + | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | | + + | | | | + Dest H3AgentEID + | | | | + + | | | / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Port = xxxx | Dest Port = xxxx | \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ UDP | UDP Length | UDP Checksum | / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | Type |gzip | Reserved | Pair Count = X|Nexagon +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | | + 64bit h3.rS ID + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit State + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit h3.rS ID + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit State + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 9: Uploaded detections packet format Barkai, et al. Expires July 28,2023 [Page 10] Internet-Draft LISP January 2023 Each H3Agent is also an IP Multicast Source used to update subscribers on the state of the h3.rS tiles in the h3.rB area. We use [RFC8378] signal-free multicast to implement overlay channels. Mobility-networks have many channels with thousands subscribers each. MobilityClients driving through/subscribing to an h3.rB area issue group address report based on any mechanism supported by [RFC8378]. Example report formats are specified in [RFC4604]. It is advised that clients establish a ring of objects on their areas of interest. Report messages are encapsulated between ClientXTRs and EdgeRTRs. The day in a life of multicast notification update: 1. H3AgentEID determines change or timing requiring an update 2. H3AgentEID sends (S,G) update message via its ServerXTR Outer Header src/dest: ServerXTR RLOC, EdgeRTR RLOC Inner Header (S,G): H3ServerEID, EID chosen for theme 3. EdgeRTR resolves subscribed remote EdgeRTRs, replicates Outer Header src/dest: EdgeRTR RLOC, remote EdgeRTR RLOC Inner Header (S,G): H3ServerEID, EID chosen for theme 4. EdgeRTRs lookups subscribed ClientEIDs ClientXTRs RLOCs, replicates Outer Header src/dest: EdgeRTR RLOC, ClientXTR RLOC Inner Header (S,G): H3ServerEID, EID chosen for theme 5. ClientXTR delivers multicast channel update message to clientEID Barkai, et al. Expires July 28,2023 [Page 11] Internet-Draft LISP January 2023 Multicast update packets are of the following structure: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ |Version| Traffic Class | Flow Label | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | Payload Length | Next Header | Hop Limit | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | | + + | | | | + Source H3AgentEID + | | | IPv6 + + | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | | + + | | | | + Group Address + | | | | + + | | | / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Port = xxxx | Dest Port = xxxx | \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ UDP | UDP Length | UDP Checksum | / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | |Nexagon +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / ~ Nexagons Payload ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 10: multicast update packet header Barkai, et al. Expires July 28,2023 [Page 12] Internet-Draft LISP January 2023 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | Type = 1 |gzip | Reserved | Pair Count = X|Nexagon +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | | + 64bit h3.rS ID + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit State + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit h3.rS ID + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit State + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 11: multicast update payload, key-value, key-value.. Barkai, et al. Expires July 28,2023 [Page 13] Internet-Draft LISP January 2023 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | Type = 2 |gzip | Reserved |H3R15 Count = X|Nexagon +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | | + 64bit State + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit h3.rS ID + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit h3.rS ID + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + 64bit h3.rS ID + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 12: multicast update payload, value, key, key.. for larger areas Barkai, et al. Expires July 28,2023 [Page 14] Internet-Draft LISP January 2023 6. Security Considerations The LISP mobility-network is inherently secure and private. All information is conveyed to clients using provisioned Geolocation agents. MobilityClients receive information only via geospatial channels originating at provisioned agents, replicated by EdgeRTRs. All traffic is carried over encrypted encapsulation. 7. Privacy Considerations In the mobility network, MobilityClients obtain temporary clientEIDs and RLOCs of EdgeRTRs through an AAA process in order to access the network for a certain period. The interface between MobilityClients and EdgeRTRs is the most sensitive from a privacy perspective, as the EdgeRTR can determine the client RLOC and the h3.rB area that the client is engaged with based on header information, even though the traffic on this interface is tunneled and the detection content is encrypted between ClientXTR and EdgeRTR. Enterprises such as vehicle OEMs or carriers can use their own EdgeRTRs (BYO_RTRs), which are pre- provisioned to use the mapping system and are approved by other EdgeRTRs. Beyond the client to EdgeRTR hop, the mapping system does not hold MobilityClientEID information and remote EdgeRTRs are only aware of clients' temporary EIDs. H3AgentEIDs decrypt and parse actual h3.rS detections, taking into account MobilityClientEID credentials encoded in the client EID and assigned by AAA to avoid poorly made or localized detections. In summary the privacy risk mitigations are: (1) tapping: all communications are through tunnels therefore may be encrypted using IP-Sec or other supported point to point underlay standards. (2) spoofing: it is very hard to guess a MobilityClientEID valid for a short period of time. Clients and H3Agents EIDs are provisioned in EdgeRTRs, Clients using the AAA procedure, H3Agents via dev-ops. (3) credibility: the interface crowd-sources geo-state and does not assume to trust single detections. Credit history track MobilityClient EIDs as part of normal H3Agents operation. The aggregate scores from all objects are delivered to AAA subsystem for updating credentials. (4) geo-privacy: Only EdgeRTRs are aware of both clients' RLOC and geo-location, only AAA is aware of client IDs credentials and credit but not geo-location. Ongoing client credit score adjustments span all H3Agents administratively to AAA without specific geo-source. Barkai, et al. Expires July 28,2023 [Page 15] Internet-Draft LISP January 2023 8. Acknowledgments We would like to kindly thank Joel Halperin for helping structure the AAA section and Geo-Privacy provisions, Luigi Lannone for promoting such LISP Compute First Networking (CFN) use-cases, helping structure the IANA section, and shepherding this draft to completion. We would like to thank George Ericson from Dell, Lei Zhong from Toyota, Mikael Klein from Ericsson, Leifeng Ruan from Intel, Ririn Andarini from NTT, for helping with Geolocation and Dataflow Virtualization terminology and key-issues during joint work at the AECC. We would like to thank Professor Trevor Darrel and Professor Fisher Yu of BDD for reviewing IANA enumerations for detections-consolidations feasible by visionAI and Edge Computing. Finally we would like to thank Isaac Brodsky, Nick Rabinowitz, David Ellis, and AJ Friend of the H3 steering committee for reviewing the use of the H3 grid in the lisp-nexagon network. Barkai, et al. Expires July 28,2023 [Page 16] Internet-Draft LISP January 2023 9. IANA Considerations In accordance with BCP 26 [RFC8126].IANA is asked to create a registry named NEXAGON with the following sub registries. +-------+------------------------+-----------+ | Value | LISP LCAF Type Name | Reference | +-------+------------------------+-----------+ | 17 | H3 ID | Section 4 | +-------+------------------------+-----------+ Nexagon Header Bits +----------+------------------+----------+---------------------------+ | Spec | IANA Name | Bit | Description | | Name | | Position | | +----------+------------------+----------+---------------------------+ | Type | nexagon-type | 0-7 | Type of key-value encoding| | gzip | nexagon-gzip | 8-10 | gzip major version used | | PairCount| nexagon-paircount| 24-31 | key-value pair count | +----------+------------------+----------+---------------------------+ State Enumeration Field 0x0: Traffic Direction: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Lane North | [This Document] | | | | | | 0x2 | Lane North + 30 | [This Document] | | | | | | 0x3 | Lane North + 60 | [This Document] | | | | | | 0x4 | Lane North + 90 | [This Document] | | | | | | 0x5 | Lane North + 120 | [This Document] | | | | | | 0x6 | Lane North + 150 | [This Document] | | | | | | 0x7 | Lane North + 180 | [This Document] | | | | | | 0x8 | Lane North + 210 | [This Document] | | | | | | 0x9 | Lane North + 240 | [This Document] | | | | | | 0xA | Lane North + 270 | [This Document] | | | | | | 0xB | Lane North + 300 | [This Document] | | | | | | 0xC | Lane North + 330 | [This Document] | | | | | | 0xD | Junction | [This Document] | | | | | | 0xE | Shoulder | [This Document] | | | | | | 0xF | Sidewalk | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 17] Internet-Draft LISP January 2023 State Enumeration Field 0x1: Persistent Condition: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Pothole Light | [This Document] | | | | | | 0x2 | Pothole Deep | [This Document] | | | | | | 0x3 | Speed-bump Low | [This Document] | | | | | | 0x4 | Speed-bump High | [This Document] | | | | | | 0x5 | Icy | [This Document] | | | | | | 0x6 | Flooded | [This Document] | | | | | | 0x7 | Snow-cover | [This Document] | | | | | | 0x8 | Deep Snow | [This Document] | | | | | | 0x9 | Cone | [This Document] | | | | | | 0xA | Gravel | [This Document] | | | | | | 0xB | Choppy | [This Document] | | | | | | 0xC | Blind-Curve | [This Document] | | | | | | 0xD | Steep | [This Document] | | | | | | 0xE | Low-bridge | [This Document] | | | | | | 0xF | Other | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 18] Internet-Draft LISP January 2023 State Enumeration Field 0x2: Transient Condition: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Jaywalker | [This Document] | | | | | | 0x2 | Bike or Scooter | [This Document] | | | | | | 0x3 | Stopped Vehicle | [This Document] | | | | | | 0x4 | Moving on Shoulder | [This Document] | | | | | | 0x5 | First Responder | [This Document] | | | | | | 0x6 | Sudden Slowdown | [This Document] | | | | | | 0x7 | Oversize Vehicle | [This Document] | | | | | | 0x8 | Light/Sign Breach | [This Document] | | | | | | 0x9 | Collision Light | [This Document] | | | | | | 0xA | Collision Severe | [This Document] | | | | | | 0xB | Collision Debris | [This Document] | | | | | | 0xC | Collision Course | [This Document] | | | | | | 0xD | Vehicle Hard Brake | [This Document] | | | | | | 0xE | Vehicle Sharp Turn | [This Document] | | | | | | 0xF | Freed-up Parking | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 19] Internet-Draft LISP January 2023 State Enumeration Field 0x3: Traffic-light Counter: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | 1 Second to Green | [This Document] | | | | | | 0x2 | 2 Second to Green | [This Document] | | | | | | 0x3 | 3 Second to Green | [This Document] | | | | | | 0x4 | 4 Second to Green | [This Document] | | | | | | 0x5 | 5 Second to Green | [This Document] | | | | | | 0x6 | 6 Second to Green | [This Document] | | | | | | 0x7 | 7 Second to Green | [This Document] | | | | | | 0x8 | 8 Second to Green | [This Document] | | | | | | 0x9 | 9 Second to Green | [This Document] | | | | | | 0xA | 10 Second to Green | [This Document] | | | | | | 0xB | 20 Second to Green | [This Document] | | | | | | 0xC | 30 Second to Green | [This Document] | | | | | | 0xD | 60 Second to Green | [This Document] | | | | | | 0xE | Green Now | [This Document] | | | | | | 0xF | Red Now | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 20] Internet-Draft LISP January 2023 State Enumeration Field 0x4: Impacted Tile: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Epicenter | [This Document] | | | | | | 0x2 | 2 Tiles Away | [This Document] | | | | | | 0x3 | 3 Tiles Away | [This Document] | | | | | | 0x4 | 4 Tiles Away | [This Document] | | | | | | 0x5 | 5 Tiles Away | [This Document] | | | | | | 0x6 | 6 Tiles Away | [This Document] | | | | | | 0x7 | 7 Tiles Away | [This Document] | | | | | | 0x8 | 8 Tiles Away | [This Document] | | | | | | 0x9 | 9 Tiles Away | [This Document] | | | | | | 0xA | 10 Tiles Away | [This Document] | | | | | | 0xB | 20 Tiles Away | [This Document] | | | | | | 0xC | 30 Tiles Away | [This Document] | | | | | | 0xD | 60 Tiles Away | [This Document] | | | | | | 0xE | <100 Tiles Away | [This Document] | | | | | | 0xF | <200 Tiles Away | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 21] Internet-Draft LISP January 2023 State Enumeration Field 0x5: Expected Duration: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Next 1 Second | [This Document] | | | | | | 0x2 | Next 5 Seconds | [This Document] | | | | | | 0x3 | Next 10 Seconds | [This Document] | | | | | | 0x4 | Next 20 Seconds | [This Document] | | | | | | 0x5 | Next 40 Seconds | [This Document] | | | | | | 0x6 | Next 60 Seconds | [This Document] | | | | | | 0x7 | Next 2 Minutes | [This Document] | | | | | | 0x8 | Next 3 Minutes | [This Document] | | | | | | 0x9 | Next 4 Minutes | [This Document] | | | | | | 0xA | Next 5 Minutes | [This Document] | | | | | | 0xB | Next 10 Minutes | [This Document] | | | | | | 0xC | Next 15 Minutes | [This Document] | | | | | | 0xD | Next 30 Minutes | [This Document] | | | | | | 0xE | Next 60 Minutes | [This Document] | | | | | | 0xF | Next 24 Hours | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 22] Internet-Draft LISP January 2023 State Enumeration Field 0x6: Lane Right Sign: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Yield | [This Document] | | | | | | 0x2 | Speed Limit | [This Document] | | | | | | 0x3 | Straight Only | [This Document] | | | | | | 0x4 | No Straight | [This Document] | | | | | | 0x5 | Right Only | [This Document] | | | | | | 0x6 | No Right | [This Document] | | | | | | 0x7 | Left Only | [This Document] | | | | | | 0x8 | No Left | [This Document] | | | | | | 0x9 | Right Straight | [This Document] | | | | | | 0xA | Left Straight | [This Document] | | | | | | 0xB | No U Turn | [This Document] | | | | | | 0xC | No Left or U | [This Document] | | | | | | 0xD | Bike Lane | [This Document] | | | | | | 0xE | HOV Lane | [This Document] | | | | | | 0xF | Stop | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 23] Internet-Draft LISP January 2023 State Enumeration Field 0x7: Movement Sign: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Keep Right | [This Document] | | | | | | 0x2 | Keep Left | [This Document] | | | | | | 0x3 | Stay in Lane | [This Document] | | | | | | 0x4 | Do Not Enter | [This Document] | | | | | | 0x5 | No Trucks | [This Document] | | | | | | 0x6 | No Bikes | [This Document] | | | | | | 0x7 | No Peds | [This Document] | | | | | | 0x8 | One Way | [This Document] | | | | | | 0x9 | Parking | [This Document] | | | | | | 0xA | No Parking | [This Document] | | | | | | 0xB | No Standing | [This Document] | | | | | | 0xC | No Passing | [This Document] | | | | | | 0xD | Loading Zone | [This Document] | | | | | | 0xE | Rail Crossing | [This Document] | | | | | | 0xF | School Zone | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 24] Internet-Draft LISP January 2023 State Enumeration Field 0x8: Curves & Intersections: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | Turns Left | [This Document] | | | | | | 0x2 | Turns Right | [This Document] | | | | | | 0x3 | Curves Left | [This Document] | | | | | | 0x4 | Curves Right | [This Document] | | | | | | 0x5 | Reverses Left | [This Document] | | | | | | 0x6 | Reverses Right | [This Document] | | | | | | 0x7 | Winding Road | [This Document] | | | | | | 0x8 | Hair Pin | [This Document] | | | | | | 0x9 | Pretzel Turn | [This Document] | | | | | | 0xA | Cross Roads | [This Document] | | | | | | 0xB | Cross T | [This Document] | | | | | | 0xC | Cross Y | [This Document] | | | | | | 0xD | Circle | [This Document] | | | | | | 0xE | Lane Ends | [This Document] | | | | | | 0xF | Road Narrows | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 25] Internet-Draft LISP January 2023 State Enumeration Field 0x9: Tile Traffic Speed: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | < 1 m/sec | [This Document] | | | | | | 0x2 | < 2 m/sec | [This Document] | | | | | | 0x3 | < 3 m/sec | [This Document] | | | | | | 0x4 | < 4 m/sec | [This Document] | | | | | | 0x5 | < 5 m/sec | [This Document] | | | | | | 0x6 | < 6 m/sec | [This Document] | | | | | | 0x7 | < 7 m/sec | [This Document] | | | | | | 0x8 | < 8 m/sec | [This Document] | | | | | | 0x9 | < 9 m/sec | [This Document] | | | | | | 0xA | < 10 m/sec | [This Document] | | | | | | 0xB | < 20 m/sec | [This Document] | | | | | | 0xC | < 30 m/sec | [This Document] | | | | | | 0xD | < 40 m/sec | [This Document] | | | | | | 0xE | < 50 m/sec | [This Document] | | | | | | 0xF | > 50 m/sec | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 26] Internet-Draft LISP January 2023 State Enumeration Field 0xA: Pedestrian Curb Density: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | 100% | [This Document] | | | | | | 0x2 | 95% | [This Document] | | | | | | 0x3 | 90% | [This Document] | | | | | | 0x4 | 85% | [This Document] | | | | | | 0x5 | 80% | [This Document] | | | | | | 0x6 | 70% | [This Document] | | | | | | 0x7 | 60% | [This Document] | | | | | | 0x8 | 50% | [This Document] | | | | | | 0x9 | 40% | [This Document] | | | | | | 0xA | 30% | [This Document] | | | | | | 0xB | 20% | [This Document] | | | | | | 0xC | 15% | [This Document] | | | | | | 0xD | 10% | [This Document] | | | | | | 0xE | 5% | [This Document] | | | | | | 0xF | No Peds | [This Document] | +-------+--------------------+-----------------+ Barkai, et al. Expires July 28,2023 [Page 27] Internet-Draft LISP January 2023 State Enumeration Field 0xB: Local Zone Speed Limit: +-------+--------------------+-----------------+ | Value | Description | Reference | +-------+--------------------+-----------------+ | 0x0 | Null | [This Document] | | | | | | 0x1 | 1 m/sec | [This Document] | | | | | | 0x2 | 2 m/sec | [This Document] | | | | | | 0x3 | 3 m/sec | [This Document] | | | | | | 0x4 | 4 m/sec | [This Document] | | | | | | 0x5 | 5 m/sec | [This Document] | | | | | | 0x6 | 6 m/sec | [This Document] | | | | | | 0x7 | 7 m/sec | [This Document] | | | | | | 0x8 | 8 m/sec | [This Document] | | | | | | 0x9 | 9 m/sec | [This Document] | | | | | | 0xA | 10 m/sec | [This Document] | | | | | | 0xB | 15 m/sec | [This Document] | | | | | | 0xC | 20 m/sec | [This Document] | | | | | | 0xD | 25 m/sec | [This Document] | | | | | | 0xE | 30 m/sec | [This Document] | | | | | | 0xF | 35 m/sec | [This Document] | +-------+--------------------+-----------------+ State enumeration fields 0xC, 0xD, 0xE, 0xF, are unassigned. IANA can assign them on a "First Come First Served" basis according to [RFC8126]. Barkai, et al. Expires July 28,2023 [Page 28] Internet-Draft LISP January 2023 10. Normative References [RFC9300] Farinacci, D., Fuller, V., Meyer, D., Lewis, D., and A. Cabellos, Ed., "The Locator/ID Separation Protocol (LISP)" , RFC 9300, DOI 10.17487/RFC9300, October 2022, . [RFC9301] Farinacci, D., Maino, F., Fuller, V., and A. Cabellos, Ed., "Locator/ID Separation Protocol (LISP) Control Plane", RFC 9301, DOI 10.17487/RFC9301, October 2022, . [RFC4604] Holbrook, H., Cain, B., and B. Haberman, "Using Internet Group Management Protocol Version 3 (IGMPv3) and Multicast Listener Discovery Protocol Version 2 (MLDv2) for Source- Specific Multicast", RFC 4604, DOI 10.17487/RFC4604, August 2006, . [RFC6733] Fajardo, V., Ed., Arkko, J., Loughney, J., and G. Zorn, Ed., "Diameter Base Protocol", RFC 6733, DOI 10.17487/RFC6733, October 2012, . [RFC8126] Cotton, M., Leiba, B., Narten, T., "Guidelines for Writing an IANA Considerations Section in RFCs", RFC8126, DOI 10.17487/RFC8126, June 2017, . [RFC8378] Farinacci, D., Moreno, V., "Signal-Free Locator/ID Separation Protocol (LISP) Multicast", RFC8378, DOI 10.17487/RFC8378, May 2018, . [RFC8060] Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical Address Format (LCAF)", RFC 8060, DOI 10.17487/RFC8060, February 2017, . [H3] Uber Technologies Inc. [n.d.]. H3: Ubers Hexagonal Hierarchical Spatial Index, May 2021, . [BDD] Fisher Yu, Wenqi Xian, Yingying Chen, Fangchen Liu, Mike Liao, Vashisht Madhavan, and Trevor Darrell. BDD100K: A diverse driving video database with scalable annotation tooling, arXiv:1805.04687, February 2018, . Barkai, et al. Expires July 28,2023 [Page 29] Internet-Draft LISP January 2023 Authors' Addresses Sharon Barkai Nexar CA USA Email: sbarkai@gmail.com Bruno Fernandez-Ruiz Nexar London UK Email: b@getnexar.com Rotem Tamir Nexar Israel Email: rotemtamir@getnexar.com Alberto Rodriguez-Natal Cisco Systems 170 Tasman Drive San Jose, CA USA Email: natal@cisco.com Fabio Maino Cisco Systems 170 Tasman Drive San Jose, CA USA Email: fmaino@cisco.com Barkai, et al. Expires July 28,2023 [Page 30] Internet-Draft LISP January 2023 Albert Cabellos-Aparicio Universitat Politecnica de Catalunya Barcelona Spain Email: acabello@ac.upc.edu Jordi Paillisse-Vilanova Universitat Politecnica de Catalunya Barcelona Spain Email: jordip@ac.upc.edu Dino Farinacci lispers.net San Jose, CA USA Email: farinacci@gmail.com Barkai, et al. Expires July 28,2023 [Page 31]