Wie jetzt, echt? Einmal gesendete UDP Pakete können mehrfach ankommen?



  • jetzt hab ich dich vielleicht verstanden. ich dachte du redest noch von udp.
    sowas kann nur mit tcp passieren, d'accord?



  • OK nochmal Klartext, vielleicht ist das ja verloren gegangen. Die Frage war, wann wird ein UDP-Segment dupliziert? Typischerweise entstehen Duplikate, wenn ein ACK verloren geht. Bei UDP und IP gibts aber kein ACK, in Schicht 2 aber schon, deshalb ist die Ursache wenn schon da zu suchen. Der eine Knoten sendet also ein Frame zum nächsten Knoten, der bestätigt, das kommt aber aus irgendwelchen Gründen nicht an. Knoten 1 schickt den Frame also nochmal, und wenn der ankommt, haben wir eine Duplikation, die sich in den höheren Schichten fortsetzt.
    Das mit dem Switching-Loop ist mir nicht klar, aber so genau kenn ich mich da auch nicht aus.



  • du redest von ethernet flow control?! da wird nichts wieder gesendet, ausser es handelt sich um tcp traffic. um das erneute senden kuemmert sich in dem fall layer 4, und nicht 2. ist es udp, ist der traffic futsch...



  • Ethernet Flow Control sagt mir nichts. Ich sehe nur, dass du anscheinend die Schichten durcheinander bringst. Was interessiert es Ethernet, ob es TCP oder UDP überträgt?



  • Realisator schrieb:

    Stimmt es wirklich, dass UDP nicht einmal sicherstellt, dass ein einmal gesendetes Paket auch nur einmal ankommt?

    stimmt. udp macht keine annahmen über den transportkanal. siehste ja schon daran, dass im header prüfsummen sind, die bei den meisten, heute genutzten netzwerktechnologien überflüssig sind. wenn du mehrfache pakete wegfiltern willst, musste sowas wie sequenznummern einbauen.
    🙂



  • Bashar schrieb:

    Ethernet Flow Control sagt mir nichts. Ich sehe nur, dass du anscheinend die Schichten durcheinander bringst. Was interessiert es Ethernet, ob es TCP oder UDP überträgt?

    ich verstehe dich nicht. ethernet ist so erstmal nicht verbindungsorientiert. punkt! dadurch entstehen keine duplikate, denn, und jetzt kommts, da wird nichts bestaetigt. das bleibt verbindungsorientierten protokollen vorbehalten.

    mein vorheriges posting ist zwar salopp ausgedrückt, aber korrekt.

    Bashar schrieb:

    ...aber so genau kenn ich mich da auch nicht aus.

    ja, danke!



  • Bashar schrieb:

    Was interessiert es Ethernet, ob es TCP oder UDP überträgt?

    achso, frage nicht beantwortet: reichlig wenig. aber soll ein verlorengegangens paket erneut übertragen werden, kümmert sich tcp darum und nicht ethernet. wie kommst du eigentlich auf die idee? wer sagt überhaupt das udp über ethernet übertragen wird. steht nirgends in der frage. scheint eine annahme von dir zu sein.



  • ich hab mir deine theorie mal beim duschen überlegt. jeder ethernetport müßte demnach auch speicher besitzen, um das gesendete auch noch auf vorrat halten. gut, haben manche auch, jedoch nur für scheduler. bei 1 Gb/s sind das schon 0.125 MB für 1 ms.



  • mezzo mix schrieb:

    ich hab mir deine theorie mal beim duschen überlegt. jeder ethernetport müßte demnach auch speicher besitzen, um das gesendete auch noch auf vorrat halten. gut, haben manche auch, jedoch nur für scheduler. bei 1 Gb/s sind das schon 0.125 MB für 1 ms.

    aber ethernet könnte pro paket eine unmittelbare bestätigung verlangen, die karte müßte immer nur ein ausgangspaket speichern. (damit will ich nicht behaupten, daß ethernet das tut.)



  • mezzo mix schrieb:

    Bashar schrieb:

    Ethernet Flow Control sagt mir nichts. Ich sehe nur, dass du anscheinend die Schichten durcheinander bringst. Was interessiert es Ethernet, ob es TCP oder UDP überträgt?

    ich verstehe dich nicht. ethernet ist so erstmal nicht verbindungsorientiert.

    Na und, man kann auch auf Basis einzelner Pakete Bestätigungen verschicken.

    achso, frage nicht beantwortet: reichlig wenig. aber soll ein verlorengegangens paket erneut übertragen werden, kümmert sich tcp darum und nicht ethernet. wie kommst du eigentlich auf die idee? wer sagt überhaupt das udp über ethernet übertragen wird. steht nirgends in der frage. scheint eine annahme von dir zu sein.

    Ethernet hast du ins Spiel gebracht, ich rede von Schicht 2.

    ich hab mir deine theorie mal beim duschen überlegt. jeder ethernetport müßte demnach auch speicher besitzen, um das gesendete auch noch auf vorrat halten. gut, haben manche auch, jedoch nur für scheduler. bei 1 Gb/s sind das schon 0.125 MB für 1 ms.

    Soviel? Überzeugt, kann nicht sein :p

    Ich weiß, was ich weiß, und ich hab kein Problem, zuzugeben, wenn ich was nicht weiß. Du meinst, das als Schwäche interpretieren zu müssen. Vielleicht willst du hier nur irgendwas beweisen. Vergiss es, dazu hast du zu oft vollkommen missverstanden wovon ich überhaupt rede. Falls du nur "gewinnen" willst, sag es einfach, dann können wir das hier beenden.



  • volkard schrieb:

    aber ethernet könnte pro paket eine unmittelbare bestätigung verlangen, die karte müßte immer nur ein ausgangspaket speichern.

    die bestätigung ist, dass keine überschneidung stattgefunden hat. sonst macht der eth-chip wiederholungen. siehe hier: http://en.wikipedia.org/wiki/CSMA/CD
    normalerweise hat so'n teil speicher für ein paar paketchen (selbst der olle 10Mbit/s ne2000 hatte welchen). ausserdem sagt ein ethernet-controller der software (treiber), wann er wieder für ein neues paket bereit ist (per interrupt, oder man pollt ein 'ready'-bit).

    volkard schrieb:

    (damit will ich nicht behaupten, daß ethernet das tut.)

    WLAN macht sowas, weil das medium naturgemäss viel anfälliger gegen störungen ist.
    🙂



  • volkard schrieb:

    aber ethernet könnte pro paket eine unmittelbare bestätigung verlangen, die karte müßte immer nur ein ausgangspaket speichern. (damit will ich nicht behaupten, daß ethernet das tut.)

    dann wuerde die datenrate drastisch sinken. da werden die signallaufzeiten ja schon relevant.

    Bashar schrieb:

    Ich weiß, was ich weiß, und ich hab kein Problem, zuzugeben, wenn ich was nicht weiß. Du meinst, das als Schwäche interpretieren zu müssen. Vielleicht willst du hier nur irgendwas beweisen. Vergiss es, dazu hast du zu oft vollkommen missverstanden wovon ich überhaupt rede. Falls du nur "gewinnen" willst, sag es einfach, dann können wir das hier beenden.

    ich versuche dir diesen zahn zu ziehen, aber da scheinst du ja resistent zu sein:

    Bashar schrieb:

    Bei UDP und IP gibts aber kein ACK, in Schicht 2 aber schon, deshalb ist die Ursache wenn schon da zu suchen.

    neugeordnete udp-pakete, die durch erneutes senden auf layer 2 gesendet werden sind in der regel genauso gut wie verlorene. bei tcp gibt's race-conditions mit dessen flusskontrolle. denk mal drueber nach.



  • Bashar schrieb:

    Vergiss es, dazu hast du zu oft vollkommen missverstanden wovon ich überhaupt rede.

    du machst es einem auch nicht leicht, da du gefaehrliches halbwissen in die runde bringst.



  • mezzo mix schrieb:

    ich versuche dir diesen zahn zu ziehen

    Versuchs mal ohne mich dabei niederzumachen.

    Bashar schrieb:

    Bei UDP und IP gibts aber kein ACK, in Schicht 2 aber schon, deshalb ist die Ursache wenn schon da zu suchen.

    neugeordnete udp-pakete, die durch erneutes senden auf layer 2 gesendet werden sind in der regel genauso gut wie verlorene. bei tcp gibt's race-conditions mit dessen flusskontrolle. denk mal drueber nach.

    Denk mal hier drüber nach: http://en.wikipedia.org/wiki/Data_Link_Layer#List_of_Data_Link_Layer_services

    du machst es einem auch nicht leicht, da du gefaehrliches halbwissen in die runde bringst.

    Inwiefern gefährlich? Aus meinem Halbwissen mach ich keinen Hehl, aber dass es Retransmission auf Schicht 2 gibt und dass Duplikate durch verloren gegangene ACKs erzeugt werden können ist ein Fakt, es ist zumindest plausibel, dass dadurch IP-Pakete dupliziert werden können. Plausibler als der Vorschlag, das sei so aufgrund der verschiedenen Wege, die ein Paket nehmen kann, ist es allemal. Wenn du das widerlegen kannst, tu es, das würde mich sehr interessieren, vorzugsweise zusammen mit einer alternativen Erklärung für die Duplikation.



  • Wie wäre es mit der Theorie, das einfach zwei Leitungen zu dicht liegen und das Signal (Paket) in die andere induziert wird?
    Wenn es zwei Leiungen sind, die an einem Router angeschlosen sind und das Signal stark genug ist, kann es weitergeleitet werden.

    Es steht ja nirgendswo, das die Duplikate durch die Art und Weise der Protokolle und oder Hardware an sich entstehen.
    Ich denke das ist so gemeint, dass das als "Unfall" passieren kann.

    So wie ein Blitz in Leitungen induzieren kann und lange 1111111111111111111111111 Zeichenfolgen entstehen können.



  • Bashar schrieb:

    mezzo mix schrieb:

    ich versuche dir diesen zahn zu ziehen

    Versuchs mal ohne mich dabei niederzumachen.

    Bashar schrieb:

    Bei UDP und IP gibts aber kein ACK, in Schicht 2 aber schon, deshalb ist die Ursache wenn schon da zu suchen.

    neugeordnete udp-pakete, die durch erneutes senden auf layer 2 gesendet werden sind in der regel genauso gut wie verlorene. bei tcp gibt's race-conditions mit dessen flusskontrolle. denk mal drueber nach.

    Denk mal hier drüber nach: http://en.wikipedia.org/wiki/Data_Link_Layer#List_of_Data_Link_Layer_services

    du machst es einem auch nicht leicht, da du gefaehrliches halbwissen in die runde bringst.

    Inwiefern gefährlich? Aus meinem Halbwissen mach ich keinen Hehl, aber dass es Retransmission auf Schicht 2 gibt und dass Duplikate durch verloren gegangene ACKs erzeugt werden können ist ein Fakt, es ist zumindest plausibel, dass dadurch IP-Pakete dupliziert werden können. Plausibler als der Vorschlag, das sei so aufgrund der verschiedenen Wege, die ein Paket nehmen kann, ist es allemal. Wenn du das widerlegen kannst, tu es, das würde mich sehr interessieren, vorzugsweise zusammen mit einer alternativen Erklärung für die Duplikation.

    Wo soll es in UDP Ack's geben?



  • fragenderRiese schrieb:

    Wo soll es in UDP Ack's geben?

    udp ackt nicht, aber der 'link layer' könnte acknowledgements einsetzen, um störungen usw. auszubügeln. theoretisch isses möglich, dass dadurch gesendete udp-pakete (und nicht nur die) dupliziert werden. bei WLAN z.b. wird jedes fehlerfrei empfangene packet durch einen 'ACK frame' quittiert. das wird durch den MAC layer so geregelt, die höheren schichten haben keinen einfluss darauf. zwar erkennt WLAN schon selbst doppelte (802.11) packete und lässt die garnicht erst durch, aber das ist'n anderes thema.
    🙂



  • Bashar schrieb:

    mezzo mix schrieb:

    ich versuche dir diesen zahn zu ziehen

    Versuchs mal ohne mich dabei niederzumachen.

    Du scheinst ja echt ein zartes Gemuet zu haben, wenn du das als niedermachen wertest. Ist das deine Art? Im CPU Spannungs/Takt Thread fuehlst du dich ja auch sehr schnell angegriffen.

    Bashar schrieb:

    mezzo mix schrieb:

    Bashar schrieb:

    Bei UDP und IP gibts aber kein ACK, in Schicht 2 aber schon, deshalb ist die Ursache wenn schon da zu suchen.

    neugeordnete udp-pakete, die durch erneutes senden auf layer 2 gesendet werden sind in der regel genauso gut wie verlorene. bei tcp gibt's race-conditions mit dessen flusskontrolle. denk mal drueber nach.

    Denk mal hier drüber nach: http://en.wikipedia.org/wiki/Data_Link_Layer#List_of_Data_Link_Layer_services

    Genau, und daran:

    Data link layer error control (i.e. retransmission of erroneous packets) is provided in wireless networks and V.42 telephone network modems

    hast du die ganze Zeit gedacht als du hier gepostet hast. Das ist absurd, da hast du dir einen schlechten Strohhalm ausgesucht.

    Bashar schrieb:

    Wenn du das widerlegen kannst, tu es, das würde mich sehr interessieren, vorzugsweise zusammen mit einer alternativen Erklärung für die Duplikation.

    Es gibt einige Erklaerungen fuer die Duplikation, nicht jedoch fuer doppeltes ankommen. Mir fallen auf Layer 2 ein:
    - Broad- und Multicasts (gut, liegt in der Natur der Sache)
    - Unidirektionale Unicasts ohne arp request - fuert zu flooding (passiert nicht aus Zufall und man muss die L2 Zieladresse kennen)
    - die schon mal angesprochenen switching loops. (sollte nicht passieren, dafuer gibt's Protokolle, die das verhindern. Da reicht uebrigens ein Paket, um das Netz unbenutzbar zu machen)
    - wenn Layer 2 ueber geschuetzte Layer 1 Verbindungen geht. Beispiel: Ethernet over SDH mit 1+1 Multiplex Section Protection. Das gleiche Signal wird ueber zwei Leitungen geschickt. Das Duplikat kommt aber auch hier nie zweimal beim Empfaenger an. Dupliziert wird auf Layer 1, also neue Rubrik.

    Auf Layer 3 faellt mir nur Lawful Interception ein, da werden die Pakete hoechst absichtlich Dupliziert.

    Gruesse, mm



  • mezzo mix schrieb:

    Bashar schrieb:

    mezzo mix schrieb:

    ich versuche dir diesen zahn zu ziehen

    Versuchs mal ohne mich dabei niederzumachen.

    Du scheinst ja echt ein zartes Gemuet zu haben, wenn du das als niedermachen wertest. Ist das deine Art? Im CPU Spannungs/Takt Thread fuehlst du dich ja auch sehr schnell angegriffen.

    Können wir uns grundsätzlich darauf einigen, dass eine Diskussion der Wahrheitssuche dient und nicht dem Zweck, am Ende als gefühlter Sieger dazustehen? Gut, dann sollten also die Argumente sprechen und nicht persönliche Angriffe. Wenn ich also sage, dass ich mich mit einem bestimmten Detail nicht auskenne, dann ist das nicht als Einladung an das Gegenüber zu verstehen, alles andere, was ich sage, zu diskreditieren.

    Bashar schrieb:

    Genau, und daran:

    Data link layer error control (i.e. retransmission of erroneous packets) is provided in wireless networks and V.42 telephone network modems

    hast du die ganze Zeit gedacht als du hier gepostet hast. Das ist absurd, da hast du dir einen schlechten Strohhalm ausgesucht.

    Nö, dass es zu den Aufgaben der Schicht 2 gehört bzw. gehören kann, Fehler zu erkennen, ist Wissen aus diversen Vorlesungen, das ich seit einiger Zeit mit mir rumtrage. Wenn das in der Praxis so ist, dann ist meine anfangs geäußerte Vermutung halt leider falsch. Aber man kann einfach begründen, dass sie falsch ist, dazu muss man nicht unter die Gürtellinie gehen.
    BTW, wieso ist das nicht einfach nur falsch (weil es halt in der Praxis nicht vorkommt), sondern gleich absurd? Schon wieder Angriffe 👎

    Es gibt einige Erklaerungen fuer die Duplikation, nicht jedoch fuer doppeltes ankommen.

    Danke, warum nicht gleich so?



  • Hmm, IP-Pakate können doch in den typischen vermaschten Netztopologien immer meherere Wege zum Ziel nehmen. Die Duplikation passiert z.B. in den Routern. Da UDP Pakate auch IP Pakete sind, und UDP keine Mechanismen zum Aussortieren von Doubletten bietet, können so doch Pakete mehrfach ankommen.
    Soll heißen: Bis Layer 3 können Pakete immer mehrfach ankommen. Im Layer 4 muss durch das Protokol sichergestellt werden, dass Doubletten, Sequenzfehler etc. ausgeschlossen werden. Oder eben wie bei UDP auch nicht.


Anmelden zum Antworten