Netzwerke
Gregor Retti
SS 1996
Skriptum zur Lehrveranstaltung: Datenbanken und Netzwerke (2. Teil)
Retti@germ1.uibk.ac.at
Inhaltsübersicht
An Computernetzwerken können eine Handvoll Rechner oder tausende Computer angeschlossen sein, sie können aus zweidrahtigen Kabeln bestehen, wie man sie in jedem Elektrogeschäft finden kann, oder Glasfaserleitung und Satellitenverbindungen, die Verbindung kann permanent sein oder nur für kurze Zeit aufgebaut werden und die Nutzung von Computernetzen kann vielfältig sein, wie die Nutzung von Computern es schon ist.
Im folgenden kann nur ein Abriß von dem gegeben werden, woraus Computernetzwerke bestehen, wie sie in etwa funktionieren und was man mit ihnen machen kann.
Unter Computernetzwerken versteht man üblicherweise mindestens zwei Computer, die in irgendeiner Art und Weise miteinander verbunden, "vernetzt", sind. Für diese Verbindung kommt spezialisierte Hardware und Software zur Anwendung. Manche Computer werden standardmäßig mit diesen Hard- und Softwarekomponenten ausgeliefert, bei anderen muß man sie zukaufen und nachträglich installieren. Manche Betriebssysteme integrieren Netzwerkfähigkeit, andere tun dies nicht. Da die Entwicklung zu immer stärkerer Vernetzung tendiert, werden immer mehr Komponenten in Standardausstattungen integriert. Ein wichtiger Gesichtspunkt bei Vernetzungen ist die maximal mögliche Datenübertragung, natürlich in einer vernünftigen Relation zu der angestrebten Nutzung.
Computer werden an Netzwerke über sogenannte Schnittstellen ("Interfaces") angeschlossen. Netzwerke können aus praktisch allen denkbaren Komponenten bestehen, welche in der Lage sind, digitale Signale zu übertragen. Es können dies Telefonleitungen, Funkstrecken, Infrarotsignale, Metallkabel unterschiedlichester Bauart, Glasfaserkabel usw. usf. sein. Dazu kommen spezialisierte Hardwarekomponenten, manche um die Signale von einem Medium aufs andere zu übertragen (z.B. Modem), andere um die Signale zu verstärken. Manche dieser Komponenten sind recht einfach und billig, andere dagegen höchst komplex und um einiges teurer als ein guter PC.
Für einen "Personal Computer" (einen Arbeitsplatz- oder Heimcomputer) kommen folgende Harewarekomponenten in Betracht:
- Modem
- Ein Modem ("MODulate DEModulate") dient der Umwandlung und Rückwandlung von digitalen in analoge Signale. Es wird verwendet, um über herkömmliche Telefonleitungen Netzwerkverbindungen zu errichten, wobei an der angerufenen Gegenstelle auch ein Modem vorhanden sein muß. Modems werden an der seriellen Schnittstelle des Computers angeschlossen (COM1, COM2 usw. bei PCs, Modem- oder Druckeranschluß bei Macintosh). Ein wichtiger Leistungsparameter für Modems ist die maximale Geschwindigkeit auf der Telefonleitung, derzeit ist 28.800 bps ("bits per second") die verbreitete Höchstgeschwindigkeit. Oft wird die maximale Geschwindigkeit eines Modems auch in "baud" oder als "Baudrate" angegeben, benannt nach dem französischen Erfinder des Telegrafenapparats mit Typendrucker Emilie Baudot (1845-1903), wobei dies an sich die Zahl der Signale pro Sekunde auf einem Kommunikatioskanal angibt und daher technische nicht ganz korrekt ist. Da moderne Modems nicht nur mit Algorithmen zur Fehlerkorrektur, sondern auch mit solchen zur Datenkompremierung arbeiten, um die Übertragsgeschwindigkeit zu steigern, spielt auch die höchstmögliche Geschwindigkeit zwischen dem Modem und dem Computer, also die Geschwindigkeit auf der seriellen Schnittstelle eine Rolle. Insbesondere bei älteren PCs ist es oft notwendig, die serielle Schnittstelle mit einem speziellen Chip nachzurüsten, damit der aus hoher Datenübertragungsrate und Kompression gewonnene Geschwindigkeitsvorteil realisiert werden kann.
- Netzwerkkarte
- Netzwerkkarten (Netzwerkadapter) dienen dem Anschluß eines Computers an ein LAN ("Local Area Network" - vgl. unten). Der in diesem Bereich am häufigsten anzutreffende Typ von Netzwerken ist "Ethernet". Entsprechend der Verkabelung bzw. dem notwendigen Anschlußkabel wird zwischen Thick-Ethernet (Thick Coax Cabeling, Yellow Cable, AUI - Attachment Unit Interface), Thin-Ethernet (Thin Coax Cabeling, Black Cable, BNC-Anschluß, 10Base-2) oder 10Base-T (UTP - Unshielded Twisted Pair Cabel, RJ-45-Anschluß) unterschieden.
Die oben erwähnten hochspezialisierten Hardwarekomponenten werden selbstredend oft mit ebenso spezialisierter Software betrieben. Dies sei der Vollständigkeit halber erwähnt.
Für einen an eine Netzwerk angeschlossenen Arbeitsplatzrechner gilt: ähnlich wie ein Drucker nur genutzt werden kann, wenn im Computer ein entsprechender Softwarezusatz (Treiber, Driver) installiert ist, kann ein Netzwerkinterface nicht ohne die entsprechende Treibersoftware angesprochen werden. Diese Software ist zumeist sehr hardwarespezifisch und wird beim Kauf einer Netzwerkkarte oder eines anderen Netzwerkadapters mitgeliefert. Die meisten Hersteller veröffentlichen die Spezifikationen zu ihren Produkten ganz oder teilweise, so daß Treibersoftware auch von Dritten erstellt werden kann. Dies ist insbesondere von Bedeutung, wenn man in Erwägung zieht, daß etwa für die am weitesten verbreitete Rechner-Plattform mit Intel-Prozessoren (oder sogenannten "Clones", als nachgebauten Prozessoren) derzeit etliche verschiedene Betriebssysteme verfügbar sind (DOS/Windows, Windows 95, Windows NT, OS/2, Linux, SCO-Unix, Solaris, FreeBSD, NetBSD usw.).
Mit der Treibersoftware allein ist es aber nicht getan, diese stellt lediglich sicher, daß die CPU im Prinzip mit dem Netzwerkinterface Daten austauschen kann. Damit der Datenaustausch zwischen verschiedenen Rechnern (oder anderen Geräten) an einem Netzwerk funktioniert, müssen diese eine gemeinsame Sprache sprechen. Solche Sprachen nennt man "Protokolle". Protokolle sind (zumeist) plattformübergreifend definiert, sie können also im Prinzip auf Rechnern verschiedenen Typs eingesetzt werden. In einem Protokoll wird festgelegt, wie die Daten auszusehen haben, die von einem Gerät zu anderen geschickt werden, was zu tun ist, wenn ein Übertragungsfehler eintritt usw.usf. Ohne ein gemeinsames Protokoll können Rechner zwar physikalisch miteinander verbunden sein, beleiben aber trotzdem unfähig, Daten auszutauschen.
Einige gängige Protokolle:
- Appletalk
- Appletalk ist das von Apple für Macintosh-Computer entwickelte Protokoll. Jeder Macintosh wird mit einer Appletalk-fähigen seriellen Schnittstelle ausgeliefert, bessere Modelle weisen standardmäßig einen Ethernetanschluß auf. Da die Netzwerkfähigkeit im Betriebssystem (Macintosh OS) integriert ist, stellt die Vernetzung von Macintosh-Computern und Appletalk-fähigen Druckern meist kein sehr großes Problem dar. In Appletalk sind eine Reihe der üblichen Netzwerk-Funktionen (vgl. unten) (Dateitransfer, Zugriff auf andere Festplatten, Drucken etc.) und einige zusätzliche Funktionen (Kommunikation von Programmen) implementiert.Um DOS/Windows-Rechner an Appletalk-Netzwerke anzuschließen, gibt es spezielle Netzwerkkarten, aber auch Softwarelösungen, die mit gängigen Ethernetkarten verwendet werden können.Weiters gibt es Softwarelösungen, die es Macintosh-Rechnern erlauben, auf Netware-Server (Novell) oder Unix-Hosts zuzugreifen. In diesen Fällen wird Appletalk auf der Seite der Server geladen und die Server benehmen sich aus der Perspektive der Macintosh-Benutzer wie andere Macintosh-Rechner.
- IPX
- IPX ist Novells Netware-Protokoll. Dieses Protokoll ist wegen der großen Verbreitung von Netware als PC-Server-Betriebssystem ziemlich häufig in LANs anzutreffen. Es wrd in erster Linie zur Kommunikation von DOS/Windows-Computern mit Netware-Servern eingesetzt. Daneben gibt es aber auch Unix-Implemetationen (Linux) und solche für Macintosh-Rechner (MacIPX). Die Funktionen (vgl. unten) sind die eines typischen NOS (Netzwork Operating System). IPX-Software wird m.W. mit allen Ethernetadaptern für Intel-basierte Rechner mitgeliefert.
- TCP/IP
- TCP/IP (Transmission Control Protocol / Internet Protocol) ist die Bezeichnung für eine ganze Gruppe von Protokollen, die im Internet eingesetzt werden (tatsächlich ist TCP nur eines aus dieser Gruppe). TCP/IP-Implementationen gibt es für praktisch alle gängigen Betriebssysteme:
Unter DOS/Windows finden sich kommerzielle Produkte (z.B. PCTCP der Fa. FTP) neben Sharewarerealisierungen (z.B. Trumpet Winsock für Windows).
Windows 95 enthält TCP/IP als Teil des Betriebssystems.
Auf Macintosh-Computern heißt die TCP/IP-Implementation MacTCP, bei den neuesten Modellen ist sie ein Teil von Open Transport.
Unter Unix ist TCP/IP eine Selbstverständlichkeit. Mit TCP/IP können eine Vielzahl von Funktionen (vgl. unten) realisiert werden.
Neben den genannten Protokollen gibt es noch eine ganze Reihe weiterer: DEC Pathworks, Banyan Vines, SNI ...
Ein wichtiges Unterscheidungskriterium für Netzwerke ist die Rolle der einzelnen mit ihm verbundenen Computer. Hier unterscheidet man zwischen quasi gleichberechtigten Rollen in sogenannten Peer-To-Peer-Netzwerken einerseits und unterschiedlichen Rollen in Client-Server-Netzwerken andererseits. Man könnte auch sagen, daß sich Peer-To-Peer-Netzwerke dadurch auszeichnen, daß die Computer gleichzeitig als Clients und als Server fungieren. Tatsächlich ist es so, daß die Leistungskapazität bei Peer-To-Peer-Netzwerken im Vergleich zu Client-Server-Netzwerken deutlich eingeschränkt ist, einfach aus dem Grund, daß auf jedem beteiligten Rechner gleichzeitig die Software, um als Client zu agieren, wie jene, um als Server zu dienen, aktiv sein muß. Üblicherweise ist es so, daß ein Server mit größeren Hardwarekapazitäten ausgestattet ist (schnellerer Prozessor, mehr Hauptspeicher, größere Festplatten etc.), während Client-Rechner lediglich den üblichen Anforderungen an einen Arbeitsplatz genügen müßen.
Unter der Topologie eines Netzwerks versteht man dessen physikalischen Aufbau. Unterschieden wird zwischen Daisy-Chain-, Backbone-, Ring- und Sterntopologien. Diese können unter Verwendung entsprechender Hardware auch miteinander kombiniert werden. Je nach Topologie und Material der Übertragungsstrecke bzw. Geschwindigkeit gibt es Maximalzahlen für die Größe des Netzwerks hinsichtlich Ausdehnung und Zahl der anschließbaren Geräte.
Oft werden Netzwerke nach ihrer Ausdehnung unterschieden. Unter einem LAN (Local Area Network) versteht man ein Netz in einem geschlossenen Gebäudekomplex, ein WAN (Wide Area Network) verbindet mehrere LANs und ein MAN (Metropolitan Area Network) mehrere WANs.
Die Einsatzmöglichkeit von Netzwerken ist relativ breit. In den meisten Fällen stehen jedoch einige wenige Funktionen im Vordergrund. In einem Bereich handelt es sich um das gemeinsame Nutzen von Resourcen wie Druckern, in einem anderen um den schnellen Austausch von Daten wie z.B. über eine Mehrplatz-Datenbank.
Server sind, wie oben erwähnt, Rechner im Netz, die nicht als Arbeitsplätze dienen, sondern für andere Arbeitsplätze über das Netzwerk zur Verfügung stehen.
Einige Verwendungszwecke von Servern:
- Printserver
- Gemeinsame Nutzung eines (teueren) Druckers, Plotters oder dgl. Printserverfähigkeit gehört zur Basisfunktionalität in LANs. Manche Drucker haben diese Fähigkeit integriert, dh. sie müsssen lediglich am lokalen Netzwerk angeschlossen werden.
- Faxserver
- Gemeinsame Nutzung einer Faxverbindung, der Faxserver empfängt und verschickt Faxe, die ihm über das Netz zugesandt werden. Es gibt auch Faxmodems, die diese Fähigkeit besitzen.
- Mailserver
- Verwaltet elektronische Nachrichten - "EMail".
- Backupserver
- Meist mit umfangreichen Speichermedien ausgestatteter Rechner, auf den automatisch oder manuell die Daten der einzelnen Arbeitsplatzrechner gesichert werden.
- Fileserver
- Statt die Daten auf den Festplatten der Arbeitsplatzrechner abzlegen, werden diese auf dem Fileserver deponiert. Diese Funktionalität ist insbesondere wichtig, wenn mehrere Benutzer an einem Dokument arbeiten wollen.
- Applikationsserver
- Ähnlich dem Fileserver, nur das hier Programme statt auf den lokalen Arbeitsstationen auf dem Server liegen. Der Vorteil liegt in einer Entlastung der Arbeitsplatzrechner und der einfacheren Wartung der Programme.
- Datenbankserver
- Spezialisierter Server, auf dem eine (oder mehrere) Datenbanken den Arbeitsplatzrechnern zur Verfügung gestellt werden.
Zwar ist das Internet einer breiten Öffentlichkeit erst seit rund zwei Jahren bekannt, gegeben hat es das Internet aber schon über ein Jahrzehnt. Internet steht für den Zusammenschluß von mehreren Netzwerken. Heute erstreckt sich das Internet fast über die ganze Welt. Als Protokoll wird im Internet TCP/IP verwendet. Diese Protokoll sorgt dafür, daß jeder am Internet angeschlossene Rechner eine eigene Kennung, eine IP-Adresse hat. Eine IP-Adresse wird üblicherweise als Muster mit 4 Zahlen zwischen 1 und 255 dargestellt: 138.232.125.2. Da solche Nummern nur schwer zu behalten sind, gibt es eine Erleichterung für die menschlichen Benutzer des Internet, nämlich die Zuordnung von Namen zu IP-Adressen. Es handelt sich hiebei um das Domain Name System (DNS). Einem Rechner mit der IP-Adresse 138.232.125.2 wird über das DNS der Namen germ2.uibk.ac.at zugeordnet. Bei Namen von einzelnen Rechnern spricht man Hostnamen, bei denen von Bereichen von Domainnamen. Diese Aufgabe übernehmen spezielle Programme auf einzelnen Rechnern. Jede Domain muß mindestens zwei Domainnameserver haben. Das DNS orientiert sich einerseits an den ISO-Länderkürzeln (AT, DE, IT, FR, BG usw.), andererseits an den "alten" amerikanischen Kennungen, die das Internet in den Bildungsbereich (EDU), den der öffentlichen Verwaltung (GOV), den kommerziellen (COM), den militärischen (MIL), dem der Internetverwaltung (NET) und den sonstiger Organisationen (ORG) unterteilt. DNS-Namen müssen von rechts nach links gelesen werden. So läßt sich der Name germ2.uibk.ac.at folgendermaßen auflösen:
| at | Austria, Österreich |
| ac | Bildungsbereich (Universitäten, Schulen etc.) |
| uibk | Universität Innsbruck |
| germ2 | Name des Rechners |
Österreich hat ein dem amerikanischen System ähnliches Subsystem in der Unterteilung verschiedener Bereich (Bildung, Kommerz etc.). In anderen Ländern (zB. Deutschland) ist dies nicht üblich. Das DNS-System ist zwar sehr hilfreich, es kann aber äußerst schwierig sein, den Namen eines bestimmten Rechners oder auch nur einer bestimmten Domain zu erraten (in Österreich etwa hilft die Domainendung ac.at kaum, um die Adresse einer österreichischen Universität zu erraten: univie.ac.at, tu-wien.ac.at, sbg.ac.at, uni-klu.ac.at; in Deutschland haben fast alle Universitäten eine Domain der Form: uni-<stadt>.de - uni-duesseldorf.de, uni-muenchen.de - aber uni-sb.de ...).
Im Internet sind eine Reihe von Diensten (Services) verfügbar. Die bekanntesten sollen hier kurz genannte und beschrieben werden.
- EMail
- Electronic Mail - Briefe und Nachrichten werden mit dem Computer geschrieben, verschickt und gelesen. Die Geschwindigkeit und Komfortabilität (und auch die Kostengünstigkeit) von EMail sind gegenüber anderen Formen der Telekommunikation unübertroffen. EMail ist keineswegs ein Dienst, der für das Internet ausschließlich oder typisch wäre. Es gibt von lokalen Mailsystemen in LANs bis zu weltweit operierenden Online-Diensten viele Möglichkeiten der Verwendung von EMail außerhalb des Internet. Über das Internet jedoch ist es möglich, EMail von praktisch jedem Punkt der Welt an einen anderen zu schicken. Da über das Internet zu anderen Netzen Übergangsstellen für EMail (Gateways) existieren, ist EMail der im und über das Internet hinaus am weitesten verbreitete Dienst. Damit man im Internet EMail verwenden kann, benötigt man als erstes eine EMail-Adresse. Dies ist eine weltweit eindeutige Kennung, die (physikalisch) mit einer bestimmten Mailbox auf einem bestimmten Rechner zusammenhängt. EMail-Adressen haben (im Internet) die Struktur:
<Benutzername>@<Host-/Domainteil>
Als Zeichen sind Buchstaben, Zahlen, Bindestriche und Punkte erlaubt. Groß- und Kleinschreibung wird nicht unterschieden. Während beim Benutzernamen eine gewissen Freiheit der Nameswahl möglich ist, ist diese beim Host-/Domainteil eingeschränkt, da dieser Teil durch das Domain Name System des Internet geregelt wird. Technisch gesehen wird eine EMail-Nachricht an den Rechner, der im hinteren Teil der EMail-Adresse genannt ist, geschickt. Dieser stellt dann die Nachricht an den Benutzer, der im vorderen Teil der Nachricht genannt ist, zu. Die Nachricht bleibt dann solange auf dem Rechner in der Mailbox des Benutzers liegen, bis dieser sie abholt oder löscht.(mehr dazu: http://germ2.uibk.ac.at/email/)
Im Internet wird EMail mittels des Simpel Mail Transfer Protocols (SMTP) implementiert.
- Newsgroups
- auch Usenet News - Usenet News (und das dazugehörige Protokoll NNTP - Net News Transfer Protocol) wurden als Reaktionen auf den zunehmenend Gebrauch von EMail als Verteiler von Informationen an viele Empfänger entwickelt (Mailing-Listen). Newsgroup-Beiträge werden thematisch in Gruppen geordnet zwischen News-Servern ausgetauscht und können von Zugangsberechtigen gelesen werden. Diese können auch ihrerseits Beiträge einbringen. Newsgroups werden von einer Vielzahl von Internetteilnehmern gelesen, darauf sollte man Rücksicht nehmen, wenn man einen Beitrag beisteuert. Zu beachten sind Dinge wie Netiquette, das gute Benehmen in der Internetcommunity. Gruppen gibt es zu den unterschiedlichsten Themen. Derzeit gibt es etwa 18.000 Newsgroups, ein durchschnittlicher News-Server führt normalerweise um die 4.000 Gruppen. Für das Internet stellen Newsgroups eine nicht unbeträchtliches technisches Problem dar, da die permanente Weitergabe von vielen Beiträgen beträchtliche Leitungskapazitäten in Anspruch nimmt. In vielen Newsgroups gibt es sogenannte FAQ (Frequent Asked Questions), die oftmals für den Einstieg in eine bestimmte Materie reichlich Material liefert. Zum Lesen von Newsgroups werden spezielle Programme - Newsreader - verwendet.
- Telnet
- Telnet ist weniger ein Dienst als ein Protokoll. Telnet dient dazu, auf einem entfernten Rechner eine Arbeitssitzung durchzuführen. Auf dem eigenen Rechner werden (in einem Fenster oder auf dem ganzen Bildschirm) die Ausgaben der Programme auf dem entfernten Rechner dargestellt, die Eingaben erfolgen über die eigene Tastatur. Entsprechend vergangenen Zeiten, als an einem großen Rechner viele dumme Terminals hingen (Endgeräte), spricht man von Terminalprogrammen oder Terminalemulationen.Telnet wird vor allem zum interaktiven Arbeiten auf mittlerern und größerern Rechnern verwendet.
- FTP
- File Transfer Protocol - diese Protokoll implementiert die Übertragung von Dateien von einem Rechner auf einen anderen über das Internet. Im Internet ist dieser Dienst deshalb besonders interessant, weil er zur Verbreitung von Informationen, Programmen und Programmzusätzen verwendet wird. Diese Daten werden auf frei zugänglichen Rechnern abgelegt und können von jedem am Internet angeschlossenen Rechner aus kopiert werden. Da man sich an einem solchen Rechner meist mit "anonymous" anmelden muß, wird auch oft von "anonymous ftp" gesprochen. Große FTP-Archive stellen eine schier unerschöpfliche Quelle dar. Server mit frei zugänglichen FTP-Archiven haben üblicherweise den Namen ftp.<domain> (zB. ftp.apple.com, ftp.univie.ac.at). (mehr dazu: http://www.carrier.co.at/res/mac/ftp.html)
- WWW
- World Wide Web - die schöne bunte Internetwelt. Das dem WWW zugrundeliegende Protokoll heißt HTTP - Hypertext Transfer Protocol. Im WWW können Multimediadaten (Texte, Bilder, Töne, Videosequenzen) übertragen werden. WWW hat das Internet eigentlich erst einer breiteren Öffentlichkeit bekannt gemacht - oft wird es mit dem Internet gleichgesetzt. Ein Vorläufer von WWW war Gopher, ein rein textbasiertes Informationssystem. Das WWW beruht wie die anderen Internetdienste auf Rechnern, die permanent am Internet angeschlossen sind und als WWW- oder Web-Server dienen. Von diesen können mittels eines geeigneten Programms, eines Web-Browsers, Informationen in der Form von HTML-Dokumenten abgerufen werden. HTML (Hypertext Markup Language) ist die Fomatierungssprache für WWW-Dokumente. Diese erlaubt eine einfache Textformatierung, das Einbinden von externen Grafikdateien und die Integration von Verweisen auf andere HTML-Dokumente. Wie HTML-Dokumente auf dem Bildschirm erscheinen, hängt vom verwendeten Browser ab, dh. die Formatierungssprache des Dokument wird vom Browser interpretiert. Durch die in HTML möglichen Querverweise, die sich dem Benutzer eines Browers zB. als unterstrichener andersfärbiger Text darstellen, auf den er einfach klicken kann, um zu dem anderen Dokument, auf das verwiesen wird, zu gelangen, wird das WWW zu einem riesigen untereinander verknüpften Informationsraum. Das um und auf in diesen Verknüpfungen sind URLs (Uniform Resource Locator). Ein URL hat die Struktur:
<Protokoll>://<Servername>/[<Pfad>]
Für WWW-Dokumente ist das Protokoll "http". Servernamen folgen den Regeln des DNS (vgl. oben). Bei Pfadangaben ist oft die Unterscheidung zwischen Groß- und Kleinschreibung wichtig.Wegen der wachsenden Größe des WWW ist es oft schon schwierig, zu finden, was einen interessiert. Hilfestellung bieten "Searchengines", die versuchen, die im Web verfügbaren Daten zu sammeln und suchbar aufzubereiten. Das WWW ist heute bereits reichlich chaotisch und bodenlos, nicht zuletzt weil ca. 50.000 Menschen permanent an neuem Input arbeiten. Die Unübersichtlichkeit kann beim Einstieg zwar Frustrationen auslösen, man sollte jedoch nicht aus den Augen verlieren, daß die Vorteile der Desorganisiertheit und Dezentralisiertheit in Vielfalt, Abwechslungsreichtum und Kreativität ihren Widerpart haben.