Sunday, July 27, 2014

Midonet - Network Virtualization Solution from Midokura:

SDN is not a story anymore, Several players have solutions to try. With this blog post i am going to share my read/research about Midonet -  A Network Vitalization Solution from a start-up "Midokura". Unlike other leading SDN providers, Midokura prime focus is fixed at Decentralization.

Instead of a designated controller based approach, Midonet has taken a Distributed controller approach. Every Hypervisor will act as a virtual Router hence highly Distributed. Distributed routing intelligence combined with Border Gateway (Physical Router) controls network traffic to/from datacenter from/to Internet.

Midonet operation explained in few words,

Central flow DB either gives information about destination node and flow or finds a path to destination. Source establishes a GRE tunnel to destination. Destination could be another Hypervisor or Gateway connected to Internet. Packet intercepted in Hypervisor at kernel space, encapsulated inside a GRE.

Key Elements involved in Midonet solution:

Hypervisor interconnect: Midonet simply expects a ip switching/routing reachability between all hypervisors and Gateway. No vendor dependency.

Agent: Every Hypervisor needs Midonet Agent installation. Agent derives flow information from central DB for 1st packet, rest of the packets to same destination will directly go through established tunnel to destination Hypervisor.

Gateway: x86 server with Midonet Agent. Talks to external network in E-BGP.

Central Network flow DataBase: All Midonet agents subscribe to this DB. DB contains every information about every VM.

Midonet API, GUI, Orchestration: API offers programmable interface to View/control Agents. GUI does the same to graphical user. Easy to integrate with cloud orchestration tools like OpenStack and CloudStack.

Now, please read Midonet operation explanation once again with Midonet elements in mind.

A VirtualMachine wants to reach a destination, of course VM is inside a hypervisor. Hypervisor gets the packet to send. Midonet Agent intercepts the packet, finds tunnel information from Network DB. Establishes a tunnel to destination. Tunnel destination could be another Hypervisor or Gateway (for external traffic).

Hope  you have fill picture of Midonet's SDN offering.

No comments:

Post a Comment

Thanks for your comment. I will moderate your comment as soon as i get a chance.