Hi All,

 

I need some expert help to trouble shoot a problem I have  seen, S-CSCF send BYE to tear down a call. I have make some progress to trace the problem to impurecord.c in ims_usrloc_scscf module,  _c->first_dialog_data !=0 while try to delete an expired contact. I need some help to find out why _c->first_dialog_data is not 0 for an expired contact.

 

To reproduce the problem, I began with the following for user1. Contact id 4098, 4114, and 4115 would expire and a call was using id 4116. When the time to delete contact, somehow scscf mistakenly think id 4098 still has a dialog, but the dialog was with id 4116 which was NOT expired. Therefore, S-CSCF send BYE to tear down the call, so end user see call drop. Please note, if id 4098 never make calls before, first call was working fine. But once a call was make, you will see this problem for next call. it seem S-CSCF did not clean up the dialog_data from last call properly and some data still hanging with the contact caused this problem. any insight how to fix or avoid this would be appreciated.

 

 

id      contact params  path    received        user_agent      expires callid

2192    sip:user2@192.168.164.136:62837;rinstance=bca96a7c77f53916;transport=UDP        NULL    <sip:term@pcscf.ims.mnc001.mcc001.3gppnetwork.org;lr>           Zoiper rv2.10.3.2       2019-12-12 15:50:10     UPIM_gl22a13wlo47aeHRQ..

4098    sip:user1@192.168.164.9:61946;rinstance=7ab86c5e85643767;transport=UDP  NULL    <sip:term@pcscf.ims.mnc001.mcc001.3gppnetwork.org;lr>           Zoiper rv2.10.3.2       2019-12-12 15:49:21     ocl7UYxJLo8TnMw2p2-6NQ..

4114    sip:user1@192.168.164.9:61946;rinstance=65afabdb886de0a7;transport=UDP  NULL    <sip:term@pcscf.ims.mnc001.mcc001.3gppnetwork.org;lr>           Zoiper rv2.10.3.2       2019-12-12 15:50:11     GZrZHDyL3ojhDlLDPpJnvQ..

4115    sip:user1@192.168.164.9:61946;rinstance=074e2e926212237b;transport=UDP  NULL    <sip:term@pcscf.ims.mnc001.mcc001.3gppnetwork.org;lr>           Zoiper rv2.10.3.2       2019-12-12 15:50:13     DCKsqvUjZ1dAfJLfJ3nOhA..

4116    sip:user1@192.168.164.9:61946;rinstance=38cc0c6188509aea;transport=UDP  NULL    <sip:term@pcscf.ims.mnc001.mcc001.3gppnetwork.org;lr>           Zoiper rv2.10.3.2       2019-12-12 15:50:15     gF3fphqyrSbQwaN0eW4JLw..

 

 

13(18) DEBUG: ims_usrloc_scscf [udomain.c:384]: mem_timer_udomain(): *** mem_timer_udomain - checking IMPUs - FINISHED ***

13(18) DEBUG: ims_usrloc_scscf [udomain.c:406]: mem_timer_udomain(): deleting contact [sip:user1@ims.mnc001.mcc001.3gppnetwork.org]

13(18) DEBUG: ims_usrloc_scscf [impurecord.c:598]: delete_scontact(): Deleting contact: [sip:user1@192.168.164.9:61946;rinstance=074e2e926212237b;transport=UDP]

13(18) DEBUG: ims_usrloc_scscf [usrloc_db.c:370]: db_delete_ucontact(): Deleting ucontact [sip:user1@192.168.164.9:61946;rinstance=074e2e926212237b;transport=UDP]

13(18) DEBUG: ims_usrloc_scscf [impurecord.c:310]: mem_delete_ucontact(): Checking if dialog_data is there and needs to be torn down

13(18) DEBUG: ims_usrloc_scscf [impurecord.c:312]: mem_delete_ucontact(): first dialog is 0!

 

13(18) DEBUG: ims_usrloc_scscf [udomain.c:406]: mem_timer_udomain(): deleting contact [sip:user1@ims.mnc001.mcc001.3gppnetwork.org]

13(18) DEBUG: ims_usrloc_scscf [impurecord.c:598]: delete_scontact(): Deleting contact: [sip:user1@192.168.164.9:61946;rinstance=7ab86c5e85643767;transport=UDP]

13(18) DEBUG: ims_usrloc_scscf [usrloc_db.c:370]: db_delete_ucontact(): Deleting ucontact [sip:user1@192.168.164.9:61946;rinstance=7ab86c5e85643767;transport=UDP]

13(18) DEBUG: ims_usrloc_scscf [impurecord.c:310]: mem_delete_ucontact(): Checking if dialog_data is there and needs to be torn down

13(18) DEBUG: ims_usrloc_scscf [impurecord.c:314]: mem_delete_ucontact(): first dialog is not 0

13(18) DEBUG: ims_usrloc_scscf [impurecord.c:317]: mem_delete_ucontact(): Going to tear down dialog with info h_entry [1081] h_id [2579]

13(18) DEBUG: ims_dialog [dlg_hash.c:887]: lookup_dlg(): ref dlg 0x7f803f803108 with 1 -> 3

13(18) DEBUG: ims_dialog [dlg_hash.c:889]: lookup_dlg(): dialog id=2579 found on entry 1081

13(18) DEBUG: ims_dialog [dlg_hash.c:1066]: unref_dlg(): unref dlg 0x7f803f803108 with 1 -> 2

13(18) DEBUG: ims_dialog [dlg_req_within.c:379]: dlg_terminate(): terminating confirmed dialog

 

 

Thanks,

 

--Charles

 


 
 

CONFIDENTIALITY NOTICE: This email and any attachments are for the sole use of the intended recipient and may contain material that is proprietary, confidential, privileged or otherwise legally protected or restricted under applicable government laws. Any review, disclosure, distributing or other use without expressed permission of the sender is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies without reading, printing, or saving.