Luigi Rizzo wrote:
> 
> > There's one downside though. You can get statistics from the bridge node on
> > packets and octects passed through the different parts of the bridge
> > setyup, but it's not IP based. Also using that bridging code there's no
> > bandwidth throttling or IPFW rule matching yet.
> >
> > Vitaly Belekhov wrote BW throttling and ipfw netgraph nodes for 3.X, and I
> > will be porting those to 5.X-CURRENT over the next few weeks.


The new ethernet node netgrpah interface (with 'upper' and 'lower')
may influence this.
also the ipfw he used is very old now.

> >
> > Using those you could get statistics really quickly by using libnetgraph
> > and querying the nodes yourself with some C code instead of shell/perl
> > scripting.
> 
> the real problem with any approach is that if you have very many
> flows, you have to fetch all the info every time you want to update
> your statistics. The ipfw implementation which is in the kernel
> now really does not help you there, because the stats are spread
> over lists and hash tables, and on top of this the data structure
> evolves dynamically as pkts come in, so you need to hold a lock
> while navigating on it.
> 
> This is why you do not want to download the stats 10-20 times per
> second, at least with this architecture.
> 
> I do not have a good solution in mind other than maybe
> change the data structures so that the flow descriptors
> (at least the part with the flow identifier and the stats)
> are in a contiguous chunk of memory whose only variable
> part is the size. This way you can either mmap the block,
> or copyout() it without having to get a lock.
> 
>         cheers
>         luigi
> ----------------------------------+-----------------------------------------
>  Luigi RIZZO, [EMAIL PROTECTED]  . ACIRI/ICSI (on leave from Univ. di Pisa)
>  http://www.iet.unipi.it/~luigi/  . 1947 Center St, Berkeley CA 94704
>  Phone: (510) 666 2927
> ----------------------------------+-----------------------------------------
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-net" in the body of the message

-- 
      __--_|\  Julian Elischer
     /       \ [EMAIL PROTECTED]
    (   OZ    ) World tour 2000-2001
---> X_.---._/  
            v


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message

Reply via email to