Hi,

Iam currently using SER version 0.8.11 for testing our SIP implementation over TCP. I find that the ACK and BYE messages are forwarded over UDP instead of TCP

The following are the configuration information (transport as TCP)
Users:
1.     called/0  (192.168.0.2)
2.     calling/0 (192.168.0.4)

Domain: 192.168.0.1
Proxy IP: 192.168.0.1

I have also attached the ethereal capture file containing the message transactions.

Problem Scenario:

After the registrations are successful, the Calling Party (192.168.0.4) sends an INVITE message to the Proxy (192.168.0.1) server, which again forwards the INVITE message to the called party (192.168.0.2) and the 200 OK response is finally sent back to the calling party through the proxy server. All these transactions are over TCP transport.

However, when the calling party (192.168.0.4) sends an ACK request to the proxy (192.168.0.1) to be forwarded to the called party (192.168.0.2) the proxy forwards the ACK request to the called party over UDP transport. This behavior can bee seen by observing the frames 37 and 38 in the capture file.  Similarly, the BYE request sent from the called party (192.168.0.2) to the proxy, is also getting forwarded to the calling party (192.168.0.4) by the proxy over UDP (frame 130 and 132)

I would like to know if i am missing anything in the ACK request and BYE request sent over TCP to the proxy (frame 37 and frame130) and why the proxy is forwarding this ACK request and BYE request over UDP transport (frame 38 and frame 132) instead of TCP.

Kindly help me in understanding this behavior.

Thanks.

Regards,
Nathan