SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
meetup #2 
OpenvSwitch 初探pichuang@sdnds-tw
About me 
❖ pichuang a.k.a. ⼩小⾶飛機! 
❖ 救⽕火員型研究⽣生! 
❖ NCTU CSCC TA! 
❖ NCTU Wireless Internet Lab! 
❖ http://roan.logdown.com! 
❖ http://fbl.me/pichuang
OpenvSwitch Introduction 
❖ Production Quality! 
❖ Multi Layer virtual switch! 
❖ L2 - L4! 
❖ Support OpenFlow protocol! 
❖ Written in platform-independent C
OpenvSwitch Features 
❖ VLAN tagging and trunking (802.1q)! 
❖ Standard Spanning Tree Protocol (802.1d)! 
❖ Link Aggregation Control Protocol (802.3ad)! 
❖ Port mirror! 
❖ RSPAN! 
❖ SPAN
❖ Flow monitor! 
❖ sFlow! 
❖ NetFlow! 
❖ IP Flow Information Export (IPFIX)! 
❖ QoS Control! 
❖ Tunneling Protocol! 
❖ VXLAN! 
❖ GRE! 
❖ IPSEC! 
❖ Support Intel® DPDK! 
❖ Support Linux Kenrel 3.11 ~ 3.14
OpenvSwitch Overview 
OpenFlow Controller 
Remote 
User space 
OpenFlow protocol 
ovs-vswitchd ovsdb-server 
datapath! 
ovs kernel module 
Kernel space 
unix socket 
netlink
kmod_openvswitch 
OpenFlow Controller 
Remote 
User space 
OpenFlow protocol 
ovs-vswitchd ovsdb-server 
datapath! 
ovs kernel module 
Kernel space 
unix socket 
netlink
❖ a.k.a “datapath"! 
❖ Fast Path lookup! 
❖ Strict match! 
❖ Similar to linux bridge ! 
❖ Hook network device handle! 
❖ Extract Flow key! 
❖ jhash3! 
❖ Implement tunneling 
protocol! 
❖ Megaflow (Wildcard table)
ovs-dpctl 
❖ Manage datapath command! 
❖ ovs-dpctl show! 
❖ ovs-dpctl dump-flows! 
❖ ovs-dpctl add-flow! 
❖ ovs-dpctl -h! 
! 
❖ ovs-dpctl-top (python)
ovs-vswitchd 
OpenFlow Controller 
Remote 
User space 
OpenFlow protocol 
ovs-vswitchd ovsdb-server 
datapath! 
ovs kernel module 
Kernel space 
unix socket 
netlink
❖ OpenvSwitch core component! 
❖ Talk to datapath via netlink! 
❖ Communicate with ovsdb-server via unix socket! 
❖ Implement various protocols! 
❖ like OpenFlow protocol! 
❖ Include exactly table(Fast lookup) and wildcard table 
(Slow lookup)
ovs-ofctl 
❖ Manage ovs-vswitchd command! 
❖ ovs-ofctl dump-flows <bridge name>! 
❖ ovs-ofctl show <bridge name>! 
❖ ovs-ofctl dump-tables <bridge name>! 
❖ ovs-ofctl -h
ovs-appctl 
❖ Manage logging level! 
❖ ovs-appctl vlog/list! 
❖ ovs-appctl vlog/set {module name}:{console, syslog, 
file}:{off, emer, err, warn, info, dbg}! 
❖ Generate packet for trace! 
❖ ovs-appctl ofproto/trace <bridge name>! 
❖ http://goo.gl/tWbZXH
ovsdb-server 
OpenFlow Controller 
Remote 
User space 
OpenFlow protocol 
ovs-vswitchd ovsdb-server 
datapath! 
ovs kernel module 
Kernel space 
unix socket 
netlink
❖ ovs-vswitchd configuration is stored on disk! 
❖ The OVSDB management protocol (RFC 7047)! 
❖ vswitch.ovsschema! 
❖ JSON Format
ovs-vsctl 
❖ Manages ovs-vswitchd configuration ! 
❖ ovs-vsctl show! 
❖ …! 
❖ ovs-vsctl -h
ovsdb-tool 
❖ Open vSwitch database management utility! 
❖ ovsdb-tool create conf.db vswitch.ovsschema! 
❖ ovsdb-tool query! 
❖ ovsdb-tool -h
ovs-ctl 
❖ OpenvSwitch Startup Script! 
❖ /usr/share/openvswitch/scripts/ovs-ctl! 
❖ ovs-ctl start! 
❖ ovs-ctl stop! 
❖ ovs-ctl -h
Match Flow
Flow match 
OpenFlow Controller 
OpenFlow PACKET_IN 
ovs-vswitchd 
wildcard flow table 
datapath flow table 
ovs-vswitchd 
exactly flow table 
unknown packet 
upcall (netlink) 
Kernel space
Flow install 
OpenFlow Controller 
datapath flow table 
ovs-vswitchd 
wildcard flow table 
ovs-vswitchd 
exactly flow table 
install flow entry 
Kernel space 
OpenFlow PACKET_OUT 
execute actions 
packet out
Debugging OpenvSwitch
OpenvSwitch Setting
Daemon 
❖ Start! 
❖ ovs-ctl start! 
❖ custom init script ! 
❖ Check! 
❖ ovs-ctl status! 
❖ ps aux |grep ovs
Logging 
❖ ovsdb-tool show-log [-mmm]! 
❖ cat /var/log/openvswitch/{ovsdb-server,ovs-vswitchd}. 
log
ovs-vsctl show 
❖ Controller! 
❖ Connection methods: tcp, ssl! 
❖ OpenFlow protocol: 6633, 6653! 
❖ is_connected: true! 
❖ fail_mode! 
❖ secure, standalone
ovs-ofctl 
OpenFlow Controller 
ovs-vswitchd 
wildcard flow table 
datapath flow table 
ovs-vswitchd 
exactly flow table 
Kernel space
ovs-ofctl show <bridge name> 
❖ Features Reply! 
❖ dpid! 
❖ ofport <-> interface
ovs-dpctl 
ovs-vswitchd 
wildcard flow table 
datapath flow table 
ovs-vswitchd 
exactly 
OpenFlow Controller 
Kernel space
ovs-dpctl show 
❖ hit! 
❖ hit existing entry! 
❖ missed! 
❖ send to userspace! 
❖ drop! 
❖ flows
Flow
ovs-ofctl 
OpenFlow Controller 
ovs-vswitchd 
wildcard flow table 
datapath flow table 
ovs-vswitchd 
exactly flow table 
Kernel space
ovs-ofctl dump-flows <bridge name> 
❖ xid! 
❖ check fields! 
❖ duration, idle_age, priority, in_port! 
❖ actions
ovs-dpctl 
ovs-vswitchd 
wildcard flow table 
datapath flow table 
ovs-vswitchd 
exactly 
OpenFlow Controller 
Kernel space
ovs-dpctl dump-flows 
❖ packets! 
❖ used! 
❖ actions
ovs-appctl bridge/dump-flows <br> 
❖ Include hidden flow! 
❖ Send packet to OpenFlow Controller
Thank you

Mais conteúdo relacionado

Mais procurados

Virtualized network with openvswitch
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitch
Sim Janghoon
 
OpenStack networking
OpenStack networkingOpenStack networking
OpenStack networking
Sim Janghoon
 
debugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitchdebugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitch
어형 이
 
Open stack networking vlan, gre
Open stack networking   vlan, greOpen stack networking   vlan, gre
Open stack networking vlan, gre
Sim Janghoon
 

Mais procurados (20)

Understanding Open vSwitch
Understanding Open vSwitch Understanding Open vSwitch
Understanding Open vSwitch
 
Virtualized network with openvswitch
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitch
 
Open vswitch datapath implementation
Open vswitch datapath implementationOpen vswitch datapath implementation
Open vswitch datapath implementation
 
OVS-NFV Tutorial
OVS-NFV TutorialOVS-NFV Tutorial
OVS-NFV Tutorial
 
OpenStack networking
OpenStack networkingOpenStack networking
OpenStack networking
 
Docker networking basics & coupling with Software Defined Networks
Docker networking basics & coupling with Software Defined NetworksDocker networking basics & coupling with Software Defined Networks
Docker networking basics & coupling with Software Defined Networks
 
Openv switchの使い方とか
Openv switchの使い方とかOpenv switchの使い方とか
Openv switchの使い方とか
 
Building a network emulator with Docker and Open vSwitch
Building a network emulator with Docker and Open vSwitchBuilding a network emulator with Docker and Open vSwitch
Building a network emulator with Docker and Open vSwitch
 
Pipework: Software-Defined Network for Containers and Docker
Pipework: Software-Defined Network for Containers and DockerPipework: Software-Defined Network for Containers and Docker
Pipework: Software-Defined Network for Containers and Docker
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
 
Open vSwitch - Stateful Connection Tracking & Stateful NAT
Open vSwitch - Stateful Connection Tracking & Stateful NATOpen vSwitch - Stateful Connection Tracking & Stateful NAT
Open vSwitch - Stateful Connection Tracking & Stateful NAT
 
Docker Networking with New Ipvlan and Macvlan Drivers
Docker Networking with New Ipvlan and Macvlan DriversDocker Networking with New Ipvlan and Macvlan Drivers
Docker Networking with New Ipvlan and Macvlan Drivers
 
2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful Services2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful Services
 
debugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitchdebugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitch
 
OpenStack networking juno l3 h-a, dvr
OpenStack networking   juno l3 h-a, dvrOpenStack networking   juno l3 h-a, dvr
OpenStack networking juno l3 h-a, dvr
 
Open stack networking vlan, gre
Open stack networking   vlan, greOpen stack networking   vlan, gre
Open stack networking vlan, gre
 
Tutorial on using CoreOS Flannel for Docker networking
Tutorial on using CoreOS Flannel for Docker networkingTutorial on using CoreOS Flannel for Docker networking
Tutorial on using CoreOS Flannel for Docker networking
 
Anatomy of neutron from the eagle eyes of troubelshoorters
Anatomy of neutron from the eagle eyes of troubelshoortersAnatomy of neutron from the eagle eyes of troubelshoorters
Anatomy of neutron from the eagle eyes of troubelshoorters
 
Open stack advanced_part
Open stack advanced_partOpen stack advanced_part
Open stack advanced_part
 
Demystifying openvswitch
Demystifying openvswitchDemystifying openvswitch
Demystifying openvswitch
 

Semelhante a Sdnds tw-meetup-2

FlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerFlowER Erlang Openflow Controller
FlowER Erlang Openflow Controller
Holger Winkelmann
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar
 
Node.js for Rubists
Node.js for RubistsNode.js for Rubists
Node.js for Rubists
Sagiv Ofek
 

Semelhante a Sdnds tw-meetup-2 (20)

SDNDS.TW Mininet
SDNDS.TW MininetSDNDS.TW Mininet
SDNDS.TW Mininet
 
WUG #009 - OpenVNet 0.7 presentation
WUG #009 - OpenVNet 0.7 presentationWUG #009 - OpenVNet 0.7 presentation
WUG #009 - OpenVNet 0.7 presentation
 
Open vSwitch Introduction
Open vSwitch IntroductionOpen vSwitch Introduction
Open vSwitch Introduction
 
Thebasicintroductionofopenvswitch
ThebasicintroductionofopenvswitchThebasicintroductionofopenvswitch
Thebasicintroductionofopenvswitch
 
OpenStack Networking
OpenStack NetworkingOpenStack Networking
OpenStack Networking
 
Secure LXC Networking
Secure LXC NetworkingSecure LXC Networking
Secure LXC Networking
 
FlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerFlowER Erlang Openflow Controller
FlowER Erlang Openflow Controller
 
Wireless openflow (english)
Wireless openflow (english)Wireless openflow (english)
Wireless openflow (english)
 
Openstack openswitch basics
Openstack openswitch basicsOpenstack openswitch basics
Openstack openswitch basics
 
OpenFlow Tutorial
OpenFlow TutorialOpenFlow Tutorial
OpenFlow Tutorial
 
Docker Multi Host Networking, Rachit Arora, IBM
Docker Multi Host Networking, Rachit Arora, IBMDocker Multi Host Networking, Rachit Arora, IBM
Docker Multi Host Networking, Rachit Arora, IBM
 
Introduction to OpenNetwork and SDN
Introduction to OpenNetwork and SDNIntroduction to OpenNetwork and SDN
Introduction to OpenNetwork and SDN
 
CampusSDN2017 - Jawdat: SDN Technology Evolvement
CampusSDN2017 - Jawdat: SDN Technology EvolvementCampusSDN2017 - Jawdat: SDN Technology Evolvement
CampusSDN2017 - Jawdat: SDN Technology Evolvement
 
Skydive, real-time network analyzer, container integration
Skydive, real-time network analyzer, container integrationSkydive, real-time network analyzer, container integration
Skydive, real-time network analyzer, container integration
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDN
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
 
Open v switch20150410b
Open v switch20150410bOpen v switch20150410b
Open v switch20150410b
 
H2020 finsec-ibm- aidan-shribman-finsec-skydive 260820
H2020 finsec-ibm- aidan-shribman-finsec-skydive 260820H2020 finsec-ibm- aidan-shribman-finsec-skydive 260820
H2020 finsec-ibm- aidan-shribman-finsec-skydive 260820
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspe
 
Node.js for Rubists
Node.js for RubistsNode.js for Rubists
Node.js for Rubists
 

Mais de Fei Ji Siao (7)

Onos sdn ip 建置之路 20160522
Onos sdn ip 建置之路 20160522Onos sdn ip 建置之路 20160522
Onos sdn ip 建置之路 20160522
 
Global SDN-IP Deployment at NCTU, Taiwan
Global SDN-IP Deployment at NCTU, TaiwanGlobal SDN-IP Deployment at NCTU, Taiwan
Global SDN-IP Deployment at NCTU, Taiwan
 
Sdn 之旅 open suse_asia_summit_20151206
Sdn 之旅 open suse_asia_summit_20151206Sdn 之旅 open suse_asia_summit_20151206
Sdn 之旅 open suse_asia_summit_20151206
 
進交大 一點都不難
進交大 一點都不難進交大 一點都不難
進交大 一點都不難
 
Introduction to NBL
Introduction to NBLIntroduction to NBL
Introduction to NBL
 
Floodlight introduction
Floodlight introductionFloodlight introduction
Floodlight introduction
 
Sdnds tw-meetup-1
Sdnds tw-meetup-1Sdnds tw-meetup-1
Sdnds tw-meetup-1
 

Último

Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
imonikaupta
 
( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...
( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...
( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...
nilamkumrai
 

Último (20)

All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
 
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...
( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...
( Pune ) VIP Pimpri Chinchwad Call Girls 🎗️ 9352988975 Sizzling | Escorts | G...
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
 
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
Russian Call Girls in %(+971524965298  )#  Call Girls in DubaiRussian Call Girls in %(+971524965298  )#  Call Girls in Dubai
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 

Sdnds tw-meetup-2

  • 1. meetup #2 OpenvSwitch 初探pichuang@sdnds-tw
  • 2. About me ❖ pichuang a.k.a. ⼩小⾶飛機! ❖ 救⽕火員型研究⽣生! ❖ NCTU CSCC TA! ❖ NCTU Wireless Internet Lab! ❖ http://roan.logdown.com! ❖ http://fbl.me/pichuang
  • 3. OpenvSwitch Introduction ❖ Production Quality! ❖ Multi Layer virtual switch! ❖ L2 - L4! ❖ Support OpenFlow protocol! ❖ Written in platform-independent C
  • 4. OpenvSwitch Features ❖ VLAN tagging and trunking (802.1q)! ❖ Standard Spanning Tree Protocol (802.1d)! ❖ Link Aggregation Control Protocol (802.3ad)! ❖ Port mirror! ❖ RSPAN! ❖ SPAN
  • 5. ❖ Flow monitor! ❖ sFlow! ❖ NetFlow! ❖ IP Flow Information Export (IPFIX)! ❖ QoS Control! ❖ Tunneling Protocol! ❖ VXLAN! ❖ GRE! ❖ IPSEC! ❖ Support Intel® DPDK! ❖ Support Linux Kenrel 3.11 ~ 3.14
  • 6. OpenvSwitch Overview OpenFlow Controller Remote User space OpenFlow protocol ovs-vswitchd ovsdb-server datapath! ovs kernel module Kernel space unix socket netlink
  • 7. kmod_openvswitch OpenFlow Controller Remote User space OpenFlow protocol ovs-vswitchd ovsdb-server datapath! ovs kernel module Kernel space unix socket netlink
  • 8. ❖ a.k.a “datapath"! ❖ Fast Path lookup! ❖ Strict match! ❖ Similar to linux bridge ! ❖ Hook network device handle! ❖ Extract Flow key! ❖ jhash3! ❖ Implement tunneling protocol! ❖ Megaflow (Wildcard table)
  • 9. ovs-dpctl ❖ Manage datapath command! ❖ ovs-dpctl show! ❖ ovs-dpctl dump-flows! ❖ ovs-dpctl add-flow! ❖ ovs-dpctl -h! ! ❖ ovs-dpctl-top (python)
  • 10. ovs-vswitchd OpenFlow Controller Remote User space OpenFlow protocol ovs-vswitchd ovsdb-server datapath! ovs kernel module Kernel space unix socket netlink
  • 11. ❖ OpenvSwitch core component! ❖ Talk to datapath via netlink! ❖ Communicate with ovsdb-server via unix socket! ❖ Implement various protocols! ❖ like OpenFlow protocol! ❖ Include exactly table(Fast lookup) and wildcard table (Slow lookup)
  • 12. ovs-ofctl ❖ Manage ovs-vswitchd command! ❖ ovs-ofctl dump-flows <bridge name>! ❖ ovs-ofctl show <bridge name>! ❖ ovs-ofctl dump-tables <bridge name>! ❖ ovs-ofctl -h
  • 13. ovs-appctl ❖ Manage logging level! ❖ ovs-appctl vlog/list! ❖ ovs-appctl vlog/set {module name}:{console, syslog, file}:{off, emer, err, warn, info, dbg}! ❖ Generate packet for trace! ❖ ovs-appctl ofproto/trace <bridge name>! ❖ http://goo.gl/tWbZXH
  • 14. ovsdb-server OpenFlow Controller Remote User space OpenFlow protocol ovs-vswitchd ovsdb-server datapath! ovs kernel module Kernel space unix socket netlink
  • 15. ❖ ovs-vswitchd configuration is stored on disk! ❖ The OVSDB management protocol (RFC 7047)! ❖ vswitch.ovsschema! ❖ JSON Format
  • 16. ovs-vsctl ❖ Manages ovs-vswitchd configuration ! ❖ ovs-vsctl show! ❖ …! ❖ ovs-vsctl -h
  • 17. ovsdb-tool ❖ Open vSwitch database management utility! ❖ ovsdb-tool create conf.db vswitch.ovsschema! ❖ ovsdb-tool query! ❖ ovsdb-tool -h
  • 18.
  • 19. ovs-ctl ❖ OpenvSwitch Startup Script! ❖ /usr/share/openvswitch/scripts/ovs-ctl! ❖ ovs-ctl start! ❖ ovs-ctl stop! ❖ ovs-ctl -h
  • 21. Flow match OpenFlow Controller OpenFlow PACKET_IN ovs-vswitchd wildcard flow table datapath flow table ovs-vswitchd exactly flow table unknown packet upcall (netlink) Kernel space
  • 22. Flow install OpenFlow Controller datapath flow table ovs-vswitchd wildcard flow table ovs-vswitchd exactly flow table install flow entry Kernel space OpenFlow PACKET_OUT execute actions packet out
  • 25. Daemon ❖ Start! ❖ ovs-ctl start! ❖ custom init script ! ❖ Check! ❖ ovs-ctl status! ❖ ps aux |grep ovs
  • 26. Logging ❖ ovsdb-tool show-log [-mmm]! ❖ cat /var/log/openvswitch/{ovsdb-server,ovs-vswitchd}. log
  • 27. ovs-vsctl show ❖ Controller! ❖ Connection methods: tcp, ssl! ❖ OpenFlow protocol: 6633, 6653! ❖ is_connected: true! ❖ fail_mode! ❖ secure, standalone
  • 28. ovs-ofctl OpenFlow Controller ovs-vswitchd wildcard flow table datapath flow table ovs-vswitchd exactly flow table Kernel space
  • 29. ovs-ofctl show <bridge name> ❖ Features Reply! ❖ dpid! ❖ ofport <-> interface
  • 30. ovs-dpctl ovs-vswitchd wildcard flow table datapath flow table ovs-vswitchd exactly OpenFlow Controller Kernel space
  • 31. ovs-dpctl show ❖ hit! ❖ hit existing entry! ❖ missed! ❖ send to userspace! ❖ drop! ❖ flows
  • 32. Flow
  • 33. ovs-ofctl OpenFlow Controller ovs-vswitchd wildcard flow table datapath flow table ovs-vswitchd exactly flow table Kernel space
  • 34. ovs-ofctl dump-flows <bridge name> ❖ xid! ❖ check fields! ❖ duration, idle_age, priority, in_port! ❖ actions
  • 35. ovs-dpctl ovs-vswitchd wildcard flow table datapath flow table ovs-vswitchd exactly OpenFlow Controller Kernel space
  • 36. ovs-dpctl dump-flows ❖ packets! ❖ used! ❖ actions
  • 37. ovs-appctl bridge/dump-flows <br> ❖ Include hidden flow! ❖ Send packet to OpenFlow Controller