01-29-2010 11:06 AM
Hello
I want to transmit data using UDP/(Tcp/IP) using Giga bit Ethernet. I have Windows vista on my server side and win XP on my Clint side. I have worked out with UDP sender/receiver but the Max size of data I can set is 65000 bytes. There are some example vi's which suggest that on receiver side i can change the size of the receiving buffer to some value (as 8192 is given already)This vi calls a wsock32.dll to set the buffer size.
1 Can i give size more then 65000 in this set buffer size vi ?
2 Can I do same to increase the size of buffer on Tx side or it is the limitation of this wsock32.dll that It supports only
65000 bytes for 32 bit Operating systems. actually it have tried both option but if size of Tx buffer side is set more
than 65000 Udp write gives an error which means buffer size greater than 65000 is not set. i want to send my data
as quickly as possible.
for example I have a 25.3Mb file I send it using for loop iteration 409 times each iteration containing 65000 bytes same was received at Clint side using for loop iteration 409 for read udp.but the delay have to be set at Tx side which is at least 3ms due to which receiver complete file in 1.525 seconds means about 16MB/s. So the choice left is to increase the input data send size large. Is there any other way to achieve higher data rate like 70/80 MB/s?
Regrad
02-01-2010 01:29 PM
Hi COMSIS,
The maximum message size for a UDP datagram socket is limited by the lesser of the maximum size of an IP datagram and the size of the UDP datagram socket buffer. The maximum size of an IP datagram limits the maximum message size of a UDP message to 65507 bytes. Therefore, using the maximum socket buffer size will allow multiple maximum-sized messages to be placed on the send queue. The default inbound and outbound message size limit for a UDP datagram socket is 65535 bytes.
FLash
02-02-2010 03:04 AM
R u saying it is not possible do so ? then what could be the solution to the problem
Regards
02-03-2010 09:55 AM
Hi COMSIS,
Yes the upper limit is 65507 bytes. You may want to look into another protocol. Possibly CAN?
FLash