Subject: [Gen-art] Gen-ART review of draft-kaplan-insipid-session-id-03.txt

From: "Romascanu, Dan (Dan)" <[email-masked]>
Date: Wed, 21 Aug 2013 17:26:28 +0000

I am the assigned Gen-ART reviewer for this draft. For background on Gen-ART, please see the FAQ at

<http://wiki.tools.ietf.org/area/gen/trac/wiki/GenArtfaq>.

Please resolve these comments along with any other Last Call comments you may receive.

Document: draft-kaplan-insipid-session-id-03.txt
Reviewer: Dan Romascanu
Review Date: 8/21
IETF LC End Date: 8/30
IESG Telechat date: 

Summary:
Ready with Issues

Major issues:

1. In similar situations when IETF WGs decided to document proprietary solutions that were used as a basis for standards-track RFCs Historic RFCs were issued rather than Informational RFCs. See for example RFC 5412, 5413, 5414 which documented the prior art that was used to create RFC 5415. Publication of these documents was also withhold until the standards-track RFC was published. None of these precedents is followed here. One of the reasons for the WG to prefer Informational rather than Historic is the fact that the registration of a new SIP header field is required from IANA, and in conformance with RFC 5727 this can be done in an Informational RFC, but not in a Historic one. What is missing however is clear text that the solution described in this document is a legacy solution and that the solution going forward is the one that is being defined by the INSIPID WG. The IESG should also consider whether this document should be approved for publication before the standards-track solution defined by the INSIPID WG is also published.

2. The Abstract makes the claim that the Standards-Track RFC that will be eventually produced by the INSIPID WG will be developped in a backwards-compatible manner with this document. This does not seem appropriate here - if at all such a requirement should be included in draft-ietf-insipid-session-id-reqts-08.txt. However it does not appear there, and that document was recently submitted for publication to the IESG, so the WG did not include it in its consensus. 

Minor issues:

1. The IANA considerations sections need to be more explicit in demonstrating that the conditions for registration of extension SIP header fields in Informational RFCs have been met as per RFC 5727. That RFC defines that Designated Expert review needs to happen for such new registrations - I could not find a proof that such a review took place in the shepherd write-up. Actually the question about the expert reviews is not answered directly, instead of an answer wide deployment is mentioned, but that deployment could not use this SIP header field which was not yet approved. According to RFC 5727 there are two basic conditions that need to be verified by the Designated Expert - that the proposed header field must be of a purely informational nature and must not significantly change the behavior of SIP entities that support it, and that the proposed header field must not undermine SIP security in any sense, and that the Informational RFC defining the header field must address security issues in detail, as if it were a standards-track document. I believe that both conditions are met by the I-D, but there is no adequate text in the IANA considerations section to explain this. 

Nits/editorial comments:

Regards,

Dan

---

From: Robert Sparks <[email-masked]>
Date: Thu, 22 Aug 2013 12:08:26 -0500

Adding the working group.

Dan - thanks for this review. I've been working towards trying to 
express a concern, and this really helped clarify what was bothering me.

This document, AFAIK, _is not_ actually trying to register the 
Session-ID header with IANA, even though there is a section that looks 
like it does.

Rather, that registration is in 
http://datatracker.ietf.org/doc/draft-ietf-insipid-session-id/

That is a very good example of how just adding the explanatory paragraph 
at the beginning of the document isn't enough to turn this into 
something that documents an earlier path considered and implementation 
that exists current deployments - the text needs to be touched in 
several places to make it clear that's what the document is doing.  In 
the IANA considerations case, one possible adjustment is to change the 
text to "here's what known implementations have used for syntax. See 
[draft-ietf-insipid-session-id] for the intended registered syntax", and 
not issue instructions to IANA.

It's more work for Hadriel, but I think it's necessary.

RjS

On 8/21/13 12:26 PM, Romascanu, Dan (Dan) wrote:
> 1. In similar situations when IETF WGs decided to document proprietary solutions that were used as a basis for standards-track RFCs Historic RFCs were issued rather than Informational RFCs. See for example RFC 5412, 5413, 5414 which documented the prior art that was used to create RFC 5415. Publication of these documents was also withhold until the standards-track RFC was published. None of these precedents is followed here. One of the reasons for the WG to prefer Informational rather than Historic is the fact that the registration of a new SIP header field is required from IANA, and in conformance with RFC 5727 this can be done in an Informational RFC, but not in a Historic one. What is missing however is clear text that the solution described in this document is a legacy solution and that the solution going forward is the one that is being defined by the INSIPID WG. The IESG should also consider whether this document should be approved for publication before the standards-t
>   rack solution defined by the INSIPID WG is also published.
>
> 1. The IANA considerations sections need to be more explicit in demonstrating that the conditions for registration of extension SIP header fields in Informational RFCs have been met as per RFC 5727. That RFC defines that Designated Expert review needs to happen for such new registrations - I could not find a proof that such a review took place in the shepherd write-up. Actually the question about the expert reviews is not answered directly, instead of an answer wide deployment is mentioned, but that deployment could not use this SIP header field which was not yet approved. According to RFC 5727 there are two basic conditions that need to be verified by the Designated Expert - that the proposed header field must be of a purely informational nature and must not significantly change the behavior of SIP entities that support it, and that the proposed header field must not undermine SIP security in any sense, and that the Informational RFC defining the header field must address se
>   curity issues in detail, as if it were a standards-track document. I believe that both conditions are met by the I-D, but there is no adequate text in the IANA considerations section to explain this.
>
> Nits/editorial comments:
>
>
> Regards,
>
> Dan
>
>
> _______________________________________________
> Gen-art mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/gen-art

---

From: Gonzalo Salgueiro <[email-masked]>
Date: Thu, 22 Aug 2013 13:30:43 -0400

On Aug 22, 2013, at 1:08 PM, Robert Sparks <[email-masked]>
 wrote:

> Dan - thanks for this review. I've been working towards trying to express a concern, and this really helped clarify what was bothering me.
> 
> This document, AFAIK, _is not_ actually trying to register the Session-ID header with IANA, even though there is a section that looks like it does.
> 
> Rather, that registration is in http://datatracker.ietf.org/doc/draft-ietf-insipid-session-id/
> 
> That is a very good example of how just adding the explanatory paragraph at the beginning of the document isn't enough to turn this into something that documents an earlier path considered and implementation that exists current deployments - the text needs to be touched in several places to make it clear that's what the document is doing.  In the IANA considerations case, one possible adjustment is to change the text to "here's what known implementations have used for syntax. See [draft-ietf-insipid-session-id] for the intended registered syntax", and not issue instructions to IANA.

During the shepherd write-up I made a similar same comment.  I think the right thing to do is to write explanatory text detailing that this document is in fact not registering anything because all relevant IANA registrations are deferred to the active WG document defining the new session id (draft-ietf-insipid-session-id).  It should also explain that documeny has the responsibility to assure backwards compatibility with this document.

--G

> insipid mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/insipid
>

---

From: Hadriel Kaplan <[email-masked]>
Date: Thu, 22 Aug 2013 15:16:34 -0400

Actually I consciously left the IANA section as registering the header, and it was not an oversight.

For background: I did not submit the draft as Informational originally in version-00 - I submitted it as Historic, and was asked by the shepherding AD to change it to Informational later, based on IESG feedback (I think; I could be wrong about it being from IESG feedback).

Once it became Informational, we (myself, the AD, and the WG chairs) did actually discuss whether it would register the header in IANA or not.  My understanding was that this Informational draft *would* in fact register the new header in IANA.  Technically there's nothing wrong with that, afaik, other than I do need to get Designated Expert review as Dan correctly pointed out.

We discussed that once the WG draft-ietf-insipid-session-id is published, it would then update IANA's entry for the header to point to the new WG RFC.  Whether the WG draft-ietf-insipid-session-id text needs to change to make that clear or not, or change to extend the already-registered header or not, etc., is of course also still change-able.

If the WG draft-ietf-insipid-session-id fundamentally changes the 'Session-ID' header from what it is in draft-kaplan-insipid-session-id, in a non-backwards-compatible fashion, then it won't have met the agreement reached in IETF 85 for adopting draft-jones-insipid-session-id-0 as the new WG document solution.  If we decide that's ok, then I think it actually needs to register a new header name regardless.  We know 'Session-ID' is already in-use in the wild, and there are plenty of more strings available for header names.

-hadriel

---

From: Robert Sparks <[email-masked]>
Date: Thu, 22 Aug 2013 15:11:18 -0500

> If the WG draft-ietf-insipid-session-id fundamentally changes the 'Session-ID' header from what it is in draft-kaplan-insipid-session-id, in a non-backwards-compatible fashion, then it won't have m…
As you note, and as RFC5727 allows, we _can_ register a header with an 
Informational RFC, as long as it meets the two restrictions in that 
document.
(And I believe this one does). I also think the IESG could be convinced 
that a Historic RFC would meet those requirements, and I don't think it 
was the intent to exclude them when RFC5727 was put together.

I, obviously, expected that since there _was_ a standards effort around 
this concept, and an expectation that it would use the same name in a 
backwards compatible way, that the standards track document would do the 
registration, and there would be some relationship like the one Dan 
points to in order to tie in this document.

I don't really care if we thread the registration differently, as long 
as we leave a _very_ clear record of what's happening since there is 
standards activity here. I don't think we have that in the current document.

But my _main_ concern is that this still reads like a PS, and I would 
rather we take the time to change the language to be clear it's 
documenting a current situation rather than providing instructions to 
new implementers.

RjS