{'fraction_non_alphanumeric': 0.022290545734050732, 'fraction_numerical': 0.0, 'mean_word_length': 5.642857142857143, '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}}
FlexChain: Bridging Parallelism and Placement for Service Function Chains

A Service Function Chain (SFC) is an ordered sequence of network functions (NFs). With the emerging Network Function Virtualization (NFV) paradigm, NFs can be deployed as software instances on commodity servers, leading to a more flexible provision of network service. However, the flexibility of NFV comes with considerable compromises since virtual network functions (VNFs) introduce significant processing latency overheads. In this article, we design a flexible SFC parallel system called FlexChain, enabling the parallelism among VNFs to reduce the processing latency of SFCs. To leverage the benefits of parallelism, we study the problem of joint optimization over SFC parallelism and placement with the objective of accepting as many requests as possible. Since the problem is proved to be NP-hard, we propose a parallelism-aware approximation placement algorithm with performance guarantees, and an efficient heuristic algorithm for large-scale data center networks. Our simulation results show that FlexChain combined with our placement algorithm can substantially improve the number of accepted flows in the latency-sensitive scenario, and significantly reduce the average latency of accepted flows at the same time.