Internet DRAFT - draft-fang-mpls-label-forwarding-no-swap

draft-fang-mpls-label-forwarding-no-swap



 



INTERNET-DRAFT                                               Luyuan Fang
Intended Status: Standards Track                               Microsoft
Expires: May 7, 2016                                       Fabio Chiussi
                                                                        
                                                             Barak Gafni
                                                                Mellanox
                                                             Nabil Bitar
                                                          Alcatel Lucent
                                                              Zhenbin Li
                                                                  Huawei
                                                              Rob Raszuk
                                                               Bloomberg
                                                               Andrew Qu
                                                                MediaTek

                                                        November 4, 2015

                 MPLS Label Forwarding with No Swapping
              draft-fang-mpls-label-forwarding-no-swap-02


Abstract

   This document defines MPLS label forwarding operation with no label
   swapping as a new MPLS label operation extension to the existing
   basic forwarding operation of label push, pop, and swap.

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/1id-abstracts.html

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


Fang et al.              Expires <May 7, 2016>                  [Page 1]

INTERNET DRAFT   MPLS Label Forwarding with No Swapping November 4, 2015


Copyright and License Notice

   Copyright (c) 2015 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.


Table of Contents

   1. Introduction  . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . .  4
   3. Label Forwarding Operation as Defined in RFC3031  . . . . . . .  4
   4. Label Forwarding with No Swap . . . . . . . . . . . . . . . . .  5
   5. Proposed Text to Update RFC3031 . . . . . . . . . . . . . . . .  6
   6. Security Considerations . . . . . . . . . . . . . . . . . . . .  7
   7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . .  7
   8. References  . . . . . . . . . . . . . . . . . . . . . . . . . .  7
     8.1  Normative References  . . . . . . . . . . . . . . . . . . .  7
     8.2  Informative References  . . . . . . . . . . . . . . . . . .  7
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . .  8



















 


Fang et al.              Expires <May 7, 2016>                  [Page 2]

INTERNET DRAFT   MPLS Label Forwarding with No Swapping November 4, 2015


1. Introduction

   MPLS forwarding operation as defined in [RFC3031] has three basic
   operations that must be performed on the labels at the network nodes:
   push, swap, and pop. This document describes an additional operation
   action: label forwarding with no swap. Currently, using the same
   label as both incoming and outgoing label is typically achieved by
   "swapping" the incoming label with an identical outgoing label. In
   order to improve processing efficiency and memory usage reduction, a
   simple label forwarding operation with no swap is desirable. This
   operation should be specified in [RFC3031]

   When MPLS Architecture [RFC3031] was defined, the three types of
   label operation were sufficient, since labels were always only
   locally meaningful. Label swap operation is performed at a Label
   Switched Router (LSR) which is not an MPLS edge node, while label
   push and pop can be performed at an MPLS edge node for label
   imposition and deposition. Penultimate hop popping can also be
   performed at the penultimate hop for improved efficiency when
   appropriate. Since the labels are assigned independently in
   distributed fashion in a non-traffic engineered basic MPLS networks,
   it is not possible nor necessary to coordinate the label assignment.
   Therefore, the label swapping function is sufficient and effective
   for LSR.

   With the increased interests and large scale development of Software-
   Defined Networking (SDN), several new use cases have emerged where
   domain-wide labels are used. For example, central controller assigned
   MPLS labels become one of the options for MPLS based forwarding.
   Using a single label is used to traverse multiple hops along the
   Label Switched Path (LSP) become desirable. Relevant examples of the
   use of domain-wide labels are described in
   [I-D.fang-mpls-hsdn-for-hsdc], [I-D.ietf-spring-segment-routing], and
   [I-D.li-mpls-global-label-usecases]

   Domain-wide labels do not need to be swapped at the switches.
   Therefore, in order to allow efficient handling of domain-wide
   labels, there is a need to extend the label operation with one more
   action type - forwarding with no swap.

   The performance and memory efficiency can be increased by performing
   simple forwarding function than swapping the labels with the
   identical identifier. This does not otherwise change the fundamentals
   of MPLS architecture and label encoding as defined by [RFC3031]
   [RFC3032].



 


Fang et al.              Expires <May 7, 2016>                  [Page 3]

INTERNET DRAFT   MPLS Label Forwarding with No Swapping November 4, 2015


2. Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

   o  Incoming Label Map (ILM): It maps each incoming label to a set of
      NHLFEs. It is used when forwarding packets that arrive as labeled
      packets.

   o  Label forwarding: A simple forwarding paradigm allowing
      streamlined forwarding of data by using labels to identify classes
      of data packets which are treated indistinguishably when
      forwarding without label swapping.

   o  Label swap: The basic existing forwarding operation consisting of
      looking up an incoming label to determine the outgoing label
      encapsulation, port, and other data handling information.

   o  Label swapping: A forwarding paradigm allowing streamlined
      forwarding of data by using labels to identify classes of data
      packets which are treated indistinguishably when forwarding.

   o  Label Switched Path (LSP): The path through one or more LSRs at
      one level of the hierarchy followed by a packets in a particular
      forwarding equivalence class (FEC).

   o  Label Switching Router (LSR): An MPLS node which is capable of
      forwarding native L3 packets.

   o  MPLS edge node: An MPLS node that connects an MPLS domain with a
      node which is outside of the domain, either because it does not
      run MPLS, and/or because it is in a different domain.  Note that
      if an LSR has a neighboring host which is not running MPLS, that
      that LSR is an MPLS edge node.

   o  NHLFE: Next Hop Label Forwarding Entry

   o  Software-Defined Networking (SDN): an architecture that decouples
      the network control and forwarding functions to enable the network
      control to be directly programmable and the underlying
      infrastructure to be abstracted for applications and network
      services.


3. Label Forwarding Operation as Defined in RFC3031

      Section 3.10 in [RFC3031] states the following:
 


Fang et al.              Expires <May 7, 2016>                  [Page 4]

INTERNET DRAFT   MPLS Label Forwarding with No Swapping November 4, 2015


      "The "Next Hop Label Forwarding Entry" (NHLFE) is used when
      forwarding a labeled packet. It contains the following
      information:

   1. the packet's next hop 

   2. the operation to perform on the packet's label stack; this is one
      of the following operations: 

      a) replace the label at the top of the label stack with a
         specified new label 

      b) pop the label stack 

      c) replace the label at the top of the label stack with a
         specified new label, and then push one or more specified new
         labels onto the label stack.

       ..."

   Section 3.13 in [RFC3031] states the following:

   "Label swapping is the use of the following procedures to forward a
   packet. In order to forward a labeled packet, a LSR examines the
   label at the top of the label stack.  It uses the ILM to map this
   label to an NHLFE.  Using the information in the NHLFE, it determines
   where to forward the packet, and performs an operation on the
   packet's label stack.  It then encodes the new label stack into the
   packet, and forwards the result."

   It is clear that, in order to forward a labeled packet, [RFC3031]
   mandates to perform one of three possible operations: swap, pop, or
   swap/push.

   Therefore, in order to forward a labeled packet with a label that
   does not need to be swapped according to the standard, the label at
   the top of the label stack must be swapped with an identical label.

   Simply forwarding the labeled packet without swapping the label does
   not conform with [RFC3031].

4. Label Forwarding with No Swap

   Label forwarding is the use of the following procedures to forward a
   packet.

   Same as in [RFC3031], in order to forward a labeled packet, a LSR
   examines the label at the top of the label stack.  It uses the ILM to
 


Fang et al.              Expires <May 7, 2016>                  [Page 5]

INTERNET DRAFT   MPLS Label Forwarding with No Swapping November 4, 2015


   map this label to an NHLFE.  Using the information in the NHLFE, it
   determines where to forward the packet, and performs an operation on
   the packet's label stack.

   Unlike in label swapping, label forwarding does not remove the
   incoming label and encodes the new label stack into the packet as in
   label swapping, it forwards the packet with the same label stack as
   the incoming stack, to the outgoing interface. Other processing may
   be involved in selecting the outgoing interface, for example, load
   balancing through IP deader hashing or use of Entropy label
   [RFC6790].

5. Proposed Text to Update RFC3031

   In order to allow efficient processing of domain-wide labels, which
   do not need to be swapped, we propose to add a fourth possible
   operation "Forward No Swap" to [RFC3031]. 

   Accordingly, [RFC3031] should be modified as follows.

   1. the packet's next hop 

   2. the operation to perform on the packet's label stack; this is one
   of the following operations: 

      a) replace the label at the top of the label stack with a
         specified new label 

      b) pop the label stack 

      c) replace the label at the top of the label stack with a
         specified new label, and then push one or more specified new
         labels onto the label stack

      d) keep the label at the top of the label stack unchanged.

       ..."











 


Fang et al.              Expires <May 7, 2016>                  [Page 6]

INTERNET DRAFT   MPLS Label Forwarding with No Swapping November 4, 2015


6. Security Considerations

      The MPLS label forwarding operation specified herein does not
      raise any security issues that are not already present in either
      the MPLS architecture [RFC3031] or in MPLS label encoding
      [RFC3032].

      In addition, general MPLS and GMPLS considerations and MPLS
      security defense techniques are documented in [RFC5920].

7. IANA Considerations

      None.

8. References

8.1  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC3031]  Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol
              Label Switching Architecture", RFC 3031, January 2001.

   [RFC3032]  Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y.,
              Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack
              Encoding", RFC 3032, January 2001.

   [RFC6790]  Kompella, K., et.al, "The Use of Entropy Labels in MPLS
              Forwarding", November 2012.

8.2  Informative References

   [RFC5920]  Fang, L., Ed., "Security Framework for MPLS and GMPLS
              Networks", RFC 5920, July 2010.

   [I-D.fang-mpls-hsdn-for-hsdc]  L. Fang, et al., "MPLS-Based
              Hierarchical SDN for Hyper-Scale DC/Cloud", draft-fang-
              mpls-hsdn-for-hsdc-04 (work in progress), July 2015.

   [I-D.ietf-spring-segment-routing] Filsfils, C. et al., "Segment
              Routing Architecture", draft-ietf-spring-segment-routing-
              06 (work in progress), October 2015.

   [I-D.li-mpls-global-label-usecases] Z. Li, et al., "Usecases of MPLS
              Global Label, draft-li-mpls-global-label-usecases-03 (work
              in progress), October 2015.

 


Fang et al.              Expires <May 7, 2016>                  [Page 7]

INTERNET DRAFT   MPLS Label Forwarding with No Swapping November 4, 2015


Authors' Addresses

   Luyuan Fang
   Microsoft
   5600 148th Ave NE
   Redmond, WA 98052
   Email: lufang@microsoft.com

   Fabio Chiussi
   Seattle, WA 98116
   Email: fabiochiussi@gmail.com

   Barak Gafni
   Mellanox
   6 Habarzel St.
   Tel Aviv, Israel
   Email: gbarak@mellanox.com

   Nabil Bitar
   Alcatel Lucent

   Zhenbin Li
   Huawei Technologies
   Huawei Bld., No.156 Beiqing Rd.
   Beijing  100095
   China

   Robert Raszuk
   Email: robert@raszuk.net

   Andrew Qu
   MediaTek
   2860 Junction Ave.
   San Jose, CA 95134
   Email: andrew.qu@mediatek.com
















Fang et al.              Expires <May 7, 2016>                  [Page 8]