Subject: [ipcdn] RE: Question on tone table definition in IETF SIG draft-8

From: "T, Shivakumar" <[email-masked]>
Date: Tue, 14 Jun 2005 14:54:54 +0530

In order to support tones with more than 2 frequencies, the sig mib
draft-8 can be modified slightly to support these. A new frequency table
has to be added to specify multiple frequencies.

The modified tone table is given below:

   pktcSigDevToneType        OBJECT-TYPE   
       SYNTAX       INTEGER {   
                    busy(1),   
                    confirmation(2),   
                    dial(3),   
                    messageWaiting(4),   
                    offHookWarning(5),   
                    ringBack(6),   
                    reOrder(7),   
                    stutterdial(8),   
                    callWaiting1(9),   
                    callWaiting2(10),   
                    callWaiting3(11),   
                    callWaiting4(12),  
                    alertingSignal(13),  
                    specialDial(14),  
                    specialInfo(15),  
                    release(16),  
                    congestion(17),  
                    userDefined1(18),  
                    userDefined2(19),  
                    userDefined3(20),  
                    userDefined4(21)  
                    }   
       MAX-ACCESS   not-accessible  
       STATUS       current   
       DESCRIPTION   
           "Unique value ranging from 1 to 21 that will correspond   
            to the different tone types. These tones can be  
            provisioned based on country specific needs. This  
            object defines the type of tone being accessed.  
            The alertingSignal, specialDial, specialInfo, release, 
            congestion and userDefined1-4 tone types are used in  
            the E line package."  
       ::= { pktcSigDevConfigObjects 32 }   

   pktcSigDevToneTable    OBJECT-TYPE  
       SYNTAX       SEQUENCE OF PktcSigDevToneEntry  
       MAX-ACCESS   not-accessible  
       STATUS       current  
       DESCRIPTION  
           " The Tone Table defines the various tone operations. Any 
             definition of the tones callWaiting1-4 in this table 
             should just contain the audible tone itself and NOT 
             contain the delay between tones or the tone repeat count. 
             The delay between tones or the repeat count is controlled 
             by the objects pktcNcsEndPntConfigCallWaitingDelay, and 
             pktcNcsEndPntConfigCallWaitingMaxRep. If the  
             pktcSigDevToneType is set to either of the values 
             callWaiting1, callWaiting2, callWaiting3 or callWaiting4, 
             then the value of the pktcSigDevToneWholeToneRepeatCount 
             object has no effect on the tone. The MTA MUST 
             make sure that, after the provisioning cycle, the table is 
             fully populated (i.e., for each possible index, an entry 
             MUST be defined) using reasonable defaults for each row 
             that was not defined by the provisioning information. 
             Objects in this table do not persist across MTA reboots. 
             For tones with multiple frequencies refer to the MIB table 
             pktcSigDevMultiFreqToneTable." 
       REFERENCE  
           "NCS Specification, TS 101 909-4 Specification" 
       ::= { pktcSigDevConfigObjects 34 }  
    
   pktcSigDevToneEntry    OBJECT-TYPE  
       SYNTAX       PktcSigDevToneEntry  
       MAX-ACCESS   not-accessible  
       STATUS       current  
       DESCRIPTION  
           " The different tone types that can be provisioned based on 
             country specific needs." 
       INDEX { pktcSigDevToneType }  
       ::= { pktcSigDevToneTable 1 }  
    
   PktcSigDevToneEntry ::= SEQUENCE { 
       pktcSigDevToneDbLevel                   TenthdBm,  
       pktcSigDevToneWholeToneRepeatCount      Unsigned32,  
       pktcSigDevToneSteady                    TruthValue,  
       pktcSigDevToneNumFrequencies            Unsigned32
       }  

   pktcSigDevToneDbLevel    OBJECT-TYPE 
       SYNTAX       TenthdBm (-250..-30) 
       UNITS        "dBm"  
       MAX-ACCESS   read-write  
       STATUS       current  
       DESCRIPTION  
    
             "This MIB Object contains the decibel level for each

             analog signal (tone) that is locally generated  
             versus in band supervisory tones) and sourced to  
             the a-b terminals (TE connection point). Each tone  
             in itself may consist of multiple frequencies as  
             defined by the MIB table  
             'pktcSigDevMultiFreqToneTable'.  
    
             This MIB Object MUST reflect the desired level at  
             the Telco (POTS) a-b (T/R) terminals including the  
             affect of the pktcNcsEndPntConfigRxGain setting on  
             the delivered tone.  
    
             The wide range of levels for this Object is required  
             to provide signal generator levels across the wide  
             range of gains - but does not imply the entire range  
             is to be achievable given the range of negative  
             values of gain (positive loss). This MIB Object must  
             be set for each tone so as to generate the combined  
             frequency level at the a-b (T/R) terminals." 
 
       DEFVAL { -40 }  
       ::={pktcSigDevToneEntry 1 }  

   pktcSigDevToneWholeToneRepeatCount      OBJECT-TYPE  
       SYNTAX       Unsigned32 (0..5000)  
       MAX-ACCESS   read-write  
       STATUS       current  
       DESCRIPTION  
           "This is the repeat count, which signifies how many times 
            to repeat the entire on-off sequence. Setting this object 
            may result in a tone duration longer or shorter than the 
            overall signal duration specified by the time out (TO) 
            object for a particular signal. If the repeat count results 
            in a longer tone duration than the signal duration 
            specified by the TO, the tone duration defined 
            by the TO object for a particular signal always represents 
            the overall signal duration for a tone. In this case, the 
            tone duration repeat count will not be fully exercised and 
            the desired tone duration will be truncated per the TO 
            setting. If the repeat count results in a shorter tone 
            duration than the signal duration specified by the TO, the 
            tone duration defined by the repeat count takes precedence 
            over the TO and will end the signal event. In this case, 
            the TO represents a time not to be exceeded for the signal. 
            It is recommended to ensure proper telephony signaling that 
            The TO duration setting should always be longer than the 
            desired repeat count time duration." 
       ::={ pktcSigDevToneEntry 2 }  
    
   pktcSigDevToneSteady    OBJECT-TYPE  
       SYNTAX       TruthValue  
       MAX-ACCESS   read-write  
       STATUS       current  
       DESCRIPTION  
           "This is the steady tone. Device must play out the on-off 
            sequence for pktcSigDevToneWholeRepeatCount times and 
            then apply the last tone forever. Setting this object 
            may result in a tone duration longer or shorter than the 
            overall signal duration specified by the time out (TO) 
            object for a particular signal. If the repeat count results 
            in a longer tone duration than the signal duration 
            specified by the TO, the tone duration defined 
            by the TO object for a particular signal always represents 
            the overall signal duration for a tone. In this case, the 
            tone duration repeat count will not be fully exercised and 
            the desired tone duration will be truncated per the TO 
            setting. If the repeat count results in a shorter tone 
            duration than the signal duration specified by the TO, the 
            tone duration defined by the repeat count takes precedence 
            over the TO and will end the signal event. In this case, 
            the TO represents a time not to be exceeded for the signal. 
            It is recommended to ensure proper telephony signaling that 
            The TO duration setting should always be longer than the 
            desired repeat count time duration plus the desired maximum 
            steady tone period."  
       ::={ pktcSigDevToneEntry 3 }  
    
   pktcSigDevToneNumFrequencies    OBJECT-TYPE  
       SYNTAX       Unsigned32  
       MAX-ACCESS   read-write  
       STATUS       current  
       DESCRIPTION  
         "This MIB Object specifies the number of frequencies 
          supported by the PacketCable MTA for each tone type."   
       ::={ pktcSigDevToneEntry 4 }  

      pktcSigDevMultiFreqToneTable    OBJECT-TYPE   
          SYNTAX       SEQUENCE OF PktcSigDevMultiFreqToneEntry 
          MAX-ACCESS   not-accessible   
          STATUS       current   
    
          DESCRIPTION   
              " This MIB table defines the characteristics of tones 
                with multiple frequencies. The constraints imposed 
                on the tones by the MIB table pktcSigDevToneTable 
                need to be considered for MIB objects in this table 
                as well." 
          REFERENCE   
              "NCS Specification, TS 101 909-4 Specification"  
          ::= { pktcSigDevConfigObjects 35 }   
    
      pktcSigDevMultiFreqToneEntry    OBJECT-TYPE   
          SYNTAX       PktcSigDevMultiFreqToneEntry 
          MAX-ACCESS   not-accessible   
          STATUS       current   
          DESCRIPTION   
              " The different tone types with multiple frequencies  
                that can be provisioned based on country specific 
   needs." 
          INDEX { pktcSigDevToneType, pktcSigDevToneFrequencyNumber }   
          ::= { pktcSigDevMultiFreqToneTable 1 }   
    
      PktcSigDevMultiFreqToneEntry ::= SEQUENCE { 
       pktcSigDevToneFrequencyNumber           Unsigned32 , 
            pktcSigDevToneFreqPriCompGrpNum         Unsigned32, 
            pktcSigDevToneFreqSecCompGrpNum         Unsigned32, 
            pktcSigDevToneFreqSecCompMode           INTEGER, 
            pktcSigDevToneFreqSecCompPrtg           Integer32, 
            pktcSigDevToneFreqOnDuration            Unsigned32, 
            pktcSigDevToneFreqOffDuration           Unsigned32, 
            pktcSigDevToneFreqRepeatCount           Unsigned32 
      } 
    
      pktcSigDevToneFrequencyNumber    OBJECT-TYPE   
          SYNTAX       Unsigned32(1..12) 
          MAX-ACCESS   not-accessible 
          STATUS       current   
          DESCRIPTION   
             "This MIB Object represents the frequency reference  
              of a multi-frequency tone. It is to be noted that 
              the maximum number of frequencies for a  
              multi-frequency tone is limited by the MIB Object 
              pktcSigDevToneNumFrequencies."   
          ::={ pktcSigDevMultiFreqToneEntry 1}   
    
      pktcSigDevToneFreqPriCompGrpNum   OBJECT-TYPE   
          SYNTAX       Unsigned32 
          MAX-ACCESS   read-write   
          STATUS       current   
          DESCRIPTION   
             "This MIB Object along with pktcSigDevToneType represent
              the primary component that is generated by summing up all
              pktcSigDevToneFreqValue entries in pktcSigDevToneFreqTable
              with index pktcSigDevToneType and
pktcSigDevToneFreqPriCompGrpNum."
          ::={ pktcSigDevMultiFreqToneEntry 2}   
    
      pktcSigDevToneFreqSecCompGrpNum   OBJECT-TYPE   
          SYNTAX       Unsigned32 
          MAX-ACCESS   read-write   
          STATUS       current   
          DESCRIPTION   
             "This MIB Object along with pktcSigDevToneType represent
              the secondary component that is generated by summing up
all
              pktcSigDevToneFreqValue entries in pktcSigDevToneFreqTable
              with index pktcSigDevToneType and
pktcSigDevToneFreqPriCompGrpNum."
          ::={ pktcSigDevMultiFreqToneEntry 3}   
    
      pktcSigDevToneFreqSecCompMode OBJECT-TYPE   
          SYNTAX       INTEGER { 
                        ignoreSecondary (1), 
                        primaryModulatedBySecondary (2), 
                       } 
          MAX-ACCESS   read-write   
          STATUS       current   
          DESCRIPTION   
          "This MIB Object indicates the way the primary  
           and secondary frequency components indicated 
           by the MIB Objects 'pktcSigDevToneFreqPriCompValue' 
           and 'pktcSigDevToneFreqSecCompValue' are to be used. 
            
           A value of primaryModulatedBySecondary(2) indicates  
           that the primary must be used to amplitude modulate 
           the secondary. The percentage of amplitude modulation 
           to be applied to the secondary is defined by the MIB 
           Object 'pktcSigDevToneFreqSecCompPrtg'. 
    
           A value of ignoreSecondary(1) indicates that the  
           secondary must not be used." 
          ::={ pktcSigDevMultiFreqToneEntry 4}   
    
     pktcSigDevToneFreqSecCompPrtg OBJECT-TYPE   
          SYNTAX       Integer32(0..100) 
          MAX-ACCESS   read-write   
          STATUS       current   
          DESCRIPTION   
             "This MIB Object represents the percentage of amplitude 
              modulation applied to the secondary frequency component 
              when the MIB Object 'pktcSigDevToneFreqSecCompMode' is 
              set to a value of 'primaryModulatedBySecondary(2)'. 
              In all other cases this MIB Object has no meaning."   
          ::={ pktcSigDevMultiFreqToneEntry 5}   
    
      pktcSigDevToneFreqOnDuration                     OBJECT-TYPE   
          SYNTAX       Unsigned32(0..5000) 
          MAX-ACCESS   read-write   
          STATUS       current   
          DESCRIPTION   
             "This MIB Object represents the duration for which the 
              frequency reference corresponding to the tone type 
              is turned on."   
          ::={ pktcSigDevMultiFreqToneEntry 6}   
    
      pktcSigDevToneFreqOffDuration                     OBJECT-TYPE   
          SYNTAX       Unsigned32(0..5000) 
          MAX-ACCESS   read-write   
          STATUS       current   
          DESCRIPTION   
             "This MIB Object represents the duration for which the 
              frequency reference corresponding to the tone type 
              is turned off."   
          ::={ pktcSigDevMultiFreqToneEntry 7}   
    
      pktcSigDevToneFreqRepeatCount             OBJECT-TYPE   
          SYNTAX       Unsigned32(0..5000)  
          MAX-ACCESS   read-write   
          STATUS       current   
          DESCRIPTION   
          "This MIB Object indicates the number of times 
          to repeat the cadence cycle represented by the  
          on/off durations (refer to the MIB Objects  
          pktcSigDevToneFreqOnDuration and  
          pktcSigDevToneFreqOffDuration).  
    
          Setting this object may result in a tone duration  
          longer or shorter than the overall signal duration  
          specified by the time out (TO) object for the  
          corresponding tone type. If the value of this MIB 
          Object indicates a longer duration than the  
          specified by the TO, the latter overrules the former 
          and the desired tone duration will be truncated according 
          to the TO. 
    
          However, if the repeat count results in a shorter 
          tone duration than the signal duration specified by 
          the TO, the tone duration defined by the repeat count 
          takes precedence over the TO and will end the signal 
          event. In this case, the TO represents a time not to 
          be exceeded for the signal. It is recommended to 
          ensure proper telephony signaling that the TO 
          duration setting should always be longer than the 
          desired repeat count time duration. A value of zero 
          means the tone sequence is to be played once but not 
          repeated." 
          ::={ pktcSigDevMultiFreqToneEntry 8}   
    
    pktcSigDevToneFreqTable     OBJECT-TYPE
        SYNTAX      SEQUENCE OF PktcSigDevToneFreqEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            " The Frequency table defines the various frequencies 
              that are required to play a tone."
    REFERENCE
        "NCS Specification"
    ::= { pktcSigDevConfigObjects 36 }

    pktcSigDevToneFreqEntry     OBJECT-TYPE
        SYNTAX      PktcSigDevToneFreqEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            " The Frequency table defines the various frequencies 
              that are required to play a tone."
        INDEX {
pktcSigDevToneType,pktcSigDevToneFreqGrpNumber,pktcSigDevToneFreqIndex }
        ::= { pktcSigDevToneFreqTable 1 }
        
    PktcSigDevToneFreqEntry ::= SEQUENCE {
        pktcSigDevToneFreqGrpNumber     Unsigned32,
        pktcSigDevToneFreqIndex         Unsigned32,
        pktcSigDevToneFreqValue         Unsigned32
        }

    pktcSigDevToneFreqGrpNumber     OBJECT-TYPE
        SYNTAX      Unsigned32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This MIB Object along with pktcSigDevToneType groups
multiple frequency entries that has to be added to form a tone."
        ::= { pktcSigDevToneFreqEntry 1 }
    
    pktcSigDevToneFreqIndex     OBJECT-TYPE
        SYNTAX      Unsigned32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This MIB Object represents the frequency reference of a
multi-frequency tone for each tone type and
pktcSigDevToneFreqGrpNumber."
        ::= { pktcSigDevToneFreqEntry 2 }
    
    pktcSigDevToneFreqValue     OBJECT-TYPE
        SYNTAX      Unsigned32(0..4000)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "This MIB Object represents the frequency in Hz."
        ::= { pktcSigDevToneFreqEntry 3 }

As an example, the offhook-warning and callwaiting4 tone entries with
the new tone table is shown below:
---------------------------------------------
pktcSigDevToneFreqValue.5.1.1 = 1400
pktcSigDevToneFreqValue.5.1.2 = 2060
pktcSigDevToneFreqValue.5.1.3 = 2450
pktcSigDevToneFreqValue.5.1.4 = 2600

pktcSigDevToneFreqValue.12.1.1 = 440
---------------------------------------------
pktcSigDevToneFreqPriCompGrpNum.5.1 = 1
pktcSigDevToneFreqSecCompGrpNum.5.1 = 1
pktcSigDevToneFreqSecCompMode.5.1   = 1
pktcSigDevToneFreqSecCompPrtg.5.1   = 0
pktcSigDevToneFreqOnDuration.5.1    = 100
pktcSigDevToneFreqOffDuration.5.1   = 100
pktcSigDevToneFreqRepeatCount.5.1   = 1

pktcSigDevToneFreqPriCompGrpNum.12.1 = 1
pktcSigDevToneFreqSecCompGrpNum.12.1 = 1
pktcSigDevToneFreqSecCompMode.12.1   = 1
pktcSigDevToneFreqSecCompPrtg.12.1   = 0
pktcSigDevToneFreqOnDuration.12.1    = 100
pktcSigDevToneFreqOffDuration.12.1   = 100
pktcSigDevToneFreqRepeatCount.12.1   = 1

pktcSigDevToneFreqPriCompGrpNum.12.2 = 1
pktcSigDevToneFreqSecCompGrpNum.12.2 = 1
pktcSigDevToneFreqSecCompMode.12.2   = 1
pktcSigDevToneFreqSecCompPrtg.12.2   = 0
pktcSigDevToneFreqOnDuration.12.2    = 300
pktcSigDevToneFreqOffDuration.12.2   = 100
pktcSigDevToneFreqRepeatCount.12.2   = 1

pktcSigDevToneFreqPriCompGrpNum.12.3 = 1
pktcSigDevToneFreqSecCompGrpNum.12.3 = 1
pktcSigDevToneFreqSecCompMode.12.3   = 1
pktcSigDevToneFreqSecCompPrtg.12.3   = 0
pktcSigDevToneFreqOnDuration.12.3    = 100
pktcSigDevToneFreqOffDuration.12.3   = 100
pktcSigDevToneFreqRepeatCount.12.3   = 1
---------------------------------------------
pktcSigDevToneDbLevel.5              = 30
pktcSigDevToneWholeToneRepeatCount.5 = 5000
pktcSigDevToneSteady.5               = 2 
pktcSigDevToneNumFrequencies.5       = 1

pktcSigDevToneDbLevel.12              = -130
pktcSigDevToneWholeToneRepeatCount.12 = 700
pktcSigDevToneSteady.12               = 2 
pktcSigDevToneNumFrequencies.12       = 3
---------------------------------------------

Regards,
Shiva

-----Original Message-----
From: Kumar, Satish 
Sent: Monday, June 13, 2005 9:24 PM
To: [email-masked]
Cc: Sanchez, Mauricio; T, Shivakumar
Subject: Question on tone table definition in IETF SIG draft-8

Questions on sig mib draft-8 tone table representation.

1. According to NCS spec, "ROH Tone is generated by combining four tones
at frequencies of 1400 Hertz, 2060 Hertz, 2450 Hertz and 2600 Hertz at a
cadence of 0.1 second on, 0.1 second off, repeating."
But in the latest IETF signaling draft(ver 8),
pktcSigDevMultiFreqToneTable contains provision to store only two
frequency components.What would happen in the case that more than two
frequencies are required, like in the case of off-hook warning
notifications, where four frequencies are used??

2. Could it be possible to have an example of complex signals that were
used to define the requirements from this draft, in form of the MIB
elements (e.g. Japanese signal with the different element definitions or
complex repetition signals) for testing purposes?

3. pktcSigDevToneFrequencyNumber is the index to
pktcSigDevMultiFreqToneTable and its value ranges from 5-16. Why should
the index value start from 5??? 

Comments please...

Thanks,
Satish Kumar
Texas Instruments

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

---

From: "Sumanth Channabasappa" <[email-masked]>
Date: Wed, 22 Jun 2005 15:33:21 -0600

Satish, 

Comments inline:

Q1. According to NCS spec, "ROH Tone is generated by combining four
tones at frequencies of 1400 Hertz, 2060 Hertz, 2450 Hertz and 2600
Hertz at a cadence of 0.1 second on, 0.1 second off, repeating."
But in the latest IETF signaling draft(ver 8),
pktcSigDevMultiFreqToneTable contains provision to store only two
frequency components.What would happen in the case that more than two
frequencies are required, like in the case of off-hook warning
notifications, where four frequencies are used??

[sumanth]
Essentially, as pointed out by David (
http://www1.ietf.org/mail-archive/web/ipcdn/current/msg01625.html), the
cause for the change was Randy's original comment
(http://www1.ietf.org/mail-archive/web/ipcdn/current/msg01466.html) and
subsequent offline discussions with Gordon.

However, it is to be noted that multiple frequencies can be supported as
'pktcSigDevMultiFreqToneTable' is indexed using two indices
('pktcSigDevToneType' and 'pktcSigDevToneFrequencyNumber').

The MIB Objects 'pktcSigDevToneFreqPriCompValue' and
'pktcSigDevToneFreqSecCompValue' are 'components' of a single frequency
as opposed to 'frequencies' themselves.

  In summary,
  'pktcSigDevToneEntry' is indexed by 'pktcSigDevToneType'.
  'pktcSigDevMultiFreqToneTable' is indexed by 'pktcSigDevToneType' and
'pktcSigDevToneFrequencyNumber'

   Thus, for each tone (represented by 'pktcSigDevToneType') one could 
   have multiple frequencies (represented by
'pktcSigDevToneFrequencyNumber') 
   and each frequency in turn could have dual components (one if the
secondary is unused;
   represented using 'pktcSigDevToneFreqPriCompValue' and
'pktcSigDevToneFreqSecCompValue')

   See example later in this email.

Does that help?

[sumanth] 

Gordon had provided an example earlier, which is reproduced as follows:

Japan call waiting tone with the following definition per ITU-T E.180:
f1 mod f2, where f1=400 Hz AM modulated by 16 Hz, f2=400 Hz not AM
modulated
cadence:
First tone : 500ms ON then 0 to 400ms OFF
Second tone: 50ms  ON then 450ms  OFF
Third tone : 50ms  ON then 3450ms OFF
Fourth tone: 50ms  ON then 450ms  OFF
Fifth tone : 50ms  ON then 3450ms OFF
not repeated, not continuous

pktcSigDevToneFrequencyNumber    001  002 003  004 005

pktcSigDevToneFreqPriCompValue   400  400 400  400 400

pktcSigDevToneFreqSecCompValue   016  000 016  000 016

pktcSigDevToneFreqSecCompMode    001  003 001  003 001

pktcSigDevToneFreqSecCompPrtg    090  000 090  000 090

pktcSigDevToneFreqOnDuration     500  050 050  050 050

pktcSigDevToneFreqOffDuration    400  450 3450 450 3450

pktcSigDevToneFreqRepeatCount    000  000 0000 000 0000

Thus, for this tone type, the table 'pktcSigDevToneEntry' would have
entries indexed by:
X,1
X,2
X,3
X,4
X,5

Where X is the tone type being referenced.

[sumanth] 

As you may recall, we initially had:

>     pktcSigDevToneFirstFrequency            Unsigned32,
>     pktcSigDevToneSecondFrequency           Unsigned32,
>     pktcSigDevToneThirdFrequency            Unsigned32,
>     pktcSigDevToneFourthFrequency           Unsigned32,
>     pktcSigDevToneFifthFrequency            Unsigned32,

Thus, to be compatible with the previous definitions, the lower limit
was set to 5 (I don't recall any other reason, apologies :( )

Let me know if there is something amiss.

regards
Sumanth