# Delay Tolerant Networking

Das Delay-Tolerant Networking (englisch für verzögerungstolerantes Netzwerk; auch Disruption-Tolerant Networking, für unterbrechungstolerantes Netzwerk, und kurz DTN genannt) ist eine Protokollarchitektur zur Überwindung der technischen Schwierigkeiten spärlich verbundener und heterogener Kommunikationsnetzwerke. Die Architektur basiert auf dem von der US-amerikanischen Raumfahrtbehörde NASA entwickelten interplanetaren Internet (IPN), generalisiert diesen Entwurf jedoch. Im Gegensatz zum Entwurfsschwerpunkt des IPN – die Weltraumkommunikation – fokussiert das DTN auf Netzwerke mit geringer Stabilität der Ende-zu-Ende-Verbindung.

## Entwicklung

Etwa gleichzeitig mit der Entwicklung mobiler Ad-hoc-Routingverfahren beauftragte die DARPA in den 1990er Jahren unabhängig davon die NASA, MITRE und andere, einen Vorschlag für ein Interplanetares Internet (IPN) zu erarbeiten. Ein grundlegender Entwurf für eine IPN-Architektur wurde von einer Gruppe um Vint Cerf unter Berücksichtigung der Störungsanfälligkeit der Netzwerkverbindungen (Packet Corruption) im All und der notwendigen Behandlung langer Nachrichtenlaufzeiten (Packet Delay) vorgelegt.
Im Jahr 2002 nahm Kevin Fall einige dieser Ideen für die Entwicklung eines allgemein unterbrechungstoleranten Netzwerks auf und stellte seinen Entwurf 2003 unter dem Titel Delay Tolerant Networking und dem sich daraus ableitenden Akronym DTN auf der SIGCOMM-Konferenz vor. In den Folgejahren wurden die Voraussetzungen für ein entsprechendes Netzwerk auf verschiedenen Konferenzen besprochen, das auch mit langen Signallaufzeiten und Verbindungsunterbrechungen umgehen kann. Dabei sollten auch die Erfahrungen mit Sensornetzwerken und mobilen Ad-hoc-Routingverfahren berücksichtigt werden. Die Routingalgorithmen und Verfahren zur Sicherstellung der Verlässlichkeit und Überprüfbarkeit der übermittelten Daten konnten im Laufe der Zeit verbessert werden.
Im Januar 2017 versendeten Forscher der McMurdo-Station in der Antarktis ein Selfie mit Hilfe des DTN-Protokolls.

## Routing

Die Übermittlung und das Routing der zu übermittelnden Informationen von der Datenquelle bis zum Ziel sind eine grundlegende Notwendigkeit in allen Datennetzen. Dabei unterscheiden sich DTNs in erster Linie durch die fehlende dauerhafte Verbindung zwischen Datenquelle und Datenziel von anderen Datennetzen. Ad-hoc-Routingverfahren, wie AODV und DSR, konnten unter diesen Voraussetzungen nicht eingesetzt werden, weil sie versuchen, erst den vollständigen Weg von der Quelle zum Ziel zu ermitteln und die Daten erst anschließend übermitteln. Wenn eine kontinuierliche Ende-zu-Ende-Kommunikation jedoch nur schwierig oder überhaupt nicht sichergestellt werden kann, ist der Ansatz des Store and forward-Prinzips sinnvoller. Dabei werden die Daten in kleinen Paketen von einem Netzwerkteilnehmer zum nächst erreichbaren übertragen und jeweils gespeichert, bis die Übertragung zum Zielrechner erfolgreich bestätigt werden konnte. Die Übertragung der Nachricht in der gleichen Version auf mehreren Wegen von der Quelle zum Ziel ist ein gängiger Ansatz, um die Wahrscheinlichkeit einer erfolgreichen Nachrichtenübertragung zu erhöhen.

### Bundle-Protokolle

Die RFC 4838 und RFC 5050 wurden im Jahr 2007 veröffentlicht, sie liefern eine für die Entwicklung von Algorithmen und Anwendungen notwendige Übersicht über Anforderungen für die in einem DTN eingesetzte Software. Dieses, allgemein als Bundle-Protokoll bezeichnete Protokoll definiert eine Folge von zusammenhängenden Datenblöcken als ein Bündel, dabei enthält jedes Bündel im Gegensatz zu einem individuellen Datenblock ausreichende semantische Informationen, um eine Applikation fortzusetzen. Bündel werden zwischen den an das Netzwerk angeschlossenen Knoten nach dem Store and forward-Prinzip übertragen, dabei können verschiedene Transportprotokolle verwendet werden, die auf dem Internet Protocol (IP) basieren können, es aber nicht voraussetzen. Die Protokollebenen, die die Bündel auf ihrem lokalen Netzwerk übertragen, werden als bundle convergence layers bezeichnet. Die Bundle-Architektur funktioniert wie ein Overlay-Netzwerk, sie nutzt eine zusätzliche Namensarchitektur, die auf Endpoint Identifiers (EIDs) und auf einer groben Class of Service Einteilung aufbaut.
Das Bundle-Protokoll muss den unterschiedlichen Bedarf einzelner Anwendungen für das Senden von Bündeln über das Netzwerk ausgleichen. Auf Grund der Store and forward-Natur der DTN-Protokolle profitieren Routing-Lösungen davon, dass Informationen von der Applikationsebene für das Routing bekannt sind. So kann beispielsweise das Netzwerk berücksichtigen, wenn eine Anwendung darauf angewiesen ist, Daten besonders schnell, in einer Übertragung oder mit gleichbleibender Paketlaufzeit zu erhalten.
Bündelprotokolle sammeln Anwendungsdaten in Bündeln, die über verschiedene Netzwerke mit einer hohen Servicepriorität übermittelt werden können. Die Servicepriorität wird generell durch die Anwendung vorgegeben, die RFC 5050 Bundle Protocol Specification sieht dafür die Prioritätsstufen bulk, normal und expedited vor.

### Sicherheit

Die sichere Adressierung ist einer der Kernpunkte des Bündelprotokolls.
Die Sicherheitsansprüche für ein DTN-Netzwerk unterscheiden sich je nach Anwendung und Arbeitsumgebung, aber Authentifizierung und Vertraulichkeit spielen oft eine große Rolle. Ein bestimmtes Sicherheitsniveau in einem Netz ohne permanente Verbindungen zu garantieren ist schwierig, weil damit kryptographische Protokolle oder ein Schlüsselaustausch aufwendig wird, und die Notwendigkeit besteht, dass ein beliebiger Netzwerkknoten ständig andere nur temporär im Netz erreichbare Netzwerkknoten sicher erkennen muss. Die implementierten Lösungen wurden oft aus den mobilen Ad-hoc-Netzwerktechniken abgeleitet und sind von Forschungen zur Datensicherheit beeinflusst worden, wie etwa der Nutzung von verteilten Zertifizierungsstellen und PKI-Schemata. Aus dem DTN-Bereich selbst stammt die Anwendung der ID-basierten Kryptografie, die es Netzwerkknoten ermöglicht, mit ihrer öffentlichen ID verschlüsselte Daten zu empfangen.

## Forschungsansätze

Die sich aus den Anforderungen an das DTN ergebenden Probleme werden derzeit von verschiedenen Institutionen untersucht:
* The Delay Tolerant Networking Research Group.
* Technology and Infrastructure for Developing Regions Projekt bei der UC Berkeley
* Das KioskNet-Forschungsprojekt an der University of Waterloo.
* DOME Forschungsprojekt an der University of Massachusetts, Amherst.
* ResiliNets Research Initiative an der University of Kansas und der Lancaster University.
* Haggle Forschungsprojekt der Europäischen Union
* N4C Forschungsprojekt FP7 der Europäischen Union
* WNaN DARPA Projekt
Einige Forschungsprojekte zum DTN für ein Interplanetary Internet untersuchen bereits die Nutzung des Bundle Protocols im All:
* Das Saratoga Projekt der University of Surrey testete 2008 als erstes das Bundle-Protokoll im All mit dem UK-DMC Disaster Monitoring Constellation Satelliten.
* NASA JPL's Deep Impact Networking (DINET) Experiment an Bord der Raumfahrtsonde Deep Impact / EPOXI.