LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

DataSocket Transfer Speed

I have a PC and a laptop connected with a 10/100 hub. Pinging in both directions takes 11mSec for 65500 bytes. In comparison, DataSocket takes 4.77 seconds to receive 66Kbytes from a string variable configured with the DS Manager.
 
Is this the best transfer speed DataSocket can deliver?
 
I am using LV 8.0.1 on the PC (used to upload data to the DS server) and LV 8.0 on the laptop (used to receive data from the server).  I can successfully upload and receive up to 7 MBytes of data, but the throughput curve looks like a forward-biased diode transfer function, with a minimum transfer time of about 4.7 seconds. 7 MB takes over 13 seconds to receive.
 
Addressing:
PC = dstp://localhost/NewString
Laptop = dstp://169.254.231.171/NewString
The above IP address is for the PC.
 
I would appreciate any help.  I want to use DS to determine throughput versus distance for wireless Ethernet products.  Yes, normalizing test data would cancel out this long transfer time, but the transfer times I am getting do not reflect the speed of the ethernet interface.
0 Kudos
Message 1 of 3
(2,481 Views)
Hi Z24top,

DataSocket is built on top of TCP/IP, so performance will vary largely with network bandwidth, network traffic, etc.; however, DataSocket itself involves very little overhead above TCP/IP, and some benchmarks have seen data transfer rates as fast as 320 KB/s between machines connected by 10BaseT Ethernet. The main limitation to DataSocket’s ability to transfer data is typically the network bandwidth, is your hub connected to a network?

When you say 7 MB takes over 13 seconds, is that using DataSocket?  Does that mean it appears to take 4.7 seconds to transfer 66 KB and about 8.3 seconds to transfer the remaining 6934 KB?  If that is the case, it may be the handshaking that is taking up much of the 4.7 seconds.  Are you wiring anything to the timeout input on the DataSocket Read/Write VIs?

While DataSocket is a good method for data transfer, is there a specific reason why you chose it over Shared Variables or the TCP/IP VIs?

Thanks!

Regards,
Erik J.


0 Kudos
Message 2 of 3
(2,462 Views)
Hi Erik,

Thanks for the response.  In my application the hub is not connected to a network; it only ties the two PC's together so I have full bandwidth and no other traffic. Using DataSocket to transfer a 7 MB file takes over 13 seconds.  DS Write is used to upload to the server. The following timeout values are used for reading: DS Open(default 10 sec), DS Read(50 sec), DS Close(1 sec).

I haven't looked at the other two technologies you mentioned.
0 Kudos
Message 3 of 3
(2,448 Views)