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

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

Apr 06, 2016

Download

Documents

Emma Kirchner
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • Mobile MiddlewareContext Awareness vs. Transparenz Vortrag im SeminarInformationsverwaltung in NetzenUli Raffel19.06.2003

  • GliederungMobile SystemeAnwendungen fr Mobile SystemeZum Vergleich: Middleware f. Verteilte SystemeBei Middleware f. Mobile Systeme: Entscheidung: Transparenz vs. Context Awareness Context Awareness bei Mobilen Systemen:Anwendungsspezifische Strategien zum Datenabgleich replizierter Daten (data reconciliation)Beispiel: verteilter EinkaufswagenMetadatenReflectionBeispiel: Route Aggegation

  • Mobile GerteLaptopHandyPDAChips (ohne GUI)...

  • Mobile Ad-hoc-NetzeMobile Gerte...haben begrenzte Reichweitebilden Ad-Hoc-Netzesind hochgradig mobilbetreten und verlassen das Netz hufighaben knappe Ressourcen: Batterie, CPU, Speicher, BandbreiteJeder Knoten ist zugleich Endpunkt und RouterKeine Infrastruktur, die Routing untersttzi.a. Broadcast ntig

    => hnlichkeiten zu Peer-to-Peer-Netzen

  • Anwendungen fr Mobile SystemeVerkehrswarnsystemSpieleMilitrTauschbrsenTierbeobachtungKatastrophenschutzTouristeninformationssystem:mobile Teilnehmer in begrenzter Umgebung (Stadt, Museum, Messe)Informationsanfrage zu Gegenstnden (Gebude, etc.) bei Nherung Direkte oder indirekte Antwort(en) von Teilnehmer(n) im rumlichen Umfeld

  • Middleware fr Mobile Systeme

    soll helfen, mobile Anwendungen zu entwickelnmuss leichtgewichtig seinsoll asynchrone Kommunikation untersttzensoll technische Aspekte fr die Anwendung transparent machen (?)

  • Middleware fr Verteilte SystemeZum Vergleich:

    Middleware fr Verteilte Systemesoll helfen, verteilte Anwendungen zu entwickelnversteckt technische Aspekte vor der AnwendungHeterogenittFehlertoleranzRessourcenverteilungbietet dem Anwendungsentwickler das Bild eines groen zentralen Systems (-> Verteilungstransparenz)

  • Verteilungstransparenz fr Mobile Systeme (?)Middleware wre dann schwergewichtigMiddleware msste stabile Verbindung voraussetzenMiddleware msste dann Verteilungsentscheidungen fr die Anwendung treffenhat aber keine applikationsspezifischen Informationen, wann wo welche Daten bentigt werdenAnwendung knnte aber entscheidende Informationen haben

    Lsung: Context Awareness

  • Context Awareness

    Es gibt keine sinnvolle statische Strategie, die eine Anwendung der Middleware mitteilen kannAnwendung muss also mit Middleware kommunizierenz.B. kann die Anwendung besser wissen, auf welchem Host Daten zu replizieren sind, damit sie nicht verloren gehenAnwendung kann wissen, wie mit Inkonsistenzen bei replizierten Daten umzugehen ist (siehe nachfolgendes Beispiel)

  • Verteilter Einkaufswagen

    3-Personen-Familie mit 1 PC und 3 PDAs PC enthlt Produktpalette eines Shops und einen Einkaufswagen (Datenaustausch bers Internet)Daten werden auf PDAs repliziertBei Verbindung PC PDA oder PDA PDA werden Daten abgeglichen (data reconciliation)

  • Verteilter Einkaufswagen (2)

    Daten auf PDA A Daten auf PDA C

    Daten auf PDA A nach lokalem Update des Einkaufswagens

  • Verteilter Einkaufswagen (3)Bspl. 1:Auf PC wird durchs Internet Preis fr Kse aktualisiert (nur noch 3,25)PDA B bernimmt neuen PreisPDA A hat noch alten Preis (3,50)PDA A und PDA B begegnen sichSinnvolles Verhalten beim Abgleich: Preis 3,25

    Bspl. 2:Auf PDA A wird 1 Milch in den Einkaufswagen gelegtAuf PDA C werden 2 Milch in den Einkaufswagen gelegtPDA A und PDA C begegnen sichSinnvolles Verhalten beim Abgleich: 3 Milch im Einkaufswagen

    => Abgleich von Daten vom Kontext abhngig

  • Abgleich von replizierten Daten... am Beispiel XMIDDLE

    bei Begegnung zweier Gerte:gemeinsam genutzte Daten werden ermitteltletzte gemeinsame Version dieser Daten wird ermitteltnderungen seit dieser Version werden ermitteltnderungen, die keinen Konflikt erzeugen, werden jeweils bernommenbei nderungen, die Konflikt erzeugen (nderung der gleichen Elemente/Attribute) wird Konflikt aufgelst

  • Abgleich von replizierten Daten (2)Konfliktauflsung

    Anwendung kann Auflsungsstrategien vorgeben: add, last, random, first, greatest beide Anwendungen haben gleiche Strategie vorgegeben: sie wird verwendetbeide Anwendungen haben unterschiedliche Strategien vorgegeben: dominante Strategie wird verwendetAnwendungen haben keine Strategie vorgegeben: Default-Strategie: last

  • MetadatenAnwendung gibt der Middleware Informationen, wie sie sich zu verhalten hatPassive InformationMiddleware soll auf Vernderungen im Ausfhrungskontext reagierenz.B. Verbindung trennen bei niedrigem Batteriestand

    Aktive InformationMiddleware soll fr jeden Dienst, den sie erbringt, bestimmte Policy verfolgen.z.B. bei viel verfgbarem Speicherplatz eine lokale Kopie von Daten anlegen, bei wenig Speicherplatz und guter Verbindung nicht.

  • ReflectionReflection erlaubt es einem Programm, auf seine eigene Interpretation zuzugreifen, ber sie nachzudenken und sie zu verndern.

    Reflection hier: Verbreitung von Umweltinformationen an Applikationsschichterreichbare Hosts/DiensteBatteriestandSpeicherplatzCPU-AuslastungOrtRelativer Ort zu Diensterbringern (z.B. Drucker)Bandbreite

  • Route Aggregation

    Netzwerk wird in Gruppen organisiert Gruppen werden von Aggregation Point (AP) verwaltet Anfragen gehen an AP AP kann cachen

  • Route Aggregation (2)

    Voraussetzung: Jeder Peer kann jeden (ber mehrere Hops) erreichen (Multihop-Konnektivitt) bei mehr als N Nachbarn: Wahl eines AP Knoten neu im Netz: Auswahl eines geeigneten AP -> hier kann Reflection verwendet werden

  • Route Aggregation (3)

    Anfrage an AP, AP liefert Adresse des Zielknotens Content direkt vom Zielknoten regulre Abmeldung an AP Ausschluss bei Ausfall durch Heartbeat-NachrichtenRcktritt eines AP bei zu vielen Knoten(-> Group Splitting) zu wenigen Knoten(-> Group Merging) persnlichen Grnden(z.B. Batterie knapp, CPU-berlastung)

  • Route Aggregation - KritikMultihop-Konnektivitt unrealistischRcktritt des AP bei Group Splitting unintuitivproblematisch bei homogenen Netzenbei hoher Dynamik/Mobilitt ungeeignetAP selbst sollte nicht mobil sein

  • ZusammenfassungMiddleware fr Mobile SystemeEntscheidung: Transparenz vs. Context AwarenessBei Verteilten Systemen: TransparenzBei Mobilen Systemen: Context AwarenessContext Awareness:Anwendungsspezifische Strategien zum Datenabgleich replizierter Daten (data reconciliation)Beispiel: verteilter EinkaufswagenMetadatenReflectionBeispiel: Route Aggegation