{'fraction_non_alphanumeric': 0.016835016835016835, 'fraction_numerical': 0.0, 'mean_word_length': 5.872832369942197, '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}}
Application-oriented communication for networked systems

The lack of flexibility in the application-network interface severely limits the ability to develop and tailor distributed applications, such as real-time streaming and multiparty communication, to their communication demands. While network-centric solutions such as overlay networks provide only a single, limited and fixed service, we argue for an application-centric customizable application-network interface that allows applications to control communication. This paper presents ARS, a framework of abstractions for resources and services. The customization of communication services and the integration of network resource information allow an application to dynamically adjust communication setup and transmission paths. Since a customization is highly complex, ARS is designed as a software framework that hides a large part of the complexity while maintaining flexibility and development support by design and code reuse. We discuss the concepts, the structure and the implementation of ARS, and we evaluate the customizability and the performance benefits of ARS with a distributed multicast application in the Internet.