• Save
Upcoming SlideShare
Loading in...5




a document for the study meeting

a document for the study meeting



Total Views
Views on SlideShare
Embed Views



1 Embed 1

http://www.slideee.com 1



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

techcircle_spin_off_20140722 techcircle_spin_off_20140722 Presentation Transcript

  • Open vSwitch and something #techcircle spin-off
  • TOC * introduction * structure and architecture * explanation of the terms in short * CLI utilities * how is OVS used now? * trivia
  • introduction what is Open vSwitch? * an open source software switch implementation which supports OpenFlow. * in other words, a virtual switch. * also it's called OVS. * works on Linux-based OS which kernel version is 2.6.32 or greater. * OVS has been merged into the main line of Linux kernel at the time kernel's version became 3.3. * however, source codes of OVS have less dependency to platforms. * it has high portability. ex. it has been ported to hyper-v, or hardware.
  • introduction features what OVS has * supports OpenFlow 1.0/1.3 * also it can work as general L2 switches. * by writing a flow entry which has NORMAL action. * supports monitoring/management protocols. * NetFlow, sFlow * programmable interfaces * OpenFlow, OVSDB, ... * tunneling * VXLAN, NVGRE, STT, Geneve (New! on the master branch) * others * VLAN, QoS, ...
  • introduction features what OVS has * full feature list * see http://openvswitch.org/features/ * works with hypervisors/virtual machines.
  • structure and architecture * github.com/openvswitch/ovs/blob/master/PORTING _ | +-------------------+ | | ovs-vswitchd |<-->ovsdb-server | +-------------------+ | | ofproto |<-->OpenFlow controllers | +--------+-+--------+ _ | | netdev | |ofproto-| | userspace | +--------+ | dpif | | | | netdev | +--------+ | | |provider| | dpif | | | +---||---+ +--------+ | | || | dpif | | implementation of | || |provider| | ofproto provider |_ || +---||---+ | || || | _ +---||-----+---||---+ | | | |datapath| | kernel | | +--------+ _| | | | |_ +--------||---------+ || physical NIC
  • explanation of the terms in short * ovs-vswitchd * an Open vSwitch daemon. * --- A daemon that manages and controls any number of Open vSwitch switches on the local machine. * loads and stores the configuration of bridges, ports, etc by communicating with ovsdb-server, and passes ofproto that data.
  • explanation of the terms in short * ofproto * an Open vSwitch library. * it communicate with OpenFlow controllers in OpenFlow. * also talks with devices through netdev or ofproto provider. * netdev / netdev-provider * an Open vSwitch library. * --- that abstracts interacting with network devices. * --- a netdev provider implements an operating system and hardware specific interface to network devices.
  • explanation of the terms in short * ofproto provider * --- is what ofproto uses to directly monitor and control an OpenFlow-capable switch. * ovsdb-server * a database server manages configurations of ovs. * it has OVSDB interface. * datapath * the kernel module transfers packets.
  • CLI tools * ovs-ofctl * used to add, delete, modify, dump flows. * ovs-vsctl, a utility for querying and updating the configuration of ovs-vswitchd. * used to modify configurations stored in ovsdb-server. * ovs-dpctl * used to configure the datapath kernel module. * ovs-appctl * used to send the commands to running Open vSwitch daemons. * see github.com/openvswitch/ovs/blob/master/README
  • how is OVS used now? * generally, it's used under OpenFlow controllers. * in virtualization, it's used as the edge virtual switch, and works with hypervisors together. * ex. OpenDOVE is OVS based. it realizes virtual networks. from https://wiki.opendaylight.org/view/Project_Proposals:Open_DOVE
  • how is OVS used now? * it can be implemented into hardware to build OpenFlow switches. * ex. Pica8 Pronto series
  • trivia what's OpenFlow? * --- OpenFlow is a communications protocol that gives access to the forwarding plane of a network switch or router over the network. * see https://www.opennetworking.org/sdn-resources/ onf-specifications/openflow
  • trivia controllers? * Floodlight * NOX/POX * Trema * Ryu * Open Daylight * Open Contrail
  • trivia relationship with SDN * before that, what's SDN? * has some definitions. * a concept to make networks programmable. * architecture divides networks into two planes, control planes and data planes. * controllers on the control plane manage and control switches and its flows on the data plane.
  • trivia relationship with SDN * before that, what's SDN? * OpenFlow is just a southbound protocol, not SDN. * it's one of methods to realize SDN. * realizing SDN without OpenFlow is possible. * however, that's a little hard way because OpenFlow is now an open standard protocol. * Programmability doesn't mean only flow control. it also includes provisioning functions or something.
  • trivia network virtualization is what? * it also has multiple definitions as same as SDN. * to build multiple, desired virtual networks on the physical network regardless of its structure. * nearly equals 'multi-tenancy', realize isolated networks on the physical network. * virtualize network functions such as load balancers, firewalls, etc. * this is what they call 'Network Function Virtualization (NFV)'. * generally, NFV is realized by virtual appliances on low-cost standard servers.
  • trivia network virtualization is what? * not only edge technologies can realize network virtualization. * the traditional one, such as VLAN, also can achieve it. * new one is designed and implemented to resolve the problems of traditional one, and satisfy rapid-delivery demands.
  • trivia network virtualization is what? * in terms of SDN, there are two patterns. * hop-by-hop * all elements in network are needed to understand OpenFlow. * it can control the network finely. * since there are many control points, it will be complicated. * edge-overlay * realize isolated network using tunneling, and OpenFlow to map network identifier to virtual network. * only hypervisors communicate in OpenFlow. * overlay networks work whatever underlay networks are. * it's difficult to control QoS or something flexibly.
  • trivia misc * SDN is a part of SDI * OVS and OpenFlow * OpenFlow 1.3 has it's support protocol called OF-Config which provision switches‘ port or something * but OVS doesn't support OF-Config. Instead, it supports OVSDB. * STP? * in case of using OVS in OpenFlow mode, it depends on flow entries if packet loop occurs or not. * that is, it depends on how controllers are implemented. * VLAN, access ports and trunk ports? * Lagopus? * L2? L3? switch? router? * there are no 'OpenFlow Routers'. it depends on flows how packets are transmitted. * default controller implementation? * relationship with Linux kernel IP stack?
  • questions?
  • Thank you