We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now

x

TCP replated question.

vividh
vividh asked
on
Medium Priority
465 Views
Last Modified: 2010-04-21
I had a question about how are the various data lengths used in the TCP/Ip
protocol. We have the TCP_MAXSEG. This is the maximum segment that TCP can
hold. Then we have SO_RCVBUF and SO_SNDBUF to set the receive and send
buffers. Again going down the stack IP has a fixed size header and data body.
So even if I fix up the receive/send buffers how is it gaining on speed for
the transfer as later it is finally going in fixed chunks? Can some guru
illustrate how all these different buffers are organised in TCP/IP?

Please send me a mail at vividh@hotmail.com

Thanks in advance.
Vividh
Comment
Watch Question

Commented:
Unlock this solution and get a sample of our free trial.
(No credit card required)
UNLOCK SOLUTION

Author

Commented:
What if I want to develop a server similar to ftp which basically transfers files. The number of clients accessing it are also higher. Should the send buffer in server and receive buffer in client be increased? On my system the value is some thing like 27000 for send/receive buffers? Should I increase it to 32767 or something higher.

Thanks.

Author

Commented:
What if I want to develop a server similar to ftp which basically transfers files. The number of clients accessing it are also higher. Should the send buffer in server and receive buffer in client be increased? On my system the value is some thing like 27000 for send/receive buffers? Should I increase it to 32767 or something higher.

Thanks.
Vividh

Author

Commented:
What if I want to develop a server similar to ftp which basically transfers files. The number of clients accessing it are also higher. Should the send buffer in server and receive buffer in client be increased? On my system the value is some thing like 27000 for send/receive buffers? Should I increase it to 32767 or something higher.
Incase of TCP, we donot have to worry about the dropped packet right? TCP handles it. But in UDP u have to worry about the sequencing of the packets if I am not mistaken.

Thanks.
Vividh

Author

Commented:
What if I want to develop a server similar to ftp which basically transfers files. The number of clients accessing it are also higher. Should the send buffer in server and receive buffer in client be increased? On my system the value is some thing like 27000 for send/receive buffers? Should I increase it to 32767 or something higher.
Incase of TCP, we donot have to worry about the dropped packet right? TCP handles it. But in UDP u have to worry about the sequencing of the packets if I am not mistaken.

Thanks.
Vividh

Commented:
Vividh,
If you're going to run something similar to an ftp server, and you have the memory (remember adding buffer memory takes away from memory usable by programs & daemons) then by all means increase the send buffer.  32767 is a fairly larger buffer space.  I would try it first and see how performance is on the client end.  If you get too many timeouts, or it takes too long for clients to connect to the server (assuming the netowork traffic is not causing it, or the CPU[s] are not too busy), then I would increase it in steps of 8096.
You are correct about TCP and dropped packets, since TCP sequences packets, if one is dropped, it will be resent.  UDP does not care.  It is a best try protocol.
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.