Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi TCP persistent (https://www.delphipraxis.net/186049-tcp-persistent.html)

Klaus01 30. Jul 2015 14:24

AW: TCP persistent
 
Hallo,

TCP hält ja eigentlich von Hause aus die Verbindung offen. Warum dann persistent?

Schließt das Relay-Board die Verbindung wieder? (sollte im Wireshark trace sichtbar sein).
Erwartet das Board "Keep-Alive" Messages um die TCP Verbindung offen zu halten? (sollte auch im Wireshark trace sichtbar sein)

Grüße
Klaus

BUG 30. Jul 2015 14:32

AW: TCP persistent
 
Zitat:

Zitat von Klaus01 (Beitrag 1310357)
Schließt das Relay-Board die Verbindung wieder? (sollte im Wireshark trace sichtbar sein).

Es könnte durchaus sein, dass das Board pro Verbindung nur einmal Authentifizierung+Befehl annimmt und dann die Verbindung schließt.

jeng37 30. Jul 2015 14:38

AW: TCP persistent
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Klaus01 (Beitrag 1310357)
Hallo,

TCP hält ja eigentlich von Hause aus die Verbindung offen. Warum dann persistent?

Ja das ist die Frage.

Zitat:

Schließt das Relay-Board die Verbindung wieder? (sollte im Wireshark trace sichtbar sein).
Nei dei verbindung bleibt offen!

Zitat:

Erwartet das Board "Keep-Alive" Messages um die TCP Verbindung offen zu halten? (sollte auch im Wireshark trace sichtbar sein)
Scheinbar nicht. Ich hab mal einen trace angehängt! Sieht nicht gerade top aus als txt, ich kann auch einen Wireshark dump reinstellen bei bedarf.
Port an: 04 01 02 23 3c 00 0a 01 ff 00 00 00 00 00 00 00 fe
Port aus: 04 01 02 23 3c 00 0a 01 00 00 00 00 00 00 00 00 01

BUG 30. Jul 2015 14:52

AW: TCP persistent
 
Was ist mit den "05 01"-Sequenzen? Ich vermute, dass es eine Art Statusabfrage ist ... könnte doch durchaus als Heartbeat verwendet werden.

jeng37 30. Jul 2015 14:57

AW: TCP persistent
 
Zitat:

Zitat von BUG (Beitrag 1310364)
Was ist mit den "05 01"-Sequenzen? Ich vermute, dass es eine Art Statusabfrage ist ... könnte doch durchaus als Heartbeat verwendet werden.

Ja stimmt das ist die Statusabfrage.

jeng37 30. Jul 2015 15:49

AW: TCP persistent
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier ein Sauberer Wireshark Dump.
Wenn einer Lust hat mir das Licht Auszuknippsen:)

Filter:
IP: 188.115.10.88
TCP Port: 6354

jeng37 31. Jul 2015 06:51

AW: TCP persistent
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich setzte mal mein test Projekt rein.
Es war anfangs eine chat demo.
Ich hab diese umgebaut.

jeng37 7. Aug 2015 14:10

AW: TCP persistent
 
Hallo,

Ich hab endlich eine kleine beschreibung vom Hersteller der Karte bekommen.
Vieleicht kann mir damit jetzt besser jemand weiterhelfen.
Delphi-Quellcode:

{
Frame:(STX)(IDto)(IDFrom)(Lng max 128)(DATA max 128)(LRC)


STX='#'          1 byte
IDTo=0..255       1 byte
IdFrom=0..255     1 byte
Lng=2..128        1 byte Lng=DATA length+LRC
DATA=0…255        Lng-1 bytes
LRC=0…255         XOR all DATA (DATA0 xor DATA1 xor … DATA lng-1)
}
Wie bekomme ich dieses in eine prozedur zum senden bzw emfpangen wobei man IDTo wechseln kann ?

mfg
Jeng

Klaus01 7. Aug 2015 16:11

AW: TCP persistent
 
Hallo,

vom Prinzip könnte man es so auffassen:

Code:
<Header><Data><Trailer>
Der Header könnte so aussehen:

Delphi-Quellcode:
header = record
  STX : Byte; // ansiChar
  IdTo: Byte;
  IdFrom: Byte;
  Lng: Byte;
end;
data ist dann ein byteArray ( Array of Byte, Größe Lng-1)

trailer: Byte;

Beim Empfangen wertestDu erst den Header aus.
Abhängig von der Anzahl der Datenbytes (header.Lng -1)
werden die Daten gelesen.
Anschliessend wird der Trailer gelesen.
Aus den empfangenen Daten wird ein neuer LRC gebildet.
Dieser LRC wird mit dem empfangenen verglichen.
Stimmen sie überein sind die Daten ok.

Grüße
Klaus

jeng37 7. Aug 2015 17:11

AW: TCP persistent
 
Danke Klaus,
Ich versuch's mal auf diese weise!

mfg
Jeng


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:11 Uhr.
Seite 2 von 5     12 34     Letzte »    

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