Transcription
Ryu: Network OperatingSystemKazutaka MoritaNTT Software Innovation CenterJune 6, 2012
Agenda² ² ² OverviewHow it works and DemoSummary2
Overview
What is Ryu?² Open-sourced network operating system³ Network operating system ³ Open source software (Apache v2) ² ² Programmatic network control interfaceLogically centralized controller for thousands of switches(OVS, openflow switch)Fully written in PythonProject site: http://www.osrg.net/ryu/Ryu plugin was merged into Quantum EssexRyu stands for³ ³ 流 - Means “flow” in Japanese龍 - Means “Japanese dragon”, one of water gods4
OverviewRyu network controllersProgrammatic networkcontrol interface・ We can implementnetwork managementapplications on top ofthe RyuovsappappappRESTfulmanagement APIAdministratorLogically centralizedcontroller・ Decouples virtual networksfrom the physical network・Supports OpenFlow 1.0(including Nicira Extension)Openflow switchovsOpenflow switch5
Goals² ² De facto OSS network operating systemHigh quality enough for use in largeproduction environment³ ³ ³ ² ² Code qualityFunctionalityUsabilityBecome the standard network controller ofOpenStack (default plugin of Quantum)Default Controller for fedora/debian/ubuntu6
What does Ryu bring toOpenStack?² ² Flat L2 networks regardless of theunderlying physical networkScalable multi-tenant isolations³ ³ ³ Ryu provides tunneling based isolationsVLAN doesn’t scale larger than 4096We don’t need high-end switches7
What does Ryu provide?² ² Intergrated feature with OpenStackRyu application³ ³ ³ ³ GRE tunnelingVLAN supportTopology discoveryMAC based segregation8
How it works & Demo
Block diagram of Ryu.RyuAppGREtunnelRyuAppDiscoveryRyuAppVLANREST APIHigher level eventSwitch management/OFP eventOpenflow ntHTTP server(WSGI)Event queue/dispatcher10
Ryu demo (GRE tunneling)pingpingLinuxLinuxQemu/KVM KVMGRE tunnelGRE vacomputeQuantumagentKVMGRE tunnelbridgeLinux (phyisical machine)11
Ryu demo (GRE tunneling)Host1Tenant AVM 1Tenant AVM 2Tenant A ID - 3Tenant B ID - 4Tenant BVM 1GRE tunnel 1-3OVS 1Tenant AVM 4GRE tunnel 1-2Host 3Tenant BVM 4Tenant BVM 5OVS 3Host 2Tenant AVM 3Tenant BVM 2Tenant BVM 3GRE tunnel 2-3OVS 212
Summary
Future items² ² ² Integration with Quantum IPAM and L3APIFirewallVirtual network to physical network, andvice versa³ ² Convert among GRE key, VLAN tag, Distributed controllers³ ³ No single point of failureDatacenter-wide scalability14
Summary² Ryu is an open-sourced network operatingsystem licensed under Apache License v2.³ Site: http://www.osrg.net/ryu/³ ML: ryu-devel@lists.sourceforge.net² ² Ryu OpenStack easy set up VM³ ronment-VM-image-fileHOWTO15
Appendix
OpenStack basics² OpenStack³ Nova: cloud management systemQuantum: network management system³ Physical machine that runs guest VM instances³ ² ² Nova compute nodeNova network node³ ² Quantum server³ ³ ² Manages network configurationNova requests quantum-server for network configurationQuantum agent³ ² Physical machine that runs networks gateway to the outside networkIt runs on nova compute/network nodeQuantum plugin³ ³ Plugin for each network technologyRyu plugin17
Open-sourced network operating system " Network operating system # Programmatic network control interface # Logically centralized controller for thousands of switches (OVS, openflow switch) " Open source software (Apache v2) # Fully written in Python # Project site .