Carrying Virtual Transport Network (VTN)
Identifier in IPv6 Extension HeaderHuawei TechnologiesHuawei Campus, No. 156 Beiqing RoadBeijing100095Chinajie.dong@huawei.comHuawei TechnologiesHuawei Campus, No. 156 Beiqing RoadBeijing100095Chinalizhenbin@huawei.comChina TelecomChina Telecom Beijing Information Science & Technology,
BeiqijiaBeijing102209Chinaxiechf@chinatelecom.cnChina TelecomChina Telecom Beijing Information Science & Technology,
BeiqijiaBeijing102209Chinamachh@chinatelecom.cnVerizon Inc.gyan.s.mishra@verizon.comVirtual Private Networks (VPNs) provide different customers with
logically separated connectivity over a common network infrastructure.
With the introduction and evolvement of 5G and other network scenarios,
some existing or new customers may require connectivity services with
advanced characteristics comparing to traditional VPNs. Such kind of
network service is called enhanced VPNs (VPN+).A Virtual Transport Network (VTN) is a virtual underlay network which
consists of a set of dedicated or shared network resources allocated
from the physical underlay network, and is associated with a customized
logical network topology. VPN+ services can be delivered by mapping one
or a group of overlay VPNs to the appropriate VTNs as the virtual
underlay. In packet forwarding, some fields in the data packet needs to
be used to identify the VTN the packet belongs to, so that the
VTN-specific processing can be performed on each node the packet
traverses.This document proposes a new Hop-by-Hop option of IPv6 extension
header to carry the VTN Resource ID, which is used to identify the set
of network resources allocated to a VTN for packet processing. The
procedure for processing the VTN option is also specified.Virtual Private Networks (VPNs) provide different customers with
logically isolated connectivity over a common network infrastructure.
With the introduction and evolvement of 5G and other network scenarios,
some existing or new customers may require connectivity services with
advanced characteristics comparing to traditional VPNs, such as resource
isolation from other services or guaranteed performance. Such kind of
network service is called enhanced VPN (VPN+). VPN+ service requires the
coordination and integration between the overlay VPNs and the network
characteristics of the underlay. describes a framework and
the candidate component technologies for providing VPN+ services. It
also introduces the concept of Virtual Transport Network (VTN). A
Virtual Transport Network (VTN) is a virtual underlay network which
consists of a set of dedicated or shared network resources allocated
from the physical underlay network, and is associated with a customized
logical network topology. VPN+ services can be delivered by mapping one
or a group of overlay VPNs to the appropriate VTNs as the underlay, so
as to provide the network characteristics required by the customers. In
packet forwarding, traffic of different VPN+ services need to be
processed separately based on the network resources and the logical
topology associated with the corresponding VTN. describes
the scalability considerations and the possible optimizations for
providing a relatively large number of VTNs for VPN+ services. One
approach to improve the data plane scalability of VTN is to introduce a
dedicated VTN Resource Identifier (VTN Resource ID) in the data packet
to identify the set of network resources allocated to a VTN, so that
VTN-specific packet processing can be performed using that set of
resources, which avoids the possible resource competition with services
in other VTNs. This is called Resource Independent (RI) VTN. A VTN
Resource ID represents a subset of the resources (e.g. bandwidth, buffer
and queuing resources) allocated on a given set of links and nodes which
constitute a logical network topology. The logical topology associated
with a VTN could be defined using mechanisms such as Multi-Topology
, or Flex-Algo , etc.This document proposes a mechanism to carry the VTN resource ID in a
new Hop-by-Hop option of IPv6 extension header
of IPv6 packet, so that on each network node along the packet forwarding
path, the VTN option in the packet is parsed, and the obtained VTN
Resource ID is used to instruct the network node to use the set of
network resources allocated to the corresponding VTN to process and
forward the packet. The procedure for processing the VTN Resource ID is
also specified. This provides a scalable solution to support a
relatively large number of VTNs in an IPv6 network.The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
BCP14 RFC 2119RFC 8174 when, and only when, they appear in
all capitals, as shown here.A new Hop-by-Hop option type "VTN" is defined to carry the VTN
related Identifier in an IPv6 packet. Its format is shown as below:Option Type: 8-bit identifier of the type of option. The type of VTN
option is to be assigned by IANA. The highest-order bits of the type
field are defined as below:BB 00 The highest-order 2 bits are set to 00 to indicate that a
node which does not recognize this type will skip over it and
continue processing the header.C 0 The third highest-order bit are set to 0 to indicate this
option does not change en route.Opt Data Len: 8-bit unsigned integer indicates the length of the
option Data field of this option, in octets. The value of Opt Data Len
of VTN option SHOULD be set to 4.VTN Resource ID: 4-octet identifier which uniquely identifies the set
of network resources allocated to a VTN.Editor's note: The length of the VTN Resource ID is defined as
4-octet in correspondence to the 4-octet Single Network Slice Selection
Assistance Information (S-NSSAI) defined in 3GPP .As the VTN option needs to be processed by each node along the path
for VTN-specific forwarding, it SHOULD be carried in IPv6 Hop-by-Hop
options header when the Hop-by-Hop options header can be either
processed or ignored in forwarding plane by all the nodes along the
path.When an ingress node of an IPv6 domain receives a packet, according
to the traffic classification or mapping policy, the packet is steered
into one of the VTNs in the network, then the packet SHOULD be
encapsulated in an outer IPv6 header, and the Resource ID of the VTN
which the packet is mapped to SHOULD be carried in the VTN option of
the Hop-by-Hop options header associated with the outer IPv6
header.On receipt of a packet with the VTN option, each network node which
can process the VTN option in fast path SHOULD use the VTN Resource ID
to determine the set of local network resources allocated to the VTN
for packet processing. The packet forwarding behavior is based on both
the destination IP address and the VTN Resource ID. More specifically,
the destination IP address is used to determine the next-hop and the
outgoing interface, and VTN Resource ID is used to determine the set
of network resources on the outgoing interface which are reserved to
the VTN for processing and sending the packet. The Traffic Class field
of the outer IPv6 header MAY be used to provide Diffserv treatment for
packets which belong to the same VTN. The egress node of the IPv6
domain SHOULD decapsulate the outer IPv6 header which includes the VTN
option.In the forwarding plane, there can be different approaches of
partitioning the local network resources and allocating them to
different VTNs. For example, on one physical interface, a subset of
the forwarding plane resources (e.g. the bandwidth and the associated
buffer and queuing resources) can be allocated to a particular VTN and
represented as a virtual sub-interface with reserved bandwidth
resource. In packet forwarding, the IPv6 destination address of the
received packet is used to identify the next-hop and the outgoing
layer-3 interface, and the VTN Resource ID is used to further identify
the virtual sub-interface which is associated with the VTN on the
outgoing interface.Network nodes which do not support the processing of Hop-by-Hop
options header SHOULD ignore the Hop-by-Hop options header and forward
the packet only based on the destination IP address. Network nodes
which support Hop-by-Hop Options header, but do not support the VTN
option SHOULD ignore the VTN option and continue to forward the packet
based on the destination IP address and MAY also based on the rest of
the Hop-by-Hop Options.As described in , network nodes may be
configured to ignore the Hop-by-Hop Options header, and in some
implementations a packet containing a Hop-by-Hop Options header may be
dropped or assigned to a slow processing path. The proposed modification
to the processing of IPv6 Hop-by-Hop options header is specified in
. Operator needs to make
sure that all the network nodes involved in a VTN can either process
Hop-by-Hop Options header in the fast path, or ignore the Hop-by-Hop
Option header. Since a VTN is associated with a logical network
topology, it is practical to ensure that all the network nodes involved
in that logical topology support the processing of the HBH options
header and the VTN option. In other word, packets steered into a VTN
MUST NOT be dropped due to the existence of the Hop-by-Hop Options
header. It is RECOMMENDED to configure all the network nodes involved in
a VTN to process the Hop-by-Hop Options header and the VTN option if
there is a nob for this.This document requests IANA to assign a new option type from
"Destination Options and Hop-by-Hop Options" registry.The security considerations with IPv6 Hop-by-Hop options header are
described in , and
. This document introduces
a new IPv6 Hop-by-Hop option which is either processed in the fast path
or ignored by network nodes, thus it does not introduce additional
security issues.The authors would like to thank Juhua Xu, James Guichard, Joel
Halpern and Tom Petch for their review and valuable comments.3GPP TS23.501