Subject: Re: Message Header w/Version

From: Abdallah Rayhan <[email-masked]>
Date: Fri, 13 Aug 1999 11:48:13 -0400

I think that importance of Version in the header is unrealized yet.
The disadvantage of additional text added to indicate the version
is minimal compared to the advantages gained from its presence.

Version appears in several IETF protocols such as SIP, HTTP, MGCP,...
Today, the practical and implementation experience gained from SIP
and HTTP is more mature than MEGACO.

While we know now what the headers are and how to interpret them, future
versions of MEGACO may decide to change that. Why do we want to introduce
extra complexity by not indicating the version upfront in the message
so we can know how to proceed with interpreting the message.

SIP and HTTP headers say that message version is what is to be used to
decide further processing of the message. Restricting that information in
MEGACO to the service change message deviates from common use of Version
in the header and makes the message interpretation history dependent.
Unforeseening the importance of Version in the header  will introduce
future ambiguities that we can avoid now. Learning from SIP and HTTP
interpretability experience is something that we must not  overlook.

regards
Abdallah Rayhan

Brian Rosen wrote:

> I disagree
>
> It's not much different to look up the version having parsed the mId
> then it is to parse the version.  It's almost certainly faster to
> look it up (you need do a lookup for lots of other contextual state
> information), than to parse it, but the difference is pretty small.
>
> It does make messages longer unnecessarily.
>
> The
>
> > -----Original Message-----
> > From: Nancy-M Greene [mailto:[email-masked]]
> > Sent: Thursday, August 12, 1999 1:34 PM
> > To: [email-masked]
> > Subject: Re: Message Header w/Version
> >
> >
> > The issue is to allow a parser to find out quickly which
> > version tree it
> > should go down to parse the rest of the message. If the
> > protocol version is
> > on every message, then it can decide immediately. If the
> > parser has to parse
> > and understand who the sender of the message is, and then
> > find out which
> > version of the protocol that sender has said in ServiceChange
> > that it will
> > be using, the parser wastes time.
> >
> > This seems to be a good argument for putting the protocol
> > version back on
> > each Megaco message. Note that all commands in a message
> > would be assumed to
> > be of the same version of the protocol.
> >
> > Nancy
> > --------------------------------------------------------------
> > ------------
> > Nancy M. Greene
> > Internet & Service Provider Networks, Nortel Networks
> > T:514-271-7221 (internal:ESN853-1077) E:[email-masked]
> >
> > > ----------
> > > From:         Christopher Ross[SMTP:[email-masked]]
> > > Sent:         Wednesday, August 04, 1999 4:51 PM
> > > To:   [email-masked]
> > > Subject:      Re: Message Header w/Version
> > >
> > > I definitely agree.
> > >
> > > In the first version of MEGACO the space is pretty much
> > wasted, I agree.
> > > In
> > > future versions tho, there would be no way to understand
> > the message if
> > > the new
> > > version was substantially different from the first.  HTTP
> > and SIP (to
> > > mention a
> > > few) place version at the front to allow for future
> > expansion.  I think
> > > that it
> > > would be wise to add it now... while we still can.
> > >
> > > This is a snippet of a real HTTP interaction... just to
> > show how HTTP does
> > > it.
> > > (My typing is in bold, for those with HTML browsers)
> > >
> > > A valid transaction
> > >
> > >      [cross@lotus]> telnet www.yahoo.com 80
> > >      Trying 204.71.200.68...
> > >      Connected to www.yahoo.com.
> > >      Escape character is '^]'.
> > >      GET /index.html HTTP/1.0
> > >
> > >      HTTP/1.0 200 OK
> > >      Content-Length: 9989
> > >      Content-Type: text/html
> > >
> > >      <html><head><title>Yahoo!</title>
> > >
> > > An error transaction...
> > >
> > >      [cross@lotus]> telnet www.yahoo.com 80
> > >      Trying 204.71.200.68...
> > >      Connected to www.yahoo.com.
> > >      Escape character is '^]'.
> > >      GET x.html HTTP/1.0
> > >
> > >      HTTP/1.0 404 Not Found
> > >      Content-Type: text/html
> > >
> > >      <head><title>Yahoo - Document Not Found</title>
> > >
> > > I think that we should follow this method as closely as
> > possible...  (even
> > > for
> > > the status and error messages)  it is clean and extensible.
> > >
> > > -Chris Ross
> > >
> > >
> > > Abdallah Rayhan wrote:
> > >
> > > > I know this has been raised before and there has been alot of
> > > > discussion about ServiceChange. However, I feel that I need
> > > > to raise the Version issue again but not to repeat the discussion
> > > > about ServiceChange.
> > > >
> > > > Version is important for backward compatibility between the
> > > > current version of megaco and future ones. When you parse
> > > > you dont want to be half the way in the message before
> > > > realizing that it is a different version than what you thought.
> > > >
> > >
> >

---

From: Matt Holdrege <[email-masked]>
Date: Fri, 13 Aug 1999 10:57:32 -0700

In either case, we don't need to make the decision now since we are working
on the first version. When we do MEGACOv2, we will have to tackle this problem.