Subject: LocalControl Descriptor Parameters

From: Chip Sharp <[email-masked]>
Date: Fri, 15 Oct 1999 08:53:42 -0400

Maybe I'm missing something obvious, but
In the ABNF and the spec it says that the parameters for the
LocalControlDescriptor are
propertyParm = pkgdName propertyValue

This implies that the parameters for the LocalControlDescriptor are defined
in packages.  However, in the only package I've seen submitted to SG16 and
discussed (APC-1666), I don't see any parameters defined for
LocalControlDescriptor.  For example, where is the package that defines
parameters such as Codec=G.711, echocontrol=ON, gain=2dB, etc.?

Thanks,
Chip
Support NetAid!  http://www.netaid.org
--------------------------------------------------
Chip Sharp                 Consulting Engineering
Cisco Systems              Telco Bio-region
Reality - Love it or Leave it.
--------------------------------------------------

---

From: Brian Rosen <[email-masked]>
Date: Fri, 15 Oct 1999 11:28:14 -0400

Packages can define properties for a termination.

Properties which are independent of streamID are defined
in TerminationState.  Properties that are stream dependent
are in LocalControl.

APC-1666 is significantly broken IMO. It will have quite a lot of
discussion at the meeting.  It doesn't even reflect changes
that were agreed to in the second Packages Design Team
conference call.

The properties you refer to must be defined, as has been pointed
out, they are stream dependent, and therefore will be defined in
LocalControl.

I keep trying to get out my own cut at a base package definition.
Everytime I try to finish it I get interrupted.
It's actually hard to decompose packages the way we agreed we
would decompose them.

Brian

> -----Original Message-----
> From: Chip Sharp [mailto:[email-masked]]
> Sent: Friday, October 15, 1999 8:54 AM
> To: [email-masked]
> Subject: LocalControl Descriptor Parameters
>
>

---

From: Nancy-M Greene <[email-masked]>
Date: Fri, 15 Oct 1999 15:08:04 -0400

First, quoting from a msg from Christian Huitema - Subject:Re: General Media
Descriptor - SDP, sent Sept 17/99, 9am:
-----------
> A reasonable assumption is that [we] the
> current MGCP parameters will be defined in the combination of at least two
> packages, one generic (Usage of echo cancellation, Usage of silence
> suppression or voice activity detection, Usage of signal level adaptation
> and noise level reduction, or "gain control") and one specific to RTP
> (Encoding Method, Packetization period, Bandwidth, Type of Service, Usage
> of reservation service, Usage of RTP security).
>
> There is however one subparameter of MGCP's LocalConnectionOptions that
> does not fit squarely into the "package" approach.  The "Type of network"
> is used to specify whether the new connection should be built over IP,
> Frame relay, ATM, etc. This is quite useful in multi-protocol gateways,
> specially if we decide that termination names have no structure and no
> implied meaning. If a gateway receives a command such as: Transaction=x{
> ctx=$ { add=${...}}}, how can it decide whether to create an RTP
> connection, rather than using AAL2?
>
> I suggest that a "type of network" attribute be added as a generic
> subparameter in the LocalControl definition.
>
> -- Christian Huitema
----------

Here is what I propose go into the generic and rtp packages (i.e. added to
draft-ietf-megaco-basicpkg-00.txt, and to APC-1666).

Question: I have put Preferred Encoding and Decoding Methods as part of the
rtp package - do they go there, or should they be in the generic package?

3.x Generic Package
Package Id: g

3.x.1 Properties

The following properties are to be used in the
LocalControlDescriptor of the StreamDescriptor. The LocalControlDescriptor
contains parameters used by the MGC to direct the handling of the
stream by the MG. The scope of this information is local to the MG-MGC
association.

3.x.1.1 Echo Cancellation

PropertyId: ec

Description
By default, the telephony gateways always perform echo cancellation.
However, it is necessary, for some calls, to turn off these operations.

Values
The echo cancellation parameter can have two values:
- "on" (when the echo cancellation is requested) and
- "off" (when it is turned off.)
The default is "on".

3.x.1.2 Silence suppression
PropertyId: ss

Description
The media gateway may perform silence suppression, or voice activity
detection, and avoid sending packets during periods of silence.  However,
it is necessary, for example for modem calls, to turn off this detection.

Values
The silence suppression parameter can have two values, "on" (when
the voice activity detection is requested) and "off" (when it is turned
off.) The default is "off."

3.x.1.3 Gain Control
PropertyId: gain

Description
Gain control, or usage of of signal level adaptation and noise level
reduction is
used to adapt the level of the signal. However, it is necessary, for example
for modem
calls, to turn off this function.

Values
The gain control parameter may
either be specified as "automatic", or as an explicit number of
decibels of gain.  The default is to not perform gain control, which is
equivalent to specifying a gain of 0 decibels.

3.x.1.4 Network Type
PropertyId:network

Description:
The MGC may instruct the MG to prepare the connection on a
specified type of network.

Values:
The type of network is encoded as in the
"connection-field" parameter of the SDP standard.  Possible values are
IN (Internet), ATM and LOCAL. The parameter is optional; if absent, the
network is determined by the MG.

[Tom - you are proposing that this be a list of packages I think. Is that
what we want, or do we want strings such as RTP/IP4, or RTP, or AAL2,....]

3.15 RTP
Package ID: rtp

This package is used to support packet based multimedia data transfer
by means of the Real-time Transport Protocol (RTP).

3.15.1 Properties
The following properties are to be used in the
LocalControlDescriptor of the StreamDescriptor. The LocalControlDescriptor
contains parameters used by the MGC to direct the handling of the
stream by the MG. The scope of this information is local to the MG-MGC
association.

3.15.1.1 Preferred Encoding Method
PropertyId: em

Description
Allows the MGC to specify the encoding method to be used
by the MG.

Values
The  encoding will be compatible with the SDP and RTP profiles.

The encoding method shall be specified by using one or several
valid encoding names, as defined in the RTP AV Profile or registered with
the IANA.

The MGC may state exactly one value, which the MG will then use
for the connection.

The MGC may provide a loose specification, such as a list of allowed
encoding methods, and if this is
the case, they are put in order of preference, most preferred first.

The MGC may simply provide a bandwidth indication, leaving the choice
of encoding/decoding method and packetization period to the MG.

3.15.1.2 Preferred Decoding Method
PropertyId: dm

Description

Values
The  decoding will be compatible with the SDP and RTP profiles:

The decoding method shall be specified by using one or several
valid decoding/encoding names, as defined in the RTP AV Profile or
registered with the IANA.

The MGC may state exactly one value, which the MG will then use
for the connection,

The MGC may provide a loose specification, such as a list of allowed
decoding methods, and if this is
the case, they are put in order of preference, most preferred first.

The MGC may simply provide a bandwidth indication, leaving the choice
of encoding/decoding method and packetization period to the MG.

3.15.1.3 Preferred packetization period
PropertyId: ptime

Description
Allows the MGC to specify the decoding method to be used
by the MG.

Values
The packetization period is encoded as either the length of time in
milliseconds represented by the media in a packet, as specified in
the "ptime" parameter of SDP, or as a range value, specifying both
the minimum and maximum acceptable packetization periods.

The MGC may state exactly one value, which the MG will then use
for the connection.

The MGC may provide a loose specification, such as a range of packetization
periods, and if this is the case, they are put in order of preference, most
preferred first.

The MGC may simply provide a bandwidth indication, leaving the choice
of encoding/decoding method and packetization period to the MG.

3.15.1.4 Bandwidth
PropertyId: ba

Description
The bandwidth specification shall not contradict the specification of
encoding methods and packetization period. If an encoding method is
specified, then the gateway is authorized to use it, even if it results
in the usage of a larger bandwidth than specified.

Values
The bandwidth is encoded as either a single value or a range,
expressed as an integer number of kilobit per seconds.

The MGC may state exactly one value, which the MG will then use
for the connection.

The MGC may simply provide a bandwidth indication, leaving the choice
of encoding/decoding method and packetization period to the MG.

3.15.1.5 Type of service
PropertyId: tos

Description
The Type of Service specifies the class of service that will be used
for the connection.

Values
When the connection is transmitted over an IP
network, the parameters encodes the 8-bit type of service value
parameter of the IP header. When the Type of Service is not specified,
the gateway shall use a default or configured value.

3.15.11.6 Reservation Service
PropertyId: resv

Description
The gateways can be instructed to perform a reservation, for example
using RSVP, on a given connection.  When reservation has been
asked on a connection, the gateway will:

*    start emitting RSVP "PATH" messages if the connection is in "send-
     only", "send-receive", "conference", "network loop back" or "net-
     work continuity test" mode (if a remote connection descriptor has
     been received,)

*    start emitting RSVP "RESV" messages as soon as it receives "PATH"
     messages if the connection is in "receive-only", "send-receive",
     "conference", "network loop back" or "network continuity test"
     mode.

The RSVP filters will be deduced from the characteristics of the
connection. The RSVP resource profiles will be deduced from the
connection's bandwidth and packetization period.

Values
When a reservation is needed, the
MGC will specify the reservation profile that should be used,
which is either "controlled load" or "guaranteed service."  The absence
of reservation can be indicated by asking for the "best effort"
service, which is the default value of this parameter.

3.15.1.7 RTP security
PropertyId: encr

Description
The MGC can request the MG to enable encryption of the
audio Packets.

Values
It does so by providing a key specification, as
specified in RFC 2327. By default, encryption is not used.

3.15.1.8 Maximum Jitter Buffer
PropertiyId: jit

Description
This property puts a maximum size on the jitter buffer.

Values
This property is specified in milliseconds.
---------

Nancy
--------------------------------------------------------------------------
Nancy M. Greene
Internet & Service Provider Networks, Nortel Networks
T:514-271-7221 (internal:ESN853-1077) E:[email-masked]

> ----------
> From:         Chip Sharp[SMTP:[email-masked]]
> Sent:         Friday, October 15, 1999 8:53 AM
> To:   [email-masked]
> --------------------------------------------------------------------------
> Nancy M. Greene
> Internet & Service Provider Networks, Nortel Networks
> T:514-271-7221 (internal:ESN853-1077) E:[email-masked]

---

From: Tom-PT Taylor <[email-masked]>
Date: Fri, 15 Oct 1999 15:38:53 -0400

Nice piece of work.  Now we need one for digital circuits, one for analogue
lines, and one or more for ATM.  I gather Sophia Scoggins has a proposal for
the latter.

I also suggest we put one in for digital carriers, or perhaps for
transmission interfaces in general.  The primary purpose would be to provide
a vehicle for reporting transitions into and out of service.  The
terminations concerned would never move out of the NULL context.  By
judicious use of the MUX descriptor we could relate the digital carriers to
the circuits they contain (i.e. using the bearer list, with the MUX type
indicating the type of carrier).

Finally, we need a package for the MG as a whole.

As a point of philosophy, let me make the following proposal as a starting
point for discussion: ServiceChange is the means by which changes in
termination state (in-service <-> out-of-service) are reported.
Add/Modify/Subtract commands are the means by which all other properties are
changed.  In particular, to do a general reset on the MG, one would use

  context * { subtract * }

> From: Greene, Nancy-M [CAR:5N10:EXCH]
> Sent: Friday, October 15, 1999 3:08 PM
> To:   [email-masked]; 'Chip Sharp';
> [email-masked]'
> Cc:   Taylor, Tom-PT [CAR:B904-I:EXCH]; Kallas, Mike [RICH1:2011-M:EXCH];
> [email-masked]'
> Subject:      RE: LocalControl Descriptor Parameters
>
> First, quoting from a msg from Christian Huitema - Subject:Re: General
> Media Descriptor - SDP, sent Sept 17/99, 9am:
> -----------
> Question: I have put Preferred Encoding and Decoding Methods as part of
> the rtp package - do they go there, or should they be in the generic
> package?
>
> 3.x Generic Package
> Package Id: g
>
> 3.x.1 Properties
>
> used to adapt the level of the signal. However, it is necessary, for
> example for modem
> periods, and if this is the case, they are put in order of preference,
> most preferred first.
>

---

From: Brian Rosen <[email-masked]>
Date: Fri, 15 Oct 1999 16:00:36 -0400

> changed.  In particular, to do a general reset on the MG, one
We have to settle the discussion that was not concluded about
shortening the response from such a command; you don't want
a statistics descriptor for each termination.

I'm also having a problem with your distinctions.  ServiceChange
in this context is how the MG tells the MGC about big changes.
Are you looking for way the MGC tells the MG about such changes.
ServiceChange is the only command that can be sent both by the
MG and the MGC.  You could use it.  On the other hand, the
kind of thing you propose would also work.  We have
philosophically refused to talk about the MGC using MEGACO to
tell the MG to do things like take terminatins in or out of
service.  See my confusion?

This doesn't help with the definition of the package on root that
talks about MG wide things.  We have a small list of such items,
such as the maximum number of terminations per context the MG can handle.