Ryu SDN Framework What weʼ ve learned Where weʼ ll go FUJITA Tomonori NTT Software Innovation Center Ryu Project lead 2014.11.14
NTT Ryu team goal Change the networking industry by Open Source Software Past Future Custom hardware from big vendors Innovation is CLI automation by expect command Commodity hardware from various vendors You have more freedom for innovation 2
Agenda Whatʼ s Ryu Use Cases Future plans 3
Whatʼ s RYU? 4
Whatʼ s RYU? OSS SDN Framework founded by NTT Software for building SDN control plane agilely Fully implemented in Python Apache v2 license More than 350 mailing list subscribers Supporting the latest southbound protocols OpenFlow 1.0, 1.2, 1.3, 1.4 (and Nicira extensions) BGP Ofconfig 1.2 OVSDB JSON 5
Many users and more 6
Ryu is not a turnkey solution More like SDN library 7
Ryu development principles Developed mainly for network operators Not for one who sells the specific hardware switch Integration with the existing networks Gradual SDNʼ ingʼ the existing networks 8
What ʻ supporting OpenFlowʼ means? Your application are free from OF wire format (and some details like handshaking) Ryu converts it Python Object OF wire protocol Your application does something here Data Plane Python Object OF wire Protocol Ryu generates 9
Ryu development is automated Unit tests are executed github Docker hub image is updated You can update your Ryu environment with one command Push the new code Ryu certification site is updated Ryu certification is executed on test lab 10
USE CASES 11
From ONS presentation 12
From ONS presentation 13
SDN in OpenStack Whatʼ s OpenStack? OSS for building IaaS You can run lots of VMs Many SDN solutions are supported What SDN means for OpenStack? The network for your VMs are separated from others Virtual L2 network on the top of L3 network 14
Our second verion (OFAgent driver) OFC on every compute node One controller handles only one OVS Compute node Compute node VM VM Compute node VM VM VM OVS VM OVS OVS OpenStack REST API OpenStack standard RPC Over queue system Neutron Server SDN Operational Intelligence Openflow is used only inside a compute node Scalable with the number of compute nodes No single point of failure in OFAgent 15
Our first version OpenStack integration Same as other OpenFlow controllers The controller are connected with all the OVSes Compute node RYU Compute node VM VM Agent Compute node Agent VM VM OVS Agent VM OVS OVS VM OpenFlow OpenStack REST API Custom REST API Neutron Server Plugin SDN Operational Intelligence 16
SDN deployment for scale Push more features to edges Distribute features Place only a feature (e.g. TE) on central node you canʼ t distribute Couple loosely a central node and edges Tight coupling doesnʼ t scale (e.g. OpenFlow connections between a controller and switches) The existing technology like queue works 17
SDN- IX DoS mitigation Blocking traffic at Internet Exchange AS1 OF SW IX Configure the blocking policy AS2 18
Server resource management trend From hypervisor to container? Docker, CoreOS, Kubernets Everyone integrates server and switch management Easier to use software written in the same language Ryu BGP became OpenStack default BGP implementation over Quagga, BIRD, etc Should we implement Ryu in golang again? https://github.com/osrg/gobgp 19
FUTURE PLANS 20
Whitebox switch trend What? Merchant silicon- based bare metal switch hardware Users freely deploy software on the hardware Why? Big switch vendors canʼ t keep up with the speed of innovation in DC Big users cut the cost by buying hardware from ODM vendors directory Our plans Operating System for whitebox switch 21
OS for whitebox switch Management system What protocol is appropriate? What API is appropriate? Routing, monitoring, etc Linux kernel Industry Standard Hardware Standard Silicon 22
Change the networking industry by Open Source Software Together! This is just the begging 23