VIP Listing #323F

Bob Nicson jak9 at INKER.COM
Thu Dec 21 18:24:54 EST 2000


Folks,

The ASN.1 definition for maximum and current call capacities in
H.225.0v4 is as follows:

   
CallCapacity ::= SEQUENCE
{
        maximumCallCapacity             CallCapacityInfo OPTIONAL,
        currentCallCapacity             CallCapacityInfo OPTIONAL,
        ...
}

CallCapacityInfo ::= SEQUENCE
{
        voiceGwCallsAvailable           SEQUENCE OF CallsAvailable
OPTIONAL,
        h310GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h320GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h321GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h322GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h323GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h324GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        t120OnlyGwCallsAvailable        SEQUENCE OF CallsAvailable
OPTIONAL,
        t38FaxAnnexbOnlyGwCallsAvailable SEQUENCE OF CallsAvailable
OPTIONAL,
        terminalCallsAvailable          SEQUENCE OF CallsAvailable
OPTIONAL,
        mcuCallsAvailable               SEQUENCE OF CallsAvailable
OPTIONAL,
        ...
}

CallsAvailable ::= SEQUENCE
{
        calls           INTEGER (0..4294967295),
        group           IA5String (SIZE (1..128)) OPTIONAL,
        ...
}


What this means is that for a given group, to find out the current and
max call capacities, we need to traverse two
different lists (one for maximumCallCapacity and currentCallCapacity)
and get the values. This increses the memory 
required in implementation and extra processsing.

Instead I would like to propose that the maximum and current
CallCapacity fields, with maximum being OPTIONAL inside
the Callsavailable structure as follows:

CallCapacity ::= SEQUENCE
{
        voiceGwCallsAvailable           SEQUENCE OF CallsAvailable
OPTIONAL,
        h310GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h320GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h321GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h322GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h323GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        h324GwCallsAvailable            SEQUENCE OF CallsAvailable
OPTIONAL,
        t120OnlyGwCallsAvailable        SEQUENCE OF CallsAvailable
OPTIONAL,
        t38FaxAnnexbOnlyGwCallsAvailable SEQUENCE OF CallsAvailable
OPTIONAL,
        terminalCallsAvailable          SEQUENCE OF CallsAvailable
OPTIONAL,
        mcuCallsAvailable               SEQUENCE OF CallsAvailable
OPTIONAL,
        ...
}

CallsAvailable ::= SEQUENCE
{
	currentCallCapacity 	INTEGER (0..4294967295),
        maximumCallCapacity 	INTEGER (0..4294967295) OPTIONAL,
        group           	IA5String (SIZE (1..128)) OPTIONAL,
        ...
}

That way we need to traverse only one list to get both the maximum and
current values.

If there is no objection to this, I recommend this change to be made
before the H225.0 v4 publication.

Thanks.

- Logan



More information about the sg16-avd mailing list