1 / 20

HP OpenFlow Plugin and Libraries

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.

denis
Download Presentation

HP OpenFlow Plugin and Libraries

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. HP OpenFlow Plugin and Libraries June 30, 2014

  2. 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. • 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.

  3. Performance • 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

  4. Performance Numbers • We are able to achieve consistent and sustained performance of ~3Mpps. Xeon 2.93 GHz 24core PC with 12 GB RAM

  5. Xeon 2.93 GHz 24core PC with 12 GB RAM

  6. Demo

  7. How We Got There • Abstraction • Abstract access to the network model • IOLoop • Efficient handling of connections and I/O • Testing & Quality • Maintain high level of coverage and regression

  8. Abstraction • 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

  9. IOLoop • 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…

  10. Testing & Quality • Unit test code coverage >80% • Extensive Javadoc documentation

  11. Deep Dive

  12. System Abstraction Service & Model API Drivers Packet Flow Path Link Host Node Topo Managers Suppliers & Brokers Facets API Base Drivers Packet Flow Path Link Host Node Topo Base Drivers Packet Flow Path Link Host Node Topo Suppliers . . . SNMP NETCONF OpenFlow Protocols

  13. OpenFlow Subsystem Overview

  14. Connection & I/O

  15. Packet Ins

  16. CBench Packet Flow

  17. Demo

  18. Q&A

  19. Backup Slides

  20. Create, Encode, & Decode Messages

More Related