Internet DRAFT - draft-gu-sdnrg-sdn-controller-requirement

draft-gu-sdnrg-sdn-controller-requirement







SDNRG                                                         R. Gu, Ed.
Internet-Draft                                                     C. Li
Intended status: Informational                              China Mobile
Expires: September 9, 2015                                 March 8, 2015


                       SDN Controller Requirement
              draft-gu-sdnrg-sdn-controller-requirement-00

Abstract

   The requirements of SDN controllers including fundamental technical
   requirements, requirements of the SDN controller architecture and the
   requirements of the SDN controller functionality are provided.  All
   these requirements raised are focused on the scalability,
   reliability, programmability, intercommunity, security and the
   network management of the SDN controller.

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).  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 September 9, 2015.

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





Gu & Li                 Expires September 9, 2015               [Page 1]

Internet-Draft        sdn-controller-requirement-00           March 2015


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   2
   3.  Fundamental technical requirements of SDN controllers . . . .   2
   4.  Requirements of the SDN controller architecture . . . . . . .   3
   5.  Requirements of the SDN controller functionality  . . . . . .   6
   6.  Conclusion  . . . . . . . . . . . . . . . . . . . . . . . . .   8
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .   8
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   8
   9.  Normative References  . . . . . . . . . . . . . . . . . . . .   8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   Software-defined networking (SDN) is an intelligent network,
   especially used in Data Centers, with configuration and operation
   through a centralized software controller.  SDN controller is a core
   entity of the SDN architecture indicating how the network behaves and
   where the traffic is sent.  Network intelligence is logically
   centralized in software-based SDN controllers that maintain an
   abstract view of the network, which appears to applications and
   policy engines as a single, logical switch.

   Due to the importance of SDN controllers to the SDN architecture, the
   requirements of SDN controllers should be come up with.  The
   requirements are divided into three parts: fundamental technical
   requirements, requirements of the SDN controller architecture and the
   requirements of the SDN controller functionality.

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

3.  Fundamental technical requirements of SDN controllers

   The fundamental technical requirements include scalability,
   reliability, programmability, intercommunity, security, and the
   network-based management.

   Scalability:

   SDN controller should meet the requirement of scalability in order to
   adapt the changes and adjustments of the network.  The computing and
   controlling ability can be extended as the performance of hardware
   increases.



Gu & Li                 Expires September 9, 2015               [Page 2]

Internet-Draft        sdn-controller-requirement-00           March 2015


   Reliability:

   SDN controller should meet the carrier-level requirement with rapid
   fail-over mechanism.

   Programmability:

   SDN controller should offer APIs in order to provide rapid deployment
   of new service through executing scripts such as Python and Java or
   loading third-party module dynamically.

   Intercommunity:

   One SDN controller should support standard protocols in interacting
   with other SDN controllers or with traditional network.

   Security:

   SDN controller should qualify the security requirements including the
   communication security between the controllers and the switches, the
   access control security of controllers and switches, TLS and IPsec
   mechanism of the communication channels, DoS attacks prevention,
   digital certificate of third-party support.

   Network-based management:

   SDN controller should provide tools for basic network management and
   trouble diagnosis, such as secure access, status report, statistics,
   forwarding operations and so on.

4.  Requirements of the SDN controller architecture

   SDN controller should support both traditional distributed forwarding
   and centralized forwarding based on openflow.  SDN controller
   interacts with switch through southbound interface.

   SDN controller is logically divided into several models, including
   subsystem of protocol, forwarding abstraction layer (FAL), topology
   management, route management, host management, flow table management,
   interface management, database management, OAM interface management
   and inter-application subsystems.


  ----------------------------------------------------------------------
  |    |------------------|             |------------------|           |
  |    |   Orchestrator   |             |        EPC       |           |
  |    |------------------|             |------------------|           |
  |   External application layer                                       |



Gu & Li                 Expires September 9, 2015               [Page 3]

Internet-Draft        sdn-controller-requirement-00           March 2015


  -----+---------------------------+------------------------------------
       |                           |
       |                           |
       |  -------------------------+-------------------------
       |  |         |------------------|  |--------------|  |
       |  |         | L2/L3 forwarding |  |  ARP reply   |  |
       |  |         |------------------|  |--------------|  |
       |  |                                                 |
       |  |         |-----|   |-----|  |-----| |-----|      |
       |  |         | BGP |   | IGP |  |  TE | | ... |      |
       |  |         |-----|   |-----|  |-----| |-----|      |
       |  | Internal application layer                      |
       |  ---------------------------------------------------
       |
-------+------------------------------------------------------------------
| -------- ---------------------------------------------------- -------- |
| |      | |                                                  | |      | |
| |      | |                      Route management            | |      | |
| |      | |                                                  | |      | |
| |      | ---------------------------------------------------| |      | |
| |      |                                                      |      | |
| |      | |-----------||-----------||-----------||-----------| |      | |
| |      | | Topology  ||    Host   || Flow table|| Interface | |      | |
| |      | | Management|| Management|| Management|| Management| |      | |
| |      | |-----------||-----------||-----------||-----------| |      | |
| |      |                                                      |      | |
| |  DB  | ---------------------------------------------------- | OAM  | |
| |subsys| |          Forwarding abstraction layer            | |manage| |
| |      | ---------------------------------------------------- | ment | |
| |      | ---------------------------------------------------- |      | |
| |      | |     Protocol subsystem                           | |      | |
| |      | |                                                  | |      | |
| |      | | ------------ ------------  ----------  --------- | |      | |
| |      | | | Openflow | | OF-Config|  | BGP-LS |  |  XMPP | | |      | |
| |      | | ------------ ------------  ----------  --------- | |      | |
| |      | | ------------ ------------  ----------            | |      | |
| |      | | |   OVSDB  | | Netconf  |  |   ...  |            | |      | |
| |      | | ------------ ------------  ----------            | |      | |
| |      | ---------------------------------------------------- |      | |
| --------                                                      -------- |
--------------------------------------------------------------------------


                 Figure 1: Sample Calibration Permutation

   Protocol subsystem:





Gu & Li                 Expires September 9, 2015               [Page 4]

Internet-Draft        sdn-controller-requirement-00           March 2015


   The protocol subsystem of the SDN controller focuses on southbound
   interface with protocols such as openflow, OF-Config, BGP-LS, OVSDB,
   Netconf, XMPP and so on.

   Forwarding abstraction layer (FAL):

   FAL translates the different forwarding plane into the unified
   interface upside in order to realize the abstraction of SDN
   controller node.

   Topology management:

   Topology is calculated through the status of port reported by the
   switch with the protocol such as LLDP, BGP-LS and so on.  Logical
   networks are supported by SDN controller.  Physical network can be
   divided into several logical networks with physical port and host
   corresponding to the virtual networks.

   Route management:

   Centralized computing of every virtual network is supported by
   controller.  Forwarding path is calculated according to the ability
   of switch and the constraint conditions such as link cost, and
   bandwidth and network information.

   Host management:

   Host management takes the function of MAC and ARP learning.  Host
   position and ARP information is recorded and aging at a certain time.

   Flow table management:

   Basic functions such as forwarding table storage, routing coalescence
   and re-forwarding are realized by the flow table management.  It's
   suggested that both distributed and centralized forwarding models are
   supported.

   Interface management:

   Interface configurations are maintained in the interface management,
   including dynamic and static interface configuration information.
   Virtual ARP table is also generated in the interface management
   model.

   Database management:

   Forwarding table and openflow table are managed in the database
   management with data synchronization.



Gu & Li                 Expires September 9, 2015               [Page 5]

Internet-Draft        sdn-controller-requirement-00           March 2015


   OAM interface management:

   Configuration command of command-line terminal and visualized network
   management server is written into database.  Management interface is
   provided.

   Inter-application subsystem:

   Inter-application subsystem supports the interface to openstack and
   cloud platform by restful.  Layer 2 and Layer 3 forwarding, traffic
   engineering, and ARP reply features are equipped.  IGP/BGP protocols
   are supported.

5.  Requirements of the SDN controller functionality

   Due to the fundamental techinical requirements of SDN controllers,
   the follow functionality aspects need to be considered.

   1.  Requirement of multi-tenants and self-service

   Multi-tenants with their self-service are typical scenarios of SDN.
   Multi tenants are existed in data centers with several virtual
   networks per tenant.  IP address pool is allocated in every virtual
   network.  Virtual network is logically isolated with each other.
   Same IP addresses can be assigned to different tenants.  Virtual
   routers are used in different virtual network communications.

   2.  Requirement of network function

   Basic network functions SDN controller needs to support list as
   follows.

   (a) The number of tenants should be over 4000 by tunneling technique.

   (b)Virtual machines in one subnet can communicate with each other by
   unicast of layer 2.

   (c) Virtual machines in different subnets can't communicate with each
   other.

   (d)Virtual machines in different subnets can communicate with other
   by configuring a virtual router.

   (e)Virtual machine can access to the network by assigning a public IP
   address.

   (f)Tenants can translate private IP address into public IP address by
   NAT.



Gu & Li                 Expires September 9, 2015               [Page 6]

Internet-Draft        sdn-controller-requirement-00           March 2015


   (g)Different tenants can use the same IP address and VLAN ID.

   (h)Network can be recovered rapidly when fails.

   (i)ARP Broadcast storm should be suppressed.

   (j) Equal-Cost Load Sharing is supported in both underlay and overlay
   networks.

   (k)Traditional protocols such as IGP , BGP and others are supported.

   3.  Requirement of administrator features

   Administrators are responsible for tenants creation and deletion,
   network creation and deletion, unbinding the relation between tenants
   and network, query for tenants' information, query for physical and
   virtual information, virtual machine immigration and so on.

   4.  Requirement of network management

   The information of switches, hosts and network topologies can be
   queried by management.  Monitoring on network traffic is supported by
   network management.  Network management is also responsible for
   network policies release and flow table configuration.

   5.  Requirement of reliability and scalability

   Reliability of SDN controller relies on active-standby mode by
   controller node, secure connection between controller and switch
   nodes, multi-controllers based on openflow and so on.  Scalability of
   SDN controller relies on node upgrading without service interruption
   and unique node upgrade in the distribute systems without any
   influence on the whole system.

   6.  Requirement of performance

   Performance of SDN controller is reflected in the number of
   forwarding nodes supported per controller node, the capacity of flow
   table per controller node, speed of forwarding table processing per
   node and standby time of controller node.

   7.  Requirement of northbound and southbound interface

   The northbound interface of the SDN controller is to achieve the
   requirement of the administrators and network management.  While the
   southbound interface of the SDN controller is including the interface
   of status/configuration information such as OVSDB, OF-Config, XMPP




Gu & Li                 Expires September 9, 2015               [Page 7]

Internet-Draft        sdn-controller-requirement-00           March 2015


   and the interface of routing/forwarding information such as Openflow,
   XMPP, IGP, BGP and so on.

   8.  Requirement of processing flow

   The process of packet-forwarding network networks added or modified,
   physical network topology discovered and network failure advertised
   should be required.

6.  Conclusion

   All the requirements provided above are recommended to be taken into
   consideration for the SDN controllers.

7.  Security Considerations

   None.

8.  IANA Considerations

   None.

9.  Normative References

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

   [RFC2234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", RFC 2234, November 1997.

Authors' Addresses

   Rong Gu (editor)
   China Mobile
   32 Xuanwumen West Ave, Xicheng District
   Beijing  100053
   China

   Email: gurong_cmcc@outlook.com


   Chen Li
   China Mobile
   32 Xuanwumen West Ave, Xicheng District
   Beijing  100053
   China

   Email: lichenyj@chinamobile.com



Gu & Li                 Expires September 9, 2015               [Page 8]