Internet DRAFT - draft-li-rtgwg-cc-igp-arch

draft-li-rtgwg-cc-igp-arch






Network Working Group                                              Z. Li
Internet-Draft                                                   H. Chen
Intended status: Informational                                    G. Yan
Expires: April 24, 2014                              Huawei Technologies
                                                        October 21, 2013


 An Architecture of Central Controlled Interior Gateway Protocol (IGP)
                     draft-li-rtgwg-cc-igp-arch-00

Abstract

   As the Software Defined Networks (SDN) solution develops, IGP will be
   extended to support central control.  This document introduces an
   architecture of using IGP for central controlling.  Some use cases
   under this new framework are also discussed.  For specific use cases,
   making necessary extensions in IGP are required.

Requirements Language

   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].

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 April 24, 2014.

Copyright Notice

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



Li, et al.               Expires April 24, 2014                 [Page 1]

Internet-Draft          An Architecture of CC IGP           October 2013


   (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  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Architecture  . . . . . . . . . . . . . . . . . . . . . . . .   3
     3.1.  Reference Model . . . . . . . . . . . . . . . . . . . . .   3
     3.2.  Deployment Mode . . . . . . . . . . . . . . . . . . . . .   4
     3.3.  Requirement of IGP Extensions . . . . . . . . . . . . . .   4
       3.3.1.  Building Connectivity . . . . . . . . . . . . . . . .   4
       3.3.2.  Roles Auto-Discovery  . . . . . . . . . . . . . . . .   5
       3.3.3.  Choosing Controller . . . . . . . . . . . . . . . . .   5
       3.3.4.  High Availability . . . . . . . . . . . . . . . . . .   5
       3.3.5.  Security  . . . . . . . . . . . . . . . . . . . . . .   6
   4.  Usecases  . . . . . . . . . . . . . . . . . . . . . . . . . .   6
     4.1.  Network Topology Acquirement  . . . . . . . . . . . . . .   6
     4.2.  Automated Dividing Multiple Domains . . . . . . . . . . .   6
     4.3.  Centralized MPLS TE . . . . . . . . . . . . . . . . . . .   7
     4.4.  MPLS Global Label Allocation  . . . . . . . . . . . . . .   8
     4.5.  Virtual Link  . . . . . . . . . . . . . . . . . . . . . .   8
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   9
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   9
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  10
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  10
     7.2.  Informative References  . . . . . . . . . . . . . . . . .  10
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11

1.  Introduction

   Interior Gateway Protocol (IGP) is a protocol for exchanging routing
   information between gateways (hosts with routers) within an
   autonomous network (for example, a system of corporate local area
   networks).  The routing information can then be used by the Internet
   Protocol (IP) or other network protocols to specify how to route
   transmissions.

   The internet is the most popular network, it is a distributed system.
   Depending on its configuration, each network device communicates with
   its neighbor, generates the FIB, and forwards the packet hop by hop.
   As the rise of SDN, central controlled IGP is becoming more important
   and new requirements for IGP are proposed as follows:



Li, et al.               Expires April 24, 2014                 [Page 2]

Internet-Draft          An Architecture of CC IGP           October 2013


   1.  Build the central control architecture between the controller and
   the client.  It includes building connectivity, collecting the
   topology, and dividing multiple areas automatically, etc.

   2.  Many new applications are emerging under the central controlled
   framework, such as network virtualization, centralized MPLS TE
   calculation, segment routing, etc.  These new applications bring
   extension requirement to IGP.

   This document defines an IGP-Based Central Control architecture and
   then use cases and corresponding IGP extensions under this
   architecture are described.

2.  Terminology

   BGP: Border Gateway Protocol

   IGP: Interior Gateway Protocol

   IS-IS: Intermediate System-Intermediate System

   OSPF: Open Shortest Path First

   SDN: Software Defined Network

3.  Architecture

3.1.  Reference Model

   The following figure depicts a typical architecture of central
   controlled IGP.  It consists of two essential network elements: IGP
   Controller and IGP Client.  IGP Controller controls all the IGP
   Clients within its administrative domain by communicating with them.
   And the controller will also exchange the information each other
   through some protocol extensions which is out of scope of this
   document.















Li, et al.               Expires April 24, 2014                 [Page 3]

Internet-Draft          An Architecture of CC IGP           October 2013


   +------------------------------+    +------------------------------+
   |   Central Control Domain 1   |    |   Central Control Domain 2   |
   |         +----------+         |    |         +----------+         |
   |         |          |         |    |         |          |         |
   |         |   IGP    |------------------------|   IGP    |         |
   |         |Controller|         |    |         |Controller|         |
   |         |          |         |    |         |          |         |
   |         +----------+         |    |         +----------+         |
   |         /          \         |    |         /          \         |
   |        /            \        |    |        /            \        |
   |       /              \       |    |       /              \       |
   | +--------+        +--------+ |    | +--------+        +--------+ |
   | | NODE 1 |        | NODE n | |    | | NODE 1 |        | NODE n | |
   | |        | ...... |        | |    | |        | ...... |        | |
   | |  IGP   |        |  IGP   | |    | |  IGP   |        |  IGP   | |
   | | CLIENT |        | CLIENT | |    | | CLIENT |        | CLIENT | |
   | +--------+        +--------+ |    | +--------+        +--------+ |
   |                              |    |                              |
   +------------------------------+    +------------------------------+

          Figure 1: An Architecture of Central Controlled IGP


3.2.  Deployment Mode

   IGP Controller can run on a general-purpose server or a network
   device.  If IGP Controller runs on a network device, it supports both
   central-controlled functionality and forwarding functionality.  In
   this scenario, besides the control central point, the IGP controller
   can also work as a forwarding central point to receive traffic from
   one node and forward to other nodes.  The forwarding model in this
   scenario is just like hub-spoke forwarding model.  If IGP Controller
   runs on a server, it will not involve in the actual forwarding.  It
   only works as the control central point to control the forwarding
   behaviors of the nodes.  In this scenario the traffic will be
   distributed in the controlled nodes.

   More than one controller can be deployed in a central control domain.
   These controllers can work on master-slave mode or load-sharing mode.

3.3.  Requirement of IGP Extensions

   Building a IGP-based Central Controlled Framework needs extensions to
   IGP, I2RS etc.

3.3.1.  Building Connectivity





Li, et al.               Expires April 24, 2014                 [Page 4]

Internet-Draft          An Architecture of CC IGP           October 2013


   IGP protocol is very important to establish connective in the central
   control domain.  When a new device connects to the this domain, the
   connectivity with the other node and the controller should be built
   at first.  The procedures should be automated since the number of
   devices in this domain can be huge.  Base on this initialization
   process, the controller can download the necessary configuration to
   this new node to drive it to set up adjacency with its neighbors and
   the controller.  Then the topology information can be synchronized in
   the central control domain and the connectivity can be built.

3.3.2.  Roles Auto-Discovery

   In the central control domain, there are two basic roles: IGP
   controller and IGP client.  The controller can centrally configure
   the client role through I2RS interface.  The role information should
   be flooded through IGP extensions to support the auto discovery
   functionality.

3.3.3.  Choosing Controller

   After the roles of the elements are discovered, if there are multiple
   controllers in the domain, the client can determine which controller
   to join by its own, or the controllers can determine which controller
   the clients should join and set the configuration on the nodes
   through I2RS interface.  When determine the controller to be joined,
   the work mode (master-slave, load-sharing, etc.) of multiple
   controllers, service type and some other constraints needs to be
   taken into account.

3.3.4.  High Availability

   In the IGP-based Central Controlled framework, IGP Controller plays a
   key role.  To avoid one-point-failure of IGP Controller, it is
   possible to run redundant IGP Controllers for high availability.

   Information should be synchronized between the controllers through
   necessary mechanisms or protocol extensions other than IGP.  When the
   Primary IGP Controller failed, the Backup IGP Controllers will take
   over the work of the Primary IGP Controller.

   To ensure IGP route persistence in case of occurrence of IGP
   Controller failure, the new Primary IGP Controller SHOULD perform
   resynchronization with IGP Clients.

   When IGP Client loses connection with Primary IGP Controller, it
   SHOULD following IGP Graceful Restart routine.





Li, et al.               Expires April 24, 2014                 [Page 5]

Internet-Draft          An Architecture of CC IGP           October 2013


3.3.5.  Security

   In IGP-based Central Controlled framework, it SHOULD be ensured that
   communications between IGP Controllers and IGP Clients conform to
   network security policy.  The communication key used on IGP Client
   can be configured through I2RS or other way.

4.  Usecases

   In IGP-based Central Controlled framework, new use cases which are
   difficult to be supported in traditional networks are emerging.  In
   some specific use cases, extension and enhancement of IGP protocol
   are necessary.

4.1.  Network Topology Acquirement

   In traditional network, it is very difficult for the application to
   get and use the topology.  The application has to depend multiple
   protocols such as OSPF, ISIS, LLDP, etc.  In some scenarios, the
   application has to communicate with these protocols directly.  In the
   IGP-based central controlled framework, the topology acquirement
   procedures SHOULD be simplified.  All topology related information
   SHOULD be able to be collected by IGP.  Thus the complexity of
   network operation and management can be reduced.  In the IGP-base
   central controlled framework, the controller can get the whole
   topology information of the central control domain which can be
   easily provided for applications through public interface.

4.2.  Automated Dividing Multiple Domains

   When there are mass devices in the network, not only LSDB
   synchronization, but also route convergence, will be big pressure for
   any device, so the network has to be divided into multiple domains.
   In the IGP-based central controlled the framework, the division can
   be done automatically by the controller which can calculate
   reasonable scale for IGP domains based on the whole network
   information and the possible constraints.  IGP adjacency is only set
   up between nodes in the same IGP domain.  The adjacency SHOULD not
   set up between nodes in different IGP domains.  Thus the pressure on
   the nodes for LSDB synchronization can be reduced and route
   convergence performance can be improved.  The configuration about
   domain division can be set through I2RS interfaces from the
   controller to the clients.  The architecute for dividing multiple
   domains with the central controller is shown in the figure 2.







Li, et al.               Expires April 24, 2014                 [Page 6]

Internet-Draft          An Architecture of CC IGP           October 2013


       +---------------------------------------------------------+
       |                                                         |
       |                     IGP Controller                      |
       |                                                         |
       +---------------------------------------------------------+
         |                 |                 |                 |
         |                 |                 |                 |
   +-----|-----------------|------+    +-----|-----------------|------+
   |     |   IGP Domain 1  |      |    |     |   IGP Domain 2  |      |
   |     |                 |      |    |     |                 |      |
   |     |                 |      |    |     |                 |      |
   | +--------+        +--------+ |    | +--------+        +--------+ |
   | | NODE 1 |        | NODE n | |    | | NODE 1 |        | NODE n | |
   | |        | ...... |        | |    | |        | ...... |        | |
   | |  IGP   |        |  IGP   | |    | |  IGP   |        |  IGP   | |
   | | CLIENT |        | CLIENT | |    | | CLIENT |        | CLIENT | |
   | +--------+        +--------+ |    | +--------+        +--------+ |
   |                              |    |                              |
   +------------------------------+    +------------------------------+

             Figure 2: Automatic Division of Multiple IGP Domains


4.3.  Centralized MPLS TE

   In the IGP-based Central Controlled framework, the controller can
   implement better traffic engineering functionality because it can
   calculate more reasonable path based on complete topology information
   and state information of the whole network.  Centralized MPLS TE
   calculation can avoid the flaw of non-best path proposed by the
   existing distributed MPLS TE calculation.

   In order to support centralized MPLS TE path calculation, IGP SHOULD
   be able to collect more information from the network.  There are two
   types of information for IGP to collect:

   1.  Static configuration: In traditional network, MPLS TE attributes
   should be configured on the link such as maximum reservable
   bandwidth, color, TE metric, etc.  These information will be flooded
   in the work for MPLS TE path calculation.  In the IGP-based Central
   Controlled framework, these configuration can be set by the
   controller.  This means it is not necessary for the controller to get
   the TE link information through IGP flooding process.  For the reason
   of compatibility, the IGP flooding process of MPLS TE link
   information can be kept in the central controlled framework.  On the
   other hand, it provides a possible way for the inconsistency check on
   the configuration.




Li, et al.               Expires April 24, 2014                 [Page 7]

Internet-Draft          An Architecture of CC IGP           October 2013


   2.  Running information: Some dynamic state information such as real
   traffic bandwidth, packet loss rate, delay, power consumption, etc.
   can be flooded through IGP extensions from the nodes to the
   controller.  The running information can help the controller to
   calculate more reasonable path and calculate path for more
   constraints defined by applications.

4.4.  MPLS Global Label Allocation

   MPLS Global Label should be allocated centrally to guarantee all
   distributed network nodes can understand meaning of a specific global
   label in same.  The IGP-based Central Controlled framework is
   particularly suitable to allocate MPLS Global Label through some
   necessary IGP extensions rather than traditional MPLS protocols(e.g.
   LDP, RSVP-TE etc.).

   MPLS Global Label is defined in [I-D.li-mpls-global-label-framework]
   and related use cases are defined in [I-D.li-mpls-global-label-
   usecases].

   The MPLS global label should be assigned centrally; each node in
   network should have same understanding about these labels.  In the
   central control network, the global label will be handled by
   controller, and IGP protocol will flood these labels.

   The extensions of IGP for MPLS global label include:

   1.  Collect the label capability of each node.  The label capability
   is the global label space.

   2.  IGP Controller determines the COMMON label space for all its IGP
   Clients.

   3.  The controller will assign the global label for different
   services, and these label bindings will be flooded through IGP
   protocol to IGP clients.

   4.  IGP Client receives the MPLS Global Labels, and generates
   corresponding MPLS forwarding entries.

   IGP is suitable for the use cases of MPLS global label in the intra-
   domain scenario.  These use cases include MPLS virtual network and
   segment routing as defined in [I-D.li-mpls-global-label-usecases].

4.5.  Virtual Link

   When the IGP-based Central Controlled framework is applied, one
   possible scenario is partial deployment.  That is, part of the



Li, et al.               Expires April 24, 2014                 [Page 8]

Internet-Draft          An Architecture of CC IGP           October 2013


   existing network will be converted to be controlled in the central
   control mode.  The application scenario is shown in the following
   figure:

                  +------------------------------+
                  |    Central Control Domain    |
                  |         +----------+         |
                  |         |          |         |
                  |         |   IGP    |         |
                  |         |Controller|         |
                  |         |          |         |
                  |         +----------+         |
                  |         /          \         |
                  |        /            \        |
                  |       /              \       |
   +-----------+  | +--------+        +--------+ |  +-----------+
   |Traditional|  | | NODE 1 |        | NODE n | |  |Traditional|
   |           |  | |        | ...... |        | |  |           |
   |   NODE    |----|  IGP   |        |  IGP   |----|   NODE    |
   |           |  | | CLIENT |        | CLIENT | |  |           |
   +-----------+  | +--------+        +--------+ |  +-----------+
                  |                              |
                  +------------------------------+

       Figure 3: Partial Deployment of Central Controlled IGP


   In this scenario, it is not necessary for the traditional nodes to
   learn the detailed topology information of the central control
   domain.  The information flooded between the central control domain
   and the traditional nodes can be reduced.  The central control domain
   can only advertise virtual links which connect the edge nodes in the
   domain that the traditional node can be aware of.  The process can
   reduce the pressure of the traditional node for flooding and improve
   convergence performance.

   In the central control domain, the controller can apply the policy
   defined by the applications to control whether the virtual link will
   be advertised to the outside and what metric is advertised to affect
   the route calculation of the outside network.

5.  IANA Considerations

   TBD.

6.  Security Considerations

   TBD.



Li, et al.               Expires April 24, 2014                 [Page 9]

Internet-Draft          An Architecture of CC IGP           October 2013


7.  References

7.1.  Normative References

   [ISO/IEC 10589]
              ISO, "Intermediate system to Intermediate system routing
              information exchange protocol for use in conjunction with
              the Protocol for providing the Connectionless-mode Network
              Service (ISO 8473)," ISO/IEC 10589:1992.

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

   [RFC2328]  Moy, J., "OSPF Version 2", STD 54, RFC 2328, April 1998.

7.2.  Informative References

   [I-D.chen-ospf-ttz]
              Chen, H., Li, R., Cauchie, G., Retana, A., Ning, S., Toy,
              M., and L. Liu, "OSPF Topology-Transparent Zone", draft-
              chen-ospf-ttz-06 (work in progress), July 2013.

   [I-D.ietf-ospf-te-metric-extensions]
              Giacalone, S., Ward, D., Drake, J., Atlas, A., and S.
              Previdi, "OSPF Traffic Engineering (TE) Metric
              Extensions", draft-ietf-ospf-te-metric-extensions-04 (work
              in progress), June 2013.

   [I-D.li-mpls-global-label-framework]
              Li, Z., Zhao, Q., and T. Yang, "A Framework of MPLS Global
              Label", draft-li-mpls-global-label-framework-00 (work in
              progress), July 2013.

   [I-D.li-mpls-global-label-usecases]
              Li, Z., Zhao, Q., and T. Yang, "Usecases of MPLS Global
              Label", draft-li-mpls-global-label-usecases-00 (work in
              progress), July 2013.

   [I-D.li-ospf-ext-green-te]
              Yan, G., Yang, J., and Z. Li, "OSPF Extensions for MPLS
              Green Traffic Engineering", draft-li-ospf-ext-green-te-01
              (work in progress), October 2013.

   [I-D.ylz-ospf-lsdb-sync-group]
              Yan, G., Liu, Y., and X. Zhang, "OSPF Extensions for Link
              State Database Synchronization Group", draft-ylz-ospf-
              lsdb-sync-group-01 (work in progress), October 2013.




Li, et al.               Expires April 24, 2014                [Page 10]

Internet-Draft          An Architecture of CC IGP           October 2013


Authors' Addresses

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

   Email: lizhenbin@huawei.com


   Huaimo Chen
   Huawei Technologies
   Boston, MA
   USA

   Email: huaimo.chen@huawei.com


   Gang Yan
   Huawei Technologies
   Huawei Bld., No.156 Beiqing Rd.
   Beijing  100095
   China

   Email: yangang@huawei.com

























Li, et al.               Expires April 24, 2014                [Page 11]