440 likes | 535 Views
Dienste in Ad-Hoc-Netzen Beschreibung, Auffindung und Motivation. Dr. Birgitta König-Ries Michael Klein Philipp Obreiter. DIANE-Projekt: Dienste in Ad-hoc-Netzen Universität Karlsruhe (TH) http://www.ipd.uni-karlsruhe.de/DIANE. Februar 2004. Ziel.
E N D
Dienste in Ad-Hoc-Netzen Beschreibung, Auffindung und Motivation Dr. Birgitta König-Ries Michael Klein Philipp Obreiter DIANE-Projekt: Dienste in Ad-hoc-Netzen Universität Karlsruhe (TH) http://www.ipd.uni-karlsruhe.de/DIANE Februar 2004
Ziel Integrierte Nutzung verteilter Ressourcen Peer-to-Peer-Systeme Grid Computing Föderierte Datenbanken Autonomic Computing Ad-hoc-Netze Randbedingungen? Problembereiche? Ansätze?
Automatisierung Effizienz- anforderungen Autonomie Selbstorganisation Randbedingungen der Ressourcennutzung
föderierte Datenbank Napster-artige Systeme Gnutella-artige Systeme Ad-hoc-Netze Automatisierung Automatisierung Automatisierung Automatisierung Effizienz- anforderungen Effizienz- anforderungen Effizienz- anforderungen Effizienz- anforderungen Autonomie Autonomie Autonomie Autonomie Selbstorganisation Selbstorganisation Selbstorganisation Selbstorganisation Randbedingungen der Ressourcennutzung
Gateway Service In: Access DataOut: Received Mails Transformation Service In: Compressed File Out: File Query Service In: CourseOut: Academic calendar Document Service In: --Out: article on GROUP-BY operator Szenario Wann und wo sind meine DB-Vorlesungen? Mehr über SQL? Meine Mails?
Mehr über SQL? Document Service In: --Out: article on GROUP-BY operator Problembereiche
Angebote und Nachfragen müssen: beschrieben werden Document Service In: --Out: article on GROUP-BY operator Problembereiche Mehr über SQL?
Angebote und Nachfragen müssen: beschrieben werden zu einander kommen Document Service In: --Out: article on GROUP-BY operator Problembereiche Mehr über SQL?
Angebote und Nachfragen müssen: beschrieben werden zu einander kommen abgeglichen werden Document Service In: --Out: article on GROUP-BY operator Problembereiche Mehr über SQL? ? =
Angebote und Nachfragen müssen: beschrieben werden zu einander kommen abgeglichen werden Geräte müssen zur Ressourcenbereitstellung motiviert werden Document Service In: --Out: article on GROUP-BY operator Problembereiche $$$ Mehr über SQL?
DIANE Vision: Dienstorientiertes Rechnen zur verteilten Ressourcennutzung Anwendung veröffentlicheDienst sucheDienst führeDienstAus Dienstorientierte Middleware Übermittlung Cross-Layer-Events 4. Transport 3. Network 2. Datalink 1. Physical
Überblick M O T I V A T I O N (Semantische) Dienstbeschreibung S I M U L A T I O N (Dezentrale) Dienstsuche (Effiziente) Dienstausführung Transparente Dienstkombination
Dienstbeschreibung – Stand der Forschung (1) Nachrichtenbasierte Dienstbeschreibung incomingmessages outgoingmessages Service • Beispiele: IDLs (CORBA, DCOM, EJB), WSDL, ebXML, … Druckdienst: PrintRequestMessage Service input url : String resolution: ResType
Dienstbeschreibung – Stand der Forschung (1) Nachrichtenbasierte Dienstbeschreibung Probleme • Funktionalität kann nur aus dem Nachrichtenfluss geraten werden • keine Unterstützung der Konfiguration Anwendungsbereich • halbautomatische Suche incomingmessages outgoingmessages Service • Beispiele: IDLs (CORBA, DCOM, EJB), WSDL, ebXML, …
Dienstbeschreibung – Stand der Forschung (2) Zustands-/Nachrichtenbasierte Dienstbeschreibung incomingmessages outgoingmessages Service state before execution state after execution • Beispiele: DAML-S/OWL-S Profile, ICL, … PrintRequestMessage :Service url : String resolution: ResType input :DocumentLocallyAvailable :DocumentPrinted precondition effect
Dienstbeschreibung – Stand der Forschung (2) Zustands-/Nachrichtenbasierte Dienstbeschreibung incomingmessages outgoingmessages Service state before execution state after execution • Examples: DAML-S/OWL-S Profile, ICL, … Probleme • getrennte Beschreibung der Funktionalität in Nachrichten und Zuständen Zusammenhang unklar • keine Unterstützung der Konfiguration Anwendungsbereich • halbautomatische Suche
Automatische Suche: Anforderungen • Funktionalität • klare Bedeutung der Begriffe • explizite Modellierung des Zusammenhangs zwischen Vor- und Nachzustand • Konfigurationsprozess • explizite Beschreibung des Ablaufs der Dienstnutzung
DIANE Service Descriptions (DSD) (1) • I. obere Dienstontologie • Task: allgemeine Struktur einer Dienstbeschreibung • einheitlich, klein Service • II. Ontologien für Dienstkategorien • wenige • Einschränkung der möglichen Vor- und Nachbedingungen • Beispiel: InformationService Prec Effect InfoState InfoState Document Author Title Topic • III. Domänenontologien • Vokabular zur Beschreibung einzelner Domänen • viele, verteilt • Beispiele: Datenbanken, Orte, Schuhe,… Rel. Model Rel. Algebra SQL SELECT UPDATE IV. Instanziierung • schrittweise Konfiguration
Resolution Type <black-white>:ColorType resolution color entity entity location time :Document filesize dc:format dc:identifier <pdf>:FormatType Integer Time Location String DSD: Beispiel (2) INe PrintRequestMessage :Service url : String resolution: ResType input :LocallyAvailable :Printed precondition effect INe INx OUTe OUTx
Vorteile des Ansatzes • Ontologiebasierung für klare Bedeutung • vereinheitlichte, aber flexible Struktur durch Schichtung • Funktionalität ist explizit beschrieben • Zusammenhang zwischen Vor- und Nachzustand • Einfluss der Parameter • Konfigurationsprozess ist explizit beschrieben Anwendungsbereich: • automatische Suche • Michael Klein, Birgitta König-Ries: A Process and a Tool for Creating Service Descriptions based on DAML-S • 4th VLDB Workshop on Technologies for E-Services (TES'03), Berlin, 2003 • Michael Klein, Birgitta König-Ries, Philipp Obreiter:Stepwise Refinable Service Descriptions: Adapting DAML-S to Staged Service Trading,1st International Conference on Service Oriented Computing (ICSOC-03), Trento, Italien, 2003.
Überblick M O T I V A T I O N (Semantische) Dienstbeschreibung S I M U L A T I O N (Dezentrale) Dienstsuche (Effiziente) Dienstausführung Transparente Dienstkombination
JXTA Search Pastry Jini JXTA Search Chord UDDI Freenet Gnutella Napster CAN Dienstsuche: Ansätze (1) (Zentrales) Dienstverzeichnis verteilte Hashtabellen Fluten • beschränkte Ähnlichkeitssuche • nicht an Netztopologie angepasst • Proaktiv • benötigt Infrastruktur • Reaktiv • Ressouren-intensiv
dezentrale, semantische Dienstsuche Ziel: Dienstsuche, die • ohne Infrastruktur funktioniert • Ähnlichkeit berücksichtigt • ressourcenschonend ist • für dynamische Umgebungen geeignet ist. Grundidee: Lege logische Struktur über das vorhandene Netzwerk • welche sich am Wissen orientiert, welche Dienste angeboten werden, • welche Such- und Angebotsnachrichten geschickt leitet • welche bei Änderung des physischen Netzes adaptiert wird Overlay A 2 3 C E 1 B C A D E physisches Netz
Dienstankündigung 1 5 9 findService findService findService Ring-Overlay Cluster-Overlay Dienstvergleich 2 6 10 any cast any cast Lanes-Overlay routeMessage routeMessage 3 7 11 4. Transport 4. Transport sendMessage 4. Transport 3. Network 3. Network 4 8 12 sendPacket sendPacket sendPacket 2. Data Link 2. Data Link 2. Data Link 1. Physical 1. Physical 1. Physical Dienstsuche Dienstsuche: Lösungen
Lanes: Idee • Keine feste Zuordnung in x-Richtung parallele Bahnen von Knoten • Innerhalb Bahn: Definierte Nachbarschaft • Von außerhalb: Alle Knoten einer Bahn gleich • Verwende Anycast- Routing in x-Richtung 1 5 9 2 6 10 any cast any cast 3 7 11 4 8 12 Michael Klein, Birgitta König-Ries, Philipp Obreiter Lanes - A Lightweight Overlay for Service Discovery in Mobile Ad Hoc Network 3rd Workshop on Applications and Services in Wireless Networks (ASWN2003), Bern
Lanes: Service Trading Dienstankündigung 1 5 9 2 6 10 any cast any cast 3 7 11 4 8 12 Dienstsuche
Algorithmen der Lanes-Struktur • Login/Logoff-Algorithmus • Zutritt in die bzw. Austritt aus der Lane • Dienstankündigung-Algorithmus • Dienstbekanntgabe innerhalb der Lane • Dienstsuche-Algorithmus • Interne und anycast Suche • Split-Algorithmus, Merge-Algorithmus • Korrektur der Lanegröße • LaneBroken-Algorithmus • Korrektur nach unangekündigtem Austritt Ping-Nachrichten: Sorgen für die Pflege der Lanes
Vorteile von Lanes • Spezialisiert für dynamische Topologien • Wenige Strukturbedingungen • Topologiebewusste Algorithmen • Selbstjustierende Parameter: Anpassung an die aktuelle regionale Netzwerkprofil • Vollständig dezentral, kein Fluten, kein Hashen • Unabhängig von Dienstbeschreibung • Aber: Spezialisiert für Dienstaushandlung ( 2 Dimensionen)
Überblick M O T I V A T I O N (Semantische) Dienstbeschreibung S I M U L A T I O N (Dezentrale) Dienstsuche (Effiziente) Dienstausführung Transparente Dienstkombination
Fallbeispiel: Kooperation in Lanes Warum soll man Dienste anbieten? Dienstankündigung 1 5 9 Warum soll man Dienstangebote speichern und weiterleiten? Warum soll man sich mit Dienstsuchen und Dienstnutzung zurückhalten? 2 6 10 any cast any cast Warum soll man Dienstsuchen mit -angeboten vergleichen? 3 7 11 4 8 12 Dienstsuche Warum soll man Dienst-suchen weiterleiten?
motiviert durch Gegenleistung handelsbasierte Anreizmuster identitätsbas. Vertrauen sofortige Gegenleistung verhaltensbas. Vertrauen versprochene Gegenleistung Kollektivmuster Gemeinschafts- muster Tauschhandels- muster wertpapierbasierte Anreizmuster Anreizmuster Frage: Welche Arten von Anreizen gibt es, für ein anderes Gerät eine Aktion durchzuführen? Anreizmuster motiviert durch Vertrauen vertrauensbasierte Anreizmuster Philipp Obreiter, Jens Nimis A Taxonomy of Incentive Patterns - The Design Space of Incentives for Cooperation 2nd Workshop on Agents and Peer-to-Peer Computing (AP2PC'03), Melbourne
Fallbeispiel: Anreizschema für Lanes Warum Dienste anbieten? um Eigenwechsel zu bekommen (Wechselversprechen: Dienst) Dienstankündigung Warum sparsame Dienstbenutzung? um Eigenwechsel nicht ausstellen zu müssen (Wechselversprechen: Dienst) 1 5 9 Warum Dienstangebote weiterleiten? um gute Reputation zu erhalten 2 6 10 any cast any cast Warum Dienstsuchen speichern und mit Angeboten vergleichen? um Eigenwechsel zu bekommen (Wechselversprechen: Dienstvergleich) 3 7 11 Warum sparsame Dienstsuche? um Eigenwechsel nicht ausstellen zu müssen (Wechselversprechen: Dienstvergleich) 4 8 12 Dienstsuche Warum Dienstsuchen weiterleiten? um gute Reputation zu erhalten
Überblick M O T I V A T I O N (Semantische) Dienstbeschreibung S I M U L A T I O N (Dezentrale) Dienstsuche (Effiziente) Dienstausführung Transparente Dienstkombination
runTest(plan) Meta SI M U L ATOR instantiateUser(param) Benutzer userFunctions... Protokoll P2 P1 sendMessage(device) Netzwerk connected(device1, device2) Verbindung Evaluation durch Simulation Michael Klein DIANEmu - A Java Based Generic Simulation Environment for Distributed Protocols Download: http://www.ipd.uni-karlsruhe.de/DIANE
Bewegung zu Aktivität Dienst während Aktivität Umwelt-modell Bewegungs-modell Dienst-modell PfadeOrte Liste: (Zeit, Koordinate) Liste: (Zeit, Dienstaufruf) Benutzerschicht Ziel: Realitätsgetreues Modell der Benutzer mögliche Aktivitäten Prioritäten der Benutzer Aktivitätsmodell Ablauf der Aktivitäten Tobias Breyer, Michael Klein, Philipp Obreiter, Birgitta König-Ries Activity-Based User Modeling in Service-Oriented Ad hoc Networks First Working Conference on Wireless On-demand Network Systems (WONS 2003), Trento
Evaluierung von Lanes Einstellungen: 1. 15 Geräte 2. Testdauer 3600s 3. Aktion jede 60 Sekunden 4. Ping Nachrichten bei Lanes jede 15 sec Aufwand [ #Nachrichten/Suchanfrage] ∞ 10 5 3,3 2,5 2 Dynamik [ Verweildauer in Min.]
Fairness: Korrelationskoeffizient und Regressionsgerade • Aus Messungen abgeleitete Werte: • 1. Korrelationskoeffizient r (Findungen-Vergleiche) 2. Steigung der Regressionsgerade (b) Einstellungen: 4400 Suchen, 15 Kooperative, 5 Unkooperative Lanes SLanes #Findungen #Vergleiche r=-0,18 r=0,69 b=0,54 Individualnutzen [Findungen] Individualnutzen [Findungen] Individualaufwand [Vergleiche] Individualaufwand [Vergleiche]
Zusammenfassung M O T I V A T I O N (Semantische) Dienstbeschreibung S I M U L A T I O N (Dezentrale) Dienstsuche (Effiziente) Dienstausführung Transparente Dienstkombination
DIANE Service Descriptions halbsemantische Overlays DIANE Service Descriptions Anreizschemata Angebote und Nachfragen müssen: beschrieben werden zu einander kommen abgeglichen werden Geräte müssen zur Ressourcenbereitstellung motiviert werden Ad-hoc-Netze Automatisierung Effizienz- anforderungen Autonomie Selbstorganisation Anforderungen und Lösungsansätze
z.B. WSDL halbsemantische Overlays WSDL Vergleich, manuelle Nachbesserung Angebote und Nachfragen müssen: beschrieben werden zu einander kommen abgeglichen werden Geräte müssen zur Ressourcenbereitstellung motiviert werden Anforderungen und Lösungsansätze Ad-hoc-Netze in einer Organisation, manuelle Dienstnutzung Automatisierung Effizienz- anforderungen Autonomie Selbstorganisation
DIANE Service Descriptions Dienstverzeichnisse, Fluten, Overlays DIANE Service Descriptions Anreizschemata Angebote und Nachfragen müssen: beschrieben werden zu einander kommen abgeglichen werden Geräte müssen zur Ressourcenbereitstellung motiviert werden Peer-to-Peer- Systeme Automatisierung Effizienz- anforderungen Autonomie Selbstorganisation Anforderungen und Lösungsansätze
DIANE: Beitrag M O T I V A T I O N (Semantische) Dienstbeschreibung S I M U L A T I O N Schichtung, reine Zustandsorientierung, Variablen (Dezentrale) Dienstsuche Overlays: Cluster, Rings, Lanes (Effiziente) Dienstausführung Transparente Dienstkombination Anreize für die Dienstsuche DIANEmuAktivitätsbas. Benutzermodell
D A N K E ...für die Aufmerksamkeit Alle Veröffentlichungen und den Simulator gibt es unter: http://www.ipd.uni-karlsruhe.de/DIANE