Subject: RE: [Megaco] how codec negotiation is triggered by MGC?

From: "Kevin Boyle" <[email-masked]>
Date: Fri, 17 Dec 2004 13:30:59 -0500

Why not just have the MGC choose the payload number for the 2833 events?

Note that the m line example here restricts the payload selectors to those
defined as RTP/AVP.  This can be avoided by using $ for that element as
well.

To confirm Marcello's statement, '*' is not a permitted wildcard in
underspecified SDP.  '$' is allowed in any position and means choose.  Note
that the use of wildcards is only allowed in the MGC->MG direction.  MGs are
always expected to send compliant SDP.

Kevin 

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On Behalf Of
Richard Sun
Sent: Friday, December 17, 2004 12:39 PM
To: Marcello Pantaleo (AC/EDD)
Cc: [email-masked]
Subject: Re: [Megaco] how codec negotiation is triggered by MGC?

Marcello,
Thanks for your helpfull information.

Now assume that MGC audits MG and learns that MG supports "PCMU" *and*
"telephone-event".
If "m=audio $ RTP/AVP $" means that
MG to choose *one* codec, then
what is the syntax for MGC to instruct MG "use PCMU, *and* choose a payload
number for telephone-event"?

-Richard

Marcello Pantaleo (AC/EDD) wrote:

> Hi,
> 
> MGC can use audit capabilities to get the list of codecs supported by a
MG. Alternatively a MGC can be provisioned with MG capabilities.
> 
> MGC wouldn't use Add to know MG capabilities (e.g. supported codecs).
> 
> If MGC sends an Add command with an empty local desciptor, this is a
request to release any resources previously reserved for the media flow
received, that means nothing given that MGC is now creating the termination.
> If local descriptor is unspecified (i.e. absent), MG considers this as
missing mandatory parameter. MG uses whatever previously specified. 
> 
> If MGC sends "m=audio $ RTP/AVP $" it requests MG to choose one of the
supported codecs, so you don't get the list.
> 
> I don't think you can use * wildcard in the "m=".
> 
> Regards,
> Marcello
> 
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]On 
> Behalf Of Richard Sun
> Sent: Thursday, December 16, 2004 3:08 PM
> To: [email-masked]
> Subject: [Megaco] how codec negotiation is triggered by MGC?
> 
> 
> Hi, Can anyone pelase clarify the standard for MGC to trigger a codec 
> negotiation in MG (i.e, MG should provide a list of codecs it 
> supports)?
> 
> One way I can think of is an empty "Local{}"
> without SDP, such as:
> Transaction = 299012 {
>   Context = $ {
>     Add = aaln/1 {
>       Media { Stream = 1 {
>         LocalControl {Mode = SendReceive}
>     }}},
>     Add = $ {
>       Media {Stream = 1 {
>         LocalControl {Mode=ReceiveOnly},
>         Local {}
> }}}}}
> 
> The question is: is this legal? Should MG reject the message with some 
> kind of error such as "SDP missing", or MG is suppose to fill up the 
> SDP section in response?
> What if the "Local{}" does not present at all?
> 
> The other way is something like this:
> Transaction = 299012 {
>   Context = $ {
>     Add = aaln/1 {
>       Media { Stream = 1 {
>         LocalControl {Mode = SendReceive}
>     }}},
>     Add = $ {
>       Media {Stream = 1 {
>         LocalControl {Mode=ReceiveOnly},
>         Local {
> v=0
> o=$ $ $ IN IP4 $
> s=$
> c=IN IP4 $
> t=$ $
> m=audio $ RTP/AVP -
> a=ptime:20
> }}}}}}
> With "-" in "m=audio $ RTP/AVP -", should MG fill up the list of 
> codecs?
> Or should it be something like
> "m=audio $ RTP/AVP $"?
> 
> Thanks for any information.
> -Richard
> 
> _______________________________________________
> Megaco mailing list
> [email-masked]
> https://www1.ietf.org/mailman/listinfo/megaco

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

---

From: Richard Sun <[email-masked]>
Date: Fri, 17 Dec 2004 14:17:19 -0500

Kevin,
Thanks for the reply.

 > Why not just have the MGC choose the payload number for

Good question. That was what I asked. But some
MGC implementation says that MGC does not
care rfc2833 and its payload type at all, MGC just expects
MG to turn on rfc2833 automatically. I thought this
is not possible, so I asked the question just to
make sure that I do not miss anything.

To put it another way:
does it make any sense for any MGC to say:
"MGC never needs to look at the SDP contents, it
just pass SDP among MGs. MGs should just
handle the codec negotiation themself"?

This is indeed possible with MGCP. But it seems
that this is really not possibile with H248.
For H248, MGC always needs to be involved in this
codec negotiation.

Let me know if I am wrong. Thanks,
-Richard

Kevin Boyle wrote:

> Note that the m line example here restricts the payload selectors to 
> those defined as RTP/AVP.  This can be avoided by using $ for that 
> element as well.
> 
> underspecified SDP.  '$' is allowed in any position and means choose.  
> Note that the use of wildcards is only allowed in the MGC->MG 
> direction.  MGs are always expected to send compliant SDP.
> 
> Kevin
> 
> From: [email-masked] [mailto:[email-masked]] On Behalf 
> Of Richard Sun
> what is the syntax for MGC to instruct MG "use PCMU, *and* choose a 
> payload number for telephone-event"?
> 
> -Richard
> 
>  > MGC can use audit capabilities to get the list of codecs supported by 
> a MG. Alternatively a MGC can be provisioned with MG capabilities.
> 
>  >
>  > If local descriptor is unspecified (i.e. absent), MG considers this 
> as missing mandatory parameter. MG uses whatever previously specified.
> 
>  >
>  > If MGC sends "m=audio $ RTP/AVP $" it requests MG to choose one of 
> the supported codecs, so you don't get the list.
>  >