MidoNet Architecture & Technology

midonet-diagram-2014-r211

IP Fabric

The only requirement for your physical network is IP connectivity when running a MidoNet overlay network. This means that you’re not locked into a specific vendor or model for your networking gear, and you can even mix and match. This allows you to build your physical network the way you want, for your needs. Our network experts are on hand to provide suggestions and assistance on how to best build out your physical network.

Back to top

MidoNet Agent

The MidoNet agents are the distributed brains of your virtual network. This is a software agent which installs on every hypervisor host. The MidoNet agent is responsible for setting up new network flows and controlling and the kernel fastpath to provide distributed MidoNet networking services such as switching, routing, NAT, etc. Since the brains are located on every hypervisor host, as you scale out your environment, you scale out the capacity of your virtual network.

Back to top

MidoNet Gateways

The MidoNet Agent is installed on a standard x86 server and can be utilized as a distributed, scale out gateway. Since the gateway server is using the MidoNet Agent, all traffic from the external network will be handled by the Gateway nodes. That means that things like routing, security groups, firewalls, and load balancing can be handled at the edge of your network.

This provides you with a couple key advantages:

  1. Maximum Efficiency – Unwanted network traffic will be dropped at the edge of your network, and will never traverse your physical private networks
  2. Since the MidoNet Agent is fully distributed, you can easily scale out your gateway services by simply adding more x86 servers at the edge of the network. There’s no need to manage active/standby failover scenarios since MidoNet is designed with resiliency and scalability from the ground up.

MidoNet offers two options for connecting to external networks:

Layer 3 Gateway
The L3 gateway uses Border Gateway Protocol (BGP) to connect to external networks and advertise IP address ranges to external networks, such as the Internet. Each Gateway server running a MidoNet Agent can advertise the same IP address ranges, which allows you to easily scale out your northbound and southbound traffic.

Layer 2 Gateway
The L2 Gateway is a highly available gateway which can bridge MidoNet logical networks with physical VLAN enabled networks. We worked very closely with one of our early customers to build out the layer 2 gateway service. They were running a massive production network and started to run into VLAN scaling issues. The layer 2 gateway enabled them to continue scaling out their production networks into MidoNet enabled virtual networks without disruption to their existing customers.

Back to top

Network State Database

MidoNet stores network configuration and state in a distributed database cluster. The database stores high level configuration information like topology, routes, NAT settings, and the like. Unlike other overlay networks, MidoNet does not centrally handle network functions, or setup flows, these are handled entirely by the MidoNet agent living on each hypervisor host. The Network State Database not only stores highly available configuration and state of the network, but provides notifications to the MidoNet Agents to any relevant changes.

MidoNet Agents subscribe to data which they’ve locally cached. When a change occurs to the network configuration, such as changing a firewall rule, the MidoNet Agents which are processing flows for affected traffic will immediately be notified of the change, and setup new flows with the new changes.

Back to top

MidoNet API

MidoNet can be centrally configured, or even completely automated via our RESTful API. When it receives a request, it will pass that information to/from our network state database. The MidoNet API is stateless so you can run multiple API servers to handle scaling and fault tolerance.

Back to top

Orchestration

MidoNet is integrated deeply with popular cloud management systems such as OpenStack  and can easily be integrated to nearly any environment using our APIs. By integrating with these platforms, MidoNet makes building out and scaling networks a cinch.

  • Learn more about our OpenStack Integration

Back to top

Hypervisor and Container Support

MidoNet supports KVM, ESX and Docker.

Back to top

Open vSwitch Kernel Module / Datapath

MidoNet talks directly to the Linux Kernel datapath (Open vSwitch) in order to setup flows and control packet actions. Once a flow is setup by the MidoNet Agent in the datapath, subsequent packets in that flow never enter user space, and travel on the fastpath at near line speed. This allows MidoNet to provide tons of networking services without sacrificing performance.

Back to top

MidoNet Manager

 

Midokura Enterprise MidoNet comes with a control panel which provides visibility and control into the network for virtualization administrators. The control panel provides monitoring information, allows central configuration, and comes packed with troubleshooting tools to make operating and analyzing your virtual and physical networks a breeze.

 

Since MidoNet integrates deeply with cloud management systems, application owners can continue to use the same tools they are familiar with in order to carve out and manage their own virtual networks.

Back to top

MidoNet Command Line Interface

Hate GUIs? We’ve got a fancy command line interface just for you! It provides auto-completion, and a bunch of tools to help you manage your virtual network deployment.

Back to top