Seminarausarbeitung - Fakultät für Mathematik und Informatik
Transcription
Seminarausarbeitung - Fakultät für Mathematik und Informatik
Seminarausarbeitung Gridcomputing Seminararbeit im Seminar Neue Technologien in Internet und WWW Wintersemester 2003/04 FSU Jena Vorgelegt von André Hoffmann Januar 2004 1 Abstract Keine andere Branche hat in den letzten Jahren so viel Zuwachs gehabt wie die IT-Branche. Anfänglich noch teuer und für Wissenschaftler vorbehalten, kriegt man heutzutage GHz Rechner für wenig Geld zu kaufen. Doch kaum ein Normalanwender nutzt die immense Rechenkraft, die Desktop PC innewohnen wirklich aus. Warum also nicht diese brachliegenden Ressourcen für etwas Sinnvolles nutzen. Diesem Gedanken geht das GridComputing nach. Findet man nur genug dieser Ressourcen, so erhält vorrangig erstmal eine Rechenkraft, mit der selbst Supercomputer nicht mithalten können. Wunsch ist es einmal sämtliche dem Internet zugänglichen Computer jeglicher Bauart so zu verbinden, das man sich ähnlich dem Stromnetz keine Gedanken mehr machen muss, wo diese Leistungen (Rechenleistung, Speicherplatz) eigentlich herkommen. Diese Seminararbeit soll Einblick in den derzeitigen Stand der Forschung geben und anhand von Beispielen zeigen, wofür man überschüssige Rechenleistung heutzutage einsetzt. 2 Inhaltsverzeichnis 1 2 Einleitung .....................................................................................................4 Supercomputer und Cluster..........................................................................5 2.1 Geschichte der Supercomputer & Cluster............................................5 2.2 Was ist ein Cluster?..............................................................................6 2.3 Workstation Cluster .............................................................................7 2.4 Supercomputer vs Cluster ....................................................................8 2.4.1 Der schnellste Rechner der Welt..................................................9 2.4.2 Google ........................................................................................10 3 Grids...........................................................................................................11 3.1 Was sind Grids ...................................................................................11 3.2 Anwendungstypen des Grids .............................................................12 3.2.1 Rechen-Grids .............................................................................13 3.2.2 Data-Grids ..................................................................................13 3.2.3 Kollaborative Computerarbeit....................................................15 4 Globus Toolkit ...........................................................................................16 4.1 Archtiketur .........................................................................................16 4.2 Sicherheitsrichtlinien .........................................................................17 4.3 Informationen.....................................................................................18 4.4 Kommunikation .................................................................................19 4.5 Datenmanagement..............................................................................19 4.6 Ressourcenmanagement.....................................................................20 4.7 Dynamically-Updated Request Online Coallocator (DUROC) .......20 4.8 Fehlererkennung.................................................................................21 5 Anwendungsbeispiele für Grids.................................................................22 5.1 Seti@Home ........................................................................................22 5.2 Folding @Home.................................................................................26 5.3 CERN-Data-Grid (LHC)....................................................................27 5.4 Weitere Beispiele ...............................................................................29 6 Zusammenfassung und Ausblick ...............................................................30 A Glossar 31 B Wichtige Internetadressen 32 C Abkürzungen und Acronyme 32 Literaturverzeichnis 33 Index 34 3 1 Einleitung In der Wissenschaft, Forschung und Entwicklung ist man immer mit Problemen beschäftigt, die alle einen hohen Rechenaufwand erfordern. Das lässt sich anhand von verschiedenen Bereichen demonstrieren: • • • In naturwissenschaftlichen (zum Teil interdisziplinären) Fragestellungen und Aufgabenkomplexen werden Theorien entwickelt, die durch Experimente bestätigt werden. Durch vorherige Simulation könnte man bestimmte Phänomene vorhersagen, auf die im Ablauf des Experimentes besonders geachtet werden kann, oder die bisher noch nicht beobachtet werden konnten (z.B. durch zu kurze Existenz von Elementen/ Molekülen bei chemischen Reaktionen). Für solche anspruchsvollen Simulationen sind jedoch enorme Rechenleistungen erforderlich. Verschiedene Typen von Applikation beschäftigen sich mit der Verwaltung, Zusammenfassung oder Analyse von größten Datenmengen (z.B. bei verteilten Wissensdatenbanken, Signalen, oder sonstigen Informationen). Diese Aufgaben sind mit einem hohen Rechenaufwand verbunden. Zum Verständnis von etlichen hochkomplexen Abläufen sind interaktive Simulationen erforderlich (Wetterberechnungen, dynamische Höhenmodellierungen, Teilchenbahnberechnungen, usw.). Aufgrund der Vielzahl der zu berücksichtigenden Faktoren ist eine Realisierung nur durch eine hohe Rechenkapazität durchführbar. Diese drei Beispiele demonstrieren die Notwendigkeit von zeitgemäßen, hochleistungsfähigen Rechentechnologien. Dieser Bedarf wurde und wird mit modernen Supercomputern (SC) abgedeckt. Z.B. Intel Delta, Intel Paragon, Cray C-90, Cray Y-MP oder Earth Simulator, um einige zu nennen. Mit diesen Supercomputern sind folgende Anwendungen möglich und realisierbar: - Simulation komplexer nichtlinearer Phänomene Entwicklung von Prototypen (in der Wirtschaft und Wissenschaft) Erforschung wissenschaftlicher Parameter ohne Experimente (z.B. in der Physik, Chemie oder Medizin) 4 2 Supercomputer und Cluster 2.1 Geschichte der Supercomputer & Cluster Bereits seit 1964 gibt es Rechner zur Bewältigung paralleler Rechenaufgaben. Der erste dieser Rechner, der CDC 6600 wurde von der Control Data Corporation entwickelt. Bereits 1969 war das Nachfolgemodell CDC Cyber 76 10mal so schnell wie der CDC 6600. 1973 erreichten die Supercomputer auch Deutschland. Das Regionale Rechenzentrum in Hannover installierte den damals schnellsten Rechner der Welt mit einer Taktrate von 36 MHz und einer Leistung von ca. 5 MFlops, was einer Leistung von 5 Millionen Gleitkommaoperationen pro Sekunde entspricht. Die nächste Stufe der Entwicklung wurde 1976 von der neu gegründeten Firma Cray Research Inc eingeleitet. Der ehemalige Mitbegründer und Chefentwickler von CDC, Seymore Cray, hatte sich aufgrund von unterschiedlichen Auffassungen der zukünftigen Firmenentwicklung von CDC getrennt. Cray Research Inc. entwickelte mit Cray 1 den ersten Vektorrechner mit einer Leistung von ca. 160 MFlops und einer Leistung von ca. 130 MFlops bei Matrizenmultiplikationen. Der Hauptspeicher wurde auf 8 MB erweitert. 1979 kam einer dieser Rechner im Max-Planck-Institut für Plasmaforschung zum Einsatz. CDC entwickelte parallel zu Cray Reseach Inc. den Cyber 203 und danach den Cyber 205, der ebenfalls ein Vektorrechner war. Allerdings hatte CDC bereits wenig später einen Großteil seiner Kunden an seine Konkurrenten verloren und ging 1989 Konkurs. 1982 drängten auch erstmals japanische Hersteller auf den Markt der Supercomputer. Siemens vermarktete die VP100/200/400-Rechner von Fujitsu in den Jahren ab 1985 mit steigendem Erfolg in Hochschule, Forschungseinrichtungen und der Industrie. Ab 1988 wurden aufgrund der immer weiter steigenden Hardwareanforderungen die Entwicklung von Rechnersystemen mit multiplen Prozessoren vorangetrieben. 5 So entwickelte Cray mit dem Cray X-MP und der Cray-2 (mit vier CPUs) die ersten Multiprozessorsysteme. Ebenso konnte IBM ebenfalls mit dem S/390 Mainframe sich auf dem Markt behaupten. 1991 kam erstmals der Gedanke auf, Rechenoperationen so zu optimieren, daß die Rechenlast auf mehrere Rechner gleichzeitig verteilt werden konnten. Hierzu wurde die Parallel Virtual Machine entwickelt, die mehrere Workstation Cluster zu einem „lose gekoppelten“ Parallelrechner verband. Um diese Rechenoperationen weiter zu verbessern und zu verwalten, wurde 1993 das erste Lastverteilungsprogramm entwickelt und somit die Grundlage für heutige Cluster gelegt. Seit 1993 gibt es auch einen weltweiten Vergleich der Supercomputer. HansWerner Meurer, der damalige Leiter des Rechenzentrums in Mannheim, erstellte die Top 500 mit den 500 schnellsten Rechnern der Welt. Um die Rechenleistung zu vergleichen, wird hierzu der besonders rechenintensive Linpack-Algorithmus verwendet. 2.2 Was ist ein Cluster? Ein Cluster ( engl. „Bündel“) bezeichnet eine Gruppe zusammen- und parallelgeschalteter Rechner, die Rechenoperationen untereinander aufteilen, wobei sich diese Rechner in lokaler Nähe befinden. Jeder einzelne Rechner, auch Knoten genannt, ist einzeln ansprechbar und erledigt einen Teil der gesamten Rechenlast. 6 Abbildung 1 Schematische Darstellung eines Clusters 2.3 Workstation Cluster Workstation Cluster werden im Allgemeinen auch als Cluster „geringerer Qualität“ bezeichnet. Dies soll bedeuten, daß diese Cluster nicht mehr den heutigen Leistungsanforderungen gerecht werden. Bei einem Workstation Cluster werden einzelne Workstations durch ein LAN miteinander verbunden. Diese sind dann als Parallelrechner oder als einzelne Systeme einsetzbar. Die Schwachstelle eines Workstation Cluster liegt zumeist in der Bandbreite des LANs. Die verwendete Netzwerkanbindung ist meist zu gering, um den Cluster sinnvoll für Großprojekte mit hohem Datenvolumen zu benutzen. Aus diesem Grund werden Workstation Cluster meist am Wochenende für „Batch-Jobs“ oder für Sicherungsaufgaben herangezogen. 7 2.4 Supercomputer vs Cluster Supercomputer sind speziell optimierte Rechner. Die einzelnen Hardwarekomponenten sind optimal aufeinander abgestimmt und können so eine hohe Rechenleistung bei andauerndem Betrieb gewährleisten. Dem stehen allerdings hohe Anschaffungskosten und erhöhte Wartungskosten gegenüber. Bei technischen Defekten im Superrechner wird das ganze Rechensystem betroffen und kann ausfallen. Demnach ist eine sofortige Wartung schon bei kleineren Defekten notwendig. Linux-Cluster haben im Vergleich zu den Supercomputern ein sehr gutes Preis/Leistungsverhältnis. So kostet ein vollständig aufgebauter Cluster mit ca. 200.000€ nur etwa 1/10 von dem, was ein Supercomputer ähnlicher Leistung kosten würde. Bei Clustern ist auch nicht zwingend eine sofortige Wartung bei Defekten notwendig. Einzelne Ausfälle bei Knoten können durch Verlagerung der Rechenlasten kompensiert werden. Auch lassen sich einzelne Knoten abschalten oder aus dem Cluster entfernen. Dies hat den Vorteil, daß die defekten Knoten alle zusammen bei Bedarf gewartet und repariert werden können. Allerdings sind die Hardwarekomponenten in einem Linux-Cluster nicht speziell für den Dauerbetrieb optimiert und können so häufigere Wartungen nach sich ziehen. Ebenso ist die Netzwerkanbindung bei Projekten mit viel Datentransfer eine mögliche Schwachstelle und kann die tatsächliche Verarbeitungsgeschwindigkeit bremsen. Desweiteren lassen sich Cluster im Moment noch nicht auf eine beliebige Größe bringen, da ab einer gewissen Anzahl die Kommunikation untereinander mehr Leistung verbraucht, als die Hinzunahme neuer Knoten bringt. 8 2.4.1 Der schnellste Rechner der Welt Earth Simulator (Japan) [Stand 01\2004] Der Bau des Earth Simulators wurde 1997 angefangen und nach 5-jähriger Bauzeit im Mai 2002 beendet. Der Earth Simulator wurde in einer eigens für diesen Zweck konstruierten klimatisierten Halle aufgebaut. Das Gebäude ist erdbebensicher durch hydraulische Stelzen, auf denen der Aufbau ruht, außerdem bietet ein über das Dach gespanntes Stahlnetz, das mehrere Meter neben der Halle geerdet wird, Schutz vor Blitzschlag. Abbildung 2. Schematische Ansicht des Gebäudes Sinn des Projektes ist es, etwaige Veränderungen der Umwelt, Auswirkungen auf die Natur und das Wetter vorherzuberechnen. Die Hoffnung besteht darin, daß dieser Rechner den Menschen eine Art Symbiose mit dem natürlichen Ökosystem ermöglichen soll. Aufgebaut ist der Earth Simulator aus 640 Prozessorknoten, wobei jeder dieser 8 arithmetische Einheiten enthält. Jedem Knoten stehen 160Gb Arbeitsspeicher zur Verfügung. Vernetzt untereinander sind diese mit 2*12,3GB/s. 9 Abbildung 3. Architektur des Earth Simulators Leistung: Total peak performance: 40 TeraFLOPS 12 (TeraFLOPS= 10 Floating Point Operations pro Sekunde) Total Main Memory: 10 TeraByte 12 (1 TB = 10 Bytes) 2.4.2 Google Auch die bekannte Internet-Suchmaschine Google ist, wie auch fast jede andere WWW-Suchmaschine, ein Cluster. Sie besteht aus mehr als 10000 miteinander vernetzten Computern, um alle Suchanfragen gleichzeitig bewältigen zu können.[GDI] Die Daten sind auf mehreren Rechnern verteilt und oft gespiegelt, so daß der (im schlimmsten Falle komplette) Ausfall eines Rechners nicht ins Gewicht fällt. Zudem mindert diese Dezentralisierung die Wartungskosten. Anstatt der direkten Wartung des ausgefallenen Rechners kann so einfach der defekte Rechner ausgeschaltet werden. Die anderen Rechner im Cluster übernehmen dessen Aufgaben. Zur Zeit beherrscht Google die Suche auf 3,307,998,701 Seiten [GOO]. 10 3 Grids 3.1 Was sind Grids Zunächst einmal eine technische Definition: “Grid is a type of parallel and distributed system that enables the sharing, selection and aggregation of geographically distributed“ autonomous”resources dynamically at runtime depending on their availability, capability, performance, cost, and users’ quality ofservice requirements.”[GCI] desweiteren kann man auch folgende Erklärung anbringen: “Einer der wichtigsten Erfolgsfaktoren für die Spitzenforschung und Industrie wird zukünftig darin bestehen, jederzeit schnell und standortunabhängig auf weltweit verteilte Daten und IT- Ressourcen zugreifen zu können. Die Grundlage dazu bildet eine hochkomplexe, weltweit vernetzte Informationsinfrastruktur mit differenzierten Zugangs- und Administrationsmechanismen, für die sich allgemein der Begriff “GridComputing” etabliert hat. [...] Die ursprüngliche Motivation für GridComputing war, daß Rechenkapazität in gleicher Weise universell und transparent zur Verfügung gestellt werden soll, wie dies heute für elektrische Energie der Fall ist.”[DMG] Damit sieht man auch, woher der Begriff “Grid” in GridComputing stammt, von der englischen Bezeichnung für das Stromnetz, welches in der englischen Sprache “Power Grid” heißt. Und in der Tat liegt eine deutliche Analogie zwischen Power-Grids und einem Computer-Grid vor. Denn genauso wenig, wie man gewöhnlich darüber nachdenkt, wie der elektrische Strom eigentlich ins Haus kommt, so wenig soll man sich demnächst Gedanken darüber zu machen brauchen, wie im Moment benötigte Rechenleistung (oder allgemeiner: benötigte Ressourcen) für den eigenen Computer zur Verfügung gestellt werden können. Diese Form Sorglosigkeit möchte GridComputing erreichen Ressourcen sollen einmal überall und permanent zugänglich sein. 11 Ein in unserem Leben nicht mehr wegzudenkender Teil ist das Internet. Es übermittelt uns Informationen, ohne daß man sich im Detail mit Organisation und Topologie des Netzes beschäftigen müßte. GridComputing möchte das Internet an dieser Stelle erweitern. Es versucht, die Beschränkung des Internets auf reine Informationsübertragung aufzuheben und stattdessen Rechenleistung, Speicherkapazitäten oder gar ganze Applikationen für die Netzteilnehmer bereitzustellen. 3.2 Anwendungstypen des Grids Gemäß dieser Definition soll ein Grid verstanden werden als ein sich selbstorganisierender “Super-Computer”, bestehend aus einer Vielzahl unterschiedlichster Systeme. Ein wichtiger Aspekt hierbei ist das Attribut “unterschiedlich”.Teilnehmenden Rechner haben beispielsweise: • unterschiedliche Prozessortypen • unterschiedliche Betriebssysteme • unterschiedliche angeschlossene Geräte, • unterschiedliche Kapazitäten und • unterschiedliche Ausstattungen Obwohl Grids derzeit nur als Pilotprojekte im Einsatz sind, kann man bereits heute schon fünf Anwendungstypen des GridComputings unterscheiden: • Verteiltes Supercomputing • Data-Grids, d.h. – Computing mit hohem Datendurchsatz – Computing von datenintensiven Anwendungen • Computing bei Bedarf • Kollaborative Computerarbeit 12 3.2.1 Rechen-Grids Unter dem Begriff Rechen-Grid (engl. computational grid ) versteht man die Zusammenfassung der Rechenleistung mehrerer Rechner, wie man es bereits von Clustern kennt. Für diese Form des GridComputings ist ebenfalls der Begriff Verteiltes Supercomputing bekannt. Damit verbunden ist das Ausnutzen nichtverwendeter Ressourcen: Nach statistischen Erhebungen sind Desktop-PCs in den meisten Organisationen weniger als 5% des Tages wirklich beschäftigt[IBM]. Teilweise trifft dies ebenso auf große Server zu. Und selbstverständlich darf man hier nicht die privaten PCs vergessen, die den größten Teil des Tages ausgeschaltet und damit unproduktiv auf dem Schreibtisch stehen. Grid-Computing in der in diesem Abschnitt besprochenen Anwendungsform möchte auf diese ungenutzten Kapazitäten zugreifen. So kann es beispielsweise sein, daß ein Großrechner mit einer Aufgabe beschäftigt ist, welche ihn außergewöhnlich auslastet. Stellt man sich vor, daß er nun eine wichtige weitere Aufgabe bekommen soll, für diese jedoch keine weiteren Kapazitäten mehr bereit hält. Mittels des Grid-Computings könnte man diese neue Aufgabe einem weniger oder gar nicht beschäftigten Rechner innerhalb unseres Grids übertragen. Dabei sind folgende Vorbedingungen an den entfernten Rechner zu beachten: • Die Aufgabe muß ohne unverhältnismäßigen Aufwand auf dem entfernten Rechner zu erledigen sein. • Der Rechner im Grid, der die Aufgabe erhalten soll, muß über die für diese Aufgabe benötigte Hardware, Software und Ressource(n) verfügen. 3.2.2 Data-Grids Temporärer vs. permanenter Speicherplatz Die zweithäufigste Anwendung des GridComputings stellen Daten-Grids dar. Unter einem Daten-Grid (engl. “Data-Grid”) versteht man ein Grid, in 13 dem jeder Rechner Speicherplatz für die Daten anderer Grid-Teilnehmer zur Verfügung stellt. Dies kann permanenter oder auch nur temporärer Speicherplatz sein. Letzteren kann man verwenden, um einen schnelleren Datenzugriff zu ermöglichen. Der Nachteil in diesem Fall ist natürlich, daß dieser Speicherplatz nur “flüchtig” ist. Permanenter Speicherplatz hingegen dient dazu, um Speicherkapazitäten und Performance zu erhöhen, ist aber auch im Hinblick auf die Sicherheit der Daten vor Datenverlust interessant. Sicherheit vor Datenverlust Wie kann das Grid vor dem Verlust von Daten schützen? Zum Beispiel durch mehrfache (redundante) Datenhaltung: Daten können dupliziert werden und auf mehreren Rechnern abliegen, um beispielsweise als Backup zu dienen. Verbesserung der Perfomance Was kann das Grid zur Verbesserung der Performance beitragen? Auch hier liegt die Antwort in der redundanten Datenablage. Man spricht in diesem Zusammenhang auch von replication. Dabei besteht nach [DMG] der Hauptzweck der replication darin, bessere Datenübertragungsgeschwindigkeiten dadurch zu erreichen, daß die Daten von lokal “gecachten” Datenbanken bezogen werden, anstatt jeweils einzeln über das gesamte Netzwerk übertragen werden zu müssen. Die Daten können von der jeweils naheliegendsten Quelle anstatt von einem zentralen Server übermittelt werden. Data Striping Einen weiteren interessanten Ansatzpunkt, um eine Verbesserung der Perfomance beim Datenzugriff zu erreichen, stellt das Data Striping dar, das im Grunde wie Raid funktioniert. Hierunter versteht man eine Technik, die den Effekt eines schnelleren Datenzugriffs simuliert. Diese funktioniert wie folgt: Die Daten liegen auf mehreren physischen Geräten zugleich ab. Wenn der Zugriff auf diese Daten auf eine im voraus bekannte Weise geschieht (z.B.sequentiell), so werden die Daten nicht von nur einem Gerät gelesen, sondern nacheinander zeitversetzt von allen diesen Geräten. Auf diese Art entsteht der Eindruck, als lese man von einem besonders schnellen Gerät. Tatsächlich aber überlappen sich die Zugriffe auf die verschiedenen Geräte und führen so zu diesem Eindruck. 14 3.2.3 Kollaborative Computerarbeit Das Grid kann heterogene und geographisch weit entfernte Ressourcen zu einer sogenannten virtuellen Organisation(VO) zusammenführen. Ein Benutzer des Grids kann mehreren virtuellen Organisationen angehören, welchewiederum zusammen ein noch größeres Grid darstellen. Virtuelle Organisationen zeichnen sich insbesondere dadurch aus, daß sie einen • in hohem Maße kontrollierten, • von Ressourcen-Anbietern und -Konsumenten klar definierten • in sich geschlossenen Austausch von Ressourcen ermöglichen. Dabei bezieht sich dieser Ressourcenaustausch nicht bloß auf Dateien, sondern ebenfalls auf direkten Zugriff auf entfernte Rechner, Software, Daten und Hardware, die von für eine bestimmte Problemlösung zusammenarbeitenden Computern benötigt werden. Dies soll bedeuten, daß festgelegt ist, wer am Austausch teilnehmen darf und wer nicht. Innerhalb einer virtuellen Organisation können Daten in Form von Dateien oder Datenbanken für alle Mitglieder der Organisation zugänglich gemacht und damit geteilt werden. Wenn jedes Mitglied Zugriff auf seine Daten ermöglicht, so ergibt auch dies ein Data-Grid, also gewissermaßen eine sehr große Datenbank, von der alle Teilnehmer profitieren können. Im Zusammenhang mit virtuellen Organisationen ist ein Data-Grid aber nicht nur auf Daten beschränkt. So können hier auch andere Ressourcen geteilt werden, wie: Hardware:(z.B. Bandbreite beim Internet-Zugang): Zugang auf das Internet auf mehrere (unabhängige) Rechner verteilen Software / Lizenzen: wenn auf einzelnen Rechnern teure Software installiert ist, so können andere Rechner diese Software benutzen, um die Lizenz auf diese Weise besser auszunutzen. Service: teure Spezialgeräte (z.B. ein Elektronenmikroskop) können über das Grid benutzt werden. Man sendet die zu untersuchende Probe an die Einrichtung, in der das Mikroskop steht. 15 4 Globus Toolkit 4.1 Archtiketur Globus ist ein internationales Projekt, welches sich mit der Erforschung und Entwicklung von Technologien beschäftigt, welche zur einfachen Erstellung und Nutzung von Grids benötigt werden Das Hauptproblem welches es dabei zu lösen gilt, ist die koordinierte Ressourcenverteilung und Problemlösung innerhalb dynamischer multiinstitutioneller virtueller Organisationen Die grundlegenden Dienste, die innerhalb von Globus angeboten werden, bedienen sich der sogenannten Sanduhrarchitektur. Das heißt, daß es in der Mitte eine sehr geringe Anzahl von Protokollen und Diensten gibt, die jedoch nach unten auf ein breites Spektrum an Protokollen und Diensten zugreifen können und nach oben hin auch ein breites Spektrum ermöglichen. Dies ermöglicht es den Benutzern der API sehr einfach auf bestehende Protokolle und Dienste aufzusetzen und gleichzeitig vereinfacht es den Einbau in eigene Applikationen und Dienste einzubauen. Das Globus Toolkit bietet eine modulare Auswahl an Technologien auf verschiedenen Protokollebenen zur einfacheren Erstellung von Applikationen. Ähnlich der Internetarchitektur setzt sich die Globusarchitektur auch aus mehreren aufeinander aufbauenden Protokollschichten auf. 16 Abbildung 4. Protokollschichten Globus Als unterste Schicht gibt es hierbei den ’Fabric Layer’, dieser steuert den Zugriff auf alle lokalen Ressourcen. Darüber gibt es den ’Connectivity Layer’. Dieser entspricht in etwa der Internetschicht. Hier kommt zu den bereits bestehenden Internetprotokollen nur die Sicherheitsarchitektur Grid Security Infrastructure(GSI) hinzu. Direkt darüber ist der ’Resource Layer’. In diesem befinden sich die meisten der Globus Protokolle wieder, wie zum Beispiel Globus Resource Allocation Manager(GRAM), GridFTP oder Grid Resource Information Service(GRIS). Hier geht es vor allem die Steuerung, Verwaltung und Zugriff auf Daten und Ressourcen. Direkt über dem ’Resource Layer’ und unter der Anwendung gibt es noch den ’Collective Layer’. Dieser beinhaltet alle höherwertige Protokolle und Mechanismen, die eine verteilte Ressourcenverwaltung erst möglich machen. 4.2 Sicherheitsrichtlinien Grids stehen vor der Herausforderung, daß die Teilnehmer an einer VO grundlegend den Sicherheitsrichtlinien ihrer zugehörigen Organisationen unterliegen. Des Weiteren bestehen VOs sowohl als mehrjährige Kooperationen als auch sehr kurzfristig, beispielsweise nur um ein Dokument für zwei Personen bearbeitbar zu machen. Daher darf der 17 Aufwand für die Einrichtung und Unterhaltung einer VO nicht den Nutzen übersteigen Außerdem stehen diese Umgebungen natürlich vor der Aufgabe, daß Sicherheit nicht als übermässige Bürde wahrgenommen wird. Daher ergeben sich die folgenden grundlegenden Sicherheitsanforderungen: •single sign-on - Nutzer müssen sich im Grid nur einmal identifizieren. •delegation - Es ist möglich Programmen oder anderen Ressourcen seine Rechte bzw. einen Teil seiner Rechte zu übertragen. •identity mapping - Die globale Identität wird auf eine lokale Identität mit bestimmten Rechten abgebildet 4.3 Informationen Grid-Applikationen bewegen sich in einem dynamischen Umfeld, welches sowohl geographisch als auch architektonisch (Hard- und Software) sehr heterogen ist. Ausserdem können sich sehr viele Teilnehmer an einer VO beteiligen. Demzufolge ist der Teil eines Grids, welcher Dienste findet und überwacht, sehr kritisch für das gute Funktionieren einer Grid-Applikation. Dieser Dienst nennt sich bei Globus Monitoring and Discovery Service (MDS). Er basiertauf zwei grundlegenden Elementen: •Grid Resource Information Service (GRIS) Eine Vielzahl von generischen, verteilten Informationsproduzenten, welche Informationen über einzelne Entitäten anbieten. Die Struktur dieser Information ist an die Informationsstruktur im Lightweight Directory Access Protocol (LDAP) angelehnt, wobei jede Entität aus eine Ansammlung von Objekten besteht, welche sich wiederum aus Attribut-Wert Paaren zusammensetzen. •Grid Index Information Service (GIIS) Höherwertige Dienste, welche die Informationen der einzelnen Informationsproduzenten sammeln, indizieren, sortieren bzw. auf sie 18 reagieren. Diese Dienste bieten sowohl generischen als auch spezielle Sichten auf die Daten an. 4.4 Kommunikation Mit dem Hintergrund, daß die Kommunikationsnetze immer schneller werden und so Wide Area Networks (WAN) zum Teil bereits Datenübertragungsraten und Latenzzeiten erreichen, die sich denen von Local Area Networks (LAN) nähern, ergibt sich daraus natürlich auch die Möglichkeit, Anwendungen in einem Grid laufen zu lassen,die üblichweise in lokalen Clustern oder Parallelrechnern liefen. Um solche Anwendungen möglichst einfach portieren zu können bzw. neue Anwendungen möglichst universell nutzbar machen zu können, wurde für das Grid das Message Passing Interface (MPI) in der Version 1.1 implementiert. Diese Implementierung (MPICH-G2) konvertiert automatisch Daten, die zwischen Computern mit verschiedenen Architekturen ausgetauscht werden. Außerdem unterstützt es verschiedene Protokolle bei der Kommunikation. Das heißt, daß TCP automatisch bei der Kommunikation zwischen verschiedenen Computern ausgewählt wird, während innerhalb eines Parallelrechners auf die herstellereigene MPI-Kommunikation zugegriffen werden kann. 4.5 Datenmanagement Um die Portierung und die Laufzeitumgebung von Applikationen, die auf Dateien zugreifen zu vereinfachen, wurde unter Globus die Global Access to Secondary Storage (GASS) API eingeführt. Diese API stellt unter anderem folgende Funktionalitäten zur Verfügung: •Manuelles Einloggen in verschiedene Sites und FTP-Sites. •Installation eines verteilten Dateisystems. 19 4.6 Ressourcenmanagement Die zentrale Komponente des Ressourcenmanagements bei Globus ist der Globus Resource Allocation Manager (GRAM). GRAM erlaubt es, Jobs auf entfernten Rechner laufen zu lassen. Die Hauptaufgaben von GRAM sind folgende: •Analyse und Auswertung der Resource Specification Language (RSL) Spezifikationen. Mittels RSL ist es möglich eine Ressource zu beschreiben. Bei dieser Analyse und Auswertung wird auf Ressourcenauswahl, Jobprozessgenerierung und -kontrolle eingegangen. •Überwachung entfernt gestarteter Prozesse. •Aktualisierung von MDS mittels der Informationen über die verwalteten Ressourcen. Um auf einem entfernten Rechner einen Job laufen lassen zu können, muss auf diesem ein GRAM gatekeeper laufen. Dies ist ein Serverprogramm, welches Clients authentifiziert und auf eingehende Job-requests wartet um dann bei Erhalt eines solchen einen Jobmanager für diesen Job zu starten. Dieser Job-Manager wiederum ist nun für das Kreieren der zu diesem Job benötigten Prozesse und für die weitere Kommunikation mit dem Client zuständig. Dabei kann es sich sowohl um Zustandsänderungen des Programms handeln als auch um Erfolgs- oder Fehlerrückmeldung bei der Programmterminierung. 4.7 Dynamically-Updated Request Online Coallocator (DUROC) Da es jedoch bei Grid-Applikationen durchaus vorkommt, daß Jobs über verteilte Ressourcen und damit auch über verteilte GRAMs eingerichtet werden müssen, wird ein Programm benötigt, welches die Koordinierung zwischen den verschiedenen Ressourcenmanagern übernimmt. Dies ist bei Globus die Aufgabe des Dynamically-Updated Request Online Coallocator (DUROC). DUROC besitzt zwei Hauptaufgaben: 20 • Es muss die Ressourcenspezifikationen eines Jobs auswerten, um entscheiden zu können, wie es den Job über die Ressourcen, über die es Informationen besitzt, verteilt. • Die zweite Aufgabe besteht dann aus dem eigentlichen Alloziieren der Ressourcen. Dazu muss DUROC als client gegenüber den verschiedenen Ressourcemanagern auftreten um auf ihnen dann die Teiljobs zu starten. 4.8 Fehlererkennung Da Grid-Applikationen darauf angewiesen sind, daß der Status aller Teilprozesse insbesondere im Fehlerfall schnell und zuverlässig übermittelt wird, wurde außer MDS noch ein weiterer Dienst eingerichtet. Der Globus Heartbeat Monitor (HBM) ist unter der Maßgabe gebaut worden, daß er möglichst einfach und damit auch sehr robust funktioniert. Er ist dafür zuständig, den Ausfall von Prozessen, die sich bei ihm angemeldet haben, zu erkennen und weiterzuleiten. Außer direkten Globus Systemprozessen kann er auch Applikation überwachen. Der HBM besteht aus drei Komponenten: • HBM Client Library (HBMCL) • HBM Local Monitor (HBMLM) • HBM Data Collector (HBMDC) Der HBMCL wird benutzt, um jeden zu überwachenden Prozess bei dem pro Host nur einmal laufenden HBMLM anzumelden und bei Prozessende wieder abzumelden. Der HBMLM überprüft periodisch alle bei ihm angemeldeten Prozesse und sendet daraufhin die Statusinformationen an einen oder mehrere HBMDCs. Der HBMDC sammelt die ihm geschickten Statusinformationen und nimmt sie in die lokale registry auf. Ausserdem folgert der HBMDC aus dem Ausbleiben von Statusinformationen (timeout) den Ausfall oder Fehlerfall der beobachteten Komponente. Der HBMDC kann außerdem bei vorher definierten Statusänderungen selbständig Benachrichtigungen verschicken[GBT] 21 5 Anwendungsbeispiele für Grids 5.1 Seti@Home SETI@HOME steht für Search for Extraterrestrial Intelligence. Hierbei handelt es sich um das wohl populärste Projekt seiner Art, das jedermann zugänglich ist und an dem sich jeder beteiligen kann, der über eine Internetverbindung verfügt. Das Ziel des Projekts ist es, etwaige „Botschaften“ von Außerirdischen aus großen Mengen von Weltraumsignalen herauszufiltern. Da dabei viel Rechenaufwand anfällt, nutzt man die Bereitschaft freiwilliger Computer-benutzer, ihre Rechner(kapazitäten) zur Verfügung zu stellen. Die Idee zu SETI@home stammt aus der Feder von David Gedye, Craig Kasnoff und Woody Sullivan, zwei Informatikern und einem Astronomen, die mit SETI vertraut waren und 1996 die Möglichkeit in Betracht zogen, freie Rechnerkapazitäten auf der ganzen Welt für ihre Zwecke zu nutzen. Im späteren Verlauf des Projekts übernahmen David Anderson und Dan Werthimer von der University of California in Berkeley die Projektleitung. Da ein solches Projekt keinerlei Gewinn abwirft, gab es zu Beginn direkt das Problem der Finanzierung, da sich kein Sponsor fand, der Geld investieren wollte ohne die Aussicht auf Profit. Man fand schließlich doch noch eine Lösung: 50.000$ zahlte die CarlSagan-Stiftung, die es sich zum Ziel gesetzt hatte, die Wissenschaft einer breiteren Masse zugänglich zu machen und innovative Ansätze zu unterstützen. Weitere 50.000$ zahlte „Paramount Pictures“ anlässlich der Kinopremiere eines weiteren „Star Trek“- Films, da SETI@home thematisch recht gut zu diesem Genre passte. Und schließlich steuerte Sun Microsystems die Hardware für SETI@home bei. Jedes Objekt strahlt Radiowellen ab, diese Strahlung ist sehr gering aber nach- weisbar. Für Wasser liegt die Frequenz bei 1,42 GHz. Da Wasser eine Substanz ist, die im Weltraum häufig vorkommt und unsere Art des Lebens darauf basiert, wird vermutet, daß die Aliens mit dieser Frequenz ein Signal senden könnten[ACK]. Genau hier setzt SETI@Home an: 22 Abbildung 5. Radioteleskop von Arecibo Mit dem Radioteleskop in Arecibo (Puerto Rico) werden Daten empfangen und dort digital aufgezeichnet. Dieses Radioteleskop ist übrigens das Größte weltweit mit 305 m Durchmesser. Da es aber im Boden fest verankert ist und sich nicht bewegen kann, ist es nur möglich damit 33% Himmels zu erreichen [ACK]. Das Teleskop kann aber nicht für SETI alleine genutzt werden um gezielt den Himmel abzuscannen, weil andere Gruppen mit "wichtigeren" Projekten den Vorrang bekommen, deswegen zweigt SETI einfach nur die Daten ab. Ein weiteres Problem ergibt sich dadurch, daß man nicht das gesamte Radiowellenspektrum beliebig genau aufnehmen kann, weil es einfach heute nicht möglich solche enormen Mengen zu speichern bzw. zu verarbeiten. Deswegen wird auch nur eine Bandbreite von 2,5MHz (zum Vergleich Farbfernsehen benötigt ca. 6-8 MHz) bei 1,42 GHz aufgenommen, das füllt immerhin noch alle 16 Stunden ein 35Gb-DLT-Band [ACK]. Die aufgenommenen Signale sind eigentlich nur Rauschen, infolgedessen lassen sie sich auch nicht komprimieren. Die Daten werden dann Rechnern in Berkeley zu so genannten "Work Units" (WU) in 256 Bänder mit je 10kHz Bandbreite zerspalten, von denen jeder Datensatz 107 Sekunden lang ist und sich untereinander um 20 Sekunden 23 überlappen. Die WUs sind dann ca. 350kb groß und lassen sich über das Internet verteilen [ACK]. Abbildung 6. Arbeitsweise von Seti Die Aufgabe des Clienten ist es nun die WUs nach Kandidaten für eine weitere Untersuchung zu durchsuchen. Da man nicht weiß, wie so ein Aliensignal aussieht wird nach Spikes (kurze Stöße), Gaußkurven (Schmalbandsignale [siehe Abb. 4]), Pulses ( 2 Gaußkurven mit gleicher Stärke hintereinander) und Triplets (3 Gaußkurven hintereinander) gesucht. Dabei muss noch beachtet werden, daß sich der Sender der Außerirdischen auf einen Planeten befindet bzw. sich die Erde und das Sonnensystem bewegt, damit tritt noch der so genannte Dopplereffekt ein, dieser verzerrt das Signal noch zusätzlich. Da man die Geschwindigkeit nicht kennt, wird einfach das Signal durch 31555 verschiedene vorgegebene Raten entzerrt und dabei nach Spikes, Gaußkurven, Pulses und Triplets gesucht. Man probiert 15 verschiedene Bandbreiten (von 0,07 bis 1200Hz) für das Signal durch (natürlich mit allen möglichen Doppler-Verschiebungen). Bei der kleinsten Bandbreite werden über eine Million Tests pro DopplerVerschiebung durchgeführt, was zu 200 Milliarden Berechnungen führt. Für alle 15 Bandbreiten ergeben sich zusammen etwa 275 Milliarden Berechnungen. Es werden weitere Tests durchgeführt, die rechenintensive (wenn auch bereits effizient formulierte) Algorithmen benutzen, von denen einige speziell für SETI@home entwickelt wurden. 24 Rechnet man nun alle Schritte zusammen, die eine einzige Work Unit auf dem Rechner durchläuft, so kommt man auf 2,4 bis 3,8 Billionen Fließkommaoperationen – in Abhängigkeit vom Inhalt der jeweiligen Work Unit. Ein AMD Athlon 2200+ XP braucht dafür ungefähr 3 Stunden, Intel Pentium IV 1700 ca. 4 Stunden und ein Intel Pentium III 500 ca. 12 Stunden. Die besten Ergebnisse werden dann gespeichert und zurückgeschickt (ca. 1kb groß) [ACK]. Die berechneten WUs werden dann wieder vom Servern in Berkeley entgegengenommen und überprüft, da nicht auszuschließen ist, daß einige User ihr Programm manipuliert haben, um mehr Einheiten abzuliefern. Deshalb werden die Einheiten mehrmals verschickt. Abbildung 7. Client Seti@Home Screeshot Zahlen und Fakten (Stand 13.01.2004): • • • Anzahl der Teilnehmer: 4835437 Berechnete WUs: ≈ 1,2 Mill. Anzahl aller Rechenoperationen: 4263 Exa FLOPs Exa = 1018 Trillionen, damit ist SETI@HOME die umfangreichste Berechnung aller Zeiten • Theoretische Leistung: 49,97 Tera FLOPS/sec damit besser als Earth Simulator[SSH]. 25 5.2 Folding @Home Folding@Home ist ein Projekt der Pande Group des Chemistry Department an der Stanford University (bei San Francisco). Es beschäftigt sich mit der Simulation von Prozessen in der organischen Chemie (Faltung von Proteinen), die nur schwer oder überhaupt nicht experimentell erfassbar sind, da sie einfach zu schnell ablaufen (teilweise im MikrosekundenBereich) oder überhaupt nicht bekannt ist was abläuft. Proteine sind langkettige Aminosäuren, die als Enzyme, strukturelle Bestandteile von Knochen, Muskeln, Haaren, Haut, Blutzellen und Fresszellen vorkommen können. Um die Funktion der Proteine zu verstehen, muss man etwas über die Form wissen, es reicht nicht aus nur die beteiligten Atome zu kennen. Bevor Proteine ihre "Arbeit" aufnehmen, nehmen sie automatisch eine Form an: dieser Prozess wird Faltung genannt. Wenn man diese Prozesse genau simulieren kann und versteht, ist man vielleicht in der Lage Krankheiten wie BSE, Alzheimer oder Parkinson zu heilen bzw. Nanomaschinen auf der Basis von Proteinen zu bauen. [SBF] Die Berechnung erfolgt im Atombereich, dabei benötigt ein Intel Pentium III für die Simulation von einer nano (10-9) Sekunde rund einen Tag [LSS]. Die schnellsten bekannten Faltungen einfacher Proteine dauern aber ca. 10 µ (10-6) Sekunden. Bei komplexen Proteinen kann die Faltung auch einige milli (10-3) Sekunden dauern, dafür benötigen auch heutige Supercomputer mehrer Monate. Das Problem bei Folding@Home bestand darin einen geeigneten Algorithmus für die parallele Berechnung zu finden, weil die Prozesse hintereinander ablaufen und von einander abhängen. Der Server schickt dem Clienten das Modell eines solchen Proteins, dieser rechnet dann kleine Bewegungen in einer Schrittweite von 1 bis 2 femto (10-15) Sekunden aus. Die gesamte Länge einer einer Work Unit beträgt 100 pico (10-12) Sekunden. Dann sendet der Client das Ergebnis zurück und der Server "addiert" dann alle kleinen Bewegungen zu einer Großen zusammen. Die Ergebnisse werden dann anhand von Experimenten überprüft. 26 Abbildung 8 Folding@Home Client Screenshot Wie bei SETI gibt es hier auch User -und Teamstatistiken. Die Punkte werden aber nicht nach der Anzahl der berechneten WUs vergeben, sondern nach der Komplexität des berechneten Proteins. Es wurden schon einige Proteine komplett durchgerechnet, die Ergebnisse der Berechnung stimmen auch mit der Wirklichkeit überein.[] 5.3 CERN-Data-Grid (LHC) Bei diesem Beispiel handelt es sich um ein Data-Grid. LHC steht dabei für Large Hadron Collider, worunter ein derzeit im Bau befindlicher Teilchenbeschleuniger, der einmal der weltweit leistungsfähigste seiner Art sein soll, zu verstehen ist. Seine Fertigstellung ist für das Jahr 2005 geplant. Mit Hilfe des LHC soll der Ursprung der Masse untersucht und damit eine Antwort 27 auf eine der grundlegendsten Fragen der Wissenschaft gegeben werden. Der LHC entsteht derzeit am CERN, der europäischen Organisation für nukleare Forschung, mit Sitz in Genf (Schweiz). Dabei werden Protonenbündel 40 Millionen Mal in der Sekunde auf die Detektoren treffen, was zu Datenmengen bis zur Größenordnung von 100 Gigabytes in der Sekunde führt. Das entspricht der Datenmenge, so CERN, die entsteht, wenn jeder Mensch auf der Erde gleichzeitig in 20 Telefone spricht. Für die Verarbeitung und Speicherung der Daten werden Supercomputer benötigt, die der Rechenkapazität von 100000 PCs entsprechen. Die Daten werden nicht wie bisher nur an einem Ort gespeichert und verarbeitet, sondern auf mehrere Zentren verteilt, um sie transparent zu nutzen[WWG]. Dazu soll ein in Abbildung 7 dargestelltes hierarchisches System mit verschiedenen Ebenen (Tiers) verwendet werden. In diesem Modell stellt das CERN die oberste Ebene(Tier-0) dar. Seine Aufgabe besteht darin, Experimentdaten zu speichern und zu rekonstruieren. Die Analyse und die Erzeugung simulierter Ereignisse wird dann in regionalen Tier-1-Zentren vorgenommen, an die sich in einer weiteren Hierarchie-Ebene (nationale) Tier-2-Zentren anschließen. Die vierte und fünfte Ebene bilden sodann Institutsrechner (Tier-3) sowie einzelne Arbeitsplatzrechner (Tier-4). Der Planung nach sollen die Regionalzentren in Italien, Frankreich, Großbritannien, Japan und in den USA entstehen. Mit Hilfe des Data-Grids kann erreicht werden, daß alle beteiligten Wissenschaftler in den Regionalzentren arbeiten können und dies nicht eigens am CERN selbst machen brauchen[RSG]. 28 Abbildung 8 Schema CERN DATA GRID 5.4 Weitere Beispiele Es gibt natürlich noch etliche weitere Projekte, die die Rechnerkapazitäten aus-nutzen, die ihnen von freiwilligen Privatpersonen zur Verfügung gestellt wer-den. Im Folgenden sollen nur einige Beispiele dafür genannt werden: Im Bereich Medizin nutzt man die Rechenleistung, um computergestützt neue Arzneimittel (Computer Aided Drug Design) zu entwickeln, z.B. bei FightAIDS@home, United Devices Cancer Research Project oder Find-aDrug, oder Distributed Folding geschieht. Im Bereich Wissenschaft versucht man, mittels einer Monte-CarloSimulation das Weltklima in 50 Jahren vorherzusagen (Climateprediction.net) oder die Evolution zu untersuchen (evolution@home). Dominiert wird die Landschaft des Distributed Computing von mathematischen Problemen. Hier werden riesige Primzahlen faktorisiert, Primzahlzwillinge gesucht oder die Goldbachsche oder Riemannsche Vermutung Zahl für Zahl geprüft. Näheres hierzu findet man unter Active Distributed Computing Projects Mathematics oder unter Distributed Computing Projects. 29 6 Zusammenfassung und Ausblick Wie an den obigen Beispielen gezeigt wird auf einigen Gebieten der Forschung GridComputing schon genutzt und man hat es, wie im Beispiel Seti geschafft, eine Vielzahl von Menschen dazu zu bewegen, ihre Computer in den Dienst der Wissenschaft zu stellen und eine enorme Rechenleistung zu erbringen. Trotzdem ist man dem Ziel, das eines Tages das gesamte WWW ein einziger Riesenrechner ist, dessen Ressourcen man einfach so benutzen kann, wie man heutzutage Internet aufruft oder Strom bezieht, noch weit entfernt. Zum einen fehlt meiner Meinung nach größtenteils noch die Bandbreite der Internetanbindung und zum anderen die Einstellung der Nutzer. Bandbreite ist in dem Sinne wichtig, da die ja ausschlaggebend für eine schnelle Kommunikation der Rechner untereinander ist, zum anderen kann man bestimmt davon ausgehen, dass die zu übermittelnden Daten einen höheren Umfang haben, als die relativ kleinen Mengen wie bei Seti. Und dann wäre da natürlich noch der Faktor Mensch, denn welcher Normalanwender braucht Rechenkraft von außerhalb, wenn er sowieso zuviel davon hat. Selbst rechenintensive Anwendungen für den Hausgebrauch wie Videokodierung, brauchen heute auf gängigen Rechner nicht mehr als ein paar Stunden, wenn nicht sogar weniger. Um dennoch eine breite Masse an Internetnutzern zu gewinnen, könnte ich mir ein ähnliches System vorstellen, wie es einige Firmen mit großen Clusterrechnern schon heutzutage machen, nämlich die Rechenkraft für Geld anderen anzubieten. 30 A Glossar Cluster:(engl.„Bündel“) bezeichnet eine Gruppe zusammen- und parallelgeschalteter Rechner, die Rechenoperationen untereinander aufteilen, wobei sich diese Rechner in lokaler Nähe befinden. Globus: ist ein internationales Projekt, welches sich mit der Erforschung und Entwicklung von Technologien beschäftigt, welche zur einfachen Erstellung und Nutzung von Grids benötigt werden. Grid: In den letzten Jahren gab es vor allem im wissenschaftlichen Bereich einen starken Trend zur Kollaboration bei großen rechen- und datenintensiven Projekten. Dabei ging es sowohl um den Austausch von Daten, Rechenzeit, Bandbreite und anderen Ressourcen innerhalb einer Organisation wie auch zwischen mehreren Organisationen. Grids sind hierbei die grundlegenden Bausteine, die dieses erst effizient ermöglichen. Virtuelle Organisation: Das Grid kann heterogene und geographisch weit entfernte Ressourcen zu einer sogenannten virtuellen Organisation(VO) zusammenführen. Virtuelle Organisationen ermöglichen den Austausch von Ressourcen, wobei sich dieser Ressourcenaustausch nicht bloß auf Dateien bezieht, sondern ebenfalls auf direkten Zugriff auf entfernte Rechner, Software, Daten und Hardware, die für eine bestimmte Problemlösung benötigt werden. 31 B Wichtige Internetadressen • http://www.rechenkraft.de Deutsches Portal zum Thema Verteiltes Rechnen • http://www.globus.org Homepage Globus Toolkit • http://setiathome.ssl.berkeley.edu Homepage Seti@Home C Abkürzungen und Acronyme AU API DUROC FLOP GSI GRAM GRIS GIIS GRIP GRRP GASS HBM LAN LHC MDS RAID SETI VO WAN WU Artithmetic Unit Application Programming Interface Dynamically-Updated Request Online Coallocator Floating Point Operation Globus Security Infrastructure Globus Resource Allocation Manager Grid Resource Information Service Grid Index Information Service Grid Information Protocol Grid Registration Protocol Global Access to Secondary Storage Heartbeat Monitor Lokal Area Network Large Hadron Collide Monitoring and Discovery Service Redudant Array of Inexpensive Disk Search for Extraterrestrial Intelligence Virtual Organization Wide Area Network Work Unit 32 Literatur [ACK] [DMG] [GSC] Anderson, Cobb, Korpela, Lebofsky, Werthimer, SETI@home: An Experiment in Public-Resource Computing, 2002. http://setiathome.ssl.berkeley.edu/~korpela/papers/cacm/ Data Management in an International Grid Project, Wolfgang Hoscheket al. http://citeseer.nj.nec.com/hoschek00data.html Geschichte der Supercomputer und Cluster http://www.derneuepopel.de/cluster/clusterinfo.html [GBT] Globus Project. The globus project: Frequently asked quetions. http://www.globus.org/about/faq/general.html. [GCI] GridComputing Info Centre, http://www.gridcomputing.com Google Dance - Das Index-Update der Suchmaschine Google http://dance.efactory.de/d-index.php www.google IBM - Redbook “Fundamentals of GridComputing”, Viktors Berstis IBM 2002, http://www.ibm.com/redbooks Larson, Snow, Shirts, Pande, Folding@Home and Genome@Home:Using distributed computing to tackle previously intractable problems in computational biology http://folding.stanford.edu/science.htm Report of the Steering Group of the LHC Computing Review, CERN/LHCC/2001-004, http://lhc-computingreview-public.web.cern.ch/lhccomputing-reviewpublic/Public/Report_final.pdf Science Background of Folding@Home http://folding.stanford.edu/science.htm Statistics Seti@home http://setiathome.ssl.berkeley.edu/totals.html Ian Foster et al., The Anatomy of the Grid, http://www.globus.org/research/papers.html#anatomy Florian Rötzer, Vom World Wide Web zum World Wide Grid http://www.heise.de/tp/deutsch/inhalt/co/4681/1.html [GDI] [GOO] [IBM] [LSS] [RSG] [SBF] [SSH] [TAG ] [WWG] 33 INDEX Grid 3, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 27, 30, 32, 33, 34 GridComputing 2, 11, 30, 33 GridFTP 17 HBM 21, 32 HBMCL 21 HBMDC 21 HBMLM 21 identity mapping 18 LDAP 18 LHC 3, 27, 33 MDS 18, 20, 21, 33 replication 14 Resource Layer 17 SETI 22, 23, 24, 25, 27, 33 single sign-on 18 Supercomputer 2, 3, 5, 6, 8, 26, 28, 33 Top 500 6 VO 15, 17, 18, 33 Work Unit 25, 26, 33 Workstation 3, 6, 7 API 16, 19, 32 CERN 3, 27, 28, 29, 34 Cluster 3, 5, 6, 7, 8, 10, 31, 33 Collective Layer 17 computational grid 13 Computing 11, 12, 13, 29, 33 Connectivity Layer 17 Cray 4, 5, 6 Data Striping 14 Data-Grid 13 delegation 18 DUROC 3, 20, 21, 32 Earth Simulator 4, 9, 25 Fabric Layer 17 Folding 3, 26, 27, 29, 33, 34 GASS 19, 32 Globus 3, 16, 17, 18, 19, 20, 21, 31, 32, 33 Google 3, 10, 33 GRAM 17, 20, 32 34