{'fraction_non_alphanumeric': 0.016835016835016835, 'fraction_numerical': 0.0013468013468013469, 'mean_word_length': 5.405172413793103, '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}}
Smart proxying for reducing network energy consumption

Many network-based applications require full time connectivity of the hosts for fate sharing and responding to routine applications/protocols heart-beat messages. Past studies revealed that network hosts are most of the time unused or idle but still kept powered on just to maintain network connectivity. Thus, significant energy savings are possible if the network hosts can sleep when idle. Unfortunately, present low-power sleep modes cannot maintain network connectivity and results in applications state loss, thus preventing users from enabling power management features. A proxy-based solution was recently proposed in the literature that allows network hosts to sleep and still maintain their network standings over Internet while requiring minor changes to applications/protocols. The Network Connectivity Proxy (NCP) can handle some basic network presence and management protocols like ICMP, DHCP, ARP etc on behalf of sleeping hosts and wake them up only when it is truly necessary. This paper addresses NCP generic architecture and its requirements, main NCP responsibilities, different NCP types and their characteristics and some possible solutions to preserve open TCP connections for the sleeping hosts. It also describes key challenges in the design and implementation of NCP and proposes possible solutions. NCP can result in significant network energy savings up to 70% depending on the hosts time usage model.