Die Kommunikation im Internet basiert auf der TCP/IP-Protokollenfamilie.
TCP/IP liegt - wie dem bekannten ISO/OSI Referenzmodell - ein
Schichtenarchitektur zu Grunde. Zu den vier Schichten zählen
neben der Schnittstellenschicht, die
eine einheitliche Schnittstelle zur zugrundeliegenden
Kommunikationshardware, wie z.B. Ethernet oder Token
Ring, zur Verfügung stellt, die Internetschicht mit
den Protokollen IP und ICMP, die
Transportschicht mit den Protkollen TCP und
UDP und die Anwendungsschicht, die eine Vielzahl von
Protkollen umfaßt, unter anderem HTTP, SMTP, FTP und Telnet.
Das Internet Protocol dient der Fragmentierung und Adressierung
von Daten und übermittelt diese vom Sender zum Empfänger durch
das Netzwerk. Es stellt einen verbindungslosen Netzwerkdienst zur Verfügung.
|
Transmission Control Protocol (TCP)
|
|
Das Transmission Control Protocol baut auf IP auf und überwacht
den sicheren Transport der Daten. TCP ist ein verbindungsorientiertes
Protokoll, d.h. vor der Übertragung der eigentlichen Daten wird
erst eine sogenannte virtuelle Verbindung
aufgebaut. Übertragungsfehler werden von TCP automatisch korrigiert.
Das User Datagramm Protocol ist im Gegensatz zu TCP ein
verbindsloses Protokoll der Transportschicht. Jedes Packet - bei UDP
als Datagram bezeichnet - wird dabei ohne vorherigen
Verbindungsaufbau
und unabhängig von anderen Paketen einzelnen übertragen. UDP
führt keine Fehlerkorrektur durch, so daß es Aufgabe der
Anwendungsschicht ist, verlorengegangene, verdoppelte oder in der
falschen Reihenfolge gelieferte Pakete zu erkennen.
Jeder an das Internet angeschlossene Rechner besitzt eine global
eindeutige, 32 Bit lange numerische IP-Adresse. Um eine bessere
Lesbarkeit zu erreichen werden IP-Adressen meist als 4 durch Punkte
voneinander getrennte Bytes dargestellt - beispielsweise
134.100.11.181. Je nach ihrer Klasse bestimmen die ersten 1-3 Bytes
einer IP-Adresse das Netzwerk, an den der Rechner angeschlossen ist,
während die restlichen Bytes den Rechner in diesem Netzwerk
identifizieren.
Da IP-Adressen für den menschlichen Benutzer relativ unhandlich
sind, werden Rechner im Internet in der Regel durch&u uml;ber
symbolische Namen angesprochen - beispielsweise vsys1.informatik.uni-hamburg.de. Die Namen sind dabei - ähnlich wie
IP-Adressen - hierarchisch organisiert. So kann man anhand des
Suffixes meist das Land erkennen, in dem sich der Rechner
befindet. Die Zuordnung von Rechnernamen zu IP-Adressen wird von einem
speziellen verteilten (Namens-)Dienst der TCP/IP-Anwendungsschicht
realisiert, dem Domain Name Service (DNS), realisiert. Man
nennt die symbolischen Rechnernamen daher auch domain
names.
Um einzelne Anwendungen - sowohl Klienten als auch Server - auf
einem bestimmten Rechner (Host) zu unterscheiden, werden
sogenannte Ports verwendet. Jedem Port ist eine
eigene Portnummer im Bereich von 1-65535 zugeordnet. Server
verwenden meist eine wohldefinierte Portnummer <1024, an der sie
auf Anfragen von Klienten warten. Die Standardportnummer für
HTTP ist 80.
MIME (Multiporpose Internet Mail Extensions)-Typen sind sind
standardisierte Zeichenketten,
die im Internet Dateitypen bestimmen. Ein MIME-Type besteht aus
zwei durch "/" getrennten Teilen: Dem allgemeinen Typ der Daten
(z.B. text, image oder audio) und dem
spezifischen Typ der Daten (z.B. html, gif
oder jpeg). HTML-Dokumente werden durch
text/html, GIFs und JPEGs mit image/gif und
image/jpeg identifiziert.
Das im Rahmen von HTTP einzige derzeit spezifizierte Verfahren zur Benutzerauthentisierung, Basic Authentication, ist als hochgradig unsicher zu betrachten: Die Übertragung von Benutzerkennung und Paßwort erfolgt
lediglich Base64-kodiert. Es handelt sich dabei nicht um eine
Verschlüsselung, sondern lediglich um eine
Transportkodierung, die vor allem bei EMail-Systemen Anwendung
findet. Entsprechend enthalten viele Systeme Programme zur Dekodierung
von Base64-kodierten Nachrichten.
Basic Authentication ist zur Benutzerauthentisierung in offenen
Netzen, wie dem Internet nur bedingt geeignet. Andere
Sicherheitsdienste, wie Vertraulichkeit,
Verbindlichkeit und Integrität werden von HTTP
überhaupt nicht unterstützt. Hierfür sind
zusätzliche Mechanismen, wie z.B. die im folgenden kurz
vorgestellten Protokolle SSL und S-HTTP notwendig. Wenn Ihr mehr
zu diesem Thema erfahren möchtet, so solltet
Ihr den Artikel
"Verschlußsache - Sicherheit im WWW" aus der iX 12/95 lesen.
SSL ist ein Protokoll zur sicheren Kommunikation in TCP/IP-Netzwerken.
Da SSL ein Protokoll auf Ebene der Transportschicht ist, können neben
HTTP auch beliebige andere Protokolle der Anwendungsschicht, wie z.B. Telnet
oder FTP, mit Hilfe von SSL abgesichert werden. SSL stellt den Applikationen einen sicheren Kanal zur Kommunikation über TCP-Verbindungen zur Verfügung. Die Verwendung von
SSL ist für den Benutzer dabei weitgehend transparent.
SSL wurde von Netscape entwickelt und liegt derzeit in der Version 3.0
vor. Da die Spezifikation frei verfügbar ist, existieren zahlreiche
Implementierungen. SSL wird von allen Netscape-Produkten (Browser
und Server), sowie einigen anderen kommerziellen und freien Web-Servern
unterstützt. Erwähnenswert ist insbesondere die freie SSL-Implementierung
SSLeay aus Australien, die nicht den US-amerikanischen Exportbeschränkungen
unterliegt und somit auch eine hochgradig sichere Kommunikation ermöglicht. Außerdem existiert ein auf SSLeay basierender Patch für den
Apache-Server, so daß ein freier Web-Server verfügbar ist,
der eine starke Authentisierung (und Geheimhaltung) ermöglicht.
S-HTTP ist eine Erweiterung des HTTP-Protkolls um Mechanismen zur Authentifizierung
und Verschlüsselung. Im Gegensatz zu SSL kann S-HTTP daher nur
zur sicheren Kommunikation im Rahmen des WWWs eingesetzt werden.
S-HTTP hat bei weitem nicht die Verbreitung wie SSL; es wird derzeit
nur von wenigen Servern und einigen erweiterten NCSA-Mosaic-Browsern unterstützt.
CGI (Common Gateway Interface)
Standardschnittstelle, über die WWW-Server externe Applikationen
starten und mit diesen Daten austauschen.
Hard- und/oder Software, die den Datenfluß zwischen einem
privaten und einem öffentlichen (ungeschützten) Netzwerk
kontrolliert und protokolliert.
|
HTML (Hypertext Markup Language)
|
|
Textauszeichnungssprache, in der die Dokumente im WWW geschrieben
sind.
|
HTTP (Hypertext Transfer Protocol)
|
|
Standardprotokoll, mit dem WWW-Dokumente vom Web-Server zum Browser
übertragen werden.
Möglichkeit, um Dokumente übersichtlich zu
organisieren. Markierte Textstellen dienen dabei als Verweis auf ein
anderes Dokument. Im Web bilden URLs solche Links.
|
URL (Universal Resource Locator)
|
|
Standardisierte Zeichenketten, welche das Protokoll für den
Zugriff auf Dokumente und deren Position im Internet beschreiben.
| Mi 12-16 Uhr
| Raum: B-201 und RZ
| Start: 05.04.2006
|
Eine Veranstaltung des Arbeitsbereichs Verteilte Systeme und Informationssysteme (VSIS)
|
|
Letzte Änderung : 22.03.2004 - 15:17
EMail: prInt06@vsis.informatik.uni-hamburg.de