Interesting

Just to be sure that I understand You correctly. 
When a Register is done, then an Invite, must create a new TCP connection.

I agree, that a perfect implementetion would be to keep the TCP stream up while the client is connected, and use that connection for all communication between the two stacks.

How about reregisters can they reuse the connection? Or should the connection be closed once the packet is consumed? 

2018-03-19 13:47 GMT+01:00 Daniel Tryba <d.tryba@pocos.nl>:
On Sun, Mar 18, 2018 at 12:59:28PM +0100, Kjeld Flarup wrote:
> Does this mean that Kamailio doesn't reuse this connection, and instead
> tries to establish a new one.
>
> And is it possible to have two concurrent connections, especially when it is
> trying to send an invite to a client behind NAT.

It is impossible for a listener to reuse/reconnect a TCP connection even
without NAT (a listener can only reuse the ip/port it was listening on).
This is the main drawback of SIP over TCP with a REGISTERing endpoint
IMHO.

_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users