LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: No buffer space available

To: lvs-users@xxxxxxxxxxxxxxxxxxxxxx, Jeremy Kusnetz <JKusnetz@xxxxxxxx>
Subject: Re: No buffer space available
From: Roberto Nibali <ratz@xxxxxxxxxxxx>
Date: Mon, 30 Sep 2002 18:27:49 +0200
Actually I'm not sure what you mean by the ping test.  Things haven't gotten

Well, you did a broadcast ping once that seemed to have triggered the table overflow.

bad enough to get the buffer space error.  I still see the Neighbour table
overflow error in dmesg, but these were already there from before changing
gc_thresh3

Any new ones?

Here are all the diags you wanted me to run earlier.

Can you add some more please?

ip -o -s route show cache | wc -l
grep cache /proc/slabinfo

The latter instead of cat /proc/slabinfo

-------------------------------------------------
ip addr show
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100
    link/ether 00:01:fa:ff:fc:45 brd ff:ff:ff:ff:ff:ff
    inet 216.163.120.8/24 brd 216.163.120.255 scope global eth0
    inet 216.163.120.45/24 brd 216.163.120.255 scope global secondary eth0:0
    inet 216.163.120.46/24 brd 216.163.120.255 scope global secondary eth0:1
    inet 216.163.120.62/24 brd 216.163.120.255 scope global secondary eth0:2
    inet 216.163.120.47/24 brd 216.163.120.255 scope global secondary eth0:3
    inet 216.163.120.63/24 brd 216.163.120.255 scope global secondary eth0:4
    inet 216.163.120.48/24 brd 216.163.120.255 scope global secondary eth0:5
    inet 216.163.120.119/24 brd 216.163.120.255 scope global secondary

Ok, I haven't payed attention to this setup before but all those eth0:* are supposed to be VIPs, right? If so they need to /32 and not /24. If you have them /24 all of them will reply to any address. Please set a VIP up like follows:

ip addr add 216.163.120.45/32 brd + dev eth0 label eth0:0
ip addr add 216.163.120.46/32 brd + dev eth0 label eth0:1
ip addr add 216.163.120.47/32 brd + dev eth0 label eth0:3
[...]

cat /proc/net/rt_cache_stat
00004846  016f041d 00255164 00000000 00000000 00000456 00000000 00000025
003daa6a 000ad632 0000045a 000d7622 000d68e9 0
000018e 00000000 00004846 016ece54 00254aaf 00000000 00000000 0000042c 00000000 00000020
003db1e3 000abcf9 000004ce 000d74e3 000d6716 0
0000167 00000000 -------------------------------------------------

ip_dst_cache       18760  20020    192 1001 1001    1 :  252  126
arp_cache           1560   1560    128   52   52    1 :  252  126

Pretty damn hard. Could you please run following script?

---------------------------------------------
#!/bin/sh
echo "30" >/proc/sys/net/ipv4/neigh/default/gc_interval
echo "20" >/proc/sys/net/ipv4/neigh/default/gc_stale_time
echo "512" >proc/sys/net/ipv4/neigh/default/gc_thresh1
echo "2048" >/proc/sys/net/ipv4/neigh/default/gc_thresh2
echo "4096" >/proc/sys/net/ipv4/neigh/default/gc_thresh3
echo "20" >/proc/sys/net/ipv4/neigh/eth0/gc_stale_time
echo "20" >/proc/sys/net/ipv4/neigh/eth1/gc_stale_time
echo "20" >/proc/sys/net/ipv4/neigh/lo/gc_stale_time
ip route flush cache
---------------------------------------------

Best regards,
Roberto Nibali, ratz
--
echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc



<Prev in Thread] Current Thread [Next in Thread>