Internet DRAFT - draft-kj-nvo3-encapsulation-reqt
draft-kj-nvo3-encapsulation-reqt
Network Working Group L. Jin
Internet-Draft ZTE
Intended status: Informational B. Khasnabish
Expires: March 29, 2013 ZTE USA
Sep 25, 2012
Encapsulation Requirement of Network Virtualization Overlay
draft-kj-nvo3-encapsulation-reqt-00.txt
Abstract
This document discusses NVO3 data plane encapsulation requirements.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on March 29, 2013.
Copyright Notice
Copyright (c) 2012 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 Simplified BSD License.
Jin & Khasnabish Expires March 29, 2013 [Page 1]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. List of Acronyms . . . . . . . . . . . . . . . . . . . . . . . 3
3. General Requirement . . . . . . . . . . . . . . . . . . . . . . 3
4. Protocol Layers and Encapsulation Requirement . . . . . . . . . 3
4.1. Encapsulation Layer Requirement . . . . . . . . . . . . . . 4
4.2. Tenant Network Identifier Layer Requirements . . . . . . . 5
4.3. PSN Layer Requirements . . . . . . . . . . . . . . . . . . 6
4.4. PSN Layer Association Requirements . . . . . . . . . . . . 6
5. Forwarding Behavior Requirements . . . . . . . . . . . . . . . 6
6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 8
7. Informative References . . . . . . . . . . . . . . . . . . . . 8
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 8
Jin & Khasnabish Expires March 29, 2013 [Page 2]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
1. Introduction
This document specifies the encapsulation requirement of the NVO3
data plane: the protocol layer concerned with the encapsulation and
forwarding behavior requirements. There is an initial such kind of
effort discussed in [I-D.kj-nvo3-pion-architecture], most of the
contents in this draft are inherited from
[I-D.kj-nvo3-pion-architecture] and are further discussed here.
2. List of Acronyms
PSN: Packet Switched Network
ECMP: Equal Cost Multi-Path
NVE: Network Virtualization Edge
LAN: Local Area Network
VLAN: Virtual LAN
3. General Requirement
It is suggested that only one type of data plane be standardized for
both Layer-2 and Layer-3 Network Virtualization.
The NVO3 provides a virtualized overlay network that MUST be
independent of the underlying PSN. The PSN in this draft refers to
IP or MPLS network. That means that the overlay network could work
on any underlying PSN layer, and can reuse the capability of the
underlying layer.
The packet transport capabilities provided by NVO3 are inherited from
the capability of the underlying PSN. Enabling overlay network to be
independent of underlying PSN allows NVO3 to be benefitted from
different kinds of underlying PSN capabilities, e.g., bandwidth and
QoS assurance, multicast, traffic engineering, security and other
capabilities.
4. Protocol Layers and Encapsulation Requirement
The NVO3 data packet SHOULD consist of the following layers:
1. Customer payload layer: the customer payload in datacenter
would be an Ethernet payload, but here it does not preclude the
Jin & Khasnabish Expires March 29, 2013 [Page 3]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
other type of payload, e.g., IP payload.
2. Encapsulation layer: it provides packet transport with some
NVO3 specific capabilities that other layers could not provide.
3. Tenant Network Identifier (TNI) layer: it provides customer
traffic and address isolation among different tenants. Different
customer address domain MUST have different TNI value.
4. Underlying network PSN layer: it provides physical network
transport for the virtualized network in datacenter, and is
maximally reused from IETF-defined protocols.
5. Data-Link and physical layer are out of the scope of this
document.
One example of the NVO3 protocol layering model could be as shown
below:
+-------------------------------------------+
| Customer Payload |
| ~~~ |
/===========================================\
H Tenant Network Identifier H
H-------------------------------------------H
H Encapsulation H
\===========================================/
| PSN Layer |
+-------------------------------------------+
| Data-Link |
+-------------------------------------------+
| Physical Layer |
+-------------------------------------------+
Figure 1
4.1. Encapsulation Layer Requirement
There are several functions/services that the encapsulation layer
should provide. This draft lists the following functions/services:
a. Customer payload indication to indicate different type of
customer payloads.
b. Packet sequencing and fragmentation capability.
Jin & Khasnabish Expires March 29, 2013 [Page 4]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
c. Flow entropy value to add flow based entropy, and tag all the
packets from a flow with an entropy label, e.g., MPLS label, and
ECMP tag.
An "indicator" value in encapsulation layer could be provided to
indicate the customer payload type. The purpose of this is to have
one NVO3 data plane format for both Layer-2 and Layer-3 Network
Virtualization.
In order to obtain information about packet loss, the applications
that use UDP transport requires transmitting packets with sequence
number. Some application requires lager packet transport in order to
improve efficiency, and then packet fragmentation maybe required, and
is preferred to be performed at hardware layer. The encapsulation
layer SHOULD have the capability to provide packet fragmentation
information. Some PSN connection used by NVO3 does not provide ECMP
capability, e.g., GRE. The encapsulation layer SHOULD provide such
ECMP capability, by adding a flow entropy value to indicate flow
based entropy, and it is required to tag all the packets from one
flow with same entropy value.
As the PSN layer with UDP encapsulation, the entropy value could be
added to the UDP source port, and then the flow entropy value in
encapsulation layer could be omitted.
As the PSN layer with GRE tunnel, the flow entropy value in
encapsulation layer should be added if ECMP per flow is required.
As the PSN layer with TCP-like encapsulation [I-D.davie-stt], the
sequencing and fragmentation could be provided by the IP layer, and
then the sequencing and fragmentation capability in tenant header
could be omitted. The entropy value could be added to the TCP source
port, and then the flow entropy value in encapsulation layer could be
omitted.
As the PSN layer with MPLS tunnel, the sequencing and fragmentation
in tenant header would be applied if required. The entropy value
could be added to the MPLS flow label, and then the flow entropy
value in encapsulation layer could be omitted.
4.2. Tenant Network Identifier Layer Requirements
The tenant network identifier (TNI) SHOULD be an integer to indicate
the membership of each customer packet. One example is to use an
global integer number, like VLAN tag/ID. For example, in datacenters
the use of explicit tenant ID will simplify the interoperations in
the inter-datacenter communications. By whatever control plane TNI
has been allocated, static configuration or dynamic allocation, the
Jin & Khasnabish Expires March 29, 2013 [Page 5]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
overlay network with different control plane could be always
interoperable with same TNI. That would be particular useful when
interconnecting two datacenter with different control plane, the
operator only needs to ensure the same TNI (or by TNI translation) to
interoperate.
4.3. PSN Layer Requirements
The PSN layer MUST provide some value to indicate the tenant payload
type, so as to parse the packet format following PSN layer.
The PSN Layer for NVO3 SHOULD be any type of PSN connection that has
capability to transmit tenant packets. There SHOULD be generally two
kinds of PSN connection that could be provided, IP and MPLS.
The ECMP transport capability of PSN layer SHOULD be able to hash the
traffic per flow per tenant.
4.4. PSN Layer Association Requirements
It SHOULD be the function of NVE to associate the tenant traffic with
PSN connection to one peer NVE, which could be done by configuration
or other implementation specific way. Different type of PSN
connections SHOULD be allowed to use between different NVEs within
one tenant.
The NVE SHOULD have the capability to setup the specified PSN
connection if required. For example, if only IP connection required
between or among NVEs, IP connection setup capability is required for
NVEs. If one NVE requires BW guarantee connection to peer NVE which
is located in another datacenter across WAN, the NVE should be able
to setup hierarchical MPLS LSP and specify the bandwidth required.
5. Forwarding Behavior Requirements
The tenant forwarding table entry MUST contain destination MAC
address for Layer2 network virtualization, or with destination IP
address for Layer3 network virtualization, and PSN tunnel
information.
When an NVE receives packets from host/virtual machine, it MUST have
at least following information: the tenant membership the packet
belongs to, the network virtualization type (Layer2 or Layer3). The
NVE MUST lookup the tenant forwarding table to forward the packet
with destination MAC address for Layer2 network virtualization, or
with destination IP address for Layer3 network virtualization.
Jin & Khasnabish Expires March 29, 2013 [Page 6]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
Additionally, NVE SHOULD determine the encapsulation header:
a) If fragmentation required, packet fragmentation or reassembling
SHOULD be supported;
b) If sequencing required, packet sequencing SHOULD be supported;
c) If entropy value provided, packet ECMP SHOULD be supported with
this entropy value.
Then the Ethernet packet for Layer2 network virtualization, or IP
packet for Layer3 network virtualization MUST be sent with tenant
network identifier, encapsulation layer and PSN tunnel encapsulated
to remote NVE.
When an NVE receives packets from another remote NVE, the PSN tunnel
MUST be terminated and it will strip the PSN header, and SHOULD be
able to parse the format of tenant header. NVE SHOULD examine the
encapsulation header to determine:
a) Whether the packet is Ethernet packet for Layer2 network
virtualization, or IP packet for Layer3 network virtualization;
b) If fragmentation required, packet fragmentation or reassembling
SHOULD be supported;
c) If sequencing required, packet sequencing SHOULD be supported;
d) If entropy value provided, packet ECMP SHOULD be supported with
this entropy value.
NVE MUST strip encapsulation layer and tenant network identifier to
get customer packet. The tenant forwarding table should be indexed
by the TNI contained in Tenant Network Identifier Layer. NVE MUST
forward the customer packets by looking up the tenant forwarding
table:
a) If Layer2 packet type is indicated in the encapsulation header,
customer payload should be parsed with standard Ethernet format.
The customer payload!_s destination MAC address MUST be used to
lookup tenant forwarding table.
b) If Layer3 packet type is indicated in the encapsulation header,
customer payload should be parsed with IP payload format. The
customer payload!_s destination IP address MUST be used to lookup
tenant forwarding table.
Jin & Khasnabish Expires March 29, 2013 [Page 7]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
6. Acknowledgments
Will be added in future.
7. Informative References
[I-D.davie-stt]
Davie, B. and J. Gross, "A Stateless Transport Tunneling
Protocol for Network Virtualization (STT)",
draft-davie-stt-02 (work in progress), September 2012.
[I-D.kj-nvo3-pion-architecture]
Jin, L. and B. Khasnabish, "Architecture of PSN
Independent Overlay Network(PION)",
draft-kj-nvo3-pion-architecture-00 (work in progress),
May 2012.
[I-D.mahalingam-dutt-dcops-vxlan]
Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger,
L., Sridhar, T., Bursell, M., and C. Wright, "VXLAN: A
Framework for Overlaying Virtualized Layer 2 Networks over
Layer 3 Networks", draft-mahalingam-dutt-dcops-vxlan-02
(work in progress), August 2012.
[I-D.sridharan-virtualization-nvgre]
Sridhavan, M., Greenberg, A., Venkataramaiah, N., Wang,
Y., Duda, K., Ganga, I., Lin, G., Pearson, M., Thaler, P.,
and C. Tumuluri, "NVGRE: Network Virtualization using
Generic Routing Encapsulation",
draft-sridharan-virtualization-nvgre-01 (work in
progress), July 2012.
Authors' Addresses
Lizhong Jin
ZTE
889, Bibo Road
Shanghai, 201203, China
Email: lizhong.jin@zte.com.cn, lizho.jin@gmail.com
Jin & Khasnabish Expires March 29, 2013 [Page 8]
Internet-Draft draft-kj-nvo3-encapsulation-reqt-00 Sep 2012
Bhumip Khasnabish
ZTE USA, Inc.
55 Madison Avenue, Suite 160
Morristown, NJ 07960 USA
Email: bhumip.khasnabish@zteusa.com, vumip1@gmail.com
Jin & Khasnabish Expires March 29, 2013 [Page 9]