about ecmp
Alexander V. Chernikov
melifaro at FreeBSD.org
Fri Jan 10 09:53:23 CET 2014
On 10.01.2014 08:14, 曾小小 wrote:
> Hello,
>
> I want to use the ospf protocol ecmp function, load balancing local to
> remote devices.
>
> Interface uses ipip tunnel connected.
>
> the local use FreeBSD 10.0-BETA1 and BIRD 1.3.11, using fib support
> multiple routing tables, gif interface is configured for parallel
> tunnels by setting the sysctl variable net.link.gif.parallel_tunnels to
Hello. Currently FreeBSD ECMP is unstable and turned off in GENERIC
(options RADIX_MPATH). Additionally, AFAIR bird does not support
multipath on (Free)BSD.
I'm working to improve multipath in FreeBSD (I hope necessary changes
will get in 10-STABLE in a month). After that I'll take a look on bird
and probably update FreeBSD port to enable ecmp.
> 1.
>
> the remote use Ubuntu 13.04 and Quagga (version 0.99.22).
>
> Configured as follows:
>
> protocol ospf ospf_gif {
> table tab_ospf_gif;
> router id 192.168.148.17;
> ecmp yes ;
> export all;
> import all;
> preference 200;
> area 0.0.0.10 {
> interface "gif0" {
> ecmp weight 3;
> hello 10;
> retransmit 5;
> cost 10;
> transmit delay 1;
> dead count 4;
> wait 40;
> type pointopoint;
> priority 0;
> authentication cryptographic;
> password "abc";
> };
>
> interface "gif1" {
> hello 10;
> retransmit 5;
> cost 10;
> transmit delay 1;
> dead count 4;
> wait 40;
> type pointopoint;
> priority 0;
> authentication cryptographic;
> password "abc";
> };
>
> };
> }
>
> protocol pipe pipe_gif
> {
> table tab_ospf_gif;
> peer table master;
>
> import none;
> export all;
> }
>
> protocol kernel kernel_gif
> {
> debug all;
> table tab_ospf_gif;
> export all;
> kernel table 10;
> scan time 15;
> }
>
> In the test if configured ecmp function, the local device using bird
> view master table, tab_ospf_gif two tables are learning two equal cost
> routes to the remote device (see below).
>
> bird> show route table master
> 1007-0.0.0.0 / 0 multipath [ospf_gif 18:18] * E2 (200/10/10) [xxxx]
> via 192.168.170.41 on gif0 weight 3
> via 192.168.170.149 on gif1 weight 1
>
> bird> show route table tab_ospf_gif
> 1007-0.0.0.0 / 0 multipath [ospf_gif 18:18] * E2 (200/10/10) [xxxx]
> via 192.168.170.41 on gif0 weight 3
> via 192.168.170.149 on gif1 weight 1
>
> But I can not see the route to the fib in freebsd. Why? ?
>
> I look protocols, found that the route was refused entry, as follows:
>
> 1002-kernel_gif Kernel tab_ospf_gif up 18:42
> 1006- Preference: 10
> Input filter: ACCEPT
> Output filter: ACCEPT
> Routes: 0 imported, 0 exported, 0 preferred
> Route change stats: received rejected filtered ignored
> accepted
> Import updates: 0 0 0 0
> 0
> Import withdraws: 0 0 --- 0
> 0
> Export updates: 3 3 0 ---
> 0
> Export withdraws: 0 --- --- ---
> 0
>
>
> Use debug discovery and found the following:
>
> 09-01-2014 23:58:45 <TRACE> kernel_gif <rejected by protocol 0.0.0.0 /
> 0 multipath
> 09-01-2014 23:58:45 <TRACE> kernel_gif <rejected by protocol
> 192.168.170.40/30 <http://192.168.170.40/30> multipath
> 09-01-2014 23:58:45 <TRACE> kernel_gif <rejected by protocol
> 192.168.170.148/30 <http://192.168.170.148/30> multipath
>
> If I do not use ecmp function, fib table freebsd system can view the
> routing entries, but only a single path.
>
> thank you very much.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20140110/fffc5ffc/attachment-0001.html>
More information about the Bird-users
mailing list