Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!decvax!decwrl!ucbvax!BRL.ARPA!mike From: mike@BRL.ARPA.UUCP Newsgroups: mod.protocols.tcp-ip Subject: Re: tcp on SUN computers. Message-ID: <8606061052.AA02734@ucbvax.Berkeley.EDU> Date: Thu, 5-Jun-86 22:16:23 EDT Article-I.D.: ucbvax.8606061052.AA02734 Posted: Thu Jun 5 22:16:23 1986 Date-Received: Fri, 6-Jun-86 20:34:28 EDT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 27 Approved: tcp-ip@sri-nic.arpa Sockets themselves buffer a limited amount of data. The size of this socket buffering varries, depending on the type of socket (ie, pipe, TCP, UDP, etc). The system-wide default for TCP and UDP can be changed in 4.2 and 4.3 VAX UNIX systems by using ADB to poke the kernel variables tcp_sendspace and tcp_recvspace and udp_sendspace and udp_recvspace. These variables become parameters to the soreserve() routine each time a connection is opened. Note that in 4.2 the maximum size is 31k, in 4.3 it is 64k-1. These values are stored in the socket structure in SHORT ints; in 4.2 if the sign bit comes on, the world will break, thus the 31k limit rather than 32k or 64k-1. These variables can not casually be increased to LONG ints, because that would cause the socket struct not to fit into an MBUF, which is currently necessary, if a tad inelegant. 31k of buffering on each end is, in fact, quite reasonable. Also note that in 4.3 there is a parameter to the setsockopt() sys-call that can be used to adjust these values on a per-connection basis, rather than having to change the system-wide defaults. For those of you that have this, this is the preferred method of increasing buffering. I don't know at which SUN version the 4.3 capabilities will emerge, but almost certainly not in SUN 2.x (but I don't actually know). Best, -Mike Muuss