Re: MAC route with IP

"Ali Sajassi (sajassi)" <sajassi@cisco.com> Tue, 13 May 2014 16:43 UTC

Return-Path: <sajassi@cisco.com>
X-Original-To: l2vpn@ietfa.amsl.com
Delivered-To: l2vpn@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EA5591A0116 for <l2vpn@ietfa.amsl.com>; Tue, 13 May 2014 09:43:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.151
X-Spam-Level:
X-Spam-Status: No, score=-10.151 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.651, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aiVyeVxhuwfJ for <l2vpn@ietfa.amsl.com>; Tue, 13 May 2014 09:43:01 -0700 (PDT)
Received: from alln-iport-1.cisco.com (alln-iport-1.cisco.com [173.37.142.88]) by ietfa.amsl.com (Postfix) with ESMTP id EC8C71A0102 for <l2vpn@ietf.org>; Tue, 13 May 2014 09:43:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=23454; q=dns/txt; s=iport; t=1399999374; x=1401208974; h=from:to:subject:date:message-id:in-reply-to:mime-version; bh=jWckuCcYuaYZic0Y2oof6TrPIL+okv26EOAFtvRdO/g=; b=dtmOojr7j0+Sfw9jFThJ53mTtNqC3Tk6KfXVEk3pwac9DJ517rpue+gY 3lbf1d4VFewX71b09O31e9OjkSmYv4Br0YCdA4syXjQLaHM5AToMhL22a uC8E/RxVqok506/E4GI/SHRHfCA3dqnOBHFIKqLmHB3/4rRvjhSN8Pr0Q k=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AhQFALNKclOtJA2M/2dsb2JhbABZgkIjIU9YxX0BgSIWdIIlAQEBBA4fOCYBCBEDAQEBIQc5FAkIAgQBEhmIKAHHHBeNY1oXAYRABJVXg3mTEIM2gjA
X-IronPort-AV: E=Sophos;i="4.97,1044,1389744000"; d="scan'208,217";a="43444196"
Received: from alln-core-7.cisco.com ([173.36.13.140]) by alln-iport-1.cisco.com with ESMTP; 13 May 2014 16:42:54 +0000
Received: from xhc-rcd-x05.cisco.com (xhc-rcd-x05.cisco.com [173.37.183.79]) by alln-core-7.cisco.com (8.14.5/8.14.5) with ESMTP id s4DGgsXL002432 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Tue, 13 May 2014 16:42:54 GMT
Received: from xmb-aln-x13.cisco.com ([fe80::5404:b599:9f57:834b]) by xhc-rcd-x05.cisco.com ([173.37.183.79]) with mapi id 14.03.0123.003; Tue, 13 May 2014 11:42:54 -0500
From: "Ali Sajassi (sajassi)" <sajassi@cisco.com>
To: Jakob Heitz <jakob.heitz@ericsson.com>, Antoni Przygienda <antoni.przygienda@ericsson.com>, "l2vpn@ietf.org" <l2vpn@ietf.org>
Subject: Re: MAC route with IP
Thread-Topic: MAC route with IP
Thread-Index: AQHPbsJRaQfHHQKqR0C1MGMVDrT485s/ANyAgAAIooD//4w4gA==
Date: Tue, 13 May 2014 16:42:53 +0000
Message-ID: <CF9798C1.D39C0%sajassi@cisco.com>
In-Reply-To: <2F3EBB88EC3A454AAB08915FBF0B8C7E03055F87@eusaamb109.ericsson.se>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/14.3.4.130416
x-originating-ip: [10.128.2.48]
Content-Type: multipart/alternative; boundary="_000_CF9798C1D39C0sajassiciscocom_"
MIME-Version: 1.0
Archived-At: http://mailarchive.ietf.org/arch/msg/l2vpn/l4EvpvDaxmxCHwC4HVV9QfZzGuw
X-BeenThere: l2vpn@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Layer 2 Virtual Private Networks <l2vpn.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/l2vpn>, <mailto:l2vpn-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/l2vpn/>
List-Post: <mailto:l2vpn@ietf.org>
List-Help: <mailto:l2vpn-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/l2vpn>, <mailto:l2vpn-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 13 May 2014 16:43:04 -0000

The labels should all be the same. In case of EVI-based disposition, the label identifies the EVI and a MAC lookup is performed based on the MAC. Thus, the order of routes in which they are received, doesn't matter.

Cheers,
Ali

From: Jakob Heitz <jakob.heitz@ericsson.com<mailto:jakob.heitz@ericsson.com>>
Date: Tuesday, May 13, 2014 9:37 AM
To: Antoni Przygienda <antoni.przygienda@ericsson.com<mailto:antoni.przygienda@ericsson.com>>, Cisco Employee <sajassi@cisco.com<mailto:sajassi@cisco.com>>, "l2vpn@ietf.org<mailto:l2vpn@ietf.org>" <l2vpn@ietf.org<mailto:l2vpn@ietf.org>>
Subject: RE: MAC route with IP

How do we write code for the receiver if it receives different labels on the different MAC routes?
Say we receive, in order:
MAC1/IP1 Label1
MAC1/no-IP Label2
MAC1/IP2 Label1

The sender might have sent, in order:
MAC1/IP1 Label1
MAC1/IP2 Label1
MAC1/no-IP Label2

A route reflector can reflect routes in a different order than it received them.
Which label should the receiver program?

Thanks,
Jakob.


From: Antoni Przygienda
Sent: Tuesday, May 13, 2014 9:06 AM
To: Ali Sajassi (sajassi); Jakob Heitz; l2vpn@ietf.org<mailto:l2vpn@ietf.org>
Subject: RE: MAC route with IP

inline

From: Ali Sajassi (sajassi) [mailto:sajassi@cisco.com]
Sent: Tuesday, May 13, 2014 8:45 AM
To: Antoni Przygienda; Jakob Heitz; l2vpn@ietf.org<mailto:l2vpn@ietf.org>
Subject: Re: MAC route with IP

Antoni,

From: Antoni Przygienda <antoni.przygienda@ericsson.com<mailto:antoni.przygienda@ericsson.com>>
Date: Sunday, May 11, 2014 11:23 PM
To: Cisco Employee <sajassi@cisco.com<mailto:sajassi@cisco.com>>, Jakob Heitz <jakob.heitz@ericsson.com<mailto:jakob.heitz@ericsson.com>>, "l2vpn@ietf.org<mailto:l2vpn@ietf.org>" <l2vpn@ietf.org<mailto:l2vpn@ietf.org>>
Subject: RE: MAC route with IP

Ali,

there are at least two cases when receiving updates from peers which are tad hairy given the encoding:


1.       We receive a MAC/no-IP  & a set of MAC/IP routes & then someone just withdraws the MAC/no-IP.  It does not seem very logical that the MAC/IP routes are still valid to me or at least that could be emphasized in the draft that they do (i.e. all routes are truly independent).

MAC/IP routes will be independent from MAC-only route. If both are advertised, then withdrawing the MAC/IP route should clean up the ARP table but not remove the entry in the MAC-VRF.
[Tony said] ack, I understood that & the draft read carefully states that in ARP/ND procedures. I would mildly suggest to explicitly state what you write in the draft prominently since this question will come up persistently and misinterpretation of that clause will cause hard-to-track interop problems.


2.       Since we have mac based disposition there is nothing that prevents a neighbor to advertise multiple MAC/IP routes with different labels.  It should obviously not imply that we have to lookup the IP address on the packet (if we even have one) to decide which label is needed.  Should all this labels be considered pointing to the same MAC & equivalent ? Such a condition considered invalid transient and MAC labels for this MAC ignored completely ?  What if we get one route with the label & another without ? We use the label nevertheless for the same MAC ?

The label represents the MAC address in case of label per MAC advertisement. So, even when you advertise multiple IP addresses for the same MAC, they all should use the same label.
[Tony said] the ‘should’ will not help resolve the possible issue. I would suggest for the draft to clearly state a ‘SHOULD’ and specify desired behavior when this clause is violated, as in: SHOULD/MAY log an error and MAY use any of the advertised labels.

And my final interesting observation:

               A single primary/single backup case would be simple & easy, the way the protocol spec stands today, I don’t think there is anything that prevents it from operating in  multiple-primaries, multiple-backup mode  (as in two guys clear the single-active bits & all other set them) [unless I misunderstood something massively].   Do we load balance the primaries until both fail & then either flood (multiple backups) or fail back on the secondary ?

For a given ES, all PEs should advertise the same redundancy group mode (either all-active or single-active mode) for that ES. Otherwise, an error should be logged.
[Tony said] Again, a ‘SHOULD’ in the draft would be good as well: “An error MUST be logged”  would be very desirable.

So, I agree with all you say, Ali, it’s just I think this things deserve explicit statements in the draft due to potential of causing hard-to-track deployments bugs and therefore easing up the life of the operators chasing stuff like this (e.g. the last one could be a genuine hard-to-track misconfig).