Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Jan 2021 14:11:01 +0700
From:      Eugene Grosbein <eugen@grosbein.net>
To:        Victor Gamov <vit@otcnet.ru>, freebsd-net@freebsd.org
Subject:   Re: 'dropped due to full socket buffers' by SNMP
Message-ID:  <fdc9aecc-3030-33ea-b8f7-fe2fb288c790@grosbein.net>
In-Reply-To: <b8bb0e4a-4b2f-1ed7-fb1c-c0f2ea3fc6ba@otcnet.ru>
References:  <388da9a7-7b89-89b2-54eb-17d0e818c924@otcnet.ru> <4e41c1d2-19bc-0345-0b03-526e4cb785c7@otcnet.ru> <b279e676-c789-2978-98a0-b8a4b164a111@grosbein.net> <a69d872a-f21e-de66-7677-58beccb0f023@otcnet.ru> <6c780827-e764-8053-356b-a921e0892c15@grosbein.net> <fef04bda-6aa0-4a80-8999-867b9f37d766@otcnet.ru> <7e51a6be-aea1-51c6-c0bd-10d00c19d5d3@grosbein.net> <888c8e91-c8f2-ad4b-9fcf-64c09432f2d5@otcnet.ru> <427b5ef6-9558-22ad-6088-c852bf234d13@otcnet.ru> <706bf341-01dd-f9f9-a5a8-afb8c34d5572@grosbein.net> <226279d6-7579-9441-9854-f238057abeb6@otcnet.ru> <b4415a8c-773c-a99f-0eb5-1198ed0399b6@grosbein.net> <fb5069f6-764a-f264-33cd-0798d1f25346@otcnet.ru> <8c80810d-b244-4bbc-d14c-0ca37348b5a5@grosbein.net> <b8bb0e4a-4b2f-1ed7-fb1c-c0f2ea3fc6ba@otcnet.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
22.01.2021 20:26, Victor Gamov wrote:

>>>> What FreeBSD version do you use currently? Do you use IPv6 for UDP or
>>>> IPv4 only?
>>>
>>>
>>> FreeBSD 12.2-STABLE r366543 GENERIC  amd64
>>>
>>> UDP-4 only
>>
>> In case of IPv4 UDP the counter "dropped due to full socket buffers"
>> is increased for incoming packets only. Therefore, the problem is in a code
>> processing incoming stream(s): either it locks for long time on something,
>> or it just has no enough raw CPU horsepower to deal with incoming stream.
>>
>> Look at "top -SHPI" CPU counters, if your CPU cores are loaded evenly;
> 
> it's CPU E3-1270 v6 @ 3.80GHz with WCPU about 60% idle + 9% kernel{if_io_tqg_X) + 5% intr{swi1: netisr X).  And many processes about 1% WCPU for multicast receive/resend (one for every multicast)
> 
> Also "netstat -na -p udp" shows me zero or very small Recv-Q
> 
>> if some of cores became overloaded sometimes. You should also draw per-cpu load graphs.
>> (f.e. sysctl kern.cp_times)
> 
> I have SNMP stats and it show me about 40% load

There is no standard MIBs to show per-core load. You get only an average via standard SNMP MIBs
and average can be misleading and hide 100% load of some cores.

If you really have no overloaded cores, then this should be locking problem that prevents processing code
to do its job timely.






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?fdc9aecc-3030-33ea-b8f7-fe2fb288c790>