RE: [reSIProcate] Load testing issue with RESIP. Any comments ?
Thanks Scott for the prompt response. Yes, I am getting the ACKs. Actually I
should have written the complete message sequence earlier.. sorry about
that.
The exact sequence is below gets generated for 100 users simultaneously.
UAC <------->B2BUA<-------> UAS
INVITE->
<-100 Trying
<-180 Ringing
<-200 OK
ACK->
[ Pause Interval X seconds ]
BYE->
<-200 OK
[ Pause Interval Y seconds]
You did mention branch ids being different. I tried that and it solves the
problem. However I am wondering why has branch id gotta be different in
next cycle of hundred calls ?. The tool currently sends out same branch id
for same user in every cycle. Eg. Ie. every INVITE sent from nth user will
have the same branch id in every cycle after Y seconds.
-thanks
Asheesh
-----Original Message-----
From: Scott Godin [mailto:slgodin@xxxxxxxxxxxx]
Sent: Friday, September 16, 2005 6:20 PM
To: Asheesh Joshi; resiprocate-devel@xxxxxxxxxxxxxxxxxxx
Subject: RE: [reSIProcate] Load testing issue with RESIP. Any comments ?
The transaction state lifetime should be 32 seconds if no ACK is received.
And 4 seconds after an ACK if an ACK is received. Are the ACKs being
received by resip?
Note: Your tester should not be re-using branch id's.
>From RFC3261 17.2.1
If timer H fires while in the "Completed" state, it implies that the ACK was
never received. In this case, the server transaction MUST transition to the
"Terminated" state, and MUST indicate to the TU that a transaction failure
has occurred.
The purpose of the "Confirmed" state is to absorb any additional ACK
messages that arrive, triggered from retransmissions of the final response.
When this state is entered, timer I is set to fire in T4 seconds for
unreliable transports, and zero seconds for reliable transports. Once timer
I fires, the server MUST transition to the "Terminated" state.
Scott
> -----Original Message-----
> From: resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx
[mailto:resiprocate-
> devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Asheesh Joshi
> Sent: Friday, September 16, 2005 7:26 AM
> To: resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> Subject: [reSIProcate] Load testing issue with RESIP. Any comments ?
>
> Hi,
>
> During testing of my B2BUA built on RESIP with iSIP test tool is
giving
> a
> strange behavior.
> Here is the scenario...
>
>
> I have a customized iSip tool that can simulate 100 calls. Ie. The
tools
> generates 100 INVITEs and after receiving 100 200 OKs, it generates
100
> BYEs after X amount of ( pause )time. Then the tool waits Y seconds
and
> the
> cycle starts all over again for 100 users. Both these times X and Y
are
> configurable.
>
>
> During this load testing what I have observed is that when the 2nd
cycle
> of
> 100 calls starts, the RESIP rejects the INVITE from the users if the
time
> Y
> is less than 25 seconds. Its important to note that these INVITEs in
the
> 2nd
> cycle contain the same tag and branch Ids as in the previous cycle but
a
> different Call ID .
>
> However, resiprocate drops the INVITE message in the
> TransactionState.cxx:1230 with error "Dropping a transmitted INVITE in
> stale server transaction! "
>
> This looks like Resiprocate does not flush out its timer for the
previous
> transaction.
>
> I can get over this problem by increasing the time Y between two
cycles
> of
> 100 calls. This time seems to be around 25 seconds.
>
> Can someone tell me why does the Resiprocate not flush its transcation
> untill 25 seconds ?
>
> -cheers
> Asheesh.
>
>
>
>
>
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel