{'fraction_non_alphanumeric': 0.01647058823529412, 'fraction_numerical': 0.0, 'mean_word_length': 5.194174757281553, '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}}
Localizing errors in controller applications

Modern networks are complex. The great number of network tasks require a complex structure of controller. A promising approach to this challenge is modularity. The controller runs many applications, each responsible for a specific task. Each application can disrupt the operation of another one thus causing errors. Such errors cannot be detected during development of a particular application. We discuss errors of competition for switch tables, i.e. disruption of the routing policy installed by one application due to operation of another one. In this work we propose an approach to detection of such errors including the integration with a specific controller. Modern network troubleshooting tools cannot help administrators correct errors in controller applications. In this paper we propose the Error Localisation Tool (ELT) which helps in fixing errors. Given the faulty rules, it finds the place in code of applications responsible for each error. With these data the administrator can eliminate errors more quickly and make the complex system of controller applications work correctly. We describe an implementation of these approaches. We carry out an experimental research to evaluate the performance of our prototype.