Hi,
On 24 Aug 2005, at 05:58, Trevor Warren wrote:
Morning Fellas,
Was working on some socket progs based on some performance test objectives we had in mind. The objective is to stress the TCPIP stack in the GnuLinux kernel and see the best numbers achiveable over the network.
Am in a bit of a quandry here. We always were taught that the overheads of a tcp session were higher than that of UDP considering the ACK's and FIN's sent across for every packet over the n/w, while TCP guaranteed delivery....blah..blah and UDP didn't.
ACK's aren't necessarily sent for every packet. TCP has the option to ACK a set of packets i.e if the sender ACKs packet with sequence number 4, the sender assumes that the receiver has also received packets 1,2 and 3. A FIN is only sent when the connection is to be closed.
Should i expect better throughput(Bytes/s) for TCP or UDP over a *Reliable* LAN and *Unreliable* WAN?. I will let you know what results i have achieved but i would like to know your perspective since thats more important. The tests are on my RHEL 3.0 box with the RH hacked 2.4.x kernel.
Well, on a reliable network you will probably see that you can send more data over UDP than TCP. UDP packets have lesser checks done on them so you need lesser CPU cycles to process UDP packets. The point to note is (and you probably know this) that the choice of transport shouldn't be based on the raw speed you can achieve but the requirements your application has.
cheers Chandru