From owner-freebsd-net@freebsd.org Wed Dec 30 09:44:23 2020 Return-Path: Delivered-To: freebsd-net@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 99D184BCBCB for ; Wed, 30 Dec 2020 09:44:23 +0000 (UTC) (envelope-from vit@otcnet.ru) Received: from mail.otcnet.ru (mail.otcnet.ru [194.190.78.3]) by mx1.freebsd.org (Postfix) with ESMTP id 4D5RFf4L7sz4rhh for ; Wed, 30 Dec 2020 09:44:22 +0000 (UTC) (envelope-from vit@otcnet.ru) Received: from MacBook-Gamov.rinet.ru (unknown [195.91.218.161]) by mail.otcnet.ru (Postfix) with ESMTPSA id 5DD3AE0C7E for ; Wed, 30 Dec 2020 12:44:16 +0300 (MSK) From: Victor Gamov Subject: Re: 'dropped due to full socket buffers' by SNMP To: freebsd-net@freebsd.org References: <388da9a7-7b89-89b2-54eb-17d0e818c924@otcnet.ru> <4e41c1d2-19bc-0345-0b03-526e4cb785c7@otcnet.ru> Organization: OstankinoTelecom Message-ID: Date: Wed, 30 Dec 2020 12:44:16 +0300 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4D5RFf4L7sz4rhh X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of vit@otcnet.ru designates 194.190.78.3 as permitted sender) smtp.mailfrom=vit@otcnet.ru X-Spamd-Result: default: False [-3.19 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; RBL_DBL_DONT_QUERY_IPS(0.00)[194.190.78.3:from]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_ALLOW(-0.20)[+a:mail.otcnet.ru]; MIME_GOOD(-0.10)[text/plain]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-net@freebsd.org]; RCPT_COUNT_ONE(0.00)[1]; HAS_ORG_HEADER(0.00)[]; SPAMHAUS_ZRD(0.00)[194.190.78.3:from:127.0.2.255]; DMARC_NA(0.00)[otcnet.ru]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.99)[-0.989]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2]; ASN(0.00)[asn:50822, ipnet:194.190.78.0/24, country:RU]; MAILMAN_DEST(0.00)[freebsd-net] X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Dec 2020 09:44:23 -0000 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