Re: [Insipid] publishing draft-kaplan session-id as historic

Robert Sparks <rjsparks@nostrum.com> Wed, 13 March 2013 21:04 UTC

Return-Path: <rjsparks@nostrum.com>
X-Original-To: insipid@ietfa.amsl.com
Delivered-To: insipid@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 59ED121F870F for <insipid@ietfa.amsl.com>; Wed, 13 Mar 2013 14:04:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -103.6
X-Spam-Level:
X-Spam-Status: No, score=-103.6 tagged_above=-999 required=5 tests=[AWL=1.000, BAYES_00=-2.599, GB_I_LETTER=-2, SPF_PASS=-0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fVjVa8zntWAP for <insipid@ietfa.amsl.com>; Wed, 13 Mar 2013 14:04:47 -0700 (PDT)
Received: from shaman.nostrum.com (nostrum-pt.tunnel.tserv2.fmt.ipv6.he.net [IPv6:2001:470:1f03:267::2]) by ietfa.amsl.com (Postfix) with ESMTP id 4F05421F8706 for <insipid@ietf.org>; Wed, 13 Mar 2013 14:04:47 -0700 (PDT)
Received: from dhcp-5232.meeting.ietf.org (dhcp-5232.meeting.ietf.org [130.129.82.50]) (authenticated bits=0) by shaman.nostrum.com (8.14.3/8.14.3) with ESMTP id r2DL4k8X075390 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO) for <insipid@ietf.org>; Wed, 13 Mar 2013 16:04:46 -0500 (CDT) (envelope-from rjsparks@nostrum.com)
Message-ID: <5140E9ED.5060206@nostrum.com>
Date: Wed, 13 Mar 2013 17:04:45 -0400
From: Robert Sparks <rjsparks@nostrum.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20130216 Thunderbird/17.0.3
MIME-Version: 1.0
To: insipid@ietf.org
References: <7F2072F1E0DE894DA4B517B93C6A05853408683664@ESESSCMS0356.eemea.ericsson.se> <EEDB748C-2DAC-4B8A-BB94-6D6DE37CEB1C@acmepacket.com> <A4783B9E-AEED-454A-8530-6E5C3BEAC047@acmepacket.com>
In-Reply-To: <A4783B9E-AEED-454A-8530-6E5C3BEAC047@acmepacket.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Received-SPF: pass (shaman.nostrum.com: 130.129.82.50 is authenticated by a trusted mechanism)
Subject: Re: [Insipid] publishing draft-kaplan session-id as historic
X-BeenThere: insipid@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: SIP Session-ID discussion list <insipid.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/insipid>, <mailto:insipid-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/insipid>
List-Post: <mailto:insipid@ietf.org>
List-Help: <mailto:insipid-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/insipid>, <mailto:insipid-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 13 Mar 2013 21:04:48 -0000

On 3/13/13 4:36 PM, Hadriel Kaplan wrote:
>  From today's meeting action I took... below was the email.
> The difference between draft-kaplan-dispatch-session-id-03 and 02 can be seen here:
>
> http://tools.ietf.org/rfcdiff?url2=draft-kaplan-dispatch-session-id-03.txt
>
> It did not change the ABNF nor protocol rules.  Therefore I propose to submit 03 as independent submission to the RFC Editor, for 'Historic' status.  Or 'Epic' status if they have that. :)
It wouldn't be -03 as is - there needs to be an editing pass explaining 
this document's this is a proprietary something that may be in the wild. 
The text should be touched to make it an exposition (This is what you 
would have seen) vs a specification (this is what you should do).

RjS

>
> -hadriel
>
>
> On Aug 17, 2012, at 1:47 PM, Hadriel Kaplan <HKaplan@acmepacket.com> wrote:
>
>> When we talked about this in Vancouver I was thinking there wouldn't be any problem going to/from UUID syntax, because going to/from UUIDs in H.323 was talked about a long, long time ago for session-id.  But I forgot about the bug in the draft-kaplan ABNF...
>>
>> Since version 01 of draft-kaplan-sip-session-id in 2008, which later became draft-kaplan-dispatch-session-id, the rules for generating the session-id always made it lower-case *hex* characters.  I.e., the g-z range wasn't actually possible.  The ABNF for it didn't get fixed until draft-kaplan-dispatch-session-id-01 in April 2010, but that also dropped it to 16 characters of hex because the algorithm changed, and then 3 months later reverted back to 32 characters and the correct ABNF.
>>
>> So that begs the question of *which* version of draft-kaplan we want to be backwards compatible with.  Since draft-kaplan-dispatch-session-id-01 only existed for 3 months, I think we can ignore that one.  And since everything else only used hex characters, except the initial 00-draft which itself only existed for 4 months, I think we can ignore that one too.
>>
>> Therefore, as far as I can tell we shouldn't have a problem converting draft-kaplan session-ids to/from UUIDs for H.323/whatever.
>>
>> -hadriel
>>
>>
>> On Aug 14, 2012, at 4:27 PM, Christer Holmberg wrote:
>>
>>> Hi,
>>>
>>> In Vancouver, I expressed a wish to make the INSIPID mechanism backward compatible with the draft-kaplan-session-id one, the reason being that it has been around for a relatively long time, and has been implemented and deployed.
>>>
>>> I compared the suggested draft-jones solution with the draft-kaplan solution, and I think there are ways to achieve backward compability.
>>>
>>>
>>> --------------
>>>
>>>
>>> FIRST, looking purely at the ABNF syntax:
>>>
>>> The jones ABNF is:
>>>
>>>
>>> Session-ID-UUID = "Session-ID-UUID" HCOLON UUID
>>>
>>>
>>>
>>> The kaplan ABNF is:
>>>
>>>
>>>
>>> Session-ID           =  "Session-ID" HCOLON sess-id
>>>
>>>                           *( SEMI generic-param )
>>>
>>> sess-id              =  32(DIGIT / %x61-7A)  ; 32 chars of [0-9a-z]
>>>
>>>
>>>
>>>
>>>
>>> Now, assuming 32 chars is enough to carry ONE UUID, jones applications could put the SECOND UUID in a header field parameter (generic-param), rather than combining it with the received UUID.
>>>
>>>
>>>
>>> Of course, the first UUDI (carried in sess-id) can only contains characters 0-9 and a-z.
>>>
>>>
>>>
>>> A UUID can contain characters 0-9 and a-f and A-F.
>>>
>>>
>>>
>>> So, a jones entity would have to be prepared to receive g-z.
>>>
>>>
>>>
>>> And, as kaplan entity is not prepared to receive capital A-F, a jones entity would have to only use small letters. But, that should not be a problem, afaik, as they have the same meaning as far as UUID is concerned.
>>>
>>>
>>>
>>> --------------
>>>
>>>
>>>
>>> SECOND, looking at it would work functionwise:
>>>
>>>
>>>
>>> There are two main alternatives:
>>>
>>>
>>>
>>>
>>>
>>> 1. Second UUID is added even when one entity is kaplan compliant
>>>
>>> 2. Second UUID is not added when one entity is kaplan compliant
>>>
>>>
>>>
>>>
>>>
>>> Alternative 1:
>>>
>>>
>>>
>>> When a kaplan entity inserts the first UUID (I use that as a general term, eventhough a kaplan entity does not use UUIDs), one must assume that it is prepared to receive a response from a jones entity which has added the second UUID into the header field parameter.
>>>
>>>
>>>
>>> When a jones entity inserts the first UUID, one must assume that it is prepared to receive a response from a kaplan entity where the second UUID has *not* been added.
>>>
>>>
>>>
>>>
>>>
>>> Alternative 2:
>>>
>>>
>>>
>>> When a kaplan entity inserts the first UUID, the jones entity detects (using some identify-a-kaplan-entity mechanism) that it comes from a kaplan entity, so it does not insert a seoncd UUID in the first place.
>>>
>>>
>>>
>>> As in alternative 1, when a jones entity inserts the first UUID, it has to be prepared to receive a response where the second UUID has not been added (the identify-a-kaplan-entity mechanism might also inform the jones entity that the response comes from a kaplan entity.
>>>
>>>
>>>
>>>
>>>
>>> --------------
>>>
>>>
>>>
>>> Now, there will of course be cases, where two UUIDs are required, that won't work. But, kaplan entities would be able to use the session-id for whatever they've used it so far.
>>>
>>>
>>>
>>>
>>>
>>> Regards,
>>>
>>>
>>>
>>> Christer
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> insipid mailing list
>>> insipid@ietf.org
>>> https://www.ietf.org/mailman/listinfo/insipid
>> _______________________________________________
>> insipid mailing list
>> insipid@ietf.org
>> https://www.ietf.org/mailman/listinfo/insipid
> _______________________________________________
> insipid mailing list
> insipid@ietf.org
> https://www.ietf.org/mailman/listinfo/insipid