Re: [trill] WG Last Call: draft-ietf-trill-directory-framework-01.txt

Thomas Narten <narten@us.ibm.com> Mon, 19 November 2012 14:59 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 C040B21F8671 for <trill@ietfa.amsl.com>; Mon, 19 Nov 2012 06:59:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -109.669
X-Spam-Level:
X-Spam-Status: No, score=-109.669 tagged_above=-999 required=5 tests=[AWL=-0.929, BAYES_20=-0.74, 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 te9GOp6OHikR for <trill@ietfa.amsl.com>; Mon, 19 Nov 2012 06:59:45 -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 A5D4A21F85D5 for <trill@ietf.org>; Mon, 19 Nov 2012 06:59:45 -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 09:59:44 -0500
Received: from d01dlp02.pok.ibm.com (9.56.250.167) 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 09:59:42 -0500
Received: from d01relay03.pok.ibm.com (d01relay03.pok.ibm.com [9.56.227.235]) by d01dlp02.pok.ibm.com (Postfix) with ESMTP id 4B7CC6E8047 for <trill@ietf.org>; Mon, 19 Nov 2012 09:59:41 -0500 (EST)
Received: from d01av01.pok.ibm.com (d01av01.pok.ibm.com [9.56.224.215]) by d01relay03.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id qAJExfWM306236 for <trill@ietf.org>; Mon, 19 Nov 2012 09:59:41 -0500
Received: from d01av01.pok.ibm.com (loopback [127.0.0.1]) by d01av01.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id qAJExe5W019988 for <trill@ietf.org>; Mon, 19 Nov 2012 09:59:40 -0500
Received: from cichlid.raleigh.ibm.com (sig-9-49-150-139.mts.ibm.com [9.49.150.139]) by d01av01.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVin) with ESMTP id qAJExaXA019551 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 19 Nov 2012 09:59:37 -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 qAJExZdv001769; Mon, 19 Nov 2012 09:59:35 -0500
Message-Id: <201211191459.qAJExZdv001769@cichlid.raleigh.ibm.com>
To: Erik Nordmark <nordmark@acm.org>
In-reply-to: <50A4095E.80009@acm.org>
References: <CAF4+nEH9_MkMTDDG7jn_xipXV-feu4Xy0GyH9NyNO_5EaNw3nQ@mail.gmail.com> <50A4095E.80009@acm.org>
Comments: In-reply-to Erik Nordmark <nordmark@acm.org> message dated "Wed, 14 Nov 2012 13:13:02 -0800."
Date: Mon, 19 Nov 2012 09:59:35 -0500
From: Thomas Narten <narten@us.ibm.com>
X-Content-Scanned: Fidelis XPS MAILER
x-cbid: 12111914-7182-0000-0000-000003455351
Cc: trill@ietf.org
Subject: Re: [trill] WG Last Call: draft-ietf-trill-directory-framework-01.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 14:59:46 -0000

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