Sie sind hier:  AIB V3 > PC-Wissen > Internet & eMail > Grundlagen > Funktionsweise 
1.4.1 Internet Protocol IP Hier soll kurz erklärt werden, wie die zu übertragenden Informationen im Internet von einem auf den anderen Rechner kommen. Daten werden im Internet paketweise übertragen. Man spricht daher von einem paketvermittelten Netz. Zur Veranschaulichung ein Beispiel:
Im Telefonnetz wird für jedes Gespräch eine Leitung zwischen zwei Gesprächspartnern benötigt. Diese Leitung bleibt auch belegt, wenn keine Information übertragen wird, also keiner spricht. Hier handelt es sich um ein leitungsvermitteltes Netz.
Daten werden im Internet paketweise übertragen, d. h. längere Datenströme werden in kleinere Einheiten, eben die Pakete, zerlegt. Der Vorteil ist unter anderem, daß sich Pakete verschiedener Absender zeitlich hintereinander über eine Leitung schicken lassen.

Die Übertragung erfolgt fast so, wie Pakete von der Post transportiert werden. Wenn Informationsübertragung ansteht, wird ein Paket gepackt und mit einer Adresse versehen. Sodann wird dieses Informationspaket dem Netz überlassen, indem man es am Schalter abgibt. Das örtliche Postamt entscheidet dann aufgrund der Empfängeradresse, ob das Paket direkt an den Empfänger (wenn dieser also im Versorgungsbereich dieses Postamtes wohnt) auszuliefern ist, oder durch Einschalten von mehr oder weniger Zwischenstationen. In der Regel findet das Paket dann ein Postamt, das die Auslieferung an den Empfänger aufgrund der Adresse vornehmen kann. Schwierigkeiten bei der Auslieferung können dem Absender aufgrund der Absendeadresse mitgeteilt werden. Die einzelnen Teilnetze des Internet sind durch Geräte verbunden, die 'Router' genannt werden. Diese übernehmen die Funktion von Vermittlungsstellen und der ausliefernden 'Postämter'. Das folgende Beispiel-'Internet' verbindet vier Netze miteinander:

  • Wenn Rechner direkt miteinander verbunden sind (wie hier z. B. A mit D), so kommunizieren sie direkt miteinander.
  • Wenn Rechner nicht direkt miteinander verbunden sind (wie z. B. B mit C), so wird die Kommunikation unter Verwendung von Routern (hier D oder A) abgewickelt. In diesem Fall sucht sich jedes Paket selbständig den schnellsten Weg.
  • Wenn ein Router ausfällt, gelangen die Datenpakete auf Ausweichwegen zum Ziel. Möchte z. B. A mit D kommunizieren, und die Leitung A - D fällt aus, so werden die Daten über B oder C geroutet.
  • Eine zweifelsfreie Identifizierung des Dienstnehmers durch den Dienstanbieter ist ohne zusätzliche Autorisierungsmechanismen nicht möglich: Wenn z. B. B ein Paket zu C versendet, muß das Paket A (oder D) passieren. C empfängt also das Paket von A und bekommt von A einen Hinweis, daß das Paket ursprünglich von B kam. Wenn A lügt, hat C keine Möglichkeit, dies zu überprüfen, da C nicht direkt mit B kommunizieren kann.
  • Datensicherheit ist nicht gewährleistet, da jeder Rechner, der Pakete weiterleitet, diese Pakete auch mitlesen kann.

In den Adressen stecken Anteile, die das Empfänger-Postamt charakterisieren (Postleitzahl, Ort) und Anteile, die den Empfänger im Bereich dieses Postamtes festlegen. Diese Art der Informationsübertragung hat große Parallelen zur paketvermittelten Kommunikation im Internet.
Die Adressen, die im Internet verwendet werden, bestehen aus einer 32 Bit langen Zahl. Damit sich die Zahl leichter darstellen läßt, unterteilt man sie in 4 Bytes (zu je 8 Bit). Diese Bytes werden dezimal notiert und durch Punkte getrennt (a.b.c.d). Zum Beispiel:

    141.84.101.2
    129.187.10.25
Bei dieser Adresse werden zwei Teile unterscheiden, die Netzwerkadresse und die Rechneradresse, wobei unterschiedlich viele Bytes für beide Adressen verwendet werden:
Die Bereiche für die Netzwerkadresse ergeben sich durch die Zuordnung der ersten Bits der ersten Zahl (a), die eine Erkennung der Netz-Klassen möglich machen.

Netz-Klasse Netzwerkadresse Host-Adresse Bereich binär
A a    b.c.d 1 - 126 01xxxxxx
B a.b    c.d 128 - 191 10xxxxxx
C a.b.c    d 192 - 223 11xxxxxx

Die Netzadressen von 224.x.x.x bis 254.x.x.x werden für besondere Zwecke verwendet, z. B. 224.x.x.x für Multicast-Anwendungen.

Grundsätzlich gilt:

  • Alle Rechner mit der gleichen Netzwerkadresse gehören zu einem Netz und sind untereinander erreichbar.
  • Zur Koppelung von Netzen unterschiedlicher Adresse wird ein Router benötigt.
  • Je nach Zahl der zu koppelnden Rechner wird die Netzwerkklasse gewählt.

Jedes Datenpaket steckt quasi in einem 'Umschlag', der Absende- und Empfängeradressen enthält. Diese Adressen-Information wird den Nutzdaten vorangestellt, so daß jede Komponente im Netz, die das Protokoll TCP/IP beherrscht, aus dem Anfang des Datenpaketes herauslesen kann, woher das Paket kommt und wohin es soll. Komponenten, die das können und die zusätzlich die Möglichkeit haben, Datenpakete auf verschiedenen Wegen weiterzuschicken, sind die obengenannten Router. Diese nehmen von den Adressen immer erst die Netzanteile und entscheiden, ob das Netz direkt angeschlossen ist oder, falls nicht, an welchen nächsten Router es zu schicken ist.
Ein weiterer großer Vorteil des IP-Protokolls ist seine Unabhängigkeit vom tatsächlichen Datentransport. Die Datenpakete können über ein Ethernet, eine serielle Modemverbindung oder ein anderes Medium laufen. Für serielle Verbindungen, die häufig für die letzten Kilometer bis zum heimischen Rechner verwendet werden, gibt es spezielle IP-Protokolle. Angefangen hat es mit SLIP (Serial Line Internet Protocol), das heute weitgehend durch PPP (Point to Point Protocol) abgelöst ist.
Das Internet Protocol IP ist also hauptverantwortlich dafür, daß Daten den richtigen Weg im Internet finden. Wenn ein Datenpaket nur korrekt in einen 'IP-Briefumschlag' gesteckt wird, kann es beruhigt dem Netz übergeben werden. Was aber ist, wenn mal ein Datenpaket verloren geht? Wie versendet man überhaupt mehr Daten als die maximale Paketgröße von 1500 Bytes? Was passiert, wenn auf einer größeren Maschine, die mehrere Benutzer gleichzeitig haben kann, Datenpakete für verschiedene Benutzer eintreffen? Hierfür gibt es die Transportprotokolle TCP und UDP.

1.4.2 Transportprotokolle TCP und UDP

Innerhalb jedes IP-Briefumschlages befindet sich nun ein weiterer Briefumschlag, der vom Transportprotokoll geschrieben wird. In den meisten Fällen handelt es sich dabei um TCP. Auf diesem Umschlag steht die Information, die auf die obengenannten Probleme eingeht. Im TCP- Briefumschlag befinden sich dann endgültig die zu übertragenden Daten.
Falls man also eine große Menge an Daten zu übertragen hat, wird diese in Pakete gestückelt und die Pakete mit Nummern versehen. Die Nummern stehen dann auf dem TCP-Paket, damit die Information auf der Empfängerseite wieder richtig zusammengehängt werden kann. Vom Empfänger muß für jedes Paket eine Empfangsbestätigung geschickt werden, damit der Sender weiterarbeiten kann. Fehlt die Empfangsbestätigung für eine Nummer, so wird dieses Paket nach einer gewissen Zeit noch einmal gesandt. Weiter berechnet TCP eine Prüfsumme, die ebenfalls auf das TCP-Paket geschrieben wird. Der Empfänger berechnet ebenfalls die Prüfsumme und nimmt das Paket nur an, wenn er zum selben Ergebnis wie der Sender kommt. Verfälschte oder verlorengegangene IP-Pakete werden also auf der TCP-Ebene überwacht und gegebenenfalls wiederholt. So wird sichergestellt, daß alle Daten korrekt und vollständig übertragen werden.
Was aber, wenn der Zielrechner nicht erreichbar ist? Dazu gibt es auf dem IP-'Paketaufkleber' ein Byte namens 'Time to live' (TTL). Jeder Router, über den das Paket läuft, vermindert diesen Wert um eins. Wird der Wert Null, dann wirft der nächste Router das Datenpaket weg. Auch diese Weise wird verhindert, daß unzustellbare Pakete im Netz herumgeistern. Der Absender bekommt keine Fehlermeldung. Er kann aber aus der Tatsache, daß nach einer angemessenen Wartezeit keine Empfangsbestätigung kommt, schließen, daß der Empfänger nicht erreichbar ist. Schließlich gibt es noch eine Eigenschaft zur Unterscheidung von TCP-Paketen.
In einem der folgenden Kapitel wird Ihnen eine Auswahl von Internet-Diensten vorgestellt. Es kann also durchaus vorkommen, daß mehrere Programme oder auch Benutzer über dieselbe Verbindung zweier Rechner miteinander kommunizieren wollen. Einzelne Verbindungen zwischen zwei Programmen oder zwei Benutzern werden durch sogenannte 'Portnummern' gekennzeichnet, die auch auf dem TCP-Paket hinterlegt sind. Mit dieser Information können Daten für verschiedene Programme oder Benutzer auf derselben Maschine oder Netzverbindung unterschieden werden. Etliche dieser Portnummern sind fest bestimmten Diensten zugeordnet und können nicht für andere Zwecke verwendet werden. Es gibt jedoch noch genügend freie Portnummern, die für neue Dienste oder spezielle Anwendungen von Standarddiensten verwendet werden können.
Diese und weitere Eigenschaften von TCP, die hier darzustellen zu sehr ins Detail führen würde, machen das Verfahren der Datenübertragung allerdings auch relativ aufwendig. Außerdem können (z. B. durch Warten auf die Empfangsbestätigung) durch TCP auch Verzögerungen auftreten. Es gibt nun Fälle, in denen sich der Aufwand nicht lohnt, und stattdessen eine schnelle Übertragung wichtiger ist. Für diese Fälle gibt es das Transportprotokoll UDP. Hier existieren keine Empfangsbestätigungen. Die Anwendung, also das Programm, das UDP benutzt, muß damit fertig werden, wenn gesendete Daten nicht ankommen. Dafür können die Daten ohne großen Aufwand beliebig schnell ins Netz hinausgeschoben werden.

In Kapitel 6 wird noch genauer auf die Protokolle und den Datentransport eingegangen.

1.4.3 Domain Name System (DNS)

In den vorigen Abschnitten wurde erklärt, wie Information im Internet von einem auf das andere Gerät, ja vom einzelnen Anwendungsprogramm zum korrekten Partner findet. Es mag vielleicht noch nicht ganz klar geworden zu sein, was der einzelne (menschliche) Benutzer von Internet- Diensten nun tatsächlich tun muß, und was die Protokolle für ihn automatisch tun. Nun, in der Regel startet der Benutzer ein Anwendungsprogramm für einen Internet-Dienst und gibt gleichzeitig eine Zieladresse (eines mehr oder weniger entfernten) Rechners an. Protokollinterna, z. B. die Absendeadresse, die Paketierung usw., werden automatisch eingefügt.
Es hat sich ziemlich früh herausgestellt, daß menschliche Benutzer die numerischen IP-Adressen nicht benutzen wollen, sondern aussagekräftige und vor allem merkbare Namen bevorzugen. Außerdem ist es ein großer Nachteil der IP- Adressen, daß aus ihnen keinerlei geographische Information zu entnehmen ist. Man sieht einer Zieladresse nicht an, ob sie in Australien oder im Nebenzimmer lokalisiert ist, außer man kennt zufällig die gewählten Zahlen. Es wurde daher das Domain Name System entwickelt, das den Aufbau von Rechnernamen regelt. Es ordnet jedem (weltweit eindeutigen) Namen eine IP-Adresse zu. Dabei gibt es einige Varianten. Eine Maschine mit einer IP-Adresse kann mehrere Funktionen haben und daher auch mehrere Namen, die auf diese Funktionen hinweisen. Genauso kann eine Maschine (z. B. ein Router) viele IP-Adressen haben aber nur einen Namen.

Die Namen im DNS sind hierarchisch aufgebaut. Das gesamte Internet ist in Domains aufgeteilt, welche wieder durch Subdomains strukturiert werden. In den Subdomains setzt sich die Strukturierung fort. Diese Hierarchie spiegelt sich im Namen wieder. Die entsprechenden Domains werden durch Punkt getrennt. Beispiele: mail.e-technik.fh-muenchen.de
ftp.microsoft.com Die Top-Level Domain (im Beispiel: de) steht ganz rechts und wird durch den Country-Code abgekürzt (weitere Beispiele: 'at' für Österreich, 'au' für Australien, 'fr' für Frankreich, 'uk' für Großbritannien, ... ). In den USA gibt es aus historischen Gründen allerdings sechs Top Level Domains (außer 'us', was sehr selten benutzt wird):

com Kommerzielle Organisationen
edu (education) Schulen und Hochschulen
gov (government) Regierungsinstitutionen
mil militärische Einrichtungen
net Netzwerk betreffende Organisationen
org Nichtkommerzielle Organisationen
int Internationale Organisationen

arpa

und das alte ARPA-Net bzw. Rückwärts-Auflösung von Adressen

Ende 2000 sind neue TLDs von der ICANN genehmigt worden:

aero Luftfahrtindustrie
coop Firmen-Kooperationen
museum Museen
pro Ärzte, Rechtsanwälte und andere Freiberufler
biz Business (frei für alle)
info Informationsanbieter (frei für alle)
name Private Homepages (frei für alle, aber nur dreistufige Domains der Form <Vorname>.<Name>.name)

Unterhalb der Top-Level Domain treten dann Domains wie 'fh-muenchen' auf, die sich im Rahmen ihrer Organisationen auf diesen Namen geeinigt haben müssen, wie auch über die weitere Strukturierung des Namensraumes, etwa daß Fachbereiche einen Subdomain-Namen bilden (z. B. e-technik). Diese werden wieder strukturiert durch die Namen der einzelnen Lehrstühle und Institute. Als letztes Glied wird der einzelne Rechner mit seinem Hostnamen spezifiziert.
Für die Aufnahme einer Verbindung zwischen zwei Rechnern muß in jedem Fall der Rechnername in eine zugehörige IP- Adresse umgewandelt werden. Aus Sicherheitsaspekten ist es manchmal wünschenswert, auch den umgekehrten Weg zu gehen, nämlich zu einer sich meldenden Adresse den Namen und damit die organisatorische Zugehörigkeit offenzulegen.
Kennt man die Domänenadresse eines Rechners, dann hängt man diese einfach an den Usernamen mit einem At-Zeichen '@' dahinter, z. B.: meier@mail.e-technik.fh-muenchen.de Ein kleiner Vergleich mit einer 'konventionellen' Adresse soll das verdeutlichen.

Stefan Meier entspricht de Benutzerpseudonym (meier)
bei Huber entspricht dem Rechner (mail)
Beispielweg 5 entspricht der (Sub-) Domain (e-technik)
81234 München entspricht der (Sub-) Domain (fh-muenchen)
West-Germany entspricht der (Toplevel-) Domain (de)

Damit das DNS funktioniert muß es Instanzen geben, die Namen in IP-Adressen und IP-Adressen in Namen umwandeln ('auflösen') können. Diese Instanzen sind durch Programme realisiert, die an größeren Maschinen ständig (meist im Hintergrund) im Betrieb sind und 'Nameserver' heißen. Jeder Rechner, der an das Internet angeschlossen wird, muß die Adresse eines oder mehrerer Nameserver wissen, damit die Anwendungen auf diesem Rechner mit Namen benutzt werden können. Die Nameserver sind für bestimmte Bereiche, sogenannte 'domains' oder 'Zonen', zuständig (Institute, Organisationen, Regionen) und haben Kontakt zu anderen Nameservern, so daß jeder Name aufgelöst werden kann.

Komponenten des DNS

Insgesamt sind es drei Hauptkomponenten, aus denen sich das DNS zusammensetzt:
  1. Der Domain Name Space, ein baumartig, hierarchisch strukturierter Namensraum und die Resource Records. Das sind Datensätze, die den Knoten zugeordnet sind.
  2. Name Server sind Programme bzw. Rechner, die die Informationen über die Struktur des Domain Name Space verwalten und aktualisieren. EinNameserver hat normalerweise nur eine Teilsicht des Domain Name Space zu verwalten. Oft wird auch der Rechner, auf dem das Nameserverprogramm läuft, als 'Nameserver' oder 'DNS-Server' bezeichnet.
  3. Resolver sind die Programme, die für den Client Anfragen an den Nameserver stellen. Resolver sind einemNameserver zugeordnet; bei Anfragen, die er nicht beantworten kann (anderer Teilbereich des Domain Name Space). kann er aufgrund von Referenzen andereNameserver kontakten, um die Information zu erhalten.

Die Baumstruktur des DNS soll nun im weiteren untersucht werden. Ausgehend von der Wurzel (Root) folgen die Toplevel Domains. Diese Toplevel Domains spalten sich in weiteren Unterdomains auf.

Der Nameserver des DNS verwaltet also einzelne Zonen, die einen Knoten im DNS-Baum und alle darunterliegenden Zweige beinhalten. Auf jeder Ebene des DNS-Baums kann es Namesever geben, wobei jeder Nameserver seinen nächsthöheren und nächstniedrigeren Nachbarn kennt. Aus Sicherheitsgründen gibt es für jede Zone in der Regel mindestens zwei Nameserver (primary und secondary), wobei beide die gleiche Information halten. Nameservereinträge können nicht nur die Zuordnung Rechnername - IP-Adresse enthalten, sondern (neben anderem) auch weitere Namenseinträge für einen einzigen Rechner und Angaben für Postverwaltungsrechner einer Domain (MX, mail exchange).

Basis des Nameservice bilden die "Root-Nameserver", die für die Top-Level-Domains zuständig sind. Die Mehrheit dieser Server ist in den USA beheimatet:

Name Typ Betreiber URL
a com InterNic http://www.internic.org
b edu ISI http://www.isi.edu
c com PSINet http://www.psi.net
d edu UMD http://www.umd.edu
e usg NASA http://www.nasa.gov
f com ISC http://www.isc.org
g usg DISA http://nic.mil
h usg ARL http://www.arl.mil
i int NordUnet http://www.nordu.net
j (   ) (TBD) http://www.iana.org
k int RIPE http://www.ripe.net
l (   ) (TBD) http://www.iana.org
m int WIDE http://www.wide.ad.jp

1.4.4 Das Client-Server-Prinzip

Die meisten der Internet-Anwendungen funktionieren nach dem Client-Server-Prinzip. Deshalb soll auf diese Funktionsweise kurz eingegangen werden. Im einfachsten Fall kommunizieren dabei zwei Rechner miteinander, wobei auf dem einen ein Client- und auf dem anderen der Serverprozeß laufen. Der Clientprozeß ist meistens mit einem Benutzerinterface verbunden (ein Programm, das es einem Benutzer erlaubt, komfortabel Eingaben zu machen und Ausgaben des Anwendungsprogramms zu lesen). Der Client interpretiert die Eingaben des Anwenders und führt die Anweisung entweder selbst aus oder setzt sie in Anweisungen um und schickt sie als Auftrag dem Server. Von diesem erhält er dann die Ergebnisse des Auftrags zurück (oder nur eine Meldung über die erfolgreiche oder fehlerhafte Ausführung). In der Regel läuft der Client auf dem lokalen Arbeitsplatzrechner und der Server auf einem speziellen Serversystem im Netz. Dieser Server kann dabei weit entfernt sein, bei großen Systemen jedoch auch im gleichen lokalen Netz oder sogar auf dem gleichen Rechner wie der Client arbeiten. Auf einem Rechner können mehrere Server-Programme laufen - ein Rechner kann damit mehrere Server-Dienste zur Verfügung stellen. Wenn wir von Servern reden, sollten wir deshalb unterscheiden, ob wir von einem Server-Rechner reden oder von einem Server-Dienst bzw. dem entsprechenden Server-Programm.Der Client-Prozeß wird in der Regel auch erst bei Bedarf gestartet und versucht dann, Kontakt mit dem Serverprozeß aufzunehmen. Dies setzt natürlich voraus, daß der Server schon 'wartet', d. h. ständig an einem System (in der Regel im Hintergrund) speicherresident läuft. Der Server verhält sich also eher passiv und wartet auf die Anfragen eines Clients. Typischerweise kann ein Server mehrere Client-Prozesse parallel bedienen.

Der Server (bzw. das Server-Programm) stellt einen Dienst zur Verfügung, der vom Client angefordert werden kann. So gibt es z. B. spezielle Server(-programme) für den Datenaustausch über FFP, zum Abruf von WWWW-Dokumenten, oder Mail-Server, welche vom Mail-Client abgesendete Post entgegennehmen und weiterleiten und ankommende Post annehmen und ablegen, bis man sie mit dem Mail-Client abruft. Client und Server unterhalten sich dabei in einer speziellen Sprache - dem entsprechenden Dienstprotokoll. So gibt es ein Protokoll zwischen dem Mail-Server und dem Mail-Client (z.B. SMTP oder POP3), eines für den Dateiaustausch zwischen FTP-Client und FFP-Server, ein weiteres für WWW u.s.w. Manche Server bedienen sich zur Ausführung von Aufträgen wieder weiterer Server: Der Name-Server beispielsweise setzt die textuelle Internet-Adresse in eine numerische Adresse um.

Ports - Eingänge für Server

Unterschiedliche Serverprogramme bzw. Serverdienste werden innerhalb eines Rechners durch unterschiedliche Ports angesprochen, wobei ein Port eine Art logischer Kommunikationseingang im Rechner bzw. Betriebssystem ist. Den verschiedenen Servern (bzw. Diensten) sind im Standardfall feste Portnummern zugeordnet. Welcher Port für welchen Dienst verwendet wird, braucht uns als Endbenutzer jedoch in der Regel nicht kümmern. Der Client sollte dies wissen. Nur in Ausnahmefällen, wenn Sie eine besondere Server-Variante oder einen anderen Port benutzen möchten, geben Sie im Client den vom Standard abweichenden Port an.

Spam-Server "Grum" abgeschaltet

Für alle die sich schon immer über zuviel Spam im Postfach geärgert haben gibt es eine gute...

TYPO3 Version 4.7 verfügbar

Die finalen Version des TYPO3 CMS Version 4.7 ist veröffentlicht worden. In TYPO3 4.7 wurde...

Schleusingen jetzt mit UTMS versorgt

In Schleusingen ab sofort mit bis zu 42,2 Megabit pro Sekunde im Internet surfen....

neuer RC TYPO3 4.7 veröffentlicht

Der neue Release-Kandidat 2 von TYPO3 4.7 wartet mit einer Vielzahl neuer Funktionen auf, außerdem...

TYPO3 4.4.12, 4.5.8 und 4.6.1 sind online

Heute wurde bekannt gegeben, dass ab sofort TYPO3 4.4.12, 4.5.8 und 4.6.1 zur Verfügung stehen. Es...

Das Hennebergische Gymnasium Schleusingen hat eine neue Website !

Nach langen Wochen der Erstellung und Redaktionsschulung ist die neue Website www.gym-schleusingen...