Mbuf Clusters on 4.8

Bosko Milekic bmilekic at technokratis.com
Wed Jun 25 18:54:44 PDT 2003


On Thu, Jun 26, 2003 at 03:03:20AM +0200, John B?ckstrand wrote:
> Ive been googling quite a bit now for problems with
> running out of mbuf
> clusters. Im basically sending a 30k datachunk down
> 1000-4000 connections,
> but 1000 is more than enough to quickly fill upp 8192
> mbuf clusters. I also
> tried setting maximum amount of mbuf clusters to 65536,
> but that only made
> the box hard-wire 86MB of 96MB RAM, making it just as
> unsuable as a dead
> machine.
> 
> Of course, when the machine runs out of mbuf clusters,
> it dies. I also found
> this with google:
> 
> "Finally, the fact that FreeBSD 3.x panics when it runs
> out of
> mbuf clusters is a well-known problem.  The solution is
> to not
> let it run out of mbuf clusters by configuring a
> sufficient
> number for them."
> 
> >From this it sounds as it is a problem that should be
> fixed, but it
> obviously isnt in 4.8. Is this behaviour now considered
> acceptable? And if
> so, doesnt this make FreeBSD extremely easy to kill
> using a simple
> DOS-attack? Is this "fixed" in any way on 5.1?
> 
> ---
> John B?ckstrand

  It's not panicking, it's running out of resources.  Whenever you have
  this sort of problem you need to provide more information, there is
  absolutely no way I can help you like this.  You need to, at the very
  minimum, give us 'netstat -m' output and make a serious attempt at
  figuring out what is consuming so many clusters.  You could be running
  out of clusters but you could also be running out of memory before you
  run out of clusters, in which case you should probably _not_ increase
  nmbclusters and instead fix the underlying problem instead (re-work
  your application).  In such a scenario, blindly bumping up nmbclusters
  can make the problem worse.  Even if you had 'unlimited' (or
  dynamically growing) nmbclusters, you'd _still_ have the same problem
  and, what's more, it could actually render your system even more
  unusable as the machine would not be able to allocate memory for
  other more important uses. 

--
Bosko Milekic  *  bmilekic at technokratis.com  *  bmilekic at FreeBSD.org
TECHNOkRATIS Consulting Services  *  http://www.technokratis.com/


More information about the freebsd-stable mailing list