{'fraction_non_alphanumeric': 0.027548209366391185, 'fraction_numerical': 0.0027548209366391185, 'mean_word_length': 5.123595505617978, '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}}
Scheduling loop-free updates for multiple policies with overlaps in software-defined networks

Match field overlaps are common in most of today's networks because of wildcards and Longest Prefix Match (LPM). These overlaps exacerbate the loop-free update problem in Software-Defined Networks (SDNs). Because with overlaps, forwarding loops exist not only between old and new routes of a single policy but also among routes of different policies. However, previous work can only eliminate forwarding loops introduced by a single policy. In this paper, we focus on eliminating forwarding loops introduced by match field overlaps of multiple policies. Moreover, we prove that it is NP-hard to give a (ks + 1)-round schedule, where ks is the maximum round number of the single policy schedules. We then propose an N-ary tree based heuristic algorithm that efficiently produces a schedule with approximate minimum rounds. Experimental results show that our approach could reduce more than 90% unnecessary rounds and achieve absolute loop-freedom especially when updating policies with overlaps.