Subject: [CCAMP] Routing directorate review of draft-ietf-ccamp-ospf-availability-extension

From: Jonathan Hardwick <[email-masked]>
Date: Tue, 26 Jul 2016 16:47:27 +0000

Hello,

I have been selected as the Routing Directorate reviewer for this draft. The Routing Directorate seeks to review all routing or routing-related drafts as they pass through IETF last call and IESG review, and sometimes on special request. The purpose of the review is to provide assistance to the Routing ADs. For more information about the Routing Directorate, please see ​http://trac.tools.ietf.org/area/rtg/trac/wiki/RtgDir

Although these comments are primarily for the use of the Routing ADs, it would be helpful if you could consider them along with any other IETF Last Call comments that you receive, and strive to resolve them through discussion or by updating the draft.

Document: draft-ietf-ccamp-ospf-availability-extension
Reviewer: Jon Hardwick
Review Date: 26 July 2016
IETF LC End Date: Not started yet
Intended Status: Proposed standard

== Summary ==
I have significant concerns about this document and recommend that the Routing ADs discuss these issues further with the authors.

== Comments ==
This document addresses the situation where the maximum bandwidth of some links in the network can vary over time, for example due to radio interference.  Specifically, it addresses the path computation problem, where service placement must take these fluctuations into account.

OSPF is extended to flood the “availability” of such links, which is defined as a sequence of <bandwidth, percentage> tuples.  Each tuple tells the percentage of time at which the bandwidth of the link will be at least as much as <bandwidth>, for example <100Mbps, 99.99%>.  This information is added to the ISCD TLV, defined in RFC 4203.  When services are being planned, the planner specifies the service’s availability requirement (e.g. 4-nines) and the path is computed accordingly.

The document is written in good English and easy enough to understand, and is commendably brief, although probably too brief – see below.

== Major Issues ==

1) The specification of the protocol extensions appears incomplete.  Specifically, section 1 says:

The extension
   reuses the reserved field in the ISCD and also introduces an
   optional Availability sub-TLV.

However, no further mention is made of the ISCD’s reserved field.  How is it reused?

The following description of the Availability level is difficult to understand and leaves me with several questions:

           This field is a 32-bit IEEE floating point number which

           describes the decimal value of availability guarantee of the

           switching capacity in the ISCD object which has the AI value

           equal to Index of this sub-TLV.

- What is the “switching capacity” of the ISCD object?  Do you mean “switching capability” like PSC-1 etc.?
- What is the AI value?  This term is not defined.
- What do you mean by the index of this sub-TLV?  Do you mean the position of this sub-TLV in the list of ISCD sub-TLVs?  What if somebody defines a new ISCD sub-TLV in future – won’t that mess up the indexing?

2) The proposed extensions are not backwards compatible, so do not support incremental deployment.  In section 3.2 it says:

   A node that doesn't support ISCD Availability sub-TLV SHOULD ignore

   ISCD Availability sub-TLV.

However, it’s not possible for this document to specify the behaviour of nodes that do not support this document.  The issue is that the ISCD Availability TLV is defined as a sub-TLV of the ISCD TLV, but the ISCD TLV defined in RFC 4203 has no sub-TLVs.  Therefore, implementations of RFC 4203 that do not support this draft will reject the ISCD TLVs sent by implementations of this draft, because they will appear to have the wrong length.

== Minor Issues ==

There are a few cases I would like to see spelled out more clearly in the document.
- How should a node interpret the absence of any ISCD Availability TLVs?
- How should a node interpret more than one ISCD Availability TLV for the same availability level?  Is that even legal to send?
- Let’s say a node advertises a link with 10Gbps capacity, and includes an ISCD Availability TLV saying that the link has a 99% availability level at 8Gbps .  What (if anything) are we to conclude about its availability at 10Gbps?  At 5Gbps?

Section 5 (IANA Considerations).  What allocation policy should IANA use for the new sub-registry?  See RFC 5226.

Best regards
Jon

---

From: "Yemin (Amy)" <[email-masked]>
Date: Wed, 27 Jul 2016 06:53:16 +0000

Hi Jon,

Thanks for the review comments. Please see my reply inline.

BR,

Amy

________________________________
发件人: Jonathan Hardwick [[email-masked]]
发送时间: 2016年7月27日 0:47
收件人: <[email-masked]> ([email-masked]); BRUNGARD, DEBORAH A; [email-masked]
抄送: [email-masked]; [email-masked]
主题: Routing directorate review of draft-ietf-ccamp-ospf-availability-extension

Hello,

== Summary ==

== Comments ==

== Major Issues ==

The extension

However, no further mention is made of the ISCD’s reserved field.  How is it reused?
[Amy] AI was defined in the ISCD rsv field in the old version, but it was removed according to discussion.
The latest draft should not contain any text related with AI. Sorry for that,  I will go through the draft to remove the related text.

- What is the “switching capacity” of the ISCD object?  Do you mean “switching capability” like PSC-1 etc.?
[Amy] yes, it should be "switching capablity".
- What is the AI value?  This term is not defined.
[Amy] will update the draft to remove the AI related text
- What do you mean by the index of this sub-TLV?  Do you mean the position of this sub-TLV in the list of ISCD sub-TLVs?  What if somebody defines a new ISCD sub-TLV in future – won’t that mess up the indexing?
[Amy] The text "which has the AI value equal to Index of this sub-TLV" will be removed.

However, it’s not possible for this document to specify the behaviour of nodes that do not support this document.  The issue is that the ISCD Availability TLV is defined as a sub-TLV of the ISCD TLV, but the ISCD TLV defined in RFC 4203 has no sub-TLVs.  Therefore, implementations of RFC 4203 that do not support this draft will reject the ISCD TLVs sent by implementations of this draft, because they will appear to have the wrong length.
[Amy] You're right. How about this text "A node that doesn't support ISCD Availability sub-TLV will reject ISCD Availability sub-TLV."
Or you perfer don't say anything?

== Minor Issues ==

There are a few cases I would like to see spelled out more clearly in the document.
- How should a node interpret the absence of any ISCD Availability TLVs?
[Amy] If a node who support ISCD Availability TLVs doesn't receive the TLV, it indicatess that the link is with fixed bandwidth, the availability can be interpreted as the highest availability value, e.g., five nines.
will update draft to address this case.
- How should a node interpret more than one ISCD Availability TLV for the same availability level?  Is that even legal to send?
[Amy] It's legal to send. will update draft to address this case.
- Let’s say a node advertises a link with 10Gbps capacity, and includes an ISCD Availability TLV saying that the link has a 99% availability level at 8Gbps .  What (if anything) are we to conclude about its availability at 10Gbps?  At 5Gbps?
[Amy] The availability at 10Gbps/5Gbps cannot be concluded from 8Gbps. The <bandwidth, percentage> tuples is usually decided by the modulation and the local condition.
In the appendix of the accompanied draft, "draft-ietf-ccamp-rsvp-te-bandwidth-availability" (https://datatracker.ietf.org/doc/draft-ietf-ccamp-rsvp-te-bandwidth-availability/?include_text=1 ), there is a example to explain. But there's an error in the table of the appendix, sorry for that. The correct one should be:
Sub-bandwidth(Mbps)    Availability
------------------     ------------
400                    99.99%
200                    99.995%
100                    99.999%
Section 5 (IANA Considerations).  What allocation policy should IANA use for the new sub-registry?  See RFC 5226.
[Amy] The allocation policy should be Standards Action. I will make it clear in next version.

Best regards
Jon

---

From: Jonathan Hardwick <[email-masked]>
Date: Wed, 27 Jul 2016 11:02:08 +0000

Hi Amy

Thanks for the quick reply.

I am still concerned about the lack of backwards compatibility.  Where possible, we want our protocols to be able to be deployed into a mixed environment with some non-compliant nodes.  As things stand, in a mixed environment, non-compliant nodes will disregard the ISCDs and therefore will not be able to compute paths via the compliant nodes.  They are also quite likely to consider the whole LSA to be corrupted and not re-flood it.  My question (to the working group) is – are you SURE you want to publish a standard that would require a forklift upgrade of every node in order to be deployed in a running network?  Particularly as there are other options available that would not require that (such as, not making Availability a sub-TLV of ISCD).

Best regards
Jon

From: Yemin (Amy) [mailto:[email-masked]]
Sent: 27 July 2016 07:53
To: Jonathan Hardwick <[email-masked]>; <[email-masked]> ([email-masked]) <[email-masked]>; BRUNGARD, DEBORAH A <[email-masked]>; [email-masked]
Cc: [email-masked]; [email-masked]
Subject: RE: Routing directorate review of draft-ietf-ccamp-ospf-availability-extension

Hi Jon,

BR,

Amy

________________________________
发件人: Jonathan Hardwick [[email-masked]]
发送时间: 2016年7月27日 0:47
收件人: <[email-masked]<mailto:[email-masked]>> ([email-masked]<mailto:[email-masked]>); BRUNGARD, DEBORAH A; [email-masked]<mailto:[email-masked]>
抄送: [email-masked]<mailto:[email-masked]>; [email-masked]<mailto:[email-masked]>
主题: Routing directorate review of draft-ietf-ccamp-ospf-availability-extension
Hello,

== Summary ==

== Comments ==

== Major Issues ==

The extension

== Minor Issues ==

Best regards
Jon