Introduction to Software Defined Networking and OpenStack Neutron
by Akanksha Agrawal and Sana Khan
A server is a collection of hardware
resources that are accessed by an OS
through specialized drivers.
These resources can be:
● CPU processor
● RAM (or memory)
● Network Interface Card (NIC)
In a virtualized server:
● there is an added layer
called the Hypervisor.
● there are multiple isolated
VMs running its own
operating system and
● Underutilization, inefficient usage of servers.
● Server Proliferation.
● Wastage of space, power, high costs of cooling the environment incurred by
the data centers.
● Virtualization results in a much better disaster recovery capability.
● Fault tolerance
● Ease in Migration
● Huge decrease in the time it takes to provision new applications.
● Promote standardization.
● Virtualization is a methodology of dividing the resources of a computer into
multiple execution environments.
● Virtualization decouples the application and operating system from the server
● Application based addressing is based on where that physical server is
● The MAC address is associated with the physical server.
● Create logical, virtual networks that are decoupled from the underlying
● Ensure the network can better integrate with and support increasingly virtual
● Creates a logical software-based view of the networking resources (switches,
1. Create a network.
2. Create a subnet and associate it with the network.
3. Boot the virtual machine instance and specify the network.
4. Nova interfaces with Neutron to create a port on the network.
5. Neutron assigns a MAC address and IP address to the newly created port
using attributes defined by the subnet.
6. Nova starts the instance.
7. The instance sends a DHCP request during boot, at which point, the DHCP
server responds with the IP address corresponding to the MAC address of the
The main components are:
● Neutron Server
● Plugin Agents
● Message Queue
● DHCP Agent
● L3 Agent
● Neutron receives a request
to connect VM to a
. . . the Switch/Router has to figure out what to do with the packet.
Switches and Routers have two logical planes of functions:
● Control Plane / Forwarding Plane: the logic that determines how traffic is
● Data Plane: the actual moving of packets from one network interface to
● In case of network changes, each device needs to be configured individually.
● Different vendors have different control plane logic.
● Decouple the control plane (software) from the data plane (hardware).
● Provide centralized control and enjoy the benefits of a programmable
● OpenFlow: protocol that allows centralized management to take place.
● SDN and NFV Simplified: A Visual Guide to Understanding Software Defined
Networks and Network Function Virtualization By: Jim Doherty
● OpenStack Networking Essentials By: James Denton
● Learning OpenStack Networking (Neutron) - Second Edition By: James