Hello,

sctp is the best by design protocol for sip, however, the implementations (libs/kernel/etc) are young comparing with the other transports, so you need to to some testing on performances and be sure you keep using the latest kernel.

tcp is quite scalable, but the state maching the read the sip messages from the streams is more complex than the udp (where is just a read). On the other hand, you get rid of retranmissions.

udp should still be the most flexible and fast in routing, even in some cases there might be retransmissions. In your network, when the connection is more or less guaranteed with good speed, that is very unlikely to happen. Also, you can control the nodes and be sure UDP fragmentation is properly handled (all recent linuxes/bsdes do it).

As a conclusion, I would go for UDP if the nodes are in same network or network that has QoS guaranteed, with not very long distance between the nodes.

If I would have time to play, perhaps I would look a bit at sctp. I haven't seen a good reason to go for tcp inside the internal network.

Cheers,
Daniel

On 24/03/15 08:21, Mickael Marrache wrote:

Hi,

 

We are deploying a VoIP system based on Kamailio. The system is composed of load balancers, proxies, registrars, etc

 

What is the recommended transport protocol to use for internal communication (i.e. load balancer <-> proxy/registrar)? We started with UDP but we also see that Kamailio supports TCP and SCTP.

 

For information, at first stage, the UAs will communicate using UDP but we may need to use TCP in case messages are too large (we had such issues when using ICE).

 

Thanks,

Mickael



_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio World Conference, May 27-29, 2015
Berlin, Germany - http://www.kamailioworld.com