tony@uhheph.phys.hawaii.edu (Tony Querubin) (12/18/90)
I need to change the TCP window size that a SUN advertises to other hosts that make a connection. Thinking that it might be a configurable kernel option, I looked through the various /sys/netinet files for a TCP WINDOW parameter and found none. On a second pass through the files I noticed a definition for TCPOPT_MAXSEG in tcp.h. Question: Can anyone verify for me that this is equivalent to the TCP window parameter in KA9Q? I'd like to know this BEFORE I reconfigure the kernel. Essentially, I want any host making a connection to this SUN to send only one TCP packet at a time. The reason for this is that the path to the SUN goes through a PC using a 3C501 ethernet board. Antonio Querubin querubin@uhunix.uhcc.hawaii.edu
scott@tdc.rtp.dg.com (John Scott) (12/19/90)
In article <10703@uhccux.uhcc.Hawaii.Edu>, tony@uhheph.phys.hawaii.edu (Tony Querubin) writes: |> I need to change the TCP window size that a SUN advertises to other hosts |> that make a connection. Thinking that it might be a configurable kernel |> option, I looked through the various /sys/netinet files for a TCP WINDOW |> parameter and found none. On a second pass through the files I noticed |> a definition for TCPOPT_MAXSEG in tcp.h. |> |> Question: Can anyone verify for me that this is equivalent to the TCP window |> parameter in KA9Q? I'd like to know this BEFORE I reconfigure the kernel. |> |> Essentially, I want any host making a connection to this SUN to send only one |> TCP packet at a time. The reason for this is that the path to the SUN goes |> through a PC using a 3C501 ethernet board. |> |> Antonio Querubin |> querubin@uhunix.uhcc.hawaii.edu |> You're confusing window size with maximum segment size. There is nothing you can do about the TCP Maximum Segment Size, nor should you want to. The MSS is calculated based on the MTU size of the interface used for communication (or 576 if communicating through a gateway). If the version of SunOS you're using does not use that algorythm then you are out of luck (I'm pretty sure that SunOS 4.x uses the interface MTU. Older SunOS's don't.) The window size is the amount of data a communicating peer may send. This is tied to the socket buffer space. This is controlled using the socket option SO_RCVBUF (SO_SNDBUF is used to control the socket send buffer space). As with TCP MSS, newer SunOS supports this option, older version don't. With older SunOS's you may be able to patch your kernel to use larger send and receive windows. There are two global variables, tcp_sendspace and tcp_recvspace, that control the amount of buffer space reserved. (If I got the names wrong, don't flame me just give the right names.) As for KA9Q, I don't know for sure though I would expect it to do the right thing (depending on the version you're using). P.S. Has anyone tried using a server other than a SUN for SUN Sparc stations? You may be in for a nasty surprise. Ask your SUN rep for details. -- John A. Scott scott@dg-rtp.dg.com Data General, RTP, NC <some area of the know world>!mcnc!rti!xyzzy!scott