INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Daten VIA UDP versenden



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

18.03.2009, 11:33
Beitrag #1

Schandmaul Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Mar 2009

8.5, 2011
2008
EN

82205
Deutschland
Daten VIA UDP versenden
Hallo an alle,

ich muss aus einem Puffer ein Datenpaket lesen, dieses muss ich noch konvertieren und dann VIA UDP
an einen anderen PC schicken.

Jetzt glaube ich zu wissen, dass es dem UDP egal ist (senderseitig), ob die Daten überhaupt irgendwo
angekommen sind, der Sender schickt es einfach nur weg, was damit passiert ist im end effekt egal, ob
sie nun gelesen werden oder nicht spielt keine Rolle (im Prinzip könnte ich die Daten vom Sender wegschicken
und sie über eine definierte Portnummer wieder vom Sender auslesen)?!
Ich weiss, dass die beiden PC's die bei dieser Verbindung eine Rolle spielen im C-Netz laufen, weiter Geräte
sind nicht vorhanden. Wenn ich also dem Sender sage, dass er an die IP 192.168.255.255 schicken soll,
schickt er das Datenpaket doch einfach breitbandig über das ganze C-Netz, insofern sollte es dann doch
keine Rolle mehr spielen, welche IP mein Empfänger hat, da ja eh jeder Kanal mit den selben Daten vom
Sender belegt ist oder?
Die Portnummer muss ich beim Sender dem des Empfängers anpassen? Also der Sender hat natürlich eine
eigene Portnummer, aber ich sage ihm z.B. IP 192.168.255.255 und dann Portnummer xyz, diese Nummer xyz
muss ich beim Empfänger vorher definieren?

Über eine Antwort wäre ich dankbar

Gruß Flo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
19.03.2009, 09:54 (Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2009 09:56 von rolfk.)
Beitrag #2

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Daten VIA UDP versenden
' schrieb:Hallo an alle,

ich muss aus einem Puffer ein Datenpaket lesen, dieses muss ich noch konvertieren und dann VIA UDP
an einen anderen PC schicken.

Jetzt glaube ich zu wissen, dass es dem UDP egal ist (senderseitig), ob die Daten überhaupt irgendwo
angekommen sind, der Sender schickt es einfach nur weg, was damit passiert ist im end effekt egal, ob
sie nun gelesen werden oder nicht spielt keine Rolle (im Prinzip könnte ich die Daten vom Sender wegschicken
und sie über eine definierte Portnummer wieder vom Sender auslesen)?!
Ich weiss, dass die beiden PC's die bei dieser Verbindung eine Rolle spielen im C-Netz laufen, weiter Geräte
sind nicht vorhanden. Wenn ich also dem Sender sage, dass er an die IP 192.168.255.255 schicken soll,
schickt er das Datenpaket doch einfach breitbandig über das ganze C-Netz, insofern sollte es dann doch
keine Rolle mehr spielen, welche IP mein Empfänger hat, da ja eh jeder Kanal mit den selben Daten vom
Sender belegt ist oder?
Die Portnummer muss ich beim Sender dem des Empfängers anpassen? Also der Sender hat natürlich eine
eigene Portnummer, aber ich sage ihm z.B. IP 192.168.255.255 und dann Portnummer xyz, diese Nummer xyz
muss ich beim Empfänger vorher definieren?

Über eine Antwort wäre ich dankbar

Gruß Flo

Alles ziemlich umständlich beschrieben von Dir. Hast Du Dir die UDP Beispiele in LabVIEW mal angeschaut?

Grundsätzlich ist es wahr dass der UDP Sender einfach mal losbrüllt und wer immer da zuhört kann sich die Message packen. Aber mann kann halt schon eine Adresse beim Senden angeben und dann sollte nur der Computer die Sendung hören der auch diese Adresse hat, ausser er arbeitet im promiscious Mode. Das ist ein Modus wo die Adresse der Daten nicht wichtig ist und alle Packete weitergeleitet werden, aber das unterstützen die normalen Socket Libraries die das IP Protokoll in Deinem System implementieren standardmässig nicht. Dazu braucht man eine speziellen Treiber wie er beispielsweise von Wireshark verwendet wird.

Wenn du ein UDP Packet verschicken willst das von allen möglichen Empfängern gehört werden kann, kannst Du aber die UDP Broadcast Adresse 255.255.255.225 verwenden.

Aber UDP wird normalerweise nicht geroutet, d.h. es wird nur im lokalen Netz verschickt und ganz sicher UDP Broadcasts.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2009, 10:23
Beitrag #3

Schandmaul Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Mar 2009

8.5, 2011
2008
EN

82205
Deutschland
Daten VIA UDP versenden
Hallo Rolf,

erstmal Danke für die Antwort.

Den "promiscious Mode" benötige ich, so wie ich das Verstanden habe, gar nicht für diese Aufgabe.
Ich nehme einfach die allgemeine Broadcast Addresse. In dem "Netzwerk", welches ich bedienen muss,
befinden sich nämlich nur 2 PC's, wobei mich in diesem Fall nur eine Modifikation des Programmes interessiert,
die Daten aus der neuen Programmstruktur muss ich dann weitersenden (von QL auf DAQ). Also wie du schon vermutet hast
eine rein lokale Sache.
Da du dich mit UDP gut auszukennen scheinst gleich noch eine FrageSmile.
Ich muss ja in dem VI, welches für den Versand der Daten zuständig ist (UDP schreiben),
1. Dateneingang
2. Verbindungs ID
3. Addresse (eben die 255.255.255.255 die ich verwenden werde)
4. Port
5. Verbindungs ID Out
angeben.

Meine Frage bezieht sich speziell auf Nr.4:

Ich kann ja irgendeinen Port zwischen 0 und 65536 (16bit) angeben,
die Frage, die ich mir nun stelle ist, wie sage ich dem anderen (Empfänger), auf welchem
Port er die Daten empfangen soll, oder besser, welchen Port ich freischalten muss?
Und wie mache ich das Überhaupt, ich dachte nämlich das hätte ich in 10 Minuten gemacht,
aber ich weis nicht, wo ich den einzelnen Port freigebe.
Aber ich könnte doch auch einfach einen verwenden, der sowieso schon offen ist, da gibt es doch
bestimmt welche im UDP Netz?

Danke schon mal, für deine AntwortSmile.

Gruß Flo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2009, 11:22
Beitrag #4

Schandmaul Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Mar 2009

8.5, 2011
2008
EN

82205
Deutschland
Daten VIA UDP versenden
Hab noch was vergessenSmile.

Ich weiss, wie ich bei einem Router, Firewall etc. die Ports freischalten kann, bzw. die geöffneten auslesen kann.
Aber in diesem Fall habe ich nur einen Hub dazwischen hängen, wie mache ich das denn da?
Weil direkt in Window XP ist das ja nicht möglich, also zumindest soweit ich weis, die Ports werden doch von den jeweiligen Programmen fest vordefiniert.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2009, 11:22 (Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2009 11:26 von rolfk.)
Beitrag #5

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Daten VIA UDP versenden
' schrieb:Meine Frage bezieht sich speziell auf Nr.4:

Ich kann ja irgendeinen Port zwischen 0 und 65536 (16bit) angeben,
die Frage, die ich mir nun stelle ist, wie sage ich dem anderen (Empfänger), auf welchem
Port er die Daten empfangen soll, oder besser, welchen Port ich freischalten muss?
Und wie mache ich das Überhaupt, ich dachte nämlich das hätte ich in 10 Minuten gemacht,
aber ich weis nicht, wo ich den einzelnen Port freigebe.
Aber ich könnte doch auch einfach einen verwenden, der sowieso schon offen ist, da gibt es doch
bestimmt welche im UDP Netz?

Danke schon mal, für deine AntwortSmile.

Gruß Flo

Schau Dir doch mal die UDP Beispiele an! Sender und Empfänger müssen sich beide über den Port einig sein. Es ist in etwa so wie bei der Briefbesorgung. Die IP Adresse ist die Hausadresse, und die Portnummer ist ein spezifischer Briefkasten im Haus.
Der Sender lässt den Brief in einen der Briefkästen werfen und der Empfänger schaut auch nur in einem davon. In welchem sagst Du ihm mit UDP Open und er muss dann natürlich auch in einer Loop mit UDP Read darauf warten, dass was reinkommt (regelmässig nachschauen dass da was ist). Im Gegensatz zu TCP sieht der Sender aber nicht ob die Message von einem, 1000 (bei Broadcast) oder gar keinem Empfänger gelesen wurde.

Der Briefkasten könnte ja abmontiert sein und der Pöstler wirft die Sendung dann einfach in den nächsten Mülleimer (bei Weise von Vergleich) oder der Empfänger ist umgezogen oder verstorben und schaut n icht mehr nach. Ein Broadcast ist dann eine Massenpostwurfsendung aber das hinkt etwas weil diese in diesem Beispiel halt nur an den x-ten Briefkasten in jedem Haus zugestellt würde.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2009, 12:20
Beitrag #6

Schandmaul Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Mar 2009

8.5, 2011
2008
EN

82205
Deutschland
Daten VIA UDP versenden
Danke, hat mir sehr geholfen.

Gruß Flo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  E-Mails versenden mit STARTTLS Kommando TDO 1 3.024 27.03.2020 09:37
Letzter Beitrag: Freddy
  Über Bluetooth einen Befehl zum SMS versenden ans Smartphone senden Heinz 1 4.604 07.07.2014 14:21
Letzter Beitrag: Heinz
  Daten per Datenkommunikation versenden Labview-Laie 4 5.271 14.03.2010 11:34
Letzter Beitrag: Y-P
  Email mit Anhang versenden Ram 3 6.806 06.12.2007 10:43
Letzter Beitrag: jg
  Emails mit LabVIEW versenden. Wie gehts? G.Bartsch 1 4.614 12.10.2005 19:36
Letzter Beitrag: thomas.sandrisser

Gehe zu: