Im Katalog suchen

Linux - Wegweiser für Netzwerker

Online-Version

Copyright © 2001 by O'Reilly Verlag GmbH & Co.KG

Bitte denken Sie daran: Sie dürfen zwar die Online-Version ausdrucken, aber diesen Druck nicht fotokopieren oder verkaufen. Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

Wünschen Sie mehr Informationen zu der gedruckten Version des Buches Linux - Wegweiser für Netzwerker oder wollen Sie es bestellen, dann klicken Sie bitte hier.


vorheriges Kapitel Inhaltsverzeichnis Stichwortverzeichnis nächstes Kapitel



Low-Level-Protokolle unter UUCP

Zur Abstimmung von Session-Kontrolle und Dateitransfers mit der Gegenseite verwendet uucico einen Satz von standardisierten Nachrichten, häufig als High-Level-Protokoll bezeichnet. Während der Initialisierungs- und Aufhängphase werden diese einfach als einfache Zeichenketten übertragen. Während der eigentlichen Transferphase wird aber ein zusätzliches Low-Level-Protokoll genutzt, das nahezu transparent für die höheren Level ist. Dieses Protokoll bringt einige weitere Vorteile mit sich; es erlaubt beispielsweise die Fehlerprüfung von Daten, die über unzuverlässige Verbindungen übertragen werden.

Protokollübersicht

UUCP wird über verschiedene Arten von Verbindungen verwendet, wie serielle Leitungen, TCP oder manchmal sogar X.25. Es ist von Vorteil, UUCP in Protokollen zu übertragen, die speziell für das zugrundeliegende Netzwerkprotokoll ausgelegt sind. Zusätzlich haben verschiedene UUCP-Implementierungen unterschiedliche Protokolle hervorgebracht, die in etwa dasselbe leisten.

Protokolle können in zwei Kategorien eingeteilt werden: Paket- und Stream-orientierte Protokolle. Protokolle der letztgenannten Variante übertragen Dateien als Ganzes und berechnen für sie eventuell eine Prüfsumme. Dies geschieht nahezu frei von Overhead, setzt aber eine zuverlässige Leitung voraus, weil jeder Fehler die erneute Übertragung der gesamten Datei zur Folge hat. Diese Protokolle werden üblicherweise bei TCP-Verbindungen verwendet, sind aber für Telefonleitungen nicht geeignet. Obwohl moderne Modems eine recht gute Fehlerkorrektur besitzen, sind sie doch nicht perfekt, und eine Fehlererkennung zwischen Ihrem Computer und dem Modem gibt es auch nicht.

Auf der anderen Seite teilen paketorientierte Protokolle die Datei in viele kleine Stücke gleicher Größe auf. Jedes Paket wird separat verschickt und empfangen, eine Prüfsumme wird berechnet und eine Bestätigung an den Sender zurückgeschickt. Um dies noch effektiver zu machen, wurden sogenannte “Sliding-Window-Protokolle” eingeführt, die eine begrenzte Anzahl (ein Window) noch ausstehender Bestätigungen zu einer bestimmten Zeit ermöglichen. Das reduziert die Zeit, die uucico während einer Übertragung warten muß, ganz erheblich. Der im Vergleich zu den Stream-basierten Protokollen relativ große Overhead macht Paketprotokolle über TCP allerdings ineffizient, jedoch ideal für Telefonverbindungen.

Auch die Datenbreite macht einen Unterschied. Manchmal ist die Übertragung von 8-Bit-Zeichen über eine serielle Leitung unmöglich, weil zum Beispiel die Verbindung über einen dummen Terminal-Server läuft, der das achte Bit immer abschneidet. Sollen 8-Bit-Zeichen über eine 7-Bit-Verbindung übertragen werden, müssen sie für die Übertragung besonders markiert werden. Im ungünstigsten Fall wird die zu übertragende Datenmenge verdoppelt, obwohl eine von der Hardware durchgeführte Komprimierung das wieder kompensieren kann. Leitungen, über die beliebige 8-Bit-Zeichen übertragen werden können, werden häufig als 8-Bit-sauber (8-bit clean) bezeichnet. Dies ist bei allen TCP-, aber auch bei den meisten Modemverbindungen der Fall.

Taylor UUCP 1.06 unterstützt viele UUCP-Protokolle. Die üblichsten davon sind:

g

Dies ist das am weitesten verbreitete Protokoll und sollte von nahezu jedem uucico verstanden werden. Es führt eine gründliche Fehlerprüfung durch und ist daher für verrauschte Telefonverbindungen besonders geeignet. g benötigt eine saubere 8-Bit-Verbindung. Es ist ein paketorientiertes Protokoll, das die Sliding-Window-Technik benutzt.

i

Ein bidirektionales Paketprotokoll, das Dateien zur selben Zeit senden und empfangen kann. Es benötigt eine Vollduplex-Verbindung und eine saubere 8-Bit-Verbindung. Zur Zeit wird es nur von Taylor UUCP verstanden.

t

Dieses Protokoll ist für die Benutzung über eine TCP-Verbindung oder andere wirklich fehlerfreie Netzwerke gedacht. Es verwendet Pakete von 1.024 Byte und eine saubere 8-Bit-Verbindung.

e

Sollte grundsätzlich dasselbe tun wie t. Der Hauptunterschied liegt darin, daß e ein Stream-basiertes Protokoll und daher nur für zuverlässige Netzwerkverbindungen geeignet ist.

f

Zur Verwendung über zuverlässige X.25-Verbindungen gedacht. Es ist ein Stream-basiertes Protokoll und erwartet einen 7 Bit breiten Datenpfad. 8-Bit-Zeichen müssen besonders gekennzeichnet werden, was es sehr ineffizient machen kann.

G

Die System V Release 4-Version des g-Protokolls. Wird auch von einigen anderen UUCP-Versionen verstanden.

a

Entspricht dem ZMODEM-Protokoll. Benötigt eine 8-Bit-Verbindung, kennzeichnet aber bestimmte Steuerzeichen wie XON und XOFF.

Tuning des Übertragungsprotokolls

In allen Protokollen können die Paketgrößen, Timeouts usw. in gewissem Umfang variiert werden. Normalerweise arbeiten die voreingestellten Werte unter Standardbedingungen gut, müssen aber nicht unbedingt gerade für Ihre Situation optimal geeignet sein. Zum Beispiel verwendet das g-Protokoll Window-Größen von 1 bis 7 und Paketgrößen in Zweierpotenzen von 64 bis 4.096. Wenn Ihre Telefonleitung so verrauscht ist, daß immer mehr als 5 Prozent der Pakete verlorengehen, sollten Sie die Paketgröße verringern und das Fenster verkleinern. Andererseits kann der Protokoll-Overhead für 128-Bit-Pakete bei sehr guten Telefonverbindungen unnötig verschwenderisch sein, so daß Sie die Paketgröße auf 512 oder sogar auf 1.024 Byte erhöhen können. Die meisten in Linux-Distributionen enthaltenen Binaries verwenden eine Window-Größe von 7 und 128-Byte-Pakete.

Bei Taylor UUCP können Sie mit dem Befehl protocol-parameter in der sys-Datei diese Parameter an Ihre Bedürfnisse anpassen. Um etwa die Paketgröße des g-Protokolls auf 512 zu setzen, wenn Sie mit pablo kommunizieren, müssen Sie folgendes hinzufügen:

system          pablo 
... 
protocol-parameter g  packet-size  512

Die einstellbaren Parameter und ihre Namen sind von Protokoll zu Protokoll verschieden. Eine komplette Liste können Sie der Dokumentation entnehmen, die den Taylor UUCP-Quellen beiliegt.

Bestimmte Protokolle wählen

Nicht jede Implementierung von uucico spricht und versteht jedes Protokoll. Daher müssen sich beide Prozesse während der Initialisierungsphase auf ein gemeinsames Protokoll einigen. Der uucico-Master bietet dem Slave eine Liste unterstützter Protokolle durch Senden von Pprotlist, aus denen sich der Slave eines aussuchen kann.

Basierend auf dem verwendeten Porttyp (Modem, TCP oder direkt), stellt uucico eine Standardliste mit Protokollen zusammen. Bei Modem- oder Direktverbindungen enthält diese Liste üblicherweise i, a, g, G und j. Bei TCP-Verbindungen lautet die Liste t, e, i, a, g, G, j und f. Diese Standardliste können Sie mit dem Befehl protocols überschreiben, der sowohl in einem System- als auch in einem Porteintrag stehen kann. Sie könnten etwa den Eintrag für Ihren Modem-Port in der port-Datei wie folgt setzen:

port            serial1 
... 
protocols       igG

Jede über diesen Port ein- oder ausgehende Verbindung müßte dann i, g oder G verwenden. Wird keines von diesen vom anderen System unterstützt, ist keine Kommunikation möglich.





vorheriges Kapitel Inhaltsverzeichnis Stichwortverzeichnis nächstes Kapitel


Weitere Informationen zum Linux - Wegweiser für Netzwerker

Weitere Online-Bücher & Probekapitel finden Sie in unserem Online Book Center


O'Reilly Home|O'Reilly-Partnerbuchhandlungen|Bestellinformationen
Kontakt|Über O'Reilly|Datenschutz

© 2001, O'Reilly Verlag