1/28
http://www.ipd.uni-karlsruhe.de/DIANE
Effektive und effiziente Dienstsuche und
-nutzung in Ad-hoc-Netzen
Universität Karlsruhe (TH)Institut für Programmstrukturen und Datenorganisation
Universität Karlsruhe
Birgitta König-Ries, Michael Klein, Philipp Obreiter
2/28
Unser Szenario
Anna
Mehr über SQL?
Offizielle SQL Folien1 - 2 - 4
Zusammenfassung über 2PC
Übungsblatt zu UML
Übungsblatt zu SQL
Lösung zum SQL-Übungs-blatt
3/28
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 wird auf das physikalische Medium zugegriffen?802.11, CSMA, MACA, FSCS-CSMA, TDMA, etc.
Wie werden Nachrichten von A nach B geroutet?AODV, LAR, DSR, ZRP, STAR, etc.
Wie werden Adressen Geräten zugeordnet?IP, Mobile IP
Wie kann zuverlässige Nachrichtenübertragung erreicht werden?TCP Tahoe, TCP Reno, TCP SACK, etc.
Arbeiten zu Ad-hoc-Netzen
Data LinkMAC
IPNetwork
Transport
Application
4/28
Fragestellungen bei DIANE
Dienstbeschreibung• semantisch• maschinell auswertbar
Übungsblatt zu SQL
Dienstfindung• dynamisch• dezentral• effizient
Dienstintegration• transparente Kombination von Diensten
SQL SQL+ =
Motivation• Kompensation für Knoten
5/28
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, …
6/28
Stand der Forschung: Dienstfindung
Ansätze auf der Netzwerkschicht Routingverfahren
tabellengesteuert (DSDV,…) bedarfsgesteuert (AODV, DSR,…) lokationsgesteuert (Terminode,…) inhaltsgesteuert (SIENA,…)
nicht direkt verwendbar
7/28
III. Domänenontologien "Mit welchem Vokabular können
die Objekte beschrieben werden?" z.B. Schuhe, Autos, Datenbanken,
etc.
DatenbankenSQL
SELECT
Rel. Modell
Rel. Algebra
UPDATE
Geschichtete Dienstontologie
Schritt 1: Schichte Ontologien, um domänenspezifische, aber dennoch stets gleich strukturierte Dienstbeschreibungsschablonen zu erhalten.
II. Ontologien für Dienstkategorien
"Was sind typische Ein-/Ausgaben für einen Dienst dieser Kategorie?"
z.B. Informationsdienst, Einkaufsdienst, Problemlösedienst etc.
Dokument Dokument
Informationsdienst
Autor InhaltTitel
I. Obere Dienstontologie "Wie ist eine Dienstbeschreibung
allgemein aufgebaut?"Dienst
Eingabe Ausgabe
8/28
Dienstbeschreibungsinstanz
Dienstontologie
xyz abc
Dienst
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)
Schritt 2: Instanziiere eine konkrete Dienstbeschreibung aus der entstandenen Schablone.
9/28
Dienstsuche
Grundproblem ähnlich wie beim Routen, aber auf logischer Ebene
Lösungsansatz: Logische Gruppierung von ähnlichen Diensten
Dienstringe Dienstcluster
10/28
Dienstringe
Ein ausgezeichneter Knoten dient als Zugangspunkt zum Ring (SAP)
Übungsblatt zu SQL
Offizielle Folien zu SQLBeispiele zu GROUP_BY
SQL
Gruppiere Geräte, die ähnliche Dienste anbieten, zu einem Ring Ähnlichkeit kann anhand der Dienstbeschreibung ermittelt werden
Übungsblatt zu SQL
Beispiele zu GROUP_BY
Offizielle Folien zu SQL
11/28
Hierarchie von Dienstringen
SQL
Normalisierung
Rel. Modell
relationale Algebra
Papier zur Projektion
Übungsblatt zu SQL?
Übungsblatt zu SQL
12/28
Multi-Layer Clusters
Grundidee: Clustere Geräte, die logisch und physikalisch
benachbart sind Gruppiere Cluster zu Clustern höherer Ordnung
13/28
Semantische Nähe
database
object oriented model
relational model
isSubTopicOf
rel. algebra
SQL OQL
isSubTopicOf
isDescribedBy
Zwei Dienste/Cluster sind semantisch ähnlich, gdw. sie zum selben Term in der Ontologie gehören
14/28
Physikalische Nähe
Gerät a Nachbar_von Gerät b gdw. b in a's Funkreichweite ist
a
b
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 B
m1m2
15/28
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)
select.doc
sql1.ppt
sql3.ppt
projection.pdf
selection.pdf
division.doc
relAlgebra1.ppt
sql2.ppt
insert.doc
update.doc
16/28
Clustering (2)
Schritt iBilde 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
SQL
SQL
Rel. Algebra
Relational Model
17/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 kann2. sende Nachricht an erreichbares
Gerät Clusterung von GerätenGrundidee:Schichtenarchitektur
Benutzersicht
Systemsicht
Lücke
18/28
Beispiel Ontologie
?
findService( )
19/28
BeispielOntologie
findService( )
findService( )
20/28
BeispielOntologie
Mögliche Verbreitungsver-fahren:
• Fluten
• zyklisch
• direkt
findService( )
21/28
BeispielOntologie
sendMessage( )
findService( )
22/28
BeispielOntologie
sendMessage( )
findService( )
23/28
BeispielOntologie
findService( )
sendMessage( )
findService( )
24/28
BeispielOntologie
sendMessage( )
sendMessage( )
findService( )
findService( )
findService( )
25/28
BeispielOntologie
sendMessage( )
findService( )
26/28
BeispielOntologie
27/28
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
28/28
Vielen Dank!
Nähere Informationen gibt es auf unserer Projektseite:http://www.ipd.uni-karlsruhe.de/DIANE
Gibt es noch Fragen?
Vielen Dank für Ihre Aufmerksamkeit!
Top Related