Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Jan 2012 17:49:02 +0400
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Sami Halabi <sodynet1@gmail.com>
Cc:        freebsd-net@FreeBSD.org, Alexander Motin <mav@FreeBSD.org>
Subject:   Re: ng_mppc_decompress: too many (4094) packets dropped, disabling node
Message-ID:  <20120105134902.GP34721@glebius.int.ru>
In-Reply-To: <CAEW%2BogaXqHss41LCMCp5nXz3rBTpw4mEijy6h_XSgyCwcSBNUQ@mail.gmail.com>
References:  <20111227044754.GK8035@FreeBSD.org> <CAEW%2BogY_iHUb=n=G45d5U_r5XfD39YDwgNkowu1QN%2BeWL5K5Fw@mail.gmail.com> <20111227083503.GP8035@glebius.int.ru> <CAEW%2BogYHtvPFqMAM17_fHWzvKAiSqEOyQ3dtQRwmD6DJSHsrEA@mail.gmail.com> <20120105095855.GI34721@glebius.int.ru> <CAEW%2BogYLToV4dtW=Y-yQvY1C_YdbqQfEnr87F8dt%2BF57FxZgkw@mail.gmail.com> <20120105110116.GK34721@glebius.int.ru> <CAEW%2BogYQXRbWCwx41rwUMSoh5hDM6eAZcG=-BjzqZj6rBzWGRg@mail.gmail.com> <20120105113427.GL34721@glebius.int.ru> <CAEW%2BogaXqHss41LCMCp5nXz3rBTpw4mEijy6h_XSgyCwcSBNUQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jan 05, 2012 at 03:43:45PM +0200, Sami Halabi wrote:
S> Hmm..
S> 
S> Somthing strange, i did:
S> net.graph.recvspace=8388608
S> net.graph.maxdgram=8388608
S> 
S> 
S> and i suddenly got disconnections and logs like:
S> Jan  5 16:10:01 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> Jan  5 16:10:11 mpd2 mpd: PPTP: NgMkSockNode: No buffer space available
S> 
S> the mpd as follows:
S> 
S> Jan  5 16:10:01 mpd2 mpd: Incoming L2TP packet from 172.25.229.3 1701
S> Jan  5 16:10:01 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> Jan  5 16:10:01 mpd2 mpd: Incoming L2TP packet from 172.27.173.112 1701
S> Jan  5 16:10:01 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> Jan  5 16:10:03 mpd2 mpd: Incoming L2TP packet from 172.19.246.206 1701
S> Jan  5 16:10:03 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> Jan  5 16:10:06 mpd2 mpd: Incoming L2TP packet from 172.27.173.112 1701
S> Jan  5 16:10:06 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Accepting PPTP connection
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: OPEN event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: Open event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: state change Initial --> Starting
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: LayerStart
S> Jan  5 16:10:11 mpd2 mpd: [L-14] PPTP: attaching to peer's outgoing call
S> Jan  5 16:10:11 mpd2 mpd: PPTP: NgMkSockNode: No buffer space available
S> Jan  5 16:10:11 mpd2 mpd: [L-14] PPTP call cancelled in state CONNECTING
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: DOWN event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: Close event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: state change Starting --> Initial
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: LayerFinish
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: Down event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: SHUTDOWN event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: Shutdown
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Accepting PPTP connection
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: OPEN event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: Open event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: state change Initial --> Starting
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: LayerStart
S> Jan  5 16:10:11 mpd2 mpd: [L-14] PPTP: attaching to peer's outgoing call
S> Jan  5 16:10:11 mpd2 mpd: PPTP: NgMkSockNode: No buffer space available
S> Jan  5 16:10:11 mpd2 mpd: [L-14] PPTP call cancelled in state CONNECTING
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: DOWN event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: Close event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: state change Starting --> Initial
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: LayerFinish
S> Jan  5 16:10:11 mpd2 mpd: [L-14] LCP: Down event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: SHUTDOWN event
S> Jan  5 16:10:11 mpd2 mpd: [L-14] Link: Shutdown
S> Jan  5 16:10:16 mpd2 mpd: Incoming L2TP packet from 172.27.173.112 1701
S> Jan  5 16:10:16 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> Jan  5 16:10:21 mpd2 mpd: Incoming L2TP packet from 172.25.229.3 1701
S> Jan  5 16:10:21 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> Jan  5 16:10:23 mpd2 mpd: Incoming L2TP packet from 172.19.246.206 1701
S> Jan  5 16:10:23 mpd2 mpd: L2TP: ppp_l2tp_ctrl_create: No buffer space
S> available
S> 
S> 
S> Now i just returned to my original sysctl:
S> net.graph.recvspace=40960
S> net.graph.maxdgram=40960
S> 
S> and everything seems fine
S> 
S> any ideas?

mpd has many open sockets, and each socket allocates that much recvspace
and sendspace. Since there are a lot of them, it hits per-user resource
limits, I suppose.

We need to:

1) Change mpd to use one control socket with many hooks.
   This also requires improving ng_socket, to have a fast hook lookup
   method.

2) Implement SO_SNDBUF/SO_RCVBUF for AF_NETGRAPH socket, and utilize
   it in ngctl, so there would be no need to bump global tunables.

Eventually I may do this, but I need brave testers, since my mpd
installation is very small.

-- 
Totus tuus, Glebius.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120105134902.GP34721>