Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Mar 2006 10:44:05 +0300
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Andre Oppermann <andre@FreeBSD.org>
Cc:        cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/net route.h rtsock.c
Message-ID:  <20060316074405.GL1102@FreeBSD.org>
In-Reply-To: <441883DD.B0B5A18C@freebsd.org>
References:  <200603151939.k2FJd91g080489@repoman.freebsd.org> <20060315204402.GK1102@FreeBSD.org> <441883DD.B0B5A18C@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Mar 15, 2006 at 10:15:09PM +0100, Andre Oppermann wrote:
A> > A>   These changes faciliate running of multiple cooperating routing
A> > A>   daemons at the same time without causing undesired interference.
A> > A>   Open[BGP|OSPF]D make use of these features to have IGP routes
A> > A>   override EGP ones.
A> > 
A> > Please explain how is this done. Does radix allow presence of two
A> > identical prefixes in tree, and we distinguish them by rt->rt_flags?
A> 
A> No.  If you've got the same prefix in BGP and OSPF with different next
A> hops then the OSPF one should win.  Normally the two daemons would get
A> into a fight about this and indefinatly try to replace each others
A> route again.  This change makes it possible for two cooperating daemons
A> to avoid this.  With the change to flags OSPFD may take over an existing
A> route by chaning the PROTO flag to itself.  BGPD then knows it got an
A> override.  Before OSPFD had to delete the route and re-add it with its
A> own parameters.  However upon the delete message BGPD would try to add
A> it again.  When OSPFD removes a route that was identical to a BGP one
A> BGPD will re-add its own version of it.

So, we have a small window when the route is absent in kernel, right?

-- 
Totus tuus, Glebius.
GLEBIUS-RIPN GLEB-RIPE



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