Welche Fehlerkontrolle ist bei der Datenverbindungsschicht erforderlich, wenn die Transportschicht eine Fehlerkontrolle bietet? Was ist der Unterschied zwischen den beiden Fehlerkontrollen?Datenverbindungsschicht und Transportschicht
Antwort
Transportschichtdaten können in viele Datenübertragungsschicht-Frames/-Pakete unterteilt werden.
So ist es möglich, dass auch ohne Datenübertragungsfehler der Transport Layer Stream/Paket beschädigt sein kann. Edit: Dies liegt daran, eine Transportschicht Pfad in der Regel von vielen Datenverbindungsschicht Hopfen, zum Beispiel zusammen:
Host1 <----> switch1 <----> switch2 <----> Host2
, wenn ein Paket zwischen switch1
und switch2
dann gäbe es verloren wurde keine Fehler sein aufgezeichnet auf der switch2
Host2
Verbindung, aber der entsprechende Transport Layer-Stream wäre beschädigt.
Auf der anderen Seite - sobald ein Datenübertragungsfehler aufgetreten ist, ist es möglich, die Übertragung der Transportschicht abzubrechen/neu zu starten, ohne Ressourcen zu verschwenden.
Unter der Annahme, dass die Prüfsumme korrekt war, bedeutete dieses Ergebnis, dass die Daten während des Transports beschädigt wurden. Außerdem erfolgte der Schaden nicht auf den Übertragungsstrecken (wo er vom CRC abgefangen würde), sondern muss in einem der Zwischensysteme (Router und Bridges) oder dem sendenden oder empfangenden Host aufgetreten sein.
http://conferences.sigcomm.org/sigcomm/2000/conf/paper/sigcomm2000-9-1.pdf
Es hängt wirklich von den Protokollen eher als die Schicht, aber vorausgesetzt, Sie TCP meine ...
TCP die Fehlererkennung ist minimal und entwickelt, um mehr als eine Integritätsprüfung als jede Art von zuverlässigen Fehler Erkennung. Der Grund, warum Sie dies nicht sehen, ist, dass Daten-Link-Schichten wie Ethernet, PPP, FrameRelay usw. viel robustere Fehlererkennungsalgorithmen haben und daher praktisch keine Übertragungsfehler für das TCP-Protokoll vorliegen erkennen.
Wenn Sie ein anderes Transportschichtprotokoll mit robuster Fehlererkennung hätten, würden Sie es nicht unbedingt auf niedrigeren Ebenen benötigen. Es besteht ein Vorteil, hauptsächlich in Bezug auf Leistung und Ressourcenverbrauch, um Fehler so gering wie möglich im Stapel zu verwerfen.
Beachten Sie, dass Fehler in oben die Transportschicht aufgrund rammen Pannen einschleichen, etc, also wenn Daten wirklich ist, wirklich wichtig, dann sollten Sie die Fehlerprüfung direkt in der Anwendung enthalten.
Dies liegt daran, dass die Datensicherungsschicht ausschließlich mit der Fehlerkorrektur auf Bit-Ebene arbeitet. Es nimmt ein Paket, das der empfangende Computer bereits besitzt, und ermittelt, ob bei der Übertragung ein Fehler aufgetreten ist und ob die Daten intakt oder beschädigt sind. Es müssen jedoch zusätzliche Steuerelemente vorhanden sein, um sicherzustellen, dass das System weiß, dass alle Pakete ankommen. Dies wird End-to-End-Fehlerkontrolle genannt und liegt in der Verantwortung der Transportschicht. Der Transportschicht ist es egal, ob die Daten in der Nutzlast gut oder schlecht sind. Das ist die Aufgabe von Data Link. Transport interessiert nur, wenn es jedes Paket erhält, das es soll und ob es in der richtigen Reihenfolge ankommt. Es ist die Transportschicht, die das Fehlen von Paketen oder die Beschädigung von Paketen erkennt, die am Übertragungsende aufgetreten sind, bevor sie auf der Sicherungsschicht ankommen.
Weitere Einzelheiten siehe
In einem verrauschten Kanal, in dem die Fehlerrate hoch ist, wie drahtlose Netzwerke, die Fehlerkorrektur bei der Sicherungsschicht durchgeführt.
In robusten Netzwerken, in denen die Fehlerrate niedrig ist, wie bei LANs, wird die Fehlerkorrektur auf der Transportschicht durchgeführt, sodass die Kosten für die Neuübertragung minimiert werden.
Sehr wenige Datenverbindungsprotokolle führen eine Fehlerkorrektur durch. Die meisten tun Fehlererkennung, und sie löschen alle Frames, die Fehler enthalten, aber sie korrigieren die Fehler nicht. –
Können Sie näher erläutern, wie das möglich ist? Wenn jedes Paket fehlerfrei angekommen ist, wie kann die Nachricht als Ganzes Fehler enthalten? – Shookie
@Shookie Blick auf die bearbeitete Antwort für ein mögliches Szenario zur Veranschaulichung dieser – wroniasty
Danke! Aber das Beispiel, das Sie gegeben haben, hat damit zu tun, ein Paket zu verlieren. Ich dachte, du meintest, dass alle Pakete ihr Ziel erreichen könnten und trotzdem korrupt wären (nachdem sie die Datensicherungsschicht durchlaufen haben). – Shookie