Forum: Mikrocontroller und Digitale Elektronik Frage zu Netzwerk-Protokollen


von MC (Gast)


Lesenswert?

Tag an alle,
für ein Projekt informiere ich mich gerade über Netzwerkprotokolle. 
Dabei ist mir aufgefallen, dass es kaum bis keine Protkolle mit 
Fehlerkorrektur gibt (außer im Handy-Bereich). Alle Protokolle benutzen 
immer nur eine Checksumme.
Wieso ist das so? Die Checksumme dient doch nur zum erkennen von 
Fehlern, sodass das gesamte Paket neu gesendet werden muss. Ist dass 
nicht etwas ineffizient?

Danke schon mal für eure Antworten,
MC

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Eine ECC kann ja auch nur begrenzt Bitfehler reparieren.  Wenn sie's
nicht mehr tut, musst du sowieso neu senden.  Da kann man auch gleich
den Overhead sparen und bei Fehlempfang sofort neu senden.

ECC lohnt sich eigentlich nur, wenn man durch die Mehrinformation
Probleme ausgleichen kann, bei denen sonst kompletter Datenverlust
der Fall wäre (weil man nicht einfach die Daten neu anfordern kann),
bspw. bei Datenträgern.

von Thomas U. (tommy12)


Lesenswert?

Was für Netzwerkprotokolle (in welchen Abstraktionsebenen )meinst du?
Weil viele machen mit Absicht keine Fehlerkorrektur, weil dadurch 
schneller...
Was meinst Du "im Handy-Bereich" ?



Anwendungsschicht   5–7   HTTP, FTP, SMTP, POP
Transportschicht   4   TCP, UDP
Vermittlungsschicht   3   IPv4,IPv6
Netzzugangsschicht   1–2   Ethernet, Token Bus, Token Ring, FDDI

von Andreas K. (a-k)


Lesenswert?

Das hängt davon ab wie hoch die Fehlerrate ist. Bei LAN-Protokollen wird 
üblicherweise von einer eher niedrigen Fehlerrate bei gleichzeitig 
kurzer Latenzzeit ausgegangen, daher ist Fehlerkorrektur unter dem 
Strich aufwendiger als eine Wiederholung.

Anders sieht es aus, wenn man die Grenzen von notorisch störbehafteten 
Weitverkehrsmedien mit gleichzeitig vergleichsweise hoher Latenzzeit 
austestet. Bei DSL beispielsweise. Folglich findet sich dort auch 
Fehlerkorrektur.

von 3351 (Gast)


Lesenswert?

Welche Art Fehler wird denn erwartet ? Wie haeufig tritt die Stoerung 
denn auf. Ja, man kann einen Hamming Code mitschleppen. Wenn die 
Stoerung nur bei jedem millionsten Packet auftritt hat sich's nicht 
gelohnt. Die Schwierigkeit ist die Stoerung zu quantifizieren und mit 
dem Zusatzaufwand zu vergleichen. In den meisten Faellen scheint sich 
ein Retransmitt aufrund eines CRC Fehlers  die einfachere Moeglichkeit 
zu sein. In sehr wenigen Faellen, in denen ein Retransmit nicht mehr 
zahlbar ist (Pioneer Sonden, Mars Sonden) hat man natuerlich einen 
Hamming Code zur Vorwaerts-Fehlerkorrektur.

von 900ss (900ss)


Lesenswert?

Bei der Satellitenkommunikation wird auch mit ECC gearbeitet. 
Datendurchsatz beim einem exitierenden Satelliten: Strecke Erde - 
Satellite ca. 480Byte/s., in Richtung Erde sind es dann immerhin schon 
4kB/s. Da ist ECC auch schon ein Vorteil.

von Andreas K. (a-k)


Lesenswert?

Generell hängt es davon ab, wieviele Daten im Fehlerfall verloren gehen 
und wie lang es für die Wiederbeschaffung dauert.

Im 100Mbps Ethernet liegen die Latenzzeiten unter 1ms. Wenn also bei 
300µs Latenzzeit Daten verloren gehen, gehen im Idealfall einige zig 
Kbit verloren und die Verzögerung durch Wiederholung ist seitens des 
Anwenders nicht spürbar. Zudem ist es eher unwahrscheinlich.

Im Internet liegend diese Zeiten eher bei 50-500ms. Wenn nun bei 16Mbps 
DSL Daten verschütt gehen und TCP frisch aufsetzt, dann sind gleich 
Megabits verloren, und die Verzögerung durch die Wiederholung ist sehr 
deutlich spürbar. Folglich ist der kritischste Teil von 
Internet-Leitungen, nämlich DSL, vergleichsweise stark mit ECC 
abgesichert.

Den Extremfall davon hat 3351 skizziert: Kommunikation mit Raumsonden, 
bei denen die Latenzzeit mehrere Stunden betragen kann.

von MC (Gast)


Lesenswert?

Danke für die schnellen Antworten!!!

Wenn ich das jetzt richtig erfasst habe, dann benutzt man fast nur CRC, 
weil:
- der Überhang deutlich kleiner ist
- die Fehlerrate in normalen Netzen sehr gering ist
- die Generierung u. Überprüfung der Checksumme schneller ist als bei
  der Fehlerkorrektur

>(in welchen Abstraktionsebenen )meinst du?
Ich möchte mir eine kleine Haussteuerung bauen. Deshalb werde ich in den 
ersten paar Schichten dieses komischen Schichtenmodells bleiben.

>Was meinst Du "im Handy-Bereich" ?
Ich weiß, dass im Mobilfunk eine Fehlerkorrektur eingesetzt wird, da man 
ja nicht Informationen neu anfordern kann (sonst würde man sein 
Gegenüber ja nicht mehr flüssig hören können).

>Welche Art Fehler wird denn erwartet ?
Ich möchte am liebsten ein Powerline-Netzwerk aufbauen (Bitte versucht 
nicht, mir das auszureden). Ich habe dazu auch schon ein paar 
Experimente gemacht und bekam eine Fehlerquote von ca. 30% (das muss man 
sich mal vorstellen, wie schlecht der Scheiß ist).
Da ich auf Powerilne aber nicht ganz verzichten kann (bestimmte Stellen 
können mit zusätzlichen NW-Kabeln nicht erreicht werden), versuche ich 
die Übertragungsfehler weitgehenst software-mäßig zu eliminieren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.