LISP Working Group S. Barkai Internet-Draft B. Fernandez-Ruiz Intended status: Informational R. Tamir Expires: September 10, 2022 Nexar Inc. A. Rodriguez-Natal F. Maino Cisco Systems A. Cabellos-Aparicio J. Paillisse Vilanova Technical University of Catalonia D. Farinacci lispers.net June 25, 2022 Network-Hexagons:Geolocation Mobility Edge Network Based On H3 and LISP draft-ietf-lisp-nexagon-35 Abstract This informational document describes the combination of LISP and the H3 geospatial hierarchical grid forming a Geolocation mobility edge network. When vehicles with AI cameras detect objects of interest on the road, they use their GPS to calculate their high-resolution (small) grid-tile position. They then use this tile to calculate the high-resolution tile of the detection, and the low-resolution (big) grid-tile containing it. That big-tile identifier is used to calculate IPv6 LISP endpoint identifier (EID). This EID address is a queue of a Geolocation process consolidating all vehicles uploads from that area. Geolocation processes generate IPv6 channels of all ongoing road situations in their area. Vehicles driving or navigating to an area can subscribe to these channels using LISP multicast registration. 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 September 10, 2022. Barkai, et al. Expires September 10, 2022 [Page 1] Internet-Draft LISP June 2022 Copyright Notice Copyright (c) 2022 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 . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Definition of Terms . . . . . . . . . . . . . . . . . . . . . 5 3. Deployment Assumptions . . . . . . . . . . . . . . . . . . . 7 4. Mobility Clients-Services Networking . . . . . . . . . . . . 10 5. Mobility Unicast and Multicast . . . . . . . . . . . . . . . 11 6. Security Considerations . . . . . . . . . . . . . . . . . . . 17 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 18 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 9. Normative References . . . . . . . . . . . . . . . . . . . . 30 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 31 1. Introduction This informational document describes the combination of LISP and the H3 geospatial hierarchical grid forming a Geolocation mobility edge network. When vehicles with AI cameras detect objects of interest on the road, they use their GPS to calculate their high-resolution (small) grid-tile position. They then use this tile to calculate the high-resolution tile of the detection, and the low-resolution (big) grid-tile containing it. That big-tile identifier is used to calculate IPv6 LISP endpoint identifier (EID). This EID address is a queue of a Geolocation process consolidating all vehicles uploads from that area. Geolocation processes generate IPv6 channels of all ongoing road situations in their area. Vehicles driving or navigating to an area can subscribe to these channels using LISP multicast registration. Geolocation processes are delegated dynamically to compute locations according road activity in their area. This services dynamics combined with clients' IP Anchor dynamics causes key-issues resolved by LISP: - Coherency of Geolocation processes' IPs cached by vehicle clients - Context-switching between Geolocation processes per driving client - Geo-privacy and tracking of clients interacting with geo-processes - Client subscription continuity switching IP Anchors while driving Barkai, et al. Expires September 10, 2022 [Page 2] Internet-Draft LISP June 2022 Resolving these key-issues is achievable by address virtualization: - Addresses virtualization for clients and services communicating - Algorithmic services addressing based on geospatial grid identifiers - Algorithmic clients addressing based on an authorization procedure Virtual addressing based on LISP EIDs is applied to Geolocation: - Addressable queues for uploads from mobility clients - Addressable channels for subscribed mobility clients In addition to queues and channels Geolocations Services include application state and functions. Functions are available in all compute locations, geospatial-situation state regenerates. ___ / \ Addressable >> State >> Addressable Upload Queues \ ___ / Channels /\ Functions() \/ Figure 1: Geolocation schematics: queues, channels, states, functions Address virtualization based on LISP EIDs includes: - EID addressing of Geolocation queues based on H3 identifiers - EID addressing of detection channels, H3-ID sources and topics - EID addressing of mobility clients, assigned-renewed periodically Service EIDs enable portability of Geolocation queues and channels. Client EIDs enable channel-subscription continuity, for when mobile cellular or wifi carriers are switched for reception or other reasons. Client EIDs are temporary and make it difficult to track by services. EIDs, geospatial-service and temporary-clients, allow for dynamic and portable service allocation, algorithmic context switching between processes while driving, subscription continuity, and IP geo-privacy. Barkai, et al. Expires September 10, 2022 [Page 3] Internet-Draft LISP June 2022 Note 1: The breakdown of Geolocations Services to processes is done based on geospatial grid lines known to both mobility clients and Geolocation Services. We use H3 [H3] hierarchical hexagonal grid because of its clear tile adjacency properties. Each grid-tile in each resolution has a unique 64bit identifier (HID). HIDs are mapped to EIDs algorithmically. In addition to shards, the same grid at higher resolution (smaller tiles) is used to localize detections. We refer to h3.rB as the lower resolution shard big tile, and h3.rS as the detection location, higher resolution small tile. Mappings: GPS => h3.rS => H3.rB => EID are therefore algorithmic. Sizeof (h3.rB) / Sizeof (h3.rS) x density-factor / MTU ~ number of messages needed to convey big-tile shard a snapshot of small-tiles. Off-Peak Allocation Packed on less compute _ _ _ _ / \/ \ / \/ \ ---- \_/\_/ \_/\_/ ---- Peak Geolocation Allocation / \/ \ / \/ \ ---- Geospatial shards spread on more compute \_/\_/ \_/\_/ ---- _ _ _ _ _ _ _ _ / \/ \ / \/ \ ---- / \/ \ / \/ \ / \/ \ / \/ \ ---- \_/\_/ \_/\_/ ---- \_/\_/ \_/\_/ \_/\_/ \_/\_/ ---- / \/ \ / \/ \ ---- / \/ \ / \/ \ / \/ \ / \/ \ ---- \_/\_/ \_/\_/ ---- \_/\_/ \_/\_/ \_/\_/ \_/\_/ ---- ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ Site Site Standby Site Site Site Site Standby Figure 2: Geolocation dynamic allocation per geospatial activity Note 2: LISP solution for address virtualization is an application network. In order for clients and services to use it there needs to be a formal provisioning step. For the clients this step will require Authentication Authorization and Accounting (AAA) procedure by which clients are assigned and renew EIDs and XTRs to be used to interact with services. This process may be done in various vendor specific methods, or multivendor AAA service. AAA procedure is described as a life-cycle example. Note 3: In order to make the notion of geospatial detection concrete, we add to the 64bit HID of "where" is a detection, 64bit of "what" is the detection or situation. These 64bits are detailed in a bit-mask based on a taxonomy defined by Berkeley Deep Drive [BDD]. It is meant as a baseline that can be extended or overridden depending on need. Barkai, et al. Expires September 10, 2022 [Page 4] Internet-Draft LISP June 2022 2. Definition of Terms Based on [I-D.ietf-lisp-rfc6830bis][I-D.ietf-lisp-rfc6833bis] H3ServiceEID: Is an EID addressable Geolocation Service shard. It is a designated destination for geospatial detections, and an (S,G) source of multicast of themed detection channels. It has a light-weight LISP protocol stack to tunnel packets via ServerXTR. The EID is IPv6 and contains HID in the lower bits. ServerXTR: Is a data-plane only LISP protocol stack implementation, it is co-located with H3ServiceEID process. ServerXTR encapsulates and decapsulates packets to and from EdgeRTRs. MobilityClient: Is an application that may be a part of a vehicle system, part of a navigation application, gov-muni application etc. It has light-weight LISP data-plane stack to packets via ClientXTR. MobilityClientEID: Is the IPv6 EID used by the Mobility Clients. The destination of such packets are H3ServiceEIDs. The EID format is assigned as part of the MobilityClient mobility-network AAA. 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: EdgeRTR network connects MobilityClients to H3ServiceEIDs. EdgeRTRs manage MobilityClients multicast registrations [RFC8378]. EdgeRTRs aggregate MobilityClients/H3Services using tunnels to facilitate hosting-providers and mobile-providers in accessing the LISP based Geolocation mobility-network. EdgeRTRs decapsulate packets from ClientXTRs and ServerXTRs, and re-encapsulates packets to clients and servers. EdgeRTRs glean H3ServiceEIDs and MobilityClient EIDs when they decapsulates packets. EdgeRTRs store H3ServiceEIDs and route- locations (RLOC) using map-caches. Mappings are registered to the LISP mapping system [I-D.ietf-lisp-rfc6833bis]. Mappings may be provisioned when H3Services are assigned EdgeRTRs. EdgeRTRs do not register MobilityClients' EIDs. Enterprises may provide their own EdgeRTRs to protect geo-privacy. Barkai, et al. Expires September 10, 2022 [Page 5] Internet-Draft LISP June 2022 h3.rB routed-shards grid tiles ___ ___ H3ServiceEIDs ___ / \ H3ServiceEIDs ___ / \ ___ / | h3.rB | ___ / | h3.rB | / | h3.rB \ ___ / / | h3.rB \ ___ / | h3.rB \ ___ / sXTR | h3.rB \ ___ / sXTR \ ___ / sXTR || \ ___ / sXTR || sXTR || || sXTR || || || || || || || || || || || || || || = = = = = = EdgeRTR EdgeRTR = = = = = || (( () )) || ( Geolocation ) ( Mobility Network ) ( Based on LISP ) ( || (( (()) () || ) || || = = = = = = = = = = = = = = || || EdgeRTR EdgeRTR .. .. .. .. .. .. .. .. ((((|)))) ((((|)))) ((((|)))) ((((|)))) /|\ RAN /|\ /|\ RAN /|\ || || || || Uploads Upstream || Channels Downstream || || ___ ___ ___ || || << movment << / \/ \/ \<> \ ___ /\ ___ / >> movement >> ....... Figure 3: Geolocation clients and services interaction layout Figure 3 above describes: - MobilityClientA detections used by MobilityClientB, and vice versa - Clients: share information only via Geolocation Services - ClientXTR (cXTR):encapsulates packets over access network to EdgeRTR - ServerXTR (sXTR):encapsulates packets over edge network to EdgeRTR - Uploads: routed to appropriate Geolocation Service by EdgeRTRs - Channels: originate from Geolocation Services replicated by EdgeRTRs Barkai, et al. Expires September 10, 2022 [Page 6] Internet-Draft LISP June 2022 3. Deployment Assumptions I. We assume detections can be localized to h3.rS tiles and can be enumerated. Compact detection enumeration format is described bellow: 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 compact representation of tile detection state Detections are in 16 fields x 16 enumerations. Nibbles are named using hexadecimal index according to the position where the most significant nibble has index 0. Values based on [BDD] are defined in section 8. II. Authorization of MobilityClients to mobility-network is renewed while driving. DNS/AAA procedure described bellow can be used as an example to obtain EIDs/EdgeRTRs and for enabling use of the network. Barkai, et al. Expires September 10, 2022 [Page 7] Internet-Draft LISP June 2022 Diameter [RFC6733] based AAA can be used to accommodate many types of mobility clients in a rich eco-system: vehicle systems, driving and navigation applications, smart-city and consumer applications. Example procedure for ClientXTRs 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 Barkai, et al. Expires September 10, 2022 [Page 8] Internet-Draft LISP June 2022 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 exchange for mobility-network usage Barkai, et al. Expires September 10, 2022 [Page 9] Internet-Draft LISP June 2022 4. Mobility Clients-Services Networking The mobility-network functions as a standard LISP overlay. The overlay delivers unicast and multicast packets across: Data-plane XTRs are used in the stack of each mobility client/server. ClientXTRs and ServerXTRs are associated with EdgeRTRs. This structure allows for MobilityClients to "show up" at any of mobility-network location behind any network provider or network address translation domain. It allows for any H3ServiceEID to be instantiated, delegated, or failed-over to any compute location. In this specification we assume semi-random association between ClientXTRs and EdgeRTRs - assigned in AAA procedure. We assume in any given metro area a pool of EdgeRTRs to distribute the Mobility Clients load. We assume EdgeRTRs are topologically equivalent. EdgeRTRs use LISP to encapsulate traffic to and from other EdgeRTRs. MobilityClient == ClientXTR ClientXTR == MobilityClient (Encryption and Decryption) || || (Encryption and Decryption) || || EdgeRTR X EdgeRTR || || (Encryption and Decryption) || || (Encryption and Decryption) H3ServiceEID == ServerXTR ServerXTR == H3ServiceEID Figure 6: LISP network connecting MobilityClients and H3ServiceEIDs Note: there may be more than one ClientEID in the same process using the same ClientXTR. For example multiple layers of map or heads-up display. Such vendor specific multiplexing implementation is unspecified here. Barkai, et al. Expires September 10, 2022 [Page 10] Internet-Draft LISP June 2022 5. Mobility Unicast and Multicast The day in a life of unicast detection 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 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, H3ServiceEID 6. EdgeRTR gleans and caches ClientEID and ClientXTR RLOC 7. EdgeRTR resolves RLOC of remote EdgeRTR, and re-tunnels: Outer Header src/dest: EdgeRTR RLOC, remote EdgeRTR RLOC Inner Header src/dest: ClientEID, H3ServiceEID 8. Remote EdgeRTR lookups H3ServerEID ServerXTR RLOC, re-tunnels: Outer Header src/dest: EdgeRTR RLOC, ServerXTR RLOC Inner Header src/dest: ClientEID, H3ServiceEID 9. ServerXTR delivers ClientEID message to H3ServiceEID 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 7: 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 September 10, 2022 [Page 11] Internet-Draft LISP June 2022 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 H3ServiceEID + | | | | + + | | | / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 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 8: Uploaded detections packet format Barkai, et al. Expires September 10, 2022 [Page 12] Internet-Draft LISP June 2022 Each H3Service 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]. Report messages are encapsulated between ClientXTRs and EdgeRTRs. The day in a life of multicast update: 1. H3ServiceEID determines change or timing requiring an update 2. H3ServiceEID 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 September 10, 2022 [Page 13] Internet-Draft LISP June 2022 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 H3ServiceEID + | | | IPv6 + + | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | | + + | | | | + Group Address + | | | | + + | | | / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Port = xxxx | Dest Port = xxxx | \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ UDP | UDP Length | UDP Checksum | / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | |Nexagon +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / ~ Nexagons Payload ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 9: multicast update packet header Barkai, et al. Expires September 10, 2022 [Page 14] Internet-Draft LISP June 2022 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 10: multicast update payload, key-value, key-value.. Barkai, et al. Expires September 10, 2022 [Page 15] Internet-Draft LISP June 2022 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 11: multicast update payload, value, key, key.. for larger areas Barkai, et al. Expires September 10, 2022 [Page 16] Internet-Draft LISP June 2022 6. Security Considerations The LISP mobility-network is inherently secure and private. All information is conveyed to clients using provisioned Geolocation Services. MobilityClients receive information only via geospatial channels originating at provisioned services, replicated by EdgeRTRs. MobilityClients have no indication as to the origin of the raw data. In order to be able to use the mobility-network for a given period, the mobility clients go through a DNS/AAA stage by which they obtain their clientEID identifiers-credentials and the RLOCs of EdgeRTRs they may use as gateways to the network. This MobilityClient to EdgeRTR interface is the most sensitive from privacy and security perspective. The traffic on this interface is tunneled, its content may be encrypted between ClientXTR to EdgeRTR. Still, the EdgeRTR will know based on headers the client RLOC, and the h3.rB area a client engages with services about. Enterprises such as vehicle OEMs or carriers can "bring their own" EdgeRTRs (BYO_RTR). BYO_RTRs are pre-provisioned to be able to use the mapping system and are put on the approved list of the other EdgeRTRs. A carrier offering EdgeRTR services on multiaccess edge compute (MEC) is optimal for security and also for traffic steering and replication. Beyond client to EdgeRTR hop, the mapping system does not hold MobilityClientEIDs, and remote EdgeRTRs are only aware of clients temporary EIDs. When EdgeRTRs register in the mapping for channels, they do not register which clients use which EdgeRTR. The H3ServiceEIDs decrypt and parse actual h3.rS detections. They also consider MobilityClientEID credentials encoded in the client EID and assigned by the AAA functions. This helps avoid "fake-news", e.g. poorly made or poorly localized detections. H3Services are associated with EdgeRTRs, provisioned in the EdgeRTRs and in the mapping system. Barkai, et al. Expires September 10, 2022 [Page 17] Internet-Draft LISP June 2022 In summary of main risk mitigations for the lisp mobility-network: (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 H3Services EIDs are provisioned in EdgeRTRs, Clients using the AAA procedure, H3Services via dev-ops. (3) credibility: the interface crowd-sources geo-state and does not assume to trust single detections. Credit history track to MobilityClientEIDs by as part of normal H3Services fact checking, aggregate scores affect AAA credentials. (4) 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. Aggregate credit score span all H3Services administratively without source. 7. 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 for help clarifying Geolocation Services terminology through joint work on the AECC specifications and papers, and Lei Zhong for mobility dataflow virtualization terminology. Barkai, et al. Expires September 10, 2022 [Page 18] Internet-Draft LISP June 2022 8. IANA Considerations This section provides guidance to the Internet Assigned Numbers Authority (IANA) regarding registration of values related to the LISP specification, in accordance with BCP 26 [RFC8126]. IANA is asked to create a registry named NEXAGON Parameters. Such registry should be populated with the following sub registries. 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 September 10, 2022 [Page 19] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 20] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 21] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 22] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 23] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 24] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 25] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 26] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 27] Internet-Draft LISP June 2022 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 September 10, 2022 [Page 28] Internet-Draft LISP June 2022 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] | +-------+--------------------+-----------------+ State enumeration fields 0xB, 0xC, 0xD, 0xE, 0xF, are unassigned. IANA can assign them on a "First Come First Served" basis according to [RFC8126]. Barkai, et al. Expires September 10, 2022 [Page 29] Internet-Draft LISP June 2022 9. Normative References [I-D.ietf-lisp-rfc6830bis] Farinacci, D., Fuller, V., Meyer, D., Lewis, D., and A. Cabellos-Aparicio, "The Locator/ID Separation Protocol (LISP)", draft-ietf-lisp-rfc6830bis-38 (work in progress), May 2020. [I-D.ietf-lisp-rfc6833bis] Farinacci, D., Maino, F., Fuller, V., and A. Cabellos, "Locator/ID Separation Protocol (LISP) Control-Plane", draft-ietf-lisp-rfc6833bis-31 (work in progress), May 2020. [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, . [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, 2018. 2, 3 Barkai, et al. Expires September 10, 2022 [Page 30] Internet-Draft LISP June 2022 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 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 September 10, 2022 [Page 31] Internet-Draft LISP June 2022 Albert Cabellos-Aparicio Technical University of Catalonia Barcelona Spain Email: acabello@ac.upc.edu Jordi Paillisse-Vilanova Technical University of Catalonia Barcelona Spain Email: jordip@ac.upc.edu Dino Farinacci lispers.net San Jose, CA USA Email: farinacci@gmail.com Barkai, et al. Expires September 10, 2022 [Page 32]