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

Understanding Open vSwitch
Understanding Open vSwitch Understanding Open vSwitch
Understanding Open vSwitch YongKi Kim
 
Virtualized network with openvswitch
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitchSim Janghoon
 
Open vswitch datapath implementation
Open vswitch datapath implementationOpen vswitch datapath implementation
Open vswitch datapath implementationVishal Kapoor
 
OpenStack networking
OpenStack networkingOpenStack networking
OpenStack networkingSim Janghoon
 
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 NetworksAdrien Blind
 
Openv switchの使い方とか
Openv switchの使い方とかOpenv switchの使い方とか
Openv switchの使い方とかkotto_hihihi
 
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 vSwitchGoran Cetusic
 
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 DockerJérôme Petazzoni
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking ExplainedThomas Graf
 
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 NATThomas Graf
 
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 DriversBrent Salisbury
 
2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful Services2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful ServicesThomas Graf
 
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, dvrSim Janghoon
 
Open stack networking vlan, gre
Open stack networking   vlan, greOpen stack networking   vlan, gre
Open stack networking vlan, greSim Janghoon
 
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 networkingLorisPack Project
 
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 troubelshoortersSadique Puthen
 
Open stack advanced_part
Open stack advanced_partOpen stack advanced_part
Open stack advanced_partlilliput12
 

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

SDNDS.TW Mininet
SDNDS.TW MininetSDNDS.TW Mininet
SDNDS.TW MininetNCTU
 
WUG #009 - OpenVNet 0.7 presentation
WUG #009 - OpenVNet 0.7 presentationWUG #009 - OpenVNet 0.7 presentation
WUG #009 - OpenVNet 0.7 presentationAxsh Co. LTD
 
Open vSwitch Introduction
Open vSwitch IntroductionOpen vSwitch Introduction
Open vSwitch IntroductionHungWei Chiu
 
Thebasicintroductionofopenvswitch
ThebasicintroductionofopenvswitchThebasicintroductionofopenvswitch
ThebasicintroductionofopenvswitchRamses Ramirez
 
OpenStack Networking
OpenStack NetworkingOpenStack Networking
OpenStack NetworkingIlya Shakhat
 
FlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerFlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerHolger Winkelmann
 
Wireless openflow (english)
Wireless openflow (english)Wireless openflow (english)
Wireless openflow (english)Hiroaki Kawai
 
Openstack openswitch basics
Openstack openswitch basicsOpenstack openswitch basics
Openstack openswitch basicsnshah061
 
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, IBMNeependra Khare
 
Introduction to OpenNetwork and SDN
Introduction to OpenNetwork and SDNIntroduction to OpenNetwork and SDN
Introduction to OpenNetwork and SDNHungWei Chiu
 
CampusSDN2017 - Jawdat: SDN Technology Evolvement
CampusSDN2017 - Jawdat: SDN Technology EvolvementCampusSDN2017 - Jawdat: SDN Technology Evolvement
CampusSDN2017 - Jawdat: SDN Technology EvolvementJawdatTI
 
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 integrationSylvain Afchain
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDNSzilvia Racz
 
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 &NFVBharath Ram Chandrasekar
 
Open v switch20150410b
Open v switch20150410bOpen v switch20150410b
Open v switch20150410bRichard Kuo
 
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 260820innov-acts-ltd
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspeChris Westin
 
Node.js for Rubists
Node.js for RubistsNode.js for Rubists
Node.js for RubistsSagiv 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

Onos sdn ip 建置之路 20160522
Onos sdn ip 建置之路 20160522Onos sdn ip 建置之路 20160522
Onos sdn ip 建置之路 20160522Fei Ji Siao
 
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, TaiwanFei Ji Siao
 
Sdn 之旅 open suse_asia_summit_20151206
Sdn 之旅 open suse_asia_summit_20151206Sdn 之旅 open suse_asia_summit_20151206
Sdn 之旅 open suse_asia_summit_20151206Fei Ji Siao
 
進交大 一點都不難
進交大 一點都不難進交大 一點都不難
進交大 一點都不難Fei Ji Siao
 
Introduction to NBL
Introduction to NBLIntroduction to NBL
Introduction to NBLFei Ji Siao
 
Floodlight introduction
Floodlight introductionFloodlight introduction
Floodlight introductionFei Ji Siao
 
Sdnds tw-meetup-1
Sdnds tw-meetup-1Sdnds tw-meetup-1
Sdnds tw-meetup-1Fei Ji Siao
 

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

Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012rehmti665
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa494f574xmv
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Dana Luther
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMartaLoveguard
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一z xss
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Lucknow
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Excelmac1
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书zdzoqco
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一Fs
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITMgdsc13
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 

Último (20)

Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptx
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
 
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITM
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 

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