
The use of TCP on the access/customer side of the network is increasing because of: 1. Growing SIP message sizes and headers, and the UDP fragmentation it engenders; 2. WebRTC and concomitant/similar technologies and feature sets, which use TCP or TCP-encapsulated transports; 3. Growing requirements of TLS/crypto, especially at the "last mile". That said, TCP is certainly more resource-intensive, just by definition. There is a lot of connection state to be held by the OS's network stack. However, this isn't as relevant a consideration as it was in the days when the guidance about the resource trade-offs was written, due to the increase in RAM and processing power. And, as Peter E. said, there is the problem of replicating / holding onto TCP state through failover, which has not been satisfactorily solved at a reasonably universal level. UDP continues to hold sway not only because of custom, habit and inertia, but also because of its innate simplicity and resource economies at large scales of message processing. It's not necessarily an inappropriate business decision in 2017 to switch your customers 100% to TCP. It depends on what kind of business-level trade-offs you are willing to make with regard to infrastructure, resource consumption and availability. UDP will probably continue to obtain inside the service provider network core and in inter-carrier, strictly Class 4 interconnects/trunk interfaces. -- Alex -- Alex Balashov | Principal | Evariste Systems LLC Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) Web: http://www.evaristesys.com/, http://www.csrpswitch.com/