jsip
  1. jsip
  2. JSIP-324

The implementation of Sip stack's Timer E is not conformable with RFC3261

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: current
    • Fix Version/s: milestone 1
    • Component/s: www
    • Labels:
      None
    • Environment:

      Operating System: All
      Platform: All

    • Issuezilla Id:
      324

      Description

      There is a test scenario in ETSI (ETSI TS 102 027-2 V4.1.1 (2006-07)) as
      following.
      TPId: SIP_CC_PR_TR_CL_TI_016
      Status: PICS: A.77/3.2
      Ref: RFC 3261 [1] annex A and section 17.1.2.2.
      Purpose: Ensure that the IUT, when a BYE client transaction is in the
      Proceeding state, repeats its BYE request after timer E set in Trying state to
      T1 value expires.

      I tried this scenario in the following steps (Using version 1.2.148):
      1. Make a call from caller to callee via sip proxy.
      2. Caller sends BYE to proxy, and proxy forwards it to the callee.
      3. Callee responses 100 Trying to proxy, and sends no final response. At this
      moment, sip proxy's BYE client transaction goes to the Proceeding state.

      Expected result:
      Sip proxy should retransmit BYE request in 500ms (T1) for the first time, then
      retransmit it for the second time in 4s(T2).
      Actual result:
      Sip proxy retransmits BYE request in 4s (T2) for the first time.

      Reason:
      When proxy sends the first BYE request, the client transaction is in the Trying
      state, Timer E is set to T1. When 100 Trying response comes, the client
      transaction goes to the Proceeding state, the Timer E will be reset to T2.
      According the RFC3261, the Timer E should be reset to T2 when Timer E times
      out.

      Reference: RFC3261 section 17.1.2.2
      "If Timer E fires while in the "Proceeding" state, the request MUST be passed
      to the transport layer for retransmission, and Timer E MUST be reset with a
      value of T2 seconds."

        Activity

        Hide
        sophie0308 added a comment -

        With this issue, the JAIN SIP stack is NOT compliant with RFC 3261. And due to this issue TTCN compliance case SIP_CC_OE_CR_TI_005 (ETSI TS 102 027-2 V4.1.1) would fail. Based on this, could you please raise the priority to Critical? Please consider to fix this issue.

        Thanks,
        Sophie

        Show
        sophie0308 added a comment - With this issue, the JAIN SIP stack is NOT compliant with RFC 3261. And due to this issue TTCN compliance case SIP_CC_OE_CR_TI_005 (ETSI TS 102 027-2 V4.1.1) would fail. Based on this, could you please raise the priority to Critical? Please consider to fix this issue. Thanks, Sophie
        Hide
        sophie0308 added a comment - - edited

        The wire shark package and sip stack log is attached.

        Show
        sophie0308 added a comment - - edited The wire shark package and sip stack log is attached.
        Hide
        sophie0308 added a comment -

        The JSIP-324 patch.txt includes my code change to fix this bug.

        Show
        sophie0308 added a comment - The JSIP-324 patch.txt includes my code change to fix this bug.

          People

          • Assignee:
            jsip-issues
            Reporter:
            sophie0308
          • Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated: