Discussion:
[j-nsp] BGP and OSPF ECMP
Marlon Duksa
2008-07-14 22:22:13 UTC
Permalink
Does anyone know how to enable ecmp in Junos (I'm on M320 with Junos 9.0)?

I have a vrf with BGP configured for multipath. In the forwarding table I
see only one path installed even though I have two equal cost physical
links to the NH.
My IGP is OSPF and in the routing table OSPF is showing two paths (only one
active >) and in the fwd table only one path is selected. How do I force
Junos to select both links.

Similar with LDP which is used for the transport (tunnel) in this VPN
environment.

So it looks to me that multipath in BGP is not taking effect because
underlying protocols (OSPF and LDP) is not utilizing both links??
Thanks,
Marlon
Harry Reynolds
2008-07-14 23:17:55 UTC
Permalink
Do you have a per-packet (really per flow) LB policy applied to the
forwarding table?

This is needed to install two or more forwarding paths in the pfe. BGP
multipath is a control plane tie breaker, but by default only one of the
winners is installed as active in the FT.

HTHs


[edit]
regress at asahi# show policy-options
policy-statement lb {
then {
load-balance per-packet;
}
}

[edit]
regress at asahi# show routing-options forwarding-table
traceoptions {
file forwarding_table;
flag route detail;
}
export lb;
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Marlon Duksa
Sent: Monday, July 14, 2008 3:22 PM
To: juniper-nsp at puck.nether.net
Subject: [j-nsp] BGP and OSPF ECMP
Does anyone know how to enable ecmp in Junos (I'm on M320
with Junos 9.0)?
I have a vrf with BGP configured for multipath. In the
forwarding table I see only one path installed even though I
have two equal cost physical links to the NH.
My IGP is OSPF and in the routing table OSPF is showing two
paths (only one active >) and in the fwd table only one path
is selected. How do I force Junos to select both links.
Similar with LDP which is used for the transport (tunnel) in
this VPN environment.
So it looks to me that multipath in BGP is not taking effect
because underlying protocols (OSPF and LDP) is not utilizing
both links??
Thanks,
Marlon
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
Boyd, Benjamin R
2008-07-15 13:43:31 UTC
Permalink
You can further control the flow with:

[edit forwarding-options hash-key]

family inet {
layer-3;
layer-4;
}
family mpls {
label-1;
label-2;
}

If you're load balancing over a decent amount of hops I wouldn't hash
both layer-3/layer-4 and label-1/label-2 on every router because then
your per-flow becomes quite segregated and you might find issues where
your load balancing on many routers will break the seemingly load
balancing of another router since the hashing algorithm will produce the
same result on each router.

-Ben

-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Harry Reynolds
Sent: Monday, July 14, 2008 6:18 PM
To: Marlon Duksa; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP

Do you have a per-packet (really per flow) LB policy applied to the
forwarding table?

This is needed to install two or more forwarding paths in the pfe. BGP
multipath is a control plane tie breaker, but by default only one of the
winners is installed as active in the FT.

HTHs


[edit]
regress at asahi# show policy-options
policy-statement lb {
then {
load-balance per-packet;
}
}

[edit]
regress at asahi# show routing-options forwarding-table traceoptions {
file forwarding_table;
flag route detail;
}
export lb;
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Marlon Duksa
Sent: Monday, July 14, 2008 3:22 PM
To: juniper-nsp at puck.nether.net
Subject: [j-nsp] BGP and OSPF ECMP
Does anyone know how to enable ecmp in Junos (I'm on M320
with Junos 9.0)?
I have a vrf with BGP configured for multipath. In the
forwarding table I see only one path installed even though I
have two equal cost physical links to the NH.
My IGP is OSPF and in the routing table OSPF is showing two
paths (only one active >) and in the fwd table only one path
is selected. How do I force Junos to select both links.
Similar with LDP which is used for the transport (tunnel) in
this VPN environment.
So it looks to me that multipath in BGP is not taking effect
because underlying protocols (OSPF and LDP) is not utilizing
both links??
Thanks,
Marlon
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp



***************************************************************************************

The information contained in this message, including attachments, may contain
privileged or confidential information that is intended to be delivered only to the
person identified above. If you are not the intended recipient, or the person
responsible for delivering this message to the intended recipient, Windstream requests
that you immediately notify the sender and asks that you do not read the message or its
attachments, and that you delete them without copying or sending them to anyone else.
Marlon Duksa
2008-07-17 20:56:52 UTC
Permalink
I tried this on MX960 and it seams that load balancing is on by default. How
do I turn load balancing off?
In the RT I can see both next hops:
2.2.2.2/32 *[OSPF/10] 02:21:29, metric 1
to 10.0.2.2 via ge-8/0/5.0
to 10.0.3.2 via ge-5/1/0.0
In the FT I can see only one path:
2.2.2.2/32 user 1 10.0.3.2 ucst 572 5 ge-5/1/0.0

But when I actually send traffic and run 'monitor interface traffic', I see
that traffic is going out over both links.
This 2.2.2.2 next hop is actually a PE router in VPN.

Is load balancing on by default on MX? I didn't configure anything special
to turn it on.

On Tue, Jul 15, 2008 at 6:43 AM, Boyd, Benjamin R <
[edit forwarding-options hash-key]
family inet {
layer-3;
layer-4;
}
family mpls {
label-1;
label-2;
}
If you're load balancing over a decent amount of hops I wouldn't hash
both layer-3/layer-4 and label-1/label-2 on every router because then
your per-flow becomes quite segregated and you might find issues where
your load balancing on many routers will break the seemingly load
balancing of another router since the hashing algorithm will produce the
same result on each router.
-Ben
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Harry Reynolds
Sent: Monday, July 14, 2008 6:18 PM
To: Marlon Duksa; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
Do you have a per-packet (really per flow) LB policy applied to the
forwarding table?
This is needed to install two or more forwarding paths in the pfe. BGP
multipath is a control plane tie breaker, but by default only one of the
winners is installed as active in the FT.
HTHs
[edit]
regress at asahi# show policy-options
policy-statement lb {
then {
load-balance per-packet;
}
}
[edit]
regress at asahi# show routing-options forwarding-table traceoptions {
file forwarding_table;
flag route detail;
}
export lb;
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Marlon Duksa
Sent: Monday, July 14, 2008 3:22 PM
To: juniper-nsp at puck.nether.net
Subject: [j-nsp] BGP and OSPF ECMP
Does anyone know how to enable ecmp in Junos (I'm on M320
with Junos 9.0)?
I have a vrf with BGP configured for multipath. In the
forwarding table I see only one path installed even though I
have two equal cost physical links to the NH.
My IGP is OSPF and in the routing table OSPF is showing two
paths (only one active >) and in the fwd table only one path
is selected. How do I force Junos to select both links.
Similar with LDP which is used for the transport (tunnel) in
this VPN environment.
So it looks to me that multipath in BGP is not taking effect
because underlying protocols (OSPF and LDP) is not utilizing
both links??
Thanks,
Marlon
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
***************************************************************************************
The information contained in this message, including attachments, may contain
privileged or confidential information that is intended to be delivered only to the
person identified above. If you are not the intended recipient, or the person
responsible for delivering this message to the intended recipient, Windstream requests
that you immediately notify the sender and asks that you do not read the message or its
attachments, and that you delete them without copying or sending them to anyone else.
Harry Reynolds
2008-07-18 00:24:16 UTC
Permalink
Hmm. Normally for LB we expect to see a ulst next hop, which in turn contains two or more ucst NHs. The FT display indicates that a single NH is installed for that prefix.

Can you describe the nature of the test traffic? If its all one flow I'd expect all to take the same NH even when LB is in effect. AFAIK, MX behavior is no different here.



Regards
-----Original Message-----
From: Marlon Duksa [mailto:mduksa at gmail.com]
Sent: Thursday, July 17, 2008 1:57 PM
To: Harry Reynolds; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
I tried this on MX960 and it seams that load balancing is on
by default. How do I turn load balancing off?
2.2.2.2/32 *[OSPF/10] 02:21:29, metric 1
to 10.0.2.2 via ge-8/0/5.0
to 10.0.3.2 via ge-5/1/0.0
2.2.2.2/32 user 1 10.0.3.2 ucst 572
5 ge-5/1/0.0
But when I actually send traffic and run 'monitor interface
traffic', I see that traffic is going out over both links.
This 2.2.2.2 next hop is actually a PE router in VPN.
Is load balancing on by default on MX? I didn't configure
anything special to turn it on.
On Tue, Jul 15, 2008 at 6:43 AM, Boyd, Benjamin R
[edit forwarding-options hash-key]
family inet {
layer-3;
layer-4;
}
family mpls {
label-1;
label-2;
}
If you're load balancing over a decent amount of hops I
wouldn't hash
both layer-3/layer-4 and label-1/label-2 on every
router because then
your per-flow becomes quite segregated and you might
find issues where
your load balancing on many routers will break the
seemingly load
balancing of another router since the hashing algorithm
will produce the
same result on each router.
-Ben
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf
Of Harry Reynolds
Sent: Monday, July 14, 2008 6:18 PM
To: Marlon Duksa; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
Do you have a per-packet (really per flow) LB policy
applied to the
forwarding table?
This is needed to install two or more forwarding paths
in the pfe. BGP
multipath is a control plane tie breaker, but by
default only one of the
winners is installed as active in the FT.
HTHs
[edit]
regress at asahi# show policy-options
policy-statement lb {
then {
load-balance per-packet;
}
}
[edit]
regress at asahi# show routing-options forwarding-table
traceoptions {
file forwarding_table;
flag route detail;
}
export lb;
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On
Behalf Of Marlon Duksa
Sent: Monday, July 14, 2008 3:22 PM
To: juniper-nsp at puck.nether.net
Subject: [j-nsp] BGP and OSPF ECMP
Does anyone know how to enable ecmp in Junos (I'm on M320
with Junos 9.0)?
I have a vrf with BGP configured for multipath. In the
forwarding table I see only one path installed even though I
have two equal cost physical links to the NH.
My IGP is OSPF and in the routing table OSPF is showing two
paths (only one active >) and in the fwd table only one path
is selected. How do I force Junos to select both links.
Similar with LDP which is used for the transport (tunnel) in
this VPN environment.
So it looks to me that multipath in BGP is not taking effect
because underlying protocols (OSPF and LDP) is not utilizing
both links??
Thanks,
Marlon
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
**************************************************************
*************************
The information contained in this message, including
attachments, may contain
privileged or confidential information that is intended
to be delivered only to the
person identified above. If you are not the intended
recipient, or the person
responsible for delivering this message to the intended
recipient, Windstream requests
that you immediately notify the sender and asks that
you do not read the message or its
attachments, and that you delete them without copying
or sending them to anyone else.
Marlon Duksa
2008-07-18 18:43:14 UTC
Permalink
I'm sending traffic to 50K IP destinations. All this is in VPN (2547). So I
should have 50K flows if destination IP is taken into account during
hashing. Please keep in mind that this IP is encapsulated in two MPLS
headers as the traffic is going through MPLS tunnel (LDP based) and then the
second label is the vrf label. The next hop (PE) router is advertised
through OSPF.
Thanks,
Marlon
Post by Harry Reynolds
Hmm. Normally for LB we expect to see a ulst next hop, which in turn
contains two or more ucst NHs. The FT display indicates that a single NH is
installed for that prefix.
Can you describe the nature of the test traffic? If its all one flow I'd
expect all to take the same NH even when LB is in effect. AFAIK, MX behavior
is no different here.
Regards
-----Original Message-----
From: Marlon Duksa [mailto:mduksa at gmail.com]
Sent: Thursday, July 17, 2008 1:57 PM
To: Harry Reynolds; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
I tried this on MX960 and it seams that load balancing is on
by default. How do I turn load balancing off?
2.2.2.2/32 *[OSPF/10] 02:21:29, metric 1
to 10.0.2.2 via ge-8/0/5.0
to 10.0.3.2 via ge-5/1/0.0
2.2.2.2/32 user 1 10.0.3.2 ucst 572
5 ge-5/1/0.0
But when I actually send traffic and run 'monitor interface
traffic', I see that traffic is going out over both links.
This 2.2.2.2 next hop is actually a PE router in VPN.
Is load balancing on by default on MX? I didn't configure
anything special to turn it on.
On Tue, Jul 15, 2008 at 6:43 AM, Boyd, Benjamin R
[edit forwarding-options hash-key]
family inet {
layer-3;
layer-4;
}
family mpls {
label-1;
label-2;
}
If you're load balancing over a decent amount of hops I wouldn't hash
both layer-3/layer-4 and label-1/label-2 on every
router because then
your per-flow becomes quite segregated and you might
find issues where
your load balancing on many routers will break the
seemingly load
balancing of another router since the hashing algorithm will produce the
same result on each router.
-Ben
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Harry Reynolds
Sent: Monday, July 14, 2008 6:18 PM
To: Marlon Duksa; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
Do you have a per-packet (really per flow) LB policy
applied to the
forwarding table?
This is needed to install two or more forwarding paths
in the pfe. BGP
multipath is a control plane tie breaker, but by
default only one of the
winners is installed as active in the FT.
HTHs
[edit]
regress at asahi# show policy-options
policy-statement lb {
then {
load-balance per-packet;
}
}
[edit]
regress at asahi# show routing-options forwarding-table traceoptions {
file forwarding_table;
flag route detail;
}
export lb;
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On
Behalf Of Marlon Duksa
Sent: Monday, July 14, 2008 3:22 PM
To: juniper-nsp at puck.nether.net
Subject: [j-nsp] BGP and OSPF ECMP
Does anyone know how to enable ecmp in Junos (I'm on M320
with Junos 9.0)?
I have a vrf with BGP configured for multipath. In the
forwarding table I see only one path installed even though I
have two equal cost physical links to the NH.
My IGP is OSPF and in the routing table OSPF is showing two
paths (only one active >) and in the fwd table only one path
is selected. How do I force Junos to select both links.
Similar with LDP which is used for the transport (tunnel) in
this VPN environment.
So it looks to me that multipath in BGP is not taking effect
because underlying protocols (OSPF and LDP) is not utilizing
both links??
Thanks,
Marlon
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
**************************************************************
*************************
The information contained in this message, including
attachments, may contain
privileged or confidential information that is intended
to be delivered only to the
person identified above. If you are not the intended
recipient, or the person
responsible for delivering this message to the intended
recipient, Windstream requests
that you immediately notify the sender and asks that
you do not read the message or its
attachments, and that you delete them without copying
or sending them to anyone else.
Harry Reynolds
2008-07-18 18:58:29 UTC
Permalink
If you are sending to multiple destinations, then by default per prefix lb kicks in. If we are talking PE router then I believe its choice of p-facing NH is based on ce facing hash (!mpls), but for p-router yes, it will be a mpls label stack hash, but for a single vrf with a single pe-ce facing interface I'd expect the same label stack for all routes.

Regards
-----Original Message-----
From: Marlon Duksa [mailto:mduksa at gmail.com]
Sent: Friday, July 18, 2008 11:43 AM
To: Harry Reynolds
Cc: juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
I'm sending traffic to 50K IP destinations. All this is in
VPN (2547). So I should have 50K flows if destination IP is
taken into account during hashing. Please keep in mind that
this IP is encapsulated in two MPLS headers as the traffic is
going through MPLS tunnel (LDP based) and then the second
label is the vrf label. The next hop (PE) router is
advertised through OSPF.
Thanks,
Marlon
On Thu, Jul 17, 2008 at 5:24 PM, Harry Reynolds
Hmm. Normally for LB we expect to see a ulst next hop,
which in turn contains two or more ucst NHs. The FT display
indicates that a single NH is installed for that prefix.
Can you describe the nature of the test traffic? If its
all one flow I'd expect all to take the same NH even when LB
is in effect. AFAIK, MX behavior is no different here.
Regards
-----Original Message-----
From: Marlon Duksa [mailto:mduksa at gmail.com]
Sent: Thursday, July 17, 2008 1:57 PM
To: Harry Reynolds; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
I tried this on MX960 and it seams that load balancing is on
by default. How do I turn load balancing off?
2.2.2.2/32 *[OSPF/10] 02:21:29, metric 1
to 10.0.2.2 via ge-8/0/5.0
to 10.0.3.2 via ge-5/1/0.0
2.2.2.2/32 user 1 10.0.3.2 ucst 572
5 ge-5/1/0.0
But when I actually send traffic and run 'monitor interface
traffic', I see that traffic is going out over both links.
This 2.2.2.2 next hop is actually a PE router in VPN.
Is load balancing on by default on MX? I didn't configure
anything special to turn it on.
On Tue, Jul 15, 2008 at 6:43 AM, Boyd, Benjamin R
[edit forwarding-options hash-key]
family inet {
layer-3;
layer-4;
}
family mpls {
label-1;
label-2;
}
If you're load balancing over a decent amount of hops I wouldn't hash
both layer-3/layer-4 and label-1/label-2 on every
router because then
your per-flow becomes quite segregated and you might
find issues where
your load balancing on many routers will break the
seemingly load
balancing of another router since the hashing algorithm will produce the
same result on each router.
-Ben
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On Behalf Of Harry Reynolds
Sent: Monday, July 14, 2008 6:18 PM
To: Marlon Duksa; juniper-nsp at puck.nether.net
Subject: Re: [j-nsp] BGP and OSPF ECMP
Do you have a per-packet (really per flow) LB policy
applied to the
forwarding table?
This is needed to install two or more forwarding paths in the pfe. BGP
multipath is a control plane tie breaker, but by
default only one of the
winners is installed as active in the FT.
HTHs
[edit]
regress at asahi# show policy-options
policy-statement lb {
then {
load-balance per-packet;
}
}
[edit]
regress at asahi# show routing-options forwarding-table traceoptions {
file forwarding_table;
flag route detail;
}
export lb;
-----Original Message-----
From: juniper-nsp-bounces at puck.nether.net
[mailto:juniper-nsp-bounces at puck.nether.net] On
Behalf Of Marlon Duksa
Sent: Monday, July 14, 2008 3:22 PM
To: juniper-nsp at puck.nether.net
Subject: [j-nsp] BGP and OSPF ECMP
Does anyone know how to enable ecmp in Junos
(I'm on M320
with Junos 9.0)?
I have a vrf with BGP configured for multipath. In the
forwarding table I see only one path
installed even though I
have two equal cost physical links to the NH.
My IGP is OSPF and in the routing table OSPF
is showing two
paths (only one active >) and in the fwd
table only one path
is selected. How do I force Junos to select
both links.
Similar with LDP which is used for the
transport (tunnel) in
this VPN environment.
So it looks to me that multipath in BGP is
not taking effect
because underlying protocols (OSPF and LDP)
is not utilizing
both links??
Thanks,
Marlon
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
_______________________________________________
juniper-nsp mailing list juniper-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/juniper-nsp
**************************************************************
*************************
The information contained in this message, including
attachments, may contain
privileged or confidential information that is intended
to be delivered only to the
person identified above. If you are not the intended
recipient, or the person
responsible for delivering this message to the intended
recipient, Windstream requests
that you immediately notify the sender and asks that
you do not read the message or its
attachments, and that you delete them without copying
or sending them to anyone else.
Loading...