This vendor-written tech primer has been edited by Network World to eliminate product promotion, but readers should note it will likely favor the submitter's approach.
Software-defined networking (SDN) is emerging as an alternative to proprietary data center networks, a way to separate the control plane from the data plane in data center switches and routers. With SDN, network control is implemented in software and can be executed from a server, which reduces network complexity and provides a common interface that is an alternative to vendors' proprietary and expensive options.
There are several developments of SDN solutions, with OpenFlow (in its early stages) and OpenSM (in production today) being the two leading options. OpenSM is the SDN solution for InfiniBand, a fast interconnect technology that was built as an SDN from its basic architecture level and used in the most demanding production sites in existence today.
SDN promises a high-level "virtual" representation of the network, a standard means to control the network physical elements, a scalable architecture that provides high-performance connectivity even for large flat networks, and the quick addition of new network features via open, industry-standard interfaces. In order to achieve this, a layered abstraction of the network control plane and separation of the control and data planes are required.
In his excellent presentation titled "The Future of Networking, and the Past of Protocols," Scott Shenker described SDN as a three-layer abstraction for the network control plane. The SDN abstraction for the network control plane, as he presented it, is shown in Figure 1.
The network equipment is represented at the bottom of the diagram and the data links are shown in blue to complete the network. The control plane is depicted as arrows connecting the equipment to a software layer named the network operating system (NOS). These connections are the ones standardized by Ethernet SDN, also known as OpenFlow. On the one hand, the task of the NOS is to represent a global network view, such as the connected graph of the data links to the upper layers. On the other hand, the NOS takes directives about the configuration to be applied to each system and performs the actual setting.
A control program, sometimes called compiler, takes the directives provided as end-to-end behavior targets and converts them into specific-system NOS settings on top of the global network view graph.
A user interface program that converts the network-manager intent into features of a high-level virtual topology is at the top of the abstraction. This program is named virtual network controller.
SDN is more than just the standard for device configuration. SDN promises a whole new range of network flexibility and scalability.
InfiniBand software-defined networking
InfiniBand was first specified in 1999, and has evolved and matured over time into a much richer specification. From the start, it embodied concepts similar to those of software-defined networking. Datapath mechanisms such as forwarding were defined with a clear control plane interface. Every InfiniBand device must have an embedded control plane agent named subnet management agent (SMA). The protocol and message format for in-band communication with the SMAs is well-defined. Subnet management packets (SMPs) are used for control plane communication via software, thus SMP and their protocols are the equivalent to OpenFlow. An InfiniBand-based SDN equivalent is described in Figure 2.
The NOS equivalent functionality is provided by the subnet manager (a software entity) which sends and receives SMPs to discover, configure and maintain the network. The subnet manager is available either as an open source project (OpenSM) or as part of commercial products from InfiniBand vendors. It can operate as a stand-alone component or as multiple components working together for high availability purposes. The compiler that converts end-to-end configuration and policy to topology-specific configuration is available as top layer software as well as a user interface and API to define the networkwide policies at a virtual network level.
The InfiniBand control plane protocol specification is a well-defined SDN solution which is used in many of the world leading high-performance, enterprise, cloud and Web 2.0 data centers. The advantages include:
* Works in-band so there is no need for a separate control network. Remote control plane management protocols require the existence of an interconnect packet-forwarding mechanism even before the forwarding plane is configured. InfiniBand is not dependent on other protocols to reside within the systems and utilizes direct-routing for configuration. With such capability, it eliminates the need for a separate management network to be built, and real-world installations rely -- in many cases -- solely on in-band management. This significantly reduces costs and complexity.
* Defines a fast and standard mechanism for extraction of the global network view.
Topology discovery, which is the basis for building the global network view, is also fully standardized in InfiniBand and relies on SMPs. In contrast to other discovery methods in use today that rely on higher-level protocols such as LLDP and SNMP, the InfiniBand Subnet Manager directly addresses network discovery. It relies on InfiniBand in-band discovery protocols. This results in a very fast and efficient discovery of the fabric. For example, it is able to extract a topology of a 20,000-node data center topology in roughly 10 seconds.
* Fast handling of faults or changes to the topology. It is not enough to discover and/or to plan the fabric routing scheme. In daily fabric operations, the ability to detect problems or changes is critical. Unlike other existing solutions, the InfiniBand standard has a specific, well defined SMA feature that addresses this ability and provides the Subnet Manager with immediate notifications on fabric events and errors.
* A standard global network view. InfiniBand also provides a standard interface for providing the global network view. A set of standard network-administration packets provides any authorized client with detailed fabric information.
InfiniBand SDN solutions are deployed in thousands of data centers worldwide and have been in production for many years now. InfiniBand networks are centrally managed by NOS software named OpenSM that is fully controlled by an upper-layer fabric manager.
The scale of InfiniBand deployments ranges from data centers of tens of nodes to tens of thousands of nodes. InfiniBand fabrics include high availability and in-service upgrades, providing the highest levels of uptime and application performance.
InfiniBand SDN provides traffic engineering features like tenants' traffic-pattern driven routing, QoS and traffic isolation. All these features are defined in a topology-agnostic manner. On top of that, InfiniBand SDN provides a means to define topology-aware as well as topology-agnostic monitoring. This is achieved via enterprise-grade Fabric Management, which can manage the physical network entities directly.
Furthermore, the fabric manager component provides a logical model that abstracts the physical network layer to logical entities such as applications, logical services, various network tenants, etc. This provides the end user with a business-oriented method to manage the network -- monitoring and provisioning-wise. Backed up by an extensive API, it enables a full set of tools to manage networks in the SDN era and seamlessly integrate into the customers' "big picture" of data center management.
Tom Thirer, Brian Sparks and Gilad Shainer from Mellanox Technologies contributed to this article.