RE: [Speechsc] message-length clarification
Brett Gavagni <gavagni@us.ibm.com> Fri, 14 April 2006 17:23 UTC
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1FUS15-0006Px-PG; Fri, 14 Apr 2006 13:23:31 -0400
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1FUS14-0006Ps-Gx for speechsc@ietf.org; Fri, 14 Apr 2006 13:23:30 -0400
Received: from e36.co.us.ibm.com ([32.97.110.154]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1FUS13-0000bM-Qq for speechsc@ietf.org; Fri, 14 Apr 2006 13:23:30 -0400
Received: from westrelay02.boulder.ibm.com (westrelay02.boulder.ibm.com [9.17.195.11]) by e36.co.us.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id k3EHNTxp026560 for <speechsc@ietf.org>; Fri, 14 Apr 2006 13:23:29 -0400
Received: from d03av04.boulder.ibm.com (d03av04.boulder.ibm.com [9.17.195.170]) by westrelay02.boulder.ibm.com (8.12.10/NCO/VER6.8) with ESMTP id k3EHJuIO241950 for <speechsc@ietf.org>; Fri, 14 Apr 2006 11:19:56 -0600
Received: from d03av04.boulder.ibm.com (loopback [127.0.0.1]) by d03av04.boulder.ibm.com (8.12.11/8.13.3) with ESMTP id k3EHNSil017280 for <speechsc@ietf.org>; Fri, 14 Apr 2006 11:23:28 -0600
Received: from d03nm119.boulder.ibm.com (d03nm119.boulder.ibm.com [9.17.195.145]) by d03av04.boulder.ibm.com (8.12.11/8.12.11) with ESMTP id k3EHNS7j017275; Fri, 14 Apr 2006 11:23:28 -0600
In-Reply-To: <03772D1EC8DE624A863058C75874A75CE40654@vtg-um-e2k6.sj21ad.cisco.com>
To: "Shanmugham, Saravanan" <sarvi@cisco.com>
Subject: RE: [Speechsc] message-length clarification
MIME-Version: 1.0
X-Mailer: Lotus Notes Release 7.0 HF85 November 04, 2005
Message-ID: <OF3669A2E1.588412D2-ON87257150.005849BA-85257150.005F8797@us.ibm.com>
From: Brett Gavagni <gavagni@us.ibm.com>
Date: Fri, 14 Apr 2006 13:26:36 -0400
X-MIMETrack: Serialize by Router on D03NM119/03/M/IBM(Release 6.53HF654 | July 22, 2005) at 04/14/2006 11:26:37, Serialize complete at 04/14/2006 11:26:37
Content-Type: text/plain; charset="US-ASCII"
X-Spam-Score: 0.0 (/)
X-Scan-Signature: c8611c7316981838cbe4195d07ac7fdb
Cc: speechsc@ietf.org, Dave Burke <david.burke@voxpilot.com>
X-BeenThere: speechsc@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Speech Services Control Working Group <speechsc.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/speechsc>, <mailto:speechsc-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:speechsc@ietf.org>
List-Help: <mailto:speechsc-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/speechsc>, <mailto:speechsc-request@ietf.org?subject=subscribe>
Errors-To: speechsc-bounces@ietf.org
Sarvi, As requested, we've identified at least one inefficient and redundant impact w.r.t message-length wording in the current draft (+1 byte calculation scenario). I've received confirmation that the examples are incorrect w.r.t current message-length definition, and a "too late to make changes" response. I thought that I remembered reading from the mailing list that we were expecting at least one more draft to be published before getting to the RFC editor queue, and so why would we (as a community) not want to correct any identified problematic issues in advance? Thanks, Brett Gavagni WebSphere Voice Server Development http://www-306.ibm.com/software/pervasive/voice_server/ gavagni@us.ibm.com "Shanmugham, Saravanan" <sarvi@cisco.com> 04/14/2006 10:15 AM To "Carter, Jerry" <jerry.carter@nuance.com>, "Dave Burke" <david.burke@voxpilot.com> cc speechsc@ietf.org Subject RE: [Speechsc] message-length clarification Jerry, I don't think the argument ever was that it was broken when we got here. We got to the current header format after some long deliberation on the best format for the parser and after weighing the cost difference for the encoder in putting the length field where it is. The cost difference for the encoder was found to be none or negligible compared to where it is in HTTP/SIP while the advantage for the decoder was found to be significant. The additional cost for the encoder is a decision of whether to adjust the length by 1. And hence the current choice. Have I missed something here. I haven't heard an argument more significant than, its different from SIP/HTTP so far. Sarvi -----Original Message----- From: Carter, Jerry [mailto:jerry.carter@nuance.com] Sent: Thursday, April 13, 2006 6:13 PM To: Dave Burke Cc: speechsc@ietf.org Subject: RE: [Speechsc] message-length clarification Quite right. The unanswered question whether there is any real utility to having this information in the start-line. I haven't heard any. Certainly HTTP and SIP seem to do quite fine without it. I tend to agree with Brett that removing the length would not hurt the specification in any way. As for the "it was broken when we got here so we can't fix it" argument for the status quo, I don't find that very compelling. -=- Jerry > -----Original Message----- > From: Dave Burke [mailto:david.burke@voxpilot.com] > Sent: Thursday, April 13, 2006 7:39 PM > To: Shanmugham, Saravanan; Brett Gavagni > Cc: speechsc@ietf.org > Subject: Re: [Speechsc] message-length clarification > > Just wanted to insert one point that I haven't seen mentioned: The > message-length makes it easier to decode but not encode. > > This is because the message-length also includes the number of bytes > that specify the message-length in the header. The algorithm for > determining the message-length has to add up all the bytes in the > message to get a total > (label: N), then determine the number of bytes to represent N (label: > M), then check if the total N+M rolls over a power of 10 (if it does > you need another byte). The value to insert for the message-length is > not simply > N+M > but rather > > (N >= (10^M-M)) ? N+M+1 : N+M > > For example, if N=97 then M=2 and N+M=99=message-length. However, if > N=98 then M=2 but now N+M=100 => message-length=N+M+1 > > Sorta awkward - no? > > Dave > > > > > > ----- Original Message ----- > From: "Brett Gavagni" <gavagni@us.ibm.com> > To: "Shanmugham, Saravanan" <sarvi@cisco.com> > Cc: <speechsc@ietf.org> > Sent: Thursday, April 13, 2006 1:52 PM > Subject: RE: [Speechsc] message-length clarification > > > Hi Sarvi, > > I realize that it may be late in the game for addressing problems in > the specification, but I would evangelize that its cheaper to pay now > (potential standardization delays) than to pay later (poor adoption) > due to convolution and problematic issues in the spec. > > Since the session control for MRCPv2 is separated (a la SIP, RTSP, > etc..) and not tunnelled, what would be the compelling reason that the > message-length token exist in the start-line especially since the > "Content-Length" header? > > I'm now proposing the removal of the message-length token from the > start-line in entirety, as it is at least redundant and deviating from > the HTTP-like conventions leveraged throughout the spec. > > Thanks, > > Brett Gavagni > WebSphere Voice Server Development > http://www-306.ibm.com/software/pervasive/voice_server/ > gavagni@us.ibm.com > > > > > "Shanmugham, Saravanan" <sarvi@cisco.com> > 04/13/2006 04:21 PM > > To > Brett Gavagni/West Palm Beach/IBM@IBMUS cc <speechsc@ietf.org> Subject > RE: [Speechsc] message-length clarification > > > > > > > Hi Bret, > We are at a stage in the spec development, where we would like to > restrict changes to clarifications and significant issues that would > impede implementation or usage of the protocol > > 1. The point that the message length in the examples are not accurate, > is true. But that will be true irrrespective of whether the length > field includes the header or not. That is because, they were never > accurately calculated in the first place. And this has been discussed > before and I do't think there is any plan to fix this. > > 2. On the topic of message length inlcuding or excluding the header > line, I have not heard a strong enough argument to warant a change in > the document this late in the specification. > > 3. Same thing with the position of Version number in the header line. > > So unless I hear very strong objections to the above conclusions on > this issues from more folks, I would like to leave the deinfition of > the headers as is, with may be clarification that the message length > in the examples should not be assumed to be accurate. > > Thanks, > Sarvi > > > -----Original Message----- > From: Brett Gavagni [mailto:gavagni@us.ibm.com] > Sent: Thursday, April 13, 2006 12:39 PM > To: Shanmugham, Saravanan > Cc: speechsc@ietf.org > Subject: RE: [Speechsc] message-length clarification > > My comments in-line. > > Thanks, > > Brett Gavagni > WebSphere Voice Server Development > http://www-306.ibm.com/software/pervasive/voice_server/ > (561) 862-2097 T/L (975) > gavagni@us.ibm.com > > > > > "Shanmugham, Saravanan" <sarvi@cisco.com> > 04/13/2006 02:25 PM > > To > Brett Gavagni/West Palm Beach/IBM@IBMUS > cc > <speechsc@ietf.org> > Subject > RE: [Speechsc] message-length clarification > > > > > > > See inline. > > -----Original Message----- > From: Brett Gavagni [mailto:gavagni@us.ibm.com] > Sent: Thursday, April 13, 2006 10:52 AM > To: Shanmugham, Saravanan > Cc: speechsc@ietf.org > Subject: RE: [Speechsc] message-length clarification > > Yes, there are efficiency issues with the way that the > message-length is defined today in MRCPv2. > > An example is when a server needs to send a message to the > client. The server would need to calculate the size of the > MRCP message, and then modify the start-line > message-length token. > > Sarvi>> I don't see the issue here. You need calculate the message > length and put in the header whether the length includes > the header-line or not. I am not convinced this is > significant enough o warrant a change this alte in the spec. > > Brett>> Agree that the server will always need to calculate the > message-length. > I'm arguing that the current wording in draft-9 w.r.t. > message-length shouldn't include the size of the > start-line. As I indicated in earlier in this thread, > there are multiple examples throughout draft-9 which do > NOT reflect the wording that the start-line should be > included in the message-length. > > Neither one of the examples below have a message-length > token value in the > > start-line that reflects the wording requiring the size of > the start-line length in the message-length. The client > message is >124 including the start_line, and server > message is >47 including the start-line. > > 6.1.1. SET-PARAMS > > C->S: MRCP/2.0 124 SET-PARAMS 543256 > Channel-Identifier:32AECB23433802@speechsynth > Voice-gender:female > Voice-variant:3 > > S->C: MRCP/2.0 47 543256 200 COMPLETE > Channel-Identifier:32AECB23433802@speechsynth > > I don't think that the examples are incorrect, but rather > the wording in the draft is counter productive. > > Sarvi>> Also the length field was added earlier and at a specific > location after the version information, so as to make the > parsing of the message efficient. This way the moment the > parse reads the first 2 tokens, it has the MRCP version > number and the message to look forward to allowing for an > efficient parser implementation. Which was one the reasons > we went for the current definition of the header line. > > > Is there any compelling reason why the message-length > should include the length of the start-line? > > I would also be curious as for the reasoning related to > the general deviation in the request-line and event-line > start-line definition from MRCPv1. The MRCPv1 ABNF syntax > was similar to what is defined for SIP and HTTP 1.1 w.r.t. > to token order. > > Why does the MCRPv2 request-line and the event-line > start-line have mrcp-version for the first token (which is > what I would expect for the status-line)? > Sarvi>> The reason for having version and length > information earlier on > is described above. > > Brett>> IMO, deviating from HTTP-like similarities will hinder NOT > Brett>> enhance > > interoperability. For example, MRCPv2 could've been > defined in ASN.1 if HTTP-like similarities weren't a > beneficial proponent for MRCPv2 embracement/adoption. =) > > Thx, > Sarvi > > MRCPv2 > start-line = request-line / status-line / > event-line > > request-line = mrcp-version SP message-length SP > method-name SP > request-id CRLF > > event-line = mrcp-version SP message-length SP > event-name SP > request-id SP request-state CRLF > > The following protocols are very similar syntactically > w.r.t. the request-line start-line. > > RFC 2616 - HTTP 1.1 > Request-Line = Method SP Request-URI SP HTTP-Version CRLF > > RFC 3261 - SIP 2.0 > Request-Line = Method SP Request-URI SP SIP-Version CRLF > > mrcp-07 - MRCPv1 > request-line = method-name SP request-id SP > mrcp-version CRLF > > event-line = event-name SP request-id SP > request-state SP > mrcp-version CRLF > > Thanks, > > Brett Gavagni > WebSphere Voice Server Development > http://www-306.ibm.com/software/pervasive/voice_server/ > gavagni@us.ibm.com > > > > > "Shanmugham, Saravanan" <sarvi@cisco.com> > 04/13/2006 12:59 PM > > To > Brett Gavagni/West Palm Beach/IBM@IBMUS, > <speechsc@ietf.org> cc > > Subject > RE: [Speechsc] message-length clarification > > > > > > > Do you see any specific implementation or efficiency issue > with the way it is defined today. > > > Sarvi > > -----Original Message----- > From: Brett Gavagni [mailto:gavagni@us.ibm.com] > Sent: Thursday, April 13, 2006 8:21 AM > To: speechsc@ietf.org > Subject: [Speechsc] message-length clarification > > What is the reasoning for including the length of the > start-line in the message-length value? > > Seems a bit inconsistent with other textual based > protocols including: SIP 2.0, HTTP 1.1, or even MRCPv1. > > 5.1. Common Protocol Elements > > The message-length field specifies the length of > the message, > including the start-line, and MUST be the 2nd > token from the > beginning of the message. This is to make > the framing > and parsing of > the message simpler to do. This field specifies the > length of the > message including data that may be encoded into > the body of the > message. > > > 5.2. Request > The message-length field specifies the length of > the message, > including the start-line. > > > 5.3. Response > The message-length field specifies the length of > the message, > including the start-line. > > I hope that this is just a wording problem as > even some of > the examples don't have an accurate message-length value > w.r.t draft-9 wording. > > Shanmugham & Burnett Expires June 10, 2006 > [Page 99] > > Internet-Draft MRCPv2 > December 2005 > > > S->C:MRCP/2.0 69 543259 200 COMPLETE > Channel-Identifier:32AECB23433801@speechrecog > Completion-Cause:000 success > > Propose to modify the wording that > message-length does NOT > include the start-line as an issue to track for the > next draft. > > Thanks, > > Brett Gavagni > WebSphere Voice Server Development > http://www-306.ibm.com/software/pervasive/voice_server/ > gavagni@us.ibm.com > > > _______________________________________________ > Speechsc mailing list > Speechsc@ietf.org > https://www1.ietf.org/mailman/listinfo/speechsc > > > > > > > _______________________________________________ > Speechsc mailing list > Speechsc@ietf.org > https://www1.ietf.org/mailman/listinfo/speechsc > > > _______________________________________________ > Speechsc mailing list > Speechsc@ietf.org > https://www1.ietf.org/mailman/listinfo/speechsc _______________________________________________ Speechsc mailing list Speechsc@ietf.org https://www1.ietf.org/mailman/listinfo/speechsc _______________________________________________ Speechsc mailing list Speechsc@ietf.org https://www1.ietf.org/mailman/listinfo/speechsc _______________________________________________ Speechsc mailing list Speechsc@ietf.org https://www1.ietf.org/mailman/listinfo/speechsc
- [Speechsc] message-length clarification Brett Gavagni
- RE: [Speechsc] message-length clarification Carter, Jerry
- RE: [Speechsc] message-length clarification Brett Gavagni
- RE: [Speechsc] message-length clarification Shanmugham, Saravanan
- RE: [Speechsc] message-length clarification Brett Gavagni
- RE: [Speechsc] message-length clarification Shanmugham, Saravanan
- RE: [Speechsc] message-length clarification Brett Gavagni
- RE: [Speechsc] message-length clarification Shanmugham, Saravanan
- RE: [Speechsc] message-length clarification Brett Gavagni
- Re: [Speechsc] message-length clarification Dave Burke
- RE: [Speechsc] message-length clarification Carter, Jerry
- Re: [Speechsc] message-length clarification Pete Cordell
- RE: [Speechsc] message-length clarification Bergallo Patrizio
- RE: [Speechsc] message-length clarification Shanmugham, Saravanan
- RE: [Speechsc] message-length clarification Brett Gavagni
- RE: [Speechsc] message-length clarification Shanmugham, Saravanan
- RE: [Speechsc] message-length clarification Brett Gavagni
- Re: [Speechsc] message-length clarification Corby Anderson
- Re: [Speechsc] message-length clarification Brett Gavagni
- Re: [Speechsc] message-length clarification Dave Burke
- RE: [Speechsc] message-length clarification Burger, Eric
- RE: [Speechsc] message-length clarification Brett Gavagni
- RE: [Speechsc] message-length clarification Carter, Jerry
- RE: [Speechsc] message-length clarification Reifenrath, Klaus, VF-Group
- Re: [Speechsc] message-length clarification Dan Burnett