Re: [trill] WG Last Call: draft-ietf-trill-fine-labeling-02.txt

Thomas Narten <narten@us.ibm.com> Mon, 19 November 2012 15:39 UTC

Return-Path: <narten@us.ibm.com>
X-Original-To: trill@ietfa.amsl.com
Delivered-To: trill@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 218C221F86A4 for <trill@ietfa.amsl.com>; Mon, 19 Nov 2012 07:39:32 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.289
X-Spam-Level:
X-Spam-Status: No, score=-110.289 tagged_above=-999 required=5 tests=[AWL=0.310, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
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 c-KnrAqjp+kf for <trill@ietfa.amsl.com>; Mon, 19 Nov 2012 07:39:31 -0800 (PST)
Received: from e9.ny.us.ibm.com (e9.ny.us.ibm.com [32.97.182.139]) by ietfa.amsl.com (Postfix) with ESMTP id 3C97B21F8683 for <trill@ietf.org>; Mon, 19 Nov 2012 07:39:31 -0800 (PST)
Received: from /spool/local by e9.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for <trill@ietf.org> from <narten@us.ibm.com>; Mon, 19 Nov 2012 10:39:29 -0500
Received: from d01dlp03.pok.ibm.com (9.56.250.168) by e9.ny.us.ibm.com (192.168.1.109) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Mon, 19 Nov 2012 10:39:27 -0500
Received: from d01relay05.pok.ibm.com (d01relay05.pok.ibm.com [9.56.227.237]) by d01dlp03.pok.ibm.com (Postfix) with ESMTP id 78240C90052 for <trill@ietf.org>; Mon, 19 Nov 2012 10:39:26 -0500 (EST)
Received: from d01av04.pok.ibm.com (d01av04.pok.ibm.com [9.56.224.64]) by d01relay05.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id qAJFdQGv273212 for <trill@ietf.org>; Mon, 19 Nov 2012 10:39:26 -0500
Received: from d01av04.pok.ibm.com (loopback [127.0.0.1]) by d01av04.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id qAJFdQBR006717 for <trill@ietf.org>; Mon, 19 Nov 2012 10:39:26 -0500
Received: from cichlid.raleigh.ibm.com (sig-9-49-150-139.mts.ibm.com [9.49.150.139]) by d01av04.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVin) with ESMTP id qAJFdO0e006542 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 19 Nov 2012 10:39:25 -0500
Received: from cichlid.raleigh.ibm.com (localhost.localdomain [127.0.0.1]) by cichlid.raleigh.ibm.com (8.14.5/8.12.5) with ESMTP id qAJFYBqh002610; Mon, 19 Nov 2012 10:34:11 -0500
Message-Id: <201211191534.qAJFYBqh002610@cichlid.raleigh.ibm.com>
To: Donald Eastlake <d3e3e3@gmail.com>
In-reply-to: <CAF4+nEE+rT9x_MgiWLCx7xut4SgDJ7=pRK1L_PovrwBCg3OaVw@mail.gmail.com>
References: <CAF4+nEE+rT9x_MgiWLCx7xut4SgDJ7=pRK1L_PovrwBCg3OaVw@mail.gmail.com>
Comments: In-reply-to Donald Eastlake <d3e3e3@gmail.com> message dated "Tue, 06 Nov 2012 15:42:42 -0500."
Date: Mon, 19 Nov 2012 10:34:11 -0500
From: Thomas Narten <narten@us.ibm.com>
X-Content-Scanned: Fidelis XPS MAILER
x-cbid: 12111915-7182-0000-0000-00000345C469
Cc: trill@ietf.org
Subject: Re: [trill] WG Last Call: draft-ietf-trill-fine-labeling-02.txt
X-BeenThere: trill@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Developing a hybrid router/bridge." <trill.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/trill>, <mailto:trill-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/trill>
List-Post: <mailto:trill@ietf.org>
List-Help: <mailto:trill-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/trill>, <mailto:trill-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 19 Nov 2012 15:39:32 -0000

(repost with proper subject)

I have read the document, and want to raise some basic questions about
this document.

An original premise for this document was that it would use the same
Ethertype=0x8100 encoding for the inner header as the the base
protocol. This was done for backwards-compatability with base RBs and
to allow non-FGL aware RBs to forward FGL frames. Under this
assumption, having the labels split into two different parts using
separate fields made sense.

However, with the -01 revision, the above assumption has been thrown
out. FGLs now use a different ethertype encoding, and various parts of
the document make it clear that an RB operates in either FGL or VL
mode, with no overlap or backwards compatability. RBs implementing VL
are not supposed to receive or process FGL formatted TRILL data
frames.

Given that, I do not see a compelling justification for retaining the
"double tagging" encoding format the current document
supports. Specifically, I'd suggest:

1) not having separate high-order and low-order FGL fields; just
define one field that is 24 bits long.

2) Remove the second ethertype=0x893B field completely. We are just
wasting 2 bytes. (the field serves no useful purpose and must always
hold the value of 0x893B.)

3) While I don't have a strong opinion either way, I would also like
to see a justification for having an "Alternate Priority" field. The
base TRILL protocol doesn't have one. Why is it needed for FGLs?

Under the previous encapsulation format, we got the extra priority
"for free" since it was part of the TAG, but I'd like to see the
rational/use case for having this extra field stand on its own
merits. Is this just a "what the heck, why not" field? Or is there a
compelling use case for it?

I am also uncomfortable with some of the wording in the document
regarding "silicon".

>    2. Silicon Considerations
> 
>       Fine-grained labeling (FGL) should, to the extent practical, use
>       existing features, processing, and fields that are already
>       supported in at least some fast path silicon implementations that
>       currently support the TRILL base protocol.

This makes sense. We do not want to pick encodings that will be
problematatic for silicon (generally).  However, we also need to
balance such a desire against not restricting our design solely to
favor, say, one particular implementation. (I am not suggesting that
is being done here, just pointing out that if the current encoding
does favor certain implementations, we need to be upfront about that,
and discuss the implications openly.)

>    2. Silicon Considerations: Existing TRILL fast path silicon chips can
>       perform base TRILL Header insertion and removal to support ingress
>       and egress. In addition, it is believed that most such silicon
>       chips can also perform the native frame to FGL mapping and the
>       encoding of the FGL as specified herein, as well as the inverse
>       decoding and mapping. Some existing silicon can perform only one
>       of these operations on a frame in the fast path and is thus not
>       suitable to implement fast path TRILL FGL processing; however,
>       other existing chips are believed to be able to perform both
>       operations on the same frame in the fast path and are suitable for
>       FGL implementation.

My impression in talking to folk familiar with silicon implementations
is that silicon has gotten pretty good at being able to extract fields
from fixed arbitrary offsets into a packet. Thus, while they may be
able to extract the two separate labels and combine them (as the
current proposal calls for), they can just as easily extract a single
label of 24 bits.

If we are going to stick with the current encoding, I'd like to hear
directly from the silicon implementors why that is *necessary* and why
they cannot support the more natural/obvious format for 24-bit labels.

I have additional comments on the draft, but they may not be relevant
depending on how the above points are resolved.

Thomas