On Mon, 2008-04-14 at 09:33 +0900, Pyun YongHyeon wrote: > 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 > > > > Nice work! >
Congrats! Thank you for this. -- Coleman
signature.asc
Description: This is a digitally signed message part