SDN: 如何從不會到有⼀一點會
Speaker: 陳彥皓

Date: 2018/04/28
At the beginning
佛系網路路使⽤用者
不懂 HTTP 不懂 TCP、UDP
不接網路路線 不連 WiFi
不繳網路路費 不開⾏行行動數據
緣份到了了 ⾃自然就會有網路路
!2
Evolution graph
RJ-45
A switch
Switches
Data center
Virtual network
!3
RJ-45
!4
From: https://dailyview.tw/Popular/Detail/1133
RJ-45
What is SDN?
Google? Waiting the answer from God?
Google?
Google? Waiting the answer from God?
Beginner
!5
English >= Chinese
Official document >= Blog
Implement > Just talking
Senior
English > Chinese
Official document > Blog
Implement == Just talking
SDN
Architecture
SDN protocols
Control plane
Data plane
Virtual network
OpenFlow
P4
SDN controller
SDN switch
Docker networking
ONOS
Ryu
OpenDayLight
Hardware switch
Software switch
!6
!7
How to get next level?
Just reading
Implement!
!8
A switch
Rich personGeneral person
Real environment
Virtual environment
Virtual environment
Real environment
!9
A switch
Virtual environment for SDN
• Installing easily
• Supported OpenFlow
• With CLI
• Programmable (Python)
• Creating the network environments what you want!
Mininet
From: http://mininet.org/
!10
A switch
Example
C1
H1 H2
S1
sudo mn
A simple environment (Out of band)
!11
A switch
Example
C1
H1
S1
Default
Remote
OVS
Can be Modified by rebuilding OVS
Your PC
Can adjust interfaces by code
Official documents
Translated version
!12
A switch
More detail:
http://flowgrammable.org/sdn/openflow/
How does it work?
!13
A switch
C1
H1 H2
S1
• Connection
• Command
• Collects status of networking
How does it work?
!14
A switch
How does it work?
C1 S1
!15
A switch
S1
Try to forward packets without controller.
Example:
OVS official document
Translated version
How does it work?
!16
A switch
To be a supervisor. What should it do?
How does it work?
C1
Let switches know what they should do.
Creates the SOP for each situation.
Example:
Ryu
Ryu (translated)
ONOS
ONOS (translated)
Next level: Switches
!17
Switches
!18
How do you forward the packets to the destination?
Network is a distribution system, and each component is in charge of a part network.
C1
S2
S1
S4
S3
S5
H1
H2
Admin
Env
H1 -> H2
-> S4
-> S2
-> S3 -> S5
-> H2
!19
Switches
To be creative.
Knows what the traditional network does.
Just do it.
Reports the real-time situation.
!20
Switches
C1 S1
Conversation is important!
The overhead about the messages between controllers and switches.
In-band or out of band?
The connection is reliable?
!21
Personal opinion
Traditional network vs SDN
Traditional network SDN
Pros Error tolerance. Adaptation and flexibility.
Cons Not flexible.
The control plane
overhead.
!22
Personal opinion
Does the environment need SDN?
!23
Personal opinion
What is the controller I should choice?
Beginner: Ryu
Senior: ONOS
Writing the controller apps instead of using API.
It’s time to learn P4!
Linux is always your friend (or nightmare) !
–Simon Chen
「Life is tough.」
!24

SDN: 如何從不會到有一點會