Multipath Routing in (Mobile) Mesh Networks

Werbung
1
Multipath Routing in (Mobile) Mesh Networks
David Gutzmann
Zusammenfassung—
In drahtlosen Mesh-Netzwerken wird der Verkehr im Wesentlichen in Richtung der Internet-Gateways und von diesen
in Richtung der Clients geroutet. Dadurch werden einige Verbindungen und Knoten im Netzwerk unter Umständen bis zur
Verstopfung überlastet. Darüber hinaus haben drahtlose Netze
auf Grund der Unzuverlässigkeit des Mediums mit verschiedenen
Problemen zu kämpfen. Multipath-Routing hat sich als ein vielversprechender Ansatz herausgestellt einige dieser Probleme zu
lösen. Des Weiteren kann Multipath-Routing für eine Verteilung
des Verkehrsaufkommens mit dem Ziel des Lastausgleiches oder
der Bandbreitenaggregation sorgen. In dieser Arbeit wird ein
Überblick über die Grundlagen des Multipath-Routing gegeben. Es werden einige in der Literatur vorgeschlagene reaktive
Multipath-Routing-Protokolle vorgestellt und hinsichtlich ihrer
Eigenschaften, ihrer Leistungsfähigkeit und ihrer Grenzen diskutiert.
I. E INLEITUNG
U
RSPRÜNGLICH für infrastrukturlose Drahtlosnetzwerke vorgeschlagene Routing-Protokolle wie AODV [1],
OLSR [2], DSR [3] oder DSDV [4] sind sogenannte UnipathProtokolle. Das heißt, sie bilden zu einem Zeitpunkt nur
einen Pfad für eine Route zwischen Quelle und Ziel aus.
Dahingegen machen sich Multipath-Protokolle die Redundanz
und mögliche Vielfältigkeit der Verbindungen des zu Grunde
liegenden drahtlosen Netzwerkes zu Nutze, indem sie mehrere
alternative Pfade ausbilden und vorhalten.
Die dieser Arbeit zu Grunde liegende Vorstellung von
vermaschten Drahtlosnetzwerken (Wireless Mesh Networks,
WMN) fasst WMNs als Erweiterung des drahtgebundenen
Backbones auf [5]. Es wird unterschieden zwischen Knoten mit drahtgebundener Anbindung und Knoten, die lediglich drahtlos kommunizieren. Des Weiteren können je nach
Einsatzszenario mobile Clients existieren. Die Mesh-Router
leiten den Verkehr dem Multihop-Kommunikationsparadigma
folgend untereinander weiter, bis das Ziel – also ein als
Internet-Gateway fungierender Mesh-Router mit drahtgebundener Anbindung oder der entsprechende Client – erreicht
ist. Darüber hinaus sind auch Anwendungsfälle vorstellbar, in
denen WMNs lediglich zur Kommunikation innerhalb einer
bestimmten Gruppe – etwa zwischen Personen einer Firma
oder Universität – verwendet werden. Ist die Kommunikation
auf eine solche Gruppe beschränkt, entfällt unter Umständen
die Notwendigkeit eines Internet-Gateways.
Mobile Ad-Hoc-Netzwerke (Mobile Ad Hoc Networks, MANET) und drahtlose Sensornetzwerke (Wireless Sensor Networks, WSN) unterscheiden sich in einigen Punkten von denen
hier zu Grunde gelegten WMNs. So sind Knoten in MANETs
und WSNs typischerweise mobil, von begrenzten Energieressourcen abhängig und das von ihnen zu bewältigende Da-
tenaufkommen ist vergleichsweise gering. Dahingegen sind
Knoten in WMNs relativ statisch und haben unbegrenzt
Energie zur Verfügung. Auch ist das Datenaufkommen bei
den angedachten Anwendungen wie Video-Streaming deutlich
höher und die Knoten in MANETs und WSNs verfügen, im
Unterschied zu Mesh-Routern in WMNs, üblicherweise nicht
über mehrere Netzwerkadapter.
In WMNs wird der Verkehr, entsprechend des angedachten
Anwendungsszenarios, im Wesentlichen in Richtung der
Internet-Gateways und von diesen in Richtung der Clients
geroutet [6]. Dadurch werden einige Verbindungen und
Knoten im Netzwerk unter Umständen bis zur Verstopfung
überlastet. Zudem ist Drahtlosnetzwerken als Fehlerquelle
das unzuverlässige Medium inhärent. Durch MultipathRouting kann der Ausfall oder die Nichterreichbarkeit
einzelner Knoten kompensiert und die Zuverlässigkeit
des Netzwerkes erhöht werden. Darüber hinaus können
Multipath-Protokolle zum Beispiel auch für eine Verteilung
des Verkehrsaufkommens, mit dem Ziel des Lastausgleiches,
eines gleichmäßigeren Energieverbrauches im Netzwerk oder
der Bandbreitenaggregation sorgen [7]. Paralleles Senden
über mehrere Pfade kann außerdem, in Verbindung mit
Vorwärtsfehlerkorrektur oder redundantem Senden, die
Fehlertoleranz und die Ausfallsicherheit des Netzwerkes
erhöhen [8].
Das Konzept, mittels alternativer Routen konventionelle
Wegfindungsalgorithmen zu verbessern, ist nicht neu. In herkömmlichen, leitungsvermittelten Telefonnetzen wurde eine
Art Multipath-Routing angewendet, um die Blockierungswahrscheinlichkeit zu senken [9]. Die Blockierungswahrscheinlichkeit ist die Wahrscheinlichkeit dafür, dass ein Verbindungsaufbau aus Mangel an verfügbaren Leitungskapazitäten scheitert.
Die Backbone-Netze stellten sich in leitungsvermittelten Telefonnetzen als nahezu vollvermaschtes Netzwerk von Switchen
dar – der kürzeste Pfad zwischen zwei Vermittlungsstellen war
demnach in der Regel einen Hop lang. Fiel dieser kürzeste
Pfad zwischen Quelle und Ziel entweder durch eine Störung
oder Überlastung aus, so wurde der Anruf über einen alternativen Pfad umgeleitet, anstatt die Verbindung abzublocken.
Die alternativen Pfade waren typischerweise zwei Hops lang.
Dynamic-Non-Hierarchical-Routing [10], Dynamic-AdaptiveRouting [11] und Real-Time-Network-Routing [12] sind wohlbekannte Vertreter des alternate-path-routing in leitungsvermittelten Telefonnetzen.
Auch einige im Internet verwendete Routing-Protokolle bieten die Möglichkeit des Multipath-Routing [13]. Open Shortest Path First (OSPF), als Vertreter der Link-State-RoutingProtokolle, und einige Implementierungen vom Routing Information Protocol (RIP), als Vertreter der Distance-VectorRouting-Protokolle, seien hier beispielhaft genannt.
2
Abbildung 1. Zwei Pfade (P1: Q−5−6−7−Z und P2: Q−1−2−3−4−Z)
deren Knoten- und Verbindungsmengen disjunkt sind.
Der Rest dieser Arbeit ist wie folgt aufgebaut. In Abschnitt II werden grundlegende Eigenschaften redundanter
Routen dargestellt, der Einsatz von Multipath-Routing durch
die Vorstellung typischer Anwendungszwecke motiviert und
die drei Hauptkomponeten von Multipath-Routing-Protokollen
erläutert. Anschließend werden im Hauptteil dieser Arbeit
(Abschnitt III) – aufbauend auf einer kurzen Erläuterung der
beiden reaktiven Unipath-Routing-Protokolle AODV [1] und
DSR [3] – jeweils zwei Multipath-Erweiterungen für AODV
und DSR dargestellt. Der Abschnitt III schließt mit einem
kurzen Überblick über Vergleichsstudien der besprochenen
Protokolle. Abschnitt IV gibt abschließend ein Fazit der Arbeit
und formuliert Anforderungen an zukünftige Forschungen im
Bereich des Multipath-Routing im Kontext von vermaschten
Drahtlosnetzwerken.
II. M ULTIPATH -ROUTING
Standard Routing-Protokolle in infrastrukturlosen Drahtlosnetzwerken, wie zum Beispiel AODV und DSR, sind darauf
ausgelegt den kürzesten schleifenfreien Pfad zwischen zwei
Knoten zu berechnen. Beim Multipath-Routing werden –
unter Nutzbarmachung der Redundanz und der möglichen
Vielfältigkeit der Verbindungen des zu Grunde liegenden
drahtlosen Netzwerkes – mehrere Pfade zwischen Quell- und
Ziel-Knoten bestimmt.
In diesem Abschnitt werden zunächst Eigenschaften redundanter Routen erläutert (Abschnitt II-A), daraufhin wird
das Multipath-Routing in Abschnitt II-B durch die Vorstellung typischer Anwendungszwecke motiviert. Abschließend
werden die drei Hauptkomponenten von Multipath-RoutingProtokollen dargestellt (Abschnitt II-C).
A. Eigenschaften redundanter Routen
Die durch Multipath-Routing-Algorithmen gefundene Routen sind durch bestimmte Eigenschaften charakterisierbar. Es
werden drei Hauptarten redundanter Routen unterschieden.
Diese sind: Routen, bei denen sowohl die Knotenmengen
(mit Ausnahme der Quell- und Zielknoten) als auch die Verbindungsmengen der gefundenen Pfade disjunkt sind (nodedisjoint – siehe Abbildung 1), Routen, bei denen nur die
Verbindungsmengen disjunkt sind (link-disjoint – siehe Abbildung 2) und Routen, deren Pfade gemeinsame Knoten und
Verbindungen aufweisen (non-disjoint – siehe Abbildung 3).
Dabei implizieren disjunkte Knotenmengen disjunkte Verbindungsmengen.
Abbildung 2. Zwei Pfade (P1: Q − 5 − 6 − 7 − Z und P2: Q − 8 − 9 − 6 −
3 − 4 − Z), deren Verbindungsmengen disjunkt sind; der Knoten 6 gehört zu
beiden Pfaden.
Abbildung 3. Zwei Pfade (P1: Q−5−6−7−Z und P2: Q−5−6−3−4−Z),
die gemeinsame Knoten und Verbindungen beinhalten.
Die Routentypen unterscheiden sich hinsichtlich ihrer Widerstandsfähigkeit bezüglich auftretender Fehler voneinander.
Es werden zwei verschiedene Fehlermodelle unterschieden.
Zum einen voneinander unabhängige, isoliert auftretende Fehler, die jeweils nur eine Verbindung oder einen Knoten betreffen. Zum anderen örtlich begrenzte, korrelierte Fehler, die zum
Ausfall oder zur Nichterreichbarkeit aller Knoten in einem bestimmten Gebiet führen. Hinsichtlich der Widerstandsfähigkeit
gegenüber unabhängigen, isolierten Verbindungsfehlern unterscheiden sich knoten- und verbindungsdisjunkte Routen nicht.
Bei knotendisjunkten Routen zwischen einer Quelle und einem
Ziel können bei k ausgebildeten Pfaden mindestens k − 1
unabhängige, isolierte Knotenfehler auftreten, ohne dass das
Ziel von der Quelle aus nicht mehr erreichbar ist. Fällt hingegen bei verbindungsdisjunkten Routen ein Knoten durch einen
unabhängigen, isolierten Fehler aus, so sind unter Umständen
mehrere adjazente Verbindungen betroffen. Routen, bei denen
weder die Knoten- noch die Verbindungsmengen disjunkt sind,
sind dem Auftreten von Fehlern gegenüber am anfälligsten,
da sowohl Knoten- als auch Verbindungsfehler mehrere Pfade beeinträchtigen können. Örtlich begrenzte, korrelierende
Fehler betreffend, sind knotendisjunkte Routen ebenfalls widerstandsfähiger als verbindungsdisjunkte, da letztere dazu
tendieren, räumlich näher beieinander zu liegen [14].
Eine abgeschwächte Form der Routenfindung erlaubt
auch teilweise disjunkte Knoten- und Verbindungsmengen
(partially-disjoint – siehe auch Abbildung 3), dabei wird im
Fehlerfall bei Ausfall des primären Pfades (hier Q−5−6−7−
Z) ein Ausweichpfad (hier Q − 5 − 6 − 3 − 4 − Z) in Funktion
gesetzt. In diesem Beispiel wäre dieses Vorgehen aber nur
möglich, wenn der Fehler nicht den Knoten 5 beziehungsweise
die Verbindungen Q − 5 oder 5 − 6 betreffen würde. Bei
einer gegebenen Pfadmenge sind zwei Pfade maximal-disjunkt
(maximally-disjoint), wenn sie so wenig wie möglich Knoten
und Verbindungen teilen.
In der Literatur wird häufig von Multipath-Protokollen
3
Abbildung 4.
inter-path- und intra-path-Interferenzen (nach [18])
gefordert, dass sie knotendisjunkte – oder zumindest verbindungsdisjunkte – Routen bestimmen. Es wird argumentiert,
dass je unabhängiger Pfade voneinander sind, desto unwahrscheinlicher sei es, dass im Fehlerfall Quelle und Ziel nicht
mehr über einen Pfad verbunden wären. In [15] analysieren
die Autoren, dass knotendisjunkte Routen stabiler sind als
verbindungsdisjunkte. Die Autoren von [16] widersprechen
der weit verbreiteten Auffassung, dass Multipath-RoutingProtokolle möglichst unabhängige Pfade bestimmen sollen.
Sie machen sich dafür stark, die hoch vermaschte Struktur
der Knoten als charakteristische Eigenschaft eines WMN
besser auszunutzen und argumentieren, dass das Hinzufügen
von zusätzlichen Pfaden zu einer Route ein Netzwerk immer
zuverlässiger mache.
Im Gegensatz zu MANETs und WSNs ist in WMNs die Mobilität der Knoten als Ursache für Verbindungsabbrüche deutlich kleiner einzuschätzen, da die Knoten hier hauptsächlich
stationär sind. Zudem kann sicherlich davon ausgegangen werden, dass im angedachten Szenario eines WMN, die Häufigkeit
von Hardwareausfällen der Knoten, zumal sie nicht von einer
beschränkten Energiequelle abhängig sind, relativ gering ist.
Ein erheblicher Einfluss auf die Verbindungsqualität (bis
hin zu Verbindungsabbrüchen) bleibt auch in WMNs dem
Medium geschuldet. In [17] wurde gezeigt, dass Interferenzen
zwischen verschiedenen Pfaden (inter-path) und Knoten eines
Pfades (intra-path) den Durchsatz und die Leistungsfähigkeit
von Multipath-Routing-Protokollen sehr stark einschränken
können. In Abbildung 4 sind Ausschnitte zweier durch ein
Multipath-Routing-Protokoll ausgebildeter Pfade (Pfad 1: Q −
. . . − A1 − A2 − A3 − A4 − A5 − . . . − Z und Pfad 2:
Q − . . . − B1 − B2 − B3 − B4 − B5 − B6 − . . . − Z)
dargestellt. In drahtlosen Netzen ist die Interferenzreichweite
eines Senders typischerweise deutlich größer als die mögliche
Reichweite einer Kommunikation mit akzeptabler Fehlerrate.
Im abgebildeten Fall führt ein Senden von B3 dazu, dass
keiner der Knoten auf den ausschnittsweise gezeigten Pfaden
mehr senden kann. Dieser Kopplung (route-coupling) kann
durch Zuweisung unterschiedlicher, sich nicht überlappender
Funkkanäle begegnet werden [17].
B. Anwendungszwecke von Multipath-Routing
In diesem Unterabschnitt soll das Multipath-Routing durch
Vorstellen typischer Anwendungszwecke motiviert werden.
Dabei wird auf Anwendungszwecke, die zwar in MANETs
und WSNs den Einsatz von Multipath-Routing-Protokollen
nahelegen, in WMNs jedoch vernachlässigbar sind (zum Beispiel Verteilung des Verkehrsaufkommens mit dem Ziel des
gleichmäßigeren Energieverbrauchs), nicht weiter eingegangen.
Wie bereits in Abschnitt I erwähnt, kann Multipath-Routing
für eine Verteilung des Verkehrsaufkommens, mit dem Ziel des
Lastausgleiches oder der Bandbreitenaggregation sorgen [7].
Auch kann der Ausfall oder die Nichterreichbarkeit einzelner
Knoten kompensiert und damit die Zuverlässigkeit von Routen
und des gesamten Netzwerkes erhöht werden.
Um die Ausfallsicherheit zu erhöhen, kann MultipathRouting zum Beispiel so eingesetzt werden, dass zusätzlich
zu einem primären Pfad zwischen Quelle und Ziel auch ein
oder mehrere alternative Ausweichpfade vorgehalten werden.
Im Falle der Nichtverfügbarkeit des bevorzugten Pfades wird
der Verkehr entlang einer der alternativen Pfade zum Ziel
geleitet. Durch paralleles Senden über alternative Pfade –
entweder in Verbindung mit Vorwärtsfehlerkorrekturmechanismen oder durch einfaches redundantes Senden – kann die
Fehlertoleranz einer Route erhöht werden, ohne dass eine
durch ein erneutes Senden bedingte Verzögerung eintritt. Bei
Multipath-Protokollen, die nur einfache Redundanz verwenden, werden die Daten zum Beispiel zeitgleich entlang der
disjunkten Pfade P 1 und P 2 (siehe Abbildung 1) gesendet.
Fällt nun einer der Pfade aus, kann das Ziel immer noch einen
vollständigen Satz der gesendeten Daten empfangen. Anspruchsvollere Multipath-Routing-Protokolle verbinden paralleles Senden über mehrere Pfade mit Mechanismen der
Vorwärtsfehlerkorrektur. So werden die parallel über mehrere
Pfade zu sendenden Daten in [8] mittels Reed-Solomon-Codes
kodiert. Durch den Einsatz effizienter Kodierungsverfahren
wird der durch redundantes Senden gesteigerte Overhead
reduziert. Darüber hinaus sind Systeme, die Vorwärtsfehlerkorrektur betreiben, in der Lage, Übertragungsfehler zu kompensieren, die aus der verlustbehafteten, drahtlosen Verbindung
resultieren.
In WMN wird der Verkehr – entsprechend des angedachten Anwendungsszenarios einer drahtlosen Erweiterung des
drahtgebundenen Backbones – im Wesentlichen in Richtung
der Internet-Gateways und von diesen in Richtung der Clients geroutet [6]. Dadurch werden einige Verbindungen und
Knoten im Netzwerk unter Umständen bis zur Verstopfung
überlastet. Die durch ein Multipath-Routing-Protokoll ausgebildeten Pfade können derart genutzt werden, dass der Verkehr
gleichmäßiger über das Netzwerk verteilt wird. Dadurch kann
vermieden werden, dass einzelne Knoten und Verbindungen
überlastet werden. Darüber hinaus können Lastausgleichsalgorithmen dazu beitragen, dass die vorhandenen Netzwerkresourcen effizienter genutzt werden. In [19] wurde jedoch gezeigt,
dass – wenn das Multipath-Routing-Protokoll kürzeste Pfade
ausbildet – ein Lastausgleichseffekt nur dann erzielt werden
kann, wenn eine sehr große Anzahl an alternativen Pfaden
genutzt wird. Daher sollte ein Multipath-Routing-Protokoll,
das den Verkehr wirkungsvoll um besonders stark frequentierte
Knoten und Verbindungen herumleiten soll, die zu verwendenden Pfade nicht lediglich basierend auf der Anzahl der Hops
zwischen Quelle und Ziel bestimmen.
Verglichen mit drahtgebundenen Netzwerken ist die
4
verfügbare Datenübertragungsrate in Drahtlosnetzwerken gering. So sind zum Beispiel mittels Gigabit-Ethernet nach
IEEE 802.3ab [20] über Kupferkabel Bruttodatenraten von
1000 Mbit/s möglich, während Drahtlosnetzwerke deutlich
geringere Bruttodatenraten, zum Beispiel 54 Mbit/s nach
IEEE 802.11g [21], ermöglichen. Wie in Abschnitt II-A
erläutert, führen Interferenzen zwischen Verbindungen eines
Pfades und zwischen den Verbindungen unterschiedlicher Pfade dazu, dass die effektiv zur Verfügung stehende Bandbreite
weiter abnimmt. Insbesondere hochfrequentierte Verbindungen
und Knoten in unmittelbarer Umgebung der Internet-Gateways
werden so zu Flaschenhälsen“. In Verbindung mit der Ver”
wendung mehrerer Netzwerkadapter und unter Nutzbarmachung der zur Verfügung stehenden, sich nicht überlappenden
Funkkanäle, kann mittels Bandbreitenaggregation der Datendurchsatz durch Multipath-Routing-Mechanismen deutlich
erhöht werden [6].
C. Komponenten von Multipath-Routing-Protokollen
Multipath-Routing setzt sich aus drei Komponenten zusammen: der Routenfindung, der Verteilung des Verkehrs auf die
einzelnen Pfade und der Verwaltung und Wartung der Routen.
Im Folgenden werden die einzelnen Komponenten vorgesellt.
Routenfindung: Multipath-Routing-Protokolle können die
von ihnen zu bestimmenden alternativen Pfade, basierend
auf verschiedenen Kriterien, aus der Gesamtmenge der
zur Verfügung stehenden Pfade zwischen Quelle und Ziel
auswählen. Da die Mesh-Router im angedachten Szenario
einer drahtlosen Erweiterung des Backbones relativ statisch
sind, können kompliziertere Kriterien als die einfache Anzahl
der Hops zwischen Quelle und Ziel angelegt werden. Zum
einen können die in Abschnitt II-A besprochenen Kriterien
wie die Disjunktheit der Pfade oder deren Kopplungsgrad
zur Anwendung kommen. Andere mögliche Kriterien sind
die Einhaltung bestimmter Dienstgütekriterien, wie einer bestimmten Ende-zu-Ende-Verzögerung oder einer vorgegebenen
Mindestbandbreite [7]. In der Literatur wurden eine Reihe
von Routing-Metriken für WMNs zur Bestimmung der zu
verwendenden Pfadteilmenge vorgeschlagen. Die vorgeschlagenen Metriken unterscheiden sich unter anderem in ihrer
Fähigkeit, Interferenzen innerhalb und zwischen Pfaden zu
berücksichtigen. Ein weiteres Unterscheidungskriterium ist die
Fähigkeit, in den Metriken zeitliche Veränderungen in den
Verbindungscharakteristiken abzubilden. Eine Übersicht und
Diskussion einiger vorgeschlagener Pfadmetriken gibt [22].
Routenfindung kann auf globalem Wissen aufbauen, unvollständiges globales Wissen verwenden oder lediglich lokal in
den Knoten vorhandenes Wissen nutzen. Einem Knoten zu
jedem Zeitpunkt vollständiges Wissen über alle Knoten und
Verbindungen des Netzwerkes zur Verfügung zu stellen, ist vor
dem Hintergrund des fehleranfälligen, drahtlosen Charakters
des Netzwerkes und unter Berücksichtigung eventuell vorhandener mobiler Clients sehr aufwändig und bindet Ressourcen.
Lediglich auf lokalem Wissen aufbauend, alternative Pfade
zu konstruieren, ist schwierig, da globale Invarianten wie
die Schleifenfreiheit der zu bestimmenden Pfade oder ein
bestimmter Disjunktheitsgrad eingehalten werden müssen. Einige Multipath-Protokolle bestimmen multiple Pfade basierend
auf lokal in den Knoten vorhandenem Wissen, welches angereichert wird durch Mithören benachbarter Kommunikation
oder durch regelmäßigen Informationsaustausch mit umgebenden Knoten. Die Mehrheit der vorgeschlagenen MultipathRouting-Protokolle berechnet multiple Pfade aufbauend auf
unvollständigem globalen Wissen, welches durch beschränktes
Fluten des Netzwerkes generiert wird.
Routing-Protokolle lassen sich üblicherweise nach dem
Zeitpunkt der Routenfindung in Klassen einteilen. Sogenannte
proaktive Routing-Protokolle pflegen kontinuierlich RoutingTabellen und halten so zu jedem Zeitpunkt die notwendigen
Routing-Informationen vor. Dahingegen stoßen reaktive oder
on-demand Routing-Protokolle immer dann eine neue Routenfindung an, wenn eine Kommunikation zwischen einem Quellund einem Zielknoten unmittelbar bevorsteht. Ist der Grad
der Mobilität der Knoten in einem Netzwerk hoch oder ist
die Wahrscheinlichkeit für Verbindungszusammenbrüche aus
anderen Gründen erhöht, sind proaktive Routing-Protokolle
häufig mit veralteten Informationen konfrontiert. Das redundante Vorhalten der Informationen über den Netzwerkzustand
leistet darüber hinaus Inkonsistenzen in den Tabellen Vorschub, wenn Topologieänderungen zu einem Zeitpunkt noch
nicht allen Knoten bekannt sind. Reaktive Routing-Protokolle
treffen die Entscheidungen zur Routenfindung dagegen basierend auf aktuellen Informationen über den Netzwerkzustand.
Reaktive Protokolle bezahlen die Aktualität in der Regel mit
deutlich höherem Overhead, bedingt durch das häufige Fluten
des Netzwerkes. Einige Protokolle beschränken den durch
das Fluten induzierten Overhead dadurch, dass Knoten die
Routenanfragen nicht bedingungslos weiterleiten.
Neben reinen reaktiven und proaktiven Protokollen
sind auch hybride Ansätze möglich. Zone-RoutingProtocol (ZRP) [23] unterscheidet zwischen einem
Nah- und einem Fernbereich. Im Nahbereich, also der
unmittelbaren Umgebung eines Knotens, wird proaktiv
geroutet, Routenanfragen nach weiter entfernt liegenden
Knoten werden reaktiv vorgenommen.
Verteilung des Verkehrs auf die einzelnen Pfade: Ist eine
Teilmenge der möglichen Pfade ausgewählt, bestehen verschiedene Möglichkeiten der Zuteilung des Datenverkehrs
zu den einzelnen Pfaden. Hält ein Multipath-Protokoll zum
Beispiel zu einem primären Pfad lediglich einen alternativen
Pfad als Ausweichmöglichkeit im Fehlerfall vor, so wird der
Ausweichpfad erst dann genutzt, wenn der Primärpfad ausfällt.
Sendet ein Multipath-Protokoll dagegen parallel über mehrere
Pfade, so stellt sich die Frage nach dem Zuteilungsmechanismus. Denkbar ist, die verschiedenen Pfade nacheinander,
zum Beispiel mittels Round-Robin-Verfahren, mit Daten zu
beschicken. Darüber hinaus ist es möglich, wie bereits in
Abschnitt II-B erwähnt, durch das Hinzufügen einer gewissen Redundanz, die Zuverlässigkeit der Datenübertragung zu
erhöhen.
Die Datenzuteilung auf die Pfade ist in verschiedenen
Granularitäten möglich. Ein Protokoll kann die Daten
auf Datenstrom-, auf Paket- oder auf Segmentebene auf
5
die multiplen Pfade zuteilen. Je kleiner die zugeteilten
Informationseinheiten sind, desto effizienter kann ein
Lastausgleich vorgenommen werden [24]. Allerdings hat
eine feinere Granularität einen höheren Overhead zur Folge.
Findet die Zuteilung auf Basis von Paketen oder feiner statt,
ist zusätzlich ein weiteres Problem zu beachten. Dadurch,
dass Pakete entlang von Pfaden mit unterschiedlichen
Charakteristiken – betreffend zum Beispiel die Länge, die
Verzögerung oder die Verbindungsqualität – geleitet werden,
muss das Routing-Protokoll oder ein darauf aufsetzendes
Transportprotkoll wie TCP mit Paketen umgehen, die nicht
in der erwarteten Reihenfolge (out-of-order) bei dem Ziel
eintreffen. In [25] wurde gezeigt, dass die Leistungsfähigkeit
von Multipath-Protokollen bei dem Einsatz von TCP als
Transportprotokoll sogar unter der Leistungsfähigkeit von
Unipath-Protokollen liegen kann. Eine Übersicht über TCPVerbesserungen, die mit out-of-order Paketen besser umgehen
können, findet sich in [26].
Verwaltung und Wartung der Routen: Fällt ein Knoten
oder eine Verbindung durch einen Fehler aus oder bricht eine
Verbindung bedingt durch die Mobilität eventuell vorhandener
Clients zusammen, können Multipath-Routing-Protokolle mit
verschiedenen Strategien auf die dadurch entstehenden fehlerhaften Pfade und Routen reagieren. Protokolle, die multiple
Pfade zwischen Quelle und Ziel vorhalten, um bei einem
Pfadausfall alternative Pfade zur Verfügung zu haben, können
bei dem Ausfall eines Pfades entweder unmittelbar eine neue
Routenfindung anstoßen, um den in Funktion gesetzten Alternativpfad zu ersetzen oder eine neue Routenfindung bis
zu dem Zeitpunkt verzögern, an dem alle alternativen Pfade
ausgefallen sind.
Eine weitere Strategie ist, die Qualität der Pfade kontinuierlich hinsichtlich der Einhaltung bestimmter vorgegebener
Dienstgütekriterien zu beobachten. Ein Absinken der Qualität
eines Pfades unter eine gewisse Güteschwelle führt dann zum
Wechsel des Pfades oder zu einer erneuten Pfadsuche.
III. M ULTIPATH -ROUTING -P ROTOKOLLE
Die große Anzahl der in der Literatur vorgeschlagenen
Multipath-Routing-Protokolle für Drahtlosnetze macht eine
Auswahl der in dieser Arbeit zu behandelnden Protokolle schwierig. Bei der Auswahl eines Multipath-RoutingProtokolls scheint die Präsenz eines quasi-statischen drahtlosen Backbones in WMNs mit wenig Variabilität in der Netzwerkstruktur, den Einsatz eines proaktiven Routing-Protokolls
zu begünstigen. In [27] erwähnte Experimente scheinen jedoch
darauf hinzudeuten, dass es zu ungünstigen Auswirkungen
auf die Routenfindung kommen kann, wenn der Kontrollverkehr eines proaktiven Protokolls unter hoher Last mit dem
eigentlichen Datenverkehr konkurriert. Des Weiteren lässt die
eventuelle Anwesenheit mobiler Clients die Wahl eher auf
reaktive Protokolle fallen, da diese in der Lage sind, schneller
auf Änderungen in der Netzwerktopologie zu reagieren. Im
Rahmen dieser Arbeit wird daher der Schwerpunkt auf reaktive
Multipath-Protokolle gelegt.
Da die in dieser Arbeit dargestellten reaktiven MultipathRouting-Protokolle auf den ursprünglich für MANETs vorge-
schlagenen Unipath-Protokollen AODV [1] und DSR [3] basieren, wird im Abschnitt III-A zunächst ein kurzer Überblick
über diese beiden Protokolle gegeben. Im Abschnitt III-B
werden dann zwei Multipath-Erweiterungen von DSR vorgestellt. Der Abschnitt III-C behandelt zwei auf AODV basierende Multipath-Protokolle. In Abschnitt III-D wird ein kurzer
Überblick über Vergleichsstudien der besprochenen Protokolle
gegeben.
A. AODV und DSR
DSR: Dynamic-Source-Routing (DSR) [3] ist ein ondemand Routing-Protokoll für drahtlose Ad-Hoc-Netzwerke.
Es basiert auf dem Konzept des Source-Routing. Dabei teilt
der Sender den nachfolgenden Knoten auf dem Weg zum Ziel
die notwendigen Routing-Informationen über die dazwischenliegenden Knoten (Zwischenknoten) im Header eines Datenpaketes mit. Der Ablauf von DSR kann in zwei Phasen geteilt
werden, der Route-Discovery und der Route-Maintenance.
Bei DSR hält jeder Knoten im Netzwerk einen Zwischenspeicher mit bereits bekannten Routen vor. Steht eine Datenübertragung zwischen einem Quellknoten und einem Ziel
bevor, wird zunächst der Zwischenspeicher auf eine eventuell
schon vorhandene aktuelle Route hin überprüft. Ist keine passende Route bekannt, sendet die Quelle einen Route-Request
(RREQ) an alle benachbarten Knoten und stößt damit eine
Route-Discovery an. Die RREQ-Nachricht enthält sowohl die
Adresse des Quell- als auch die Adresse des Zielknotens. Des
Weiteren enthält die Nachricht eine von der Quelle generierte
eindeutige Identifikationsnummer und eine Datenstruktur in
der alle Knoten in der Reihenfolge festgehalten werden, in der
die Nachricht sie auf ihrem Weg durch das Netzwerk passiert.
Ein Zwischenknoten überprüft bei dem Empfang eines RouteRequest, ob die Nachricht schon einmal über diesen Knoten
geleitet wurde. Ist dies nicht der Fall, so fügt der Knoten
seine eigene Adresse zu der Liste der passierten Knoten hinzu
und leitet sie danach wiederum an alle Nachbarknoten weiter.
Ist der Route-Request bekannt, so wird die RREQ-Nachricht
verworfen.
Wenn die RREQ-Nachricht den Zielknoten erreicht, fügt
dieser seiner Adresse ebenfalls an das Ende der Liste an.
Anschließend sendet der Zielknoten die Liste der passierten
Knoten auf dem umgekehrten Weg durch das Netzwerk –
eingebettet in einen Route-Reply (RREP) – an die Quelle zurück. Die Quelle speichert daraufhin die empfangenen
Routing-Informationen. Diese betreffen neben dem eigentlich
angefragten Ziel auch alle zwischen Quelle und Ziel liegenden
Knoten.
Sind alle Verbindungen im Netzwerk bidirektional (zum
Beispiel beim Medienzugriff nach IEEE 802.11 [21]), so
können sowohl die Zielknoten als auch alle dazwischenliegenden Knoten umfangreiche Routinginformationen aus den
Routing-Nachrichten speichern und wiederverwenden. Insbesondere können Knoten, die zwischen Quelle und Ziel einer
Anfrage liegen, die Routing-Anfrage aus ihrem Zwischenspeicher beantworten. Existieren in dem Netzwerk auch unidirektionale Verbindungen, so kann der Zielknoten entweder
eine bereits bekannte Route für das Zurücksenden der RREPNachricht verwenden oder eine erneute Routenfindung mit der
6
ursprünglichen Quelle als Ziel anstoßen. Die ursprüngliche
RREP-Nachricht kann dann zusammen mit der neuen RREQNachricht zur Quelle übermittelt werden.
Die Route-Maintenance, also die Wartung und Pflege der
Routen, wird durch das Versenden von Fehler- und Bestätigungsnachrichten ermöglicht. Wenn ein Knoten, der im
Weiterleiten eines Datenpaketes begriffen ist, einen Verbindungsausfall bemerkt, wird eine Route-Error-Nachricht erstellt
und zur Quelle des Datenpaketes zurück gesendet. Diese
Fehlernachricht enthält neben der Adresse des Knotens, der
den Ausfall der Verbindung festgestellt hat, auch die Adresse
des durch den Verbindungsausfall nicht mehr zu erreichenden
Knotens. Die Quelle streicht beim Empfang einer Fehlernachricht die entsprechenden Routen aus dem Zwischenspeicher
der bekannten Routen und lässt entweder das Paket verfallen
oder stößt eine neue Route-Discovery an.
Eine Optimierung um den Overhead der Routenfindung
zu reduzieren, wird dadurch erreicht, dass ein Knoten, der
zwischen Quelle und Ziel der Route-Discovery liegt, direkt
mit einer RREP-Nachricht zur Quelle antwortet, sofern sich
im Zwischenspeicher des Knotens eine aktuelle Route zum
Ziel findet.
AODV: Ad-Hoc-On-Demand-Distance-Vector (AODV) [1]
ist wie DSR ein reaktives Routing-Protokoll für drahtlose Ad-Hoc-Netzwerke und baut in Teilen auf DSR
und dem proaktiven Destination-Sequenced-Distance-VectorProtokoll (DSDV) [4] auf. Die Verwendung von On-DemandRundrufen zur Routenfindung ist dabei von DSR entlehnt,
das Konzept der Ziel-Sequenznummern baut auf DSDV auf.
Dabei basiert AODV nicht wie DSR auf dem Konzept des
Source-Routing, sondern auf der dynamischen Entwicklung
von Routing-Informationen in den zwischen Quelle und Ziel
liegenden Knoten.
Wie bei DSR überprüft ein Knoten unmittelbar vor der
Datenübertragung, ob bereits eine Route für den Zielknoten
der Übertragung bekannt ist. Ist dies nicht der Fall, so wird
eine Pfadsuche angestoßen und die Quelle sendet einen RouteRequest (RREQ) an alle benachbarten Knoten. Die Nachbarknoten leiten die RREQ-Nachricht wiederum an benachbarte
Knoten weiter, bis das Ziel oder ein Zwischenknoten mit einer
aktuellen Route zum Ziel erreicht ist.
Bei AODV verwaltet jeder Knoten zwei Zählvariablen, die
Sequenznummer und die Broadcast-ID. Jede RREQ-Nachricht
enthält neben den Adressen und Sequenznummern der Quellund Zielknoten, die Broadcast-ID der Quelle und die Anzahl
der Hops der bereits passierten Knoten (Hop-Count). Dadurch,
dass ein Knoten die Broadcast-ID jedesmal erhöht, wenn
ein neuer RREQ angestoßen wird, identifiziert das Tupel
aus Quelladresse und Broadcast-ID eine RREQ-Nachricht
eindeutig. Doppelt empfangene RREQ-Nachrichten werden
verworfen. Empfängt ein Knoten eine noch nicht bekannte
RREQ-Nachricht, und kann die Anfrage nicht beantworten,
so wird der Hop-Count erhöht und der RREQ wird an die
benachbarten Knoten weitergeleitet. Um den Rückwärtspfad
zur Quelle aufbauen zu können, speichert der Knoten auch
die Adresse des Knotens von dem die RREQ-Nachricht empfangen wurde. Auf einen RREQ dürfen nur Knoten antworten,
die eine Route zum Ziel kennen, deren Ziel-Sequenznummer
größer oder gleich der in der RREQ-Nachricht enthaltenen
Ziel-Sequenznummer ist.
Empfängt nun das Ziel – oder ein Knoten der eine aktuelle Route zum Ziel vorweisen kann – eine unbekannte
RREQ-Nachricht, so wird ein Route-Reply-Packet (RREP)
erstellt und an den Nachbarn zurückgeschickt, von dem der
Knoten den RREQ empfangen hat. Eine RREP-Nachricht
enthält unter anderem die Quell- und die Zieladresse, die ZielSequenznummer und die Anzahl der Knoten zwischen dem
Knoten und dem Zielknoten.
Analog zur Ausbildung eines Rückwärtspfades auf dem
Weg der RREQ-Nachricht von der Quelle zu dem Zielknoten,
erstellen die beim Traversieren des Rückwärtspfades passierten
Knoten bei der Verarbeitung der RREP-Nachricht nun einen
Verweis auf den Knoten, von dem sie die RREP-Nachricht
empfangen haben. So wird ein Vorwärtspfad zwischen Quelle
und Ziel ausgebildet. Die weiterleitenden Knoten reichen eine
RREP-Nachricht nur dann an den nächsten Knoten auf dem
Rückwärtspfad weiter, wenn die RREP-Nachricht bestimmte
Kriterien erfüllt. Eine Weiterleitung erfolgt, wenn die in der
RREP-Nachricht enthaltene Ziel-Sequenznummer größer ist
als eine schon bekannte Ziel-Sequenznummer. Ist die ZielSequenznummer gleich einer schon bekannten, so wird die
RREP-Nachricht nur dann weitergereicht, wenn die Anzahl
der Knoten zum Ziel geringer ist als bei früheren RREPNachrichten. RREP-Nachrichten, die diese beiden Kriterien
nicht erfüllen, werden verworfen.
Knoten pflegen bei AODV eine Liste der benachbarten
Knoten. Registriert nun ein Knoten einen Verbindungsausfall
oder eine Veränderung in der Nachbarschaft, wird ein RouteMaintenance-Prozess angestoßen. Dabei werden alle Knoten,
für die ein Rückwärtsverweis für die betroffenen Routen eingetragen ist mittels einer unaufgeforderten RREP-Nachricht über
den Verbindungsausfall informiert. Diese aktiven Nachbarn
wiederum reichen die RREP-Nachricht an ihre aktiven Nachbarn weiter, bis alle betroffenen Quellknoten informiert sind.
Eine betroffene Quelle kann dann eine neue Routenfindung
anstoßen.
B. Auf DSR basierende Multipath-Protokolle
SMR: Split-Multipath-Routing (SMR) [28] baut auf DSR
auf und ist daher ebenfalls ein Source-Routing-Protokoll.
SMR berechnet mehrere schleifenfreie und maximal-disjunkte
Pfade zwischen Quelle und Ziel. Im Unterschied zu DSR
beantworten Knoten, die zwischen Quelle und Ziel liegen,
RREQ-Anfragen nicht aus dem Routing-Zwischenspeicher.
Des Weiteren leiten Knoten RREQ-Nachrichten auch dann
weiter, wenn sie den Knoten schon einmal passiert haben.
Doppelte RREQ-Nachrichten werden aber nur weitergeleitet,
wenn sie von einem anderen Nachbarn empfangen wurden
und einen geringeren Hop-Count als eine früher empfangene RREQ-Nachricht aufweisen. Dies verursacht zwar einen
erhöhten Overhead im Netzwerk, der Zielknoten kann dadurch
jedoch aus mehr unterschiedlichen Pfaden auswählen, da ihn
viel mehr RREQ-Nachrichten erreichen als bei DSR.
Erreicht die erste RREQ-Nachricht den Zielknoten, wählt
dieser den durch die Nachricht repräsentierten Pfad als
7
primären Pfad aus. Dieser Pfad ist der Pfad mit der geringsten
Verzögerung (shortest-delay-path) und wird sofort vom Zielknoten mit einer RREP-Nachricht bestätigt. Aus den nachfolgend eintreffenden RREQ-Nachrichten wählt der Zielknoten
denjenigen Pfad aus, der maximal-disjunkt zu dem primären
Pfad ist. Existieren mehrere maximal-disjunkte Pfade, wird der
Pfad ausgewählt, der die geringste Anzahl Knoten zwischen
Quelle und Ziel aufweist. Wenn mehrere maximal-disjunkte
Pfade mit minimalem Hop-Count existieren, so wird derjenige
Pfade ausgewählt, dessen RREQ-Nachricht vom Zielknoten
zuerst empfangen wurde. Im Anschluss sendet der Zielknoten
für den ausgewählten Pfad ebenfalls eine RREP-Nachricht
zurück an die Quelle der Anfrage.
Die Zuteilung der Daten auf die beiden Pfade betreffend,
haben sich die Autoren in [28] für eine Zuteilung auf
Paketebene entschieden. Sie argumentieren, dass der
dynamische Charakter eines drahtlosen Ad-Hoc-Netzwerkes
die Einbeziehung des Netzwerkzustandes und damit eine
Zuteilung auf höherer Ebene schwierig mache. Für die
daraus resultierenden Problemen mit TCP, angesprochen im
Abschnitt II-C, muss dann allerdings ein Umgang gefunden
werden.
MP-DSR: Multipath-Dynamic-Source-Routing (MP-DSR)
[29] ist ebenfalls eine Multipath-Erweiterung von DSR und
berechnet multiple schleifenfreie sowie verbindungsdisjunkte
Pfade. Im Unterschied zu DSR und SMR antwortet hierbei der Zielknoten auf mehr RREQ-Nachrichten. Zunächst
wird die RREQ-Nachricht, die den Zielknoten als erstes
erreicht, mittels RREP bestätigt. Von den nachfolgend am
Ziel eintreffenden RREQ-Nachrichten werden nur diejenigen
bestätigt, die verbindungsdisjunkte Pfade zum primären Pfad
repräsentieren. Die Quelle verwaltet alle eintreffenden RREPNachrichten in einem Routing-Zwischenspeicher. Fällt die zu
einem Zeitpunkt genutzte Route aus, so wird die Route aus
dem Zwischenspeicher genutzt, die den geringsten Hop-Count
bis zum Ziel aufweist.
C. Auf AODV basierende Multipath-Protokolle
AODVM: Ad-Hoc-On-Demand-Distance-Vector-Multipath
(AODVM) [30] ist eine Erweiterung von AODV, die darauf
ausgerichtet ist, multiple knotendisjunkte Pfade zwischen einer
Quelle und einem Ziel zu bestimmen. Anstatt doppelte RREQNachrichten in den Zwischenknoten zu verwerfen, werden
die in den RREQ-Paketen enthaltenen Informationen in einer
sogenannten RREQ-Tabelle gespeichert. Für jede empfangene
Kopie einer RREQ-Nachricht speichert ein Zwischenknoten
unter anderem die Quelle und das Ziel der Nachricht sowie
den Nachbarknoten, von dem die RREQ-Nachricht empfangen
wurde, und die Entfernung zur Quelle. Im Unterschied zu
AODV antworten Zwischenknoten nicht direkt auf RREQAnfragen mit RREP-Nachrichten an die Quelle.
Trifft die erste RREQ-Nachricht bei dem Zielknoten ein, so
wird analog zu AODV eine RREP-Nachricht mit aktualisierter
Sequenznummer des Zielknotens erstellt. Zusätzlich enthält
eine RREP-Nachricht bei AODVM Informationen über den
Knoten, von dem das Ziel die RREQ-Anfrage empfangen hat.
Das RREP-Paket wird dann über den von der RREQ-Anfrage
ausgebildeten Pfad zurück zur Quelle geschickt. Empfängt der
Zielknoten auch von anderen Nachbarn Kopien der RREQAnfrage, so wird für jede Kopie eine entsprechende RREPNachricht erstellt und zurück zur Quelle geschickt.
Empfängt nun ein Zwischenknoten eine RREP-Nachricht
von einem seiner Nachbarn, wird der entsprechende Eintrag
für diesen Nachbarknoten aus der RREQ-Tabelle des Knotens
gelöscht. Analog zu AODV wird ein Verweis auf den sendenden Nachbarn in der Routing-Tabelle erstellt und damit
der Vorwärtspfad zum Zielknoten ausgebildet. Die RREPNachricht wird an den Knoten weitergeleitet, der gemäß
RREQ-Tabelle auf dem kürzesten Pfad zum Quellknoten liegt.
Der entsprechende Eintrag wird danach aus der RREQ-Tabelle
entfernt. Damit sichergestellt ist, dass Knoten nur an maximal
einem Pfad beteiligt sind, löschen Knoten alle entsprechenden
Einträge aus der RREQ-Tabelle, falls sie RREP-Nachrichten
von anderen Nachbarknoten zufällig mithören.
Kann ein Knoten eine empfangene RREP-Nachricht nicht
weiterleiten, weil die RREQ-Tabelle keinen passenden Eintrag
mehr enthält, so wird eine Route-Discovery-Error-Nachricht
(RDER) erstellt und an den Nachbarknoten gesendet, von
dem die nicht zustellbare RREP-Nachricht empfangen wurde.
Dieser Nachbar wiederum versucht nun nach Möglichkeit
die RDER-Nachricht an einen anderen Knoten entsprechend
seiner RREQ-Tabelle zuzustellen. Die Anzahl der RDERNachrichten, die eine einzelne RREP-Nachricht auslösen kann,
kann dabei begrenzt werden.
Im Unterschied zu Source-Routing-Protokollen entscheiden
bei AODVM die Zwischenknoten, ob und wohin eine
RREP-Nachricht weitergeleitet wird. Um den Zielknoten
über die tatsächlich ausgebildeten Pfade zu informieren, wird
für jeden Pfad mit dem ersten Datenpaket eine Bestätigung
des Pfades übermittelt. Diese Bestätigung enthält neben der
Länge des Pfades auch Informationen über den ersten und
letzten Zwischenknoten auf dem Pfad.
AOMDV: Ad-Hoc-On-Demand-Multipath-Distance-Vector
(AOMDV) [31] [32] ist eine weitere Erweiterung von AODV
und berechnet multiple schleifenfreie und verbindungsdisjunkte Pfade. Im Unterschied zu AODV werden doppelt empfangene RREQ-Nachrichten bei AOMDV nicht verworfen, es wird
vielmehr für jede, von unterschiedlichen Nachbarn empfangene und gewisse Kriterien erfüllende, RREQ-Nachricht ein
entsprechender Eintrag für die Rückwärtsroute eingetragen.
Die so etablierten Rückwärtspfade werden von entsprechenden
multiplen RREP-Nachrichten in Richtung der Quelle traversiert und bilden so die Vorwärtspfade zwischen Quelle und
Zielknoten aus.
Um die multiplen Pfade verwalten zu können, werden
bei AOMDV mehr Informationen in der Routing-Tabelle
gespeichert als bei AODV. Neben der Zieladresse und der
Zielsequenznummer wird für jedes Ziel eine Routing-Liste
gespeichert. In dieser Routing-Liste ist für jeden der multiplen
Pfade festgehalten, welcher Knoten der letzte vor dem Ziel
ist. Zusätzlich wird in der Routing-Liste festgehalten von
welchem Knoten ein RREQ oder RREP empfangen wurde und
welcher Hop-Count in der entsprechenden Nachricht vermerkt
8
war. Die Information über den letzten Knoten auf einem
Pfad identifiziert einen Pfad eindeutig und ermöglicht das
Berechnen von verbindungsdisjunkten Pfaden.
Um die Schleifenfreiheit auch bei multiplen Pfaden garantieren zu können, führen die Autoren die Idee des AdvertisedHop-Count, definiert als den maximalen Hop-Count aller Pfade, ein. Die Autoren stellen drei Regeln auf, deren Einhaltung
die Schleifenfreiheit garantiert. Die Ziel-SequenzummernRegel aus AODV wird auf multiple Pfade ausgedehnt, das
heißt, alle multiple Pfade von einem Knoten zu einem
Ziel weisen dieselbe Ziel-Sequenznummer auf. Empfängt
ein Knoten eine Pfadankündigung mit einer größeren ZielSequenznummer, so wird der entsprechende Eintrag in der
Routing-Tabelle reinitialisiert. Des Weiteren darf ein Knoten
niemals einen Pfad ankündigen, der kürzer als ein schon
angekündigter ist. Zusätzlich darf ein Knoten niemals eines
Pfad annehmen, der länger als ein schon von diesem Knoten
angekündigter ist. Hierbei bezieht sich die Ankündigung eines
Pfades sowohl auf RREQ- als auch auf RREP-Nachrichten.
Die Route-Maintenance läuft analog zu AODV ab, jedoch
wird eine unaufgeforderte RREP-Nachricht erst dann erstellt
oder weitergeleitet, wenn der letzte alternative Pfad ausgefallen ist.
Mit einer zusätzlichen Festlegung kann AOMDV so
verändert werden, dass nur knotendisjunkte Pfade bestimmt
werden. Dabei wird gefordert, das ein Knoten für ein
Ziel jeweils nur einen ausgewählten Pfad anderen Knoten
gegenüber ankündigt.
D. Vergleichsstudien
Parissidis et al. haben in [33] einige der in diesem Abschnitt
vorgestellten Multipath-Routing-Protokolle miteinander verglichen, nämlich SMR, AOMDV und AODVM – wobei die genutzten Protokoll-Implementationen derart angepasst wurden,
dass multiple Pfade gleichzeitig genutzt werden. Zusätzlich
haben sie das herkömmliche AODV als Referenz verwendet.
Die Vergleiche wurden in der Simulationsumgebung ns-2
[34] vorgenommen, wobei auf Medienzugriffsebene die
Distributed-Coordination-Function (DCF) des Wireless-LANStandards IEEE 802.11 [21] Verwendung fand. Es wurden Netzwerke unterschiedlicher Dichte (zwischen 30 und
100 Knoten) und Verkehrsaufkommen in einem 1000m ∗
300m messenden Feld untersucht. Dabei wurden neben statischen Netzwerken auch Netzwerke mit kontinuierlicher Bewegung der Knoten simuliert. Als Bewegungsmodell diente
das Random-Way-Point-Modell. Da die Arbeit vor dem Hintergrund von MANETs entstand, wurde von den Autoren nicht
zwischen verschiedenen Arten von Knoten – etwa zwischen
Routern und Clients – unterschieden.
Die Autoren treffen in der Rückschau der getätigten Simulationen vier Kernaussagen. Zunächst stellen sie fest, dass in
dicht besetzten Netzwerken und in Netzwerken mit hohem
Verkehrsaufkommen Multipath-Routing gegenüber UnipathRouting bessere Leistung zeigt. Des Weiteren führen sie
aus, dass AOMDV in Szenarien mit hoher Mobilität am
leistungsfähigsten ist, wohingegen sich AODVM in relativ
statischen Szenarien am leistungsfähigsten zeigte. Hinsichtlich
SMR kommen die Autoren zu dem Ergebnis, das SMR sowohl
in dicht besetzten Netzwerken, also auch in Netzwerken mit
hohem Verkehrsaufkommen schwache Leistung zeigt. Dies
wird auf den durch das Protokoll generierten großen KontrollOverhead zurückgeführt.
Pirzada et al. haben mit [35] eine Vergleichstudie vorgestellt, in der sie vor dem Hintergrund eines hybriden WMN
die Multipath-Protokolle AOMDV und MP-DSR verglichen
haben. Die verwendete Implementation von MP-DSR war
dabei um Caching-Mechanismen, wie sie in [36] dargestellt
werden, erweitert. Die von den Autoren vorgestellten Experimente wurden ebenfalls in der Simulationsumgebung ns-2
unter Verwendung des Random-Way-Point-Modells und der
IEEE 802.11 DCF auf Medienzugriffsebene vollzogen. Simuliert wurden 16 statische Mesh-Router sowie 50 dynamische
Clients in einem 1000m ∗ 1000m messenden Quadrat unter
verschiedenen Mobilitätsgraden der Clients und Verkehrsaufkommen. Der einzige Unterschied zwischen Mesh-Routern
und Clients ist im vorliegenden Fall die Tatsache, dass die
Mesh-Router nicht mobil sind, insbesondere nehmen auch die
Clients am Routing teil. Die Autoren treffen keine Aussage
darüber, ob multiple Pfade durch die Protokolle parallel genutzt wurden.
In der Analyse der Simulationen unterscheiden die Autoren zwischen semi-statischen Pfaden, an denen Mesh-Router
beteiligt sind, und Pfaden, die lediglich aus Clients aufgebaut
sind. Die durch die Mesh-Router unterstützten Pfade werden
je nach Protokoll mit AOMDV-Mesh beziehungsweise MPDSR-Mesh referenziert.
Als zentrales Ergebnis halten die Autoren fest, das die
Gegenwart von statischen Mesh-Routern die Leistung von
Multipath-Routing-Protokollen signifikant verbessern kann im
Vergleich zu Netzwerken, in denen nur mobile Knoten vorhanden sind. Speziell das Verhältnis der auf Anwendungsschicht
gesendeten Pakete zu den tatsächlich auch empfangenen Paketen ist deutlich besser. Zudem sorgen die semi-statischen
Pfade auch für weniger Kontroll-Overhead. Sie sind stabiler
und es werden dadurch weniger Routenfindungen auf Grund
von Pfadausfällen angestoßen. Die Beobachtung, dass unter
AOMDV-Mesh und AOMDV deutlich weniger Pakete verworfen werden, wird durch die Tatsache begründet, dass AOMDVMesh und AOMDV – im Gegensatz zu MP-DSR-Mesh und
MP-DSR – in der Lage sind, auf einen Pfadausfall auch in
den Zwischenknoten zu reagieren.
MP-DSR-Mesh generiert in den Simulationen für zehn
Datenpakete lediglich ein Kontrollpaket. Dies ist auf die
verwendeten Caching-Mechanismen zurückzuführen und wird
dadurch unterstützt, dass semi-statische Pfade, an denen MeshRouter beteiligt sind, vergleichsweise lange stabil bleiben.
Demgegenüber generiert AOMDV-Mesh für je zwei Datenpakete ein Kontrollpaket, AOMDV generiert sogar fast für jedes
Datenpaket ein Kontrollpaket.
IV. FAZIT
Multipath-Routing-Protokolle machen sich die Redundanz
und die mögliche Vielfältigkeit des zu Grunde liegenden
9
drahtlosen Netzwerkes zu Nutze, in dem ein Knoten multiple
Verbindungen zu Nachbarknoten aufbaut und mehrere dieser
Pfade zur Kommunikation mit einem Ziel nutzt. MultipathProtokolle sind dadurch in der Lage, den Ausfall oder die
Nichterreichbarkeit einzelner Knoten zu kompensieren. Bei
Verwendung multipler Pfade muss bei einem Pfadausfall nicht
erst eine neue Routenfindung ausgelöst werden, um die Datenübertragung fortzusetzen, die Ende-zu-Ende-Verzögerung
ist dadurch geringer als bei Unipath-Protokollen. MultipathRouting-Protokolle können außerdem für einen Lastausgleich
oder Bandbreitenaggregation sorgen sowie die Fehlertoleranz
und die Ausfallsicherheit eines Netzwerkes erhöhen.
Die sowieso geringe Bandbreite in drahtlosen Netzwerken
wird durch inter- und intra-path-Interferenzen noch weiter
beschränkt, so dass die Auswahl der multiplen Pfade unter
Berücksichtigung der Interferenzproblematik erfolgen sollte.
Ein vielversprechender Ansatz scheint die Verwendung von
mehreren sich nicht überschneidenden Funkkanälen zu sein.
In der Literatur wurden viele verschiedene MultipathProtokolle vorgeschlagen – umfassende Vergleichsstudien oder
vergleichende experimentelle Evaluationen der Protokolle sind
dagegen selten, zumal im Kontext von WMNs. Die Leistungsfähigkeit vorgeschlagener Protokolle wird von den Autoren mehrheitlich anhand von Simulationen argumentiert. In Simulationen werden allerdings einige grundlegende Annahmen
gemacht, die nicht der realen Welt und der darin existierenden
Physik entsprechen [37]. Hinzu kommt, dass viele Autoren die
vorgeschlagenen Multipath-Protokolle lediglich mit UnipathProtokollen verglichen haben.
Oftmals präsentieren Autoren das entsprechende Protokoll
als Lösungsansatz für ein relativ eng abgegrenztes Problem
und betrachten es losgelöst von anderen Problemen. Dadurch,
dass umfassende Vergleiche fehlen, ist unklar, welcher Ansatz
welches Problem wie gut löst – oder ob nicht eine Kombination von Ansätzen weiter führen würde. Als Beispiel sei hier
genannt, dass scheinbar keine Studie veröffentlicht wurde, in
der im Kontext von WMNs experimentell untersucht wurde ob
reaktive oder proaktive Protokolle besser geeignet sind oder ob
nicht im direkten Vergleich ein hybrider Ansatz vielversprechender ist. Allein die unterschiedlichen Vorstellungen darüber
was ein WMN ist und wie es geeignet dargestellt werden
könnte, führen zu schwer vergleichbaren Simulationen und
Experimenten. Untersuchungen, die in einem klar definierten
experimentellen Rahmen unterschiedliche Multipath-RoutingProtokolle unter einheitlichen Bedingungen evaluieren und die
Ergebnisse transparent darstellen, wären notwendig.
L ITERATUR
[1] C. E. Perkins and E. M. Royer, “Ad-hoc on-demand distance vector
routing,” in Proc. 2nd IEEE Workshop on Mobile Computing Systems
and Applications, Los Alamitos, CA, USA, 1999, p. 90.
[2] P. Jacquet, P. Muhlethaler, T. Clausen, A. Laouiti, A. Qayyum, and
L. Viennot, “Optimized link state routing protocol for ad hoc networks,”
in Proc. IEEE International Multi Topic Conference (INMIC ’02), Dec.
2002, pp. 62–68.
[3] D. Johnson and D. Maltz, Mobile Computing.
Boston: Kluwer
Academic Publishers, 1996, ch. Dynamic Source Routing in Ad Hoc
Wireless Networks, pp. 153–181.
[4] C. E. Perkins and P. Bhagwat, “Highly dynamic destination-sequenced
distance-vector routing (DSDV) for mobile computers,” in Proc. ACM
Conference on Communications Architectures, Protocols and Applications (SIGCOMM’94), New York, NY, USA, Aug. 1994, pp. 234–244.
[5] I. F. Akyildiz, X. Wang, and W. Wang, “Wireless mesh networks: a
survey,” Computer Networks, vol. 47, no. 4, pp. 445–487, Mar. 2005.
[6] A. Raniwala and T. cker Chiueh, “Architecture and algorithms for an
IEEE 802.11-based multi-channel wireless mesh network,” in Proc. 24th
Annual Joint Conference of the IEEE Computer and Communications
Societies (INFOCOM’05)., vol. 3, Mar. 2005, pp. 2223–2234.
[7] S. Mueller, R. P. Tsang, and D. Ghosal, Performance Tools and
Applications to Networked Systems, ser. Lecture Notes in Computer
Science.
Springer Berlin / Heidelberg, 2004, vol. 2965/2004, ch.
Multipath Routing in Mobile Ad Hoc Networks: Issues and Challenges,
pp. 209–234.
[8] M. Kefayati, H. R. Rabiee, S. G. Miremadi, and A. Khonsari, “Misbehavior resilient multi-path data transmission in mobile ad-hoc networks,”
in Proc. 4th ACM workshop on Security of ad hoc and sensor networks
(SASN’06). New York, NY, USA: ACM, 2006, pp. 91–100.
[9] D. Medhi and K. Ramasamy, Network Routing: Algorithms, Protocols,
and Architectures. Amsterdam: Elsevier/Morgan Kaufmann Publishers,
2007.
[10] G. R. Ash, A. H. Kafker, and K. R. Krishnan, “Servicing and realtime control of networks with dynamic routing,” Bell System Technical
Journal, vol. 60, no. 8, pp. 1821–1845, Oct. 1981.
[11] R. Gibbens, F. P. Kelly, and P. B. Key, “Dynamic alternate routing - modeling and behaviour,” in Proc. 12th International Teletraffic Congress,
Turin, Italy, 1988, pp. 3.4A3.1–3.4A3.7.
[12] G. R. Ash, J.-S. Chen, A. E. Frey, and B. D. Huang, “Real time
network routing in a dynamic class-of-service network,” in Proc. 13th
International Teletraffic Congress, Copenhagen, Denmark, Jun. 1991,
pp. 187–194.
[13] D. Thaler and C. Hopps, “Multipath issues in unicast and multicast
next-hop selection,” RFC 2991, Nov. 2000. [Online]. Available:
http://tools.ietf.org/rfc/rfc2991.txt
[14] A.-I. A. Wang, G. H. Kuenning, and P. Reiher, Mobile and Wireless
Internet: Protocols, Algorithms, and Systems.
Kluwer Academic
Publishers, Jul. 2003, ch. Multipath Routing for Ad Hoc Networks, pp.
245–262.
[15] X. Li and L. Cuthbert, “Stable node-disjoint multipath routing with low
overhead in mobile ad hoc networks,” in Proc. IEEE Computer Society’s 12th Annual International Symposium on Modeling, Analysis, and
Simulation of Computer and Telecommunications Systems (MASCOTS
2004), Oct. 4 – 8 2004, pp. 184–191.
[16] J. J. Garcia-Luna-Aceves and M. Mosko, “Multipath routing in wireless
mesh networks,” in First IEEE Workshop on Wireless Mesh Networks
(WiMesh 2005), Santa Clara; CA., Sep. 2005.
[17] M. R. Pearlman, Z. J. Haas, P. Sholander, and S. S. Tabrizi, “On the
impact of alternate path routing for load balancing in mobile ad hoc
networks,” in Proc. 1st ACM international symposium on Mobile ad
hoc networking & computing (MobiHoc’00). Piscataway, NJ, USA:
IEEE Press, 2000, pp. 3–10.
[18] A. Raniwala, K. Gopalan, and T. cker Chiueh, “Centralized channel
assignment and routing algorithms for multi-channel wireless mesh
networks,” SIGMOBILE Mob. Comput. Commun. Rev., vol. 8, no. 2,
pp. 50–65, 2004.
[19] Y. Ganjali and A. Keshavarzian, “Load balancing in ad hoc networks:
single-path routing vs. multi-path routing,” in Proc. IEEE Annual
Conference on Computer Communications (INFOCOM), Mar. 2004, pp.
1120–1125.
[20] Carrier Sense Multiple Access with Collision Detection (CSMA/CD)
access method and physical layer specifications, IEEE Std. 802.3-2005,
2005.
[21] Wireless LAN Medium Access Control (MAC) And Physical Layer (PHY)
Specifications, IEEE Std. 802.11-2007, 2007.
[22] M. Campista, P. Esposito, I. Moraes, L. Costa, O. Duarte, D. Passos,
C. de Albuquerque, D. Saade, and M. Rubinstein, “Routing metrics and
protocols for wireless mesh networks,” Network, IEEE, vol. 22, no. 1,
pp. 6–12, Jan./Feb. 2008.
[23] Z. J. Haas, “A new routing protocol for the reconfigurable wireless
networks,” in Proc. 6th IEEE International Conference on Universal
Personal Communications (ICUPC’97), vol. 2, San Diego, California,
USA, Oct. 12 – 16 1997, pp. 562–566.
[24] J. Krishnan, R. Silvester, “Choice of allocation granularity in multipath
source routingschemes,” in Proc. Twelfth Annual Joint Conference of the
IEEE Computer and Communications Societies. Networking: Foundation
for the Future, vol. 1, San Francisco, CA, USA, Mar. 1993, pp. 322–329.
10
[25] H. Lim, K. Xu, and M. Gerla, “TCP performance over multipath routing
in mobile ad hoc networks,” in Proc. IEEE International Conference on
Communications, vol. 2, 2003, pp. 1064–1068.
[26] K. Leung, V. Li, and D. Yang, “An overview of packet reordering in
transmission control protocol (TCP): problems, solutions, and challenges,” IEEE Trans. on Parallel and Distributed Systems, vol. 18, no. 4,
pp. 522–535, 2007.
[27] S. Waharte, R. Boutaba, Y. Iraqi, , and B. Ishibashi, “Routing protocols
in wireless mesh networks: challenges and design considerations,”
Multimedia Tools and Applications, vol. 29, no. 3, pp. 285–303, Jun.
2006.
[28] S.-J. Lee and M. Gerla, “Split multipath routing with maximally disjoint
paths in ad hocnetworks,” in Proc. IEEE International Conference on
Communications (ICC 2001), vol. 10, Helsinki, Finland, Jun. 2001, pp.
3201–3205.
[29] A. Nasipuri, R. Castañeda, and S. R. Das, “Performance of multipath
routing for on-demand protocols in mobile ad hoc networks,” Mobile
Networks and Applications, vol. 6, no. 4, pp. 339–349, Aug. 2001.
[30] Z. Ye, S. Krishnamurthy, and S. Tripathi, “A framework for reliable
routing in mobile ad hoc networks,” in Proc. 22nd Annual Joint
Conference of the IEEE Computer and Communications Societies, vol. 1,
Mar./Apr. 2003, pp. 270–280.
[31] M. K. Marina and S. R. Das, “On-demand multipath distance vector
routing in ad hoc networks,” in Proc. IEEE International Conference on
Network Protocols (ICNP), 2001, pp. 14–23.
[32] ——, “Ad hoc on-demand multipath distance vector routing,” Wireless
Communications and Mobile Computing, vol. 6, no. 7, pp. 969–988,
2006.
[33] G. Parissidis, V. Lenders, M. May, and B. Plattner, Next Generation
Teletraffic and Wired/Wireless Advanced Networking, ser. Lecture Notes
in Computer Science.
Springer Berlin / Heidelberg, 2006, vol.
4003/2006, ch. Multi-path Routing Protocols in Wireless Mobile Ad
Hoc Networks: A Quantitative Comparison, pp. 313–326.
[34] “Network simulator ns-2.” [Online]. Available: http://www.isi.edu/
nsnam/ns/
[35] A. Pirzada, M. Portmann, and J. Indulska, “Performance comparison of
multi-path aodv and dsr protocols in hybrid mesh networks,” in Proc.
14th IEEE International Conference on Networks (ICON’06), vol. 2,
2006, pp. 1–6.
[36] Y.-C. Hu and D. B. Johnson, “Caching strategies in on-demand routing
protocols for wireless ad hoc networks,” in Proc. 6th annual international conference on Mobile computing and networking (MobiCom’00).
New York, NY, USA: ACM, 2000, pp. 231–242.
[37] C. Newport, D. Kotz, Y. Yuan, R. S. Gray, J. Liu, and C. Elliott, “Experimental evaluation of wireless simulation assumptions,” SIMULATION,
vol. 83, no. 9, pp. 643–661, 2007.
Herunterladen