{'fraction_non_alphanumeric': 0.012772351615326822, 'fraction_numerical': 0.0015026296018031556, 'mean_word_length': 5.138248847926267, '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}}
A simulation study of passive inference of TCP rate and detection of congestion

In this paper, we propose and implement a mechanism for network simulator-2 (ns-2) to estimate the individual rates of TCP flows and to detect their incipient congestion. Rate estimation as well as congestion detection are based on measurements collected passively by a monitoring node which is located on the intermediate paths between TCP source destination pairs. While estimating the rate of a given flow relies on measuring its interpacket times as well as the size of its received packets, the congestion detection sub-mechanism analyses the variability of its growth rate over a sliding window to decide on a incipient congestion. Our proposed method does not rely on estimating the RTTs to detect congestion, nor on ACK packets traversing the backward paths to collect measurements samples. Moreover, it does not impose any constraint regarding the location of the monitoring router with respect to bottleneck links. Throughout the various simulations that we have conducted, our method has shown high efficiency in detecting the occurrence of incipient congestion on the monitored flows over relatively short time periods. The method is useful for monitoring and controlling the rates of large TCP flows passing through an autonomous system.