Re: [mpls] WG last call on draft-ietf-mpls-entropy-label-03
Curtis Villamizar <curtis@occnc.com> Thu, 14 June 2012 17:55 UTC
Return-Path: <curtis@occnc.com>
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 2249321F866A for <mpls@ietfa.amsl.com>; Thu, 14 Jun 2012 10:55:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.85
X-Spam-Level:
X-Spam-Status: No, score=-2.85 tagged_above=-999 required=5 tests=[AWL=-0.250, BAYES_00=-2.599, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4MexzTaI0Tt2 for <mpls@ietfa.amsl.com>; Thu, 14 Jun 2012 10:55:04 -0700 (PDT)
Received: from gateway.ipv6.occnc.com (gateway.ipv6.occnc.com [IPv6:2001:470:1f07:1545::1:132]) by ietfa.amsl.com (Postfix) with ESMTP id 0F03821F8668 for <mpls@ietf.org>; Thu, 14 Jun 2012 10:55:03 -0700 (PDT)
Received: from newharbor.ipv6.occnc.com (newharbor.ipv6.occnc.com [IPv6:2001:470:1f07:1545::1:320]) (authenticated bits=0) by gateway.ipv6.occnc.com (8.14.5/8.14.5) with ESMTP id q5EHsxFx027014; Thu, 14 Jun 2012 10:54:59 -0700 (PDT) (envelope-from curtis@occnc.com)
Message-Id: <201206141754.q5EHsxFx027014@gateway.ipv6.occnc.com>
To: Ross Callon <rcallon@juniper.net>
From: Curtis Villamizar <curtis@occnc.com>
In-reply-to: Your message of "Thu, 14 Jun 2012 11:31:30 EDT." <DF7F294AF4153D498141CBEFADB17704C7117E47B5@EMBX01-WF.jnpr.net>
Date: Thu, 14 Jun 2012 13:54:59 -0400
Cc: "'mpls@ietf.org'" <mpls@ietf.org>
Subject: Re: [mpls] WG last call on draft-ietf-mpls-entropy-label-03
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
Reply-To: curtis@occnc.com
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: Thu, 14 Jun 2012 17:55:05 -0000
In message <DF7F294AF4153D498141CBEFADB17704C7117E47B5@EMBX01-WF.jnpr.net>
Ross Callon writes:
> Working Group;
>
> This is to start a two week working group last call on:
>
> - draft-ietf-mpls-entropy-label-03
>
> Please send comments to the mpls working group list.
>
> The working group last call ends June 28, 2012.
>
> Also, please note that there was an IPR disclosure on this document
> sent to the MPLS mailing list yesterday, with the subject line "IPR
> Disclosure: Cisco's Statement of IPR Related to
> draft-ietf-mpls-entropy-label-03".
>
> Thanks, Ross
> (as MPLS WG co-chair)
Ross,
I just reread the new draft. It is very clear. It adds a worthwhile
and well thought out mechanism to MPLS.
Two nits, one potential problem but maybe one that is best addressed
later if problems with legacy LSR occur.
IMHO - Illustrative examples are usually put in appendices. Maybe
section 8 should be moved to an appendix (it would become Appendix B).
Curtis
Nit 1:
Old:
The term 'label' is used both for the entire 32-bit label and the 20-
bit label field within a label. It should be clear from the context
which is meant.
Better:
The term 'label' is used both for the entire 32-bit label stack
entry and the 20-bit label field within a label stack entry. It
should be clear from the context which is meant.
Why:
Label stack entry and label field are completely unambiguous and
are the terms used in RFC 3032. Using label alone is common and
this paragraph is a good clarification, but it is a better
clarification if the full terms that "label" is replacing are
spelled out.
Nit 2:
Old:
This is accomplished by REQUIRING that the label
immediately preceding an entropy label (EL) in the MPLS label stack
be an 'entropy label indicator' (ELI).
New:
This is accomplished by REQUIRING that the label immediately
preceding an entropy label (EL) in the MPLS label stack be an
'entropy label indicator' (ELI), where preceding means closer to
the top of the label stack (farther from bottom of stack
indication).
Why:
The existing wording might not be as clear to the MPLS neophyte
that preceding implies the order of stack processing. AFAIK
"preceding" is not defined anywhere.
More than a nit (maybe):
Old:
b. X MAY insert several entropy labels in the stack (each, of
course, preceded by an ELI), potentially one for each
hierarchical tunnel, provided that the egress for that tunnel
has indicated that it can process ELs for that tunnel.
Potential issue:
Many existing LSR are unable to handle label stacks in excess of a
small number of labels (six, eight being common). In some LSR when
no BOS is found in a limited depth search, unexpected behaviour may
result, possibly packet discard. This may be a reason for BOS=1 at
ELI, but a better alternative exists.
It might be better to put BOS (S=1) at ELI, only if it is the
second or later ELI in the stack. This keeps stack depth down for
older LSR that may have a problem with it. Having popped an ELI
and EL at an egress, the S-bit of the next EL can be changed to
S=0.
This would result in:
No RFC4928 concerns if EL values avoid 4 or 6 in the first nibble
of an EL that follows an ELI with BOS=1.
Legacy load balance continues to work, acting on the top ELI.
Label stack depth seen by legacy LSR is never increased by more
than three labels (first EL and ELI with BOS=0, and second ELI
with BOS=1).
BTW - If you leave this out, it will simplify things. If you add
it, it just provides a means of addressing problems with legacy LSR
should those problems be significant.
I am concerned due to prior discussions with chip vendors about
their handling of deep label stacks and hashing label stacks, with
"no BOS found" being an error. I am also concerned because one
chip vendor claimed that hashing on more than three labels would be
easy - just cycle the packet through twice (and get half the PPS,
thinking that was OK on the basis that such packets might be rare).
Even in cases where we saw issues in evaluation and were
sufficiently interested to point out the issues and ask for
changes, others have used earlier iterations of these chips.
If I remember correctly, one chip vendor circa 2006 thought that a
max of two labels is all that was ever needed, LDP and PW, based on
a prior customer input (all that customer thought they needed).
Perhaps this handling of BOS at ELI can be included as an optional
behavior but if so, another capability must be indicated. The
operation can be summarized as "hiding a prior EL and the rest of
stack when adding an additional ELI and EL if the egress is able to
reverse the process". The capability can be indicated with two
values of "Type" in LDP signaling. It would require two bits in
the Attribute Flags TLV for RSVP-TE signaling.
The downside to this is constraining the depth of the search for
another EL after ELI, EL POP. It would be best if the egress could
indicate how deep the next EL could be. This means more than two
Attribute Flags TLV bits or two values of Type in LDP ELC.
Possibly an extension could be proposed later if problems occur.
- [mpls] WG last call on draft-ietf-mpls-entropy-la… Ross Callon
- Re: [mpls] WG last call on draft-ietf-mpls-entrop… Curtis Villamizar
- Re: [mpls] WG last call on draft-ietf-mpls-entrop… Kireeti Kompella
- Re: [mpls] WG last call on draft-ietf-mpls-entrop… Curtis Villamizar
- [mpls] Las Call Closed: Re: WG last call on draft… Loa Andersson