{'fraction_non_alphanumeric': 0.011695906432748537, 'fraction_numerical': 0.0029239766081871343, 'mean_word_length': 5.084444444444444, '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}}
An Adaptive Probabilistic Routing Algorithm

The internet has grown and changed ever since the first connections were made in 1969. The problem of routing assignments has been one of the most intensively studied areas in the fields of data networks since then. Network routing essentially consists of two entities the Routing Protocol and the Routing Algorithm. The routing protocol provides each node in a network, a consistent view of the topology and the routing algorithm provides the intelligence to compute paths between nodes.The focus of this thesis is on Routing Algorithm. Routing algorithms can broadly be classified into Selfish and Non-Selfish Routing Algorithms. This thesis starts with discussion of the problems faced with Selfish routing algorithms and presents a Non-Selfish Routing Algorithm with the aim to solve the problems. This algorithm falls into category of multipath routing. Performance of the network is improved because the resources of multiple paths are utilized. Finally extensive simulations have been carried out for evaluation of the performance of the algorithm in different scenarios. The factors that decide the performance of a network are how frequently updates are sent and how frequently routes are computed. The effect of variation of these factors on convergence time, load on routers and the queue size have been studied.