Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 09 Sep 2004 19:33:18 +0200
From:      Andre Oppermann <andre@freebsd.org>
To:        Gleb Smirnoff <glebius@freebsd.org>
Cc:        net@freebsd.org
Subject:   Re: [TEST/REVIEW] Netflow implementation
Message-ID:  <414093DE.A6DC6E67@freebsd.org>
References:  <20040905121111.GA78276@cell.sick.ru> <4140834C.3000306@freebsd.org> <20040909171018.GA11540@cell.sick.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Gleb Smirnoff wrote:
> A> In the README you are talking Netflow 5 and AS path's.  I don't undestand
> A> why
> A> you want to pass the AS path into the rtentry structure?  Wouldn't the
> A> right-most AS sufficise?
> 
> AFAIK, Cisco's netflow can be configured in two modes: "peer-as", when a
> left-most is put into exports, and "orig-as" when a right-most is put.
> "orig-as" mode is default one, since most interesting statistics
> can be taken from it. However, "peer-as" is used for billing purposes,
> when we need to know which peer was transit for this traffic.

Ok, makes sense now.

> A> A couple of people from OpenBSD and us are thinking of updating and
> A> extending
> A> the routing code and rtsocket framework for things like this most
> A> importantly
> A> the interaction between different routing daemons (EGP & IGP).  However
> A> this is
> A> a more long-term thing and more targeted at FreeBSD 6.0.
> 
> I'm working on a patch, which will bring AS path support. AS paths are going
> to be stored separately from rtentries. The latter will have a reference to
> AS paths. Each AS path is going to have a reference counter in self.

Ugh, I don't like that at all.  The AS path is of variable length and
the kernel should not know anything about it.

The only thing the kernel *may* know about is the right- and leftmost AS.
It may be more efficient to send the netflow data through a small helper
application that just fills in the two AS number based on a mrt dump.

> This feature is going to be utilized not only for Netflow, but also
> in ipfw/dummynet. I think it would be very nice to shape bandwidth or
> make policy routing decisions using AS path regexes in ipfw rules.

Ugh.  No, better have a way to 'tag' routes and make your decision based
on those tags.  Keep all the policy definition out of the kernel table.
Additionally you have the tables support in ipfw already.  It's far easier
to extend Quagga/Zebra/etc to properly feed that table than to mangle the
whole kernel for those purposes.

> P.S. And we should keep an eye on XORP. It is young now, but is going to
> be a BSD-licensed alternative to zebra.

Have a look at OpenBGPd in OpenBSD.  Does a lot more, and is useable for
production networks.

-- 
Andre



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