Date: Sun, 13 Apr 2008 15:34:07 +0100 From: Rui Paulo <rpaulo@FreeBSD.org> To: Qing Li <qingli@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/conf files options src/sys/net radix.c radix.h route.c route.h rtsock.c src/sys/netinet in_proto.c ip_output.c src/sys/netinet6 in6_proto.c in6_src.c nd6_nbr.c Message-ID: <20080413143407.GA973@fnop.net> In-Reply-To: <200804130545.m3D5jEtd081771@repoman.freebsd.org> References: <200804130545.m3D5jEtd081771@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Apr 13, 2008 at 05:45:14AM +0000, Qing Li wrote: > qingli 2008-04-13 05:45:14 UTC > > FreeBSD src repository > > Modified files: > sys/conf files options > sys/net radix.c radix.h route.c route.h rtsock.c > sys/netinet in_proto.c ip_output.c > sys/netinet6 in6_proto.c in6_src.c nd6_nbr.c > Log: > This patch provides the back end support for equal-cost multi-path > (ECMP) for both IPv4 and IPv6. Previously, multipath route insertion > is disallowed. For example, > > route add -net 192.103.54.0/24 10.9.44.1 > route add -net 192.103.54.0/24 10.9.44.2 > > The second route insertion will trigger an error message of > "add net 192.103.54.0/24: gateway 10.2.5.2: route already in table" > > Multiple default routes can also be inserted. Here is the netstat > output: > > default 10.2.5.1 UGS 0 3074 bge0 => > default 10.2.5.2 UGS 0 0 bge0 > > When multipath routes exist, the "route delete" command requires > a specific gateway to be specified or else an error message would > be displayed. For example, > > route delete default > > would fail and trigger the following error message: > > "route: writing to routing socket: No such process" > "delete net default: not in table" > > On the other hand, > > route delete default 10.2.5.2 > > would be successful: "delete net default: gateway 10.2.5.2" > > One does not have to specify a gateway if there is only a single > route for a particular destination. > > I need to perform more testings on address aliases and multiple > interfaces that have the same IP prefixes. This patch as it > stands today is not yet ready for prime time. Therefore, the ECMP > code fragments are fully guarded by the RADIX_MPATH macro. > Include the "options RADIX_MPATH" in the kernel configuration > to enable this feature. > > Reviewed by: robert, sam, gnn, julian, kmacy > > Revision Changes Path > 1.1289 +1 -0 src/sys/conf/files > 1.625 +1 -0 src/sys/conf/options > 1.39 +22 -0 src/sys/net/radix.c > 1.27 +1 -0 src/sys/net/radix.h > 1.127 +121 -1 src/sys/net/route.c > 1.69 +3 -0 src/sys/net/route.h > 1.145 +20 -0 src/sys/net/rtsock.c > 1.88 +8 -0 src/sys/netinet/in_proto.c > 1.280 +9 -0 src/sys/netinet/ip_output.c > 1.49 +8 -0 src/sys/netinet6/in6_proto.c > 1.50 +9 -0 src/sys/netinet6/in6_src.c > 1.50 +14 -0 src/sys/netinet6/nd6_nbr.c Great work, thanks! -- Rui Paulo
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080413143407.GA973>