From owner-freebsd-net@FreeBSD.ORG Thu Sep 9 17:33:16 2004 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5402516A4CE for ; Thu, 9 Sep 2004 17:33:16 +0000 (GMT) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id 735F443D45 for ; Thu, 9 Sep 2004 17:33:15 +0000 (GMT) (envelope-from andre@freebsd.org) Received: (qmail 55638 invoked from network); 9 Sep 2004 17:29:33 -0000 Received: from unknown (HELO freebsd.org) ([62.48.0.53]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 9 Sep 2004 17:29:33 -0000 Message-ID: <414093DE.A6DC6E67@freebsd.org> Date: Thu, 09 Sep 2004 19:33:18 +0200 From: Andre Oppermann X-Mailer: Mozilla 4.8 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: Gleb Smirnoff References: <20040905121111.GA78276@cell.sick.ru> <4140834C.3000306@freebsd.org> <20040909171018.GA11540@cell.sick.ru> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: net@freebsd.org Subject: Re: [TEST/REVIEW] Netflow implementation X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Sep 2004 17:33:16 -0000 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