© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Spontane Vernetzung Patrick Brunner.

Slides:



Advertisements
Ähnliche Präsentationen
Aufbau eines Netzwerkes
Advertisements

Be.as WEB Technologie
Netzwerke in der Informationstechnik
Sichere Anbindung kleiner Netze ans Internet
Studienarbeit Entwurf und Implementierung eines UPnP-Browsers
Attribute Protocol.
Firewalls.
ixJED ixact GmbH Dr. Karsten Wendt
Aktuelle Java-Trends, Norbert Schuler1 Jini Java im Netz.
© 2003 Guido Badertscher Spontane Vernetzung - UPnP 9. Jänner 2004 Spontane Vernetzung Guido Badertscher.
© 2003 Marc Dörflinger Spontane Vernetzung 9. Jänner 2004 Spontane Vernetzung Patrick Brunner, Guido Badertscher, Marc Dörflinger.
Lightweight Directory Access Protocol
Agenda 1. Wie funktionieren Netzwerke ? 2. Agenda 3.
Die Firewall Was versteht man unter dem Begriff „Firewall“?
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
Universität zu Köln IT – Zertifikat der Philosophischen Fakultät / Blockseminar Allgemeine Technologien II mit Patrick Sahle M. A. Online-Datenbanken am.
Umstellung von Lucane Groupware auf sichere Gruppenkommunikation mittels TGDH Von: Markus Diett Betreut durch: Mark Manulis Lehrstuhl für Netz- und Datensicherheit.
ATM LAN Emulation Prof. Dr. W. Riggert. 2 Inhalt Das Tutorial ist in drei Abschnitte gegliedert. Abschnitt 1 behandelt die Frage, warum LAN Emulation.
JAVA RMI.
GAP Generic Access Profile. Physical Layer Link Layer Host Controller Interface L2CAP Attribute Protocol Attribute Profile PUIDRemote ControlProximityBatteryThermostatHeart.
Treffen mit Siemens Siemens: Werner Ahrens Volkmar Morisse Projektgruppe: Ludger Lecke Christian Platta Florian Pepping Themen:
Remote Methode Invocation (RMI)
Einführung in die Technik des Internets
Command Pattern Karola Schäuble,
Wizards & Builders GmbH Schulung Visual SourceSafe für Visual FoxPro Norbert Abb W&B.
Systementwicklungsprojekt:
1 Dienstbeschreibung mit DAML Ein graphischer Editor für DAML - Ting Zheng Betreuer: Michael Klein, Philipp Obreiter.
OGSI und Jini im Focus Sebastian Albrecht. 2 Gliederung OGSI Einordnung neue Komponenten Zukunft Jini Entstehung Architektur Lookup Service Bewertung.
Video Streaming Simon Valentini. 2 Agenda Motivation Verwendete Techniken Applikation Protokoll Integration in andere Projekte Probleme.
Chat System – Gruppe B Tim Braun, Andre Ester, Florian Müller und
Discovery von LBS Seminararbeit von Florian Pepping im Rahmen der Projektgruppe „Location Based Services for Wireless Devices“ Kommentare zur Startfolie:
Netzwerktechnik Wiederholung Mag. Sabine Tullits.
Steuerung externer Komponenten über ein USB-Interface.
Die .NET Common Language Runtime
Learning By Doing TCP/IP Netzwerke mit TCP/IP Das Internet verwendet weitgehend das rund 30-jährige TCP/IP-Protokoll (TCP: Transmission Control Protocol,
Rechnerkommunikation I
Vorteile eines lokalen Netzwerks?
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
PSI - Überblick und Szenarien
Service Location Protocol Ein Service Discovery Protokoll Patric Zbinden 20. März 2003.
Grundlagen: Client-Server-Modell
Netzwerkprogrammierung
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 2013 Kapitel 5 Folie 2 Windows Communication Foundation (WCF) s.a.
Beschreiben Sie das Szenario wenn ein ORB einen Server aktiviert und eine Objektimplementation aufruft. Activate Server impl_is_ready Activate Object (GetID.
Die Architektur von Jini Präsentation von Thomas Heinis & Michea Wankerl Seminar Information & Kommunikation WS 2000/01.
Warum gibt es Netzwerke?
Netzwerke.
Netzwerke.
Quellen: Internet INTRANET Ausarbeitung von Sven Strasser und Sascha Aufderheide im Modul Netzwerktechnik, Klasse INBS Mai 2003.
Instrumentierte Umgebungen Kickoff: Bluetooth Identification Alexander Kahl – Stefan Seitz – Kay Weckemann 1 Instrumentierte Umgebungen Bluetooth.
Hauptseminar 2001 „Parallele Programmierung in Java“ - JPVM- Java Parallel Virtual Machine Referent: Sebastian Steininger.
Client-Server-Modell
Voyager Eigenschaften/Vorzüge Universalität: –ROI-Modelle: CORBA, RMI, DCOM –verschiedene Namens-, Verzeichnisdienste Nachrichtentypen: synchron, oneway,
1 Karim El Jed TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund
DNS DNS Das Domain Name System ist der Dienst im Internet, der DNS Namen in entsprechenden IP Adressen umsetzt und umgekehrt auch IPAdressen Namen zuordnen.
2. April 2015Solveigh Matthies BioRem als FESA3-Klasse BioRem-Ansteuerung mit einer FESA3- Klasse Sinn&Zweck Funktionialit ä t Implementierung.
Universal Plug and Play
Wie funktioniert das Internet?
DHCP DHCP Das Dynamic Host Configuration Protocol ermöglicht die dynamischen Zuweisung der IP Netzwerkeinstellungen an einen Host, der sich in ein Netzwerk.
SNMP – Simple Network Management Protocol
Kirsten Kropmanns Allgemeine Technologien II 9. März 2009
WILLKOMMEN Daniel Matheis Betreuer: Birgitta König-Ries Michael Klein "Dezentrale Realisierung von Gruppendiensten in Peer-to-Peer-Umgebungen" Studienarbeiter:
Das World Wide Web Stephan Becker TIT05BGR SS06. Das World Wide Web Übersicht Hypertext & Hypermedia HTML Dokumentenidentifikation Dokumententransport.
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
© 2003 Marc Dörflinger Spontane Vernetzung - Salutation 9. Jänner 2004 Spontane Vernetzung Salutation Marc Dörflinger.
Dieser Vortrag wird gesponsort von:
Cloud Entwicklung: Web Services
Ich brauche eine Web-Seite vom Server im Internet
Tutorstunde 10.
 Präsentation transkript:

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Spontane Vernetzung Patrick Brunner

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Was ist Jini? l 1998 Projekt namens Jini wird unter Bill Joy und Jim Waldo vorangetrieben. (Jini = Java Intelligent Network Infrastructure) l Ziel: Möglichkeit zu bieten Services in Plug and Play Manier zu verteilen l Spezifikation von Middleware Komponenten l beinhaltet APIs zum Bau von Clients oder Services l In Java geschriebene Implementierung

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Dienstparadigma l Alles ist Dienst (Hardware, Software) l Dienste werden über Interfaces definiert stellen darüber ihre Funktionalität zur Verfügung. l Dienst ist durch seinen Objekttyp und seine Attribute charakterisiert. l Dienste und Dienstnutzer finden sich spontan zu einer Föderation zusammen.

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Jini Föderation

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Komponenten in Jini l Service: z.B. Toaster, Partnervermittlung, Drucker l Client: Applikation, die einen Service verwenden möchte l Lookup Service: Vermittelt dem Client einen Service l Netzwerk: Implementierung TCP/IP, nach Spezifikation aber nicht zwingend

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Java Bezug von Jini l JVM als Bytecode Interpreter l RMI für Kommunikation zwischen den Komponenten l Somit gewisse Homogenität in einer heterogenen Umgebung l Sicherheit von Java überträgt sich auf Jini

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Discovery (von Client oder Service) 1/3 l Ziel: Client oder Service (Hosts) sollen mit Lookup Service kommunizieren können. l Lookup Service hört auf TCP- und UDP-Port 4160 l Somit 2 Möglichkeiten Lookup Service zu finden: 1.Unicast (Host kennt Adresse des Lookup Services bereits) 2.Multicast Requests (Multicastgruppe ; zumeist nur innerhalb des LANs möglich, da Multicast Pakete meistens nicht geroutet werden) ähnlich DHCP

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Discovery (von Client oder Service) 2/3 l Lookup Service (LUS) sendet Stellvertreter-Objekt (LUS Proxy) an Host (Serialisiertes Objekt via TCP Verbindung) l LUS Proxy läuft nun in JVM des Host (Code Shipping) l Host kann nun über LUS Proxy mit LUS kommunizieren

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Discovery (von Client oder Service) 3/3

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Join: Registrierung eines Services 1/2 l Ziel: Funktionalität des LUS Proxys nutzten um eigen Proxy an LUS zu senden. l Service muss einen LUS Proxy besitzen (Discovery) l zudem können noch Attribute gesendet werden (Genaue Service Beschreibung) l LUS Proxy gibt Lease an Service (Gültigkeitsdauer der Registrierung, Service schlägt Lease Zeit vor, gegebenenfalls kann LUS Lease Dauer heruntersetzen) l LUS verwaltet Service Proxy l Service kann nun in der Jini Föderation gefunden werden

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Join: Registrierung eines Services 2/2

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Lookup: Suchen eines Dienstes 1/2 l Client muss LUS Proxy besitzen (Discovery) l Client formuliert Query (erstellt ServiceTemplate-Objekt, welches dem LUS Proxy übergeben wird) public ServiceTemplate(ServiceID serviceID, java.lang.Class[] serviceTypes, Entry[] attrSetTemplates)) l Client bekommt ServiceMatches-Objekt vom LUS zurück, welches die Treffer-Proxies enthält l Client man jetzt Dienst nun lokal auswählen

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Lookup: Suchen eines Dienstes 2/2

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Proxies l Proxies sind normalerweise Stellvertreter eines Services l Alle Daten werden an den Service weitergereicht (z.B. RMI) l Sinnvoll bei kleinen Datenmengen oder schwachen Clients l Protokoll für Kommunikation zwischen Proxy und Service kann beliebig sein (auch zwischen LUS und LUS Proxy)

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Smart Proxies l Erbringen eine Teil oder den ganzen Service beim Client (z.B. Videokompression) l Darum muss Rechenleistung des Clients zur Verfügung stehen l Service hat nur noch die Aufgabe am Leben zu bleiben und Leases zu erneuern l Entscheidung, ob Service mittels smarten oder normalen Proxies gebaut wird liegt beim Entwickler, nicht beim Client

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Proxy-Klassen l Serialisierte Proxy-Objekte werden bei der Suche an den Client geschickt l Problem: Client erhält Zustand des Objekts, aber nicht dessen Klasse. l Lösung: Klasse wird z.B. auf einem HTTP-Server zur Verfügung gestellt. (Dem Client wird URI der Klasse mittels speziellem Property-Feld mitgeteilt.)

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Jini Implementierungen 1/2 1 Service pro JVM mehrer Services pro JVM

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Jini Implementierungen 2/2 Jini Service als Proxy für Legacy Services

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Java Spaces (ein Jini Service) 1/4

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Java Spaces (ein Jini Service) 2/4 l JavaSpaces stellt eine Möglichkeit zur verteilten Speicherung von Java- Objekten l Operationen: áwrite(..) Objekt in den Raum schreiben átake(..) Objekt aus dem Raum entfernen átakeIfExists(..) blockiert nicht, falls das gesuchte Objekt nicht vorhanden ist áread(..) áreadIfExists, blockiert nicht, falls das gesuchte Objekt nicht vorhanden ist ánotify(Entry template,..), benachrichtigt ein Java-Objekt, falls der Eintrag, der dem Muster von template entspricht, in den JavaSpace geschrieben wurde (Pattern-Matching).

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Java Spaces (ein Jini Service) 3/4 l Ein Tupel entspricht einem Java-Objekt, welches zwei Marker-Interfaces implementiert: áSerializable, um die RMI-Kommunikation im Netzwerk zu unterstützen áEntry, kennzeichnet das Java-Objekt als Tupel

© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Java Spaces (ein Jini Service) 4/4 l US Army: Projekt zur Kommunikation von Schlachtfeld zu Tactical Operation Center l Klinische Informationssysteme in Spitälern (Vernetzung medizinischer Geräte) l Vernetzung von kleinen Wetterstationen