Ist Paketverlust aufgrund des Socket-Pufferüberlaufs als Netzwerkverlust?
-
09-09-2020 - |
Frage
Wenn UDP-Pakete auf einem Host fallen gelassen werden, da seine Socket-Puffer voll sind, sollte ich das als Network-Verlust betrachten?Die Unterscheidung würde mir helfen, zu entscheiden, ob Sie sich in der Anwendungsschicht in der Implementierung der Wiederverwendung untersuchen sollen, oder um die Puffergröße zu erhöhen.
Ich stecke bei UDP, aber meine Anwendung ist erforderlich, um Pakete zu übertragen, um mit keinem Paketverlust ...> _ << / p>
Lösung
Wenn Pakete in den Netzwerkstapel fallen gelassen werden, können Sie es auf dieselbe Weise in Betracht ziehen, dass Sie den Netzwerkpaketverlust in Betracht ziehen.
uDP ist nicht zuverlässig.Sie erhalten möglicherweise nicht alle Pakete, und sie könnten in einer anderen Reihenfolge empfangen werden.Sie benötigen einen Mechanismus in Ihrer Bewerbung, um dies trotzdem umzugehen.
Andere Tipps
uDp ist unzuverlässig. Wenn Sie Zuverlässigkeit benötigen, müssen Sie es selbst umsetzen.Es spielt keine Rolle, wo die Datagramme fallen gelassen, einige werden fallen gelassen und das Endergebnis ist das gleiche.
In ähnlicher Weise erhalten Sie doppelte Datagramme und Sie erhalten Datagramme in einer anderen Reihenfolge, wenn Sie sie gesendet haben.
Sie könnten an den Antworten auf diese Frage interessiert sein: Was verwenden Sie, wenn Sie zuverlässig UDP benötigen?