Re: [mpls] Question regarding MPLS reserved label with ECMP

Kireeti Kompella <kireeti@juniper.net> Tue, 21 August 2012 20:28 UTC

Return-Path: <kireeti@juniper.net>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 193D821F8559 for <mpls@ietfa.amsl.com>; Tue, 21 Aug 2012 13:28:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.562
X-Spam-Level:
X-Spam-Status: No, score=-6.562 tagged_above=-999 required=5 tests=[AWL=0.038, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dTKkqPzyKz-c for <mpls@ietfa.amsl.com>; Tue, 21 Aug 2012 13:28:15 -0700 (PDT)
Received: from exprod7og125.obsmtp.com (exprod7og125.obsmtp.com [64.18.2.28]) by ietfa.amsl.com (Postfix) with ESMTP id 7BD7821F854E for <mpls@ietf.org>; Tue, 21 Aug 2012 13:28:15 -0700 (PDT)
Received: from P-EMHUB03-HQ.jnpr.net ([66.129.224.36]) (using TLSv1) by exprod7ob125.postini.com ([64.18.6.12]) with SMTP ID DSNKUDPvWOGvpVkgW9eHZtyq5IqSerbJp3FA@postini.com; Tue, 21 Aug 2012 13:28:15 PDT
Received: from EMBX01-HQ.jnpr.net ([fe80::c821:7c81:f21f:8bc7]) by P-EMHUB03-HQ.jnpr.net ([fe80::3c95:ce07:f642:ecd2%10]) with mapi; Tue, 21 Aug 2012 13:27:31 -0700
From: Kireeti Kompella <kireeti@juniper.net>
To: "curtis@occnc.com" <curtis@occnc.com>
Date: Tue, 21 Aug 2012 13:27:29 -0700
Thread-Topic: [mpls] Question regarding MPLS reserved label with ECMP
Thread-Index: Ac1/22NLQXuBk09WQz+NPeA0/T8joA==
Message-ID: <39C735FD-D3DC-46A6-AB67-B4C871F175C7@juniper.net>
References: <201208211352.q7LDqnA9039010@gateway2.orleans.occnc.com>
In-Reply-To: <201208211352.q7LDqnA9039010@gateway2.orleans.occnc.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "mpls@ietf.org" <mpls@ietf.org>, Vivek Kumar <kvivek@broadcom.com>
Subject: Re: [mpls] Question regarding MPLS reserved label with ECMP
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mpls>, <mailto:mpls-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mpls>
List-Post: <mailto:mpls@ietf.org>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mpls>, <mailto:mpls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 21 Aug 2012 20:28:16 -0000

On Aug 21, 2012, at 6:52 , Curtis Villamizar wrote:

> In message <CE716035-DFC3-47A9-8C80-00A9B783680A@juniper.net>
> Kireeti Kompella writes:
> 
>> On Aug 18, 2012, at 4:45 , Vivek Kumar wrote:
>> 
>>> Hi ,
>>> I have one question regarding whether MPLS reserved label should be used or skipped when Transit LSR is doing hashing on full label stack which has some reserved label.
>> 
>> draft-ietf-mpls-entropy-label, section 4.3:
>> 
>>   If a transit LSR recognizes the ELI, it MAY choose to load balance
>>   solely on the following label (the EL); otherwise, it SHOULD use as
>>   much of the whole label stack as feasible as keys for the load
>>   balancing function, with the exception that reserved labels MUST NOT
>>   be used.
>> 
>>>  RFC 6391 , section 7 , says " Note that, depending on the number of labels hashed by the LSR, the
>>>  inclusion of the Router Alert label may cause the OAM packet to be
>>>  load-balanced to a different path from that taken by the data packets
>>>  with identical flow and PW labels".
>>> 
>>> The above comment implies that reserved label is used by LSR when doing hashing for ECMP.
>>> 
>>> Is there any other RFC which states what should be the correct behavior.
>>> 
>>> The draft " draft-ietf-mpls-entropy-label-05" section 4.3 , says reserved label should not be used by LSR when doing hashing on label stack.
>>> 
>>> 
>>> Regards,
>>> Vivek
> 
> 
> Kireeti,
> 
> entropy-label may be the first place where this advice has been given
> and it is good that it is finally somewhere.
> 
> If there is a GAL that is also a reason not to hash on a reserved
> label.  The path with or without GAL should be the same.
> 
> The word "may" in "may cause" in the quoted statement from RFC 6391 is
> significant.  Some routers hash on everything they find.  This is a
> bad practice, but exists.

This is one of the main reasons for including the above caveat.

In general, as far as I can tell, the IETF has been reluctant to specify what fields to load balance on, as this is to some extent an implementation choice.  Perhaps specifying the set of allowable fields, indirectly saying Thou SHALT NOT (*) load balance on other fields until an RFC says you MAY, might be a reasonable way of dealing with this.  This would be across a number of technologies -- IP (in its myriad guises: GRE, IP-in-IP, L2TPv2,3,..., LISP), MPLS, etc., and a number of what we call transport fields (TCP, UDP, that thing SIP uses, ...).  Trouble is, every new encaps (e.g., NVGRE) will mandate an update.  Maybe that's a good thing, though -- load balancing may not be optimal until the update, but at least it won't be "wrong", spraying flows indiscriminately across paths.

Kireeti

(*) Adrian will point out that this is not RFC 2119 language.  It SHOULD be, though.  I'll have a serious talk with SOB.

> Curtis