One Server Per City: Using TCP for Very Large SIP Servers

  • Kumiko Ono
  • Henning Schulzrinne
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5310)


The transport protocol for SIP can be chosen based on the requirements of services and network conditions. How does the choice of TCP affect the scalability and performance compared to UDP? We experimentally analyze the impact of using TCP as a transport protocol for a SIP server. We first investigate scalability of a TCP echo server, then compare performance of a SIP registrar server for two TCP connection lifetimes: transaction and persistent. Our results show that a Linux machine can establish 400,000+ TCP connections and maintaining connections does not affect the transaction response time. This is applicable to other servers with very large TCP connection counts. Additionally, the transaction response times using the two TCP connection lifetimes and UDP show no significant difference at 2,500 registration requests/second in our SIP server implementation. However, sustainable request rate is lower for TCP than for UDP, since using TCP requires more message processing, which causes longer delays at the thread queue for the server implementing a thread-pool model. Finally, we suggest how to reduce the impact of TCP for a scalable SIP server especially under overload control.


SIP TCP Server Scalability Measurement 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., Schooler, E.: SIP: Session Initiation Protocol. RFC 3261, IETF (June 2002)Google Scholar
  2. 2.
    Stewart, R.: Stream Control Transmission Protocol. RFC 4960, IETF (September 2007)Google Scholar
  3. 3.
    Lucent-Alcatel. Lucent Technologies new high-capacity switch accelerates cost-effective migration to Internet Protocol networks (news release) (December 2002),
  4. 4.
    Kegel, D.: The C10K problem (accessed in January 2006),
  5. 5.
    Libenzi, D.: Improving (network) I/O performance (accessed in January 2006),
  6. 6.
    Shemyak, K., Vehmanen, K.: Scalability of TCP Servers. In: Handling Persistent Connections. In: Sixth International Conference on Networking (ICN 2007) (April 2007)Google Scholar
  7. 7.
    Singh, K., Schulzrinne, H.: Failover and Load Sharing in SIP Telephony. In: International Symposium on Performance Evaluation of Computer and Telecommunication Systems (SPECTS) (July 2005)Google Scholar
  8. 8.
    Welsh, M., Culler, D., Brewer, E.: SEDA: An Architecture for Well-Conditioned, Scalable Internet Services. In: the Eighteenth Symposium on Operating Systems Principles (SOSP-18) (October 2001)Google Scholar
  9. 9.
    Berners-Lee, T., Fielding, R., Frystyk, H.: Hypertext Transfer Protocol – HTTP/1.0. RFC 1945, IETF (May 1996)Google Scholar
  10. 10.
    Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., Berners-Lee, T.: Hypertext Transfer Protocol – HTTP/1.1. RFC 2616, IETF (June 1999)Google Scholar
  11. 11.
    Nielsen, H.F., Gettys, J., Baird-Smith, A., Prud’hommeaux, E., Lie, H., Lilley, C.: Network Performance Effects of HTTP/1.1, CSS1, and PNG. In: ACM SIGCOMM 1997 (September 1997)Google Scholar
  12. 12.
    Jennings, C., Mahy, R.: Managing Client Initiated Connections in the Session Initiation Protocol(SIP). Internet-draft, IETF (November 2007),
  13. 13.
    Lennox, J., Schulzrinne, H., et al.: Cinema:sipd,
  14. 14.
    Narayanan, S., Yu, A., Kapoor, T., Schulzrinne, H.: Sipstone test suite,

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Kumiko Ono
    • 1
  • Henning Schulzrinne
    • 1
  1. 1.Dept. of Computer ScienceColumbia UniversityUSA

Personalised recommendations