Subject: [rbridge] Header Options Suggestion

From: "David Michael Bond" <[email-masked]>
Date: Wed, 4 Nov 2009 11:36:42 -0500

I had a possible suggestion for a rewording. Section 3.5, Header Options
currently says:

   If the CHbH (Critical Hop by Hop) bit is one, one or more critical
   hop-by-hop options are present so transit RBridges that support no
   options MUST drop the frame. If the CHbH bit is zero, the frame is
   safe, from the point of view of options processing, for a transit
   RBridge to forward, even if the forwarding RBridge doesn't understand
   any options. A transit RBridge that supports no options and forwards
   a frame MUST transparently forward the options area.

   If the CItE (Critical Ingress to Egress) bit is a one, one or more
   critical ingress-to-egress options are present. If it is zero, no
   such options are present.  If either CHbH or CItE is non-zero, egress
   RBridges that don't support any options MUST drop the frame.  If both
   CHbH and CItE are zero, the frame is safe, from the point of view of
   options, for any egress RBridge to process, even if it doesn't
   understand any options.

While the intention of this section is clear, the exact wording of 'Rbridges
that support no options' could lead to a strict interpretation that differs
from the intention of the draft. Consider if some implementation supports
option A but it receive a CHbH option Z. I believe the drafts intention is
to have the RBridge drop this frame, but since the RBridge does support
option A, it supports an option and would therefore not drop the frame. Once
again, the intention of the draft is clear, so this may be nitpicking that
would not be worth changing, but I thought I would bring it up. I have
included a rewording below that I feel addresses this. My three changes are
surrounded by ***.

   If the CHbH (Critical Hop by Hop) bit is one, one or more critical
   hop-by-hop options are present so transit RBridges that *** do not
support one of the critical hop-by-hop options present ***
   MUST drop the frame. If the CHbH bit is zero, the frame is
   safe, from the point of view of options processing, for a transit
   RBridge to forward, even if the forwarding RBridge doesn't understand
   any options. A transit RBridge that *** does not support one of the
options present *** and forwards
   a frame MUST transparently forward the options area.

   If the CItE (Critical Ingress to Egress) bit is a one, one or more
   critical ingress-to-egress options are present. If it is zero, no
   such options are present.  If either CHbH or CItE is non-zero, egress
   RBridges that *** do not support one of the critical ingress to egress
options present *** MUST drop the frame.  If both
   CHbH and CItE are zero, the frame is safe, from the point of view of
   options, for any egress RBridge to process, even if it doesn't
   understand any options.

Regards,
David Bond

                    David Bond                    
.~~~~~.~~~~~.~~~~~.~~~~~~.~~~~~~.~~~~~.~~~~~.~~~~~.
.University of New Hampshire                      .
.    - InterOperability Laboratory                .
.        Research and Development Software Eng.   .
.        Routing & Bridge Functions Consortiums   .
.    - Computer Science PhD Student               .
. 121 Technology Drive, Suite 2, Durham NH, 03824 .
.    (O) 1-603-862-3525     (M) 1-603-845-7514    .
.~~~~~.~~~~~.~~~~~.~~~~~~.~~~~~~.~~~~~.~~~~~.~~~~~. 

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

---

From: Donald Eastlake <[email-masked]>
Date: Thu, 5 Nov 2009 11:08:58 -0500

Hi David,

I think you are pretty much correct. At the time we came up with this text,
although the working group decided to include options, considerable effort
was put into making it clear how small the burden would be on an RBridge
that didn't implement any options.

I'm thinking that maybe the way to go is to combine your additions with the
original wording as follows:

   If the CHbH (Critical Hop by Hop) bit is one, one or more critical
   hop-by-hop options are present. *** Transit RBridges that do no support
one of the critical hop-by-hop options present, for example an RBridge that
supported no options, ***
   MUST drop the frame. If the CHbH bit is zero, the frame is
   safe, from the point of view of options processing, for a transit
   RBridge to forward, *** regardless of what options that RBridge does or
does not support. A transit RBridge that supports none of the options
present
   MUST transparently forward the options area when it forwards a frame. ***

   If the CItE (Critical Ingress to Egress) bit is a one, one or more
   critical ingress-to-egress options are present. If it is zero, no
   such options are present.  If either CHbH or CItE is non-zero, egress
   RBridges that don't support any *** critical option present, for example
if they support no options, MUST drop the frame. ***  If both
   CHbH and CItE are zero, the frame is safe, from the point of view of
   options, for any egress RBridge to process, *** regardless of what
options that RBridge does or does not support. ***

Given the process state we are in right now, I'd prefer to make any change
here in conjunction with any AD Review changes or to consider you comment to
be an IETF  Last Call comment and resolve it with any other IETF Last Call
comments.

Thanks,
Donald
=============================
Donald E. Eastlake 3rd   +1-508-634-2066 (home)
155 Beaver Street
Milford, MA 01757 USA
[email-masked]