Advait Dixit Fang Hao Sarit Mukherjee TV Lakshman Ramana Kompella Physical Network Infrastructure SDN Control Plane Distributed Control Plane Single point of failure ID: 151970
Download Presentation The PPT/PDF document "Towards an Elastic Distributed SDN Contr..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Towards an Elastic Distributed SDN Controller
Advait Dixit,
Fang
Hao
,
Sarit
Mukherjee,
T.V
.
Lakshman
,
Ramana
KompellaSlide2
Physical Network Infrastructure
SDN Control Plane
Distributed Control Plane
Single point of failure
Performance bottleneckSlide3
Spatial Partitioning
OverloadSlide4
Growing the Control PlaneSlide5
Shrinking the Control PlaneSlide6
Goals
Build a distributed control plane which
Load balances
Grows
ShrinksThis requiresLoad estimation at controllersSwitch migration protocolSlide7
Naïve Switch Migration
SLAVE
MASTER
MASTER
SLAVE
Role Change to MasterSlide8
Problem With Naïve Switch Migration
Packet-In
MASTER
MASTER
SLAVE
SLAVE
Packet-Out
Role Change to Master
Packet-Out from Slave is droppedSlide9
Migration Protocol Requirements
Safety: Exactly
1 controller processes every
message from the switch
Liveness: For each switch, at least 1 controller is active at all timesOpenflow compliantSlide10
Flow-Add
Flow-Delete
Flow-Removed
4-Phase Switch Migration Protocol
MASTER
SLAVE
Flow-Removed
EQUAL
Role Change to Master
SLAVE
MASTER
Role Change to Equal
Barrier Request
Barrier Reply
Phase 1: Change from Slave to Equal
Phase 2: Insert and remove dummy flow
Phase 3: Flush in-flight message
Phase 4: Change from Equal to MasterSlide11
A Mininet
Testbed
Problem: Cannot generate sufficient traffic for a large distributed control plane
v
eth
Pair
OpenvSwitch
OpenvSwitch
veth Pair
OpenvSwitch
veth
PairEmulation HostSlide12
A Multi-Host Mininet
Testbed
OpenvSwitch
OpenvSwitch
OpenvSwitch
OpenvSwitch
OpenvSwitch
OpenvSwitch
Emulation Host
OpenvSwitch
OpenvSwitch
OpenvSwitch
GRE Tunnel
`
GRE Tunnel
GRE Tunnel
Emulation Host
Emulation HostSlide13
EvaluationSlide14
EvaluationSlide15
Next Step: ElastiCon
Physical Network Infrastructure
Core Controller Module
Application 1
Application 2
Core Controller Module
Application 1
Application 2
Distributed Data Store (e.g.,
Hazelcast
)
Node 1
Load Measurements
Load Balance
Scale Up
Scale Down
Load Adaptation Decisions
Distributed SDN Control Plane
Node 2
Actions:
Migrate switch
Remove controller
Add controllerSlide16
Thank youSlide17
Distributed Control Plane in a Datacenter
Median flow arrival rate requires 1-5 controllers, peak requires 150*
Distributed
control plane should
grow and shrinkFlow arrival rates vary across switches and timeNeed a switch migration (handover) protocol
* Calculations based on Benson et al, IMC 2010Slide18
Distributed SDN Control Plane
Physical Network Infrastructure
Core Controller Module
Distributed Data Store (e.g.,
Hazelcast
)
Controller Node 1
Controller Node 2
Application 1
Application 2
Core Controller Module
Application 1
Application 2
Hazelcast
Client StubSlide19
Next Steps
Build a control loop and algorithms for dynamically:
Changing
switch-controller mapping based
Growing and shrinking distributed controllerThanks! Questions?Slide20
EvaluationSlide21
Need title for this slide
For a data center with 100K hosts:
Peak flow arrival rate = 300M* flows/sec
Median flow arrival rate = 1.5-10M* flows/sec
Impossible to predict flow arrival rates at a switchImplications:Distributed controller needs to grow and shrinkNeed a switch migration protocol
* From Benson et al, IMC 2010Slide22
New Problems in Distributed SDN Controllers
How to manage distributed state?
Where to place controllers?
How to write distributed controller applications?
How many controllers?Which switch connects to which controller?Slide23
New Problems in Distributed SDN Controllers
How to manage distributed state?
Where to place controllers?
How to write distributed controller applications?
How many controllers?Which switch connects to which controller?Slide24
Distributed SDN Controller
Distributed Global Network State
Physical Network Infrastructure
Application 1
Application 2
Application 3
Application 4Slide25
Problem Statement
How many servers?
How to determine switch-controller mapping?Slide26
Naïve Switch Migration//Change title?
SLAVE
MASTER
MASTER
SLAVE
Role Change to Master
SLAVE
SLAVE
SLAVE