Subject: EVPN: withdrawing the alias

From: Jakob Heitz <[email-masked]>
Date: Wed, 28 Nov 2012 22:49:44 +0000

Consider a CE (CE1) that is dual-homed to two PEs (PE1 and PE2) on a
   LAG interface (ES1), and is sending packets with MAC address MAC1 on
   VLAN1. MAC1 is advertised only by PE1. Both PE1 and PE2 advertise a Ethernet A-D
   route per ESI for ESI1 as well as an Ethernet A-D route per EVI for
   <ESI1, VLAN1>. A remote PE, PE3 considers MAC1 as reachable
   via both PE1 and PE2.

Now, suppose PE1 withdraws its advertisement of MAC1.
Does PE3 still consider MAC1 as reachable via PE2?
I would think not, but it's not stated in the draft.

--
Jakob Heitz. x25475. 510-566-2901

---

From: "Ali Sajassi (sajassi)" <[email-masked]>
Date: Thu, 29 Nov 2012 08:21:04 +0000

Good question! The reason that PE1 withdraws MAC1 can be:

  1.  there is a failure between MHD and PE1 (e.g., a link or port failure)
  2.  MAC1 ages out on PE1

In case of (1), PE2 will advertise MAC1 and PE3 will set its adjacency for MAC1 to PE2.
In case of (2), PE1 withdraws MAC1 but there is no advertisement by PE2. In this case, MAC1 is not reachable via either PE1 or PE2.

I think we can elaborate this on the next rev. of the draft.

Cheers,
Ali

From: Jakob Heitz <[email-masked]<mailto:[email-masked]>>
Date: Wednesday, November 28, 2012 2:49 PM
To: "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>
Subject: EVPN: withdrawing the alias

---

From: Jakob Heitz <[email-masked]>
Date: Thu, 29 Nov 2012 13:02:19 +0000

In case of (1), PE2 will advertise MAC1 *only* if there is traffic from MAC1. This is by no means assured. In that case, if PE2 does not advertise MAC1 before PE1 withdraws it, does PE3 consider MAC1 as unknown?

Perhaps PE1 could delay its withdrawal, or not send it at all. PE1 withdraws the Ethernet A-D. That could trigger an aging timer on PE3 for the alias.

I propose:

If a PE has advertised an Ethernet A-D route and has advertised a MAC route covered by that Ethernet A-D route and this PE subsequently withdraws the Ethernet A-D route, then it shall not withdraw the MAC route.

If a first PE has received an Ethernet A-D route and a MAC route covered by that Ethernet A-D route from a second PE and has an alias for that MAC route from a third PE and subsequently receives a withdrawal of the Ethernet A-D route from the second PE, then the first PE shall immediately delete its MAC route to the second PE and start an aging timer to delete its alias.

--
Jakob Heitz.

On Nov 29, 2012, at 12:21 AM, "Ali Sajassi (sajassi)" <[email-masked]<mailto:[email-masked]>> wrote:

Cheers,
Ali

---

From: "Ali Sajassi (sajassi)" <[email-masked]>
Date: Thu, 29 Nov 2012 19:19:00 +0000

Let me summarize the operation as follow:

  1.  if the remote PE (e.g., PE3) only receives MAC1 advertisement from only one of the PE in the Multi-homing group (e.g., from PE1), then upon receiving withdraw message for this MAC1,  PE3 will flood subsequent traffic toward MAC1. This covers the scenario in which MAC1 ages out on PE1.
  2.  If the remote PE (e.g., PE3) receives Ether AD (mass withdraw) message from PE1 first (before MAC1 route withdraw), then because of aliasing, PE3 forwards traffic to PE2 till it receives MAC1 withdraw from PE1. In which case, it removes MAC1 entry from its table and starts flooding traffic toward MAC1. This covers link/port failure scenario.

More comments in line …

From: Jakob Heitz <[email-masked]<mailto:[email-masked]>>
Date: Thursday, November 29, 2012 5:02 AM
To: Cisco Employee <[email-masked]<mailto:[email-masked]>>
Cc: "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>
Subject: Re: EVPN: withdrawing the alias

Ali> yes, PE3 consider MAC1 as unknown and starts flooding traffic toward MAC1 till it learns it from PE2.

Ali> No need to delay the withdraw. Ether AD mass-withdraw message will cause PE3 to remove aliasing and thus traffic gets forwarded to PE2 for MAC1. If MAC1 is advertised by PE2 before  MAC1 is withdrawn by PE1, then there is no flooding; otherwise, there will be little bit of flooding till PE3 learns MAC1 from PE2.

Cheers,
Ali

I propose:

--
Jakob Heitz.

Cheers,
Ali

---

From: Lucy yong <[email-masked]>
Date: Thu, 29 Nov 2012 20:40:46 +0000

See below.

From: [email-masked] [mailto:[email-masked]] On Behalf Of Ali Sajassi (sajassi)
Sent: Thursday, November 29, 2012 1:19 PM
To: Jakob Heitz
Cc: [email-masked]
Subject: Re: EVPN: withdrawing the alias

  1.  if the remote PE (e.g., PE3) only receives MAC1 advertisement from only one of the PE in the Multi-homing group (e.g., from PE1), then upon receiving withdraw message for this MAC1,  PE3 will flood subsequent traffic toward MAC1. This covers the scenario in which MAC1 ages out on PE1.
[Lucy] I don't understand this action. The issue is how remote PE to differentiate the failure withdraw via the age out withdraw at a PE.

  1.  If the remote PE (e.g., PE3) receives Ether AD (mass withdraw) message from PE1 first (before MAC1 route withdraw), then because of aliasing, PE3 forwards traffic to PE2 till it receives MAC1 withdraw from PE1. In which case, it removes MAC1 entry from its table and starts flooding traffic toward MAC1. This covers link/port failure scenario.
[Lucy] in second point, you mean "PE3 forwards traffic to PE2 till it receives MAC1 withdraw from PE2, ...", not PE1.
Lucy

More comments in line ...

Cheers,
Ali

I propose:

--
Jakob Heitz.

Cheers,
Ali

   via both PE1 and PE2.

---

From: Jakob Heitz <[email-masked]>
Date: Thu, 29 Nov 2012 21:01:22 +0000

I understand what Ali said. It answered my question.
Let me try in other words.
Here is the sequence:
 1. PE1 advertises Ether AD
 2. PE1 advertises MAC1
 3. PE3 adds a MAC route for MAC1 to PE1
 4. PE2 advertises Ether AD
 5. PE3 adds a MAC alias for MAC1 to PE2
 6. PE1 loses connection to the ethernet segment.
 7. PE1 withdraws Ether AD
 8. PE3 removes its MAC route for MAC1 to PE1, but retains the alias to PE2
    - PE3 forwards traffic for MAC1 unicast to PE2
 9. PE1 withdraws MAC1
10. PE3 removes its alias for MAC1 to PE2
    - PE3 floods traffic for MAC1
11. PE2 receives local traffic from MAC1 and learns it
12. PE2 advertises MAC1
13. PE3 adds a MAC route for MAC1 to PE2
    - PE3 forwards traffic for MAC1 unicast to PE2

step 12 could happen before step 9.
In that case, PE3 will never flood.
Steps 1 to 5 could happen in a different order without changing the outcome.

________________________________
From: Lucy yong [mailto:[email-masked]]
Sent: Thursday, November 29, 2012 12:41 PM
To: Ali Sajassi (sajassi); Jakob Heitz
Cc: [email-masked]
Subject: RE: EVPN: withdrawing the alias

See below.

Cheers,
Ali

I propose:

--
Jakob Heitz.

Cheers,
Ali

   via both PE1 and PE2.

---

From: Lucy yong <[email-masked]>
Date: Thu, 29 Nov 2012 21:45:22 +0000

Hi Jakob,

Thank you for the explanation. It is clear to me know.

Lucy

From: Jakob Heitz [mailto:[email-masked]]
Sent: Thursday, November 29, 2012 3:01 PM
To: Lucy yong; Ali Sajassi (sajassi)
Cc: [email-masked]
Subject: RE: EVPN: withdrawing the alias

Cheers,
Ali

I propose:

--
Jakob Heitz.

Cheers,
Ali

   via both PE1 and PE2.