<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=XMODEM</id>
	<title>XMODEM - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=XMODEM"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=XMODEM&amp;action=history"/>
	<updated>2026-05-27T13:00:47Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=XMODEM&amp;diff=134590&amp;oldid=prev</id>
		<title>imported&gt;Nightflyer: verlinkung</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=XMODEM&amp;diff=134590&amp;oldid=prev"/>
		<updated>2021-05-18T07:46:29Z</updated>

		<summary type="html">&lt;p&gt;verlinkung&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:Telebit T2000 X-Modem ohne Spoofing.ogg|mini|Datenübertragung eines [[Telebit]] T2000-Modems, XMODEM-Protokoll, kein Protocol-Spoofing. Datendurchsatz ca. 145 Zeichen/Sekunde. Hörbar ist die ständige Umschaltung der Übertragungsrichtung; die Quittung eines Datenblockes von 128 Byte Länge besteht aus nur einem Byte.]]Das &amp;#039;&amp;#039;&amp;#039;XMODEM&amp;#039;&amp;#039;&amp;#039; (gelegentlich auch &amp;#039;&amp;#039;X-MODEM&amp;#039;&amp;#039;) ist ein einfaches Sende-und-warte-[[ARQ-Protokoll]] mit einer festen Paketlänge, welches eine gesicherte [[Datenübertragung]] regelt. Es wurde 1977 von dem [[IBM]]-Vertriebstechniker [[Ward Christensen]] entwickelt und ist [[Public domain]].&lt;br /&gt;
&lt;br /&gt;
XMODEM war das erste weitverbreitete [[Netzwerkprotokoll|Datenübertragungsprotokoll]] und trug wesentlich zur Ausbreitung der [[Mailbox (Computer)|Mailboxen]] bei. Christensen selbst richtete 1978 mit dem [[CBBS]] (Computerized Bulletin Board System) die erste Mailbox zum Austausch von Nachrichten ein. Es wird üblicherweise auf dem [[Serielle Schnittstelle|seriellen Protokoll]] implementiert.&lt;br /&gt;
&lt;br /&gt;
== Ursprung ==&lt;br /&gt;
Ward Christensen und [[Randy Suess]] hatten sich 1975 als Mitglieder von &amp;#039;&amp;#039;CACHE&amp;#039;&amp;#039;, einem lokalen [[Anwendergruppe|Computerclub]] in Chicago, kennengelernt. Wie damals üblich nutzten sie [[Kompaktkassette#Kompaktkassetten zur digitalen Datenspeicherung|Kompaktkassetten]] zur Datenspeicherung. Eine Variante, die Daten darauf zu transferieren, war es, einen 300 [[Baud]] [[Akustikkoppler]] für die Audioübertragung zum Kassettenspieler zu nutzen. Hierzu schrieb Ward Christensen im Januar 1977 ein einfaches Programm, um die Daten von der [[Diskette|Floppy]] zur Kassette zu &amp;#039;&amp;#039;piepsen&amp;#039;&amp;#039;. Das Programm bildete Blöcke von 128 Byte, der Blockgröße von CP/M-Disketten, und einer einfachen [[Checksumme|Prüfsumme]]. Er veröffentlichte es unter dem Namen &amp;#039;&amp;#039;MODEM.ASM&amp;#039;&amp;#039;.&amp;lt;ref&amp;gt;{{Internetquelle | url=http://www.vintagecomputer.net/fjkraan/comp/mirror/z80cpu.eu/archive/rlee/L/LOOSECPM/224/MODEM.ASM | titel=MODEM.ASM | werk=vintagecomputer.net | sprache=en | zugriff=2018-02-19| datum=1977-10-10 }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Später schrieb Dave Jaffe ein Programm namens &amp;#039;&amp;#039;BYE&amp;#039;&amp;#039; um entfernte Nutzer auf ein [[CP/M]]-System zugreifen zu lassen und es von dort bedienen zu können. Um dabei auch Dateien zwischen den Systemen übertragen zu können, wurde &amp;#039;&amp;#039;MODEM&amp;#039;&amp;#039; so angepasst, dass es keine Statusausgaben auf der [[Kommandozeileninterpreter|Konsole]] ausgab. Somit wurde für den Zeitraum des [[Download|Down-]] oder [[Upload]]s die Telefonverbindung rein für die Dateiübertragung genutzt und nicht gleichzeitig mit den Konsolenausgaben von MODEM gestört. Diese kleine Änderung führte zum neuen Namen &amp;#039;&amp;#039;XMODEM&amp;#039;&amp;#039; und war der Startschuss für eines der damals wohl am weitesten portierten [[Kommunikationsprotokoll|Dateiübertragungsprotokolle]], da es auf fast jede Hardware-Umgebung angepasst wurde und die systemübergreifende Übertragung von binären [[Computerdatei]]en ermöglichte. Letzteres löste ein großes Problem, da die Systeme sonst keinen gemeinsamen Datenaustausch ermöglichten.&amp;lt;ref name=&amp;quot;Birth&amp;quot;&amp;gt;{{Internetquelle |url=http://chinet.com/html/cbbs.php |titel=The Birth of the BBS |zugriff=2007-02-18 |autor=Ward Christensen, Randy Suess |werk=Chinet |datum=1989}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Funktionsweise ==&lt;br /&gt;
XMODEM arbeitet blockorientiert, die zu übertragenden Daten werden in gleich große Einheiten ([[Datenblock|Blöcke]]) aufgeteilt. Die Blöcke haben immer eine Größe von 132&amp;amp;nbsp;[[Byte]] und werden gegebenenfalls mit beliebigen Zeichen aufgefüllt. Quittungen bestehen aus einem einzigen Zeichen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Blockaufbau&lt;br /&gt;
! Offset !! Länge !! rowspan=&amp;quot;2&amp;quot; | Inhalt&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; | [Byte]&lt;br /&gt;
|-&lt;br /&gt;
| {{0|00}}0 || {{0|00}}1 || [[American Standard Code for Information Interchange|ASCII]]-Zeichen &amp;#039;&amp;#039;Start Of Header&amp;#039;&amp;#039; (SOH, 01h)&lt;br /&gt;
|-&lt;br /&gt;
| {{0|00}}1 || {{0|00}}1 || Blocknummer&lt;br /&gt;
|-&lt;br /&gt;
| {{0|00}}2 || {{0|00}}1 || [[Einer-Komplement]] der Blocknummer&lt;br /&gt;
|-&lt;br /&gt;
| {{0|00}}3 || 128 || Daten&lt;br /&gt;
|-&lt;br /&gt;
| 131 || {{0|00}}1 || [[Prüfsumme]]. Die Prüfsumme ist hier die arithmetische Summe der Datenbytes [[modulo]] 256 und deshalb fehleranfällig; Doppelfehler an der gleichen Bitposition heben sich auf.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Die Übertragung wird durch den Empfänger angestoßen, indem er ein NAK sendet. Eine fehlerfrei empfangene Checksumme wird mit &amp;#039;&amp;#039;Acknowledgement&amp;#039;&amp;#039; ([[ACK (Signal)|ACK]], 06h) bestätigt. Bei einer Prüfsumme ungleich der berechneten Prüfsumme ist ein Fehler aufgetreten. Der Block wird mit &amp;#039;&amp;#039;Negative Acknowledgement&amp;#039;&amp;#039; (NAK, 15h) abgelehnt und dann bis zu zehnmal neu versendet. Das Ende einer Übertragung wird vom Sender mit &amp;#039;&amp;#039;End Of Transmission&amp;#039;&amp;#039; ([[End of File|EOT]], 04h) angezeigt. Auch dieses muss mit einem ACK bestätigt werden.&lt;br /&gt;
&lt;br /&gt;
Anfang der 1980er Jahre wurde die Blockgröße erweitert &amp;#039;&amp;#039;(XMODEM 1K)&amp;#039;&amp;#039; und die [[Zyklische Redundanzprüfung]] zur Fehlerprüfung eingesetzt &amp;#039;&amp;#039;(XMODEM CRC)&amp;#039;&amp;#039;. Die später entwickelten [[YMODEM]]- und [[ZMODEM]]-Protokolle behoben viele Schwächen der ersten XModem-Version.&lt;br /&gt;
&lt;br /&gt;
== Bedeutungswandel des XMODEM ==&lt;br /&gt;
Nach seiner Spezifikation erlangte XMODEM schnell Bedeutung als einfache Möglichkeit, Dateien über serielle Verbindungen auszutauschen. Durch zwischengeschaltete Modems und analoge Telefonnetze konnten Dateien weltweit abgerufen werden. Mit der Verbreitung des [[Internet]]s in den kommerziellen und privaten Sektor hinein, verlor diese Vorgehensweise in den späten 1990er Jahren ihre Bedeutung und verschwand aus der Wahrnehmung der entsprechenden Anwender. Informationen und Anwendungen, die früher in Mailboxen zu finden waren, werden heute in der Regel per [[Hypertext Transfer Protocol|HTTP]] abgerufen und entweder gleich am [[Browser]] gelesen bzw. als Download vom [[Web-Server]] geholt.&lt;br /&gt;
&lt;br /&gt;
Weiterhin benutzt werden XMODEM sowie seine Varianten (&amp;#039;&amp;#039;XMODEM 1K&amp;#039;&amp;#039;, &amp;#039;&amp;#039;XMODEM CRC&amp;#039;&amp;#039;) und Nachfolger (&amp;#039;&amp;#039;[[YMODEM]]&amp;#039;&amp;#039;, &amp;#039;&amp;#039;[[ZMODEM]]&amp;#039;&amp;#039;) aber, um zum Beispiel Peripheriegeräte mit Systemaktualisierungen (so genannten &amp;#039;&amp;#039;[[Flash-Speicher|Flash]]-[[Softwareaktualisierung|Aktualisierungen]]&amp;#039;&amp;#039;) zu versorgen. Man schätzt hier die Einfachheit des Protokolls, das keine komplexen Betriebssysteminteraktionen erfordert, im Gegensatz beispielsweise zu [[File Transfer Protocol|FTP]].&lt;br /&gt;
&lt;br /&gt;
Variationen dieses Protokolls werden von einigen Unternehmen sogar dann verwendet, wenn statt der asynchronen, seriellen Schnittstelle ([[EIA-232|RS232]], [[V.24]]) eine andere Technik wie [[Universal Serial Bus|USB]] oder der [[Synchronous Serial Port|&amp;#039;&amp;#039;SSP&amp;#039;&amp;#039;]]-Anschluss eines [[Mikrocontroller]]s verwendet werden. Die mit Abstand häufigste Verwendung dürfte jedoch die Systemaktualisierung von Geräten sein, die ohnehin über eine serielle Schnittstelle verfügen. Dies sind zum Beispiel [[Modem]]s, [[ISDN-Terminaladapter]], einige [[Mobiltelefon]]typen oder [[Router]].&lt;br /&gt;
&lt;br /&gt;
XMODEM und Ähnliche können über die serielle Emulation des [[Bluetooth]]-Protokolls oder der [[Infrared Data Association|IrDA]]-Infrarotschnittstelle verwendet werden, wo vorhanden. Dies bietet sich für die Dateiübertragung von und nach Handheld-Geräten aller Art an.&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung zum XMODEM mit 32&amp;amp;nbsp;KiB Blocklänge (XMODEM/32k) wurde 2002 von Fa. Adontec implementiert, um die [[Datenübertragungsrate]] bei fehlerfreien Hochgeschwindigkeits-Verbindungen wie [[Integrated Services Digital Network|ISDN]] oder [[TCP/IP]]-[[Rechnernetz|Netzen]] ([[Intranet]], [[Internet]]) zu erhöhen. Eine Erweiterung mit 64&amp;amp;nbsp;KiB Blocklänge (XMODEM/64k) wurde 2007 implementiert. Beide Erweiterungen sind rückwärtskompatibel.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* {{Internetquelle | url=http://pauillac.inria.fr/~doligez/zmodem/ymodem.txt | titel=XMODEM/YMODEM protocol reference, A compendium of documents describing the XMODEM and YMODEM File Transfer Protocols | werk=pauillac.inria.fr | sprache=en | zugriff=2018-02-19 |datum= 1988-06-18 |autor= [[Chuck Forsberg]], [[Ward Christensen]] }}&lt;br /&gt;
* [http://www.adontec.com/xmodem_e.htm The ADONTEC® XMODEM/32k and XMODEM/64k extensions] (englisch)&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Xmodem}}&lt;br /&gt;
[[Kategorie:Kommunikationsprotokoll]]&lt;br /&gt;
[[Kategorie:Dateiübertragungsprotokoll]]&amp;lt;!-- Doppeleinordnung in Ober- und Unterkategorie, da XMODEM sowohl zur Dateiübertragung als auch für allgemeine Datenstreams eingesetzt wird. --&amp;gt;&lt;br /&gt;
[[Kategorie:Abkürzung]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Nightflyer</name></author>
	</entry>
</feed>