Subject: Re: Piggyback

From: Brian Rosen <[email-masked]>
Date: Thu, 19 Aug 1999 11:00:59 -0400

Woops, three flops on the same issue.

When I looked at the ABNF I thought I saw multiple
transactions per message.  Actually, it's:
message = MegacopToken LWSP mId LWSP
                  1*(transactionRequest / transactionAccept /
                     transactionReject / errorMessage)

That pesky "1*" means only one.

Well, we either rewrite the rule to allow more than one,
or put back the piggyback text.

Brian
> -----Original Message-----
> From: Flemming Andreasen [mailto:[email-masked]]
> Sent: Thursday, August 19, 1999 10:37 AM
> To: Brian Rosen
> Subject: Re: Piggyback
>
>
>
>
> Brian
>
> I believe you were right. I thought that you could only have
> one transaction
> (request, reject or response) per message - right ?
>
> In that case, piggy-backing allows you to achieve
> fate-sharing between requests
> and responses sent in a single UDP datagram. This is a very
> useful feature in
> some circumstances.
>
>
> Regards
>
>           Flemming
>
>
>
>
>
>
> Brian Rosen <[email-masked]> on 08/19/99 10:13:27 AM
>
> Please respond to Brian Rosen <[email-masked]>
>
> To:   [email-masked]
> cc:    (bcc: Flemming Andreasen/Bellcore)
> Subject:  Re: Piggyback
>
>
>
>
> You know, I first decided you were right, then decided it
> would be better to decide how to pack messages into packets
> AFTER the MD-5 in an AH header, and then got back to if you
> have real IPSec, you can't do that.
>
> So I believe you are correct; you pack transactions into
> messages, and don't
> need to worry about packing multiple
> messages into packets.
>
> Sorry for the confusion; the piggyback text should stay out.
> I wonder if a few words in the text to that effect is
> appropriate.
>
> Brian
> > -----Original Message-----
> > From: Tom-PT Taylor [mailto:[email-masked]]
> > Sent: Thursday, August 19, 1999 9:51 AM
> > To: Brian Rosen
> > Subject: RE: Piggyback
> >
> >
> > Do you really need it, given the fact that you can stick multiple
> > transactions into the same message?
> >
> > > -----Original Message-----
> > > From:       Brian Rosen [SMTP:[email-masked]]
> > > Sent:       Thursday, August 19, 1999 9:48 AM
> > > To: [email-masked]
> > > Subject:    Piggyback
> > >
> > > In the thread on Transport layer, the issue of piggyback
> > > was raised.
> > >
> > > >and the deletion of the Piggybacking section that seemed to be
> > > >MGCP-specific and not applicable to megaco.
> > >
> > > Piggybacking simply allows multiple MEGACO messages in one
> > > UDP packet.  This is a desirable feature, and certainly
> > > not MGCP specific.  Why would we not want to allow multiple
> > > transactions in a packet?
> > >
> > > Brian
> >
>
>
>
>
>
>

---

From: Christopher Ross <[email-masked]>
Date: Thu, 19 Aug 1999 10:59:51 -0400

Actually Brian you were correct before.  "1*" defines at least one.

-Chris

<SNIP>

RFC 2234             ABNF for Syntax Specifications        November 1997

3.6  Variable Repetition                                *Rule

   The operator "*" preceding an element indicates repetition. The full
   form is:

        <a>*<b>element

   where <a> and <b> are optional decimal values, indicating at least
   <a> and at most <b> occurrences of element.

   Default values are 0 and infinity so that *<element> allows any
   number, including zero; 1*<element> requires at  least  one;
   3*3<element> allows exactly 3 and 1*2<element> allows one or two.

3.7  Specific Repetition                                  nRule

   A rule of the form:

        <n>element

   is equivalent to

        <n>*<n>element

   That is, exactly  <N>  occurrences  of <element>. Thus 2DIGIT is a
   2-digit number, and 3ALPHA is a string of three alphabetic
   characters.
</SNIP>

--
christopher a. ross
software engineer
dynamicsoft, llc
200 executive drive
suite 120
west orange, nj  07052

web:    http://www.dynamicsoft.com
mailto: [email-masked]
sms:    [email-masked]
t:      +1 732.741.7244
f:      +1 732.741.4778
c:      +1 973.220.6326

---

From: Chip Sharp <[email-masked]>
Date: Thu, 19 Aug 1999 11:31:56 -0400

According to RFC2234, "1*" means at least one and at most infinity. "1*1"
means only one.
"*1" would mean either zero or 1 and "*" means from zero to infinity.

So the question is, do we really allow only one (in which case we change
the ABNF to "1*1") or do we allow multiple (leave the way it is).

If we allow multiple, is there any limit we want to put in there (e.g.,
"1*1000") or just leave it to common sense?

Chip

> > > > transactions in a packet?

--------------------------------------------------
Chip Sharp                 Consulting Engineering
Cisco Systems              Telco Bio-region
Reality - Love it or Leave it.
--------------------------------------------------

---

From: Abdallah Rayhan <[email-masked]>
Date: Thu, 19 Aug 1999 13:52:46 -0400

This rule has a problem. LWSP between MegacopToken
and mId allows zero or more spaces, lines, or comments.
There must be a seperator of one space between the two.
Same thing applies to mId and rest of RHS and
authenticatedMessage.

I propose this change to the syntax:

megacoMessage= LWSP [authenticatedMessage SEP ] message
authenticatedMessage= AuthToken EQUAL SecurityParmIndex
                                        COLON SequenceNum COLON AuthData
message = MegacopToken SEP mId SEP
                   1*(transactionRequest | transactionAccept |
                       transactionReject  | errorMessage)

SEP = (WSP|EOL|COMMENT) LWSP

Do we need COMMENTS ?

regards
Abdallah Rayhan