Internet Draft






MPLS Working  Group                                    A. Conta (Lucent)
INTERNET-DRAFT                                         P. Doolan (Cisco)
                                                       September 1997


                Use of Label Switching With Frame Relay

                             Specification

                       draft-conta-mpls-fr-00.txt


Status of this Memo

   This document is  an  Internet-Draft.   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.  Internet-Drafts  may  be  updated, replaced, or obsoleted by
   other documents at any time.  It is not appropriate to use  Internet-
   Drafts as reference material or to cite them other than as a "working
   draft" or "work in progress."

   To learn the current status of any Internet-Draft, please  check  the
   "1id-abstracts.txt"  listing  contained in the Internet-Drafts Shadow
   Directories  on  ftp.is.co.za   (Africa),   nic.nordu.net   (Europe),
   munnari.oz.au  (Pacific  Rim),  ds.internic.net  (US  East Coast), or
   ftp.isi.edu (US West Coast).

   Distribution of this memo is unlimited.

Abstract

   This  document  defines  the  model  and   generic   mechanisms   for
   Multiprotocol   Label   Switching   on   Frame   Relay   networks.  A
   Multiprotocol Label Switching Architecture is  described  in  [ARCH].
   MPLS  enables  the  use  of  Frame  Relay Switches as Label Switching
   Routers (LSRs). The Frame Relay Switches run  network  layer  routing
   algorithms  (such as OSPF, IS-IS, etc.), and their data forwarding is
   based on the results of these routing  algorithms.  No  Frame  Relay-
   specific routing is needed.








Conta        Expires in six months                  [Page 1]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


Table of Contents


   Status of this Memo.........................................1
   Table of Contents...........................................2
1. Introduction................................................3
2. Terminology.................................................3
3. Special Characteristics of Frame Relay Switches.............4
4  Label Switching Control Component for Frame Relay...........4
5  Hybrid Switches (Ships in the Night)  ......................5
6  Use of DLCIs  ..............................................6
7  Label Allocation and Maintenance Procedures ................7
    7.1 Edge LSR Behavior......................................7
    7.2 Efficient use of label space..  ......................10
8  Label Encapsulation  ......................................10
9  Security Considerations  ..................................11
10 Acknowledgments  ..........................................11
11 References  ...............................................11
12 Authors' Addresses  .......................................12
































Conta        Expires in six months                  [Page 2]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


1. Introduction

   A Multiprotocol Label Switching Architecture is described in  [ARCH].
   It  is  possible  to  use  Frame  Relay  switches  as Label Switching
   Routers.   Such  Frame  Relay  switches  run  network  layer  routing
   algorithms (such as OSPF, IS-IS, etc.), and their forwarding is based
   on the results of these routing algorithms.  No specific Frame  Relay
   routing is needed.

   Frame Relay permanent virtual circuits (PVCs) could be configured  to
   carry  label  switching  based  traffic. The traffic through the PVCs
   would be forwarded based on network layer routing information.

   When a Frame Relay switch is used for label switching, the  label  on
   which  forwarding decisions are based is carried in the DLCI field of
   the Frame Relay data link layer header of  a  frame.   In  this  case
   other  labels,  if the packet is multiply labeled, are carried in the
   generic MPLS encapsulation defined in [STACK].

   Although we deal here with the use of DLCIs as MPLS  Labels  and  the
   transformation thereby of FR Switches into MPLS switches we note that
   MPLS traffic could be carried over FR PVCs using  the  techniques  of
   RFC1490.

   The keywords MUST, MUST NOT, MAY, OPTIONAL,   REQUIRED,  RECOMMENDED,
   SHALL,  SHALL  NOT,  SHOULD,  SHOULD  NOT   are  to be interpreted as
   defined in RFC 2119.

2. Terminology


   LSR

        A Label Switching Router (LSR) is a device which implements  the
        label  switching  control and forwarding components described in
        [ARCH].

   LC-FR

        A label switching controlled Frame Relay (LC-FR) interface is  a
        Frame  Relay interface controlled by the label switching control
        component. Packets traversing such an interface carry labels  in
        the DLCI field.

   FR-LSR

        A FR-LSR is an LSR with  a  number  of  LC-FR  interfaces  which
        forwards frames between these interfaces using labels carried in



Conta        Expires in six months                  [Page 3]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


        the DLCI field.

   FR-LSR cloud

        A  FR-LSR  cloud  is  a  set  of  FR-LSRs  which  are   mutually
        interconnected by LC-FR interfaces.

   Edge Set

        The Edge Set of an FR-LSR cloud is the set  of  LSRs  which  are
        connected to the cloud by LC-FR interfaces.


3. Special characteristics of Frame Relay Switches

   While  the  label   switching   architecture   permits   considerable
   flexibility  in  LSR  implementation,  a FR-LSR is constrained by the
   capabilities  of  the  (possibly  pre-existing)  hardware   and   the
   restrictions  on such matters as frame format imposed by RFC 1490, or
   Frame Relay standards (Q.922, etc).  Because  of  these  constraints,
   some special procedures are required for FR-LSRs.

   Some of the key features of Frame Relay switches that  affects  their
   behavior as LSRs are:

   -    the label swapping function is performed on fields (DLCI) in the
        frame's Frame Relay data link header; this dictates the size and
        placement of the label(s) in a packet.  The  size  of  the  DLCI
        field  can be 10 (default), 17, or 24 bits, and it can span two,
        three, or respectively four bytes in the header.

   -    congestion control is performed by each node based on parameters
        that  are passed at circuit creation. Flags in the frame headers
        may be set as a consequence  of  congestion,  or  exceeding  the
        contractual parameters of the circuit.

   -    multipoint-to-point   and   multipoint-to-multipoint   VCs   are
        generally not supported.


   -    there is generally no capability to  perform  a  `TTL-decrement'
        function as is performed on IP headers in routers.


   This document describes ways of applying  label  switching  to  Frame
   Relay switches which work within these constraints.





Conta        Expires in six months                  [Page 4]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


4.  Label Switching Control Component for Frame Relay


   To support label switching a Frame Relay Switch  must  implement  the
   control  component  of  label  switching.  This consists primarily of
   label  allocation   and   maintenance   procedures.   Label   binding
   information  may  be communicated by several mechanisms, one of which
   is the Label Distribution Protocol (LDP) [LDP].

   Since the label switching control component uses information  learned
   directly  from network layer routing protocols, this implies that the
   switch must participate as a peer in  these  protocols  (e.g.,  OSPF,
   IS-IS).

   In some cases, LSRs make use of other protocols (e.g. RSVP, PIM, BGP)
   to distribute label bindings. In these cases, a Frame Relay LSR would
   need to participate in these protocols.

   Frame Relay permanent virtual circuits (PVCs) can be  used  to  carry
   MPLS traffic using the encapsulation techniques described in RFC1490.
   In such a case the DLCIs allocated for the PVCs will  be  distributed
   as MPLS labels by LDP.

   In the case where Frame Relay circuits are established  via  LDP,  or
   RSVP, with no involvement from traditional Frame Relay mechanisms, it
   is assumed that circuit establishing contractual information such  as
   input/output  maximum  frame size, incoming/outgoing requested/agreed
   throughput,      incoming/outgoing       acceptable       throughput,
   incoming/outgoing  burst  size, incoming/outgoing frame rate, used in
   transmitting, and congestion control could be passed to  the  FR-LSRs
   through  RSVP.  It  is also assumed that congestion control and frame
   header flagging as a consequence of congestion, would be done by  the
   FR-LSRs in a similar fashion as for traditional Frame Relay circuits.

   Control and state information for the circuits based on MPLS could be
   communicated through LDP.

   Support of label switching on a Frame Relay switch does  not  require
   the  switch  to  support the Frame Relay control component defined by
   the ITU (I.451, Q.922) and Frame Relay Forum (e.g., UNI, NNI). A  FR-
   LSR may optionally support and respond to LMI commands.



5.  Hybrid Switches (Ships in the Night)


   The existence of the label switching control  component  on  a  Frame



Conta        Expires in six months                  [Page 5]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


   Relay switch does not preclude the ability to support the Frame Relay
   control component defined by the ITU and Frame  Relay  Forum  on  the
   same  switch  and  the  same interfaces.  The two control components,
   label switching and the ITU/Frame Relay Forum defined, would  operate
   independently.

   Definition of how such a device operates is beyond the scope of  this
   document.   However,  only  a small amount of information needs to be
   consistent between the two control components, such as  the  portions
   of the DLCI space which are available to each component.



6.  Use of DLCIs


   Label switching is accomplished by associating labels with routes and
   using  the  label value to forward packets, including determining the
   value of any replacement label.  See [ARCH] for further details.

   In a FR-LSR, the current (top) MPLS label  is  carried  in  the  DLCI
   field of the Frame Relay data link layer header of the frame. Just as
   in conventional Frame Relay, for a frame arriving  at  an  interface,
   the  DLCI carried by the Frame Relay data link header is looked up in
   the Label Information Base, replaced with  the  correspondent  output
   DLCI,  and  transmitted  on  the outgoing interface (forwarded to the
   next hop node).

   Note that the current label information is also carried in the top of
   the label stack. In the top level entry, only the TTL field is truely
   significant.

   For two connected FR-LSRs, a full-duplex connection must be available
   for  LDP.  By default, the DLCI for the LDP VC is assigned a value of
   [TBD].

   With the exception of this reserved value, the DLCI  values  used  in
   the  two  directions  of  the link may be treated as belonging to two
   independent spaces, i.e. VCs may be half-duplex, each direction  with
   its  own DLCI. In case of DLCI aggregation (DLCI space conservation),
   half-duplex (unidirectional) VCs are desired, since a "many  to  few"
   aggregation is possible in one direction but not in reverse.

   The allowable ranges of DLCIs are always  communicated  through  LDP.
   Note  that  the range of DLCIs used for labels depends on the size of
   the DLCI field, which can be 10 (default), 17, or 24 bits.





Conta        Expires in six months                  [Page 6]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


7   Label Allocation and Maintenance Procedures


   FR-LSRs use the downstream-on-demand allocation  mechanism  described
   in [ARCH].


7.1   Edge LSR Behavior

   Consider a member of the Edge Set of a FR-LSR cloud. Assume that,  as
   a result of its routing calculations, it selects a FR-LSR as the next
   hop of a certain route, and that the next hop is reachable via a  LC-
   Frame  Relay  interface.  The  Edge  LSR  uses  LDP's BIND_REQUEST to
   request a label binding from the next hop.  The hop  count  field  in
   the  request  is  set  to  1.   Once  the Edge LSR receives the label
   binding information, the label is used  as  an  outgoing  label.  The
   binding  received  by  the  edge  LSR  may contain a hop count, which
   represents the number of hops a packet will take to cross the  FR-LSR
   cloud when using this label. The edge LSR may either


      -    use this hop count to decrement the  TTL  of  packets  before
           transmitting them over the cloud

      -    decrement the TTL of packets by one before transmitting  them
           over the cloud.


   The choice between these two options should be made  based  on  local
   configuration.

   When a member of the Edge Set of the FR-LSR cloud  receives  a  label
   binding  request  from  a FR-LSR, it allocates a label, creates a new
   entry in its Label Information Base (LIB), places that label  in  the
   incoming  label  component  of  the  entry,  and  returns (via LDP) a
   binding  containing  the  allocated  label  back  to  the  peer  that
   originated the request.  It sets the hop count in the binding to 1.

   When a routing calculation causes an Edge LSR to change the next  hop
   for  a  route,  and  the former next hop was in the FR-LSR cloud, the
   Edge LSR should notify the former next hop (via LDP) that  the  label
   binding associated with the route is no longer needed.

   When a Frame Relay-LSR receives (via LDP) a label binding request for
   a  certain  route  from  a  peer connected to the FR-LSR over a LC-FR
   interface, the FR-LSR takes the following actions:

        -    it allocates a label, creates a  new  entry  in  its  Label



Conta        Expires in six months                  [Page 7]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


             Information  Base  (LIB),  and  places  that  label  in the
             incoming label component of the entry;

        -    it requests (via LDP) a label binding from the next hop for
             that route;

        -    it returns (via LDP) a  binding  containing  the  allocated
             incoming  label  back  to  the  peer  that  originated  the
             request.


   The hop count field in the request that the FR-LSR sends (to the next
   hop  LSR)  is  set  to  the  hop  count  field in the request that it
   received from the upstream LSR plus one.  Once  the  FR-LSR  receives
   the  binding  from the next hop, it places the label from the binding
   into the outgoing label component of the LIB entry.

   The FR-LSR may choose to wait for the request to  be  satisfied  from
   downstream  before  returning  the binding upstream (a "conservative"
   approach).  In this case, the FR-LSR  increments  the  hop  count  it
   received  from  downstream  and  uses  this  value  in the binding it
   returns upstream. If the value of the hop count equals  MAX_HOP_COUNT
   the  FR-LSR  should  notify  the  upstream neighbor that it could not
   satisfy the binding request.

   Alternatively, the FR-LSR may return  the  binding  upstream  without
   waiting  for a binding from downstream (an "optimistic" approach). In
   this case, it uses a reserved value for hop  count  in  the  binding,
   indicating  that  it is unknown. The correct value for hop count will
   be returned later, as described below.

   Since  both  the  conservative  and  the  optimistic   approach   has
   advantages  and  disadvantages,  this  is  left  as an implementation
   choice.

   Note that a FR-LSR, or a member of the edge set of  a  FR-LSR  cloud,
   may  receive  multiple  binding  requests for the same route from the
   same FR-LSR.  It  must  generate  a  new  binding  for  each  request
   (assuming  adequate  resources  to  do  so),  and retain any existing
   binding(s). For each request received, a FR-LSR should also  generate
   a new binding request toward the next hop for the route.

   When a routing calculation causes a FR-LSR to change the next hop for
   a  route, the FR-LSR should notify the former next hop (via LDP) that
   the label binding associated with the route is no longer needed.

   When a LSR receives a notification that a particular label binding is
   no  longer  needed,  the LSR may deallocate the label associated with



Conta        Expires in six months                  [Page 8]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


   the binding, and destroy the binding. In  the  case  where  a  FR-LSR
   receives such notification and destroys the binding, it should notify
   the next hop for the route  that  the  label  binding  is  no  longer
   needed.   If  a  LSR  does not destroy the binding, it may re-use the
   binding only if it receives a request for the  same  route  with  the
   same  hop  count as the request that originally caused the binding to
   be created.

   When a route changes, the label bindings are re-established from  the
   point  where  the  route  diverges  from  the  previous  route.  LSRs
   upstream  of  that  point  are  (with  one  exception,  noted  below)
   oblivious  to  the change.  Whenever a LSR changes its next hop for a
   particular route, if the new next hop is a FR-LSR or a member of  the
   edge  set reachable via a LC-FR interface, then for each entry in its
   LIB associated with the route the LSR  should  request  (via  LDP)  a
   binding from the new next hop.

   When a FR-LSR receives a label binding from a downstream neighbor, it
   may  already  have  provided  a  corresponding label binding for this
   route to  an  upstream  neighbor,  either  because  it  is  operating
   optimistically  or  because  the  new  binding from downstream is the
   result of a routing change. In this case, it should extract  the  hop
   count  from  the  new binding and increment it by one. If the new hop
   count is different from that which was  previously  conveyed  to  the
   upstream neighbor (including the case where the upstream neighbor was
   given the value  `unknown')  the  FR-LSR  must  notify  the  upstream
   neighbor  of the change. Each FR-LSR in turn increments the hop count
   and passes it upstream until it reaches the ingress Edge LSR.  If  at
   any  point  the  value of the hop count equals MAX_HOP_COUNT, the FR-
   LSR should withdraw the binding from the upstream neighbor.

   Whenever a FR-LSR originates a label binding request to its next  hop
   LSR  as  a  result  of receiving a label binding request from another
   (upstream) LSR, and the request to the next hop LSR is not satisfied,
   the  FR-LSR  should  destroy  the  binding created in response to the
   received request, and notify the requester (via LDP).

   If a FR-LSR receives a binding request containing a  hop  count  that
   equals  MAX_HOP_COUNT,  no binding should be established and an error
   message should be returned to the requester.

   When a LSR determines that it has lost its LDP session  with  another
   LSR,  the  following  actions  are  taken.   Any  binding information
   learned via  this  connection  must  be  discarded.   For  any  label
   bindings  that  were  created  as a result of receiving label binding
   requests from the peer, the  LSR  may  destroy  these  bindings  (and
   deallocate labels associated with these binding).




Conta        Expires in six months                  [Page 9]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


7.2   Efficient use of label space

   The above discussion assumes that an edge LSR will request one  label
   for  each  prefix in its routing table that has a next hop in the FR-
   LSR cloud. In fact, it is possible to significantly reduce the number
   of labels needed by having the edge LSR request instead one label for
   several routes. Use of many-to-one mappings between  routes  (address
   prefixes)  and  labels  using  the  notion  of Forwarding Equivalence
   Classes (as described in [ARCH]) provides a mechanism to conserve the
   number of labels.

   Note that conserving label space may be restricted in case the  frame
   traffic  requires  Frame Relay fragmentation. The issue is that Frame
   Relay fragments must be transmitted in sequence,  i.e.  fragments  of
   distinct  frames  must  not be interleaved. If the fragmenting FR-LSR
   ensures the transmission in sequence of all  fragments  of  a  frame,
   without  interleaving  with  fragments  of  other  frames, then label
   conservation (aggregation) can be performed.

   In the case where the label space is to be conserved, it is desirable
   to  use  half-duplex  (unidirectional)  VCs,  since  a  "many to few"
   aggregation is possible in one direction but not in reverse.



8.  Label Encapsulation


   By default, all  labeled  packets  should  be  transmitted  with  the
   generic  label  encapsulation  as defined in [STACK], using the frame
   relay encapsulation mechanisms described in RFC  1490,  and  protocol
   types  defined  in  [STACK].  Rules regarding the construction of the
   label stack, and error messages returned to the frame source are also
   described in [STACK].

   Since the value at the top of the label stack is determined from  the
   DLCI  field,  the  information  carried  in  the  label stack for the
   current label is significant only for  the  TTL  field.  The  generic
   encapsulation  contains  n labels for a label stack of depth n, where
   the only significant field in the current label stack entry  is  TTL.
   This  means  that  for  one level of labels the generic encapsulation
   consists of a label carrying a TTL only.









Conta        Expires in six months                 [Page 10]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


9.  Security Considerations



   This section looks at the security aspects of:

         - frame traffic

         - label distribution.

   Altering by accident or forgery an existent label in the  DLCI  field
   of  the  Frame Relay data link layer header of a frame or one or more
   fields in a potentially following label stack affects the  forwarding
   of that frame.

   The label distribution  mechanism can  be  secured  by  applying  the
   appropriate  level  of  security  to the underlying protocol carrying
   label information - authentication or encryption -  see [LDP].


10. Acknowledgments

   This document is derived from the Label Switching over  ATM  document
   [ATM].

   Thanks for the extensive reviewing and constructive comments from (in
   alphabetical order) Dan Harrington, Milan Merhar, Martin Mueller.

11. References

   [RFC-1490] T. Bradley, C. Brown, A. Malis "Multiprotocol Interconnect
   over Frame Relay"


   [ARCH] "Proposed Architecture for MPLS" in  "draft-rosen-mpls-00.txt"
   by Rosen, Callon, Vishwanathan.


   [LDP] Label Distribution Protocol - work in progress.


   [STACK] "Label Switching: Label  Stack  Encodings"  "draft-rosen-tag-
   stack-02.txt" by Rosen et al.


   [ATM] "draft-davie-tag-switchingatm-01.txt" by Davie et al.





Conta        Expires in six months                 [Page 11]




INTERNET-DRAFT  Use of Label Switching With Frame Relay    September 15, 1997


Authors' Addresses:

   Alex Conta                           Paul Doolan
   Lucent Technologies Inc.             Cisco Systems, Inc
   300 Baker Ave, Suite 100             250 Apollo Drive
   Concord, MA 01742                    Chelmsford, MA, 01824
   +1-508-287-2842                      +1-508-244-8917
   E-mail: aconta@lucent.com            E-mail: pdoolan@cisco.com











































Conta        Expires in six months                 [Page 12]