3. Outline
1. How the default Virtual Router on
CloudStack works
2. The problems with default Virtual Router
3. How MidoNet solves the problem with its
scalable distributed architecture
4. Outline
1. How the default Virtual Router on
CloudStack works
2. The problems with default Virtual Router
3. How MidoNet solves the problem with its
scalable distributed architecture
5. What is the Virtual Router?
● Provides network functions like
VR VM
Routing, Firewall rules, NAT
DHCP
● A Debian-based VM running
haproxy, dnsmasq etc
● On VPC Mode, there's one
Virtual Router for each VPC
6. VPC Logical View (example)
Virtual Router
VM
Orange Tier Purple Tier
User
User UserVM
VM
User VM
User User User
VM VM VM VM
7. Physical View - VPC with default CS
networking
System VM User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User Virtual Router
VM VM VM VM VM
8. I Ingress Point
Physical Packet Flow E Egress Point
System VM E User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User Virtual Router
I VM
VM VM VM VM
9. I Ingress Point
Physical Packet Flow E Egress Point
System VM E User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User Virtual Router
I VM
VM VM VM VM
10. Outline
1. How the default Virtual Router on
CloudStack works
2. The problems with default Virtual Router
3. How MidoNet solves the problem with its
scalable distributed architecture
11. The problem with this model
● The Virtual Router is a traffic bottleneck, and
causes scalability issues
● VLANs are used to isolate the separate
"tiers", which causes the following issues:
○ Max 4096 VLANs issue : Scalability issue
○ Cumbersome manual configuration and operation
12. Outline
1. How the default Virtual Router on
CloudStack works
2. The problems with default Virtual Router
3. How MidoNet solves the problem with its
scalable distributed architecture
13. Network State Database (Clustered)
NSD
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
System VM User System VM User User
(CPVM) VM (SSVM) VM VM
No Virtual
User User User User Router
VM VM VM VM VM
14. The Network State Database (clustered, fault-tolerant)
contains logical topology of the network, firewall rules etc
NSD
Router
Orange Tier Purple Tier
User
User UserVM
VM
User VM
User User User
VM VM VM VM
15. The Network State Database (clustered, fault-tolerant)
contains logical topology of the network, firewall rules etc
NSD
Router
Orange Tier Purple Tier
User
User UserVM
VM
User VM
User User User
VM VM VM VM
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
16. The Network State Database (clustered, fault-tolerant)
contains logical topology of the network, firewall rules etc
NSD
Router
Orange Tier Purple Tier
User
User UserVM
VM
User VM
User User User
VM VM VM VM
"Intelligence at the edge"
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
17. Network State Database
I Ingress Point
NSD E Egress Point
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
System VM E User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User
I
VM VM VM VM
18. How MidoNet Works
- Packet Pass Case -
MidoNet does a logical simulation of the packet flow
MidoNet Agent
Router Flow Rules : None
Orange Tier Purple Tier
User
出 VM
User User E
I
VM
User VM
User User User
VM VM VM VM
19. How MidoNet Works
- Packet Pass Case -
MidoNet does a logical simulation of the packet flow
MidoNet Agent
Router Flow Rules : None
Orange Tier Purple Tier
User
出 VM
User User E
I
VM
User VM
User User User
VM VM VM VM
20. Network State Database (Clustered)
I Ingress Point
NSD E Egress Point
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
System VM E User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User
I
VM VM VM VM
IP Tunnel
21. Network State Database (Clustered)
I Ingress Point
NSD E Egress Point
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
System VM E User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User
I
VM VM VM VM
IP Tunnel
22. I Ingress Point
How MidoNet Works E Egress Point
- Packet Drop Case -
MidoNet does a logical simulation of the packet flow
MidoNet Agent Flow Rule
Router
I E
Orange Tier Purple Tier
User
出 VM
User User E
I
VM
User VM
User User User
VM VM VM VM
23. I Ingress Point
How MidoNet Works E Egress Point
- Packet Drop Case -
MidoNet does a logical simulation of the packet flow
MidoNet Agent Flow Rule
Router
I E
Orange Tier Purple Tier
User
出 VM
User User E
I
VM
User VM
User User User
VM VM VM VM
24. Network State Database (Clustered)
I Ingress Point
NSD
E Egress Point
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
System VM E User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User
I
VM VM VM VM
Packet dropped at source host without being put on the wire -
"intelligence at the edge"
25. Network State Database (Clustered)
I Ingress Point
NSD
E Egress Point
MidoNet MidoNet MidoNet MidoNet MidoNet
Agent Agent Agent Agent Agent
System VM E User System VM User User
(CPVM) VM (SSVM) VM VM
User User User User
I
VM VM VM VM
Packet dropped at source host without being put on the wire -
"intelligence at the edge"
27. Roadmap
Hypervisor:
KVM
XenServer(Planned)
Submitted to CloudStack master codebase:
Advanced Isolated Mode:
L2, L3, DHCP, Firewall, Source NAT, Static NAT, Port Forwarding
Implemented but not upstream:
VPC Mode:
L2, L3, DHCP, Firewall, Source NAT, Static NAT, Port Forwarding
Calling for Customers!
We'd like to discuss with you
which features / functions to add next!
28. Today we covered
1. How the default Virtual Router on
CloudStack works
2. The problems with default Virtual Router
3. How MidoNet solves the problem with its
scalable distributed architecture