Internet Draft                                    T. Anderson
Expiration: August 2001                                 Intel
File: draft-anderson-forces-req-01.txt            February 2001





        Requirements for Separation of IP Control and Forwarding




                     draft-anderson-forces-req-01.txt





Status of this Memo


   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.  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/ietf/1id-abstracts.txt.

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


Conventions used in this document


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


1.   Abstract


   This document defines a set of requirements for mechanisms to
   logically separate the control and data forwarding planes of an IP
   network element (NE).


2.   Introduction




Anderson                                                      [Page 1]


Internet Draft           ForCES Requirements             October 2000


   An IP NE is composed of numerous logically separated entities that
   cooperate to provide router or IP switch functionality and yet
   appear as a normal integrated network element to external entities.
   Two types of NE components exist: control-plane components and
   forwarding-plane components.  In general, forwarding-plane
   components are ASIC and network-processor-based devices that handle
   all fast path operations while control-plane components handle slow
   path functionality such as routing protocols and signaling.  A
   standard set of mechanisms for connecting these components provides
   increased scalability and allows the control and forwarding planes
   to evolve independently.

   A router can exemplify the concept and value of separate control and
   forwarding planes.  The architecture of a router is composed of two
   main parts.  These components, while inter-dependent, perform
   functions that are largely independent of each other.  At the bottom
   is the forwarding hardware that operates in the data-forwarding
   plane and is responsible for per-packet processing and forwarding.
   This hardware is typically implemented in the form of a set of ASICs
   or network processors.  Above the forwarding plane is the network
   operating system that is responsible for operations in the control
   plane.  In the case of a router or switch, the network operating
   system runs routing, signaling and control protocols (e.g., RIP,
   OSPF and RSVP) and dictates the forwarding behavior of the
   underlying hardware by manipulating forwarding tables, per-flow QoS
   tables and access control lists for the forwarding hardware.
   Typically, the architecture of these devices combines all of this
   functionality into a single functional whole.


3.   Architectural Requirements


   The chief components of a NE architecture are the Control Element
   (CE) and the Forwarding Element (FE).  The CE is mainly responsible
   for operations such as routing protocol processing, signaling, and
   network control protocols.  The CE dictates the behavior of the
   underlying FE(s) by manipulating forwarding tables, per-flow QoS
   tables, and access control lists for the forwarding interfaces.  The
   FE operates in the forwarding plane and is responsible chiefly for
   per-packet processing and handling.  Below is an ASCII diagram
   illustrating an example NE composed of one CE and two FEs connected
   by a switching fabric.













Anderson                  Expires April 2001                  [Page 2]


Internet Draft           ForCES Requirements             October 2000


                      -------------------------------
                      | NE                          |
                      |        ------------         |
                      |        |    CE    |         |
                      |        ------------         |
                      |             |               |
                      |             |               |
                      |        ------------         |
                      |        |  SWITCH  |         |
                      |        |  FABRIC  |         |
                      |        ------------         |
                      |          /      \           |
                      |         /        \          |
                      | -----------     ----------- |
                      | |    FE   |     |    FE   | |
                      | -----------     ----------- |
                      |   | | | |         | | | |   |
                      |   | | | |         | | | |   |
                      |   | | | |         | | | |   |
                      |   | | | |         | | | |   |
                      -------------------------------
                          | | | |         | | | |
                          | | | |         | | | |

   The following are the architectural requirements:

   1) CEs and FEs MUST be able to be connected by a variety of
      interconnect technologies.  Examples of interconnect technologies
      used in current architectures include Ethernet connections,
      proprietary backplanes, and ATM (cell) fabrics.

   2) Packets arriving at an ingress FE may eventually need to exit the
      NE from a port on a different FE.  These packets MUST be
      forwarded between FEs until they reach the egress FE.

   3) FEs SHOULD be designed to maintain the illusion that the NE is a
      single functional device.  For example, the TTL of the packet
      must be decremented only once as traverses the NE regardless of
      how many FEs through which it passes.

   4) A control plane that is physically separated from its forwarding
      planes MUST use one or more protocols to communicate with them.

   5) There SHOULD be a mechanism that FEs and CEs can utilize to
      automatically find each other without any a priori configuration.

   6) There MUST be a mechanism by which FEs can quickly determine when
      their connection with the CE has been severed.  When the control
      connection is lost, the FE MUST transition to the down state and
      stop functioning until the control connection has been
      reestablished.



Anderson                  Expires April 2001                  [Page 3]


Internet Draft           ForCES Requirements             October 2000



4.   Protocol Requirements


   This section specifies the requirements that a set of protocols MUST
   meet to connect a control element to forwarding elements.

   1)   NE Membership Discovery
   In order for the FE and CE components of a network element to act in
   concert, they will need to be aware of the existence of each other.
   For example, the CE MUST be aware of the existence of every FE in
   order to control them.  Likewise, each FE MUST know the CE it should
   connect to for its configuration.  To reduce the management burden,
   membership discovery SHOULD be an automatic process not requiring
   any a priori FE configuration.  Membership discovery can be a static
   process run once at boot-up or it can be a continual process in
   which FEs and CEs can join and leave the NE at run-time.  When a
   component joins or leaves, all the other components in the NE that
   need to be aware of this MUST be notified.  An authentication
   mechanism SHOULD be used to determine whether a component has the
   authorization to join the NE.

   2) Topology Discovery
   In order for the CE to make intelligent decisions about how to
   forward traffic that comes in one FE and exits through another, the
   CE MUST be aware of how the FEs in the NE are interconnected.  We
   call this FE topology discovery.

   3) Support for different types of FEs
   The protocol(s) MUST be able to support different types of FEs such
   as L2 and L3 switches.  That is to say that the CE MUST be able to
   configure the available FEs regardless of their type.

   4) Port Configuration
   The protocol(s) MUST support the ability to configure attributes of
   ports such as IP addresses and administrative status.

   5) Packet Redirection
   A FE MUST redirect packets to the CE that contain control and
   signaling information, such as routing protocol updates,
   configuration management information, and QoS reservations.

   6) Reliable transport
   Since the CE is in control of its FEs, the CE MUST be sure that its
   configuration changes are reliably delivered to FEs.  Similarly, if
   the FE requests an item of configuration from the CE, the FE will in
   many cases REQUIRE a response to that request before it can process
   some flow of packets.  Thus, a FEÆs request of its CE MUST also be
   reliable.

   7) Support for QoS provisioning
   The CE/FE separation protocol(s) MUST allow the CE to determine the
   QoS capabilities (e.g., policing, shaping, queuing) of FEs.
   Furthermore, the separation protocol(s) MUST allow the CE to


Anderson                  Expires April 2001                  [Page 4]


Internet Draft           ForCES Requirements             October 2000


   configure the provided QoS mechanisms such as IntServ [RFC1633] and
   DiffServ [RFC2475].

   8) Support for Filter Installation and Capability Discovery
   For FEs that support packet classification functionality, the CE
   MUST be able to install filters and actions to be performed when a
   packet matches.  Rather than assume or mandate that each FE have the
   same filtering capabilities, FEs MUST be able to provide whatever
   filtering capabilities they desire (including no filtering
   capability).  In order for the CE to know what types of filters it
   can install on each FE, the CE MUST be able to query the FEÆs
   filtering capabilities.  This querying must be facilitated by a
   filter capability discovery mechanism.

   9) Support for Congestion Management
   The CE/FE separation protocol(s) MUST support the ability for the CE
   to query which congestion management mechanisms a FE provides.
   Furthermore, the protocol(s) MUST allow the CE to configure the
   provided congestion management mechanisms.

   10) Support for Installing IP Forwarding Tables
   The CE MUST be able to download IP forwarding tables to FEs.

   11) Support for Secure Communication
   Since FE configuration contains information critical to the
   functioning of a network (such as IP forwarding tables) and may
   contain information related to SLAs, any protocols defined MUST
   support a method of securing communication between FEs and CEs to
   ensure that information is delivered securely in an unmodified form.
   Furthermore, to prevent unauthorized FEs from joining the NE and to
   prevent unauthorized configuration of FEs, FEs and CEs MUST be able
   to authenticate one another.

   12) Support for Event Notification
   The CE MUST be notified of asynchronous events (e.g., link up or
   link down) and exceptions that occur in FEs (e.g., out of memory).

   13) Support for Vendor-specific extensions
   The protocol(s) SHOULD be extensible so that vendor specific
   functionality can be added.

   14) Scalability
   The protocol(s) MUST allow a CE to control from one to tens of FEs.

   15) Support Network Management Requirements
   The protocol(s) MUST be able to support network management
   requirements for querying and monitoring statistics.


5.   Security Considerations


   See protocol requirement #10.



Anderson                  Expires April 2001                  [Page 5]


Internet Draft           ForCES Requirements             October 2000



6.   References


   [RFC1633]  R. Braden, D. Clark, and S. Shenker, "Integrated Services
   in the Internet Architecture: an Overview", RFC 1633, ISI, MIT, and
   PARC, June 1994.

   [RFC1812]  F. Baker, "Requirements for IP Version 4 Routers", RFC
   1812, June 1995.

   [RFC2475]  M. Carlson, W. Weiss, S. Blake, Z. Wang, D. Black, and E.
   Davies, "An Architecture for Differentiated Services", RFC 2475,
   December 1998.


7.   Authors' Addresses


   Todd A. Anderson
   Intel
   2111 NE 25th Avenue
   Hillsboro, OR 97124 USA
   Phone: +1 503 712 1760
   Email: todd.a.anderson@intel.com

































Anderson                  Expires April 2001                  [Page 6]