[Kamailio-Users] Need to handle an upstream carrier error - Duplicate INVITE Messages

Geoffrey Mina geoffreymina at gmail.com
Mon Feb 23 14:50:32 CET 2009


Sorry about the cross post.  I wasn't sure how many people were on
both the OpenSIPs and Kamailio mailing lists... and since this is a
'core' issue, I figured it would be good to get input from the most
people.  In the future I will only post to one.

I will go down the path of the htable, what kind of performance/memory
hit am I going to take?

This system has a lot of memory available to it, how would I increase
memory appropriately to ensure the htable had enough to live happily?

thanks,
Geoff

On Mon, Feb 23, 2009 at 7:14 AM, Daniel-Constantin Mierla
<miconda at gmail.com> wrote:
> Hello,
>
> please do not cross-post on many mailing lists. Will create confusion about
> available solutions.
>
> Theoretically, this is valid in SIP (e.g., 2 invites with same call-id) --
> it is same scenario as parallel forking in upstream.
>
> However, if you know that this shouldn't happen, you can try to fix it from
> config.
>
> Fist is to identify why the BYE is routed to the wrong server. It should
> follow the Route set and contact address. Can you provide the pcap file of
> such call?
>
> As solution to deny new invites with same call id is to use the htable
> module. Set a key there based on call id (eventually plus from user, from
> tag, etc.) and check it before processing the invite, if there is one, drop
> it.
>
> You just set key auto-expire for 30-60sec so it gets automatically deleted.
>
> Note that htable is in devel version (upcoming 1.5.0), but should work out
> of the box with 1.4:
> http://kamailio.org/docs/modules/1.5.x/htable.html
>
> Cheers,
> Daniel
>
>
> On 02/22/2009 03:24 AM, Geoffrey Mina wrote:
>>
>> Hello,
>> I have a carrier who provides PSTN gateway services.   They have
>> multiple redundant sip gateway devices in their network.  The problem
>> occurs when one of their devices starts to have issues.  I will
>> receive an INVITE request from both gateways with the same call-id.
>> The problem is that my Kamailio system doesn't detect that I already
>> set a call up for the INVITE once, and forwards the request to another
>> server in the dispatcher list.  What I end up with is a call on two
>> asterisk servers, but only one has the actual RTP stream.  The BYE
>> request gets routed to the wrong server, and everything just gets
>> screwy.  If anyone could provide any hint on how I might be able to deal
>> with
>> this scenario, I would really appreciate it.
>>
>> I have attached my current config file, and the following is a link to
>> a google spreadsheet which
>> shows the SIP trace.
>>
>> http://spreadsheets.google.com/ccc?key=pU5i2J6Ck3b519-_M6Et3cw
>>
>> I have masked my IP addresses for my own sanity.
>>
>>  XX.XX.XX.179 - Kamailio SIP Gateway
>>  XX.XX.XX.189 - Asterisk1
>>  XX.XX.XX.186 - Asterisk2
>>
>>  Thanks!
>>  Geoff
>>  ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Kamailio (OpenSER) - Users mailing list
>> Users at lists.kamailio.org
>> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
>> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
> --
> Daniel-Constantin Mierla
> http://www.asipto.com
>
>



More information about the Users mailing list