{'fraction_non_alphanumeric': 0.01129032258064516, 'fraction_numerical': 0.0, 'mean_word_length': 4.826291079812207, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Performance Evaluation of the Control Plane in Software Defined Networks

The limited performance of a centralized controller can become the bottleneck in a large software defined network. One approach to reduce the flow setup time is to deploy multiple controllers in a network. This increases the number of packets that can be handled per time, but also comes with a communication overhead. The optimization problem in this context is to select the best number of controllers such that the flow setup time can be minimized. In this paper, we set up a queueing model for the response time of a controller. We use the model to evaluate the flow setup time and optimize the optimal number of controllers. We implement a prototype of multiple controllers, measure the response time of the prototype processing different jobs and fit a hyper-Erlang distribution to the response time. We use the fitted distribution in the queueing model to determine the optimal number of the controllers. The queueing analysis shows that the optimal number of controllers decreases with the rate of communication messages among the controllers and increases with the rate of requests from the switches. Our analysis allows us to find best points of operation.