Subject: [Pana] [issue20] Retransmission timers and counts

From: [email-masked]
Date: Wed, 1 Oct 2003 13:18:42 +0300

Dan Forsberg <[email-masked]> added the comment:

X. PANA protocol message retransmissions

   The PANA protocol provides retransmissions for messages that do not
   carry EAP payload AVP.  The messages that need retransmissions are
   listed below:

        PANA-PAA-Discover (PDI)
        PANA-Start-Answer (PSA)
        PANA-Bind-Request (PBR)
        PANA-Reauth-Request (PRAR)
        PANA-Termination-Request (PTR)

   The PDI and PSA messages are always sent by the PaC.  PBR is sent
   by PAA.  The last two messages, PRAR and PTR are sent either by PaC
   or PAA.

   The rule is that the sender of the request message retransmits the
   request if the corresponding answer is not received in time.
   Answer messages are sent as answers to the request messages, not
   based on a timer.  Exception to this rule is the PSA message.
   Because of the stateless nature of the PAA in the beginning PaC
   provides retransmission also for the PSA message.  PANA-Error
   messages MUST not be retransmitted.  See section <TBD> for more
   details of PANA error handling.

   PANA retransmission timers are based on the model used in DHCPv6
   [RFC3315].  Variables used here are also borrowed from this
   specification.  PANA is a request response like protocol.  The
   message exchange terminates when either the request sender
   successfully receives the appropriate answer, or when the message
   exchange is considered to have failed according to the
   retransmission mechanism described below.

   The retransmission behavior is controlled and described by the
   following variables:

      RT     Retransmission timeout

      IRT    Initial retransmission time

      MRC    Maximum retransmission count

      MRT    Maximum retransmission time

      MRD    Maximum retransmission duration

      RAND   Randomization factor

   With each message transmission or retransmission, the sender sets
   RT according to the rules given below.  If RT expires before the
   message exchange terminates, the sender recomputes RT and
   retransmits the message.

   Each of the computations of a new RT include a randomization factor
   (RAND), which is a random number chosen with a uniform distribution
   between -0.1 and +0.1.  The randomization factor is included to
   minimize synchronization of messages.

   The algorithm for choosing a random number does not need to be
   cryptographically sound.  The algorithm SHOULD produce a different
   sequence of random numbers from each invocation.

   RT for the first message transmission is based on IRT:

      RT = IRT + RAND*IRT

   RT for each subsequent message transmission is based on the previous
   value of RT:

      RT = 2*RTprev + RAND*RTprev

   MRT specifies an upper bound on the value of RT (disregarding the
   randomization added by the use of RAND).  If MRT has a value of 0,
   there is no upper limit on the value of RT.  Otherwise:

      if (RT > MRT)
         RT = MRT + RAND*MRT

   MRC specifies an upper bound on the number of times a sender may
   retransmit a message.  Unless MRC is zero, the message exchange
   fails once the sender has transmitted the message MRC times.

   MRD specifies an upper bound on the length of time a sender may
   retransmit a message.  Unless MRD is zero, the message exchange
   fails once MRD seconds have elapsed since the client first
   transmitted the message.

   If both MRC and MRD are non-zero, the message exchange fails whenever
   either of the conditions specified in the previous two paragraphs are
   met.

   If both MRC and MRD are zero, the client continues to transmit the
   message until it receives a response.

X.1. Transmission and Retransmission Parameters

   This section presents a table of values used to describe the
   message retransmission behavior of request and PANA-Start-Answer
   messages marked with REQ_*.  PANA-PAA-Discover message
   retransmission values are marked with PDI_*. The table shows
   default values.

   Parameter       Default   Description
   ------------------------------------------------
   PDI_IRT           1 sec   Initial PDI timeout.
   PDI_MRT         120 secs  Max PDI timeout value.
   PDI_MRC           0       Configurable.
   PDI_MRD           0       Configurable.

   REQ_IRT           1 sec   Initial Request timeout.
   REQ_MRT          30 secs  Max Request timeout value.
   REQ_MRC          10       Max Request retry attempts.
   REQ_MRD           0       Configurable.

   So for example the first RT for the PBR message is calculated using
   REQ_IRT as the IRT:

      RT = REQ_IRT + RAND*REQ_IRT

----------
status: Pending -> Text Proposed
________________________________________________
PANA Issues <[email-masked]>
http://danforsberg.info:8080/pana-issues/issue20
________________________________________________

_______________________________________________
Pana mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/pana