MHT: Eine mobilitätsbewusste verteilte Hash

Werbung
it 5/2007
MHT: Eine mobilitätsbewusste
verteilte Hash-Tabelle
MHT: A mobilitity-aware Distributed Hash Table
Olaf Landsiedel, Tobias Heer, Klaus Wehrle, RWTH Aachen University
Zusammenfassung Mobile Ad-hoc-Netzwerke und verteilte
Hash-Tabellen (DHT) besitzen ähnliche Eigenschaften in Bezug auf Selbstorganisation, Dezentralisierung, mangelnde Infrastruktur und die Notwendigkeit von Redundanz. Die hohe
Knotenmobilität und die Dynamik des Netzwerks sind jedoch
eine besondere Herausforderung für das Design und insbesondere für die Skalierbarkeit einer verteilten Hash-Tabelle in
mobilen Ad-hoc-Netzwerken. In diesem Beitrag wird das Design einer mobilitätsbewussten verteilten Hash-Tabelle (MHT)
vorgestellt. MHT ist ein mobiles, skalierbares und strukturiertes Peer-to-Peer-System, das nur wenig Informationen über
die Umgebung eines Knotens im Netzwerk benötigt. Weiterhin werden Herausforderungen diskutiert, wie Churn, Lastverteilung und Sicherheit, die sich für den Einsatz einer MHT
ergeben. Der besondere Schwerpunkt sind hierbei die Unterschiede, die sich zu Internet-basierten Systemen ergeben.
Summary Mobile ad-hoc networks and distributed
hash tables (DHT) share key characteristics in terms of self
organization, decentralization, redundancy requirements, and
limited infrastructure. However, node mobility and the continually changing physical topology pose a special challenge to
scalability and the design of a DHT for mobile ad-hoc networks.
In this paper, we show that with some local knowledge we can
build a scalable and mobile structured peer-to-peer network,
called Mobile Hash Table (MHT). Furthermore, we discuss practical challenges such as Churn, load balancing and security of
MHT. A special focus is put on the differences and new challenges that the use of a DHT in a mobile environment poses.
KEYWORDS C.2.4 [Computer Systems Organization: Computer-Communication Networks: Distributed Systems] distributed
applications, peer-to-peer, distributed hash table, mobility, ad-hoc network, DHT
1 Einleitung
Durch den technologischen Fortschritt im Bereich der drahtlosen
Kommunikation im Nahbereich eröffnet sich mit mobilen Ad-hocNetzwerken ein neues Anwendungsfeld in der Informations- und Kommunikationstechnologie. Unabhängig von jeglicher technischer Infrastruktur können nun spontan
drahtlose Kommunikationsnetze gebildet werden. Dabei wird die klassische Aufteilung in End- und Weiterleitungssysteme aufgegeben und
die beteiligten Systeme übernehmen
beide Aufgaben jeweils selbst. Bei einer ausreichenden Überlappung der
Funkbereiche einzelner Geräte kön-
298
it – Information Technology
nen durch Multi-Hop-Routing auch
größere Gebiete erschlossen werden.
Jedoch ist dabei zu berücksichtigen,
dass diese Netze meist mobile Geräte verbinden, und sich deshalb die
Struktur des mobilen Ad-hoc-Netzwerks jederzeit ändern kann.
Eine besondere Herausforderung stellt hierbei die spontane
Vernetzung von vielen hoch-mobilen Knoten, wie z. B. Fahrzeugen
innerhalb städtischer Gebiete, dar.
Aufgrund des hohen Grades an Mobilität verändert sich die Topologie
eines solchen Netzwerkes und damit die Multi-Hop-Pfade zwischen
den einzelnen Knoten ununterbrochen. Eine spontane Realisierung
49 (2007) 5/ DOI 10.1524/itit.2007.49.5.298
von Kommunikations- und Informationsdiensten würde in vielen Bereichen, in denen der Aufbau einer
Infrastruktur aus zeitlichen, baulichen oder ökonomischen Gründen nicht vertretbar oder gar unmöglich ist, neue Möglichkeiten
eröffnen. Als Beispiele seien hier
u. a. Katastropheneinsätze, spontane
Lerngruppen, Besprechungen oder
Großveranstaltungen zu nennen.
Im Internet wurde durch das
Peer-to-Peer-Paradigma (P2P) [20]
eine neue Art und Weise der dezentralen Datenspeicherung eingeführt.
Daten werden ohne eine zentral
organisierte Infrastruktur, wie Server oder andere dedizierte Rechner,
 Oldenbourg Wissenschaftsverlag
This article is protected by German copyright law. You may copy and distribute this article for your personal use only. Other use is only allowed with written permission by the copyright holder.
Schwerpunktthema
verteilt auf den am P2P-Netzwerk
teilnehmenden End-Systemen gespeichert. Entsprechende Algorithmen sorgen für eine Selbstorganisation der logischen Netzwerktopologie und der Daten in Bezug auf
Speicherung, Verteilung und Ausfallsicherheit. Strukturierte Peer-toPeer Systeme, insbesondere verteilte
Hash-Tabellen (DHTs), erreichen
ein hohes Maß an Skalierbarkeit
und Robustheit. Allerdings eignen
sich bisherige DHT-Ansätze nur bedingt für den Einsatz in mobilen
Ad-Hoc-Netzen.
Mobilität und P2P Strukturierte
Peer-to-Peer-Systeme weisen verschiedene Charakteristika auf, die
in mobilen Ad-hoc-Netzwerken von
besonderem Vorteil sind und einen
effizienten und skalierbaren Datenzugriff ermöglichen: (1) Üblicherweise verfügen Ad-hoc-Netzwerke
über eine beschränkte oder gar
keine zusätzliche Infrastruktur, die
Dienste zur Verfügung stellen kann.
Somit benötigen sie ein verteiltes
und hierarchieloses Datenzugriffsverfahren, wie es verteilte Hash-Tabellen (DHTs) bieten. (2) Die Skalierbarkeit einer DHT erlaubt darüber hinaus die Unterstützung von
vielen tausend mobilen Knoten. (3)
Abschließend kann das dynamische
Ad-hoc-Netzwerk sehr von der Redundanz und Ausfallsicherheit einer
verteilten Hash-Tabelle profitieren.
Dieser Beitrag gibt eine Übersicht, inwiefern hoch-mobile Adhoc-Netzwerke von der Skalierbarkeit eines strukturierten Peer-toPeer Systems profitieren können
(siehe Abschnitt 2). Weiterhin werden Fragestellungen adressiert, die
sich beim Einsatz von Peer-toPeer Systemen in mobilen Ad-HocNetzen ergeben. Insbesondere wird
Churn und die Lastverteilung (siehe
Abschnitt 3) sowie die Sicherheit
(siehe Abschnitt 4) in einem solchen
System betrachtet. Ein besonderer
Schwerpunkt liegt dabei auf den
Unterschieden, die sich durch den
Einsatz in mobilen Szenarien ergeben. Abschließend gibt Abschnitt 5
eine Zusammenfassung.
2 Skalierbarkeit
In diesem Abschnitt stellen wir nach
einer kurzen Motivation das Konzept der mobilitätsbewussten HashTabelle dar.
Die ständige Bewegung der mobilen Knoten eines hoch-dynamischen Ad-Hoc-Netzwerks und die
damit verbundene Änderung der
Netzwerktopologie stellt eine besondere Herausforderung für die
Nutzung einer DHT dar. Topologieänderungen im Ad-Hoc-Netzwerk
erfordern reaktive Maßnahmen, die
meist mit hohem Kommunikationsaufwand verbunden sind. Die mobilitätsbewusste verteilte Hash-Tabelle
(MHT) [9] löst dieses Problem und
bietet somit eine Grundlage für skalierbare und mobile P2P-Systeme.
In einer DHT werden Datenobjekte
als Schlüssel-Wert Tupel abgelegt,
die über den Schlüssel identifiziert
und adressiert werden. Der Wert
des Schlüssels bestimmt zusätzlich
die Kennung (ID) des Knotens im
P2P-System, auf welchem das Datenobjekt abgelegt wird. Üblicherweise wird dieser Schlüssel mit Hilfe
einer Hash-Funktion aus der Beschreibung des Datenobjektes berechnet. Die ID eines Knotens wird
in der Regel durch seinen Hostnamen [16; 19] oder seine geografische
Position [17] festgelegt. Im Gegensatz dazu führt MHT semantische
Schlüssel ein: Die geografische Position, Bewegungsrichtung und Geschwindigkeit eines Datums werden
aus dessen Schlüssel abgeleitet. Das
Datenobjekt wird auf dem Knoten
gespeichert, dessen Bewegung am
ähnlichsten zu den Bewegungsvorgaben des Datums ist. Der Schlüssel eines Objekts beschreibt deshalb
einen Pfad anstatt eine explizite geografische Position vorzugeben. Dies
bietet in hoch-mobilen Szenarien
Vorteile, da die Mobilität der Datenobjekte mit der Mobilität der
Knoten im Netzwerk harmoniert.
Neben der mobilitätsbewussten
DHT wird ein skalierbares RoutingProtokoll benötigt, um Kommunikation zwischen entfernten Knoten zu ermöglichen. Aufgrund ihrer
geringen Skalierbarkeit sind klassi-
sche proaktive und reaktive Ad-hocRouting-Verfahren nicht für den
Einsatz in großen Systemen geeignet. MHT nutzt daher geografisches
Routing, wozu ausschließlich lokal
verfügbare Informationen benötigt
werden. Da MHT ebenfalls geografische Informationen zur Lokalisierung und Speicherung von Datenobjekten verwendet, und damit
deren Verfügbarkeit eine Grundannahme für MHT darstellt, ist deren
Verwendung für die Paketweiterleitung naheliegend.
2.1 Verwandte Arbeiten
Peer-to-Peer basierte Kommunikation hat das Internet von heute
stark verändert. Zahlreiche unstrukturierte (zumeist Filesharing-Systeme) und strukturierte Peer-toPeer-Systeme [2; 16; 19] sind bereits
im Einsatz. Obwohl ihre Vorteile
(gute Skalierbarkeit, Ausfallsicherheit und eine flache Hierarchie) verteilte Hash-Tabellen zu einem interessanten Adressierungsschema für
mobile Netzwerke machen, nutzt
nur eine geringe Anzahl der Systeme
diese Technologie. In diesem Abschnitt werden mobile Peer-to-PeerSysteme vorgestellt und die Unterschiede zu MHTs herausgearbeitet.
Verschiedene Ansätze [5; 12]
platzieren ein unstrukturiertes Peerto-Peer-Protokoll oberhalb eines
Ad-hoc-Routing-Protokolls,
wie
z. B. AODV [15] oder DSR [7].
Die Skalierbarkeit dieses Ansatzes ist sowohl durch die begrenzte
Skalierbarkeit des Ad-hoc-RoutingProtokolls als auch durch die des
unstrukturierten Peer-to-Peer-Protokolls beschränkt.
Strukturierte Peer-to-Peer-Systeme wurden ebenfalls für den Einsatz in mobilen Szenarien angepasst [6; 14; 21]. Diese nutzen jedoch weiterhin traditionelle Adhoc-Routing-Protokolle und sind
somit inhärent nicht skalierbar. Im
Vergleich dazu verwendet MHT
ein geografisches Routingprotokoll.
Obwohl die geografische Hash-Tabelle (GHT) [17] nicht für mobile
Szenarien entwickelt wurde, ist ihr
Konzept dem von MHT jedoch,
299
This article is protected by German copyright law. You may copy and distribute this article for your personal use only. Other use is only allowed with written permission by the copyright holder.
MHT: Eine mobilitätsbewusste verteilte Hash-Tabelle
verglichen mit anderen Ansätzen,
am ähnlichsten. In GHT werden
Schlüssel-Werte-Paare mit Hilfe einer Hash-Funktion auf geografische Positionen abgebildet. Geografisches Routing wird genutzt, um
Datenobjekte zu ihren Speicherplätzen zu leiten. In MHT werden diese
Ideen verallgemeinert und um den
Aspekt mobiler Datenobjekte erweitert, was den Einsatz in hochgradig
mobilen Netzwerken ermöglicht.
Kürzlich wurde Virtual Ring
Routing (VRR) [1] vorgestellt.
VRR ermöglicht skalierbares Routing in Ad-hoc-Netzwerken und
stellt gleichzeitig die Dienste einer DHT bereit. Im Unterschied
zu MHT nutzt Virtual Ring Routing keine Positionsinformationen.
Jedoch müssen auch in VRR, wie
in den meisten in diesem Abschnitt
vorgestellten Verfahren, Multi-HopPfade zwischen logisch benachbarten Knoten aufrecht erhalten
werden. Dies macht VRR ungeeignet für den Einsatz in hoch mobilen
Szenarien.
2.2 Mobile Hash-Tabellen
In diesem Abschnitt wird das Konzept der mobilen Hash-Tabelle kurz
eingeführt, für eine tiefere Einführung sei auf [9] verwiesen. Die
technische Herausforderung für den
Einsatz von strukturierten HashTabellen in mobilen Peer-to-PeerSystemen ist es, die unstrukturierte
und prinzipiell zufällige Bewegung
der Knoten zu ordnen und zu
strukturieren. Basierend auf der Annahme, dass jedem Knoten seine
Position, Geschwindigkeit und Bewegungsrichtung bekannt ist, wird
in diesem Abschnitt gezeigt, wie
mit Hilfe dieses Wissens eine effiziente strukturierte Hash-Tabelle
aufgebaut werden kann.
Die Abbildung von Daten auf
sich bewegende Knoten wird folgendermaßen realisiert: Für jedes
Datenobjekt wird ein Pfad aus dem
Schlüssel des Objektes abgeleitet.
Der Pfad stellt eine Sollbewegung
des Datenobjekts in der realen Umgebung der MHT Knoten dar. Ein
Objekt wird jeweils auf dem Knoten
300
gespeichert, dessen Bewegung dieser Sollbewegung des Datenobjektes
am ähnlichsten ist. Die Skalierbarkeit des vorgestellten Konzepts
basiert auf der folgenden Beobachtung: Je mehr Knoten am Peerto-Peer Netz teilnehmen, desto höher ist die Wahrscheinlichkeit, dass
ein Knoten mit einer Bewegungsrichtung und Geschwindigkeit ähnlich zu dem Pfad des Datenobjekts
existiert. Demnach müssen die Daten seltener von Knoten zu Knoten
transferiert werden.
Ein- und Austritt von Knoten In
MHT wird die Routing-Tabelle eines Knotens aus direkt benachbarten Knoten im mobilen Ad-HocNetzwerk gebildet. Somit muss die
Routing-Tabelle nicht durch eine
Suche in der DHT gefüllt werden,
wie es in Internet-basierten DHTs
normalerweise üblich ist. Für den
Eintritt eines Knoten in die MHT
ist es ausreichend, wenn dieser Knoten regelmäßige Broadcasts seiner
Position, Geschwindigkeit und Bewegungsrichtung sendet. Die Nachbarn empfangen diese Daten und
können an den Knoten Daten weiterleiten oder darauf speichern. Um
das System zu verlassen, beendet ein
Knoten seine regelmäßigen Broadcasts. Zusätzlich leitet er beim Verlassen des Systems gespeicherte Daten an den jeweils besten Nachbarn
(siehe Abschnitt 2.2.2) weiter.
Datenspeicherung Ein Datum wird
auf dem Knoten gespeichert, dessen Geschwindigkeit, Position und
Bewegungsrichtung dem Pfad des
Datenobjektes am ähnlichsten ist.
Überschreitet die Abweichung dieser Werte eine gewisse Schranke –
normalerweise die Hälfte des Kommunikationsradius eines mobilen
Knotens – so wird das Datenobjekt
zu einem anderen Knoten transferiert (siehe Bild. 1). Somit müssen
Anfragen nach einem Datenobjekt
auf eine Entfernung des halben
Kommunikationsradiuses an die Position des Datenobjektes geleitet
werden und können dann mit einer lokalen Broadcastnachricht den
Bild 1 Ein Datenobjekt wird von Knoten zu Knoten
transferiert, sobald der Sollpfad des Datenobjekts zu
stark von der Bewegung des Trägerknotens abweicht.
aktuellen Träger des gewünschten
Datenobjektes und somit das Datenobjekt selbst erreichen.
Neue Datenobjekte werden in
die MHT eingefügt, indem sie zu
einem Knoten nicht weiter als den
halben Kommunikationsradius entfernt von deren Position geleitet
werden. Dieser Knoten wählt dann,
analog zu dem oben beschriebenen
Verfahren, einen Knoten zur Speicherung aus. Befindet sich innerhalb
des halben Kommunikationsradiuses kein Knoten, so wird das Datenobjekt temporär zwischengespeichert bis ein entsprechender Knoten
zur Speicherung des Datenobjektes
gefunden wurde.
Suche nach Datenobjekten Anfragen (Queries) nach Daten basieren
auf demselben Konzept wie die zuvor beschriebene Speicherung von
Datenobjekten. Ist die Beschreibung
eines Objektes bekannt, so kann mit
Hilfe der Hash-Funktion ein Schlüssel hergeleitet werden. Aus dem
Schlüssel wird die aktuelle Position
und die Bewegung des Datenobjekts bestimmt. Anfragen nach einem Objekt werden schließlich zu
einem Knoten nicht weiter als den
halben Kommunikationsradius entfernt von der aktuellen Position des
gesuchten Objekts geleitet. Mit Hilfe
This article is protected by German copyright law. You may copy and distribute this article for your personal use only. Other use is only allowed with written permission by the copyright holder.
Schwerpunktthema
eines lokalen Broadcasts kann der
Knoten gefunden werden, der dieses Objekt speichert. Um die Position eines beweglichen Datenobjekts
zu bestimmen, ist eine grobe Zeitsynchronisation der Knoten in der
MHT notwendig. Diese ergibt sich
aus dem Positionssignal, das alle
Knoten empfangen.
2.3 Zusammenfassung MHT
In diesem Kapitel wurde nach einer
kurzen Motivation das Grundkonzept der Mobilen Hash-Tabellen
dargestellt. Mobile Hash-Tabellen
stellen sich in der Evaluation als
hoch-skalierbar in Bezug auf große
Teilnehmerzahlen dar (siehe Bild 2).
3 Churn und Lastverteilung
Für den praktischen Einsatz ergeben sich neben der Sicherheit des
Systems zwei besondere Herausforderungen: (1) Churn und (2) Lastverteilung. Diese erfuhren jedoch in
mobilen Peer-to-Peer-basierten Szenarien bisher nur wenig Aufmerksamkeit. In Infrastruktur-basierten
Netzen wurden beide Themen sehr
aktiv betrachtet. So evaluieren die
Autoren von [4; 11; 13] u. v. m. die
Stabilität von DHTs unter Churn
und präsentieren Möglichkeiten zur
Verbesserung der Stabilität. Diese
Arbeiten beziehen sich jedoch auf
die Wahl der Einträge in der DHTRouting-Tabelle, welche jedoch für
MHT ohne Bedeutung ist, da sich
bei MHT diese Tabelle nur aus den
lokalen Nachbarn zusammensetzt.
Die Verfügbarkeit von Datenobjekten leidet jedoch erheblich unter
Churn. Deshalb wird in diesem Kapitel diskutiert, inwiefern Techniken
aus der Internet-Welt zur Stabilisierung von DHTs auf das Konzept der MHT übertragen werden
können.
Wenn ein Knoten das Netzwerk
unerwartet verlässt, gehen alle Datenobjekte, die auf diesem Knoten
gespeichert sind, für das Netzwerk
verloren. Üblicherweise wird diesem
Problem begegnet, indem mehrere
Kopien eines Datenobjekts auf verschiedenen Knoten im Netzwerk
platziert werden. Zwischen diesen
Objekten werden regelmäßig Nachrichten ausgetauscht, um ihre Verfügbarkeit zu prüfen und bei Bedarf
Kopien wiederherzustellen.
Ein solcher Ansatz scheint auch
für mobile Ad-hoc-Systeme vielversprechend zu sein. Dabei eröffnet
die Tatsache, dass die MHT auf
einem Funknetzwerk basiert, zwei
interessante Optionen: (1) Replikation auf nahe liegenden Knoten
(lokale Replikation) oder (2) Replikation verteilt im gesamten Netzwerk (globale Replikation). MHT
nutzt lokale Replikation [8], um den
Einfluss von Churn auf die Verfügbarkeit von Daten zu minimieren.
Des Weiteren wird globale Replikation genutzt, um eine Lastverteilung
im Netzwerk zu ermöglichen.
3.1 Churn und lokale
Replikation
Bei lokaler Replikation werden Kopien eines Datenobjekts mit einer zeitlichen oder räumlichen Verschiebung auf dem Pfad des origi-
Bild 2 Performance von MHT im offenen Gelände, innerhalb eines Manhattan-Netzes und bei
Verkehrsanpassung. Als Vergleichswert ist die Performance von GHT abgebildet.
nalen Objekts platziert. Somit bewegen sich das Original und die
Kopien mit derselben Geschwindigkeit und Richtung, jedoch um einen
Offset verschoben.
Geht ein Datenobjekt aufgrund
von Churn verloren, wird mit Hilfe
einer Kopie ein Duplikat erstellt, mit
entsprechenden Pfadinformationen
versehen und in der mobilen HashTabelle gespeichert. Da alle Kopien
eine geringe Entfernung zueinander
aufweisen, belasten die regelmäßigen Nachrichten, die zum Test der
Verfügbarkeit ausgetauscht werden,
das Netzwerk nur geringfügig und
im lokalen Rahmen. Aus dem selben Grund ist auch das Verändern
von Objekten und ihrer Kopie ohne
großen Aufwand möglich. Zusammenfassend lässt sich sagen, dass
lokale Replikation den Einfluss von
Churn in MHTs effizient reduziert.
3.2 Lastverteilung und globale
Replikation
Obwohl lokale Replikation den Einfluss von Churn stark reduzieren
kann, hat diese Art der Replikation jedoch einige Einschränkungen
bzgl. der Lastverteilung. Wird ein
Datenobjekt häufig angefragt, können die Anfragen eine hohe Last auf
den Pfaden zum Datenobjekt verursachen. Globale Replikation erlaubt
es, Kopien eines Objektes an dedizierten Stellen im Netzwerk zu
platzieren und so die Last auf mehrere Pfade zu verteilen. Ebenso kann
bei einer Suchanfrage berechnet
werden, welche Kopie am nächsten
zum Anfragenden liegt. Die Anfrage
erreicht somit ihr Ziel in wenigen
Hops. Das Netzwerk wird entlastet
und die Anfrage schneller bearbeitet.
Als Folge müssen jedoch Änderungen an Datenobjekten und
die regelmäßigen Nachrichten zum
Test der Verfügbarkeit über eine
große Anzahl an Hops geleitet werden. Somit hängt die Wahl und
die Kombination der beiden vorgestellten Replikationstechniken stark
vom Einsatzszenario der Hash-Tabelle ab.
301
This article is protected by German copyright law. You may copy and distribute this article for your personal use only. Other use is only allowed with written permission by the copyright holder.
MHT: Eine mobilitätsbewusste verteilte Hash-Tabelle
3.3 Zusammenfassung
In diesem Abschnitt wurde diskutiert, welche Besonderheiten sich
in mobilen Peer-to-Peer Systemen
in Bezug auf Churn und Lastverteilung ergeben. Insbesondere zeigt
sich, dass durch lokale und globale Replikation dem System mehr
Möglichkeiten der Replikation zur
Verfügung stehen als in Internet-basierten Systemen.
4 Sicherheit in MHT
MHT ist wie alle Peer-to-Peerund Ad-hoc-Routing-Systeme auf
die Kooperation der Teilnehmer angewiesen. Auf Techniken für die
Erkennung von nicht kooperativen
Teilnehmern sowie deren Entfernung aus dem Netz kann aufgrund
der Platzbeschränkungen nicht eingegangen werden. Wir betrachten in
diesem Kapitel drei weit verbreitete
Angriffe auf P2P Systeme und diskutieren ihre Bedeutung für mobile
Peer-to-Peer Systeme, insbesondere
Mobile Hash-Tabellen.
4.1 Sybillen Angriffe
Bei einem Sybillen Angriff [3] versucht ein Angreifer, eine Vielzahl
an Knoten, die von ihm kontrolliert
werden, in die DHT einzufügen und
somit großen Einfluss auf das Netzwerk zu erlangen.
Es ist jedoch interessant festzustellen, dass die Platzierung von
mehreren Identitäten im MHTNetzwerk weitaus schwieriger ist
als in Internet-basierten Systemen.
Durch die Kopplung von Knotenidentitäten an deren Positionen im
P2P Netzwerk kann sich ein Knoten nur an seiner tatsächlichen aktuellen Position im Netz platzieren. Das Vorspiegeln von falschen
Positionsinformationen kann durch
die Abweichung zu den Positionen der Nachbarn eines Knoten
leicht entdeckt werden. Die Platzierung von vielen Identitäten an der
tatsächlichen Position eines Angreifers bringt diesem jedoch keinen
Vorteil. Einzig die Nutzung eines
Funksystems mit hoher Reichweite
erlaubt es, Identitäten an verschiedenen Stellen zu platzieren und
302
dort zu unterhalten. Diesem Angriff kann aber durch Messungen
der Signallaufzeit begegnet werden.
Zusammenfassend lässt sich
feststellen, dass die Platzierung von
verschiedenen Identitäten in MHT
Netzwerk mit hohem Aufwand verbunden ist und es effiziente Möglichkeiten zur Erkennung dieser
Manipulation gibt. Damit verliert
dieser im Internet sehr bedeutsame
Angriff in MHTs an Stärke.
4.2 Eclipse Angriffe
Der Eclipse Angriff [18] kann als
eine Spezialisierung des Sybillen
Angriffs (siehe Abschnitt 4.1) betrachtet werden. Bei diesem Angriff
werden Identitäten an ausgewählten Stellen im Netzwerk platziert,
z. B. den Pfaden zu einem Angriffziel, und somit das Angriffziel aus
dem Peer-to-Peer Netzwerk ausgeschlossen. Für diesen Angriff sind
meistens weniger Teilnehmer erforderlich als für den Sybillen Angriff,
die Platzierung der Teilnehmer ist
jedoch weitaus komplexer.
Auch im Bezug auf die Resistenz gegen Eclipse Angriffe profitiert die Mobile Hash-Tabelle von
der Tatsache, dass der Kommunikationseinfluss auf das Netzwerk
von der physikalischen Position eines Knotens abhängt. Um einen
Teilnehmer aus dem Netzwerk auszuschließen, müsste der Angreifer
alle Routen zu dem Angriffsziel blockieren. Somit müsste er alle anderen MHT Knoten in einem Ring,
der die Funkreichweite des Zielknotens abdeckt, ausschalten. Weiterhin müsste sich dieser Ring mit
dem Ziel bewegen. Ein solcher Angriff gestaltet sich daher ungleich
schwieriger als im Internet und verliert daher deutlich an Bedrohlichkeit.
Zusammenfassend lässt sich sagen, dass dieser Angriff in der praktischen Umsetzung in mobilen Peerto-Peer Systemen sehr schwierig ist.
4.3 Index Vergiftung
Bei dem Index Vergiftungsangriff [10] wird eine große Anzahl an
falschen Datenobjekten in das Peerto-Peer System eingefügt. Dieser
Angriff hat zwei Effekte: (1) Diese
Einträge und ihre Unterhaltung im
System verbrauchen Ressourcen in
Form von Speicherplatz, Rechenzeit
und Kommunikationsbandbreite,
(2) die Nutzbarkeit des Systems
wird reduziert, da viele Anfragen auf
diese falschen Datenobjekte geleitet
werden. Für diesen Art des Angriffs
ist das mobile Peer-to-Peer System
ähnlich anfällig wie Internet-basierte Systeme. Die Literatur schlägt
als Lösung Reputations-basierte Systeme vor [10], diese können in
ähnlicher Form auch in MHT eingesetzt werden.
4.4 Sicherheit zusammengefasst
Die Grundlage für die Skalierbarkeit einer verteilen Hash-Tabelle ist
ihr hoher Grad an Verteilung und
Dezentralisierung. Diese Tatsache
macht DHTs jedoch weitaus verletzlicher gegen bestimmte Klassen von
Angriffen als klassische Client-Server Ansätze. In diesem Abschnitt
wurde diskutiert, dass bestimmte
– im Internet sehr bedeutsame –
Angriffe jedoch durch die physikalischen Eigenschaften des Ad-hocNetzwerkes an Bedeutung verlieren
und unter Umständen unwirksam
werden.
5 Zusammenfassung
und Ausblick
In diesem Beitrag wurden drei wesentliche Herausforderungen mobiler Peer-to-Peer-Systeme angesprochen: (1) Skalierbares und effizientes Auffinden von Daten (2)
Datenstabilität unter Churn und
Lastverteilung und (3) Sicherheit
in der DHT. Für die einzelnen
Herausforderungen wurden Lösungen vorgestellt und ihre Unterschiede zu Internet-basierten Systemen diskutiert. Nach unserer Meinung können mobile Ad-hoc-Netzwerke sehr von einem solchen effizienten und verlässlichen Peerto-Peer-System profitieren, das es
erlaubt, Daten zuverlässig ohne
zusätzliche Infrastruktur zu speichern.
This article is protected by German copyright law. You may copy and distribute this article for your personal use only. Other use is only allowed with written permission by the copyright holder.
Schwerpunktthema
Literatur
[1] M. Caesar, M. Castro, E. Nightingale,
G. O’Shea, and A. Rowstron. Virtual
Ring Routing: Network routing
inspired by DHTs. In Proc. of ACM
SIGCOMM, 2006.
[2] M. Castro, P. Druschel, Y. C. Hu,
and A. Rowstron. Pastry: Scalable,
distributed object location and routing
for large-scale peer-to-peer systems.
In Proc. of Int’l Conf. on Distributed
Systems Platforms, 2001.
[3] J. R. Douceur. The Sybil attack. In
Proc. of 1st Int’l Workshop on Peer-toPeer Systems (IPTPS), 2002.
[4] K. Gummadi, R. Gummadi, S. Gribble,
S. Ratnasamy, S. Shenker, and I. Stoica.
The Impact of DHT Routing Geometry
on Resilience and Proximity. In Proc. of
ACM SIGCOMM, 2003.
[5] I. Gruber, R. Schollmeier, and
W. Kellerer. Performance Evaluation
of the Mobile Peer-to-Peer Protocol. In
Proc. of Int’l. Workshop on Global Peerto-Peer Computing, 2004.
[6] Y. C. Hu, H. Pucha, and S. M. Das.
Exploiting the Synergy between
Peer-to-Peer and Mobile Ad Hoc
Networks. In Proc. of HotOS-IX:
Workshop on Hot Topics in Operating
Systems, 2004.
[7] D. B Johnson and D. A. Maltz. Dynamic
Source Routing in Ad Hoc Wireless
Networks. In Mobile Computing,
vol. 353. Kluwer Publishers, 1996.
[8] O. Landsiedel, S. Götz, and K. Wehrle.
A Churn and Mobility Resistent
Approach for DHTs. In Proc. of ACM
Mobishare Workshop, Int’l Conf. on
Mobile Computing and Networking
(MobiCom), 2006.
[9] O. Landsiedel, S. Götz, and K. Wehrle.
Towards Scalable Mobility in
Distributed Hash Tables. In Proc. of
IEEE Int’l Conf. on Peer-to-Peer
Computing (P2P), 2006.
[10] J. Liang, N. Naoumov, K. W. Ross. The
Index Poisoning Attack in P2P FileSharing Systems. In Proc. of IEEE Int’l
Conf. on Computer Communication
(InfoCom), 2006.
[11] J. Li, J. Stribling, T. M. Gil, R. Morris,
and M. F. Kaashoek. Comparing the
Performance of Distributed Hash
Tables under Churn. In Proc. of Int’l
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[21]
Workshop on Peer-to-Peer Systems
(IPTPS04), 2004.
C. Lindemann and O. Waldhorst. Exploiting Epidemic Data Dissemination
for Consistent Lookup Operations
in Mobile Applications. ACM Mobile
Computing and Communication Review
(MC2R), 2004.
R. Mahajan, M. Castro, and
A. Rowstron. Controlling the Cost
of Reliability in Peer-to-Peer Overlays.
In In Proc. of Int’l Workshop on Peer-toPeer Systems (IPTPS), 2003.
H. Pucha, S. M. Das, and Y. C. Hu.
Ekta: An Efficient DHT Substrate for
Distributed Applications in Mobile
Ad Hoc Networks. In Proc. of IEEE
Workshop on Mobile Computing Systems
and Applications, 2004.
C. E. Perkins and E. M. Royer. Ad hoc
On-Demand Distance Vector Routing.
In Proc. of IEEE Workshop on Mobile
Computing Systems and Applications
(WMCSA), 1999.
S. Ratnasamy, P. Francis, M. Handley,
and R. Karp. A scalable contentaddressable network. In Proc. of ACM
SIGCOMM, 2001.
S. Ratnasamy, B. Karp, S. Shenker,
D. Estrin, R. Govindan, L. Yin, and
F. Yu. GHT: A Geographic Hash Table
for Data-Centric Storage in SensorNets.
In Proc. of ACM Workshop on Wireless
Sensor Networks and Applications
(WSNA), 2002.
A. Singh, T. W. Ngan, P. Druschel,
D. S. Wallach. Eclipse Attacks on
Overlay Networks: Threats and
Defenses. In Proc. of IEEE Int’l Conf. on
Computer Communication (InfoCom),
2006.
I. Stoica, R. Morris, D. Karger,
M. F. Kaashoek, and H. Balakrishnan.
Chord: A Scalable Peer-to-Peer Lookup
Service for Internet applications. In
Proc. of ACM SIGCOMM, 2001.
R. Steinmetz and K. Wehrle, editors.
Peer-to-Peer Systems and Applications.
LNCS 3485. Springer Publishing,
2005.
T. Zahn and J. Schiller. MADPastry:
A DHT Substrate for Practicably Sized
MANETs. In Proc. of Workshop on
Applications and Services in Wireless
Networks (ASWN), 2005.
1
2
3
1 MS CS Olaf Landsiedel received his Masters Degree in Computer Science from the
University of Kansas, where he graduated in
2003 with honours. His studies were funded by a Fulbright and a Direct Exchange
Scholarship. Since 2004, he is a research assistant with the Distributed Systems Group at
RWTH Aachen.
Address: Informatik IV – Verteilte Systeme,
Rheinisch-Westfälische Technische Hochschule Aachen, Ahornstraße 55,
52062 Aachen,
E-Mail: [email protected]
2 Dipl. Inf. Tobias Heer received his
Diploma Degree with honours from the
University of Tübingen in 2007. He worked
in Finland at the Helsinki Institute for
Information Technology in 2006. He is
a member of the graduate school for Mobile
Communication Systems at RWTH Aachen
and the Distributed Systems Group.
Address: see above
3 Prof. Dr.-Ing. Klaus Wehrle is head of
the Distributed Systems Group at RWTH
Aachen University. He received his PhD degree from University of Karlsruhe in 2002.
From 2002 to 2003 he was postdoctoral fellow at the International Computer Science
Institute at UC Berkeley. In 2004 he was
awarded a junior research group within the
DFG-Emmy-Noether excellence program at
University of Tübingen. In 2006 he was appointed associated professor at RWTH
Aachen.
Address: see above
303
This article is protected by German copyright law. You may copy and distribute this article for your personal use only. Other use is only allowed with written permission by the copyright holder.
MHT: Eine mobilitätsbewusste verteilte Hash-Tabelle
Herunterladen