UDP - Spekulativer Zufall?
-
Ich weiß, du willst das wahrscheinlich nicht hören, aber warum nimmst du nicht TCP? In der Regel gehen keine Pakete verloren und müssen somit nachgeschickt werden und soweit ich weiß beeinflusst die Wahl UDP<->TCP den "average Ping" wirklich nicht großartig (ich hab mal gehört ~1ms). UDP-Handling muss unheimlich gut durchdacht werden, was ziemlich schwierig ist, wie du anscheinend auch festgestellt hast. Die Idee von der schnellen und unbürokratischen Verbindung ist zwar super, kostet aber imho zuviel Aufwand um die Nachteile auszugleichen.
-
@OP:
Du scheinst dich mit dem Thema wohl garnicht befasst zu haben.
Bei UDP verschickst du ganze "Pakete" und empfängst ganze "Pakete". Und wenn du ein Paket empfängst bekommst du mitgeteilt wie gross dieses ist.-> Problem gelöst.
p.S.: wenn du z.B. 10KB als ein "Paket" wegschickst, dann kommen diese 10KB auch genauso als ein "Paket" an (oder eben garnicht). Es wird also NICHT passieren dass die ersten paar Bytes noch von einem anderen "Paket" stammen.
-
Ist schon komisch das die Leute immer meinen sie müssen UDP verwenden, wenn sie keine Ahnung haben. Woher wissen die nur immer das UDP das richtige für sie ist, ohne zu wissen wie es funktioniert? Wahrscheinlich wieder so ein Übergane und das muss schnell ein...
-
hustbaer schrieb:
p.S.: wenn du z.B. 10KB als ein "Paket" wegschickst, dann kommen diese 10KB auch genauso als ein "Paket" an (oder eben garnicht). Es wird also NICHT passieren dass die ersten paar Bytes noch von einem anderen "Paket" stammen.
Werden größere Pakete nicht gesplittet?
-
Badestrand schrieb:
hustbaer schrieb:
p.S.: wenn du z.B. 10KB als ein "Paket" wegschickst, dann kommen diese 10KB auch genauso als ein "Paket" an (oder eben garnicht). Es wird also NICHT passieren dass die ersten paar Bytes noch von einem anderen "Paket" stammen.
Werden größere Pakete nicht gesplittet?
Bashar schrieb:
Die Fragmentierung passiert in der Vermittlungsschicht und ist für UDP transparent.
-
SG1 schrieb:
Bashar schrieb:
Die Fragmentierung passiert in der Vermittlungsschicht und ist für UDP transparent.
--> http://penguin.dcs.bbk.ac.uk/academic/networks/network-layer/fragmentation/index.php
-
~fricky schrieb:
--> http://penguin.dcs.bbk.ac.uk/academic/networks/network-layer/fragmentation/index.php
Knapp Thema verfehlt, würd ich sagen. Richtig gegoogelt immerhin.
-
Badestrand schrieb:
Werden größere Pakete nicht gesplittet?
Was bringt mir ein Protokoll wenn es 100% unzuverlaessig ist?
Auch UDP garantiert einige Sachen. Naemlich dass man ein Paket etweder irgendwannmal korrekt bekommt oder garnicht.Ich denke man sollte TCP nehmen wenn man nicht genau weiss was UDP macht. denn wenn man das nicht weiss, dann hat man sich nicht so weit damit beschaeftigt um sagen zu koennen das TCP das falsche fuer den job ist.
Meistens wenn Leute UDP verwenden wollen, dann bauen sie nachher in ihr Protokoll die meisten features von TCP ein. das ist schwachsinn... UDP ist idR die falsche antwort (nur ganz selten macht UDP wirklich sinn).
-
Shade Of Mine schrieb:
(nur ganz selten macht UDP wirklich sinn).
und wann macht es Sinn?
-
zwutz schrieb:
Shade Of Mine schrieb:
(nur ganz selten macht UDP wirklich sinn).
und wann macht es Sinn?
Ein Beispiel ist NTP.
-
z.b. wenns egal ist wenn ein paar pakete floeten gehen
-
zwutz schrieb:
Shade Of Mine schrieb:
(nur ganz selten macht UDP wirklich sinn).
und wann macht es Sinn?
Vielleicht auch noch, wenn es um Dinge wie Broadcast oder Multicast geht. Auch ist UDP praktisch, wenn man eine Firewall legal durchbrechen möchte.
Grüssli
-
Bashar schrieb:
http://penguin.dcs.bbk.ac.uk/academic/networks/network-layer/fragmentation/index.php
Knapp Thema verfehlt
[/quote]
wer zerhackt noch pakete ausser ip?
-
zwutz schrieb:
Shade Of Mine schrieb:
(nur ganz selten macht UDP wirklich sinn).
und wann macht es Sinn?
z.B. wenn man Daten die "out of order" ankommen auch schon gut brauchen kann obwohl "davor" noch Datenstücke fehlen. z.B. bei VoIP oder auch bei vielen Spielen.
Oder wenn man diverse Parameter selbst "tunen" muss um z.B. besseren Durchsatz zu erreichen. Sehr schnelle Leitungen auf sehr grosse Distanz (hoher Ping) funktionieren mit TCP z.B. oft nicht so toll - d.h. man bekommt die volle Bandbreite nicht zwischen 2 einzelnen PCs ausgenutzt.