Internet Engineering Task Force Nancy Greene
INTERNET DRAFT Nortel Networks
<draft-ietf-megaco-reqs-05.txt> Michael Ramalho
Category: Informational Cisco
Expires: December 25, 1999 Brian Rosen
Fore Systems
Media Gateway control protocol architecture and requirements
Nancy Greene, Michael Ramalho, Brian Rosen
Status of this memo
This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026. Internet-Drafts are working docu-
ments of the Internet Engineering Task Force (IETF), its areas, and its
working groups. Note that other groups may also distribute working docu-
ments as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference material
or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
To view the list Internet-Draft Shadow Directories, see
http://www.ietf.org/shadow.html.
This document is a product of the Media Gateway Control (MEGACO) Working
Group of the Internet Engineering Task Force (IETF). Comments should be
submitted to the mailing list megaco@standards.nortelnetworks.com.
Abstract
This document describes protocol requirements for the Media Gateway con-
trol protocol between a Media Gateway Controller and a Media Gateway.
Table of Contents
Greene, Rosen, Ramalho [Page 1]
Internet draft Megaco Requirements 25 June 1999
1. Introduction .............................................. 4
2. Terminology ............................................... 4
3. Definitions ............................................... 4
4. Specific functions assumed within the MG .................. 5
5. Per-Call Requirements ..................................... 7
5.1. Resource Reservation ................................. 7
5.2. Connection Requirements .............................. 8
5.3. Media Transformations ................................ 9
5.4. Signal/Event Processing and Scripting ................ 10
5.5. QoS/CoS .............................................. 11
5.6. Test Support ......................................... 11
5.7. Accounting ........................................... 11
5.8. Signalling Control ................................... 12
6. Resource Control .......................................... 12
6.1. Resource Status Management ........................... 12
6.2. Resource Assignment .................................. 14
7. Operational/Management Requirements ....................... 14
7.1. Assurance of Control/Connectivity .................... 14
7.2. Error Control ........................................ 15
7.3. MIB Requirements ..................................... 15
8. General Protocol Requirements ............................. 16
8.1. MG-MGC Association Requirements ...................... 17
8.2. Performance Requirements ............................. 17
9. Transport ................................................. 18
9.1. Assumptions made for underlying network .............. 18
9.2. Transport Requirements ............................... 18
10. Security Requirements .................................... 19
11. Requirements specific to Bearer types .................... 20
11.1. Media-specific Bearer types ......................... 20
11.1.1. Requirements for TDM PSTN (Circuit) ............ 21
11.1.2. Packet Bearer type ............................. 22
11.1.3. Bearer type requirements for ATM ............... 23
11.1.3.1. Addressing ................................ 23
11.1.3.2. Connection related requirements ........... 24
11.1.3.3. Media adaptation .......................... 25
11.1.3.4. Reporting requirements .................... 26
11.1.3.5. Functional requirements ................... 26
11.2. Application-Specific Requirements ................... 26
11.2.1. Trunking Gateway ............................... 26
11.2.2. Access Gateway ................................. 27
11.2.3. Trunking/Access Gateway with fax ports ......... 28
11.2.4. Trunking/Access Gateway with text telephone .... 28
11.2.5. Trunking/Access Gateway with conference ports .. 29
11.2.6. Network Access Server .......................... 29
11.2.7. Restricted Capability Gateway .................. 31
11.2.8. Multimedia Gateway ............................. 31
11.2.9. IVR Unit ....................................... 32
Greene, Rosen, Ramalho [Page 2]
Internet draft Megaco Requirements 25 June 1999
11.2.10. Other Application-specific Gateways ........... 36
12. Full Copyright Statement ................................. 37
13. References ............................................... 37
14. Acknowledgements ......................................... 38
15. Authors' addresses ....................................... 38
Greene, Rosen, Ramalho [Page 3]
Internet draft Megaco Requirements 25 June 1999
1. Introduction
This document describes requirements to be placed on the Media Gateway
control protocol. When the word protocol is used on its own in this
document it implicitly means the Media Gateway control protocol.
2. Terminology
In this document, the key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
"SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" are to be interpreted as described in RFC 2119 [0] and indi-
cate requirement levels for the protocol.
3. Definitions
* Connection
Under the control of a Media Gateway Controller (MGC), the Media Gateway
(MG) realizes connections. In this document, connections are associa-
tions of resources hosted by the MG. They typically involve two termina-
tions, but may involve more.
* Line or Loop
An analogue or digital access connection from a user terminal which car-
ries user media content and telephony access signalling (DP, DTMF, BRI,
proprietary business set).
* Media Gateway (MG) function
A Media Gateway (MG) function provides the media mapping and/or tran-
scoding functions between dissimilar networks, one of which is presumed
to be a packet, frame or cell network. For example, an MG might ter-
minate switched circuit network (SCN) facilities (trunks, loops), pack-
etize the media stream, if it is not already packetized, and deliver
packetized traffic to a packet network. It would perform these func-
tions in the reverse order for media streams flowing from the packet
network to the SCN.
Media Gateways are not limited to SCN <-> packet/frame/cell functions: A
conference bridge with all packet interfaces could be an MG, as well as
an IVR unit or a voice recognition system with a cell interface.
* Media Gateway unit (MG-unit)
An MG-unit is a physical entity that contains an MG function and may
also contain other functions, e.g. an SG function.
Greene, Rosen, Ramalho [Page 4]
Internet draft Megaco Requirements 25 June 1999
* Media Gateway Controller (MGC) function
A Media Gateway Controller (MGC) function controls a MG.
* Media Resource
Examples of media resources are codecs, announcements, tones, and
modems, IVR units, bridges, etc.
* Signaling Gateway (SG) function
An SG function receives/sends SCN native signalling at the edge of a
data network. For example the SG function may relay, translate or ter-
minate SS7 signaling in an SS7-Internet Gateway. The SG function may
also be co-resident with the MG function to process SCN signalling asso-
ciated with line or trunk terminations controlled by the MG, such as the
"D" channel of an ISDN PRI trunk.
* Termination
A termination is a point of entry and/or exit of media flows relative to
the MG. When an MG is asked to connect two or more terminations, it
understands how the flows entering and leaving each termination are
related to each other.
Terminations are, for instance, DS0's, ATM VCs and RTP ports. Another
word for this is bearer point.
* Trunk
An analog or digital connection from a circuit switch which carries user
media content and may carry telephony signalling (MF, R2, etc.). Digi-
tal trunks may be transported and may appear at the Media Gateway as
channels within a framed bit stream, or as an ATM cell stream. Trunks
are typically provisioned in groups, each member of which provides
equivalent routing and service.
* Type of Bearer
A Type of Bearer definition provides the detailed requirements for its
particular application/bearer type. A particular class of Media Gateway,
for example, would support a particular set of Bearer types.
4. Specific functions assumed within the MG
This section provides an environment for the definition of the general
Media Gateway control protocol requirements.
Greene, Rosen, Ramalho [Page 5]
Internet draft Megaco Requirements 25 June 1999
MGs can be architected in many different ways depending where the media
conversions and transcoding (if required) are performed, the level of
programmability of resources, how conferences are supported, and how
associated signalling is treated. The functions assumed to be within the
MG must not be biased towards a particular architecture.
For instance, announcements in a MG could be provided by media resources
or by the bearer point resource or termination itself. Further, this
difference must not be visible to MGC: The MGC must be able to issue the
same request to two different implementations and achieve the same
result.
Depending on the application of the MG (e.g., trunking, residential),
some functions listed below will be more prominent than others, and in
some cases, functions may even disappear.
Although media adaptation is the essence of the MG, it is not necessary
for it to be involved every time. An MG may join two
terminations/resources of the same type (i.e., the MG behaves as a
switch). The required media conversion depends on the media type sup-
ported by the resources being joined together.
In addition to media adaptation function, resources have a number of
unique properties, for instance:
* certain types of resources have associated signalling capabilities
(e.g., PRI signalling, DTMF),
* some resources perform maintenance functions (e.g., continuity
tests),
* the MGC needs to know the state changes of resources (e.g., a trunk
group going out of service),
* the MG retains some control over the allocation and control of some
resources (e.g., resource name space: RTP port numbers).
Therefore, an MG realizes point-to-point connections and conferences,
and supports several resource functions. These functions include media
conversion, resource allocation and management, and event notifications.
Handling termination associated signalling is either done using event
notifications, or is handled by the signalling backhaul part of a MG-
unit (i.e. NOT directly handled by the MG).
MGs must also support some level of system related functions, such as
establishing and maintaining some kind of MG-MGC association. This is
essential for MGC redundancy, fail-over and resource sharing.
Greene, Rosen, Ramalho [Page 6]
Internet draft Megaco Requirements 25 June 1999
Therefore, an MG is assumed to contain these functions:
* Reservation and release, of resources
* Ability to provide state of resources
* Maintenance of resources - It must be possible to make maintenance
operations independent of other termination functions, for
instance, some maintenance states should not affect the resources
associated with that resource . Examples of maintenance functions
are loopbacks and continuity tests.
* Connection management, including connection state.
* Media processing, using media resources: these provide services
such as transcoding, conferencing, IVR units. Media resources may
or may not be directly part of other resources.
* Incoming digit analysis for terminations, interpretation of scripts
for terminations
* Event detection and signal insertion for per-channel signalling
* Ability to configure signalling backhauls (for example, a Sigtran
backhaul)
* Management of the association between the MGC and MG, or between
the MGC and MG resources.
5. Per-Call Requirements
5.1. Resource Reservation
The protocol must:
a. Support reservation of bearer terminations and media resources for
use by a particular call and support their subsequent release
(which may be implicit or explicit).
b. Allow release of all resources associated with a given context in a
single exchange of messages.
c. The MG is not required (or allowed) by the protocol to maintain a
sense of future time: a reservation remains in effect until expli-
citly released by the MGC.
Greene, Rosen, Ramalho [Page 7]
Internet draft Megaco Requirements 25 June 1999
5.2. Connection Requirements
The protocol must:
a. Support connections involving packet and circuit bearer termina-
tions in any combination, including "hairpin" connections (connec-
tions between two circuit connections within the same MG).
b. Support connections involving TDM, Analogue, ATM, IP or FR tran-
sport in any combination.
c. Allow the specification of bearer plane (e.g. Frame Relay, IP,
etc.) on a call by call basis.
d. Support unidirectional, symmetric bi-directional, and asymmetric
bi-directional flows of media.
e. Support multiple media types (e.g. audio, text, video, T.120).
f. Support point-to-point and point-to-multipoint connections.
g. Support creation and modification of more complex flow topologies
e.g. conference bridge capabilities. Be able to add or delete
media streams during a call or session, and be able to add or sub-
tract participants to/from a call or session.
h. Support inclusion of media resources into call or session as
required. Depending on the protocol and resource type, media
resources may be implicitly included, class-assigned, or individu-
ally assigned.
i. Provide unambiguous specification of which media flows pass through
a point and which are blocked at a given point in time, if the pro-
tocol permits multiple flows to pass through the same point.
j. Allow modifications of an existing termination, such as use of
higher compression to compensate for insufficient bandwidth, or
changing transport network connections. Such a mechanism may, for
instance, be used to maintain QoS of an established service without
making the end-user aware of resource changes.
k. Allow the MGC to specify that a given connection has higher prior-
ity than other connections.
l. Allow a reference to a port/termination on the MG to be a logical
identifier, with a one-to-one mapping between a logical identifier
and a physical port.
Greene, Rosen, Ramalho [Page 8]
Internet draft Megaco Requirements 25 June 1999
[Editor's Note: whether logical identifiers should be allowed is still
under discussion.]
m. Allow the MG to report events such as resource reservation and con-
nection completion.
5.3. Media Transformations
The Protocol must:
a. Support mediation/adaptation of flows between different types of
transport
b. Support invocation of additional processing such as echo cancella-
tion.
c. Support mediation of flows between different content encoding
(codecs, encryption/decryption)
d. Allow the MGC to specify whether text telephony/FAX/data modem
traffic is to be terminated at the MG, modulated/demodulated, and
converted to packets, or is to be passed on by the MG in the media
flow as voice band traffic.
e. Allow the MGC to specify that MF/DTMF be extracted and handled in
any of the following ways:
1. encoded as part of the RTP stream,
2. extracted and sent to the MGC,
3. handled according to a script of instructions,
4. extracted and encoded in a separate RTP stream.
In all cases, if the MF/DTMF is extracted, the MG must replace the tones
with silence or comfort noise. Also, the option to have the MG not
extract MF/DMTF must exist as well.
f. Allow the MGC to specify signalled flow characteristics on circuit
as well as on packet bearer connections, e.g. u-law/a-law.
g. Allow for packet/cell transport adaptation only (no media adapta-
tion) e.g. mid-stream (packet-to-packet) codec, or ATM AAL5 to and
from ATM AAL2 adaptation.
h. Allow the transport of audio normalization levels as a setup
Greene, Rosen, Ramalho [Page 9]
Internet draft Megaco Requirements 25 June 1999
parameter,
e.g., for conference bridging.
i. Allow conversion to take place between media types e.g., text to
speech and speech to text.
5.4. Signal/Event Processing and Scripting
The Protocol must:
a. Allow the MGC to enable/disable monitoring for specific supervision
events at specific circuit terminations
b. Allow the MGC to enable/disable monitoring for specific events
within specified media streams
c. Allow reporting of detected events on the MG to the MGC. The proto-
col should provide the means to minimize the messaging required to
report commonly-occurring event sequences.
d. Allow the MGC to specify other actions (besides reporting) that the
MG should take upon detection of specified events.
e. Allow the MGC to enable and/or mask events.
f. Provide a way for MGC to positively acknowledge event notification.
g. Allow the MGC to specify signals (e.g., supervision, ringing) to be
applied at circuit terminations.
h. Allow the MGC to specify content of extended duration (announce-
ments, continuous tones) to be inserted into specified media flows.
i. Allow the MGC to specify alternative conditions (detection of
specific events, timeouts) under which the insertion of extended-
duration signals should cease.
j. Allow the MGC to download, and specify a script to be invoked on
the occurrence of an event.
k. Specify common events and signals to maximize MG/MGC interworking.
l. Provide an extension mechanism for implementation defined events
and signals with, for example, IANA registration procedures.
m. The protocol shall allow the MGC to request the arming of a mid-
Greene, Rosen, Ramalho [Page 10]
Internet draft Megaco Requirements 25 June 1999
call trigger even after the call has been set up.
5.5. QoS/CoS
The Protocol must:
a. Support the establishment of a bearer channel with a specified
QoS/CoS.
b. Support the ability to specify QoS for the connection between MGs,
and by direction.
c. Support a means to change QoS during a connection, as a whole and
by direction.
d. Allow the MGC to set QOS thresholds and receive notification when
such thresholds cannot be maintained.
e. Allow the size and performance of jitter buffers on RTP channels to
be specified at connection setup.
5.6. Test Support
The protocol must:
a. Support of the different types of PSTN Continuity Testing (COT) for
both the originating and terminating ends of the circuit connection
(2-wire and 4- wire).
b. Specifically support 103, 105, and 108 test line operation.
c. Support general test capabilities, for example loopbacks through
the MG to test DSP operation.
5.7. Accounting
The protocol must:
a. Support a common identifier to mark resources related to one call.
b. Support collection of specified accounting information from MGs.
c. Provide the mechanism for the MGC to specify that the MG report
accounting information automatically at end of call, in mid-call
Greene, Rosen, Ramalho [Page 11]
Internet draft Megaco Requirements 25 June 1999
upon request, at specific time intervals as specified by the MGC
and at unit usage thresholds as specified by the MGC.
d. Specifically support collection of:
* start and stop time, by media flow,
* volume of content carried (e.g. number of packets/cells transmit-
ted, number received with and without error, inter-arrival jitter),
by media flow,
* QOS statistics, by media flow.
e. Allow the MGC to have some control over which statistics are
reported, to enable it to manage the amount of information
transferred.
5.8. Signalling Control
Establishment and provisioning of signalling backhaul channels (via
SIGTRAN for example is out of scope. However, the MG must be capable of
supporting detection of events, and application of signals associated
with basic analogue line, and CAS type signalling. The protocol must:
a. Support the signalling requirements of analogue lines and Channel
Associated Signaling (CAS).
b. Support national variations of such signalling.
c. Provide mechanisms to support signalling without requiring MG-MGC
timing constraints beyond that specified in this document.
d. Must not create a situation where the MGC and the MG must be homo-
logated together as a mandatory requirement of using the protocol;
i.e. it must be possible to optionally conceal signaling type vari-
ation from the MGC.
6. Resource Control
6.1. Resource Status Management
The protocol must:
a. Allow the MG to report changes in status of physical entities sup-
porting bearer terminations, media resources, and facility-
associated signalling channels, due to failures, recovery, or
administrative action. It must be able to report whether a
Greene, Rosen, Ramalho [Page 12]
Internet draft Megaco Requirements 25 June 1999
termination is in service or out of service.
b. Support administrative blocking and release of TDM circuit termina-
tions.
[Editor's Note: as the above point only relates to ISUP-controlled cir-
cuits, it may be unnecessary to require this since the MGC controls
their use. However, it may be meaningful for MF and R2-signalled
trunks, where supervisory states are set to make the trunks unavailable
at the far end.]
c. Provide a method for the MGC to request that the MG release all
resources currently in use, or reserved, for any or all connec-
tions.
d. Provide an MG Resource Discovery mechanism which must allow an MGC
to discover what resources the MG has. Expressing resources can be
an arbitrarily difficult problem and the initial release of the
protocol may have a simplistic view of resource discovery.
At a minimum, resource discovery must enumerate the names of avail-
able circuit terminations and the allowed values for parameters
supported by terminations.
The protocol should be defined so that simple gateways could
respond with a relatively short, pre-stored response to the
discovery request mechanism. In general, if the protocol defines a
mechanism that allows the MGC to specify a setting or parameter for
a resource or connection in the MG, and MGs are not required to
support all possible values for that setting or parameter, then the
discovery mechanism should provide the MGC with a method to deter-
mine what possible values such settings or parameters are supported
in a particular MG.
e. Provide a mechanism to discover the current available resources in
the MG, where resources are dynamically consumed by connections and
the MGC cannot reasonably track the consumption of such resources
itself. It should also be possible to discover resources currently
in use, in order to clean up inconsistencies between the MGC and
the MG.
f. Not require an MGC to implement an SNMP manager function in order
to discover capabilities of an MG that may be specified during con-
text establishment.
Greene, Rosen, Ramalho [Page 13]
Internet draft Megaco Requirements 25 June 1999
6.2. Resource Assignment
The protocol must:
a. Provide a way for the MG to indicate that it was unable to perform
a requested action because of resource exhaustion, or because of
temporary resource unavailability.
b. Provide an ability for the MGC to indicate to an MG the resource to
use for a call (e.g. DS0) exactly, or indicate a set of resources
(e.g. pick a DS0 on a T1 line or a list of codec types) via a "wild
card" mechanism from which the MG can select a specific resource
for a call (e.g. the 16th timeslot, or G.723).
c. Allow the use of DNS names and IP addresses to identify MGs and
MGCs.
7. Operational/Management Requirements
7.1. Assurance of Control/Connectivity
To provide assurance of control and connectivity, the protocol must pro-
vide the means to minimize duration of loss of control due to loss of
contact, or state mismatches.
The protocol must:
a. Support detection and recovery from loss of contact due to
failure/congestion of communication links or due to MG or MGC
failure.
Note that failover arrangements are one of the mechanisms which
could be used to meet this requirement.
b. Support detection and recovery from loss of synchronized view of
resource and connection states between MGCs and MGs. (e.g. through
the use of audits).
c. Provide a means for MGC and MG to provide each other with booting
and reboot indications, and what the MG's configuration is.
d. Permit more than one backup MGC and provide an orderly way for the
MG to contact one of its backups.
e. Provide for an orderly switchback to the primary MGC after it
recovers. How MGCs coordinate resources between themselves is out-
side the scope of the protocol.
Greene, Rosen, Ramalho [Page 14]
Internet draft Megaco Requirements 25 June 1999
f. Provide a mechanism so that when an MGC fails, connections already
established can be maintained. The protocol does not have to pro-
vide a capability to maintain connections in the process of being
connected, but not actually connected when the failure occurs.
g. The Protocol must allow the recovery or redistribution of traffic
without call loss.
7.2. Error Control
The protocol must:
a. Allow for the MG to report reasons for abnormal failure of lower
layer connections e.g. TDM circuit failure, ATM VCC failure.
b. Allow for the MG to report Usage Parameter Control (UPC) events.
c. Be able to avoid failures on an MG from generating "showers" of
supervision events.
d. Allow the MG to notify the MGC that a termination was terminated
and communicate a reason when a terminations is taken out-of-
service unilaterally by the MG due to abnormal events.
e. Allow the MGC to acknowledge that a termination has been taken
out-of-service.
f. Allow the MG to request the MGC to release a termination and com-
municate a reason.
g. Allow the MGC to specify, as a result of such a request its deci-
sion to take termination down, leave it as is or modify it.
7.3. MIB Requirements
The Protocol must define a common MG MIB, which must be extensible, but
must:
a. Provide information on:
* mapping between resources and supporting physical entities.
* statistics on quality of service on the control and signalling
backhaul interfaces.
* statistics required for traffic engineering within the MG..IP b.
Greene, Rosen, Ramalho [Page 15]
Internet draft Megaco Requirements 25 June 1999
The protocol must allow the MG to provide to the MGC all informa-
tion the MGC needs to provide in its MIB.
c. MGC MIB should provide ... to be completed.
[Editor's Note: Discussion: MIB requirements should focus solely on the
management of the operation of the protocol itself. Other MIBs cover
the topics suggested here, except possibly for the traffic engineering
statistics. The point was raised that the MGC should not have to imple-
ment a manager function, because of the complications this would pose
for security administration. This raises a requirement for the MGC to
be able to discover the resources and other necessary information per-
taining to a given MG by means of the protocol. A suggestion was also
made that the MG needs to discover certain information about the MGC.
The mailing list is invited to comment, both on the proper Media Control
MIB requirements and on the requirements for discovery.]
8. General Protocol Requirements
The protocol must:
a. Support multiple operations to be invoked in one message and
treated as a single transaction.
b. Be both modular and extensible. Not all implementations may wish to
support all of the possible extensions for the protocol. This will
permit lightweight implementations for specialized tasks where pro-
cessing resources are constrained.
[Editor's Note: consolidate this with a definition of profile, and find
a new name for profile].
c. Be flexible in allocation of intelligence between MG and MGC. For
example, an MGC may want to allow the MG to assign particular MG
resources in some implementations, while in others, the MGC may
want to be the one to assign MG resources for use.
.IP d. Support scalability from very small to very large MGs: The
protocol must support MGs with capacities ranging from one to mil-
lions of terminations.
e. Support scalability from very small to very large MGC span of con-
trol: The protocol should support MGCs that control from one MG to
a few tens of thousands of MGs.
f. Support the needs of a residential gateway that supports one to a
few lines, and the needs of a large PSTN gateway supporting tens of
Greene, Rosen, Ramalho [Page 16]
Internet draft Megaco Requirements 25 June 1999
thousands of lines. Protocol mechanisms favoring one extreme or the
other should be minimized in favor of more general purpose mechan-
ism applicable to a wide range of MGs. Where special purpose
mechanisms are proposed to optimize a subset of implementations,
such mechanisms should be defined as optional, and should have
minimal impact on the rest of the protocol.
g. Facilitate MG and MGC version upgrades independently of one
another. The protocol must include a version identifier in the ini-
tial message exchange.
h. Facilitate the discovery of the protocol capabilities of the one
entity to the other.
i. Specify commands as optional (they can be ignored) or mandatory
(the command must be rejected), and within a command, to specify
parameters as optional (they can be ignored) or mandatory (the com-
mand must be rejected).
8.1. MG-MGC Association Requirements
The Protocol must:
a. Support the establishment of a control relationship between an MGC
and an MG.
b. Allow multiple MGCs to send control messages to an MG. Thus, the
protocol must allow control messages from multiple IP addresses to
a single MG.
c. Provide a method for the MG to tell an MGC that the MG received a
command for a resource that is under the control of a different
MGC.
d. Support a method for the MG to control the rate of requests it
receives from the MGC (e.g. windowing techniques, exponential back-
off).
e. Support a method for the MG to tell an MGC that it cannot handle
any more requests.
8.2. Performance Requirements
The protocol must:
a. Minimize message exchanges between MG and MGC, for example during
Greene, Rosen, Ramalho [Page 17]
Internet draft Megaco Requirements 25 June 1999
boot/reboot, and during continuity tests.
b. Support Continuity test constraints which are a maximum of 200ms
cross-MGC IAM (IAM is the name given to an SS7 connection setup
msg) propagation delay, and a maximum of 200ms from end of dialing
to IAM emission).
c. Make efficient use of the underlying transport mechanism. For exam-
ple, protocol PDU sizes vs. transport MTU sizes needs to be con-
sidered in designing the protocol.
d. Support peak calling rates in the order of 140 calls/second at the
MGC on a moderately loaded IP network.
e. Allow for default/provisioned settings so that commands need only
contain non-default parameters.
9. Transport
9.1. Assumptions made for underlying network
The protocol must assume that the underlying network:
a. May be over large shared networks: proximity assumptions are not
allowed.
b. Does not assure reliable delivery of messages.
c. Does not guarantee ordering of messages: Sequenced delivery of mes-
sages associated with the same source of events is not assumed.
d. Does not prevent duplicate transmissions.
9.2. Transport Requirements
The protocol must:
a. Provide the ability to abort delivery of obsolete messages at the
sending end if their transmission has not been successfully com-
pleted. For example, aborting a command that has been overtaken by
events.
b. Support priority messages: The protocol shall allow a command pre-
cedence to allow priority messages to supercede non-priority mes-
sages.
Greene, Rosen, Ramalho [Page 18]
Internet draft Megaco Requirements 25 June 1999
c. Support of large fan-out at the MGC.
d. Provide a way for one entity to correlate commands and responses
with the other entity.
e. Provide a reason for any command failure.
f. Provide that loss of a packet not stall messages not related to the
message(s) contained in the packet lost.
Note that there may be enough protocol reliability requirements here to
warrant a separate reliable transport layer be written apart from the
Media Gateway control protocol. Also need to compare Megaco reliable
transport requirements with similar Sigtran requirements.
10. Security Requirements
Security mechanisms may be specified as provided in underlying transport
mechanisms, such as IPSEC. The protocol, or such mechanisms, must:
a. Allow for mutual authentication at the start of an MGC-MG associa-
tion
b. Allow for preservation of the of control messages once the associa-
tion has been established.
c. Allow for optional confidentiality protection of control messages.
The mechanism should allow a choice in the algorithm to be used.
d. Operate across untrusted domains in a secure fashion.
e. Support non-repudiation for a customer-located MG talking to a net-
work operator's MGC.
g. Define mechanisms to mitigate denial of service attacks
Note: the protocol document will need to include an extended discussion
of security requirements, offering more precision on each threat and
giving a complete picture of the defense including non-protocol measures
such as configuration.
h. It would be desirable for the protocol to be able to pass through
commonly-used firewalls.
Greene, Rosen, Ramalho [Page 19]
Internet draft Megaco Requirements 25 June 1999
11. Requirements specific to particular bearer types
The bearer types listed in Table 1 can be packaged into different types
of MGs. Examples are listed in the following sections. How they are
packaged is outside the scope of the general Media Gateway control pro-
tocol. The protocol must support all types of bearer types listed in
Table 1.
Table 1: Bearer Types and Applications
Bearer Type Applications Transit Network
================================================================
Trunk+ISUP trunking/access IP, ATM, FR
Voice,Fax,NAS,
Multimedia
Trunk+MF trunking/access IP, ATM, FR
Voice,Fax,NAS,
Multimedia
ISDN trunking/access IP, ATM, FR
Voice,Fax,NAS,
Multimedia
Analogue Voice,Fax, IP, ATM, FR
Text Telephony
Termination in a Restricted Voice,Fax, IP, ATM, FR
Capability Gateway Text Telephony
Application Termination IVR, Announcement Server,
Voice Recognition Server,
Wiretap,...
Multimedia H.323 H.323 Multimedia IP,ATM
Gateway and MCU
Multimedia H.320 H.323 GW and MCU ISDN, SS7
11.1. Media-specific Bearer Types
This section describes requirements for handling terminations attached
to specific types of networks.
Greene, Rosen, Ramalho [Page 20]
Internet draft Megaco Requirements 25 June 1999
11.1.1. Requirements for TDM PSTN (Circuit)
This bearer type is applicable to a Trunking GW, Access GW, ...
The protocol must allow:
a. the MGC to specify the encoding to use on the attached circuit.
In general, if something is set by a global signalling protocol
(e.g. ISUP allows mu-Law or A-Law to be signaled using ISUP) then
it must be settable by the protocol.
c. TDM attributes:
* Echo cancellation,
* PCM encoding or other voice compression (e.g. mu-law or A-law),
* encryption,
* rate adaptation (e.g. V.110, or V.120).
d. for incoming calls, identification of a specific TDM circuit
(timeslot and facility).
e. for calls outgoing to the circuit network, identification of a
specific circuit or identification of a circuit group with the
indication that the MG must select and return the identification of
an available member of that group.
f. specification of the default encoding of content passing to and
from a given circuit, possibly on a logical or physical circuit
group basis.
g. specification at any point during the life of a connection of vari-
able aspects of the content encoding, particularly including chan-
nel information capacity.
h. specification at any point during the life of a connection of loss
padding to be applied to incoming and outgoing media streams at the
circuit termination.
i. specification at any point during the life of a connection of the
applicability of echo cancellation to the outgoing media stream.
j. Multi-rate calls to/from the SCN.
k. H-channel (n x 64K) calls to/from the SCN.
Greene, Rosen, Ramalho [Page 21]
Internet draft Megaco Requirements 25 June 1999
l. B channel aggregation protocols for creating high speed channels
for multimedia over the SCN.
m. Modem terminations and negotiations.
The protocol may also allow:
l. specification of sub-channel media streams,
m. specification of multi-channel media streams.
11.1.2. Packet Bearer Type
The protocol must be able to specify:
a. ingress and egress coding (i.e. the way packets coming in and out
are encoded) (including encryption).
b. near and far-end ports and other session parameters for RTP and
RTCP.
The protocol must support reporting of:
c. re-negotiation of codec for cause - for further study
d. on Trunking and Access Gateways, resources capable of more than one
active connection at a time must also be capable of mixing and
packet duplication.
The protocol must allow:
e. specification of parameters for outgoing and incoming packet flows
at separate points in the life of the connection (because far-end
port addresses are typically obtained through a separate signalling
exchange before or after the near-end port addresses are assigned).
f. the possibility for each Media Gateway to allocate the ports on
which it will receive packet flows (including RTCP as well as media
streams) and report its allocations to the Media Gateway Controller
for signalling to the far end. Note that support of different IP
backbone providers on a per call basis would require that the ports
on which packets flow be selected by the MGC. (but only if the IP
address of the MG is different for each backbone provider).
g. the specification at any point during the life of a connection of
RTP payload type and RTP session number for each RTP-encapsulated
Greene, Rosen, Ramalho [Page 22]
Internet draft Megaco Requirements 25 June 1999
media flow.
h. the ability to specify whether outgoing flows are to be uni-cast or
multi-cast. Note that on an IP network this information is implicit
in the destination address, but in other networks this is a connec-
tion parameter.
i. invoking of encryption/decryption on media flows and specification
of the associated algorithm and key.
The protocol should also allow:
j. the MGC to configure non-RTP (proprietary or other) encapsulated
packet flows.
11.1.3. Bearer type requirements for ATM
This bearer type is applicable to Trunking GW, Access GW, ....
11.1.3.1. Addressing
a. The protocol must be able to specify the following termination
attributes:
* VC identifier,
* VC identifier plus AAL2 slot, and wildcarded variant of these,
* remote termination network address, remote MG name.
b. Allow specification of an ATM termination which is to be assigned
to an MG connection as a VC identifier, a VC identifier plus AAL2
slot, a wild-carded variant of either of these. A remote termina-
tion network address, or a remote MG name could also be used when
the MG can select the VC and change the VC during the life of the
connection by using ATM signalling.
c. Provide an indication by the MG of the VC identifier and possibly
AAL2 slot of the termination actually assigned to a connection.
d. Provide a means to refer subsequently to that termination.
e. Refer to an existing VCC as the physical interface + Virtual Path
Identifier (VPI) + Virtual Circuit Identifier (VCI).
f. Where the VCC is locally established (SVCs signalled by the Gateway
Greene, Rosen, Ramalho [Page 23]
Internet draft Megaco Requirements 25 June 1999
through UNI or PNNI signalling or similar), the VCC must be
indirectly referred to in terms which are of significance to both
ends of the VCC. For example, a global name or the ATM address of
the ATM devices at each end of the VCC. However, it is possible/
probable that there may be several VCCs between a given pair of ATM
devices. Therefore the ATM address pair must be further resolved by
a VCC identifier unambiguous within the context of the ATM address
pair.
g. refer to a VCC as the Remote GW ATM End System Address + VCCI.
h. allow the VCCI to be selected by the MG or imposed on the MG.
i. support all ATM addressing variants (e.g. ATM End System Address
(AESA) and E.164).
11.1.3.2. Connection related requirements
The protocol must:
a. Allow for the de-coupling of creation/deletion of the narrow-band
connection from the creation/deletion of the underlying VCC.
b. Allow for efficient disconnection of all connections associated
with a physical port or VCC. As an example, this could aggregate
disconnections across a broadband circuit which experienced a phy-
sical error.
c. Allow the connection established using this protocol to be carried
over a VCC, which may be a:
* PVC or SPVC,
* an SVC established on demand, either by the MGC itself or by a
broker acting on its behalf or,
* an SVC originated as required by the local MG, or by the remote end
to the local MG through UNI or PNNI signalling.
d. Allow ATM transport parameters and QoS parameters to be passed to
the MG.
e. Allow blocking and unblocking of a physical interface, a VCC or an
AAL1/AAL2 channel.
The protocol should:
Greene, Rosen, Ramalho [Page 24]
Internet draft Megaco Requirements 25 June 1999
f. Where a VCC is required to be established on a per narrow-band call
basis, allow all necessary information to be passed in one message.
11.1.3.3. Media adaptation
The protocol must:
a. Allow AAL parameters to be passed to the MG.
b. Allow AAL2 multiple narrow-band calls to be mapped to a single VCC.
These calls are differentiated within each VCC by a AAL2 channel
identifier. An AAL2 connection may span more than 1 VCC and transit
AAL2 switching devices. ATMF standards are working on an end-to-end
AAL2 connection identifier as part of the AAL2 signalling set.
c. Allow unambiguous binding of a narrow band call to an AAL2 connec-
tion identifier, or AAL1 channel, within the specified VCC.
d. Allow the AAL2 connection identifier, or AAL1 channel, to be
selected by the MG or imposed on the MG.
e. Allow the use of the AAL2 channel identifier (cid) instead of the
AAL2 connection identifier.
f. Allow the AAL2 voice profile to be imposed or negotiated before the
start of the connection. AAL2 allows for variable length packets
and varying packet rates, with multiple codecs possible within a
given profile. Thus a given call may upgrade or downgrade the codec
within the lifetime of the call. Idle channels may generate zero
bandwidth. Thus an AAL2 VCC may vary in bandwidth and possibly
exceed its contract. Congestion controls within a gateway may react
to congestion by modifying codec rates/types.
g. Allow the MGC to instruct the MG on how individual narrow-band
calls behave under congestion.
[Editor's Note: The ATM Forum is concerned that the above requirement
(g.) is not specific enough to handle all ATM traffic management capa-
bilities. They will provide a more specific requirement at a later
date.]
h. Allow for the MGC to specify an AAL5 bearer, with the following
choices:
* Per ATM Forum standard AF-VTOA-0083 [7],
* RTP with IP/UDP,
Greene, Rosen, Ramalho [Page 25]
Internet draft Megaco Requirements 25 June 1999
* RTP without IP/IDP per H.323v2 Annex C [8],
* Compressed RTP per ATM Forum AF-SAA-0124.000 [9].
i. Allow unambiguous binding of a narrow band call to an AAL1 channel
within the specified VCC. (In AAL1, multiple narrow-band calls may
be mapped to a single VCC.)
11.1.3.4. Reporting requirements
The protocol should:
a. Allow any end-of-call statistics to show loss/restoration of under-
lying VCC within the calls duration, together with duration of
loss.
b. Allow notification, as requested by MGC, of any congestion
avoidance actions taken by the MG.
The protocol must:
c. Allow for ATM VCCs or AAL2 channels to be audited by the MGC.
d. Allow changes in status of ATM VCCs or AAL2 channels to be notified
as requested by the MGC.
e. Allow the MGC to query the resource and endpoint availability.
Resources may include VCCs, and DSPs. VCCs may be up or down. End-
points may be connection-free, connected or unavailable.
11.1.3.5. Functional requirements
The protocol must:
a. Allow an MGC to reserve a bearer, and specify a route for it
through the network.
11.2. Application-Specific Requirements
11.2.1. Trunking Gateway
A Trunking Gateway is an interface between SCN networks and Voice over
IP or Voice over ATM networks. Such gateways typically interface to SS7
or other NNI signalling on the SCN and manage a large number of digital
circuits.
Greene, Rosen, Ramalho [Page 26]
Internet draft Megaco Requirements 25 June 1999
The protocol must:
a. Provide circuit and packet-side loopback.
b. Provide circuit-side n x 64kbs connections.
c. Provide subrate and multirate connections -for further study.
d. Provide lawful wiretap capability
e. Provide the capability to support Reporting/generation of per-trunk
CAS signalling (DP, DTMF, MF, R2, J2, and national variants).
f. Provide the capability to support reporting of detected DTMF events
either digit-by-digit, as a sequence of detected digits with a
flexible mechanism For the MG to determine the likely end of dial
string, or in a separate RTP stream.
g. Provide the capability to support ANI and DNIS generation and
reception.
11.2.2. Access Gateway
An Access Gateway connects UNI interfaces like ISDN (PRI and BRI) or
traditional analog voice terminal interfaces, to a Voice over IP or
Voice over ATM network, or Voice over Frame Relay network.
The Protocol must:
a. Support detection and generation of analog line signaling (hook-
state, ring generation).
b. Provide the capability to support reporting of detected DTMF events
either digit-by-digit, as a sequence of detected digits with a
flexible mechanism For the MG to determine the likely end of dial
string, or in a separate RTP stream.
c. Not require scripting mechanisms, event buffering, digit map
storage when implementing restricted function (1-2 line) gateways
with very limited capabilities.
d. Provide the capability to support CallerID generation and recep-
tion.
Proxying of the protocol is for further study.
Greene, Rosen, Ramalho [Page 27]
Internet draft Megaco Requirements 25 June 1999
11.2.3. Trunking/Access Gateway with fax ports
11.2.4. Trunking/Access Gateway with text telephone access ports
An access gateway with ports capable of text telephone communication,
must provide communication between text telephones in the SCN and text
conversation channels in the packet network.
Text telephone capability of ports is assumed to be possible to combine
with other options for calls as described in section 11.2.6 (e.) on
"Adaptable NASes".
The port is assumed to adjust for the differences in the supported text
telephone protocols, so that the text media stream can be communicated
T.140 coded in the packet network without further transcoding [10].
The protocol must be capable of reporting the type of text telephone
that is connected to the SCN port. The foreseen types are the same as
the ones supported by ITU-T V.18: DTMF, EDT, Baudot-45, Baudot-50,
Bell, V.21, Minitel and V.18. It should be possible to control which
protocols are supported. The SCN port is assumed to contain ITU-T V.18
functionality [11].
The protocol must be able to control the following functionality levels
of text telephone support:
a. Simple text-only support: The call is set into text mode from the
beginning of the call, in order to conduct a text-only conversa-
tion.
b. Alternating text-voice support: The call may begin in voice mode or
text mode and, at any moment during the call, change mode on
request by the SCN user. On the packet side, the two media streams
for voice and text must be opened, and it must be possible to con-
trol the feeding of each stream by the protocol.
c. Simultaneous text and voice support: The call is performed in a
mode when simultaneous text and voice streams are supported. The
call may start in voice mode and during the call change state to a
text-and-voice call.
A port may implement only level a, or any level combination of a, b and
c, always including level a.
The protocol must support:
Greene, Rosen, Ramalho [Page 28]
Internet draft Megaco Requirements 25 June 1999
d. A text based alternative to the IVR functionality of the gateway
when the port is used in text telephone mode.
e. Selection of what national translation table to be used between the
Unicode based T.140 and the 5-7 bit based text telephone protocols.
f. Control of the V.18 probe message to be used on incoming calls.
11.2.5. Trunking/Access Gateway with conference ports (Multipoint Pro-
cessing Unit)
11.2.6. Network Access Server
A NAS is an access gateway, or Media Gateway (MG), which terminates
modem signals or synchronous HDLC connections from a network (e.g. SCN
or xDSL network) and provides data access to the packet network. Only
those requirements specific to a NAS are described here.
Figure 1 provides a reference architecture for a Network Access Server
(NAS). Signaling comes into the MGC and the MGC controls the NAS.
+-------+ +-------+
Signaling | | | |
-----------+ MGC + | AAA |
| | | |
+---+---+ +--+----+
| |
Megaco|_______________|
|
|
+---+---+ ~~|~~~
Bearer | | ( )
-----------+ NAS +-------( IP )
| | ( )
+-------+ ~~~~~~
Figure 1: NAS reference architecture
The Protocol must support:
a. Callback capabilities:
* Callback
b. Modem calls. The protocol must be able to specify the modem
Greene, Rosen, Ramalho [Page 29]
Internet draft Megaco Requirements 25 June 1999
type(s)
to be used for the call.
c. Carriage of bearer information. The protocol must be able to
specify the data rate of the TDM connection (e.g., 64 kbit/s, 56
kbit/s, 384 kbit/s), if this is available from the SCN.
d. Rate Adaptation: The protocol must be able to specify the type of
rate adaptation to be used for the call including indicating the
subrate, if this is available from the SCN (e.g. 56K, or V.110 sig-
naled in Bearer capabilities with subrate connection of 19.2kbit/s.
e. Adaptable NASes: The protocol must be able to support multiple
options for an incoming call to allow the NAS to dynamically select
the proper type of call. For example, an incoming ISDN call coded
for "Speech" Bearer Capability could actually be a voice, modem,
fax, text telephone, or 56 kbit/s synchronous call. The protocol
should allow the NAS to report back to the MGC the actual type of
call once it is detected.
The 4 basic types of bearer for a NAS are:
1. Circuit Mode, 64-kbps, 8-khz structured, Speech
2. Circuit Mode, 64-kbps, 8-khz structured, 3.1-khz, Audio
3. Circuit Mode, 64-kbps, 8-khz structured, Unrestricted Digital
Transmission-Rate Adapted from 56-kbps
4. Circuit Mode, 64-kbps, 8-khz structure, Unrestricted Digital
Transmission
f. Passage of Called and Calling Party Number information to the NAS
from the MGC. Also, passage of Charge Number/Billing Number,
Redirecting Number, and Original Call Number, if known, to the NAS
from the MGC. If there are other Q.931 fields that need to be
passed from the MGC to the MG, then it should be possible to pass
them [12].
g. Ability for the MGC to direct the NAS to connect to a specific tun-
nel, for example to an LNS, or to an AAA server.
h. When asked by the MGC, be able to report capability information,
for example, connection types (V.34/V90/Synch ISDN..), AAA mechan-
ism (RADIUS/DIAMETER/..), access type (PPP/SLIP/..) after restart
or upgrade.
Greene, Rosen, Ramalho [Page 30]
Internet draft Megaco Requirements 25 June 1999
11.2.7. Restricted Capability Gateway
The requirements here may also be applied to small analog gateways, and
to cable/xDSL modems. See also the section on access gateways.
The Protocol must support:
a. The ability to provide a scaled down version of the protocol. When
features of the protocol are not supported, an appropriate error
message must be sent. Appropriate default action must be defined.
Where this is defined may be outside the scope of the protocol.
b. The ability to provide device capability information to the MGC
with respect to the use of the protocol.
11.2.8. Multimedia Gateway
The protocol must have sufficient capability to support a multimedia
gateway. H.320 and H.324 are characterized by a single data stream with
multiple media streams multiplexed on it.
If the mapping is from H.320 or H.324 on the circuit side, and H.323 on
the packet side, it is assumed that the MG knows how to map respective
subchannels from H.320/H.324 side to streams on packet side. If extra
information is required when connecting two terminations, then it must
be supplied so that the connections are not ambiguous.
The Multimedia Gateway:
1) should support Bonding Bearer channel aggregation,
2) must support 2xB (and possibly higher rates) aggregation via H.221,
3) must be able to dynamically change the size of audio, video and
data channels within the h.320 multiplex,
4) must react to changes in the H.320 multiplex on 20 msec boundaries,
5) must support TCS4/IIS BAS commands,
6) must support detection and creation of DTMF tones,
7) should support SNMP MIBS as specified in H.341.
a. If some of the above cannot be handled by the MGC to MG protocol
due to timing constraints, then it is likely that the H.245 to
H.242 processing must take place in the MG. Otherwise, support for
this functionality in the multimedia gateway are protocol
Greene, Rosen, Ramalho [Page 31]
Internet draft Megaco Requirements 25 June 1999
requirements.
b. It must be possible on a call by call basis for the protocol to
specify different applications. Thus, one call might be PSTN to
PSTN under SS7 control, while the next might be ISDN/H.320 under
SS7 control to H.323. This is only one example; the key require-
ment is that the protocol not prevent such applications.
11.2.9. IVR Unit
An Interactive Voice Response Unit, or IVR MG, provides automatic voice
response and switching services in response to DTMF signals from the
SCN. A scripting requirement for IVR would involve IVR-controlling
extensions to basic scripting packages.
To support Media Gateways functioning as IVR systems, the Protocol must:
a. Be able to provide these basic operations:
- request an IVR MG to play an announcement.
- request an IVR MG to play an announcement and then collect DTMF
digits.
- request an IVR MG to play an announcement and then record voice.
b. Be able to specify these play characteristics:
- Play volume
- Play speed
- Play iterations
- Interval between play iterations
- Play duration
c. Be able to specify these event collection characteristics:
- The number of attempts to give the user to enter a valid DTMF pat-
tern.
- The number of attempts to give the user to make a recording.
d. Provide a base set of voice variables including date, digits, dura-
tion, money, month, number, silence, string, display text, text to
Greene, Rosen, Ramalho [Page 32]
Internet draft Megaco Requirements 25 June 1999
voice, time, generated tone, and weekday. Given a variable type
and value, the IVR MG must dynamically assemble the phrases
required for its playback. For example, given a type of "US
Currency" and a value of "1995," the IVR MG should play "Nineteen
dollars and ninty-five cents."
e. Using the terminology that a segment is a discrete unit of playable
speech, support these types of segments:
- A provisioned recording.
- A block of text to be converted to speech.
- A block of text to be displayed on a device.
- A length of silence to be played.
- An algorithmically generated tone.
- A voice variable, specified by type and value. Given a variable
type and value, the IVR would dynamically assemble the phrases
required for its playback.
- A provisioned sequence of segments, referenced by a single unique
id.
- A provisioned set of segments, referenced by unique id and a selec-
tor specifying a particular segment in the set.
f. Provide two different methods of audio specification:
- Direct specification of the audio components to be played by speci-
fying the sequence of segments in the command itself.
- Indirect specification of the audio components to be played by
reference to a single identifier that resolves to a provisioned
sequence of audio segments.
The terminology of sequence and set can be used with segments.
A sequence is a provisioned sequence of one or more audio segments. Com-
ponent segments are not necessarily all of the same type. Every
sequence is assigned a unique segment id. On playback, a sequence id
reference is deconstructed into its individual parts, each of which is
played in order.
A set is a provisioned collection of audio segments with an associated
selector. On playback, the selector value is resolved to a particular
Greene, Rosen, Ramalho [Page 33]
Internet draft Megaco Requirements 25 June 1999
set element. Selector types need not be defined in the protocol itself,
but may be defined by the user. Some examples of selector types that a
user might define are: language, codec, audio file format, gender,
accent, customer, and voice talent.
g. Using the above set and sequence terminology, provide for the fol-
lowing uses of segments:
- Sequences of heterogeneous segments
- Nesting of sequences
- Nesting of sets.
- Nesting of sets with in sequences and sequences within sets.
- Use of set selectors to implement properties such as language,
codec, audio format, voice talent, customer, gender, accent, etc.
h. With respect to digit timers, allow the specification of:
- Time allowed to enter the first digit.
- Time allowed for user to enter each digit subsequent to the first
digit.
- Time allowed for user to enter a digit once the maximum expected
number of digits has been entered.
i. With respect to recording timers, allow the specification of:
- Time to wait for the user to initially speak.
- The amount of silence necessary following the last speech segment
for the recording to be considered complete.
- The maximum allowable length of the recording (not including pre-
and post- speech silence).
j. To be able to allow multiple prompt operations for digit collection
and voice recording, provide the following types of prompts:
- Initial Prompt
- Reprompt
- Error prompt
Greene, Rosen, Ramalho [Page 34]
Internet draft Megaco Requirements 25 June 1999
- Failure announcement
- Success announcement.
k. To allow digit pattern matching, allow the specification of:
- maximum number of digits to collect.
- minimum number of digits to collect.
- a digit pattern using a regular expression.
l. To allow digit buffer control, allow the specification of:
- Ability to clear digit buffer prior to playing initial prompt
(default is not to clear buffer).
- Default clearing of buffer following playing of uninterruptible
announcement segment.
- Default clearing of buffer before playing a re-prompt in response
to previous invalid input.
m. Provide a method to specify DTMF interruptibility on a per audio
segment basis.
n. Allow the specification of definable key sequences for digit
collection/recording to:
- Discard collected digits/recording in progress, replay the prompt,
and resume digit collection/recording (digit collection only).
- Discard collected digits/recording in progress and resume digit
collection/recording (digit collection only).
- Terminate the current operation and return the terminating key
sequence to the MGC.
o. Provide a way to ask the IVR MG to support the following definable
keys for digit collection and recording. These keys would then be
able to be acted upon by the IVR MG:
- A key to terminate playing of an announcement in progress.
- A set of one or more keys that can be accepted as the first digit
to be collected (digit collection only).
- A key that signals the end of user input (digit collection or
Greene, Rosen, Ramalho [Page 35]
Internet draft Megaco Requirements 25 June 1999
recording).
The key may or may not be returned to the MGC along with the input
already collected.
- Keys to stop playing the current announcement and resume playing at
the beginning of the first segment of the announcement, last seg-
ment of the announcement, previous segment of the announcement,
next segment of the announcement, or the current announcement seg-
ment.
p. While audio prompts are usually provisioned in IVR MGs, support
changing the provisioned prompts in a voice session rather than a
data session. In particular, with respect to audio management:
- A method to replace provisioned audio with audio recorded during a
call. The newly recorded audio must be accessible using the iden-
tifier of the audio it replaces.
- A method to revert from replaced audio to the original provisioned
audio.
- A method to take audio recorded during a call and store it such
that it is accessible to the current call only through its own
newly created unique identifier.
- A method to take audio recorded during a call and store it such
that it is accessible to any subsequent call through its own newly
created identifier.
The Protocol need not support the following:
q. While inflection (rising, flat, and falling) must be supported by
the IVR MG, specification of inflection is outside the scope of
this protocol.
r. Be able to support an IVR unit that provides text-based and/or
web-based prompts instead of audio-based prompts.
11.2.10. Multipoint Control Units
The protocol must support:
a. a mechanism to create multi-point conferences of audio only and
multimedia conferences in the MG.
b. audio mixing; mixing multiple audio streams into a new composite
audio stream
Greene, Rosen, Ramalho [Page 36]
Internet draft Megaco Requirements 25 June 1999
c. audio switching; selection of incoming audio stream to be sent out
to all conference participants.
d. video switching; selection of video stream to be sent out to all
conference participants
e. lecture video mode; a video selection option where on video source
is sent out to all conference users
e. multi-point of T.120 data conferencing.
12. Full Copyright Statement
Copyright (C) The Internet Society (May 1999). All Rights Reserved.
This document and translations of it may be copied and furnished to oth-
ers, and derivative works that comment on or otherwise explain it or
assist in its implementation may be prepared, copied, published and dis-
tributed, in whole or in part, without restriction of any kind, provided
that the above copyright notice and this paragraph are included on all
such copies and derivative works. However, this document itself may not
be modified in any way, such as by removing the copyright notice or
references to the Internet Society or other Internet organizations,
except as needed for the purpose of developing Internet standards in
which case the procedures for copyrights defined in the Internet Stan-
dards process must be followed, or as required to translate it into
languages other than English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an "AS
IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK
FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT
INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FIT-
NESS FOR A PARTICULAR PURPOSE."
13. References
Note: Since references to internet-drafts cannot remain in an RFC,
internet- draft references below will be removed at some point. They are
included here in the meantime, to indicate the source of some of the
requirements in this document.
[0] RFC 2119
Greene, Rosen, Ramalho [Page 37]
Internet draft Megaco Requirements 25 June 1999
[1] Cuervo, Greene, Holdrege, Ong, Huitema, "SS7-Internet Interworking
- Architectural Framework", work in progress.
[2] Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson, "RTP: A
Transport Protocol for Real-Time Applications", RFC 1889, January
1996.
[3] Schulzrinne, H., "RTP Profile for Audio and Video Conferences with
Minimal Control", RFC 1890, January 1996.
[4] Vandenameele, J., "Requirements for the Reference Point ("N")
between Media Gateway Controller and Media Gateway", ETSI Tiphon
WG2 working document and Internet-Draft, <draft-vandenameele-
tiphon-arch-gway-decomp-01.txt>, January, 1999.
[5] Holdrege, M., "Multiservice Switching Forum requirements input to
MEGACO", <draft-ietf-megaco-msf-reqs-01.txt>, April, 1999.
[6] Cromwell, D., Durling, M., "Requirements For Control Of An IVR
Function", <draft-cromwell-megaco-ivr-req-00.txt>, April, 1999.
[7] AF-VTOA-0083, ATM Forum document
[8] ITU H.323 Annex C Recommendation
[9] ATM Forum AF-SAA-0124.000
[10] ITU-T T.140
[11] ITU-T V.18
[12] ITU-T Q.931
14. Acknowledgements
The authors would like to acknowledge the many contributors who debated
the media gateway control architecture and requirements on the IETF
Megaco and Sigtran mailing lists.
15. Authors' addresses
Greene, Rosen, Ramalho [Page 38]
Internet draft Megaco Requirements 25 June 1999
Nancy Greene
Nortel Networks
P.O. Box 3511 Stn C
Ottawa, ON, Canada K1Y 4H7
Tel: (514) 271-7221
Email: ngreene@nortelnetworks.com
Michael Ramalho
Cisco
Email: mar42@cornell.edu
Brian Rosen
Fore Systems
1000 FORE Drive, Warrendale, PA 15086
Tel: (724) 742-6826
Email: brosen@eng.fore.com
Greene, Rosen, Ramalho [Page 39]