hp openflow plugin and libraries
DESCRIPTION
HP OpenFlow Plugin and Libraries. June 30, 2014. Why We Are Here. We are new to this community and have taken the opportunity to learn and explore where we can help and how we can contribute. - PowerPoint PPT PresentationTRANSCRIPT
www.opendaylight.org
HP OpenFlow Plugin and LibrariesJune 30, 2014
www.opendaylight.org2
We are new to this community and have taken the opportunity to learn and explore where we can help and how we can contribute.
One way we hope to contribute is by sharing the learnings we’ve gathered from productizing our SDN controller.
Our efforts to support OpenFlow on the various HP switches and the performance challenges that we’ve overcome is one of the first steps that we are hoping to take to contribute back to the community.
Why We Are Here
www.opendaylight.org3
Performance is important especially for productization
It is our experience that performance is affected both by how the SAL is structured how the controller handles I/O
Performance
www.opendaylight.org
We are able to achieve consistent and sustained performance of ~3Mpps.
Performance Numbers
4Xeon 2.93 GHz 24 core PC with 12 GB RAM
www.opendaylight.org5
Xeon 2.93 GHz 24 core PC with 12 GB RAM
www.opendaylight.org6
Demo
www.opendaylight.org7
Abstraction Abstract access to the network model
IOLoop Efficient handling of connections and I/O
Testing & Quality Maintain high level of coverage and regression
How We Got There
www.opendaylight.org8
Allows caching to provide fast access to commonly used views
Allows us to summarize and extract information from the data, without forcing app users to process the model directly
Allows us to change the underlying implementation and optimize how we acquire, process, distribute, and track the data
Abstraction
www.opendaylight.org9
We started out with Netty, but discovered a critical limitation Fails to aggressively pack multiple messages into a
single frame Performance capped at ~1.2Mpps
We adapted an existing network I/O library allowing us to achieve throughput of ~3Mpps
The I/O library itself is capable of 10s of Mpps, the ~3Mpps is performance obtained end-to-end, including encoding/decoding of packets, network service processing, etc…
IOLoop
www.opendaylight.org10
Unit test code coverage >80% Extensive Javadoc documentation
Testing & Quality
www.opendaylight.org11
Deep Dive
www.opendaylight.org12
System Abstraction
NETCONF
Node Host Link Topo Path Flow PacketBase
Drivers
Service & Model
Node
Suppliers & Brokers
Host Link Topo Path Flow Packet
Node Host Link Topo Path Flow PacketBase
Drivers
Drivers
SNMPOpenFlow . . .
API
API
Managers
Suppliers
Protocols
Facets
www.opendaylight.org13
OpenFlow Subsystem Overview
www.opendaylight.org14
Connection & I/O
www.opendaylight.org
Packet Ins
15
www.opendaylight.org16
CBench Packet Flow
www.opendaylight.org17
Demo
www.opendaylight.org18
Q&A
www.opendaylight.org19
Backup Slides
www.opendaylight.org20
Create, Encode, & Decode Messages