Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Uli Raffel Mobile Middleware 1/22 Mobile Middleware Context Awareness vs. Transparenz Vortrag im Seminar „Informationsverwaltung in Netzen“ Uli Raffel.

Ähnliche Präsentationen


Präsentation zum Thema: "Uli Raffel Mobile Middleware 1/22 Mobile Middleware Context Awareness vs. Transparenz Vortrag im Seminar „Informationsverwaltung in Netzen“ Uli Raffel."—  Präsentation transkript:

1 Uli Raffel Mobile Middleware 1/22 Mobile Middleware Context Awareness vs. Transparenz Vortrag im Seminar „Informationsverwaltung in Netzen“ Uli Raffel

2 Uli Raffel Mobile Middleware 2/22 Gliederung  Mobile Systeme  Anwendungen für Mobile Systeme  Zum Vergleich: Middleware f. Verteilte Systeme  Bei Middleware f. Mobile Systeme: Entscheidung: Transparenz vs. Context Awareness  Context Awareness bei Mobilen Systemen:  Anwendungsspezifische Strategien zum Datenabgleich replizierter Daten (data reconciliation) Beispiel: verteilter Einkaufswagen  Metadaten  Reflection Beispiel: Route Aggegation

3 Uli Raffel Mobile Middleware 3/22 Mobile Geräte  Laptop  Handy  PDA  Chips (ohne GUI) ...

4 Uli Raffel Mobile Middleware 4/22 Mobile Ad-hoc-Netze Mobile Geräte...  haben begrenzte Reichweite  bilden Ad-Hoc-Netze  sind hochgradig mobil  betreten und verlassen das Netz häufig  haben knappe Ressourcen: Batterie, CPU, Speicher, Bandbreite  Jeder Knoten ist zugleich Endpunkt und Router  Keine Infrastruktur, die Routing unterstütz  i.a. Broadcast nötig => Ähnlichkeiten zu Peer-to-Peer-Netzen

5 Uli Raffel Mobile Middleware 5/22 Anwendungen für Mobile Systeme  Verkehrswarnsystem  Spiele  Militär  Tauschbörsen  Tierbeobachtung  Katastrophenschutz  Touristeninformationssystem:  mobile Teilnehmer in begrenzter Umgebung (Stadt, Museum, Messe)  Informationsanfrage zu Gegenständen (Gebäude, etc.) bei Näherung  Direkte oder indirekte Antwort(en) von Teilnehmer(n) im räumlichen Umfeld

6 Uli Raffel Mobile Middleware 6/22

7 Uli Raffel Mobile Middleware 7/22 Middleware für Mobile Systeme  soll helfen, mobile Anwendungen zu entwickeln  muss leichtgewichtig sein  soll asynchrone Kommunikation unterstützen  soll technische Aspekte für die Anwendung transparent machen (?)

8 Uli Raffel Mobile Middleware 8/22 Middleware für Verteilte Systeme Zum Vergleich: Middleware für Verteilte Systeme  soll helfen, verteilte Anwendungen zu entwickeln  versteckt technische Aspekte vor der Anwendung Heterogenität Fehlertoleranz Ressourcenverteilung  bietet dem Anwendungsentwickler das Bild eines großen zentralen Systems (-> Verteilungstransparenz)

9 Uli Raffel Mobile Middleware 9/22 Verteilungstransparenz für Mobile Systeme (?)  Middleware wäre dann schwergewichtig  Middleware müsste stabile Verbindung voraussetzen  Middleware müsste dann Verteilungsentscheidungen für die Anwendung treffen  hat aber keine applikationsspezifischen Informationen, wann wo welche Daten benötigt werden  Anwendung könnte aber entscheidende Informationen haben  Lösung: Context Awareness

10 Uli Raffel Mobile Middleware 10/22 Context Awareness  Es gibt keine sinnvolle statische Strategie, die eine Anwendung der Middleware mitteilen kann  Anwendung muss also mit Middleware kommunizieren  z.B. kann die Anwendung besser wissen, auf welchem Host Daten zu replizieren sind, damit sie nicht verloren gehen  Anwendung kann wissen, wie mit Inkonsistenzen bei replizierten Daten umzugehen ist (siehe nachfolgendes Beispiel)

11 Uli Raffel Mobile Middleware 11/22 Verteilter Einkaufswagen  3-Personen-Familie mit 1 PC und 3 PDAs  PC enthält Produktpalette eines Shops und einen Einkaufswagen (Datenaustausch übers Internet)  Daten werden auf PDAs repliziert  Bei Verbindung PC PDA oder PDA PDA werden Daten abgeglichen (data reconciliation)

12 Uli Raffel Mobile Middleware 12/22 Verteilter Einkaufswagen (2) Daten auf PDA A Daten auf PDA C Daten auf PDA A nach lokalem Update des Einkaufswagens

13 Uli Raffel Mobile Middleware 13/22 Verteilter Einkaufswagen (3)  Bspl. 1:  Auf PC wird durchs Internet Preis für Käse aktualisiert (nur noch 3,25)  PDA B übernimmt neuen Preis  PDA A hat noch alten Preis (3,50)  PDA A und PDA B begegnen sich  Sinnvolles Verhalten beim Abgleich: Preis 3,25  Bspl. 2:  Auf PDA A wird 1 Milch in den Einkaufswagen gelegt  Auf PDA C werden 2 Milch in den Einkaufswagen gelegt  PDA A und PDA C begegnen sich  Sinnvolles Verhalten beim Abgleich: 3 Milch im Einkaufswagen  => Abgleich von Daten vom Kontext abhängig

14 Uli Raffel Mobile Middleware 14/22 Abgleich von replizierten Daten... am Beispiel XMIDDLE  bei Begegnung zweier Geräte:  gemeinsam genutzte Daten werden ermittelt  letzte gemeinsame Version dieser Daten wird ermittelt  Änderungen seit dieser Version werden ermittelt  Änderungen, die keinen Konflikt erzeugen, werden jeweils übernommen  bei Änderungen, die Konflikt erzeugen (Änderung der gleichen Elemente/Attribute) wird Konflikt aufgelöst

15 Uli Raffel Mobile Middleware 15/22 Abgleich von replizierten Daten (2) Konfliktauflösung  Anwendung kann Auflösungsstrategien vorgeben: add, last, random, first, greatest  beide Anwendungen haben gleiche Strategie vorgegeben: sie wird verwendet  beide Anwendungen haben unterschiedliche Strategien vorgegeben: dominante Strategie wird verwendet  Anwendungen haben keine Strategie vorgegeben: Default-Strategie: last

16 Uli Raffel Mobile Middleware 16/22 Metadaten Anwendung gibt der Middleware Informationen, wie sie sich zu verhalten hat  Passive Information  Middleware soll auf Veränderungen im Ausführungskontext reagieren  z.B. Verbindung trennen bei niedrigem Batteriestand  Aktive Information  Middleware soll für jeden Dienst, den sie erbringt, bestimmte Policy verfolgen.  z.B. bei viel verfügbarem Speicherplatz eine lokale Kopie von Daten anlegen, bei wenig Speicherplatz und guter Verbindung nicht.

17 Uli Raffel Mobile Middleware 17/22 Reflection Reflection erlaubt es einem Programm, auf seine eigene Interpretation zuzugreifen, über sie nachzudenken und sie zu verändern. Reflection hier: Verbreitung von Umweltinformationen an Applikationsschicht  erreichbare Hosts/Dienste  Batteriestand  Speicherplatz  CPU-Auslastung  Ort  Relativer Ort zu Diensterbringern (z.B. Drucker)  Bandbreite

18 Uli Raffel Mobile Middleware 18/22 Route Aggregation  Netzwerk wird in Gruppen organisiert  Gruppen werden von Aggregation Point (AP) verwaltet  Anfragen gehen an AP  AP kann cachen

19 Uli Raffel Mobile Middleware 19/22 Route Aggregation (2)  Voraussetzung: Jeder Peer kann jeden (über mehrere Hops) erreichen (Multihop-Konnektivität)  bei mehr als N Nachbarn: Wahl eines AP  Knoten neu im Netz: Auswahl eines geeigneten AP -> hier kann Reflection verwendet werden

20 Uli Raffel Mobile Middleware 20/22 Route Aggregation (3)  Anfrage an AP, AP liefert Adresse des Zielknotens  Content direkt vom Zielknoten  reguläre Abmeldung an AP  Ausschluss bei Ausfall durch Heartbeat-Nachrichten Rücktritt eines AP bei  zu vielen Knoten (-> Group Splitting)  zu wenigen Knoten (-> Group Merging)  „persönlichen Gründen“ (z.B. Batterie knapp, CPU-Überlastung)

21 Uli Raffel Mobile Middleware 21/22 Route Aggregation - Kritik  Multihop-Konnektivität unrealistisch  Rücktritt des AP bei Group Splitting unintuitiv  problematisch bei homogenen Netzen  bei hoher Dynamik/Mobilität ungeeignet  AP selbst sollte nicht mobil sein

22 Uli Raffel Mobile Middleware 22/22 Zusammenfassung  Middleware für Mobile Systeme  Entscheidung: Transparenz vs. Context Awareness  Bei Verteilten Systemen: Transparenz  Bei Mobilen Systemen: Context Awareness  Context Awareness:  Anwendungsspezifische Strategien zum Datenabgleich replizierter Daten (data reconciliation) Beispiel: verteilter Einkaufswagen  Metadaten  Reflection Beispiel: Route Aggegation


Herunterladen ppt "Uli Raffel Mobile Middleware 1/22 Mobile Middleware Context Awareness vs. Transparenz Vortrag im Seminar „Informationsverwaltung in Netzen“ Uli Raffel."

Ähnliche Präsentationen


Google-Anzeigen