Neutron networking with Red Hat Enterprise Linux OpenStack Platform
Introduction to Software Defined Networking and OpenStack Neutron
Transcript of 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)● Storage● 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 applications.
● Underutilization, inefficient usage of servers.
● Server Proliferation.
● Wastage of space, power, high costs of cooling the environment incurred by
the data centers.
● Availability
● Virtualization results in a much better disaster recovery capability.
● Fault tolerance
● Ease in Migration
● Flexibility
● 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
hardware.
● Application based addressing is based on where that physical server is located.
● The MAC address is associated with the physical server.
● Create logical, virtual networks that are decoupled from the underlying
network hardware.
● Ensure the network can better integrate with and support increasingly virtual
environments.
● Creates a logical software-based view of the networking resources (switches,
routers, etc.)
Networking as a Service
● Switching
● Routing
● Load Balancing ( LBaaS )
● Firewalling ( FWaaS )
● etc
● Network (CRUD)
● Subnet (CRUD)
● Port (CRUD)
● neutron net-create neutron subnet-create● neutron net-list neutron subnet-list● neutron net-update neutron subnet-show● neutron net-delete neutron subnet-update
neutron subnet-delete● neutron port-create● neutron port-list● neutron port-show● neutron port-update● neutron port-delete
http://docs.openstack.org/cli-reference/neutron.html
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 instance.
The main components are:
● Neutron Server● Plugins● Plugin Agents● Message Queue● Database● DHCP Agent● L3 Agent
● Neutron receives a request to connect VM to a new network.
● Local
● Flat
● VLAN
● VXLAN
. . . 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
handled.
● Data Plane: the actual moving of packets from one network interface to
another.
● 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
network.
● OpenFlow: protocol that allows centralized management to take place.
● ovs-vsctl command (Configuring OpenvSwitch)
● ovs-ofctl command (Adding flow rules with OpenFlow)
● 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
Denton