Java-basiertes Konzept verspricht einfache Verwaltung

Suns Jini soll die Netze der Anwender verzaubern

19.11.1998
MÜNCHEN (ave) - "Networking jederzeit und überall" - so lautet die Parole von Sun Microsystems. In klanglicher Anspielung auf den Flaschengeist Dschinn aus 1001 Nacht hat das Unternehmen dazu seine "Java Intelligent Network Infrastrukture" (Jini) entwickelt. Ziel ist, das Zusammenspiel vernetzter Geräte zu vereinfachen. Doch es wird wohl noch einige Zeit dauern, bis Jini in den Netzen wirkt.

Jeder kennt die Probleme, denen man auf Geschäftsreisen begegnet: Um auf Angebote im Internet oder Ressourcen in einem anderen LAN zugreifen zu können, muß der eigene Rechner umständlich neu konfiguriert und unter Umständen erst einmal wieder gestartet werden. Mit Suns Jini sollen solche Prozeduren der Vergangenheit angehören. Geht es nach dem Willen der Company, läßt sich beispielsweise von einem Laptop, der an ein Hotelnetz angeschlossen wird, ohne weitere Änderungen ein vorhandener Drucker sofort ansprechen. Zugriff auf Netzwerkservices für jeden jederzeit, lautet die Devise.

Diese Vision ist verlockend. Kein Wunder also, daß auch hierzulande die Schar der Jini-Anhänger wächst, obwohl das Konzept erst diesen Sommer vorgestellt wurde (siehe CW 30/98, Seite 1). Ulrich Kriegel gehört zu den Befürwortern der Sun-Lösung. Der Projektleiter am Fraunhofer-Institut für Software- und Systemtechnik in Berlin hält Jini für "die beste Idee seit der Erfindung des Schnittbrots".

Doch wie funktioniert Jini? Alle für einen Netzzugriff in Frage kommenden Java-tauglichen Geräte - die Bandbreite reicht hier von Smartcards über Personal Digital Assistants und PCs bis zu Automaten oder Haushaltsgeräten - werden mit einem nur 48 KB großen, in Java geschriebenen Programm ausgestattet. Bei Anschluß an ein Jini-Netz meldet sich diese Software im Zuge eines von Sun als Discovery/Join bezeichneten Vorgangs automatisch bei einer zentralen Instanz (dem Lookup) an. Diese residiert auf einem speziellen Server und verwaltet sämtliche Ressourcen eines Netzes, also Rechner, berechtigte Personen, Peripheriegeräte sowie von diesen bereitgestellte Services. Bei den Diensten kann es sich um Funktionen, beispielsweise Drucken, oder Fähigkeiten wie Speicher- oder Rechenkapazität handeln. Die Gesamtheit aller Netzteilnehmer nennt Sun eine Föderation (Federation).

Nach dem Beitritt in eine Föderation kann sich jeder Netz-Client über das Lookup informieren, wo welche Dienste verfügbar sind. Die dazu notwendige Kommunikation erfolgt über eine Gruppe von Java-Interfaces, zusammengefaßt im sogenannten Service Protocol. Jedes Mitglied einer Föderation verfügt über eine Access Control List (ACL), die festhält, wer seine verschiedenen Dienste nutzen darf. "Ein Jini-Dienst kann selbst entscheiden, ob er ausschließlich einzeln oder parallel genutzt wird", führt Kriegel aus.

Will beispielsweise ein Druckerdienst mehrere Netzteilnehmer bedienen, muß er selbst Warteschlangen bilden. Das ist eine Frage der Implementierung und stellt eigentlich kein Problem dar. Wählt eine anfragende Komponente (Principal) einen Service, so mietet sie ihn (Lease) für eine bestimmte Zeit. Nach Ablauf dieser Frist muß die Lease erneuert werden, damit der Dienst weiter genutzt werden kann. Auf diese Weise soll verhindert werden, daß Dienste nach Benutzung unnötig blockiert werden - sie stehen dann anderen Nutzern wieder zur Verfügung. All diese Vorgänge geschehen für den Anwender völlig transparent. Hat er ein Gerät erst einmal mit dem Netz verbunden, sieht er sofort, welche Dienste ihm zur Verfügung stehen, und kann sie nutzen.

Kriegel vergleicht das Jini-Konzept mit einem Basar, an dessen Eingang aber zusätzlich eine Pinnwand (Lookup) hängt. Anstelle des Verkaufs von Waren werden hier Dienstleistungen erbracht.

Jeder, der den Basar betritt, bekommt einen Stand zugewiesen und hängt seine "Visitenkarte" an die Pinwand. Eine, wenn er seinen Dienst nur einer Person zu einer Zeit anbieten möchte, oder eben entsprechend mehrere. Wer einen Service benötigt, nimmt sich von dort die Visitenkarte weg, geht zu einem Händler und handelt mit diesem aus, wann und wie lange er einen bestimmten Dienst nutzen will. "Die zugrundeliegende Infrastruktur liefert das Javaspaces-Verfahren: Es stellt quasi die Buden für die Händler zur Verfügung", ergänzt Kriegel.

Das Bild des Basars ist nicht völlig aus der Luft gegriffen. Dies wird unter anderem daran deutlich, daß Sun eigenen Aussagen zufolge an sogenannte "Jini-Marktplätze" denkt: Auf diesen virtuellen Märkten im Netzwerk (beispielsweise ein Unternehmensnetz oder das Internet) könnten Dienste dann für Geld angeboten werden. Denkbar wäre in diesem Zusammenhang auch, daß Softwarekomponenten je nach Bedarf geleast und per Micropayment online abgerechnet werden.

Die Darstellung der Funktionsweise von Jini verdeutlicht, daß in großen Jini-fizierten Netzen eine Unmenge von Informationen verwaltet werden muß. Kriegel erläutert, wie sich dieses Problem mit Hilfe von Verzeichnisdiensten lösen läßt: "Java besitzt mit dem Java Naming and Directory Interface (JNDI) eine Schnittstelle, die für beliebige Verzeichnisdienste implementiert werden kann. Denkbar ist dies für Lösungen auf Basis des Standards Lightweight Directory Access Protocol (LDAP) oder für die Novell Directory Services (NDS)."

Eine Verknüpfung von Jini und Novells Verzeichnis würde durchaus Sinn geben. Immerhin haben beide Hersteller dem Vernehmen nach gemeinsam an Suns neuem Netzkonzept gestrickt. Hinzu kommt, daß Bill Joy, einer der Jini-Väter bei Sun, seit Ende Juli dieses Jahres im Board of Directors der Netzwerker vertreten ist. Außerdem arbeitet Novell derzeit mit "Nettop" an einer Java-basierten Bedienoberfläche, die auf die Dienste der NDS zurückgreift und vollständig orts-, geräte- und plattformunabhängig sein soll. Laut einem Dokument auf Novells Web-Seiten ist es das Ziel, Anwendern damit universellen Zugriff auf persönliche, gemeinsame oder öffentliche Informationen über verschiedene Geräte, Kontexte und Orte hinweg zu geben. Nettop sei als Ergänzung zu dem Sun-Projekt konzipiert worden.

Trotz dieser Hinweise steht noch in den Sternen, ob Sun sich für eine Kooperation mit Novell entscheidet oder eine eher neutrale Lösung auf LDAP-Basis realisiert. Das ändert jedoch nichts an dem Erfolgspotential, das Suns Konzept zweifelsohne besitzt. "Was das Zusammenspiel verschiedener Hardwarekomponenten angeht, so bedeutet Jini einen großen Schritt nach vorne", betont Kriegel. "Überlegen Sie sich nur, welche Klimmzüge man machen muß, etwa um einen Personal Digital Assistant (PDA) an einen PC anzuhängen - wäre das Gerät Jini-fähig, würde dies überhaupt kein Problem darstellen."

Auch für professionelle Anwender sind die Aussichten verlockend. In erster Linie zeichnen sich durch den Einsatz von Jini Erleichterungen für Netzadministratoren ab. Kriegel erläutert: "Die Verwaltung von Bürosoftware und die Konfiguration von Geräten in Unternehmen ließe sich erheblich vereinfachen. Administratoren müßten beispielsweise nicht mehr kontrollieren, ob jeder Client die richtige Software installiert hat, wenn ein neuer Drucker in einer Abteilung eingerichtet wird - die Rechner holen sich die notwendigen Treiber selbst."

Kein Wunder also, daß Sun bereits eine Gruppe von etwa 40 Herstellern für Jini begeistern konnte. Neben den bereits erwähnten Novell-Netzwerkern gehören unter anderem auch Oki Electric Industry, Computer Associates, Toshiba, Seiko Epson und Federal Express mit zu der Gruppe, mit der zusammen Sun entweder im Dezember 1998 oder Januar 1999 erste Jini-fähige Produkte und Pläne für die weitere Zukunft des Konzepts vorstellen möchte.

Nicht mit von der Partie ist Rivale Microsoft. Nach Aussagen von Joe Herman, Group Product Manager Platform Architecture bei den Redmondern, gibt es keine Pläne, Jini in irgendwelchen Produkten zu unterstützen. "Das Konzept ist nicht so interessant", moniert der Manager, "ähnliche Ansätze hat es früher schon gegeben. Sun kann sich einfach nicht entschließen, ob es mit Java jetzt in den Markt für Betriebssysteme will oder nicht." Microsofts ablehnende Haltung verwundert kaum - sie rührt nicht zuletzt daher, daß das Unternehmen unter dem Namen "Millennium" an einem ähnlichen Konzept arbeitet (siehe Kasten "Jini und die Konkurrenz").

Dem Sperrfeuer aus Redmond zum Trotz gibt Sun sich zuversichtlich, daß erste kommerzielle Jini-Lösungen bereits Ende 1999 verfügbar sein werden - deutlichere Auswirkungen erhofft sich das Unternehmen nach etwa zwei Jahren. Analysten bewerten dies skeptischer. Tim Sloane, Director Internet Research bei der Aberdeen Group, sieht in Microsofts starker Stellung im Networking-Markt einen nicht zu unterschätzenden Hemmschuh für das Konzept. Da Microsoft durch Jini eigene Marktanteile verlieren könnte, werde die Gates-Company Jini blocken, wo es nur möglich sei. Sloane geht daher davon aus, daß über 60 Prozent der Marktteilnehmer in absehbarer Zeit nicht auf das Sun-Konzept umschwenken werden. Außerdem sieht der Analyst noch immer Probleme in der Entwicklung eines Java-Standards: "Bislang ist Java nicht ausgereift, die Entwickler haben Funktionen wie das Drucken noch nicht unter Kontrolle. Bis zur Klärung solcher Fragen hält sich das Bedürfnis nach einem Konzept wie Jini in Grenzen..

Jini und die Konkurrenz

Sun ist nicht der einzige Hersteller, der die Kommunikation zwischen vernetzten Geräten vereinfachen will und sich überdies dem verteilten Computing widmet. Die Branchengrößen Microsoft, Lucent Technologies und Hewlett-Packard (HP) arbeiten an ähnlichen Lösungen wie Jini.

Unter dem Codenamen "Millennium" läuft bei Microsoft ein Forschungsprojekt, von dem außer einigen Dokumenten auf einer Web-Seite (www.research.microsoft.com/sn/Millenium) bislang wenig an die Öffentlichkeit gedrungen ist. Nach Angaben des Redmonder Konzerns soll damit eine neue Ebene der Abstraktion in der Welt der Computer erreicht werden: Über Millennium realisierte, verteilte Systeme seien unter anderem in der Lage, sich selbst zu konfigurieren und feinabzustimmen. Außerdem verspricht der Softwaregigant, daß sich Millennium-Lösungen automatisch an Veränderungen bei den Hardwareressourcen und dem Workload von Anwendungen anpassen werden. Auch die Verbesserung von Applikationen im laufenden Betrieb stellt Microsoft in Aussicht, ein Neustart nach einer Änderung des Codes werde überflüssig. Im Rahmen des Forschungsprogrammes hat die Softwareschmiede bereits einige Prototypen getestet. Wann Anwender von Millennium profitieren werden, ist allerdings völlig unklar.

Lucent Technologies hingegen muß Kunden nicht vertrösten - die Lösung des Unternehmens ist bereits produktreif. "Inferno" wurde in den renommierten Bell Labs entwickelt und basiert auf der portierbaren Programmiersprache "Limbo". Version 1.0 stellte der Anbieter im März 1997 vor. Es handelt sich laut Hersteller dabei um ein Echtzeit-Netz-Betriebssystem, das eine Software-Infrastruktur zur Schaffung von verteilten Netzapplikationen realisiert. Geräte wie Bildschirmtelefone oder Set-top-Boxen für Fernseher können Inferno nutzen, um Ende-zu-Ende-Kommunikationsverbindungen über das Internet, das öffentliche Telefonnetz oder Kabelnetze aufzubauen. Da Netz- und Sicherheitsprotokolle direkt in das Betriebssystem integriert sind, brauchen Anwendungen nicht verändert zu werden, wenn ein anderes Kommunikationsmedium benutzt wird. Inferno findet vor allem Verwendung, um Informationen oder Multimedia-Daten zu präsentieren. Mittlerweile liegt die Version 2.0 vor.

HP hat seinerseits mit "Jetsend" eine Technologie entwickelt, die ebenfalls auf einfache Weise die Kommunikation zwischen vernetzten Geräten ermöglichen soll. Das im Juli 1997 vorgestellte Verfahren ermöglicht die direkte Kommunikation zwischen bestimmten Geräten, ohne daß ein zentraler Server benötigt wird. Über Jetsend kann etwa ein Laptop direkt einen Multimedia-Projektor ansteuern (vorausgesetzt, beide Geräte sind Jetsend-tauglich). Bislang wird das Verfahren hauptsächlich in Peripeheriegeräten wie Digitalkameras, Druckern, Projektoren und Scannern implementiert. Zu den Unternehmen, die Jetsend in Lizenz genommen haben, gehören unter anderem Cisco Systems, Konica, Lexmark, Canon, Microsoft und Minolta.

Linda oder Jini?

Publikumswirksam ließ Sun Microsystems im Juli 1998 sein Jini aus der Lampe - selbst die "New York Times" berichtete aus diesem Anlaß ausführlich über den Netzwerk-Geist. Wesentlicher Bestandteil des Konzepts sind die Javaspaces, eine Technologie, die skalierbar und zuverlässig bestimmte Aufgaben über ein Netzwerk verteilen soll. Sun-Ingenieur Ken Arnold wird das Design der Javaspaces zugeschrieben, wobei er eingesteht, daß seine Entwicklung auf Forschungsarbeiten der Universi- tät Yale fußt, die in den 80er Jahren betrieben wurden. Anfang Oktober 1998 hat sich nun das Unternehmen Scientific Computing Associates (SCA) zu Wort gemeldet und behauptet, die Hauptentwicklungsarbeit für die Javaspaces geleistet zu haben.

Sun ist sich eigenen Aussagen zufolge jedoch keines gei- stigen Diebstahls bewußt und gibt sich kämpferisch. Das Unternehmen bekennt zwar, daß die Javaspaces auf ein Yale- Projekt namens "Linda" zurückgehen, sieht ersteres aber als unabhängige Eigenentwicklung an.

Linda kam auch schon bei Big Blue zu Ehren: IBM benutzte die Technologie (eine Sammlung effektiver, in der Programmiersprache C geschriebener Routinen für verteiltes Computing) im Rahmen von Experimenten mit seinen "T Spaces". Dabei handelte es sich um ein Jini-ähnliches Konzept, das jedoch eine stärkere Einbindung von Datenbanken- und Extended-Markup-Language-(XML-)Funktionen besaß. Sun scheint diese Parallele nicht weiter zu stören - das Unternehmen ist nach wie vor von Jinis Einzigartigkeit überzeugt.

Laut SCA trafen sich einige seiner Ingenieure im Oktober 1995 mit Sun-Leuten. Dabei soll auch über technische Aspekte von Linda diskutiert worden sein, wobei die Sun-Vertreter auch Insiderwissen in Erfahrung gebracht hätten. Die Jini-Ankündigung habe SCA daher überrascht - hörten sie bei dieser Gelegenheit doch von Inno- vationen, die sie für die ihren halten. Die Company will Sun deswegen zwar nicht vor den Kadi zerren, fordert aber eine öffentliche Würdigung ihrer Verdienste. "Es wäre schön, für unsere bahnbrechende Arbeit auf dem Gebiet des verteilten Computings Anerkennung zu bekommen", so SCA-Gründer Martin Schultz. Bei Sun stößt er damit jedoch bislang auf taube Ohren.