Hello, I am interested in optimizing TCP/IP throughput in LabVIEW. I am looking to send data between two systems at rates around 20-30mbps on a dedicated 100base-t ethernet connection. All data needs to reach the other side w/o loss. I have a few questions with regard to accomplishing this.
1. <b>Proper use of the Built-in TCP Vis:</b> When sending data between two systems, what is the best manner? I have 50KB arrays of data that I need to move from one system to the next and have been wondering whether or not I need to packetize this, making multiple calls to the TCP/IP =93write=94 function, or whether it's better to just make the call with the full 20-50KB buffer? Does LabVIEW handle this for the user? What is the most efficient way to do it? 2. <b>Built-in Limits:</b> I have seen references to LabVIEW's TCP buffer size being limited to 32KB, is this correct? Is it more efficient to make direct calls to windows DLLs? See this discussion thread: <a href=3D"http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=3D101&RPAGEID= =3D135&HOID=3D506500000008000000719C0000">transfering data with TCP </a> Additionally, I've seen another thread where it was mentioned that there was an =93improved=94 set of TCP/IP VIs. http://www.sheldoninst.com/support.html As mentioned in this discussion thread: <a href=3D"http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=3D101&RPAGEID= =3D135&HOID=3D50650000000800000012940000">200ms delay in windows tcp ip - how to work around? </a> Has any one had any experience with these? Again, has anyone had any experience using LabVIEW to send data over the network at these rates? 3. <b>Protocols:</b> Are there any protocols that will allow for transfer at these rates? OPC? Modbus TCP? I don't mind creating one, but I'd rather not reinvent the wheel. System information: Both systems will be running Windows XP SP1 on P4 processors with lots of RAM, so lots of processing power. The network will be going through either a crossover cable or a dedicated switch, with these computers being the only devices attached to it. One final question, would it make a difference if I went up to gigabit Ethernet? What throughput have people managed on gigabit connections? Thanks, Adam