Scaling up Delay Tolerant Networking
Total Page:16
File Type:pdf, Size:1020Kb
Scaling Up Delay Tolerant Networking Sebastian Schildt Scaling Up Delay Tolerant Networking Von der Carl-Friedrich-Gauß-Fakultät der Technischen Universität Carolo-Wilhelmina zu Braunschweig zur Erlangung des Grades eines Doktoringenieurs (Dr.-Ing.) genehmigte Dissertation von Sebastian Schildt geboren am 29.11.1981 in Stade Eingereicht am: 28.05.2015 Disputation am: 01.12.2015 1. Referent: Prof. Dr.-Ing. Lars Wolf 2. Referent: Prof. Dr.-Ing. Jörg Ott 2016 Contents . Introduction .. Outline . . DTN Basics .. Delay Tolerant Networking . .. The Bundle Protocol . . Internet-scale Routing and Naming .. Problem Statement . .. Making Friends: Discover Other Nodes . .. Distributed Hashtables . .. NASDI: Naming and Service Discovery for Internet DTNs . .. DTN-DHT: Practical Naming for Internet DTNs . .. Free DTN Routers: Mail Convergence Layer . .. Summary . . Storage Synchronization .. Problem Statement . .. The Synchronization Problem . .. Assumptions and Conventions . .. Bloom Filter Primer . .. Synchronization Approach . .. Evaluation . .. Theoretical Eciency Analysis . .. Comparison with Other Approaches . .. Practical Performance . .. Large Propagation Delays . .. Summary . . Incentives for Users .. Problem Statement . .. Related Work . .. A Game-based Incentive System . .. Economic Feasibility . .. User Study . .. Related Products . C .. Summary . . Conclusions .. Contributions . .. Outlook . A. Appendix A.. BT-DHT Configuration Options . A.. MCL Internet Draft . A.. Geo Game Flyer . A.. User Study Questionnaire . A.. User Study Data . Abstract Delay Tolerant Networks (DTNs) introduce a networking paradigm based on store, carry and forward. This makes DTNs ideal for situations where nodes experience intermittent connectivity due to movement, less than ideal infrastructure, sparse networks or other challenging environmental conditions. Standardization eorts focused around the Bundle Protocol (BP) (RFC ) aim to provide a generic set of protocols and technologies to build DTNs. The BP can be layered on top of various protocols, including standard IP networks. This makes the BP a suitable technology for fringe networks with intermittent access to the Internet such as networks of mobile smartphone users, VANETs or various types of Wireless Sensor Networks (WSNs). To connect and interconnect these fringe DTN networks with the Internet, the BP should be used as end-to-end transport. However, there are several challenges when trying to apply the BP to the Internet as a whole that are tackled in this thesis: There is no DTN routing mechanism that can work in Internet-scale networks. Similarly, available discovery mechanisms for opportunistic contacts do not scale to the Internet. This work presents a solution oering pull-based name resolution that is able to represent the flat unstructured BP namespace in a distributed data structure and leaves routing through the Internet to the underlying IP layer. A second challenge is the large amount of data stored by DTN nodes in large-scale applications. Reconciling two large sets of data during an opportunistic contact without any previous state in a space ecient manner is a non-trivial problem. This thesis will present a very robust solution that is almost as ecient as Bloom filters while being able to avoid false positives that would prevent full reconciliation of the sets. Lastly, when designing networks that are based on agents willing to carry information, incentives are an important factor. This thesis proposes a financially sustainable system to incentive users to participate in a DTN with their private smartphones. A user study is conducted to get a lead on the main motivational factors that let people participate in a DTN. The study gives some insight under what conditions relying on continuous motivation and cooperation from private users is a reasonable assumption when designing a DTN. Kurzfassung Delay Tolerant Networks (DTNs) sind ein Konzept für Netzwerke, das auf der Idee beruht, Datenpakete bei Bedarf längere Zeit zu speichern und vor der Weiterleitung an einen anderen Knoten physikalisch zu transportieren. Diese Vorgehensweise erlaubt den Einsatz von DTNs in Netzen, die häufige Unterbrechungen aufweisen. Mit dem Bundle Protocol (BP) (RFC ) wird ein Satz von Standardprotokollen für DTNs entwickelt. Das BP kann über einer Vielzahl darunterliegender Netzwerkschichten, wie zum Beispiel IP, eingesetzt werden. Daher ist das BP gut für den Einsatz an der Peripherie eines Netzes geeignet, wo mit häufigen Unterbrechungen der Konnektivität zu rechnen ist. Beispiele für derartige Netze sind mobile User mit Smarphones, VANETs oder Wireless Sensor Networks (WSNs). Um diese Netze mit dem Internet zu verbinden, sollte das BP als Ende-zu-Ende Protokoll eingesetzt werden. Bei der Verwendung des BP ergeben sich einige Herausforderungen, die es zu überwinden gilt, wenn man das BP im Internet einsetzen möchte: Es existiert kein DTN Routingverfah- ren, das skalierbar genug ist um im Internet eingesetzt zu werden. Das Gleiche trit auf verfügbare Discovery Mechanismen für opportunistische Netze zu. In dieser Arbeit wird ein verteilter, reaktiver Mechanismus zur Namensauflösung im DTN vorgestellt, der den flachen, unstrukturierten Namensraum des BP abbilden kann und es erlaubt das Routing komplett der IP Schicht zu überlassen. Eine weitere Herausforderung ist die große Menge an Nachrichten, die Knoten puern müssen. Die eziente Synchronisierung von zwei Da- tensets während eines opportunistischen Kontaktes, ohne Zustandsinformationen, ist ein komplexes Problem. Diese Arbeit schlägt einen robusten Algorithmus vor, der die Ezienz eines Bloom Filters hat, dabei jedoch die False Positives vermeidet, die normalerweise eine komplette Synchronisation verhindern würden. Ein DTN basiert darauf, dass Teilnehmer Daten puern und transportieren. Wenn diese Teilnehmer z.B. private User mit Smarpthones sind, ist es essentiell diese Benutzer zu einer dauerhaften Teilnahme am Netzwerk zu motivieren. In dieser Arbeit wird ein finanziell tragfähiges System entwickelt, welches Benutzer für eine Teilnahme am DTN belohnt. Eine Benutzerstudie wurde durchgeführt, um herauszufinden, welche Faktoren Benutzer motivieren und unter welchen Umständen davon auszugehen ist, dass Benutzer dauerhaft in einem DTN kooperieren und Resourcen zur Verfügung stellen. Introduction Delay Tolerant Network (DTN) is a concept for networks that suer frequent disconnections and large communication delays. A large, and one of the first, application areas for DTNs are space missions. Long delays due to the speed of light prevented standard protocols such as TCP to be eectively used over long distances. Disruptions, when a line-of-sight communication link is broken or due to the movement of spacecrafts and celestial objects, make lots of best practices usually applied in classic networks largely ineective. Therefore, in the ies work started to develop and implement Interplanetary Networks (IPNs), a DTN concept optimized for space applications. Similar communication challenges were encountered by the Wireless Sensor Network (WSN) community, when deploying sparse networks of mobile nodes []. It became clear early on, that classic networking paradigms and protocols such as can be found in the Internet are not applicable for DTN. In a DTN, nodes implement a Store-Carry-And-Forward behavior: Information is not immediately transferred, but instead network nodes are extended with a storage, that allows them to keep hold of information until such a time when a new suitable contact comes in range. This is dierent from buers in classic network architectures. In a DTN the storage is expected to hold and manage a considerable amount of data for prolonged times. This allows information to be delayed much longer than in classic networks. But by incorporating long-term storage into a network you gain an additional dimension for routing: Instead of routing through a network’s topology in space, it is now possible to route through the space-time topology in a network, using network capacities inaccessible to classic networking approaches. While the first DTN ideas and implementations were developed for IPNs, people began to see that DTNs are a powerful concept in other kinds of networks: There can be a monetary and eciency benefits in moving applications from low bandwidth cellular networks to high bandwidth short range communications such as Wi-Fi, exploiting mobility of network nodes. With the nearly ubiquitous availability of personal communication and computation devices such as smartphones or tablets a there is clear opportunity to enable DTN communication independent from infrastructure between personal devices. Such networks of smartphones have been proposed for novel PP applications or to increase the range and quality of service at the fringes of a cellular network, or to ooad data from a cellular network. When using DTNs in this non-IPN application fields there are some additional challenges. In contrast to IPNs these networks are a lot less deterministic, which complicates routing and reliability. In many useful application scenarios for DTNs, when the DTN is operating at the fringe of some network where service quality is bad, or when it operates under some conditions where no infrastructure is available, it is a reasonable assumption that the applications will include some sort of gateway to the Internet. Probably at some point in time, collected data from a DTN application should be sent to some back-end service or new