[OpenSIPS-Devel] [ opensips-Bugs-3608659 ] Incorrect profile values resulting from set_dlg_profile

SourceForge.net noreply at sourceforge.net
Fri Apr 12 05:29:05 CEST 2013


Bugs item #3608659, was opened at 2013-03-20 18:54
Message generated for change (Comment added) made by csmicrox
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=1086410&aid=3608659&group_id=232389

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Chen-Che Huang (csmicrox)
Assigned to: Nobody/Anonymous (nobody)
Summary: Incorrect profile values resulting from set_dlg_profile

Initial Comment:
I set two dialog profiles to keep track of the numbers of ongoing dialogs served by the two RTP proxies in my environment (modparam("dialog", "profiles_with_value", "S1R1 ; S1R2")). I find that the number may go wrong (stays the same even when new dialogs are set to the profile) when such log messages are shown "DBG:dialog:link_dlg_profile: Entered here with hash = 8". Specifically, when several new INVITE requests are processed simutaneously and have the same hash="n", the profile value will keep the same. Please help me address this problem. I'm very grateful to the help.

PS. The attached file is the part of my config script associated with this issue. 

Many thanks and best regards,
Chen-Che 




----------------------------------------------------------------------

>Comment By: Chen-Che Huang (csmicrox)
Date: 2013-04-11 20:29

Message:
Hi Vlad,

Thanks for your reply. I ought to be more clear by describing one of my
test results. I used SIPp to generate 100 calls in each round. That is, in
each round, only 100 calls are generated and these calls have video
transmissions relaying by an RTP proxy. You can think that each round is
1-minute-long and 100 INVITEs are generated at the first second of a round
(minute).

The SIP proxy server prints out the profile value (before calling
rtpproxy_offer) when receiving an INVITE.
In round 1, the output profile values associated with the RTP proxy are 0,
1, 2, 3, ..., 99, as expected.
In round 2, the output profile values associated with the RTP proxy are 0,
1, 2, 3, ..., 99, as expected.
.
.
.
In round x, the output profile values associated with the RTP proxy are 0,
1, 2, 3, ...., 90, ..., 90. (rather than 0, 1, 2, 3, ...., 90, ..., 99).

With log_level=9, I find the profile size suddenly stays fixed and never
increases. As such, the profile values stay 90.
With high CPS (more than 100), it is very easy for me to reproduce this
result. If I remain not clear enough, please feel free to let me know.
Thanks for your kind help.

Best regards,
Chen-Che

----------------------------------------------------------------------

Comment By: Vladut-Stefan Paiu (vladut-paiu)
Date: 2013-04-11 03:52

Message:
Hi csmicrox,

Not sure if I understand your issue here.

First of all, when the BYE comes in to close a call, that respective dialog
will be automatically removed from all the profiles it was inserted in.
Secondly, If you are testing with SIPP, after a certain amount of time, you
will reach a constant number of ongoing dialogs ( for example if you have
100CPS and 30seconds call duration, after 30 seconds you will reach 30000
concurrent calls, which you will maintain until the end of your SIPP test).
Thus, you dialog profile's size will also reach a maximum, and stay there.

Best Regards,
Vlad

----------------------------------------------------------------------

Comment By: Chen-Che Huang (csmicrox)
Date: 2013-03-21 23:24

Message:
Let me be more clear. When the profile value keeps the same for new dialogs
set to the profile, the profile value will decrease on termination of
existing dialogs. However, in the next round, several new dialogs set to
the profile happen to have the same hashed value and then the profile value
becomes unchanged again (not increase).

Kind wishes,
Chen-Che

----------------------------------------------------------------------

Comment By: Chen-Che Huang (csmicrox)
Date: 2013-03-21 19:54

Message:
Hi Răzvan,

Thanks for your reply. I am sorry that I was not being clear enough. In my
test, I use SIPp to generate 100 calls/second in a round (each round:
INVITE-ACK-BYE requests). When receiving each INVITE request sent from
SIPp, the server calls create_dialog() and then call set_dlg_profile().
After several rounds, I find that several dialogs suddently have the same
hash values (DBG:dialog:link_dlg_profile: Entered here with hash = n) and
then the profile value stays the same. Afterwards, the profile value
"never" increases (always have the same hashed value) even when new dialogs
are set to the profile. This does not affect the termination of existing
dialogs.

Many thanks for your help.

Yours sincerely,
Chen-Che

----------------------------------------------------------------------

Comment By: Razvan Crainea (razvancrainea)
Date: 2013-03-21 02:26

Message:
Hi, Chen-Che!

When adding a dialog in a profile, it stays there as long as the dialog is
active. Are you sure that during your tests, none of the previously created
dialogs are ended/expired?

Best regards,
Răzvan

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=1086410&aid=3608659&group_id=232389



More information about the Devel mailing list