In our days, we need a big necessity to restructure the network infrastructure, because the configuring of large network is becoming very hard problem. That is why over the last five years, the Software Defined Networking (SDN) is the most discussed system at many conferences and forums. We can fix a lot of problem in Network industry by using this modern technology. This article is going to answer to your questions about Software Defined Networking (SDN) and how it can help us in near future.
There are four main requirements of corporate networks development:
− Rapid growth of traffic volumes and the change in its structure,
− The necessity to support the increased army of mobile users,
− The formation of high-performance clusters for large data processing,
− Virtualization of cloud services delivering.
However, the network in its traditional form (controlling via CLI) interfere for computing infrastructure development. The classical approaches of resolving problems, for example, the network virtualization (VLAN, VRF), does not correspond to the level of development of server virtualization and storage systems. Traditional network is static, and does not match the rapid development of the modern IT business. The Scaling of traditional networks do not meet the requirements of large businesses and service providers and the controlling of traditional network devices are too complicated and non-efficient. The using of only one network producer does not guarantee the future support of new applications and services.
That is why there are many companies that try to develop new projects and different program systems to make easy the use of network technologies in company works. SDN (Software defined networking) is one of the systems that designed to solve these problems. The SDN is becoming the most discussed system at many conferences and forums. So what is SDN? How it can help to of us?
SDN (Software-defined Networking) is an emerging application that is dynamic, cost-effective and manageable, making it ideal for the high-bandwidth. This architecture dived the traffic control and traffic forwarding functions making the network controlling to become directly programmable.
From this definition we can we can distinguish three components of current network devices (routers, switches, hubs etc.). They are:
- The control level — brain of device that fully control it.
- The traffic management level — using different algorithms to manage traffic.
- Traffic Transmission — provide functionality to transfer the network packets.
With three components every device (router or switch) managed by CLI (Common Language Interpreter), the traffic can be controlled by different routing protocols like OSPF (Open Shortest Path First), IGMP (Internet Group Management Protocol) and the traffic can be forwarded easily.
Nevertheless, what if:
− The traffic centralized by separating the management from devices.
− We centralize the management by devices.
The result will give us «new» device, for example: router or switch that serves only the flow of data (traffic transmission level — DATAPLANE), becomes simpler and cheaper. Of course, network device’s intelligence cannot completely deprived, but we can replace it with simple forwarding table. All intelligence (CONTROL PLANE) transferred to a separate central device that called SDN controller.
The using of SDN controller can give us:
− Dividing of traffic transmission form traffic control
− Usage of one device to control and transmission (OpenFlow)
− Centralized network management
− Network virtualization
− Rapid network changes
− Easy and fast network configuration
− The vision and control of all network traffic
SDN architecture consists of three parts (Figure 1). They are:
- Application that is used to deliver open programmable interfaces to orchestrate network service automation
- Controlling of separated control and data plane
- Infrastructure: open standard-based programmatic access to infrastructure.
Fig. 1. General SDN architecture
As we can see from the architecture, the SDN controller supports running of the network management applications on themselves, besides the classical network administrator’s direct commands. What are these applications?
In fact, each SDN application is an optimization of the network interface for a specific business application, for example: Microsoft Lynk, and its main role is real-time network changing under current needs of the served program. In the case of Microsoft Lynk it may for instance, changing of the network QoS (Quality of service) between two telephone subscribers for transmission of HD video calls in real time, without any delays or a creating of VPN tunnel between two subscribers (Figure 2).
Fig. 2: SDN Application of Microsoft Lynk
If we consider in details, we can see two main areas of information exchange in the flow of information in SDN architecture: the first: between SDN applications, and the second: for management of physical network devices (Figure 3).
Figure 3: The structure and components of SDN
The first stream called «North Bridge» and the second is «south bridge». The protocol REST API performs as a «north bridge», and protocol OpenFlow as a «south bridge» (Fifure 4).
Figure 4: Controller that manages flow of SDN information
OpenFlow protocol and SDN.
As we know, SDN closely works with OpenFlow protocol. Firstly, what is OpenFlow protocol?
OpenFlow is a standard protocol, which is an essential element of the SDN. It provides the interaction of controller with network devices. The controller used to control switch’s flow table. By this table, it makes a decision to transfer the received packet to a specific port of the switch. Thus, there is forming a direct network connection with minimal data transmission latency and required parameters.
OpenFlow protocol during traffic identification closely operates with the concept of «flow». The key element of the switch, which supports this protocol, is a flow chart (Flow Table). Group columns on the left side of the table forms the field of correspondence, which shows the flow characteristics: it can be different parameters, including MAC and IP-address of the sender and recipient, VLAN ID, port number of TCP or UDP protocols, and other information. These data recorded to controller’s switch table via OpenFlow protocol, and it determines the priority of the different threads: the higher the priority is, the higher the corresponding flow table entry.
All incoming packets checked for conformity with the parameters that specified in the table. If a match found, the special actions will applied to packages that indicated in the table. A typical action is the transmission of the packet to one or more output ports. In addition, the switch can change the contents of the package, reset it, and send to controller analysis and so on. If a match does not found, the packet will be dropped or send to the controller, which will determine how to handle the flow, and add an appropriate entry to the table. Statistics of the passing traffic like the number of packets, bytes, etc. placed to the appropriate fields (Picture 5 designated as Count).
The controller adds, modifies, and deletes the entry in flow table by OpenFlow protocol. Furthermore, it may request a switch of its characteristics, and the collected statistics, and configure switch ports.
Network Virtualization with SDN.
Network virtualization allows network specialists to unite multiple networks, also divide them to various segments or create software-only networks between virtual machines (VMs). The aim of network virtualizations is to improve network management, speed and automation by adding new software elements. It may or may not be programmable.
Network Virtualization allows us:
− Improve the efficiency of network resource allocation and balance the load on them;
− Isolate the flows of various users and applications into single physical network;
− Administrators can use own routing policy and traffic management rules of data;
− Make different experiments with network by using a real physical network infrastructure;
− Use only those services that are required for specific applications.
Both SDN and NFV (Network Functions Virtualization) have a great opportunity to give big benefits to us, in addition they are do not depend on each other.
The progress of these technologies is the key to develop the network infrastructure. There are various groups: Open Networking Foundation (ONF), the ETSI Network Function Virtualization and Open Daylight Project that cooperates and make open standards for all world. All of these groups work closely together and by consequently find new ways to share open standards. They always continue to navigate the way for others to bring openness to their businesses or organizations.
According to Gartner Company, about 17 % of all companies in the IT field are spending money for the network infrastructure. However, it cannot always adapt to changing business needs. To support cloud computing, a variety of mobile devices, changing set of applications the network must be more flexible and productive.
Software Defined Networks offer great opportunities for industry and business, which allow us to solve different problems like the increasing of network bandwidth capacity, simplify network management, load redistribution, growing network scalability. Every company can embed a special solution for specific tasks by SDN. This technology may be interesting for hosters and service providers, data center owners and operators, financial and banking institutions, telecommunication companies. The usage of SDN will increase the effectiveness of their work.
Today Software Defined Networking is doing its first steps in network world. To sum up briefly we certainly can say that SDN will be one of the most used technology in nearly feature.
- Software-Defined Networking: The New Norm for Networks // Open Networking Foundation.URL:https://www.opennetworking.org/images/stories/downloads/sdn-resources/white-papers/wp-sdn-newnorm.pdf
- Patricia A Morreale, James M. Anderson. Software Defined Networking: Design and Deployment. — London, New York: CRC Press is an imprint of the Taylor & Francis Group, 2014. — 186 p.
- Siamak Azodolmolky. Software Defined Networking with Open Flow. — Birmingham — Mumbai: PACKT, 2013. — 139 p.
- Thoms Nadeau, Ken Gray. SDN (Software Defined Network). O’Reilly Media, 2013. — 384 p.
- The network SDN technologies — Software Defined Networking // Developers Club, URL: http://developers-club.com/posts/251959