findService( )

Werbung
Universität
Karlsruhe
Effektive und effiziente Dienstsuche und
-nutzung in Ad-hoc-Netzen
Birgitta König-Ries, Michael Klein, Philipp Obreiter
Universität Karlsruhe (TH)
Institut für Programmstrukturen und Datenorganisation
http://www.ipd.uni-karlsruhe.de/DIANE
1/28
Unser Szenario

Mehr über
SQL?
Anna
Offizielle SQL Folien
1-2-4
Zusammenfassung
über 2PC
Übungsblatt zu
UML
2/28
Übungsblatt zu
SQL
Lösung zum
SQL-Übungsblatt
Arbeiten zu Ad-hoc-Netzen
Application
Transport
Nur wenige Arbeiten auf den höheren Ebenen:
Wie können Dienste effektiv gefunden werden?
Wie können Dienste effizient genutzt werden?
Vielzahl von Arbeiten auf der technischen Ebene:
Wie kann zuverlässige Nachrichtenübertragung erreicht werden?
TCP Tahoe, TCP Reno, TCP SACK, etc.
IP
Network
Data Link
MAC
3/28
Wie werden Nachrichten von A nach B geroutet?
AODV, LAR, DSR, ZRP, STAR, etc.
Wie werden Adressen Geräten zugeordnet?
IP, Mobile IP
Wie wird auf das physikalische Medium zugegriffen?
802.11, CSMA, MACA, FSCS-CSMA, TDMA, etc.
Fragestellungen bei DIANE
Dienstbeschreibung
Übungsblatt zu
SQL
• semantisch
• maschinell auswertbar

Dienstfindung
• dynamisch
• dezentral
• effizient
Dienstintegration
• transparente Kombination
von Diensten
Motivation
• Kompensation für Knoten
4/28
SQL
+

=
SQL
Stand der Forschung:
Dienstbeschreibung und Dienstfindung
 Technologien & Architekturen
 SLP, Jini, Corba Trading Service, SSDP, UDDI, SDP, SDL, JXTA
Search
 Architektur oft nicht geeignet für Ad-hoc-Netzwerke
 semantisches Matchen sehr beschränkt
 Semantische Beschreibung
 Semantic Web, Ontologien
 RDF(S), DAML-S
 nicht architekturgebunden
 noch keine Verfahren für das Matchen
 noch keine Plattformen, Werkzeuge, …
5/28
Stand der Forschung:
Dienstfindung
 Ansätze auf der Netzwerkschicht
 Routingverfahren
 tabellengesteuert (DSDV,…)
 bedarfsgesteuert (AODV, DSR,…)
 lokationsgesteuert (Terminode,…)
 inhaltsgesteuert (SIENA,…)
 nicht direkt verwendbar
6/28
Geschichtete Dienstontologie
Schritt 1: Schichte Ontologien, um domänenspezifische, aber dennoch
stets gleich strukturierte Dienstbeschreibungsschablonen zu erhalten.
I. Obere Dienstontologie
 "Wie ist eine Dienstbeschreibung
allgemein aufgebaut?"
Dienst
Eingabe Ausgabe
Dokument
II. Ontologien für Dienstkategorien
 "Was sind typische Ein-/Ausgaben für
einen Dienst dieser Kategorie?"
 z.B. Informationsdienst, Einkaufsdienst,
Problemlösedienst etc.
Dokument
Informationsdienst
Autor
Titel
Inhalt
Rel. Modell
Rel. Algebra
Datenbanken
SQL
SELECT
7/28
UPDATE
III. Domänenontologien
 "Mit welchem Vokabular können die
Objekte beschrieben werden?"
 z.B. Schuhe, Autos, Datenbanken, etc.
Dienstbeschreibungsinstanz
Schritt 2: Instanziiere eine konkrete Dienstbeschreibung aus der
entstandenen Schablone.
Dienstontologie
Dienst
xyz
8/28
abc
Dienstbeschreibungsinstanz
 in RDF oder DAML
 Folgt der Dienstontologie
 Aber flexibel: Lässt unbekannte
Werte weg und fügt zusätzliche
Attribute hinzu
 Verwendet standardisiertes
Vokabular (LOM, DC)
Dienstsuche
 Grundproblem ähnlich wie beim Routen, aber auf
logischer Ebene
 Lösungsansatz:
 Logische Gruppierung von ähnlichen Diensten
 Dienstringe
 Dienstcluster
9/28
Dienstringe
 Gruppiere Geräte, die ähnliche Dienste anbieten, zu einem Ring
 Ähnlichkeit kann anhand der Dienstbeschreibung ermittelt werden
Offizielle
Folien zu SQL
Übungsblatt
zu SQL
SQL
Übungsblatt
zu SQL
Offizielle
Folien zu SQL
Beispiele zu
GROUP_BY
Beispiele zu
GROUP_BY
10/28
 Ein ausgezeichneter Knoten dient als
Zugangspunkt zum Ring (SAP)
Hierarchie von Dienstringen
Übungsblatt zu
SQL?
Übungsblatt
zu SQL
relationale Algebra
Papier zur
Projektion
SQL
Normalisierung
Rel. Modell
11/28
Multi-Layer Clusters
Grundidee:
 Clustere Geräte, die logisch und physikalisch benachbart
sind
 Gruppiere Cluster zu Clustern höherer Ordnung
12/28
Semantische Nähe
database
isSubTopicOf
relational model
object oriented model
isSubTopicOf
SQL
rel. algebra
OQL
isDescribedBy
Zwei Dienste/Cluster sind semantisch ähnlich,
gdw. sie zum selben Term in der Ontologie gehören
13/28
Physikalische Nähe
Gerät a Nachbar_von Gerät b gdw.
b in a's Funkreichweite ist
b
a
Cluster A ist Nachbar_von Cluster B gdw.
es ein Gerät m1 in A und ein Gerät m2 in B gibt,
so dass m1 Nachbar_von m2 ( Gatewayknoten)
A
m1
14/28
B
m2
Clustering (1)
Schritt 1:
Bilde ein Cluster auf Ebene 1 aus Geräten, die
a) semantisch ähnlich
(=durch den selben ontologischen Term beschrieben)
b) und benachbart sind
(=verbundener Erreichbarkeitsgraph)
insert.doc
projection.pdf
select.doc
sql2.ppt
update.doc
division.doc
sql1.ppt
sql3.ppt
15/28
relAlgebra1.ppt
selection.pdf
Clustering (2)
Schritt i
Bilde ein Cluster auf Ebene i aus Clustern der Ebene (i-1), die
a) semantisch ähnlich sind
(= zum gleichen Oberbegriff in der Ontologie gehören)
b) benachbart sind
Relational Model
SQL
SQL
Rel. Algebra
16/28
Dienstfindung
Wir hätten gerne: Funktion
Device findService(Service s)
die
 nach Geräten sucht, die Dienst s anbieten
 von jedem Gerät aufgerufen werden kann
 jeden beliebigen Dienst s finden kann
 lokal implementierbar ist
Wir haben:


sehr einfache Funktionen auf den Geräten:
1. überprüfe, ob Dienstanfrage s erfüllt
werden kann
2. sende Nachricht an erreichbares Gerät
Clusterung von Geräten
Grundidee:
Schichtenarchitektur
17/28
Benutzersicht
Lücke
Systemsicht
Beispiel
Ontologie
findService(
?
18/28
)
Beispiel
19/28
Ontologie
findService(
)
findService(
)
Beispiel
Ontologie
findService(
Mögliche
Verbreitungsverfahren:
• Fluten
• zyklisch
• direkt
20/28
)
Beispiel
Ontologie
findService(
sendMessage(
21/28
)
)
Beispiel
Ontologie
findService(
sendMessage(
22/28
)
)
Beispiel
Ontologie
findService(
23/28
)
sendMessage(
)
findService(
)
Beispiel
Ontologie
findService(
24/28
)
sendMessage(
)
findService(
)
findService(
)
sendMessage(
)
Beispiel
Ontologie
findService(
sendMessage(
25/28
)
)
Beispiel
26/28
Ontologie
Zusammenfassung
 Fokus:
 Dienstnutzung in Ad-hoc-Netzen
 Bisher beschäftigt mit:
 Dienstbeschreibung
 Geschichtete Ontologie
 Dienstsuche
 Ringe, Cluster
 In nächster Zeit:
 Weiterentwicklung der Verfahren
 Evaluierung der Verfahren durch Simulation
 Auch noch auf dem Programm:
 Motivation zur Diensterbringung
 Kombination von Diensten
27/28
Vielen Dank!
Vielen Dank für Ihre Aufmerksamkeit!
Nähere Informationen gibt es auf unserer Projektseite:
http://www.ipd.uni-karlsruhe.de/DIANE
Gibt es noch Fragen?
28/28
Herunterladen