Controller-‐based Path Selec2on for
Distributed IaaS Cloud Environment
Outline of Presenta2on
1. Problems of Distributed IaaS Cloud Environment
– Higher latency to some des2na2ons
– Many unnecessary FDB crea2on/lookups
2. Proposal of Controller-‐based path selec2on
– Single FDB on Controller
– Forwarding via path with lowest latency – Automa2c selec2on of nearest gateway
Internet Services Today and Future
•
Demand for faster response 2me is geLng stronger
and stronger
– Lower latency is required for beOer response 2me
•
Future: Be responsive regardless of client loca2on
– Move the service as user moves – Select the best path to the user
3 Seoul Hypervisor VM Tokyo Hypervisor Gateway VM VM User User Gateway
Distributed IaaS Cloud Environment
•
PlaSorm for running personal services
– For example, personal desktop service (thin client)
•
WIDE Cloud
– Hypervisors located in both inside and outside Japan
– Possible to move services without stopping it
SFC Seoul Hypervisor VM VM Hypervisor VM Tokyo Hypervisor
Gateway Virtual L2 Network Internet
VM VM
Problems on Moving Services
without Stopping
•
Controller
1. Random Hypervisor selec2on
•
Network
1. No forwarding path selec2on mechanism 2. No Gateway selec2on mechanism
3. Many unnecessary FDB crea2on/lookups
•
Storage
1. Disk access is slow when mounted over high latency environment
Problems on Moving Services
without Stopping
•
Controller
1. Random Hypervisor selec2on
•
Network
1. No forwarding path selec2on mechanism 2. No Gateway selec2on mechanism
3. Many unnecessary FDB crea2on/lookups
•
Storage
1. Disk access is slow when mounted over high latency environment
Wide-‐area Layer 2 Network
between Mul2ple Datacenters
•
Term Project: Mul2point Layer 2 Network Tunneling
– To be able to use the same network configura2on – Tunnel directly to destination for Ethernet frames
– Forwarding path problem, Gateway Selec2on and FDB
Management problem exist!
SFC Home Seoul Dojima MulApoint Tunnel Point-‐to-‐Point Tunnel SFC Home Seoul Dojima
Problem #1: Forwarding Path
•
Need a way to select an available path with
lowest latency
– IP Route is not always the path with lowest latency – Source and Des2na2on End Point may not be able to
communicate directly Home Seoul SFC Dojima 3ms 40ms 8ms 40ms Home Seoul SFC Dojima 3ms 40ms 8ms 33ms
Problem #2: Gateway Selec2on
•
Need a way to select gateway
– Solve the problem with Single Gateway setups • High latency in some cases
• Single point of failure
– Select gateway from mul2ple gateways
40ms Home Seoul SFC Dojima 3ms 40ms 8ms 40ms Home Seoul SFC Dojima 3ms 8ms 40ms 15ms 40ms 8ms <1ms 11ms
Problem #3: FDB Management
•
Need a way to share FDB and manage it
– Many crea2on/lookups of FDB – Incorrect FDB Informa2on
• Hard to detect movement of VM
• Network connec2on may become unavailable
10 Hypervisor A Hypervisor C Hypervisor B VM VM TUNNEL GW br0 VM VM TUNNEL GW br0 VM VM TUNNEL GW br0 1. FDB Lookup aa:bb:cc:12:34:56 → TUNNEL GW 10 2. FDB Lookup aa:bb:cc:12:34:56 → Hypervisor B 3. FDB Lookup aa:bb:cc:12:34:56 → br0 4. FDB Lookup aa:bb:cc:12:34:56 → VM
Requirements
1. Lowest latency path selec2on
– Forward ethernet frames via path with lowest path
2. Nearest gateway selec2on
– Select gateway with lowest latency automa2cally
3. BeOer FDB Management
“Wide-‐area Virtual Switch Chassis”
•
All Hypervisors are a part of virtual chassis
– vSwitch in Hypervisors are “line cards” of the chassis
– Forwarding path selected by controller
• Not the Linux Bridge or the Tunnel End Point
VM 3 VM 4 Open vSwitch Hypervisor C VM 5 VM 6 Open vSwitch Hypervisor B VM 1 VM 2 Open vSwitch Hypervisor A Controller FDB Latency OpenFlow OpenFlow
Wide-‐area Virtual Switch Chassis
Layer 2 Forwarding
•
Forward according to the path selected by Controller
– Query controller on packet forwarding
– Path selected using FDB and Latency DB
VM 3 VM 4 Open vSwitch Hypervisor C VM 5 VM 6 Open vSwitch Hypervisor B VM 1 VM 2 Open vSwitch Hypervisor A Controller 40ms 8ms 20ms OpenFlow Path to VM 5? VM 5: B/5
Path to B: A-‐>C-‐>B Wi
de -‐ar ea Switc h C hassis FDB Latency OpenFlow Controller
FDB
•
Single FDB on the Controller
– Prevent mul2ple crea2on/lookup of DB with same data
– Use Cloud Controller DB (=WCC)
• Cloud Controller (=WCC) has latest informa2on of VM • Loca2on and MAC Address
VM 3 VM 4 Open vSwitch Hypervisor C VM 5 VM 6 Open vSwitch Hypervisor B VM 1 VM 2 Open vSwitch Hypervisor A Controller VM Control FDB Latency OpenFlow Controller
Latency DB
•
Collect latency informa2on on Controller
– Latency between each Hypervisors
– Use Dijkstra algorithm to figure out the best path to des2na2on VM 3 VM 4 Open vSwitch Hypervisor C VM 5 VM 6 Open vSwitch Hypervisor B VM 1 VM 2 Open vSwitch Hypervisor A Controller 40ms 8ms 20ms
Wide-‐area Virtual Switch Chassis
FDB Latency
Nearest Gateway Selec2on
•
Select gateway using Latency DB on Virtual Chassis
– Forward to a gateway with least latency
VM 3 Open vSwitch 16 VM 4 Hypervisor C VM 5 VM 6 Open vSwitch Hypervisor B VM 1 VM 2 Open vSwitch Hypervisor A OpenFlow Controller 40ms 8ms 20ms OpenFlow Wi de -‐ar ea Switc h C hassis Internet Gateway Gateway Rewrite Dst: Gateway -‐> Gateway C FDB Latency OpenFlow Controller Gateway: C/0
Final Thesis
•
Low Latency IaaS Cloud Environment
– Provide beOer route to des2na2on • BeOer rou2ng over tunnels
• Select nearest Gateway available
– “Wide-‐area Virtual Switch Chassis”
• All vSwitches controlled by single Controller
– Single FDB and Latency DB
• Layer 2 Tunneling and Route Selec2on
Evalua2on
•
Latency and Throughput Comparison
– Create topology similar to one below
– Compare with Implementa2on done on Term Project VM 3 VM 4 Open vSwitch Hypervisor C VM 5 VM 6 Open vSwitch Hypervisor B VM 1 VM 2 Open vSwitch Hypervisor A 40ms 8ms 20ms Internet Gateway Gateway
Current Status
•
Made a development environment
– Two Servers running Open vSwitch: SFC and Home
•
Created Simple Layer 2 Switch Controller
– For learning OpenFlow API
•
Coding s2ll needed
– Controller
• FDB which queries WCC • Latency DB crea2on
• Dijkstra based Path selec2on mechanism • Nearest Gateway Selec2on
Schedule
8 9 10 11 12 1 Coding Controller DB Layer 2 Tunnel Gateway Selec2on Experiment Latency Throughput Thesis Wri2ngConclusion
•
Problem: High latency and FDB management problems
in current Distributed IaaS Cloud Environment
– Un-‐op2mized Layer 2 Tunneling path
– Single gateway setup
– Many unnecessary FDB crea2on/lookups
•
Proposal: Controller-‐based path selec2on
– Lowest latency path selec2on using data on Controller
• Single FDB • Latency DB