InterDomain Controller Protocol (IDCP)

I) DICE IDCP Overview

This site provides an overview of the DICE InterDomain Controller Protocol (IDCP). This protocol has been implemented and is in use by multiple organizations for dynamically provisioning network resources across multiple administrative domains. This protocol supports an architecture for dynamic networking, the concept by which network resources (i.e. bandwidth, VLAN number, etc) are requested by users, automatically provisioned by software, and released when they are no longer needed. This contrasts more traditional "static" networking where network configurations are manually made by network operators and usually stay in place for long periods of time.

This work was originally developed as part of the DICE Control Plane Working Group. DICE is an acronym for Dante, Internet2, CANARIE, and ESnet. However, there are now a larger set of organizations involved in this work.

As the name suggests, the IDC protocol specifically addresses issues related to dynamically requested resources that traverse domain boundaries. In both the static and dynamic case there must be extensive coordination between each domain to provision resources. In the static case this requires frequent communication between network operators making manual configurations and can take weeks to complete depending on the task. In the dynamic case, the IDC protocol automates this coordination and allows for provisioning in seconds or minutes. Interactions between domains are handled using messages defined in the protocol.

The IDC protocol defines messages for reserving network resources, signaling resource provisioning, gathering information about previously requested resources, and basic topology exchange. These messages are defined in a SOAP web service format. Since all messages are defined using SOAP, the protocol also utilizes a few external web service protocols and XML descriptions for features such as security and topology description. Also, the complete list of supported messages defined by the IDC protocol is contained within a Web Services Description Language (WSDL) . This site identifies the specifications and documents which provide the details on the information elements in each message.

II) DICE IDCP Specifications

The current DICE IDCP release version is identified as v1.1, which is defined by the following schemas, WSDL files, and protocol documents.

Protocol Specification:

Network Topology Definition and Description:

IDC Messaging:

Note: The above nmtopo_ctrlplane.rnc schema was an extension to Revision #378 of the Network Measurement Working Group (NMWG) defined schemas. As a result there are a few element definitions in the nmtopo_ctrlplane.rnc schema which reference the larger schema space. A tar file of the NMWG schemas Revision #378 is available here.

III) DICE IDCP Specifications using controlplane.net/IDCP namespace

The below specifications are identical to the ones in section II above with one change: The namespace referenced is based on controlplane.net namespace.

Protocol Specification:

Network Topology Definition and Description:

IDC Messaging:

(summary of namespace changes)

IV) Organizations Using DICE IDCP Compatible Implementations

The following organizations have either implemented and/or have used a IDCP compatible system to enable dynamic network provisioning.

The following "higher level service applications" have adapated their existing system to communicate via the user requst side of IDCP:

IV) Previous Versions of the DICE IDCP

The initial DICE IDCP release version is identified as v1.0 and information on that is located here

VI)IDCP Future Features/Issues List

A list of IDCP possible future features and issues is maintained here

VII) DICE Partners