Connected: An Internet Encyclopedia
RFC 1661 - 4. The Option Negotiation Automaton

Top: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 1661
Prev: 3.7. Link Termination Phase
Next: 4.1. State Transition Table

### 4. The Option Negotiation Automaton

The finite-state automaton is defined by events, actions and state transitions. Events include reception of external commands such as Open and Close, expiration of the Restart timer, and reception of packets from a peer. Actions include the starting of the Restart timer and transmission of packets to the peer.

Some types of packets -- Configure-Naks and Configure-Rejects, or Code-Rejects and Protocol-Rejects, or Echo-Requests, Echo-Replies and Discard-Requests -- are not differentiated in the automaton descriptions. As will be described later, these packets do indeed serve different functions. However, they always cause the same transitions.

       Events                                   Actions

       Up   = lower layer is Up                 tlu = This-Layer-Up
       Down = lower layer is Down               tld = This-Layer-Down
       Open = administrative Open               tls = This-Layer-Started
       Close= administrative Close              tlf = This-Layer-Finished

       TO+  = Timeout with counter > 0          irc = Initialize-Restart-Count
       TO-  = Timeout with counter expired      zrc = Zero-Restart-Count

       RCR+ = Receive-Configure-Request (Good)  scr = Send-Configure-Request
       RCR- = Receive-Configure-Request (Bad)
       RCA  = Receive-Configure-Ack             sca = Send-Configure-Ack
       RCN  = Receive-Configure-Nak/Rej         scn = Send-Configure-Nak/Rej

       RTR  = Receive-Terminate-Request         str = Send-Terminate-Request
       RTA  = Receive-Terminate-Ack             sta = Send-Terminate-Ack

       RUC  = Receive-Unknown-Code              scj = Send-Code-Reject
       RXJ+ = Receive-Code-Reject (permitted)
           or Receive-Protocol-Reject
       RXJ- = Receive-Code-Reject (catastrophic)
           or Receive-Protocol-Reject
       RXR  = Receive-Echo-Request              ser = Send-Echo-Reply
           or Receive-Echo-Reply
           or Receive-Discard-Request

4.1. State Transition Table
4.2. States
4.3. Events
4.4. Actions
4.5. Loop Avoidance
4.6. Counters and Timers

Next: 4.1. State Transition Table

Connected: An Internet Encyclopedia
RFC 1661 - 4. The Option Negotiation Automaton