Software Defined Networking - 2

Preview:

Citation preview

SOFTWARE DEFINED NETWORKING

T S Pradeep Kumarhttp://www.nsnam.com

tspradeepkumar@vit.ac.in

NEED FOR SDN

REQUIREMENTS FOR SDN• ODCA (open Data Centre Alliance)

suggested the requirements

• Adaptability

• Automation

• Maintainability

• Model Management

• Mobility

• Integrated Security

• On Demand Scaling

SDN ARCHITECTURE

SDN ARCHITECTURE

SDN ARCHITECTURE

• Open interfaces are defined so that the switching hardware presents a uniform interface regardless of the details of internal implementation

• They enable networking applications to communicate with the SDN controllers.

SDN ARCHITECTURE

SDN ARCHITECTURE

• Data plane is simply responsible for the relaying or forwarding of packets

• Control plane provides intelligence in designing routes, setting priority, routing policy parameters to meet QoS and QoE and to cope with the shifting traffic patterns.

SOFTWARE DEFINED ARCHITECTURE

SDA• Data plane consists of virtual and physical switches.

• both the switches are responsible for forwarding the packets.

• Buffer, priority parameters and other data structures can be vendor dependent.

• But each switch must use open API that should be used between the control and data plane.

• OpenFlow is one such example (SouthBound API) from control to data plane.

SDN CHARACTERISTICS• Control plane is separated from the data plane

• control plane is implemented in a central controller or a set of coordinated centralised controllers

• open interfaces are defined between the devices in the control plane and those in the data plane

• the network is programmable by applications running on top of the SDN controllers

SDN DATA PLANE FUNCTIONS

• Control support functions

• interacts with SDN Control layer

• the switch communicates with the controller via openflow switch protocol

• data forwarding functions

SDN DATA PLANE

Data plane Network Device

• The above figure shows 3 I/O Ports• One - providing control communication with the

SDN controller• Other two for the input and output of data

packets• It can have multiple ports also to communicate

with SDN controllers and might have more number of ports for input and output.

DATA PLANE NETWORK DEVICE

OPENFLOW LOGICAL NETWORK DEVICE

• For practical SDN, two requirements are needed,

• there must be a logical architecture in all switches, routers and other network devices to managed by an SDN controller.

• a standard, secure protocol is needed between the controller and the network device

OPENFLOW SWITCH

OPENFLOW SWITCHES• it defines three ports

• physical ports

• hardware interface of a switch.

• logical ports

• higher level abstractions ports

• defined using non openflow methods (Ex. loopback interfaces)

• reserved ports

• defined by openflow specification

• generic forwarding actions like receiving from or sending to controller, flooding, etc

OPENFLOW SWITCH

OPENFLOW TABLE STRUCTURE

SDN CONTROL PLANE

SDN CONTROL PLANE

North bound interface

Shortest path forwarding

Notification Manager

Security mechanisms

Technology Manager Statistics Manager Device Manager

Southbound interfaceEast/Westbound interface

East/Westbound Mechanisms

SDN CONTROL PLANE• shortest path forwarding (routing information collected from

the switches)

• notification manager (alarm notifications, security alarms, etc)

• security mechanisms (provides isolation and security)

• topology manager

• statistics manager (collects data on traffic)

• device manager (manages flow tables)

• NOS(Network Operating Systems)

• a server based OS for networking.

• it provides directory services, network management, network monitoring, network policies, user group management, network security and other network related functions.

SDN CONTROLLERS• Commercial and open source implementation of SDN controllers

• OpenDaylight

• open source and java based,

• may run one or more cluster servers in the network

• Open Network Operating Systems (ONOS)

• open source SDN NOS

• multiple distributed controllers

• POX

• open source

• Web based GUI written in python

• shortens is experimental and developmental cycles.

SDN CONTROLLERS• Beacon

• Open source developed by Stanford.

• Written in Java, integrated with Eclipse

• It is the first SDN Controller

• Floodlight

• Open source. based on beacon initially.

• Web based and java based GUI is available

• Ryu

• Open source developed by NTT, written in Python

• Onix

• distributed controller developed by Google,, VMWare, and NTT.

• It is Commercial