Date: Thu, 30 Aug 2007 20:21:12 +0530 From: "Nabeel Mohamed" <nabeel.ietf@gmail.com> Subject: [users:00364] TAHI SIP Conformance test failing for INVITE retransmission test. To: users@tahi.org Message-Id: <df4cbab00708300751w17a2fe4ahde7c102c9ffd2faa@mail.gmail.com> X-Mail-Count: 00364Hi All, I tested the retransmission of INVITE message by the NIST stack, using the TAHI SIP Conformance test package. I got confused after looking at the pattern in which the NIST stack sends retransmissions. <snippet from test logs> The call flow is below, Sequence NUT R PX1 UA1 OT1 OT2 REG DNS No time | | | | | | | | [01: 0.00|ICMP] |<----|-----| | | | | | Echo Request [02: 0.00|U ] |-----|---->| | | | | | Echo Reply [03:19.20|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [04:19.70|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [05:20.76|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [06:22.88|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [07:27.12|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [08:31.36|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [09:35.60|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [10:39.84|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [11:44.08|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [12:48.32|U ] INVIT |-----|---->| | | | | | INVITE sip:UA1@17.1.1.56:5060 [13:51.20| ] |*****|*****|*****|*****|*****|*****|*****| Fire B Timer The judgement which TAHI performs for testing the RFC rules is below, Judgment Timer: INVITE MUST be retransmitted(No.1) after Timer A fired. Timer A:0 retransmit time:0.00 Timer: When Timer B fired, client INVITE retransmit No.1 has valid interval. Timer B:0 retransmit time:0.00 Timer: INVITE MUST be retransmitted(No.2) after Timer A fired. Timer A:0.5retransmit time: 0.51 Timer: When Timer B fired, client INVITE retransmit No.2 has valid interval. Timer B:0.5 retransmit time:0.51 Timer: INVITE MUST be retransmitted(No.3) after Timer A fired. Timer A:1 retransmit time:1.06 Timer: When Timer B fired, client INVITE retransmit No.3 has valid interval. Timer B:1 retransmit time:1.06 Timer: INVITE MUST be retransmitted(No.4) after Timer A fired. Timer A:2 retransmit time:2.12 Timer: When Timer B fired, client INVITE retransmit No.4 has valid interval. Timer B:2 retransmit time:2.12 Timer: INVITE MUST be retransmitted(No.5) after Timer A fired. Timer A:4 retransmit time:4.24 Timer: When Timer B fired, client INVITE retransmit No.5 has valid interval. Timer B:4 retransmit time:4.24 Timer: INVITE MUST be retransmitted(No.6) after Timer A fired. Timer A:8 retransmit time:4.24 Timer: When Timer B fired, client INVITE retransmit No.6 has valid interval. Timer B:8 retransmit time:4.24 Timer: INVITE MUST be retransmitted(No.7) after Timer A fired. Timer A:16 retransmit time:4.24 Timer: When Timer B fired, client INVITE retransmit No.7 has valid interval. Timer B:16 retransmit time:4.24 Timer: INVITE MUST be retransmitted(No.8) after Timer A fired. Timer A:32 retransmit time:4.24 Timer: When Timer B fired, client INVITE retransmit No.8 has valid interval. Timer B:32 retransmit time:4.24 Timer: INVITE MUST be retransmitted(No.9) after Timer A fired. Timer A:64 retransmit time:4.24 Timer: When Timer B fired, client INVITE retransmit No.9 has valid interval. Timer B:64 retransmit time:4.24 Timer: INVITE MUST be retransmitted(No.10) after Timer A fired. Timer A:0.5retransmit time: 4.24 Timer: When Timer B fired, client INVITE retransmit No.10 is timer missing. Timer B:0.5 retransmit time:4.24 Timer: Client sent INVITE Timer: Client INVITE retransmit stopped after Timer B fired. Timer: Client MUST NOT send ACK after Timer B fired. </snippet> The pattern of the retransmit time should start with T1 sec(500 ms by default in NIST stack) and should go till T2(64 * T1) as per the RFC. The pattern of the retransmit time is not as per our requirement, i.e. 0.00, 0.51, 1.06, 2.12, 4.24, after it remains the same. Also I wonder how there is a possibility for 10 retransmissions while there can be only 7 retransmissions with the configured value of T1= 0.5 and T2=64*0.5=32. I tested the simplecallsetup example, that comes along with the NIST stack, for retransmission using the loopback interface. I observed that the time at which the INVITE's and it's retransmissions were sent, also showed the same pattern and also there were 10 retransmissions. The time pattern is below, 1188482985142 1188482985649 1188482986709 1188482988819 1188482993059 1188482997299 1188483001543 1188483005783 1188483010023 1188483014263 1188483018503 Is it an issue (or) am I missing any configurations to be performed ? Please correct me and advise me accordingly. Also let me know if it is a known problem. Thanks in advance, Regards, Nabeel364_2.html (attatchment)(tag is disabled)