I am using ICS ver5 for communication as server and client (TWSocket),
But there is delay in data send by the server to the client .
   I am sending the data frequently about 1000 bytes at a time . but I am
not getting at client site at that time but there is delay of 2 -
  5 seconds on network .
when I sent 50 to 200 bytes at a time I am getting it at right time with
delay of 10 -100  miliseconds
  At present I have only one client connected to the server . And I set
wSocket->BufSize =  30000;

Are you using TCP or UDP ? If you use TCP, do not change BufSize.

How can I solve this problem . I have network bandwidth of 2MB/s.

MB/s = MegaBytes per second. Or is this MegaBITS per second (Mbps) ?

What is the physical support ? Is it Ethernet ?
If it is not Ethernet, and you use TCP, it may help to REDUCE BufSize to the actual MTU (Maximum Transfer Unit) of the physical network, this will help winsock sending packet of that size which is always better.

If you use UDP and you are sending large datagrams, those datagrams are split into smaller packets by the IP stack (not ICS) at the sender side and then reassembled into the original datagram size at the receiver side. It is usually not a good idea to send an UDP datagram larger than the MTU size so that datagrams are not split into many packets. Chances to have a bad datagram is much higher when it is split into packets. UDP is by definition an unreliable protocol. You have to add reliability at the application level. Read this http://wiki.overbyte.be/wiki/index.php/FAQ.Difference.

What is the ping time ?

What is the error rate on the network ? Use command line "netstat -e" to find out. TCP has automtatic retries so that it transparently offer a reliable transport, but with a high error rate, this may becomes slow because of retries.

Also if you have a netwrok with different speeds, for example the network card in your PC is Gigabit Ethernet or FastEthernet and there is somewhere a slow serial link, then depending on the actual hardware, network may become very slow because of packet drop because of different speed and lack of buffer. TCP has a "window size" to accomodate this behaviour, but if window size is larger than buffering in the slowest part of the network, then performance are going to be very low because packets are dropped and need to be retransmitted.

Please explain your physical network so that I better understand your environment.

--
[email protected]
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to