Article Preview
Top1. Introduction
Nowadays, due to growing multimedia data type, providing Quality of Service (QoS) for multimedia applications is a main agenda for network providers. Traditional networks are complex, and hard to manage dynamically (Kreutz et al., 2015), because network administrators must configure each individual network device separately. In traditional networks such as IP and ATM, network devices are vendor specific further control and data plane are coupled (Akyildiz, Lee, Wang, Luo, & Chou, 2014). Due to these limitations, there are a few successful traffic engineering methods for providing QoS in traditional networks. One of the most popular traffic engineering schemas in IP networks is MPLS (Xiao, Hannan, Bailey, & Ni, 2000). Nevertheless, MPLS is not suitable for real time applications such as online multimedia streaming (Egilmez, Civanlar, & Tekalp, 2013), because MPLS requires many signaling messages between routers for assigning labels and managing the routes themselves. IntServ (Clark, Shenker, & Zhang, 1992) and DiffServe (Ito & Tasaka, 2008) are other solutions for providing QoS in the traditional networks. These methods are based on hop by hop manner of IP routing and do not care about overall network resources, hence they are not truly successful in all type of networks for multimedia applications (Egilmez, Civanlar, & Tekalp, 2013). Moreover, due to lack of global network view in legacy networks, it is difficult to guarantee QoS with respect to such constraints.
To overcome such limitations, Software Defined Networks (SDN) can be used. In SDN, the control plane and data plane of network are separated, and network providers will be able to control the whole network with a controller (Akyildiz, Lee, Wang, Luo, & Chou, 2014). Separation between control and data plane helps network administrators to manage the network dynamically. SDN provides network programmability, hence network administrators will be able to program and configure their networks per-flow and dynamically (Kim & Feamster, 2013). Figure 1 shows the simplified view of SDN architecture.
Figure 1. A simplified view of SDN (Kreutz et al., 2015)
According to Figure 1, SDN comprises a number of data forwarding elements (switches) and a controller. The controller controls the forwarding elements by using southbound APIs. OpenFlow (McKeown et al., 2008) is one of the most popular southbound protocols widely used by SDN controllers. The controller can be a powerful single computer or server with software installed on it. Network administrator can program her/his desired algorithm or traffic engineering method in this controller software by using northbound APIs (Shin, M. K., Nam, K. H., & Kim, H. J., 2012). Then the controller controls the forwarding elements regarding the network administrator algorithms.