So verhindert USB Fehler
Damit sich beim Datenverkehr zwischen einem USB-Gerät und dem Computer keine Fehler einschleichen, gibt es ein Protokoll. Dieses Protokoll regelt genau, wer welche Daten bekommt und es sorgt dafür, dass alle Daten richtig ankommen. Wenn einmal Daten nicht richtig ankommen, veranlasst das Protokoll einen neuen Übertragungsversuch.
Das Protokoll steckt die Daten in Pakete. Davon gibt es zwei Arten. Eines übermittelt Kontroll- und Steuerungsinformationen, das andere Daten. Beide sind aber im Grunde gleich aufgebaut:
- Der erste Teil des Pakets besteht aus einer Token (zu Deutsch: "Zeichen") genannten Information. Die verrät, was sich in dem Paket verbirgt. Das sind entweder ganz normale Daten, wie sie etwa vom Computer an den Drucker gehen. Oder es sind interne Steuerinformationen, zum Beispiel die Adresse, an die sich das nächst folgende Datenpaket richtet.
Diese Adresse sagt genau, an welches der 127 Geräte die Daten gehen. USB kann zusätzlich innerhalb jedes Gerätes bis zu 15 Unteradressen ansprechen (eigentlich sind es 16, doch eine Adresse ist von USB reserviert). Das ist so, wie in einem Mietshaus, das eine Adresse, aber mehrere Briefkästen hat. Auf diese Weise finden Daten zum Beispiel in einem Faxdrucker den richtigen Weg - entweder zum Fax oder zum Drucker.
- Danach folgt eine Prüfsumme. Die hilft dem Empfänger der Daten festzustellen, ob alle Daten im Paket stimmen.
- Sobald die Adressinformationen über die Leitung gegangen sind, kann das erste Datenpaket folgen. Wieder kündigt das Protokoll ein Paket an und sagt, was sich darin verbirgt -- in diesem Fall die Daten. Das können bis zu 1023 Byte sein. Wieder folgt eine Prüfsumme.
- Auf das Datenpaket folgt ein Handshake, zu Deutsch ein Händedruck. Dabei teilt der Empfänger dem Absender mit, ob er die Daten so annimmt. Wenn etwas mit einer Prüfsumme nicht gestimmt hat, wird das Gerät diesen Händedruck verweigern und der Absender muss das Paket nochmals schicken. Bei der isochronen Übertragung von Sprachdaten gibt es den Handshake nicht, da es auch keine Fehlerkorrektur gibt.
http://www.architipp.de/grundlagen-usb-verstehen_tipp_155.html