Unstructured overlay networks with guarantees: Algorithms and evaluation methods
Throughout its lifetime, the Internet was always associated with overlay networks; from the World Wide Web to weblogs and peer-to-peer networks, overlays built on the Internet infrastructure gave it additional value and made it more engaging to everyday users. Common thread to all these developments is an ever increasing need for users to connect and collaborate in a more natural way, one that reflects their existing social relations and enables them to form new ones. In this thesis we provide tools and solutions that enable users and network designers to build, connect and collaborate over such overlay networks. We chose to use the unstructured overlay paradigm since it imposes a minimal set of restrictions on the proposed solutions and is ideal for the scenarios under consideration. We focus our efforts towards both network designers and users. On the one hand, we propose a framework to facilitate reasoning about unstructured overlays that combines widely used randomized techniques such as random walks with elementary electric circuit theory and overlay network techniques. We also present detailed examples of the framework’s usage and trace its possible use in other settings such as the construction phase of these networks. On the other hand, we present a simple, yet powerful distributed algorithm that enables users with preferences to collaborate in an overlay network, while at the same time achieving a guaranteed level of quality for their requested connections. This consists an important first step into enabling users to collaborate despite having different goals and interests and opens the road to further study, from a game-theoretic point of view, the strategic decisions and coalition forming behavior of the users. Finally, it is possible to combine the two approaches, framework and algorithm, to gain insights on the mechanisms of topology creation when network users have autonomy to decide on their own connections based on individual preferences.