[Docs] [txt|pdf] [Tracker] [Email] [Diff1] [Diff2] [Nits]

Versions: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 37 38 39 40

Network Working Group                                    F. Templin, Ed.
Internet-Draft                              Boeing Research & Technology
Intended status: Standards Track                           March 8, 2010
Expires: September 9, 2010


                   Virtual Enterprise Traversal (VET)
                    draft-templin-intarea-vet-10.txt

Abstract

   Enterprise networks connect hosts and routers over various link
   types, and often also connect to provider networks and/or the global
   Internet.  Enterprise network nodes require a means to automatically
   provision IP addresses/prefixes and support internetworking operation
   in a wide variety of use cases including Small Office, Home Office
   (SOHO) networks, Mobile Ad hoc Networks (MANETs), ISP networks,
   multi-organizational corporate networks and the interdomain core of
   the global Internet itself.  This document specifies a Virtual
   Enterprise Traversal (VET) abstraction for autoconfiguration and
   operation of nodes in enterprise networks.  VET can also be
   considered as version 2 of the Intra-Site Automatic Tunnel Addressing
   Protocol (i.e., "ISATAPv2").

Status of this Memo

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

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

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

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on September 9, 2010.

Copyright Notice



Templin                 Expires September 9, 2010               [Page 1]


Internet-Draft                     VET                        March 2010


   Copyright (c) 2010 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the BSD License.


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  6
   3.  Enterprise Network Characteristics . . . . . . . . . . . . . . 11
   4.  VET Interface Encapsulation/Decapsulation  . . . . . . . . . . 12
     4.1.  SEAL Encapsulation . . . . . . . . . . . . . . . . . . . . 13
     4.2.  Outer UDP Header Encapsulation . . . . . . . . . . . . . . 13
     4.3.  Outer IP Header Encapsulation  . . . . . . . . . . . . . . 13
     4.4.  Decapsulation  . . . . . . . . . . . . . . . . . . . . . . 14
   5.  Autoconfiguration  . . . . . . . . . . . . . . . . . . . . . . 14
     5.1.  Enterprise Router (ER) Autoconfiguration . . . . . . . . . 14
     5.2.  Enterprise Border Router (EBR) Autoconfiguration . . . . . 16
       5.2.1.  VET Interface Initialization . . . . . . . . . . . . . 16
       5.2.2.  PRL Discovery and Enterprise Identification  . . . . . 17
       5.2.3.  Provider-Aggregated (PA) EID Prefix
               Autoconfiguration  . . . . . . . . . . . . . . . . . . 18
       5.2.4.  Provider-Independent (PI) EID Prefix
               Autoconfiguration  . . . . . . . . . . . . . . . . . . 19
     5.3.  Enterprise Border Gateway (EBG) Autoconfiguration  . . . . 19
     5.4.  VET Host Autoconfiguration . . . . . . . . . . . . . . . . 20
   6.  Internetworking Operation  . . . . . . . . . . . . . . . . . . 20
     6.1.  Routing Protocol Participation . . . . . . . . . . . . . . 20
     6.2.  Address Selection  . . . . . . . . . . . . . . . . . . . . 21
     6.3.  VET interface Neighbor Discovery . . . . . . . . . . . . . 22
       6.3.1.  Router and Prefix Discovery  . . . . . . . . . . . . . 22
       6.3.2.  Next Hop Determination . . . . . . . . . . . . . . . . 26
       6.3.3.  Redirect Function  . . . . . . . . . . . . . . . . . . 27
       6.3.4.  Neighbor Unreachability Detection  . . . . . . . . . . 28
       6.3.5.  Reverse Path Forwarding Checks . . . . . . . . . . . . 29
       6.3.6.  IPv4 Neighbor Discovery  . . . . . . . . . . . . . . . 29
     6.4.  Generating Errors  . . . . . . . . . . . . . . . . . . . . 29
     6.5.  Processing Errors  . . . . . . . . . . . . . . . . . . . . 30
     6.6.  Mobility and Multihoming Considerations  . . . . . . . . . 30



Templin                 Expires September 9, 2010               [Page 2]


Internet-Draft                     VET                        March 2010


     6.7.  Multicast  . . . . . . . . . . . . . . . . . . . . . . . . 31
     6.8.  Service Discovery  . . . . . . . . . . . . . . . . . . . . 32
     6.9.  Enterprise Partitioning  . . . . . . . . . . . . . . . . . 33
     6.10. EBG Prefix State Recovery  . . . . . . . . . . . . . . . . 33
     6.11. Support for Legacy ISATAP Services . . . . . . . . . . . . 33
   7.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 33
   8.  Security Considerations  . . . . . . . . . . . . . . . . . . . 33
   9.  Related Work . . . . . . . . . . . . . . . . . . . . . . . . . 34
   10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 35
   11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 35
   12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 36
     12.1. Normative References . . . . . . . . . . . . . . . . . . . 36
     12.2. Informative References . . . . . . . . . . . . . . . . . . 37
   Appendix A.  Duplicate Address Detection (DAD) Considerations  . . 42
   Appendix B.  Link-Layer Multiplexing and Traffic Engineering . . . 42
   Appendix C.  Anycast Services  . . . . . . . . . . . . . . . . . . 45
   Appendix D.  Change Log  . . . . . . . . . . . . . . . . . . . . . 46
   Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 47

































Templin                 Expires September 9, 2010               [Page 3]


Internet-Draft                     VET                        March 2010


1.  Introduction

   Enterprise networks [RFC4852] connect hosts and routers over various
   link types (see [RFC4861], Section 2.2).  The term "enterprise
   network" in this context extends to a wide variety of use cases and
   deployment scenarios.  For example, an "enterprise" can be as small
   as a SOHO network, as complex as a multi-organizational corporation,
   or as large as the global Internet itself.  ISP networks are another
   example use case that fits well with the VET enterprise network
   model.  Mobile Ad hoc Networks (MANETs) [RFC2501] can also be
   considered as a challenging example of an enterprise network, in that
   their topologies may change dynamically over time and that they may
   employ little/no active management by a centralized network
   administrative authority.  These specialized characteristics for
   MANETs require careful consideration, but the same principles apply
   equally to other enterprise network scenarios.

   This document specifies a Virtual Enterprise Traversal (VET)
   abstraction for autoconfiguration and internetworking operation,
   where addresses of different scopes may be assigned on various types
   of interfaces with diverse properties.  Both IPv4 [RFC0791] and IPv6
   [RFC2460] are discussed within this context.  The use of standard
   DHCP [RFC2131] [RFC3315] and neighbor discovery [RFC0826] [RFC1256]
   [RFC4861] mechanisms is assumed unless otherwise specified.



























Templin                 Expires September 9, 2010               [Page 4]


Internet-Draft                     VET                        March 2010


                             Provider-Edge Interfaces
                                  x   x        x
                                  |   |        |
             +--------------------+---+--------+----------+    E
             |                    |   |        |          |    n
             |    I               |   |  ....  |          |    t
             |    n           +---+---+--------+---+      |    e
             |    t           |   +--------+      /|      |    r
             |    e  I   x----+   |  Host  |   I /*+------+--< p  I
             |    r  n        |   |Function|   n|**|      |    r  n
             |    n  t        |   +--------+   t|**|      |    i  t
             |    a  e   x----+              V e|**+------+--< s  e
             |    l  r      . |              E r|**|  .   |    e  r
             |       f      . |              T f|**|  .   |       f
             |    V  a      . |   +--------+   a|**|  .   |    I  a
             |    i  c      . |   | Router |   c|**|  .   |    n  c
             |    r  e   x----+   |Function|   e \*+------+--< t  e
             |    t  s        |   +--------+      \|      |    e  s
             |    u           +---+---+--------+---+      |    r
             |    a               |   |  ....  |          |    i
             |    l               |   |        |          |    o
             +--------------------+---+--------+----------+    r
                                  |   |        |
                                  x   x        x
                           Enterprise-Edge Interfaces

               Figure 1: Enterprise Router (ER) Architecture

   Figure 1 above depicts the architectural model for an Enterprise
   Router (ER).  As shown in the figure, an ER may have a variety of
   interface types including enterprise-edge, enterprise-interior,
   provider-edge, internal-virtual, as well as VET interfaces used for
   encapsulating inner network layer protocol packets for transmission
   over outer IP networks.  The different types of interfaces are
   defined, and the autoconfiguration mechanisms used for each type are
   specified.  This architecture applies equally for MANET routers, in
   which enterprise-interior interfaces correspond to the wireless
   multihop radio interfaces typically associated with MANETs.  Out of
   scope for this document is the autoconfiguration of provider
   interfaces, which must be coordinated in a manner specific to the
   service provider's network.

   Enterprise networks must have a means for supporting both Provider-
   Independent (PI) and Provider-Aggregated (PA) addressing.  This is
   especially true for enterprise network scenarios that involve
   mobility and multihoming.  Also in scope are ingress filtering for
   multihomed sites, adaptation based on authenticated ICMP feedback
   from on-path routers, effective tunnel path MTU mitigations, and



Templin                 Expires September 9, 2010               [Page 5]


Internet-Draft                     VET                        March 2010


   routing scaling suppression.  The VET specification provides
   adaptable mechanisms that address these and other issues in a wide
   variety of enterprise network use cases.

   VET is a direct descendant of 6over4 [RFC2529] and the Intra-Site
   Automatic Tunnel Addressing Protocol (ISATAP) [RFC5214], and can be
   considered as version 2 of the ISATAP protocol (i.e., "ISATAPv2").
   VET works in conjunction with the Subnetwork Encapsulation and
   Adaptation Layer (SEAL) [I-D.templin-intarea-seal], and is also
   compatible with additional encapsulations such as IPsec [RFC4301].
   VET further defines mechanisms that are very similar in nature to
   those specified for IPv6 operation over Non-Broadcast Multiple Access
   (NBMA) networks [RFC2491].

   VET and its associated technologies are functional building blocks
   for a new Internetworking architecture based on the Internet Routing
   Overlay Network (IRON) [I-D.templin-iron] and Routing and Addressing
   in Networks with Global Enterprise Recursion (RANGER) [RFC5720]
   [I-D.russert-rangers].  Many of the VET principles can be traced to
   the deliberations of the ROAD group in January 1992, and also to
   still earlier initiatives including NIMROD [RFC1753] and the Catenet
   model for internetworking [CATENET] [IEN48] [RFC2775].  [RFC1955]
   captures the high-level architectural aspects of the ROAD group
   deliberations in a "New Scheme for Internet Routing and Addressing
   (ENCAPS) for IPNG".

   VET is related to the present-day activities of the IETF INTAREA,
   AUTOCONF, DHC, IPv6, MANET, and V6OPS working groups, as well as the
   IRTF RRG working group.


2.  Terminology

   The mechanisms within this document build upon the fundamental
   principles of IP encapsulation.  The term "inner" refers to the
   innermost {address, protocol, header, packet, etc.} *before*
   encapsulation, and the term "outer" refers to the outermost {address,
   protocol, header, packet, etc.} *after* encapsulation.  VET also uses
   the Subnetwork Encapsulation and Adaptation Layer (SEAL)
   [I-D.templin-intarea-seal] as a "mid-layer" encapsulation between the
   inner and outer headers, and also allows for inclusion of other mid-
   layer encapsulations including IPSec [RFC4301].

   The terminology in the normative references apply; the following
   terms are defined within the scope of this document:






Templin                 Expires September 9, 2010               [Page 6]


Internet-Draft                     VET                        March 2010


   Virtual Enterprise Traversal (VET)
      an abstraction that uses IP encapsulation to create overlays for
      traversing enterprise networks.  VET can be considered as version
      2 of the ISATAP protocol (i.e., "ISATAPv2").

   enterprise network
      the same as defined in [RFC4852].  An enterprise network is also
      understood to refer to a cooperative networked collective of
      devices within a common IP routing and addressing region and with
      a commonality of business, social, political, etc., interests.
      Minimally, the only commonality of interest in some enterprise
      network scenarios may be the cooperative provisioning of
      connectivity itself.

   subnetwork
      the same as defined in [RFC3819].

   site
      a logical and/or physical grouping of interfaces that connect a
      topological area less than or equal to an enterprise network in
      scope.  A site within an enterprise network can, in some sense, be
      considered as an enterprise unto itself.

   Mobile Ad hoc Network (MANET)
      a connected topology of mobile or fixed routers that maintain a
      routing structure among themselves over dynamic links.  The
      characteristics of MANETs are defined in [RFC2501], Section 3, and
      a wide variety of MANETs share common properties with enterprise
      networks.

   enterprise/site/MANET
      throughout the remainder of this document, the term "enterprise
      network" is used to collectively refer to any of {enterprise,
      site, MANET}, i.e., the VET mechanisms and operational principles
      can be applied to enterprises, sites, and MANETs of any size or
      shape.

   Enterprise Router (ER)
      As depicted in Figure 1, an Enterprise Router (ER) is a fixed or
      mobile router that comprises a router function, a host function,
      one or more enterprise-interior interfaces, and zero or more
      internal virtual, enterprise-edge, provider-edge, and VET
      interfaces.  At a minimum, an ER forwards outer IP packets over
      one or more sets of enterprise-interior interfaces, where each set
      connects to a distinct enterprise network.






Templin                 Expires September 9, 2010               [Page 7]


Internet-Draft                     VET                        March 2010


   Enterprise Border Router (EBR)
      an ER that connects edge networks to the enterprise network and/or
      connects multiple enterprise networks together.  An EBR is a
      tunnel endpoint router, and it configures a separate VET interface
      over each set of enterprise-interior interfaces that connect the
      EBR to each distinct enterprise network.  In particular, an EBR
      may configure multiple VET interfaces - one for each distinct
      enterprise network.  All EBRs are also ERs.

   Enterprise Border Gateway (EBG)
      an EBR that connects VET interfaces configured over child
      enterprise networks to a provider network - either directly via a
      provider-edge interface or indirectly via another VET interface
      configured over a parent enterprise network.  EBRs may act as EBGs
      on some VET interfaces and as ordinary EBRs on other VET
      interfaces.  All EBGs are also EBRs.

   VET host
      any node (host or router) that configures a VET interface for
      host-operation only.  Note that a node may configure some of its
      VET interfaces as host interfaces and others as router interfaces.

   VET node
      any node (host or router) that configures and uses a VET
      interface.

   enterprise-interior interface
      an ER's attachment to a link within an enterprise network.
      Packets sent over enterprise-interior interfaces may be forwarded
      over multiple additional enterprise-interior interfaces within the
      enterprise network before they are forwarded via an enterprise-
      edge interface, provider-edge interface, or a VET interface
      configured over a different enterprise network.  Enterprise-
      interior interfaces connect laterally within the IP network
      hierarchy.

   enterprise-edge interface
      an EBR's attachment to a link (e.g., an Ethernet, a wireless
      personal area network, etc.) on an arbitrarily complex edge
      network that the EBR connects to an enterprise network and/or
      provider network.  Enterprise-edge interfaces connect to lower
      levels within the IP network hierarchy.

   provider-edge interface
      an EBR's attachment to the Internet or to a provider network via
      which the Internet can be reached.  Provider-edge interfaces
      connect to higher levels within the IP network hierarchy.




Templin                 Expires September 9, 2010               [Page 8]


Internet-Draft                     VET                        March 2010


   internal-virtual interface
      an interface that is internal to an EBR and does not in itself
      directly attach to a tangible physical link, e.g., an Ethernet
      cable.  Examples include a loopback interface, a virtual private
      network interface, or some form of tunnel interface.

   VET link
      a virtual link that uses automatic tunneling to create an overlay
      network that spans an enterprise-interior routing region.  VET
      links can be segmented (e.g., by filtering gateways) into multiple
      distinct segments that can be joined together by bridges or IP
      routers the same as for any link.  Bridging would view the
      multiple (bridged) segments as a single VET link, whereas IP
      routing would view the multiple segments as multiple distinct VET
      links.  VET link segments can further be partitioned into multiple
      logical areas, where each area is identified by a distinct set of
      EBGs.

      VET links in non-multicast enterprise networks are Non-Broadcast,
      Multiple Access (NBMA); VET links in enterprise networks that
      support multicast are multicast capable.

   VET interface
      a VET node's attachment to a VET link.  VET nodes configure each
      VET interface over a set of underlying interfaces that connect to
      an enterprise-interior routing region spanned by a single VET
      link.  When there are multiple distinct VET links (each with their
      own distinct set of underlying interfaces), the VET node
      configures separate VET interfaces for each link.

      The VET interface encapsulates each inner packet in any mid-layer
      headers followed by an outer IP header, then forwards the packet
      on an underlying interface such that the Time to Live (TTL) - Hop
      Limit in the inner header is not decremented as the packet
      traverses the link.  The VET interface therefore presents an
      automatic tunneling abstraction that represents the link as a
      single IP hop.

   VET address
      an IPv6 address assigned to a VET interface that embeds an IPv4
      address within the IPv6 address interface identifier.  VET
      addresses are formed exactly as specified for ISATAP addresses in
      Sections 6.1 and 6.2 of [RFC5214].

   Provider-Independent (PI) prefix
      an IPv6 prefix (e.g., 2001:DB8::/48) or IPv4 prefix (e.g.,
      192.0.2/24) that is either self-generated by an EBR or delegated
      to an EBR by a registry.



Templin                 Expires September 9, 2010               [Page 9]


Internet-Draft                     VET                        March 2010


   Provider Aggregated (PA) prefix
      an IPv6 or IPv4 prefix that is delegated to an EBR by a provider
      network.

   Routing Locator (RLOC)
      a non-link-local IPv4 or IPv6 address taken from a PI/PA prefix
      that can appear in enterprise-interior and/or interdomain routing
      tables.  Global-scope RLOC prefixes are delegated to specific
      enterprise networks and routable within both the enterprise-
      interior and interdomain routing regions.  Enterprise-local-scope
      RLOC prefixes (e.g., IPv6 Unique Local Addresses [RFC4193], IPv4
      privacy addresses [RFC1918], etc.) are self-generated by
      individual enterprise networks and routable only within the
      enterprise-interior routing region.

      ERs use RLOCs for operating the enterprise-interior routing
      protocol and for next-hop determination in forwarding packets
      addressed to other RLOCs.  End systems can use RLOCs as addresses
      for end-to-end communications between peers within the same
      enterprise network.  VET interfaces treat RLOCs as *outer* IP
      addresses during encapsulation.

   Endpoint Interface iDentifier (EID)
      a network layer address taken from a PI/PA prefix that is routable
      within an enterprise-edge or VET overlay network scope, and may
      also appear in enterprise-interior and/or interdomain mapping
      tables.  EID prefixes are separate and distinct from any RLOC
      prefix space.

      Edge network routers use EIDs for operating the enterprise-edge or
      VET overlay network routing protocol and for next-hop
      determination in forwarding packets addressed to other EIDs.  End
      systems can use EIDs as addresses for end-to-end communications
      between peers either within the same enterprise network or within
      different enterprise networks.  VET interfaces treat EIDs as
      *inner* network layer addresses during encapsulation.

   The following additional acronyms are used throughout the document:

   CGA - Cryptographically Generated Address
   DHCP(v4, v6) - Dynamic Host Configuration Protocol
   ECMP - Equal Cost Multi Path
   FIB - Forwarding Information Base
   ISATAP - Intra-Site Automatic Tunnel Addressing Protocol
   NBMA - Non-Broadcast, Multiple Access
   ND - Neighbor Discovery
   PIO - Prefix Information Option
   PRL - Potential Router List



Templin                 Expires September 9, 2010              [Page 10]


Internet-Draft                     VET                        March 2010


   PRLNAME - Identifying name for the PRL (default is "isatapv2")
   RIO - Route Information Option
   RPF - Reverse Path Forwarding
   RS/RA - IPv6 ND Router Solicitation/Advertisement
   SEAL - Subnetwork Encapsulation and Adaptation Layer
   SLAAC - IPv6 StateLess Address AutoConfiguation


3.  Enterprise Network Characteristics

   Enterprise networks consist of links that are connected by Enterprise
   Routers (ERs) as depicted in Figure 1.  ERs typically participate in
   a routing protocol over enterprise-interior interfaces to discover
   routes that may include multiple Layer 2 or Layer 3 forwarding hops.
   Enterprise Border Routers (EBRs) are ERs that connect edge networks
   to the enterprise network and/or join multiple enterprise networks
   together.  Enterprise Border Gateways (EBGs) are EBRs that connect
   enterprise networks to provider networks.

   Conceptually, an ER embodies both a host function and router
   function.  The host function supports Endpoint Interface iDentifier
   (EID)-based and/or Routing LOCator (RLOC)-based communications
   according to the weak end-system model [RFC1122].  The router
   function engages in the enterprise-interior routing protocol,
   connects any of the ER's edge networks to the enterprise networks,
   and may also connect the enterprise network to provider networks (see
   Figure 1).

   An enterprise network may be as simple as a small collection of ERs
   and their attached edge networks; an enterprise network may also
   contain other enterprise networks and/or be a subnetwork of a larger
   enterprise network.  An enterprise network may further encompass a
   set of branch offices and/or nomadic hosts connected to a home office
   over one or several service providers, e.g., through Virtual Private
   Network (VPN) tunnels.  Finally, an enterprise network may contain
   many internal partitions that are logical or physical groupings of
   nodes for the purpose of load balancing, organizational separation,
   etc.  In that case, each internal partition resembles an individual
   segment of a bridged LAN.

   Enterprise networks that comprise link types with sufficiently
   similar properties (e.g., Layer 2 (L2) address formats, maximum
   transmission units (MTUs), etc.) can configure a sub-IP layer routing
   service such that IP sees the network as an ordinary shared link the
   same as for a (bridged) campus LAN.  In that case, a single IP hop is
   sufficient to traverse the network without need for encapsulation.
   Enterprise networks that comprise link types with diverse properties
   and/or configure multiple IP subnets must also provide an enterprise-



Templin                 Expires September 9, 2010              [Page 11]


Internet-Draft                     VET                        March 2010


   interior routing service that operates as an IP layer mechanism.  In
   that case, multiple IP hops may be necessary to traverse the network
   such that care must be taken to avoid multi-link subnet issues
   [RFC4903].

   In addition to other interface types, VET nodes configure VET
   interfaces that view all other nodes on the VET link as single-hop
   neighbors.  VET nodes configure a separate VET interface for each
   distinct VET link to which they connect, and discover other EBRs on
   the link that can be used for forwarding packets to off-link
   destinations.

   For each distinct enterprise network, a trust basis must be
   established and consistently applied.  For example, in enterprise
   networks in which EBRs establish symmetric security associations,
   mechanisms such as IPsec [RFC4301] can be used to assure
   authentication and confidentiality.  In other enterprise network
   scenarios, asymmetric securing mechanisms such as SEcure Neighbor
   Discovery (SEND) [RFC3971] may be necessary to authenticate exchanges
   based on trust anchors.  Still other enterprise networks may have
   sufficient infrastructure trust basis (e.g., through proper
   deployment of filtering gateways at enterprise borders) and may not
   require nodes to implement such additional mechanisms.

   Finally, in enterprise networks with a centralized management
   structure (e.g., a corporate campus network), an overlay routing/
   mapping service and a synchronized set of EBGs can provide sufficient
   infrastructure support for virtual enterprise traversal.  In that
   case, the EBGs can provide a "default mapper" [I-D.jen-apt] service
   used for short-term packet forwarding until EBR neighbor
   relationships can be established.  In enterprise networks with a
   distributed management structure (e.g., disconnected MANETs), peer-
   to-peer coordination between the EBRs themselves may be required.
   Recognizing that various use cases will entail a continuum between a
   fully distributed and fully centralized approach, the following
   sections present the mechanisms of Virtual Enterprise Traversal as
   they apply to a wide variety of scenarios.


4.  VET Interface Encapsulation/Decapsulation

   VET interfaces encapsulate inner network layer packets in any mid-
   layer headers and trailers (e.g., IPsec [RFC4301]) followed by a SEAL
   header followed by an outer UDP header (if necessary) followed by an
   outer IP header.  Following all encapsulations, the VET interface
   submits the encapsulated packet to the outer IP forwarding engine for
   transmission on an underlying interface.  The following sections
   provide father details on encapsulation:



Templin                 Expires September 9, 2010              [Page 12]


Internet-Draft                     VET                        March 2010


4.1.  SEAL Encapsulation

   Following mid-layer encapsulation, VET interfaces encapsulate each
   mid-layer packet using SEAL encapsulation as specified in
   [I-D.templin-intarea-seal].  The VET interface sets the 'Next Header'
   value in the SEAL header to the IP protocol number associated with
   the mid-layer encapsulation (or the IP protocol number of the inner
   network layer if no mid-layer encapsulation is used).

   Note that when a VET interface sends a SEAL-encapsulated packet to a
   node that does not understand the SEAL protocol, it will receive an
   ICMP "protocol unreachable" message.

4.2.  Outer UDP Header Encapsulation

   Following mid-layer and SEAL encapsulation, the VET interface adds an
   outer UDP header if necessary.

   For VET links that traverse underlying IPv4 networks that may use
   Equal Cost MultiPath (ECMP) routing, Link Aggregation Gateways
   (LAGs), etc., the VET interface encapsulates the packet in an outer
   UDP header.  It sets the UDP destination port number to the port
   number reserved for SEAL (see: [I-D.templin-intarea-seal]) and sets
   the UDP checksum field to zero.  Next, it sets the UDP source port
   number to a hash calculated over the inner network layer
   {destination, source} values or (optionally) over the inner network
   layer {dest addr, source addr, protocol, dest port, source port}
   values.  The VET interface uses a hash function of its own choosing,
   but it must be consistent in the manner in which the hash is applied.

   For VET links that traverse underlying IPv6 enterprise networks that
   may use ECMP routing or LAGs, the VET interface does not add an outer
   UDP header but rather sets the flow label value in the outer IPv6
   header the same as described for the UDP source port number above.
   This method is also described in [I-D.carpenter-flow-ecmp].

   Note that if a VET interface sends a SEAL/UDP-encapsulated packet to
   a node that does not recognize the SEAL UDP port number, it will
   receive an ICMP "port unreachable" message.

4.3.  Outer IP Header Encapsulation

   Following outer UDP encapsulation (if necessary), the VET interface
   adds an outer IP header.  Outer IP header construction is the same as
   specified for ordinary IP encapsulation (e.g., [RFC2003], [RFC2473],
   [RFC4213], etc.) except that the "TTL/Hop Limit", "Type of Service/
   Traffic Class" and "Congestion Experienced" values in the inner
   network layer header are copied into the corresponding fields in the



Templin                 Expires September 9, 2010              [Page 13]


Internet-Draft                     VET                        March 2010


   outer IP header.  Also, the IP protocol number is set to the protocol
   number for UDP (if UDP encapsulation was used) or is otherwise set to
   the SEAL protocol number [I-D.templin-intarea-seal].

4.4.  Decapsulation

   When a VET interface receives an encapsulated packet, it does not
   immediately discard the encapsulating headers.  Instead, if the
   packet will be forwarded from the receiving VET interface into
   another VET interface, the "TTL/Hop Limit", "Type of Service/Traffic
   Class" and "Congestion Experienced" values in the outer IP header
   received over the first VET interface are copied into the
   corresponding fields in the outer IP header to be sent over the
   second VET interface (i.e., the values are transferred between outer
   headers and *not* copied from the inner network layer header).  This
   is true even if the packet is forwarded out the same VET interface
   that it arrived on, and necessary to support diagnostic functions and
   avoid looping.

   During decapsulation when the next-hop is via a non-VET interface,
   the "Congestion Experienced" value in the outer IP header is copied
   into the corresponding field in the inner network layer header.  No
   other values from the outer IP header are copied into the inner
   header.


5.  Autoconfiguration

   ERs, EBRs, EBGs, and VET hosts configure themselves for operation as
   specified in the following subsections.

5.1.  Enterprise Router (ER) Autoconfiguration

   ERs configure enterprise-interior interfaces and engage in any
   routing protocols over those interfaces.

   When an ER joins an enterprise network, it first configures an IPv6
   link-local address on each enterprise-interior interface and
   configures an IPv4 link-local address on each enterprise-interior
   interface that requires an IPv4 link-local capability.  IPv6 link-
   local address generation mechanisms include Cryptographically
   Generated Addresses (CGAs) [RFC3972], IPv6 Privacy Addresses
   [RFC4941], StateLess Address AutoConfiguration (SLAAC) using EUI-64
   interface identifiers [RFC4291] [RFC4862], etc.  The mechanisms
   specified in [RFC3927] provide an IPv4 link-local address generation
   capability.

   Next, the ER configures one or more RLOCs and engages in any routing



Templin                 Expires September 9, 2010              [Page 14]


Internet-Draft                     VET                        March 2010


   protocols on its enterprise-interior interfaces.  The ER can
   configure RLOCs via explicit management, DHCP autoconfiguration,
   pseudo-random self-generation from a suitably large address pool, or
   through an alternate autoconfiguration mechanism.  The ER may
   optionally configure and assign a separate RLOC for each underlying
   interface, or it may configure only a single RLOC and assign it to a
   VET interface configured over the underlying interfaces (see Section
   5.2.1).  In the latter case, the ER can use the VET interface for
   link layer multiplexing and traffic engineering purposes as specified
   in Appendix B.

   Alternatively (or in addition), the ER can request RLOC prefix
   delegations via an automated prefix delegation exchange over an
   enterprise-interior interface and can assign the prefix(es) on
   enterprise-edge interfaces.  Note that in some cases, the same
   enterprise-edge interfaces may assign both RLOC and EID addresses if
   there is a means for source address selection.  In other cases (e.g.,
   for separation of security domains), RLOCs and EIDs must be assigned
   on separate sets of enterprise-edge interfaces.

   Self-generation of RLOCs for IPv6 can be from a large public or
   local-use IPv6 address range (e.g., IPv6 Unique Local Addresses
   [RFC4193]).  Self-generation of RLOCs for IPv4 can be from a large
   public or local-use IPv4 address range (e.g., [RFC1918]).  When self-
   generation is used alone, the ER must continuously monitor the RLOCs
   for uniqueness, e.g., by monitoring the enterprise-interior routing
   protocol.

   DHCP generation of RLOCs may require support from relays within the
   enterprise network.  For DHCPv6, relays that do not already know the
   RLOC of a server within the enterprise network forward requests to
   the 'All_DHCP_Servers' site-scoped IPv6 multicast group [RFC3315].
   For DHCPv4, relays that do not already know the RLOC of a server
   within the enterprise network forward requests to the site-scoped
   IPv4 multicast group address 'All_DHCPv4_Servers', which should be
   set to 239.255.2.1 unless an alternate multicast group for the site
   is known.  DHCPv4 servers that delegate RLOCs should therefore join
   the 'All_DHCPv4_Servers' multicast group and service any DHCPv4
   messages received for that group.

   A combined approach using both DHCP and self-generation is also
   possible when the ER configures both a DHCP client and relay that are
   connected, e.g., via a pair of back-to-back connected Ethernet
   interfaces, a tun/tap interface, a loopback interface, inter-process
   communication, etc.  The ER first self-generates a temporary RLOC
   used only for the purpose of procuring an actual RLOC taken from a
   disjoint addressing range.  The ER then engages in the enterprise-
   interior routing protocol and performs a DHCP client/relay exchange



Templin                 Expires September 9, 2010              [Page 15]


Internet-Draft                     VET                        March 2010


   using the temporary RLOC as the address of the relay.  When the DHCP
   server delegates an actual RLOC address/prefix, the ER abandons the
   temporary RLOC and re-engages in the enterprise-interior routing
   protocol using an RLOC taken from the delegation.

   In some enterprise network use cases (e.g., MANETs), assignment of
   RLOCs on enterprise-interior interfaces as singleton addresses (i.e.,
   as addresses with /32 prefix lengths for IPv4, or as addresses with
   /128 prefix lengths for IPv6) may be necessary to avoid multi-link
   subnet issues.  In other use cases, assignment of an RLOC on a VET
   interface as specified in Appendix B can provide link layer
   multiplexing and traffic engineering over multiple underlying
   interfaces using only a single IP address.

5.2.  Enterprise Border Router (EBR) Autoconfiguration

   EBRs are ERs that configure VET interfaces over distinct sets of
   underlying interfaces belonging to the same enterprise network; an
   EBR can connect to multiple enterprise networks, in which case it
   would configure multiple VET interfaces.  In addition to the ER
   autoconfiguration procedures specified in Section 5.1, EBRs perform
   the following autoconfiguration operations.

5.2.1.  VET Interface Initialization

   EBRs configure a VET interface over a set of underlying interfaces
   belonging to the same enterprise network such that all other VET
   nodes in the network appear as single-hop neighbors through the use
   of encapsulation.  After the EBR configures a VET interface, it
   initializes the interface and assigns an IPv6 link-local address and
   an IPv4 link-local address if necessary.  The EBR also associates an
   RLOC obtained as specified in Section 5.1 with the VET interface to
   serve as the source address for outer IP packets.

   When IPv6 and IPv4 are used as the inner/outer protocols
   (respectively), the EBR autoconfigures an IPv6 link-local VET address
   on the VET interface to support packet forwarding and operation of
   the IPv6 neighbor discovery protocol.  The link-local VET address is
   formed exactly as specified in Sections 6.1 and 6.2 of [RFC5214].
   The link-local address need not be checked for uniqueness since the
   IPv4 RLOC embedded in the address itself is managed for uniqueness
   (see Section 5.1).

   Link-local address configuration for other inner/outer protocol
   combinations is through administrative configuration or through an
   unspecified alternate method.  However, link-local address
   configuration for other inner/outer protocol combinations may not be
   necessary if a non-link-local address can be configured through other



Templin                 Expires September 9, 2010              [Page 16]


Internet-Draft                     VET                        March 2010


   means (e.g., administrative configuration, DHCP, etc.).

   After the EBR initializes a VET interface, it can communicate with
   other VET nodes as single-hop neighbors on the VET link from the
   viewpoint of the inner protocol.  The EBR can also configure the VET
   interface for link-layer multiplexing and traffic engineering
   purposes as specified in Appendix B.

5.2.2.  PRL Discovery and Enterprise Identification

   Following VET interface initialization, the EBR next discovers a
   Potential Router List (PRL) used to track the RLOC addresses of EBGs.
   The PRL can be discovered through information conveyed in the
   enterprise-interior routing protocol, through the mechanisms outlined
   in Section 8.3.2 of [RFC5214], through a DHCP option
   [I-D.templin-isatap-dhcp], etc.  In multicast-capable enterprise
   networks, EBRs can also listen for advertisements on the 'rasadv'
   [RASADV] multicast group address.

   Whether or not routing information is available, the EBR can discover
   the list of EBGs by resolving an identifying name for the PRL
   ('PRLNAME') formed as 'hostname.domainname', where 'hostname' is an
   enterprise-specific name string and 'domainname' is an enterprise-
   specific DNS suffix.  The EBR discovers 'PRLNAME' through manual
   configuration, the DHCP Domain Name option [RFC2132], 'rasadv'
   protocol advertisements, link-layer information (e.g., an IEEE 802.11
   Service Set Identifier (SSID)), or through some other means specific
   to the enterprise.

   In the absence of other information, the EBR sets the 'hostname'
   component of 'PRLNAME' to "isatapv2" and sets the 'domainname'
   component to the enterprise-specific DNS suffix "example.com" (e.g.,
   as "isatapv2.example.com").  Note that this naming convention is
   intentionally distinct from the convention specified in [RFC5214],
   and is used by the EBR to distinguish between ISATAP and VET virtual
   interfaces.

   The global Internet interdomain routing core represents a specific
   example of an enterprise network scenario, albeit on an enormous
   scale.  The 'PRLNAME' assigned to the global Internet interdomain
   routing core is "isatapv2.net".  Isolated enterprise networks that do
   not connect to the outside world may have no enterprise-specific DNS
   suffix.  In that case, the 'PRLNAME' consists only of the 'hostname'
   component (e.g., "isatapv2").

   After discovering 'PRLNAME', the EBR resolves the name into a list of
   RLOC addresses through a name service lookup.  For centrally managed
   enterprise networks, the EBR resolves 'PRLNAME' using an enterprise-



Templin                 Expires September 9, 2010              [Page 17]


Internet-Draft                     VET                        March 2010


   local name service (e.g., the DNS).  For enterprises with a
   distributed management structure, the EBR resolves 'PRLNAME' using
   Link-Local Multicast Name Resolution (LLMNR) [RFC4795] over the VET
   interface.  In that case, all EBGs in the PRL respond to the LLMNR
   query, and the EBR accepts the union of all responses.

   Each distinct enterprise network must have a unique identity that
   EBRs can use to uniquely discern their enterprise affiliations.
   'PRLNAME' as well as the RLOCs of EBGs in the PRL serve as an
   identifier for the network.

5.2.3.  Provider-Aggregated (PA) EID Prefix Autoconfiguration

   EBRs can acquire Provider-Aggregated (PA) EID prefixes through
   autoconfiguration exchanges with EBGs over VET interfaces, where each
   EBG may be configured as either a DHCP relay or DHCP server.

   For IPv4 EIDs, the EBR acquires prefixes via an automated IPv4 prefix
   delegation exchange, explicit management, etc.

   For IPv6 EIDs, the EBR acquires prefixes via DHCPv6 Prefix Delegation
   exchanges.  In particular, the EBR (acting as a requesting router)
   can use DHCPv6 prefix delegation [RFC3633] over the VET interface to
   obtain IPv6 EID prefixes from the server (acting as a delegating
   router).

   The EBR obtains prefixes using either a 2-message or 4-message DHCPv6
   exchange [RFC3315].  For example, to perform the 2-message exchange,
   the EBR's DHCPv6 client forwards a Solicit message with an IA_PD
   option to its DHCPv6 relay, i.e., the EBR acts as a combined client/
   relay (see Section 5.1).  The relay then forwards the message over
   the VET interface to an EBG, which either services the request or
   relays it further.  The forwarded Solicit message will elicit a reply
   from the server containing PA IPv6 prefix delegations.

   The EBR can also propose a specific prefix to the DHCPv6 server per
   Section 7 of [RFC3633].  The server will check the proposed prefix
   for consistency and uniqueness, then return it in the reply to the
   EBR if it was able to perform the delegation.

   After the EBR receives PA prefix delegations, it can provision the
   prefixes on enterprise-edge interfaces as well as on other VET
   interfaces for which it is configured as an EBG.  It can also
   provision the prefixes on enterprise-interior interfaces to service
   any hosts attached to the link.

   The PA prefix delegations remain active as long as the EBR continues
   to issue DHCP renewals over the VET interface before lease lifetimes



Templin                 Expires September 9, 2010              [Page 18]


Internet-Draft                     VET                        March 2010


   expire.  The lease lifetime also keeps the delegation state active
   even if communications between the EBR and DHCP server are disrupted
   for a period of time (e.g., due to an enterprise network partition,
   power failure, etc.).

5.2.4.  Provider-Independent (PI) EID Prefix Autoconfiguration

   Independent of any PA prefixes, EBRs can acquire and use Provider-
   Independent (PI) EID prefixes that are self-configured (e.g., using
   [RFC4193], etc.) and/or delegated by a registration authority (e.g.,
   through a regional Internet registry, through a different provider,
   through a centrally-assigned unique local address delegation
   authority [I-D.hain-ipv6-ulac], etc.).  When an EBR acquires a PI
   prefix, it must also obtain credentials that it can use to prove
   ownership when it registers the prefixes (see Section 6.3 and
   Section 6.3.6).

   After the EBR receives PI prefix delegations, it can provision the
   prefixes on enterprise-edge interfaces as well as on other VET
   interfaces for which it is configured as an EBG.  It can also
   provision the prefixes on enterprise-interior interfaces to service
   any hosts attached to the link.

   The minimum-sized IPv6 PI prefix that an EBR may acquire is a /56.

   The minimum-sized IPv4 PI prefix that an EBR may acquire is a /24.

5.3.  Enterprise Border Gateway (EBG) Autoconfiguration

   EBGs are EBRs that connect child enterprise networks to provider
   networks via provider-edge interfaces and/or via VET interfaces
   configured over parent enterprise networks.  EBGs autoconfigure their
   provider-edge interfaces in a manner that is specific to the provider
   connections, and they autoconfigure their VET interfaces that were
   configured over parent enterprise networks using the EBR
   autoconfiguration procedures specified in Section 5.2.

   For each of its VET interfaces configured over a child enterprise
   network, the EBG initializes the interface the same as for an
   ordinary EBR (see Section 5.2.1).  It must then arrange to add one or
   more of its RLOCs associated with the child enterprise network to the
   PRL as specified in [RFC5214], Section 9.  In particular, for each
   VET interface configured over a child enterprise network the EBG adds
   the RLOCs to name service resource records for 'PRLNAME'
   ("isatapv2.example.com", by default).

   EBGs respond to LLMNR queries for 'PRLNAME' on VET interfaces
   configured over child enterprise networks with a distributed



Templin                 Expires September 9, 2010              [Page 19]


Internet-Draft                     VET                        March 2010


   management structure.

   EBGs configure a DHCP relay/server on VET interfaces configured over
   child enterprise networks that require DHCP services.

   To avoid looping, EBGs must not configure a default route on a VET
   interface configured over a child enterprise network interface.

5.4.  VET Host Autoconfiguration

   Nodes that cannot be attached via an EBR's enterprise-edge interface
   (e.g., nomadic laptops that connect to a home office via a Virtual
   Private Network (VPN)) can instead be configured for operation as a
   simple host connected to the VET interface.  Such VET hosts perform
   the same VET interface initialization and border gateway discovery
   procedures as specified for EBRs in Section 5.2.1, but they configure
   their VET interfaces as host interfaces (and not router interfaces).
   Note also that a node may be configured as a host on some VET
   interfaces and as an EBR/EBG on other VET interfaces.


6.  Internetworking Operation

   Following the autoconfiguration procedures specified in Section 5,
   ERs, EBRs, EBGs, and VET hosts engage in normal internetworking
   operations as discussed in the following sections.

6.1.  Routing Protocol Participation

   ERs engage in any intra-enterprise routing protocols over enterprise-
   interior interfaces to discover routing information for forwarding IP
   packets with RLOC addresses.  EBRs can additionally engage in any
   inter-enterprise routing protocols over VET, enterprise-edge and
   provider-edge interfaces to discover routing information for
   forwarding IP packets with EID addresses.  Note that the EID-based
   inter-enterprise IP routing domains are separate and distinct from
   any RLOC-based enterprise interior IP routing domains.

   Routing protocol participation on non-multicast VET interfaces uses
   the NBMA interface model, e.g., in the same manner as for OSPF over
   NBMA interfaces [RFC5340], while routing protocol participation on
   multicast-capable VET interfaces uses the standard multicast
   interface model.  EBRs use the list of EBGs in the PRL (see:
   Section 5.2.2) as an initial list of neighbors for inter-enterprise
   routing protocol participation.

   EBRs that connect enterprise networks to the global Internet DFZ
   configure EID-based inter-enterprise routing using the BGP [RFC4271]



Templin                 Expires September 9, 2010              [Page 20]


Internet-Draft                     VET                        March 2010


   over a VET link that spans the entire DFZ.  Each such EBR peers with
   a set of neighboring routers on the VET link, where the set is
   determined through peering arrangements the same as for the current
   global BGP.  Note however that this EID-based overlay BGP instance is
   separate and distinct from the current RLOC-based BGP instance;
   therefore, the set of peers used for the EID-based and RLOC-based
   instances need not be the same.

   Each EBR connected to the VET link spanning the global Internet DFZ
   maintains a full routing information base (RIB) of EID-based
   prefixes.  In order to limit scaling, only highly-aggregated EID
   prefixes similar to the Virtual Prefix (VP) principles of Virtual
   Aggregation (VA) [I-D.ietf-grow-va] are included in the RIB.
   Specifically, only VP prefixes (e.g., PA prefixes delegated to the
   top-level of an ISP or enterprise network) are maintained in the RIB
   while more-specific prefixes (e.g., PI prefixes delegated to small
   sites) are not.  More-specific prefixes will instead be inserted into
   selective forwarding information bases (FIBs) on-demand of traffic
   flow such that only those routers that require the prefixes will
   insert them into their FIBs.

   Further details on routing protocol operation over VET interfaces is
   discussed in "The Internet Routing Overlay Network (IRON)"
   [I-D.templin-iron].

6.2.  Address Selection

   When permitted by policy and supported by enterprise interior
   routing, end systems can avoid VET interface encapsulation through
   communications that directly invoke the outer IP protocol using RLOC
   addresses instead of EID addresses for end-to-end communications.
   For example, an enterprise network that provides native IPv4 intra-
   network services can provide continued support for native IPv4
   communications even when encapsulated IPv6 services are available for
   inter-enterprise communications.  In other enterprise network
   scenarios, the use of EID-based communications (i.e., instead of
   RLOC-based communications) may be necessary and/or beneficial to
   support address scaling, NAT traversal avoidance, security domain
   separation, site multihoming, traffic engineering, etc. .

   End systems can use source address selection rules (e.g., based on
   name service information) to determine whether to use EID-based or
   RLOC-based addressing.  The remainder of this section discusses
   internetworking operation for EID-based communications using the VET
   interface abstraction.






Templin                 Expires September 9, 2010              [Page 21]


Internet-Draft                     VET                        March 2010


6.3.  VET interface Neighbor Discovery

   The following sections discuss IPv6 Neighbor Discovery (ND)
   considerations for VET interfaces for the case of IPv6 as the inner
   network layer protocol and IPv4 as the outer IP protocol (ND
   considerations for other protocol combinations are out of scope).
   Depending on the enterprise network trust basis, VET nodes may be
   required to use mechanisms such as SEND to secure their ND exchanges.

6.3.1.  Router and Prefix Discovery

6.3.1.1.  EBR Specification

   EBRs discover the PRL for each VET interface as specified in
   Section 5.2.2, and participate in a dynamic routing protocol over the
   VET interface using the EBG addresses in the PRL as addresses of
   potential neighboring routers.  When a dynamic routing protocol
   cannot be used, EBRs instead send RS messages on their VET interfaces
   to receive solicited RAs from each EBG in the PRL.  Note that this
   would ordinarily cause the EBG to set the 'IsRouter' flag in the
   neighbor cache entry for this EBR to FALSE (see: [RFC4861], Appendix
   D).

   The EBR sends RS messages the same as described for hosts in Section
   6.3.7 of [RFC4861], except that it includes a new 2-bit "More-
   Specific Routes (MSR)" field taken from the most significant bits of
   the "Reserved" field in the RS message (see Section 4.1 of [RFC4861])
   as shown in Figure 2

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Type      |     Code      |          Checksum             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |MSR|                          Reserved                         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                 Figure 2: Router Solicitation "MSR" Field

   In this format, the values MSR=0, 1 and 2 correspond to the host
   types A, B, and C (respectively) as defined in Section 3 of
   [RFC4191].  The value MSR=3 is Reserved for future use.  For the
   purpose of this specification, EBRs set MSR=2 in each RS message they
   send.

   When the EBR receives a solicited RA from an EBG (see Section
   6.3.1.2), it authenticates the message then processes any
   autoconfiguration information.  (Note however that the EBR should not



Templin                 Expires September 9, 2010              [Page 22]


Internet-Draft                     VET                        March 2010


   configure prefixes received in Prefix Information Options (PIOs) on
   its VET interfaces if it will have EID addresses and prefixes
   configured on any of its other interfaces.  This prevents the EBR
   from sending packets directly to VET hosts without first going
   through a default router, since VET hosts will initially only accept
   packets that come through a PRL router.)

   Next, the EBR creates RA messages to send to each EBG in the PRL.
   The EBR includes a Route Information Option (RIO) [RFC4191] that
   contains one of its EID prefixes in each RA, but it MUST NOT include
   any other autoconfiguration parameters (e.g., non-zero Router
   Lifetime, Prefix Information Options (PIOs), etc.)  The EBR also
   unconditionally sets the 'M' bit to 0 and the 'O' bit to 1 in order
   to avoid conflicting with the information included in RA messages
   from EBGs (see: Section 6.3.1.2).  The EBR also includes an RLOC for
   the EBG as the outer IP destination address and includes the IPv6
   link-local "all nodes multicast" address as the inner destination
   address [RFC4291] of the RA.

   The EBR next creates a CGA or IPv6 privacy link-local address and
   includes it as the inner source address of the RA.  When CGAs are
   used, the EBR additionally includes SEND credentials plus any router
   certificates needed to prove its ownership of the prefixes in its
   Route Information Options (RIOs).  Note that the CGA/privacy link-
   local address is used only as the inner source address of unsolicited
   RA messages, and therefore need not be checked for uniqueness on the
   link.  The EBR finally includes the RLOC assigned to an underlying
   interface as the outer source address of the RA.

   For each of its EID prefixes, the EBR sends a separate RA message to
   each EBG that includes multiple Source Link Layer Address Options
   (SLLAOs) formatted using a modified version of the form specified in
   Section 5 of [RFC2529] as shown in Figure 3:

   +-------+-------+-------+-------+-------+-------+-------+-------+
   | Type  |Length |     Metric    |       IPv4 RLOC Address       |
   +-------+-------+-------+-------+-------+-------+-------+-------+

              Figure 3: VET Link-Layer Address Option Format

   Each SLLAO contains the IPv4 RLOC of an underlying interface plus a
   metric value that specifies a weighted preference for this particular
   RLOC based on link bandwidth, stability, etc., where the value 0
   denotes the highest preference and 65535 denotes the lowest
   preference.  For example, the EBR may set the metric for an RLOC
   corresponding to a 1Gbps interface to 10 and the metric for an RLOC
   corresponding to a WiFi interface to 1000.  The EBR SHOULD include
   the highest preference RLOC as the final RLOC in the list of SLLAOs.



Templin                 Expires September 9, 2010              [Page 23]


Internet-Draft                     VET                        March 2010


   The EBR then sends the RA message to the EBG and must thereafter
   periodically send new RA messages to refresh prefix lifetimes, where
   a minimum RA interface of 5 minutes is recommended.  Each EBG that
   receives an EBR's RA will in turn relay a proxied version of the RA
   to EBGs on their parent enterprise networks.  This procedure has a
   direct analogy in the Teredo method of maintaining state in network
   middleboxes through the periodic transmission of "bubbles" [RFC4380].

6.3.1.2.  EBG Specification

   EBGs follow the router and prefix discovery procedures specified in
   Section 8.2 of [RFC5214].  When an EBG receives an RS message on a
   VET interface, it first authenticates the message.  If the VET
   interface maintains a neighbor cache, the EBG next creates or updates
   a neighbor cache entry for the VET link-local source address
   corresponding to the outer IP source address of the RS according to
   Section 6.2.6 of [RFC4861] and caches the value in the MSR field
   (see: Section 6.3.1.1).  As a modification to the IsRouter processing
   rules of Appendix D of [RFC4861], the EBG sets the IsRouter flag to
   TRUE instead of FALSE if the value in the MSR field is 2.

   If the neighbor cache entry cannot be created or updated (e.g., due
   to insufficient resources), the EBG silently discards the RS and does
   not send an RA.  Otherwise, the EBG creates/updates the neighbor
   cache entry, sets a "Time To Live (TTL)" on the entry that is no
   shorter than any of its advertised router or prefix lifetimes, and
   sends an RA response to the RS.  If the neighbor cache entry TTL
   subsequently expires before a new RS arrives, the EBG deletes the
   neighbor cache entry.  Note that the EBG can omit these neighbor
   cache manipulations if no neighbor cache is required; in that case,
   however, no value for MSR will be cached and a default value of 0 is
   assumed.

   The EBG then prepares an RA response to the RS that includes Router
   Lifetimes, PIOs, and any other options/parameters that the EBG is
   configured to include.  The EBG unconditionally sets the 'M' bit to 0
   and the 'O' bit to 1.  Next, the EBG includes SEND parameters if
   necessary and sets the inner and outer source and destination
   addresses.  The EBG sets the inner source address to a CGA or IPv6
   privacy link-local address, then sets the outer IP source address to
   one of its RLOC addresses.  The EBG next sets the inner destination
   address to the source address in the RS message, then sets the outer
   IP destination address to the EBR's RLOC address.  Finally, the EBG
   sends the solicited RA to the VET node that sent the solicitation.

   In addition to RS messages, the EBG may receive RA messages sent by
   EBRs on VET interfaces as specified in Section 6.3.1.1.  When an EBG
   receives the RA, it first authenticates the message; if the



Templin                 Expires September 9, 2010              [Page 24]


Internet-Draft                     VET                        March 2010


   authentication fails, the EBG discards the RA.  Otherwise, it uses
   the EID prefix in the RIO with its respective lifetime to updates its
   Forwarding Information Base (FIB).  The EBG also caches each RLOC and
   associated metric value received in SLLAO options in the RA message
   as the address of a neighbor associated with the FIB entry, i.e.,
   each FIB entry may include multiple potential next-hops.  Finally,
   the EBG caches the RA message as ancillary data attached to the FIB
   entries so that the message can be replayed in the future to support
   router-to-router redirects (see: Section 6.3.3).

   After the EBG authenticates the RA and updates its FIB, it next acts
   as an EBR on each of its VET interfaces configured over parent
   enterprise networks and uses the Neighbor Discovery Proxy (NDProxy)
   [RFC4389] approach to relay a proxied RA to each of the EBGs
   configured on those interfaces.  (For enterprise networks that use
   SEND, the proxying node additionally acts as a SEcure Neighbor
   Discovery Proxy (SENDProxy) [I-D.ietf-csi-proxy-send].)  During this
   process, the proxying node replaces the SLLAO options received in the
   original RA message with SLLAO options that encode its own RLOC
   addresses and metrics.  EBGs in parent enterprise networks that
   receive the proxied RAs in turn act as NDProxys/SENDProxys to relay
   the RAs to EBGs on their parent enterprise networks, etc., in a
   recursive fashion.

   In addition to forwarding proxied RA messages to EBGs on VET
   interfaces configured over parent enterprise networks, if the
   proxying node has FIB entries that properly cover the RIO prefix and
   that point to neighbors on VET interfaces other than the one the
   packet arrived on, it sends a proxied version of the RA to each RLOC
   associated with each such FIB entry.  As an example, this covers the
   case of a DFZ router sending a proxied RA to another DFZ router that
   uses BGP to advertise a Virtual Prefix (VP) covering the RIO prefix

6.3.1.3.  VET Host Specification

   VET hosts follow the router and prefix discovery procedures specified
   in Section 8.3 of [RFC5214].  They discover the addresses of EBGs for
   each VET interface as specified in Section 5.2.2, and send RS
   messages to each EBG in order to receive RAs with autoconfiguration
   information.  When the VET host sends an RS message on a VET
   interface, it sets the MSR field based on whether the host will act
   as an [RFC4191] type A, B or C host; if the host is willing to
   process RIO options and receive prefix redirects, it sets the value
   MSR=2 (see: Section 6.3.1.1).

   When the VET host receives a solicited RA from an EBG on a VET
   interface, it authenticates the message then performs
   autoconfiguration the same as for any link.  In particular, if the RA



Templin                 Expires September 9, 2010              [Page 25]


Internet-Draft                     VET                        March 2010


   message contains any PIO options the VET host performs address
   autoconfiguration on the VET interface according to [RFC4862].  When
   the host generates a VET address, it first creates an interface
   identifier that embeds its IPv4 RLOC address as specified in Section
   6.1 of [RFC5214].  The host then configures IPv6 unicast VET
   addresses from advertised on-link prefixes received in RA messages
   and assigns them to the VET interface, i.e., it does not perform
   Duplicate Address Detection (DAD) on the addresses since the embedded
   IPv4 RLOC address already provides uniqueness.

6.3.2.  Next Hop Determination

   VET nodes perform next-hop determination on VET interfaces via
   longest prefix match the same as for any IPv6 interface, and send
   packets according to the most-specific matching entry in the FIB.  If
   the FIB entry has multiple next-hop addresses, the EBR selects the
   next-hop with the best metric value.  If there are multiple next hops
   with the best metric value, the VET node can use Equal Cost Multi
   Path (ECMP) to forward different flows via different next-hop
   addresses (where flows are determined, e.g., by computing a hash of
   the inner packet's source address, destination address and flow label
   fields).

   When there is no matching entry in the FIB (i.e., not even
   "default"), VET nodes can discover next-hop addresses within the
   enterprise network by querying the name service for the /56 IPv6 EID
   prefix taken from a packet's destination address (or, by some other
   inner address to outer address mapping mechanism).  For example, for
   the IPv6 destination address '2001:DB8:1:2::1' and 'PRLNAME'
   "isatapv2.example.com" the VET node can perform a name service lookup
   for the domain name:
   '0.0.1.0.0.0.8.b.d.0.1.0.0.2.ip6.isatapv2.example.com'.

   Name-service lookups in enterprise networks with a centralized
   management structure use an infrastructure-based service, e.g., an
   enterprise-local DNS.  Name-service lookups in enterprise networks
   with a distributed management structure and/or that lack an
   infrastructure-based name service instead use LLMNR over the VET
   interface.  When LLMNR is used, the EBR that performs the lookup
   sends an LLMNR query (with the /56 prefix taken from the IP
   destination address encoded in dotted-nibble format as shown above)
   and accepts the union of all replies it receives from other EBRs on
   the VET interface.  When an EBR receives an LLMNR query, it responds
   to the query IFF it aggregates an IP prefix that covers the prefix in
   the query.

   If the name-service lookup succeeds, it will return RLOC addresses
   (e.g., in DNS A records) that correspond to next-hop EBRs to which



Templin                 Expires September 9, 2010              [Page 26]


Internet-Draft                     VET                        March 2010


   the VET node can forward packets.

6.3.3.  Redirect Function

   In enterprise networks with a stable and highly-available set of
   EBGs, VET nodes can simply forward initial packets via a default
   route to an EBG on a VET interface when more-specific routing
   information is not available.  The EBG will forward the packet and
   return a standard ICMPv6 Redirect if necessary as specified in
   Section 8 of [RFC4861].  VET interfaces additionally implement an
   "MSR Redirect" mechanism that provides both "router-to-router" and
   "prefix" redirection functions as specified within this section.
   These additional functions are complimentary (i.e., both functions
   can be carried within the same redirect message) but can only be used
   when both the destination of the redirect and the redirected target
   set MSR=2 in the RS messages they send to the EBG (see: Section
   6.3.1.1).

   When both parties to the potential redirect set MSR=2, the EBG sends
   an MSR Redirect (subject to rate limiting) whenever it forwards a
   packet out the same VET interface that it arrived on if the packet's
   source address is not on-link on the VET interface and/or if there is
   a prefix in the EBG's FIB that covers the packet's destination
   address.  If the source address of the packet was not on-link on the
   VET interface, the EBG sets the destination address of the redirect
   to the VET link-local address of the VET node that forwarded the
   packet.  If the EBG has a prefix in its FIB that covers the
   destination address of the packet, it also includes in the redirect
   an RIO that contains the prefix, i.e., the same as described for RA
   messages in [RFC4191].

   The EBG next sets the source address of the MSR Redirect to a CGA or
   IPv6 privacy link-local address; when SEND is used, the EBG uses a
   CGA link-local address and includes SEND parameters.  The EBG then
   sets the redirected target/destination fields the same as for
   ordinary redirects, then includes one or more IPv6 Target Link Layer
   Address Options (TLLAOs) formatted using the form shown in Figure 3.
   Each TLLAO contains an IPv4 RLOC and metric taken from neighbor cache
   entries corresponding to the EBG's FIB entry.  Finally, the EBG
   includes the header of the redirected packet the same as for an
   ordinary redirect and returns the redirect to the VET node that sent
   the packet.

   When a VET node receives an MSR Redirect, it first authenticates the
   message then uses any EID prefixes in RIOs with their respective
   lifetimes to update its FIB.  The node also caches each RLOC and
   associated metric value received in TLLAO options in the redirect as
   the address of a neighbor associated with the FIB entry.



Templin                 Expires September 9, 2010              [Page 27]


Internet-Draft                     VET                        March 2010


   If the MSR redirect was a "router-to-router" redirect, the VET node
   next sends an RA to the redirected target in order to prove its
   authorization to source packets from the source address of the
   redirected packet.  If the VET node owns the prefix that covers the
   source address, it creates a fresh RA and sends it to the redirected
   target.  If the VET node is instead an upstream router on the path
   from the source, it "replays" the cached RA message associated with a
   FIB entry corresponding to the packet's source address using an RLOC
   address from the redirected target as the outer IP destination
   address and with SLLAO options that encode the VET node's RLOCs and
   metrics of underlying interfaces.  This replaying process is the same
   as for the RA proxying function specified for EBGs i n Section
   6.3.1.2.

   When the redirected target VET node receives the RA, it authenticates
   the message (e.g., using SEND credentials) then uses any EID prefixes
   in RIOs with their respective lifetimes to update its FIB.  The node
   also caches each RLOC and associated metric value received in TLLAO
   options in the RA message as the address of a neighbor associated
   with the FIB entry.  This RA processing is same as specified for EBGs
   in Section 6.3.1.2, however the node does not proxy the RA message
   further.

   VET nodes retain the FIB entries created as a result of receipt of an
   ICMP redirect until the route lifetimes expire, or until no hints of
   forward progress through any of the FIB entry's associated RLOCs are
   received.  In this way, RLOC liveness detection exactly parallels
   IPv6 Neighbor Unreachability Detection ([RFC4861], Section 7).

6.3.4.  Neighbor Unreachability Detection

   VET nodes use their neighbor cache for Neighbor Unreachability
   Detection (NUD) the same as for any IPv6 link as described in Section
   7 of [RFC4861].  When a neighbor fails (or appears to be failing),
   FIB entries are updated to select a different next-hop when there are
   multiple next-hops available.

   The NUD mechanism uses hints of forward progress (i.e., evidence that
   the tunnel neighbor is receiving packets) coupled with the Neighbor
   Solicitation/Advertisement (NS/NA) process.  When hints of forward
   progress are available, NS/NA messaging is suppressed; when no hints
   are available, NS/NA messages are used in the normal fashion the same
   as for any IPv6 link.  The SEAL mechanism includes an explicit data
   packet acknowledgement mechanism that can provide hints of forward
   progress.

   Responsiveness to routing changes is directly related to the
   "REACHABLE_TIME" constant used for NUD as specified in [RFC4861].  In



Templin                 Expires September 9, 2010              [Page 28]


Internet-Draft                     VET                        March 2010


   order to provide responsiveness comparable to dynamic routing
   protocols, a reasonably short "REACHABLE_TIME" value (e.g., 5sec)
   should be used.

6.3.5.  Reverse Path Forwarding Checks

   VET nodes determine whether a packet received on a VET interface can
   be accepted based on an ingress filtering check [RFC3704].  The VET
   node determines the previous hop router for a received packet by
   constructing a VET link-local address that embeds the outer IPv4
   source address.  It then examines its FIB to determine whether there
   is an entry that matches the inner source address and that has the
   VET link-local address as the next hop.  If such a FIB entry exists,
   the VET host accepts the packet; otherwise, it discards the packet.

6.3.6.  IPv4 Neighbor Discovery

   When IPv4 is used as the inner network layer protocol, router
   discovery and prefix registration exactly parallel the mechanisms
   specified for IPv6 in Section 6.3.  To support this, modifications to
   the ICMPv4 Router Advertisement [RFC1256] function to include SEND
   constructs and modifications to the ICMPv4 Redirect [RFC0792]
   function to support router-to-router redirects will be specified in a
   future document.  Additionally, publications for IPv4 prefixes will
   be in dotted-nibble format in the 'ip4.isatapv2.example.com' domain.
   For example, the IPv4 prefix 192.0.2/24 would be represented as:
   '2.0.0.0.0.c.ip4.isatapv2.example.com'

6.4.  Generating Errors

   When an EBR receives an IPv6 packet over a VET interface and there is
   no matching ingress filter entry, it drops the packet and returns an
   ICMPv6 [RFC4443] "Destination Unreachable; Reject route to
   destination" message to the previous-hop EBR subject to rate
   limiting.

   When an EBR receives an IPv6 packet over a VET interface, and there
   is no longest-prefix-match FIB entry for the destination, it returns
   an ICMPv6 "Destination Unreachable; No route to destination" message
   to the previous hop EBR subject to rate limiting.

   When an EBR receives an IPv6 packet over a VET interface and the
   longest-prefix-match FIB entry for the destination is via a next-hop
   configured over the same VET interface the packet arrived on, the EBR
   forwards the packet.  If the FIB prefix is longer than ::/0, the EBR
   then sends a router-to-router ICMPv6 Redirect message (using SEND, if
   necessary) to the previous-hop EBR as specified in Section 6.3.3.




Templin                 Expires September 9, 2010              [Page 29]


Internet-Draft                     VET                        March 2010


   Generation of other ICMP messages [RFC0792] [RFC4443] is the same as
   for any IP interface.

6.5.  Processing Errors

   When a VET node receives an ICMPv6 "Destination Unreachable; Reject
   route to destination" message, and there is a longest-prefix-match
   FIB entry for the original packet's destination that is more specific
   than ::/0, the node discards the message and marks the FIB entry for
   the destination as "forwarding suspended" for the RLOC taken from the
   source address of the ICMPv6 message.  The node should then allow
   subsequent packets to flow through different RLOCs associated with
   the FIB entry.  If the node receives excessive ICMPv6 reject route to
   destination messages through multiple RLOCs associated with the same
   FIB entry, it should delete the FIB entry and allow subsequent
   packets to flow through an EBG if supported in the specific
   enterprise network scenario.

   When a VET node receives an ICMPv6 "Destination Unreachable; No route
   to destination" message, it forwards the ICMPv6 message to the source
   of the original packet as normal.  If the node has a longest-prefix-
   match FIB entry for the original packet's destination that is more
   specific than ::/0, the node also deletes the FIB entry.

   When a VET node receives an authentic ICMPv6 Redirect, it processes
   the packet as specified in Section 6.3.3.

   Additionally, a VET node may receive outer IP ICMP "Destination
   Unreachable; net / host unreachable" messages from an ER on the path
   indicating that the path to a VET neighbor may be failing.  The node
   should first check authenticating information (e.g., the SEAL_ID,
   IPsec sequence number, source address of the original packet if
   available, etc.) to obtain reasonable assurance that the ICMP message
   is authentic, then should mark the longest-prefix-match FIB entry for
   the destination as "forwarding suspended" for the RLOC destination
   address of the ICMP packet-in-error.  If the node receives excessive
   ICMP unreachable errors through multiple RLOCs associated with the
   same FIB entry, it should delete the FIB entry and allow subsequent
   packets to flow through a different route.

6.6.  Mobility and Multihoming Considerations

   EBRs that travel between distinct enterprise networks must either
   abandon their PA prefixes that are relative to the "old" enterprise
   and obtain PA prefixes relative to the "new" enterprise, or somehow
   coordinate with a "home" enterprise to retain ownership of the
   prefixes.  In the first instance, the EBR would be required to
   coordinate a network renumbering event using the new PA prefixes



Templin                 Expires September 9, 2010              [Page 30]


Internet-Draft                     VET                        March 2010


   [RFC4192].  In the second instance, an ancillary mobility management
   mechanism must be used.

   EBRs can retain their PI prefixes as they travel between distinct
   enterprise networks as long as they register the prefixes with new
   EBGs and (preferably) withdraw the prefixes from old EBGs prior to
   departure.  Prefix registration with new EBGs is coordinated exactly
   as specified in Section 5.2.4; prefix withdrawal from old EBGs is
   simply through re-announcing the PI prefixes with zero lifetimes.

   Since EBRs can move about independently of one another, stale FIB
   entry state may be left in VET nodes when a neighboring EBR departs.
   Additionally, EBRs can lose state for various reasons, e.g., power
   failure, machine reboot, etc.  For this reason, EBRs are advised to
   set relatively short PI prefix lifetimes in RIO options, and to send
   additional RAs to refresh lifetimes before they expire.  (EBRs should
   place conservative limits on the RAs they send to reduce congestion,
   however.)

   EBRs may register their PI prefixes with multiple EBGs for
   multihoming purposes.  EBRs should only forward packets via EBGs with
   which it has registered its PI prefixes, since other EBGs may drop
   the packets and return ICMPv6 "Destination Unreachable" messages.

   EBRs can also act as delegating routers to sub-delegate portions of
   their PI prefixes to requesting routers on their enterprise-edge
   interfaces and on VET interfaces for which they are configured as
   EBGs.  In this sense, the sub-delegations of an EBR's PI prefixes
   become the PA prefixes for downstream-dependent nodes.

   The EBGs of a multihomed enterprise network should participate in a
   private inner network layer routing protocol instance between
   themselves (possibly over an alternate topology) to accommodate
   network partitions/merges as well as intra-enterprise mobility
   events.  These peer EBGs should accept packets from one another
   without respect to the destination (i.e., ingress filtering is based
   on the peering relationship rather than a prefix-specific ingress
   filter entry).

6.7.  Multicast

   In multicast-capable deployments, ERs provide an enterprise-wide
   multicasting service (e.g., Simplified Multicast Forwarding (SMF)
   [I-D.ietf-manet-smf], Protocol Independent Multicast (PIM) routing,
   Distance Vector Multicast Routing Protocol (DVMRP) routing, etc.)
   over their enterprise-interior interfaces such that outer IP
   multicast messages of site-scope or greater scope will be propagated
   across the enterprise network.  For such deployments, VET nodes can



Templin                 Expires September 9, 2010              [Page 31]


Internet-Draft                     VET                        March 2010


   also provide an inner multicast/broadcast capability over their VET
   interfaces through mapping of the inner multicast address space to
   the outer multicast address space.  In that case, operation of link-
   scoped (or greater scoped) inner multicasting services (e.g., a link-
   scoped neighbor discovery protocol) over the VET interface is
   available, but link-scoped services should be used sparingly to
   minimize enterprise-wide flooding.

   VET nodes encapsulate inner multicast messages sent over the VET
   interface in any mid-layer headers (e.g., SEAL, IPsec, etc.) followed
   by an outer IP header with a site-scoped outer IP multicast address
   as the destination.  For the case of IPv6 and IPv4 as the inner/outer
   protocols (respectively), [RFC2529] provides mappings from the IPv6
   multicast address space to a site-scoped IPv4 multicast address space
   (for other encapsulations, mappings are established through
   administrative configuration or through an unspecified alternate
   static mapping).

   Multicast mapping for inner multicast groups over outer IP multicast
   groups can be accommodated, e.g., through VET interface snooping of
   inner multicast group membership and routing protocol control
   messages.  To support inner-to-outer multicast address mapping, the
   VET interface acts as a virtual outer IP multicast host connected to
   its underlying interfaces.  When the VET interface detects that an
   inner multicast group joins or leaves, it forwards corresponding
   outer IP multicast group membership reports on an underlying
   interface over which the VET interface is configured.  If the VET
   node is configured as an outer IP multicast router on the underlying
   interfaces, the VET interface forwards locally looped-back group
   membership reports to the outer IP multicast routing process.  If the
   VET node is configured as a simple outer IP multicast host, the VET
   interface instead forwards actual group membership reports (e.g.,
   IGMP messages) directly over an underlying interface.

   Since inner multicast groups are mapped to site-scoped outer IP
   multicast groups, the VET node must ensure that the site-scope outer
   IP multicast messages received on the underlying interfaces for one
   VET interface do not "leak out" to the underlying interfaces of
   another VET interface.  This is accommodated through normal site-
   scoped outer IP multicast group filtering at enterprise network
   boundaries.

6.8.  Service Discovery

   VET nodes can perform enterprise-wide service discovery using a
   suitable name-to-address resolution service.  Examples of flooding-
   based services include the use of LLMNR [RFC4795] over the VET
   interface or multicast DNS (mDNS) [I-D.cheshire-dnsext-multicastdns]



Templin                 Expires September 9, 2010              [Page 32]


Internet-Draft                     VET                        March 2010


   over an underlying interface.  More scalable and efficient service
   discovery mechanisms are for further study.

6.9.  Enterprise Partitioning

   An enterprise network can be partitioned into multiple distinct
   logical groupings.  In that case, each partition must configure its
   own distinct 'PRLNAME' (e.g., 'isatapv2.zone1.example.com',
   'isatapv2.zone2.example.com', etc.).

   EBGs can further create multiple IP subnets within a partition by
   sending RAs with PIOs containing different IPv6 prefixes to different
   groups of nodes.  EBGs can identify subnets, e.g., by examining RLOC
   prefixes, observing the enterprise interior interfaces over which RSs
   are received, etc.

6.10.  EBG Prefix State Recovery

   EBGs must retain explicit state that tracks the inner PA prefixes
   delegated to EBRs within the enterprise network, e.g., so that
   packets are delivered to the correct EBRs.  When an EBG loses some or
   all of its state (e.g., due to a power failure), it must recover the
   state so that packets can be forwarded over correct routes.

6.11.  Support for Legacy ISATAP Services

   EBGs support legacy ISATAP services according to the specifications
   in [RFC5214].  In particular, EBGs can configure legacy ISATAP
   interfaces and VET interfaces over the same sets of underlying
   interface as long as the PRLs and IPv6 prefixes associated with the
   ISATAP/VET interfaces are distinct.


7.  IANA Considerations

   There are no IANA considerations for this document.


8.  Security Considerations

   Security considerations for MANETs are found in [RFC2501].

   The security considerations found in [RFC2529] [RFC5214]
   [I-D.nakibly-v6ops-tunnel-loops] also apply to VET.  In particular:

   o  VET nodes must ensure that a VET interface does not span multiple
      sites as specified in Section 6.2 of [RFC5214].




Templin                 Expires September 9, 2010              [Page 33]


Internet-Draft                     VET                        March 2010


   o  VET nodes must verify that the outer IP source address of a packet
      received on a VET interface is correct for the inner source
      address; for the case of IPv6 within IPv4 encapsulation, this is
      accommodated using the procedures specified in Section 7.3 of
      [RFC5214].

   o  EBRs must implement both inner and outer ingress filtering in a
      manner that is consistent with [RFC2827] as well as ip-proto-41
      filtering.  When the node at the physical boundary of the
      enterprise network is an ordinary ER (i.e., and not an EBR), the
      ER itself should implement filtering.

   Additionally, VET interfaces that use IPv6 within IPv4 encapsulation
   and that maintain a coherent neighbor cache drop all outbound packet
   for which the IPv6 next hop is not a neighbor and the IPv6 source
   address is not link-local; they also drop all incoming packets for
   which the IPv6 previous hop is not a neighbor and the IPv6
   destination address is not link-local.  (Here, the previous hop is
   determined by examining the IPv4 source address.)

   Finally, VET interfaces that use IPv6 within IPv4 encapsulation drop
   all outbound packets for which the IPv6 source address is "foreign-
   prefix::0200:5efe:V4ADDR" and drop all incoming packets for which the
   IPv6 destination address is "foreign-prefix::0200:5efe:V4ADDR" .
   (Here, "foreign-prefix" is an IPv6 prefix that is not assigned to the
   VET interface, and "V4ADDR" is a public IPv4 address over which the
   VET interface is configured.)  Note that these checks are only
   required for VET interfaces that cannot maintain a coherent neighbor
   cache.

   SEND [RFC3971] and/or IPsec [RFC4301] can be used in environments
   where attacks on the neighbor discovery protocol are possible.  SEAL
   [I-D.templin-intarea-seal] provides a per-packet identification that
   can be used to detect source address spoofing.

   Rogue neighbor discovery messages with spoofed RLOC source addresses
   can consume network resources and cause VET nodes to perform extra
   work.  Nonetheless, VET nodes should not "blacklist" such RLOCs, as
   that may result in a denial of service to the RLOCs' legitimate
   owners.


9.  Related Work

   Brian Carpenter and Cyndi Jung introduced the concept of intra-site
   automatic tunneling in [RFC2529]; this concept was later called:
   "Virtual Ethernet" and investigated by Quang Nguyen under the
   guidance of Dr. Lixia Zhang.  Subsequent works by these authors and



Templin                 Expires September 9, 2010              [Page 34]


Internet-Draft                     VET                        March 2010


   their colleagues have motivated a number of foundational concepts on
   which this work is based.

   Telcordia has proposed DHCP-related solutions for MANETs through the
   CECOM MOSAIC program.

   The Naval Research Lab (NRL) Information Technology Division uses
   DHCP in their MANET research testbeds.

   Security concerns pertaining to tunneling mechanisms are discussed in
   [I-D.ietf-v6ops-tunnel-security-concerns].

   Default router and prefix information options for DHCPv6 are
   discussed in [I-D.droms-dhc-dhcpv6-default-router].

   An automated IPv4 prefix delegation mechanism is proposed in
   [I-D.ietf-dhc-subnet-alloc].

   RLOC prefix delegation for enterprise-edge interfaces is discussed in
   [I-D.clausen-manet-autoconf-recommendations].

   MANET link types are discussed in [I-D.clausen-manet-linktype].

   The LISP proposal [I-D.ietf-lisp] examines encapsulation/
   decapsulation issues and other aspects of tunneling.

   Various proposals within the IETF have suggested similar mechanisms.


10.  Acknowledgements

   The following individuals gave direct and/or indirect input that was
   essential to the work: Jari Arkko, Teco Boot, Emmanuel Bacelli, James
   Bound, Scott Brim, Brian Carpenter, Thomas Clausen, Claudiu Danilov,
   Chris Dearlove, Gert Doering, Ralph Droms, Washam Fan, Dino
   Farinacci, Vince Fuller, Thomas Goff, David Green, Joel Halpern, Bob
   Hinden, Sascha Hlusiak, Sapumal Jayatissa, Dan Jen, Darrel Lewis,
   Tony Li, Joe Macker, David Meyer, Gabi Nakibly, Thomas Narten, Pekka
   Nikander, Dave Oran, Alexandru Petrescu, Mark Smith, John Spence,
   Jinmei Tatuya, Dave Thaler, Ole Troan, Michaela Vanderveen, James
   Woodyatt, Lixia Zhang, and others in the IETF AUTOCONF and MANET
   working groups.  Many others have provided guidance over the course
   of many years.


11.  Contributors

   The following individuals have contributed to this document:



Templin                 Expires September 9, 2010              [Page 35]


Internet-Draft                     VET                        March 2010


   Eric Fleischman (eric.fleischman@boeing.com)
   Thomas Henderson (thomas.r.henderson@boeing.com)
   Steven Russert (steven.w.russert@boeing.com)
   Seung Yi (seung.yi@boeing.com)

   Ian Chakeres (ian.chakeres@gmail.com) contributed to earlier versions
   of the document.

   Jim Bound's foundational work on enterprise networks provided
   significant guidance for this effort.  We mourn his loss and honor
   his contributions.


12.  References

12.1.  Normative References

   [I-D.templin-intarea-seal]
              Templin, F., "The Subnetwork Encapsulation and Adaptation
              Layer (SEAL)", draft-templin-intarea-seal-13 (work in
              progress), March 2010.

   [RFC0791]  Postel, J., "Internet Protocol", STD 5, RFC 791,
              September 1981.

   [RFC0792]  Postel, J., "Internet Control Message Protocol", STD 5,
              RFC 792, September 1981.

   [RFC0826]  Plummer, D., "Ethernet Address Resolution Protocol: Or
              converting network protocol addresses to 48.bit Ethernet
              address for transmission on Ethernet hardware", STD 37,
              RFC 826, November 1982.

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              specification", STD 13, RFC 1035, November 1987.

   [RFC2131]  Droms, R., "Dynamic Host Configuration Protocol",
              RFC 2131, March 1997.

   [RFC2460]  Deering, S. and R. Hinden, "Internet Protocol, Version 6
              (IPv6) Specification", RFC 2460, December 1998.

   [RFC2827]  Ferguson, P. and D. Senie, "Network Ingress Filtering:
              Defeating Denial of Service Attacks which employ IP Source
              Address Spoofing", BCP 38, RFC 2827, May 2000.

   [RFC3007]  Wellington, B., "Secure Domain Name System (DNS) Dynamic
              Update", RFC 3007, November 2000.



Templin                 Expires September 9, 2010              [Page 36]


Internet-Draft                     VET                        March 2010


   [RFC3315]  Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
              and M. Carney, "Dynamic Host Configuration Protocol for
              IPv6 (DHCPv6)", RFC 3315, July 2003.

   [RFC3596]  Thomson, S., Huitema, C., Ksinant, V., and M. Souissi,
              "DNS Extensions to Support IP Version 6", RFC 3596,
              October 2003.

   [RFC3633]  Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic
              Host Configuration Protocol (DHCP) version 6", RFC 3633,
              December 2003.

   [RFC3971]  Arkko, J., Kempf, J., Zill, B., and P. Nikander, "SEcure
              Neighbor Discovery (SEND)", RFC 3971, March 2005.

   [RFC3972]  Aura, T., "Cryptographically Generated Addresses (CGA)",
              RFC 3972, March 2005.

   [RFC4191]  Draves, R. and D. Thaler, "Default Router Preferences and
              More-Specific Routes", RFC 4191, November 2005.

   [RFC4291]  Hinden, R. and S. Deering, "IP Version 6 Addressing
              Architecture", RFC 4291, February 2006.

   [RFC4443]  Conta, A., Deering, S., and M. Gupta, "Internet Control
              Message Protocol (ICMPv6) for the Internet Protocol
              Version 6 (IPv6) Specification", RFC 4443, March 2006.

   [RFC4861]  Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
              "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
              September 2007.

   [RFC4862]  Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless
              Address Autoconfiguration", RFC 4862, September 2007.

   [RFC5214]  Templin, F., Gleeson, T., and D. Thaler, "Intra-Site
              Automatic Tunnel Addressing Protocol (ISATAP)", RFC 5214,
              March 2008.

12.2.  Informative References

   [CATENET]  Pouzin, L., "A Proposal for Interconnecting Packet
              Switching Networks", May 1974.

   [I-D.carpenter-flow-ecmp]
              Carpenter, B., "Using the IPv6 flow label for equal cost
              multipath routing in tunnels",
              draft-carpenter-flow-ecmp-01 (work in progress),



Templin                 Expires September 9, 2010              [Page 37]


Internet-Draft                     VET                        March 2010


              February 2010.

   [I-D.cheshire-dnsext-multicastdns]
              Cheshire, S. and M. Krochmal, "Multicast DNS",
              draft-cheshire-dnsext-multicastdns-08 (work in progress),
              September 2009.

   [I-D.clausen-manet-autoconf-recommendations]
              Clausen, T. and U. Herberg, "MANET Router Configuration
              Recommendations",
              draft-clausen-manet-autoconf-recommendations-00 (work in
              progress), February 2009.

   [I-D.clausen-manet-linktype]
              Clausen, T., "The MANET Link Type",
              draft-clausen-manet-linktype-00 (work in progress),
              October 2008.

   [I-D.droms-dhc-dhcpv6-default-router]
              Droms, R. and T. Narten, "Default Router and Prefix
              Advertisement Options for DHCPv6",
              draft-droms-dhc-dhcpv6-default-router-00 (work in
              progress), March 2009.

   [I-D.hain-ipv6-ulac]
              Hain, T., Hinden, R., and G. Huston, "Centrally Assigned
              IPv6 Unicast Unique Local Address Prefixes",
              draft-hain-ipv6-ulac-01 (work in progress), October 2009.

   [I-D.ietf-autoconf-manetarch]
              Chakeres, I., Macker, J., and T. Clausen, "Mobile Ad hoc
              Network Architecture", draft-ietf-autoconf-manetarch-07
              (work in progress), November 2007.

   [I-D.ietf-csi-proxy-send]
              Krishnan, S., Laganier, J., Bonola, M., and A. Garcia-
              Martinez, "Secure Proxy ND Support for SEND",
              draft-ietf-csi-proxy-send-02 (work in progress),
              March 2010.

   [I-D.ietf-dhc-dhcpv6-agentopt-delegate]
              Droms, R., Volz, B., and O. Troan, "DHCPv6 Relay Agent
              Assignment Notification (RAAN) Option",
              draft-ietf-dhc-dhcpv6-agentopt-delegate-04 (work in
              progress), July 2009.

   [I-D.ietf-dhc-subnet-alloc]
              Johnson, R., Kumarasamy, J., Kinnear, K., and M. Stapp,



Templin                 Expires September 9, 2010              [Page 38]


Internet-Draft                     VET                        March 2010


              "Subnet Allocation Option", draft-ietf-dhc-subnet-alloc-10
              (work in progress), November 2009.

   [I-D.ietf-grow-va]
              Francis, P., Xu, X., Ballani, H., Jen, D., Raszuk, R., and
              L. Zhang, "FIB Suppression with Virtual Aggregation",
              draft-ietf-grow-va-01 (work in progress), October 2009.

   [I-D.ietf-lisp]
              Farinacci, D., Fuller, V., Meyer, D., and D. Lewis,
              "Locator/ID Separation Protocol (LISP)",
              draft-ietf-lisp-06 (work in progress), January 2010.

   [I-D.ietf-manet-smf]
              Macker, J. and S. Team, "Simplified Multicast Forwarding",
              draft-ietf-manet-smf-09 (work in progress), July 2009.

   [I-D.ietf-v6ops-tunnel-security-concerns]
              Hoagland, J., Krishnan, S., and D. Thaler, "Security
              Concerns With IP Tunneling",
              draft-ietf-v6ops-tunnel-security-concerns-01 (work in
              progress), October 2008.

   [I-D.jen-apt]
              Jen, D., Meisel, M., Massey, D., Wang, L., Zhang, B., and
              L. Zhang, "APT: A Practical Transit Mapping Service",
              draft-jen-apt-01 (work in progress), November 2007.

   [I-D.nakibly-v6ops-tunnel-loops]
              Nakibly, G., "Routing Loops using ISATAP and 6to4: Problem
              Statement and Proposed Solutions",
              draft-nakibly-v6ops-tunnel-loops-01 (work in progress),
              February 2010.

   [I-D.russert-rangers]
              Russert, S., Fleischman, E., and F. Templin, "RANGER
              Scenarios", draft-russert-rangers-01 (work in progress),
              September 2009.

   [I-D.templin-iron]
              Templin, F., "The Internet Routing Overlay Network
              (IRON)", draft-templin-iron-00 (work in progress),
              February 2010.

   [I-D.templin-isatap-dhcp]
              Templin, F., "Dynamic Host Configuration Protocol (DHCPv4)
              Option for the Intra-Site Automatic Tunnel Addressing
              Protocol (ISATAP)", draft-templin-isatap-dhcp-06 (work in



Templin                 Expires September 9, 2010              [Page 39]


Internet-Draft                     VET                        March 2010


              progress), December 2009.

   [IEN48]    Cerf, V., "The Catenet Model for Internetworking",
              July 1978.

   [RASADV]   Microsoft, "Remote Access Server Advertisement (RASADV)
              Protocol Specification", October 2008.

   [RFC1122]  Braden, R., "Requirements for Internet Hosts -
              Communication Layers", STD 3, RFC 1122, October 1989.

   [RFC1256]  Deering, S., "ICMP Router Discovery Messages", RFC 1256,
              September 1991.

   [RFC1753]  Chiappa, J., "IPng Technical Requirements Of the Nimrod
              Routing and Addressing Architecture", RFC 1753,
              December 1994.

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC1955]  Hinden, R., "New Scheme for Internet Routing and
              Addressing (ENCAPS) for IPNG", RFC 1955, June 1996.

   [RFC2003]  Perkins, C., "IP Encapsulation within IP", RFC 2003,
              October 1996.

   [RFC2132]  Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor
              Extensions", RFC 2132, March 1997.

   [RFC2473]  Conta, A. and S. Deering, "Generic Packet Tunneling in
              IPv6 Specification", RFC 2473, December 1998.

   [RFC2491]  Armitage, G., Schulter, P., Jork, M., and G. Harter, "IPv6
              over Non-Broadcast Multiple Access (NBMA) networks",
              RFC 2491, January 1999.

   [RFC2501]  Corson, M. and J. Macker, "Mobile Ad hoc Networking
              (MANET): Routing Protocol Performance Issues and
              Evaluation Considerations", RFC 2501, January 1999.

   [RFC2529]  Carpenter, B. and C. Jung, "Transmission of IPv6 over IPv4
              Domains without Explicit Tunnels", RFC 2529, March 1999.

   [RFC2775]  Carpenter, B., "Internet Transparency", RFC 2775,
              February 2000.




Templin                 Expires September 9, 2010              [Page 40]


Internet-Draft                     VET                        March 2010


   [RFC3056]  Carpenter, B. and K. Moore, "Connection of IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

   [RFC3704]  Baker, F. and P. Savola, "Ingress Filtering for Multihomed
              Networks", BCP 84, RFC 3704, March 2004.

   [RFC3753]  Manner, J. and M. Kojo, "Mobility Related Terminology",
              RFC 3753, June 2004.

   [RFC3819]  Karn, P., Bormann, C., Fairhurst, G., Grossman, D.,
              Ludwig, R., Mahdavi, J., Montenegro, G., Touch, J., and L.
              Wood, "Advice for Internet Subnetwork Designers", BCP 89,
              RFC 3819, July 2004.

   [RFC3927]  Cheshire, S., Aboba, B., and E. Guttman, "Dynamic
              Configuration of IPv4 Link-Local Addresses", RFC 3927,
              May 2005.

   [RFC4192]  Baker, F., Lear, E., and R. Droms, "Procedures for
              Renumbering an IPv6 Network without a Flag Day", RFC 4192,
              September 2005.

   [RFC4193]  Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast
              Addresses", RFC 4193, October 2005.

   [RFC4213]  Nordmark, E. and R. Gilligan, "Basic Transition Mechanisms
              for IPv6 Hosts and Routers", RFC 4213, October 2005.

   [RFC4271]  Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
              Protocol 4 (BGP-4)", RFC 4271, January 2006.

   [RFC4301]  Kent, S. and K. Seo, "Security Architecture for the
              Internet Protocol", RFC 4301, December 2005.

   [RFC4380]  Huitema, C., "Teredo: Tunneling IPv6 over UDP through
              Network Address Translations (NATs)", RFC 4380,
              February 2006.

   [RFC4389]  Thaler, D., Talwar, M., and C. Patel, "Neighbor Discovery
              Proxies (ND Proxy)", RFC 4389, April 2006.

   [RFC4795]  Aboba, B., Thaler, D., and L. Esibov, "Link-local
              Multicast Name Resolution (LLMNR)", RFC 4795,
              January 2007.

   [RFC4852]  Bound, J., Pouffary, Y., Klynsma, S., Chown, T., and D.
              Green, "IPv6 Enterprise Network Analysis - IP Layer 3
              Focus", RFC 4852, April 2007.



Templin                 Expires September 9, 2010              [Page 41]


Internet-Draft                     VET                        March 2010


   [RFC4903]  Thaler, D., "Multi-Link Subnet Issues", RFC 4903,
              June 2007.

   [RFC4941]  Narten, T., Draves, R., and S. Krishnan, "Privacy
              Extensions for Stateless Address Autoconfiguration in
              IPv6", RFC 4941, September 2007.

   [RFC5340]  Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
              for IPv6", RFC 5340, July 2008.

   [RFC5720]  Templin, F., "Routing and Addressing in Networks with
              Global Enterprise Recursion (RANGER)", RFC 5720,
              February 2010.


Appendix A.  Duplicate Address Detection (DAD) Considerations

   A priori uniqueness determination (also known as "pre-service DAD")
   for an RLOC assigned on an enterprise-interior interface would
   require either flooding the entire enterprise network or somehow
   discovering a link in the network on which a node that configures a
   duplicate address is attached and performing a localized DAD exchange
   on that link.  But, the control message overhead for such an
   enterprise-wide DAD would be substantial and prone to false-negatives
   due to packet loss and intermittent connectivity.  An alternative to
   pre-service DAD is to autoconfigure pseudo-random RLOCs on
   enterprise-interior interfaces and employ a passive in-service DAD
   (e.g., one that monitors routing protocol messages for duplicate
   assignments).

   Pseudo-random IPv6 RLOCs can be generated with mechanisms such as
   CGAs, IPv6 privacy addresses, etc. with very small probability of
   collision.  Pseudo-random IPv4 RLOCs can be generated through random
   assignment from a suitably large IPv4 prefix space.

   Consistent operational practices can assure uniqueness for EBG-
   aggregated addresses/prefixes, while statistical properties for
   pseudo-random address self-generation can assure uniqueness for the
   RLOCs assigned on an ER's enterprise-interior interfaces.  Still, an
   RLOC delegation authority should be used when available, while a
   passive in-service DAD mechanism should be used to detect RLOC
   duplications when there is no RLOC delegation authority.


Appendix B.  Link-Layer Multiplexing and Traffic Engineering

   For each distinct enterprise network that it connects to, an EBR
   configures a VET interface over possibly multiple underlying



Templin                 Expires September 9, 2010              [Page 42]


Internet-Draft                     VET                        March 2010


   interfaces that all connect to the same network.  The VET interface
   therefore represents the EBR's logical point of attachment to the
   enterprise network, and provides a logical interface for link-layer
   multiplexing over its underlying interfaces as described in Section
   3.3.4.1 of [RFC1122]:

      "Finally, we note another possibility that is NOT multihoming: one
      logical interface may be bound to multiple physical interfaces, in
      order to increase the reliability or throughput between directly
      connected machines by providing alternative physical paths between
      them.  For instance, two systems might be connected by multiple
      point-to-point links.  We call this "link-layer multiplexing".
      With link-layer multiplexing, the protocols above the link layer
      are unaware that multiple physical interfaces are present; the
      link-layer device driver is responsible for multiplexing and
      routing packets across the physical interfaces."

   EBRs can support such a link-layer multiplexing capability across the
   enterprise network in accordance with the Weak End System Model (see
   Section 3.3.4.2 of [RFC1122]).  In particular, when an EBR
   autoconfigures an RLOC address (see Section 5.1), it can associate it
   with the VET interface only instead of assigning it to an underlying
   interface.  The EBR therefore only needs to obtain a single RLOC
   address even if there are multiple underlying interfaces, i.e., it
   does not need to obtain one for each underlying interface.  The EBR
   can then leave the underlying interfaces unnumbered, or it can
   configure a randomly chosen IP link-local address (e.g., from the
   prefix 169.254/16 [RFC3927] for IPv4) on underlying interfaces that
   require a configuration.  The EBR need not check these link-local
   addresses for uniqueness within the enterprise network, as they will
   not normally be used as the source address for packets.

   When the EBR engages in the enterprise-interior routing protocol, it
   uses the RLOC address assigned to the VET interface as the source
   address for all routing protocol control messages, however it must
   also supply an interface identifier (e.g., a small integer) that
   uniquely identifies the underlying interface that the control message
   is sent over.  For example, if the underlying interfaces are known as
   "eth0", "eth1" and "eth7" the EBR can supply the token "7" when it
   sends a routing protocol control message over the "eth7" interface.
   This is necessary to ensure that other routers can determine the
   specific interface over which the EBR's routing protocol control
   message was sent, but the token need only be unique within the EBR
   itself and need not be unique throughout the enterprise network.

   When the EBR discovers an RLOC route via the enterprise interior
   routing protocol, it configures a preferred route in the IP FIB that
   points to the VET interface instead of the underlying interface.  At



Templin                 Expires September 9, 2010              [Page 43]


Internet-Draft                     VET                        March 2010


   the same time, the EBR also configures an ancillary route that points
   to the underlying interface.  If the EBR discovers that the same RLOC
   route is reachable via multiple underlying interfaces, it configures
   multiple ancillary routes (i.e., one for each interface).  If the EBR
   discovers that the RLOC route is no longer reachable via any
   underlying interface, it removes the route in the IP FIB that points
   to the VET interface.

   With these arrangements, all locally-generated packets with RLOC
   destinations will flow through the VET interface (and thereby use the
   VET interface's RLOC address as the source address) instead of
   through the underlying interfaces.  In the same fashion, all
   forwarded packets with RLOC destinations will flow through the VET
   interface instead of through the underlying interfaces.

   This arrangement has several operational advantages that enable a
   number of traffic engineering capabilities.  First, the VET interface
   can insert the SEAL header so that ID-based duplicate packet
   detection is enabled within the enterprise network.  Secondly, SEAL
   can dynamically adjust its packet sizing parameters so that an
   optimum Maximum Transmission Unit (MTU) can be determined.  This is
   true even if the VET interface reroutes traffic between underlying
   interfaces with different MTUs.

   Most importantly, the EBR can configure default and more-specific
   routes on the VET interface to direct traffic through a specific
   egress EBR (eEBR) that may be many outer IP hops away.  Encapsulation
   will ensure that a specific eEBR is chosen, and the best eEBR can be
   chosen when multiple are available.  Also, local applications see a
   stable IP source address even if there are multiple underlying
   interfaces.  This link-layer multiplexing can therefore provide
   continuous operation across failovers between multiple links attached
   to the same enterprise network without any need for readdressing.
   Finally, the VET interface can forward packets with RLOC-based
   destinations over an underlying interface without any encapsulation
   if encapsulation avoidance is desired.

   It must be specifically noted that the above arrangement constitutes
   a case in which the same RLOC may be used as both the inner and outer
   IP source address.  This will not present a problem as long as both
   ends configure a VET interface in the same fashion.

   It must also be noted that EID-based communications can use the same
   VET interface arrangement, except that the EID-based next hop must be
   mapped to an RLOC-based next-hop within the VET interface.  For IPvX
   within IPvX encapsulation, as well as for IPv4 within IPv6
   encapsulation, this requires a VET interface specific address mapping
   database.  For IPv6 within IPv4 encapsulation, the mapping is



Templin                 Expires September 9, 2010              [Page 44]


Internet-Draft                     VET                        March 2010


   accomplished through simple static extraction of an IPv4 address
   embedded in a VET address.


Appendix C.  Anycast Services

   Some of the IPv4 addresses that appear in the Potential Router List
   may be anycast addresses, i.e., they may be configured on the VET
   interfaces of multiple EGBRs/EBGs.  In that case, each VET router
   interface that configures the same anycast address must provide
   equivalent packet forwarding and IPv6 Neighbor Discovery services.

   Use of an anycast address as the IP destination address of tunneled
   packets can have subtle interactions with tunnel path MTU and
   neighbor discovery.  For example, if the initial fragments of a
   fragmented tunneled packet with an anycast IP destination address are
   routed to different egress tunnel endpoints than the remaining
   fragments, the multiple endpoints will be left with incomplete
   reassembly buffers.  This issue can be mitigated by ensuring that
   each egress tunnel endpoint implements a proactive reassembly buffer
   garbage collection strategy.  Additionally, ingress tunnel endpoints
   that send packets with an anycast IP destination address must use the
   minimum path MTU for all egress tunnel endpoints that configure the
   same anycast address as the tunnel MTU.  Finally, ingress tunnel
   endpoints should treat ICMP unreachable messages from a router within
   the tunnel as at most a weak indication of neighbor unreachability,
   since the failures may only be transient and a different path to an
   alternate anycast router quickly selected through reconvergence of
   the underlying routing protocol.

   Use of an anycast address as the IP source address of tunneled
   packets can lead to more serious issues.  For example, when the IP
   source address of a tunneled packet is anycast, ICMP messages
   produced by routers within the tunnel might be delivered to different
   ingress tunnel endpoints than the ones that produced the packets.  In
   that case, functions such as path MTU discovery and neighbor
   unreachability detection may experience non-deterministic behavior
   that can lead to communications failures.  Additionally, the
   fragments of multiple tunneled packets produced by multiple ingress
   tunnel endpoints may be delivered to the same reassembly buffer at a
   single egress tunnel endpoint.  In that case, data corruption may
   result due to fragment misassociation during reassembly.

   In view of these considerations, EBRs/EBGs that configure an anycast
   address should also configure one or more unicast addresses from the
   Potential Router List; they should further accept tunneled packets
   destined to any of their anycast or unicast addresses, but should
   send tunneled packets using a unicast address as the source address.



Templin                 Expires September 9, 2010              [Page 45]


Internet-Draft                     VET                        March 2010


   In order to influence traffic to use an anycast route (and thereby
   leverage the natural fault tolerance afforded by anycast), ISATAP
   routers should set higher preferences on the default routes they
   advertise using an anycast address as the source and set lower
   preferences on the default routes they advertise using a unicast
   address as the source (see: [RFC4191]).


Appendix D.  Change Log

   (Note to RFC editor - this section to be removed before publication
   as an RFC.)

   Changes from -09 to -10:

   o  Changed "enterprise" to "enterprise network" throughout

   o  dropped "inner IP", since inner layer may be non-IP

   o  TODO - convert "IPv6 ND" to SEAL SCMP messages so that control
      messages remain *within* the tunnel interface instead of being
      exposed to the inner network layer protocol engine.

   Changes from -08 to -09:

   o  Expanded discussion of encapsulation/decapsulation procedures

   o  cited IRON

   Changes from -07 to -08:

   o  Specified the approach to global mapping using virtual aggregation
      and BGP

   Changes from -06 to -07:

   o  reworked redirect function

   o  created new section on VET interface encapsulation

   o  clarifications on nexthop selection

   o  fixed several bugs

   Changed from -05 to -06:






Templin                 Expires September 9, 2010              [Page 46]


Internet-Draft                     VET                        March 2010


   o  reworked VET interface ND

   o  anycast clarifications

   Changes from -03 to -04:

   o  security consideration clarifications

   Changes from -02 to -03:

   o  security consideration clarifications

   o  new PRLNAME for VET is "isatav2.example.com"

   o  VET now uses SEAL natively

   o  EBGs can support both legacy ISATAP and VET over the same
      underlying interfaces.

   Changes from -01 to -02:

   o  Defined CGA and privacy address configuration on VET interfaces

   o  Interface identifiers added to routing protocol control messages
      for link-layer multiplexing

   Changes from -00 to -01:

   o  Section 4.1 clarifications on link-local assignment and RLOC
      autoconfiguration.

   o  Appendix B clarifications on Weak End System Model

   Changes from RFC5558 to -00:

   o  New appendix on RLOC configuration on VET interfaces.


Author's Address

   Fred L. Templin (editor)
   Boeing Research & Technology
   P.O. Box 3707 MC 7L-49
   Seattle, WA  98124
   USA

   Email: fltemplin@acm.org




Templin                 Expires September 9, 2010              [Page 47]


Html markup produced by rfcmarkup 1.129c, available from https://tools.ietf.org/tools/rfcmarkup/