idnits 2.17.1 draft-templin-6man-omni-interface-26.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- == The 'Updates: ' line in the draft header should list only the _numbers_ of the RFCs which will be updated by this document (if approved); it should not include the word 'RFC' in the list. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (June 30, 2020) is 1390 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Looks like a reference, but probably isn't: '00' on line 893 -- Looks like a reference, but probably isn't: '03' on line 887 -- Looks like a reference, but probably isn't: '04' on line 888 -- Looks like a reference, but probably isn't: '07' on line 888 -- Looks like a reference, but probably isn't: '28' on line 889 -- Looks like a reference, but probably isn't: '31' on line 889 -- Looks like a reference, but probably isn't: '63' on line 893 -- Looks like a reference, but probably isn't: '64' on line 895 -- Looks like a reference, but probably isn't: '65' on line 895 -- Looks like a reference, but probably isn't: '66' on line 895 == Missing Reference: 'RFCXXXX' is mentioned on line 1479, but not defined -- Looks like a reference, but probably isn't: '67' on line 1818 -- Looks like a reference, but probably isn't: '70' on line 1819 -- Looks like a reference, but probably isn't: '76' on line 1819 == Unused Reference: 'RFC2225' is defined on line 1662, but no explicit reference was found in the text == Unused Reference: 'RFC5175' is defined on line 1728, but no explicit reference was found in the text == Unused Reference: 'RFC7421' is defined on line 1769, but no explicit reference was found in the text == Unused Reference: 'RFC8754' is defined on line 1804, but no explicit reference was found in the text == Outdated reference: A later version (-13) exists of draft-ietf-intarea-tunnels-10 == Outdated reference: A later version (-11) exists of draft-templin-6man-dhcpv6-ndopt-09 == Outdated reference: A later version (-99) exists of draft-templin-intarea-6706bis-58 Summary: 0 errors (**), 0 flaws (~~), 10 warnings (==), 14 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group F. Templin, Ed. 3 Internet-Draft The Boeing Company 4 Updates: rfc4193, rfc4291, rfc4443, A. Whyman 5 rfc8201 (if approved) MWA Ltd c/o Inmarsat Global Ltd 6 Intended status: Standards Track June 30, 2020 7 Expires: January 1, 2021 9 Transmission of IPv6 Packets over Overlay Multilink Network (OMNI) 10 Interfaces 11 draft-templin-6man-omni-interface-26 13 Abstract 15 Mobile nodes (e.g., aircraft of various configurations, terrestrial 16 vehicles, seagoing vessels, enterprise wireless devices, etc.) 17 communicate with networked correspondents over multiple access 18 network data links and configure mobile routers to connect end user 19 networks. A multilink interface specification is therefore needed 20 for coordination with the network-based mobility service. This 21 document specifies the transmission of IPv6 packets over Overlay 22 Multilink Network (OMNI) Interfaces. 24 Status of This Memo 26 This Internet-Draft is submitted in full conformance with the 27 provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet Engineering 30 Task Force (IETF). Note that other groups may also distribute 31 working documents as Internet-Drafts. The list of current Internet- 32 Drafts is at https://datatracker.ietf.org/drafts/current/. 34 Internet-Drafts are draft documents valid for a maximum of six months 35 and may be updated, replaced, or obsoleted by other documents at any 36 time. It is inappropriate to use Internet-Drafts as reference 37 material or to cite them other than as "work in progress." 39 This Internet-Draft will expire on January 1, 2021. 41 Copyright Notice 43 Copyright (c) 2020 IETF Trust and the persons identified as the 44 document authors. All rights reserved. 46 This document is subject to BCP 78 and the IETF Trust's Legal 47 Provisions Relating to IETF Documents 48 (https://trustee.ietf.org/license-info) in effect on the date of 49 publication of this document. Please review these documents 50 carefully, as they describe your rights and restrictions with respect 51 to this document. Code Components extracted from this document must 52 include Simplified BSD License text as described in Section 4.e of 53 the Trust Legal Provisions and are provided without warranty as 54 described in the Simplified BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 59 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 60 3. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 7 61 4. Overlay Multilink Network (OMNI) Interface Model . . . . . . 7 62 5. Maximum Transmission Unit (MTU) and Fragmentation . . . . . . 11 63 5.1. Fragmentation Security Implications . . . . . . . . . . . 13 64 6. Frame Format . . . . . . . . . . . . . . . . . . . . . . . . 14 65 7. Link-Local Addresses (LLAs) . . . . . . . . . . . . . . . . . 14 66 8. Unique-Local Addresses (ULAs) . . . . . . . . . . . . . . . . 15 67 9. Address Mapping - Unicast . . . . . . . . . . . . . . . . . . 16 68 9.1. Sub-Options . . . . . . . . . . . . . . . . . . . . . . . 17 69 9.1.1. Pad1 . . . . . . . . . . . . . . . . . . . . . . . . 18 70 9.1.2. PadN . . . . . . . . . . . . . . . . . . . . . . . . 18 71 9.1.3. ifIndex-tuple (Type 1) . . . . . . . . . . . . . . . 18 72 9.1.4. ifIndex-tuple (Type 2) . . . . . . . . . . . . . . . 21 73 9.1.5. MS-Register . . . . . . . . . . . . . . . . . . . . . 21 74 9.1.6. MS-Release . . . . . . . . . . . . . . . . . . . . . 22 75 9.1.7. Network Access Identifier (NAI) . . . . . . . . . . . 22 76 9.1.8. Geo Coordiantes . . . . . . . . . . . . . . . . . . . 22 77 10. Address Mapping - Multicast . . . . . . . . . . . . . . . . . 23 78 11. Conceptual Sending Algorithm . . . . . . . . . . . . . . . . 23 79 11.1. Multiple OMNI Interfaces . . . . . . . . . . . . . . . . 24 80 12. Router Discovery and Prefix Registration . . . . . . . . . . 24 81 12.1. Multihop Router Discovery . . . . . . . . . . . . . . . 28 82 13. Secure Redirection . . . . . . . . . . . . . . . . . . . . . 29 83 14. AR and MSE Resilience . . . . . . . . . . . . . . . . . . . . 29 84 15. Detecting and Responding to MSE Failures . . . . . . . . . . 29 85 16. Transition Considerations . . . . . . . . . . . . . . . . . . 30 86 17. OMNI Interfaces on the Open Internet . . . . . . . . . . . . 31 87 18. Time-Varying MNPs . . . . . . . . . . . . . . . . . . . . . . 31 88 19. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 32 89 20. Security Considerations . . . . . . . . . . . . . . . . . . . 33 90 21. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 34 91 22. References . . . . . . . . . . . . . . . . . . . . . . . . . 34 92 22.1. Normative References . . . . . . . . . . . . . . . . . . 34 93 22.2. Informative References . . . . . . . . . . . . . . . . . 36 94 Appendix A. Type 1 ifIndex-tuple Traffic Classifier Preference 95 Encoding . . . . . . . . . . . . . . . . . . . . . . 40 96 Appendix B. VDL Mode 2 Considerations . . . . . . . . . . . . . 41 97 Appendix C. MN / AR Isolation Through L2 Address Mapping . . . . 42 98 Appendix D. Change Log . . . . . . . . . . . . . . . . . . . . . 43 99 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 45 101 1. Introduction 103 Mobile Nodes (MNs) (e.g., aircraft of various configurations, 104 terrestrial vehicles, seagoing vessels, enterprise wireless devices, 105 etc.) often have multiple data links for communicating with networked 106 correspondents. These data links may have diverse performance, cost 107 and availability properties that can change dynamically according to 108 mobility patterns, flight phases, proximity to infrastructure, etc. 109 MNs coordinate their data links in a discipline known as "multilink", 110 in which a single virtual interface is configured over the underlying 111 data links. 113 The MN configures a virtual interface (termed the "Overlay Multilink 114 Network (OMNI) interface") as a thin layer over the underlying Access 115 Network (ANET) interfaces. The OMNI interface is therefore the only 116 interface abstraction exposed to the IPv6 layer and behaves according 117 to the Non-Broadcast, Multiple Access (NBMA) interface principle, 118 while underlying interfaces appear as link layer communication 119 channels in the architecture. The OMNI interface connects to a 120 virtual overlay service known as the "OMNI link". The OMNI link 121 spans one or more Internetworks that may include private-use 122 infrastructures and/or the global public Internet itself. 124 Each MN receives a Mobile Network Prefix (MNP) for numbering 125 downstream-attached End User Networks (EUNs) independently of the 126 access network data links selected for data transport. The MN 127 performs router discovery over the OMNI interface (i.e., similar to 128 IPv6 customer edge routers [RFC7084]) and acts as a mobile router on 129 behalf of its EUNs. The router discovery process is iterated over 130 each of the OMNI interface's underlying interfaces in order to 131 register per-link parameters (see Section 12). 133 The OMNI interface provides a multilink nexus for exchanging inbound 134 and outbound traffic via the correct underlying interface(s). The 135 IPv6 layer sees the OMNI interface as a point of connection to the 136 OMNI link. Each OMNI link has one or more associated Mobility 137 Service Prefixes (MSPs) from which OMNI link MNPs are derived. If 138 there are multiple OMNI links, the IPv6 layer will see multiple OMNI 139 interfaces. 141 MNs may connect to multiple distinct OMNI links by configuring 142 multiple OMNI interfaces, e.g., omni0, omni1, omni2, etc. Each OMNI 143 interface is configured over a set of underlying interfaces and 144 provides a nexus for Safety-Based Multilink (SBM) operation. The IP 145 layer selects an OMNI interface based on SBM routing considerations, 146 then the selected interface applies Performance-Based Multilink (PBM) 147 to select the correct underlying interface. Applications can apply 148 Segment Routing [RFC8402] to select independent SBM topologies for 149 fault tolerance. 151 The OMNI interface interacts with a network-based Mobility Service 152 (MS) through IPv6 Neighbor Discovery (ND) control message exchanges 153 [RFC4861]. The MS provides Mobility Service Endpoints (MSEs) that 154 track MN movements and represent their MNPs in a global routing or 155 mapping system. 157 This document specifies the transmission of IPv6 packets [RFC8200] 158 and MN/MS control messaging over OMNI interfaces. 160 2. Terminology 162 The terminology in the normative references applies; especially, the 163 terms "link" and "interface" are the same as defined in the IPv6 164 [RFC8200] and IPv6 Neighbor Discovery (ND) [RFC4861] specifications. 165 Also, the Protocol Constants defined in Section 10 of [RFC4861] are 166 used in their same format and meaning in this document. The terms 167 "All-Routers multicast", "All-Nodes multicast" and "Subnet-Router 168 anycast" are the same as defined in [RFC4291] (with Link-Local scope 169 assumed). 171 The following terms are defined within the scope of this document: 173 Mobile Node (MN) 174 an end system with a mobile router having multiple distinct 175 upstream data link connections that are grouped together in one or 176 more logical units. The MN's data link connection parameters can 177 change over time due to, e.g., node mobility, link quality, etc. 178 The MN further connects a downstream-attached End User Network 179 (EUN). The term MN used here is distinct from uses in other 180 documents, and does not imply a particular mobility protocol. 182 End User Network (EUN) 183 a simple or complex downstream-attached mobile network that 184 travels with the MN as a single logical unit. The IPv6 addresses 185 assigned to EUN devices remain stable even if the MN's upstream 186 data link connections change. 188 Mobility Service (MS) 189 a mobile routing service that tracks MN movements and ensures that 190 MNs remain continuously reachable even across mobility events. 191 Specific MS details are out of scope for this document. 193 Mobility Service Endpoint (MSE) 194 an entity in the MS (either singular or aggregate) that 195 coordinates the mobility events of one or more MN. 197 Mobility Service Prefix (MSP) 198 an aggregated IPv6 prefix (e.g., 2001:db8::/32) advertised to the 199 rest of the Internetwork by the MS, and from which more-specific 200 Mobile Network Prefixes (MNPs) are derived. 202 Mobile Network Prefix (MNP) 203 a longer IPv6 prefix taken from an MSP (e.g., 204 2001:db8:1000:2000::/56) and assigned to a MN. MNs sub-delegate 205 the MNP to devices located in EUNs. 207 Access Network (ANET) 208 a data link service network (e.g., an aviation radio access 209 network, satellite service provider network, cellular operator 210 network, wifi network, etc.) that connects MNs. Physical and/or 211 data link level security between the MN and ANET are assumed. 213 Access Router (AR) 214 a first-hop router in the ANET for connecting MNs to 215 correspondents in outside Internetworks. 217 ANET interface 218 a MN's attachment to a link in an ANET. 220 Internetwork (INET) 221 a connected network region with a coherent IP addressing plan that 222 provides transit forwarding services for ANET MNs and INET 223 correspondents. Examples include private enterprise networks, 224 ground domain aviation service networks and the global public 225 Internet itself. 227 INET interface 228 a node's attachment to a link in an INET. 230 OMNI link 231 a Non-Broadcast, Multiple Access (NBMA) virtual overlay configured 232 over one or more INETs and their connected ANETs. An OMNI link 233 can comprise multiple INET segments joined by bridges the same as 234 for any link; the addressing plans in each segment may be mutually 235 exclusive and managed by different administrative entities. 237 OMNI interface 238 a node's attachment to an OMNI link, and configured over one or 239 more underlying ANET/INET interfaces. 241 OMNI Link-Local Address (LLA) 242 a link local IPv6 address per [RFC4291] constructed as specified 243 in Section 7. 245 OMNI Unique-Local Address (ULA) 246 a unique local IPv6 address per [RFC4193] constructed as specified 247 in Section 8. OMNI ULAs are statelessly derived from OMNI LLAs, 248 and vice-versa. 250 OMNI Option 251 an IPv6 Neighbor Discovery option providing multilink parameters 252 for the OMNI interface as specified in Section 9. 254 Multilink 255 an OMNI interface's manner of managing diverse underlying data 256 link interfaces as a single logical unit. The OMNI interface 257 provides a single unified interface to upper layers, while 258 underlying data link selections are performed on a per-packet 259 basis considering factors such as DSCP, flow label, application 260 policy, signal quality, cost, etc. Multilinking decisions are 261 coordinated in both the outbound (i.e. MN to correspondent) and 262 inbound (i.e., correspondent to MN) directions. 264 L2 265 The second layer in the OSI network model. Also known as "layer- 266 2", "link-layer", "sub-IP layer", "data link layer", etc. 268 L3 269 The third layer in the OSI network model. Also known as "layer- 270 3", "network-layer", "IPv6 layer", etc. 272 underlying interface 273 an ANET/INET interface over which an OMNI interface is configured. 274 The OMNI interface is seen as a L3 interface by the IP layer, and 275 each underlying interface is seen as a L2 interface by the OMNI 276 interface. 278 Mobility Service Identification (MSID) 279 Each MSE and AR is assigned a unique 32-bit Identification (MSID) 280 as specified in Section 7. 282 Safety-Based Multilink (SBM) 283 A means for ensuring fault tolerance through redundancy by 284 connecting multiple independent OMNI interfaces to independent 285 routing topologies (i.e., multiple independent OMNI links). 287 Performance Based Multilink (PBM) 288 A means for selecting underlying interface(s) for packet 289 trasnmission and reception within a single OMNI interface. 291 3. Requirements 293 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 294 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 295 "OPTIONAL" in this document are to be interpreted as described in BCP 296 14 [RFC2119][RFC8174] when, and only when, they appear in all 297 capitals, as shown here. 299 An implementation is not required to internally use the architectural 300 constructs described here so long as its external behavior is 301 consistent with that described in this document. 303 4. Overlay Multilink Network (OMNI) Interface Model 305 An OMNI interface is a MN virtual interface configured over one or 306 more underlying interfaces, which may be physical (e.g., an 307 aeronautical radio link) or virtual (e.g., an Internet or higher- 308 layer "tunnel"). The MN receives a MNP from the MS, and coordinates 309 with the MS through IPv6 ND message exchanges. The MN uses the MNP 310 to construct a unique OMNI LLA through the algorithmic derivation 311 specified in Section 7 and assigns the LLA to the OMNI interface. 313 The OMNI interface architectural layering model is the same as in 314 [RFC5558][RFC7847], and augmented as shown in Figure 1. The IP layer 315 therefore sees the OMNI interface as a single L3 interface with 316 multiple underlying interfaces that appear as L2 communication 317 channels in the architecture. 319 +----------------------------+ 320 | Upper Layer Protocol | 321 Session-to-IP +---->| | 322 Address Binding | +----------------------------+ 323 +---->| IP (L3) | 324 IP Address +---->| | 325 Binding | +----------------------------+ 326 +---->| OMNI Interface | 327 Logical-to- +---->| (OMNI LLA) | 328 Physical | +----------------------------+ 329 Interface +---->| L2 | L2 | | L2 | 330 Binding |(IF#1)|(IF#2)| ..... |(IF#n)| 331 +------+------+ +------+ 332 | L1 | L1 | | L1 | 333 | | | | | 334 +------+------+ +------+ 336 Figure 1: OMNI Interface Architectural Layering Model 338 The OMNI virtual interface model gives rise to a number of 339 opportunities: 341 o since OMNI LLAs are uniquely derived from an MNP, no Duplicate 342 Address Detection (DAD) or Muticast Listener Discovery (MLD) 343 messaging is necessary. 345 o ANET interfaces do not require any L3 addresses (i.e., not even 346 link-local) in environments where communications are coordinated 347 entirely over the OMNI interface. (An alternative would be to 348 also assign the same OMNI LLA to all ANET interfaces.) 350 o as ANET interface properties change (e.g., link quality, cost, 351 availability, etc.), any active ANET interface can be used to 352 update the profiles of multiple additional ANET interfaces in a 353 single message. This allows for timely adaptation and service 354 continuity under dynamically changing conditions. 356 o coordinating ANET interfaces in this way allows them to be 357 represented in a unified MS profile with provisions for mobility 358 and multilink operations. 360 o exposing a single virtual interface abstraction to the IPv6 layer 361 allows for multilink operation (including QoS based link 362 selection, packet replication, load balancing, etc.) at L2 while 363 still permitting L3 traffic shaping based on, e.g., DSCP, flow 364 label, etc. 366 o L3 sees the OMNI interface as a point of connection to the OMNI 367 link; if there are multiple OMNI links (i.e., multiple MS's), L3 368 will see multiple OMNI interfaces. 370 o Multiple independent OMNI interfaces can be used for increased 371 fault tolerance through Safety-Based Multilink (SBM), with 372 Performance-Based Multilink (PBM) applied within each interface. 374 Other opportunities are discussed in [RFC7847]. 376 Figure 2 depicts the architectural model for a MN connecting to the 377 MS via multiple independent ANETs. When an underlying interface 378 becomes active, the MN's OMNI interface sends native (i.e., 379 unencapsulated) IPv6 ND messages via the underlying interface. IPv6 380 ND messages traverse the ground domain ANETs until they reach an 381 Access Router (AR#1, AR#2, .., AR#n). The AR then coordinates with a 382 Mobility Service Endpoint (MSE#1, MSE#2, ..., MSE#m) in the INET and 383 returns an IPv6 ND message response to the MN. IPv6 ND messages 384 traverse the ANET at layer 2; hence, the Hop Limit is not 385 decremented. 387 +--------------+ 388 | MN | 389 +--------------+ 390 |OMNI interface| 391 +----+----+----+ 392 +--------|IF#1|IF#2|IF#n|------ + 393 / +----+----+----+ \ 394 / | \ 395 / <---- Native | IP ----> \ 396 v v v 397 (:::)-. (:::)-. (:::)-. 398 .-(::ANET:::) .-(::ANET:::) .-(::ANET:::) 399 `-(::::)-' `-(::::)-' `-(::::)-' 400 +----+ +----+ +----+ 401 ... |AR#1| .......... |AR#2| ......... |AR#n| ... 402 . +-|--+ +-|--+ +-|--+ . 403 . | | | 404 . v v v . 405 . <----- Encapsulation -----> . 406 . . 407 . +-----+ (:::)-. . 408 . |MSE#2| .-(::::::::) +-----+ . 409 . +-----+ .-(::: INET :::)-. |MSE#m| . 410 . (::::: Routing ::::) +-----+ . 411 . `-(::: System :::)-' . 412 . +-----+ `-(:::::::-' . 413 . |MSE#1| +-----+ +-----+ . 414 . +-----+ |MSE#3| |MSE#4| . 415 . +-----+ +-----+ . 416 . . 417 . . 418 . <----- Worldwide Connected Internetwork ----> . 419 ........................................................... 421 Figure 2: MN/MS Coordination via Multiple ANETs 423 After the initial IPv6 ND message exchange, the MN can send and 424 receive unencapsulated IPv6 data packets over the OMNI interface. 425 OMNI interface multilink services will forward the packets via ARs in 426 the correct underlying ANETs. The AR encapsulates the packets 427 according to the capabilities provided by the MS and forwards them to 428 the next hop within the worldwide connected Internetwork via optimal 429 routes. 431 OMNI links span one or more underlying Internetwork via a mid-layer 432 overlay encapsulation based on [RFC2473] and using [RFC4193] 433 addressing. Each OMNI link corresponds to a different overlay 434 (differentiated by an address codepoint) which may be carried over a 435 completely separate underlying topology. Each MN can facilitate SBM 436 by connecting to multiple OMNI links using a distinct OMNI interface 437 for each link. 439 5. Maximum Transmission Unit (MTU) and Fragmentation 441 The OMNI interface observes the link nature of tunnels, including the 442 Maximum Transmission Unit (MTU) and the role of fragmentation and 443 reassembly[I-D.ietf-intarea-tunnels]. The OMNI interface is 444 configured over one or more underlying interfaces that may have 445 diverse MTUs. 447 IPv6 underlying interfaces are REQUIRED to configure a minimum MTU of 448 1280 bytes [RFC8200]. The network therefore MUST forward packets of 449 at least 1280 bytes without generating an IPv6 Path MTU Discovery 450 (PMTUD) Packet Too Big (PTB) message [RFC8201]. The minimum MTU for 451 IPv4 underlying interfaces is only 68 bytes [RFC1122], meaning that a 452 packet smaller than the IPv6 minimum MTU may require fragmentation 453 when IPv4 encapsulation is used. Therefore, the Don't Fragment (DF) 454 bit in the IPv4 encapsulation header MUST be set to 0 456 The OMNI interface configures an MTU of 9180 bytes [RFC2492]; the 457 size is therefore not a reflection of the underlying interface MTUs, 458 but rather determines the largest packet the OMNI interface can 459 forward or reassemble. The OMNI interface therefore accommodates 460 packets as large as the OMNI interface MTU while generating IPv6 Path 461 MTU Discovery (PMTUD) Packet Too Big (PTB) messages [RFC8201] as 462 necessary (see below). For IPv4 packets with DF=0, the IP layer 463 performs IPv4 fragmentation if necessary to admit the fragments into 464 the OMNI interface. The interface may then internally apply further 465 IPv4 fragmentation prior to encapsulation to ensure that the IPv4 466 fragments are delivered to the final destination. 468 OMNI interfaces internally employ OMNI link encapsulation and 469 fragmentation/reassembly per [RFC2473]. The encapsulation inserts a 470 mid-layer IPv6 header between the inner IP packet and any outer IP 471 encapsulation headers. The OMNI interface returns internally- 472 generated PTB messages for packets admitted into the interface that 473 it deems too large (e.g., according to link performance 474 characteristics, reassembly cost, etc.) while either dropping or 475 forwarding the packet as necessary. The OMNI interface performs 476 PMTUD even if the destination appears to be on the same link since an 477 OMNI link node on the path may return a PTB. This ensures that the 478 path MTU is adaptive and reflects the current path used for a given 479 data flow. 481 OMNI interfaces perform encapsulation and fragmentation/reassembly as 482 follows: 484 o When an OMNI interface sends a packet toward a final destination 485 via an ANET peer, it sends without OMNI link encapsulation if the 486 packet is no larger than the underlying interface MTU. Otherwise, 487 it inserts an IPv6 header with source address set to the node's 488 own OMNI Unique Local Address (ULA) (see: Section 8) and 489 destination set to the OMNI ULA of the ANET peer. The OMNI 490 interface then uses IPv6 fragmentation to break the packet into a 491 minimum number of non-overlapping fragments, where the largest 492 fragment size is determined by the underlying interface MTU and 493 the smallest fragment is no smaller than 640 bytes. The OMNI 494 interface then sends the fragments to the ANET peer, which 495 reassembles before forwarding toward the final destination. 497 o When an OMNI interface sends a packet toward a final destination 498 via an INET interface, it sends packets no larger than 1280 bytes 499 (including any INET encapsulation headers) without inserting a 500 mid-layer IPv6 header if the destination is reached via an INET 501 address within the same OMNI link segment. Otherwise, it inserts 502 an IPv6 header with source address set to the node's OMNI ULA, 503 destination set to the ULA of the next hop OMNI node toward the 504 final destination and (if necessary) with a Segment Routing Header 505 with the remaining Segment IDs on the path to the final 506 destination. The OMNI interface then uses IPv6 fragmentation to 507 break the encapsulated packet into a minimum number of non- 508 overlapping fragments, where the largest fragment size (including 509 both the OMNI mid-layer IPv6 and outer-layer INET encapsulations) 510 is 1280 bytes and the smallest fragment is no smaller than 640 511 bytes. The OMNI interface then encapsulates the fragments in any 512 INET headers and sends them to the OMNI link neighbor, which 513 reassembles before forwarding toward the final destination. 515 OMNI interfaces unconditionally drop all OMNI link fragments smaller 516 than 640 bytes. In order to set the correct context for reassembly, 517 the OMNI interface that inserts the IPv6 header MUST also be the one 518 that inserts the IPv6 Fragment Header Identification value. While 519 not strictly required, sending all fragments of the same fragmented 520 mid-layer packet consecutively over the same underlying interface 521 with minimal inter-fragment delay may increase the likelihood of 522 successful reassembly. 524 Note that the OMNI interface can forward large packets via 525 encapsulation and fragmentation while at the same time returning 526 "advisory" PTB messages (subject to rate limiting). The receiving 527 node that performs reassembly can also send advisory PTB messages if 528 reassembly conditions become unfavorable. The OMNI interface can 529 therefore continuously forward large packets without loss while 530 returning advisory PTB messages recommending a smaller size. 532 OMNI interfaces that send advisory PTB messages set the ICMPv6 533 message header Code field to the value 1. Receiving nodes that 534 recognize the code reduce their estimate of the path MTU the same as 535 for ordinary "diagnistic" PTBs but do not regard the message as a 536 loss indication. Nodes that do not recognize the code treat the 537 message the same as a diagnostic PTB, but should heed the advice in 538 [RFC8201] regarding retransmissions. This document therefore updates 539 [RFC4443] and [RFC8201]. 541 5.1. Fragmentation Security Implications 543 As discussed in Section 3.7 of [I-D.ietf-intarea-frag-fragile], there 544 are four basic threats concerning IPv6 fragmentation; each of which 545 is addressed by a suitable mitigation as follows: 547 1. Overlapping fragment attacks - reassembly of overlapping 548 fragments is forbidden by [RFC8200]; therefore, this threat does 549 not apply to OMNI interfaces. 551 2. Resource exhaustion attacks - this threat is mitigated by 552 providing a sufficiently large OMNI interface reassembly cache 553 and instituting "fast discard" of incomplete reassemblies that 554 may be part of a buffer exhaustion attack. The reassembly cache 555 should be sufficiently large so that a sustained attack does not 556 cause excessive loss of good reassemblies but not so large that 557 (timer-based) data structure management becomes computationally 558 expensive. 560 3. Attacks based on predictable fragment identification values - 561 this threat is mitigated by selecting a suitably random ID value 562 per [RFC7739]. 564 4. Evasion of Network Intrusion Detection Systems (NIDS) - this 565 threat is mitigated by disallowing "tiny fragments" per the OMNI 566 interface fragmentation procedures specified above. 568 Additionally, IPv4 fragmentation includes a 16-bit Identification (IP 569 ID) field with only 65535 unique values, meaning that for even 570 moderately high data rates the field could wrap and apply to new 571 packets while the fragments of old packets using the same ID are 572 still alive in the network [RFC4963]. Since IPv6 provides a 32-bit 573 Identification value, however, this is not a concern for IPv6 574 fragmentation. 576 6. Frame Format 578 The OMNI interface transmits IPv6 packets according to the native 579 frame format of each underlying interface. For example, for 580 Ethernet-compatible interfaces the frame format is specified in 581 [RFC2464], for aeronautical radio interfaces the frame format is 582 specified in standards such as ICAO Doc 9776 (VDL Mode 2 Technical 583 Manual), for tunnels over IPv6 the frame format is specified in 584 [RFC2473], etc. 586 7. Link-Local Addresses (LLAs) 588 OMNI interfaces construct IPv6 Link-Local Addresses (i.e., "OMNI 589 LLAs") as follows: 591 o IPv6 MN OMNI LLAs encode the most-significant 112 bits of a MNP 592 within the least-significant 112 bits of the IPv6 link-local 593 prefix fe80::/16. For example, for the MNP 594 2001:db8:1000:2000::/56 the corresponding LLA is 595 fe80:2001:db8:1000:2000::. This updates the IPv6 link-local 596 address format specified in Section 2.5.6 of [RFC4291] by defining 597 a use for bits 11 - 63. 599 o IPv4-compatible MN OMNI LLAs are constructed as 600 fe80::ffff:[v4addr], i.e., the most significant 16 bits of the 601 prefix fe80::/16, followed by 64 '0' bits, followed by 16 '1' 602 bits, followed by a 32bit IPv4 address. For example, the 603 IPv4-Compatible MN OMNI LLA for 192.0.2.1 is fe80::ffff:192.0.2.1 604 (also written as fe80::ffff:c000:0201). 606 o MS OMNI LLAs are assigned to ARs and MSEs from the range 607 fe80::/96, and MUST be managed for uniqueness. The lower 32 bits 608 of the LLA includes a unique integer "MSID" value between 609 0x00000001 and 0xfeffffff, e.g., as in fe80::1, fe80::2, fe80::3, 610 etc., fe80::feff:ffff. The MSID 0x00000000 corresponds to the 611 link-local Subnet-Router anycast address (fe80::) [RFC4291]. The 612 MSID range 0xff000000 through 0xffffffff is reserved for future 613 use. 615 o The OMNI LLA range fe80::/32 is used as the service prefix for the 616 address format specified in Section 4 of [RFC4380] (see Section 17 617 for further discussion). 619 Since the prefix 0000::/8 is "Reserved by the IETF" [RFC4291], no 620 MNPs can be allocated from that block ensuring that there is no 621 possibility for overlap between the above OMNI LLA constructs. 623 Since MN OMNI LLAs are based on the distribution of administratively 624 assured unique MNPs, and since MS OMNI LLAs are guaranteed unique 625 through administrative assignment, OMNI interfaces set the 626 autoconfiguration variable DupAddrDetectTransmits to 0 [RFC4862]. 628 8. Unique-Local Addresses (ULAs) 630 OMNI links use IPv6 Unique Local Addresses (i.e., "OMNI ULAs") 631 [RFC4193] as the source and destination addresses in OMNI link IPv6 632 encapsulation headers. This document updates [RFC4193] by reserving 633 the ULA prefix fc80::/10 for mapping OMNI LLAs to routable OMNI ULAs. 635 Each OMNI link instance is identified by bits 10-15 of the OMNI 636 service prefix fc80::/10. For example, OMNI ULAs associated with 637 instance 0 are configured from the prefix fc80::/16, instance 1 from 638 fc81::/16, etc., up to instance 63 from fcbf::/16. OMNI ULAs are 639 configured in one-to-one correspondence with OMNI LLAs through 640 stateless prefix translation. For example, for OMNI link instance 641 fc80::/16: 643 o the OMNI ULA corresponding to fe80:2001:db8:1:2:: is simply 644 fc80:2001:db8:1:2:: 646 o the OMNI ULA corresponding to fe80::ffff:192.0.2.1 is simply 647 fc80::ffff:192.0.2.1 649 o the OMNI ULA corresponding to fe80::1000 is simply fc80::1000 651 o the OMNI ULA corresponding to fe80:: is simply fc80:: 653 Each OMNI interface assigns the Anycast OMNI ULA specific to the OMNI 654 link instance, e.g., the OMNI interface connected to instance 3 655 assigns the Anycast OMNI ULA fc83:. Routers that configure OMNI 656 interfaces advertise the OMNI service prefix (e.g., fc83::/16) into 657 the local routing system so that applications can direct traffic 658 according to SBM requirements. 660 The OMNI ULA presents an IPv6 address format that is routable within 661 the OMNI link routing system and can be used to convey link-scoped 662 messages across multiple hops using IPv6 encapsulation [RFC2473]. 663 The OMNI link extends across one or more underling Internetworks to 664 include all ARs and MSEs. All MNs are also considered to be 665 connected to the OMNI link, however OMNI link encapsulation is 666 omitted over ANET links when possible to conserve bandwidth (see: 667 Section 11). 669 The OMNI link can be subdivided into "segments" that often correspond 670 to different administrative domains or physical partitions. OMNI 671 nodes can use IPv6 Segment Routing [RFC8402] when necessary to 672 support efficient packet forwarding to destinations located in other 673 OMNI link segments. A full discussion of Segment Routing over the 674 OMNI link appears in [I-D.templin-intarea-6706bis]. 676 9. Address Mapping - Unicast 678 OMNI interfaces maintain a neighbor cache for tracking per-neighbor 679 state and use the link-local address format specified in Section 7. 680 IPv6 Neighbor Discovery (ND) [RFC4861] messages on MN OMNI interfaces 681 observe the native Source/Target Link-Layer Address Option (S/TLLAO) 682 formats of the underlying interfaces (e.g., for Ethernet the S/TLLAO 683 is specified in [RFC2464]). 685 MNs such as aircraft typically have many wireless data link types 686 (e.g. satellite-based, cellular, terrestrial, air-to-air directional, 687 etc.) with diverse performance, cost and availability properties. 688 The OMNI interface would therefore appear to have multiple L2 689 connections, and may include information for multiple underlying 690 interfaces in a single IPv6 ND message exchange. 692 OMNI interfaces use an IPv6 ND option called the "OMNI option" 693 formatted as shown in Figure 3: 695 0 1 2 3 696 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 697 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 698 | Type | Length | Prefix Length |R| Reserved | 699 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 700 | | 701 ~ Sub-Options ~ 702 | | 703 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 705 Figure 3: OMNI Option Format 707 In this format: 709 o Type is set to TBD. 711 o Length is set to the number of 8 octet blocks in the option. 713 o Prefix Length is set according to the IPv6 source address type. 714 For MN OMNI LLAs, the value is set to the length of the embedded 715 MNP. For IPv4-compatible MN OMNI LLAs, the value is set to 96 716 plus the length of the embedded IPv4 prefix. For MS OMNI LLAs, 717 the value is set to 128. 719 o R (the "Register/Release" bit) is set to 1/0 to request the 720 message recipient to register/release a MN's MNP. The OMNI option 721 may additionally include MSIDs for the recipient to contact to 722 also register/release the MNP. 724 o Reserved is set to the value '0' on transmission and ignored on 725 reception. 727 o Sub-Options is a Variable-length field, of length such that the 728 complete OMNI Option is an integer multiple of 8 octets long. 729 Contains one or more options, as described in Section 9.1. 731 9.1. Sub-Options 733 The OMNI option includes zero or more Sub-Options, some of which may 734 appear multiple times in the same message. Each consecutive Sub- 735 Option is concatenated immediately after its predecessor. All Sub- 736 Options except Pad1 (see below) are type-length-value (TLV) encoded 737 in the following format: 739 0 1 2 740 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 741 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 742 | Sub-Type | Sub-length | Sub-Option Data ... 743 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 745 Figure 4: Sub-Option Format 747 o Sub-Type is a 1-byte field that encodes the Sub-Option type. Sub- 748 Options defined in this document are: 750 Option Name Sub-Type 751 Pad1 0 752 PadN 1 753 ifIndex-tuple (Type 1) 2 754 ifIndex-tuple (Type 2) 3 755 MS-Register 4 756 MS-Release 5 757 Network Access Identifier 6 758 Geo Coordinates 7 760 Figure 5 762 Sub-Types 253 and 254 are reserved for experimentation, as 763 recommended in [RFC3692]. 765 o Sub-Length is a 1-byte field that encodes the length of the Sub- 766 Option Data, in bytes 768 o Sub-Option Data is a byte string with format determined by Sub- 769 Type 771 During processing, unrecognized Sub-Options are ignored and the next 772 Sub-Option processed until the end of the OMNI option. 774 The following Sub-Option types and formats are defined in this 775 document: 777 9.1.1. Pad1 779 0 780 0 1 2 3 4 5 6 7 781 +-+-+-+-+-+-+-+-+ 782 | Sub-Type=0 | 783 +-+-+-+-+-+-+-+-+ 785 Figure 6: Pad1 787 o Sub-Type is set to 0. 789 o No Sub-Length or Sub-Option Data follows (i.e., the "Sub-Option" 790 consists of a single zero octet). 792 9.1.2. PadN 794 0 1 2 795 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 796 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 797 | Sub-Type=1 |Sub-length=N-2 | N-2 padding bytes ... 798 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 800 Figure 7: PadN 802 o Sub-Type is set to 1. 804 o Sub-Length is set to N-2 being the number of padding bytes that 805 follow. 807 o Sub-Option Data consists of N-2 zero-valued octets. 809 9.1.3. ifIndex-tuple (Type 1) 810 0 1 2 3 811 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 812 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 813 | Sub-Type=2 | Sub-length=4+N| ifIndex | ifType | 814 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 815 | Provider ID | Link |S|I|RSV| Bitmap(0)=0xff|P00|P01|P02|P03| 816 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 817 |P04|P05|P06|P07|P08|P09|P10|P11|P12|P13|P14|P15|P16|P17|P18|P19| 818 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 819 |P20|P21|P22|P23|P24|P25|P26|P27|P28|P29|P30|P31| Bitmap(1)=0xff| 820 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 821 |P32|P33|P34|P35|P36|P37|P38|P39| ... 822 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 824 Figure 8: ifIndex-tuple (Type 1) 826 o Sub-Type is set to 2. 828 o Sub-Length is set to 4+N (the number of Sub-Option Data bytes that 829 follow). 831 o Sub-Option Data contains an "ifIndex-tuple" (Type 1) encoded as 832 follows (note that the first four bytes must be present): 834 * ifIndex is set to an 8-bit integer value corresponding to a 835 specific underlying interface. OMNI options MAY include 836 multiple ifIndex-tuples, and MUST number each with an ifIndex 837 value between '1' and '255' that represents a MN-specific 8-bit 838 mapping for the actual ifIndex value assigned to the underlying 839 interface by network management [RFC2863] (the ifIndex value 840 '0' is reserved for use by the MS). Multiple ifIndex-tuples 841 with the same ifIndex value MAY appear in the same OMNI option. 843 * ifType is set to an 8-bit integer value corresponding to the 844 underlying interface identified by ifIndex. The value 845 represents an OMNI interface-specific 8-bit mapping for the 846 actual IANA ifType value registered in the 'IANAifType-MIB' 847 registry [http://www.iana.org]. 849 * Provider ID is set to an OMNI interface-specific 8-bit ID value 850 for the network service provider associated with this ifIndex. 852 * Link encodes a 4-bit link metric. The value '0' means the link 853 is DOWN, and the remaining values mean the link is UP with 854 metric ranging from '1' ("lowest") to '15' ("highest"). 856 * S is set to '1' if this ifIndex-tuple corresponds to the 857 underlying interface that is the source of the ND message. Set 858 to '0' otherwise. 860 * I is set to '0' ("Simplex") if the index for each singleton 861 Bitmap byte in the Sub-Option Data is inferred from its 862 sequential position (i.e., 0, 1, 2, ...), or set to '1' 863 ("Indexed") if each Bitmap is preceded by an Index byte. 864 Figure 8 shows the simplex case for I set to '0'. For I set to 865 '1', each Bitmap is instead preceded by an Index byte that 866 encodes a value "i" = (0 - 255) as the index for its companion 867 Bitmap as follows: 869 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 870 | Index=i | Bitmap(i) |P[*] values ... 871 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 873 Figure 9 875 * RSV is set to the value 0 on transmission and ignored on 876 reception. 878 * The remainder of the Sub-Option Data contains N = (0 - 251) 879 bytes of traffic classifier preferences consisting of a first 880 (indexed) Bitmap (i.e., "Bitmap(i)") followed by 0-8 1-byte 881 blocks of 2-bit P[*] values, followed by a second Bitmap (i), 882 followed by 0-8 blocks of P[*] values, etc. Reading from bit 0 883 to bit 7, the bits of each Bitmap(i) that are set to '1'' 884 indicate the P[*] blocks from the range P[(i*32)] through 885 P[(i*32) + 31] that follow; if any Bitmap(i) bits are '0', then 886 the corresponding P[*] block is instead omitted. For example, 887 if Bitmap(0) contains 0xff then the block with P[00]-P[03], 888 followed by the block with P[04]-P[07], etc., and ending with 889 the block with P[28]-P[31] are included (as shown in Figure 8). 890 The next Bitmap(i) is then consulted with its bits indicating 891 which P[*] blocks follow, etc. out to the end of the Sub- 892 Option. The first 16 P[*] blocks correspond to the 64 893 Differentiated Service Code Point (DSCP) values P[00] - P[63] 894 [RFC2474]. Any additional P[*] blocks that follow correspond 895 to "pseudo-DSCP" traffic classifier values P[64], P[65], P[66], 896 etc. See Appendix A for further discussion and examples. 898 * Each 2-bit P[*] field is set to the value '0' ("disabled"), '1' 899 ("low"), '2' ("medium") or '3' ("high") to indicate a QoS 900 preference level for underlying interface selection purposes. 901 Not all P[*] values need to be included in all OMNI option 902 instances of a given ifIndex-tuple. Any P[*] values 903 represented in an earlier OMNI option but omitted in the 904 current OMNI option remain unchanged. Any P[*] values not yet 905 represented in any OMNI option default to "medium". 907 9.1.4. ifIndex-tuple (Type 2) 909 0 1 2 3 910 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 911 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 912 | Sub-Type=3 | Sub-length=4+N| ifIndex | ifType | 913 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 914 | Provider ID | Link |S|Resvd| ~ 915 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ 916 ~ ~ 917 ~ RFC 6088 Format Traffic Selector ~ 918 ~ ~ 919 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 921 Figure 10: ifIndex-tuple (Type 2) 923 o Sub-Type is set to 3. 925 o Sub-Length is set to 4+N (the number of Sub-Option Data bytes that 926 follow). 928 o Sub-Option Data contains an "ifIndex-tuple" (Type 2) encoded as 929 follows (note that the first four bytes must be present): 931 * ifIndex, ifType, Provider ID, Link and S are set exactly as for 932 Type 1 ifIndex-tuples as specified in Section 9.1.3. 934 * the remainder of the Sub-Option body encodes a variable-length 935 traffic selector formatted per [RFC6088], beginning with the 936 "TS Format" field. 938 9.1.5. MS-Register 940 0 1 2 3 941 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 942 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 943 | Sub-Type=4 | Sub-length=4 | MSID (bits 0 - 15) | 944 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 945 | MSID (bits 16 - 32) | 946 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 948 Figure 11: MS-Register Sub-option 950 o Sub-Type is set to 4. 952 o Sub-Length is set to 4. 954 o MSID contains the 32 bit ID of an MSE or AR, in network byte 955 order. OMNI options contain zero or more MS-Register sub-options. 957 9.1.6. MS-Release 959 0 1 2 3 960 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 961 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 962 | Sub-Type=5 | Sub-length=4 | MSID (bits 0 - 15) | 963 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 964 | MSID (bits 16 - 32) | 965 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 967 Figure 12: MS-Release Sub-option 969 o Sub-Type is set to 5. 971 o Sub-Length is set to 4. 973 o MSIID contains the 32 bit ID of an MS or AR, in network byte 974 order. OMNI options contain zero or more MS-Release sub-options. 976 9.1.7. Network Access Identifier (NAI) 978 0 1 2 3 979 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 980 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 981 | Sub-Type=6 | Sub-length=N |Network Access Identifier (NAI) 982 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... 984 Figure 13: Network Access Identifier (NAI) Sub-option 986 o Sub-Type is set to 6. 988 o Sub-Length is set to N. 990 o Network Access Identifier (NAI) is coded per [RFC7542], and is up 991 to 253 bytes in length. 993 9.1.8. Geo Coordiantes 994 0 1 2 3 995 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 996 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 997 | Sub-Type=7 | Sub-length=N | Geo Coordinates 998 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... 1000 Figure 14: Geo Coordinates Sub-option 1002 o Sub-Type is set to 7. 1004 o Sub-Length is set to N. 1006 o A set of Geo Coordinates up to 253 bytes in length (format TBD). 1007 Includes Latitude/Longitude at a minimum; may also include 1008 additional attributes such as altitude, heading, speed, etc.). 1010 10. Address Mapping - Multicast 1012 The multicast address mapping of the native underlying interface 1013 applies. The mobile router on board the MN also serves as an IGMP/ 1014 MLD Proxy for its EUNs and/or hosted applications per [RFC4605] while 1015 using the L2 address of the AR as the L2 address for all multicast 1016 packets. 1018 The MN uses Multicast Listener Discovery (MLDv2) [RFC3810] to 1019 coordinate with the AR, and ANET L2 elements use MLD snooping 1020 [RFC4541]. 1022 11. Conceptual Sending Algorithm 1024 The MN's IPv6 layer selects the outbound OMNI interface according to 1025 SBM considerations when forwarding data packets from local or EUN 1026 applications to external correspondents. Each OMNI interface 1027 maintains a neighbor cache the same as for any IPv6 interface, but 1028 with additional state for multilink coordination. 1030 After a packet enters the OMNI interface, an outbound underlying 1031 interface is selected based on PBM traffic selectors such as DSCP, 1032 application port number, cost, performance, message size, etc. OMNI 1033 interface multilink selections could also be configured to perform 1034 replication across multiple underlying interfaces for increased 1035 reliability at the expense of packet duplication. 1037 When an OMNI interface sends a packet over a selected outbound 1038 underlying interface, it omits OMNI link encapsulation if the packet 1039 does not require fragmentation and the neighbor can determine the 1040 OMNI ULAs through other means (e.g., the packet's destination, 1041 neighbor cache information, etc.). Otherwise, the OMNI interface 1042 inserts an IPv6 header with the OMNI ULAs and performs fragmentation 1043 if necessary. The OMNI interface also performs enacpsulation when 1044 the nearest AR is located multiple hops away as discussed in 1045 Section 12.1. 1047 OMNI interface multilink service designers MUST observe the BCP 1048 guidance in Section 15 [RFC3819] in terms of implications for 1049 reordering when packets from the same flow may be spread across 1050 multiple underlying interfaces having diverse properties. 1052 11.1. Multiple OMNI Interfaces 1054 MNs may connect to multiple independent OMNI links concurrently in 1055 support of SBM. Each OMNI interface is distinguished by its Anycast 1056 OMNI ULA (e.g., fc80::, fc81::, fc82::). The MN configures a 1057 separate OMNI interface for each link so that multiple interfaces 1058 (e.g., omni0, omni1, omni2, etc.) are exposed to the IPv6 layer. A 1059 different Anycast OMNI ULA is assigned to each interface, and the MN 1060 injects the service prefixes for the OMNI link instances into the EUN 1061 routing system. 1063 Applications in EUNs can use Segment Routing to select the desired 1064 OMNI interface based on SBM considerations. The Anycast OMNI ULA is 1065 written into the IPv6 destination address, and the actual destination 1066 (along with any additional intermediate hops) is written into the 1067 Segment Routing Header. Standard IP routing directs the packets to 1068 the MN's mobile router entity, and the Anycast OMNI ULA identifies 1069 the OMNI interface to be used for transmission to the next hop. When 1070 the MN receives the message, it replaces the IPv6 destination address 1071 with the next hop found in the routing header and transmits the 1072 message over the OMNI interface identified by the Anycast OMNI ULA. 1074 Multiple distinct OMNI links can therefore be used to support fault 1075 tolerance, load balancing, reliability, etc. The architectural model 1076 is similar to Layer 2 Virtual Local Area Networks (VLANs). 1078 12. Router Discovery and Prefix Registration 1080 MNs interface with the MS by sending RS messages with OMNI options 1081 under the assumption that a single AR on the ANET will process the 1082 message and respond. This places a requirement on each ANET, which 1083 may be enforced by physical/logical partitioning, L2 AR beaconing, 1084 etc. The manner in which the ANET ensures single AR coordination is 1085 link-specific and outside the scope of this document (however, 1086 considerations for ANETs that do not provide ARs that recognize the 1087 OMNI option are discussed in Section 17). 1089 For each underlying interface, the MN sends an RS message with an 1090 OMNI option with prefix registration information, ifIndex-tuples, MS- 1091 Register/Release suboptions containing MSIDs, and with destination 1092 address set to link-scoped All-Routers multicast (ff02::2) [RFC4291]. 1093 Example MSID discovery methods are given in [RFC5214], including data 1094 link login parameters, name service lookups, static configuration, 1095 etc. Alternatively, MNs can discover individual MSIDs by sending an 1096 initial RS with MS-Register MSID set to 0x00000000. 1098 MNs configure OMNI interfaces that observe the properties discussed 1099 in the previous section. The OMNI interface and its underlying 1100 interfaces are said to be in either the "UP" or "DOWN" state 1101 according to administrative actions in conjunction with the interface 1102 connectivity status. An OMNI interface transitions to UP or DOWN 1103 through administrative action and/or through state transitions of the 1104 underlying interfaces. When a first underlying interface transitions 1105 to UP, the OMNI interface also transitions to UP. When all 1106 underlying interfaces transition to DOWN, the OMNI interface also 1107 transitions to DOWN. 1109 When an OMNI interface transitions to UP, the MN sends RS messages to 1110 register its MNP and an initial set of underlying interfaces that are 1111 also UP. The MN sends additional RS messages to refresh lifetimes 1112 and to register/deregister underlying interfaces as they transition 1113 to UP or DOWN. The MN sends initial RS messages over an UP 1114 underlying interface with its OMNI LLA as the source and with 1115 destination set to All-Routers multicast. The RS messages include an 1116 OMNI option per Section 9 with valid prefix registration information, 1117 ifIndex-tuples appropriate for underlying interfaces and MS-Register/ 1118 Release sub-options. 1120 ARs process IPv6 ND messages with OMNI options and act as an MSE 1121 themselves and/or as a proxy for other MSEs. ARs receive RS messages 1122 and create a neighbor cache entry for the MN, then coordinate with 1123 any named MSEs in a manner outside the scope of this document. The 1124 AR returns RA messages with destination address set to the MN OMNI 1125 LLA (i.e., unicast), with source address set to its own OMNI LLA, 1126 with an OMNI option with valid prefix registration information, 1127 ifIndex-tuples, MS-Register/Release sub-options and with any 1128 information for the link that would normally be delivered in a 1129 solicited RA message. The AR sets the RA Cur Hop Limit, M and O 1130 flags, Router Lifetime, Reachable Time and Retrans Timer values, and 1131 includes any necessary options such as: 1133 o PIOs with (A; L=0) that include MSPs for the link [RFC8028]. 1135 o RIOs [RFC4191] with more-specific routes. 1137 o an MTU option that specifies the maximum acceptable packet size 1138 for this ANET interface. 1140 The AR coordinates with each Register/Release MSE then sends unicast 1141 RA responses to the MN without delay (therefore, the IPv6 ND 1142 MAX_RA_DELAY_TIME and MIN_DELAY_BETWEEN_RAS constants for multicast 1143 RAs do not apply). When the MSE processes the OMNI information, it 1144 first validates the prefix registration information then injects/ 1145 withdraws the MNP in the routing/mapping system and caches/discards 1146 the new Prefix Length, MNP and ifIndex-tuples. The MSE then informs 1147 the AR of registration success/failure, and the AR returns an RA 1148 message with an OMNI option per Section 9. The AR MAY also send 1149 periodic and/or event-driven unsolicited RA messages per [RFC4861]. 1151 The AR can combine the information from multiple MSEs into one or 1152 more "aggregate" RAs sent to the MN in order conserve ANET bandwidth. 1153 Each aggregate RA includes an OMNI option with multiple Register/ 1154 Release sub-options, i.e., one for each MSE represented by the 1155 aggregate. If an aggregate is sent, the RA message contents must 1156 consistently represent the combined information supplied by all 1157 represented MSEs. Note that since the AR uses its own OMNI LLA as 1158 the RA source address, the MN determines the addresses of the 1159 represented MSEs by examining the Register/Release OMNI sub-options. 1160 Since these values already represent the MSEs for which the AR is 1161 acting as a proxy, OMNI nodes ignore the P(roxy) bit in the RA flags 1162 [RFC4389]. 1164 When the MN receives the RA message, it creates an OMNI interface 1165 neighbor cache entry with the AR's address as an L2 address and 1166 records the MSIDs that have confirmed MNP registration via this AR. 1167 If the MN connects to multiple ANETs, it establishes additional AR L2 1168 addresses (i.e., as a Multilink neighbor). The MN then manages its 1169 underlying interfaces according to their states as follows: 1171 o When an underlying interface transitions to UP, the MN sends an RS 1172 over the underlying interface with an OMNI option with R set to 1. 1173 The OMNI option contains at least one ifIndex-tuple with values 1174 specific to this underlying interface, and may contain additional 1175 ifIndex-tuples specific to this and/or other underlying 1176 interfaces. The option also includes any Register/Release MSIDs. 1178 o When an underlying interface transitions to DOWN, the MN sends an 1179 RS or unsolicited NA message over any UP underlying interface with 1180 an OMNI option containing an ifIndex-tuple for the DOWN underlying 1181 interface with Link set to '0'. The MN sends an RS when an 1182 acknowledgement is required, or an unsolicited NA when reliability 1183 is not thought to be a concern (e.g., if redundant transmissions 1184 are sent on multiple underlying interfaces). 1186 o When the Router Lifetime for a specific AR nears expiration, the 1187 MN sends an RS over the underlying interface to receive a fresh 1188 RA. If no RA is received, the MN marks the underlying interface 1189 as DOWN. 1191 o When a MN wishes to release from one or more current MSIDs, it 1192 sends an RS or unsolicited NA message over any UP underlying 1193 interfaces with an OMNI option with a Release MSID. Each MSID 1194 then withdraws the MNP from the routing/mapping system and informs 1195 the AR that the release was successful. 1197 o When all of a MNs underlying interfaces have transitioned to DOWN 1198 (or if the prefix registration lifetime expires), any associated 1199 MSEs withdraw the MNP the same as if they had received a message 1200 with a release indication. 1202 The MN is responsible for retrying each RS exchange up to 1203 MAX_RTR_SOLICITATIONS times separated by RTR_SOLICITATION_INTERVAL 1204 seconds until an RA is received. If no RA is received over a an UP 1205 underlying interface, the MN declares this underlying interface as 1206 DOWN. 1208 The IPv6 layer sees the OMNI interface as an ordinary IPv6 interface. 1209 Therefore, when the IPv6 layer sends an RS message the OMNI interface 1210 returns an internally-generated RA message as though the message 1211 originated from an IPv6 router. The internally-generated RA message 1212 contains configuration information that is consistent with the 1213 information received from the RAs generated by the MS. Whether the 1214 OMNI interface IPv6 ND messaging process is initiated from the 1215 receipt of an RS message from the IPv6 layer is an implementation 1216 matter. Some implementations may elect to defer the IPv6 ND 1217 messaging process until an RS is received from the IPv6 layer, while 1218 others may elect to initiate the process proactively. 1220 Note: The Router Lifetime value in RA messages indicates the time 1221 before which the MN must send another RS message over this underlying 1222 interface (e.g., 600 seconds), however that timescale may be 1223 significantly longer than the lifetime the MS has committed to retain 1224 the prefix registration (e.g., REACHABLETIME seconds). ARs are 1225 therefore responsible for keeping MS state alive on a shorter 1226 timescale than the MN is required to do on its own behalf. 1228 Note: On multicast-capable underlying interfaces, MNs should send 1229 periodic unsolicited multicast NA messages and ARs should send 1230 periodic unsolicited multicast RA messages as "beacons" that can be 1231 heard by other nodes on the link. If a node fails to receive a 1232 beacon after a timeout value specific to the link, it can initiate a 1233 unicast exchange to test reachability. 1235 12.1. Multihop Router Discovery 1237 On some ANET types (e.g., omni-directional ad-hoc wireless) a MN may 1238 be located multiple hops away from a node which has connectivity to 1239 the nearest ANET/INET service. Forwarding through these multiple 1240 hops would be conducted through the application of a Mobile Ad-hoc 1241 Network (MANET) routing protocol operating across the ANET 1242 interfaces. 1244 A MN located potentially multiple ANET hops away from the nearst AR 1245 prepares an RS message as normal then encapsulates the message in an 1246 IPv6 header with source address set to the ULA corresponding to the 1247 RS LLA source address, and with destination set to site-scoped All- 1248 Routers multicast (ff05::2)[RFC4291]. The MN then sends the 1249 encapsulated RS message via the ANET interface, where it will be 1250 received by zero or more nearby intermediate MNs. 1252 When an intermediate MN that particpates in the MANET routing 1253 protocol receives the encapsulated RS, it forwards the message 1254 according to its (ULA-based) MANET routing tables. This process 1255 repeats iteratively until the RS message is received by an ultimate 1256 MN that is within communications range of an AR, which forwards the 1257 message to the AR. 1259 When the AR receives the RS message, it coordinates with the MS the 1260 same as if the message were received as an ordinary link-local RS, 1261 since the inner Hop Limit will not have been decremented by the MANET 1262 multihop forwarding process. The AR then prepares an RA message with 1263 source address set to its own LLA and destination address set to the 1264 LLA of the original MN, then encapsulates the message in an IPv6 1265 header with source and destination set to the ULAs corresponding to 1266 the inner header. 1268 The AR then forwards the message to an MN within communications 1269 range, which forwards the message according to its MANET routing 1270 tables to an intermediate MN. The MANET forwarding process continues 1271 repetitively until the message is delivered to the original MN, which 1272 decapsulates the message and performs autoconfiguration the same as 1273 if it had received the RA directly from an AR. 1275 Note: An alternate approach to encapsulation of IPv6 ND messages for 1276 multihop forwarding would be to statelessly translate the IPv6 LLAs 1277 into ULAs and forward the messages without encapsulation. This would 1278 violate the [RFC4861] requirement that certain IPv6 ND messages must 1279 use link-local addresses and must not be accepted if received with 1280 Hop Limit less than 255. This document therefore advocates 1281 encapsulation since the overhead is nominal considering the 1282 infrequent nature and small size of IPv6 ND messages. Future 1283 documents may consider encapsulation avoidance through translation 1284 while updating [RFC4861]. 1286 13. Secure Redirection 1288 If the ANET link model is multiple access, the AR is responsible for 1289 assuring that address duplication cannot corrupt the neighbor caches 1290 of other nodes on the link. When the MN sends an RS message on a 1291 multiple access ANET link, the AR verifies that the MN is authorized 1292 to use the address and returns an RA with a non-zero Router Lifetime 1293 only if the MN is authorized. 1295 After verifying MN authorization and returning an RA, the AR MAY 1296 return IPv6 ND Redirect messages to direct MNs located on the same 1297 ANET link to exchange packets directly without transiting the AR. In 1298 that case, the MNs can exchange packets according to their unicast L2 1299 addresses discovered from the Redirect message instead of using the 1300 dogleg path through the AR. In some ANET links, however, such direct 1301 communications may be undesirable and continued use of the dogleg 1302 path through the AR may provide better performance. In that case, 1303 the AR can refrain from sending Redirects, and/or MNs can ignore 1304 them. 1306 14. AR and MSE Resilience 1308 ANETs SHOULD deploy ARs in Virtual Router Redundancy Protocol (VRRP) 1309 [RFC5798] configurations so that service continuity is maintained 1310 even if one or more ARs fail. Using VRRP, the MN is unaware which of 1311 the (redundant) ARs is currently providing service, and any service 1312 discontinuity will be limited to the failover time supported by VRRP. 1313 Widely deployed public domain implementations of VRRP are available. 1315 MSEs SHOULD use high availability clustering services so that 1316 multiple redundant systems can provide coordinated response to 1317 failures. As with VRRP, widely deployed public domain 1318 implementations of high availability clustering services are 1319 available. Note that special-purpose and expensive dedicated 1320 hardware is not necessary, and public domain implementations can be 1321 used even between lightweight virtual machines in cloud deployments. 1323 15. Detecting and Responding to MSE Failures 1325 In environments where fast recovery from MSE failure is required, ARs 1326 SHOULD use proactive Neighbor Unreachability Detection (NUD) in a 1327 manner that parallels Bidirectional Forwarding Detection (BFD) 1328 [RFC5880] to track MSE reachability. ARs can then quickly detect and 1329 react to failures so that cached information is re-established 1330 through alternate paths. Proactive NUD control messaging is carried 1331 only over well-connected ground domain networks (i.e., and not low- 1332 end ANET links such as aeronautical radios) and can therefore be 1333 tuned for rapid response. 1335 ARs perform proactive NUD for MSEs for which there are currently 1336 active MNs on the ANET. If an MSE fails, ARs can quickly inform MNs 1337 of the outage by sending multicast RA messages on the ANET interface. 1338 The AR sends RA messages to MNs via the ANET interface with an OMNI 1339 option with a Release ID for the failed MSE, and with destination 1340 address set to All-Nodes multicast (ff02::1) [RFC4291]. 1342 The AR SHOULD send MAX_FINAL_RTR_ADVERTISEMENTS RA messages separated 1343 by small delays [RFC4861]. Any MNs on the ANET interface that have 1344 been using the (now defunct) MSE will receive the RA messages and 1345 associate with a new MSE. 1347 16. Transition Considerations 1349 When a MN connects to an ANET link for the first time, it sends an RS 1350 message with an OMNI option. If the first hop AR recognizes the 1351 option, it returns an RA with its MS OMNI LLA as the source, the MN 1352 OMNI LLA as the destination, the P(roxy) bit set in the RA flags and 1353 with an OMNI option included. The MN then engages the AR according 1354 to the OMNI link model specified above. If the first hop AR is a 1355 legacy IPv6 router, however, it instead returns an RA message with no 1356 OMNI option and with a non-OMNI unicast source LLA as specified in 1357 [RFC4861]. In that case, the MN engages the ANET according to the 1358 legacy IPv6 link model and without the OMNI extensions specified in 1359 this document. 1361 If the ANET link model is multiple access, there must be assurance 1362 that address duplication cannot corrupt the neighbor caches of other 1363 nodes on the link. When the MN sends an RS message on a multiple 1364 access ANET link with an OMNI LLA source address and an OMNI option, 1365 ARs that recognize the option ensure that the MN is authorized to use 1366 the address and return an RA with a non-zero Router Lifetime only if 1367 the MN is authorized. ARs that do not recognize the option instead 1368 return an RA that makes no statement about the MN's authorization to 1369 use the source address. In that case, the MN should perform 1370 Duplicate Address Detection to ensure that it does not interfere with 1371 other nodes on the link. 1373 An alternative approach for multiple access ANET links to ensure 1374 isolation for MN / AR communications is through L2 address mappings 1375 as discussed in Appendix C. This arrangement imparts a (virtual) 1376 point-to-point link model over the (physical) multiple access link. 1378 17. OMNI Interfaces on the Open Internet 1380 OMNI interfaces configured over IPv6-enabled underlying interfaces on 1381 the open Internet without an OMNI-aware first-hop AR receive RA 1382 messages that do not include an OMNI option, while OMNI interfaces 1383 configured over IPv4-only underlying interfaces do not receive any 1384 (IPv6) RA messages at all. OMNI interfaces that receive RA messages 1385 without an OMNI option configure addresses, on-link prefxies, etc. on 1386 the underlying interface that received the RA according to standard 1387 IPv6 ND and address resolution conventions [RFC4861] [RFC4862]. OMNI 1388 interfaces configured over IPv4-only underlying interfaces configure 1389 IPv4 address information on the underlying interfaces using 1390 mechanisms such as DHCPv4 [RFC2131]. 1392 OMNI interfaces configured over underlying interfaces that connect to 1393 the open Internet can apply security services such as VPNs to connect 1394 to an MSE or establish a direct link to an MSE through some other 1395 means. In environments where an explicit VPN or direct link may be 1396 impractical, OMNI interfaces can instead use UDP/IP encapsulation per 1397 [RFC6081][RFC4380]. (SEcure Neighbor Discovery (SEND) and 1398 Cryptographically Generated Addresses (CGA) [RFC3971][RFC3972] or 1399 other protocol-specific security services can can also be used if 1400 additional authentication is necessary.) 1402 After estabishing a VPN or preparing for UDP/IP encapsulation, OMNI 1403 interfaces send control plane messages to interface with the MS. The 1404 control plane messages must be authenticated while data plane 1405 messages are delivered the same as for ordinary best-effort Internet 1406 traffic with basic source address-based data origin verification. 1407 Data plane communications via OMNI interfaces that connect over the 1408 open Internet without an explicit VPN should therefore employ 1409 transport- or higher-layer security to ensure integrity and/or 1410 confidentiality. 1412 OMNI interfaces in the open Internet are often located behind Network 1413 Address Translators (NATs). The OMNI interface accommodates NAT 1414 traversal using UDP/IP encapsulation and the mechanisms discussed in 1415 [RFC6081][RFC4380][I-D.templin-intarea-6706bis]. 1417 18. Time-Varying MNPs 1419 In some use cases, it is desirable, beneficial and efficient for the 1420 MN to receive a constant MNP that travels with the MN wherever it 1421 moves. For example, this would allow air traffic controllers to 1422 easily track aircraft, etc. In other cases, however (e.g., 1423 intelligent transportation systems), the MN may be willing to 1424 sacrifice a modicum of efficiency in order to have time-varying MNPs 1425 that can be changed every so often to defeat adversarial tracking. 1427 Prefix delegation services such as those discussed in 1428 [I-D.templin-6man-dhcpv6-ndopt] and [I-D.templin-intarea-6706bis] 1429 allow OMNI MNs that desire time-varying MNPs to obtain short-lived 1430 prefixes. In that case, the identity of the MN can be used as a 1431 prefix delegation seed (e.g., a DHCPv6 Device Unique IDentifier 1432 (DUID) [RFC8415]). The MN would then be obligated to renumber its 1433 internal networks whenever its MNP (and therefore also its OMNI 1434 address) changes. This should not present a challenge for MNs with 1435 automated network renumbering services, however presents limits for 1436 the durations of ongoing sessions that would prefer to use a constant 1437 address. 1439 19. IANA Considerations 1441 The IANA is instructed to allocate an official Type number TBD from 1442 the registry "IPv6 Neighbor Discovery Option Formats" for the OMNI 1443 option. Implementations set Type to 253 as an interim value 1444 [RFC4727]. 1446 The IANA is instructed to assign a new Code value "1" in the "ICMPv6 1447 Code Fields: Type 2 - Packet Too Big" registry. The registry should 1448 read as follows: 1450 Code Name Reference 1451 --- ---- --------- 1452 0 Diagnostic Packet Too Big [RFC4443] 1453 1 Advisory Packet Too Big [RFCXXXX] 1455 Figure 15: OMNI Option Sub-Type Values 1457 The IANA is instructed to allocate one Ethernet unicast address TBD2 1458 (suggest 00-00-5E-00-52-14 [RFC5214]) in the registry "IANA Ethernet 1459 Address Block - Unicast Use". 1461 The OMNI option also defines an 8-bit Sub-Type field, for which IANA 1462 is instructed to create and maintain a new registry entitled "OMNI 1463 option Sub-Type values". Initial values for the OMNI option Sub-Type 1464 values registry are given below; future assignments are to be made 1465 through Expert Review [RFC8126]. 1467 Value Sub-Type name Reference 1468 ----- ------------- ---------- 1469 0 Pad1 [RFCXXXX] 1470 1 PadN [RFCXXXX] 1471 2 ifIndex-tuple (Type 1) [RFCXXXX] 1472 3 ifIndex-tuple (Type 2) [RFCXXXX] 1473 4 MS-Register [RFCXXXX] 1474 5 MS-Release [RFCXXXX] 1475 6 Network Acceess Identifier [RFCXXXX] 1476 7 Geo Coordinates [RFCXXXX] 1477 8-252 Unassigned 1478 253-254 Experimental [RFCXXXX] 1479 255 Reserved [RFCXXXX] 1481 Figure 16: OMNI Option Sub-Type Values 1483 20. Security Considerations 1485 Security considerations for IPv6 [RFC8200] and IPv6 Neighbor 1486 Discovery [RFC4861] apply. OMNI interface IPv6 ND messages SHOULD 1487 include Nonce and Timestamp options [RFC3971] when transaction 1488 confirmation and/or time synchronization is needed. 1490 OMNI interfaces configured over secured ANET interfaces inherit the 1491 physical and/or link-layer security properties of the connected 1492 ANETs. OMNI interfaces configured over open INET interfaces can use 1493 symmetric securing services such as VPNs or can by some other means 1494 establish a direct link. When a VPN or direct link may be 1495 impractical, however, an asymmetric security service such as SEcure 1496 Neighbor Discovery (SEND) [RFC3971] with Cryptographically Generated 1497 Addresses (CGAs) [RFC3972], the authentication option specified in 1498 [RFC4380] or other protocol control message security mechanisms may 1499 be necessary. While the OMNI link protects control plane messaging, 1500 applications must still employ end-to-end transport- or higher-layer 1501 security services to protect the data plane. 1503 The Mobility Service MUST provide strong network layer security for 1504 control plane messages and forwading path integrity for data plane 1505 messages. In one example, the AERO service 1506 [I-D.templin-intarea-6706bis] constructs a spanning tree between 1507 mobility service elements and secures the links in the spanning tree 1508 with network layer security mechanisms such as IPsec [RFC4301] or 1509 Wireguard. Control plane messages are then constrained to travel 1510 only over the secured spanning tree paths and are therefore protected 1511 from attack or eavesdropping. Since data plane messages can travel 1512 over route optimized paths that do not strictly follow the spanning 1513 tree, however, end-to-end transport- or higher-layer security 1514 services are still required. 1516 Security considerations for specific access network interface types 1517 are covered under the corresponding IP-over-(foo) specification 1518 (e.g., [RFC2464], [RFC2492], etc.). 1520 Security considerations for IPv6 fragmentation and reassembly are 1521 discussed in Section 5.1. 1523 21. Acknowledgements 1525 The first version of this document was prepared per the consensus 1526 decision at the 7th Conference of the International Civil Aviation 1527 Organization (ICAO) Working Group-I Mobility Subgroup on March 22, 1528 2019. Consensus to take the document forward to the IETF was reached 1529 at the 9th Conference of the Mobility Subgroup on November 22, 2019. 1530 Attendees and contributors included: Guray Acar, Danny Bharj, 1531 Francois D'Humieres, Pavel Drasil, Nikos Fistas, Giovanni Garofolo, 1532 Bernhard Haindl, Vaughn Maiolla, Tom McParland, Victor Moreno, Madhu 1533 Niraula, Brent Phillips, Liviu Popescu, Jacky Pouzet, Aloke Roy, Greg 1534 Saccone, Robert Segers, Michal Skorepa, Michel Solery, Stephane 1535 Tamalet, Fred Templin, Jean-Marc Vacher, Bela Varkonyi, Tony Whyman, 1536 Fryderyk Wrobel and Dongsong Zeng. 1538 The following individuals are acknowledged for their useful comments: 1539 Michael Matyas, Madhu Niraula, Greg Saccone, Stephane Tamalet, Eric 1540 Vyncke. Pavel Drasil, Zdenek Jaron and Michal Skorepa are recognized 1541 for their many helpful ideas and suggestions. 1543 This work is aligned with the NASA Safe Autonomous Systems Operation 1544 (SASO) program under NASA contract number NNA16BD84C. 1546 This work is aligned with the FAA as per the SE2025 contract number 1547 DTFAWA-15-D-00030. 1549 22. References 1551 22.1. Normative References 1553 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1554 Requirement Levels", BCP 14, RFC 2119, 1555 DOI 10.17487/RFC2119, March 1997, 1556 . 1558 [RFC2474] Nichols, K., Blake, S., Baker, F., and D. Black, 1559 "Definition of the Differentiated Services Field (DS 1560 Field) in the IPv4 and IPv6 Headers", RFC 2474, 1561 DOI 10.17487/RFC2474, December 1998, 1562 . 1564 [RFC3971] Arkko, J., Ed., Kempf, J., Zill, B., and P. Nikander, 1565 "SEcure Neighbor Discovery (SEND)", RFC 3971, 1566 DOI 10.17487/RFC3971, March 2005, 1567 . 1569 [RFC3972] Aura, T., "Cryptographically Generated Addresses (CGA)", 1570 RFC 3972, DOI 10.17487/RFC3972, March 2005, 1571 . 1573 [RFC4191] Draves, R. and D. Thaler, "Default Router Preferences and 1574 More-Specific Routes", RFC 4191, DOI 10.17487/RFC4191, 1575 November 2005, . 1577 [RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast 1578 Addresses", RFC 4193, DOI 10.17487/RFC4193, October 2005, 1579 . 1581 [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing 1582 Architecture", RFC 4291, DOI 10.17487/RFC4291, February 1583 2006, . 1585 [RFC4443] Conta, A., Deering, S., and M. Gupta, Ed., "Internet 1586 Control Message Protocol (ICMPv6) for the Internet 1587 Protocol Version 6 (IPv6) Specification", STD 89, 1588 RFC 4443, DOI 10.17487/RFC4443, March 2006, 1589 . 1591 [RFC4727] Fenner, B., "Experimental Values In IPv4, IPv6, ICMPv4, 1592 ICMPv6, UDP, and TCP Headers", RFC 4727, 1593 DOI 10.17487/RFC4727, November 2006, 1594 . 1596 [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, 1597 "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, 1598 DOI 10.17487/RFC4861, September 2007, 1599 . 1601 [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless 1602 Address Autoconfiguration", RFC 4862, 1603 DOI 10.17487/RFC4862, September 2007, 1604 . 1606 [RFC6088] Tsirtsis, G., Giarreta, G., Soliman, H., and N. Montavont, 1607 "Traffic Selectors for Flow Bindings", RFC 6088, 1608 DOI 10.17487/RFC6088, January 2011, 1609 . 1611 [RFC8028] Baker, F. and B. Carpenter, "First-Hop Router Selection by 1612 Hosts in a Multi-Prefix Network", RFC 8028, 1613 DOI 10.17487/RFC8028, November 2016, 1614 . 1616 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 1617 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 1618 May 2017, . 1620 [RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6 1621 (IPv6) Specification", STD 86, RFC 8200, 1622 DOI 10.17487/RFC8200, July 2017, 1623 . 1625 [RFC8201] McCann, J., Deering, S., Mogul, J., and R. Hinden, Ed., 1626 "Path MTU Discovery for IP version 6", STD 87, RFC 8201, 1627 DOI 10.17487/RFC8201, July 2017, 1628 . 1630 22.2. Informative References 1632 [I-D.ietf-intarea-frag-fragile] 1633 Bonica, R., Baker, F., Huston, G., Hinden, R., Troan, O., 1634 and F. Gont, "IP Fragmentation Considered Fragile", draft- 1635 ietf-intarea-frag-fragile-17 (work in progress), September 1636 2019. 1638 [I-D.ietf-intarea-tunnels] 1639 Touch, J. and M. Townsley, "IP Tunnels in the Internet 1640 Architecture", draft-ietf-intarea-tunnels-10 (work in 1641 progress), September 2019. 1643 [I-D.templin-6man-dhcpv6-ndopt] 1644 Templin, F., "A Unified Stateful/Stateless Configuration 1645 Service for IPv6", draft-templin-6man-dhcpv6-ndopt-09 1646 (work in progress), January 2020. 1648 [I-D.templin-intarea-6706bis] 1649 Templin, F., "Asymmetric Extended Route Optimization 1650 (AERO)", draft-templin-intarea-6706bis-58 (work in 1651 progress), June 2020. 1653 [RFC1122] Braden, R., Ed., "Requirements for Internet Hosts - 1654 Communication Layers", STD 3, RFC 1122, 1655 DOI 10.17487/RFC1122, October 1989, 1656 . 1658 [RFC2131] Droms, R., "Dynamic Host Configuration Protocol", 1659 RFC 2131, DOI 10.17487/RFC2131, March 1997, 1660 . 1662 [RFC2225] Laubach, M. and J. Halpern, "Classical IP and ARP over 1663 ATM", RFC 2225, DOI 10.17487/RFC2225, April 1998, 1664 . 1666 [RFC2464] Crawford, M., "Transmission of IPv6 Packets over Ethernet 1667 Networks", RFC 2464, DOI 10.17487/RFC2464, December 1998, 1668 . 1670 [RFC2473] Conta, A. and S. Deering, "Generic Packet Tunneling in 1671 IPv6 Specification", RFC 2473, DOI 10.17487/RFC2473, 1672 December 1998, . 1674 [RFC2492] Armitage, G., Schulter, P., and M. Jork, "IPv6 over ATM 1675 Networks", RFC 2492, DOI 10.17487/RFC2492, January 1999, 1676 . 1678 [RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group 1679 MIB", RFC 2863, DOI 10.17487/RFC2863, June 2000, 1680 . 1682 [RFC3692] Narten, T., "Assigning Experimental and Testing Numbers 1683 Considered Useful", BCP 82, RFC 3692, 1684 DOI 10.17487/RFC3692, January 2004, 1685 . 1687 [RFC3810] Vida, R., Ed. and L. Costa, Ed., "Multicast Listener 1688 Discovery Version 2 (MLDv2) for IPv6", RFC 3810, 1689 DOI 10.17487/RFC3810, June 2004, 1690 . 1692 [RFC3819] Karn, P., Ed., Bormann, C., Fairhurst, G., Grossman, D., 1693 Ludwig, R., Mahdavi, J., Montenegro, G., Touch, J., and L. 1694 Wood, "Advice for Internet Subnetwork Designers", BCP 89, 1695 RFC 3819, DOI 10.17487/RFC3819, July 2004, 1696 . 1698 [RFC4301] Kent, S. and K. Seo, "Security Architecture for the 1699 Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, 1700 December 2005, . 1702 [RFC4380] Huitema, C., "Teredo: Tunneling IPv6 over UDP through 1703 Network Address Translations (NATs)", RFC 4380, 1704 DOI 10.17487/RFC4380, February 2006, 1705 . 1707 [RFC4389] Thaler, D., Talwar, M., and C. Patel, "Neighbor Discovery 1708 Proxies (ND Proxy)", RFC 4389, DOI 10.17487/RFC4389, April 1709 2006, . 1711 [RFC4541] Christensen, M., Kimball, K., and F. Solensky, 1712 "Considerations for Internet Group Management Protocol 1713 (IGMP) and Multicast Listener Discovery (MLD) Snooping 1714 Switches", RFC 4541, DOI 10.17487/RFC4541, May 2006, 1715 . 1717 [RFC4605] Fenner, B., He, H., Haberman, B., and H. Sandick, 1718 "Internet Group Management Protocol (IGMP) / Multicast 1719 Listener Discovery (MLD)-Based Multicast Forwarding 1720 ("IGMP/MLD Proxying")", RFC 4605, DOI 10.17487/RFC4605, 1721 August 2006, . 1723 [RFC4963] Heffner, J., Mathis, M., and B. Chandler, "IPv4 Reassembly 1724 Errors at High Data Rates", RFC 4963, 1725 DOI 10.17487/RFC4963, July 2007, 1726 . 1728 [RFC5175] Haberman, B., Ed. and R. Hinden, "IPv6 Router 1729 Advertisement Flags Option", RFC 5175, 1730 DOI 10.17487/RFC5175, March 2008, 1731 . 1733 [RFC5213] Gundavelli, S., Ed., Leung, K., Devarapalli, V., 1734 Chowdhury, K., and B. Patil, "Proxy Mobile IPv6", 1735 RFC 5213, DOI 10.17487/RFC5213, August 2008, 1736 . 1738 [RFC5214] Templin, F., Gleeson, T., and D. Thaler, "Intra-Site 1739 Automatic Tunnel Addressing Protocol (ISATAP)", RFC 5214, 1740 DOI 10.17487/RFC5214, March 2008, 1741 . 1743 [RFC5558] Templin, F., Ed., "Virtual Enterprise Traversal (VET)", 1744 RFC 5558, DOI 10.17487/RFC5558, February 2010, 1745 . 1747 [RFC5798] Nadas, S., Ed., "Virtual Router Redundancy Protocol (VRRP) 1748 Version 3 for IPv4 and IPv6", RFC 5798, 1749 DOI 10.17487/RFC5798, March 2010, 1750 . 1752 [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection 1753 (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, 1754 . 1756 [RFC6081] Thaler, D., "Teredo Extensions", RFC 6081, 1757 DOI 10.17487/RFC6081, January 2011, 1758 . 1760 [RFC6543] Gundavelli, S., "Reserved IPv6 Interface Identifier for 1761 Proxy Mobile IPv6", RFC 6543, DOI 10.17487/RFC6543, May 1762 2012, . 1764 [RFC7084] Singh, H., Beebee, W., Donley, C., and B. Stark, "Basic 1765 Requirements for IPv6 Customer Edge Routers", RFC 7084, 1766 DOI 10.17487/RFC7084, November 2013, 1767 . 1769 [RFC7421] Carpenter, B., Ed., Chown, T., Gont, F., Jiang, S., 1770 Petrescu, A., and A. Yourtchenko, "Analysis of the 64-bit 1771 Boundary in IPv6 Addressing", RFC 7421, 1772 DOI 10.17487/RFC7421, January 2015, 1773 . 1775 [RFC7542] DeKok, A., "The Network Access Identifier", RFC 7542, 1776 DOI 10.17487/RFC7542, May 2015, 1777 . 1779 [RFC7739] Gont, F., "Security Implications of Predictable Fragment 1780 Identification Values", RFC 7739, DOI 10.17487/RFC7739, 1781 February 2016, . 1783 [RFC7847] Melia, T., Ed. and S. Gundavelli, Ed., "Logical-Interface 1784 Support for IP Hosts with Multi-Access Support", RFC 7847, 1785 DOI 10.17487/RFC7847, May 2016, 1786 . 1788 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 1789 Writing an IANA Considerations Section in RFCs", BCP 26, 1790 RFC 8126, DOI 10.17487/RFC8126, June 2017, 1791 . 1793 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 1794 Decraene, B., Litkowski, S., and R. Shakir, "Segment 1795 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 1796 July 2018, . 1798 [RFC8415] Mrugalski, T., Siodelski, M., Volz, B., Yourtchenko, A., 1799 Richardson, M., Jiang, S., Lemon, T., and T. Winters, 1800 "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", 1801 RFC 8415, DOI 10.17487/RFC8415, November 2018, 1802 . 1804 [RFC8754] Filsfils, C., Ed., Dukes, D., Ed., Previdi, S., Leddy, J., 1805 Matsushima, S., and D. Voyer, "IPv6 Segment Routing Header 1806 (SRH)", RFC 8754, DOI 10.17487/RFC8754, March 2020, 1807 . 1809 Appendix A. Type 1 ifIndex-tuple Traffic Classifier Preference Encoding 1811 Adaptation of the OMNI option Type 1 ifIndex-tuple's traffic 1812 classifier Bitmap to specific Internetworks such as the Aeronautical 1813 Telecommunications Network with Internet Protocol Services (ATN/IPS) 1814 may include link selection preferences based on other traffic 1815 classifiers (e.g., transport port numbers, etc.) in addition to the 1816 existing DSCP-based preferences. Nodes on specific Internetworks 1817 maintain a map of traffic classifiers to additional P[*] preference 1818 fields beyond the first 64. For example, TCP port 22 maps to P[67], 1819 TCP port 443 maps to P[70], UDP port 8060 maps to P[76], etc. 1821 Implementations use Simplex or Indexed encoding formats for P[*] 1822 encoding in order to encode a given set of traffic classifiers in the 1823 most efficient way. Some use cases may be more efficiently coded 1824 using Simplex form, while others may be more efficient using Indexed. 1825 Once a format is selected for preparation of a single ifIndex-tuple 1826 the same format must be used for the entire Sub-Option. Different 1827 Sub-Options may use different formats. 1829 The following figures show coding examples for various Simplex and 1830 Indexed formats: 1832 0 1 2 3 1833 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 1834 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1835 | Sub-Type=2 | Sub-length=4+N| ifIndex | ifType | 1836 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1837 | Provider ID | Link |S|0|RSV| Bitmap(0)=0xff|P00|P01|P02|P03| 1838 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1839 |P04|P05|P06|P07|P08|P09|P10|P11|P12|P13|P14|P15|P16|P17|P18|P19| 1840 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1841 |P20|P21|P22|P23|P24|P25|P26|P27|P28|P29|P30|P31| Bitmap(1)=0xff| 1842 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1843 |P32|P33|P34|P35|P36|P37|P38|P39|P40|P41|P42|P43|P44|P45|P46|P47| 1844 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1845 |P48|P49|P50|P51|P52|P53|P54|P55|P56|P57|P58|P59|P60|P61|P62|P63| 1846 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1847 | Bitmap(2)=0xff|P64|P65|P67|P68| ... 1848 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 1850 Figure 17: Example 1: Dense Simplex Encoding 1852 0 1 2 3 1853 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 1854 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1855 | Sub-Type=2 | Sub-length=4+N| ifIndex | ifType | 1856 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1857 | Provider ID | Link |S|0|RSV| Bitmap(0)=0x00| Bitmap(1)=0x0f| 1858 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1859 |P48|P49|P50|P51|P52|P53|P54|P55|P56|P57|P58|P59|P60|P61|P62|P63| 1860 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1861 | Bitmap(2)=0x00| Bitmap(3)=0x00| Bitmap(4)=0x00| Bitmap(5)=0x00| 1862 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1863 | Bitmap(6)=0xf0|192|193|194|195|196|197|198|199|200|201|202|203| 1864 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1865 |204|205|206|207| Bitmap(7)=0x00| Bitmap(8)=0x0f|272|273|274|275| 1866 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1867 |276|277|278|279|280|281|282|283|284|285|286|287| Bitmap(9)=0x00| 1868 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1869 |Bitmap(10)=0x00| ... 1870 +-+-+-+-+-+-+-+-+-+-+- 1872 Figure 18: Example 2: Sparse Simplex Encoding 1874 0 1 2 3 1875 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 1876 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1877 | Sub-Type=2 | Sub-length=4+N| ifIndex | ifType | 1878 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1879 | Provider ID | Link |S|1|RSV| Index = 0x00 | Bitmap = 0x80 | 1880 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1881 |P00|P01|P02|P03| Index = 0x01 | Bitmap = 0x01 |P60|P61|P62|P63| 1882 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1883 | Index = 0x10 | Bitmap = 0x80 |512|513|514|515| Index = 0x18 | 1884 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1885 | Bitmap = 0x01 |796|797|798|799| ... 1886 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 1888 Figure 19: Example 3: Indexed Encoding 1890 Appendix B. VDL Mode 2 Considerations 1892 ICAO Doc 9776 is the "Technical Manual for VHF Data Link Mode 2" 1893 (VDLM2) that specifies an essential radio frequency data link service 1894 for aircraft and ground stations in worldwide civil aviation air 1895 traffic management. The VDLM2 link type is "multicast capable" 1896 [RFC4861], but with considerable differences from common multicast 1897 links such as Ethernet and IEEE 802.11. 1899 First, the VDLM2 link data rate is only 31.5Kbps - multiple orders of 1900 magnitude less than most modern wireless networking gear. Second, 1901 due to the low available link bandwidth only VDLM2 ground stations 1902 (i.e., and not aircraft) are permitted to send broadcasts, and even 1903 so only as compact layer 2 "beacons". Third, aircraft employ the 1904 services of ground stations by performing unicast RS/RA exchanges 1905 upon receipt of beacons instead of listening for multicast RA 1906 messages and/or sending multicast RS messages. 1908 This beacon-oriented unicast RS/RA approach is necessary to conserve 1909 the already-scarce available link bandwidth. Moreover, since the 1910 numbers of beaconing ground stations operating within a given spatial 1911 range must be kept as sparse as possible, it would not be feasible to 1912 have different classes of ground stations within the same region 1913 observing different protocols. It is therefore highly desirable that 1914 all ground stations observe a common language of RS/RA as specified 1915 in this document. 1917 Note that links of this nature may benefit from compression 1918 techniques that reduce the bandwidth necessary for conveying the same 1919 amount of data. The IETF lpwan working group is considering possible 1920 alternatives: [https://datatracker.ietf.org/wg/lpwan/documents]. 1922 Appendix C. MN / AR Isolation Through L2 Address Mapping 1924 Per [RFC4861], IPv6 ND messages may be sent to either a multicast or 1925 unicast link-scoped IPv6 destination address. However, IPv6 ND 1926 messaging should be coordinated between the MN and AR only without 1927 invoking other nodes on the ANET. This implies that MN / AR control 1928 messaging should be isolated and not overheard by other nodes on the 1929 link. 1931 To support MN / AR isolation on some ANET links, ARs can maintain an 1932 OMNI-specific unicast L2 address ("MSADDR"). For Ethernet-compatible 1933 ANETs, this specification reserves one Ethernet unicast address TBD2 1934 (see: Section 19). For non-Ethernet statically-addressed ANETs, 1935 MSADDR is reserved per the assigned numbers authority for the ANET 1936 addressing space. For still other ANETs, MSADDR may be dynamically 1937 discovered through other means, e.g., L2 beacons. 1939 MNs map the L3 addresses of all IPv6 ND messages they send (i.e., 1940 both multicast and unicast) to MSADDR instead of to an ordinary 1941 unicast or multicast L2 address. In this way, all of the MN's IPv6 1942 ND messages will be received by ARs that are configured to accept 1943 packets destined to MSADDR. Note that multiple ARs on the link could 1944 be configured to accept packets destined to MSADDR, e.g., as a basis 1945 for supporting redundancy. 1947 Therefore, ARs must accept and process packets destined to MSADDR, 1948 while all other devices must not process packets destined to MSADDR. 1949 This model has well-established operational experience in Proxy 1950 Mobile IPv6 (PMIP) [RFC5213][RFC6543]. 1952 Appendix D. Change Log 1954 << RFC Editor - remove prior to publication >> 1956 Differences from draft-templin-6man-omni-interface-25 to draft- 1957 templin-6man-omni-interface-26: 1959 o Further clarification on "aggregate" RA messages. 1961 o Expanded Security Considerations to discuss expectations for 1962 security in the Mobility Service. 1964 Differences from draft-templin-6man-omni-interface-20 to draft- 1965 templin-6man-omni-interface-21: 1967 o Safety-Based Multilink (SBM) and Performance-Based Multilink 1968 (PBM). 1970 Differences from draft-templin-6man-omni-interface-18 to draft- 1971 templin-6man-omni-interface-19: 1973 o SEND/CGA. 1975 Differences from draft-templin-6man-omni-interface-17 to draft- 1976 templin-6man-omni-interface-18: 1978 o Teredo 1980 Differences from draft-templin-6man-omni-interface-14 to draft- 1981 templin-6man-omni-interface-15: 1983 o Prefix length discussions removed. 1985 Differences from draft-templin-6man-omni-interface-12 to draft- 1986 templin-6man-omni-interface-13: 1988 o Teredo 1990 Differences from draft-templin-6man-omni-interface-11 to draft- 1991 templin-6man-omni-interface-12: 1993 o Major simplifications and clarifications on MTU and fragmentation. 1995 o Document now updates RFC4443 and RFC8201. 1997 Differences from draft-templin-6man-omni-interface-10 to draft- 1998 templin-6man-omni-interface-11: 2000 o Removed /64 assumption, resulting in new OMNI address format. 2002 Differences from draft-templin-6man-omni-interface-07 to draft- 2003 templin-6man-omni-interface-08: 2005 o OMNI MNs in the open Internet 2007 Differences from draft-templin-6man-omni-interface-06 to draft- 2008 templin-6man-omni-interface-07: 2010 o Brought back L2 MSADDR mapping text for MN / AR isolation based on 2011 L2 addressing. 2013 o Expanded "Transition Considerations". 2015 Differences from draft-templin-6man-omni-interface-05 to draft- 2016 templin-6man-omni-interface-06: 2018 o Brought back OMNI option "R" flag, and discussed its use. 2020 Differences from draft-templin-6man-omni-interface-04 to draft- 2021 templin-6man-omni-interface-05: 2023 o Transition considerations, and overhaul of RS/RA addressing with 2024 the inclusion of MSE addresses within the OMNI option instead of 2025 as RS/RA addresses (developed under FAA SE2025 contract number 2026 DTFAWA-15-D-00030). 2028 Differences from draft-templin-6man-omni-interface-02 to draft- 2029 templin-6man-omni-interface-03: 2031 o Added "advisory PTB messages" under FAA SE2025 contract number 2032 DTFAWA-15-D-00030. 2034 Differences from draft-templin-6man-omni-interface-01 to draft- 2035 templin-6man-omni-interface-02: 2037 o Removed "Primary" flag and supporting text. 2039 o Clarified that "Router Lifetime" applies to each ANET interface 2040 independently, and that the union of all ANET interface Router 2041 Lifetimes determines MSE lifetime. 2043 Differences from draft-templin-6man-omni-interface-00 to draft- 2044 templin-6man-omni-interface-01: 2046 o "All-MSEs" OMNI LLA defined. Also reserved fe80::ff00:0000/104 2047 for future use (most likely as "pseudo-multicast"). 2049 o Non-normative discussion of alternate OMNI LLA construction form 2050 made possible if the 64-bit assumption were relaxed. 2052 First draft version (draft-templin-atn-aero-interface-00): 2054 o Draft based on consensus decision of ICAO Working Group I Mobility 2055 Subgroup March 22, 2019. 2057 Authors' Addresses 2059 Fred L. Templin (editor) 2060 The Boeing Company 2061 P.O. Box 3707 2062 Seattle, WA 98124 2063 USA 2065 Email: fltemplin@acm.org 2067 Tony Whyman 2068 MWA Ltd c/o Inmarsat Global Ltd 2069 99 City Road 2070 London EC1Y 1AX 2071 England 2073 Email: tony.whyman@mccallumwhyman.com