Software Defined Networking SDN
A centralized structure for the network that can communicate and command the rest of the network.
Software defined network enables the network to be intelligent, centrally controlled and programmable using software. SDN controllers are used to direct traffic on the network and communicate with the underlying hardware infrastructure. It controls the routing of data packets through a centralized server.
SDN Network Architecture
SDN network architecture consists of the following:
- Application Layer : AL contains network applications related to data and security handling. Traditional network use specialized devices (like firewall) , SDN replaces the device with an application to manage network.
- Control Layer : CL enables centralized management and policy enforcement across network.CL represents SDN controller that acts as the brain of the software defined network. SDN controller manages policies and data flow throughout the network.
- Forwarding Layer : FL consists of the physical network elements in the network that forward the data packets from source to destination
Application program interfaces (APIs) : SDN uses northbound API to communicates between application layer and control layers and southbound API to communicates between control layer and Forwarding layer.
How SDN work
Software defined network SDN architecture decouples network control function from hardware (router and switch) using a protocol that modifies forwarding tables in network devices.Software defined network uses a SDN controller to deliver network services. SDN controller has a comprehensive view of the entire network. A network administrator can monitor, control and implement network policies from a central location.
When a packet arrives at network switch, this packet forwarded to the destination as per rules sent to the switch from the SDN controller.
SDN controller behaves like mind in SDN architecture
An SDN controller is the server based software that provides a centralized view of complete network. SDN controller is also used to enforce policies uniformly to multiple nodes in the network. Network policies are rules that are applied to traffic that determines what level of access it has to the network, how much resources it is allowed, or what priority it is assigned. Having a centralized view of the network and the policies in place makes for simpler management of the network that is more uniform and consistent.
A protocol used for implementing SDN in traditional network infrastructure.
The Openflow protocol defines the interface between Controller and network infrastructure. Openflow protocol instruct the switch on how to handle incoming data packets no matter which vendor made the router or switch
Benefits of SDN
- Management : A centralized SDN controller manage network elements without having to configure individual devices.
- Programmable networks: SDN controls network behavior by the software that resides beyond the networking devices. It eliminate manual configuration for individual network element.
- Centralized management: Traditional network control methods are distributed. SDN enables intelligent control and management of network resources.a network engineer can define network traffic from a centralized location without having to touch individual device.
- Agility : SDN improve network control by enabling service providers to respond quickly to changing business requirements.
- Visibility : Centralized SDN controller monitor traffic and identify suspicious traffic and reroute packets.
- Cost Efficiency : Hardware virtualization reduces installation / operational cost.
- Security: Centralized control enable to detect security threats easily.
Security risks: Centralized management is a single source of failure for the whole network.
SDN controller : SDN controller can become a bottleneck for network with a large amount of traffic.