From owner-cvs-all@FreeBSD.ORG Sun Apr 13 14:34:47 2008 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BDBB1106566C for ; Sun, 13 Apr 2008 14:34:47 +0000 (UTC) (envelope-from rpaulo@gmail.com) Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.156]) by mx1.freebsd.org (Postfix) with ESMTP id 34FFF8FC2F for ; Sun, 13 Apr 2008 14:34:46 +0000 (UTC) (envelope-from rpaulo@gmail.com) Received: by fg-out-1718.google.com with SMTP id 16so1328533fgg.35 for ; Sun, 13 Apr 2008 07:34:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject:message-id:references:mime-version:content-type:content-disposition:in-reply-to:user-agent:sender; bh=GA3/RlIuIOKKbw8Mr1UzMTx1HZG/OwtTDSux/aahd94=; b=Sy9v/IpSWPCj0ZI5oN8yIr99OHqJrctwomiTf3TYSqR8Ot5tCOJe91nsECJ3El0yJRx9UVI/KBH0RPNHlPAbMVzCQKR8fnaVnpEZLCuJRnhEfY2Oc2icaFXBPIbpGshTCJG21XEfsQ7UQ1Kswrb+FoDDOF6Io6P/DSiYRpTFXtQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:cc:subject:message-id:references:mime-version:content-type:content-disposition:in-reply-to:user-agent:sender; b=FJ12WgUxv8rv4IxE5/00KnojRtkJdKcc/NRJI1t5vQ6qyDyLZ5y0ubC61D+R+eUrRk5DbbcI0FlSe140E1Fmrg/sJMniv1i4iGCypjLGifigwRY81i6Te4//F2ZDAuU8LP0ueRV/sbSQ8ElATIen/S2OLjvpNsj1SurvGlbxrVk= Received: by 10.86.50.8 with SMTP id x8mr11001212fgx.25.1208097282829; Sun, 13 Apr 2008 07:34:42 -0700 (PDT) Received: from fnop.net ( [83.144.140.164]) by mx.google.com with ESMTPS id b30sm7842230ika.8.2008.04.13.07.34.41 (version=SSLv3 cipher=OTHER); Sun, 13 Apr 2008 07:34:42 -0700 (PDT) Date: Sun, 13 Apr 2008 15:34:07 +0100 From: Rui Paulo To: Qing Li Message-ID: <20080413143407.GA973@fnop.net> References: <200804130545.m3D5jEtd081771@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200804130545.m3D5jEtd081771@repoman.freebsd.org> User-Agent: Mutt/1.5.17 (2007-11-01) Sender: Rui Paulo 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 X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Apr 2008 14:34:47 -0000 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