Henri van den Bulk edited Software Defined Networking.tex  about 9 years ago

Commit id: 2abb1cbf4ebf750da8c95dda9033dacd630b8d5c

deletions | additions      

       

\section{Software Defined Networking}  Networking is inherently a complex area where many different protocols have been designed to address different concerns. One of the key successes in networking is the design of the Internet and the use of the layers in the OSI model. This model allowed for a layered abstraction, where each layer is responsible for a different part of communications. For example, the physical network layer is abstracted such that higher layers don't have to concern themselves with the details of 1000BASE-T or an any  other physical medium. The OSI model has defined interfaces between the layers so that it will allow for flexibility. In the area of routing within a network, as mentioned in the previous section, different protocols can be used that are not compatible with each other. The protocols have different approaches to determining the state of the network, which is important to understand how packages are routed through the network. These protocols have grown more complex and less dynamic and their design was not based on implementing an abstraction first.  SDN takes the approach of first defining the abstractions of reusable component to handle networking. These abstractions help simplify the networking and allows for innovation at different levels, the same way the OSI model allowed for this. A key here is the abstraction of the control plane, which is the the part that controls the state of the network. The state determines how packages are routed from point A to point B. Through abstraction SDN allows the creating of this state to be done through software, e.g. managing the control plane. This simplifies the job of a controller that wants to modify the state of the network based on say the availability of computing resources.  In the next section we'll talk about the different levels of abstraction that SDN provides.