ALL > Computer and Education > courses > university courses > graduate courses > Modern Computer Networking > zstu(2017-2018)class > student homework directory > MOR MBAYE L20172060204 > homework >
short note about DNS1 Version 0
👤 Author: by boykha89yahoocom 2018-01-16 10:45:54

What is Software Defined Networking (SDN)? Definition





The goal of Software-Defined Networking (SDN) is to enable cloud and network engineers and administrators to respond quickly to changing business requirements via a centralized control console. SDN encompasses multiple kinds of network technologies designed to make the network more flexible and agile to support the virtualized server and storage infrastructure of the modern data center. Software-defined networking originally defined an approach to designing, building, and managing networks that separates the network’s control (brains) and forwarding (muscle) planes thus enabling the network control to become directly programmable and the underlying infrastructure to be abstracted for applications and network services.

How Does Software-Defined Networking or SDN Work?


Software-defined networking providers offer a wide selection of competing architectures, but at its most simple, the Software-Defined Networking method centralizes control of the network by separating the control logic to off-device computer resources. All SDN models have some version of an SDN Controller, as well as southbound APIs and northbound APIs:

  • Controllers: The “brains” of the network, SDN Controllers offer a centralized view of the overall network, and enable network administrators to dictate to the underlying systems (like switches and routers) how the forwarding plane should handle network traffic.

  • Southbound APIs: Software-defined networking uses southbound APIs to relay information to the switches and routers “below.” OpenFlow, considered the first standard in SDN, was the original southbound API and remains as one of the most common protocols. Despite some considering OpenFlow and SDN to be one in the same, OpenFlow is merely one piece of the bigger SDN landscape.

  • Northbound APIs: Software-Defined Networking uses northbound APIs to communicates with the applications and business logic “above.” These help network administrators to programmatically shape traffic and deploy services.


  • The Software-Defined Networking framework


    Software-Defined Networking (SDN) fr<x>amework

    Software-Defined Networking (SDN) framework




    Software-Defined Networking is Not OpenFlow


    Often people point to OpenFlow as being synonymous with software-defined networking, but it is only a single element in the overall SDN architecture. OpenFlow is an open standard for a communications protocol that enables the control plane to interact with the forwarding plane. It must be noted that OpenFlow is not the only protocol available or in development for SDN.

    The Benefits of Software-Defined Networking


    SDN offers a centralized, programmable network that can dynamically provision so as to address the changing needs of businesses. It also provides the following benefits:

    • Directly Programmable:  Network is directly programmable because the control functions are decoupled from forwarding functions, which enables the network to be programmatically configured by proprietary or open source automation tools, including OpenStack, Puppet, and Chef.

    • Centralized Management:  Network intelligence is logically centralized in an SDN controller software that maintains a global view of the network, which appears to applications and policy engines as a single, logical switch.
      Reduce CapEx
      : Software-Defined Networking potentially limits the need to purchase purpose-built, ASIC-based networking hardware, and instead supports pay-as-you-grow models

    • Reduce OpEX: SDN enables algorithmic control of the network of network elements (such as hardware or software switches/routers) that are increasingly programmable, making it easier to design, deploy, manage, and scale networks. The ability to automate provisioning and orchestration optimizes service availability and reliability by reducing overall management time and the chance for human error.

    • Deliver Agility and Flexibility: Software-Defined Networking helps organizations rapidly deploy new applications, services, and infrastructure to quickly meet changing business goals and objectives.

    • Enable Innovation: SDN enables organizations to create new types of applications, services, and business models that can offer new revenue streams and more value from the network.


    • Why Software-Defined Networking Now?


      Social media, mobile devices, and cloud computing are pushing traditional networks to their limits. Compute and storage have benefited from incredible innovations in virtualization and automation, but those benefits are constrained by limitations in the network. Administrators may spin up new compute and storage instances in minutes, only to be held up for weeks by rigid and oftentimes manual network operations.

      Software-defined networking has the potential to revolutionize legacy data centers by providing a flexible way to control the network so it can function more like the virtualized versions of compute and storage today.

      Software-Defined Networking Use Cases


      As detailed above, Software-Defined Networking offers several benefits for businesses trying to move into a virtual environment. There is a multitude of use cases that SDN offers for different organizations, including carrier and service providers, cloud and data centers, as well as enterprise campuses.

      For carrier and service providers, Software-Defined Networking offers bandwidth on-demand, which gives controls on carrier links to request additional bandwidth when necessary, as well as WAN optimization and bandwidth calendaring. For cloud and data centers, network virtualization for multi-tenants is an important use case as it offers better utilization of resources and faster turnaround times for creating a segregated network. Enterprise campuses experience network access control and network monitoring when using Software-Defined Networking policies.


    • SDN Automation, Programmability, and Programmable Networks





      The promise of software-defined networking (SDN) is to create an infrastructure that is much more agile and flexible through ‘sdn automation’ to create programmable networks. Through SDN automation and SDN programmability, SDN programming should drive network automation and orchestration that better supports the ever-changing demands of users, as well as the devices and data accessing the network. One of the ways SDNdelivers this agility and flexibility is by making the network more automatic and programmable, however, that can mean different things to different organizations.

      Three use cases defining need for SDN programmability and SDN programming:



      • SDN Programming to adjust network flows – This use case focuses on protocols — such as OpenFlow — that enable SDN Controllers to interact with routers and switches in the forwarding plane so adjustments can be made as to how the traffic flows through SDN networks. This helps SDN networks automatically respond to changing demands.

      • SDN Programability enables Devops to automatically program the network to support applications – This use case is interested in concerned with the coordination, automation, and exception handling of a network to, better align with the needs of the applications running on it. Typically for this use case, network operators are looking to extend network capabilities to automate the configuration of the routers and switches in a scalable manner to support rapid deployment of a large number of new applications, services, and infrastructure to quickly meet an organization’s requirements as it changes. Nick Lippis, co-founder of the Open Networking Users Group (ONUG) points out “Since we are moving into a model of automated workload creation, enterprises want to do what you can do in Amazon [Web Services] – put up a workload and configure storage and network [and] the whole cloud infrastructure. But they can’t because…they need a way in which a dependency map gets created automatically.” There needs to be a language, such as javascript object Notation (JSON) or Extensible Messaging and Presence Protocol (XMPP) that can be shared to generate a ‘cross-domain’ response to these needs.

      • SDN programability enables automated networking via SDN automation – This use case focuses on SDN networks doing what they are supposed to do without interference from a network administrator. When something changes, the network should figure out how to address the change automatically.


      Much of the SDN automation and programmability of the network relies on the northbound and southbound open application programmable interfaces (APIs) communications between the SDN Controller and the applications and switches/routers, respectively. Regardless of which camp an organization fits into, additional programmability of the network can enable better bandwidth utilization, improved application performance, and maximum operational efficiency.





Please login to reply. Login

Reversion History

Loading...
No reversions found.