Realisierung einer Testumgebung für Ad-hoc-Netze

Werbung
Technische Universität Ilmenau
Institut für Informationstechnik
Fachgebiet Kommmunikationsnetze
Realisierung einer Testumgebung für Ad-hoc-Netze
Studienjahresarbeit
Marco Kramer
Betreuer:
Dipl.-Ing. Maik Debes, FG Kommunikationsnetze
Verantwortlicher Hochschullehrer:
Prof. Dr. Jochen Seitz, FG Kommunikationsnetze
INHALTSVERZEICHNIS
I
Inhaltsverzeichnis
1 Einleitung
1
2 Routing in Ad-hoc-Netzen
3
2.1
2.2
2.3
.
5
.
7
.
15
.
24
Weitere Routingalgorithmen . . . . . . . . . . . . . . . . . . . . . . . .
28
2.2.1
28
Unicast“ Routingalgorithmen (topologiebasiert) . . . . . . . . . . . .
”
2.1.1 Reaktive Routingalgorithmen ( Source-Initiated On-Demand“)
”
2.1.2 Proaktive Routingalgorithmen ( Table-Driven“) . . . . . . . .
”
2.1.3 Hybride Routingalgorithmen . . . . . . . . . . . . . . . . . . .
Unicast“ Routingalgorithmen (geographiebasiert) . . . . . . . .
”
2.2.2
Security“ Routingalgorithmen . . . . . . . . . . . . . . . . . .
”
Vergleich einiger Routingverfahren . . . . . . . . . . . . . . . . . . . .
3 Softwarekomponenten für Ad-hoc-Netze
3.1
Implementierungen der Routingprotokolle
30
32
. . . . . . . . . . . . . . . .
32
3.1.1
AODV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
3.1.2
ARAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
3.1.3
DSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
3.1.4
FSR-ATR“ . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
”
OLSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
Tools für Ad-hoc-Netze . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
3.2.1
51
3.1.5
3.2
30
3.2.2
3.2.3
APE ( Ad hoc Protocol Evaluation“) testbed“ . . . . . . . . .
”
”
Click! Modular Router“ . . . . . . . . . . . . . . . . . . . . . .
”
LUNAR“ ( Lightweight Underlay Network Ad hoc Routing“) .
”
”
45
52
54
INHALTSVERZEICHNIS
3.2.4
3.2.5
3.2.6
PACMAN“ ( Passive Autoconfiguration for Mobile Ad hoc
”
”
Networks“) und WNTE“ ( Wireless Network Topology Emu”
”
lator“) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ViTAN“ ( Visualization Tool for Ad Hoc Networks“) . . . . .
”
”
Zusammenfassung und Gegenüberstellung der Tools . . . . . . .
4 Konzeption der Testumgebung
II
55
55
57
60
4.1
Testabsichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
4.2
Verwendete Hardware- und Softwarekomponenten . . . . . . . . . . . .
61
4.3
Testaufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
4.4
Festlegen der Testpunkte und Definition der Ziele . . . . . . . . . . . .
66
4.4.1
Messungen zur erzeugten Netzlast . . . . . . . . . . . . . . . . .
66
4.4.2
Messungen bei Veränderung der Topologie . . . . . . . . . . . .
66
4.4.3
Messungen zur mittleren Übertragungsrate . . . . . . . . . . . .
66
4.4.4
Messungen mit unterschiedlichen Betriebssystemen . . . . . . .
66
4.4.5
Messungen mit unterschiedlichen Routingparametern . . . . . .
67
5 Realisierung einer Testumgebung
5.1
68
Verwendete Hardware- und Softwarekomponenten . . . . . . . . . . . .
68
5.1.1
Konfiguration der WLAN-Karte . . . . . . . . . . . . . . . . . .
68
5.1.2
Verwendete Implementierungen . . . . . . . . . . . . . . . . . .
69
5.1.3
Verwendete Tools für
5.1.4
Monitoring“ und zur Erfassung des
”
Network-Traffic“ . . . . . . . . . . . . . . . . . . . . . . . . . .
”
Verwendete Tools und Software zur Erzeugung von Netzwerk-
75
80
5.2
verkehr ( Network Traffic“) . . . . . . . . . . . . . . . . . . . .
”
Testaufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3
Testdurchführung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
5.3.1
5.3.2
81
Verwendete Hardware- und Softwarekomponenten für die Messungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
86
Beschreibung der Messungen . . . . . . . . . . . . . . . . . . . .
88
INHALTSVERZEICHNIS
III
6 Messungen und Ergebnisse
93
6.1
Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
6.2
Messungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
94
6.2.1
Messungen zur erzeugten Netzlast . . . . . . . . . . . . . . . . .
94
6.2.2
Messungen bei Veränderung der Topologie . . . . . . . . . . . .
99
6.2.3
Bewertung der mittleren Übertragungsrate . . . . . . . . . . . . 105
6.2.4
Messungen mit unterschiedlichen Betriebssystemen . . . . . . . 107
6.2.5
Messungen mit unterschiedlichen Routingparametern . . . . . . 110
7 Ausblick
114
8 Zusammenfassung
116
A Informationen zu den Softwarekomponenten
118
A.1 Implementierungen der Routingprotokolle
. . . . . . . . . . . . . . . . 118
A.1.1 AODV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
A.1.2 ARAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
A.1.3 DSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
A.1.4
FSR-ATR“ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
”
A.1.5 OLSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
A.2 Tools für Ad-hoc-Netze . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
B Hinweise zur realisierten Testumgebung
134
B.1 Verwendete Hardwarekomponenten . . . . . . . . . . . . . . . . . . . . 134
B.1.1 Überblick zu den Hardwarekomponenten . . . . . . . . . . . . . 134
B.1.2 Konfiguration der WLAN-Karte . . . . . . . . . . . . . . . . . . 138
B.2 Verwendete Softwarekomponenten . . . . . . . . . . . . . . . . . . . . . 144
B.2.1
B.2.2
B.2.3
B.2.4
B.2.5
AODV-UU“ (v0.9) . . . . .
”
Windows AODV“ (v0.1.14)
”
OLSRD“ (v0.48) . . . . . .
”
iPerf“ . . . . . . . . . . . .
”
FTP . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . 144
. . . . . . . . . . . . . . . . . . . . 144
. . . . . . . . . . . . . . . . . . . . 146
. . . . . . . . . . . . . . . . . . . . 147
. . . . . . . . . . . . . . . . . . . . 149
INHALTSVERZEICHNIS
C Veränderungen an den Softwaretools
IV
151
C.1 Modifikation von IPTraf“ . . . . . . . . . . . . . . . . . . . . . . . . . 151
”
C.2 Modifikation vom Network Traffic Monitor“ . . . . . . . . . . . . . . . 153
”
D Installationshinweise zu Click!“ und PACMAN“
157
”
”
D.1 Installationshinweise zu Click! Modular Router“ . . . . . . . . . . . . 157
”
D.2 Installationshinweise zu PACMAN“ . . . . . . . . . . . . . . . . . . . 159
”
E Inhalt des Datenträgers
160
Abbildungsverzeichnis
164
Tabellenverzeichnis
166
Abkürzungsverzeichnis
170
Literaturverzeichnis
174
Softwareverzeichnis
177
KAPITEL 1. EINLEITUNG
1
Kapitel 1
Einleitung
Drahtlose Mobile Ad-hoc-Netze, Mobile Ad-hoc Networks“ (MANETs), setzen sich
”
aus Knoten zusammen, die über Funk miteinander kommunizieren. Diese Netze
gewinnen durch die steigende Verbreitung von WLAN immer mehr an Bedeutung.
Die Kennzeichen der herkömmlichen Funknetze sind eine feste Infrastruktur und
zentrale Verwaltung. Die Knoten können nur mit Hilfe eines Zugangspunktes die
bestehende, feste Infrastruktur erreichen. Zum Aufbau einer Verbindung muss sich
der Knoten in der Funkreichweite des Zugangspunktes befinden.
Im Gegensatz zu den herkömmlichen Funknetzen sind Ad-hoc-Netz Multi-Hop“”
Netze, das bedeutet, dass die Kommunikation über die Reichweite einer Quelle hinaus
von anderen Knoten weitergeleitet wird. Die Verbindungen zwischen den Knoten
erfolgt Peer-to-Peer“ (PTP) und alle Knoten fungieren sowohl als Endsystem als
”
auch als Router. Die Netzstruktur von Ad-hoc-Netzen entsteht dynamisch durch
Selbstorganisation und Selbstverwaltung. Es existiert keine zentrale Instanz, durch
die das Routing oder die Netzstruktur festgelegt wird. Somit ist das Management in
Ad-hoc-Netzen verteilt. Bedingt durch die Mobilität der Knoten ist die Netzstruktur
zeitinvariant und die Topologie kann sich kontinuierlich verändern, was gegebenenfalls
neue Routen erfordert. Die meisten Routingverfahren verwenden zur Signalisierung
den
Beacon“-Mechanismus. Dieses Signal wird in regelmäßigen Abständen von
”
jedem Knoten versendet und somit kennt jeder Knoten seine direkten Nachbarn.
Alle Knoten im Netz verwenden dieselbe Frequenz, was natürlich zur Begrenzung
KAPITEL 1. EINLEITUNG
2
der Netzkapazität führt. Der Zugang zum Ad-hoc-Netz erfolgt durch Interaktion mit
anderen Knoten. In einem Ad-hoc-Netz können auch feste Knoten vorhanden sein,
die beispielsweise einen Zugang zu einem Festnetz besitzen.
Mögliche Beispielszenarien sind Konferenzen, Einsätze kleiner militärischer oder
ziviler Teams, Sensornetzwerke oder einfach frei bewegliche, unabhängige Knoten.
Diese Arbeit beschäftigt sich mit den momentan frei verfügbaren Softwarekomponenten und der Realisierung einer Testumgebung für Ad-hoc-Netze. Mit Hilfe der Testumgebung wird eine erste Bewertung der Implementierungen und dem Routing in diesen
Netzen vorgenommen. Da das Routing in Ad-hoc-Netzen problematisch ist, werden zu
Beginn die vorhandenen Routingprotokolle aufgezeigt und die Funktionsweise diskutiert.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
3
Kapitel 2
Routing in Ad-hoc-Netzen
In dem folgenden Kapitel werden Aussagen zum Routing in Ad-hoc-Netzen und zu
vorhandenen Routingprotokollen getroffen. Diese gewonnenen Informationen dienen
dem Verständnis und bilden die Grundlage für weitere Betrachtungen zum Routingverhalten.
Ad-hoc-Netze bestehen aus mobilen Geräten, die über Funk miteinander kommunizieren. Bedingt durch die Positionsveränderungen der mobilen Geräte kommt es zu
ständigen Rekonfigurationen der Netztopologie. Diese Netzdynamik stellt neue Herausforderungen an die Rountingverfahren. Im Internet werden die beiden Verfahren
Distance Vector Routing“ und Link State Routing“ verwendet. Für Ad-hoc-Netze
”
”
müssen diese beiden Verfahren entsprechend verändert und angepasst werden. In den
Ad-hoc-Netzen sind keine Router vorhanden, deshalb sollte jeder Knoten weiterleiten
können und mit mindestens einem Knoten in Verbindung stehen, der weiterleiten kann.
Dies wird aber durch die Netzdynamik und den damit verbundenen Veränderungen
erschwert.
Somit unterliegen die Routingprotokolle in Ad-hoc-Netzen wesentlich größeren Anforderungen als wie im Internet:
• Bandbreite:
Die Routingprotokolle in Ad-hoc-Netzen sollten schonend mit der Bandbreite
umgehen, denn diese ist wesentlich kleiner als die von Kabelnetzen.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
4
• Konvergenz:
Die Konvergenz ist die Fähigkeit, nach Veränderung der Topologie möglichst
schnell mit stabilen Routing fortzufahren. Dabei hängt das Konvergenzkriterium
in der Regel von denen im Netz vorhandenen Routern ab, d.h. je mehr Router
im Netz vorhanden sind, desto geringer ist die Konvergenz.
Neben den bereits genannten Anforderungen existieren verschiedene wünschenswerte
Eigenschaften der Routingprotokolle:
• Anpassen an den Bedarf für nicht gleich verteilte Netzlast:
Die Netzstruktur sollte nicht starr anhand von Verbindungen aufgebaut werden,
sondern auch an den entsprechenden Bandbreitenbedarf der einzelnen Verbindungen angepasst werden. Somit könnten stark frequentierte Netzbereiche entlastet werden, indem ein Datenpaket einen größeren Umweg bzw. eine andere
Route benutzt. Dies könnte wiederum zur Erhöhung der Geschwindigkeit beitragen. Aber diese Forderung ist an die QoS-Fähigkeit des Netzes gebunden.
• Energieeffizienz und Reichweite:
Mobile Geräte werden mit Hilfe von Batterien betrieben, die nur eine begrenzte
Lebensdauer besitzen. Deshalb sollte in einem Ad-hoc-Netz möglichst Energieeffizient gearbeitet werden, d.h. die Routingprotokolle sollten den Energieverbrauch und die Reichweite berücksichtigen. Sowohl die Datenmenge als auch die
Sendehäufigkeit sollten so gering wie möglich sein und für die Berechnung der
Routen sollten effiziente Algorithmen benutzt werden.
• Geringere Netzlast:
Diese Forderung ergibt sich auch aus der Anforderung in Hinblick auf Energieeffizienz und Reichweite. Außerdem ist die Bandbreite von mobilen Funkstrecken
wesentlich kleiner als die von Kabelnetzen und deshalb sollten die Routingprotokolle bandbreiteschonend sein.
• Quality of Service“ (QoS):
”
QoS ist die Gesamtheit von Merkmalen und Merkmalswerten, welche die Qua”
lität der Diensterbringer charakterisieren“ [Schneider and Werner, 2002]. QoS
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
5
gewinnt im Bereich der Netzwerke immer mehr an Bedeutung. Die Gewährleistung von QoS ist bei mobilen Netzen sehr schwierig, denn diese Netze besitzen Einschränkungen, wie beispielsweise bei Energie und Reichweite. Außerdem
besitzen Funknetze oft Störungen, die unberechenbar sind. In Ad-hoc-Netzen
gestaltet sich das Management recht schwierig, denn es existiert keine zentrale
Managementstation. Deshalb müssen die Zugriffs- und Routingtechniken für die
Einhaltung des QoS sorgen. Dies geschieht, indem die Routen so gewählt werden,
dass diese die Anforderungen erfüllen.
• Sicherheit:
Die Knoten eines Ad-Hoc-Netzes kommunizieren über Funk miteinander und die
Funkwellen bilden ein wesentliches Sicherheitsrisiko, denn diese sind sehr einfach
abzuhören und zu stören. Entsprechende Maßnahmen sind erforderlich, um den
Angriff von außen zu verhindern. Eine mögliche Lösung bietet die Verschlüsselung.
• Schleifenfreiheit:
Die Routingprotokolle sollten frei von Schleifen sein, dafür sind entsprechende
Mechanismen erforderlich. Die meisten Routingprotokolle erfüllen diese Anforderung.
2.1
Unicast“
”
basiert)
Routingalgorithmen
(topologie-
Diese Routingalgorithmen lassen sich in drei Gruppen unterteilen:
1. Reaktive Routingalgorithmen ( Source-Initiated On-Demand“),
”
2. Proaktive Routingalgorithmen ( Table-Driven“) und
”
3. Hybride Routingalgorithmen.
Die Abbildung 2.1 liefert einen Überblick zu den unterschiedlichen Algorithmen und
den dazugehörigen Routingverfahren.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
6
„Unicast“-Routingalgorithmen
„Unicast“-Routingalgorithmen
(topologiebasiert)
(topologiebasiert)
Proaktiv
ProaktivRoutingalgorithmen
Routingalgorithmen
(„Table-Driven“)
(„Table-Driven“)
Reaktiv
ReaktivRoutingalgorithmen
Routingalgorithmen
(„Source-Initiated
(„Source-InitiatedOn-Demand“)
On-Demand“)
DSDV à CGSR
WRP
FSR
OLSR
STAR
TBRPF
ABR à SSR
AODV
DSR
LMR à TORA
PAR
RDMAR
Abbildung 2.1: Unicast“ Routingalgorithmen
”
2002] & [Engel and Roth, 2005]
Hybrid
HybridRoutingalgorithmen
Routingalgorithmen
CBRP
CEDAR
FSR
ZRP
(topologiebasiert)
[Kasel,
Die Routingalgorithmen können auch in flache und hierarchische Protokolle unterteilt
werden. In kleineren Netzen werden die flachen Protokolle und in größeren Netzen die
hierarchischen Protokolle verwendet. Die hierarchischen Protokolle teilen das Netz in
so genannte Cluster“ ein und die Route wird nur entlang der Cluster“ bestimmt.
”
”
Die Routingalgorithmen in Ad-hoc-Netzen basieren auf zwei Verfahren:
1. Distance Vector Routing“
”
Bei den Routingverfahren, die auf dem Distance Vector Routing“ basieren,
”
speichert jeder Knoten eine Tabelle mit den besten Entfernungen (z.B. Anzahl
der Hops“) zu jedem Ziel und dem dazugehörigen Ausgang. Um die erforder”
lichen Informationen stets aktuell zu halten, versenden die einzelnen Knoten
regelmäßig die ihnen zur Verfügung stehenden Informationen zu der kürzesten
Route. Müssen Daten weitergeleitet werden, entscheidet sich der Knoten anhand
der ihm zur Verfügung stehenden Informationen für die beste Route.
2. Link State Routing“
”
Jeder Knoten versendet periodisch den Status seiner Links“ zusammen mit
”
dem vom Nachbarn empfangenen Link Status“. Dadurch kennt jeder Knoten
”
die gesamte Netztopologie. Die kürzeste Route zu jedem Knoten kann mit dem
Dijkstra´s Shortest Path First Algorithm“ ermittelt werden.
”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
2.1.1
7
Reaktive Routingalgorithmen ( Source-Initiated On”
Demand“)
Reaktive Routingalgorithmen versuchen, sobald ein Knoten Daten zu einem anderen
Knoten senden möchte, eine passende Route zu finden. Diese Route bleibt so lange
bestehen, bis die Datenübertragung beendet oder der Empfänger im Netz nicht mehr
erreichbar ist. Es werden nur Informationen über die lokalen Nachbarn gespeichert, die
so genannten Local State Informations“.
”
Bei den reaktiven Verfahren werden drei wesentliche Basisfunktionen ausgeführt:
1. Routenerstellung ( Route Discovery“)
”
Innerhalb dieser Phase wird versucht, eine passende Route zum Ziel zu finden.
2. Routenwartung ( Route Maintenance“)
”
In dieser Phase wird versucht, diese gefundene Route während des Gebrauchs
aufrecht zu halten und zu pflegen.
3. Löschen alter Routen.
Der Vorteil dieser Protokolle ist eine vergleichbar geringe Netzlast, denn nur für
benötigte Routen müssen Daten ausgetauscht werden. Nachteil ist die Zeitdauer beim
Verbindungsaufbau, denn eine passende Route muss erst gefunden werden.
Associativity-Based Routing“ (ABR)
”
ABR definiert eine neue Metrik für das Routing, die als Degree of Association Sta”
bility“ bekannt ist. Dieses Routingverfahren ist frei von Schleifen, Deadlocks“ und
”
Paketduplikaten. Die Routen werden anhand der assoziativen Knotenzustände so ausgewählt, dass diese langlebig sind. Zur Signalisierung, dass ein Knoten noch existiert,
sendet jeder Knoten ein periodisches Leuchtfeuer ( Beacon“). Empfängt der Nachbar”
knoten ein Beacon“, führt dieser ein Update“ seiner assoziativen Tabelle ( Assozia”
”
”
tivity Table“) durch. Für jeden empfangenen Beacon“ inkrementiert der Knoten den
”
Assoziativitätszähler ( Associativity Tick“) des Knotens, von dem er den Beacon“
”
”
empfangen hat. Assoziative Stabilität bedeutet Verbindungsstabilität eines Knotens
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
8
in Bezug zu anderen Knoten über Zeit und Raum. Ein hoher Wert des Assoziativitätszählers in Bezug auf einen Knoten zeigt einen niedrigen Zustand von Knotenmobilität an, während ein niedriger Wert einen hohen Zustand von Knotenmobilität
anzeigt. Der Assoziativitätszähler wird zurückgesetzt, wenn der Nachbarknoten oder
der Knoten selber die Nachbarschaft verlässt, d.h. sich aus der Reichweite bewegt. Die
grundlegende Zielsetzung von ABR ist das Finden von langlebigen Routen für Ad-hocNetze.
ABR ist ein Kompromiss zwischen Broadcast“ und Point-to-Point“ (PTP)-Routing,
”
”
und benutzt die verbindungsorientierte Paketweiterleitung. Die Auswahl der Route
basiert hauptsächlich auf den gesamten Assoziativitätszählern der Knoten entlang der
Route. Obwohl möglicherweise nicht die kürzeste Route erstellt wird, neigt diese zu
Langlebigkeit. Langlebige Routen ergeben weniger Routenrekonstruktionen und erbringen folglich höheren Durchsatz. Jedoch um die Assoziativität einer Route beizubehalten, beruht ABR auf der Tatsache, dass jeder Knoten regelmäßig Beacons“
”
versendet. Das Erzeugen dieser Beacons“ verursacht eine zusätzliche Netzlast.
”
Signal Stability Routing“ (SSR)
”
Dieses Routingprotokoll ist eine Weiterentwicklung von ABR. SSR verwendet als Routingmetriken die Signalstärke und die Mobilität der Teilnehmer. Ziel ist die Nutzung
von Routen mit großen Signalstärken. Da die Routenauswahl mit Hilfe des Algorithmus nicht unbedingt die kürzesten Routen, d.h. mit den wenigsten Hops“, wählt,
”
neigen diese zu mehr Beständigkeit und zu einer längeren Lebenszeit. SSR setzt sich
aus zwei Teilprotokollen zusammen:
• Dynamic Routing Protocol“ (DRP)
”
DRP wird zur Verwaltung der Signal Stability Table“ (SST) und Routing
”
”
Table“ (RT) verwendet. Die SST erfasst dabei die Signalstärken der Nachbarknoten. DRP nimmt alle empfangenen Pakete entgegen und passt die Tabellen
entsprechend an. Die Pakete werden danach an das Static Routing Protocol“
”
(SRP) weitergeleitet.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
9
• Static Routing Protocol“ (SRP)
”
Mit Hilfe von SRP werden die Pakete weitergeleitet und in den Stack abgelegt. Existiert keine Route zum Weiterleiten, wird ein Route Request“ (RREQ)
”
versendet. Dieser wird aber nur weitergeleitet, wenn er über ein starkes Signal
empfangen wird. Die Antwort wird vom Zielknoten auf demselben Weg zurückgesendet. Erhält die Quelle keine Antwort, so wird nach einem Timeout“ ein neuer
”
RREQ versendet. Beim Auftreten eines Fehlers wird die Quelle benachrichtigt
und mit Hilfe einer Erase Message“ werden alle Netzknoten informiert.
”
Ad-hoc On-Demand Distance Vector“ (AODV)
”
AODV minimiert die Anzahl der benötigten Broadcasts“, denn die Routen werden
”
nur bei Bedarf bestimmt. Die Routingtabellen werden nicht ständig aktualisiert und
komplett erstellt. Die Knoten, die nicht am Routing teilnehmen, führen kein Update“
”
ihrer Routinginformationen durch und tauschen auch keine Routinginformationen
aus. Beim Wegfall einer Route werden die Informationen nur an die Knoten gesendet,
welche diese benutzen. Dies ist vorteilhaft, denn häufig werden Routen nicht verwendet.
RREQ
B
E
RREQ
RREQ
RREQ
RREQ
RREQ
RREP
H
G
D
A
RREQ
RREP
RREP
RREP
RREQ
J
RREQ
I
F
C
RREQ
RREQ
RREQ
Abbildung 2.2: AODV-Beispiel: Route zwischen Knoten A und J [Tonnesen, 2004]
Die Abbildung 2.2 verdeutlicht den Routenaufbau bei AODV. Der Quellknoten A will
Daten zum Zielknoten J senden, kennt aber nicht die erforderliche Route und star-
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
10
tet deshalb den Route Discovery“-Prozess. Daraufhin wird per Broadcast“ das Netz
”
”
mit RREQ Messages“ geflutet. Über den Knoten H empfängt der Zielknoten J das
”
Paket und erzeugt ein Route Reply“ (RREP). Der RREP wird per Unicast“ an den
”
”
Quellknoten A über die ermittelte Route zurückgeschickt.
AODV verwendet Sequenznummern. Mit dem gesendeten RREQ erhöht jeder Knoten
seine Sequenznummer, somit sind zusammen mit der Knotenadresse die RREQs einzigartig. Wird ein RREQ doppelt empfangen, so wird dieser verworfen.
Die Routingtabelle wird also nur bei einer Anforderung einer Route gefüllt. Bewegt
sich ein Knoten oder kommt es zu einem Übertragungsfehler, wird eine Link Failure
”
Message“ versendet und der Mechanismus zur Ermittlung einer Route neu gestartet.
Kommt es zur Bewegung der Quelle, kann diese ebenfalls die Berechnung neu anstoßen.
Die Vorteile von AODV sind geringere Latenz und weniger Netzwerkverkehr.
Dynamic Source Routing“ (DSR)
”
Wenn die Quelle Daten senden will, aber die Route zum Ziel nicht kennt, wird der
Route Discovery“-Prozess gestartet. Die Quelle flutet per Broadcast“ das Netz
”
”
mit einer RREQ Message“, diese besitzt eine eindeutige ID ( Identifier“), Ziel”
”
und Quelladresse. Der RREQ-Prozess ist in der Abbildung 2.3 dargestellt. Mit Hilfe
„Route Request“ („Source“, „Destination“, „Hops“)
Route Cache
...
RREQ(1,5,{1,2,4})
Route Cache
...
Ziel
5
4
6
RREQ(1,5,{1,2})
RREQ(1,5,{1})
Quelle
1
Route Cache
...
2
Route Cache
...
RREQ(1,5,{1,2})
3
Route Cache
(3,5)>[3,6,5]
...
Abbildung 2.3: DSR - Route Request“ [Bahr, 2002]
”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
11
der ID werden Paketduplikate erkannt und verworfen. Beim Erhalten eines RREQs
vergleicht der entsprechende Knoten als erstes die Zieladresse mit seiner eigenen. Ist
es dieselbe, sendet der Knoten die Route mittels eines RREPs an die Quelle zurück.
Ist dieses Paket nicht für den Knoten bestimmt, existieren zwei Möglichkeiten, um
fortzufahren. Im ersten Fall hat der Knoten den Request“ mit dieser ID erst kürzlich
”
empfangen und verwirft das Paket. Im zweiten Fall ist es ein neuer Request“, der
”
Knoten fügt seine Adresse an die Route im RREQ und schickt diesen an alle seine
Nachbarn. Dies führt allerdings dazu, dass bei jeder Suche einer Route der RREQ im
ganzen Netzwerk verteilt wird ( Flooting“). Kennt ein Empfänger eine Route zum
”
Ziel oder erreicht die Message“ den Empfänger, wird die Route vervollständigt und
”
zurückgeschickt.
In der Abbildung 2.4 ist die Route Reply“-Phase dargestellt. Die Antwort des Ziel”
„Route Reply“ („Source“, „Destination“, „Sourceroute“)
Route Cache
(5,1) > {5,4,2,1}
(5,2) > {5,4,2}
(5,4) > {5,4}
...
Ziel
5
RREQ(5,1,{1,2,4,5})
Route Cache
...
4
6
RREQ(5,1,{1,2,4,5})
RREQ(5,1,{1,2,4,5})
2
RREQ(5,1,{1,2,3,6,5})
Quelle
1
Route Cache
(1,5) > {1,2,4,5},
{1,2,3,6,5}
...
Route Cache
(2,1) > {2,1}
(2,4) > {2,4}
...
3
Route Cache
(3,1) > {3,2,1}
(3,2) > {3,2}
(3,5) > {3,6,5}
...
Abbildung 2.4: DSR - Route Reply“ [Bahr, 2002]
”
knotens wird mit einer RREQ Message“ versendet. Dabei wird der RREP mit einem
”
neuen RREQ zur Quelle zurückgeschickt. Somit können sich Hin- und Rückweg unterscheiden, was eine Benutzung von unidirektionalen Verbindungen erlaubt.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
12
Lightweight Mobile Routing“ (LMR)
”
LMR gehört zur Klasse der Link Reversal Algorithmen“. Link Reversal Routing“
”
”
(LRR)-Verfahren verwenden die Graphentheorie, um eine Route zum Ziel zu ermitteln. Dabei wird von jedem Knoten je ein Graph für jeden möglichen Zielknoten erzeugt. Die Idee ist dabei, die Routingentscheidung mit Hilfe des Zielknotengraphen zu
treffen. Dazu werden so genannte Directed Acyclic Graphs“(DAGs) angewendet. Zur
”
Erstellung eines DAGs werden alle Netzknoten in den Graphen übertragen und die
Knoten, welche sich in Kommunikationsreichweite befinden, durch gerichtete Kanten
verbunden. Um eine Route zum Zielknoten zu finden, flutet die Quelle das Netz mit einem RREQ. Dieses Paket besitzt eine eindeutige ID und somit werden Paketduplikate
erkannt. Die Knoten, welche eine Route zum Zielknoten kennen, antworten mit einem
RREP. Der Link“, den die Knoten zum Zielknoten besitzen, wird als Downstream
”
”
Link“ bezeichnet. Ein großer Vorteil von LMR ist, dass keine globalen Verbindungsinformationen erforderlich sind. Jeder Knoten muss nur die Verbindungen zu seinen
Nachbarn kennen. Ein Nachteil ist, dass keine gemeinsame Zeitbasis vorausgesetzt
wird, was bei Link“-Fehlern zur Bildung falscher Routen führt und dann das Netz in
”
zwei Teile spaltet. Die Komplexität sowie die zusätzliche Netzlast führen zu längeren
Routen.
Temporally-Ordered Routing Algorithm“ (TORA)
”
TORA ist ein anpassungsfähiger, leistungsfähiger und skalierbarer Routingalgorithmus, der ebenfalls zur Klasse der LRR-Protokolle gehört.
TORA wurde für den Einsatz in hochdynamischen Netzen entwickelt und versucht, die
Anzahl der Control Messages“ zu minimieren, indem diese nur bei der Veränderung
”
der Netztopologie verwendet werden. Dazu müssen die Knoten Routinginformationen
zu ihren direkten Nachbarn speichern und verwalten. Der Quellknoten initialisiert die
Routenberechnung und für jedes realisierbare Quell- und Zielknotenpaar werden mehrere mögliche Routen bereitgestellt. Das Problem bei TORA ist, dass für das Protokoll
vorausgesetzt wird, dass alle Knoten über synchrone Uhren verfügen. Dies lässt sich
zum Beispiel über das Global Positioning System“ (GPS) verwirklichen.
”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
13
Die Vorteile von TORA sind die Erzeugung mehrerer Routen zum Ziel und die lokale
Behandlung von Störungen.
Power-Aware Routing“ (PAR)
”
Als Routingmetrik wird die Lebensdauer der Batterie verwendet. Von PAR wird angestrebt:
• den Energieverbrauch pro Paket herabzusetzen,
• die Zeit zu maximieren, bevor sich das Netz aufteilt,
• die Abweichungen in den Leistungspegeln (Knoten) zu minimieren und
• die Kosten pro Paket und die maximalen Kosten pro Knoten so gering wie
möglich zu halten.
Somit wählt PAR Routen aus, bei denen die Batterien der mobilen Geräte eine längere
Lebensdauer aufweisen.
Die Abbildung 2.5 verdeutlicht ein entsprechendes Beispiel. Die Quelle möchte Daten
zum Ziel senden, wofür zwei Routen zur Verfügung stehen. Der Knoten R2 der Route
A hat einen schnelleren Leistungsabfall als die Knoten der Route B. Somit währe es
sinnvoll, die Route B zu verwenden.
Route A
R1
„Source“
+
R2
-
+
Route B
+
„Destination“
-
+
-
-
R3
+
-
R4
+
-
Abbildung 2.5: PAR - Beispiel [Kasel, 2002]
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
14
Relative Distance Micro-discovery Ad Hoc Routing“ (RDMAR)
”
RDMAR wurde für die Einsparung von Bandbreite entwickelt. Die Relative Distance“
”
(RD) ist die voraussichtliche Anzahl von Hops“, welche benötigt werden, um ein Ziel
”
zu erreichen. Implementiert ist diese im TTL ( Time To Life“)-Feld eines IP-Headers.
”
RDMAR verwendet zur schnelleren Reparatur einen Relative Distance Estimation“
”
(RDE)-Algorithmus, der folgende Aufgaben besitzt:
• Schätzen der RD zwischen Quelle (SRC) und Ziel (DST).
• Schnelle Reparatur der lokalen Routen.
In der Abbildung 2.6 ist die Route Discovery“-Phase dargestellt. Die Quelle (MH4)
”
versendet einen limitierten Broadcast RREQ“ (RD=2). Das Ziel (MH8) bestätigt
”
den RREQ mit einem Unicast RREP“. Die Route Maintenance“-Phase ist in der
”
”
„Source“
MH 3
MH 6
MH 4
RREQ
RREQ
RREQ
RREQ
MH 9
MH 2
RREQ
RREP
MH 7
MH 5
RREQ
MH 1
RREP
MH 8
„Destination"
Abbildung 2.6: RDMAR - Route Discovery“ [Kasel, 2002]
”
Abbildung 2.7 dargestellt. Es kommt zur Veränderung der Netztopologie, der Knoten
MH5 erkennt die fehlerhafte Verbindung zum Knoten MH8 und löst einen Emergency
”
RDM“ ( Relative Distance Micro-discovery“) (RD=3) aus. Der Knoten MH8 teilt
”
dem Knoten MH5 seine neue Position mit und MH5 setzt die Datenübertragung zum
Knoten MH8 fort. Dabei wird der Knoten MH4 nicht über die Reparatur informiert.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
15
„Source“
MH 3
MH 6
DATA
DATA
MH 4
MH 9
MH 2
RREQ
RREP
RREP
DATA
RREQ
RREQ
RREQ
RREQ
RREQ
MH 5
DATA
MH 1
MH 7
RREQ
RREP
X
MH 8
MH 8
„Destination“
Abbildung 2.7: RDMAR - Route Maintenance“ [Kasel, 2002]
”
2.1.2
Proaktive Routingalgorithmen ( Table-Driven“)
”
Proaktive Routingalgorithmen erstellen eine Karte“ der Netztopologie ( Link State
”
”
Routing“) oder eine Liste der Entfernungen zu allen anderen Knoten ( Distance Vec”
tor Routing“). Diese werden immer aktuell gehalten, indem jeder Router alle Änderungen an alle seine Nachbarn weiterleitet. Dadurch ist gewährleistet, dass bereits
beim Verbindungsaufbau eine aktuelle Route in jedem Router vorhanden ist. Jeder
Knoten speichert für das gesamte Netz die Global State Informations“. Die für die
”
Aktualisierung notwendige Kommunikation erzeugt aber bereits eine hohe Netzlast.
Die einzelnen Routingprotokolle unterscheiden sich durch die Anzahl der verwendeten
Routingtabellen und den Methoden, Updates“ weiterzuleiten.
”
Destination-Sequenced Distance-Vector“ (DSDV)
”
DSDV basiert auf dem
Distance Vector“-Algorithmus bzw. dem Bellman-Ford”
”
Algorithmus“, der die kürzeste Route berechnet. Die kürzeste Route wird ermittelt,
indem jeder Knoten in einer Tabelle die Distanzen (Anzahl der Hops“) zu allen Nach”
barn abspeichert. Dabei sind aber Schleifen möglich, denn die Knoten können nicht
zwischen alten und neuen Routen unterscheiden. DSDV verwendet Sequenznummern
mit denen man zwischen unterbrochenen und neuen Routen unterscheiden kann. Ist die
Sequenznummer gerade, so handelt es sich um ein normales Update“, eine ungerade
”
Sequenznummer zeigt dagegen eine unterbrochene Route an. Regelmäßige Updates“
”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
16
sind erforderlich, um aktuelle Informationen zum Netz zu erhalten. Die Updates“
”
benötigen aber wiederum zusätzliche Bandbreite.
In der Abbildung 2.8 sind ein Beispielnetz und die entsprechende Routingtabelle des
Knotens 4 dargestellt. In der Routingtabelle sind alle vorhandenen Routen mit den
wichtigsten Informationen eingetragen, beispielsweise führt eine Route zum Knoten 3
über den Knoten 2 und die Entfernung beträgt 2 Hops“.
”
3
4
5
2
1
6
„Node 4 RT Structure”
8
7
„Destination“
„Next Hop“
„Metric“
(„Next Hop“)
„Sequence
Number“
1
2
2
S406_1
2
2
1
S128_2
3
2
2
S564_3
4
4
0
S710_4
5
6
2
S392_5
6
6
1
S076_6
7
6
2
S128_7
8
6
3
S050_8
„Flag“
Abbildung 2.8: DSDV - Routingtable“ [Ampadu and Perkins, 2003]
”
Die Tabellen werden auf zwei Arten aktualisiert:
1. Full Dump“
”
Die gesamte Tabelle des Knoten wird versendet. Alle Informationen sind enthalten und eventuell sind mehrere Datenpakete erforderlich.
2. Inkrementelles Update“
”
Die Inkrementellen Updates“, welche periodisch versendet werden, enthalten
”
nur die Änderungen seit dem letzten Full Dump“.
”
Die Route mit der aktuellen Sequenznummer wird immer zum Routing verwendet.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
17
Erhält ein Knoten zwei Updates“ mit der gleichen Sequenznummer, wird die Route
”
mit der kleinsten Metrik (Anzahl der Hops“) verwendet.
”
3
4
5
2
1
6
8
„Update Node 4 RT Structure”
7
1
„Destination“
„Next Hop“
„Metric“
(„Next Hop“)
„Sequence
Number“
„Flag“
1
6
3
S516_1
M
2
2
1
S238_2
3
2
2
S674_3
4
4
0
S820_4
5
6
2
S502_5
6
6
1
S186_6
7
6
2
S238_7
8
6
3
S160_8
Abbildung 2.9: DSDV - Update Routingtable“ [Ampadu and Perkins, 2003]
”
In der Abbildung 2.9 ist das Update“ einer Routingtabelle dargestellt. Der Knoten 4
”
führt ein Update“ seiner Routingtabelle durch, denn der Knoten 1 hat seine Position
”
verändert. Eine neue Route zum Knoten 1 wird in die Tabelle eingetragen. Die neuen
Sequenznummern sind gerade, denn es handelt sich um ein normales Update“.
”
Cluster-Head Gateway Switch Routing“ (CGSR)
”
Eine Weiterentwicklung von DSDV ist das Cluster-Head Gateway Switch Routing“
”
(CGSR). CGSR basiert auf DSDV und ist ein hierarchisches Routingprotokoll, welches das gesamte Netz in kleinere Cluster“ unterteilt. Diese Unterteilung führt zur
”
Vereinfachung des Routings, denn nur die so genannten Cluster Heads“ (CHs) besit”
zen die kompletten Routingtabellen. Der Cluster Head“ wird mit Hilfe des Cluster
”
”
Head Selection“-Algorithmus ermittelt. In Netzen mit sehr mobilen Knoten kommt es
oft zu einem aufwändigen Wechsel der Cluster Heads“. Aus diesem Grund verwen”
det CGSR den Least Cluster Change“ (LCC)-Algorithmus. LCC verändert nur dann
”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
18
den Cluster Head“, wenn zwei Cluster Heads“ in direkten Kontakt geraten oder
”
”
ein Knoten keinen Kontakt mehr zu irgendeinem Cluster Head“ erhält. Als Gate”
”
way Nodes“ werden die Knoten bezeichnet, die Verbindungen zu zwei oder mehreren
Cluster Heads“ besitzen. Für dieses Protokoll sind je Knoten zwei Tabellen erforder”
lich, die Cluster Member Table“ und die Routing Table“. In der Abbildung 2.10
”
”
5
4
1
3
6
8
2
7
Knoten
„Gateway“
„Cluster Head“
Abbildung 2.10: CGSR - Beispiel [Royer and Toh, 1999]
ist ein Beispiel dazu dargestellt. Die Quelle (Knoten 1) will an den Knoten 8 Daten
senden. Dazu sendet die Quelle ein RREQ an den Cluster Head“, Knoten 2. Dieser
”
sendet das Paket an den Gateway Node“, Knoten 3 und von dort aus wird das Paket
”
an den nächsten Cluster Head“, Knoten 4 gesendet. Der gesuchte Knoten befindet
”
sich nicht in diesem Cluster“ und das Datenpaket wird weitergeleitet, bis es den Des”
”
tination Cluster Head“, Knoten 7 erreicht. Dieser leitet dann das Datenpaket an den
Zielknoten, Knoten 9 weiter.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
19
Wireless Routing Protocol“ (WRP)
”
Jeder Knoten im Ad-hoc-Netz muss vier Tabellen speichern und verwalten:
• Distanztabelle
Diese beinhaltet für jeden Ziel- und Nachbarknoten die entsprechenden Distanzen. Die Daten werden in einer Matrix abgespeichert und dargestellt.
• Routingtabelle
In der Routingtabelle sind alle Informationen zu den Zielknoten enthalten.
• Link Cost“ Tabelle
”
Diese Tabelle beinhaltet die Transportkosten der Daten über jeden Nachbarknoten.
• Message Retransmission List“ (MRL)
”
Die MRL verwaltet die benötigten Daten für die Updates“, mit deren Hilfe die
”
Topologieveränderungen verbreitet werden. Dabei geben die Sequenznummern
das Alter der Daten an.
Mit Hilfe der Update Messages“ werden neue Knoten über ihre Nachbarn informiert.
”
Die Updates“ werden versendet, wenn der Knoten ein Update“ verarbeitet hat oder
”
”
wenn ein Knoten eine Veränderung seinen Nachbarknoten erkennt. Kommt es zum
Wegfall einer Verbindung, wird beim Update“ eine neue Route berechnet. Falls ein
”
Knoten keine Messages“ zu senden hat, muss dieser eine Hello Message“ verschi”
”
cken, um den anderen Knoten zu signalisieren, dass er das Netz noch nicht verlassen
hat. Wird innerhalb eines Timeouts“ keine Message“ empfangen, dann gilt diese
”
”
Verbindung als gestört.
Fisheye State Routing“ (FSR)
”
FSR beruht auf dem Link State Routing“ und es kann sofort Routinginformatio”
nen zur Verfügung stellen, wenn sie benötigt werden. In den Update Messages“ sind
”
nicht zu allen Knoten Informationen enthalten. Stattdessen werden Informationen über
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
20
Knoten, die sich in der näheren Umgebung befinden, häufiger ausgetauscht, als Informationen zu den Knoten, die weiter entfernt sind. Somit erhält jeder Knoten genaue
Informationen über seine Nachbarn und die Größe der Update Messages“ wird ver”
kleinert. Mit zunehmendem Knotenabstand nehmen die Genauigkeit und die Details
der Knoteninformationen ab. Selbst wenn ein Knoten keine genaue Information über
weit entfernte Knoten besitzt, werden die Pakete richtig weitergeleitet, denn die Routeninformationen werden immer genauer, je näher das Paket dem Bestimmungsort
kommt. Die Topologietabellen werden nur an die lokalen Nachbarn gesendet, anstatt
das komplette Netz zu fluten. Mit Hilfe von Sequenznummern wird ein schleifenfreies
Routing gewährleistet. Jeder Knoten besitzt eine Topology Table“, Neighbor Link
”
”
State List“ und Routing Table“.
”
„Hop“ = 1
„Hop“ = 2
3. Bereich
2. Bereich
1. Bereich
„Hop“ > 2
Abbildung 2.11: FSR - Beispiel [Thill, 2004]
In der Abbildung 2.11 sind die Bereiche innerhalb des Fischauges“ mit dem roten
”
Knoten im Zentrum dargestellt. Die Bereiche werden so definiert, dass sie über eine
bestimmte Anzahl von Hops“ erreichbar sind. Der Knoten im Zentrum besitzt alle
”
Informationen zu den Knoten im grauen Bereich (1. Bereich), dabei ist die Distanz
1 Hop“. Mit zunehmender Entfernung vom zentralen Knoten nimmt die Distanz zu
”
und die Knoten werden in die entsprechenden Bereiche eingeordnet.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
21
Optimized Link State Routing (OLSR)“
”
OLSR ist ein Link State“-Verfahren und die Distanzdaten werden direkt an alle Kno”
ten im Netz gesendet. Folgende 5 Schritte verdeutlichen den Ablauf:
1. Suchen der Nachbarknoten
Jeder Knoten versendet periodisch Hello Messages“.
”
2. Messung der Distanzen zu den Nachbarn
Der Knoten versendet Echo-Pakete an alle Nachbarknoten, die diese sofort beantworten müssen. Das Zeitintervall zwischen Echo-Paket und Antwort kann als
Distanz verwendet werden.
3. Erzeugen eines Kontrollpakets ( Topology Control (TC) Message“ )
”
Enthält die Knotenadresse, eine eindeutige Sequenznummer und eine Liste der
Nachbarn mit den entsprechenden Distanzen.
4. Senden des Kontrollpakets an alle Netzknoten (Fluten)
5. Erstellen eines Abbildes der Netzwerktopologie
Wenn ein Knoten das Kontrollpaket erhält, erstellt er eine eigene Routingtabelle.
Mit Hilfe des Shortest Path Algorithm“ kann der Knoten die Routen zu jedem
”
Knoten, mit dem er kommunizieren möchte, erstellen. Wenn ein Knoten das Kontrollpaket mit der Sequenznummer schon einmal erhalten hat, wird es verworfen.
In der Routingtabelle werden alle Routen zu den Nachbarknoten gespeichert. Ein
Update“ der Informationen findet nur statt, wenn:
”
• eine Veränderung in der Nachbarschaft erkannt wurde,
• die Route zu einem Ziel beendet wurde,
• eine bessere (kürzere) Route, zu einem Ziel, gefunden wurde.
OLSR basiert auf den so genannten Multipoint Relays“ (MPRs). Die MPRs sind
”
ausgewählte Nachbarknoten (1 Hop“), die besondere Aufgaben bei der Weiterleitung
”
von Kontrollpaketen übernehmen. Die MPRs sollten so ausgewählt werden, dass jeder
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
22
Nachbarknoten im Umkreis von 2 Hops“ von mindestens einem MPR abgedeckt wird.
”
Dabei sollte aber die Anzahl der MPRs minimal sein.
N2
N1
MPR(N2) N6
MPR(N2)
N3
N(N2)
N7
N8
N9
N4
N2(N2)
N10
•
•
•
•
•
•
•
•
N5
N(Ni) - die Menge der Nachbarn von Ni
N(N ) - die Menge der Nachbarn von Ni
N2(Nii) - die Menge der Knoten, die von N
N2(N ) - die Menge der Knoten, die von Ni i
exakt i2 Schritte entfernt sind
exakt 2 Schritte entfernt sind
MPR(Ni) - die Menge der Nachbarknoten von Ni,
MPR(N ) - die Menge der Nachbarknoten von Ni,
die von Ni i als „Multipoint Relays“ ausgewählt wurden
die von N als „Multipoint Relays“ ausgewählt wurden
MPRsel(Ni)i - die Menge der Nachbarknoten von Ni,
MPRsel(Ni) - die Menge der Nachbarknoten von Ni,
die Ni als „Multipoint Relays“ ausgewählt haben
die Ni als „Multipoint Relays“ ausgewählt haben
Abbildung 2.12: OLSR - Beispiel [Schlesser, 2004]
In der Abbildung 2.12 ist das Routing mit OLSR dargestellt. Jeder Knoten im Netz,
in diesem Beispiel Knoten N2, wählt einige Nachbarknoten aus. Diese Knoten werden
Knoten N2’-Pakete versenden. Die Knoten N1 und N6 sind die MPRs vom Knoten
N2. Ein Knoten, der kein MPR ist, kann das gesendete Paket von N2 zwar lesen, kann
aber nichts an N2 senden.
MPRs minimieren das Fluten des Netzwerkes mit Broadcast Messages“. Ein Kon”
trollpaket sollte nicht zweimal in dieselbe Netzwerkregion versendet werden. MPRs
helfen, dieses Problem zu optimieren und zu reduzieren.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
23
Source Tree Adaptive Routing (STAR)“
”
STAR war das erste proaktive Routingprotokoll, welches mit Link State Routing“
”
gearbeitet hat und schneller als die On-Demand“ Protokolle war. Es werden aber
”
nicht die kürzesten Routen verwendet, um die Control Messages“ niedrig zu halten.
”
Zur Identifikation eines Knotens wird eine feste Adresse verwendet. Ein großer Vorteil
besteht aber darin, dass keine regelmäßigen Updates“ nötig sind. Zu Beginn liegt
”
ein Source-Tree“ vor, der alle Links“ zu jedem Nachbarknoten beinhaltet. Im ers”
”
ten Aktualisierungsschritt wird der eigene Source-Tree“ sofort als Aktualisierung an
”
allen anderen Nachbarn gesendet. So kann jeder Router mit seinem eigenen Source”
Tree“ gebildet werden und man erhält einen Topologiegraphen, der das gesamte Netz
beschreibt. Diese Aktualisierungen bestehen aus einem oder mehreren Link State Up”
date Units“ (LSUs).
Alle
Update“-Informationen sind Broadcast“-Informationen. Muss eine Aktua”
”
lisierung gesendet werden, wird zwischen Optimum Routing Approach“ (ORA)
”
und Least Overhead Routing Approach“ (LORA) unterschieden. Eine ORA”
Aktualisierung ist nur erforderlich, wenn die Router ihre eigenen Source-Trees“
”
verändern. LORA wird ausgeführt und eine Aktualisierung wird gesendet, wenn:
• der Empfänger unerreichbar ist,
• ein neuer Empfänger entdeckt wird,
• wenn Schleifen entstehen,
• die Metrik der Links“ das Limit überschreiten.
”
Zur Prüfung gültiger Updates“ werden Sequenznummern verwendet. Ein Router sen”
det ein Update“, wenn:
”
• eine Route erkannt wird, die in einer Schleife endet,
• ein neuer Nachfolger für einen Router gewählt wird,
• die Entfernung zum Empfänger über den gewählten Nachfolger wesentlich größer
ist als die alte.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
24
Topology Dissemination Based On Reverse-Path Forwarding“ (TBRPF)
”
TBRPF ist vorteilhaft, wenn eine große Anzahl von Routen benötigt wird und für
Anwendungen, die keine Verzögerung der Route Discovery“ tolerieren.
”
TBRPF ist ein Full Topology Link State Protocol“, d.h. jeder Knoten erhält
”
Informationen zum Zustand jeder Verbindung.
TBRPF setzt sich aus zwei Modulen zusammen:
1. Routing (inklusive Topology Discovery“):
”
Jeder Knoten berichtet allen Nachbarn nur über einen Teil seines Quellbaums,
der als Reportable Subtree“ (RT) bezeichnet wird.
”
2. Neighbor Discovery“:
”
Unterschiedliche HELLOs“ werden verwendet, die nur die ID von neuen und
”
kürzlich verlorenen Nachbarn beinhalten. Die Neighbor Discovery“-Phase ist
”
völlig modular. Diese dient lediglich der Erkennung von neuen Nachbarn und
dem Verlust alter Nachbarn.
2.1.3
Hybride Routingalgorithmen
Hybride Routingalgorithmen versuchen das Beste von reaktiven und proaktiven Verfahren zu verbinden. Deshalb verhalten sich die Router in einer beschränkten Umgebung wie bei einem proaktiven Protokoll, um kurze Antwortzeiten bei der Kommunikation mit nahe gelegenen Knoten zu garantieren. Bei Anfragen zu weit entfernten
Knoten wird reaktiv eine Route durch mehrere Zonen bestimmt. Im Vergleich zu reaktiven Routingalgorithmen ist die Netzlast nur geringfügig höher. Die Dauer eines
Verbindungsaufbaus ist unwesentlich länger als bei proaktiven Verfahren.
Cluster Based Routing Protocol“ (CBRP)
”
CBRP ist ein Routingverfahren, welches mit Hilfe des Algorithmus die Knoten in
Cluster“ einteilt. Kommt ein neuer Knoten, dessen Zustand Undecided“ ist, hin”
”
zu, ist dessen erste Handlung das Starten eines Timers“ und des Versenden einer
”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
25
Hello Message“. Wird diese Hello Message“ von einem Cluster Head“ (CH) emp”
”
”
fangen, antwortet dieser mit einer ausgelösten Hello Message“. Erhält der Knoten
”
diese Antwort, wird sein Zustand in Member“ geändert. Erhält der Knoten aber kei”
ne Nachricht von den Cluster Heads“, wird er selber ein Cluster Head“, aber nur
”
”
dann, wenn bidirektionale Verbindungen zu einem oder mehr Nachbarn existieren. Besitzt der Knoten keine Verbindung zu anderen Knoten, so verbleibt er im Zustand
Undecided“ und wiederholt die gesamte Prozedur. Dabei sollten die Cluster Heads“
”
”
so wenig wie möglich verändert werden.
Jeder Knoten besitzt eine Tabelle mit den entsprechenden Nachbarn. In der Tabelle 2.1
ist ein Beispiel einer Nachbartabelle dargestellt. In der ersten Spalte befindet sich die
ID, in der zweiten der Neighbor Status“ und in der dritten Spalte der Link Status“.
”
”
Neighbor ID“
”
1
3
5
9
Neighbor Status“
”
Member“
”
Member“
”
Cluster Head“
”
Member“
”
Link Status“
”
Bi-Directional“
”
Uni-Directional“
”
Bi-Directional“
”
Bi-Directional“
”
Tabelle 2.1: CBRP - Nachbartabelle [Foetz, 2004]
Ein Cluster Head“ besitzt folgende Tabelleneinträge:
”
• Die Informationen zu den im Cluster“ vorhanden Members“.
”
”
• Eine Cluster“-Nachbarschaftstabelle mit Informationen zu den benachbarten
”
Clustern“, d.h. das Gateway“ zum Cluster“ und die ID des Cluster Heads“.
”
”
”
”
In der Abbildung 2.13 ist ein Beispielszenario dargestellt. Der Quellknoten (SRC) will
ein Datenpaket an den Zielknoten (DST) senden. Dazu versendet die Quelle ein RREQ
an den benachbarten Cluster Head“ CH0. Dieser überprüft, ob sich der Zielknoten in
”
diesem Cluster“ befindet. Da der gesuchte Knoten nicht in diesem Cluster vorhanden
”
ist, speichert der Cluster Head“ seine Adresse im Paket und leitet es an alle Cluster
”
”
Heads“ weiter. Erhält ein Cluster Head“ ein Paket, in dem seine Adresse gespeichert
”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
26
N7
N4
CH2
N1
G0
CH3
G3
DST
N3
N6
G2
CH0
SRC
G1
N0
SRC „Source“
CH1
DST „Destination“
N2
CH
„Cluster Head“
G
„Gateway“
N
„Node“
Abbildung 2.13: CBRP - Beispiel [Foetz, 2004]
ist, wird es verworfen. Der Cluster Head“ CH3 erkennt, dass sich der gesuchte Ziel”
knoten (DST) in seinem Cluster“ befindet. Daraufhin leitet er den RREQ an den
”
Zielknoten weiter. Hat das Ziel das Paket erhalten, antwortet es über die Route, die
im RREQ gespeichert ist. Wenn die Quelle nach einer bestimmten Zeit keine Antwort
vom Ziel erhält, versucht sie erneut, ein RREQ zu senden.
Core Extraction Distributed Ad hoc Routing“ (CEDAR)
”
Es wird eine Gruppe ( Set“) von Knoten erstellt, die als Core“ bezeichnet werden.
”
”
Jeder Knoten wählt einen Core“-Knoten als Dominator“. Die Auswahl des Domina”
”
”
tor“-Knotens erfolgt nach dem Grad der wegführenden Verbindung. Die Verbindungszustände werden weiter verbreitet ( Link State Propagation“). Die stabilen und band”
breitestarken Verbindungen sollen auch weit entfernten Knoten bekannt sein. Dagegen
sollten die schwachen und dynamischen Verbindungen nur lokal gespeichert werden.
Die Auswahl der Routen erfolgt unter Berücksichtigung von QoS, den ein Link“ zur
”
Verfügung stellen kann.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
Quelle
27
Ziel
1
2
„Core Node“
„Bi-directional Link“
„Node“
„Virtual Link“
Abbildung 2.14: CEDAR - Route Computation“ [Gao, 2003]
”
In der Abbildung 2.14 ist die Route Discovery“-Phase dargestellt. Die Quelle leitet
”
die Anforderung an seinen Dominator“ (Knoten 1) weiter. Der Knoten 1 findet im
”
Core“-Netz eine Route zum Knoten 2, welcher der Dominator“ vom Ziel ist. Die
”
”
Core“-Knoten erstellen mit Hilfe der lokalen Informationen eine Route zwischen der
”
Quelle und dem Ziel.
Zone Routing Protocol (ZRP)“
”
ZRP besteht im Wesentlichen aus drei Teilprotokollen (s. Abbildung 2.15):
IARP
IARP
IERP
IERP
BRP
BRP
„Zone
„ZoneRouting
RoutingProtocol“
Protocol“
„Inter-Process
Communication“
„Packet Flow“
„Network
„NetworkLayer“
Layer“
„MAC
„MACLayer“
Layer“(„includes
(„includesNDP“)
NDP“)
Abbildung 2.15: ZRP - Aufbau [Kasel, 2002]
1. Intrazone Routing Protocol“ (IARP):
”
IARP verwendet Link State“-Verfahren und übernimmt die Nachrichtenüber”
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
28
mittlung innerhalb der Zone. Nur Routen für einen begrenzten Bereich um die
Station werden aktuell und im Voraus präsent gehalten.
2. Interzone Routing Protocol“ (IERP):
”
IERP verwendet Distance Vector“-Verfahren und übernimmt die Nachrich”
tenübermittlung zwischen zwei unterschiedlichen Zonen.
3. Bordercast Resolution Protocol“ (BRP):
”
Die Distance Vector“-Verfahren werden verwendet. BRP arbeitet im Gegensatz
”
zu Broadcast“ viel effizienter. Jeder Station ist bekannt, ob sich der gesuchte
”
Knoten in der Routingzone befindet. Wenn nicht, reicht es aus, die Anfrage
an die Border“-Knoten weiterzuleiten. BRP legt fest, wie die Border“-Knoten
”
”
ermittelt werden. Die Border“-Knoten werden während der Aktivität des IARPs
”
gefunden.
Zur Ermittlung einer Route überprüft die Quelle zunächst, ob sich das Ziel in der
gleichen Zone befindet. Ist dies der Fall, so ist die Route bereits bekannt und die
Daten können sofort gesendet werden. Befindet sich aber das Ziel außerhalb der Zone,
wird eine Suchanfrage an alle Border“-Knoten der Quelle verschickt. Mit Hilfe der
”
Border“-Knoten wird die Zone ermittelt, in der sich das Ziel befindet. Wird das Ziel
”
gefunden, sendet dieses eine Antwort mit der Route an die Quelle.
2.2
2.2.1
Weitere Routingalgorithmen
Unicast“ Routingalgorithmen (geographiebasiert)
”
Geographisches Routing stellt einen alternativen Ansatz des Routings in MANETs
unter Einbezug von Informationen über die geographische Position von Netzknoten
dar. Dabei basiert das Routing auf modifizierten Routingtabellen, die den Netzknoten
approximativ eine geographische Position zuweisen. Die Routingtabelle ist somit eine
Liste von Tupeln der Form N,posn“ für Netzknoten N“ und ihre Position posn“.
”
”
”
Das Routing im Netz orientiert sich dabei an minimalen Distanzvektoren bzgl. der
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
29
erreichbaren Nachbarknoten und dem Zielknoten. In der Abbildung 2.16 ist ein Routingprozess auf Grundlage graphischer Informationen dargestellt. Die Quelle (Knoten
1) will ein Datenpaket an den Zielknoten (Knoten 3) schicken. In der Routingtabelle
vom Knoten 1 sind alle vorhanden Routen enthalten. Der Zielknoten kann über zwei
Routen erreicht werden. Zum Routing verwendet dieser Algorithmus Routen, welche
die kürzeste Distanz zum Nachbarknoten aufweisen. Nach der Berechnung wird deutlich, dass das Routing über den Knoten 2 erfolgt, denn dieser weist die geringste
Distanz zum Zielknoten auf.
dist(4,3) = 2,8284..
4
„Destination“
3
„Source“
1
„Routing Table“
(2,<2,1>)
(4,<1,4>)
(3,<3,2>)
2
dist(2,3) = 1,4142..
Abbildung 2.16: Routing auf Grundlage geographischer Informationen [Bahr,
2002]
Location-Aided Routing“ (LAR)
”
LAR ist ein On-Demand“-Protokoll und basiert auf DSR. Es werden Positionsin”
formationen benutzt, um den Netzwerkverkehr in Ad-hoc-Netzen zu reduzieren. Normalerweise wird GPS benutzt, um diese Positionsinformationen zu erhalten. Mit der
Verfügbarkeit von GPS kennen die mobilen Knoten ihre physischen Positionen. LAR
zählt zu den auf Fluten basierenden Verfahren, d.h. die Route Discovery“ erfolgt
”
durch Fluten des Netzwerkes.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
2.2.2
30
Security“ Routingalgorithmen
”
Authenticated Routing for Ad hoc Networks“ (ARAN)
”
ARAN ist ein On-Demand“ Routingprotokoll, welches Zertifikate für garantierte Au”
thentifikation, Nachrichtenintegrität und Unleugbarkeit von Routingprotokollen verwendet. Basierend auf Logical Link Metric“ und den Zertifikaten, ist es gegen eine
”
Modifikation, Nachahmung und Erstellung von Routingnachrichten geschützt. Jeder
Knoten, der ein RREQ oder ein RREP weiterleitet, muss dieses signieren. Die verwendete asymmetrische Kryptographie führt zu einer größeren CPU ( Central Processing
”
Unit“)-Auslastung und zu einem höheren Energieverbrauch. ARAN ist aber nicht immun gegen Wurmattacken“.
”
2.3
Vergleich einiger Routingverfahren
In der Tabelle 2.2 sind einige Routingprotokolle mit ausgewählten Eigenschaften dargestellt. Der Vergleich einiger Routingverfahren soll dazu dienen, die Gemeinsamkeiten
und die Unterschiede der Protokolle darzustellen. Weiterhin können Aussagen über die
Einhaltung von Anforderungen und wünschenswerten Eigenschaften getroffen werden.
Um einen Vergleich vorzunehmen, werden neben grundsätzlichen Eigenschaften, wie
Aussagen zur Routenbestimmung und Einteilung in flache/hierarchische Protokolle,
auch Aussagen zu den Anforderungen und wünschenswerten Eigenschaften, in diesem
Fall QoS, Schleifenfreiheit und Multicast“, verwendet. Die Tabelle macht deutlich,
”
dass die Schleifenfreiheit von den meisten Protokollen gewährleistet ist. Die Schleifenfreiheit ist eine wesentliche Anforderung an die Routingprotokolle in Ad-hoc-Netzen.
Hingegen werden QoS und Multicast“ nur von sehr wenigen Routingprotokollen
”
unterstützt. AODV bietet Multicast“ und mit Aussatz QoS. Neben AODV bietet
”
RDMAR ebenfalls Multicast“ und mit einem Aufsatz bieten die beiden Verfahren,
”
CGSR und TORA ebenfalls eine Multicast“-Unterstützung an. QoS wird momentan
”
nur von ABR und ZRP unterstützt.
KAPITEL 2. ROUTING IN AD-HOC-NETZEN
Verfahren
Routen-
Schleifen-
QoS
31
Flach/
bestimmung freiheit
Hierarchisch
DSDV
Proaktiv
Ja
Flach
CGSR
Proaktiv
Ja
Hierarchisch
WRP
Proaktiv
Ja
( Cluster“)
”
Flach
FSR
Proaktiv
Ja
Hierarchisch
OLSR
Proaktiv
Ja
Flach
STAR
Proaktiv
Ja
Flach
TBRPF
Proaktiv
Nein
Flach
ABR
Reaktiv
Ja
SSR
Reaktiv
Ja
Flach
AODV
Reaktiv
Ja
Mit Auf- Flach
Ja
Multicast“”
Unterstützung
Mit Aufsatz
Flach
Ja
satz
DSR
Reaktiv
LMR
Reaktiv
TORA
Reaktiv
PAR
Reaktiv
RDMAR
Reaktiv
CBRP
Hybrid
CEDAR
Hybrid
ZRP
Hybrid
Ja
Flach
Flach
Ja
Ja
Flach
Mit Aufsatz
Flach
Ja
Flach
Hierarchisch
Ja
Ja
Hierarchisch
Tabelle 2.2: Vergleich einzelner Routingverfahren [Kasel, 2002], [Bornträger,
2002] & [Engel and Roth, 2005]
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
32
Kapitel 3
Softwarekomponenten für
Ad-hoc-Netze
Dieses Kapitel gibt eine grobe Übersicht über freie Softwarekomponenten für Ad-hocNetze im Internet. Es enthält einige Quellen zu diesem Thema, die auch Software für
die unterschiedlichsten Betriebssysteme, größtenteils Linux OS, anbieten. Leider sind
diese Quellen schlecht dokumentiert und aufgrund deren Aktualisierungsdatums hat
es den Anschein, dass die Entwicklung bei den meisten Implementierungen nicht mehr
fortgesetzt wird.
3.1
3.1.1
Implementierungen der Routingprotokolle
AODV
In den nachfolgenden Tabellen sind die vorhandenen AODV-Implementierungen mit
ausgewählten Eigenschaften dargestellt. Die detaillierten Angaben zu jeder einzelnen
Implementierung sind im Anhang A.1.1 zu finden. Anhand der ausgewählten Eigenschaften, wie beispielsweise Anforderungen an das System und die Software, können
die verschiedenen Implementierungen miteinander verglichen werden. Auffällig ist,
dass einige Implementierungen keine fortschreitende Weiterentwicklung erfahren, was
zu Problemen auf neueren Systemen führen kann.
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
33
In der Tabelle 3.1 sind die Linux-OS-Implementierungen dargestellt, die kein IPv6 und
Multicast“ unterstützen. Die Systemanforderungen sind im Wesentlichen identisch,
”
d.h. eine WLAN-Karte und das entsprechende Betriebssystem sind bei allen Implementierungen erforderlich. Die Implementierungen AODV Kernel“ [4], AODV-UCSB“
”
”
( University of California, Santa Barbara“) [5] und AODV-UICU“ ( University
”
”
”
of Illinois at Urban-Champaign“) [6] basieren nur auf Linux 2.4.x, hingegen kann
AODV-UU“ ( Uppsala University“) [7] bereits für Linux 2.6.x verwendet werden. Eine
”
”
wichtige Systemanforderung bei allen Implementierungen ist der Netfilter-Support“,
”
der im Kernel vorhanden sein muss. Die beiden Implementierungen AODV Kernel“
”
und AODV-UIUC“ besitzen weitere Anforderungen. Für AODV Kernel“ ist zusätz”
”
lich Packet Forwarding“ erforderlich und AODV-UIUC“ benötigt, neben Loadable
”
”
”
Module Support“ und TUN/TAP-Support“, als Softwarekomponente die Ad-hoc
”
”
Support Library“ (ASL) [1].
AODV-UIUC“ unterstützt ein einfaches Application Programming Interface“ (API)
”
”
und diese Implementierung arbeitet als User-Space-Daemon“. Anhand der Angaben
”
wird deutlich, dass AODV-UU“ wesentliche Vorteile gegenüber den anderen Imple”
mentierungen besitzt und diese wird auch ständig weiterentwickelt. AODV-UU“ kann
”
auch im Network Simulator 2“ (ns2) [29] verwendet werden. Von den in der Tabel”
le 3.1 dargestellten Implementierungen sind AODV Kernel“ und AODV-UU“ funk”
”
tionsfähig. Dagegen ist AODV-UIUC“ nicht funktionsfähig und die Verwendung von
”
AODV UCSB“ wird, laut Angaben der Internetquelle, nicht mehr empfohlen.
”
RFCs und Drafts:
AODV Kernel“ [4]
”
draft-ietf-manet-aodv-10 [IETF,
AODV-UCSB“ [5]
”
AODV-UIUC“ [6]
”
2002b];
AODV-UU“ [7]
”
draft-ietf-manet-aodv-13 [IETF,
2003b];
draft-perkins-aodv6-01
[IETF,
RFC 3561 [IETF, 2003d]
2000a]
Betriebssystem:
Linux OS
Linux OS
Linux OS
Linus OS
Systemanforderungen:
Linux 2.4.1;
Linux 2.4.1;
Linux 2.4.3;
Linux 2.4.x/2.6.x;
WLAN-Karte;
WLAN-Karte;
WLAN-Karte;
WLAN-Karte;
Netfilter“;
”
Packet Forwarding“
”
Netfilter“
”
Netfilter“, Loadable Module
”
”
Support“ und TUN/TAP Sup”
port“’
Netfilter“
”
Softwareanforderungen:
Sonstige Eigenschaften:
ASL [1]
von den Entwicklern mit 3 Kno-
einfaches API;
Internet Gateway Support“;
”
User-Space-Daemon“
”
User-Space-Daemon“;
”
für Einsatz in der Ad hoc Pro”
tocol Evaluation (APE) test-
ten (2 Hops“) getestet
”
bed“ [9] entwickelt;
sowohl für WLAN-“Interface“
als auch für übliche Netzwerk“Interface“ einsetzbar;
Verwendung im ns2 [29];
von den Entwicklern mit 5 KnoFunktionsfähig:
Ja
Keine Aussage
Nein
ten (4 Hops“) getestet
”
Ja
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
Tabelle 3.1: Übersicht zu den AODV-Implementierungen (1)
34
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
35
In der Tabelle 3.2 sind die vorhandenen Implementierungen dargestellt, die IPv6 bzw.
Multicast“ unterstützen. Dabei ist auffällig, dass einige dieser Implementierungen
”
auf AODV-UU“ aufbauen und diese entsprechend mit IPv6 bzw. Multicast“ er”
”
weitern. Lediglich HUT AODV for IPv6“ [18] entwickelt an der Helsinki Univer”
”
sity of Technology“ (HUT) ist eine eigenständig Implementierung und benötigt kein
AODV-UU“. Die Systemanforderungen von AODV IPv6“ [3] und AODV-UU for
”
”
”
IPv6“ [8] sind fast identisch, lediglich Packet Forwarding“ ist noch für AODV-UU for
”
”
IPv6“ erforderlich. Diese Implementierung bietet außerdem einen zusätzlichen Layer“
”
für IP-Version-Abstraktion“. Multicast“ wird lediglich von MAODV“ ( Multicast
”
”
”
”
Extensions of AODV“) [28] zur Verfügung gestellt. Diese Implementierung basiert wiederum auf AODV-UU“. Die Multicast“-Unterstützung kann mit Hilfe eines Flags“
”
”
”
im Makefile“ aktiviert bzw. deaktiviert werden. Im aktuellen Draft [IETF, 2003b] sind
”
entsprechende Flags“ für Multicast“ reserviert. MAODV“ stellt keine besonderen
”
”
”
Anforderungen an das System, lediglich AODV-UU“ muss vorhanden sein. Von den in
”
der Tabelle 3.2 dargestellten Implementierungen sind AODV IPv6“ und MAODV“
”
”
funktionsfähig. Die Funktionsfähigkeit von AODV-UU IPv6“ und HUT AODV for
”
”
IPv6“ konnte in den ersten Tests nicht nachgewiesen werden. Bei beiden Implementierungen treten Probleme mit dem Kernel auf.
RFCs und Drafts:
AODV IPv6“ [3]
”
draft-ietf-manet-aodv-10 [IETF,
AODV-UU for IPv6“ [8]
”
RFC 3561 [IETF, 2003d]
HUT AODV for IPv6“ [18]
”
RFC 3561 [IETF, 2003d];
MAODV“ [28]
”
draft-ietf-manet-maodv-
2002b];
00 [IETF, 2000b]
draft-perkins-aodv6-01
[IETF,
draft-perkins-manet-aodv6-
2000a];
01 [IETF, 2000a];
draft-wakikawa-manet-globalv6-
draft-wakikawa-manet-globalv6-
02 [IETF, 2002c]
02 [IETF, 2002c]
Betriebssystem:
Linux OS
Linux OS
Linux OS
Linux OS
Systemanforderungen:
Linux OS;
Linux 2.4.x/2.6.x;
Linux 2.4.3;
Linux OS;
WLAN-Karte;
WLAN-Karte;
WLAN-Karte
WLAN-Karte
Netfilter“
”
Netfilter“;
”
Packet Forwarding“
”
AODV-UU“v0.9 [7]
”
IPv6-Unterstützung;
IPv6-Unterstützung;
zusätzlicher
unterstützt Eigenschaften der
Softwareanforderungen:
Sonstige Eigenschaften:
AODV-UU“ v0.5 [7]
”
IPv6-Unterstützung;
User-Space-Daemon“;
”
Layer“ für IP”
”
Version-Abstraktion“, iplib“
”
Spezifikation,
abgesehen
Hop-to-Hop“;
”
unterhält
Kernel-Routing”
von
AODV-UU“ v0.6/v0.72 [7]
”
Multicast“-Unterstützung;
”
-DMAODV
Flags“
im
”
Makefile“
zur
Aktivie”
rung/Deaktivierung von Multi”
cast“;
kein Multicast“ und QoS
”
noch nicht im ns2 [29] integriert
Nein
Ja
Table“
Funktionsfähig:
Ja
Nein
Tabelle 3.2: Übersicht zu den AODV-Implementierungen (2)
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
36
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
37
In dieser Tabelle 3.3 sind die Implementierungen dargestellt, die auf Tiny OS oder MS
Windows aufbauen. Zu TinyAODV“ existieren kaum Aussagen und somit ist ein Ver”
gleich mit den beiden anderen Implementierungen nicht möglich. Lediglich Aussagen
zur Vereinfachung der AODV-Implementierung sind vorhanden, wie beispielsweise:
• RREP Message“ wird nur durch Destination“ erstellt,
”
”
• Routen sterben nicht bzw. laufen nicht ab,
• nur Hop Count Metric“ und
”
• Route Error“, wenn Data Message“ nichtzustellbar.
”
”
UoB JAdhoc“( Java Ad-hoc“), entwickelt an der University of Bremen“ (UoB) und
”
”
”
Windows AODV“ sind die beiden einzigen AODV-Implementierungen, die für MS
”
Windows verfügbar sind. Zusätzlich kann UoB JAdhoc“ auch unter Linux OS einge”
setzt werden. Beim Vergleich dieser beiden Implementierungen wird deutlich, dass für
UoB JAdhoc“ weitere Softwarekomponenten erforderlich sind:
”
• Linux OS:
Java Runtime Enviroment“ (JRE) [23] oder Java 2 Software Development
”
”
Kit“ (SDK) [22], Libpcap“ [26] und Jpcap“ ( Java Package for Packet Cap”
”
”
ture“) [24] .
• MS Windows:
JRE [23] oder SDK [22], WinPcap“ ( Windows Packet Capture“) [47] und
”
”
Jpcap“ [24].
”
• Zaurus Linux:
Cross-Compiler“ ( gcc“) für ARM Prozessor.
”
”
Hingegen sind die Anforderungen von Windows AODV“ relativ gering, aber diese
”
Implementierung kann nur unter MS Windows XP verwendet werden. Aussagen zur
Funktionsfähigkeit von TinyAODV“ sind nicht möglich, denn Tiny OS stand nicht zur
”
Verfügung. Die Funktionsfähigkeit von UoB JAdhoc“ und Windows AODV“ konnte
”
”
nachgewiesen werden.
TinyAODV“ [43]
UoB JAdhoc“ [44]
”
RFC 3561 [IETF, 2003d]
Windows AODV“ [46]
”
RFC 3561 [IETF, 2003d]
Betriebssystem:
Tiny OS
MS Windows;
MS Windows
Systemanforderungen:
WLAN-Karte
Linux OS:
RFCs und Drafts:
Linux OS
Linux Kernel mit “IP:advanced router“
MS Windows XP;
WLAN-Karte
MS Windows 2000/XP;
WLAN-Karte
Softwareanforderungen:
Linux OS:
JRE [23] oder SDK [22], Libpcap“ [26]
”
und Jpcap“ [24]
”
MS Windows:
JRE [23] oder SDK [22], WinPcap“ [47]
”
und Jpcap“ [24]
”
Zaurus Linux:
Cross-Compiler“ ( gcc“) für
”
”
ARM Prozessor
Sonstige Eigenschaften:
verschiedene Vereinfachungen der AODV-
IPv4-Unterstützung
verwendet UDP/IP-Port 654
Ja
Ja
Implementierung
Funktionsfähig:
Keine Aussage
Tabelle 3.3: Übersicht zu den AODV-Implementierungen (3)
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
38
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
39
In der Tabelle 3.4 sind alle AODV-Implementierungen dargestellt und es werden entsprechende Aussagen zur Funktionsfähigkeit getroffen.
Implementierung
Funktionsfähig
AODV IPv6“
”
AODV Kernel“
”
Ja
Nein
Begründung
Die aktuelle Version ist nicht funktionsfähig,
denn es existieren Probleme mit dem Inter”
face“. Aber v2.1.0 [4] ist funktionsfähig.
AODV-UCSB“
”
Nein
Keine Aussage, denn die Verwendung wird
nicht mehr empfohlen!!
AODV-UIUC“
”
Nein
Trotz ASL [1] nicht funktionsfähig. Beim Erstellen der Software treten Probleme auf.
AODV-UU“
”
AODV-UU for IPv6“
”
Ja
Nein
Diese
Implementierung
ist
nicht
funkti-
onsfähig, denn es existieren Probleme mit dem
Kernel.
Hut AODV for IPv6“
”
Nein
Die Funktionsfähigkeit konnten nicht nachgewiesen werden, denn es kommt zu Problemen
mit dem Kernelmodul.
MAODV“
”
TinyAODV“
”
Ja
Keine Aussage
Eine Aussage zur Funktionsfähigkeit ist nicht
möglich, denn zum Zeitpunkt der Test lag kein
Tiny OS vor.
UoB JAdhoc“
”
Ja
Diese Implementierung ist funktionsfähig, aber
nach den ersten Tests wird die Verwendung
nicht mehr empfohlen!!
Windows AODV“
”
Ja
Tabelle 3.4: AODV-Implementierungen - Aussagen zur Funktionsfähigkeit
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
3.1.2
40
ARAN
Für die Verwendung von ARAN muss
arand“ [10] und ein X.509-Zertifikat auf
”
jedem Knoten des Ad-hoc-Netzes installiert werden. X.509 [IETF, 2002d] ist ein
ITU-T ( International Telecommunication Union-Telecommunication Standardizati”
on“)-Standard für eine Public Key Structure“ und stellt derzeit den wichtigsten Stan”
dard für die digitalen Zertifikate dar. Zusätzlich werden dem Anwender zwei weitere
Tools bereitgestellt:
• arandview“:
”
arandview“ [10] ist ein Graphical User Interface“ (GUI), welches die Überwa”
”
chung von arand“ ermöglicht.
”
• aranca“:
”
arance“ [10] stellt eine Einhüllung“ um die OpenSSL“ ( Secure Socket Layer“)
”
”
”
”
Kommandozeilenprogramme zur Verfügung. Dies dient der Entwicklung von
Certifcate Authorities“ (CA).
”
Implementierung:
ARAN [10]
Betriebssystem:
Linux OS
Drafts und RFCs:
Systemanforderungen:
x86 PC/Laptop;
Linux 2.4.x;
WLAN-Karte;
X.509-Zertifikat auf jedem Knoten
Softwareanforderungen:
OpenSSL Library“;
”
ASL [1]
Sonstige Eigenschaften:
Funktionsfähig:
Nein
Tabelle 3.5: Übersicht zu ARAN
ARAN (s. Tabelle 3.5) wurde für Linux OS entwickelt und benötigt als zusätzliche
Softwarekomponenten die OpenSSL Library“ und ASL [1]. Die Funktionsfähigkeit
”
von ARAN kann nicht nachgewiesen werden. Genaue Angaben und die Spezifikation
zu ARAN sind im Anhang A.1.2 zu finden.
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
3.1.3
41
DSR
Für DSR existiert nur eine kleine Anzahl von Implementierungen, die in der Tabelle 3.6
dargestellt sind. In der Tabelle sind neben den Anforderungen und den allgemeinen
Eigenschaften auch Aussagen zur Funktionsfähigkeit enthalten. Spezifische und
detaillierte Angaben zu den einzelnen Implementierungen sind im Anhang A.1.3 zu
finden.
Die
dargestellten
DSR-Implementierungen
den
unterstützten
Betriebssystemen.
unterscheiden
sich
bereits
bei
Während
DSR (Insignia)“ [13] und
”
DSR (Monarch)“ [14] nur für FreeBSD ( Berkeley Software Distribution“) konzipiert
”
”
sind, kann DSR (UC-Boulder-Click!)“ [16] nur für Linux OS verwendet werden.
”
Die Implementierung DSR (Piconet)“ [15] ist sowohl für Linux OS als auch für
”
BSD OS konzipiert. Für DSR (Insignia)“ und DSR (Monarch)“ wird FreeBSD
”
”
2.2.7/3.3 benötigt. Für DSR (Insignia)“ sind zusätzliche MAC-Filter und einige
”
Softwarekomponenten erforderlich. Diese beiden Implementierungen besitzen eine
Vielzahl von Eigenschaften, die in der Tabelle A.8 dargestellt sind. DSR (Piconet)“
”
bietet als einzige DSR-Implementierung die Handheld“-Unterstützung, dafür sind
”
aber entsprechende Softwarekomponenten erforderlich. Ein wesentlicher Unterschied
zwischen
DSR (UC-Boulder-Click!)“ und den anderen DSR-Implementierungen
”
besteht darin, dass DSR (UC-Boulder-Click!)“ [16] nur in Verbindung mit der
”
Click! Modular Router“-Software [11] funktionsfähig ist. Zusätzlich zu der Click!
”
”
Modular Router“-Software werden die Wireless Tools“ [48] benötigt. Zu den beiden
”
auf FreeBSD basierenden Implementierungen sind keine Aussagen möglich, denn zum
Zeitpunkt der Tests stand FreeBSD nicht zur Verfügung. Die ersten Tests mit DSR
”
(Piconet)“ konnten die Funktionsfähigkeit nicht bestätigen, denn beim Erstellen der
Software treten Probleme auf. DSR (UC-Boulder-Click!)“ ist von den vorgestellten
”
Implementierungen die einzige, die funktionsfähig ist. Es sind aber umfangreiche
Veränderungen am Kernel erforderlich.
DSR (Insignia)“ [13]
”
draft-ietf-manet-insignia-
DRS (Monarch)“ [14]
”
draft-ietf-manet-dsr-01
01 [IETF, 1999]
1998]
Betriebssystem:
FreeBSD
FreeBSD
Linux OS/BSD OS;
Systemanforderungen:
FreeBSD 2.2.7;
FreeBSD 2.2.7/3.3;
Linux 2.4.3;
Linux 2.4.2;
x86 Laptop;
x86 Laptop;
x86 PC;
x86 PC/Laptop;
WLAN-Karte (Lucent);
WLAN-Karte
RFCs und Drafts:
DSR (Piconet)“ [15]
”
[IETF,
DSR (UC Boulder-Click!)“ [16]
”
draft-ietf-manet-dsr-08 [IETF,
2003a]
Linux OS
UNIX-like OS
Softwareanforderungen:
WLAN-Karte (Lucent Orinoco);
WLAN-Karte;
MAC-Filter
H3600 Series Compaq iPAQ;
DSR Kernel Source Code“ [13];
”
Netfilter“
”
Cross Compiler“ und Varios
”
”
Tools“ für iPAQ;
Wireless Tools“ [48];
”
Kernel Tap“-Option
”
Click!
Modular
”
v1.2.4 [11];
INSIGNIA Kernel Source Co”
de“ [13];
INSIGNIA
”
de“ [13];
Sonstige Eigenschaften:
GUI-API
0.20 iPAQ/Linux Distribution“
”
oder Familiar Linux Distributi”
on“ 0.4
Co-
Tcl/Tk“ 8.0
”
basiert auf der CMU Implemen-
zwei Phasen Route Discovery“;
”
IPv4-Unterstützung;
GUI mit Kontrolle von API;
Handheld“-Unterstützung
”
tierung von DSR;
nur in Verbindung mit
Click!
”
Modular Router“ [11] funktionsfähig
einfacher
QoS-Benachrichti-
gungsmechanismus;
Funktionsfähig:
Router“
MPEG I Video Header Parser
”
Tool“ ;
Route-Cache“;
”
GUI mit Kontrolle von API;
Multi-Level Priority Interface
”
Queues“;
MPEG TV“
”
Keine Aussage
Paket rettent
Keine Aussage
Nein
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
Ja
Tabelle 3.6: Übersicht zu den DSR-Implementierungen
42
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
43
In der Tabelle 3.7 sind alle DSR-Implementierungen dargestellt und es werden entsprechende Aussagen zur Funktionsfähigkeit getroffen.
Implementierung
Funktionsfähig
Begründung
DSR (Insignia)“
”
Keine Aussage
Eine Aussage zur Funktionsfähigkeit ist nicht
möglich, denn zum Zeitpunkt der Tests war
kein FreeBSD verfügbar.
DSR (Monarch)“
”
Keine Aussage
Ebenfalls keine Aussage, denn zum Zeitpunkt
DSR (Piconet)“
”
Nein
Die Funktionsfähigkeit konnte nicht nachge-
der Tests war kein FreeBSD verfügbar.
wiesen werden, denn beim Kompilieren treten
Fehler auf.
DSR (UC Boulder-Click!)“
”
Ja
Diese Implementierung ist funktionsfähig, aber
nur in Verbindung mit Click! Modular Rou”
ter“ [11]!!
Tabelle 3.7: DSR-Implementierungen - Aussagen zur Funktionsfähigkeit
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
3.1.4
44
FSR-ATR“
”
Zum Zeitpunkt der Recherchen existierte nur diese eine Implementierung von FSR.
FSR-ATR“ ( Advanced Telecommunications Researche“) [17] (s. Tabelle 3.8) basiert
”
”
mit den folgenden Veränderungen auf draft-ietf-manet-fsr-03 [IETF, 2002a]:
• Länge des Feldes Destination Sequence Number“ (Draft: 24 bits, Implementie”
rung: 16 bits),
• Länge des Feldes N neighbors“ (Draft: 8 bits, Implementierung: 16 bits) und
”
normal Dijkstra“ statt modifiziert-“Dijkstra“ zur Berechnung der Routen
”
Die Gründe für diese Veränderungen werden aber nicht aufgezeigt.
Implementierung:
Betriebssystem:
FSR-ATR“ [17]
”
Linux OS
RFCs und Drafts:
draft-ietf-manet-fsr-03 [IETF, 2002a]
Systemanforderungen:
x86 PC/Laptop;
Linux 2.2.x/2.4.x/2.6.x;
WLAN-Karte (Lucent Orinoco);
H3600 series Compaq iPAQ;
Softwareanforderungen:
Netfilter“
”
Linux Cross Compiler“ und Various Tools“
”
”
0.20 iPAQ/Linux für iPAQ;
0.20 iPAQ/Linux Distribution“ oder Famili”
”
ar Linux Distribution“ 0.40
Sonstige Eigenschaften:
IPv4-Unterstützung;
Unterschiede zu draft-ietf-manet-fsr-03 [IETF,
2002a]
Funktionsfähig:
Ja
Tabelle 3.8: Übersicht zu FSR-ATR“
”
Diese Implementierung ist für Linux OS konzipiert und erfordert zusätzlich den
Netfilter-Support“. FSR-ATR“ kann auch für Handhelds“ verwendet werden, da”
”
”
zu sind aber zusätzliche Softwarekomponenten erforderlich. Diese Implementierung
wird weiterentwickelt und somit ist die Funktionsfähigkeit unter neueren Linux OSVersionen gewährleistet. Erste Tests mit FSR-ATR“ konnten die Funktionsfähigkeit
”
nachweisen. Detaillierte Angaben zu dieser Software sind im Anhang A.1.4 zu finden.
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
3.1.5
45
OLSR
Die in den Tabellen 3.9 und 3.10 dargestellten OLSR-Implementierung sind nur für
Linux OS konzipiert. Beim Vergleich der Systemanforderungen wird deutlich, dass
bei allen Implementierungen nur geringe Anforderungen existieren. Für alle sind eine
WLAN-Karte und das entsprechende Linux OS erforderlich. Für crc-nolsrdv6“ [12],
”
inria-nolsrd“ [19] und OLSRv3 (Inria)“ ( Institut National De Recherche En Infor”
”
”
matique Et En Automatique“) [37] wird zusätzlich IP-Forward“ benötigt. Weiter”
hin benötigt PyOLSR“ ( Python OLSR“) [41] XFree86“. Fast alle Implementierun”
”
”
gen verwendet den UDP-Port 698. QOLSR“ ( QoS for OLSR“) [42] ist die einzige
”
”
Implementierung, die IPv6 und QoS bietet. crc-nolsrdv6“, inria-nolsrd“, OLSRv3
”
”
”
(Inria)“, OLSR EXTRA“ [36] und PyOLSR“ sind nach den ersten Tests nicht funk”
”
tionsfähig. Speziell bei OLSRv3 (Inria)“ treten Fehler beim Kompilieren auf, diese
”
weisen auf Probleme mit dem gcc“ hin. Die Funktionsfähigkeit von QOLSR“ konnte
”
”
nur mit IPv4 nachgewiesen werden.
Implementierung:
crc-nolsrdv6“ [12]
”
inria-nolsrd“ [19]
”
draft-ietf-manet-olsr-03 [IETF, 2000c]
Betriebssystem:
Linux OS
Linux OS
Systemanforderungen:
Linux 2.x.x;
Linux 2.x.x;
WLAN-Karte;
WLAN-Karte;
IP-Forward“
”
IP-Forward“
”
Sonstige Eigenschaften:
Modifikation des Inria OLSR Source”
Codes“
IPv4-Unterstützung;
Funktionsfähig:
Nein
Nein
RFCs und Drafts:
Softwareanforderungen:
verwendet UDP-Port 698
Tabelle 3.9: Übersicht zu den OLSR-Implementierungen (1)
RFCs und Drafts:
OLSRv3 (Inria)“ [37]
”
draft-ietf-manet-olsr-03 [IETF,
OLSR EXTRA“ [36]
”
PyOLSR“ [41]
”
RFC 3626 [IETF, 2003e]
QOLSR“ [42]
”
RFC 3626 [IETF, 2003e]
Betriebssystem:
Linux OS
Linux OS
Linux OS
Linux OS
Systemanforderungen:
Linux 2.x.x;
Linux OS;
Linux OS;
Linux 2.4;
WLAN-Karte;
WLAN-Karte
WLAN-Karte;
WLAN-Karte
2000c]
IP-Forward“
”
XFree86“
”
IPv4-Unterstützung;
verwendet UDP-Port 698
Softwareanforderungen:
Sonstige Eigenschaften:
gcc“ v3.0
”
IPv4- und IPv6-Unterstützung;
verwendet UDP-Port 698;
verwendet UDP-Port 698;
User-Space-Daemon“;
”
keine Modifikation des Kernels
bietet QoS;
erforderlich
Notification“
kein Support für
Considerations“
Funktionsfähig:
Nein
Nein
Keine Aussage
Tabelle 3.10: Übersicht zu den OLSR-Implementierungen (2)
Ja
Link Layer
”
und
Security
”
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
46
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
47
Die OLSR-Implementierungen, die sowohl unter MS Windows als auch Linux OS
verwendet werden können, sind in der Tabelle 3.11 dargestellt. Wiederum sind die
Anforderungen an das System sehr gering, lediglich das entsprechende Betriebssystem
und eine WLAN-Karte werden benötigt. Für
OLSR (GRC, UPV)“ ( OLSR ”
”
Grupo de Investigaciòn de Redes de Computadores, Universidad Politèchnica de
Valencia“) [33] ist unter Linux OS zusätzlich IP-Forward“ und die PICA ( Pro”
”
”
tocol Implementation Specific API“)-Library“ [40] erforderlich. Von OOLSR“ [38]
”
werden für Linux OS die beiden Softwarekomponenten g++“ v2.95/3.3 und glibc“
”
”
v2.3.2. benötigt. OLSR (GRC, UPV)“ bietet Pocket-PC“-Unterstützung. Von den
”
”
vorgestellten Implementierungen bietet OOLSR“ IPv4-Unterstützung unter MS
”
Windows, IPv4- und IPv6-Unterstützung unter Linux OS, Cygwin-Support“ und
”
kann im ns2 [29] eingesetzt werden. OOLSR“ ist aber unter Linux OS nur mit
”
IPv4 funktionsfähig. Da für die Tests kein Cygwin“ zur Verfügung stand, können
”
keine Aussagen zur Funktionsfähigkeit unter MS Windows getroffen werden. Die
Implementierungen nrlolsrd“ [32], OLSR (GRC, UPV)“ und OLSRD“ ( OLSR
”
”
”
”
Daemon“) [35] sind unter beiden Betriebssystem, d.h. Linux OS und MS Windows,
funktionsfähig.
OLSR (GRC, UPV)“ [33]
”
RFCs und Drafts:
nrlolsrd“ [32]
”
RFC 3626 [IETF, 2003e]
OLSRD“
”
RFC 3626 [IETF, 2003e]
OOLSR“ [38]
”
RFC 3626 [IETF, 2003e]
Betriebssystem:
Linux OS;
Linux OS;
Linux OS;
Linus OS;
MS Windows
MS Windows
MS Windows
MS Windows
Linux OS;
Linux 2.x.x;
Linux OS;
Linux OS:
MS Windows;
MS Windows;
MS Windows;
WLAN-Karte
WLAN-Karte;
WLAN-Karte
g++“ v2.95/3.3,
”
glib“ v2.3.2
”
MS Windows 2000/XP und CE
Systemanforderungen:
IP-Forward“
”
ARM;
WLAN-Karte
Softwareanforderungen:
PICA Library“ [40]
”
IPv4-Unterstützung;
Sonstige Eigenschaften:
IPv4- und IPv6-Unterstützung
für Linux OS;
Pocket-PC“-Unterstützung;
”
IPv4-Unterstützung
Windows;
verwendet UDP-Port 698
Funktionsfähig:
Ja
Ja
Cygwin Support“;
”
ns2-Unterstützung
Ja
Tabelle 3.11: Übersicht zu den OLSR-Implementierungen (3)
Ja (teilweise)
für
MS
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
48
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
49
OLSR11win (GRC)“ [34] und nOLSR“ [31] sind nur unter MS Windows anwendbar.
”
”
Diese beiden Implementierungen mit den entsprechenden Eigenschaften sind in der
Tabelle 3.12 aufgeführt. Beide Implementierungen haben lediglich als Systemanforderungen das Betriebssystem und eine WLAN-Karte. Für OLSR11win (GRC)“ ist
”
zusätzlich die Software WinPcap“ [47] erforderlich. Beide Implementierungen sind
”
funktionsfähig und auffällig ist die Ähnlichkeit.
Implementierung:
RFCs und Drafts:
nOLSR“ [31]
”
RFC 3626 [IETF, 2003e]
OLSR11win (GRC)“ [34]
”
draft-ietf-manet-olsr-11 [IETF, 2003c]
Betriebssystem:
MS Windows
MS Windows
Systemanforderungen:
MS Windows;
MS Windows;
WLAN-Karte
WLAN-Karte
Softwareanforderungen:
WinPcap“ [47]
”
Sonstige Eigenschaften:
Funktionsfähig:
Ja
Ja
Tabelle 3.12: Übersicht zu den OLSR-Implementierungen (4)
Von allen dargestellten Implementierungen fällt ein besonderes Augenmerk auf
OLSRD“ (s. Tabelle 3.11). Diese Implementierung ist sowohl in Linux OS als auch
”
MS Windows anwendbar. Die Entwickler stellen entsprechend neuere und verbesserte
Versionen zur Verfügung. Die OLSR-Community“ biete hilfreiche Unterstützung, bei
”
Fragen und Problemen zu OLSRD“. Eine praktische Anwendung erfolgt beim Frei”
funkt.Net [fre, ].
Detaillierte und spezifische Angaben zu jeder vorgestellten Implementierung sind im
Anhang A.1.5 zu finden. In der Tabelle 3.13 sind alle OLSR-Implementierungen dargestellt und es werden entsprechende Aussagen zur Funktionsfähigkeit getroffen.
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung
Funktionsfähig
crc-nolsrdv6“
”
inria-nolsrd“
”
Ja
Nein
50
Begründung
Diese Implementierung ist unter Linux OS
nicht funktionsfähig. Es treten Probleme beim
Kompilieren und Erstellen der Software auf.
nOLSR“
”
nrlolsrd“
”
OLSR (GRC, UPV)“
”
OLSRD“
”
OLSRv3 (Inria)“
”
Ja
Ja
Ja
Ja
Nein
Diese
Implementierung
ist
nicht
funkti-
onsfähig, denn es treten Probleme beim Kompilieren und Erstellen der Software auf.
OLSR11win (GRC)“
”
OSRD EXTRA“
”
Ja
Nein
Diese
Implementierung
ist
nicht
funkti-
onsfähig, denn beim Erstellen der Software treten Probleme auf.
OOLSR“
”
Ja
Diese Implementierung ist unter Linux OS nur
mit IPv4 funktionsfähig. Zum Zeitpunkt der
Tests ist keine Aussage zur Funktionsfähigkeit
unter MS Windows möglich, denn Cygwin“
”
stand nicht zur Verfügung.
PyOLSR“
”
Keine Aussage
Keine Aussagen zur Funktionsfähigkeit, denn
zum Zeitpunkt der Tests stand Python“ nicht
”
zur Verfügung.
QOLSR“
”
Ja
Diese Implementierung ist unter Linux OS nur
mit IPv4 funktionsfähig.
Tabelle 3.13: OLSR-Implementierungen - Aussagen zur Funktionsfähigkeit
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
3.2
3.2.1
51
Tools für Ad-hoc-Netze
APE ( Ad hoc Protocol Evaluation“) testbed“
”
”
Innerhalb der APE Linux Distribution“ [9] können Tests durchgeführt und Daten
”
gesammelt werden. APE“ ist ein Softwarepaket und kann ohne Neupartitionierung
”
oder komplizierte Installationsverfahren in einem vorhandenen Linux OS oder MS
Windows mit der DOS-Unterstützung installiert werden. Die APE Distribution“ ist
”
bereits vorkonfiguriert und enthält Werkzeuge für die Datenerfassung, sowohl auf der
IP als auch auf der Ethernetschicht. Mit Hilfe des APE Source-Codes“ können ei”
gene APE Distributionen“ erstellt werden. Im Source-Code“ sind Analysewerkzeuge
”
”
für die Auswertung der ermittelten Daten enthalten. In APE“ sind momentan die
”
folgenden Routingprotokolle implementiert:
• AODV-UU“,
”
• Mad-hoc AODV“,
”
• OLSR (INRIA)“,
”
• LUNAR“ ( Lightweight Underlay Network Ad-hoc Routing“),
”
”
• TORA (University of Maryland, College Park)“ und
”
• DSR (Universität von Queensland)“.
”
Neben den bereits implementierten Protokollen können weitere Routingprotokolle integriert werden. Es existieren folgende APE-Tools“:
”
1. Mackill“
”
Mackill“ ist ein MAC-Filter, mit dem verschiedene Verbindungskonfigurationen
”
in Ad-hoc-Netzen durchgeführt werden.
2. Analysis“
”
Die Analyse-Tools dienen der einfachen Analyse von:
• Virtueller Beweglichkeit,
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
52
• Konnektivität,
• Verbindungsänderung,
• Hop“-Zählung,
”
• Routenoptimierung und
• Ping“-Erfolgsverhältnis.
”
3. APE-View:“
”
APE-View“ ist ein protokollgesteuertes Animationstool.
”
3.2.2
Click! Modular Router“
”
Mit Hilfe von Click!“ [11] können flexible und konfigurierbare Router erstellen wer”
den. Die Click! Router“ besitzt einen modularen Aufbau und die gesamte Konfigura”
tion wird durch einen gerichteten Graphen dargestellt. Jeder Knoten dieses Graphen
ist ein Element, welches einfache Routingfunktionalitäten wie Packet Classification“,
”
Queueing“, Scheduling“ und das Verbinden von Netzwerkgeräten realisiert (s. Ab”
”
bildung 3.1). Die Elemente sind durch die gerichteten Kanten der Graphen verbun-
Abbildung 3.1: Click!“ - Beispiel für ein einfaches Element
”
den. Der Graph veranschaulicht den Datenfluss im Router (s. Abbildung 3.2). Jeder
Click! Router“ unterstützt Push“- und Pull“-Operationen. Mit Hilfe der Push“”
”
”
”
Operation können Daten zum nächsten Element weitergeleitet werden. Bei der Pull“”
Operation signalisiert ein Element seine Empfangsbereitschaft (z.B. ToDevice“) und
”
sucht rückwärts im Graphen nach sendebereiten Daten. Von Click!“ werden auch
”
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
53
Abbildung 3.2: Click!“ - Einfaches Beispiel eines Click!“ Routers
”
”
Elemente bereit gestellt, die beide Operationen anbieten und sich je nach Konfiguration wie ein Push“- oder Pull“-Objekt verhalten. Diese Elemente werden Agnostic“
”
”
”
genannt. Für die Kopplung von Elementen ( Push“, Pull“ oder Agnostic“) müssen
”
”
”
deshalb bestimmte Vorgaben beachtet werden. Aus diesem Grund existieren für das
Erstellen einer Click!“-Konfiguration strenge syntaktische Regeln.
”
Jedes Element besitzt folgende Eigenschaften:
• Klasse des Elements:
Jedes Click!“ Element ist ein C++-Objekt und wie bei jeder objektorientierten
”
Programmiersprache bestimmt auch hier die Klasse das Objektverhalten.
• Ein- und Ausgänge:
Zur Kommunikation mit den verbundenen Elementen besitzt jedes Element eine unterschiedliche Anzahl von Ein- und Ausgängen. Je nach Klasse besitzen
die Ein- bzw. Ausgänge eine unterschiedliche Semantik, z.B. Fehlerausgabe oder
Ergebnisse einer Case“-Verzweigung bei Classifier-Objekten“.
”
”
• Konfigurationsangaben:
Bei der Initialisierung einer Objektinstanz kann ein String“ übergeben werden,
”
der zur Konfiguration des Objektes genutzt wird. Bei Tee“-Objekten wird z.B.
”
die Anzahl der gewünschten Ausgänge mit übergeben.
In der Abbildung 3.3 ist ein Beispiel dargestellt. Jedes Element wird durch ein Rechteck
dargestellt. Die Ausgänge sind rechteckig und die Eingänge werden als Dreiecke gekennzeichnet. Ports, die nach dem Push“-Verfahren arbeiten, sind schwarz ausgefüllt,
”
Pull“ dagegen verwendet zur Darstellung unausgefüllte Symbole.
”
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
54
Abbildung 3.3: Click!“ - Beispiel eines konfigurierten Click! Routers“
”
”
Ein Ein- bzw. Ausgang, der Agnostic“, wird durch eine zusätzliche Umrandung ge”
kennzeichnet. Die Füllung des eigentlichen Symbols erklärt die momentane Verwendung im Router, in diesem Fall wird das Counter“-Objekt als Push“-Objekt verwen”
”
det.
Über das Netzwerkinterface eth0“ werden Pakete an das Tee“-Objekt weitergege”
”
ben, das eine Duplizierung der Pakete vornimmt. Ein Exemplar jedes Paketes wird
gezählt und anschließend an einen Analysator weitergereicht. Das Duplikat der Pakete
wird in eine Queue“ geschrieben, aus der sich die Device“ eth1, mittels Pull“, bei
”
”
”
Sendebereitschaft Pakete holt und nach Draußen überträgt.
3.2.3
LUNAR“ ( Lightweight Underlay Network Ad hoc
”
”
Routing“)
LUNAR“ [27] ist ein einfaches, robustes und selbstkonfigurierendes Ad-hoc”
Routingsystem, welches eine IP-Subnet Illusion“ schafft. LUNAR“ wurde als ein
”
”
Kernelmodul entwickelt, das in ein laufendes System dynamisch geladen werden kann.
Der Anwender kann sich an ein Ad-hoc-Netz anzuschließen und alle zur Verfügung
gestellten Internetanwendungen benutzen. LUNAR“ realisiert ein On-Demand Rou”
”
te Discovery Protocol“ und arbeitet gut in Ad-hoc-Netz mit weniger als 10 Teilnehmern. Die IP-Adressen werden selbst konfiguriert und automatisches IP-Gatewaying“
”
ist enthalten. Weiterhin werden IP-Unicast“ und Broadcast“ unterstützt. Somit ist
”
”
LUNAR“ die ideale Lösung für spontane Ad-hoc-Netze und Wireless-Ad-hoc Inter”
”
net“.
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
3.2.4
55
PACMAN“ ( Passive Autoconfiguration for Mobile
”
”
Ad hoc Networks“) und WNTE“ ( Wireless Network
”
”
Topology Emulator“)
PACMAN“ [39] wurde am Institut für Telematik an der Universität Karlsruhe
”
entwickelt und stellt eine effiziente und robuste Lösung für die Adressautokonfiguration in Ad-hoc-Netzen dar.
PACMAN“ erzeugt kaum Netzlast, da es die
”
Information aus dem fortlaufenden Routingprotokollverkehr entnimmt. Dieses
Cross-Layer“/“Cross-Protocol-Design“ ist viel effektiver in bezug auf Netzlast als
”
ein Design mit unabhängigen Routingprotokollen. Z.B. wird das Passiv Duplicate
”
Address Detection“ (PDAD)-Konzept zur Erkennung von Adresskonflikten, basierend auf Anomalien im Routingprotokolverkehr, verwendet. Die Modularchitektur
erleichtert die Integration neuer Routingprotokolle. Eine signifikante Herausforderung
von Autokonfigurationsprotokollen besteht häufig in der potenziellen Vermischung
unabhängiger Netze. Demzufolge können Adresskonflikte auftreten und das Routing
von Paketen wird beeinflusst.
WNTE“ [49] ist ein Linux-Tool, welches zum Test oder zur Demonstration von Ad”
Hoc-Netzen verwendet werden kann. WNTE“ emuliert eine Multi-Hop“-Topologie,
”
”
indem die Knoten, die sich tatsächlich im Sendebereich eines anderen befinden,
mit IP-Table MAC-Filter-Rules“ konfiguriert werden. Die Konfiguration der MAC”
”
Filter-Rules“ erfolgt über einen Secure Shell Login“. Somit werden Pakete von einem
”
bestimmten Nachbarn sofort verworfen. Die zu emulierende Topologie kann mit einem
Qt-based GUI“ gesetzt und visualisiert werden (s. Abbildung 3.4).
”
3.2.5
ViTAN“ ( Visualization Tool for Ad Hoc Networks“)
”
”
Das ViTAN“-Projekt [45] entstand in Kooperation mit der Arizona State University“
”
”
(ASU) und der Universität von Ferrara“. ViTAN“ ist ein frei verfügbares Tool zur
”
”
Darstellung der Verbindungen und der Verbindungsqualität der Knoten in einem Adhoc-Netz. Als Input verwendet das Tool die Position der Knoten, angegeben durch X-
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
56
Abbildung 3.4: WNTE - Beispiel
und Y-Koordinaten und die Verbindungsqualitäten zwischen den Knoten, angegeben
durch Integer“-Werte. Das Tool erstellt die Visualisierung des Netzwerkes im fig“”
”
Format, das zu jedem allgemeinen graphischen Format umgewandelt werden kann.
ViTAN“ bewertet aber nicht die Verbindungen und Verbindungsqualitäten in einem
”
Ad-hoc-Netz. Stattdessen benutzt ViTAN“ zur Bestimmung der Verbindungsqua”
litäten andere Tools, Simulationen oder analytischen Einschätzungen als Input und
stellt dann graphisch diese Verbindungsqualitäten und die resultierenden Verbindungen im Netz dar. ViTAN“ erleichtert die graphische Analyse komplexer Ad-hoc-Netze,
”
dabei werden höhere Verbindungsqualitäten mit dickeren Rändern und in dunkleren
grauen Schatten dargestellt. Außerdem zieht ViTAN“ die Ränder in Abhängigkeit
”
von der entsprechenden Verbindungsqualität an verschiedenen Tiefenebenen des fig“”
Formats. Diese Eigenschaft ermöglicht die selektive Darstellung und graphische Analyse der Verbindungen anhand der Links“ mit einem spezifischen Qualitätsbereich.
”
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
3.2.6
57
Zusammenfassung und Gegenüberstellung der Tools
In den nachfolgenden Tabellen 3.14 und 3.15 sind die momentan vorhandenen Softwaretools dargestellt und anhand ausgewählter Eigenschaften, wie beispielsweise Anforderungen an das System und die Software, kann eine Unterscheidung vorgenommen
werden. Die Softwaretools Click! Modular Router“, LUNAR“ und PACMAN“ sind
”
”
”
für Linux OS konzipiert. APE“ kann sowohl unter MS Windows als auch Linux OS
”
verwendet werden. Die Softwaretools, die in den Tabellen gegenübergestellt werden,
unterscheiden sich in der Anwendung und Funktionsweise. Die beiden Softwarepakete APE“ und LUNAR“ können neben dem bereits vorhandenem Betriebssystem
”
”
installiert und betrieben werden. In APE“ sind eine Vielzahl von Routingprotokol”
len implementiert. LUNAR“ bietet ebenfalls die Möglichkeit einer Installations-CD.
”
Click! Modular Router“ stellt ein umfangreiches Softwarepaket dar, welches zur Kon”
figuration von Routern benutzt wird. Die Anwendung ist nicht nur auf Ad-hoc-Netze
beschränkt, sondern alle möglichen Netztypen können realisiert und die entsprechenden Router konfiguriert werden. Von den in diesem Abschnitt vorgestellten Tools und
Programmen erfordert Click!“, den höchsten Installationsaufwand (s. Anhang D.1).
”
Umfassende Veränderungen am Kernel sind vorzunehmen, um die Funktionsfähigkeit
zu gewährleisten. Der große Vorteil besteht aber in der Breite der Anwendungsmöglichkeiten. Die Entwicklung erfolgt fortschreitend und die Implementierungen zu einigen
Routingverfahren, sind frei verfügbar. PACMAN“ zeichnet sich dadurch aus, dass die
”
Entwicklung fortschreitend ist. Entsprechende Modifikationen am Kernel müssen vorgenommen werden, um eine Funktionsfähigkeit zu gewährleisten. In der momentanen
Version sind die beiden Implementierungen, FSR-ATR“ [17] und OLSRD“ [35], in”
”
tegriert. Die Entwickler schließen aber nicht aus, dass weitere Routingprotokolle, wie
beispielsweise AODV, integriert werden. PACMAN“ bietet auf einfache Art und Weise
”
das Betreiben eines Ad-hoc-Netzes an, indem die IP-Adressen selbständig konfiguriert
werden und auf die entsprechenden Konfigurationen von OLSRD“ und FSR-ATR“
”
”
zugegriffen wird. Hinweise zur Installation sind im Anhang D.2 zu finden. Zur Visualisierung des Netzes wird das Tool WNTE“ verwendet. Mit Hilfe von ViTAN“ können
”
”
die Knotenposition zur Visualisierung des Ad-hoc-Netzes verwendet werden.
APE“ [9]
”
Click! Modular Router“ [11]
”
LUNAR“ [27]
”
RFCs und Drafts:
PACMAN“ [39]
”
draft-ietf-manet-fsr-03 [IETF,
2002a];
draft-ietf-manet-olsr-03 [IETF,
2000c];
RFC 3626 [IETF, 2003e]
Betriebssystem:
Linux OS;
Linux OS
Linux OS
Linux OS
Linux 2.2/2.4;
Linux 2.4/2.6;
Linux 2.4.19/2.6.x;
Vanilla Linux Kernel“,
”
WLAN-Karte;
WLAN-Karte;
min. 700 MHz Pentium III;
TUN/TAP Device“, ARPD“
”
”
und Netfilter“
”
CONFIG IP NF QUEUE“
”
MS Windows
Systemanforderungen:
Linux OS:
Lilo“ oder Grub boot”
”
loader“,
Ext2“, Ext3“ oder
”
”
ReiserFS“ (Filesystem)
”
MS Windows mit DOS;
WLAN-Karte
WLAN-Karte
Softwareanforderungen:
Sonstige Eigenschaften:
Pcap Liprary“
”
Wireless Tools“ [48];
”
LUNAR Kernel Module“
”
integrierte in APE“ [9]
”
Ja
Keine Aussage
momentan sind folgenden Routingprotokolle implementiert:
Funktionsfähig:
AODV-UU“;
”
Mad-hoc AODV“;
”
OLSR (Inria)“;
”
LUNAR“;
”
TORA“;
”
DSR“
”
Nein
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
Ja
Tabelle 3.14: Übersicht zu den Tools für Ad-hoc-Netze (1)
58
KAPITEL 3. SOFTWAREKOMPONENTEN FÜR AD-HOC-NETZE
Implementierung:
WNTE“ [49]
”
59
ViTAN“ [45]
”
RFCs und Drafts:
Betriebssystem:
Linux OS
Linux OS;
MS Windows
Systemanforderungen:
Linux OS;
Linux OS;
WLAN-Karte;
MS Windows XP;
iptable“, ipmac“ und
”
”
ssh public key“ auf jedem Knoten
”
WLAN-Karte
Softwareanforderungen:
Sonstige Eigenschaften:
Verwendung
Funktionsfähig:
PACMAN“ [39]
”
Ja
in
Verbindung
mit
Pcap Library“
”
mit Hilfe der Knotenkoordinaten wird das
Netz dargestellt
Ja
Tabelle 3.15: Übersicht zu den Tools für Ad-hoc-Netze (2)
Detaillierte und spezifische Angaben zu jedem vorgestellten Tool sind im Anhang A.2
zu finden. In der Tabelle 3.16 sind alle Tools dargestellt und es werden entsprechende
Aussagen zur Funktionsfähigkeit getroffen.
Implementierung
Funktionsfähig
Begründung
APE“
”
Nein
Probleme bei der Installation treten auf. Das
Click! Modular Router“
”
LUNAR“
”
Ja
WLAN-“Interface“ wird nicht erkannt.
Keine Aussage
Zusätzliche Veränderungen an der Festplattenpartitionierung bzw. eine weiter Festplattenpartition sind erforderlich.
PACMAN“
”
ViTAN“
”
WNTE“
”
Ja
Ja
Ja
Tabelle 3.16: Tools für Ad-hoc-Netze - Aussagen zur Funktionsfähigkeit
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
60
Kapitel 4
Konzeption der Testumgebung
Innerhalb dieses Kapitels wird ein Konzept für die Testumgebung erstellt. Die Konzipierung basiert auf den gewonnen Erkenntnissen zu den Routingprotokollen aus Kapitel 2 und den vorhanden Implementierungen aus Kapitel 3.
4.1
Testabsichten
Das erstellte Konzept bildet die Grundlage zum Testen von Ad-hoc-Netzen und den
entsprechenden Implementierungen. In das Konzept der Testumgebung fließen neben
der allgemeinen Spezifikation und dem Aufbau von Ad-hoc-Netzen, den bereits gewonnenen Erkenntnissen zu den Routingverfahren (s. Kapitel 2) und vorhandenen
Implementierungen (s. Kapitel 3) auch die momentan verfügbaren Hardwarekomponenten mit ein. Die Testumgebung ist nicht speziell für ein Routingverfahren bzw. Implementierung konzipiert, sondern ist allgemeingültig und bildet somit die Grundlage
für Betrachtungen und Tests zu Ad-hoc-Netzen. Somit können verschiedene Szenarien
und Verfahren innerhalb dieser Testumgebung realisiert und die Funktionalität dieser Verfahren nachgewiesen werden. Ebenso ist die Testumgebung nicht speziell für
eine Plattform oder ein Endsystem konzipiert, sondern verschiedene Betriebssysteme
und Endgeräte können verwendet werden. Im Vordergrund der ersten Tests stehen
Aussagen zu den einzelnen Implementierungen in Hinblick auf:
• Funktionalität und Funktionsweise, d.h. z.B. Aussagen zur Routenbestimmung
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
61
und Robustheit des Netzes,
• Netzlast, die vom Routingprotokoll erzeugt wird,
• mittlere Übertragungsrate und
• Interoperabilität zwischen verschiedenen Betriebssystemen.
Die Funktionalität und Funktionsweise von Ad-hoc-Netzen kann am besten mit Hilfe
einer Testumgebung dargestellt werden, in der eine Mobilität der Knoten gewährleistet ist und somit das Netz von Veränderungen geprägt ist. Diese Aussage schränkt
aber nicht ein, dass verschiedene bzw. einzelne Knoten einen Anschluss in ein Festnetz
besitzen bzw. nicht mobil sind. Mit Hilfe der Dynamik kann die entsprechende Entstehung von Routen bzw. des Ad-hoc-Netzes sehr gut dargestellt werden. Neben der
Dynamik des Netzes sollten auch Aussagen zur mittleren Übertragungsrate und zur
erzeugten Netzlast, die allein durch das Routingverfahren entsteht, getroffen werden.
4.2
Verwendete Hardware- und Softwarekomponenten
In der Testumgebung ist die Integration von verschiedenen Hardware- und Softwarekomponenten möglich. Somit können die Netze entsprechend den Anforderungen gestaltet und erweitert werden. Die zu verwendende Hardware ist abhängig vom Testszenario und den System- bzw. Hardwareanforderungen, die durch die verwendeten Softwarekomponenten definiert sind. Die Vorraussetzung zur Teilnahme an einem Funknetzwerk ist eine WLAN-Karte. Diese kann sowohl extern als auch intern sein. Dabei ist
zu beachten, dass in Linux-Systemen verschiedene WLAN-Karten bzw. die Chipsätze
nicht unterstützt werden. Zur Konfiguration der WLAN-Karte sind die entsprechenden
Treiber und die Firmenware erforderlich. Neben Arbeitsplatz-PCs, die z.B. eine Verbindung zu einem Festnetz realisieren können, werden die mobilen Teilnehmer mit Hilfe
von Laptops und PDAs ( Personal Digital Assistants“) realisiert. Durch die Mobilität
”
dieser Geräte ist ein besonderes Augenmerk auf die entsprechende Energieversorgung
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
62
und die damit verbundenen Einschränkungen in Hinblick auf Lebensdauer zu richten,
denn verschiedene Routingverfahren überprüfen den Status der Energieversorgung und
erstellen dann ihre Routen entsprechend dieser Statusinformation.
Die Testumgebung ist für verschiedene Betriebssysteme und Routingsoftware konzipiert. Somit können verschiedene Testszenarien mit unterschiedlichen Betriebssystemen und die Interoperabilität zwischen den verschiedenen Betriebssystemen getestet werden. Die speziellen Anforderungen an die Betriebssysteme und die Software
sind in den System- und Softwareanforderungen der verwendeten Implementierungen
definiert. Entsprechende Modifikationen an den einzelnen Betriebssystemen könnten
erforderlich sein, d.h. beim MS Windows das Anpassen der Registry“ und beim Li”
nux OS das Anpassen des Kernels. Mit Hilfe von firmenspezifischer Software werden
die Konfigurationen der WLAN-Karten durchgeführt. Um Aussagen zum Netzwerkverkehr und dem Verkehr zu ermöglichen, sind Komponenten erforderlich, mit denen
die benötigten Verkehrswerte, wie beispielsweise ankommender und abgehender Verkehr, ermittelt werden können. Zur Erfassung der relevanten Verkehrswerte kommt
das Prinzip des Monitoring“ zum Einsatz. Die Monitoring-Tool“ werden in interne
”
”
(Softwaremonitore) und externe (Hardwaremonitore) Monitore unterteilt. Die internen Monitore können beliebige Informationen erfassen und es ist keine zusätzliche
Hardware erforderlich. Ein Nachteil dieser Monitore ist die zusätzliche Belastung des
Systems. Hingegen ermöglichen die externen Monitore die Überwachung selbst beim
Zusammenbruch des Systems und das System wird nicht zusätzlich belastet. Die Nachteile bestehen darin, dass nur Aussagen anhand von Beobachtungen möglich sind, es
besteht keine Möglichkeit der Überwachung innerer Zustände und auch zusätzliche
Hardware ist erforderlich. In dieser Testumgebung bietet sich die Verwendung interner Monitor (Softwaremonitore) an, denn diese erfordern keine zusätzliche Hardware,
können schnell in das vorhandene System integriert werden und ermöglichen einfache
Aussagen zu den Verkehrswerten. Dabei ist aber zu beachten, dass die internen Monitore das System zusätzlich belasten. Die Softwaremonitore müssen auf jedem Endgerät
installiert werden. Mit Hilfe des Monitors werden das entsprechende Interface“ und
”
die Übertragung überwacht, die aktuelle Datenübertragungsrate wird dargestellt und
die übertragene Datenmenge ( Traffic“) wird gespeichert. Neben den Softwarekom”
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
63
ponenten zur Datenerfassung wird Software eingesetzt, mit der einfacher IP-Verkehr
erzeugt werden kann. Um einen einfachen Datenverkehr zu ermöglichen sollten Secure
”
Shell“ (SSH) oder File Transfer Protocol“ (FTP) auf den entsprechenden Endgeräten
”
installiert werden.
4.3
Testaufbau
Der Testaufbau bzw. die Testumgebung sollte der Spezifikation von Ad-hoc-Netzen
gerecht werden, d.h. es existiert keine feste Basisstation und Infrastruktur. Alle Teilnehmer sind mobil und fungieren sowohl als Endstation als auch als Router. Dabei wird
aber nicht ausgeschlossen, dass verschiedene Teilnehmer nicht mobil sondern fest sind.
Die gesamte dynamische Netzstruktur entsteht durch Selbstorganisation und Selbstverwaltung der Knoten bzw. der Teilnehmer. Wesentliche Bestandteile der Testumgebung sind sowohl mobile als auch feste Endgeräte mit unterschiedlichen Betriebssystemen und einer entsprechenden WLAN-Karte. Dabei werden Arbeitsplatz-PCs
als feste Endgeräte genutzt und mit Hilfe von Laptops bzw. PDAs werden die mobilen Endgeräte realisiert. Der Testaufbau wird wesentlich durch den Testfall bzw. das
Testszenario bestimmt. Zur Bestimmung der maximalen Übertragungsrate müssen die
Teilnehmer nicht mobil sein, dagegen sollte bei Messungen zum Routingverfahren und
zu Veränderungen der Topologie eine Veränderung des Testnetzes, d.h. der Position
der mobilen Teilnehmer, erfolgen. Bei Messungen zur mittleren Übertragungsrate sind
die erreichbaren Werte an einer entsprechenden Position von Interesse und somit ist
die Dynamik des Netzes nicht unbedingt erforderlich. Dagegen sollte ein Testnetz, mit
dem das Verhalten eines Routingalgorithmus gezeigt und bewiesen werden soll, von
einer Dynamik geprägt sein, d.h. entsprechende Veränderungen der mobilen Knoten
müssen gewährleistet sein und zwar so, dass neue Routen entstehen und somit der
IP-Verkehr neu geroutet werden muss. Der Testaufbau sollte wesentliche Phasen beinhalten, mit denen die Funktionsweise der Routingprotokolle getestet werden kann. In
den Abbildungen 4.1, 4.2 und 4.3 sind drei Phasen dargestellt.
In der Abbildung 4.1 ist die 1. Phase dargestellt. Diese ist dadurch beschrieben, dass
sich jeder Knoten in der Funkreichweite der beiden anderen Knoten befindet und somit
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
64
Knoten 1
Knoten 2
Knoten 3
Funkbereich Knoten 1
Funkbereich Knoten 2
Funkbereich Knoten 3
Abbildung 4.1: Allgemeiner Testaufbau - 1. Phase
sind diese seine direkten Nachbarn.
Funkbereich Knoten 1
Funkbereich Knoten 2
Funkbereich Knoten 3
Knoten 1
Knoten 3
Knoten 2
Abbildung 4.2: Allgemeiner Testaufbau - 2. Phase
In der 2. Phase (s. Abbildung 4.2) kommt es zur Veränderung der Topologie. Ein
Knoten, in diesem Fall Knoten 2, verlässt die Funkreichweite vom Knoten 1 bzw. wird
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
65
die Link“-Qualität so schlecht, sodass er als direkten Nachbarn nur noch den Knoten 3
”
besitzt. Dieser befindet sich aber noch in Funkreichweite vom Knoten 1. Somit können
Daten vom Knoten 1 zum Knoten 2 über den Knoten 3 weitergeleitet werden.
Knoten 2
Knoten 1
Position zum Zeitpunkt t = 0
Knoten 3
Knoten 2
Position zum Zeitpunkt t = 1
Knoten 2
gu
we
e
B
n
om
gv
Kn
n
ote
2
Funkbereich Knoten 1
Position zum Zeitpunkt t = 2
Funkbereich Knoten 2
Funkbereich Knoten 3
Abbildung 4.3: Allgemeiner Testaufbau - 3. Phase
Die Abbildung 4.3 verdeutlicht die 3. Phase. Diese beschreibt die Bewegung eines
Knotens und das Hinzukommen zum Ad-hoc-Netz. Zum Zeitpunkt t = 0 befindet sich
der Knoten 2 noch außerhalb der Funkreichweite eines Knotens, der am Ad-hoc-Netz
teilnimmt. Der Knoten 2 bewegt sich und zum Zeitpunkt t = 1 befindet sich der Knoten
in der Funkreichweite vom Knoten 3. Somit ist der Knoten 2 ein neuer Teilnehmer im
Ad-hoc-Netz. Zum Zeitpunkt t = 2 hat sich der Knoten wieder aus der Funkreichweite
vom Knoten 3 entfernt und somit das Ad-hoc-Netz verlassen.
Diese drei Phasen können in beliebiger Form in die Testumgebung eingebracht und
entsprechend erweitert werden.
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
4.4
66
Festlegen der Testpunkte und Definition der
Ziele
4.4.1
Messungen zur erzeugten Netzlast
Ziel dieses Tests ist die Ermittlung der erzeugten Netzlast, die durch das Routing
entsteht. Somit können Aussagen über die Belastung des Netzes getroffen werden, die
ausschließlich vom Routing stammen.
4.4.2
Messungen bei Veränderung der Topologie
Die Ermittlung der Übertragungsrate und Aussagen zum Netzverhalten bei Veränderung der Netztopologie sind die Ziele dieser Messungen. Somit können Aussagen über
das Verhalten der Übertragungsrate und dem Ad-hoc-Netz getroffen werden, wenn sich
die Knoten innerhalb des Netzes bewegen bzw. wenn sich die Topologie verändert.
4.4.3
Messungen zur mittleren Übertragungsrate
Ziel dieses Tests ist die Ermittlung der mittleren Übertragungsrate, welche mit dem
Routingverfahren bzw. der Routingsoftware möglich ist. Dieses Testszenario ermöglicht
Aussagen über die Datenmenge, die übertragbar ist in Hinblick auf Abstand der Knoten und der Netztopologie.
4.4.4
Messungen mit unterschiedlichen Betriebssystemen
Diese Messsung liefert Aussagen zur Interoperabilität der Routingverfahren bzw. Routingsoftware bei Verwendung unterschiedlicher Betriebssysteme. Somit sind Aussagen
zum Verhalten des Ad-hoc-Netzes möglich, wenn die Knoten unterschiedliche Betriebssysteme verwenden. Ebenso können Aussagen zum Verhalten der Betriebssysteme in
Hinblick auf Prozessorlast und Ressourcenverbrauch getroffen werden.
KAPITEL 4. KONZEPTION DER TESTUMGEBUNG
4.4.5
67
Messungen mit unterschiedlichen Routingparametern
Bei dieser Messung werden die Routingparamter verändert und das Ziel sind Aussagen zum Verhalten der Routingverfahren bzw. Routingsoftware bei Veränderung der
Parameter. Somit können Aussagen über das Verhalten des Ad-hoc-Netzes getroffen
werden, wenn die definierten Routingparameter bzw. die von der IETF ( Internet En”
gineering Task Force“) empfohlenen Routingparameter verändert werden.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
68
Kapitel 5
Realisierung einer Testumgebung
In diesem Kapitel wird mit Hilfe der ausgewählten Implementierungen aus Kapitel 3
und dem Konzept aus Kapitel 4 eine entsprechende Testumgebung realisiert.
5.1
Verwendete Hardware- und Softwarekomponenten
Die momentane Testumgebung wird wesentlich durch die verfügbaren Hardwarekomponenten und die vorhandenen Implementierungen bestimmt.
Wesentliche Bestandteile der Testumgebung sind sowohl mobile als auch feste Endgeräte mit unterschiedlichen Betriebssystemen, d.h. Linux OS und MS Windows, und
einer entsprechenden WLAN-Karte, RoamAbout 802.11 DS (Cabletron)“. In der rea”
lisierten Testumgebung dient der Arbeitsplatz-PC-1 als festes Endgerät und mit Hilfe
von Laptops, d.h. Laptop-1, Laptop-2 und Laptop-3, werden die mobilen Endgeräte
realisiert. Die Spezifikation der verwendeten Geräte und der Hardwarekomponenten
sind im Anhang B.1 zu finden.
5.1.1
Konfiguration der WLAN-Karte
Wie bereits erläutert, wird bei allen Geräten als WLAN-Karte die RoamAbout 802.11
”
DS (Cabletron)“, ohne Verschlüsselung, verwendet.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
69
Unter Linux OS muss kein spezieller Treiber installiert werden. Die Karte wird ohne
Probleme erkannt und kann entsprechend konfiguriert werden. Unter MS Windows
werden die entsprechenden Treiber und der Client-Manager“ installiert. Mit Hilfe des
”
Client-Managers“ kann das entsprechende Interface“ einfach konfiguriert und ein
”
”
Profil“ angelegt werden. Im Anhang B.1.2 sind nähere Angaben zur Installation und
”
Konfiguration der WLAN-Karte zu finden.
5.1.2
Verwendete Implementierungen
Anhand der Angaben aus Kapitel 3 werden entsprechende Implementierungen der Routingprotokolle ausgewählt und in die momentane Testumgebung eingebunden. Neben
der Funktionsfähigkeit der Implementierungen wird die Auswahl auch von den verwendeten Hardwarekomponenten und den Betriebssystemen beeinflusst. Da die momentane Testumgebung nur aus zwei Linux-Systemen besteht, werden vorrangig Implementierungen für MS Windows verwendet. Die Linux-Systeme werden aber für die
Tests mit unterschiedlichen Betriebssystemen benötigt.
Verwendete AODV-Implementierungen
Für MS Windows existieren momentan nur zwei funktionsfähige Implementierungen
von AODV, UoB JAdhoc“ [44] und Windows AODV“ [46]. Dagegen ist die Anzahl
”
”
der funktionsfähigen Implementierungen für Linux OS größer. Unter Linux OS bietet
sich die Verwendung von AODV-UU“ [7] an. Diese Implementierung zeichnet sich
”
durch eine ständige Weiterentwicklung aus und bildet die Grundlage für einige weiter
Implementierungen.
Die University of Bremen“ (UoB) entwickelte das auf Java basierende UoB JAdhoc“.
”
”
Laut Aussagen der Entwickler muss auf jedem Knoten, der sich am Ad-hoc-Netz
beteiligt, ein eigenes Subnetz“ definiert werden. Dies ist aber nicht im Sinne von
”
Ad-hoc-Netzen, denn die Konfiguration dieser erfordert zusätzliche Berechnungen
von IPv4-Adressen für jedes Gerät. Diese Art der IP-Adressen-Konfiguration ist im
Vergleich zu den anderen Implementierungen einzigartig. Normalerweise befinden sich
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
70
alle Knoten innerhalb eines Netzes, d.h. sie besitzen die gleiche Netzwerk-Adresse, die
gleiche Subnetzmaske“ und den gleichen Broadcast“. Die Host“-Adressen liegen
”
”
”
innerhalb eines entsprechenden Adressenbereiches. Ebenfalls führt diese Software zu
Problemen, besonders der Passthru Driver“, der als Service für das entsprechende
”
WLAN-“Interface“ zusätzlich installiert wird. Es kommt zu totalen Systemausfällen
und bei den Tests fällt auf, dass die Datenübertragungsrate der WLAN-Karten
verändert wird und somit weniger Übertragungsrate zur Verfügung steht.
UoB
”
JAdhoc“ ist zwar funktionsfähig, aber nach den ersten Tests wird deutlich, dass
verschiedene Probleme auftreten und die Verwendung daher nicht empfohlen wird.
Dagegen zeichnet sich Windows AODV“ durch einfache Benutzung und gute Darstel”
lung des verwendeten Ad-hoc-Netzes aus. In der Abbildung 5.1 wird die graphische
Oberfläche veranschaulicht.
Abbildung 5.1: Windows AODV“ - Oberfläche
”
Innerhalb dieser Oberfläche werden die benötigten und vorhandenen Parameter angezeigt. Einen Überblick, über die momentanen Routen und die Routenparameter liefert
die AODV Route Table“ (s. Abbildung 5.2).
”
In der Implementierung sind zwei Komponenten enthalten, die zur Gewährleistung der
Funktionsfähigkeit erforderlich sind:
• User-Space-Application“ (winaodv.exe) und
”
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
71
Abbildung 5.2: Windows AODV“ - AODV Route Table“
”
”
• NDIS Intermediate Driver“ (AODV Routing).
”
Zusätzlich besteht die Möglichkeit, Windows AODV“ in Verbindung mit pudl“ zu
”
”
verwenden. pudl“ ist eine Hilfsanwendung, die zur Filterung von Wireless-Links“
”
”
benutzt werden kann, so dass nur Links“ mit hoher Qualität für die Routen verwen”
det werden. Die Benutzung von pudl“ ist für die AODV-Operation nicht erforderlich.
”
Wichtig ist, dass bei der Verwendung von pudl“ alle anderen Knoten ebenfalls Win”
”
dows AODV“ und pudl“ benutzen. Die Parameter von AODV können nicht verändert
”
werden und somit können auch diesbezüglich keine Aussagen zum Verhalten getroffen
werden. Laut Angaben der Entwickler ist diese Implementierung nach einer Anpassung
interoperabel mit anderen AODV-Implementierungen. Leider kann diese Aussage momentan nicht bestätigt werden, denn nach Tests mit Linux-OS-Implementierungen,
wie beispielsweise AODV-UU“, ist eine Interoperabilität nicht gewährleistet. Somit
”
beschränken sich die momentanen Tests nur auf MS Windows. Näher Hinweise zur
Installation von Windows AODV“ sind im Anhang B.2.2 zu finden. Zum Testen der
”
Interoperabilität wird auf den Linux-Systemen AODV-UU“ verwendet. Diese Imple”
mentierung basiert auf IPv4 und arbeitet als User-Space-Daemon“. Zur Erfassung
”
der erforderlichen Daten werden Netfilter“ verwendet. Diese Implementierung kann
”
im ns2 [29] zur Simulation von Ad-hoc-Netzen verwendet werden. Näher Hinweise zur
Installation von AODV-UU“ sind im Anhang B.2.1 zu finden.
”
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
72
Verwendeten OLSR-Implementierungen
Als OLSR-Implementierung wird OLSRD“ verwendet. Der große Vorteil dieser Im”
plementierung besteht darin, dass diese sowohl für MS Windows als auch für Linux
OS existiert. OLSRD“ ist dadurch gekennzeichnet, dass eine fortschreitende Entwick”
lung erfolgt und dem Anwender neue Versionen zur Verfügung gestellt werden. Die
graphische Oberfläche teilt sich in vier Bereiche ein:
1. Settings“ (s. Abbildung 5.3):
”
Abbildung 5.3: OLSRD“ - Settings“
”
”
Es können die entsprechenden Einstellungen vorgenommen werden oder eine
Konfigurationsdatei kann geladen bzw. auch erstellt werden. Die Option Offen
”
Internet Connection“ kann aktiviert werden, wenn der entsprechende Knoten
einen Zugang zum Internet besitzt. Bei der Aktivierung wird ein Host and Net”
work Association“ (HNA)-Zugang für die Defaultroute“ zur Konfigurationsdatei
”
hinzugefügt und andere Knoten im OLSR-Netzwerk können diesen Internetzugang benutzen. IPv6 ist vorgesehen, kann aber momentan unter MS Windows
nicht verwendet werden. Enable ETX link quality“ ermöglicht die Ermittlung
”
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
73
der Link-Quality“ der Nachbarn unter Verwendung der Expected Transmis”
”
sion Count“ (ETX)-Metrik. Die Windows Size“ gibt die Anzahl, der kürzlich
”
erhaltenen Pakete an, die zur Berechnung des Paketverlustes verwendet werden.
Wenn z.B. dieser Parameter zu 10 gewählt wird, wird OLSR den Paketverlust
unter den letzten 10 von jedem Nachbarn erhaltenen Paketen berechnen. Ist For
”
MPR selection only“ aktiviert, wird die Link Quality“ nur verwendet, um den
”
MPR auszuwählen, der die beste Route zu dem Two-Hop“-Nachbarn anbietet.
”
Ist dagegen For MPR selection and routing“ aktiviert, wird die Link Quality“
”
”
zusätzlich benutzt, um die Routingtabelle zu erstellen. Die Aktivierung von ETX
entspricht nicht dem OLSR Standard.
2. Output“:
”
Unter Output“ werden der laufende Prozess und das Routing dargestellt. Die
”
erzeugte Ausgabe ist aber auf 1000 Zeilen begrenzt und kann in einer entsprechenden Datei abgespeichert werden.
3. Nodes“ (s. Abbildung 5.4):
”
Abbildung 5.4: OLSRD“ - Nodes“
”
”
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
74
Dargestellt werden die Informationen zu den Knoten, die sich momentan im Adhoc-Netz befinden. Zusätzlich werden zu jedem Knoten die Informationen zu
MPR, Multiple Interface Declaration“ (MID) und HNA bereitgestellt.
”
4. Routes“ (s. Abbildung 5.5):
”
Abbildung 5.5: OLSRD“ - Routes“
”
”
Die momentan verfügbaren Routen, mit den wichtigsten Parametern, wie beispielsweise das Gateway“ und die Routingmetrik, werden dargestellt. Diese Pa”
rameter werden bei Veränderung der Route angepasst.
Es muss keine zusätzliche Software installiert werden. Lediglich die Konfiguration des
Interfaces“ ist erforderlich. Tests zur Interoperabilität sind möglich, denn sowohl un”
ter Linux OS als auch unter MS Windows kann diese Implementierung angewendet
werden. Um ein korrektes Routing zu gewährleisten, sollte auf allen Geräten die gleiche Konfiguration der Routingparameter verwendet werden. Das Config-File“ kann
”
mit den entsprechenden Einstellungen erstellt und verwendet werden. Näher Hinweise
zur Installation und Konfiguration sind im Anhang B.2.3 zu finden.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
5.1.3
75
Verwendete Tools für Monitoring“ und zur Erfassung
”
des Network-Traffic“
”
Zur Erfassung des Network-Traffic“ werden für die verschiedenen Betriebssysteme,
”
d.h. Linux OS und MS Windows, drei verschiedene Tools verwendet:
• Linux OS:
– IPTraf“
”
• MS Windows:
– Analyzer“
”
– Network Traffic Monitor“
”
Analyzer“
”
Der Analyzer“ [2] ist ein Netzwerkanalysetool für MS Windows und basiert auf
”
WinPcap“ [47]. Die Spezifikation und die Daten des Tools sind in der Tabelle 5.1
”
abgebildet. Dieses Tool bietet zahlreiche Funktionen für das Management von NetzEntwickler:
Quelle:
Politecnico di Torino“
”
http://analyzer.polito.it/
Betriebssystem:
MS Windows
Aktuelle Version:
Programmiersprache:
Analyzer 3.0 (alpha)“
”
Delphi
Systemanforderungen:
MS Windows
Softwareanforderungen:
WinPcap“ [47]
”
Tabelle 5.1: Analyzer“ - Spezifikation
”
werken. Die erhalten Daten und Werte können zur weiteren Bearbeitung abgespeichert
werden.
In der Abbildung 5.6 ist das Hauptmenü abgebildet. In der Testumgebung wird der
Analyzer“ zur Untersuchung der empfangenen Datenpakete verwendet. Dazu wird die
”
Option Capture“ benutzt.
”
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
76
Abbildung 5.6: Analyzer“ - Hauptmenü
”
Abbildung 5.7: Analyzer“ - Capture“
”
”
In der Abbildung 5.7 ist der Empfang eines NetBIOS“ ( Network Basic Input Output
”
”
System“)-Paketes dargestellt. Zu jedem empfangen Paket werden detaillierte Informationen, wie beispielsweise der Link“, das Netzwerk und das Transportprotokoll, bereit
”
gestellt.
Network Traffic Monitor“
”
Der Network Traffic Monitor“ [30] ist ein frei verfügbares Tool zur Netzwerkanalyse.
”
Die Spezifikation dieses Tools ist in der Tabelle 5.2 abgebildet und in der Abbildung 5.8
ist die graphische Oberfläche dargestellt.
Das Hauptziel dieser Anwendung ist die Kontrolle und das Erfassen des IP-Verkehrs.
Dieser Netzwerkmonitor stellt Real-Time-Traffic-Accounting“ und Monitoring“ zur
”
”
Verfügung. Er ist sehr dynamisch, d.h. jede neue Verbindung wird registriert und kontrolliert.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
Entwickler:
Dirk Claessens; Zarko Gajic
Quelle:
http://delphi.about.com/od/
77
fullcodeprojects/l/aa112903a.htm
Betriebssystem:
MS Windows
Aktuelle Version:
Programmiersprache:
Delphi
Systemanforderungen:
MS Windows
Softwareanforderungen:
Tabelle 5.2: Network Traffic Monitor“ - Spezifikation
”
Abbildung 5.8: Network Traffic Monitor“ - Oberfläche
”
Die Implementierung sieht aber kein Log-File“ vor, in das die gemessenen Werte ab”
gespeichert werden.
Im Rahmen dieser Arbeit wurden entsprechende Anpassungen am Source-Code“ vor”
genommen. Nach den Anpassungen ist es nun möglich, jede Sekunde die Daten zum
ankommenden und abgehenden Verkehr des ausgewählten Interfaces“ in eine entspre”
chende Datei abzuspeichern. Die Datei und die Start- bzw. Stoppzeit dieses Logging“”
Vorganges sind vom Anwender frei wählbar. In der Abbildung 5.9 ist die angepasst
und ergänzte Bedienungsoberfläche dargestellt. Die vorgenommenen Veränderungen
am Source-Code“ sind im Anhang C.2 dargestellt.
”
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
78
Abbildung 5.9: Veränderter Network Traffic Monitor“ - Angepasste Oberfläche
”
IPTraf“
”
Zum Erfassen des Netzwerkverkehrs unter Linux OS wird das Tool IPTraf“ [21] ver”
wendet. Die Angaben zur Software sind in der Tabelle 5.3 dargestellt.
Entwickler:
Gerard Paul Java
Quelle:
http://iptraf.seul.org/
Betriebssystem:
Linux OS
Aktuelle Version:
IPTraf 2.7.0“ (2002-05-19)
”
C/C++
Programmiersprache:
Systemanforderungen:
Linux Kernel 2.2.x;
8 MB Physical-RAM“;
”
min. 16 MB Virtual-RAM“
”
Softwareanforderungen:
Tabelle 5.3: IPTraf“ - Spezifikation
”
IPTraf“ ist ein konsolenbasiertes Netzwerkstatistiktool. Es können eine Vielzahl von
”
Daten und Werten gesammelt werden, wie beispielsweise TCP-Verbindungspakete und
Byte-Zähler sowie Interface“-Statistik und Aktivitätsanzeige (s. Abbildung 5.10).
”
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
79
Abbildung 5.10: IPTraf“ - Menü
”
Ein wesentlicher Bestandteil, der auch bei den hier durchgeführten Messungen Anwendung findet, ist der TCP und UDP Service Monitor“, der vom entsprechenden
”
Interface“ den ankommenden und abgehenden Verkehr anzeigt (s. Abbildung 5.11).
”
Abbildung 5.11: IPTraf“ - TCP und UDP Service Monitor“
”
”
In IPTraf“ ist die Option eines Log-Files“ vorhanden, wo aber die entsprechenden
”
”
Daten nur in einem Zeitintervall von minimal einer Minute aufgezeichnet werden.
Aus der Tatsache heraus, dass sich das Ad-hoc-Netz, bedingt durch die Bewegungen
und Mobilität, innerhalb von Sekunden verändert, ist dieses Log-File“ für die Ermitt”
lung dieser Art von Daten nicht geeignet.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
80
Deshalb wurden im Rahmen dieser Arbeit Veränderungen am Source-Code“ vorge”
nommen. Die Veränderungen beziehen sich aber nur auf den TCP und UDP Service
”
Monitor“. Dieser wurde erweitert und die Daten zum ankommenden und abgehenden Verkehr des Interfaces“ werden nun jede Sekunde in eine entsprechende Datei
”
abgespeichert. Im Anhang C.1 sind die vorgenommenen Veränderungen dargestellt.
5.1.4
Verwendete Tools und Software zur Erzeugung von
Netzwerkverkehr ( Network Traffic“)
”
iperf“
”
iPerf“ [20] ist ein Softwaretool zur Analyse der Netzwerk-“Performance“. iPerf“ wur”
”
de als eine moderne Alternative entwickelt, um die Bitrate bei Verwendung von TCP
und UDP zu messen. Die Spezifikation und Angaben zur Software sind in der Tabelle 5.4 zu finden.
Entwickler:
The Board of Trustees of the University of
”
Illinois“
Quelle:
http://dast.nlanr.net/Projects/Iperf/
Betriebssystem:
Linux OS;
MS Windows
Aktuelle Version:
iPerf-1.7.0“ (2003-03)
”
Programmiersprache:
Systemanforderungen:
Softwareanforderungen:
Tabelle 5.4: iPerf“ - Spezifikation
”
Die Entscheidung für iPerf“ fiel aufgrund der Eigenschaften und der Einsatzmöglich”
keiten. Sowohl MS Windows als auch Linux OS werden unterstützt. Die Funktionsweise
von iPerf“ ist sehr einfach. iPerf“ arbeitet nach dem bekannten Client-Server-Modell.
”
”
Der Client erzeugt Netzwerkverkehr in Richtung des Servers, welcher lediglich Empfangsinformationen zurücksendet. Zuvor muss iPerf“ auf dem empfangenden Rechner
”
als Serverdienst gestartet werden. Die angebotenen Funktionen werden über Kommandozeile aufgerufen. Nähere Angaben zum Aufruf und den Parametern sind im
Anhang B.2.4 zu finden.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
81
Die in den Messungen verwendeten Parameter sind:
• TCP Transportprotokoll,
• Zuweisung der Server-/Client-Rolle,
• Überwachungsintervall im Log“ (Bildschirm/Datei),
”
• Ziel-IP und
• Dauer des erzeugten Traffics“.
”
File Transfer Protocol“
”
Das File Transfer Protocol“ (FTP) ist in der RFC 959 [IETF, 1985] spezifiziert und
”
wird zur Dateiübertragung über TCP/IP-Netzwerke verwendet. Es wird benutzt, um
Dateien vom Server zum Client ( Download“), vom Client zum Server ( Upload“) oder
”
”
clientgesteuert zwischen zwei Servern zu übertragen. Auf dem Rechner, der als Server agieren soll, muss entsprechend ein FTP-Server installiert und konfiguriert werden.
Über die Kommandozeile kann der Client auf den Server zugreifen und ein entsprechender Datentransfer kann stattfinden. Eine Zusammenstellung, der wichtigsten Befehle
ist im Anhang B.2.5 zu finden.
5.2
Testaufbau
Der Testaufbau bzw. die Testumgebung wird der Spezifikation von Ad-hoc-Netzen gerecht, d.h. es existiert keine feste Basisstation und Infrastruktur. Die gesamte dynamische Netzstruktur entsteht durch Selbstorganisation und Selbstverwaltung der Knoten
bzw. der Teilnehmer. Die Testumgebung und der Testaufbau werden neben dem Testfall bzw. Testszenario wesentlich durch den Arbeitsplatz-PC-1 bestimmt, denn dieser
kann seine Position nicht verändern und somit ist die Reichweite dieses Knotens räumlich begrenzt. Der Arbeitsplatz-PC-1 befindet sich im 1. Obergeschoss des Helmholtzbaus der TU-Ilmenau, genauer im Raum 2519. Somit beschränkt sich die momentane
Testumgebung auf den Helmholtzbau und die nähere Umgebung dieses Gebäudes. Der
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
82
verwendete Laptop-2 besitzt ebenfalls eine feste Position, denn die Laufzeit des Akkus ist zu gering, um eine Mobilität des Knotens zu gewährleisten. Somit wird dieser
Knoten innerhalb des Helmholzbaus so platziert, dass sich dieser in der Funkreichweite
vom Arbeitsplatz-PC-1 befindet. Der Laptop-1 wird als mobiles Gerät und somit als
mobiler Knoten verwendet, was bei einer Veränderung seiner Position zur Veränderung
des Netzes führen kann. Um eine später Auswertung der durchgeführten Messungen
zu ermöglichen und die verschiedenen Implementierungen vergleichen zu können, werden bestimmte Messpunkte (MPs) definiert, die sich an entsprechenden Positionen im
Helmholzbau befinden (s. Abbildungen 5.12 und 5.13).
MP 4
Helmholtzbau
1.Obergeschoss
MP 1
MP 3
Laptop-2
(10.0.0.2)
bzw.
Laptop-3
(10.0.0.4)
MP 6
Arbeitsplatz-PC-1
(10.0.0.3)
MP 2
MP 5
MP 7
Abbildung 5.12: 1.OG Helmholzbau mit Messpunkten
Die in der Abbildung 5.12 farblich hervorgehobenen Messpunkte werden zur Erfassung
der erzeugten Netzlast verwendet.
Die entsprechenden IP-Adressen der Teilnehmer werden in dieser momentanen Testumgebung vom Anwender konfiguriert. Das hier verwendete Netz ist ein /24“ (ent”
spricht Klasse C Netz), d.h. 28 − 2 = 254 Host“-Adressen können verwaltet werden.
”
Das verwendete Netzwerk hat die Netzwerk-Adresse 10.0.0.0/24, die Subnetzmaske“
”
255.255.255.0/24 und den Broadcast“ 10.0.0.255. Die entsprechenden IPv4-Adressen
”
der verwendeten Geräte sind in der Tabelle 5.5 dargestellt.
Die Implementierungen unterstützen den Zugang zu einem Festnetz, wie beispielsweise
dem Internet. Zusätzlich müssen entsprechende Einstellungen vorgenommen werden,
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
83
Helmholtzbau
2.Obergeschoss
MP 8
MP 9
MP 7
Abbildung 5.13: 2.OG Helmholzbau mit Messpunkten
Gerät
Host“”
Adresse
Subnetz”
maske“
Broadcast“
”
Adresse
Netzwerk-
Laptop-1
10.0.0.0/24
10.0.0.1/24
255.255.255.255.0/24
10.0.0.255/24
Laptop-2
10.0.0.0/24
10.0.0.2/24
255.255.255.255.0/24
10.0.0.255/24
Laptop-3
10.0.0.0/24
10.0.0.4/24
255.255.255.255.0/24
10.0.0.255/24
Arbeitsplatz-PC-1
10.0.0.0/24
10.0.0.3/24
255.255.255.255.0/24
10.0.0.255/24
Tabelle 5.5: IPv4-Adressen der verwendeten Geräte
die im Anhang B.1.2 beschrieben sind. Dabei müssen aber alle Sicherheitseinstellungen, wie beispielsweise die Firewall“, deaktiviert werden, was ein relativ hohes Sicher”
heitsrisiko darstellt. Zusätzlich wird ein DNS ( Domain Name System“)-Server für die
”
IP-Konfiguration der WLAN-Karte benötigt. Dazu kann beispielsweise der DNS-Server
der TU-Ilmenau, mit den IP-Adressen 142.24.12.2 und 142.24.4.1, verwendet werden.In
der momentanen Testumgebung wird ausschließlich IPv4 verwendet. Für das Testnetz
wird das in der Tabelle 5.6 dargestellte Profil“ für die WLAN-Karte verwendet.
”
5.3
Testdurchführung
Die Messungen erfolgen nach einem entsprechenden Zeitplan und zwei unterschiedlichen Testplänen, die von dem jeweiligen Testszenario abhängig sind.
Der in der Abbildung 5.14 dargestellte Testplan dient zur Erfassung des Netzver-
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
ESSID:
test-net
Mode:
ad-hoc/peer-to-peer
Kanal:
2
Netzwerk-Adresse:
10.0.0.0/24
Host“-Adressen:
”
Subnetzmaske“:
”
Broadcast“:
”
10.0.0.1-10.0.0.254/24
84
255.255.255.255.0/24
10.0.0.255/24
Tabelle 5.6: WLAN-Einstellungen des Testnetzes
haltens bei Veränderung der Netztopologie und der Parameter. Dieser Testplan
beinhaltet die wesentlichen Schritte zur Erfassung der benötigten Daten bei der
Bewegung des mobilen Knotens und Veränderung der Parameter.
MP5
4
MP1
1
MP2
2
MP6
7
3
5
MP3
6
MP5
8
MP7
13
14
9
12
MP8
10
MP9
11
Messpunkt
Bewegung
Kantennummer
für Bewegung
Messzeit
am MP
Zeitintervall für die
Bewegung zwischen MPs
MP1
MP1 à MP2
1
60 s
1..7 s
MP2
MP2 à MP3
2
60 s
1..7 s
MP3
MP3 à MP4
3
60 s
1..16 s
MP4
MP4 à MP1
4
60 s
1..18 s
MP3
MP3 à MP5
5
60 s
1..12 s
MP5
MP5 à MP6
6
60 s
1..15 s
MP6
MP6 à MP5
7
60 s
1..11 s
MP5
MP5 à MP7
8
60 s
1..9 s
MP7
MP7 à MP8
9
60 s
1..5 s
MP8
MP8 à MP9
10
60 s
1..10 s
MP9
MP9 à MP8
11
60 s
1..10 s
MP8
MP8 à MP7
12
60 s
1..10 s
MP7
MP7 à MP5
13
60 s
1..10 s
MP5
MP5 à MP1
14
60 s
1..15 s
MP1
60 s
Abbildung 5.14: Testaufbau - Allgemeiner Testplan
Wie bereits erläutert, werden zur Erfassung der erzeugten Netzlast, die vom eigentlichen Routingprotokoll stammt, wesentlich weniger Messpunkte verwendet, die aber
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
85
trotzdem Aussagen ermöglichen. Deshalb existiert speziell für diese Untersuchungen
der zweite Testplan, der in der Abbildung 5.15 dargestellt ist.
MP1
1
MP2
2
MP5
5
3
MP6
4
Messpunkt
Bewegung
Kantennummer
für Bewegung
Messzeit
am MP
Zeitintervall für die
Bewegung zwischen MPs
MP1
MP1 à MP2
1
60 s
1..7 s
MP2
MP2 à MP5
2
60 s
1..7 s
MP5
MP5 à MP6
3
60 s
1..15 s
MP6
MP6 à MP5
4
60 s
1..11 s
MP5
MP5 à MP1
5
60 s
1..15 s
6
60 s
MP1
Abbildung 5.15: Testaufbau - Testplan zur Erfassung der Netzlast
In den beiden Abbildungen 5.14 und 5.15 sind die verwendeten Messpunkte und die
Bewegungen, die mit Hilfe der Kanten verdeutlicht werden, abgebildet. Die Reihenfolge der Bewegungen wird mit Hilfe der Nummerierung deutlich. In den Tabellen sind
die Zeitintervalle für Messung und Bewegung definiert. Das Zeitintervall an dem Messpunkt ermöglicht die Ermittlung der Messdaten über einen relativ großen Zeitraum.
Bedingt durch die Mobilität kommt es zum kurzzeitigen Abbruch der Verbindungen
und eine gewisse Zeit wird benötigt, bis diese wieder stabil sind. Die Veränderungen
der Topologie und das Erstellen neuer Routen können innerhalb dieser Messzeit sehr
gut dargestellt werden.
Die Bewegungsintervalle definieren die Zeitdauer für die Bewegung zwischen den Messpunkten. Dabei wird versucht, mit gleich bleibender Geschwindigkeit die Messpunkte
zu erreichen. Beim Einhalten der oberen Grenze bewegt sich der Knoten mit einer
Geschwindigkeit von ca. 3 km/h. Die geringe Geschwindigkeit ist dadurch begründet,
dass die Laptops relativ groß bzw. unhandlich sind und bei höheren Geschwindigkeiten
Beschädigungen auftreten könnten, so z.B. am Display. An dieser Stelle würden sich
PDAs anbieten, die im Vergleich zu Laptops kleiner und handlicher sind, doch leider
konnten zum Zeitpunkt der ersten Tests keine PDAs in die Testumgebung eingebracht
und somit getestet werden. Durch die Festlegungen der entsprechenden Zeitintervalle
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
86
werden weiterführende Betrachtungen vereinfacht und einfache Vergleiche der unterschiedlichen Messungen werden ermöglicht.
Die Monitoring-Tools“ und die Routingsoftware werden auf den Geräten nacheinan”
der gestartet. Das Starten der Routingsoftware auf den Geräten in einem zeitlichen
Abstand ermöglicht Aussagen zum Verhalten des Netzes, wenn neue Knoten hinzukommen und sich somit die Anzahl der Teilnehmer erhöht.
5.3.1
Verwendete Hardware- und Softwarekomponenten für
die Messungen
Die verwendeten Hardware- und Softwarekomponenten für die Messungen zu AODV
und OLSR unterscheiden sich nur geringfügig.
ArbeitsplatzPC-1
Laptop-1
Laptop-3
IP-Verkehr
IP-Adresse: 10.0.0.1/24
Netzwerk-Adresse: 10.0.0.0/24
„Broadcast“: 10.0.0.255/24
„Subnetzmaske“: 255.255.255.0/24
IP-Adresse: 10.0.0.3/24
Netzwerk-Adresse: 10.0.0.0/24
„Broadcast“: 10.0.0.255/24
„Subnetzmaske“: 255.255.255.0/24
IP-Adresse: 10.0.0.4/24
Netzwerk-Adresse: 10.0.0.0/24
„Broadcast“: 10.0.0.255/24
„Subnetzmaske“: 255.255.255.0/24
Betriebssystem: MS Windows XP
„iPerf“: Client
Betriebssystem: MS Windows XP
„iPerf“: Server
Betriebssystem: MS Windows XP
Abbildung 5.16: Testdurchführung mit AODV
In der Abbildung 5.16 sind die verwendeten Geräte und die durchgeführten Konfigurationen für die AODV-Messungen dargestellt. Somit werden für die AODV-Messungen
folgende Hardwarekomponenten verwendet:
• Laptop-1 (MS Windows XP),
• Laptop-3 (MS Windows XP),
• Arbeitsplatz-PC-1 (MS Windows XP) und
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
87
• WLAN-Karte RoamAbout 802.11 DS (Cabletron)“.
”
ArbeitsplatzPC-1
Laptop-1
Laptop-2
IP-Verkehr
IP-Adresse: 10.0.0.1/24
Netzwerk-Adresse: 10.0.0.0/24
„Broadcast“: 10.0.0.255/24
„Subnetzmaske“: 255.255.255.0/24
IP-Adresse: 10.0.0.3/24
Netzwerk-Adresse: 10.0.0.0/24
„Broadcast“: 10.0.0.255/24
„Subnetzmaske“: 255.255.255.0/24
IP-Adresse: 10.0.0.2/24
Netzwerk-Adresse: 10.0.0.0/24
„Broadcast“: 10.0.0.255/24
„Subnetzmaske“: 255.255.255.0/24
Betriebssystem: MS Windows XP
Betriebssystem: MS Windows XP
Betriebssystem: MS Windows 2000/
Linux OS
„iPerf“: Client
„iPerf“: Server
Abbildung 5.17: Testdurchführung mit OLSR
Für die Messungen mit OLSR wird ein Linux OS benötigt und deshalb wird der
Laptop-3 durch den Laptop-2 ausgetauscht. In der Abbildung 5.17 werden die Konfigurationen und die verwendeten Hardwarekomponenten deutlich:
• Laptop-1 (MS Windows XP),
• Laptop-2 (Linux 2.4.26 und MS Windows 2000),
• Arbeitsplatz-PC-1 (MS Windows XP) und
• WLAN-Karte RoamAbout 802.11 DS (Cabletron)“.
”
Einige Tests erfordern IP-Verkehr, der mit Hilfe von iPerf“ zwischen Laptop-1, der als
”
Client fungiert und dem Arbeitsplatz-PC-1, der den Server darstellt, erzeugt wird. Der
Arbeitsplatz-PC-1 sendet dabei lediglich Empfangsinformationen zurück. Zur Erfassung des Netzwerkverkehrs wird unter MS Windows der Analyzer“ bzw. der Network
”
”
Traffic Monitor“ und unter Linux OS IPTraf“ verwendet. Das entsprechende WLAN”
“Interface“ wird überwacht und die erhaltenen Werte in das Log-File“ abgespeichert.
”
Anhand der gesammelten Messwerte wird eine abschließende Bewertung vorgenommen.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
5.3.2
88
Beschreibung der Messungen
Messungen zur erzeugten Netzlast
Die Messungen werden in einem dynamischen Netz vorgenommen, d.h. der mobile
Knoten, realisiert durch Laptop-1, ändert seine Position zu bestimmten Zeitpunkten.
Dagegen besitzen Laptop-2/3 und Arbeitsplatz-PC-1 ihre feste Position.
Laptop-1
ArbeitsplatzPC-1
Laptop-2/3
Abbildung 5.18: Ermittlung der erzeugten Netzlast (1)
In der Abbildung 5.18 ist das Netz zu Beginn der Messungen dargestellt. Durch die
Bewegung des mobilen Knotens (Laptop-1) kommt es zur Veränderung der Netztopologie und neue Routen entstehen. Die Veränderung des Netzes verdeutlicht die Abbildung 5.19.
ArbeitsplatzPC-1
Laptop-2/3
Laptop-1
Abbildung 5.19: Ermittlung der erzeugten Netzlast (2)
Für diese Messung werden die in Abbildung 5.12 farblich gekennzeichneten Messpunkte
(MP1, MP2, MP 5 und MP 6) verwendet Die Reihenfolge der Messung ist in Abbildung 5.15 aufgezeigt.
Diese geringe Anzahl von Messpunkten reicht aus, um Aussagen zur erzeugten Netzlast, die vom Routing stammt, zu treffen.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
89
Messungen bei Veränderung der Topologie
Mit Hilfe von iPerf“ wird zwischen Laptop-1 und dem Arbeitsplatz-PC-1 der IP”
Verkehr erzeugt.
ArbeitsplatzPC-1
Laptop-1
Laptop-2/3
IP-Verkehr
Abbildung 5.20: Messung bei Veränderung der Topologie (1)
In der Abbildung 5.20 sind der Verkehrsfluss und das verwendete Netz dargestellt.
Der Laptop-2/3 und der Arbeitsplatz-PC-1 besitzen innerhalb dieses Netzes feste Positionen, lediglich der Laptop-1 verändert seine Position. Aufgrund der Bewegung des
mobilen Knotens kommt es zur Veränderung der Netztopologie und der Netzwerkverkehr muss über neue Routen weitergeleitet werden.
ArbeitsplatzPC-1
Laptop-2/3
IP-Verkehr
Laptop-1
IP-Verkehr
X
IP-Verkehr
Abbildung 5.21: Messung bei Veränderung der Topologie (2)
In der Abbildung 5.21 ist der Verlust der Route zwischen Laptop-1 und ArbeitsplatzPC-1 dargestellt. Der Verkehr wird daraufhin über den Laptop-2/3 weitergeleitet.
Für diese Messung werden die in den Abbildungen 5.12 und 5.13 definierten Messpunkte (MP1 - MP 9) verwendet. Die Reihenfolge der Messung ist in Abbildung 5.14
aufgezeigt.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
90
Ermitteln der mittleren Übertragungsrate
Die Messungen zur Veränderung der Topologie (s. Abschnitt 5.3.2) bilden die Grundlage für die Ermittlung der mittleren Übertragungsrate. Dabei werden aber lediglich
die Werte an den Messpunkten (MP1 - MP 9) berücksichtigt. Für jeden Messpunkt
wird die mittlere Übertragungsrate bestimmt, indem eine Mittelung über alle Werte
dieses Messpunktes erfolgt.
Messungen mit unterschiedlichen Betriebssystemen
Die Messung kann momentan nur mit OLSR erfolgen, denn die verwendeten AODVImplementierungen sind nicht interoperabel.
Der Laptop-2 verwendet in diesem Testfall Linux OS als Betriebssystem (s. Abbildung 5.22).
Laptop-1
(MS Windows XP)
ArbeitsplatzPC-1
(MS Windows XP)
Laptop-2
(Linux 2.4.26)
IP-Verkehr
Abbildung 5.22: Messungen mit unterschiedlichen Betriebssystemen (1)
Als feste Knoten werden der Laptop-2 und der Arbeitsplatz-PC-1 definiert. Der mobile
Knoten, realisiert durch Laptop-1, bewegt sich innerhalb des Netzes und es kommt zur
Veränderung der Topologie (s. Abbildung 5.23).
Für die Position des mobilen Knotens werden die in der Abbildung 5.12 definierten
Messpunkte (MP1 - MP9) verwendet und die Reihenfolge der Bewegung ist in der
Abbildung 5.14 dargestellt. Mit Hilfe von iPerf“ wird der erforderliche IP-Verkehr
”
erzeugt.
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
ArbeitsplatzPC-1
(MS Windows XP)
Laptop-2
(Linux 2.4.26)
IP-Verkehr
91
Laptop-1
(MS Windows XP)
IP-Verkehr
X
IP-Verkehr
Abbildung 5.23: Messungen mit unterschiedlichen Betriebssystemen (2)
Messungen mit unterschiedlichen Routingparametern
Bei der verwendeten AODV-Implementierung für MS Windows können keine Parameter verändert werden und somit ist diese Messung auf OLSR beschränkt.
Bei dieser Messung werden die Routingparameter verändert. Die Parameter von OLSR
sind in der RFC 2636 [IETF, 2003e] definiert. Dabei ist aber zu beachten, dass einige
Parameter voneinander abhängig sind und nicht unabhängig voneinander zu betrachten sind. Es werden Veränderungen am Zeitintervall der Hello Message“ und entspre”
chend an der Hello Validity Time“ vorgenommen. Als mobiler Knoten wird in dieser
”
Messung der Laptop-1 verwendet. Die festen Knoten werden mit Hilfe vom Laptop-2
und dem Arbeitsplatz-PC-1 gebildet. Der Netzaufbau ist in der Abbildung 5.24 dargestellt.
ArbeitsplatzPC-1
Laptop-1
Laptop-2/3
IP-Verkehr
Veränderte Routingparameter:
- „Hello Interval“
= 4 sec
- „Hello Validity Time“ = 12 sec
Abbildung 5.24: Messungen mit unterschiedlichen Parameter (1)
Durch die Bewegung des mobilen Knotens kommt es zur Veränderung der Netztopo-
KAPITEL 5. REALISIERUNG EINER TESTUMGEBUNG
92
logie. Der IP-Verkehr wird zwischen Laptop-1 und dem Arbeitsplatz-PC-1 erzeugt.
Dazu wird das Tool iPerf“ verwendet. Bei Veränderung der Topologie entstehen neue
”
Routen (s. Abbildung 5.25). Die verwendeten Messpunkte (MP1 - MP9) sind in den
Abbildungen 5.12 und 5.13 dargestellt. Die Bewegung zwischen den Knoten wird mit
Hilfe der Abbildung 5.14 verdeutlicht.
ArbeitsplatzPC-1
Laptop-2/3
IP-Verkehr
Laptop-1
IP-Verkehr
X
IP-Verkehr
Veränderte Routingparameter:
- „Hello Interval“
= 4 sec
- „Hello Validity Time“ = 12 sec
Abbildung 5.25: Messungen mit unterschiedlichen Parameter (2)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
93
Kapitel 6
Messungen und Ergebnisse
In diesem Kapitel wird die Funktionsfähigkeit der im Kapitel 5 realisierten Testumgebung überprüft. In den ersten Messungen wird die konzipierte Testumgebung überprüft
und die angestrebten Tests sollen zeigen, dass die Überlegungen zur Realisierung, die
Funktion der Ad-hoc Verfahren nachweist.
6.1
Einleitung
Die Messungen erfolgen nach dem im Kapitel 4 spezifiziertem Testkonzept und die
entsprechenden Angaben zur momentanen Testumgebung sind im Kapitel 5 zu finden.
Zur Glättung der Messwerte wird eine Mittelung über fünf Werte vorgenommen. Es ist
aber zu beachten, dass sich die momentane Testumgebung innerhalb eines Gebäudes
befindet. Dieses Gebäude ist mit weiteren Funknetzen, wie beispielsweise WLAN und
Bluethooth“, ausgestattet, die Einfluss auf das Ad-hoc-Netz haben könnten. Deshalb
”
sind diese Störungen bei den Betrachtungen zu berücksichtigen.
Die mit den verschiedenen Testszenarien realisierte Testumgebung für AODV und
OLSR sind im Abschnitt 5.3.1 beschrieben. Laut Angaben der Entwickler von
Windows AODV“, basiert diese Implementierung auf der RFC 3561 [IETF, 2003d].
”
Die Implementierung OLSRD“ hält sich an die RFC 3626 [IETF, 2003e] und ent”
sprechend sind die Routingparameter implementiert. Dabei ist aber zu beachten, dass
verschiedene Parameter voneinander abhängig sind bzw. sich mit Hilfe anderer Para-
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
94
meter berechnen lassen. Somit können sie nicht willkürlich geändert werden.
Zur besseren Veranschaulichung der erhaltenen Messwerte werden zwei unterschiedliche Diagrammtypen verwendet. Für die Darstellung der Messungen zur Netzlast,
der Übertragungsrate und dem Topologieverhalten werden Messwertkurven verwendet. In diesen Diagrammen wird die resultierende Datenrate bzw. Übertragungsrate
aller verwendeten Geräten in Abhängigkeit von der Zeit und der Bewegung bzw. Position des mobilen Knotens (Laptop-1) dargestellt. Von besonderem Interesse sind dabei
die Übertragungsraten der beiden anderen Geräte, wenn sich der Laptop-1 im Netz
bewegt bzw. sich an einem bestimmten Messpunkt befindet. Um eine bessere Auswertung dieser Messungen zu ermöglichen, werden die entsprechenden Werte für den
ankommenden Verkehr, den abgehenden Verkehr und schließlich den resultierenden
Gesamtverkehr in getrennten Abbildungen dargestellt. Dabei berechnet sich der resultierende Gesamtverkehr aus dem ankommenden und abgehenden Verkehr.
Hingegen bieten sich für die Betrachtungen zur mittleren Übertragungsrate Säulendiagramme an. Mit Hilfe dieser Diagramme wird die mittlere Übertragungsrate der
einzelnen Geräte für jeden Messpunkt dargestellt, wenn sich der Laptop-1 an dem entsprechenden Messpunkt befindet. Zur Berechnung der mittleren Übertragungsrate an
einem Messpunkt wird eine Mittelung über alle erhalten Wert, d.h. die resultierenden
Übertragungsraten des entsprechenden Gerätes, des Messpunktes durchgeführt.
6.2
6.2.1
Messungen
Messungen zur erzeugten Netzlast
Messung mit AODV
In der Abbildung 6.1 ist der abgehende Verkehr der verwendeten Geräte dargestellt.
Aus der Abbildung geht hervor, dass zu verschiedenen Zeitpunkten einzelne Peaks“
”
erscheinen. Bei weiterführenden Betrachtung und Messungen wurde deutlich, dass diese nur in Verbindung mit MS Windows auftreten. MS Windows versucht, sobald eine
Netzwerkumgebung vorhanden ist, Nachrichten über das NetBIOS“-Protokoll zu ver”
senden. Mit Hilfe des Tools Analyzer“ konnten diese Pakte ermittelt werden. NetBI”
”
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
95
Messung mit AODV
- Erzeugte Netzlast ("Outgoing Traffic")
4,000
MP
1
"Outgoing Traffic" [kbit/s]
3,500
MP
2
MP
5
MP
6
MP
5
MP
1
3,000
2,500
2,000
1,500
1,000
0,500
Start AODV 0,000
Arbeitsplatz-0,500
PC-1
Start AODV
Laptop-1
Start AODV
Laptop-3
0
100
200
300
400
500
600
700
800
900
t [s]
Laptop-1 (10.0.0.1)
Arbeitspaltz-PC-1 (10.0.0.3)
Laptop-3 (10.0.0.4)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.1: Messung mit AODV - Erzeugte Netzlast (Abgehender Verkehr)
OS“ ist eine API für Netzwerkanwendungen und wird von den meisten Diensten und
Anwendungen, die innerhalb von MS Windows arbeiten, verwendet. NetBIOS“ ver”
wendet den UDP-Port 137 und durch das Versenden eines solchen Paketes erhöht sich
die Netzlast um ca. 400 bit/s. Z.B. versendet der Laptop-3 (10.0.0.4) zum Zeitpunkt
t = 315 s ein NetBIOS“-Paket, was wiederum bei den beiden anderen Geräten einen
”
erhöhten ankommenden Verkehr verursacht. Diese Pakte werden von allen verwendeten Geräten versendet und führen zu einer zusätzlichen Belastung des Netzes.
An den Messpunkten MP5 und MP6 kommt es zur Veränderung der Netzlast, was
auf die Veränderung des Netzes zurückzuführen ist. Der Laptop-1 bewegt sich aus der
Funkreichweite vom Arbeitsplatz-PC-1 und der Laptop-2 befindet sich sowohl im Sendebereich vom Laptop-1 als auch vom Arbeitsplatz-PC-1.
Weiterhin wird deutlich, dass AODV eine relativ geringe Netzlast erzeugt. Dies ist
bedingt durch die Funktionsweise von reaktiven Protokollen, zu denen AODV zählt.
In der Abbildung 6.2 ist der ankommende Verkehr dargestellt. Dabei wird deutlich,
dass sobald ein Knoten mit dem Senden beginnt, alle anderen Knoten des Ad-hocNetzes diese Daten empfangen und somit ankommenden Verkehr besitzen. Mit steigender Anzahl der Teilnehmer wird dieser größer. An den Messpunkten MP5 und
MP6 kommt es zur Veränderung der erzeugten Netzlast, die durch die Veränderung
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
96
Messung mit AODV
- Erzeugte Netzlast ("Incoming Traffic")
4,000
MP
1
3,500
MP
2
MP
5
MP
6
MP
5
MP
1
"Incoming Traffic" [kbit/s]
3,000
2,500
2,000
1,500
1,000
0,500
Start AODV
ArbeitsplatzPC-1
0,000
0
100
200
300
400
500
600
700
800
900
-0,500
t [s]
Start AODV
Laptop-1
Laptop-1 (10.0.0.1)
Start AODV
Laptop-3
Arbeitsplatz-PC-1 (10.0.0.3)
Laptop-3 (10.0.0.4)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.2: Messung mit AODV - Erzeugte Netzlast (Ankommender Verkehr)
des Netzes und der Distanz zwischen den Knoten entsteht.
Messung mit AODV
- Erzeugte Netzlast ("Total Traffic")
4,000
3,500
MP
1
MP
2
400
500
MP
5
MP
6
MP
5
MP
1
"Total Traffic" [Mbit/s]
3,000
2,500
2,000
1,500
1,000
0,500
Start AODV
ArbeitsplatzPC-1
Start AODV
Laptop-1
Start AODV
Laptop-3
0,000
0
100
200
300
600
700
800
900
-0,500
t [s]
Laptop-1 (10.0.0.1)
Arbeitsplatz-PC-1 (10.0.0.3)
Laptop-3 (10.0.0.4)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.3: Messung mit AODV - Erzeugte Netzlast (Gesamtverkehr)
Die Abbildung 6.3 verdeutlicht den resultierenden Gesamtverkehr, der sich aus dem
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
97
abgehenden und ankommenden Verkehr berechnet.
Bei der Analyse des abgehenden Verkehrs wird deutlich, das AODV nur eine sehr
geringe Netzlast erzeugt. Dies ist bedingt durch die Funktionsweise von reaktiven Protokollen, zu denen AODV zählt.
Messung mit OLSR
Messung mit OLSR
- "Erzeugte Netzlast" ("Outgoing Traffic")
3,500
MP
1
"Outgoing Traffic" [kbit/s]
3,000
Start OLSR
ArbeitsplatzPC-1
Start OLSR
Laptop-1
Start OLSR
Laptop-2
MP
2
MP
5
MP
6
MP
5
MP
1
2,500
2,000
1,500
1,000
0,500
0,000
0
100
200
300
400
500
600
700
800
900
-0,500
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.4: Messung mit OLSR - Erzeugte Netzlast (Ankommender Verkehr)
Die Abbildung 6.4 zeigt den abgehenden Verkehr der verwendeten Geräte. Auf den
verwendeten Geräten wird nacheinander OLSR gestartet und es wird sofort Netzlast
erzeugt. Wie bereits bei den Messungen zu AODV treten auch hier wieder die einzelnen Peaks“ auf, die durch das NetBIOS“ verursacht werden. Bei der Analyse des
”
”
abgehenden Verkehrs wird deutlich, das OLSR eine relativ große Netzlast erzeugt, die
Einfluss auf das komplette Ad-hoc-Netz hat. Bereits beim Starten von OLSR wird
eine Karte des Netzes erstellt. Eine periodische Aktualisierung der Routen ist erforderlich, was zur Erhöhung der Netzlast führt. Diese wird mit zunehmender Knotenund Routenanzahl größer. Ebenfalls kommt es an den Messpunkten MP5 und MP6 zur
Veränderung der Netzlast, was auf die Veränderung des Netzes zurückzuführen ist. Der
Laptop-1 bewegt sich aus der Funkreichweite vom Arbeitsplatz-PC-1 und der Laptop-2
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
98
befindet sich sowohl im Sendebereich vom Laptop-1 als auch vom Arbeitsplatz-PC-1.
Messung mit OLSR
- "Erzeugte Netzlast" ("Incoming Traffic")
3,500
MP
1
"Incoming Traffic" [kbit/s]
3,000
MP
2
MP
5
MP
6
MP
5
MP
1
2,500
2,000
1,500
1,000
0,500
Start OLSR 0,000
ArbeitsplatzPC-1
-0,500
0
100
200
300
400
500
600
700
800
900
t [s]
Start OLSR
Laptop-1
Laptop-1 (10.0.0.1)
Start OLSR
Laptop-2
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.5: Messung mit OLSR - Erzeugte Netzlast (Ankommender Verkehr)
In der Abbildung 6.5 ist der ankommende Verkehr dargestellt. Der resultierende Gesamtverkehr, der sich aus dem abgehenden und ankommenden Verkehr berechnet, ist
in der Abbildung 6.6 dargestellt.
Messung mit OLSR
- "Erzeugte Netzlast" ("Total Traffic")
3,500
MP
1
"Total Traffic" [kbit/s]
3,000
MP
2
MP
5
MP
6
MP
5
MP
1
2,500
2,000
1,500
1,000
0,500
Start OLSR 0,000
ArbeitsplatzPC-1
-0,500
Start OLSR
Laptop-1
Start OLSR
Laptop-2
0
100
200
300
400
500
600
700
800
900
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbietsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.6: Messung mit OLSR - Erzeugte Netzlast (Gesamtverkehr)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
99
Abschließender Vergleich von AODV und OLSR
Aus den Messungen zu beiden Routingverfahren wird deutlich, dass OLSR eine wesentlich höhere Netzlast erzeugt als AODV. Dies ist dadurch begründet, dass OLSR zu den
proaktiven Verfahren zählt und AODV hingegen zur Gruppe der reaktiven Verfahren
gehört. Aber mit zunehmender Mobilität der aktiven Knoten wird auch die Netzlast
von AODV größer. Diese wird aber trotzdem geringer sein, als dies im Vergleich bei
einem gleichen Netz, das OLSR unterstützt, der Fall wäre.
6.2.2
Messungen bei Veränderung der Topologie
Messungen mit AODV
In der Abbildung 6.7 ist der resultierende Gesamtverkehr aller verwendeten Geräte in
Abhängigkeit von der Position und Bewegung des mobilen Knotens dargestellt.
Messung mit AODV
- Veränderung der Topologie ("Total Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
3
5
6 5
7 8
9
8
7 5 1
6,000
"Total Traffic" [Mbit/s]
5,000
4,000
3,000
2,000
1,000
Start
AODV
Start
„Traffic“
0,000
0
200
400
600
800
1000
1200
1400
-1,000
t [s]
Laptop-1 (10.0.0.1)
Arbeitsplatz-PC-1 (10.0.0.3)
Laptop-3 (10.0.0.4)
Zeigt die Aktivität von AODV an
Verdeutlicht den Messpunkt
Abbildung 6.7: Messung mit AODV - Veränderung der Topologie (Gesamtverkehr)
Dieser berechnet sich aus dem abgehenden Verkehr (s. Abbildung 6.8) und ankommenden Verkehr (s. Abbildung 6.9).
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
100
Messung mit AODV
- Veränderung der Topologie ("Outgoing Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
3
5
6 5
7 8
9
8
7 5
1
6,000
"Outgoing Traffic" [kbit/s]
5,000
4,000
3,000
2,000
1,000
0,000
Start
AODV
0
200
400
600
-1,000
800
1000
1200
1400
t [s]
Start
„Traffic“
Laptop-1 (10.0.0.1)
Arbeitsplatz-PC-1 (10.0.0.3)
Laptop-3 (10.0.0.4)
Zeigt die Aktivität von AODV an
Verdeutlicht den Messpunkt
Abbildung 6.8: Messung mit AODV - Veränderung der Topologie (Abgehender
Verkehr)
Messung mit AODV
- Veränderung der Topologie ("Incoming Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
3
5
6 5
7 8
9
8
7 5
1
"Incoming Traffic" [kbit/s]
6,000
5,000
4,000
3,000
2,000
1,000
Start
AODV
0,000
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Arbeitsplatz-PC-1 (10.0.0.3)
Laptop-3 (10.0.0.4)
Zeigt die Aktivität von AODV an
Verdeutlicht den Messpunkt
Abbildung 6.9: Messung mit AODV - Veränderung der Topologie (Ankommender
Verkehr)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
101
In der Abbildung 6.7 sind die Phasen, in denen neue Routen gefunden und aufgebaut werden, nur schlecht erkennbar. Mit Hilfe des Log-Files“, das von Win”
”
dows AODV“ erstellt wird, können die Betrachtungen aber vorgenommen werden.
Innerhalb dieses Log-Files“, werden alle Informationen des Ad-hoc-Netzes aufgezeigt.
”
Windows AODV“ benötigt von der Initialisierung des Interfaces“ bis zum Versenden
”
”
der ersten Hello Message“ ca. 15 Sekunden.
”
Initialisierung der
Netzwerkkarten
Fri Apr 15 15:28:14 2005
:
:
Fri Apr 15 15:28:14 2005
BindingIndex: 5
Device Name :\Device\{A214E2BF-B02F-4136-B4F0
-75224B1CE1E6}
Device desc :RoamAbout 802.11 DS
:
:
Fri Apr 15 15:28:14 2005
5. \Device\{A214E2BF-B02F-4136-B4F0-75224B1CE1E6}
- RoamAbout 802.11 DS
Fri Apr 15 15:28:14 2005
Matched binding index:5
IPv4-Adressen der
WLAN-Karte
Aufbau der
Routingtabelle
Fri Apr 15 15:28:14 2005
IfIndex:2 IP:10.0.0.1 Mask:255.255.255.0
Fri Apr 15 15:28:14 2005
Set special gw ip=10.0.0.254
Fri Apr 15 15:28:15 2005
Adding Destination:10.0.0.1 Nexthop:10.0.0.1 DSN:1
Hops:0
Lifetime:4294967295.0 to Route Table
Fri Apr 15 15:28:15 2005
Adding 10.0.0.3 to LF All-neighbors Table
Abbildung 6.10: Windows AODV-Log-File“ - Starten von Windows AODV
”
In der Abbildung 6.10 ist das Log-File“ mit der Initialisierung des Interfaces“ und
”
”
dem Versenden der ersten Hello Message“ für den Laptop-1 (10.0.0.1) dargestellt.
”
Anhand der Abbildung 6.7 wird deutlich, dass mit zunehmender Distanz zwischen
der Quelle (Laptop-1) und dem Ziel (Arbeitsplatz-PC-1) die Übertragungsrate entsprechend kleiner wird, beispielsweise bei der Bewegung vom MP3 zum MP4 und
der resultierenden Übertragungsrate am MP4. Am Messpunkt MP9 kommt es sogar
zum Totalausfall und der Datentransfer ist nicht mehr möglich. Die Bewegungen vom
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
102
Laptop-1 innerhalb des Netzes führen zur Veränderung der Netztopologie. Deutlich
wird es bei der Bewegung vom MP5 zum MP6, denn die Quelle verliert hier die Route
zum Ziel, so dass eine neue Route erst gefunden bzw. aufgebaut werden muss. Aber
auch bei den Messpunkten MP7, MP8 und MP9 erfolgt die Weiterleitung der Daten über den Laptop-3. In diesem Fall vergehen ca. 6 Sekunden, bis eine neue Route
gefunden und in die Routingtabelle eingetragen wird.
Fri Apr 15 15:37:24 2005
Checking for expired routes
Fri Apr 15 15:37:25 2005
Neighbor link break!:NBR:10.0.0.3 CurrTime:1113572245.41
LastHelloTime:1113572240.755 LastKeepAliveTime:1113572240.755
Wegfall einer
Route und
entfernen dieser
Route aus der
Routingtabelle
Fri Apr 15 15:37:25 2005
Deleting Kernel Route Dest:10.0.0.3 Nexthop:10.0.0.3 If:2
Fri Apr 15 15:37:25 2005
Deleting route from driver
Fri Apr 15 15:37:25 2005
RERR case1:
Fri Apr 15 15:37:25 2005
Received Route Trigger; src:10.0.0.1 dst:10.0.0.3
Fri Apr 15 15:37:25 2005
Creating RREQ callback after 800 msecs
„Route
Discovery“-Phase
Neue Route zum
Ziel ermittelt und
eintragen in die
Routingtabelle
Fri Apr 15 15:37:25 2005
Send RREQ:
Flags: G HCNT:0 RREQID:18 D:10.0.0.3 DSN:39 O:10.0.0.1 OSN:38
:
Fri Apr 15 15:37:27 2005
Rcvd RREP Dest:10.0.0.3/0 Hops:1 Dest_seq:39 Orig:10.0.0.1
Lifetime:6860 Flags:0 PrevHop:10.0.0.4
Fri Apr 15 15:37:27 2005
Adding kernel route Dst:10.0.0.3Mask:0xffffffff Nexthop:10.0.0.4 Metric:2
Fri Apr 15 15:37:27 2005
Adding route in driver
:
Abbildung 6.11: Windows AODV-Log-File“ - Aufbau einer neuen Route
”
In der Abbildung 6.11 ist das Log-File“ mit dem Verbindungsabbruch und der Initia”
lisierung einer neuen Route dargestellt. Die neue Route führt dann über den Laptop-3,
denn dieser hat sowohl den Laptop-1 als auch den Arbeitsplatz-PC-1 als Eintrag in
seiner Routingtabelle. Besonders deutlich wird das Routingverhalten vom Laptop-2
anhand der beiden Abbildungen 6.8 und 6.9. An den Messpunkten MP6, MP7, MP8
und MP9 wird deutlich, dass der Laptop-3 die Daten vom Laptop-1 empfängt und dann
an den Arbeitsplatz-PC-1 weiterleitet. Somit hat der Laptop-3 an diesen Messpunkten
sowohl abgehenden als auch ankommenden Verkehr.
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
103
Messungen mit OLSR
Der resultierende Gesamtverkehr aller verwendeten Geräte in Abhängigkeit von der
Position und Bewegung des mobilen Knotens ist in der Abbildung 6.12 dargestellt.
Messung mit OLSR
- Veränderung der Topologie ("Total Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
3
5
6
5
7 8
9
8
7
5
1
6,000
"Total Traffic" [Mbit/s]
5,000
4,000
3,000
2,000
1,000
Start
OLSR
0,000
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.12: Messung mit OLSR - Veränderung der Topologie (Gesamtverkehr)
Der resultierende Gesamtverkehr berechnet sich aus dem abgehenden Verkehr (s. Abbildung 6.13) und ankommenden Verkehr (s. Abbildung 6.14).
Aus der Abbildung 6.12 geht hervor, dass OLSR bei Veränderung der Netztopologie sofort reagiert und der IP-Verkehr ohne wesentliche Zeitverzögerung über neue
Routen weitergeleitet wird. Dies ist dadurch begründet, dass bei proaktiven Routingalgorithmen die Knoten bereits beim Verbindungsaufbau Informationen zu allen
Nachbarn besitzen. Anhand der Messung wird deutlich, dass sofort beim Start des
IP-Traffics“ zwischen Quelle und Ziel eine entsprechende Route vorhanden ist und
”
die Daten können ohne Verzögerung übertragen werden. Wie bei den Messungen zu
AODV, führt die Vergrößerung der Distanz zwischen Quelle und Ziel zur Verkleinerung
der Übertragungsrate. Dies wird z.B. bei der Bewegung vom MP3 zum MP4 und der
resultierenden Übertragungsrate am MP4 deutlich. Ebenfalls führt die Bewegung des
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
104
Messung mit OLSR
- Veränderung der Topologie ("Outgoing Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
3
5
6
5
7 8
9
8
7
5
1
"Outgoing Traffic" [Mbit/s]
6,000
5,000
4,000
3,000
2,000
1,000
Start
OLSR
0,000
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.13: Messung mit OLSR - Veränderung der Topologie (Abgehender
Verkehr)
Messungen mit OLSR
- Veränderung der Topologie ("Incoming Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1
2 3
4
3
5
6
5
7 8
9
8
7
5
1
"Incoming Traffic" [Mbit/s]
6,000
5,000
4,000
3,000
2,000
1,000
0,000
Start
OLSR
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Laptop-3 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.14: Messung mit OLSR - Veränderung der Topologie (Ankommender
Verkehr)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
105
mobilen Knotens (Laptop-1) innerhalb des Netzes zur Veränderung der Netztopologie.
Deutlich wird es bei der Bewegung vom MP5 zum MP6. Bei dieser Bewegung verliert
die Quelle die Route zum Ziel und sofort wird mit Hilfe der Routingtabellen eine neue
Route gefunden bzw. aufgebaut. Die neue Route führt dann über den Laptop-2, denn
dieser hat sowohl den Laptop-1 als auch den Arbeitsplatz-PC-1 als Eintrag in seiner
Routingtabelle.
Abschließender Vergleich von AODV und OLSR
Beide Routingverfahren reagieren auf die Veränderung der Netztopologie. Wesentliche Unterschiede existieren beim Management der Routen. Die proaktiven Verfahren
stellen bereits zu Beginn die Route zur Verfügung. Hingegen stellen die reaktiven Verfahren erst eine Route zur Verfügung, wenn sie benötigt wird.
6.2.3
Bewertung der mittleren Übertragungsrate
Diese Bewertung beruht auf den im Abschnitt 6.2.2 ermittelten Übertragungsraten.
Wie bereits erläutert, wird mit Hilfe von Säulendiagrammen die mittlere Übertragungsrate der einzelnen Geräte für jeden Messpunkt dargestellt, wenn sich der Laptop-1
an dem entsprechenden Messpunkt befindet. Zur Berechnung der mittleren Übertragungsrate an einem Messpunkt wird eine Mittelung über alle erhaltenen Werte, d.h.
die resultierenden Übertragungsraten des entsprechenden Gerätes, des Messpunktes
durchgeführt.
Beim Vergleich der mittleren Übertragungsrate von AODV (s. Abbildung 6.15) und
OLSR (s. Abbildung 6.16) wird deutlich, dass bei AODV die mittlere Übertragungsrate an verschiedenen Messpunkten etwas größer ist als bei OLSR, beispielsweise an den
Messpunkten MP4 und MP5. Dies ist dadurch begründet, dass AODV erst bei Bedarf
eine Route aufbaut, was eine höhere Bandbreite ermöglicht. Die höhere Bandbreite
geht aber auf Kosten der Zeit, die sich durch den Aufbau von Routingtabellen ergibt.
Aber die Zeit, die AODV für den Aufbau einer Route benötigt, hat natürlich auch Einfluss auf die mittlere Übertragungsrate der Messpunkte, an denen eine Veränderung
der Netztopologie erfolgt. An diesen Messpunkten, d.h. MP6, MP7, MP8 und MP9,
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
106
Messung mit AODV
- mittlere Übertragungsrate ("Total Traffic")
mittlere Übertragungsrate [Mbits/s]
6,000
5,000
4,000
3,000
2,000
1,000
0,000
MP1
MP2
MP3
MP4
MP3
MP5
MP6
MP5
MP7
MP8
MP9
MP8
MP7
MP5
MP1
Messpunkte
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.4)
Arbeitsplatz-PC-1 (10.0.0.3)
Abbildung 6.15: Messung mit AODV - Mittlere Übertragungsrate (Gesamtverkehr)
Messung mit OLSR
- mittlere Übertragungsrate ("Total Traffic") 6,000
mittlere Übertragungsrate [Mbit/s]
5,000
4,000
3,000
2,000
1,000
0,000
MP1
MP2
MP3
MP4
MP3
MP5
MP6
MP5
MP7
MP8
MP9
MP8
MP7
MP5
MP1
Messpunkt
"Laptop-1 (10.0.0.1)"
"Laptop-2 (10.0.0.2)"
"Arbeitsplatz-PC-1 (10.0.0.3)"
Abbildung 6.16: Messung mit OLSR- Mittlere Übertragungsrate (Gesamtverkehr)
wird deutlich, dass die mittlere Übertragungsrate von OLSR größer ist als bei AODV.
Bei beiden Verfahren ist offensichtlich, dass mit zunehmender Distanz zwischen Quelle
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
107
und Ziel und dem Routing des Verkehrs über weitere Knoten, die mittlere Übertragungsrate abnimmt. Am Messpunkt MP4 hat sich die Distanz zwischen der Quelle
und dem Ziel vergrößert und somit nimmt die mittlere Übertragungsrate ab. Das Routing über einen weiteren Knoten wird an den Messpunkten MP6, MP7, MP8 und
MP9 deutlich. Diese Messpunkte befinden sich nicht mehr in der Funkreichweite vom
Arbeitsplatz-PC-1. Eine neue Route zwischen dem Arbeitsplatz-PC-1 und dem mobilen Knotens (Laptop-1) wird ermittelt, die dann über den Laptop-2 führt. Der Laptop2 besitzt nur ein Interface“ und die Bandbreite ist begrenzt auf ca. 5,5 Mbits. Der
”
Knoten hat sowohl ankommenden als auch abgehenden Verkehr, der auf die verfügbare
Bandbreite aufgeteilt werden muss.
6.2.4
Messungen mit unterschiedlichen Betriebssystemen
Messungen mit AODV
Laut Angaben der Entwickler ist eine Interoperabilität, mit anderen AODVImplementierungen möglich. Leider kann in den momentanen Tests diese Aussage nicht
bestätigt werden. Somit sind keine Aussagen zur Interoperabilität und dem damit verbundenem Verhalten des Ad-hoc-Netzes möglich.
Messungen mit OLSR
Diese Messung unterscheidet sich von den bisherigen Messungen dadurch, dass als
Betriebssystem auf dem Laptop-2, Linux OS verwendet wird.
In der Abbildung 6.17 ist der resultierende Gesamtverkehr dargestellt, der sich aus
dem ankommenden Verkehr (s. Abbildung 6.18) und abgehenden Verkehr (s. Abbildung 6.19) zusammensetzt.
Außerdem sind in der Abbildung 6.20 die mittleren Übertragungsraten der einzelnen
Geräte in Abhängigkeit von der Position des mobilen Knotens (Laptop-1) dargestellt.
Es wird deutlich, dass unterschiedliche Betriebssysteme die Funktionsfähigkeit des Adhoc-Netzes nicht beeinflussen. Als Vergleich zu dieser Messung werden die bereits in
Abschnitt 6.2.2 vorgestellten Ergebnisse verwendet.
Bei der Gegenüberstellung der beiden Messungen fällt auf, dass bei der Verwendung
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
108
Messung mit OLSR
- Unterschiedliche Betriebssysteme ("Total Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
3
5
6
5
7
8
9
8 7
5
1
6,000
"Total Traffic" [Mbit/s]
5,000
4,000
3,000
2,000
1,000
0,000
Start
OLSR
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.17: Messung mit OLSR - Unterschiedliche Betriebssysteme (Gesamtverkehr)
Messung mit OLSR
- Unterschiedliche Betriebssysteme ("Incoming Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
3
5
6
5
7
8
9
8 7
5
1
"Incoming Traffic" [Mbit/s]
6,000
5,000
4,000
3,000
2,000
1,000
Start
OLSR
0,000
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.18: Messung mit OLSR - Unterschiedliche Betriebssysteme (Ankommender Verkehr)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
109
Messung mit OLSR
- Unterschiedliche Betriebssysteme ("Outgoing Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1 2 3
4
5
6
5
7
8
9
8 7
5
1
3
"Outgoing Traffic" [Mbit/s]
6,000
5,000
4,000
3,000
2,000
1,000
0,000
Start
OLSR
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.19: Messung mit OLSR - Unterschiedliche Betriebssysteme (Abgehender Verkehr)
Messung mit OLSR
- Unterschiedliche Betriebssysteme, die mittlere Übertragungsrate ("Total Traffic")
6,000
mittlere Übertragungsrate [Mbit/s]
5,000
4,000
3,000
2,000
1,000
0,000
MP1
MP2
MP3
MP4
MP3
"Laptop-1 (10.0.0.1)"
MP5
MP6 MP5 MP7
Messpunkte
"Laptop-2 (10.0.0.2)"
MP8
MP9
MP8
MP7
MP5
MP1
"Arbeitsplatz-PC-1 (10.0.0.3)"
Abbildung 6.20: Messung mit OLSR - Unterschiedliche Betriebssysteme, die mittlere Übertragungsrate (Gesamtverkehr)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
110
vom Laptop-2 als Router wesentlich höhere Übertragungsraten möglich sind. Die höhere Übertragungsraten werden besonders an den Messpunkten MP6, MP7, MP8 und
MP9 deutlich.
Ein Grund für dieses Verhalten und das Ergebnis könnten die Konfigurationsmöglichkeiten der WLAN-Karte unter Linux OS sein. Unter Linux OS können gegenüber MS
Windows weitere Parameter der WLAN-Karte konfiguriert werden, wie beispielsweise
die Sendeleistung. Diese Parameter könnten Einfluss auf das Netz und auf die vorhandene Übertragungsrate haben.
6.2.5
Messungen mit unterschiedlichen Routingparametern
Messungen mit AODV
Bei Windows AODV“ können die Routingparameter nicht verändert werden.
”
Messungen mit OLSR
Bei dieser Messung werden folgende Routingparameter verändert:
• Hello Interval“ = 4 sec und
”
• Hello Validity Time“ = 12 sec.
”
Diese Veränderungen haben natürlich Einfluss auf das Ad-hoc-Netz und das Routing
innerhalb des Netzes.
In der Abbildung 6.21 ist der resultierende Gesamtverkehr dargestellt, dieser berechnet
sich aus dem ankommenden (s. Abbildung 6.22) und abgehenden Verkehr (s. Abbildung 6.23).
In den Abbildungen sind für jedes Gerät die einzelnen Messwertkurven dargestellt.
Zusätzlich sind in der Abbildung 6.24 die mittleren Übertragungsraten der einzelnen
Geräte in Abhängigkeit von der Position des mobilen Knotens (Laptop-1) dargestellt.
Als Vergleich zu dieser Messung werden die bereits in Abschnitt 6.2.2 vorgestellten
Ergebnisse verwendet.
Bei der Gegenüberstellung dieser Messung werden wesentliche Unterschiede deutlich.
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
111
Messung mit OLSR
- Veränderung der Routingparameter ("Total Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
1
2 3
4
5
6
5
7
8
9
8
7
5
1
3
6,000
"Total Traffic" [Mbit/s]
5,000
4,000
3,000
2,000
1,000
0,000
Start
OLSR
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.21: Messung mit OLSR - Veränderung der Parameter (Gesamtverkehr)
Messung mit OLSR
- Veränderung der Routingparameter ("Incoming Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
3
5
6
5
7
8
9
8
7
5
1 2 3
4
1
"Incoming Traffic" [Mbit/s]
6,000
5,000
4,000
3,000
2,000
1,000
Start
OLSR
0,000
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.22: Messung mit OLSR - Veränderung der Parameter (Ankommender Verkehr)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
112
Messung mit OLSR
- Veränderung der Routingparameter ("Outgoing Traffic")
7,000
MP MP MP MP MP MP MP MP MP MP MP MP MP MP MP
3
5
6
5
7
8
9
8
7
5
1 2 3
4
1
"Outgoing Traffic" [Mbit/s]
6,000
5,000
4,000
3,000
2,000
1,000
0,000
Start
OLSR
0
200
400
600
800
1000
1200
1400
-1,000
Start
„Traffic“
t [s]
Laptop-1 (10.0.0.1)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Zeigt die Aktivität von OLSR an
Verdeutlicht den Messpunkt
Abbildung 6.23: Messung mit OLSR - Veränderung der Parameter (Abgehender
Verkehr)
Messung mit OLSR
- Veränderung der Routingparameter, die mittlere Übertragungsrate ("Total Traffic")
6,000
mittlere Übertragungsrate [Mbit/s]
5,000
4,000
3,000
2,000
1,000
0,000
MP1
MP2
MP3
MP4
MP3
MP5
MP6
MP5
MP7
MP8
MP9
MP8
MP7
MP5
MP1
Messpunkt
Laptop-1 (10.0.01)
Laptop-2 (10.0.0.2)
Arbeitsplatz-PC-1 (10.0.0.3)
Abbildung 6.24: Messung mit OLSR - Veränderung der Parameter, die mittlere
Übertragungsrate (Gesamtverkehr)
KAPITEL 6. MESSUNGEN UND ERGEBNISSE
113
Die Übertragungsraten dieser Messung sind etwas größer als bei der in Abschnitt 6.2.2
diskutierten Messung, bei der keine Veränderungen an den Routingparametern vorgenommen wurden. Besonders deutlich wird es an den Messpunkten MP4 und MP8.
Bedingt durch die Modifikation der Routingparameter verändert sich auch die Aktualisierung der Routen und somit verringert sich die erzeugte Netzlast, was zur Vergrößerung der Bandbreite führt. Kommt es zum Verlust einer Route, dauert es etwas
länger, bis eine neue Route gefunden und aufgebaut wird. Dies wird deutlich bei der
Bewegung vom MP5 zum MP6 und vom MP5 zum MP7.
KAPITEL 7. AUSBLICK
114
Kapitel 7
Ausblick
Ad-hoc-Netze erfahren eine ständige Weiterentwicklung und entsprechende Implementierungen kommen hinzu. Momentan existieren Implementierungen zu AODV, ARAN,
DSR, FSR und OLSR, aber nur ein geringer Anteil wird weiterentwickelt. Dabei finden
Multicast“, IPv6 und QoS nur wenig Aufmerksamkeit. Für Ad-hoc-Netze existieren
”
weitere Routingverfahren, die aber momentan nicht implementiert sind.
Mit der Weiterentwicklung ist denkbar, dass die Lücken geschlossen werden, d.h. neue
Protokolle implementiert und die fehlenden Features, wie beispielsweise Multicast“,
”
IPv6 und QoS, integriert werden.
Die Testumgebung ist nicht speziell für eine Implementierung oder ein Routingverfahren konzipiert, sondern kann individuell eingesetzt werden und bildet die Grundlage
für entsprechende Tests zu Ad-hoc-Netzen. Entsprechende Veränderungen der Testumgebung sollten erfolgen, wenn neue Implementierungen mit zusätzlichen Features
entstehen bzw. ältere Implementierungen zusätzliche Erweiterungen erfahren.
Denkbar sind auch Untersuchungen zum Verhalten des Netzes, wenn unterschiedliche
mobile Geräte, beispielsweise Laptops und PDAs, verwendet werden, denn verschiedene Routingalgorithmen benutzen als Metrik die Stromversorgung, die bei PDAs
etwas kritischer zu betrachten ist. Leider konnten in die momentane Testumgebung
keine PDAs integriert werden und somit sind keine Aussagen zu diesen Testszenarien
möglich. Die PDAs ermöglichen eine bessere Mobilität der Knoten und somit können
auch Aussagen zum Verhalten des Netzes getroffen werden, wenn sich die Knoten mit
KAPITEL 7. AUSBLICK
115
höherer Geschwindigkeit bewegen. In den absolvierten Tests wurden Laptops verwendet und die maximal mögliche Geschwindigkeit beträgt ca. 3 km/h. In weiterführenden
Tests sollten entsprechende Aussagen verifiziert werden, wenn PDAs verwendet werden.
Ebenfalls ist in der momentanen Testumgebung die Mobilität der Knoten nur auf ein
mobiles Gerät, bedingt durch die Stromversorgung und Akkulaufzeit, beschränkt. Weiterführende Untersuchungen zu mehreren mobilen Teilnehmern sind denkbar.
Somit sollten sich weitere Untersuchungen mit der Integration verschiedener mobiler
Geräte und neuer Implementierungen beschäftigen. Zusätzliche Testszenarien sollten
dazu erstellt werden und entsprechende Messungen sollten erste Aussagen zur Leistungsfähigkeit der Umgebung liefern.
Weiter Betrachtungen könnten Multicast“, IPv6 und QoS sein.
”
KAPITEL 8. ZUSAMMENFASSUNG
116
Kapitel 8
Zusammenfassung
Im Vordergrund dieser Arbeit standen Aussagen zu vorhandenen Implementierungen,
die für Ad-hoc-Netze momentan verfügbar sind und die Realisierung einer Testumgebung. Mit dieser sollten Aussagen zu den Ad-hoc-Netzen und den Implementierungen
getroffen werden.
Da Ad-hoc-Netze keine Infrastruktur besitzen, können sie einfach und schnell aufgebaut werden. Deshalb stellen sie eine wesentliche Alternative zu den Infrastrukturnetzen dar. Die Problematik der Ad-hoc-Netze ist, dass sie geeignete Routingprotokolle aufweisen müssen, um die Netzdynamik zu unterstützen. Die Topologie eines
Ad-hoc-Netzes verändert sich dynamisch, denn alle Knoten sind mobil, aber es wird
nicht ausgeschlossen, dass auch feste Knoten vorhanden sind. Dabei können die festen Knoten einen Zugang zu Infrastrukturnetzen gewährleisten bzw. anbieten. Die
Routingprotokolle müssen mit der Mobilität der Teilnehmer sowie deren begrenzter
Energieversorgung und Bandbreite umgehen können.
Für die Routingprotokolle der Ad-hoc-Netze existieren bereits verschiedene Implementierung, die sich anhand der Anforderung, die an das System gestellt werden,
dem Verhalten und der notwendigen Konfiguration unterscheiden. Einige Implementierungen sind aber nicht mehr auf dem neuesten Stand und erfahren keine Weiterentwicklung. Eine Verwendung dieser Implementierungen wird nicht empfohlen, denn
es kann zu Problemen mit der Software und neueren Betriebssystemen führen. Eine
geringe Anzahl von Implementierungen zeichnet sich durch eine fortschreitende Wei-
KAPITEL 8. ZUSAMMENFASSUNG
117
terentwicklung aus. Dies hat den Vorteil, dass neue Features“ vorhanden sind und
”
entsprechende Veränderungen an RFC bzw. Draft berücksichtigt werden. Insbesondere für Multicast“, IPv6 und QoS sind weitere Veränderungen erforderlich. Die Anzahl
”
der Implementierungen, die diese Anforderungen bereits unterstützen, ist sehr gering.
Zur Realisierung der Testumgebung für Ad-hoc-Netze werden die wesentlichen Eigenschaften der Ad-hoc-Netze und verwendeten Implementierungen berücksichtigt. Dabei
bestehen die Netze sowohl aus mobilen als auch festen Knoten. Der Testaufbau und
Testablauf ist dabei abhängig vom Testszenario und der Konfiguration der Knoten.
Die Erfassung von Messdaten eines Ad-hoc-Netzes erwies sich im ersten Moment als
schwierig. Die verfügbaren Softwarekomponenten, die zum Monitoring“ verwendet
”
werden, orientieren sich an Infrastrukturnetzen und bieten nur eingeschränkte bzw.
keine Möglichkeit zur genauen Erfassung und abschließender Archivierung der Daten. Deshalb wurden an den frei verfügbaren Softwarekomponenten Veränderungen
vorgenommen, die eine Archivierung der Daten, welche innerhalb von Ad-hoc-Netzen
ermittelt werden, ermöglichen.
Von den vorhandenen Implementierungen wurden AODV und OLSR ausgewählt. Mit
Hilfe der Testumgebung konnten erste Aussagen zu dem entsprechenden Routingprotokoll getroffen werden. Die Unterschiede zwischen den reaktiven und proaktiven Verfahren wurden deutlich und anhand weiterführender Untersuchungen konnten auch
Aussagen zur Interoperabilität getroffen werden. Es wird ersichtlich, dass die einzelnen
Routingalgorithmen unterschiedliche Metriken zum Management der Routen verwendet. Eine Veränderung am Routingprotokoll sollte dabei auf Grundlage der Anwendung
geschehen, d.h. entsprechend der Verwendung sind die Routingparameter zu wählen
und anzupassen. Die ersten Ergebnisse machen deutlich, dass die Überlegungen zur
Testumgebung und den Testszenarien gute Aussagen liefern.
Es wurde gezeigt, dass MANETs mit den heute zur Verfügung stehenden Technologien
bereits realisierbar sind, wenn auch durch veraltete oder unvollständige Implementierungen Einschränkungen zu berücksichtigen sind. Für spezielle Anwendungen, wie beispielsweise die spontane Vernetzung von Konferenzteilnehmern oder Arbeitsgruppen
sind MANETs schon heute gut realisierbar und sinnvoll anwendbar. Für den breiten
Einsatz von Ad-hoc-Netzen ist jedoch noch einige Entwicklungsarbeit notwendig.
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Anhang A
Informationen zu den
Softwarekomponenten
A.1
A.1.1
Implementierungen der Routingprotokolle
AODV
118
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
Entwickler:
AODV IPv6“ [3]
”
Peter Lee
Quelle:
http://members.shaw.ca/aodv6-sfu/
119
AODV Kernel“ [4]
”
NIST - National Institute of Standards
”
and Technology“; Technology Adminis”
tration, U.S. Department of Commerce“
http://w3.antd.nist.gov/wctg/
aodv kernel/index.html
Betriebssystem
Linux OS
Linux OS
Aktuelle Version:
AODV6-R0.2“
”
2.2.2
draft-ietf-manet-aodv-10 [IETF, 2002b];
draft-ietf-manet-aodv-10 [IETF, 2002b];
draft-perkins-aodv6-01 [IETF, 2000a];
draft-perkins-aodv6-01 [IETF, 2000a]
Programmiersprache:
RFCs und Drafts:
draft-wakikawa-manet-globalv602 [IETF, 2002c]
Systemanforderungen:
Softwareanforderungen:
Sonstige Eigenschaften:
Linux OS;
Linux 2.4.1;
WLAN-Karte;
WLAN-Karte;
Netfilter“
”
Netfilter“;
”
Packet Forwarding“
”
AODV-UU“ v0.5 [7]
”
IPv6-Unterstützung;
von den Entwicklern mit 3 Knoten (2
Hops“) getestet
”
Funktionsfähig:
User-Space-Daemon“;
”
unterhält Kernel-Routing-Table“
”
Ja
Ja, aber nur die Version 2.1.0!!
Tabelle A.1: Übersicht zu den AODV-Implementierungen (1)
Implementierung:
AODV-UCSB“ [5]
”
Entwickler:
Quelle:
http://moment.cs.ucsb.edu/AODV/aodv.
AODV-UIUC“ [6]
”
University of Illinois
”
Champaign“
at
Urbana-
http://aslib.sourceforge.net/
html
Betriebssystem:
Linux OS
Linux OS
Aktuelle Version:
aodv-ucsb-0.1b“
”
AODV-UIUC-0.5“ (2002-08-12)
”
Linux 2.4.1;
Linux 2.4.3;
WLAN-Karte;
WLAN-Karte;
Netfilter“
”
Netfilter“, Loadable Module Support“
”
”
und TUN/TAP Support“
”
ASL [1]
Verwendung wird nicht mehr empfohlen!!
einfaches API;
Keine Aussage, denn die Verwendung
User-Space-Daemon“
”
Nein
Programmiersprache:
RFCs und Drafts:
Systemanforderungen:
Softwareanforderungen:
Sonstige Eigenschaften:
Funktionsfähig:
wird nicht mehr empfohlen!!
Tabelle A.2: Übersicht zu den AODV-Implementierungen (2)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
AODV UU“ [7]
”
Uppsala University“
”
http://core.it.uu.se/AdHoc/
AODV-UU for IPv6“ [8]
”
University of Buckingham“
”
http://webspace.buckingham.ac.uk/
ImplementationPortal
cadams/bnrg/aodv6/index.html
Betriebssystem:
Linux OS
Linux OS
Aktuelle Version:
aodv-uu-0.9“
”
aodv-uu-ipv6-0.9 4“
”
draft-ietf-manet-aodv-13 [IETF, 2003b];
RFC 3561 [IETF, 2003d]
Entwickler:
Quelle:
120
Programmiersprache:
RFCs und Drafts:
RFC 3561 [IETF, 2003d]
Systemanforderungen:
Linux 2.4.x/2.6.x;
Linux 2.4.x/2.6.x;
WLAN-Karte;
WLAN-Karte;
Netfilter“
”
Netfilter“;
”
Packet Forwarding“
”
AODV-UU“ v0.9 [7]
”
IPv6-Unterstützung;
Softwareanforderungen:
Sonstige Eigenschaften:
Internet Gateway Support“;
”
User-Space-Daemon“;
”
zusätzlicher
Layer“
”
Abstraktion“, iplib“
”
für
für Einsatz in APE“ [9] entwickelt;
”
sowohl für WLAN-“Interface“ als auch für
übliche Netzwerk-“Interface“ einsetzbar;
Verwendung im ns2 [29];
von den Entwicklern getestet mit 5 KnoFunktionsfähig:
ten (4 Hops“);
”
Ja
Nein
Tabelle A.3: Übersicht zu den AODV-Implementierungen (3)
IP-Version”
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
Entwickler:
Hut AODV for IPv6“ [18]
”
Antti J. Tuominen, Helsinki University
”
of Technology, Telecommunications Soft-
121
MAODV“ [28]
”
University of Maryland“
”
ware und Multimedia Lab“
http://www.tcs.hut.fi/∼anttit/
Quelle:
http://www.isr.umd.edu/CSHCN/
manet/aodv/
research/maodv/MAODV-UMD.html
Betriebssystem:
Linux OS
Linux OS
Aktuelle Version:
hut-aodv6-0.20“
”
patch-maodv-umd-0.6“;
”
maodv-umd-0.7.2-rel-1.2.patch“
”
Programmiersprache:
RFCs und Drafts:
RFC 3561 [IETF, 2003d];
draft-perkins-manet-aodv6-01
draft-ietf-manet-maodv-00 [IETF, 2000b]
[IETF,
2000a];
draft-wakikawa-manet-globalv602 [IETF, 2002c]
Systemanforderungen:
Linux 2.4.3;
Linux OS;
WLAN-Karte
WLAN-Karte
Softwareanforderungen:
Sonstige Eigenschaften:
IPv6-Unterstützung;
unterstützt Eigenschaften der Spezifikation, abgesehen von Hop-to-Hop“;
”
Funktionsfähig:
kein Multicast“ und QoS
”
Nein
AODV-UU“ v0.6/v0.72 [7]
”
Multicast“-Unterstützung;
”
-DMAODV Flags“ im Makefile“ zur
”
”
Aktivierung/Deaktivierung von Multi”
cast“;
noch nicht im ns2 [29] integriert
Ja
Tabelle A.4: Übersicht zu den AODV-Implementierungen (4)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
TinyAODV“ [43]
”
http://cvs.sourceforge.net/viewcvs.
UoB JAdHoc“ [44]
”
ComNet, Universität Bremen“
”
http://www.aodv.org/modules.php?
py/tinyos/tinyos-1.x/contrib/hsn/
op=modload&name=UpDownload&file=
Entwickler:
Quelle:
122
index&req=viewdownload&cid=2
Betriebssystem:
Tiny OS
MS Windows;
Linux OS
Aktuelle Version:
UoB Jadhoc v0.2“ (MS Windows/Linux
”
OS); (2004-03)
UoB JAdhoc v0.2“ (Sharp Zaurus Linux
”
(PDA)) (2004-03);
UoBWinAODV v0.15“ (MS Windows
”
XP) (2005-03
Programmiersprache:
Java
RFCs und Drafts:
Systemanforderungen:
RFC 3561 [IETF, 2003d]
WLAN-Karte
Linux OS:
Linux Kernel mit IP: advanced router“
”
MS Windows 2000/XP;
WLAN-Karte
Softwareanforderungen:
Linux OS:
JRE [23] oder SDK [22], Libpcap“ [26]
”
und Jpcap“ [24]
”
MS Windows:
JRE [23] oder SDK [22],
WinPcap“ [47] und Jpcap“ [24]
”
”
Zaurus Linux:
Cross-Compiler“ ( gcc“) für
”
”
ARM Prozessor
Sonstige Eigenschaften:
verschiedene Vereinfachungen der AODV-
IPv4-Unterstützung
Implementierung:
RREP-“Messages“ nur durch Destina”
tion“ erstellt,
Routen sterben nicht bzw. laufen nicht
ab,
nur Hop Count Metric“ wird benutzt,
”
keine Messages“, um Routen aktiv zu
”
halten,
Route Error“, wenn Data Message“
”
”
nichtzustellbar
Funktionsfähig:
Keine Aussage
Ja, aber nach den ersten Tests, wird die
Verwendung nicht empfohlen!!
Tabelle A.5: Übersicht zu den AODV-Implementierungen (5)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
Windows AODV [46]
Entwickler:
Intel Corporation“
”
http://moment.cs.ucsb.edu/AODV/
Quelle:
aodv-windows.html
Betriebssystem:
MS Windows
Aktuelle Version:
windows aodv 0.1.14“
”
Programmiersprache:
RFCs und Drafts:
RFC 3561 [IETF, 2003d]
Systemanforderungen:
MS Windows XP;
WLAN-Karte
Softwareanforderungen:
Sonstige Eigenschaften:
verwendet UDP/IP-Port 654
Funktionsfähig:
Ja
Tabelle A.6: Übersicht zu den AODV-Implementierungen (6)
123
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
A.1.2
124
ARAN
Entwickler:
Daniel LaFlamme, Secure Internet and Group-Networking Lab, Computer
”
Science at the Depertment, University of Massachusetts, Arnherst“
Quelle:
http://signl.cs.umass.edu/arand/index.php
Betriebssystem:
Linux OS
Aktuelle Version:
arand-0.3.2“ (2003-01-31)
”
C
Programmiersprache:
RFCs und Drafts:
Systemanforderungen:
x86 PC/Laptop;
Linux 2.4.x;
WLAN-Karte;
X509-Zertifikat auf jedem Knoten
Softwareanforderungen:
OpenSSL Library“;
”
ASL [1]
Sonstige Eigenschaften:
Funktionsfähig:
Nein
Tabelle A.7: Übersicht zu ARAN
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
A.1.3
125
DSR
Implementierung:
Entwickler:
Quelle:
DSR (Insignia)“ [13]
”
INSIGNIA Project Team“
”
http://comet.columbia.edu/
DSR (Monarch) [14]
Rice Monarch Project“
”
http://www.monarch.cs.rice.edu/
insignia/testbed.html
dsr-impl.html
Betriebssystem:
FreeBSD
FreeBSD
Aktuelle Version:
INSIGNIA-0.01“
”
DSR-0.02“
”
Programmiersprache:
RFCs und Drafts:
draft-ietf-manet-insignia-01
[IETF,
draft-ietf-manet-dsr-01 [IETF, 1998]
1999]
Systemanforderungen:
x86 Compatible Notebook;
x86 Compatible Notebook;
FreeBSD 2.2.7;
FreeBSD 2.2.7/3.3;
WLAN-Karte (Lucent);
WLAN-Karte
MAC-Filter
Softwareanforderungen:
Sonstige Eigenschaften:
DSR Kernel Source Code“ [13];
”
INSIGNIA Kernel Source Code“ [13];
”
INSIGNIA GUI-API Code“ [13];
”
Tcl/Tk“ 8.0
”
basiert auf der CMU Implementation
zwei Phasen Route Discovery“
”
von DSR;
einfache
QoS-Benachrichtigungs-
GUI mit Kontrolle von API;
mechanismus;
MPEG I Video Header Parser Tool“;
”
GUI mit Kontrolle von API;
Route-Cache“;
”
Multi-Level Priority Interface Queu”
es“;
MPEG TV“ wird als Streaming Vi”
”
deo“
Paket rettend;
Anpassungsfähige
Link Layer Re”
transmission“ und Missing Neighbor
”
Detection“;
Gateway“ Funktionalität für die Inte”
gration von IP-Netzwerken;
MAC-Filter
für
Ad-hoc-Netzwerk
”
Emulation“ und Testen der Protokolle;
Unterstützung für mehrere Schnittstellen;
zahlreiche Support-Tools;
benutzt IPv6-artige
Headers“, um
”
Routinginformationen zu übertragen
Funktionsfähig:
Keine Aussage, da FreeBSD benötigt
Keine Aussage, da FreeBSD benötigt
wird!!
wird!!
Tabelle A.8: Übersicht zu den DSR-Implementierungen (1)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
126
DSR (Piconet)“ [15]
”
DSR (UC Boulder-Click!)“ [16]
”
http://piconet.sourceforge.net/
http://pecolab.colorado.edu/DSR.
thesis/main.html
html
Linux/BSD OS;
Linux OS
Entwickler:
Quelle:
Betriebssystem:
UNIX-like OS
Aktuelle Version:
Programmiersprache:
initial release“ (2002-11-11)
”
C
RFCs und Drafts:
Systemanforderungen:
Softwareanforderungen:
Sonstige Eigenschaften:
C++
draft-ietf-manet-dsr-08 [IETF, 2003a]
x86 PC;
x86 PC/Laptop;
Linux 2.4.3;
Linux 2.4.2;
H3600 series Compaq iPAQ;
WLAN-Karte;
WLAN-Karte (Lucent Orinoco);
Wireless Tools“ [48]
”
Netfilter“
”
Cross Compiler“ und Varios Tools“
”
”
für iPAQ;
Click! Modular Router“ v1.2.4 [11];
”
0.20 iPAQ/Linux Distribution“ oder
”
Familiar Linux Distribution“ 0.4
”
IPv4-Unterstützung;
Kernel Tap Option“
”
Nur in Verbindung mit Click! Modular
Router“ [11] funktionsfähig!!
Funktionsfähig:
Handheld“-Unterstützung
”
Nein
Ja
Tabelle A.9: Übersicht zu den DSR-Implementierungen (2)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
A.1.4
FSR-ATR“
”
Entwickler:
Quelle:
Adaptive Communications Research Laboratories“ (ACR)
”
http://www.acr.atr.jp/acr/general/product/GSRFSR/
Betriebssystem:
Linux OS
Aktuelle Version:
Programmiersprache:
FSR-ATR v1.2“ (2005-01-19)
”
C
RFCs und Drafts
draft-ietf-manet-fsr-03 [IETF, 2002a]
Systemanforderungen:
x86 PC/Laptop;
Linux 2.2.x/2.4.x/2.6.x;
H3600 series Compaq iPAQ;
WLAN-Karte (Lucent Orinoco);
Sonstige Eigenschaften:
Netfilter“
”
Linux Cross Compiler“ und Various Tools“ 0.20 iPAQ/Linux für iPAQ;
”
”
0.20 iPAQ/Linux Distribution“oder Familiar Linux Distribution“ 0.40
”
”
IPv4-Unterstützung;
Funktionsfähig:
Ja
Softwareanforderungen:
Unterschiede zu draft-ietf-manet-fsr-03 [IETF, 2002a]
Tabelle A.10: Übersicht zu FSR-ATR“
”
127
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
A.1.5
128
OLSR
Implementierung:
Entwickler:
crc-nolsrdv6“ [12]
”
Project Hipercom, Inria Rocquen”
court, NRL“
inria-nolsrd“ [19]
”
Project Hipercom, Inria Rocquen”
court“
Quelle:
http://pf.itd.nrl.navy.mil/
http://pf.itd.nrl.navy.mil/
project/showfiles.php?group id=
project/showfiles.php?group id=
16414&release id=18181
16414&release id=18181
Betriebssystem:
Linux OS
Linux OS
Aktuelle Version:
nolsrdv6“ (2003-04-03)
”
C++
nolsrd 1.0a9“ (2003-04-04)
”
Programmiersprache:
RFCs und Drafts:
Systemanforderungen:
draft-ietf-manet-olsr-03 [IETF, 2000c]
Linux Kernel 2.x.x;
Linux Kernel 2.x.x;
WLAN-Karte;
WLAN-Karte;
IP-Forward“
”
IP-Forward“
”
Softwareanforderungen:
Sonstige Eigenschaften:
Modifizierung
des
Inria
”
OLSR
IPv4-Unterstützung;
Source-Codes“
verwendet UDP-Port 698
Funktionsfähig:
Nein
Nein
Tabelle A.11: Übersicht zu den OLSR-Implementierungen (1)
Implementierung:
nolsrd“ [31]
”
nrlolsrd“ [32]
”
http://sourceforge.net/projects/
http://pf.itd.nrl.navy.mil/
Entwickler:
Quelle:
nolsr/
project/showfiles.php?group id=
16414&release id=18367
Betriebssystem:
MS Windows
MS Windows;
Linux OS
Aktuelle Version:
nrlolsrdv7.5“ (2004-11-17)
”
Programmiersprache:
nOLSR-old“ (2003-11-02)
”
C
RFCs und Drafts:
RFC 3626 [IETF, 2003e]
RFC 3626 [IETF, 2003e]
Systemanforderungen:
MS Windows;
Linux OS;
WLAN-Karte
MS Windows;
WLAN-Karte
Softwareanforderungen:
Sonstige Eigenschaften:
Funktionsfähig:
Ja
Ja
Tabelle A.12: Übersicht zu den OLSR-Implementierungen (2)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
OLSR (GRC, UPV)“ [33]
”
Entwickler:
129
OLSRD“ [35]
”
U.S. Naval Research Laboratory“
”
http://www.olsr.org/index.cgi?
Quelle:
http://www.grc.upv.es/software/
Betriebssystem:
Linux OS;
Linux OS;
MS Windows
MS Windows
action=main
Aktuelle Version:
Olsrd-0.4.8“
”
C++
Programmiersprache:
RFCs und Drafts:
Systemanforderungen:
Softwareanforderungen:
Sonstige Eigenschaften:
RFC 3626 [IETF, 2003e]
Linux 2.x.x;
Linux OS;
MS Windows;
MS Windows;
WLAN-Karte;
WLAN-Karte
IP-Forward“
”
PICA Library“ [40]
”
IPv4-Unterstützung;
Pocket-PC“-Unterstützung;
”
verwendet UDP-Port 698
Funktionsfähig:
Ja
Ja
Tabelle A.13: Übersicht zu den OLSR-Implementierungen (3)
Implementierung:
OLSR11win (GRC)“ [34]
”
Entwickler:
OLSRv3 (Inria)“ [37]
”
Projet Hipercom, INRIA Rocquen”
court“
Quelle:
http://hipercom.inria.fr/olsr/
http://www.grc.upv.es/software/
intro OLSR11win.html
Betriebssystem:
Linux OS
MS Windows
RFCs und Drafts:
draft-ietf-manet-olsr-03 [IETF, 2000c]
draft-ietf-manet-olsr-11 [IETF, 2003c]
Systemanforderungen:
Linux 2.x.x;
MS Windows;
WLAN-Karte;
WLAN-Karte
Aktuelle Version:
Programmiersprache:
IP-Forward“
”
Softwareanforderungen:
Sonstige Eigenschaften:
WinPcap“ [47]
”
IPv4-Unterstützung;
verwendet UDP-Port 698;
User-Space-Daemon“;
”
keine Modifikation des Kernels erforderlich
Funktionsfähig:
Nein
Ja
Tabelle A.14: Übersicht zu den OLSR-Implementierungen (4)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
130
OOLSR“ [38]
”
Entwickler:
OLSR EXTRA“ [36]
”
Projet Hipercom, INRIA Rocquen”
court“
Quelle:
http://pf.itd.nrl.navy.mil/
http://hipercom.inria.fr/OOLSR/
project/showfiles.php?group id=
16414&release id=18181
Betriebssystem:
Linux OS
Linux OS;
MS Windows
Aktuelle Version:
ethereal-parser-RFC-1.0“;
”
ethereal-parser-spec3-1.0“;
”
manetconf-1.1a9-4“
”
Programmiersprache:
C++
RFCs und Drafts:
Systemanforderungen:
oolr-0.99.15“
”
RFC 3626 [IETF, 2003e]
Linux OS;
Linux OS:
WLAN-Karte
g++“ v2.95/3.3,
”
glibc“ v2.3.2
”
MS Windows 2000/XP und CE ARM;
WLAN-Karte
Softwareanforderungen:
Sonstige Eigenschaften:
IPv4-Unterstützung für MS Windows;
IPv4- und IPv6-Unterstützung für Linux OS;
Cygwin Support“;
”
ns2-Unterstützung
Funktionsfähig:
Nein
Ja, aber unter Linux OS nur mit
IPv4. Unter MS Windows keine Aussage, denn Cygwin“ stand nicht zur
”
Verfügung.
Tabelle A.15: Übersicht zu den OLSR-Implementierungen (5)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
Entwickler:
PyOLSR“ [41]
”
Cedric Adjih, Projet
”
INRIA Rocquencourt“
Quelle:
http://hipercom.inria.fr/pyOLSR/
http://qolsr.lri.fr/
Betriebssystem:
Linux OS
Linux OS
Aktuelle Version:
Programmiersprache:
PyOLSR-0.0.2“
”
Python
Qolyester-2004-1023“
”
C++
RFCs und Drafts:
RFC 3626 [IETF, 2003e]
RFC 3626 [IETF, 2003e]
Systemanforderungen:
Linux OS;
Linux 2.4;
WLAN-Karte;
WLAN-Karte
Hipercom,
131
QOLSR“ [42]
”
Laboratoire De Recherche En Infor”
matique“
XFree86
Softwareanforderungen:
Sonstige Eigenschaften:
verwendete UDP-Port 698
gcc“ v3.0
”
IPv4 und IPv6-Unterstützung;
verwendet UDP-Port 698;
bietet QoS;
Funktionsfähig:
Keine Aussage
kein Support für Link Layer Notifica”
tion“ und Security Considerations“
”
Ja, aber nur mit IPv4!!
Tabelle A.16: Übersicht zu den OLSR-Implementierungen (6)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
A.2
132
Tools für Ad-hoc-Netze
Implementierung:
Entwickler:
APE“ [9]
”
Department of Computer System,
”
Uppsala University“; Ericsson“
”
Click! Modular Router“ [11]
”
MIT LCS’s Parallel and Distributed
”
Operating Systems group, Mazu Networks, the ICSI Center for Internet Research and UCLA“
Quelle:
http://www.pdos.lcs.mit.edu/
http://pdos.csail.mit.edu/click/
click/-downloads
Betriebssystem:
Linux OS;
Linux OS
MS Windows
Aktuelle Version:
Programmiersprache:
ape-0.4“ (2002-11-07)
”
Perl
click-1.4.3“
”
Linux OS:
Linux Kernel 2.2/ 2.4;
RFCs und Drafts:
Systemanforderungen:
“Lilo“ oder Grub boot-loader“,
”
Ext2, Ext3 oder ReiserFS (Filesys-
Vanilla Linux Kernel“;
”
700 MHz Pentium III;
tem)
MS Windows mit Dos;
WLAN-Karte
WLAN-Karte
Softwareanforderungen:
Sonstige Eigenschaften:
Pcap Library“
”
momentan sind folgende Routingprotokolle implementiert:
Funktionsfähig:
AODV-UU“,
”
Mad-hoc AODV“,
”
OLSR (Inria)“,
”
LUNAR“,
”
TORA“,
”
DSR“,
”
Nein
Ja
Tabelle A.17: Übersicht zu den Tools für Ad-hoc-Netze (1)
ANHANG A. INFORMATIONEN ZU DEN SOFTWAREKOMPONENTEN
Implementierung:
Entwickler:
LUNAR“ [27]
”
Uppsala University“
”
133
PACMAN“ [39]
”
Dr. Kilian Weniger, Ingmar Baumgart und Prof. M. Zitterbart;
Insti”
tut für Telematik, Universität Karlsruhe (TH)“
Quelle:
http://core.it.uu.se/AdHoc/
http://pacman-autoconf.
LunarImpl
sourceforge.net/
Betriebssystem:
Linux OS
Linux OS
Aktuelle Version:
Lunar-0.4.0“
”
Perl
Pacman-1.32“
”
C
Programmiersprache:
RFCs und Drafts:
draft-ietf-manet-fsr-03 [IETF, 2002a];
draft-ietf-manet-olsr-03 [IETF, 2000c];
RFC 3626
Systemanforderungen:
Softwareanforderungen:
Sonstige Eigenschaften:
Funktionsfähig:
Linux Kernel 2.4/2.6;
Linux 2.4.19, 2.6.x;
WLAN-Karte;
WLAN-Karte;
TUN/TAP Device“, ARPD“ und
”
”
Netfilter“
”
Wireless Tools“ [48];
”
LUNAR Kernel Module“
”
integriert in APE“
”
Keine Aussagen
CONFIG IP NF QUEUE“
”
Ja
Tabelle A.18: Übersicht zu den Tools für Ad-hoc-Netze (2)
Implementierung:
WNTE“ [49]
”
Institut für Telematik, Universität
”
Karlsruhe (TH)“
ViTAN“ [45]
”
F. Fitzek, acticom GmbH - mobile
”
”
networks“; P. Seeling und M. Reisslein,
Quelle:
http://wnte.sourceforge.net/
Arizone State University“; M. Zorzi,
”
”
Univerità di Ferrara“
”
http://www.acticom.de/vitan.html
Betriebssystem:
Linux OS
Entwickler:
Linux OS;
MS Windows
Aktuelle Version:
v1.1
Programmiersprache:
Perl
RFCs und Drafts:
Systemanforderungen:
Linux OS;
Linux OS;
WLAN-Karte;
Windows XP
iptable“, iptmac“ und
”
”
ssh public key“ auf jedem Knoten
”
Softwareanforderungen:
Sonstige Eigenschaften:
Verwendung
in
Funktionsfähig:
PACMAN“ [39]
”
Ja
Verbindung
mit
Pcap Library“
”
mit Hilfe der Knotenkoordinaten Darstellung des Netzes
Ja
Tabelle A.19: Übersicht zu den Tools für Ad-hoc-Netze (3)
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
134
Anhang B
Hinweise zur realisierten
Testumgebung
B.1
Verwendete Hardwarekomponenten
B.1.1
Überblick zu den Hardwarekomponenten
Wesentliche Bestandteile der Testumgebung sind sowohl mobile als auch feste Endgeräte mit unterschiedlichen Betriebssystemen, d.h. Linux OS und MS Windows, und
einer entsprechenden WLAN-Karte, RoamAbout 802.11 DS (Cabletron)“ (s. Tabel”
le B.5).
In der realisierten Testumgebung dient der Arbeitsplatz-PC-1 (s. Tabelle B.4) als festes
Endgerät und mit Hilfe von Laptops, d.h. Laptop-1 (s. Tabelle B.1), Laptop-2 (s. Tabelle B.2) und Laptop-3 (s. Tabelle B.3), werden die mobilen Endgeräte realisiert. Die
Spezifikationen der verwendeten Geräte sind in den folgenden Tabellen dargestellt. Neben Aussagen zur Hard- und Software sind in diesen Tabellen auch die entsprechenden
IPv4-Adressen dargestellt.
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
Bezeichnung:
Laptop-1
Hersteller:
Fujitsu Siemens
Produkt:
AMILO Pro V2000
CPU:
Mobile Intel Celeron M, 1500 MHz
Arbeitsspeicher:
246 MB (PC2700 DDR SDRAM)
Netzwerkkarte-WLAN:
Intern:
Intel(R) PRO/Wireless 2200BG Network Connection;
54 Mbps
Extern (PCMCIA Karte): RoamAbout 802.11 DS (Cabletron);
11 Mbps
Betriebssystem:
Linux Kernel 2.4.26 und MS Windows XP Professional (SP1)
IPv4-Adresse:
Netzwerk-Adresse:
10.0.0.0/24
Host“-Adresse:
”
Subnetzmaske“:
”
Broadcast“:
”
10.0.0.1/24
255.255.255.0/24
10.0.0.255/24
Tabelle B.1: Laptop-1 - Spezifikation
Bezeichnung:
Laptop-2
Hersteller:
Dell
Produkt:
Latitude C800
135
CPU:
Mobile Intel Pentium IIIE, 700 MHz
Arbeitsspeicher:
512 MB (SDRAM)
Netzwerkkarte-WLAN:
Intern:
Extern (PCMCIA Karte): RoamAbout 802.11 DS (Cabletron);
11 Mbps
Betriebssystem:
Linux Kernel 2.4.26 und MS Windows 2000 Professional (SP4)
IPv4-Adresse:
Netzwerk-Adresse:
10.0.0.0/24
Host“-Adresse:
”
Subnetzmaske“:
”
Broadcast“:
”
10.0.0.2/24
255.255.255.0/24
10.0.0.255/24
Tabelle B.2: Laptop-2 - Spezifikation
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
Bezeichnung:
Laptop-3
Hersteller:
Toshiba
Produkt:
PORTEGE 3500
CPU:
Mobile Intel Pentium III-S, 600 MHz
Arbeitsspeicher:
240 MB (SDRAM)
Netzwerkkarte-WLAN:
Intern:
Intel(R) PRO/100 M Mobile Connection;
11 Mbps
Extern (PCMCIA Karte): RoamAbout 802.11 DS (Cabletron);
11 Mbps
Betriebssystem:
MS Windows XP Professional (SP2)
IPv4-Adresse:
Netzwerk-Adresse:
10.0.0.0/24
Host“-Adresse:
”
Subnetzmaske“:
”
Broadcast“:
”
10.0.0.4/24
255.255.255.0/24
10.0.0.255/24
Tabelle B.3: Laptop-3 - Spezifikation
Bezeichnung:
Arbeitsplatz-PC-1
Hersteller:
Produkt:
CPU:
Intel Pentium 4, 1513 MHz
Arbeitsspeicher:
512 MB (SDRAM)
Netzwerkkarte-WLAN:
Intern:
Extern (PCMCIA Karte): RoamAbout 802.11 DS (Cabletron);
11 Mbps
Betriebssystem:
MS Windows XP Professional (SP2)
IPv4-Adresse:
Netzwerk-Adresse:
10.0.0.0/24
Host“-Adresse:
”
Subnetzmaske“:
”
Broadcast“:
”
10.0.0.3/24
255.255.255.0/24
10.0.0.255/24
Tabelle B.4: Arbeitsplatz-PC-1 - Spezifikation
136
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
Hersteller:
Cabletron
Produkt:
RoamAbout 802.11 DS
P/N:
CSIBD-AB-128
Chipset“:
”
Interface Type“:
”
Data Transfer Rate“:
”
Data Link Protocol“:
”
Frequency Band“:
”
Port(s) Required“:
”
Features“:
”
Software:
BAKOM 99.0538.L.P
PC Card
11 Mbps
IEEE 802.11b
2.4 GHz
Slot(s) Required 1*PC Card-type II
128-bit Verschlüsselung
MS Windows:
Client Manager Utility“ v3.30;
”
NDIS 5 Miniport Driver“ v7.86
”
Linux OS:
Tabelle B.5: RoamAbout 802.11 DS (Cabletron)“ - Spezifikation
”
137
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
B.1.2
138
Konfiguration der WLAN-Karte
Konfiguration der WLAN-Karten unter Linux OS
Die verwendete WLAN-Karte wird vom Linux OS unterstützt. Eine WLAN-Karte ist
für den Linux Kernel das gleiche wie eine normale Netzwerkkarte und somit als Ether”
net Device“ (z.B. eth1“) im Kernel angemeldet. Es ist aber zu beachten, das SuSE
”
diese Device“ als WLan“ bzw. WLan-Pcmcia“ (z.B. wlan0“) bezeichnet. Mit Hilfe
”
”
”
”
der Programme ifconfig“ und route“ kann die WLAN-Karte genauso konfiguriert
”
”
werden wie jede andere Netzwerkkarte (s. Abbildung B.1).
linux:~ # ifconfig –a
eth1 Link encap:Ethernet HWaddr 00:E0:63:82:A1:86
inet addr:10.0.0.1 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::2e0:63ff:fe82:a186/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:648 (648.0 b)
Interrupt:3 Base address:0x100
Abbildung B.1: Beispielausgabe: ifconfig -a“
”
Zum Einstellen der Wireless Extensions“ wird das Programm iwconfig“ verwendet.
”
”
iwconfig“ funktioniert genauso wie ifconfig“ und zeigt beim Aufrufen ohne Parameter
”
”
die aktuellen Einstellungen der Wireless Extensions“ an (s. Abbildung B.2).
”
linux:~ # iwconfig
eth1 IEEE 802.11-DS ESSID:"test-net" Nickname:"fujitsu"
Mode:Ad-Hoc Frequency:2.417GHz Cell: 00:E0:63:82:A1:86
Bit Rate=11Mb/s Tx-Power=15 dBm Sensitivity:1/3
Retry limit:4 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Abbildung B.2: Beispielausgabe: iwconfig
Die Abbildung B.3 verdeutlicht die Konfiguration der
ESSID“ und dem Modus.
”
WLAN-Device“ mit der
”
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
139
linux:~ # iwconfig <De v ic e > essid test-net
linux:~ # iwconfig <De v ic e > mode ad-hoc
Abbildung B.3: Linux OS - Konfiguration der WLAN-Karte mit der ESSID“
”
und dem Modus
Unter SuSE ist die entsprechende Konfigurationsdatei der WLAN-Karte im Verzeichnis
/etc/sysconfig/network/“ zu finden. Innerhalb dieses Verzeichnisses sind alle konfigu”
rierten Netzwerkkarten ( Devices“) zu finden. Die entsprechende Konfigurationsdatei
”
einer Device“ ist ifcfg-< Device >“. In der Abbildung B.4 ist ein Beispiel einer Kon”
”
figurationsdatei dargestellt. Enthalten sind sowohl allgemeine Einstellungen als auch
Wireless Extensions“ und die entsprechenden IPv4-Adressen.
”
BOOTPROTO='static'
DHCLIENT_SET_DOWN_LINK='yes'
MTU=''
REMOTE_IPADDR=''
STARTMODE='hotplug'
UNIQUE='K1pk.jrBDbmL7DWA'
WIRELESS_ESSID="test-net"
WIRELESS_KEY=''
WIRELESS_MODE='Ad-hoc'
WIRELESS_NICK='fujitsu'
WIRELESS_CHANNEL="2"
WIRELESS_NWID=''
WIRELESS_RATE='11M'
BROADCAST="134.102.158.255"
IPADDR='134.102.158.235'
NETMASK='255.255.255.248'
NETWORK='134.102.158.232'
Abbildung B.4: Linux OS - Konfigurationsdatei ifcfg-eth1“
”
Zusätzlich müssen per Kommandozeile weitere Parameter (s. Abbildung B.5) vor dem
Starten des eigentlichen Routingprotokolls eingegeben werden.
linux:~ # echo 1 >/proc/sys/net/ipv4/ip_forward
linux:~ # echo 1 >/proc/sys/net/ipv4/conf/all/accept_source_route
linux:~ # route add 255.255.255.255 <De v ic e >
Abbildung B.5: Linux OS - Zusätzliche Kommandozeilenparameter
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
140
Konfiguration der WLAN-Karte, unter MS Windows
Für die WLAN-Karte wird der entsprechende Treiber installiert und die IPv4-Adressen
werden konfiguriert (s. Abbildung B.6).
Abbildung B.6: MS Windows - Konfiguration der IPv4-Adressen
Nach der Konfiguration der IP-Adressen müssen die drahtlosen Netzeigenschaften konfiguriert werden (s. Abbildung B.7). Zusätzlich wird zur Konfiguration der WLANKarte ein Client Manager“ verwendet (s. Abbildung B.8). Mit Hilfe dieses können
”
verschiedene Einstellungen vorgenommen werden und die entsprechenden Informationen zur verwendeten WLAN-Karte werden dargestellt.
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
Abbildung B.7: MS Windows - Konfiguration der drahtlosen Netzeigenschaften
Abbildung B.8: MS Windows - Client Manager“ der WLAN-Karte
”
141
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
142
Für die WLAN-Karte und das verwendete Netzwerk können Profile angelegt werden,
in denen die wichtigen Einstellungen definiert werden. Die Profile können individuell
erstellt und verwendet werden. Für die verwendeten Geräte werden folgende Parameter
verwendet (s. Abbildung B.9):
• Netzwerkname: test-net“,
”
• Netzwerktype: Peer-to-Peer“-Gruppe,
”
• Kanalnummer: Channel 2“ und
”
• Datensicherheit: deaktiviert.
Abbildung B.9: MS-Windows - Konfigurationsprofil der WLAN-Karte
Um IP-Forwarding“ in MS Windows zu aktivieren, muss der entsprechende Regis”
trierungseintag verändert werden. Folgen Schritte sind erforderlich, um die TCP/IPWeiterleitung zu aktivieren:
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
143
1. Starten des Registrierungseditors ( Regedit.exe“).
”
2. Suchen des folgenden Schlüssels:
HKEY LOCAL M ACHIN E\SY ST EM \CurrentControlSet
”
\Services\T cpip\P arameters“
3. Setzen des Registrierungswertes:
Wertname: IPEnableRouter“
”
Werttyp: REG DWORD“
”
Wert: 1
Der Wert 1 aktiviert die TCP/IP-Weiterleitung für alle Netzwerkverbindungen,
die auf dem jeweiligen Computer installiert sind und verwendet werden.
4. Beenden des Registrierungseditors.
Abbildung B.10: Aktivierung von IP-Forward“ in der Registrierung
”
Um zu gewährleisten, dass andere Teilnehmer des Ad-hoc-Netzes auf die Dienste eines
Rechners zugreifen können, muss die Internetverbindungsfirewall“ deaktiviert werden
”
(s. Abbildung B.11).
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
144
Abbildung B.11: MS Windows - Deaktivierung der Internetverbindungsfirewall“
”
B.2
B.2.1
Verwendete Softwarekomponenten
AODV-UU“ (v0.9)
”
Zur Erstellung und Installation von AODV-UU“ muss der Netfilter Support“ im
”
”
Kernel vorhanden sein. Die folgenden Schritte sind für die erfolgreiche Installation
erforderlich:
1. Das Erstellen: make“.
”
2. Die Installation: make install“.
”
Zur Ausführung von AODV-UU“ muss das Modul kaodv.o“ bzw. kaodv.ko“ geladen
”
”
”
sein.
B.2.2
Windows AODV“ (v0.1.14)
”
Die Installation von Windows AODV“ gestaltet sich sehr einfach und erfolgt in den
”
folgenden Schritten:
1. Ausführen von setup.exe“.
”
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
145
2. Konfiguration der WLAN-Karte.
3. Konfiguration der IP-Adressen.
Für das WLAN-“Interface“ wird ein zusätzlicher Treiber, der AODV Routing Driver“,
”
installiert (s. Abbildung B.12).
Abbildung B.12: Windows AODV“ - AODV Routing Driver“
”
”
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
146
Zur Interoperabilität mit weiteren AODV-Implementierungen muss das Text-File“
”
aodv sign cfg.txt“ mit dem Wert 0“ angelegt werden. Dieses File“ wird dann in
”
”
”
das Installationsverzeichnis von Windows ADOV“ abgespeichert.
”
B.2.3
OLSRD“ (v0.48)
”
Installation unter Linux OS
Zur Erstellung und Installation von OLSRD“ müssen die Development Tools“ in”
”
stalliert sein. Die folgenden Schritte sind erforderlich:
1. Das Erstellen: make OS=linux“.
”
2. Die Installation: make install“.
”
3. Das Löschen der Objekt-Files: make clean“.
”
Vor dem Start von OLSRD“ muss das Config-File“, /etc/olsrd.conf“, bearbeitet und
”
”
”
angepasst werden. In der Abbildung B.13 ist das verwendete Config-File“ olsrd.conf“
”
”
dargestellt. Entsprechende Konfigurationen können innerhalb dieses Files“ vorgenom”
men werden. Die einzelnen Einstellungen sind von den Entwicklern gut erläutert, wurden aber in dieser Darstellung entfernt. Zum Ausführen von OLSRD“ sind Root“”
”
Rechte erforderlich.
Installation unter MS Windows
Die Installation unter MS Windows erfolgt mit Hilfe der ausführbaren Datei,
olsrd.exe“. Vor dem Start muss OLSRD“ konfiguriert werden. Ein entsprechen”
”
des Config-File“ kann angelegt werden (s. Abbildung B.13) oder innerhalb der GUI
”
können die Einstellungen vorgenommen werden.
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
147
DebugLevel 9
IpVersion
4
Hna4
{
# 0.0.0.0 0.0.0.0
}
Hna6
{
# ::
0
}
AllowNoInt yes
#TosValue
16
#Willingness 4
IpcConnect
{
MaxConnections 0
Host
127.0.0.1
#Host
10.0.0.5
#Net
192.168.1.0 255.255.255.0
#Net
10.0.0.0 255.255.255.0
}
UseHysteresis no
HystScaling
0.50
HystThrHigh
0.80
HystThrLow
0.30
#LinkQualityLevel 0
#LinkQualityWinSize 10
Pollrate
0.05
#TcRedundancy
0
#MprCoverage
1
#LoadPlugin "olsrd_dyn_gw.so.0.3"
#{
# Example: dyn_gw params
# PlParam "Interval" "40"
# PlParam "Ping"
"141.1.1.1"
# PlParam "Ping"
"194.25.2.129"
#}
Interface "eth1"
{
# Ip4Broadcast
255.255.255.255
# Ip4Broadcast
10.0.0.255
# Ip6AddrType
site-local
# Ip6MulticastSite
ff05::11
# Ip6MulticastGlobal
ff0e::1
HelloInterval
2.0
HelloValidityTime
6.0
TcInterval
5.0
TcV alidityTime
15.0
MidInterval
5.0
MidValidityTime
15.0
HnaInterval
5.0
HnaValidityTime
15.0
}
Abbildung B.13: OLSRD“ - Config-File“ olsrd.conf“
”
”
”
B.2.4
iPerf“
”
iPerf“ stellt eine Vielzahl von Parametern zur Verfügung, welche per Kommandozeile
”
aufgerufen werden können (s. Abbildung B.14).
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
148
Usage: iperf [-s|-c host] [options]
iperf [-h|--help] [-v|--version]
Client/Server:
-f, --format
-i, --interval
-l, --len
-m, --print_mss
[kmKM] format to report: Kbits, Mbits, KBytes, MBytes
#
seconds between peri odic bandwidt h reports
#[KM] length of bu ffer to rea d or write (default 8 KB)
print TCP maximum segment size (MTU - TCP/IP
header)
-o, --output
<filenam e>output the repor t or error message to this specified fil e
-p, --port
#
server port to listen on/connect to
-u, --udp
use UDP rather than TCP
-w, --window
#[KM] TCP window size (so cket buffer s ize)
-B, --bind
<host> bind to <hos t>, an int erface or m ulticast address
-C, --compatib ility
for use with ol der versions d oes not sent ex tra msgs
-M, --mss
#
set TCP maximum segm ent size (MT U - 40 bytes)
-N, --nodelay
set TCP no delay, disabling Nagle's Algorithm
-V, --IPv6V ersion
Set the domain to IPv6
Server s pecifi c:
-s, --server
-D, --daemon
-R, --remove
Client spe cific:
-b, --bandwidth
-c, --client
-d, --dualtest
-n, --num
-r, --tradeoff
-t, --time
-F, --fileinput
-I, --stdin
-L, --listenpo rt
-P, --parallel
-T, --ttl
Miscellane ous:
-h, --help
-v, --version
run in se rver mod e
run the server as a daemon
remove service in win32
#[KM]
for UDP, band width to se nd at in bi ts/sec
(default 1 Mbit/s ec, implies -u)
<host> run in client mode, connecting to <host>
Do a bidir ectional t est simulta neously
#[KM] number of b ytes to transmit (inst ead of -t)
Do a bidir ectional t est individually
#
time in seconds to transmi t for (d efault 10 secs )
<name> input the data to b e transmitted from a file
input the data to be transmitted from stdin
#
port to recieve bidir ectional tests back on
#
number of pa rallel cli ent threads to run
#
time-to-live, for multicast (default 1)
print this m essage and quit
print versio n informat ion and quit
[KM] Indicates options that supp ort a K or M suffix fo r kilo- or megaThe TCP window size op tion can be se t by th e envir onment variable
TCP_WINDOW_SIZE. M ost other o ptions can be set by an environm ent variable
IPERF_<long option nam e>, such as IPERF_BANDWIDTH.
Report bugs to <[email protected]>
Abbildung B.14: iPerf“ - Parameter
”
In der Abbildung B.15 sind die Kommandozeilenaufrufe vom Client dargestellt. Dieser
beinhaltet:
• die Client-Option und die dazugehörige Adresse des Servers (-c 10.0.0.3),
• die Bindung auf einen Ausgangsnetzadapter (-B 10.0.0.1),
• das Darstellungsintervall der Messwerte (-i 0.5 [sec]),
• die Zeitdauer der Verkehrserzeugung und -messung (-t 3600 [sec]) und
• den Export in eine entsprechende Datei (> test-routing.txt).
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
149
iperf –c 10.0.0.3 –B 10.0.0.1 –i 0.5 –t 3600 > test-routing.txt
Abbildung B.15: iPerf“ - Kommandozeilenaufruf des Clients
”
Die Kommandozeilenaufrufe vom Server, mit der Server-Option (-s) und der Bindung an den überwachten Ausgangsnetzwerkadapter (-B 10.0.0.3) sind in der Abbildung B.16 dargestellt.
iperf –s –B 10.0.0.3
Abbildung B.16: iPerf“ - Kommandozeilenaufruf vom Server
”
B.2.5
FTP
Auf dem Rechner, der als Server agieren soll, muss entsprechend ein FTP-Server installiert und konfiguriert werden. Über die Kommandozeile kann der Client auf den
Server zugreifen und ein entsprechender Datentransfer kann stattfinden. Eine Zusammenstellung der wichtigsten Befehle ist in der Abbildung B.17 zu finden.
ANHANG B. HINWEISE ZUR REALISIERTEN TESTUMGEBUNG
open
user
close
cd
get
put
mkdir
delete
mdelete
rename
Öffnet eine Verbindung zum Server
Definiert den User, der sich einloggen will. Fast
immer kann hier anonymous angegeben werden,
um eine anonyme Verbindung herzustellen. Da
der User in diesem Fall dem Server nicht bekannt
ist, hat er normaleweise auch nicht all Rechte und
kann zum Beispiel nur auf bestimmte
Verzeichnisse zugreifen.
Diese Art der Verbindung wird als Anonymous-ftp
bezeichnet.
Beendet eine Verbindung zum Server.
Wechselt in ein anderes Verzeichnis auf dem ftpServer. Statt "\" wie unter DOS und Windows
wird als Trennzeichen der normale Schrägstrich
"/" (Unix-Konvention) verwendet.
Kopiert eine Datei vom Server auf den lokalen
Rechner.
Kopiert eine Datei vom lokalen Rechner auf den
Server. Funktioniert aber nur, wenn man
Schreibrechte auf dem Server hat. Viele Server
stellen für diese Zweck ein incoming-Verzeichnis
zur Verfügung, in das Dateien abgelegt werden
dürfen.
Erzeugt ein neues Verzeichnis auf dem Server,
analog MkDir unter DOS
Löscht eine Datei auf dem Server.
Löscht mehrere Dateien über eine Maske
Mit dieser Funktion können Sie Dateien und
Verzeichnisse auf dem Server umbenennen.
Abbildung B.17: Wichtige FTP-Befehle
150
ANHANG C. VERÄNDERUNGEN AN DEN SOFTWARETOOLS
151
Anhang C
Veränderungen an den
Softwaretools
C.1
Modifikation von IPTraf“
”
Im Rahmen dieser Arbeit wurden Veränderungen am Source-Code“ vorgenommen,
”
die sich aber nur auf den TCP und UDP Service Monitor“ beschränken. Im Ver”
zeichnis iptraf-2.70/src/“ wurde die Datei ifstafs.c“ angepasst. Neben verschiedenen
”
”
Veränderungen wurde eine Funktion zur Erstellung des Log-Files“ hinzugefügt (s.
”
Abbildung C.1).
Die Funktion write proto“ überprüft im ersten Schritt, ob bereits ein entsprechendes
”
File“ existiert, wenn dies aber nicht der Fall ist, wird das Log-File“ neu erstellt.
”
”
Ist das File“ bereits vorhanden, werden die ermittelten Messwerte an die bereits
”
gespeicherten Daten angehangen. Der Name des Files“ setzt sich aus der Bezeichnung
”
Protocol“ und dem aktuellen Datum zusammen, beispielsweise Protocol20050510“.
”
”
Die Idee ist dabei, dass das File“ bei der Veränderung des Datums neu erstellt wird
”
und somit für jeden Tag ein entsprechendes File“ erstellt wird. In das Log-File“
”
”
werden neben der Startzeit jede Sekunde der abgehende und ankommende Verkehr,
in kbits/s, abgespeichert.
Zur besseren Darstellung der Werte wurden in der Funktion void detstats“ Veränder”
ANHANG C. VERÄNDERUNGEN AN DEN SOFTWARETOOLS
152
void write_proto(float activity_in, float activity_out)
{
FILE *stream_err;
struct tm* tim;
time_t t;
char* f_proto = "Protocol";
char timeIndex[15];
time(&t);
tim = gmtime(&t);
char filename[200];
sprintf(timeIndex,"%i%.2i%.2i%.2i%.2i%.2i",((tim-tm_year)+1900),
((tim->tm_mon)+1),tim->tm_mday,((tim->tm_hour)),
tim-tm_min,tim->tm_sec);
sprintf(filename,"%s%i%.2i%.2i","Protocol",((tim-tm_year)+1900),
((tim->tm_mon)+1),tim->tm_mday);
f_proto = strdup(filename);
if(stream_err = fopen(f_proto,"r"))
{
stream_err = fopen(f_proto,"a+");
fprintf(stream_err,"%s \t%8.3f\t%8.3f\n",timeIndex,activity_in,
activity_out);
fclose(stream_err);
}
else
{
stream_err = fopen(f_proto,"a+");
fprintf(stream_err,"%s \t%8.3f\t%8.3f\n",timeIndex,activity_in,
activity_out);
fclose(stream_err);
}
}
Abbildung C.1: IPTraf“ - Modifikation (1)
”
ungen am Float“-Datentyp vorgenommen. In der Originalimplementierung ist die
”
Anzahl der Nachkommastellen auf eine Stelle beschränkt. Nach den Veränderungen
werden drei Nachkommastellen berücksichtigt. Ebenfalls wird das Intervall für die
Anzeige der Messwerte von 5 s auf 1 s verändert. Innerhalb dieser Funktion wird die
Funktion write proto“ zur Erstellung des Log-Files“ aufgerufen (s. Abbildung C.2).
”
”
Mit Hilfe des Log-Files“ ist eine einfache Auswertung der Messungen möglich.
”
ANHANG C. VERÄNDERUNGEN AN DEN SOFTWARETOOLS
153
void detstats(char *iface, const struct OPTIONS *options, int facilitytime,
struct filterstate *ofilter)
{
int logging = options->logging;
:
:
gettimeofday(&tv, NULL);
now = tv.tv_sec;
unow = tv.tv_sec * 1e+6 + t v.tv_usec;
if (now - starttime >= 1) {
wattrset(statwin, BOXATTR);
:
}
:
spanbr = spanbr_in = spanbr_out = 0;
spanpkt = spanpkt_in = spanpkt_out = 0;
starttime = now;
wattrset(statwin, HIGHATTR);
mvwprintw(statwin, 13, 19, "%8.3f %s/sec", activity,
unitstring);
mvwprintw(statwin, 14, 19, "%8.3f packets/sec", pps);
mvwprintw(statwin, 16, 19, "%8.3f %s/sec", activity_in,
unitstring);
mvwprintw(statwin, 17, 19, "%8.3f packets/sec", pps_in);
mvwprintw(statwin, 19, 19, "%8.3f %s/sec", activity_out,
unitstring);
mvwprintw(statwin, 20, 19, "%8.3f packets/sec", pps_out);
write_proto(activity_in,activity_out);
if (activity > peakactivity)
peakactivity = activity;
:
}
Abbildung C.2: IPTraf“ - Modifikation (2)
”
C.2
Modifikation vom Network Traffic Monitor“
”
Diese Implementierung wurde laute Angaben der Entwickler mit Delphi 4.03“, Del”
”
phi 6.0 Enterprise“ und Delphi 7.0“ erfolgreich getestet. Für die Modifikation stand
”
leider nur Delphi 5.0“ zur Verfügung. Dies führte zu einigen Problemen mit bestimm”
ten Befehlen bzw. Paketen:
• Panel3.Color“,
”
• Panel3.DesignSize“,
”
ANHANG C. VERÄNDERUNGEN AN DEN SOFTWARETOOLS
154
• StaticText1.BevelInner“,
”
• StaticText1.BevelKind“ und
”
• StaticText1.BevelOuter“.
”
Diese werden für die graphische Oberfläche verwendet und deshalb sind entsprechende
Veränderungen erforderlich. Der Menüpunkt About...“ wurde entfernt und die we”
sentlichen Daten, wie Angaben zum Entwickler und der Quelle, sind nun direkt in der
Traffic Monitor“-Oberfläche integriert. Die Orginalimplementierung wurde mit ein
”
Log-File“ ergänzt, was auch eine Anpassung der graphischen Oberfläche erforderte.
”
:
object cbOnTop: TCheckBox
Left = 179
Top = 4
Width = 86
Height = 37
Caption = 'Stay On Top'
TabOrder = 4
OnClick = cbOnTopClick
end
object LogButton: TButton
Left = 304
Top = 8
Width = 105
Height = 25
Caption = 'Start Logging'
TabOrder = 5
OnClick = LogButtonClick
end
object fNameEdit: TEdit
Left = 424
Top = 10
Width = 153
Height = 21
TabOrder = 6
Text = 'test.txt'
End
:
Abbildung C.3: Network Traffic Monitor“ - Modifikation (1)
”
In der Abbildung C.3 sind die zusätzliche Objekt, d.h. der
Logging Button“
”
und das Textfeld, definiert. Diese werden in der Datei NetworkTrafficMoni”
tor/MainFormUnit.dfm“ vereinbart.
Die grundlegenden Funktionen vom Network Traffic Monitor“ sind in der Datei Net”
”
workTrafficMonitor/MainFormUnit.pas“ definiert. Innerhalb dieser Datei werden die
ANHANG C. VERÄNDERUNGEN AN DEN SOFTWARETOOLS
155
erforderlichen Veränderungen zur Erstellung des Log-Files“ vorgenommen. Diese Da”
tei wird mit der Prozedur TMain.LogButtonClick“ ergänzt. In der Abbildung C.4 sind
”
die zusätzliche bzw. veränderte Typen- und Variablendefinitionen dargestellt. Innerhalb der Prozedur TMainForm.LogButtonClick“ ist der gesamte Logging“-Vorgang
”
”
definiert (s. Abbildung C.4) und anhand des Status, den der Logging-Button“ auf”
weist, werden die entsprechenden Optionen ausgeführt.
Nach der Aktivierung des Logging Buttons“ wird das entsprechende Log-File“ er”
”
stellt. In das Log-File“ werden zu Beginn das aktuelle Datum und die Startzeit
”
eingetragen. Danach werden jede Sekunde der abgehende und ankommende Verkehr
in Byte/s abgespeichert. Nach der Deaktivierung des Logging-Buttons“ wird noch
”
einmal der Name des erzeugten Log-Files“ in einem separaten Fenster dargestellt.
”
Der Name des Log-Files“ ist vom Anwender frei wählbar, als Standardname wird
”
test.txt“ verwendet, wenn keine Eingabe bzw. Veränderung erfolgt.
”
Das erzeugte Log-File“ ermöglicht eine einfach Auswertung der Messungen.
”
ANHANG C. VERÄNDERUNGEN AN DEN SOFTWARETOOLS
Type
:
ledStartedAt: TEdit;
ledActiveFor: TEdit;
ledOctInSec: TEdit;
ledPeakINSec: TEdit;
ledAvgINSec: TEdit;
ledTotalIN: TEdit;
ledOctOUTSec: TEdit;
ledPeakOUTSec: TEdit;
ledAvgOUTSec: TEdit;
ledTotalOUT: TEdit;
ledAdapterDescription: TEdit;
ledMACAddress: TEdit;
ledSpeed: TEdit;
LogButton: TButton;
fNameEdit: TEdit;
:
var
MainForm: TMainForm;
ActiveTraffic : TTraffic;
f
: text;
LogFlag
: boolean;
fName
: string = 'test.txt';
count
: integer = 0;
end; (*ClearDisplay*)
:
:
procedure TMainForm.RefreshDisplay;
:
self.ledActiveFor.Text := FriendlyRunningTime;
if LogFlag then
begin
count:=count+1;
writeln(f,IntToStr(count)+#9+IntToStr(InPerSec)+#9+IntToStr(OutPerSec));
end;
StatusText.Caption := GetStatus;
end;//with
end; (*RefreshDisplay*)
:
procedure TMainForm.LogButtonClick(Sender: TObject);
begin
if LogButton.Caption='Start Logging' then
begin
LogButton.Caption:='Stop Logging';
count:=0;
fname:=fNameEdit.text;
AssignFile(f,fName);
rewrite(f);
writeln(f,DateTimeToStr(Time));
writeln(f);
LogFlag:=true;
fNameEdit.Enabled:=false;
end else
begin
LogButton.Caption:='Start Logging';
LogFlag:=false;
CloseFile(f);
fNameEdit.Enabled:=true;
ShowMessage('Data were logged into the file "'+ fname+ '" !');
end
end;
end.
Abbildung C.4: Network Traffic Monitor“ - Modifikation (2)
”
156
ANHANG D. INSTALLATIONSHINWEISE ZU CLICK!“ UND PACMAN“ 157
”
”
Anhang D
Installationshinweise zu Click!“
”
und PACMAN“
”
D.1
Installationshinweise zu Click! Modular Rou”
ter“
Bevor
Click! Modular Router“ verwendet werden kann, müssen entsprechende
”
Veränderungen am Kernel vorgenommen werden. Folgende Schritte sind für die In-
stallation erforderlich:
1. Verwenden eines Vanilla-Kernels“ [25].
”
2. Click Kernel Patch“ installieren:
”
cd /usr/src/linux
patch -p0 -b < CLICKDIR/etc/linux-VERSION-patch
(Dabei ist die Patch-Version abhängig vom verwendeten Kernel.)
3. Konfiguration des neuen Kernels.
Für Click! Modular Router“ sind folgende zusätzliche Kernel-Optionen erfor”
derlich:
• Code maturity level option: Yes
• Processor type and features
ANHANG D. INSTALLATIONSHINWEISE ZU CLICK!“ UND PACMAN“ 158
”
”
– Symmetric multi-processor support: No
• General setup
– Networking support : Yes
– PCI support : Yes
• Networking options
– Netlink device emulation: Yes
• Network device support
– Universal TUN/TAP device driver: Yes
– Ethertap network tap : Yes
– Ethernet (10 or 100 Mbit)
∗ 3COM cards: Yes
∗ Other ISA cards: Yes
– PCMCIA network device support
∗ NE2000 compatible PCMCIA support: No
∗ Aviator/Raytheon 2.4GHz wireless support:No
4. Kompilieren und installieren des neuen Kernels:
make dep
make bzImage (oder make zImage)
make install
make modules
make modules install
5. Anpassen des Bootloaders.
6. Neustart das Systems mit dem neuen Kernel.
7. Kompilieren und installieren von Click!“:
”
rm -f config.cach; ./configure [OPTIONS]
ANHANG D. INSTALLATIONSHINWEISE ZU CLICK!“ UND PACMAN“ 159
”
”
8. Erstellen und installieren der Click!“-Module:
”
qmake install
Die beiden Module linuxmodule/click.o“ und linuxmodule/poclikefs.o“ werden
”
”
erstellt. Diese beiden Module werden in das Verzeichnis CLICKPREFIX/lib“
”
installiert.
9. Installation der beiden Module:
CLICKPREFIX/sbin/click-install ROUTERCONFIGFILE
D.2
Installationshinweise zu PACMAN“
”
Zur Erstellung von PACMAN“ wird make“ verwendet. Es sind die folgenden Kernel”
”
Module, die durch make“ erstellt werden, erforderlich:
”
• kpacman.o“ für Linux 2.4.x bzw.
”
• kpacman.ko“ für Linux 2.6.x.
”
Zusätzlich wird die Kernel-Option Config IP NF QUEUE“ benötigt.
”
Weiterhin sind die entsprechenden Implementierungen von FSR bzw. OLSR erforderlich. In den ersten Test wurden FSR-ATR“ [17] und OLSRD“ [35] verwendet. Es
”
”
ist zu beachten, dass PACMAN“ im Non-Daemon Mode“, d.h. im Vordergrund,
”
”
arbeitet.
ANHANG E. INHALT DES DATENTRÄGERS
160
Anhang E
Inhalt des Datenträgers
Auf dem beigefügten Datenträger befinden sich folgende Dateien und Verzeichnisse:
/Ad-hoc-Netze/
Verzeichnis mit den Softwarekomponenten
für die Ad-hoc-Netze.
/Ad-hoc-Netze/Routingprotokolle/
Verzeichnis mit den Implementierungen
der Routingprotokolle.
/Ad-hoc-Netze/Routingprotokolle(Sim)/
Verzeichnis mit den Implementierungen
der Routingprotokolle, die in den
Simulatoren verwendet werden können.
/Ad-hoc-Netze/Tools/
Verzeichnis mit den Tools für
Ad-hoc-Netze.
/Doc/Studienjahresarbeit.pdf
Diese Arbeit als PDF-File.
/Modifikationen/
Verzeichnis mit den modifizierten
Software-Tools.
/Software-Tools/
Verzeichnis mit allgemeinen
Software-Tools.
ABBILDUNGSVERZEICHNIS
161
Abbildungsverzeichnis
Unicast“ Routingalgoritmen (topologiebasiert) . . . . . . . . . . . . .
”
AODV-Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
10
2.5
DSR - Route Request“ . . . . . . . . . . . . . . . . . . . . . . . . . .
”
DSR - Route Reply“ . . . . . . . . . . . . . . . . . . . . . . . . . . . .
”
PAR - Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6
. . . . . . . . . . . . . . . . . . . . .
14
. . . . . . . . . . . . . . . . . . . . .
15
. . . . . . . . . . . . . . . . . . . . .
16
. . . . . . . . . . . . . . . . . . . . .
17
. . . . . . . . . . . . . . . . . . . . .
18
2.11 FSR - Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
2.12 OLSR - Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
2.13 CBRP - Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
2.14 CEDAR - Route Computation“ . . . . . . . . . . . . . . . . . . . . . .
”
2.15 ZRP - Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
2.16 Routing auf Grundlage geographischer Informationen . . . . . . . . . .
29
3.1
. . . . . . . . .
52
. . . . . . . . .
53
. . . . . . . . .
54
2.1
2.2
2.3
2.4
RDMAR - Route Discovery“ . .
”
2.7 RDMAR - Route Maintenance“
”
2.8 DSDV - Routingtable“ . . . . .
”
2.9 DSDV - Update Routingtable“ .
”
2.10 CGSR - Beispiel . . . . . . . . . .
9
11
13
27
3.4
Click!“ - Beispiel für ein einfaches Element . . . . . .
”
Click!“ - Einfaches Beispiel eines Click!“ Routers . .
”
”
Click!“ - Beispiel eines konfigurierten Click! Routers“
”
”
WNTE - Beispiel . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
56
4.1
Allgemeiner Testaufbau - 1. Phase . . . . . . . . . . . . . . . . . . . . .
64
4.2
Allgemeiner Testaufbau - 2. Phase . . . . . . . . . . . . . . . . . . . . .
64
3.2
3.3
ABBILDUNGSVERZEICHNIS
162
4.3
Allgemeiner Testaufbau - 3. Phase . . . . . . . . . . . . . . . . . . . . .
5.1
. . . .
70
. . . .
71
. . . .
72
. . . .
73
. . . .
74
. . . .
76
. . . .
76
. . . .
77
. . . .
78
. . . .
79
. . . .
79
. . . .
82
5.13 Testaufbau - 2.OG Helmholzbau mit Messpunkten . . . . . . . . . . . .
83
5.14 Testaufbau - Allgemeiner Testplan . . . . . . . . . . . . . . . . . . . . .
84
5.15 Testaufbau - Testplan zur Erfassung der Netzlast . . . . . . . . . . . .
85
5.16 Testdurchführung mit AODV . . . . . . . . . . . . . . . . . . . . . . .
86
5.17 Testdurchführung mit OLSR . . . . . . . . . . . . . . . . . . . . . . . .
87
5.18 Ermittlung der erzeugten Netzlast (1) . . . . . . . . . . . . . . . . . . .
88
5.19 Ermittlung der erzeugten Netzlast (2) . . . . . . . . . . . . . . . . . . .
88
5.20 Messung bei Veränderung der Topologie (1) . . . . . . . . . . . . . . .
89
5.21 Messung bei Veränderung der Topologie (2) . . . . . . . . . . . . . . .
89
5.22 Messungen mit unterschiedlichen Betriebssystemen (1) . . . . . . . . .
90
5.23 Messungen mit unterschiedlichen Betriebssystemen (2) . . . . . . . . .
91
5.24 Messungen mit unterschiedlichen Parameter (1) . . . . . . . . . . . . .
91
5.25 Messungen mit unterschiedlichen Parameter (2) . . . . . . . . . . . . .
92
6.1
Messung mit AODV - Erzeugte Netzlast (Abgehender Verkehr) . . . . .
95
6.2
Messung mit AODV - Erzeugte Netzlast (Ankommender Verkehr) . . .
96
6.3
Messung mit AODV - Erzeugte Netzlast (Gesamtverkehr) . . . . . . . .
96
6.4
Messung mit OLSR - Erzeugte Netzlast (Ankommender Verkehr) . . .
97
Windows AODV“ - Oberfläche . . . . . . . . . . . . . . . . . .
”
5.2 Windows AODV“ - AODV Route Table“ . . . . . . . . . . . .
”
”
5.3 OLSRD“ - Settings“ . . . . . . . . . . . . . . . . . . . . . . .
”
”
5.4 OLSRD“ - Nodes“ . . . . . . . . . . . . . . . . . . . . . . . .
”
”
5.5 OLSRD“ - Routes“ . . . . . . . . . . . . . . . . . . . . . . . .
”
”
5.6 Analyzer“ - Hauptmenü . . . . . . . . . . . . . . . . . . . . .
”
5.7 Analyzer“ - Capture“ . . . . . . . . . . . . . . . . . . . . . . .
”
”
5.8 Network Traffic Monitor“ - Oberfläche . . . . . . . . . . . . . .
”
5.9 Veränderter Network Traffic Monitor“ - Angepasste Oberfläche
”
5.10 IPTraf“ - Menü . . . . . . . . . . . . . . . . . . . . . . . . . .
”
5.11 IPTraf“ - TCP und UDP Service Monitor“ . . . . . . . . . . .
”
”
5.12 Testaufbau - 1.OG Helmholzbau mit Messpunkten . . . . . . . .
65
ABBILDUNGSVERZEICHNIS
163
6.5
Messung mit OLSR - Erzeugte Netzlast (Ankommender Verkehr) . . .
98
6.6
Messung mit OLSR - Erzeugte Netzlast (Gesamtverkehr) . . . . . . . .
98
6.7
Messung mit AODV - Veränderung der Topologie (Gesamtverkehr) . .
99
6.8
Messung mit AODV - Veränderung der Topologie (Abgehender Verkehr) 100
6.9
Messung mit AODV - Veränderung der Topologie (Ankommender Verkehr) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.10 Windows AODV-Log-File“ - Starten von Windwos AODV . . . . . . . 101
”
6.11 ‘Windows AODV-Log-File“ - Aufbau einer neuen Route . . . . . . . . 102
6.12 Messung mit OLSR - Veränderung der Topologie (Gesamtverkehr) . . . 103
6.13 Messung mit OLSR - Veränderung der Topologie (Abgehender Verkehr) 104
6.14 Messung mit OLSR - Veränderung der Topologie (Ankommender Verkehr)104
6.15 Messung mit AODV - Mittlere Übertragungsrate (Gesamtverkehr) . . . 106
6.16 Messung mit OLSR - Mittlere Übertragungsrate (Gesamtverkehr) . . . 106
6.17 Messung mit OLSR - Unterschiedliche Betriebssysteme (Gesamtverkehr) 108
6.18 Messung mit OLSR - Unterschiedliche Betriebssysteme (Ankommender
Verkehr) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.19 Messung mit OLSR - Unterschiedliche Betriebssysteme (Abgehender
Verkehr) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.20 Messung mit OLSR - Unterschiedliche Betriebssysteme, die mittlere
Übertragungsrate (Gesamtverkehr) . . . . . . . . . . . . . . . . . . . . 109
6.21 Messung mit OLSR - Veränderung der Parameter (Gesamtverkehr) . . 111
6.22 Messung mit OLSR - Veränderung der Parameter (Ankommender Verkehr) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
6.23 Messung mit OLSR - Veränderung der Parameter (Abgehender Verkehr) 112
6.24 Messung mit OLSR - Veränderung der Parameter, die mittlere Übertragungsrate (Gesamtverkehr) . . . . . . . . . . . . . . . . . . . . . . . 112
B.1 Linux OS - ifconfig -a“ . . . . . . . . . . . . . . . . . . . . . . . . . . 138
”
B.2 Linux OS - iwconfig“ . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
”
B.3 Linux OS - Konfiguration der ESSID und dem Modus . . . . . . . . . . 139
B.4 Linux OS - Konfigurationsdatei ifcfg-eth1“
”
. . . . . . . . . . . . . . . 139
ABBILDUNGSVERZEICHNIS
164
B.5 Linux OS - Zusätzliche Kommandozeilenparameter . . . . . . . . . . . 139
B.6 MS Windows - Konfiguration der IPv4-Adressen . . . . . . . . . . . . . 140
B.7 MS Windows - Konfiguration der drahtlosen Netzeigenschaften . . . . . 141
B.8 MS Windows - Client Manager“ der WLAN-Karte . . . . . . . . . . . 141
”
B.9 MS Windows - Konfigurationsprofil der WLAN-Karte . . . . . . . . . . 142
B.10 MS Windows - IPEnableRouter“ . . . . . . . . . . . . . . . . .
”
B.11 MS Windows - Deaktivierung der Internetverbindungsfirewall“
”
B.12 Windows AODV“ - AODV Routing Driver“ . . . . . . . . . .
”
”
B.13 OLSRD“ - Config-File“ olsrd.conf“ . . . . . . . . . . . . . . .
”
”
”
B.14 iPerf“ - Parameter . . . . . . . . . . . . . . . . . . . . . . . . .
”
B.15 iPerf“ - Kommandozeilenaufruf vom Client . . . . . . . . . . .
”
B.16 iPerf“ - Kommandozeilenaufruf vom Server . . . . . . . . . . .
”
B.17 Wichtige FTP-Befehle . . . . . . . . . . . . . . . . . . . . . . .
C.1
IPTraf“ - Modifikation (1)
”
C.2 IPTraf“ - Modifikation (2)
”
C.3 Network Traffic Monitor“ ”
C.4 Network Traffic Monitor“ ”
. . . . 143
. . . . 144
. . . . 145
. . . . 147
. . . . 148
. . . . 149
. . . . 149
. . . . 150
. . . . . . . . . . . . . . . . . . . . . . . . 152
. . . . . . . . . . . . . . . . . . . . . . . . 153
Modifikation (1) . . . . . . . . . . . . . . . 154
Modifikation (2) . . . . . . . . . . . . . . . 156
TABELLENVERZEICHNIS
165
Tabellenverzeichnis
2.1
CBRP - Nachbartabelle
. . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.2
Vergleich einzelner Routingverfahren . . . . . . . . . . . . . . . . . . .
31
3.1
Übersicht zu den AODV-Implementierungen (1) . . . . . . . . . . . . .
34
3.2
Übersicht zu den AODV-Implementierungen (2) . . . . . . . . . . . . .
36
3.3
Übersicht zu den AODV-Implementierungen (3) . . . . . . . . . . . . .
38
3.4
AODV-Implementierungen - Aussagen zur Funktionsfähigkeit . . . . . .
39
3.5
Übersicht zu ARAN
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
3.6
Übersicht zu den DSR-Implementierungen . . . . . . . . . . . . . . . .
42
3.7
DSR-Implementierungen - Aussagen zur Funktionsfähigkeit . . . . . . .
43
3.8
Übersicht zu FSR-ATR“ . . . . . . . . . . . . . . . . . . . . . . . . .
”
Übersicht zu den OLSR-Implementierungen (1) . . . . . . . . . . . . .
44
3.10 Übersicht zu den OLSR-Implementierungen (2) . . . . . . . . . . . . .
46
3.11 Übersicht zu den OLSR-Implementierungen (3) . . . . . . . . . . . . .
48
3.12 Übersicht zu den OLSR-Implementierungen (4) . . . . . . . . . . . . .
49
3.13 OLSR-Implementierungen - Aussagen zur Funktionsfähigkeit . . . . . .
50
3.14 Übersicht zu den Tools für Ad-hoc-Netze (1) . . . . . . . . . . . . . . .
58
3.15 Übersicht zu den Tools für Ad-hoc-Netze (2) . . . . . . . . . . . . . . .
59
3.16 Tools für Ad-hoc-Netze - Aussagen zur Funktionsfähigkeit . . . . . . .
59
5.1
. . . . . . . . . . . . . . . . .
75
. . . . . . . . . . . . . . . . .
77
. . . . . . . . . . . . . . . . .
78
. . . . . . . . . . . . . . . . .
80
3.9
5.2
5.3
5.4
Analyzer“ - Spezifikation . . . . . . . .
”
Network Traffic Monitor“ - Spezifikation
”
IPTraf“ - Spezifikation . . . . . . . . . .
”
iPerf“ - Spezifikation . . . . . . . . . . .
”
45
TABELLENVERZEICHNIS
166
5.5
Testaufbau - IPv4-Adressen der verwendeten Geräte . . . . . . . . . . .
83
5.6
Testaufbau - WLAN-Einstellungen des Testnetzes . . . . . . . . . . . .
84
A.1 Übersicht zu den AODV-Implementierungen (1) . . . . . . . . . . . . . 119
A.2 Übersicht zu den AODV-Implementierungen (2) . . . . . . . . . . . . . 119
A.3 Übersicht zu den AODV-Implementierungen (3) . . . . . . . . . . . . . 120
A.4 Übersicht zu den AODV-Implementierungen (4) . . . . . . . . . . . . . 121
A.5 Übersicht zu den AODV-Implementierungen (5) . . . . . . . . . . . . . 122
A.6 Übersicht zu den AODV-Implementierungen (6) . . . . . . . . . . . . . 123
A.7 Übersicht zu ARAN
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
A.8 Übersicht zu den DSR-Implementierungen (1) . . . . . . . . . . . . . . 125
A.9 Übersicht zu den DSR-Implementierungen (2) . . . . . . . . . . . . . . 126
A.10 Übersicht zu FSR-ATR“ . . . . . . . . . . . . . . . . . . . . . . . . . 127
”
A.11 Übersicht zu den OLSR-Implementierungen (1) . . . . . . . . . . . . . 128
A.12 Übersicht zu den OLSR-Implementierungen (2) . . . . . . . . . . . . . 128
A.13 Übersicht zu den OLSR-Implementierungen (3) . . . . . . . . . . . . . 129
A.14 Übersicht zu den OLSR-Implementierungen (4) . . . . . . . . . . . . . 129
A.15 Übersicht zu den OLSR-Implementierungen (5) . . . . . . . . . . . . . 130
A.16 Übersicht zu den OLSR-Implementierungen (6) . . . . . . . . . . . . . 131
A.17 Übersicht zu den Tools für Ad-hoc-Netze (1) . . . . . . . . . . . . . . . 132
A.18 Übersicht zu den Tools für Ad-hoc-Netze (2) . . . . . . . . . . . . . . . 133
A.19 Übersicht zu den Tools für Ad-hoc-Netze (3) . . . . . . . . . . . . . . . 133
B.1 Laptop-1 - Spezifikation . . . . . . . . . . . . . . . . . . . . . . . . . . 135
B.2 Laptop-2 - Spezifikation . . . . . . . . . . . . . . . . . . . . . . . . . . 135
B.3 Laptop-3 - Spezifikation . . . . . . . . . . . . . . . . . . . . . . . . . . 136
B.4 Arbeitsplatz-PC-1 - Spezifikation . . . . . . . . . . . . . . . . . . . . . 136
B.5
RoamAbout 802.11 DS (Cabletron)“ - Spezifikation . . . . . . . . . . 137
”
ABKÜRZUNGSVERZEICHNIS
Abkürzungsverzeichnis
ABR . . . . . . . . . . . . . Associativity-Based Routing
ACR . . . . . . . . . . . . . Adaptive Communications Researche Laboratories
AODV . . . . . . . . . . . Ad-hoc On-Demand Distance Vector
APE . . . . . . . . . . . . . Ad hoc Protocol Evaluation
API . . . . . . . . . . . . . . Application Programming Interface
ARAN . . . . . . . . . . . Authenticated Routing for Ad hoc Networks
ASL . . . . . . . . . . . . . Ad-hoc Support Library
ASU . . . . . . . . . . . . . Arizona State University
ATR . . . . . . . . . . . . . Advanced Telecommunications Researche
BRP . . . . . . . . . . . . . Bordercast Resolution Protocol
BSD . . . . . . . . . . . . . Berkeley Software Distribution
CA . . . . . . . . . . . . . . Certifcate Authorities
CBRP . . . . . . . . . . . Cluster Based Routing Protocol
CEDAR . . . . . . . . . Core Extraction Distributed Ad hoc Routing
CGSR . . . . . . . . . . . Cluster-Head Gateway Switch Routing
CH . . . . . . . . . . . . . . Cluster Head
CPU . . . . . . . . . . . . . Central Processing Unit
DAG . . . . . . . . . . . . . Directed Acyclic Graph
DNS . . . . . . . . . . . . . Domain Name System
DRP . . . . . . . . . . . . . Dynamic Routing Protocol
DSDV . . . . . . . . . . . Destination-Sequenced Distance-Vector
DSR . . . . . . . . . . . . . Dynamic Source Routing
DST . . . . . . . . . . . . . Destination
167
ABKÜRZUNGSVERZEICHNIS
168
ESSID . . . . . . . . . . . Extended Service Set Identifier
ETX . . . . . . . . . . . . . Expexted Transmission Count
FSR . . . . . . . . . . . . . Fisheye State Routing
FTP . . . . . . . . . . . . . File Transfer Protocol
GPS . . . . . . . . . . . . . Global Positioning System
GRC . . . . . . . . . . . . . Grupo de Investigaciòn de Redes de Computadores
GUI . . . . . . . . . . . . . Graphical User Interface
HNA . . . . . . . . . . . . Host and Network Association
HUT . . . . . . . . . . . . . Helsinki University of Technology
IARP . . . . . . . . . . . . Intrazone Routing Protocol
ID . . . . . . . . . . . . . . . Identifier
IERP . . . . . . . . . . . . Interzone Routing Protocol
IETF . . . . . . . . . . . . Internet Engineering Task Force
Inria . . . . . . . . . . . . . Institut National De Recherche En Informatique Et En
Automatique
IP . . . . . . . . . . . . . . . Internet Protocol
ITU-T . . . . . . . . . . . International
Telecommunication
Union-Telecommunication
Standardization
JAdhoc . . . . . . . . . . Java Ad-hoc
Jpcap . . . . . . . . . . . . Java Package for Packet Capture
JRE . . . . . . . . . . . . . Jave Runtime Enviroment
LAN . . . . . . . . . . . . . Local Area Network
LAR . . . . . . . . . . . . . Location-Aided Routing
LCC . . . . . . . . . . . . . Least Cluster Change
LMR . . . . . . . . . . . . Lightweight Mobile Routing
LORA . . . . . . . . . . . Least Overhead Routing Approach
LRR . . . . . . . . . . . . . Link Reversal Routing
LSU . . . . . . . . . . . . . Link State Update Unit
LUNAR . . . . . . . . . Lightweight Underlay Network Ad-hoc Routing
MAC . . . . . . . . . . . . Media Access Control
MANET . . . . . . . . . Mobile Ad-hoc Network
ABKÜRZUNGSVERZEICHNIS
MAODV . . . . . . . . . Multicast Extensions of AODV
MID . . . . . . . . . . . . . Multiple Interface Declaration
MP . . . . . . . . . . . . . . Messpunkt
MPEG . . . . . . . . . . . Motion Pictures Experts Group
MPR . . . . . . . . . . . . Multipoint Relay
MRL . . . . . . . . . . . . Message Retransmission List
MS . . . . . . . . . . . . . . Microsoft
NetBIOS . . . . . . . . . Network Basic Input Output System
NIST . . . . . . . . . . . . National Institute of Standards and Technology
ns2 . . . . . . . . . . . . . . Network Simulator 2
OLSR . . . . . . . . . . . Optimzed Link State Routing
OLSRD . . . . . . . . . . OLSR Daemon
ORA . . . . . . . . . . . . Optimum Routing Approach
OS . . . . . . . . . . . . . . . Operation System
PACMAN . . . . . . . Passive Autoconfiguration for Mobile Ad hoc Network
PAR . . . . . . . . . . . . . Power-Aware Routing
PC . . . . . . . . . . . . . . Personal Computer
PDA . . . . . . . . . . . . . Personal Digital Assistant
PDAD . . . . . . . . . . . Passive Duplicate Address Detection
PICA . . . . . . . . . . . . Protocol Implementation Specific API
PTP . . . . . . . . . . . . . Peer-to-Peer
PTP . . . . . . . . . . . . . Point-to-Point
pyOLSR . . . . . . . . . Python OLSR
QOLSR . . . . . . . . . . QoS for OLSR
QoS . . . . . . . . . . . . . Quality of Service
RD . . . . . . . . . . . . . . Relative Distance
RDE . . . . . . . . . . . . . Relative Distance Estimation
RDM . . . . . . . . . . . . Relative Distance Micro-discovery
RDMAR . . . . . . . . . Relative Distance Micro-discovery Ad Hoc Routing
RFC . . . . . . . . . . . . . Request for Comments
RREP . . . . . . . . . . . Route Reply
169
ABKÜRZUNGSVERZEICHNIS
RREQ . . . . . . . . . . . Route Request
RT . . . . . . . . . . . . . . Reportable Subtree
RT . . . . . . . . . . . . . . Routing Table
SDK . . . . . . . . . . . . . Software Development Kit
SRC . . . . . . . . . . . . . Source
SRP . . . . . . . . . . . . . Static Routing Protocol
SSH . . . . . . . . . . . . . Secure Shell
SSL . . . . . . . . . . . . . . Secure Socket Layer
SSR . . . . . . . . . . . . . Signal Stability Routing
SST . . . . . . . . . . . . . Signal Stability Table
STAR . . . . . . . . . . . . Source Tree Adaptive Routing
TBRPF . . . . . . . . . . Topology Dissemination Based On Reverse-Path Forwarding
TC . . . . . . . . . . . . . . Topology Control
TCP . . . . . . . . . . . . . Transmission Control Protocol
TORA . . . . . . . . . . . Temporally-Ordered Routing Algorithm
TTL . . . . . . . . . . . . . Time To Life
UCSB . . . . . . . . . . . University of California, Santa Barbara
UDP . . . . . . . . . . . . . User Datagram Protocol
UICU . . . . . . . . . . . . University of Illinois at Urban-Champaign
UoB . . . . . . . . . . . . . University of Bremen
UPV . . . . . . . . . . . . . Universidad Politèchnica de Valencia
UU . . . . . . . . . . . . . . Uppsala University
ViTAN . . . . . . . . . . Visualization Tool for Ad Hoc Networks
WinPcap . . . . . . . . Windows Packet Capture
WLAN . . . . . . . . . . Wireless LAN
WNTE . . . . . . . . . . Wireless Network Topology Emulator
WRP . . . . . . . . . . . . Wireless Routing Protocol
ZRP . . . . . . . . . . . . . Zone Routing Protocol
170
LITERATURVERZEICHNIS
171
Literaturverzeichnis
[fre, ] Freifunk.Net. http://www.freifunk.net/.
[Ampadu and Perkins, 2003] Ampadu, P. and Perkins, C. E. (2003). Highly Dynamic
Destination-Sequenced Distance-Vector Routing (DSDV) for Mobile Computers. ,
http://wisl.ece.cornell.edu/ECE794/Mar5/DSDV.ppt.
[Bahr, 2002] Bahr, F. (2002). Mobile Ad hoc Networking. Technische Universität
Carolo-Wilhelmina Braunschweig, Institut für Betriebssysteme und Rechnerverbund, http://www.ibr.cs.tu-bs.de/lehre/ws0102/svs/bahr-folien.pdf.
[Bornträger, 2002] Bornträger,
C.
(2002).
Ad-hoc-Netzwerke.
Techni-
sche Universität Ilmenau, Fakultät für Elektrotechnik und Informationstechnik,
netze,
Institut
für
Informationstechnik,
Fachgebiet
Kommunikations-
http://zack1.e-technik.tu-ilmenau.de/∼webkn/STUD-DIPLOM/
Hauptseminarreferat/ad-hoc-netze/HS-SS01-AdHocNetze.html.
[Engel and Roth, 2005] Engel, T. and Roth, U. (2005). Ad-Hoc Protocols. Université
du Luxembourg, The SECAN-LAB, http://wiki.uni.lu/secan-lab/Ad-Hoc+
Protocols.html.
[Foetz, 2004] Foetz, L. (2004). Ad-Hoc Workshop 2004 - Lecture 3-Link State Routing,
Distance Vector Routing. University of Luxembourg, The SECAN-LAB, http://
wiki.uni.lu/secan-lab/Ad-Hoc-Workshop2004-L3.pdf.
[Gao, 2003] Gao (2003).
Wireless Routing Protocol — Mobile Ad hoc NETwork
(MANET). Advanced Computer Networks.
LITERATURVERZEICHNIS
172
[IETF, 1985] IETF (1985). RFC959: File Transfer Protocol (FTP). Network Working
Group, http://www.ietf.org/rfc/rfc959.txt.
[IETF, 1998] IETF (1998). The Dynamic Source Routing Protocol for Mobile Ad Hoc
Networks (DSR). IETF MANET Working Group, http://www.monarch.cs.rice.
edu/internet-drafts/draft-ietf-manet-dsr-01.txt.
[IETF, 1999] IETF (1999). The Dynamic Source Routing Protocol for Mobile Ad
Hoc Networks. IETF MANET Working Group, http://monarch.cs.rice.edu/
internet-drafts/draft-ietf-manet-dsr-01.txt.
[IETF, 2000a] IETF (2000a). Internet Draft: Ad hoc On-Demand Distance Vector
(AODV) Routing for IP version6. Mobile Ad Hoc Networking Group, http://www.
tcs.hut.fi/∼anttit/manet/drafts/draft-perkins-aodv6-01.txt.
[IETF, 2000b] IETF (2000b). Internet Draft: Multicast Ad hoc On-Demand Distance
Vector (MAODV) Routing. Mobile Ad Hoc Networking Group, http://www.ietf.
org/proceedings/00jul/I-D/manet-maodv-00.txt.
[IETF, 2000c] IETF (2000c).
tocol.
Internet Draft: Optimized Link State Routing Pro-
Mobile Ad Hoc Networking Group, http://hipercom.inria.fr/olsr/
draft-ietf-manet-olsr-03.txt.
[IETF, 2002a] IETF (2002a).
Fisheye State Routing Protocol (FSR) for Ad Hoc
Networks. IETF MANET Working Group, http://www.ietf.org/proceedings/
02jul/I-D/draft-ietf-manet-fsr-03.txt.
[IETF, 2002b] IETF (2002b). Internet Draft: Ad hoc On-Demand Distance Vector
(AODV) Routing.
Mobile Ad Hoc Networking Group, http://www.ietf.org/
proceedings/02mar/I-D/draft-ietf-manet-aodv-10.txt.
[IETF, 2002c] IETF (2002c). Internet Draft: Ad hoc On-Demand Distance Vector
(AODV) Routing for IP version6. Mobile Ad Hoc Networking Group, http://www.
tcs.hut.fi/∼anttit/manet/drafts/draft-wakikawa-manet-globalv6-02.txt.
LITERATURVERZEICHNIS
173
[IETF, 2002d] IETF (2002d). RFC3280: Internet X.509 Public Key Infrastructure.
Network Working Group, http://www.ietf.org/rfc/rfc3280.txt.
[IETF, 2003a] IETF (2003a). The Dynamic Source Routing Protocol for Mobile Ad
Hoc Networks (DSR). IETF MANET Working Group, http://www.ietf.org/
proceedings/03mar/I-D/draft-ietf-manet-dsr-08.txt.
[IETF, 2003b] IETF (2003b). Internet Draft: Ad hoc On-Demand Distance Vector
(AODV) Routing.
Mobile Ad Hoc Networking Group, http://www.ietf.org/
internet-drafts/draft-ietf-manet-aodv-13.txt.
[IETF, 2003c] IETF (2003c).
tocol.
Internet Draft: Optimized Link State Routing Pro-
Mobile Ad Hoc Networking Group, http://hipercom.inria.fr/olsr/
draft-ietf-manet-olsr-11.txt.
[IETF, 2003d] IETF (2003d).
RFC3561: Ad hoc On-Demand Distance Vector
(AODV) Routing. Network Working Group, http://www.ietf.org/rfc/rfc3561.
txt.
[IETF, 2003e] IETF (2003e).
RFC3626: Optimized Link State Routing Protocol
(OLSR). Network Working Group, http://www.ietf.org/rfc/rfc3626.txt.
[Kasel, 2002] Kasel, M. (2002). Ad ho Netzwerke - Routing Protokolle 2. Institut
Superieur de Technologie, .
[Royer and Toh, 1999] Royer, E. and Toh, C.-K. (1999). A Review of Current Routing
Protocols for Ad Hoc Mobile Wireless Networks. IEEE Personal Communications,
http://www.csie.nctu.edu.tw/∼yctseng/WirelessNet05-02/toh-IEEE-PC.
ppt.
[Schlesser, 2004] Schlesser, A. (2004). Ad-Hoc Workshop 2004 - Lecture 3-Link State
Routing, Distance Vector Routing. University of Luxembourg, The SECAN-LAB,
http://wiki.uni.lu/secan-lab/Ad-Hoc-Workshop2004-L7.pdf.
[Schneider and Werner, 2002] Schneider, U. and Werner, D. (2002). Taschenbuch der
Informatik. Fachbuchverlag Leipzig, 3 edition.
LITERATURVERZEICHNIS
[Thill, 2004] Thill, M. (2004).
Routing.
174
Ad-Hoc Workshop 2004 - Lecture 6-Hierarchical
University of Luxembourg, The SECAN-LAB, http://wiki.uni.lu/
secan-lab/Ad-Hoc-Workshop2004-L6.pdf.
[Tonnesen, 2004] Tonnesen, A. (2004). Impementing and extending the Optimized Link
State Routing Protocol. http://www.olsr.org/docs/report html/.
SOFTWAREVERZEICHNIS
175
Softwareverzeichnis
[1] Ad-hoc Support Library (ASL). http://aslib.sourceforge.net.
[2] Analyzer. http://analyzer.polito.it/.
[3] AODV IPv6. http://members.shaw.ca/aodv6-sfu/.
[4] AODV Kernel. http://w3.antd.nist.gov/wctg/aodv kernel/index.html.
[5] AODV-UCSB. http://moment.cs.ucsb.edu/AODV/aodv.html.
[6] AODV-UIUC. http://aslib.sourceforge.net/.
[7] AODV-UU. http://core.it.uu.se/AdHoc/AodvUUImp.
[8] AODV-UU IPv6. http://webspace.buckingham.ac.uk/cadams/bnrg/aodv6/
index.html.
[9] APE. apetestbed.sourceforge.net/.
[10] ARAN. http://signl.cs.umass.edu/arand/index.php.
[11] Click! Modular Router. http://pdos.csail.mit.edu/click/.
[12] crc-nolsrdv6). http://pf.itd.nrl.navy.mil/project/showfiles.php?group
id=16414&release id=18181.
[13] DSR (Insignia). http://comet.columbia.edu/insignia/testbed.html.
[14] DSR (Monarch). http://www.monarch.cs.rice.edu/dsr-impl.html.
[15] DSR (Piconet). http://piconet.sourceforge.net/thesis/main.html.
SOFTWAREVERZEICHNIS
176
[16] DSR (UC-Boulder-Click!). http://pecolab.colorado.edu/DSR.html.
[17] FSR-ATR. http://www.acr.atr.jp/acr/general/product/GSRFSR/.
[18] Hut AODV for IPv6. http://www.tcs.hut.fi/∼anttit/manet/aodv/.
[19] inria-nolsrd.
http://pf.itd.nrl.navy.mil/project/showfiles.php?group
id=16414&release id=18181.
[20] iperf. http://dast.nlanr.net/Projects/Iperf/.
[21] IPTraf. http://iptraf.seul.org/.
[22] Java 2 SDK. http://java.sun.com/j2se/.
[23] Java Runtime Enviroment. http://java.sun.com/j2se/.
[24] Jpcap. http://jpcap.sourceforge.net/.
[25] Kernel.org. http://www.kernel.org/.
[26] libpcap. http://www.tcpdump.org/.
[27] LUNAR. http://core.it.uu.se/AdHoc/LunarImpl.
[28] MAODV. http://www.isr.umd.edu/CSHCN/research/maodv/MAODV-UMD.html.
[29] Network Simulator - (ns2). http://www.isi.edu/nsnam/ns/.
[30] Network Traffic Monitor. http://delphi.about.com/od/fullcodeprojects/l/
aa112903a.htm.
[31] nOLSR. http://sourceforge.net/projects/nolsr/.
[32] nrlolsrd.
http://pf.itd.nrl.navy.mil/project/showfiles.php?group id=
16414&release id=18367.
[33] OLSR (GRC, UPV). http://www.grc.upv.es/software.
SOFTWAREVERZEICHNIS
[34] OLSR11win (GRC).
177
http://www.grc.upv.es/software/intro OLSR11win.
html.
[35] OLSRD. http://www.olsr.org/index.cgi?action=main.
[36] OLSR EXTRA.
http://pf.itd.nrl.navy.mil/project/showfiles.php?
group id=16414&release id=18367.
[37] OLSRv3 (Inria). http://hipercom.inria.fr/olsr/.
[38] oolsr. http://hipercom.inria.fr/OOLSR/.
[39] PACMAN. http://pacman-autoconf.sourceforge.net/.
[40] PICA. http://pica-api.sourceforge.net/.
[41] PyOLSR. http://hipercom.inria.fr/pyOLSR/.
[42] QOLSR. http://qolsr.lri.fr/.
[43] TinyAODV. http://cvs.sourceforge.net/viewcvs.py/tinyos/tinyos-1.x/
contrib/hsn/.
[44] UoB
JAdhoc.
http://www.aodv.org/modules.php?op=modload&name=
UpDownload&file=index&req=viewdownload&cid=2.
[45] ViTAN. http://www.acticom.de/vitan.html.
[46] Windows AODV. http://moment.cs.ucsb.edu/AODV/aodv-windows.html.
[47] WinPcap. http://winpcap.polito.it/.
[48] Wireless Tools. http://www.hpl.hp.com/personal/Jean Tourrilhes/Linux/
Tools.html.
[49] WNTE. http://wnte.sourceforge.net/.
Herunterladen