A dynamic controller placement architecture in software-defined networking

碩士 === 國立臺灣科技大學 === 資訊工程系 === 106 === Software-Defined Networking (SDN) provides flexible network resource allocations for traffic engineering by relying on a central controller to manage switches. However, the capacity of the central controller is limited by computational power and network bandwidt...

Full description

Bibliographic Details
Main Authors: Da-Wei Tung, 童大維
Other Authors: Shan-Hsiang Shen
Format: Others
Language:en_US
Published: 2018
Online Access:http://ndltd.ncl.edu.tw/handle/kn6xps
Description
Summary:碩士 === 國立臺灣科技大學 === 資訊工程系 === 106 === Software-Defined Networking (SDN) provides flexible network resource allocations for traffic engineering by relying on a central controller to manage switches. However, the capacity of the central controller is limited by computational power and network bandwidth. For better scalability, multiple controllers are deployed in large networks. The latency between the controllers and switches is critical for network performance. Under these circumstances, choosing the nodes on which to place the controllers and assign switches to the controllers are significant problems. Most of the previous research about controller placement only considers the static situation and ignore the fact that flows are dynamic. The dynamic flow may lead to controller overloading thus degrading network performance. In this paper, we propose a two-stage method to deal with the controller placement problem, including an architecture prototype and algorithms. In the first stage, we compute an initial placement for the controllers and assign switches to them based on the probability that a demand will load on a given node to keep the average demand latency minimal. Then, in the second stage, switches are dynamically migrated to different controllers to avoid controller overloading. Finally, we evaluate our method by using some real networks. The results show that our method can provide smaller latency while also keeping the controller loads below a given threshold.