36
IPv6 Skype GemStone/S Nr. 15 / Dezember 2006 ISSN 1605-475X INFORMATIONEN DES ZENTRALEN INFORMATIKDIENSTES DER TU WIEN

ZIDline 15

Embed Size (px)

DESCRIPTION

Die Zeitschrift des Zentralen Informatikdienstes der TU Wien.

Citation preview

Page 1: ZIDline 15

IPv6

Skype

GemStone/S

Nr. 15 / Dezember 2006

ISSN 1605-475X

INFORMATIONEN DES ZENTRALEN INFORMATIKDIENSTES DER TU WIEN

Page 2: ZIDline 15

Seite 2 – Dezember 2006 – ZIDline 15

Inhalt

IPv6 –im TUNET kein Problem . . . . . . . . . . . . . . . . . . . . . 3

Linux, aber welches? . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Skype pro & contra . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

CMS für die TU-Website . . . . . . . . . . . . . . . . . . . . . . . 12

Finite Elemente und StrömungsdynamikEine Erfolgsgeschichte . . . . . . . . . . . . . . . . . . . . . . 14

GemStone/SEine objektorientierte Datenbank . . . . . . . . . . . . . . 17

Honeynet-Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

IT Security, ein Praxisbericht . . . . . . . . . . . . . . . . . . . . 27

Einrichtung eines Rechnerlabors fürVirtuelle Produktentwicklung. . . . . . . . . . . . . . . . . 30

Personalnachrichten . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Auskünfte, Störungsmeldungen:Service Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Telefonliste, E-Mail-Adressen . . . . . . . . . . . . . . . . . . . 35

Editorial

Das neue Internet Protocol Version 6 (IPv6) ermög-licht eine gewaltige Erweiterung des Adressraums –damit wir auch den Kühlschrank ans Internet anschließenkönnen. An der TU Wien ist schon alles dafür vorbereitet.

Es gibt eine große Anzahl von Linux-Distributionen,sodass sich die Frage stellt: „Linux, aber welches?“ Le-sen Sie dazu einige Gedanken in dieser ZIDline.

Ferner liefern wir einen Beitrag zur Diskussion überkostenloses Telefonieren im Internet (Stichwort: Skype).

Die TU-Website wird zurzeit auf das Content Mana-gement System TYPO3 umgestellt. Der Relaunch wirdnoch im Dezember erfolgen.

Für Berechnungen aus dem Gebiet der Finiten Ele-mente und der Strömungsdynamik gibt es seit vielen Jah-ren zentrale leistungsfähige Rechner an der TU. Derneueste ist der IBM Power5+ Cluster.

Kollege Mikulka stellt GemStone/S und die objekt-orientierte Datenbank vor, die seit Jahren am ZID imEinsatz ist.

Ein Honeynet lockt Angreifer im Netz an. Somit kön-nen Informationen gesammelt werden, ohne dass jemandgeschädigt wird. Lesen Sie den Beitrag über das Honey-net-Projekt auf Seite 24.

Das Rechnerlabor für Virtuelle Produktentwicklungwurde auch mit Campuslizenzen für CAx- und PDM-Software ausgerüstet.

Vielen herzlichen Dank allen Autoren dieses Hefts fürihre Kooperationsbereitschaft, sowie allen, die an derFertigstellung dieser ZIDline mitgearbeitet haben.

Mit den besten Wünschen für ein erfolgreichesJahr 2007.

Irmgard Husinsky

Impressum / Offenlegung gemäß § 25 Mediengesetz:

Herausgeber, Medieninhaber:Zentraler Informatikdienstder Technischen Universität WienISSN 1605-475X

Grundlegende Richtung: Mitteilungen des ZentralenInformatikdienstes der Technischen Universität Wien

Redaktion: Irmgard Husinsky

Adresse: Technische Universität Wien,Wiedner Hauptstraße 8-10, 1040 WienTel.: (01) 58801-42014, 42002Fax: (01) 58801-42099E-Mail: [email protected]/zidline/

Erstellt mit Corel VenturaDruck: Grafisches Zentrum an der TU Wien,1040 Wien, Tel.: (01) 5863316

Die ZIDline im Web:

www.zid.tuwien.ac.at/zidline/

Copyright-Hinweis:Titelbild und Bild auf Seite 3:Copyright 2005 The Regents of the University of CaliforniaAll Rights Reserved.Permission to use, copy, modify and distribute any part of this"CAIDA IPv4 or IPv6 AS-level Internet Graph" for educatio-nal,research and non-profit purposes, without fee, and without awritten agreement is hereby granted, provided that the above co-pyright notice, and this paragraph appear in or near all copies.

Titelbild-Bearbeitung: A. Klauda

Page 3: ZIDline 15

IPv6 –im TUNET kein ProblemJohann Kainrath

Mit IPv4 sind wir mittlerweile bestens vertraut und es ist aus unserem täglichen Leben kaum mehrwegzudenken. Welche IP-Adresse hat Ihr Rechner? Können Sie das Gateway pingen? VerwendenSie einen VPN-Client mit IPSec? Solche oder ähnliche Fragen müssen wir uns häufig stellenlassen. Wird das mit IPv6 anders oder besser sein? Nun, die Entwickler von IPv6 haben aus mehrals 15 Jahren mit IPv4 gelernt und einiges einzubauen versucht, das uns das tägliche Lebenerleichtern wird. Ist es real, dass alle unsere Geräte (vom PDA über Haushaltsgeräte bis zumAuto) in Zukunft via Internet erreichbar sein sollen?

IPv4, Grundlage für das Internet

Basisübertragungsprotokoll im Internet ist derzeit dasInternet Protocol Version 4 (IPv4). Damit man mit ande-ren Netzteilnehmern lokal wie global kommunizierenkann, benötigt jedes Gerät mit Internet-Anschluss eineweltweit eindeutige IP-Adresse. Eine IPv4-Adresse (z. B.128.130.2.3) hat eine Länge von 32 Bit, das ergibt 232

(rund 4,3 Milliarden) mögliche Adressen, von denen al-lerdings aus technologischen Gründen nicht alle für End-geräte verwendet werden können.

Der IPv4-Adressraum wäre schon längst zu klein,gäbe es nicht diverse Hilfsmittel. NAT (Network AddressTranslation, auch bekannt unter dem Namen Masquera-ding) in Zusammenhang mit privaten Adressen ermög-licht mit nur einer IP-Adresse mehreren Endgeräten denZugang zum Internet.

Das rasante Wachstum und die globale Verbreitungdes Internet war zum Zeitpunkt der Konzeptionierungvon IPv4 (1981) noch nicht absehbar. Aus diesen Grün-den wurde bereits 1995 mit der Entwicklung des Inter-net-Protokolls der nächsten Generation (IPv6) begonnen.

Die TU Wien nahm bereits sehr früh am Internet teilund am 18. Juni 1986 wurden der TU Wien die nochheute verwendeten Class B Adressen vom USC/Informa-tion Sciences Institut zugeteilt. Die beiden vom damali-gen regionalen Internet-Registrar zugeteilten IPv4 ClassB Adressblöcke umfassten die Netze 128.130.0.0/16 und128.131.0.0 (je 65.536 Adressen) sowie einige kleinereClass C Netzbereiche mit je 256 Adressen. Bis heutekonnte damit an der TU Wien das Auslangen gefundenwerden, auch wenn es in bestimmten Bereichen des ex-ternen Zugangs (TU-ADSL, VPN, Dialin, WLAN) zu-nehmend eng wird.

Technisch gesehen besteht derzeit kein unmittelbarerGrund, zu IPv6 zu migrieren. NAT wird oft auch als Se-curity Feature verwendet, ist aber dafür nicht wirklichdesigned und geeignet. Viele neue Internet-Applikationenwie VoIP, Peer-to-Peer etc., die sich IPv4 als Transportbedienen, haben damit ein Problem. NAT verhindert eineechte End-zu-End-Konnektivität und damit Transparenz.Verbindungsaufbauten sind quasi nur von innen möglich.

IPv6, das neue Internet-Protokoll

Größerer Adressraum

Der wichtigste und offensichtlichste Vorteil von IPv6(RFC 2460) ist, dass die Adressen länger sind, daher Platzfür einen viel, viel größeren Adressraum ist. Die tatsächli-che Anzahl individueller Adressen, die mit den nun zur

ZIDline 15 – Dezember 2006 – Seite 3

Visualisierung IPv4/IPv6 Adressraum, 2005Cooperative Association for Internet Data Analysis (CAIDA)www.caida.org/analysis/topology/as_core_network/ipv6.xml

Page 4: ZIDline 15

Verfügung stehenden 128 Bit möglich sind, geht weit da-rüber hinaus, was sich jemand, der kein Astronom oderTeilchenphysiker ist, vorstellen kann:

340.282.366.920.938.463.463.374.607.431.768.211.456

Das sind 2128 IP-Adressen. Dagegen wirkt die Anzahlder möglichen IPv4-Adressen (232 ) eher banal:

4.294.967.296

Der 128-Bit Adressraum ist groß genug, um ca. 667Billiarden Adressen pro Quadratmillimeter Erdoberflächezur Verfügung zu stellen (ca. 6,5*1028 Adressen proMensch). Angenommen, der benötigte Adressraum würdesich alle fünf Jahre verdoppeln, so würde der IPv6Adressraum bis zum Jahr 2485 ausreichen.

Die Befürchtung, dass die IPv4-Adressen ausgehen,hat sich noch nicht bewahrheitet, da die Adressvergabenicht mehr exponentiell ansteigt. Bis zur flächendecken-den Verwendung von IPv6 stehen noch ausreichendAdressen zur Verfügung.

Weitere Verbesserungen neben der Ausweitung desAdressraumes sind Mobile IP und vereinfachte Umnum-merierung (Renumbering), Security (IPSec), Quality ofService (QoS) und Multicast „serienmäßig“ sowie Effi-zienz bei Routing und Packet Processing. Die automati-sche Adressvergabe an Endsysteme in Form der StatelessAutoconfiguration stellt einen wesentlichen Vorteil ge-genüber IPv4 dar.

Stateless Autoconfiguration, Plug&Play

Die Zuweisung von IPv6-Adressen an die Arbeits-platzrechner erfolgt standardmäßig mittels Stateless Auto-configuration. Diese Methode wird inzwischen von allengängigen Betriebssystemen unterstützt und hat den Vor-teil, dass die Vergabe sehr einfach und ohne manuelleKonfigurationsänderungen des PCs funktioniert (Plug &Play). Die auf solche Weise vergebenen IPv6-Adressenwerden nach der Norm EUI-64 gebildet und enthaltendaher auch die MAC-Adresse des jeweiligen Rechners.(Der EUI-64-Name der MAC-Adresse bildet bei derIPv6-Autokonfiguration in der Regel die letzten 64 Bitder IPv6-Adresse.)

Bei der stateless Autokonfiguration bekommt einIPv6-System in der Regel vom zuständigen Router voll-automatisch einen Präfix (mithilfe dessen die IP-Adressegebildet wird) und ein Gateway zugewiesen (sowie eini-ge weitere Parameter), nicht aber einen DNS-Server. Bei

der Methode mit DHCPv6 (stateful) kann auch eine Na-meserver IP-Adresse zugewiesen werden. Der spezielleMechanismus DAD (Duplicate Address Detection) ver-hindert die doppelte Vergabe von IPv6-Adressen.

IPv6 Adressen

IPv6-Adressen werden nicht in dezimaler (zum Bei-spiel 128.131.192.13), sondern in hexadezimaler Nota-tion mit Doppelpunkten geschrieben, die die Adresse inacht Blöcke mit einer Länge von jeweils 16 Bit untertei-len. Beispiel einer IPv6-Adresse:

2001:629:400:36a:20c:29ff:fele:5ac8/64

Eine oder mehrere 16-Bit-Gruppen mit dem Wert 0000können durch zwei aufeinander folgende Doppelpunkteersetzt werden. Die resultierende Adresse darf höchstenseinmal zwei aufeinander folgende Doppelpunkte enthal-ten. 2001:0629::fece:7c61 ist gleichbedeutend mit2001:0629:0000:0000:0000:0000:fece:7c61, aber 2001::fece::7c61 ist nicht korrekt, da nicht nachvollzogen wer-den kann, wie viele 16-Bit-Gruppen durch die zwei Dop-pelpunkte jeweils ersetzt wurden. Führende Nullen einer16-Bit-Gruppe dürfen ausgelassen werden, 2001:629::26:c ist gleichbedeutend mit 2001:0629::0026:000c.

Adressbereiche werden bei IPv6 durch Präfixe ange-geben. Dazu wird die Präfixlänge (Anzahl der „gültigen“Bits) als Dezimalzahl mit vorangehendem „/“ an dieIPv6-Adresse angehängt. Subnetze werden als Adressbe-reiche ebenfalls durch den Präfix bestimmt. Die ersten 64Bit der IPv6-Adresse dienen üblicherweise der Netz-adressierung, die letzten 64 Bit werden zur Host-Adres-sierung verwendet. Beispiel: hat ein Netzwerkgerät dieIPv6-Adresse 2001:629:400:36a:20c:29ff:fele:5ac8/64 sostammt es aus dem Subnetz 2001:629:400:36a::/64, dasmit den ersten 64 Bit seiner Adresse identifiziert wird.Analog gehört das Subnetz, 2001:629:400:36a::/64 hie-rarchisch zum Subnetz mit dem kürzeren Präfix 2001:629:400::/48.

Die Global Unicast Address, die bei der End-to-endKommunikation ins Internet verwendet wird, ist somit eineKombination von Präfix und Interface-ID. Neben dieserglobal gültigen Adresse gibt es auch noch eine so genann-te Link-Local Address (beginnend mit fe80::/10), die jedesIPv6-System automatisch generiert. Diese ist nur lokal imVLAN gültig. Datenpakete mit solchen Adressen werdenvom zuständigen Router nicht weiter geleitet.

Seite 4 – Dezember 2006 – ZIDline 15

Interface ID0DB82001

/23 /32 /48 /64

Subnet Prefix

Site Prefix

ISP Prefix

Registry

Address Allocation and Assignment

FF279002 FE 17 FC 0F

FF279000

000000U0 Where U =

U = 1

1 = Unique

0 = Not Unique

FE 17 FC 0F

00 90 27

FF FE

17 FC 0F

00 90 27 17 FC 0F

IPv6 Adressierung, EUI-64

Page 5: ZIDline 15

IPv6 und DNS

Wenn man von IPv6 DNS (Domain Name Service)spricht, gibt es zwei unterschiedliche Aspekte, die be-achtet werden müssen. Einer davon ist, ob der betroffe-ne Nameserver überhaupt Quad-A (AAAA) Recordsunterstützt, d. h. einen Namen in eine IPv6-Adresse auf-lösen kann. Der andere Gesichtspunkt bezieht sich da-rauf, ob der auf dem Klienten installierte Resolver (d. h.das Programmstück, das die Nameserverauflösung fürdie Internet-Applikationen vornimmt) IPv4 oder IPv6als Transport verwendet, wenn es so genannte Lookupsvornimmt. Für den Lookup von IPv6-Records muss derResolver des verwendeten Betriebssystems dies unter-stützen. Das neue VISTA-Betriebssystem von Microsoftunterstützt jede Variante, auch den reinen IPv6-Betrieb,sowohl die Namensauflösung als auch die wirklicheKommunikation (also der Datenaustausch) finden überIPv6 statt.

IPv6 an der TU

Bereits Ende Februar 2001 erfolgten erste Modifika-tionen an der TUNET-Datenbank, um neue IPv6 DNSAttribute und damit IPv6 DNS Resource Records zu un-terstützen. Im Mai 2001 erfolgte die Installation eines ei-genen Routers, um Native IPv6 Connectivity zu bieten.Damit konnten erste Gehversuche unternommen werden.Am 26. 6. 2002 ging schließlich der für den Echtbetriebgeplante Cisco 2621 IPv6 Router in Produktion und rea-lisierte die Anbindung. Bisher haben einige Institute die-se Connectivity im Rahmen von Projekten genutzt.

Im Mai 2006 wurde ein neues erweitertes IPv6-Netzfür die TU Wien (2001:629::/32) bei RIPE registriert (296

IP-Adressen, gemäß RFC 3177). Für die Organisations-einheiten der TU werden Adressbereiche mit einem /48Präfix (2001:629::/48) zur Verfügung gestellt, das sind280 Adressen. In zahlreichen Umbauten und Software-Upgrades wurde das TUNET IPv6 ready gemacht. DankDual-Stack (Koexistenz von IPv4 und IPv6 auf einerNetzwerkschnittstelle) ist es im TUNET möglich, IPv6ohne zusätzliche Hardware (im selben VLAN wie IPv4)zu verwenden.

Wie kommt man zu IPv6-Adressen bzw. einem Adress-bereich im TUNET? Auf Wunsch des jeweiligen Institutskann IPv6 in den Instituts-Subnetzen aktiviert werden(E-Mail an [email protected]). Für Server istes sinnvoll, fixe Adressen zu verwenden, diese werdenvom ZID direkt in das DNS eingetragen (kein EUI-64). Esist darauf zu achten, dass entsprechende Security-Maßnah-

men getroffen werden (Firewall, ...). Bei Arbeitsplatzrech-nern kann der Vorteil der Autokonfiguration ausgenutztwerden (jedoch kein dynamic DNS). Aus Gründen des ho-hen administrativen Aufwands ist vorerst kein manuellerDNS-Eintrag durch den ZID geplant.

Da derzeit das primäre Nameservice über IPv4 läuft,ist die automatische Konfiguration mit IPv6 Nameservernnoch nicht notwendig. An einer Erweiterung des Stan-dards wird gearbeitet, um zusätzliche Services wie NTP,DNS per Autokonfiguration den Clients zur Verfügungzu stellen.

Wie erwähnt, können die Nameserver der TU Wienderzeit wegen davorgeschaltener Firewall-Systeme zwarIPv6-Adressen (AAAA) auflösen, sind aber nicht direktunter IPv6 erreichbar. Bis zu dem Zeitpunkt, wo dieseFirewalls auch IPv6 unterstützen, erfolgt die DNS-Abfra-ge über das IPv4-Protokoll.

Wird IPv6 irgendwann IPv4 ersetzen?

Mittelfristig nein, langfristig eher ja. Die Dual-StackTechnologie ermöglicht den sanften Übergang, wobeiIPv6-only Netze in nächster Zeit durchaus denkbar sind.Es scheint aber kein schlagartiges „Umschalten“ des In-ternets auf IPv6 (an einem so genannten D-Day) geplantzu sein. Tunnellösungen scheinen nur temporäre Lösun-gen auf dem Weg zu einer großflächigen Migration zusein. Eigentlich ist kein aktuelles Betriebssystem für End-systeme bekannt, welches IPv6 nicht unterstützt. Auchdie wichtigsten Applikationen scheinen schon längereZeit IPv6-fähig. Im Bereich der Netzwerkinfrastrukturge-räte (Router und Switches) ist IPv6 nicht wirklich einThema mehr und teilweise bereits in Hardware imple-mentiert (zumindest aber in Software). Im Bereich der Fi-rewall-Hersteller wird jedoch noch heftig an Lösungengearbeitet, die an den Funktionsumfang von IPv4 Securi-ty-Gateways herankommen sollen.

Die Netzwerke sind zwar größtenteils IPv6 ready,aber die Treiber bzw. die Killerapplikationen sind nochnicht vorhanden. Insider und Experten, die internationaleMeetings bereisen, sehen die Zukunft von IPv6 im IP/TVServicebereich im südostasiatischen Raum bzw. in derInternet-Telefonie.

Tatsache ist, dass das Internet über IPv6 immer näherzum Benutzer kommt. War IPv6 bei Windows XP zwarbereits vorhanden, aber nicht sichtbar, so ist es bei vielenUnix-Systemen, bei MacOS X und nun auch bei VISTAbereits aktiv und in den Netzwerkeinstellungen sichtbar.Daher sind alle eingeladen, diese neue Technologie zuerkunden. Beispielsweise ist der Webserver des ZID(www.zid.tuwien.ac.at) ab sofort per IPv6 erreichbar.

Literatur und Links:

Iljitsch van Beijnum: Running IPv6, Apress, 2006,ISBN: 1-59059-527-0

Die Österreichische IPv6 Taskforce: www.austria.ipv6tf.orgIPv6 Dissemination and Exploitation: www.6diss.orgRipe NCC Internet Resources: www.ripe.net/ipv6/European IPv6 Internet Exchanges Backbone: www.euro6ix.orgAlte Projekte: www.6net.org, www.6bone.net

ZIDline 15 – Dezember 2006 – Seite 5

Type Binary Hex

Aggregatable Global Unicast 0010 0001 2001::/16

Link-Local Unicast 1111 1110 10 FE80::/10

Unique Local Unicast 1111 1100 FC00::/81111 1101 FD00::/8

Multicast 1111 1111 FF00::/16

Die IPv6-Adressen folgen einem hierarchischen Adress-und Aggregationsmodell

Page 6: ZIDline 15

Linux, aber welches?Rudolf Ladner, Walter Selos, Paul Torzicky

Welches Linux? Welches Auto? Welche Programmiersprache? Welcher Editor? WelchesWaschmittel? Alle diese Fragen haben eines gemeinsam: Es existiert keine eindeutige Antwortund alle diejenigen, die glauben, eine gefunden zu haben, verteidigen dieselbe eifrig, emotionalund oft irrational.

Ein zeitgemäßes Herangehen an diese Frage, indemman eine Internet-Suchmaschine in Anspruch nimmt,bringt ebenfalls kein befriedigendes Ergebnis. Gibt manunter Google „Welches Linux?“ ein, erhält man eine Flutvon Links, die sich alle mit dem Thema beschäftigen.Schon ein kurzer Blick auf diese Adressen zeigt den viel-schichtigen Charakter der Fragestellung. Ein URL, dereinen gewissen Überblick geben kann ist distrowatch.com. Dort kann man eine kurze Beschreibung zu vielenDistributionen erhalten und wird über aktuelle Neuent-wicklungen informiert. Allein die Tatsache, dass es aufdieser Seite auch eine Top-100 Liste der Linuxdistribu-tionen gibt, zeigt erneut die Problematik der Auswahl deroptimalen Version.

Grundsätzlich sollte man bei der Frage „Welches Li-nux?“ nie den Endzweck aus den Augen verlieren. Unterder Devise „Zum Einschlagen eines Nagels ist die Dis-kussion über die Farbe des Hammerstiels irrelevant“ soll-te man sich nicht zu sehr in Details verlieren. Ist dieFragestellung „Warum Linux?“ beantwortet, ist die Aus-wahl der Distribution oft nur mehr Geschmackssache,denn im Großen und Ganzen kann man sagen, dass jedeDistribution ihre Vor- und Nachteile hat.

Erwähnenswert ist die Tatsache, dass viele Distribu-tionen eine so genannte Live-CD anbieten. Dabei handeltes sich um ein lauffähiges Linux auf CD, das ohne In-stallation auf der Harddisk exekutierbar ist. Damit kannman vorneweg checken, ob die gewählte Distribution dievorhandene Hardware erkennt und damit die grundsätzli-che Verwendbarkeit gegeben ist. Außerdem besteht damitdie Möglichkeit, ohne Installation in einem „Touch andFeel“-Prozess Erfahrungen zu sammeln und nicht zuletztauch zu checken, ob einem die Distribution einfach„sympathisch“ ist oder nicht.

In der Folge werden wir einige der gängigsten Distri-butionen kurz vorstellen. Klarerweise erheben wir dabeikeinerlei Anspruch auf Vollständigkeit und entschuldigenuns bei den Lesern, deren Lieblingsversion von Linuxwir nicht angeführt haben.

Suse, Red Hat, Mandrivawww.suse.com, www.redhat.com, www.mandriva.com

Diese drei Distributionen werden von kommerziellenFirmen angeboten. Sie zeichnen sich durch ausgereifteInstallationsprozeduren aus, die Windows-ähnlich mittelsgrafischer Interfaces mit dem Benutzer kommunizierenund damit klarerweise auch eine oft lästige Bevormun-dung mit sich bringen. Alle drei Distributionen haben beiverschiedenen neueren Hardware-Konfigurationen ge-punktet aber auch versagt. Das Softwaremanagementwird bei allen über den Red Hat Package Manager(RPM) abgewickelt, der ein relativ ausgereiftes und kom-fortables Werkzeug darstellt. Standardfunktionen vonWebserver-Betrieb mit dazugehörigen Datenbanken überMailservice bis hin zu Networkprinting lassen sich pro-blemlos installieren, konfigurieren und betreiben. Auchals Desktop-Systeme sind alle drei Distributionen ohneAufwand konfigurierbar und zufrieden stellend zu betrei-ben. Bei Suse hat der in früheren Versionen oft kritisierteSystemmanager yast bzw. yast2 in den letzten Versionenentscheidende Verbesserungen erfahren.

Nicht unerwähnt bleiben soll die Tatsache, dass vor al-lem für Red Hat und Suse ein breites Angebot kommer-zieller Software in angepassten Paketen vorliegt. Auchspezielle Anwendungen sind oft nur für die kommerziellenDistributionen vorhanden. So gibt es für die Itanium-Pro-zessoren von HP unterstützte Linux-Implementierungennur mit Red Hat (Suse soll auch dazukommen).

Bei kommerziellen Herstellern ist aber mit Unzuläng-lichkeiten zu rechnen, die bei nicht-kommerziellen Distri-butionen unbekannt sind. So sind bei Red Hat fürUpdates kostenpflichtige Keys anzufordern, deren Bereit-stellung immer wieder umgestellt wird, was immer wie-der zu lästigen Verzögerungen führt.

Zusammenfassend kann man sagen, dass es sich umstabile und relativ gut durchstrukturierte Distributionenhandelt, deren Vorteile aber in einem Bereich liegen, des-sen Bedeutung für den universitären Bereich marginal ist.

Seite 6 – Dezember 2006 – ZIDline 15

Page 7: ZIDline 15

Fedora, CentOSfedoraproject.org, www.centos.org

Als nicht kommerzielle Schiene bzw. Ableger vonRed Hat stellen diese Distributionen Entwicklungsliniendar, die viele Eigenschaften von Red Hat mit bessererUnterstützung neuer Hardware verbinden. Ansonsten giltfür diese beiden Distributionen das im vorigen AbschnittGesagte.

Debian GNU/Linuxwww.debian.org

Die nicht-kommerzielle Debian GNU/Linux Distribu-tion wird von einer demokratisch organisierten weltweitenCommunity entwickelt. Dabei wird nach dem Debian-Gesellschaftsvertrag vorgegangen, der unter anderem er-fordert, dass Software, Dokumentation und auch alle an-deren Komponenten der Distribution frei sein müssen.Das Debian-Projekt legt hier striktere Maßstäbe als somanch andere Distribution an. Bei Debian werden auchSicherheitsprobleme öffentlich diskutiert, was im Allge-meinen zu einer raschen Behebung von Sicherheitslückenführt. Eine der Stärken von Debian ist die mächtige Pa-ketverwaltung APT, mit der sehr bequem Software instal-liert werden kann und sich auch ein Upgrade dergesamten Distribution zu einer neueren Release einfachgestaltet. Debian GNU/Linux ist stets in drei Releases er-hältlich:

• stable: (derzeit Debian GNU/Linux 3.1 ‘sarge’)Die stable Distribution ist die aktuelle, offiziell freigege-bene Distribution. Sie ist die Produktionsversion von De-bian. Das gesamte System ist genauestens getestet undaufeinander abgestimmt. Nach einer Release von stablebleiben die Versionen der Softwarepakete konstant bisauf Sicherheits-Updates. Diese sind jedoch im Allgemei-nen rasch verfügbar. Stable empfiehlt sich daher für denEinsatz auf Servern und anderen Produktionssystemen,die lange Zeit ohne größere Eingriffe laufen sollen. Dastable wegen der umfangreichen Testarbeiten aber nurrelativ selten released wird, sind die Softwarepaketemeist nicht sehr aktuell und der Einsatz auf sehr moder-ner Hardware könnte sich wegen mangelnder Hardware-unterstützung problematisch gestalten. Backports (z. B.www.backports.org) können in diesem Fall sehr hilfreichsein, wenn man trotzdem stable einsetzen möchte.

• testing: (derzeit Debian GNU/Linux 4.0 ‘etch’, wird vor-aussichtlich noch Ende 2006 stable werden)Dies ist der Entwicklungszweig für die kommende stableDistribution. Pakete landen hier, nachdem sie eine gewis-se Zeit in unstable getestet wurden und alle Abhängigkei-ten erfüllen. Viele Debian-User setzen testing gerne aufihren Arbeitsplätzen ein, wenn sie mehr Wert auf Aktua-lität (sowohl Softwarepakete, als auch Unterstützungneuerer Hardware) und weniger Wert auf Stabilität le-gen. Diese Vorgangsweise ist ganz besonders beliebt,wenn die aktuelle stable Release alt ist und eine neue Re-lease bevorsteht.

• unstable: (‘sid’)Hier findet aktive Entwicklung statt. In diesem Zweigwerden neue Versionen von Paketen und auch komplett

neue Pakete zuerst aufgenommen. Hier werden sie aufFehler geprüft. Es existieren in unstable zwar die aktuell-sten Paketversionen, aber User müssen immer wieder mitFehlern oder nicht erfüllten Paketabhängigkeiten rech-nen. Unstable ist daher kaum für den produktiven Einsatzgeeignet, sondern für das Testen von Paketen. Unstablewird daher von Debian-Entwicklern eingesetzt. AuchUser, die zu Gunsten von Aktualität Stabilität opfern,sind mit Debian unstable gut bedient.

Ubuntuwww.ubuntu.com

Dieser in den letzten Jahren sehr populär gewordeneDebian-Ableger erfreut sich immer größerer Beliebtheitund ist auch mit allen Nebenlinien, wie Kubuntu(www.kubuntu.org) und Xubuntu (www.xubuntu.org) ander TU weit verbreitet. Ubuntu und die Nebenlinien un-terscheiden sich im Wesentlichen eigentlich nur durchdie voreingestellte grafische Benutzeroberfläche (ubuntu/gnome, kubuntu/KDE bzw. xubuntu/Xfce). Die Herstellerlegten nach eigenen Angaben großes Gewicht auf Benut-zerfreundlichkeit und Sicherheit. Erwähnenswert ist die„Besonderheit“, dass der Root-Account deaktiviert istund administrative Aufgaben mit dem Befehl sudo durch-geführt werden.

Ansonsten gelten im Wesentlichen als Debian-Derivatdie Aussagen über Debian.

Gentoo Linuxwww.gentoo.org

Diese in so genannten Hardcore-Linux-Kreisen belieb-te Metadistribution ist nur der Vollständigkeit halber an-geführt. Es handelt sich dabei um eine in Quellformvorliegende Distribution, die der Benutzer selbst kompi-lieren muss. Detailliertes Wissen über die Hardware undderen Eigenschaften und tief gehendes Know-how überdie inneren Strukturen von Linux sind dabei unbedingteVoraussetzung und daher stellt diese Linuxversion für dieZielgruppe dieses Artikels nur eine ziemlich theoretischeMöglichkeit dar.

Slackwarewww.slackware.com

Slackware ist eine Distribution, die sich durch Ein-fachheit und Stabilität auszeichnet. Sie kommt mit zweiCDs aus (eigentlich mit einer, wenn man keinen KDEbraucht). Da die meisten Konfigurationsaufgaben mittelseines Texteditors zu bewerkstelligen sind, ist sie aller-dings für den typischen Desktop-User weniger geeignet,umso mehr aber für kleinere Server-Anwendungen, eben-so für „embedded“-Anwendungen, wie Firewalls u.dgl.Es lassen sich auch grafische Oberflächen wie X11 mitKDE problemlos installieren, nur sollte man sich keinegrafischen Systemadministrationstools erwarten. Das hataber den Vorteil, dass es bei der Systemadministrationkeine Benutzerbevormundung gibt, die schon so man-chem Systemadministrator (vor allem, wenn er gewohntist, mitzudenken) das Leben schwer gemacht hat. Aller-

ZIDline 15 – Dezember 2006 – Seite 7

Page 8: ZIDline 15

dings muss man, wenn man die Systemdisk als RAID1(gespiegelt) konfigurieren will, alles manuell machen.

Die Hardware-Erkennung („hotplug“) funktioniertsehr gut, und alles in allem ist Slackware eine altbewähr-te (eine der ersten Distributionen, die es gab), stabile undeinfache Distribution, die für geübte Linux/Unix-Admi-nistratoren sehr zu empfehlen ist.

Zwar nicht Linux, aber Open-Source:BSD-Unixwww.bsd.org

BSD-Unixe gibt es (historisch gewachsen) in drei Va-rianten: FreeBSD, OpenBSD und NetBSD.

Um einen schnellen Eindruck über BSD zu gewinnen,habe wir uns FreeBSD 6.0 näher angesehen. Die Aus-wahl erfolgte auf Grund der ausgezeichneten Online-Do-kumentation von FreeBSD, was eine kurze Einarbei-tungszeit erwarten ließ.

Dazu wurde eine Standard-Server-Konfiguration test-weise installiert, also sshd, Mailserver (sendmail, postfix,pop, imap), apache mit php und perl, die MySQL-Daten-bank, ein Samba-Server und nfs.

Außerdem wurde X11 und KDE getestet, sowie deräußerst flexible und leistungsfähige Paketfilter „pf“.

Insgesamt konnte FreeBSD alle Erwartungen erfüllen,die Einarbeitungszeit war tatsächlich sehr kurz und alleDienste liefen über lange Zeit einwandfrei und stabil. DieHardware-Erkennung funktionierte überraschend gut, hierzeigte sich der Eindruck, dass FreeBSD doch sehr „auseinem Guss“ gefertigt ist. Selbst der Test auf einer „em-bedded hardware“, ein Kästchen mit Intel-kompatiblemProzessor und CF-Disk, bei dem man das Betriebssystemin read-only-Bereiche und read-write-Bereiche aufteilenmuss, verlief sehr zufrieden stellend, der Arbeitsaufwandhielt sich in Grenzen. Zusammen mit dem Paketfilter„pf“ macht dies das Betriebssystem sehr interessant fürkleine Firewall-Anwendungen.

Auch X11 und KDE waren leicht zu installieren (aufeinem Notebook, inklusive WLAN, getestet).

Für das Einspielen von Softwarepaketen gibt es zweiMöglichkeiten: Binärpakete, die auch remote eingespieltwerden können (es werden ähnlich wie bei Debian Ab-hängigkeiten aufgelöst) sowie Sourcepakete, deren Make-files auf /usr/ports liegen. Der Rest wird auch von einemRemote-Server kopiert, dann übersetzt und installiert(ähnlich Gentoo-Linux).

Fazit: Für erfahrene Linux/Unix-Administratoren istFreeBSD eine wirklich ernst zu nehmende Alternative zuLinux.

Da das Systemmanagement in erster Linie (ähnlichwie bei Slackware-Linux, das auch wegen seiner Ein-fachheit und Stabilität besticht) mittels Texteditor undKonfigurationsdateien bewerkstelligt wird, ist es aller-dings für eingefleischte Windows-User, die alles übergrafische Management-Tools machen wollen, sicher keinThema. Dafür gibt es nicht die leidige „Benutzerbevor-mundung“, die bei vielen kommerziellen Distributioneneinem Systemadministrator das Leben schwer machenkann. Für Leute mit Linux- bzw. Unix-Erfahrung lässtsich FreeBSD allerdings auch als Desktop-Rechner zu-frieden stellend einsetzen.

Nachteile sind: keine Journal-Filesysteme, UFS mitsoft-Updates ist aber sehr stabil; für Linux-Binaries mussein Emulator installiert werden; keine SYS-V Start-up-scripts (S99xxx, K99xxx u.dgl.), ähnlich wie beiSlackware (macht aber nicht wirklich Probleme).

Ein ähnlicher Test mit OpenBSD, welches besondersinteressant für sicherheitsrelevante Anwendungen seinsoll, ist noch in Planung.

Neben den beschriebenen Distributionen, die alle mehroder minder als Universalbetriebssysteme sowohl für Ser-ver- als auch für Desktop-Anwendungen in Frage kom-men und eine „komplette“ Palette von Softwareproduktenanbieten, sollen hier auch „Sonderdistributionen“ nichtunter den Tisch fallen. Unter anderen sind an dieser Stel-le damnsmalllinux (www.damnsmallinux.org), knoppix(www.knoppix.org) und grml (www.grml.org) zu erwäh-nen. Diese auf Debian basierenden Linux-Versionen bie-ten in Spezialfällen (z. B.: eingeschränkte Hardware-Ressourcen) oder zur Behandlung von Hardwareproble-men (Rescue-Funktion) hochinteressante Möglichkeitenan.

Für alle angeführten Linux-Distributionen existierenMirrors am Goodie Domain Service (GDS) der TU Wien(gd.tuwien.ac.at).

Abschließend ist es notwendig, mit Nachdruck daraufhinzuweisen, dass diese Zusammenstellung von Linux-Versionen nur einen Snapshot darstellt und nicht notwen-digerweise eine lange Gültigkeit haben muss. Außerdemsind naturgemäß persönliche Erfahrungen eingeflossenund, wie bereits erwähnt, wird keinerlei Anspruch aufVollständigkeit erhoben.

Seite 8 – Dezember 2006 – ZIDline 15

QuarkXPressVersion 7 Passport für Windows XP und Mac OS X

Jetzt auch als Campussoftware

Miete: 20 Euro / Quartalweitere Informationen unter sts.tuwien.ac.at/css/

Page 9: ZIDline 15

Skype pro & contraEin Beitrag zur Diskussion über kostenloses Telefonieren im Internet

Andreas Klauda

Was ist Skype?

Skype – eine Software zum Telefonieren vom PC aus– ähnelt auf den ersten Blick sehr einem gewöhnlichenInstant Messenger wie etwa ICQ oder dem MSN-Mes-senger. Dieser Eindruck täuscht allerdings, da hierbei diegrundlegende Funktionsweise, die Skype von allen ande-ren dieser Programme deutlich abhebt, missachtet wird:

Skype basiert auf Peer-to-Peer-Technologie, d. h. ähn-lich wie Filesharing-Netzwerke verbindet sich jeder ein-zelne Client (also jedes einzelne Softphone) nur zuAuthentifizierungszwecken mit einem zentralen Server,alle anderen Verbindungen werden mit anderen Clients(„Peers“) direkt eingegangen, weswegen mit Skype diesesinnvollerweise auch verschlüsselt werden. Das Skype-Netz ist die Summe aller Skype-Clients. Anders als her-kömmliche Telefonnetze wachsen Leistungsfähigkeit undAusfallsicherheit des Skype-Netzes mit der Anzahl derNutzer, da jeder neue Nutzer auch wieder seine eigenenRessourcen einbringt (Rechenleistung, Bandbreite etc.),darum funktioniert es auch perfekt hinter Firewalls undNAT-Routern. Diese Eigenheit bringt nicht nur Vorteilesondern auch „Gefahren“ mit sich (mehr dazu im Ab-schnitt „Richtiger Umgang mit Skype“ und „TechnischeDetails“).

Skype hat vor allem deswegen von sich reden ge-macht, weil es mit Skype relativ häufig möglich ist, auchzwischen Clients, die durch eine Firewall bzw. einNAT-System geschützt sind, VoIP-Verbindungen herzu-stellen, was bei SIP-basiertem1 VoIP oftmals problema-tisch ist. Denn möchte Nutzer A (in Fachjargon: Alice)mit Nutzer B (im Fachjargon: Bob) sprechen und sindbeide (!) durch eine Firewall/NAT geschützt, sind in kei-ner Richtung eingehende Verbindungen möglich. Ist da-gegen nur Alice hinter einer Firewall, könnte in derRegel zumindest Alice bei Bob anrufen (allerdings wirdbei Alice möglicherweise der Ton „geblockt“, d. h. der

Ton funktioniert nur in eine Richtung), aber nicht Bobbei Alice.

Jeder Skype-Client ist mit einem Supernode verbun-den, der letztlich als Hub fungiert. Jeder Skype-Clientkann ein Supernode sein. Supernodes sind also keinezentralen Server, sondern andere Skype-Nutzer.

Wenn ein Anruf getätigt wird, wird über die mit demSupernode (C bzw. Charlie) dauerhaft bestehende TCP-

ZIDline 15 – Dezember 2006 – Seite 9

Skype-Client

1 Für die Internet-Telefonie wird in der Regel ein Protokoll namens SIP verwendet.SIP steht für Session Initiation Protocol, was Sitzungs-Einleitungs-Protokoll bedeutet. Wie dieser Name schon richtig beschreibt, ist es nur zumEinleiten der Sitzung, also des Telefongesprächs verantwortlich, für die Übertragung der Daten an sich kommt ein weiteres Protokoll ins Spiel, wel-ches SDP-Protokoll genannt wird. Diese Abkürzung steht für Session Description Protocol, die Session (wieder ist unser Telefongespräch gemeint)wird hiermit also beschrieben. Folglich werden mit diesem Protokoll die wichtigsten Daten des Gesprächs übermittelt, nicht aber die eigentlichenAudiosignale! Diese werden mit Hilfe des so genannten Realtime Transport Protocol (RTP) übertragen, welches die Daten in Pakete schnürt undper UDP versendet (UDP, da dieses Protokoll im Vergleich zu TCP/IP ein geringeres Datenvolumen-Aufkommen ermöglicht, was bei Telefonge-sprächen nicht unwichtig ist). Achtung: Skype verwendet nicht das SIP-Protokoll, es verwendet ein eigenes Protokoll.

Page 10: ZIDline 15

Verbindung über das Skype Proprietary Call ControlProtocol ein eingehender Anruf signalisiert. Anschlie-ßend verbinden sich Alice und Bob mit dem SupernodeCharlie und können über Charlie eine Gesprächsverbin-dung aufbauen.

Supernodes kann man sich als Vermittlungsrechnervorstellen, die (in der Skype-Terminologie gesprochen)für die Global-Index-Funktion zuständig sind.

Mit Skype ist es möglich, mittels der Technik Voiceover IP mit dem Gegenüber zu telefonieren. Dieses Tele-fonieren ist kostenlos, sofern es zwischen zwei Skype-Nutzern geführt wird.

Allerdings gibt es auch die Möglichkeit, von Skypeauf ein gewöhnliches Telefon (Handy oder Festnetz) an-zurufen.

Das Zauberwort hierfür lautet SkypeOut. Man kauftsich, wie bei einem Prepaid-Handy, ein bestimmtes Kon-tingent von der Skype Homepage, und kann nun denComputer als gewöhnliches Telefon nutzen.

Das Gleiche funktioniert auch umgekehrt. Bei SkypeInerhält man eine in einem bestimmten Land lokalisierteFestnetz-Nummer, welche von einem beliebigen Telefonaus angerufen werden kann, der Anruf erscheint dann imSkype-Fenster.

Eine weitere Funktion des Programms ist es, Anrufein Abwesenheit wie bei einem gewöhnlichen Telefonmittels Anrufbeantworter annehmen zu lassen. SkypeInsowie die Anrufbeantworter-Funktion sind allerdingskostenpflichtig. (Es wird eine monatliche Grundgebühreingehoben. Pro Gespräch fallen weitere Kosten an.)

Neben diesen Funktionen ist es mit Skype auch mög-lich, Audiokonferenzen zu führen, maximal 10 Personenkönnen daran teilnehmen.

Entwickelt wurde Skype von den KaZaa-EntwicklernNiklas Zennström und Janus Friis, das ist wahrscheinlichauch der Grund für die Peer-to-Peer Technologie.

Was ist SkypeOut?

Mit der Basis-Version von Skype ist es nur möglich,mit anderen Skypern zu chatten oder sie anzurufen. Bei-des ist, abgesehen von den Strom- und Internet-Kosten,vollkommen gratis. Eine sinnvolle Erweiterung des Prin-zips ist hier nun SkypeOut.

SkypeOut ermöglicht Anrufe ins Festnetz sowie insMobilfunknetz, weltweit. Ausgenommen sind lediglichService-Rufnummern, natürlich insbesondere solche, diesonst die Telefonrechnung zusätzlich belasten würden(Mehrwert-Rufnummern).

Soweit besteht noch kein Grund, der einen davon ab-bringen könnte, das handelsübliche Telefon für seine Ge-spräche zu verwenden; Das Besondere bei SkypeOut sindjedoch die Kosten: Für Gespräche in die gängigsten Zielewerden nur 2 Cent pro Minute berechnet (inklusive 15%belgischer Mehrwertsteuer, da Skype in Belgien bilan-ziert).

Folgende Länder haben diesen günstigen Tarif: Argen-tinien (Buenos Aires), Australien, Österreich, Belgien,

Kanada, Kanada (Mobiltelefone), Chile, China (Beijing,Guanzhou, Shanghai, Shenzhen), China (Mobiltelefone),Dänemark, Frankreich, Deutschland, Griechenland, HongKong, Hong Kong (Mobiltelefone), Irland, Italien, Mexi-ko (Mexiko City, Monterrey), Die Niederlande, Neusee-land, Norwegen, Polen (Gdansk, Warschau), Portugal,Russland (Moskau, St. Petersburg), Spanien, Schweden,die Schweiz, Taiwan (Taipei), England, die USA (außerAlaska und Hawaii), die USA (Handys) und der Vatikan.

Die Tarife für alle weiteren Länder kann man hier einse-hen: www.skype.com/products/skypeout/rates/all_rates.html.

Bei SkypeOut muss man sein Guthaben, wie bei gän-gigen Prepaid-Handys, im Voraus aufladen. Es gibt 10-Euro-Pakete im Angebot.

Bezahlen kann man per Paypal, Visa, Eurocard/Mas-tercard, Online-Bankbuchung, normaler Banküberwei-sung, Dinersclub Karte oder Moneybookers.

Was ist SkypeIn?

Mit SkypeOut ist es möglich, von Skype aus ins Fest-netz anzurufen, entsprechend kann man mit SkypeIn vomFestnetz auf einen Skype-Account anrufen.

Das funktioniert so: man logt sich auf der Homepageder Skype-Entwickler ein (www.skype.com) und bestelltsich dort eine Rufnummer. Es stehen verschiedene Län-der zur Verfügung, wobei der Bestellvorgang für jedesLand ein anderer ist (manche Länder darf man beispiels-weise nur als Bürger des entsprechenden Landes auswäh-len). Dies kann den Vorteil haben, dass Sie z. B. für Ihreamerikanischen Freunde unter einer amerikanischen Fest-netznummer erreichbar sind, aber hier in Österreich sit-zen. Für den Gesprächspartner ist es eventuell nur einlokales Gespräch und daher um vieles günstiger als direktin Österreich anzurufen. Pro Skype-Account sind bis zu10 SkypeIn-Telefonnummern registrierbar.

Der Preis für eine SkypeIn Nummer beträgt 10 Eurofür 3 Monate, oder 30 Euro für 12 Monate.

Im Besitz einer solchen Rufnummer kann man angeru-fen werden, egal wo man gerade ist. Wo man die Skype-In-Nummer bestellt hat, spielt an sich keine Rolle, nurdass das Telefongespräch des Anrufers so abgerechnetwird, als würde er eine Nummer in dem entsprechendenOrt anrufen.

Richtiger Umgang mit Skype

Supernodes sind für das TUNET natürlich problema-tisch, wegen der hohen Anzahl an Verbindungen unddem Traffic, der entsteht.

Es gibt jedoch einfache Verhaltensregeln im Umgangmit Skype, um dies zu verhindern:

• Skype nicht über Nacht laufen lassen, sondern beenden,wenn der Client nicht mehr benötigt wird.

• Skype nie auf Rechnern (Server) installieren, auf denenkein Benutzer lokal arbeitet.

Um als Supernode zu fungieren (besser gesagt: fun-gieren zu dürfen!), benötigt man eine (sehr) gute Inter-

Seite 10 – Dezember 2006 – ZIDline 15

Page 11: ZIDline 15

net-Anbindung (256 kbit/s oder mehr im Upload), derComputer muss eingehende Verbindungen akzeptieren(Rechner hinter NAT-Routern werden somit niemals Su-pernodes) und Skype muss tage- bzw. wochenlang ohneNeustart laufen. Wenn man also die beiden obigen Ver-haltensregeln beachtet, wird der Skype-Client kein Su-pernode.

Um mit Skype komfortabel zu telefonieren ist ein Head-set sehr zu empfehlen, über Mikrofon und Lautsprecherfunktioniert es zur Not auch, aber dann kann es zu stö-renden Echos bzw. Rückkoppelungen kommen.

Technische Details

Steuerung von NAT/Firewall durch Skype

„Über Supernode eine Gesprächsverbindung aufbauen“ist eine freundliche Umschreibung für den kreativen Um-gang mit den beteiligten NAT- und Firewall-Systemen.Der Supernode kennt auf Grund der zu ihm von NutzerA und Nutzer B bestehenden TCP-Verbindung die Ports,die Nutzer A und Nutzer B jeweils zum Versenden derAudiodaten verwenden.

Die folgende Technik wird UDP hole punching2 ge-nannt und Skype bedient sich ihrer, um trotz Firewall aufbeiden Seiten die Daten direkt von A nach B zu bringen.Der von Nutzer A angerufene Nutzer B schickt zunächstein UDP-Paket an den ihm durch den Supernode mitge-teilten Port, den Nutzer A für ausgehende Verbindungennutzt. Dieses Datenpaket wird auf der Firewall von Nut-zer A blockiert, da es sich um ein unaufgefordert von au-ßen gesendetes Datenpaket handelt. Die Firewall beiNutzer B merkt sich aber, dass über diesen Port ein abge-hendes Paket an Nutzer A gesendet wurde und öffnet da-her diesen Port für ankommende Datenpakete von NutzerA. Dieser sendet nun auf diesen bei Nutzer B geöffnetenPort ein Paket, dort wird es als gültige Antwort auf diezuerst geöffnete Verbindung gewertet und somit sind aufbeiden Firewalls die Ports geöffnet.

Audio-Übertragung

Dieser Mechanismus dient nur zum Aufbauen derVerbindung. Das eigentliche Gespräch läuft dann direktzwischen Nutzer A und Nutzer B (normalerweise perUDP). Diese Vorgehensweise hat zumindest gewisseÄhnlichkeiten mit einem STUN-Protokoll3. Teilweisewird daher vermutet, Skype nutze (u.a.) ein modifiziertesSTUN-Protokoll. Allgemein gesprochen sind die in Sky-pe eingesetzten Methoden wie auch STUN-Technik demUDP hole punching zuzuordnen.

Relaying

Führt die eben beschriebene Methode bei besondersrestriktiven Netzwerkkonstellationen nicht zum Erfolg,geht Skype noch einen Schritt weiter: Das Gespräch wirddann tatsächlich über andere Computer (D) geleitet (re-laying). Idealerweise sollte die eingesetzte Firewall zu-mindest ausgehenden UDP-Traffic zulassen – was häufigder Fall sein wird. D wird vom Supernode in seinerFunktion als Verwalter des bereits erwähnten Global In-dex ausgewählt.

Aber selbst wenn in Ausnahmefällen ausgehenderUDP-Traffic von der Firewall blockiert wird, kann Skypetrotzdem häufig noch funktionieren, indem Skype kom-plett auf TCP umschwenkt. Ausweislich des auf www.skype.com als PDF veröffentlichten „Guide for NetworkAdministrators“ ist Skype nicht auf UDP angewiesen:„Skype will work fine without the ability to transmit UDPmessages“. Die Tonqualität wird freilich von reduzierterQualität sein.

Relaying wird aber nur über Computer stattfinden, dieüber eine relativ große Upload-Bandbreite verfügen undbei denen keine Firewall eingehende TCP/UDP-Verbin-dungen auf dem in Skype festgelegten Port unterbindet.

Das Relaying ist übrigens nicht nur für die Audio-Übertragung, sondern auch für eine eventuelle Dateiüber-tragung (file transfer) nützlich. Zwar ist die Übertra-gungsrate dann sehr niedrig, aber immerhin kommt dieDateiübertragung (anders als mit manch anderen Pro-grammen) überhaupt zustande.

Spiegel-Interview mit dem Skype Manager

vom 30.8.2006Komplettes Interview unter http://www.spiegel.de/netzwelt/technologie/0,1518,434092,00.html

SPIEGEL ONLINE: Administratoren in Unternehmen mö-gen Skype überhaupt nicht. Sie sagen, die Software durchlöche-re die Firewall, wenn man sie installiert.

Jackson: Zuallererst: Skype reißt keine Löcher in Firewalls.Es öffnet keine Ports, es nutzt vielmehr Ports, die schon offensind. Warum machen wir das? Wir wollten, dass die Softwareleicht zu installieren ist und auf Anhieb läuft. Und so sucht sichdie Software nach der Installation selbst den Weg ins Internet.Wenn ein Administrator also eine Lücke in seiner Firewall ge-lassen hat, dann wird Skype diese nutzen.

SPIEGEL ONLINE: Aber daran stören sich Administrato-ren, weil sie keinen Einfluss darauf haben.

Jackson: Richtig. Wir erweitern die Software gerade umFunktionen, mit denen Administratoren Skype besser kontrollie-ren können. Immerhin wird Skype ja inzwischen zu 30 Prozentgeschäftlich genutzt. Die Administratoren können dann denPort einstellen, den das Programm nutzen soll. Andere Ports,die vorher schon offen waren, werden so natürlich nicht ge-schlossen.

ZIDline 15 – Dezember 2006 – Seite 11

2 NAT Traversal über STUN wird auch als UDP hole punching bezeichnet und funktioniert bei den folgenden drei NAT Typen: Full Cone NAT, Re-stricted Cone NAT und Port-Restricted Cone NAT. Andere NAT Umgebungen und auch NAT Traversal zwischen symmetrischen NAT werdennicht unterstützt.

3 STUN (Simple Traversal of UDP Through NATs) - Über das STUN-Protokoll bzw. durch einen STUN-Server können Probleme, die sich durchRouter und Firewalls ergeben, umgangen werden. Ein Router oder eine Firewall verbergen ein internes Netzwerk vor dem Internet, in dem sie inter-ne Netzwerkadressen nach außen umwandeln (NAT = Network Adress Translation). Ein wichtiges Ziel beim STUN ist es zunächst einmal, über-haupt mitzukriegen, welche Art von Firewall vorliegt, dann kann eine Ausweichstrategie gefunden werden. Hierbei wird eine Anfrage an einen öf-fentlichen STUN-Server gestellt („wie lautet meine öffentliche IP-Adresse und Port“), diese Information kann dann in die VoIP-Header anstatt derprivaten Adressen eingebaut werden.

Page 12: ZIDline 15

CMS für die TU-WebsiteWerner F. Sommer, PR und Kommunikation

In meinem letzten Artikel zur TU-Website (ZIDline 5, Juni 2001) hatte ich geschrieben:„Es stünde der Technischen Universität gut zu Gesicht, eine Website auf der Höhe der Zeitzu haben.“ Gut Ding braucht offensichtlich Weile, vor allem an einer Universität, selbstwenn es eine technische ist.

Schwer abzuschätzen, wie viel Millionen ZeichenHTML im letzten Jahrzehnt für die TU-Website manuellgeschrieben oder via Copy & Paste vervielfältigt wurden.Eine Arbeitsweise, die einerseits spezifische Kenntnisseerfordert, andererseits mühselig, ineffizient und fehleran-fällig ist.

Zeitgemäßes Publizieren via CMS

Ergo lag es nah, sich um eine zeitgemäße Lösung die-ses Problems zu kümmern. Das Kürzel dafür lautet CMS,Content Management System. Damit wird es möglich,ohne HTML-Kenntnisse Inhalte schnell und konsistentim Web zu publizieren. Die konkreten Vorteile des Pub-lizierens von Webinhalten via CMS gegenüber der „Do ityourself“-Methode aus meiner Sicht:

• MitarbeiterInnen ohne HTML-Kenntnisse können Inhal-te einpflegen, d. h. die Information kann dort erfasst wer-den, wo auch der entsprechende Sachverstand sitzt undmuss nicht den Umweg über HTML-kundige Spezialis-tInnen gehen. Mittelfristig wird das den Inhalt der Sitequalitativ und quantitativ verbessern.

• Die Rollenverteilung innerhalb des Systems (Adminis-tratorInnen, RedakteurInnen usw.) kann präzise definiertwerden. So werden alle nur damit konfrontiert, womit sieumgehen wollen und können. Im Zuge dieser Rollenauf-teilung können auch komplette Workflows (z. B. Erfas-sung eines Texts, Korrekturschleifen, Freigabe) abge-bildet werden.

• Ein einheitliches Look & Feel wird gewährleistet, weildie „RedakteurInnen“ nur mit den zentral definiertenTemplates (Vorlagen) und Styles (Formatierungen) ar-beiten können.

• Entsprechend kann so auch die „Barrierefreiheit“, alsodie Zugänglichkeit der Inhalte für Menschen mit Behin-derungen und chronischen Erkrankungen, besser ge-währleistet werden.

• Inhalte können in verschiedenster Art und Weise ausge-geben werden (z. B. auch als WML für tragbare Geräte).

• Die Konsistenz der Inhalte steigt. Wird z. B. eine inner-halb des Systems referenzierte Seite gelöscht, ver-schwindet auch der Link darauf.

• Die Redundanz der Inhalte nimmt ab, weil Inhalte nureinmal eingepflegt werden müssen und dann an beliebigvielen Orten eingebunden werden können.

• Inhalte können durch Angabe von Start- und Ende-Da-tum zeitgesteuert publiziert werden. Die Archivierungerfolgt „automatisch“.

• Das Tracking des UserInnenverhaltens (wer ruft wannwelche Inhalte auf?) ist mit CMS weit komfortabler alsohne.

• Diverse „Plug Ins“ erhöhen die Funktionalität der Site fürdie UserInnen.

Open Source CMS TYPO3

Hinsichtlich der Kosten war es möglich, im Rahmendes Programms „Finanzierungsanreize zur Förderung derProfilentwicklung der Universitäten“ die erforderlichenMittel unterzubringen. Hinsichtlich des Systems war klar,dass nur ein Open Source Produkt auch die technischeBetreuung durch den Zentralen Informatikdienst (ZID)gewährleisten würde. Nach Durcharbeiten der Möglich-keiten im vergangenen Herbst fiel die Wahl ziemlichschnell auf TYPO3. Hier ist weltweit eine ausreichendeCommunity am Werk (http://typo3.org/) und es gibt welt-weit über 200.000 TYPO3-Installationen.

Schritt zwei war die Beschaffung entsprechender Ex-pertise von außen. Hier diente die Implementierung ander Universität für Bodenkultur (Boku) als Beispiel: Dasfür die Boku tätige Unternehmen – plan2net (http://www.plan2net.at/) – definierte sich als „Coach“. Dieses Rol-lenverständnis garantiert einerseits den Know-how-Trans-fer von den Profis zur TU-IT, andererseits können –durch die Einbeziehung der TU-Arbeitskraft – auch dieKosten niedrig gehalten werden.

Teamwork

Der Arbeitsauftrag an plan2net und das TU-interneProjektteam lautet, die bestehende Website – mit ledig-lich geringen Einschränkungen bzw. Modifikationen –1:1 mit dem CMS zu hinterlegen. TU-seitig besteht dasTeam aus Bettina Neunteufl (Projektleiterin; Redaktion;

Seite 12 – Dezember 2006 – ZIDline 15

Page 13: ZIDline 15

PR und Kommunikation), Alexander Rajkovats (Softwa-re; ZID), Irmgard Husinsky (Styles; ZID) und MichaelRoth (Systemadministration; ZID). An dieser Stelle einDank an alle Beteiligten (auch über die Genannten hin-aus) für ihren Einsatz und die jeweiligen Vorgesetztenfür deren Verständnis.

Der Zugang zum CMS erfolgt über TUWIS++, d. h.jene MitarbeiterInnen, die via TYPO3 Inhalte publizie-ren, haben auf der persönlichen TUWIS++-Startseite ei-nen Link „CMS TYPO3“. Damit gelangen sie in dasBackend der Applikation.

TYPO3 ist ein mächtiges CMS, dementsprechend istauch die Bedienung nicht immer intuitiv zugänglich. Am10. November wurden KollegInnen aus dem Bereich derehemaligen Zentralen Verwaltung und des ehemaligenAußeninstituts mit der grundlegenden Bedienung vertrautgemacht. Binnen vier Wochen soll die Portation der In-halte aus den aktuellen, statischen HTML-Seiten insCMS erfolgen.

Das Projekt sollte eigentlich schon abgeschlossen sein.Allerdings haben sich die inhaltlichen (strukturellen) Pro-bleme der Website einerseits und die personellen Umstel-lungen in PR und Kommunikation andererseits negativauf den Zeitplan ausgewirkt. Das ehrgeizige Ziel, nochim laufenden Jahr mit der CMS-gestützten Site online zugehen, bleibt aber aufrecht.

So alles gut läuft, werden also vor Jahresende nochwesentliche Teile der TU-Website über TYPO3 publi-ziert. Damit wäre die Site technisch wieder auf der Höheder Zeit angelangt. Fast keine Universitätswebsite wirdheutzutage noch ohne CMS betrieben. Freilich ist einCMS aber nur ein technisches Hilfsmittel. Die Qualitätund Quantität sowie der Nutzwert der Inhalte liegen inder Hand jener, die diese publizieren.

PS: Sobald das System stabil läuft, sind natürlich auchandere Organisationseinheiten eingeladen, ihre Webseitenvia CMS zu betreiben!

ANZEIGE

Das TYPO3 Backend

Page 14: ZIDline 15

Finite Elementeund Strömungsdynamik

Eine Erfolgsgeschichte

Peter Berger

Der Einsatz von (meist) kommerziellen Softwareprodukten aus den Bereichen Finite Elemente undStrömungsdynamik zieht sich wie ein roter Faden durch die Geschichte der verschiedenenComputersysteme an der TU Wien. Der Kauf des neuen IBM-Clustersystems (icp5.zserv) stellt bereitsdie 10. Generation von Computersystemen dar, auf denen diese Softwarepakete zum Einsatzkommen, und zeigt damit den hohen Stellenwert dieser Anwendungen für Forschung und Lehre.

Wie alles begann

Im Jahre 1978 wurden auf dem System CDC CYBER74 die Programmpakete SAP 4 und NONSAP installiert(UC Berkeley, Berechnung von Tragwerken mit Hilfeder FE-Methode) und damit der erste Schritt zur Nutzungdieser Verfahren gesetzt. Diese Pakete (erweitert durchdas Programmpaket STRESS der Uni Laibach) waren biszum Abbau der CDC CYBER-Anlagen im Jahre 1992 inVerwendung. Das FE-Paket ADINA wurde 1988 auf derCDC CYBER 180-860 lizenziert.

Im Jahre 1988 wurden am InteruniversitärenEDV-Zentrum (IEZ) an der TU Wien auf einem SystemNAS AS/9160 (ein Mainframesystem von Hitachi mit ei-ner Vektorunit, 16 MB Hauptspeicher und einer floa-ting-point Leistung von 17 MFlop/s) die FE-PaketeABAQUS und ADINA installiert und für Festigkeitsbe-rechnungen eingesetzt.

Die Installation des ersten Vektorrechners im Jahre1990 (Siemens/Fujitsu VP50-EX mit 128 MB Hauptspei-cher und einer floating-point Leistung von 238 MFlop/s)ermöglichte eine deutliche Ausweitung des Softwareange-bots auf drei FE-Pakete (ABAQUS, ADINA und NISA II)und ein Softwarepaket für Strömungsdynamik (FIDAP).

Nach der Auflösung des IEZ und der Gründung desneuen EDV-Zentrums der TU Wien im Jahre 1991 ende-te auch die Ära der Mainframes, das Fachbereichsrech-ner-Konzept führte zur Installation der Systeme ConvexC3220 und des „Fachbereichrechners Maschinenbau“(IBM RS 6000-950 und 550). Dadurch konnten zu denbestehenden weitere FECFD-Pakete wie ANSYS, EMAS,NASTRAN, MARC lizenziert werden.

Die Ausweitung des Kooperationsvertrags zwischender TU Wien und der Firma Siemens ermöglichte imJahre 1992 den Austausch der VP50 auf einen Vektorrech-ner Siemens/Fujitsu S100 mit der ca. 3,5-fachen Leistung.Auf diesem System kam das Strömungspaket FIRE zumEinsatz, das vor allem in der Automobilindustrie (Moto-renbau) verwendet wurde.

Der erste Applikationsserver FECFDIm Jahre 1995 ging die Ära der Fachbereichsrechner

zu Ende und wurde durch das „Applikationsserver-Kon-zept“ abgelöst. Kernaussagen dieses EDV-Konzepts, dasin den wesentlichen Zügen auch heute noch gültig ist(und sich bestens bewährt hat), sind:

• für bestimmte Applikationen optimale Hardware- undSystemarchitekturen zur Verfügung zu stellen,

• deutlich höhere Performance (Memory und Massenspei-cher) als Institutssysteme,

• kostengünstige Lizenzierung teurer kommerzieller Soft-warepakete.

Einer der ersten Applikationsserver, der entsprechenddiesem Konzept angekauft wurde, war 1995 der „Applika-tionsserver für Finite Elemente und Strömungsdynamik“.Dieses System der Firma Digital (DEC 8200 mit 2 CPUsund 2 GB Memory) wurde schrittweise ausgebaut und er-weitert, sodass im Jahre 1998 der FECFD-Cluster beste-hend aus zwei Maschinen (DEC 8200 und DEC 8400 mitinsgesamt 12 CPUs und 16 GB Hauptspeicher) und denSoftware-Paketen ABAQUS, ANSYS, MARC, EMAS,FLUENT, FIDAP und CFX zur Verfügung stand.

Im Jahre 2002 wurde als Nachfolgesystem ein Cluster-system der Firma HP/Compaq gekauft (HP SC45-Clus-ter), das über 10 Knoten (ES 45 mit je 4 CPUs und

Seite 14 – Dezember 2006 – ZIDline 15

Page 15: ZIDline 15

16 GB Memory), ein gemeinsames Disk-Storage (2,6TB) und eine schnelle Kopplung (Quadrics, 360 MBy-te/s) verfügte. Dieses Clustersystem mit 40 CPUs unterdem Betriebssystem TRU64 UNIX verfügt auch bis zumheutigen Tag über gute Leistungswerte sowohl in Bezugauf die Rechenleistung (DEC-alpha CPUs mit 1 GHz) alsauch auf die Clustersoftware (gemeinsames Filesystem,Batch- und Queue-Management, schnelle Kopplung, gu-tes Clustermanagement) und erfüllt heute vor allem imBereich der Lehre wertvolle Dienste.

Das Diagramm zeigt die Entwicklung der CPU-Leis-tung der Systeme vom Jahr 1993 bis 2006 am Beispieldes ABAQUS-Standardbenchmarks STD-T4 (gemesseneLaufzeiten auf den installierten Systemen in Sekunden).

Der neue ZID-Cluster 2006 – FECFD

Im Frühjahr des vergangenen Jahres wurde mit derPlanung einer Ersatzanschaffung für den über 3 Jahre al-ten Applikationsserver für Finite Elemente und Strö-mungsdynamik (SC45-Cluster) begonnen. Ausschlag-gebend für diese Neuplanung war, dass für einen Groß-teil der installierten kommerziellen FECFD-Softwarepa-kete in naher Zukunft keine Updates und neue Versionenfür das Betriebssystem TRU64 UNIX zur Verfügungstehen werden.

Im Jänner 2006 wurde eine EU-weite öffentliche Aus-schreibung durchgeführt (maximaler Finanzrahmen €380.000,- für die Rechnerhardware, für das Gesamtpro-jekt standen in Summe € 450.000,- zur Verfügung).

Die Veröffentlichung dieser Ausschreibung erfolgte am13. Jänner 2006. Nach einer intensiven Prüfung der Ange-bote wurde am 5. April 2006 der Firma EDV-Design In-formationstechnologie Ges.m.b.H. der Zuschlag für einClustersystem von IBM (POWER5+ Prozessoren) erteilt.

Die Cluster- und Hardwarearchitektur

Die Clusterknoten (Zugangsknoten und Compute-No-des, Fileserver, Backup-Library und alle Netzwerkkom-ponenten) sind in 6 Schränken (19 Zoll) installiert. Alle54 Compute-Nodes sind 4U-hohe Systeme mit 2 Prozes-soren IBM POWER5+ (Dual-Core Module) mit 1,9 GHzTaktrate und 16 GB Hauptspeicher, der Zugangsknoten(fat node) verfügt über 8 CPUs IBM POWER5+ (2xQuad-Core Module) mit 1,5 GHz und 32 GB Memory.Das 2-Core p-520 System Planar enthält ein Dual-CoreModule (DCM) und das lokale Memory-Subsystem.

Systemname: icp5.zserv.tuwien.ac.at

Das DCM enthält die beiden Prozessorkerne (1,9GHz), den gemeinsamen L2 Cache (1,9 MB) und dieVerbindung zum L3 Cache (36 MB, 30,4 GB/s Bandbrei-te). Der Chip ist in 90 nm CMOS-Technologie gefertigtund enthält Schnittstellen-Bausteine wie einen Memory-Controller, einen horizontalen und vertikalen Fabric Busfür den SMP-Support sowie eine GX+ Schnittstelle fürI/O-Devices.

Das Memory-Subsystem besteht aus 8 Memory-Bän-ken (DDR2), die über 2 SMI-II Controller mit einerBandbreite von 21 GB/s mit dem DCM verbunden sind.

Die I/O-Schnittstelle ist der GX+ Controller, der übereinen Enhanced I/O-Controller einen GX+ Port und 4xPCI-X Buses mit einer Bandbreite von 5 GB/s ansteuert.An diesem GX+ Port ist der InfiniBand Host Bus Adap-ter (HBA) angeschlossen.

Für die schnelle Kopplung der Clusterknoten mit MPIwird 4x InfiniBand (10 Gbit/s full duplex) von der FirmaTOPSPIN (Cisco) eingesetzt. Für den interaktiven Zugangund den Filetransfer steht ein Gbit-LAN zur Verfügung.

Drei Lizenzserver (ausfallssicher in drei Gebäudenaufgebaut) verteilen die erforderlichen Applikations-Soft-ware-Lizenzen auf die Clusterknoten.

ZIDline 15 – Dezember 2006 – Seite 15

Strömungslinien im Sekundärkreis eines Hämodialyse-Moduls(berechnet mit FLUENT 5.1).

Aus: M. Harasek, Das CDF-Paket FLUENT,ZIDline 2, Dezember 1999.

Laufzeiten für den ABAQUS STD-T4 Benchmark (single CPU)

Wandfilmausdehnung im Einlasstrakt (Anwendung FIRE)Aus: M. Klepatsch: Simulation der Mehrphasenströmung im Motor,

Projekte an den zentralen Applikationsservern,Berichte 1997, EDV-Zentrum, TU Wien

Page 16: ZIDline 15

Installation, Abnahme und Benutzer-Testbetrieb

Der geplante Installationstermin im Mai 2006 konnteleider nicht eingehalten werden, da knapp vor der Auslie-ferung der Systeme eine technische Änderung der Konfi-guration von IBM durchgeführt wurde (InfiniBand-Kartenicht am PCI-X sondern am GX+ Bus). Dadurch unddurch eine sehr späte Lieferung des InfiniBand-Switcheswurde die Installation erst Ende August 2006 abge-schlossen.

Nach der erfolgreichen Abnahme (Leistungstest und4-wöchiger Dauertest) wurde der Testbetrieb gestartet,die erforderlichen Anpassungen der Software-Paketedurchgeführt und das Queueing-System an die Betriebs-erfordernisse angepasst.

Leider traten nach einigen Wochen Software-Proble-me im Bereich InfiniBand auf, die nur durch die Ein-schaltung des IBM-Labors in Austin gelöst werdenkonnten. Das System läuft seit einigen Wochen (unterHochlast) ohne Probleme.

Der Benutzer-Testbetrieb wird immer mehr ausgewei-tet. Wir gehen davon aus, dass zum Jahreswechsel dieMigration aller Benutzer des SC-Clusters auf das neueSystem abgeschlossen sein wird.

Die Systembetreuung wird von Josef Beiglböck(42071, [email protected]) und Dietmar Sonn-leitner (42087, [email protected]) durchge-führt.

Weitere Informationen im Web:http://www.zserv.tuwien.ac.at/icp5/

Seite 16 – Dezember 2006 – ZIDline 15

Cluster-Konfiguration

Core1.5 – 1.9 GHz

Core1.5 – 1.9 GHz

Core 1.5 – 1.9 GHz

Core 1.5 – 1.9 GHz

1.9 MB L2L3Intf

MemCntrl

GX+Intf

SMPFabric

Bus

L3Bus

MemBus

GX+Bus

VerticalFabricBus

p

Enhanced Distributed Switch(Fabric Bus Controller)

POWER5+ Chip

POWER5core or CPU

1.9 GHz

POWER5core or CPU

1.9 GHz

1.9 MB Shared L2 cache

L3Ctrl

MemCtrl

36 MBL3 cache

DCM

2x16B@950 MHz

SM

I-IIS

MI-II

1056 MHz2 x 8 B for read2 x 2 B for write

DIMM

DIMM

DIMM

DIMM

DIMM

DIMM

DIMM

DIMM

2 x 8 B@528 MHz

GX+Ctrl

Enhanced distributed switch

GX+BusPOWER5

core or CPU1.9 GHz

POWER5core or CPU

1.9 GHz

POWER5core or CPU

1.9 GHz

POWER5core or CPU

1.9 GHz

1.9 MB Shared L2 cache

L3Ctrl

MemCtrl

36 MBL3 cache

DCM

2x16B@950 MHz

SM

I-IIS

MI-II

1056 MHz2 x 8 B for read2 x 2 B for write

DIMM

DIMM

DIMM

DIMM

DIMM

DIMM

DIMM

DIMM

2 x 8 B@528 MHz

GX+Ctrl

Enhanced distributed switch

GX+Bus

Das p5-520 POWER5+ DCM

Page 17: ZIDline 15

GemStone/SEine objektorientierte DatenbankThomas Mikulka

2002 kam es an der TU Wien zu einer grundlegenden Umstellung des „White Pages Service“ [1].Neu am geänderten Konzept war u.a. die Verwendung einer ausgelagerten ZID Personendaten-bank, die die Quelle aller „White Pages“-Einträge sein sollte. Schon wieder ein neuer Daten-bank-Server? Nein, im Gegenteil! Hinter dem Begriff „Personendatenbank“ steckt tatsächlich eineweitere Teilfunktion einer erfolgreichen und höchst ungewöhnlichen Datenbank. Ein Überblick.

Basistechnologien und Funktionsprinzip

Die ZID Personendatenbank [2] ist eine Teilfunktioneiner Datenbank, die sich bereits seit 1993 an der TUWien im Einsatz befindet. Sie ist, im Gegensatz zu denheute gängigen, relationalen Systemen (z. B. Oracle,MySQL oder PostgreSQL etc.), eine rein objektorientier-te Datenbank. Hersteller ist die Firma GemStone Systems[3] mit Sitz in Beaverton, Oregon, der offizielle Produkt-name lautet „GemStone/S Object Server“. Das beigefügte„S“ nach „GemStone“ deutet bereits auf eine ihrer mar-kantesten Besonderheiten hin: die Datenbank selbst, so-wie alle TU-spezifischen Applikationen, sind – bis aufwenige Ausnahmen – in Smalltalk geschrieben worden.Was sind nun die Basistechnologien dieser Datenbank?

Objektorientierung

Der wesentliche Unterschied zwischen einer GemSto-ne/S und einer relationalen Datenbank ist: in GemStone/Sist jeder Dateneintrag ein Objekt und nicht zwangsläufigein Tabelleneintrag, daher der Name „Object Server“.Mehr noch: alles, was sich begrifflich ansprechen lässt,ist in Smalltalk/GemStone ein Objekt. Ein Objekt kannvon einfacher Natur, z. B. eine Zahl, eine Zeichenketteoder ein spezieller Datenspeicher sein, etwa eine Liste,eine (math.) Menge oder auch eine Tabelle. Objekte kön-nen andererseits auch Repräsentationen von Lehrperso-nen, Studenten, TU-Institutionen oder sogar vonArbeitsabläufen sein.

Instanzen, Instanzvariablen, Methoden

Unabhängig von seiner Natur hat jedes Objekt (wie imrealen Leben auch) Eigenschaften und Fähigkeiten. Eigen-schaften charakterisieren ein Objekt näher, sie machen esindividuell, Eigenschaften werden in so genannten Instanz-variablen festgehalten. Ein kurzes Beispiel: Objekte, dieInstitute darstellen, gehören der Kategorie oder Klasse

„Organisation“ an. Ein konkretes Objekt der Klasse„Organisation“ – oft auch als Instanz bezeichnet – kannbeispielsweise nach seiner genauen Institutsbezeichnung,nach seinem Vorstand, sowie nach seinen Mitarbeitern ge-fragt werden. Diese und ähnliche Angaben sind individu-elle „Eigenschaften“ eines Institutes. Und Objekte habenFähigkeiten, abgebildet als Methoden, die von anderenObjekten durch Senden von „messages“ aufgerufen bzw.genutzt werden können.

Kapselung

Jedes Smalltalk/GemStone Objekt stellt, mitsamt sei-nen Instanzvariablen und Methoden, eine Art Kapsel dar.Der Kapselinhalt ist in der Regel „Privatsache“: Varia-blen sind von außen entweder überhaupt nicht oder nurüber bestimmte, veröffentlichte Methoden manipulierbar,und auch die tatsächliche Implementierung einer Metho-de bleibt i.d.R. vor der Außenwelt verborgen. Kurz: umDienstleistungen eines Objektes nutzen können, muss deranfragende „Kunde“ (z. B. ein anderes Objekt) lediglichdie Nachrichten („messages“) des „Dienstleisters“ ken-nen, nicht aber interne Details über die tatsächliche Aus-führung.

Welche Vorteile hat das „Kapsel“-Prinzip? Man kann,wegen der engen logischen Verbindung zwischen Nutz-daten und den darauf anwendbaren Funktionen leichterdafür sorgen, dass ein Objekt zu jeder Zeit richtige undvollständige Daten enthält. Solche Mechanismen findetman in der GemStone/S Datenbank z. B. immer dort, woneue Objekte erzeugt werden. Ein Objekt beispielweise,welches einen Studenten/eine Studentin repräsentierensoll, hat neben Vor- und Zuname typischerweise aucheine Matrikelnummer und eine Studienkennzahl. Inkor-rekt wäre, wenn in der Datenbank plötzlich studentischeEinträge ohne Matrikelnummer auftauchten. Durch ge-schicktes Design kann man Methoden schreiben, diegleichzeitig alle persönlichen Studentendaten setzen und

ZIDline 15 – Dezember 2006 – Seite 17

Page 18: ZIDline 15

diese auf Plausibilität hin überprüfen. Ein Anwenderbraucht sich auch hier wieder keine Gedanken über dieDatenkonsistenz machen.

Ein weiterer Vorteil betrifft laufende Ver- bzw. Aus-besserungsarbeiten. Methoden werden von außen durch„messages“ aufgerufen, und liefern i.d.R. definierte Ergeb-nisse. Bleibt die Nachricht und die Art des erwartbarenResultats gleich, kann dahinter jede erdenkliche Prozedurablaufen. Findet ein Programmierer/eine Programmiererinbessere, z. B. schnellere Algorithmen, so kann er/sie diesewährend des Betriebs ändern, er/sie lässt ja die Schnittstel-le nach außen unverändert. Üblicherweise erfüllen Metho-den in Smalltalk immer nur relativ kleine Teilaufgaben,der Code bleibt oft überschaubar, sodass sich dadurchmanchmal Software-Fehler recht rasch beheben lassen.

Vererbung

Vererbung ist weiteres, wichtiges (manchmal auchüberschätztes) Merkmal objektorientierter Software-Sys-teme. Gleichartige Objekte werden in Klassen eingeteilt.Jede Klasse definiert Instanzvariablen und die verfügba-ren Methoden, das Verhaltensrepertoire einer Klasse vonObjekten sozusagen. Normalerweise müssen Methodennach und nach ausprogrammiert werden, objektorientierteProgrammiersprachen bieten darüber hinaus an, bereitsfertige und anwendbare Methoden zu erben und damitwieder zu verwenden.

Vererbung basiert auf Aussagen wie: „Eine SmallInte-ger ist ein Spezialfall einer Integer Zahl, eine Integer Zahlist ein Spezialfall einer Zahl, eine Zahl ist eine Art Grö-ßenordnung und eine Größenordnung ist eine Art Objekt.“Dieser Zusammenhang kann sehr gut auch graphisch, alshierarchische Struktur innerhalb einer Smalltalk/GemStoneKlassenbibliothek dargestellt werden:

Man sagt auch: die Klasse „SmallInteger“ ist eine Un-terklasse (engl. subclass) von „Integer“. Oder umgekehrt:die Klasse „Integer“ ist die Ober- oder Superklasse (engl.superclass) von „SmallInteger“.

Eine SmallInteger Zahl kennt nicht nur eigene Metho-den und Instanzvariablen, sondern auch die ihrer direktenSuperklasse, die der Klasse Number usw., d. h. sie erbtFunktionalität. Der größte Vorteil des Vererbungsprinzipsist: eine funktionierende Methode kann auf diese Weiseweiter bzw. wieder verwendet werden, was den Ent-wicklungsaufwand beträchtlich reduzieren kann.

Polymorphismus

Was ist Polymorphismus im Bereich Programmie-rung? Das deutsche Wikipedia-Portal liefert folgende Be-griffserklärung [4]: „Polymorphie (griechisch, ‘Vielge-staltigkeit’) ist ein Konzept der Programmierung, das eserlaubt, einem Wert oder einem Namen (z. B. einer Va-riablen) mehrere Datentypen zuzuordnen.“ Innerhalb derGemStone/S Datenbank findet man gelegentlich mehrere,gleichnamige Methodenaufrufe. Ein Beispiel:

20 + 4. 24

In Smalltalk ist „+“ eine Nachricht und das „+“-Zeichenist das Symbol für eine Methode, die 20 und 4 addiert undanschließend das Resultat ausgibt. Die Addition lässt sichalso bei Datenobjekten der Kategorie „SmallInteger“ an-wenden. Bemerkenswerterweise wird dieses Nachrichten-symbol auch noch an anderer Stelle verwendet.

Beispiel 1:

‘a’ class. String‘a’ + ‘b’. ab‘a’ class whichClassIncludesSelector: ‘+’.SequenceableCollection

Vorhin sind zwei ganze Zahlen addiert worden, in Bei-spiel 1 sind die Summanden aber Zeichenketten, die jeweilsein Zeichen lang sind. In Zeile 2 sieht man, dass man mitHilfe der Nachricht „+“ sogar „Nicht-Zahlen“ verknüpfenkann. Aber die Addition zweier Zahlen und das Aneinan-derreihen zweier Zeichenketten sind doch unterschiedlicheVorgänge, oder? Von außen betrachtet sieht es jedenfalls soaus, als würde die Methode hinter dem „+“ Symbol ihreFunktion, ihr „Aussehen“ den Summanden anpassen. Kurz:die Methode wirkt sozusagen „polymorph“.

Methoden verändern auch noch an anderen Stellen ihrAussehen: im Abschnitt „Vererbung“ ist erwähnt worden,dass Objektsklassen in hierarchischen Beziehungen ste-hen und dass sog. „subclasses“ meist Spezialfälle einer„superclass“ sind. Um es mit einem alltäglichen Beispielzu illustrieren: Hunde und Katzen sind beliebte Haustie-re. Haustiere können Laute von sich geben, der „Spezial-fall“ Hund bellt, während eine Katze z. B. schnurrenkann. In objektorientierter Hinsicht muss die Methode„Laut geben“ also von den Unterklassen „Hund“ bzw.„Katze“ weiter spezialisiert werden. Sofern die Oberklas-se „Haustier“ schon eine Methode „Laut geben“ kenntund vererben kann, wird diese in der Unterklasse – z. B.von einer Katze – u.U. sogar vollständig neu geschrie-ben. Im Fachjargon nennt man den Vorgang des Neu-schreibens einer Methode „overriding“ [5].

Smalltalk

Smalltalk ist die Programmier- bzw. Abfragesprachedieser Datenbank, Smalltalk zählt sicherlich zu den „Ur-sprachen” der Informatik. Inspiriert von Simula-, LISP-und Logo-Konzepten entstand zwischen 1971 und 1975,unter der Leitung von Alan Kay et al., bei Xerox PARC,erstmals eine vollständige Smalltalk-Entwicklungsumge-bung, die schon damals ein Windowing-System anbot.Jahre später schrieb Adele Goldberg ihre legendäreSmalltalk-Bibel „Smalltalk-80, The Interactive Program-ming Environment“.

Seite 18 – Dezember 2006 – ZIDline 15

Object

Magnitude(Größenordnung)

Time DateAbstract Characters(1- und 2-Byte Chars)

Number

IntegerBinary Float

Fraction

LargePositiveInt

LargeNegativeInt

SmallInteger

Abbildung 1 - Klassenhierarchien

Page 19: ZIDline 15

Semantik und Syntax

Die Smalltalk Sprachsyntax [6] ist im Grunde leichterlernbar. Die Sprache ist „case sensitive“, es wird zwi-schen Groß- und Kleinbuchstaben unterschieden. JedeProgrammzeile endet mit einem Punkt, jeder Aufruf folgteinem gleichbleibenden Schema:Objekt Methode [Parameter].

Einem Objekt können auch mehrere „Aufträge“ hinter-einander, getrennt durch Strichpunkte, geschickt werden:Objekt Methode1 [Parameter1];

Methode2 [Parameter2];Methode3 [Parameter3].

Auch „geschachtelte“ Aufrufe sind möglich:Objekt1 Methode1 ( Objekt2 Methode2 ).

Der Klammerausdruck erzeugt als Resultat ein Objekt,welches seinerseits zu einem Parameter für Methode„Methode1“ wird.

Wichtig ist, dass man das Prinzip „Objektorientierung“und damit verbundene Ideen, wie Klassenhierarchien, eini-germaßen verstanden hat. Der markanteste Unterschiedzu klassischen, prozeduralen Sprachen wie C besteht da-rin, dass man in Smalltalk geradezu gezwungen wird,sich vor Verfassen einer Codezeile Gedanken zur zuge-hörigen Klasse zu machen. Oder anders gesagt: in Small-talk benötigt man Klassen, auch um überhaupt Methodenprogrammieren zu können. Smalltalk ist damit eine striktobjektorientierte Sprache.

Ein GemStone/S Entwickler muss vor allem wissen,wie neue Klassen deklariert werden. Beispiel 2 zeigt dasErstellen einer neuen Klasse namens „Tier“ innerhalb ei-ner GemStone/S Datenbank.

Beispiel 2:

Object subclass: ‘Tier’instVarNames: #( gattung art nahrung lebensraum )inDictionary: UserGlobals.

Die Klasse „Tier“ wird erzeugt, indem man der „obers-ten“ Oberklasse „Object“ den Auftrag gibt, eine neue Un-terklasse zu bilden (Schlüsselwort „subclass:“, gefolgt vomgewünschten Klassennamen), diese mit entsprechendenInstanzvariablen auszustatten (Schlüsselwort „instVarNa-mes:“, gefolgt von einem Feld, bestehend aus Variablen-namen), und eine Referenz zu dieser neuen Klasse in einerArt „Wörterbuch“ einzutragen, um sie dauerhaft imGemStone/S Speicher („repository“) aufbewahren zu kön-nen. Erst jetzt werden Methoden formulierbar, die das„Tier“ zu einem aktiven Objekt werden lassen.

Kann man in diesem – zugegeben trivialen – Beispielauch Vererbung zeigen? Ja, man kann. In Beispiel 3 wirdeine weitere Unterklasse von „Tier“ vereinbart:

Beispiel 3:

Tier subclass: ‘Haustier’instVarNames: #( name besitzer adresse )inDictionary: UserGlobals.

Haustier compileAccessingMethodsFor: #( namebesitzer adresse ).

Ein Haustier ist offenbar ein Spezialfall von einemTier. Warum? Weil es, im Gegensatz zu einem frei le-benden, meist einen Namen trägt, einem Besitzer/einerBesitzerin „gehört“ und sich sogar eine Adresse angebenlässt, wo es „wohnt“. Sobald die Klasse „Haustier“ exis-

tiert, kann man konkrete Objekte erzeugen, wie inBeispiel 4.

Beispiel 4:

| einHaustier |einHaustier := Haustier new.

Nach seiner generellen Vereinbarung in Zeile 1, wirddie Variable „einHaustier“ erst in Zeile 2 zu einem Ob-jekt der Klasse „Haustier“. Auch hier unterscheidet sichSmalltalk wieder von anderen Programmiersprachen, diean ähnlicher Stelle einen Variablennamen samt Typen-vereinbarung verlangt hätten (Stichwort „late binding“).

Und wo merkt man Vererbungsmechanismen? Schonin Zeile 2: hier wird der Variablen „einHaustier“ durchdas Symbol „:=“ ein Wert, genauer ein Objekt zugewie-sen. Das Objekt gehört offenbar der Klasse „Haustier“ anund kann mit der Nachricht „new“ erzeugt werden. Es isteine Methode, die vorhin (in Beispiel 3) nicht extra ange-geben worden ist, die dahinterliegende Methode „new“muss also geerbt worden sein.

Mit dem Objekt „einHaustier“ kann bereits „gearbei-tet“ werden: man kann z. B. dessen Eigenschaften festle-gen: Frau Rosalinde soll die Besitzerin einer Katze na-mens Minka sein und – falls Minka entlaufen sein sollte– soll man feststellen können, wo die Katze eigentlichzuhause ist. In Beispiel 3 sind „accessing methods“ er-stellt worden, die nun genutzt werden können, z. B. dieMethoden „name:“, „besitzer:“ usw.

Beispiel 5:

einHaustier name: ‘Minka’;besitzer: ‘Rosalinde’;adresse: ‘Gartengasse 12’;art: ‘Felis domestica’;gattung: ‘Felis’.

Beispiel 6:

einHaustier art. Felis domesticaeinHaustier name. Minka

In Beispiel 5 werden Eigenschaften des konkretenHaustiers festgelegt und in Beispiel 6 abgefragt. Ab jetztkönnte man die Klassen „Tier“ und „Haustier“ weiter„modellieren“ und beispielsweise mit weiteren Methodenausstatten, die deren Verhalten festlegen.

Was fällt noch auf? Obwohl nicht eigens definiert,versteht das Haustier-Objekt auch die Abfrage „art“, einweiteres Beispiel für Vererbung. Methodennamen habenimperativen Charakter, sie muten wie Befehle an. Durchgeschickte Namenswahl kann man oft den Sinn undZweck einer Methode erraten, ohne den Quellcode lesenzu müssen.

Smalltalk-Entwicklungsumgebungen

Wie sieht eine typische Smalltalk-IDE aus? Um zu ei-ner VisualWorks IDE zu gelangen, wird eine VirtuelleMaschine („visual“) gestartet. Als Parameter wird demAufruf der Name eines sog. „Images“ („workingWith-Gemstone.im“) mitgegeben, in dem sich die kompletteSmalltalk-Klassenbibliothek sowie selbst geschriebeneAnwendungen befinden können:mi@gandalf:~> $VISUALWORKS/bin/linux86/visual$HOME/workingWithGemstone.im

Zunächst wird nach diesem Aufruf das sog. Visual-Works-„Transcript“-Window geöffnet. Es ist jenes Fens-

ZIDline 15 – Dezember 2006 – Seite 19

Page 20: ZIDline 15

ter, über welches in erster Linie Smalltalk-System-meldungen oder Ergebnisse ausgegeben werden. Das weit-aus wichtigere Werkzeug ist aber der sog. Smalltalk-Klas-sen-Browser, mit dem man Zugriff auf alle vorhandenenKlassendefinitionen und deren Methoden erhält:

Im Grunde ist der „GemStone/S Object Server“ nichtsanderes als eine Smalltalk-IDE, ergänzt mit „Multiu-ser“-Funktionen.

GemStone/S an der TU Wien

Datenstrukturen

In der GemStone/S Datenbank am ZID gibt es mehrals 95 Klassendefinitionen und mehr als 1 Million „le-bende“ Objekte. Mit „lebend“ sind Objekte gemeint, dieaktuelle Daten enthalten und die wiederauffindbar sind,d. h. referenzierbar sind. Die Klassennamen sind meistensselbsterklärend und beziehen sich i.d.R. auf Begriffe oderArbeitsabläufe innerhalb des ZID oder der TU Wien. Re-lativ häufig verwendet wird die Klasse „Person“. Im Fol-genden soll anhand dieser Klasse beispielhaft gezeigtwerden, auf welche Art diverse Klassen in Beziehung zu-einander stehen.

Statische, vernetzte Klassen- bzw.Objektsbeziehungen

Beispiel 7 zeigt die Definition der Klasse „Person“.Die Vereinbarung unterscheidet sich von der in Beispiel2 gezeigten in einigen Punkten.

Beispiel 7:

Object subclass: ‘Person’instVarNames: #( title firstName lastName

licenceCache accounts rolesbirthday )

classVars: #( NameTree RemovalLogSpecialUserMap UserMap )

classInstVars: #()poolDictionaries: #[]inDictionary: IU_Infoprojectconstraints: #[ #[ #title, String],

#[ #firstName, String],#[ #lastName, String],#[ #licenceCache, LicenceSet],#[ #accounts, AccountList],#[ #roles, Collection],#[ #birthday, Integer] ]

instancesInvariant: falseisModifiable: false

Als Erstes fällt auf: die Klasse „Person“ kennt sog.Klassenvariablen (Abschnitt „classVars“). Es sind Spei-cher, auf die alle Personenobjekte zumindest lesend zu-

greifen können. Auf diese Weise kann man Informationen„global“ verteilen. Ein weiterer Unterschied zu Beispiel 2ist: in dieser Klasse ist erstmals festgelegt, welcher Art dieInstanzvariablen sein dürfen. Diese Einschränkungen ste-hen im Abschnitt „constraints“, einer GemStone/S Erwei-terung. Eine Zeile daraus, z. B.#[ #licenceCache, LicenceSet],

besagt, dass eine Person (neben Titel, Vor- und Zunameusw.) auch einen sog. „licenceCache“ hat, der vom Typ„LicenceSet“ sein muss. Was ist in so einem „Lizenz Ca-che“ verzeichnet? Die Antwort lautet: alle, von einer Per-son gekauften bzw. gemieteten Campus- oder Studen-ten-Softwarelizenzen. Auch ein „LicenceSet“ ist eine Ob-jektsklasse, die ihrerseits nur Elemente der Klasse „Li-cence“ enthalten darf.

Umgangsprachlich kann man diese Art von Klassen-bzw. Objektsbeziehungen auch so formulieren: eine Per-son kann einen Titel tragen, sie hat einen oder mehrereVor- bzw. einen Zunamen sowie einen Geburtstag, sie kannSoftware-Lizenzen und/oder TU-Zugänge („accounts“) ge-mietet haben und sie kann entweder TU-, Drittmittel- oderProjektmitarbeiter/in sein (siehe „roles“). Damit werden vorallem statische, zeitlich praktisch unveränderliche Bezie-hungen zwischen Objekten beschrieben. Je weiter mandiesen „ist“- und „hat“-Beziehungen folgt, umso netz-artiger werden die Zusammenhänge zwischen den Gem-Stone/S Objekten. Georg Gollmann hat diesen Umstandanlässlich einer „European Smalltalk User Group“ Konfe-renz 2004 folgendermaßen graphisch dargestellt:

Dynamische Beziehungen

Innerhalb der GemStone/S Datenbank gibt es auch„dynamische“ Beziehungen. Das sind im Wesentlichentemporäre Zusammenhänge, die während bestimmter Ar-beitsabläufe entstehen. Wir wissen: Objekte erfüllen im-mer relativ kleine Aufgaben, deren Dienste können abervon anderen Objekten genutzt werden. Dienste eines Ob-jektes können von außen durch „messages“ genutzt wer-den. Und um einen größeren Auftrag erledigen zukönnen, müssen in der GemStone/S Datenbank oft meh-rere Objekte miteinander kommunizieren, kurz: „messa-ges“ zwischen unterschiedlichen GemStone/S Objektenhin- und hergeschickt werden. Im Fachjargon heißt dieseArt von Kommunikation bzw. das Aufrufen von Metho-den auch „message passing“.

Abteilungsinterne Dienste

Bezüglich der Aufgaben, die die GemStone/S Daten-bank an der TU Wien übernimmt, kann man sagen: ihrAufgabenbereich lässt sich unterteilen in abteilungsin-terne und in TU/ZID-weit angebotene Dienste.

Seite 20 – Dezember 2006 – ZIDline 15

Abbildung 2 - VisualWorks Klassen-Browser

Organisation

MailAgent

Person

Computer

SupportAgreementAccuSpecification

PostScriptPage

ScheduleEvent

Incident

Platform Product

CostCenter

Abbildung 3 - Klassenbeziehungen nach Georg Gollmann

Page 21: ZIDline 15

Die GemStone/S Datenbank ist für Abteilung Stan-dardsoftware (STS) das zentrale Werkzeug. Mit ihrerHilfe wird der Vertrieb von Campus- bzw. Studenten-Software-Lizenzen abgewickelt. Eine öffentliche Schnitt-stelle der Datenbank ist übrigens im Lehrmittelzentrum(LMZ), gleich neben der Kassa, zu sehen. Abbildung 4zeigt die Benutzeroberfläche zum GemStone/S Verkaufs-system. Mit einem Handscanner liest der/die Verkäufer/indie Matrikelnummer vom Studentenausweis ein, der Ver-kaufs-PC kontaktiert die GemStone/S Datenbank, die dieBezugsberechtigung prüft und gleichzeitig Buch führtüber die getätigten Einkäufe des/der Studenten/in.

In dieser Datenbank sind alle STS-Kunden und Pro-dukte verzeichnet, sie ist ein internes Dokumentationsys-tem, Fallverfolgungssystem für Wartungsvertrags-Unter-stützungsfälle und Abrechnungssystem in einem, sie er-fasst das STS-Inventar und bildet das STS-eigene Be-stellwesen ab. Die Funktion des Bestellwesens ist seit2004 im Einsatz. Es ermöglicht STS-Mitarbeiter/innendas problemlose, unbürokratische Absetzen von Bestel-lungen für Neuerwerbungen, Ersatzteile, Seminare, Bü-cher etc. und ist mit dem nachträglich eingeführtenSAP-System gekoppelt. Abbildung 5 zeigt den „Work-flow“ eines Bestellvorgangs.

Eingetroffene Waren, die den Wareneingang erfolg-reich passiert haben, werden im GemStone/S Bestellsys-tem „abgelegt“. „Abgelegt“ bedeutet i.d.R., dass dieseAnlage-, Verbrauchsgüter etc. von der Datenbank auto-matisch ins eigene Inventarsystem übernommen werden.Mit dieser Funktion verfügt der STS-Leiter, Herr DI Al-bert Blauensteiner, stets über eine tagesaktuelle Budget-übersicht und kann Abschreibekalkulationen undAnlagenbewertungen praktisch auf „Knopfdruck“ durch-führen lassen. Er ist damit zu jeder Zeit über aktuelleKostenverläufe informiert und hat damit die Basis fürpräzise budgetäre Planungen.

Benutzerschnittstelle & Entwicklerwerkzeuge

Die GemStone/S Datenbank ist nicht nur ein reiner Da-tenspeicher, sie ist – wie vorhin gezeigt – ein wichtiges,zentrales Verwaltungsinstrument und Entwicklungssystemzugleich. Ihre primäre Schnittstelle ist ein Web-Server, der– natürlich auch in Smalltalk geschrieben – integrierterBestandteil der Datenbank ist. Der Zugriff ist damit für diemeisten Benutzer mittels Web-Browser möglich, wobeidie Verbindungen durch SSL („Secure Socket Layer“) ge-schützt werden. Es sind zwei unterschiedliche Zugänge viaWeb-Browser möglich: die eine Variante erfordert einenexpliziten Datenbank-Login, wodurch eine so genannte„Private Session“ eröffnet wird. „Private Sessions“ sindi.d.R. Mitarbeiter/innen der Abteilung STS vorbehalten.Zugänge ohne Login, die mehr oder weniger öffentlichsein sollen, können auch anders verifiziert werden, z. B.durch das TU-Passwort. Mit dem TU-Passwort kann manbeispielsweise eigenen „White Pages“-Einträgen weitereInformationen hinzufügen, eine Funktion, die von derGemStone/S Datenbank bereit gestellt wird. Jeder Benut-zer sieht beim Zugriff eine andere GemStone/S Oberflä-che, deren Aussehen hängt von der jeweiligen Funktionund Rolle des/der Mitarbeiter/in ab. Abbildung 6 zeigt dassog. „Graphical User Interface (GUI)“ eines GemSto-ne-Entwicklers.

Die eigentlichen Entwicklungswerkzeuge sind über die„Developers:“-Zeile erreichbar. Es gibt einen „Workspa-ce“, in dem Smalltalk-Code quasi „ausprobiert“ werdenkann. Die in den vorherigen Beispielen gezeigten Abfra-

ZIDline 15 – Dezember 2006 – Seite 21

Abbildung 4 - GemStone/S Verkaufssystem

BestellerSAP Bearbeiter

Besteller + SAP Bearbeiter

SAP Freigabe

SAP Bearbeiter + SAP Freigabe

Mitarbeiter

(Anfang)

Eintrag

Storno

Warten

Wareneingang

OK selbst

RechnungSTS

RechnungSAP

Ablage

Abgelehnt OK zentral

SAP

Bestelleintrag

Übernahme

Korrektur

Abbildung 5 - Bestellwesen, „Workflow“

Page 22: ZIDline 15

gen, Berechnungen und Klassenvereinbarungen könnenkopiert und direkt im „Workspace“ eingetragen werden.

Die Code-Zeilen werden praktisch zur Laufzeit über-setzt bzw. interpretiert, man kann dadurch leicht undrasch Smalltalk-Code auf dessen Brauchbarkeit hin unter-suchen, bevor dieser Teil einer Methode wird. Das Er-gebnis eines beliebigen Aufrufs ist – wie in Smalltalküblich – selbst wieder ein Objekt und wird in einem se-paratem Browser-Fenster dargestellt.

Hinter der Verknüpfung „Class Relationships“ kannein Entwickler feststellen, welche statischen Beziehungenzwischen ausgewählten GemStone/S-Klassen bestehen.Möchte man z. B. wissen, mit welchen anderen Klassendie Klasse „Person“ in Beziehung steht, so erhält manfolgende graphische Darstellung:

Hinter der Verknüpfung „System Categories“ steckt dasvermutlich wichtigste Werkzeug: der GemStone/S Klas-sen-Browser. Er zeigt alle existierenden Klassendefinitio-nen, welche unterteilt sind in GemStone/S Kernel-Klassen, in Klassen, die entweder STS-spezifische Funk-tionen (Kategorie „IU_Infoproject“) oder TU/ZID-weiteDienste bereitstellen (Kategorie „ZID DB“). Außerdemgibt es Klassen, die die eigentlichen Daten darstellen. Da-ten können in „Arrays“, in „Sets“ oder in „Bags“ u.ä. dau-erhaft gespeichert werden, die Klassendefinitionen dazufindet man in der Kategorie „Collections“. Eine praktischeZusatzfunktion bietet die Detailansicht einer Klasse:

Man kann sich die sog. Ober- bzw. Unterklassen („su-perclasses“ bzw. „subclasses“) auflisten lassen und be-kommt dadurch u.a. Hinweise, welche zusätzlichenFunktionen eine Klasse – wegen Vererbung – sonst nocherfüllen kann. Über den Menüpunkt „Method List“ kannein/e Entwickler/in nach Methoden suchen. Er/Sie kanndamit feststellen, welche Klasse eine bestimmte Methodeimplementiert bzw. wie oft der Methodenname im Systemingesamt vorkommt (siehe Abschnitt „Polymorphismus“).

GemStone/S Entwicklungszyklen lehnen sich stark anEmpfehlungen der „eXtreme Programming (XP)“ Fach-leute [9] an. Eine dieser Empfehlungen lautet: „Bevor Dutatsächlich Code-Zeilen schreibst, nimm die vorgegebene‘User Story’ und entwickle daraus zunächst nur Tests.Diese Tests sollen genau das tun, was der spätere Benut-zer tun möchte/tun will. Beginne erst danach mit dem ei-gentlichen Entwicklunsprozess, die Software wird fertigsein, wenn sie alle Tests erfolgreich absolviert.“

Die GemStone/S Datenbank enthält eine Klasse „Test-Case“, mit der diverse Testfälle formuliert werden kön-nen. Erfüllt eine Datenbank-Teilfunktion alle gefordertenAufgaben, so sieht das so aus:

Seite 22 – Dezember 2006 – ZIDline 15

Abbildung 6 - Entwickler GUI

Abbildung 7 - GemStone/S Workspace

birthday

roles

accounts

licenceCache

lastName

firstName

title

Person

Integer

Collection

AccountList

LicenceSet

String

Abbildung 8 - Statische Klassenbeziehungen

Abbildung 9 - Klassen-Detailansicht

Abbildung 10 - GemStone/S Methodensuche

Abbildung 11 - Unit Tests in GemStone/S

Page 23: ZIDline 15

ZID/TU-weite Dienste

Zu den wichtigsten TU-weiten GemStone/S Dienstengehört sicherlich die ZID Personendatenbank. Diese ist –wie bereits erwähnt – eine Teilfunktion und übernimmteine Art Verteilerrolle: die eigentlichen Daten werden inder zentralen Verwaltung (z. B. Namen von TU-Ange-stellten und Studierenden) oder in der Telefonanlage(z. B. Nebenstellendurchwahl) generiert, anschließendvon der GemStone/S Datenbank importiert und an die„White Pages“ weitergegeben. Die genaue Funktion derPersonendatenbank erläutert Herr DI Georg Gollmann inseinem ZIDline-Artikel vom Oktober 2002 [2].

Darüber hinaus unterstützt die Datenbank auch die Ver-waltung von ZID-Accounts und sie ist gleichzeitig Au-thentifizierungsserver für eine Reihe von Web-Anwendungen an der TU Wien. Anwender dieser Gem-Stone/S Funktion ersparen sich damit das Entwickeln eige-ner, aufwendiger Authenfizierungsmechanismen. Detail-lierte Informationen dazu finden sich in [7] und [8].

Resumee

SmalltalkSmalltalk ist eine flexible, moderne Programmierspra-

che. Sie wird heute in Österreich kaum verwendet odergelehrt, was verwunderlich ist, wenn man bedenkt, dasseinige Java-Konzepte aus der Smalltalk-Welt stammen,so zu Beispiel das Konzept der Virtuellen Maschinen.Heute gibt es Smalltalk-IDE für UNIX, MacOS, WinXPund natürlich Linux, eine Anwendung entwickelt unterWinXP läuft somit auch unter Linux.

Hinsichtlich der Verbreitung stellt sich die Situation inDeutschland ähnlich dar, an folgenden Stellen wird er-folgreich mit Smalltalk/VisualWorks gearbeitet: die Fir-ma Carl Zeiss in Oberkochen entwickelt damit ihreMesssoftware „Calypso“ [13]. Am Standort Dresdensteuert der Intel-Konkurrent AMD „Wafer“ Fertigungs-prozesse teilweise mit Smalltalk-basierender Software.Der Heise-Verlag hat in den letzten Jahren einige Artikelzu Smalltalk veröffentlicht [14].

Wer Smalltalk lernen und die Geheimnisse dieserSprache kennenlernen möchte, der kann entweder beiGeorg Heeg ein Seminar besuchen [16] oder sich einBuch kaufen oder ausborgen. An der TU Bibliothek ver-fügbar sind z. B. [10, 11].

Die unbestrittene Smalltalk-Kompetenz an der TUWien ist Herr DI Georg Gollmann (DW 42022, E-Mail:[email protected]).

Für Lehr- und Lernzwecke gibt es glücklicherweisefrei verfügbare Smalltalk-Entwicklungswerkzeuge (mitentsprechender Dokumentation), z. B. [18, 19]. DieseSmalltalk-IDE bieten alles, was Entwickler/innen brau-chen können: Klassen-Browser, „Workspaces“, Debuggerund gute Dokumentation, besonders für VisualWorks.

GemStone/SDer „GemStone/S Object Server“ kann ebenfalls – z. B.

zu Evaluierungszwecken oder zur persönlichen Weiterbil-dung – frei bezogen werden: http://www.gemstone.com/products/smalltalk/.

Die Dokumentation ist nicht Bestandteil des „ObjectServers“, sie muss eigens geholt werden. Der „Object Ser-ver“ wird üblicherweise mit einer 30-Tage-Demolizenzgeliefert, eine namentliche Registierung ist erforderlich.

Die GemStone/S Datenbank ist ein überaus flexibles,stabiles Produkt, das heute von sehr großen Unterneh-men, wie z. B. der „Orient Overseas Container Line“ [20]verwendet wird. Die Flexibilität wird – wie gezeigt –durch objektorientierte Betrachtungsweisen erreicht. Ander TU Wien hat sie jedenfalls bewiesen, dass sie auchnach 9 Jahren noch immer erweiterbar ist [2]. Eine gutesZeichen für zukünftige Aufgaben.

Literaturangaben

[1] Klasek, Johann: White Pages Service,ZIDline Nr. 7, Oktober 2002, S. 11ff.

[2] Gollmann, Georg: ZID Personendatenbank,ZIDline Nr. 7, Oktober 2002, S. 16f.

[3] GemStone Systems, 1260 NW Waterhouse Ave., Suite200, Beaverton, Oregon 97006,http://www.gemstone.com

[4] Wikipedia: Polymorphie (Programmierung), Oktober2006, http://de.wikipedia.org/wiki/Polymorphie_%28Programmierung%29

[5] Hunt, John: Smalltalk and Objectorientation,An Introduction, Springer Verlag, Berlin 1997,ISBN: 3540761152

[6] GemStone/S Programming Guide, Version 6.0,GemStone Systems, December 2001

[7] Gollmann, Georg: Authenfizierungsservice,ZIDline Nr. 7, Oktober 2002, S. 35f.

[8] Gollmann, Georg: Dateninfrastruktur,http://sts.tuwien.ac.at/go/Dateninfrastruktur.html

[9] Wells, Don: Extreme Programming: A gentle intro-duction. http://www.extremeprogramming.org/

[10] Johannes Brauer: „Grundkurs Smalltalk, Objektorientie-rung von Anfang an“, Vieweg Verlag, Wiesbaden: 2004(2., verb. Aufl.), ISBN: 3-528-15818-2

[11] Beck, Kent: Kent Beck’s guide to better smalltalk,Cambridge Univ. Pr., Cambridge: 1999 (1. Aufl.)

[12] Smalltalk Industry Council (STIC): Why Smalltalk,http://www.whysmalltalk.com/

[13] http://www.zeiss.de/Calypso-fuer-alle

[14] http://www.heise.de/ct/inhverz/search.shtml?T=Smalltalk&Suchen=suchen

[15] Vorlesungen u.a. zum Thema Smalltalk:http://brauer.nordakademie.de/sites/main.html

[16] Seminare Fa. Georg Heeg Köthen bzw. Dortmund:http://www.heeg.de/

[17] Die Smalltalk-„Online“-Referenz ist: „Why Smalltalk“,http://www.whysmalltalk.com/

[18] VisualWorks 7.x von CinCom: http://www.cincomsmalltalk.com/userblogs/cincom/blogView

[19] Squeak: http://www.squeak.org/

[20] http://www.oocl.com/,http://www.gemstone.com/pdf/OOCL_SuccessStory.pdf

ZIDline 15 – Dezember 2006 – Seite 23

Page 24: ZIDline 15

Honeynet-ProjektChristopher Krügel und Engin KirdaSecure Systems [email protected], [email protected]

Ein Honeynet hat die Aufgabe, Angriffe auf ein Netzwerk zu protokollieren. Dazu wird einunbenutzter IP-Adressbereich im Netzwerk reserviert und überwacht. Alle Verbindungen zuMaschinen in diesem Bereich sind automatisch verdächtig und können genauer analysiertwerden. Das dient zum Beispiel dazu, Netzwerkscanner zu identifizieren oder den Code (diePayload) von Computerwürmern für eine spätere Auswertung zu sammeln.

Je größer der überwachte Adressbereich ist (das heißt, je mehr IP-Adressen Teil des Honeynetssind), desto mehr und genauere Informationen können gesammelt werden. Für unsere Forschungim Gebiet der Analyse von bösartigem Code (Malware) haben wir zusammen mit dem ZID einHoneynet auf der TU Wien installiert, das mehr als vier tausend IP-Adressen umfasst. DiesesHoneynet registriert im Durchschnitt rund 250.000 Verbindungen täglich. Allein im Oktober 2006haben wir 180 verschiedene Malware Samples (Würmer) gesammelt und 24 Netzwerkscannerinnerhalb der TU Wien an die Security Abteilung des ZID gemeldet.

Einleitung

Ein Honeynet ist eine Menge von Maschinen (so ge-nannte Honeypots), welche die Aufgabe haben, Angriffeauf ein Netzwerk aufzuzeichnen. Die Grundidee einesHoneypots ist es, eine Menge von Netzwerkdiensten an-zubieten, die legitimen Benutzern unbekannt sind und diekeine Funktion im operativen Betrieb des Netzwerk er-füllen. Nachdem die Dienste unbekannt sind, können sienur dann gefunden werden, wenn ein Angreifer das ge-samte Netzwerk nach bestimmten Diensten absucht. Ty-pischerweise geschieht dies mittels eines Portscanners,der Anfragen an alle Rechner im Netz sendet. Falls einDienst von einer Maschine angeboten wird, beantwortetdiese die Anfrage entsprechend und signalisiert dadurchdem Angreifer die Verfügbarkeit eines Services. Nach-dem der Angreifer nicht weiß, welches Service zu denoperativen Rechnern und welches zu einem Honeypotgehört, werden Attacken normalerweise gegen alle ent-deckten Dienste gestartet. Ein Honeypot sollte jedochniemals legitime Anfragen erhalten. Daher ist jede Ver-bindung zu einem der Dienste eines Honeypots automa-tisch verdächtig.

Man unterscheidet üblicherweise zwischen zwei ver-schiedenen Arten von Honeypots, low-interaction undhigh-interaction Honeypots [1]. Ein low-interaction Ho-neypot stellt keine wirkliche Implementierung einesNetzwerkdienstes zur Verfügung, sondern emuliert nureinen Teil der Funktionalität. Im einfachsten Fall wirdauf jede Anfrage mit einer standardisierten Antwort rea-giert (z. B bei honeyd [2]). Andere low-interaction Ho-neypots realisieren einen größeren Teil der Funktionalitätund erlauben es, mehrere Pakete mit einem Angreiferauszutauschen (z. B. nepenthes [3] oder honeytrap [4]).Dies hat den großen Vorteil, dass bei solchen Honeypotsmehr Daten vom Angreifer gesendet werden, die danngespeichert und analysiert werden können. So kann manzum Beispiel die Payload von neuer Malware (wie z. B.von Würmern) sammeln, die sich automatisch im Netz-werk verbreiten.

Bei einem high-interaction Honeypot wird das Netz-werkservice tatsächlich vollständig implementiert undläuft typischerweise auch direkt auf einem richtigen Ser-ver. In diesem Fall lassen sich natürlich die meisten In-formationen sammeln. Das Problem mit high-interactionHoneypots ist jedoch, dass es aufwendig ist, diese zu in-stallieren und zu warten. So muss man zum Beispiel nach

Seite 24 – Dezember 2006 – ZIDline 15

Page 25: ZIDline 15

jedem erfolgreichen Angriff gegen einen Netzwerkdienstden Rechner von den Auswirkungen dieser Attacke säu-bern, typischerweise durch eine Neuinstallation des Be-triebssystems. Außerdem lassen sich auf einer physika-lischen Maschine oft nur wenige high-interaction Honey-pots parallel unterbringen (z. B. mittels VMware [5]),während ein einzelner Rechner oft tausende low-interac-tion Honeypots laufen lassen kann. Dies ist wichtig,wenn man bedenkt, dass von einem Honeynet oft mehre-re tausend IP-Adressen abgedeckt werden müssen.

Honeynet-Infrastruktur an der TU Wien

Nachdem die Dienste eines Honeypots durch einenAngreifer gefunden werden sollen, ist es von Vorteil,möglichst viele Honeypots in einem Honeynet zusam-menzufassen. Vor allem wenn ein Angreifer (oder einComputerwurm) zufällig ausgewählte IP-Adressen mit ei-nem Portscan untersucht, erhöht sich klarerweise dieChance, dass ein Honeypot darunter ist, wenn mehrAdressen von dem Honeynet abgedeckt werden. Daherwar es uns sehr wichtig, vom ZID einen möglichst gro-ßen, unbenutzten Adressbereich zur Verfügung gestelltzu bekommen. Der gesamte Traffic zu diesen Adressensollte dabei zu unserem Honeynet umgeleitet werden.Der ZID hat uns für unser Honeynet großzügigerweise4.096 IP-Adressen zur Verfügung gestellt, die in 16Class C Netzwerke mit jeweils 256 Adressen aufgeteiltsind. Das Routing des TU-Netzwerks wurde vom ZID soangepasst, dass alle Pakete an diese Adressen an einenRechner in unserem Lab weitergeleitet werden, der dasHoneynet hostet. Dieser Rechner ist so konfiguriert, dasser auf Anfragen an jede der 4.096 IP-Adressen entspre-chend antwortet.

Ein wichtiger Forschungsschwerpunkt bei uns am Se-cure Systems Lab [6] ist das Studium von Malware (wieViren und Würmer). Insbesondere untersuchen wir Tech-niken, um neuartige Formen von bösartigem Code erken-nen und klassifizieren zu können. Dazu ist es natürlichnotwendig zu wissen, welche Arten von Malware sichzurzeit besonders aktiv im Internet verbreiten. Außerdembenötigen wir real-world Samples, an welchen wir unsereneuen Algorithmen und Techniken ausgiebig testen kön-nen. Um einen Einblick in die Verbreitung von Malwarezu erhalten und eine repräsentative Menge von Vertreternder verschiedenen Klassen sammeln zu können, eignensich besonders low-interaction Honeypots. Deshalb habenwir auf unserem Honeynet nepenthes installiert, einlow-interaction Honeypot, der explizit zum Sammeln vonMalware, Viren und Trojanern ausgelegt ist.

Ein wichtiger Punkt, der berücksichtigt werden muss,ist, dass das Weiterleiten des Netzwerkverkehrs vom ZIDan unser Honeynet vor etwaigen Filtern oder Firewallserfolgt, damit wir die ganze Breite von bösartigem Traf-fic überwachen können. Das widerspricht allerdings derSicherheitspolicy des ZID, die einen Grundschutz für alleRechner innerhalb des Netzwerks vorsieht [7]. DieserGrundschutz blockiert automatisch Pakete zu bestimmtenDiensten, die sich in der Vergangenheit als besonders an-fällig für Angriffe gezeigt haben. Dieser Grundschutz istnatürlich vernünftig, um das Netzwerk vor Angreifern zu

schützen. Er stellt allerdings ein Problem für unserHoneynet dar, weil wir ja gerade an diesen Angriffen in-teressiert sind. Glücklicherweise konnte ein Kompromisserzielt werden und ein Class C Netzwerk kann jetzt völ-lig uneingeschränkt vom Internet erreicht werden. Dieserlaubt uns auch, einen Vergleich zu ziehen zwischen je-nem Bereich, der vom Grundschutz abgedeckt ist, und je-nem, der freigeschaltet ist. Zum Beispiel lässt sichzeigen, dass bestimmte, populäre Angriffe Dienste be-treffen, die als Teil des Grundschutzes automatisch vomZID geschützt werden.

Bisherige Ergebnisse

Unser Honeynet zeichnet alle Pakete auf, die an eineder 4.096 IP-Adressen unseres Honeynets geschickt wer-den. Das erlaubt es uns, Statistiken zu erstellen, die zei-gen, wie intensiv das Netzwerk der TU Wien Angriffenaus dem Internet ausgesetzt ist. Außerdem lässt sich ver-folgen, welche Dienste zu einem bestimmten Zeitpunktbesonders interessant für Angreifer sind. Falls es zu einerplötzlichen Änderungen kommt und ein unbeachteterDienst auf einmal besonders viel Netzwerkverkehr an-zieht, kann das ein Hinweis darauf sein, dass eine neueSchwachstelle in diesem Dienst entdeckt worden ist, dievon Angreifern aktiv ausgenützt wird. Der ZID könnte indiesem Fall reagieren und diesen Dienst zum Beispielkurzfristig in den Grundschutz aufnehmen, um eine In-fektion der Maschinen innerhalb der TU zu verhindern.

Die folgende Graphik zeigt die Gesamtanzahl der Ver-bindungen pro Tag für den Monat Oktober. Insgesamtwurden in den 31 Tagen 7.695.402 Verbindungen regi-striert (durchschnittlich fast 250.000 pro Tag). Sehrschön kann man die Schwankungen während der Wocheerkennen; an Wochenenden wird typischerweise wenigerTraffic gemessen.

In Tabelle 1 werden jene zehn Dienste (mit Portnum-mer) aufgelistet, die das häufigste Ziel von Verbindungenwaren. Diese Tabelle zeigt, für welche Dienste sich An-greifer und Computerwürmer am meisten interessieren.Interessant ist, dass unter den Top-10 auch Port 135 auf-scheint, der eigentlich durch den Grundschutz von außennicht erreichbar ist. Ein Großteil der Verbindungen zudiesem Port kamen von Rechnern innerhalb des TU-Net-zes, die durch die Firewall nicht blockiert werden.

ZIDline 15 – Dezember 2006 – Seite 25

0

100000

200000

300000

400000

500000

600000

700000

800000

31 26 21 16 11 6 1

Por

tsca

ns

October 2006

Portscans / Day

Page 26: ZIDline 15

Port Verbindungen Dienst

80 3.290.455 HTTP (Web)

5900 1.085.758 VNC Server (remote desktop)

22 292.511 Secure Shell (ssh)

135* 283.895 MS RPC

42 277.882 MS WINS (host name server)

3306 211.959 MySQL Database

4899 147.089 Remote Administrator (radmin)

8080 126.984 HTTP (Web)

5901 114.087 VNC Server Display:1

10000 97.843 Network Data ManagementProtocol

* Im Grundschutz gesperrter Port.

Tabelle 1

In Tabelle 2 werden jene Dienste aufgelistet, die amhäufigsten in jenem Class C Netzwerk kontaktiert wur-den, das ohne Grundschutz direkt aus dem Internet er-reichbar ist. Es fällt auf, dass diese Liste Tabelle 1 sehrähnlich ist. Der größte Unterschiede zeigt sich bei denPorts 139 und 4444. Beide Ports tauchen im Zusammen-hang mit Wurmangriffen auf, 139 wird von Sasser ange-griffen, 4444 wird vom Backdoor des Blaster Wurmsverwendet.

Port Verbindungen Dienst

80 761.001 HTTP (Web)

139* 78.078 MS NetBIOS Session Service

5900 74.952 VNC Server (remote desktop)

135* 37.817 MS RPC

4444 34.066 Used by MS Blaster Worm

3306 14.490 MySQL Database

4899 8.705 Remote Administrator (radmin)

22 8.070 Secure Shell (ssh)

10000 8.014 Network Data ManagementProtocol

8080 7.715 HTTP (Web)

* Im Grundschutz gesperrter Port.

Tabelle 2

Seit das Honeynet in Betrieb genommen wurde, ist esuns gelungen, mittels nepenthes 180 unterschiedlicheMalware Samples zu sammeln. Diese Samples, typischer-weise Würmer, werden von uns im Rahmen unserer For-schung weiter analysiert. Außerdem leiten wir dieSamples an Ikarus (einen Wiener Antivirushersteller)weiter, der dann bei Bedarf die Signaturdatenbank seinesVirenscanners auf den neuesten Stand bringen kann.

Ein weiterer Nutzen des Honeynets liegt darin, dasswir jene Maschinen innerhalb des TU-Netzwerks identifi-zieren können, die das Netzwerk nach Diensten absuchen(scannen). Üblicherweise ist so ein Verhalten ein deutli-ches Zeichen dafür, dass die Maschine mit einem Com-puterwurm infiziert ist, der nach weiteren Opfern sucht.Wir übermitteln die Liste der gefundenen Scanner täglichund automatisch an die Security-Abteilung des ZID, derdann entsprechende Maßnahmen einleiten kann. Im Ok-tober haben wir insgesamt 24 infizierte Maschinen inner-halb des TU-Netzwerks entdeckt. Die Mehrzahl dieserRechner waren interessanterweise Maschinen, die sichüber das drahtlose Netzwerk oder über Einwahlleitungenvon zu Hause mit dem TU-Netzwerk verbunden haben.Es waren aber auch einige Rechner von Universitätsinsti-tuten darunter.

Zusammenfassung und Ausblick

Ein Honeynet kann nicht nur dabei helfen, die Trendsvon Angriffen im Internet zu beobachten und zu doku-mentieren, sondern dient auch dazu, Malware zu sam-meln, die sich erfolgreich im Netz verbreitet. Für unserHoneynet auf der TU Wien hat der ZID großzügigerwei-se einen Adressbereich von 4.096 IP-Adressen zur Verfü-gung gestellt. Unsere Honeypots registrieren im Durch-schnitt täglich fast 250.000 Verbindungen und helfen mit,infizierte Maschinen im TU-Netz zu identifizieren.

Natürlich lässt sich das Honeynet noch weiter ausbau-en. Zum Beispiel kann man die Anzahl der überwachtenIP-Adressen oder die Menge jener Rechner, die nichtvom Grundschutz betroffen sind, erhöhen. Zusätzlichmöchten wir das Honeynet noch mit Client-Honeypotserweitern. Anders als bei dem oben beschriebenen Netz-werk, wo Honeypots auf Angriffe von außen warten, sur-fen Client-Honeypots automatisiert im Internet. Das Zielist es, aktiv bösartige Seiten im Web zu entdecken, dieSchwachstellen im Browser ausnützen. Wenn eine Men-ge von Client-Honeypots automatisch im Web surfen,kommt es natürlich zu einem hohen Paketaufkommen imNetzwerk. Auch hier sind wir auf die Unterstützung vomZID angewiesen, der die entsprechende Bandbreite zurVerfügung stellen müsste.

References

[1] Lance Spitzner; Honeypots – Tracking Hackers;Addison-Wesley, 2003

[2] http://www.honeyd.org/

[3] http://nepenthes.mwcollect.org/

[4] http://honeytrap.sourceforge.net/

[5] http://www.vmware.com/

[6] http://www.seclab.tuwien.ac.at/

[7] http://www.zid.tuwien.ac.at/security/portsperren.php

Seite 26 – Dezember 2006 – ZIDline 15

Page 27: ZIDline 15

ZIDline 15 – Dezember 2006 – Seite 27

IT Security, ein PraxisberichtIngmar Jaitner, Irmgard Husinsky1

Zur Aufrechterhaltung der IT-Sicherheit im TUNET und zur Unterstützung bei Schadensfällenexistiert am ZID seit 1999 ein eigener Arbeitsbereich, der seit 2002 in die AbteilungStandardsoftware eingegliedert ist. Vordringlich muss der störungsfreie Betrieb innerhalb desTUNET sichergestellt sein. Dieser Artikel berichtet aus der täglichen Arbeit des Autors.

Einleitung

War in der Anfangszeit der Computer der Schutz voreinem Ausfall der Hardware wichtig, wurde dieserAspekt durch die Verbesserung der Systeme in den Hin-tergrund gedrängt, dafür gab es vermehrt Störungendurch Softwarefehler sowie Sicherheitsprobleme im Soft-warebereich aufgrund der höheren Komplexität gegen-über frühen Systemen.

Vor allem durch die Vernetzung der Systeme (Intranetund Internet) nahmen die Sicherheitsprobleme rasch zu.Bei Inselsystemen konnten Schadprogramme anfangs nurdurch Datenaustausch, meist über Floppy Disks (z.B.Bootsektorviren), verbreitet werden. Mit Computern, diebis zu 24 Stunden pro Tag mit einem Netzwerk verbun-den sind, steigt die Wahrscheinlichkeit, auf Sicherheitslü-cken untersucht und gegebenenfalls infiziert zu werden.

War es anfangs so, dass Einzelpersonen ausloten woll-ten, was alles möglich ist („ethical hackers“), teils aberauch Schaden anrichten wollten („crackers“), so rückenheute mehr und mehr kommerzielle Interessen in den Vor-dergrund. Dabei wird genau ausgeforscht, welche Infizie-rungspotentiale ein Rechner hat und welchen Aufwand esbedeutet, den Rechner unter Kontrolle zu bringen.

Schaden entsteht einerseits durch die Traffic-Bela-stung (Kosten für Bandbreite, Betriebsbeeinträchtigung),anderseits durch Datenverlust und den Aufwand zur Be-seitigung von Infektionen (Datenmigration, Neuinstallati-on des Betriebssystems). Auch die Verschleierung derIdentität wird versucht z. B. Botnetze2, die einerseitskommerzielle Spammails oder Phishingmails (Mails, diedie Gutgläubigkeit von Usern ausnutzen und Passwörter,PINs und TANs ausspionieren) versenden und DDOS(Distributed Denial of Service) Attacken (hunderte fern-

gesteuerte Botnetzrechner zusammen können ganzeWebseiten lahm legen) durchführen.

Situation an der TU Wien

Die Security Policy der TU Wien regelt den Umgangmit Computern, die am Netz betrieben werden. Fernersind die Betriebs- und Benutzungsordnung des ZID dieTUNET-Benutzungsregelungen maßgeblich.Siehe http://www.zid.tuwien.ac.at/security/policy.php

Für Anfragen und für Meldungen von Security-Pro-blemen wurde gemäß RFC 2142 die [email protected] eingerichtet.

Die tägliche Arbeit im Security-Bereich am ZID um-fasst:

• Beobachtung des Netzwerk-Traffics und der Fire-wall-Statistiken,

• Nachgehen von Hinweisen und Security Alerts,• Zusammenarbeit mit den Systemadministratoren an den

Instituten.

Während an einigen Instituten exzellentes Know-howvorhanden ist, benötigen andere Institute vermehrt Unter-stützung durch den ZID. Hier gilt es vor allem, Sicher-heitsbewusstsein zu bilden, in ständiger Zusammenarbeitmit den Systemadministratoren und Schulung derselben,vor allem bedingt durch die personelle Fluktuation.

Generell werden momentan Logfiles analysiert, auchdie Systemadministratoren der Institute melden Vor-kommnisse. Firewallstatistiken werden regelmäßig ausge-wertet und helfen zur Entdeckung von Rechnern mitSecurityproblemen. Auch die Geschwindigkeit der Ent-deckung eines Sicherheitsvorfalls spielt eine Rolle.

1 Redaktionelle Überarbeitung.2 Botnet oder Bot-Netz (Kurzform von Roboter-Netzwerk): fernsteuerbares Netzwerk (im Internet) von PCs, welches aus untereinander kommunizie-

renden Bots (robot Programme) besteht. (Quelle: Wikipedia)

Page 28: ZIDline 15

Im Folgenden sollen einige Arten von Vorkommnis-sen angeführt werden, die uns in letzter Zeit beschäf-tigten:

• Spam-Mail-Versand, Botnetze(Viren, Würmer und Trojaner):Hinweise erhält man über diverse Spam-Überwachungs-organisationen (z.B. Spamcop, jedoch ist die Trefferquo-te nur etwa 50%), weiters durch Analyse des Netzwerk-traffics und von Logfiles.Bei Untersuchung des befallenen Rechners ergibt sichzumeist eine Infizierung des Rechners mit Viren, Wür-mern, Trojanern und Rootkits (Botnetzteilnehmer). Vorallem bei Multiinfektionen wird empfohlen, das Be-triebssystem neu zu installieren, da bei Entfernung ein-zelner Viren ein Restrisiko bleibt, eine Lücke nichtgeschlossen zu haben. Anschließend Kontrolle desRechners durch ZID.Von Instituten werden Spam-Mails gemeldet, die expli-zit Viren enthalten, die nicht vom Spam-Filter markiertund bewertet wurden und wo Absenderadressen gesperrtwurden.

• Rechner mit illegalen Diensten (die dem Administratornicht bekannt sind, z.B. FTP-Server mit Raubkopienoder Filmen, Spieleserver, IRC Server):Solche Fälle werde durch Analyse des Netztraffics auf-fällig oder es langen Hinweise von außen ein.Verständigung des Administrators, Entfernung und Kon-trolle ähnlich wie bei Spam-Mail (Botnetz) Fällen.

• Unangemeldete Rechner mit Securityproblemen (beson-ders unangenehm, da Verursacher schwer greifbar):Der Administrator des Subnetzes wird verständigt, ev.erfolgt eine Sperre. Damit die Services des TUNET inAnpruch genommen werden können, müssen alle End-geräte angemeldet werden (TUNET Benutzerordnung,TUNET Datenbank).

Die Ursachen sind hier versäumte Meldungen neu aufge-setzter Rechner, die zudem oft noch ohne Patches insNetz gehen, sowie ganz bewusstes Herausgreifen vonfreien IP-Adressen von Usern, die z. B. ein (privates)Notebook anhängen wollen.

• DDOS Attacken von Botnetzteilnehmern (gehacktenRechnern) aus:Diese werden vom IDS (Intrusion Detection System) desBackbonebetreibers ACONet an uns gemeldet oder fal-len über Netztraffic oder an Institutsfirewalls auf, sind al-lerdings dank der DDOS Prevention seitens ACONetseltener geworden, sowohl was die Angriffe als auch diean Botnetzattacken teilnehmenden Rechner betrifft.In den letzten 12 Monaten gab es keine aktiven Attacken.

• Auffälligkeiten bzgl. Netztraffic, Firewall, Logs ohneStörungen (auch gemeldete Angriffe von außen ohne Er-folg, aber z.B. mit Mitteilung an Betreiber):Typische Fälle sind hier Passwort Scanning, Portscan-ning und automatisierte Skripts, die über ganze IP-Adress-Ranges laufen.

• Phishing Attacken gewinnen an Bedeutung:Derzeit waren alle Fälle ohne gemeldeten finanziellenSchaden. Abhilfe bietet hier die Sperre der Absender undeine Spam-Markierungs-Gewichtung und die Aufmerk-samkeit der Benutzer.

• Netcrawler Probleme (neu):verwässern die Firewall-Statistiken über die Anzahl derConnections pro 24 Stunden pro IP-Adresse. Da die Net-crawler Experimente vorwiegend von Informatikinstitu-ten durchgeführt werden, haben wir mit den betroffenenInstituten vereinbart, dass Starts solcher Experimente anuns gemeldet werden.

• Securityprobleme mit Anwendungsprogrammen:Dies ist eine gefährliche und steigende Klasse von Secu-rityproblemen, da sie oft unentdeckt bleiben.

• Aktives Cracking, von der TU ausgehend, „gewollt“oder „probiert“ (war in den vergangenen Jahren stärker):Dies wird meist von Informatikstudenten ausgeführt, diedann sagen „Ich habe nicht gewusst, dass ich das nichtmachen darf“. Nach Cracking aussehende Experimente.

• Copyrightfälle:Probleme gibt es bei unbeaufsichtigten Serverräumenund bei neuen Benutzern, die noch nicht mit der TUNETPolicy vertraut sind. Entsprechende Maßnahmen werdengesetzt.

• Sonstige Anfragen und Probleme:Anfragen bzgl. Verstoß der Netiquette, TUNET Benut-zerordnung und Security Policy, Rechtsprobleme, allge-meine Security Anfragen (z. B. Bitte um Sicherheits-scans) usw.

Seite 28 – Dezember 2006 – ZIDline 15

0

100.000

200.000

300.000

400.000

500.000

600.000

700.000

800.000

900.000

1.000.000

Okt.0

2

Jän.

03

Apr.0

3

Jul.0

3

Okt.0

3

Jän.

04

Apr.0

4

Jul.0

4

Okt.0

4

Jän.

05

Apr.0

5

Jul.0

5

Okt.0

5

Jän.

06

Apr.0

6

Jul.0

6

Okt.0

6

Monat/Jahr

An

zah

l

Anzahl der abgefangenen Viren am zentralen Virenscanner

Page 29: ZIDline 15

• Die Problematik von Skype Supernodes wird in einem ei-genen Artikel behandelt (siehe Seite 9).

Wiederkehrende Ereignisse sind nicht nur der berühm-te „Weihnachtshack“, auch Ende August/Anfang Septem-ber gibt es eine Häufung von Securityereignissen, daüber die Sommerferien viele Administratoren auf Urlaubsind und generell weniger Sicherheitsupdates eingespieltwerden. Wenn zum Beispiel ein Client Mails von zweibis drei Wochen abholt, ohne dass sichergestellt wurde,dass vorher Sicherheitsupdates installiert wurden, kannder Rechner infiziert werden.

Im Allgemeinen sind die Securityereignisse auf derTU Wien jedoch zurückgegangen. Dies ist vor allem aufFolgendes zurückzuführen:

• Großflächiger Einsatz von Firewalls an den Instituten.

• Regelmäßige Kontrolle auf den Firewalls.

• Die Systemadministratoren an den Instituten werden vonder ZID Security laufend bei Fällen geschult (von ange-lernten Kräften bis absoluten Profis ist alles vorhanden)und haben ein hohes Maß an Problembewusstsein ent-wickelt (es erfolgt auch aktive Weitermeldung vonverdächtigen Log-Einträgen).

• ACONET hat spezielle Detektierungstools, vor allem fürDDOS und Botnetze und meldet verdächtige Rechner anuns weiter.

• Der ZID hat einen Windows Update Server installiert,wo Updates automatisch heruntergeladen, nach Prioritä-

ten geordnet und auf Campuslizenzen verteilt und instal-liert werden, was unerfahrene User unterstützt undgestresste Administratoren entlastet.

• Nicht zuletzt haben auch die meisten Benutzer von Ar-beitsplatz-Rechnern Sicherheitsproblembewusstseinentwickelt, da sie zum Teil auch schon unangenehme Er-fahrungen beruflich oder privat machen mussten.

Von Sicherheitsproblemen betroffene Rechner werdenrasch abgeschaltet, untersucht und in immer stärkeremMaß komplett neu aufgesetzt, da bei Multiinfektionen beiEntfernung mit Tools, wie es vor ein paar Jahren Stan-dard war, die Wahrscheinlichkeit steigt, trotzdem eineLücke nicht geschlossen zu haben und dann weitererSchadcode nachgeladen und der Rechner wieder infiziertwird. Beim infizierten Rechner und nach Behebung wirdein Sicherheitsscan durchgeführt, um den Status zu prü-fen. Die Kontrolle erfolgt netzwerkseitig von außen(Nessus) und von innen (z. B. mit alternativ bootbarenBetriebssystemen). Bei Wartungsverträgen erfolgt beidesvom ZID, bei allen anderen nur die Kontrolle von außenvom ZID und die telefonische Beratung mit demjeweiligen Administrator, der dann die Kontrolle voninnen vornimmt.

Security wird immer komplexer. Nicht nur ist aus tau-senden Security Alerts pro Jahr das Relevante und Wich-tige herauszufiltern, insbesondere ist bei Universitätendas „innere“ und „äußere“ Netzwerk nicht sauber trenn-bar. In diesem Zusammenhang ist die Problematik derNotebooks und externen ADSL/VPN-Anschlüsse zu nen-nen, wo die Security wesentlich schwieriger als bei fes-ten Institutsrechnern aufrechtzuerhalten ist, weilunerfahrene User die System administrieren und sich (beiNotebooks) in mehrere Netze einloggen. Auch PDAs undHandys werden zunehmend eingesetzt, wo Securitypro-bleme aber ebenfalls prinzipiell möglich sind (z. B. Javaund offenes Bluetooth am Handy (ähnlich wie WLAN)),wo dann andere unter Umständen teure Telefongesprächeführen können.

Die zuverlässige Erkennung von Securityereignissenwird mittelfristig eine große Rolle spielen, da zunehmendversucht wird, unauffälliger zu agieren. Maßnahmen wieein Honeynet oder Intrusion Detection Systeme (IDS) sindzu prüfen. Vieles ist hier noch in Entwicklung. Gleichzei-tig mit dem Einsatz solcher Maßnahmen sind der Daten-schutz und die Verhältnismäßigkeit zu beachten.

Im Rahmen der vom ZID angebotenen Systempflegefür Arbeitsplatzrechner an der TU (Wartungsvertrag)kann Unterstützung zur Prävention von Sicherheitsrisiken(und natürlich auch zur Schadensbehebung) angefordertwerden. Weitere Informationen: http://sts.tuwien.ac.at/pss/.

ZIDline 15 – Dezember 2006 – Seite 29

0

200

400

600

800

1000

1200

1400

1600

1800

2000

Okt.0

4

Dez.04

Feb.0

5

Apr.0

5

Jun.

05

Aug.0

5

Okt.0

5

Dez.05

Feb.0

6

Apr.0

6

Jun.

06

Aug.0

6

Okt.0

6

Monat/Jahr

An

zah

l

Anzahl der Rechner, die den WSUS Update Serverin Anspruch genommen haben

Anmerkung: Hier sieht man trotz generell steigendem Aufkommendie Abschwächung in den Monaten Juli/August, was – wie im Artikel

beschrieben – vermehrte Sicherheitsprobleme Ende August/Anfang September nach sich zieht

Page 30: ZIDline 15

Einrichtungeines Rechnerlabors fürVirtuelle ProduktentwicklungDetlef Gerhard, Institut für Konstruktionswissenschaften und Technische Logistik

Derzeit wird am Institut für Konstruktionswissenschaften und Technische Logistik einRechnerlabor realisiert, das seit Beginn des Wintersemesters bereits Lehrveranstaltungen imBereich CAD zur Verfügung steht, aber weiterhin ausgebaut wird, sodass ab dem kommendenSommersemester mehrere CAx- und PDM-Softwarepakete für die Lehre zur Verfügung stehenwerden. Der vorliegende Beitrag erläutert zusammenfassend die Hintergründe und Einzelheitender Realisierung.

Ausgangssituation

Die Bedeutung der Informationstechnologie (IT), ins-besondere der IT-Verfahren zur Unterstützung von Auf-gaben und Tätigkeiten in den ingenieurwissenschaftlichenProzessen industrieller Betriebe, hat in den letzten Jahrenmassiv zugenommen. Die Auswirkungen in Bezug aufAbläufe und Methoden zeigen sich in einer Neuorientie-rung in fast allen Bereichen eines Maschinenbauunter-nehmens. Klassische Arbeitsweisen werden geändert oderersetzt und die Prozesse der Produktentstehung – inner-betrieblich oder, als Teil einer Supply Chain, unterneh-mensübergreifend mit Kooperationspartnern, Kunden undLieferanten – werden neu definiert.

CAD-Systeme haben zwar schon vor einigen Jahrendas manuelle Konstruieren am Zeichenbrett vollständigersetzt, mittlerweile sind aber selbst die ursprünglich ein-geführten 2D-CAD-Systeme zu einem großen Teil durchintegrierte 3D-CAD-Systeme mit einem weit über dieGeometriedefinition hinausgehenden Funktionsumfangersetzt worden. Während der erste Schritt im Wesentli-chen ein Übertragen alter Arbeitsweisen auf ein neuesHilfsmittel darstellte, ist die Umstellung von der2D-CAD-Zeichnungserstellung auf die 3D-Produktmo-dellierung mit einer kompletten Änderung der Arbeits-weise für den Ingenieur verbunden.

3D-Produktmodellierung eröffnet eine Vielzahl neuerMöglichkeiten: Bauteile können rechnerunterstützt analy-siert (d. h. berechnet und beurteilt) und deren Verhaltensimuliert werden. Untersuchungen mit Kinematik-Modu-len für Kollisionsprüfungen beispielsweise im Rahmenvon Ein- und Ausbauuntersuchungen sind möglich. Po-tenzielle Störgeometrien und andere Fehlerquellen kön-

nen so frühzeitig ermittelt werden. Die mechanische Be-lastbarkeit von Bauteilen ebenso wie thermisches undströmungsmechanisches Verhalten kann mit Hilfe spe-zieller CAD-Anwendungsmodule auf Basis von FiniteElemente Methoden (FEM) nachgerechnet bzw. simuliertwerden. Es können also bereits in einer frühen Ent-wicklungsphase Geometrien optimiert, Konstruktionenverifiziert und damit Fehler oder aufwändige Iterationenvermieden werden.

Im Rahmen der horizontalen Integration gesamter Pro-zessketten über die Entwicklung hinaus, wie beispiels-weise im Bereich der Blechbiegeteile, lassen sichAbläufe von der Konstruktion über die automatisierte Er-stellung von Abwicklungen in der Arbeitsvorbereitungbis hin zur Datenübergabe an entsprechende Fertigungs-maschinen durchgängig und ohne Medienbrüche abbil-den. Damit werden Ergebnisse frühzeitig abgesichert undDurchlaufzeiten bzw. -kosten bei gleichzeitiger Qualitäts-steigerung gesenkt.

Virtuelle Produktentwicklung

Der Begriff der „Virtuellen Produktentwicklung“ fasstdie oben zum Ausdruck gebrachten Methoden inhaltlichzusammen. Dabei geht es im Kern um die möglichst voll-ständige Beschreibung eines realen Produkts mit all sei-nen Eigenschaften als Modell im Rechner und um dasManagement der erzeugten Daten sowie der Prozesse undverwendeten IT-Werkzeuge, damit eine möglichst lücken-lose Dokumentation des Produkts und seines Entste-hungsprozesses gewährleistet werden kann. Neben denCAx-Anwendungen nehmen in diesem Kontext die so

Seite 30 – Dezember 2006 – ZIDline 15

Page 31: ZIDline 15

genannten Produktdatenmanagementsysteme (PDM) eineherausragende Stellung ein. Sie bilden die Integrations-plattform für die verschiedenen (daten-)erzeugenden Sys-teme, die unterschiedlichste Datenformate produzieren,bieten Funktionen für kooperative Arbeitsformen bei-spielsweise mit systemneutralen Viewern oder durch dieAbbildung von rollenbasierten Zugriffsschutz-Mechanis-men und bilden mit entsprechenden Workflow-Funktio-nen Prozesse wie Freigabe- oder Änderungswesen ab.

Mit der Verfügbarkeit der Methoden der VirtuellenProduktentwicklung steigen selbstverständlich auch dieAnforderungen an eine zukunftsorientierte Ausbildungvon Studierenden ingenieurwissenschaftlicher Fächer.Aktuelle Studien belegen, dass bereits Anfang der 1980erJahre Unternehmen ihren Mitarbeitern durchschnittlicheine Woche Schulung für den Umstieg auf das „elektro-nische Zeichenbrett“ 2D-CAD einräumten und dass die-ser Wert bis heute ungefähr gleich geblieben ist. Daserforderliche Anwendungswissen, um die Möglichkeitenund Verfahren der Virtuellen Produktentwicklung effek-tiv in der betrieblichen Praxis einsetzen und nutzen zukönnen, ist jedoch um ein Vielfaches angestiegen.

Mit der Einrichtung des neuen ForschungsbereichsMaschinenbauinformatik und Virtuelle Produktent-wicklung (MIVP) zum 01. 02. 2006 trägt die Fakultät fürMaschinenwesen und Betriebswissenschaften im Bereichder Lehre diesen Punkten Rechnung. Auch in den neueingerichteten Bakkalaureats- und Magisterstudienplänensind entsprechende Veranstaltungen berücksichtigt wor-den. Die Zielsetzung ist, die klassische konstruktionswis-senschaftliche Ausbildung, die das notwendige Funda-ment bildet, um das benötigte Methoden- und Anwen-dungswissen für die oben genannten Software-Applika-tionen und Spezialsysteme optimal im Sinne einerforschungsgeleiteten Lehre zu ergänzen. Obwohl am In-stitut für Konstruktionswissenschaften und TechnischeLogistik bereits seit Mitte der 1980er-Jahre erste Erfah-rungen mit 3D-CAD Produkten gesammelt wurden unddiese seit 1990 auch in der Lehre umgesetzt wurden,wird durch Schaffung des neuen Forschungsbereichs derRechnerunterstützung ein neues Gewicht verliehen.

Die Basis für eine moderne Ausbildung bildet eineentsprechende Hard- und Software-Infrastruktur, auf dienachfolgend näher eingegangen wird.

Realisierung des Rechnerlabors

Bei der Planung des Rechner-Labors war entschei-dend, dass die Arbeitsplatzrechner als Workstations mitWindows als Betriebssystem eingerichtet werden sollten.Der Grund hierfür ist insbesondere die Tatsache, dass einGroßteil der Anwendungssoftware entweder nur auf derWindows-Plattform zur Verfügung steht oder zumindestWindows die primäre Entwicklungsplattform der System-hersteller ist, was eine langfristige Update-Fähigkeit unddie Verfügbarkeit aktueller Versionen sicherstellt. Fol-gende Gruppen von Anwendungssoftware sollen imLabor für Virtuelle Produktentwicklung zum Einsatzkommen:

• Integrierte 3D-CAx-Systeme• Spezialisierte Programme für Berechnung, Simulation

und Visualisierung• Produktdatenmanagementsysteme und andere betriebli-

che Informationssysteme• Integrierte Software-Entwicklungsumgebungen (IDEs)

für gängige Programmiersprachen wie Java oder C++

Um die bekannten Nachteile Windows-basierterClient/Server-Netzwerke im Hinblick auf die Sicherheits-problematik und den Administrationsaufwand möglichstgering zu halten, wurden verschiedene Lösungen in Be-tracht gezogen und evaluiert. Dabei gab es auch Gesprä-che mit dem ZID über dessen Erfahrungen mitvorhandenen Systemen an der TU. Der Einsatz einerwartungsarmen Server-Based Computing Plattform, wieWindows Terminal Server oder Citrix Presentation Ser-ver, kam nicht in Betracht, da dieser Ansatz nicht für re-chen- und insbesondere graphikintensive Applikationen,wie sie CAx-Systeme darstellen, geeignet ist. Das unterdem Codenamen „Tarpon“ angekündigte ApplicationStreaming Produkt von Citrix, das Anwendungs-Software,analog zu der Verfahrensweise bei einem Video-Stream,vom Server lädt, ohne eine lokale Installation vornehmenzu müssen, war zum Zeitpunkt der Entscheidungsfindungnoch nicht verfügbar, wird aber zukünftig sicher nocheinmal separat evaluiert werden.

Konzept des Labors

Am Ende der Überlegungen fiel die Entscheidung,eine so genannte Software-Streaming Plattform der Fa.Ardence (www.ardence.com) einzusetzen, mit der schonpositive Erfahrungen in dem EDV-Labor der FakultätBauingenieurwesen gemacht wurden.

Die Idee hinter der Ardence Desktop Edition ist imWesentlichen, die Probleme bzw. die hohen Aufwendun-gen, die bei der Administration von PCs entstehen, da-durch zu vermeiden, dass sowohl das Betriebssystem alsauch die Anwendungen über das Netzwerk zentralisiertbereitgestellt werden, anstelle über die lokale Festplatte

ZIDline 15 – Dezember 2006 – Seite 31

Einordnung und Funktion von PDM Systemen

Page 32: ZIDline 15

jedes einzelnen Rechners. Dadurch reduziert sich der Ad-ministrationsaufwand auf die Erstellung und Wartung(z. B. Neuinstallation, Patch-Management und Updatevon Softwareanwendungen) eines einzigen „Mas-ter“-Image, das beim Hochfahren der einzelnen Worksta-tions vom Server geladen wird. Damit auf dem Servernur ein Arbeitsplatz-Image eingerichtet werden muss,müssen alle Arbeitsplatzrechner komplett gleich ausge-stattet sein, was im vorliegenden Fall gegeben war. Es istjedoch auch möglich, verschiedene Images für unter-schiedliche Rechnergruppen, die nicht gleichartig ausge-stattet sind, oder für unterschiedliche Einsatzzwecke mitentsprechenden Software-Konfigurationen, bereitzustel-len. Ein weiterer Vorteil ist, dass alle Daten zwangsläufigauf dem Server und nicht lokal gespeichert werden müs-sen, was neben einer erhöhten Datensicherheit auch denVorteil hat, das man nicht notwendigerweise immer amselben Arbeitsplatz arbeiten muss, um wirklich eineidentische Arbeitsumgebung vorzufinden.

Versehentliche oder beabsichtigte Modifizierungen desWindows-Desktops sind nach jedem Rechnerneustartweg. Gefährdungen durch Computer-Viren oder Malwareim Allgemeinen sind somit ebenfalls ausgeschaltet. Dieeingebaute Festplatte kann deaktiviert werden, da sie fürden Normalbetrieb nicht erforderlich ist, es sei denn, siewird als lokaler Cache eingesetzt, um die Performance zuverbessern. Die Userdaten der Studenten werden auf denStudentenservern unter den jeweiligen Studentenaccountsgespeichert. Somit haben die Studenten alle ihre Datenzentral gespeichert und müssen sich nicht aufzusätzlichen Servern einloggen.

Hardware und Netzwerkinfrastruktur

Die 18+1 Arbeitsplätze sind ausgestattet mit Intel-ba-sierten Workstations der Firma HP (3,2 GHz Dual CoreProzessoren, 2GB RAM, NVIDIA FX1400 Graphikbe-schleuniger) mit 20" Wide Screen TFT-Bildschirmen,Multimedia-Unterstützung. Zudem ist jeder Arbeitsplatzmit dem so genannten Space Traveller, einem speziali-sierten 3D-CAD Eingabegerät der Fa. 3DConnexion(www.3dconnexion.de) für Pan, Zoom und Rotate Funk-

tion, ausgestattet, mit dem 3D-Modelle beliebig im Raumorientiert werden können, ohne CAD-Funktionen ab-oder unterbrechen zu müssen.

Die Leistungsfähigkeit im Netzwerk wird durch einedurchgängige GBit-Verbindung zwischen Desktop-Work-stations und Server gewährleistet. Die Serverseite ist ent-sprechend leistungsfähig ausgelegt, da Server imverwendeten Konzept ein „single point of failure“ dar-stellen. Neben der Funktion des Ardence Servers werdenfür das Rechner-Labor für die PDM-SystemumgebungDatenbank- und Applikationsserver benötigt. Für die ge-nannten Aufgaben werden Doppelprozessormaschinender Firma HP mit bis zu 8 GB RAM und Windows 2003Server als Betriebssystem eingesetzt. Eine externe Fest-platteneinheit sorgt für ca. ein Terabyte Speicherkapazitätder Anlage. Eine entsprechende Daten- bzw. Ausfallsi-cherheit wird durch getrennte RAID-Systeme, jeweils fürBetriebssystem und Datenbereich, erreicht. Alle Serversind klimatisiert untergebracht und durch redundantausgelegte Netzteile und Kühler sowie durch eine unter-brechungsfreie Stromversorgung abgesichert.

Zur Benutzer-Authentifizierung über den TU-Accountder Studierenden wird das Programm PGina verwendet(http://sourceforge.net/projects/pgina). PGina ersetzt diestandardmäßig auf der Windows-Plattform verwendeteGINA (Graphical Identification aNd Authentication)DLL durch einen entsprechenden Ersatz, mit dem über sogenannte Plugins auf unterschiedliche Weise eine Au-thentifizierung durchgeführt kann, beispielsweise in demUNIX-Server oder LDAP Directories angesprochen wer-den. Auf diese Weise können alle Studierenden mit gülti-gem Studentenaccount validiert werden, ohne dass eineseparate Benutzerverwaltung aufgebaut werden muss.Dies ist ein entscheidender Vorteil in Bezug auf den Ad-ministrationsaufwand. Eine Überprüfung der Accounts imHinblick auf die Teilnahme an bestimmten Veranstaltun-gen und damit verbundene Rechte ist derzeit über diesesSystem noch nicht möglich aber auch nicht notwendig, dader Zugang zum Rechner-Labor limitiert ist.

Anwendungs-Software

Ein Grundsatz im Bereich der Lehre ist, dass keine„Spezialisten“ für eine bestimmte Anwendungssoftwareausgebildet werden sollen, sondern dass den Studieren-den ein in erster Linie systemneutraler bzw. systemüber-greifender Zugang zu den Applikationen vermitteltwerden soll. Jedes CAx-System hat seine Stärken undSchwächen und in Bezug auf die zu verwendende Me-thodik ergeben sich enorme Unterschiede in Abhängig-keit der Art, wie bestimmte Systeme funktionieren.Wichtig ist, ein entsprechendes Methodenwissen zu ver-mitteln und hier liegt der Schwerpunkt im Rahmen derAusbildung. Je nach Projekt, in das Studierende an denverschiedenen Instituten der Fakultät eingebunden sind,sind ohnehin bestimmte Systeme vorgegeben. Im Rech-nerlabor sind verschiedene, marktführende Systeme ver-fügbar, teilweise durch Nutzung von Campus-Lizenzen,teilweise durch individuell mit den Systemherstellernverhandelte Abkommen. Im Bereich der integrierten3D-CAD/CAE/CAM-Systeme sind dies insbesondere:

Seite 32 – Dezember 2006 – ZIDline 15

Das Rechnerlabor für Virtuelle Produktentwicklung

Page 33: ZIDline 15

• Catia (IBM/Dassault)• One Space Designer (CoCreate)• Pro/ENGINEER Wildfire (PTC)• Solid Edge (Unigraphics)

Der PDM-Bereich wird zunächst mit den SystemenWindchill der Fa. PTC (www.ptc.com) und CIM DATA-BASE von Contact Software (www.contact.de) umge-setzt. Windchill nutzt konsequent Web-Technologien undbesteht aus den Hauptkomponenten PDMLink für dasManagement produktbezogener Daten und die Integrationvon CAx-Systemen und ProjectLink, das als Plattformfür teamorientiertes Arbeiten dient. CIM DATABASE isteine plattform- und CAD-unabhängige PDM-Lösung zurVerwaltung aller technischen Dokumente, Daten, Abläufeund Projekte in Unternehmen. Sie zeichnet sich ebenfallsdurch eine moderne, skalierbare Systemtechnologie aus,verfügt über Standardintegrationen zu zahlreichen CAD-und ERP-Systemen und wird komplett aus Deutschland(Bremen) heraus entwickelt und vertrieben.

Mit PTC konnte im Rahmen der Einrichtung desRechnerlabors eine Campus-Lizenz (500 User) verhan-delt werden, die Anwendern an der gesamten TU zurVerfügung steht. Im Rechnerlabor wird eine entspre-chende Windchill-Standardumgebung implementiert, diebei Interesse auch anderen Instituten zur Nutzung zurVerfügung gestellt werden kann. Beide Systeme liegenbzgl. der Kosten für die zur Verfügung stehenden Lizen-zen normalerweise, d. h. außerhalb des Hochschulbe-reichs, weit im sechsstelligen Euro-Bereich.

Zusammenfassung

Der Betrieb des Rechner-Labors konnte nach Ent-scheidung des Umsetzungskonzepts im Juni für dieCAD-Ausbildung rechtzeitig zum Wintersemester 2006

in Betrieb genommen werden und läuft seitdem problem-los. Für die Implementierung der Lösung wurde auf dieErfahrungen zurückgegriffen, die bereits beim Einrichteneines EDV-Labors im Bereich Bauingenieurwesen ge-macht wurden. Für die Unterstützung, auch seitens desZID, sei an dieser Stelle herzlich gedankt. Die wesentli-chen Vorteile der gewählten Software-Streaming Platt-form sind einfache Softwareinstallation an denArbeitsplatzrechnern, das Synchronhalten aller Rechnermit ihrer installierten Software und eine Konzentrationauf die Serverwartung.

Die leistungsfähigen Software-Produkte, die gutenKontakte zu Systemanbietern und die Beschäftigung mitder hochaktuellen Thematik PDM ermöglichen eine mo-derne Ausbildung mit allen Methoden und Werkzeugen,die heute in der Industrie im Rahmen des Produktent-wicklungsprozesses eingesetzt werden. Dies bildet aucheine gute Basis für zukunftsweisende Projekt-/Diplomar-beiten und Forschungsprojekte. Da die Entwicklung heu-tiger „mechatronischer“ Produkte immer eine Integrationvon mechanischer Konstruktion (M-CAD) mit elektro-technischer Konstruktion (E-CAD) sowie der Entwic-klung von Software erfordert, wäre es wünschenswert,wenn im Rahmen einer interfakultären Zusammenarbeitdieser ganzheitliche Ansatz auch verstärkt in die Lehreeinfließen könnte. Möglicherweise bietet die gemeinsameNutzungsmöglichkeit eines PDM-Systems auch hier eineIntegrationsplattform als Basis für derartige Aktivitäten.

Kontakt:

Institut für Konstruktionswissenschaftenund Technische LogistikForschungsbereich Maschinenbauinformatikund Virtuelle ProduktentwicklungUniv.-Prof. Dr.-Ing. Detlef Gerhardhttp://www.mivp.tuwien.ac.at/

ZIDline 15 – Dezember 2006 – Seite 33

Beispiel Desktop

Page 34: ZIDline 15

Seite 34 – Dezember 2006 – ZIDline 15

PersonalnachrichtenHerr Siegfried Loibner arbeitet

seit Anfang Juni als Vertetung fürFrau Natalie Kamenik, die sich zur-zeit in Karenz befindet, im BereichCampus Software Setup.

Wir wünschen ihm viel Erfolgund Freude bei seiner Tätigkeit amZID.

Zur Betreuung der Internet-Räume und im Service Cen-ter sind am ZID folgende Studienassistenten angestellt:

C. FellingerJ. GreilbergerM. HoferM. JarosH. JudtP. KotikP. LischkaT. WojcikDipl.-Ing. M. WögerbauerK. Wong

Herr Walter Haider hat am 1. 12.2006 die Freizeitphase seiner Alters-teilzeitkarenz angetreten.

Nach dem Abschluss seines Studi-ums der Rechentechnik im Jahr 1973begann seine berufliche Laufbahn amRechenzentrum der TU Wien, Abt.Digitalrechenanlage. Herr Haider warvor allem für die Betreuung von Softwarepaketen (Instal-lation, Anpassungen an die verschiedenen Betriebssyste-me, Dokumentationen) zuständig. Seit 1990 arbeiteteHerr Haider am ZID zunächst in der Abteilung Instituts-unterstützung, dann in der Abteilung Zentrale Servicesund betreute zusätzlich zu seinen Software-Aufgaben dieSGI-Systeme als Systemadministrator.

Wir möchten uns bei Walter Haider für seinen großenEinsatz und sein Engagement bei der Lösung von techni-schen und sozialen Problemen herzlich bedanken undwünschen ihm für diesen neuen Lebensabschnitt vor al-lem Gesundheit und alles Gute.

Auskünfte, Störungsmeldungen:

Service CenterBitte wenden Sie sich bei allen Fragen und Problemen,die das Service-Angebot des ZID betreffen, zunächst an das Service Center.

Telefon: 58801-

Adresse: 1040 Wien, Wiedner Hauptstraße 8-10, Freihaus, 2.OG, gelber BereichMontag bis Freitag, 8 bis 17 Uhr

Ticket System: https://service.zid.tuwien.ac.at/support/

E-Mail-Adressen: [email protected] allgemeine Anfragenfür Auskünfte und [email protected] TUNET StörungenStörungsmeldungen [email protected] TUNET Rechneranmeldung / Administrativa

[email protected] [email protected] TU-ADSL [email protected] Netz- und [email protected] Systemunterstü[email protected] Operating zentrale [email protected] [email protected] Internet-Rä[email protected] TUWIS++

Page 35: ZIDline 15

Telefonliste, E-Mail-AdressenZentraler Informatikdienst (ZID)der Technischen Universität WienWiedner Hauptstraße 8-10 / E020, 1040 WienTel.: (01) 58801-42002Fax: (01) 58801-42099Web: www.zid.tuwien.ac.at

Leiter des Zentralen Informatikdienstes:W. Kleinert 42010 [email protected]

Administration:

S. Freisleben 42015 [email protected]

A. Müller 42015 [email protected]

M. Grebhann-Haas 42018 [email protected]

Öffentlichkeitsarbeit

I. Husinsky 42014 [email protected]

I. Macsek 42047 [email protected]

Service Center

Leitung:

Ph. Kolmann 42011 [email protected]

Th. Pitlik 42012 [email protected]

H. Ehrhardt 42066 [email protected]

S. Geringer 42065 [email protected]

M. Markowitsch 42062 [email protected]

S. Bachinger [email protected]

P. Eisele [email protected]

D. Österreicher [email protected]

K. Pegac [email protected]

D. Sabounji [email protected]

A. Sorger [email protected]

ADV-Abteilungwww.zid.tuwien.ac.at/adv/

Leitung:

E. Dvorak 41070 [email protected]

M. Beer 41077 [email protected]

B. Borovali 41072 [email protected]

J. Divisch 41079 [email protected]

F. Glaser 41074 [email protected]

S. Gründlinger 41194 [email protected]

A. Knarek 41075 [email protected]

D. Lyzczarz 41076 [email protected]

W. Niedermayer 41195 [email protected]

A. Rajkovats 41073 [email protected]

R. Vargason 41196 [email protected]

M. Wograndl 41078 [email protected]

Abteilung Standardsoftwarests.tuwien.ac.at

Leitung

A. Blauensteiner 42020 [email protected]

Ch. Beisteiner 42021 [email protected]

J. Donatowicz 42028 [email protected]

G. Gollmann 42022 [email protected]

M. Holzinger 42025 [email protected]

I. Jaitner 42037 [email protected]

A. Klauda 42024 [email protected]

R. Ladner 42033 [email protected]

S. Loibner 42034 [email protected]

H. Mastal 42079 [email protected]

H. Mayer 42027 [email protected]

Th. Mikulka 42023 [email protected]

E. Schörg 42029 [email protected]

R. Sedlaczek 42030 [email protected]

W. Selos 42031 [email protected]

B. Simon 42032 [email protected]

W. Steinmann 42036 [email protected]

P. Torzicky 42035 [email protected]

Abteilung Kommunikationnic.tuwien.ac.at

Leitung

J. Demel 42040 [email protected]

F. Blöser 42041 [email protected]

G. Bruckner 42046 [email protected]

Th. Eigner 42052 [email protected]

Th. Gonschorowski 42056 [email protected]

J. Haider 42043 [email protected]

P. Hasler 42044 [email protected]

G. Kittel 42042 [email protected]

J. Kainrath 42045 [email protected]

J. Klasek 42049 [email protected]

W. Koch 42053 [email protected]

F. Matasovic 42048 [email protected]

W. Meyer 42050 [email protected]

J. Öttl 42057 [email protected]

Ch. Schwarz 42055 [email protected]

A. Straschil 42057 [email protected]

R. Vojta 42054 [email protected]

Michael Weiss 42058 [email protected]

Walter Weiss 42051 [email protected]

Abteilung Zentrale Serviceswww.zserv.tuwien.ac.at

Leitung

P. Berger 42070 [email protected]

W. Altfahrt 42072 [email protected]

J. Beiglböck 42071 [email protected]

P. Deinlein 42074 [email protected]

P. Egler 42094 [email protected]

C. Felber 42083 [email protected]

H. Flamm 42092 [email protected]

E. Haunschmid 42080 [email protected]

M. Hofbauer 42085 [email protected]

F. Mayer 42082 [email protected]

J. Pfennig 42076 [email protected]

M. Rathmayer 42086 [email protected]

M. Roth 42091 [email protected]

J. Sadovsky 42073 [email protected]

D. Sonnleitner 42087 [email protected]

Werner Weiss 42077 [email protected]

ZIDline 15 – Dezember 2006 – Seite 35

Page 36: ZIDline 15

Auskünfte,

StörungsmeldungenBitte wenden Sie sich bei allen Fragen und Problemen, die

das Service-Angebot des ZID betreffen, zunächst an das

Service Center.

Anfragen im Web (Ticket System):

https://service.zid.tuwien.ac.at/support/

Service Center

Wo: Zentraler Informatikdienst1040 Wien, Wiedner Hauptstraße 8-10Freihaus, 2.OG, gelber Bereich

Wann: Montag bis Freitag, 8 bis 17 Uhr

Telefon: 58801 - 42002