I want to send Data from my Dart Application on Machine A to the Dart Application on Machine B using a TCP Socket over Darts Socket Class. The Sending also works theoretically except that I loose some Packages that are sent from Machine A on Machine B...
To handle that I implemented then that Machine B sends an Acknowledge of every Object it receives and Machine A resends an Object it get's no Acknowledge of.
Since I've created now a Websocket interface on Machine A for Clients, where the sending works without some Sort of Acknowledgement Implementation. I'm wondering why the Underlying Protocols of the Sockets(TCP/IP? and Ethernet? I guess) don't take care of Packageloss in my Socket Implementation?
Even though in the Documentation of SecureSocket it states:
A high-level class for communicating securely over a TCP socket
could it be that it somehow still uses UDP from my Socket?
this is how I open up and await a single connection from B:
The sending happens with the following Methods; the send Method gets triggered by Events (Here I tried several different approaches which none really worked like socket.flush() no flush I also do them sequentially right now so the flush can properly be awaited.)
I want to send Data from my Dart Application on Machine A to the Dart Application on Machine B using a TCP Socket over Darts Socket Class. The Sending also works theoretically except that I loose some Packages that are sent from Machine A on Machine B...
To handle that I implemented then that Machine B sends an Acknowledge of every Object it receives and Machine A resends an Object it get's no Acknowledge of.
Since I've created now a Websocket interface on Machine A for Clients, where the sending works without some Sort of Acknowledgement Implementation. I'm wondering why the Underlying Protocols of the Sockets(TCP/IP? and Ethernet? I guess) don't take care of Packageloss in my Socket Implementation?
Even though in the Documentation of
SecureSocket
it states:could it be that it somehow still uses UDP from my Socket?
this is how I open up and await a single connection from B:
then B connects to A with this Code here:
And listens on Data after Connecting:
The sending happens with the following Methods; the
send
Method gets triggered by Events (Here I tried several different approaches which none really worked likesocket.flush()
no flush I also do them sequentially right now so the flush can properly be awaited.)On B the OnData Method of the Socket stream should then be triggered, that looks as follow:
The Data Objects I send are simple looking Json Objects: