Subject: Re: [AAA-WG]: Issue 208: Peer State Machine incorrect in case of election

From: Pat Calhoun <[email-masked]>
Date: Fri, 2 Nov 2001 05:36:16 -0800

OOops! I matched the lines incorrectly. You are correct.

Sorry

PatC
On Wed, Oct 31, 2001 at 10:06:41AM -0800, Tony Johansson wrote:
> I agree. I think we said that a CEA with a new result-code set
> "Disconnect peer" on the loosing connection instead of DPR/DPA. And only
> use DPR's on open state connections.
> 
> /Tony
> 
> Bob Kopacz wrote:
> > 
> > Hi,
> > 
> > My recollection was that we talked about adding a DPR cause code,
> > but later decided not to send DPRs during the election process,
> > only in Open state.
> > 
> > But my recollections are often wrong, and this wasn't my issue.
> > 
> > Bob K.
> > 
> > > -----Original Message-----
> > > From: [email-masked] [mailto:[email-masked]]On Behalf Of
> > > Steve Rich
> > > Sent: Tuesday, October 30, 2001 2:58 PM
> > > To: Pat Calhoun
> > > Cc: [email-masked]
> > > Subject: Re: [AAA-WG]: Issue 208: Peer State Machine incorrect in case
> > > of election
> > >
> > >
> > > Pat Calhoun writes:
> > >  > All,
> > >  >
> > >  > I wish to reject this issue. If you look closely at the line in the state
> > >  > machine in question, it causes a CEA to be sent on the Receiver
> > > socket, while
> > >  > the DRP is sent on the Initiator socket. This is the result of an election.
> > >
> > > I think the discussion came around to adding a DPR cause code
> > > appropriate for closing the socket.
> > >
> > > sjr
> > >
> > >  >
> > >  > Could the folks that originally wanted this fixed please speak up. Perhaps
> > >  > I missed something.
> > >  >
> > >  > PatC
> > >  > On Thu, Oct 25, 2001 at 05:30:11PM -0700, Pat Calhoun wrote:
> > >  > > Submitter name: Pat Calhoun
> > >  > > Submitter email address: [email-masked]
> > >  > > Date first submitted: 25-Oct-01
> > >  > > Reference:
> > >  > > Document: base
> > >  > > Comment type: Technical
> > >  > > Priority: 1
> > >  > > Section: 5.6
> > >  > > Rationale/Explanation of issue:
> > >  > >
> > >  > > The last state machine statement is incorrect.
> > >  > > Wait-Returns     Win-Election     I-Disc,R-Snd-CEA R-Open
> > >  > >                  I-Rcv-DPR        I-Snd-DPA,       R-Open
> > >  > >                                   R-Snd-CEA
> > >  > >                  I-Rcv-CEA        R-Snd-DPR        I-Open
> > >  > >
> > >  > > If a CEA is returned with the proper error code, there is no reason
> > >  > > to send a DPR. Add the Result-Code value, and remove the DPR here.
> > >  > >
> > >  >
> > >

---

From: Pat Calhoun <[email-masked]>
Date: Sat, 3 Nov 2001 07:20:03 -0800

All,

Below is the new state machine that addresses this issue. Comments welcomed.

Thanks

PatC
----

state            event              action         next state
-----------------------------------------------------------------
Closed           Start            I-Snd-Conn-Req   Wait-Conn-Ack
                 R-Conn-CER       R-Accept,        R-Open
                                  Process-CER,
                                  R-Snd-CEA

Wait-Conn-Ack    I-Rcv-Conn-Ack   I-Snd-CER        Wait-I-CEA
                 I-Rcv-Conn-Nack  Cleanup          Closed
                 R-Conn-CER       R-Accept,        Wait-Conn-Ack/
                                  Process-CER      Elect
                 Timeout          Error            Closed

Wait-I-CEA       I-Rcv-CEA        Process-CEA      I-Open
                 R-Conn-CER       R-Accept,        Wait-Returns
                                  Process-CER,
                                  Elect
                 I-Peer-Disc      I-Disc           Closed
                 I-Rcv-Non-CEA    Error            Closed
                 Timeout          Error            Closed

Wait-Conn-Ack/   I-Rcv-Conn-Ack   I-Snd-CER,Elect  Wait-Returns
Elect            I-Rcv-Conn-Nack  R-Snd-CEA        R-Open
                 R-Peer-Disc      R-Disc           Wait-Conn-Ack
                 R-Conn-CER       R-Reject         Wait-Conn-Ack/
                                                   Elect
                 Timeout          Error            Closed

Wait-Returns     Win-Election     I-Disc,R-Snd-CEA R-Open
                 I-Peer-Disc      I-Disc,          R-Open
                                  R-Snd-CEA
                 I-Rcv-CEA        R-Disc           I-Open
                 R-Peer-Disc      R-Disc           Wait-I-CEA
                 R-Conn-CER       R-Reject         Wait-Returns
                 Timeout          Error            Closed

R-Open           Send-Message     R-Snd-Message    R-Open
                 R-Rcv-Message    Process          R-Open
                 WatchDog-Timer   R-Snd-DWR        R-Open
                 R-Rcv-DWR        Process-DWR,     R-Open
                                  R-Snd-DWA
                 R-Rcv-DWA        Process-DWA      R-Open
                 R-Conn-CER       R-Snd-CEA        R-Open
                                  R-Reject
                 Stop             R-Snd-DPR        Closing
                 R-Rcv-DPR        R-Snd-DPA,       Closed
                                  R-Disc
                 R-Peer-Disc      R-Disc           Closed
                 R-Rcv-CER        Error            Closed
                 R-Rcv-CEA        Error            Closed

I-Open           Send-Message     I-Snd-Message    I-Open
                 I-Rcv-Message    Process          I-Open
                 WatchDog-Timer   I-Snd-DWR        I-Open
                 I-Rcv-DWR        Process-DWR,     I-Open
                                  I-Snd-DWA
                 I-Rcv-DWA        Process-DWA      I-Open
                 R-Conn-CER       R-Reject         I-Open
                 Stop             I-Snd-DPR        Closing
                 I-Rcv-DPR        I-Snd-DPA,       Closed
                                  I-Disc
                 I-Peer-Disc      I-Disc           Closed
                 I-Rcv-CER        Error            Closed
                 I-Rcv-CEA        Error            Closed

Closing          I-Rcv-DPA        I-Disc           Closed
                 R-Rcv-DPA        R-Disc           Closed
                 Timeout          Error            Closed
                 I-Peer-Disc      I-Disc           Closed
                 R-Peer-Disc      R-Disc           Closed