herlesupreeth / Kamailio_IMS_Config

Fixed version of Kamailio IMS configuration files for basic calling
48 stars 37 forks source link

IMS Setup without Open5GS - Pcscf error: tcp_read buffer overrun #41

Open fprdkhti opened 4 months ago

fprdkhti commented 4 months ago

I am trying to set up an IMS system without using Open5GS. During testing with a softphone registration, the pcscf log file ends with the following errors:

94(9574) ERROR: <core> [core/tcp_read.c:363]: tcp_read(): buffer overrun, dropping ([192.168.21.68]:5060 -> [192.168.21.68]:5060) 94(9574) ERROR: <core> [core/tcp_read.c:1503]: tcp_read_req(): ERROR: tcp_read_req: error reading - c: 0x7f1adc84e428 r: 0x7f1adc84e4a8 (-1)

The P-CSCF does not seem to send the SIP request to the I-CSCF. I am looking for guidance on how to resolve this issue and understand why the P-CSCF is not forwarding the registration request to the I-CSCF.

Questions:

How can I resolve the tcp_read buffer overrun error in the pcscf log? Why is the P-CSCF not sending the SIP registration request to the I-CSCF? And based on which configuration settings should the P-CSCF be configured to forward the registration request to the I-CSCF?

my outputs are here pcap.zip pcscf cfg file: kamailio_pcscf.zip pcscf log: pcscf_log.zip

herlesupreeth commented 3 months ago

I see that you have configured the P-CSCF IP in softphone rather than a DNS name (ims.mnc001.mcc001.3gppnetwork.org). This is the reason P-CSCF is not forwarding to I-CSCF.

image

The registration flow is as follows:

  1. UE send SIP REGISTER with R-URI sip:ims.mnc001.mcc001.3gppnetwork.org
  2. P-CSCF receives this and does a DNS resolution for sip:ims.mnc001.mcc001.3gppnetwork.org
  3. DNS resolves it to I-CSCF address
  4. Having received this address P-CSCF forwards the request to I-CSCF

....

fprdkhti commented 3 months ago

Thank you for your response.

Just to clarify, are you suggesting that we configure the DNS name as pcscf.ims.mnc001.mcc001.3gppnetwork.org in the softphone? We have tried this configuration, but we still encounter the same issue as before. You can see the details in the attached pcap.zip file.

Alternatively, if you are suggesting that we configure the DNS name as ims.mnc001.mcc001.3gppnetwork.org in the softphone, we encounter a BAD GATEWAY error. Do we need to adjust the DNS settings differently from what is described in the Open5GS VoLTE setup tutorial so that ims.mnc001.mcc001.3gppnetwork.org resolves to the P-CSCF on the UE side and ims.mnc001.mcc001.3gppnetwork.org resolves to the I-CSCF on the IMS side?

herlesupreeth commented 3 months ago

You need to set the server address in softphone as ims.mnc001.mcc001.3gppnetwork.org (not the actual IP of P-CSCF)

Alternatively, if you are suggesting that we configure the DNS name as ims.mnc001.mcc001.3gppnetwork.org in the softphone

yes

Do we need to adjust the DNS settings differently from what is described in the Open5GS VoLTE setup tutorial so that ims.mnc001.mcc001.3gppnetwork.org

No, the tutorial is the same. Just a clarification, ims.mnc001.mcc001.3gppnetwork.org DNS name always should resolve to I-CSCF not P-CSCF.

I am not sure how the settings are at softphone, but there should be an option to send SIP REGISTER with a certain Request URI to a particular IP.

fprdkhti commented 3 months ago

Thanks.

This issue is resolved with the following softphone configuration: softPhoneConfiguration