A SIP server and user agent with SRTP for VoIP on a bare PC

Author/Creator

Author/Creator ORCID

Date

2013-01-02

Department

Towson University. Department of Computer and Information Sciences

Program

Citation of Original Publication

Rights

Copyright protected, all rights reserved.
There are no restrictions on access to this document. An internet release form signed by the author to display this document online is on file with Towson University Special Collections and Archives.

Subjects

Abstract

Bare PC applications run on ordinary desktops and laptops without the support of an operating system (OS) or kernel. They provide immunity against attacks targeting an underlying OS, and have been shown to perform better than applications running on conventional systems due to their reduced overhead. In this dissertation, we describe a SIP server and user agent (UA) with SRTP that are designed for VoIP on a bare PC. We give details of their implementation and present experimental results evaluating their performance. The server and UA include streamlined SIP functions and message handling, efficient CPU tasking, protocol and application intertwining, and direct Ethernet-level data manipulation. In particular, the server provides registration, proxy, and redirection services, and the UA is integrated with lean implementations of the necessary protocols within the bare PC softphone. We evaluate the performance of the bare PC SIP server by determining its throughput and latency in a dedicated test network with and without authentication. We also report internal timings for the server. The server's performance is compared with that of the OpenSER and Brekeke SIP servers running on Linux and Windows respectively. Our results show that the bare PC SIP server has low cost for internal SIP-related operations, and higher throughput and lower latency than the OS-based servers except in a few cases that need further optimization. We also implement SRTP to secure VoIP conversations on a bare PC softphone. Experiments to evaluate UA performance with SRTP are conducted using the bare PC softphone, and Twinkle and snom softphones running on Linux and Windows respectively. Pre-defined SRTP transforms based on AES counter mode encryption with HMAC-SHA-1 authentication are tested. Measured internal timings for SRTP operations indicate that authentication is more expensive than encryption regardless of key or tag size. Measured values of jitter, delta (packet interarrival time) and throughput show that the addition of SRTP protection to VoIP traffic over RTP has a negligible effect on voice quality.