[comp.protocols.tcp-ip] error "No Buffer Space"

hutton@SCUBED.COM (Thomas Hutton) (05/17/89)

In attempting to use a microvax running ultrix 2.X as a gateway into the 
internet, I have recently been getting lots of "No buffer space available"
messages.  At first I thought I was running out of mbuf's but this dosent
seem to be the case.  Does anyone know what I can bump in this ultrix version
to improve this case.  (It recently got worse once we started using LAT
to this system)
 netstat -m
986/1248 mbufs in use:
        65 mbufs allocated to data
        7 mbufs allocated to packet headers
        57 mbufs allocated to socket structures
        74 mbufs allocated to protocol control blocks
        773 mbufs allocated to routing table entries
        6 mbufs allocated to socket options
        4 mbufs allocated to interface addresses
0/128 mapped pages in use
284 Kbytes allocated to network (43% in use)
0 requests for memory denied

adb /vmunix /dev/kmem 
nbuf/D
_nbuf:
_nbuf:          818

Thanks,
Tom Hutton
hutton@scubed.com

mankin@GATEWAY.MITRE.ORG (05/18/89)

>In attempting to use a microvax running ultrix 2.X as a gateway into the 
>internet, I have recently been getting lots of "No buffer space available"
>messages.  At first I thought I was running out of mbuf's but this dosent
>seem to be the case.

> netstat -m
>986/1248 mbufs in use:
>        65 mbufs allocated to data

>0 requests for memory denied

Tom,

The 65 mbufs allocated to data leads to a guess that your
MicroVax is running a DDN X.25 connection to a PSN net.
You should check whether your link to the PSN is running
and whether it's congested.  The message "No buffer space 
available" is a translation of the error number ENOBUFS.  
Besides covering cases of mbuf exhaustion, which as you say is
not the case here, ENOBUFS is returned through IP and TCP if the
network output queue overflows, which it may be doing because
the path is congested.

Allison

minshall@kinetics.UUCP (Greg Minshall) (05/20/89)

From article <8905170310.AA19561@SCUBED.COM>, by hutton@SCUBED.COM (Thomas Hutton):
> 
> In attempting to use a microvax running ultrix 2.X as a gateway into the 
> internet, I have recently been getting lots of "No buffer space available"
> messages.  At first I thought I was running out of mbuf's but this dosent
> seem to be the case.  Does anyone know what I can bump in this ultrix version
> to improve this case.  (It recently got worse once we started using LAT
> to this system)

Possibly (probably?) you are running out of buffers in your output queue
for one of your network interfaces.  This is the famous field
ifp->if_snd.ifq_maxlen, which defines how many packets may be on an
interface at a time.  You should look in if_de.c, or whatever interface
there is.  There is at least one variant of netstat (with the "-i" flag)
which shows the current (and maximum) queue length, as well as adb macros
(in /usr/lib/adb?) which will show that information.

Hope this helps.

Greg Minshall				Kinetics, a division of Excelan
...!ucbvax!unisoft!kinetics!minshall	1-415-947-0998