Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > Networks

Using OpenFlow protocol to control network flow

Posted: 17 Feb 2012 ?? ?Print Version ?Bookmark and Share

Keywords:software-defined networking? OpenFlow? Open Networking Foundation?

Accordingly, OpenFlow-hybrid switches that support both OpenFlow operation and normal Ethernet switching operation are needed. These hybrid devices offer the most practical way to move to flow-processing while supporting traditional L2 Ethernet switching, VLANs, L3 routing, ACLs, and QoS processing. Initial flow classification is responsible for routing traffic to either the OpenFlow pipeline or the traditional, destination-based switched or routed pipeline. Through this hybrid approach, the benefits of OpenFlow can be realized in a manner that allows slow but realistic adoption of the technology rather than through an immediate change from traditional techniques to a pure SDN.

Processor considerations
Most network equipment based on network processor units (NPUs) including Ethernet switches and routers offers a very low instruction rate and processes traffic solely based on IP and Ethernet source and destination packet-header fields. These devices are, by design, not flow aware and are completely stateless.

Although flow state is not specifically required to be kept on each forwarding decision to support OpenFlow, there are numerous benefits to doing so. When implementing OpenFlow in these types of processors, many examples exploit the fact that these processors contain flow-tables where flow-forwarding rules are implemented as "rules" or access control list (ACL) action processing in on-chip TCAMs (ternary content addressable memories).

Any flow-forwarding rules implemented in TCAM can be used for OpenFlow processing, but these architectures struggle mightily in other aspects. These ACL rules are implemented in small on-chip memories that only scale to support several thousand flow-forwarding rules.

To scale to support the massive number of flows traversing carrier networks and massive data centers, individual forwarding entries for millions of flows is necessary to provide the level of utility that OpenFlow promises.

In addition, these processors typically operate in a pipeline-based processing paradigm and therefore don't support recursive flow forwarding with multiple table support. Rather, they would only support a single flow table and action match and not implement the nested, multitiered flow-processing behavior that the OpenFlow specification calls out.

The important question to consider is, can traditional Ethernet switching silicon and NPUs with little or no programmability support the needed complex security and flow-forwarding interactions to support OpenFlow for millions of flows with arbitrary recursive flow lookups? Also, can these processors adapt and change over time as the OpenFlow specification matures and changes?

A more appropriate processing architecture for implementing OpenFlow uses specialized flow-aware programmable processors that support line-rate flow forwarding, can reinsert packets into a separate pipeline for nested lookups based on the OpenFlow controller's view of the network, and support massive flow tables in external memories. Flow processors, by nature, are completely programmable, and offer a very high instruction rate that can be applied to incoming flows.

Flow processors provide stateful flow-based forwarding/pinning, nested flow-forwarding actions for millions of flows, and dynamic flow-based load balancing. Additional benefits that flow processors provide is the ability to off-load traffic classification, provide flow-content analysis, perform protocol off-loads, packet rewriting, connection splicing, protocol termination, and support PKI/symmetric and public key cryptography operations.

Stay tuned
The revolutionary idea of OpenFlow is to provide a comprehensive flow-forwarding architecture that separates the packet switching and control functions in networks. This will enable users to freely develop applications independently of network topology, provide the ability to carve out network resources on a per-flow, per-application basis, give customers per-application and per-service throughput and latency guarantees, and open the door to new applications and services.

For OpenFlow to ultimately succeed and meet the lofty goals that the industry has theorized that SDNs can provide, one needs to carefully consider the processors used to implement OpenFlow. In addition, the open standard itself needs to continue to advance to augment the specification in obvious areas where it's remiss.

In addition, the open standard itself needs to continue to advance to augment the specification in obvious areas where it's remiss. The Open Networking Foundation (ONF) recently completed an update to the OpenFlow SDN standard. Version 1.2 adds support for IPv6, extensible matches, and experimental extensions. Other examples of areas that the specification doesn't explicitly include at this time are QoS and traffic shaping, security, and fault tolerance. Considering the utility that the current specification gives to network operators and provided careful consideration is given to these important areas for extension, the skeptics may ultimately be proven wrong and programmable SDNs may be the next big thing in networking.

About the author
Daniel Proch is director of product management at Netronome where he is responsible for network-flow engine acceleration cards, flow-processing platforms, and flow-management software. He has 15 years of experience in the networking and telecommunications spanning product management, strategic planning, and engineering. Daniel has a BS in mechanical engineering from Carnegie Mellon and an MS in information science and telecommunications from the University of Pittsburgh.

To download the PDF version, click here.

?First Page?Previous Page 1???2???3???4

Article Comments - Using OpenFlow protocol to control n...
*? You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.

Back to Top