{'fraction_non_alphanumeric': 0.026476578411405296, 'fraction_numerical': 0.006109979633401222, 'mean_word_length': 5.301282051282051, '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}}
Network overlay construction under limited end-to-end reachability

Network-overlay construction today assumes two-way communication capability - each host can initiate outgoing connections as well as accepting incoming connections. This is often not true on the current Internet due to several reasons, for example, the use of network address translation (NAT) and firewalls. Our experiments with eDonkey and Gnutella file-sharing systems reveal that as many as 36% of the hosts may be guarded - not accepting incoming connections. This presents a challenge to overlay construction because not all hosts are capable of receiving and forwarding requests. We propose an overlay optimization called e* to help existing overlay protocols overcome the reachability problem. Furthermore, e* builds very efficient overlay networks in terms of latency. Under realistic scenarios involving guarded hosts, e* can reduce the average overlay latency by 28-61% compared with existing protocols.