<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/4.8.4">
</HEAD>
<BODY>
hello all<BR>
<BR>
i'm facing some weird log from kamailio (i think they are weird) when using sip tcp in the caller side and udp in the callee side.<BR>
<BR>
seems like the tcp socket is active in the caller side and the call is connected, since the invite transaction completes.<BR>
After that, if we receive an in-dialog request from the callee side, the kamailio doesnt find the tcp connection created and it has to create again the socket by SYN procedure for the other conn way.<BR>
up to this point i think it's everything correct.<BR>
<BR>
<B>A----the thing i dont understand, is that checking version 4.2.6, the logs i have when the request in-dialog comes from UAS, are like these</B><BR>
<BR>
5(2979) DEBUG: <core> [tcp_main.c:1820]: tcp_send(): tcp_send: no open tcp connection found, opening new one<BR>
 5(2979) DEBUG: <core> [ip_addr.c:243]: print_ip(): tcpconn_new: new tcp connection: 79.170.68.171<BR>
 5(2979) DEBUG: <core> [tcp_main.c:1073]: tcpconn_new(): tcpconn_new: on port 5063, type 2<BR>
 5(2979) DEBUG: <core> [tcp_main.c:1382]: tcpconn_add(): tcpconn_add: hashes: 1522:2178:0, 4<BR>
<B> 5(2979) DEBUG: <core> [tcp_main.c:2699]: tcpconn_1st_send(): pending write on new connection 0x7fac1168f028  (-1/968 bytes written)</B><BR>
 5(2979) DEBUG: tm [t_funcs.c:395]: t_relay_to(): SER: new transaction fwd'ed<BR>
<BR>
<B>B----while when using 4.2.2 or 4.4</B><BR>
 1(791) DEBUG: <core> [tcp_main.c:1818]: tcp_send(): tcp_send: no open tcp connection found, opening new one<BR>
 1(791) DEBUG: <core> [ip_addr.c:243]: print_ip(): tcpconn_new: new tcp connection: 79.170.68.171<BR>
 1(791) DEBUG: <core> [tcp_main.c:1073]: tcpconn_new(): tcpconn_new: on port 5063, type 2<BR>
 1(791) DEBUG: <core> [tcp_main.c:1382]: tcpconn_add(): tcpconn_add: hashes: 1522:3421:0, 4<BR>
<B> 1(791) INFO: <core> [tcp_main.c:2753]: tcpconn_1st_send(): quick connect for 0x7f880540f758</B><BR>
 1(791) DEBUG: tm [t_funcs.c:394]: t_relay_to(): SER: new transaction fwd'ed<BR>
<BR>
the difference between A and B is that in B i use dialog flags to do the t_relay_to_tcp for the indialog requests (and not in A), and in A i use the advertised IP in the listen addresses since kamailio is behind a NAT, while B machine scenario has public IPs.<BR>
could those 2 things explain the ebhaviour difference?<BR>
<BR>
is there anything abnormal in the case B?<BR>
<BR>
thanks a lot and regards<BR>
david escartin
</BODY>
</HTML>