RE: Last Call: <draft-ietf-softwire-yang-06.txt> (YANG Modules for IPv4-in-IPv6 Address plus Port Softwires) to Proposed Standard

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Re-,

Thank you for the review. 

Please see inline. 

Cheers,
Med

> -----Message d'origine-----
> De : tom petch [mailto:daedulus@xxxxxxxxxxxxx]
> Envoyé : mercredi 3 octobre 2018 13:57
> À : tom petch; ietf
> Cc : softwires@xxxxxxxx; softwire-chairs@xxxxxxxx; jiangsheng@xxxxxxxxxx;
> draft-ietf-softwire-yang@xxxxxxxx
> Objet : Re: Last Call: <draft-ietf-softwire-yang-06.txt> (YANG Modules for
> IPv4-in-IPv6 Address plus Port Softwires) to Proposed Standard
> 
> And some technical comments on this I-D as a result of which, I do not
> think this is ready to progress; perhaps no show stoppers, just a lot of
> changes are needed IMHO.  The more I look into this I-D, the less I
> understand (which may be my ignorance of YANG).
> 
> This I-D is concerned with three tunnel types (Lw4o6, MAP-E, MAP-T).  In
> several places, you have
>   augment "/if:interfaces/if:interface" {
>     when "if:type = 'ianaift:tunnel'";
> This will augment for all tunnel types, not just those of this I-D.  I
> think you should have your own three (?) derived identities for the
> three specific tunnels described here, all in the common module.

[Med] Good point. A new parameter called tunnel-type is now added to the interface YANG module (augments 8343). 

> 
> The three YANG modules are for Customer Premises Equipment, Border Relay
> and a common module. Both the first two define two features, binding and
> algorithm, binding for Lw4o6 and algorithm for MAP-E/MAP-T - I do not
> know if/how this duplication of features will work (and as I said
> before, I am confused about support for 'MAP-E and MAP-T' versus 'MAP-E
> or
> MAP-T' both of which phrases appear in the I-D).  As with tunnel types,
> should
> there be three features, should they be in the common module?  (yes, and
> yes)

[Med] The feature indicates the support of MAP-E and/or MAP-T. the data plane clause is supposed to hint whether this is about MAP-E (encapsulation) or MAP-T (transaltion). I do agree that defining features for each of these two may be more simple. 


> 
> 2.2
> 'they should be imported here, as needed. '
> import is a YANG technical term as used in this I-D so I think the use
> of it here wrong

[Med] Fixed. 

> 
> '   The CE must already have minimal IPv6 configuration'
> Could that also be IPv4 which, by definition, is going to be widespread
> in the deployment?

[Med] A+P mechanisms assumes that no IPv4 configuration is provided because A+P is meant to provide IPv4 service continuity over IPv6. 

> 
> 3.2
> softwire-path-mru:
> what is the point of this field?  I looked at RFC7596, RFC7597 and
> RFC7599
> and could find no reference thereto.  I went back to their references,
> such as RFC4821, RFC2473, RFC1981, RFC6346 ... - no joy.  I had thought
> to suggest a reference was called for but seeing the complete absence of
> any connection, I think that a substantial explanation is called for.
> 

[Med] I completely lost the context why the document ended to have this in. I'm sure Ian has a record about this. 

> Likewise, I note that references to MTU are qualified with IPv4 but
> references to MRU are not; rather, this object
> 'set the maximum IPv6 softwire packet size that can be received ...'
> when
> 'the implementation is unable to calculate the correct IPv4  size  '
> Really?
> 
> 'IPv6 prefix type' or ''IPv6 address type'.
> Well, no It can be
> type  ipv6-prefix or ipv6-address
> 

[Med] Yeah!


> This description of the  ietf-softwire-ce module describes objects that
> are not in the  ietf-softwire-ce module, which confuses me.  Rather they
> are in the ietf-softwire-common module.  I think you need a description
> of the objects in the ietf-softwire-common module first and then moving
> on to the two specific modules.  The sense I get is that while splitting
> into three makes sense, the consequences have not been thought through.

[Med] Not sure which part you are referring to. Can you please explicit your comment? Thank you.

> 
> The descriptions of objects here are (mostly) good, but do not appear in
> the YANG module.  Those in the YANG module are shallow by comparison and
> should be at least as comprehensive as those in the body of the I-D; the
> YANG module has to be able to survive on its own.
> 
> 'The version number is  incremented  '
> Any constraints on the increment?  one, a hundred, a million...?

[Med] This is implementation-specific. As indicated in this example, a timestamp would be sufficient. 

> 
> 4.2
> As with 3.2, the descriptions here of the objects look fine, those in
> the description clauses of the YANG module do not; they are thin by
> comparison.
> 
> 5
> leaf br-ipv6-addr {
>      mandatory true;
>         "The IPv6 address for of the binding BR.";
> This is not quite English.

[Med] Fixed. 


> And since this object is MAP-E only, should it be, can it be, mandatory?

[Med] this is of lw4over6. Hence, the mandatory clause. 

> 
>               leaf id {
>               type uint32;
>               mandatory true;
>               description "Algorithm Instance ID";
> Any constraints on how this 32-bit integer will be used?

[Med] No, there is no constraint defined in existing RFCs. 

> 
> 6
> 
> leaf softwire-num-max {  type uint32;
>              description
>                 "The maximum number of softwires that can be created on
>                 the binding BR.";
> Any restriction on the range of this. Can it be zero?

[Med] No restriction is set because we don't have such recommendation in softwire RFCs. Setting it to zero is equivalent to disabling the instance. 

> 
> / "Enables the generation of ICMPv6 errors messages/
>   "Enables the generation of ICMPv6 error messages/
> 
[Med] Fixed. Thank you. 


>                 leaf icmpv4-rate {
>                 leaf icmpv6-rate {
> Can these validly be zero?  Also, I think that there should be a
> recommended value (the Transport Area are keen on such things)

[Med] We'd love to add a reco here, but absent any authoritative RFC, we are avoiding to add it. 

> 
>             leaf id {
>               type uint32;
>               mandatory true;
>               description "id";
> Not the most helpful of descriptions

[Med] Yes, indeed. 

> 
> 'This must be  initialized when the BR instance is configured'
> Perhaps
> "This must be reset to the current date-and-time when the BR instance is
> configured"
> 

[Med] This is better. 

> 'Notify the client that a specific binding entry has been
> expired/invalid.
> Perhaps
> 'Notify the client that a specific binding entry has expired or is
> invalid.'
> 

[Med] Fixed. 


>       leaf date {
>         type yang:date-and-time;
>         description "Timestamp to the algorithm";
> Not a helpful description IMHO
> 

[Med] Updated the text. 

>     leaf name {
>       type string;
>       description "The name for the instance.";
> ditto; what is the namespace, how is the name used?
> 

[Med] This is used to uniquely distinguish instances by their alias/name.  

> "Embedded Address (EA) bits are the IPv4 EA-bits in the IPv6
>         address identify an IPv4 prefix/address (or part thereof) or
>         a shared IPv4 address (or part thereof) and a port-set
>         identifier.
> This is not quite English

[Med] s/identify/identifying. 

> 
> 8
> The IESG like to see TLS1.3 RFC8446 here

[Med] Done. 

> 
>  I have yet to review the examples, but if my suggestion above result in
> changes, then the examples will change significantly.
> 
> Tom Petch

[Med] Many thanks for the detailed review .




[Index of Archives]     [IETF Annoucements]     [IETF]     [IP Storage]     [Yosemite News]     [Linux SCTP]     [Linux Newbies]     [Mhonarc]     [Fedora Users]

  Powered by Linux