Subject: Re: questions regarding hook state in residential gateways

From: Tom-PT Taylor <[email-masked]>
Date: Mon, 22 Nov 1999 06:52:50 -0600

I don't think we should be trying to save the call which is lost in your
example.  Until the MG and MGC have completed their startup exchanges, the
MG is not "in business" and shouldn't be servicing calls.  If you expect
that MGs in your context may be experiencing a lot of cold starts we should
rethink the issue, but I suspect you could do a proprietary work-around in
that case.

> -----Original Message-----
> From: Wai-Tak Siu [SMTP:[email-masked]]
> Sent: Saturday, November 20, 1999 12:41 PM
> To:   [email-masked]
> Subject:      Re: questions regarding hook state in residential gateways
>
> Nancy,
>         I was asking about event detection, not signal generation.
>         My original question is best illustrated by this scenario:
>
> A residential gateway has just cold-started. Before the gateway generates
> a restart ServiceChange, the user picks up the handset. The gateway
> detects the offhook transition, but since it does not have an
> EventDescriptor, it does not generate Notify.
> Soon later, the gateway generates a restart ServiceChange. After the MGC
> receives the message, it generates a Modify to the gateway to request for
> offhook detection. However, since the offhook transition has happened, the
> gateway does not generate Notify.
> Since the gateway does not play any tone to the user, the user hangs up
> the phone. Since the MGC has not requested the gateway to detect onhook
> transition, the gateway does not generate Notify either.
>
>         Explicit detection could solve this problem. When the phone is
> offhook, and the gateway receives an EventDescriptor, the gateway can
> reject the descriptor with a specific error code to tell the MGC that the
> phone is already offhook. Since there has been no call established, the
> user must have wanted to make a phone call, and the MGC can sends a
> SignalDescriptor in time to instruct the gateway to generate dialtone.
>         However, v12 does not define explicit detection.
>
>         Thanks.
> Waitak
>
> On Fri, 19 Nov 1999, Nancy-M Greene wrote:
>
> > Waitak, I'm not sure I understand the issue.
> >
> > In Annex E.7, the Analog Line Supervision Package defines events "on"
> for
> > onhook, and "off" for offhook. The MGC asks the MG to look for them
> using a
> > Modify command with SignalsDescriptor set as follows:
> >
> > To look for onhook:
> > Context = contextID {
> >   Modify = terminationID { Signals {al/on} } }
> >
> > To look for offhook:
> > Context = contextID {
> >   Modify = terminationID { Signals {al/off} } }
> >
> > What do you mean when you say the MGC always has to request both offhook
> and
> > onhook transitions?
> >
> > Nancy
> >
> --------------------------------------------------------------------------
> > Nancy M. Greene
> > Internet & Service Provider Networks, Nortel Networks
> > T:514-271-7221 (internal:ESN853-1077) E:[email-masked]
> >
> > > ----------
> > > From:         Wai-tak Siu[SMTP:[email-masked]]
> > > Sent:         Friday, November 19, 1999 4:40 PM
> > > To:   [email-masked]
> > > Subject:      questions regarding hook state in residential gateways
> > >
> > > Hi,
> > >     If H.248 is used in residential gateway applications, because the
> > > protocol does not define how MGC and MG can be synchronized on the
> > > gateway's hook state (i.e. offhook vs onhook), MGC, when requesting
> the
> > > gateway to detect hook state change, always has to request both
> offhook
> > > and onhook transitions. Is this too cumbersome?
> > >     Explicit detection (as defined in MGCP) should help solve this
> > > problem. What is the reason why it is left out in H.248?
> > >     Thanks.
> > > Waitak
> > > Cisco Systems
> > >
> >

---

From: Michael Thomas <[email-masked]>
Date: Mon, 22 Nov 1999 09:43:30 -0800

One way to view this problem is that the MG is in
the Notify state when it is in the process of
rebooting. It should put things into quarantine
buffer (or whatever the MEGACO equivalent is)
until the first event descriptor comes down.

          Mike

Tom-PT Taylor writes:
 > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
 > <HTML>
 > <HEAD>
 > <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
 > <META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2448.0">
 > <TITLE>RE: questions regarding hook state in residential gateways</TITLE>
 > </HEAD>
 > <BODY>
 >
 > <P><FONT COLOR="#0000FF" SIZE=2 FACE="Arial">I don't think we should be trying to save the call which is lost in your example.&nbsp; Until the MG and MGC have completed their startup exchanges, the MG is not &quot;in business&quot; and shouldn't be servicing calls.&nbsp; If you expect that MGs in your context may be experiencing a lot of cold starts we should rethink the issue, but I suspect you could do a proprietary work-around in that case.</FONT></P>
 > <UL>
 > <P><FONT SIZE=1 FACE="Arial">-----Original Message-----</FONT>
 > <BR><B><FONT SIZE=1 FACE="Arial">From:&nbsp;&nbsp;</FONT></B> <FONT SIZE=1 FACE="Arial">Wai-Tak Siu [SMTP:[email-masked]]</FONT>
 > <BR><B><FONT SIZE=1 FACE="Arial">Sent:&nbsp;&nbsp;</FONT></B> <FONT SIZE=1 FACE="Arial">Saturday, November 20, 1999 12:41 PM</FONT>
 > <BR><B><FONT SIZE=1 FACE="Arial">To:&nbsp;&nbsp;&nbsp;&nbsp;</FONT></B> <FONT SIZE=1 FACE="Arial">[email-masked]</FONT>
 > <BR><B><FONT SIZE=1 FACE="Arial">Subject:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT></B> <FONT SIZE=1 FACE="Arial">Re: questions regarding hook state in residential gateways</FONT>
 > </P>
 >
 > <P><FONT SIZE=2 FACE="Arial">Nancy,</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I was asking about event detection, not signal generation.</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; My original question is best illustrated by this scenario:</FONT>
 > </P>
 >
 > <P><FONT SIZE=2 FACE="Arial">A residential gateway has just cold-started. Before the gateway generates</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">a restart ServiceChange, the user picks up the handset. The gateway</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">detects the offhook transition, but since it does not have an</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">EventDescriptor, it does not generate Notify.</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">Soon later, the gateway generates a restart ServiceChange. After the MGC</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">receives the message, it generates a Modify to the gateway to request for</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">offhook detection. However, since the offhook transition has happened, the</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">gateway does not generate Notify.</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">Since the gateway does not play any tone to the user, the user hangs up</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">the phone. Since the MGC has not requested the gateway to detect onhook</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">transition, the gateway does not generate Notify either.</FONT>
 > </P>
 >
 > <P><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Explicit detection could solve this problem. When the phone is</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">offhook, and the gateway receives an EventDescriptor, the gateway can</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">reject the descriptor with a specific error code to tell the MGC that the</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">phone is already offhook. Since there has been no call established, the</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">user must have wanted to make a phone call, and the MGC can sends a</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">SignalDescriptor in time to instruct the gateway to generate dialtone.</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; However, v12 does not define explicit detection.</FONT>
 > </P>
 >
 > <P><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Thanks.</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">Waitak</FONT>
 > </P>
 >
 > <P><FONT SIZE=2 FACE="Arial">On Fri, 19 Nov 1999, Nancy-M Greene wrote:</FONT>
 > </P>
 >
 > <P><FONT SIZE=2 FACE="Arial">&gt; Waitak, I'm not sure I understand the issue.</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; In Annex E.7, the Analog Line Supervision Package defines events &quot;on&quot; for</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; onhook, and &quot;off&quot; for offhook. The MGC asks the MG to look for them using a</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; Modify command with SignalsDescriptor set as follows:</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; To look for onhook:</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; Context = contextID {</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;&nbsp;&nbsp; Modify = terminationID { Signals {al/on} } }</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; To look for offhook:</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; Context = contextID {</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;&nbsp;&nbsp; Modify = terminationID { Signals {al/off} } }</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; What do you mean when you say the MGC always has to request both offhook and</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; onhook transitions?</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; Nancy</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; --------------------------------------------------------------------------</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; Nancy M. Greene</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; Internet &amp; Service Provider Networks, Nortel Networks</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; T:514-271-7221 (internal:ESN853-1077) E:[email-masked]</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; ----------</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; From:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Wai-tak Siu[SMTP:[email-masked]]</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; Sent:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Friday, November 19, 1999 4:40 PM</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; To:&nbsp;&nbsp; [email-masked]</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; Subject:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; questions regarding hook state in residential gateways</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; Hi,</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp; If H.248 is used in residential gateway applications, because the</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; protocol does not define how MGC and MG can be synchronized on the</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; gateway's hook state (i.e. offhook vs onhook), MGC, when requesting the</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; gateway to detect hook state change, always has to request both offhook</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; and onhook transitions. Is this too cumbersome?</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp; Explicit detection (as defined in MGCP) should help solve this</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; problem. What is the reason why it is left out in H.248?</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp; Thanks.</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; Waitak</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt; Cisco Systems</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt; &gt;</FONT>
 > <BR><FONT SIZE=2 FACE="Arial">&gt;</FONT>
 > </P>
 > </UL>
 > </BODY>
 > </HTML>

---

From: Wai-tak Siu <[email-masked]>
Date: Mon, 22 Nov 1999 11:20:43 -0800

Michael,
    Events that are detected can only go into the quarantine buffer if they have been requested in the active EventDescriptor. What you recommended does not conform to the protocol.
    In Annex D.1.6 Fighting the restart avalanche, it is stated that the restart procedure be started if the restart timer expires OR if there is local user activity user activity, such as offhook. Therefore, the protocol does attempt to handle the scenario I described. However, it is not complete without explicit detection.
    Thanks.
Waitak