Date: Wed, 30 Dec 2020 12:44:16 +0300 From: Victor Gamov <vit@otcnet.ru> To: freebsd-net@freebsd.org Subject: Re: 'dropped due to full socket buffers' by SNMP Message-ID: <a69d872a-f21e-de66-7677-58beccb0f023@otcnet.ru> In-Reply-To: <b279e676-c789-2978-98a0-b8a4b164a111@grosbein.net> References: <388da9a7-7b89-89b2-54eb-17d0e818c924@otcnet.ru> <4e41c1d2-19bc-0345-0b03-526e4cb785c7@otcnet.ru> <b279e676-c789-2978-98a0-b8a4b164a111@grosbein.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi Eugene Thank for your reply On 30/12/2020 02:13, Eugene Grosbein wrote: > 29.12.2020 23:36, Victor Gamov wrote: > > Please do not top-post. > >> Thanks. >> >> >> On 30/11/2020 18:33, Victor Gamov wrote: >>> Hi All >>> >>> Can somebody help me to get UDP 'dropped due to full socket buffers' by SNMP? Is it possible? Now I'm getting it with >>> `netstat -n -p udp -f inet -s` >>> but SNMP will be more useful for remote monitoring. >>> >> And one more question about 'dropped due to full socket buffers': how to avoid it? Which params must be tuned? > > Both problems generally mean that outgoing link for that UDP packets is congested, > so socket buffers start to fill until they are full. > > What is "media" for that UDP data - some syntetic tunnel or plain ethernet link or something else? It's 10G Intel card (via ix driver) attached to D-Link switch This Host-A got many multicast UDP streams via many VLANs and resend streams to one VLAN-750 (mainly). Every multicast serviced by its own process. Interface utilization about 1Gbit/s for receive and 800Mbit/s for transmit. > You may find useful this old thread dealing with similar problem: > http://freebsd.1045724.x6.nabble.com/SNMP-No-Bufferspace-td6333081.html Thanks for this link. 'vmstat -i | grep ix0' output followed: ===== irq264: ix0:rxq0 90527644527 21675 irq265: ix0:rxq1 95793018351 22936 irq266: ix0:rxq2 96075009541 23004 irq267: ix0:rxq3 93444280619 22374 irq268: ix0:aq 3 0 ===== 'netstat -idnh -W' show no errs/drops 'netstat -m' ===== 12525/7470/19995 mbufs in use (current/cache/total) 12484/4766/17250/1005602 mbuf clusters in use (current/cache/total/max) 158/1866 mbuf+clusters out of packet secondary zone in use (current/cache) 0/116/116/502800 4k (page size) jumbo clusters in use (current/cache/total/max) 0/0/0/148978 9k jumbo clusters in use (current/cache/total/max) 0/0/0/83800 16k jumbo clusters in use (current/cache/total/max) 28099K/11863K/39962K bytes allocated to network (current/cache/total) 0/0/0 requests for mbufs denied (mbufs/clusters/mbuf+clusters) 0/0/0 requests for mbufs delayed (mbufs/clusters/mbuf+clusters) 0/0/0 requests for jumbo clusters delayed (4k/9k/16k) 0/0/0 requests for jumbo clusters denied (4k/9k/16k) 0 sendfile syscalls 0 sendfile syscalls completed without I/O request 0 requests for I/O initiated by sendfile 0 pages read by sendfile as part of a request 0 pages were valid at time of a sendfile request 0 pages were valid and substituted to bogus page 0 pages were requested for read ahead by applications 0 pages were read ahead by sendfile 0 times sendfile encountered an already busy page 0 requests for sfbufs denied 0 requests for sfbufs delayed ====== Currently I'm thinking about ethernet flow control: Host-B connected to VLAN-750 on the third switch has 1G link (via igb driver) and both Host-A and Host-B has fc=3. So when Host-B get microburst it can send PAUSE and Host-A start to fill queue. But FC disabled for all switches and I'm not sure about PAUSE can be propagated from Host-A to Host-B -- CU, Victor Gamov
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?a69d872a-f21e-de66-7677-58beccb0f023>