Hi Greg,





Please see inline...



Original



From: GregMirsky <gregimir...@gmail.com>
To: 肖敏10093570;
Cc: rtg-bfd@ietf.org <rtg-bfd@ietf.org>;
Date: 2023年05月10日 00:02
Subject: Re: Fw: New Version Notification for 
draft-ietf-bfd-unaffiliated-echo-07.txt




Hi Xiao Min,thank you for your expedient response. Please find my follow-up 
notes below tagged GIM>>.

Regards,
Greg




On Thu, May 4, 2023 at 12:28 AM <xiao.m...@zte.com.cn> wrote:


Hi Greg,






Thank you for the detailed review and comments, although I don't think your 
comments justify your conclusion.


Please see inline...



Original


From: GregMirsky <gregimir...@gmail.com>
To: 肖敏10093570;
Cc: rtg-bfd@ietf.org <rtg-bfd@ietf.org>;
Date: 2023年04月29日 03:42
Subject: Re: Fw: New Version Notification for 
draft-ietf-bfd-unaffiliated-echo-07.txt

















Hi Xiao Min,thank you for sharing updates. I've read the new version and have 
several questions and comments.
It is stated in the Abstract:



   BFD Async procedures can be executed over the BFD


   Echo port where the neighboring system only loops packets back to the

   local system.

Is this conclusion differs from the definition of the BFD Echo function in RFC 
5880? If it is not, what is the value of such a re-statement? If it is, it 
seems like an explicit attribution of this conclusion to this document would be 
helpful.
[XM]>>> RFC 5880 doesn't say BFD Async procedures can be executed over the BFD 
Echo port because it classifies BFD Echo as an affiliated function. Would you 
please suggest some text you think helpful?






















GIM>> I am a bit confused by the "BFD Async procedures" term. In your opinion, 
what are these procedures defined in RFC 5880? BFD state machine? BFD state 
changes? I believe it would help me if you could give an example, and add more 
details to the interpretation of that term. 

[XM-2]>>> The "BFD Async procedures" term was introduced by Jeff in his 
comments on -05 version of this draft [1]. My understanding to the term is that 
the BFD Control packet and the procedure on demultiplexing it, as well as the 
BFD state machine and the procedure on changing the state are mostly reused.

[1] https://mailarchive.ietf.org/arch/msg/rtg-bfd/JN4DpQjiudBGUJn8beapEwuhlH0/



















Is the following a requirement or an observation:



   a network device must be able to quickly detect


   faults in communication with adjacent devices.


If the former, please capitalize the normative language. If the latter, then it 
appears as an arguable view. Indeed, in some cases, local protection is a 
viable option, while in other environments, e2e path protection might be 
preferable.
[XM]>>> At the beginning of the sentence "in some cases" can be added, is that 
acceptable to you?





















GIM>> I think that the capability to faster detection of a network failure is 
always desirable. Thus, the statement can be presented as a general node 
requirement. On the other hand, it can be worded as an observation. Using 
normative keywords in a lowercase form might confuse readers. 

[XM-2]>>> I'd like to try again. Please see the proposed changes as below.

OLD

 To minimize the impact of device/link faults on services and improve
 network availability, a network device must be able to quickly detect
 faults in communication with adjacent devices.NEW

 To minimize the impact of device/link faults on services and improve
 network availability, in some cases a network device needs to be able to 
quickly detect
 faults in communication with adjacent devices.

















Further, in Introduction, I read:


   Section 5 of

   [RFC5880] indicates that the payload of a BFD Echo packet is a local

   matter and hence its contents are outside the scope of that

   specification.  This document, on the other hand, specifies the

   contents of the Echo packets and what to do with them.

It seems to me that this draft is positioned as the definition of the content 
of an Echo message and the processing of it, whether as an unaffiliated or 
affiliated (RTC5880-style) function. Is that correct?
[XM]>>> That's incorrect. This document specifies only Unaffiliated BFD Echo, 
and  it doesn't touch affiliated BFD Echo.



















GIM>> Thank you for the clarification. I feel that the current text and its 
location are unclear. Reiterating the scope of the proposed solution will 
certainly make it clearer.

[XM-2]>>> OK. Please see the proposed changes as below.


OLD

 Section 5 of [RFC5880] indicates that the payload of a BFD Echo packet is a 
local
 matter and hence its contents are outside the scope of that
 specification. This document, on the other hand, specifies the
 contents of the Echo packets and what to do with them.
NEW

 Section 5 of [RFC5880] indicates that the payload of an affiliated BFD Echo 
packet is a local
 matter and hence its contents are outside the scope of that
 specification. This document, on the other hand, specifies the
 contents of the Unaffiliated BFD Echo packets and what to do with them.















I hope you can help me understand the demultiplexing of Unaffiliated BFD 
sessions:


   Device A performs its

   initial demultiplexing of a Unaffiliated BFD Echo session using the

   source IP address or UDP source port, once the remote system echoes

   back the local discriminator, all further received packets are

   demultiplexed based on the "Your Discriminator" field only, which is

   conformed to the procedure specified in Section 6.3 of [RFC5880].

Does "initial demultiplexing" refers to the first BFD Control message 
transmitted in the Unaffiliated BFD Echo mode?

[XM]>>> Not exactly. Actually "initial demultiplexing" is applied to the 
received BFD Control packet(s) whose "Your Discriminator" is zero.



















GIM>> Perhaps that can be added to the document as "In the case when the value 
of Your Discriminator in the received packet is zero, demultiplexing is done 
based on ..."? 

[XM-2]>>> OK. Please see the proposed changes as below.


OLD

 Device A performs its initial demultiplexing of a Unaffiliated BFD Echo 
session using the
 source IP address or UDP source port, once the remote system echoes
 back the local discriminator...
NEW

 Device A performs its initial demultiplexing of a Unaffiliated BFD Echo 
session using the
 source IP address or UDP source port, that is to say, in the case when "Your 
Discriminator" 
 in the received packet is zero, demultiplexing is done based on the source IP 
address or 
 UDP source port, once the remote system echoes back the local discriminator...













Considering that "device B would not intercept any received Unaffiliated BFD 
Echo packet", how "the remote system echoes back the local discriminator"?

[XM]>>> Here "echoes back" means "loops back", is "loops back" more clear?



















GIM>> I think it is better, thank you. 

[XM-2]>>> OK. Will do s/echoes back/loops back.




















A lengthy copy of a text from Section 4 of RFC 5881 seems like unnecessary:




   the destination address MUST be chosen in such a way as to



   cause the remote system to forward the packet back to the local



   system.  The source address MUST be chosen in such a way as to



   preclude the remote system from generating ICMP or Neighbor Discovery



   Redirect messages.  In particular, the source address SHOULD NOT be



   part of the subnet bound to the interface over which the BFD Echo



   packet is being transmitted, and it SHOULD NOT be an IPv6 link-local



   address, unless it is known by other means that the remote system



   will not send Redirects.



It seems that a reference to that section and something like "rules stated in 
Section 4 [RFC5881] are applicable to the encapsulation of an Unaffiliated BFD 
Echo Control message" could be sufficient.
[XM]>>> I'd like to follow your suggestion if there is no objection from Jeff.















GIM>> Of course. 

[XM-2]>>> Thank you for your understanding.













What is the interpretation of "expected value"? It appears that none of these 
values are used, but are ignored. Right?

[XM]>>> As indicated by Jeff, "the desire is that we avoid unset values being a 
potential vector for disclosure of uninitialized memory".
















GIM>> I agree with that. I think it would be helpful to use this reasoning in 
the text, including the Security Consideration section.

[XM-2]>>> Will add the reasoning in the text if there is no objection from Jeff.












A zero value of the Required Min Echo RX Interval field per RFC 5880 is 
interpreted as no support for the Echo function. But it is the recommended 
value. Although it is ignored. Thus, what is the benefit of initializing the 
field after all?

[XM]>>> As indicated by Jeff, "the desire is that we avoid unset values being a 
potential vector for disclosure of uninitialized memory".

In the description



   Afterwards, the


   provisioned transmission interval is used.


What is the event that triggers the "afterward" transition?
[XM]>>> The preceding text says "The slow transmission rate SHOULD be no less 
then one second per packet, until the session is Up.".













GIM>> Perhaps my question was unclear. I understand that the Sender starts the 
session at a slow rate. Then, after some event, the Sender switches to "the 
provisioned transmission interval". Hence my question What is that event that 
is described as "afterward"? 

[XM-2]>>> The event is that "the session is Up". To me, the text is clear 
enough, please suggest some text if that's still not clear to you.










With the high number of "this value MUST be ignored on receipt", "the 
Unaffiliated BFD Echo packet reuses the format of the BFD Control packet 
defined in [RFC5880]" seems like a severe overstatement.

[XM]>>> I don't think so. Ignoring some fields on receipt doesn't break the 
truth that BFD Control packet is reused here.


Which event triggers the transition in




   *  Your Discriminator MUST be set to 0 initially, and then MUST be



      set to the same as My Discriminator echoed back.



[XM]>>> The event is that "My Discriminator" is echoed/looped back.










GIM>> To me, that is not clear from the current text. I think that adding more 
detail would help.

[XM-2]>>> OK. Please see the proposed changes as below.


OLD

 * Your Discriminator MUST be set to 0 initially, and then MUST be
 set to the same as My Discriminator echoed back.
NEW

 * Your Discriminator MUST be set to 0 initially, and then MUST be
 set to the same as My Discriminator looped back. In other words, 
 Your Discriminator MUST be changed from 0 to the received My Discriminator 
 once initial demultiplexing of the received packet is done.






What happens if Desired Min TX Interval, Required Min RX Interval, or Required 
Min Echo is not set to "the expected value"?

[XM]>>> Unset values can be a potential vector for disclosure of uninitialized 
memory.












GIM>> I find myself confused. As I understand it, "expected value" is something 
that is known to the system either through configuration or a pre-set 
(hardcoded) value. And that value, supposedly,  in validating the received 
packet, hence the "expected value" clause. But if the value must be ignored, 
then there's no expectation of it in the system. Right? I agree with the 
reasoning for initializing memory before transmitting a packet, but that is far 
from setting it to an "expected value", in my opinion. WDYT?

[XM-2]>>> Here "an expected value" means "a certain value", is "a certain 
value" more clear?




Best Regards,

Xiao Min










Best Regards,

Xiao Min




In conclusion. As we learned from the BBF Liason, the Broadband Forum is not 
seeking standardization of the mechanism described in TR-146. Also, I learned 
about the implementation of the mechanism described in BBF's TR-146, and the 
authors are not interested in standardization either, as, in their opinion, 
there's no externally noticeable behavior that requires specification. So, I 
still don't see any value in standardizing what is described in the document.



Regards,
Greg







On Sun, Apr 23, 2023 at 7:16 PM <xiao.m...@zte.com.cn> wrote:


Dear BFD WG,





A -07 revision of draft-ietf-bfd-unaffiliated-echo has been posted, attempting 
to address all the WGLC comments.

The main updates are as below.

* add a sentence to clarify that this document doesn't change the affiliated 
BFD Echo function.

* change the order of section 2 "Updates to RFC 5880" and section 3 
"Unaffiliated BFD Echo Procedures".

* add a summary on the Unaffiliated BFD Echo packet fields setting into the end 
of section "Unaffiliated BFD Echo Procedures".

* change the text on IP address setting to the same as specified in section 4 
of RFC 5881.

* some editorial changes, e.g., s/BFD Unaffiliated Echo packet/Unaffiliated BFD 
Echo packet/g.






Best Regards,


Xiao Min



Original


From: internet-dra...@ietf.org <internet-dra...@ietf.org>
To: Raj Boddireddy <rche...@juniper.net>;Raj Chetan Boddireddy 
<rche...@juniper.net>;Reshad Rahman <res...@yahoo.com>;Ruixue Wang 
<wangrui...@chinamobile.com>;Weiqiang Cheng 
<chengweiqi...@chinamobile.com>;肖敏10093570;
Date: 2023年04月24日 10:09
Subject: New Version Notification for draft-ietf-bfd-unaffiliated-echo-07.txt


A new version of I-D, draft-ietf-bfd-unaffiliated-echo-07.txt
has been successfully submitted by Xiao Min and posted to the
IETF repository.
 
Name:        draft-ietf-bfd-unaffiliated-echo
Revision:    07
Title:        Unaffiliated BFD Echo
Document date:    2023-04-23
Group:        bfd
Pages:        12
URL:            
https://www.ietf.org/archive/id/draft-ietf-bfd-unaffiliated-echo-07.txt
Status:         
https://datatracker.ietf.org/doc/draft-ietf-bfd-unaffiliated-echo/
Htmlized:       
https://datatracker.ietf.org/doc/html/draft-ietf-bfd-unaffiliated-echo
Diff:           
https://author-tools.ietf.org/iddiff?url2=draft-ietf-bfd-unaffiliated-echo-07
 
Abstract:
   Bidirectional Forwarding Detection (BFD) is a fault detection
   protocol that can quickly determine a communication failure between
   two forwarding engines.  This document proposes a use of the BFD Echo
   where the local system supports BFD but the neighboring system does
   not support BFD.  BFD Async procedures can be executed over the BFD
   Echo port where the neighboring system only loops packets back to the
   local system.
 
   This document updates RFC 5880.
 
                                                                                
   
 
 
The IETF Secretariat

Reply via email to