hp openflow plugin and libraries

20
www.opendaylight.org HP OpenFlow Plugin and Libraries June 30, 2014

Upload: denis

Post on 15-Jan-2016

52 views

Category:

Documents


0 download

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 Presentation

TRANSCRIPT

Page 1: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org

HP OpenFlow Plugin and LibrariesJune 30, 2014

Page 2: HP  OpenFlow  Plugin and Libraries

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

Page 3: HP  OpenFlow  Plugin and Libraries

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

Page 4: HP  OpenFlow  Plugin and Libraries

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

Page 5: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org5

Xeon 2.93 GHz 24 core PC with 12 GB RAM

Page 6: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org6

Demo

Page 7: HP  OpenFlow  Plugin and Libraries

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

Page 8: HP  OpenFlow  Plugin and Libraries

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

Page 9: HP  OpenFlow  Plugin and Libraries

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

Page 10: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org10

Unit test code coverage >80% Extensive Javadoc documentation

Testing & Quality

Page 11: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org11

Deep Dive

Page 12: HP  OpenFlow  Plugin and Libraries

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

Page 13: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org13

OpenFlow Subsystem Overview

Page 14: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org14

Connection & I/O

Page 15: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org

Packet Ins

15

Page 16: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org16

CBench Packet Flow

Page 17: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org17

Demo

Page 18: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org18

Q&A

Page 19: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org19

Backup Slides

Page 20: HP  OpenFlow  Plugin and Libraries

www.opendaylight.org20

Create, Encode, & Decode Messages