Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 03 Nov 2001 16:22:48 +0100
From:      Trond Davidsen <trond.davidsen@ii.uib.no>
To:        Archie Cobbs <archie@dellroad.org>
Cc:        freebsd-net@FreeBSD.ORG
Subject:   Re: Mpd with a large number, 200+ , of bundles
Message-ID:  <3BE40BC8.9060504@ii.uib.no>
References:  <200110301602.f9UG2gr07609@arch20m.dellroad.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Archie Cobbs wrote:

> 
> One problem with netgraph is that node and hook names can only be about 15
> characters.. so when you get to 100 bundles, the hook names start
> overflowing the buffers.
> 
> If you're only running one version of mpd, for example, you can
> try this patch to fix the '100 bundles' problem by shortening
> the node names:
> 

When I try to make 240 bundles, from the log, it seems mpd is makeing 
all the nodes ok, but when I try to establish a connection nothing 
happens, no respons, nothing in the log, and mpd is frozen and needs to 
be killed with kill -9.  And then it leaves 720 nodes behind which needs 
to be removed manually.

> 
> This is probably due to a fixed size buffer in the base netgraph
> code somewhere... it doesn't look like libnetgraph can generate
> an ENOBUFS on its own. Try running ngctl with one or more '-d' flags..
> 

vpn-gw3# ngctl -d -d -d
Available commands:
   config     get or set configuration of node at <path>
   connect    Connects hook <peerhook> of the node at <relpath> to <hook>
   debug      Get/set debugging verbosity level
   help       Show command summary or get more help on a specific command
   list       Show information about all nodes
   mkpeer     Create and connect a new node to the node at "path"
   msg        Send a netgraph control message to the node at "path"
   name       Assign name <name> to the node at <path>
   read       Read and execute commands from a file
   rmhook     Disconnect hook "hook" of the node at "path"
   show       Show information about the node at <path>
   shutdown   Shutdown the node at <path>
   status     Get human readable status information from the node at <path>
   types      Show information about all installed node types
   quit       Exit program
+ list
ngctl: SENDING MESSAGE:
ngctl: SOCKADDR: { fam=32 len=4 addr="." }
ngctl: NG_MESG :
ngctl:   vers   2
ngctl:   arglen 0
ngctl:   flags  0
ngctl:   token  1
ngctl:   cookie GENERIC (851672668)
ngctl:   cmd    9
ngctl:   args (0 bytes)
ngctl: sendto(.): No buffer space available
ngctl: send msg: No buffer space available
+

When I create 240 bundles, mpd creates 720 netgraph nodes.
Is there a limit on how many nodes the netgraph system can handle?
Where is the netgraph system defined?  i can find the modules under 
/usr/src/sys/modules/netgraph, but I can't find the 'netgraph base system'.

Trond


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




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