AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

UDP Datentransfer

Ein Thema von hanspeter · begonnen am 27. Jun 2011 · letzter Beitrag vom 28. Jun 2011
Antwort Antwort
blackfin
(Gast)

n/a Beiträge
 
#1

AW: UDP Datentransfer

  Alt 27. Jun 2011, 16:20
UDP hat doch gerade gegenüber TCP die Eigenschaft, dass nicht sichergestellt ist, ob die Daten auch ankommen:

Zitat von http://de.wikipedia.org/wiki/User_Datagram_Protocol:
UDP stellt einen verbindungslosen, nicht-zuverlässigen Übertragungsdienst bereit. Das bedeutet, es gibt keine Garantie, dass ein einmal gesendetes Paket auch ankommt, dass Pakete in der gleichen Reihenfolge ankommen, in der sie gesendet wurden, oder dass ein Paket nur einmal beim Empfänger eintrifft. Eine Anwendung, die UDP nutzt, muss daher gegenüber verlorengegangenen und unsortierten Paketen unempfindlich sein oder selbst entsprechende Korrekturmaßnahmen beinhalten.

Geändert von blackfin (27. Jun 2011 um 16:27 Uhr)
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#2

AW: UDP Datentransfer

  Alt 27. Jun 2011, 19:17
UDP hat doch gerade gegenüber TCP die Eigenschaft, dass nicht sichergestellt ist, ob die Daten auch ankommen:
Meine Frage war nicht was UDP ist, das wei0 ich selber genau und äh ich kann schon lesen und Wikepedia ist mir nicht völlig unbekannt.
Meine Frage ist, ob wer eine Idee hat, woran es liegen kann, dass alle gesendeten Pakete beim Client nicht mehr ankommen?

Peter
  Mit Zitat antworten Zitat
FredlFesl

Registriert seit: 19. Apr 2011
293 Beiträge
 
Delphi 2009 Enterprise
 
#3

AW: UDP Datentransfer

  Alt 27. Jun 2011, 19:50
goto #2
Das Bild hängt schief.
  Mit Zitat antworten Zitat
Klaus01
Online

Registriert seit: 30. Nov 2005
Ort: München
5.784 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: UDP Datentransfer

  Alt 27. Jun 2011, 20:16
Guten Abend,

sind die Rechner im einem LAN miteinander verbunden - oder liegt das "Internet dazwischen"?

Hast Du die Möglichkeit den Traffic mitzuschneiden (mit Wireshark ..)?

Liegt eventuell ein Fehler im Client vor?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#5

AW: UDP Datentransfer

  Alt 27. Jun 2011, 20:39
ReceiveString() ist soviel ich weiss blocking bzw. hat standardmäßig ein unendliches Timeout.
Nur eine vermutung (habe mit Indy-UDP noch nie gearbeitet): Kann es sein, dass bei einem Verbindungsabbruch während ReceiveString() ein Fehler auftritt ("connection reset" oder dergleichen) und noch Daten im Receive-Buffer hängen, so dass der Client nie weitergeht?

P.S.: Ich wollte mit meinem Beitrag nicht "klugscheissen" oder dir an den Karren pissen. Wenn dir das so vorkam, sorry, aber es hätte ja sein können, dass du nicht gewusst hast, dass bei UDP nicht unbedingt immer alle Daten ankommen...

Geändert von blackfin (27. Jun 2011 um 20:42 Uhr)
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#6

AW: UDP Datentransfer

  Alt 27. Jun 2011, 21:29
Die Rechner hängen normal im Lan. (Betriebsnetz) und stehen beide auf meinem Schreibtisch, da ich die Lösung erst erprobe. (Ist die Protokollierung einer Maschinensteuerung.)
Die Frage stelle ich deshalb weil ich zu den Indys, je tiefer ich eindringe, immer weniger Vertrauen habe.
Ich verwende einen eigenen Timeout. Kommt innerhalb einer bestimmten Zeit keine Antort, dann setze ich die Steuerung komplett zurück und der Client sendet zyklisch einen Request an den Server. Ist der Server nicht bereit, dann wird die Ablaufsteuerung rückgesetzt und nach 3 Sek. ein neuer Request gesendet.
Der Server empfängt diesen auch und antwortet mit ACK (Ich schreibe ein Logfile.). Diese Antwort ( über die Bindings oder auch an den Serverport adressiert) kommt aber nicht an.
Ich will probieren den Verkehr mit zu protokollieren, da fehlt mir im Moment aber noch ein Tip für ein geeignetes Werkzeug.

Und an blackfin, sorry wenn meine Antwort ungehalten klang, war nicht so gemeint.
Mir passiertes bei einer Frage in diesem Forum in letzter Zeit halt öfter mal, dass man eine Antwort erhält, die völlig an der Fragestellung vorbeigeht. Irgendwann ist die eigentliche Frage total zerredet.
Ich selbst bin Diplominformatiker und seit über 40 Jahren im Fach. Mein erstes "größeres" Programm war 2.500 Lochkarten lang.
Wenn ich ein Thema angehe, dann beschäftige ich mich erst mit den Grundlagen. Um das Rad nicht nochmal zu erfinden, suche ich im Netz zwar nach vorhandenen Code.
Den verwende ich aber erst, wenn ich die Funktionalität verstanden habe.


Peter
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#7

AW: UDP Datentransfer

  Alt 27. Jun 2011, 21:36
Schon ok

Zitat:
Ich will probieren den Verkehr mit zu protokollieren, da fehlt mir im Moment aber noch ein Tip für ein geeignetes Werkzeug.
Klaus01 hat ja bereits Wireshark erwähnt. Ich denke, damit solltest du alles sehen können, was über das Netzwerk läuft.

Achja, evtl. hilft dir bei dem Problem auch noch dieser Beitrag aus den EDN-Foren.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz