Subject: [AAA-WG]: Comments on Issue 111

From: Pat Calhoun <[email-masked]>
Date: Mon, 6 Aug 2001 00:50:09 -0700

All,

Below is my proposed peer state machine to address this issue. The fix
is actually different from the proposed fix, since we cannot simply
remove R-Disc or I-Disc, since these events can occur when a peer fails.
The fix is to add new events for receiving the DPR and DPA, and includes
a new interim state, called Closing.

Comments most appreciated (need to make sure I didn't mess this one up).
If you have a state machine validator, and you know who you are, then
this message is for you :)

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-DPR        I-Snd-DPA        Closing
                 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-Rcv-DPR        R-Snd-DPA,       Wait-Conn-Ack
                                  R-Disc
                 R-Conn-CER       R-Reject         Wait-Conn-Ack/
                                                   Elect
                 Timeout          Error            Closed

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
                 R-Peer-Disc      R-Disc           Wait-I-CEA
                 R-Rcv-DPR        R-Snd-DPA,       Wait-I-CEA
                                  R-Disc
                 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-Reject         R-Open
                 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-Disc           Closed
                 I-Rcv-DPR        I-Snd-DPA,       Closed
                                  I-Disc
                 I-Peer-Disc      I-Snd-DPR        Closing
                 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

---

From: Jacques Caron <[email-masked]>
Date: Mon, 06 Aug 2001 22:53:02 +0200

Hi,

You still need to make sure a CEA is sent before disconnecting the peer, 
e.g. in Wait-Returns/R-Conn-CER.

Also, in Wait-Returns, aren't you supposed to have a "Lose-Election"? 
Actually, since Wait-Returns only handles the result of the election, you 
shouldn't have any of the other events there (the state machine never stays 
in that state waiting for anything to happen). I know I've already been 
told no on that one, but I would still add something about an election tie 
(i.e. connected to oneself).

That's it for now...

Jacques.

>state            event              action         next state

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

---

From: Pat Calhoun <[email-masked]>
Date: Tue, 7 Aug 2001 02:33:24 -0700

check. If I read your comment properly, this particular problem has
nothing to do with Issue 111.

PatC

---

From: Jacques Caron <[email-masked]>
Date: Tue, 07 Aug 2001 13:34:20 +0200

Er, might be possible, I was offline when I wrote this, so I just went 
through the peer state machine as you requested :-)

Jacques.