SCOUG-General Mailing List Archives
Return to [ 30 |
October |
1999 ]
<< Previous Message <<
>> Next Message >>
Content Type: text/plain
Hello Peter,
On Sat, 30 Oct 1999 14:36:37 PDT, Peter Skye wrote:
>[Networking, Programming]
>
>In TCP/IP:
>
>1. How many sockets am I allowed to have open?
I don't believe there is a specific limit. This is tunable by certain
parameters on some systems. Unless you are considering creating more than
say 100, this should not be a problem. They do use resources which will
bog down your system. Consider this in your design as well.
>2. If the socket buffer becomes full, what happens to new data received
>by TCP/IP?
Datagram sockets (UDP) will be lost in transit if the intended receiver
cannot process them.
Stream sockets (TCP) will preserve the consistancy of the stream.
There are negotiations between the sender and receiver to insure that
the sender does not send more data than the receiver can handle.
This information is contained in the smaller acknowledgement packets
that are sent back to the sender. This throttling mechanism is used
to keep individual sockets buffers, and node to node buffers, working
efficiently.
>-- 2a. Does TCP/IP tell the sender to stop sending data, and if so,
>what happens to packets that are already in transit and subsequently
>received by TCP/IP while the socket buffer is still full?
The throttling mechanism prevents too much data from being in transit.
If all else fails, renegotiation will recover the stream.
>-- 2b. Or, does TCP/IP have a "master buffer" where it keeps packets
>that it can't move to a socket buffer yet?
The sender may send more data than has been acknowledged by the
receiver. However, the sender cannot release its copy of the data
until the receiver (all levels) have replied that the data has been
transfered.
>3. I know I can set socket options to increase the receive buffer size.
>What's the maximum size I can make this buffer?
I don't recall the limits placed by OS/2. These are negotiable.
In any case, each level of communications has its own limits which
are tunable. TCP/IP/Ethernet may all have different settings.
A 4096 byte TCP packet will be broken into parts to make it across
IP and Ethernet may further divide/combine these packets. Each
level of communications should be robust. Each level is tunable to
achieve certain goals. Tuning is generally difficult to manage
unless all the variables are known. Trust me, your machine speaks
far more than a few protocols. You might look up ARP. The RFCs
are a good place to browse and learn about the whole structure
of TCP/IP communications. The TCP Illistrated books are also very
good.
>Thanks.
>
>- Peter
Understanding is a three edged sword, yours, mine, and the truth,
David LaRue
=====================================================
To unsubscribe to this list, send an email message
to "steward@scoug.com". In the body of the message,
put the command "unsubscribe scoug-general".
For problems, contact the list owner at
"rollin@scoug.com".
=====================================================
<< Previous Message <<
>> Next Message >>
Return to [ 30 |
October |
1999 ]
The Southern California OS/2 User Group
P.O. Box 26904
Santa Ana, CA 92799-6904, USA
Copyright 2001 the Southern California OS/2 User Group. ALL RIGHTS
RESERVED.
SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group.
OS/2, Workplace Shell, and IBM are registered trademarks of International
Business Machines Corporation.
All other trademarks remain the property of their respective owners.
|