Skip to content
Related Articles

Related Articles

Point-to-Point Protocol (PPP) Automaton Actions
  • Last Updated : 19 Aug, 2020

Action is basically one of attributes of finite state automaton. As Point-to-Point Protocol (PPP) connections transition takes place from one state to another, some actions are taken in automation that is being caused by some events. Action is generally outcome of event but every event does not cause action to be performed. These actions are given below :

  1. Illegal-Event (-) :
    Illegal event, as the name suggests, simply means event that cannot occur, event that is illegal due to some error and should be reported.
  2. tlu :
    This action label means “this layer up”. This action simply indicates to upper layer that automation is simply entering opened state. This action is implemented as below :
    if (f->callbacks->up)
    (*f->callbacks->up)(f); 
  3. tld :
    This action label means “this layer down”. This action simply indicates to upper layer that automation is simply leaving opened state. This action is implemented as below :
    if( f->callbacks->down )  
    (*f->callbacks->down)(f);
  4. tls :
    This action label means “this layer started”. This action simply indicates lower layers that they are required for connection or link as automation is entering starting state. Highly implementation-dependent results are obtained as result of this action. This action is implemented as below :



    if( f->callbacks->starting )
    (*f->callbacks->starting) (f);
  5. tlf :
    This action label means “this layer finished”. This action simply indicates lower layers that they are no longer required for connection or link as automation is entering Initial, Closed or Stopped states. Highly implementation-dependent results are obtained as result of this action. This action is implemented as below :
    if( f->callbacks->finished )
    (*f->callbacks->finished)(f);
  6. irc :
    This action label means “initialize restart count”. Restart counter is generally set to correct value i.e. Max-Terminate or Max-Configure as result of this action. For each transmission, counter is decremented including first transmission. This action is implemented as below :
    TIMEOUT(fsm_timeout, f, f->timeouttime);
  7. zrc :
    This action label means “zero restart count”. Restart counter is generally set to zero as result of this action. This action is implemented as below :
    UNTIMEOUT(fsm_timeout, f);
  8. scr :
    This action label means “send configure request”. This action indicates desire that configure-request packet is being transmitted, therefore desire has to open link or connection along with some specified set of configurations options. Whenever configure-request packet is being transmitted, restart timer gets started. This is simply started to checkup against any packet loss. This action is implemented as below :
    fsm_sconfreq(f, 0) and
    fsm_sdata(f, CONFREQ, f->reqid, outp, cilen)
  9. sca :
    This action label means “send configure ack”. This action acknowledges reception of configure-request packet along with good set of configuration options whenever configure-ack packet is being transmitted. This action is implemented as below :
    fsm_sdata(f, CONFACK, id, inp, len);
  10. scn : This action label means “send configure nak/rej”. This action acknowledges reception of configure-request packet along with bad set of configuration options whenever configure-nak or configure-reject packet is being transmitted. This action is implemented as below :
    fsm_sdata(f, CODEREJ, +>id, inpacket, len + HEADERLEN);
  11. str :
    This action label means “send terminate request”. This action indicates desire that terminate-request packet is being transmitted, therefore desire has to close link or connection. Whenever configure-request packet is being transmitted, restart timer gets started. This is simply started to checkup against any packet loss. This action is implemented as below :
    fsm_sdata(f, TERMREQ, f->reqid = +>id,  
    (u_char *) f->term_reason, f->term_reason_len);
  12. sta :
    This action label means “send terminate ack”. This action acknowledges reception of terminate-request packet whenever terminate-nak packet is being transmitted. This action is implemented as below :
    fsm_sdata(f, TERMACK, id, NULL, 0);

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up
Recommended Articles
Page :