Kundan Singh, Ph.D.

Kundan Singh
VoIP researcher and software professional

San Francisco, California (USA)
+1-917-6216392 (Pacific Timezone)


LinkedIn | Yahoo! | Facebook
Resume
Publications
Talks
Software
Interview questions | P2P-SIP blog | Student Projects | Programming Tricks
Projects: The 39 Peers | the Internet videocity | SIP-RTMP gateway | REST server | Flash-VideoIO
"Looking for exciting new opportunity in video communication or IP telephony"

All papers and slides linked from this page are © 1999-2010, Kundan Singh

They said it: Love is about giving ... giving happiness and care ... giving love, there is no question of asking love in return. Love is not a business. Its not whether you win or lose, but how you play the game, that counts! Work like you don't need the money. Dance like no one is watching, and love like you have never been hurt. When we walk to the edge of all the light we have and take the step into the darkness of the unknown, we must believe that one of two things will happen. There will be something solid for us to stand on or we will be taught to fly.

I like reading story books, poems, watching movies, listening to music, sketching, painting, playing cricket, pool and wasting time on computer.

An aqueous cascade bathe my ankles. I watched the relentless rhythms, the rise and fall of the sea, whispering from its depth untold secrets of a bygone era. I think of the past. Content in its flow. Happy in its history, safe in the arms of loved ones... long gone. The pristine clarity clouded. Things change. Memories remain forever!

About Me

I am a PhD graduate from the Computer Science department of Columbia University. My PhD advisor is Prof. Henning Schulzrinne. My research interest includes IP telephony scalability and reliability, peer-to-peer Internet telephony, multimedia collaboration. My PhD thesis title is Reliable, Scalable and Interoperable Internet Telephony

In the past I have done research in the field of IP telephony. I started with SIP-H.323 signaling translation during my masters, continued on unified messaing and conferencing issues, and finally looked at various performance and scalability issues for large scale IP telephony systems and peer-to-peer Internet telephony for my PhD thesis. IP telephony started with transfer of telephony calls over Internet. Beyond cost savings, there are many other benefits of IP telephony, e.g., integration with web and email, programming how to route your calls, integrating video and web-based interactive voice response systems. I have also looked into providing a multimedia collaboration environment that allows synchronous and asynchronous communications among various collaborators, e.g., students and instructor in a class or people in a study group. More recently I am looking at scalable and robust video communication on the Internet.

You can browse through various papers I have published, various talks I have given, and p2p-sip blog articles I have written to know more about my current and past research work. I do systems research. Which means I get to implement the new ideas in the form of software or student projects.

I have worked in industry to further enhance my IP telephony and video conferencing expertise. At Adobe I implemented prototype SIP and P2P-SIP systems to assist Flash Player and at TokBox I implemented web-based video telephony using Flash. I have been doing a few fun projects in Flash and Python as well in my 39 Peers P2P-SIP, the Internet videocity, and Flash-VideoIOprojects. To know more about my past and current projects please view my resume.


Publications

Free books

PhD thesis

Papers and technical reports

Internet-drafts and RFCs (including expired drafts)


Talks

My presentation slides

Jun 21, 2006Reliable, Scalable and Interoperable Internet TelephonyPhD thesis defense presentation, NY, 35 min
Jan 30, 2006Introduction to VoIPBasic introduction to VoIP using SIP, 60 min
Dec 15, 2005Peer-to-peer Internet telephony using SIPTelecom Italia visiting Columbia, NY, 20 min
Jun 13, 2005Peer-to-peer Internet telephony using SIPNOSSDAV, Skamania, WA, 15 min
May 10, 2005SIP Server ScalabilityIRT group meeting, 60 min
Apr 28, 2005Peer-to-peer Internet telephony using SIPPanasonic Digital Networking Lab, Princeton, NJ, 70 min
Feb 14, 2005Reliable and scalable Internet telephonyJob Talk at Bell Labs, New Jersey, 1 hr
Sep 24, 2004Reliable and scalable Internet telephonyIRT group meeting, 35 min
Sep 10, 2004Peer-to-peer Internet telephony using SIPNY metro area workshop, CUNY, New York. 20 min
Apr 21, 2004Peer-to-peer IP telephonyIRT group meeting, 45 min
Oct 13, 2003MobileNAT: Mobility across heterogeneous address spacesPresented the work I did last summer at Bell Lab to IRT group, 1hr
May 02, 2003A survey of Internet infrastructure reliabilityMy PhD candidacy exam talk, 45 min
Apr 25, 2003Media services in CINEMAAt Intel/Dialogic facility, Morristown, NJ, 1hr 45min
Apr 09, 2003A survey of Internet routing reliabilityIRT group meeting, 45 min
Feb 12, 2003Deploying IP telephonyComputer science department colloquium
Oct 24, 2002Introduction to the Session Initiation ProtocolNYSERtech at Albany
Sep 03, 2002Integrating VoiceXML with SIP servicesNY metro area workshop at Columbia University.
Nov 14, 2001An overview of CINEMA implementationIRT group meeting
Oct 09, 2001CINEMA: Columbia InterNet Extensible Multimedia ArchitectureCNRC student presentation
Apr 18, 2001VoiceXML and Internet telephonyIRT group meeting
Apr 02, 2001Multimedia conferencing using SIPIPtel 2001 workshop at Columbia University, NY
Mar 12, 2001Deploying IP telephonyNY metro area workshop, IBM, Hawthrone.
Jan 25, 2001ITU WG H.323/SIPVON developers conference
Oct 17, 2000Multimedia communication applicationsIRT group meeting
Sep 15, 2000Research status
Jul 20, 2000ITU WG H.323/SIPVON developers conference
Apr 06, 2000Voice mail system using SIP/RTSPIRT group meeting, 30 min
Dec 17, 1999Overview of SIP-H.323 gatewayEngineering group at Sylantro
Nov 17, 1999Overview of H.323 and SIP-H.323 gatewayIRT group meeting, 90 min

Other related presentation slides

Sep 15, 2003Event notification in CINEMATalk by Salman Abdul Baset on CINEMA event notification to IRT lab.
May 09, 2003Integrating VoiceXML with SIP servicesXiaotao Wu's talk at ICC 2003 conference.
Apr 17, 2002Scaling SIP serversSankaran's talk in IRT group meeting.
Jun 25, 2001Towards junking the PBX: deploying IP telephonyWenyu's talk at NOSSDAV 2001.
Sep 11, 2000Unified messaging using SIP and RTSPHenning's talk at IPTS 2000
Apr 12, 2000Interworking between SIP/SDP and H.323Henning's talk at IPtel 2000

Demo slides

Jun 01, 2005IP telephony demoOverview of IP telephony and demonstration
Nov 21, 2003ACM demoSlides for ACM research fair, 2003
Oct 11, 2003New CINEMA demoLatest slides for CINEMA demo
Sep 24, 2003BAE DemoSlides for CINEMA demo to BAE
Jul 29, 2003Demo for Intel/dialogicSlides for CINEMA demo to dialogic engineers.
Nov 02, 2002ACM demoSlides for ACM research fair demo, 2002
May 26, 2002CINEMA ArchitectureSingle slide showing the architecture.
Apr 01, 2002Project overviewOverview of the projects I am doing.
Nov 30, 2001Old CINEMA demoDescribes the various CINEMA components, the demo call flows and architecture.
Nov 08, 2001CATT posterCATT 2001 poster.
Sep 19, 2001CINEMA ArchitectureDescribes the various CINEMA components and architecture.
Feb 24, 2001Research overviewOverview of the projects I am doing.
Nov 13, 2000Demo setupOld CINEMA demo setup with ephone, sipd, sip323, etc.
Nov 09, 2000CATT posterCATT 2000 poster.
Aug 18, 2000Libsip++ overviewOverview of LIBSIP++ module.
Jul 25, 2000SIPum overviewOverview of sipum module.
Jul 25, 2000SIPconf overviewOverview of sipconf module.
Jul 25, 2000SIP323 overviewOverview of sip323 module.
Dec 25, 1999Demo setupOld CINEMA demo call flows.

Software

At Columbia University

I worked on a number of pieces of software at Columbia Internet Real-Time Lab. Some of these software pieces were sold by a former startup company named SIPquest which was acquired by CounterPath. I am no longer associated with these software pieces, so please do not send me licensing questions. Feel free to browse through the documents and APIs of these software pieces. I am also looking for students interested in building open-source versions of these software at my projects site. Drop me a mail if you would like to work on this.

Quick Links: CINEMA, sip323: translator, sipum: voicemail, rtspd: media server, sipua: useragent, sipconf: conference, sipvxml: voicexml
API docs: libsipapi (SIP lib), libconf (mixer), sipconf (conference), sipum (voicemail), sipvxml (VoiceXML), libnat (NAT/firewall), sippeer (P2P-over-SIP)

CINEMA: Columbia InterNet Extensible Multimedia Architecture provides an IP telephony test-bed.
SIP library libsip++: LibSIP++ is a SIP library with C++ interface. It can be used either in a user agent or in different SIP based applications like gateways (sip323), unified messaging (sipum), servers for conference (sipconf), and so on.
SIP-H.323 signaling gateway sip323: SIP-H.323 signaling translator which uses our SIP library and OpenH323's H.323 library. The software uses very old version of H.323 library. News
SIP/RTSP Unified messaging sipum: RTSP based Voice mail server and software answering machine with SIP interface.
RTSP media server rtspd: RTSP media streaming server for recording or playback.
SIP test user agent sipua: A simple command line SIP user agent implemented using the SIP library.
SIP/RTP conference server sipconf: A SIP based Audio/Video Conference Mixer also called as conference bridge.
A SIP VoiceXML browser sipvxml: This is a prototype VoiceXML implementation with SIP interface to allow interactive voice response applications in IP telephony.
SIP proxy, redirect, registrar server sipd: This is our SIP server for call routing and registration. I worked on scalability and reliability of this server.

I have also worked on several other libraries in CINEMA such as conferencing (libconf), NAT/firewall traversal (libnat). The complete test-bed architecture is descibed in a technical report, found on my publications page. There are various other individual component publications, describing individual components in detail. Some of the slides for demonstration of these software can be found at my talks page. In the past I also built a Web based user agent hello2web as a prototype application. An old web page with documents can be found at helloweb.

Open source software

I have worked on a few open source software pieces related to P2P-SIP and web-based video communication. Please visit my 39 peers P2P-SIP project page to know more about the P2P-SIP software. Please visit my Internet videocity project page to know more about the video communication software. I also mentor students in doing software research projects related to Internet multimedia communication. Please visit my student project page for details on how to join or contribute.

More recently I am in love with the Python programming language. I think Python and ActionScript are the most developer-efficient programming languages in the genre of general-purpose application development and user-interface programming, respectively. I also have a programming blog listing some fun questions for programmers.

If you would like to know more about my recent work experience, please read my resume and/or CV below.


Resume

Resume for software position [Word][PDF] (last updated Aug 2010)
CV for academic and research position [Word][RTF][PDF] (last updated Aug 2010)
Biography for invited talks or conferences [Html] (Last updated Feb 2010)

Objective

Looking for a full time research scientist or technical leadership position in peer-to-peer systems, multimedia communications, IP telephony or video conferencing.

Research Interest

Computer Networks, Internet real-time and multimedia systems, computer communication protocols, peer-to-peer networks, Internet audio and video telephony and conferencing, unified messaging, and scalable and reliable systems and networks. Current research focus is in building global scale peer-to-peer Internet telephony network.

Summary of qualifications

Software Development

6Connex: Leading the architecture and development of social networking and communication component for enterprise virtual events.

TokBox: I designed and implemented the flex based TokBox client for video conferencing. I also did several prototype implementations for PC to phone calling, shared media viewing, distributed server infrastructure for low latency and automatic fail over of video calls.

Adobe: I implemented a SIP stack and a P2P library in ActionScript and built several prototype Flash-based applications such as integrated SIP+XMPP communicator, click-to-call Flash component, browser extensions for Firefox and IE for PC to phone calling, and a P2P-SIP user agent. My P2P implementation is based on Bamboo DHT and incorporates authenticated data storage, secure transport and reliability.

Columbia: During the initial years, I wrote an object-oriented SIP user agent library in C++, using our underlying SIP transaction and parsing library. I developed other components such as unified messaging voice mail and answering machine server, multimedia conference server, interactive voice response server and SIP-H.323 signaling gateway. I wrote reusable object oriented modules for the conference library and media-streaming library. Later, I built scalability and reliability mechanism for SIP servers that provide PSTN-grade availability (five nines) and scalability (ten million BHCA), albeit at much lower cost. I also developed techniques and built systems for robust and scalable peer-to-peer Internet telephony without incurring any server maintenance cost.

Bell Labs: I worked on MobileNAT that provides IP mobility for devices in private address spaces. I wrote the client application that implements DHCP client and server, and the driver that traps and alters IP packets on Windows XP. I also wrote the server application that runs on the Linux router, implements DHCP server and alters the NAT mapping.

Motorola: In a team of two, I developed a complete H.323 video conferencing client for Windows using external components for Q.931 and media codecs. I also helped in various other ongoing projects such as H.323-H.324 gateway, H.320-based video conferencing and debugging tools for embedded systems.

Teaching and Student Project Mentoring

Teaching Assistant, Advanced Internet Services (COMS E6181-1), Columbia University, Fall 2001, with 48 students enrolled in the class, and primary responsibility of evaluating assignments and programming projects, and interacting with the students regarding the course material. I continued as the TA of this course for the subsequent offering of this course over Columbia Video Network (a distance learning programme) for Summer 2002, Fall 2002, Spring 2003 and Summer 2003, with main responsibility being designing and grading evaluation assignments, programming projects and final exams for the enrolled students.

Project Mentoring: In the more than five years as a PhD student in the Internet Real Time Lab., I supervised many student projects such as active badges, event notification and scheduling system, screen sharing, floor control, file sharing, interworking between instant messaging and voice calls, phone announcement service, application level gateway for NAT and firewall traversal, email by phone, audio quality measurement for conferencing, location service for 911 calls in SIP proxy server, and integrating MPEG support in our media server. List of projects at http://myprojectguide.org

Education

PhD/Computer Science (Columbia University, New York, Jan'01-Jun'06)
Thesis title "Reliable, Scalable and Interoperable Internet Telephony"
Advisor: Prof. Henning Schulzrinne

MS/Computer Science (Columbia University, New York, Sep'99-Dec'00)
Emphasis in Internet telephony and multimedia communications. Classes of interest: computer networks (A+), internet systems programming (A), advanced internet services (A), web enhanced information management (A)
Cumulative GPA 4.066/4.0

BE (Hons)/Computer Science (BITS Pilani, India, Aug'93-Jun'97)
Cumulative GPA 10.0/10.0 (University Gold Medallist)

Professional experience

6Connex, Campbell, CA, Lead Engineer, Sep'09-till date
Architecture, design and implementation of video communication, conferencing and messaging for enterprise virtual events.

TokBox, San Francisco/CA, Senior Software Engineer, Jan'08-july'09
Design and Implementation of Flex based video call and conferencing client using Adobe Flex/ActionScript, Adobe Flash Media Server (FMS) and XMPP.
Prototype implementation of PC to phone call using SIP, shared media viewing, distributed server infrastructure for low latency using Red5 and SIP, and automatic failover of video calls.

Adobe Systems, San Francisco/CA, Senior Computer Scientist, Aug'06-Sep'07
Prototype implementation of Flash-based VoIP applications such as communicator for presence, instant messaging and voice using SIP and XMPP.
Prototype implementation of a Flash-based peer-to-peer Internet telephony (P2P-SIP) application with secure communication, authenticated data storage and reliability. I implemented the Bamboo P2P algorithm with enhancements for authenticated interface and super-node distinction.

Bell Labs/Lucent, Holmdel/NJ, Member of Technical Staff, May'06-Aug'06
Design of a scalable and robust server-less infrastructure for mobile carriers to support gaming and other services in a distributed peer-to-peer manner.
User interface for attack detection software for mobile carriers.

Columbia University, New York, Research Assistant (student), Sep'99-May'06
Research in IP telephony, SIP-PSTN interworking, SIP-H.323 signaling gateway, SIP/RTSP-based unified messaging system, comprehensive multimedia collaboration, VoiceXML-based IVR server, SIP/RTP-based conference server and SIP protocol stack.
Focus of my thesis is on scalability and reliability of IP telephony systems in peer-to-peer as well as server-based architectures using existing standards.

Bell Labs/Lucent, Holmdel/NJ, Summer Intern, Jun'02-Aug'02
Research, design and implementation of MobileNAT (a mobility solution for IP devices across heterogeneous address spaces as part of the project on integration of 802.11 and 3G technologies.)

Motorola, India, (Senior) Software Engineer, Jun'97-Jul'99
Worked on H.323 systems, VoIP gateways, embedded systems and other multimedia communication projects.
Also did internship from Jan 1997 to Jun 1997 for six months.

Bhabha Atomic Research Center, India, Summer Intern, Jun'95-Jul'95
Worked on image file formats and data compression for digital images.

Computer skills

I have extensive programming experience in C, C++, Python, Java, Tcl, ActionScript and Perl. I have worked on both Unix and Windows platforms, as well as on real time OS. I am familiar with various tools such as MySQL, Apache, TomCat, gcc/make, VC++, CGI, servlet, Flex Builder, LAMP/WAMP and CVS. I have worked with various hardware and software tools such as Cisco router 2600 series, Cisco IP phone, Nortel MCS 5100 system, Intel/Dialogic IP telephony, MySQL replication, Vovida's SIP and TRIP stacks, DNS SRV and NAPTR, DHCP server and client. I have working knowledge of software process including CMM quality levels and software design models. I have also worked with Linux kernel programming and Windows driver programming.

Technologies

I have extensive experience with various Internet protocols such as Session Initiation Protocol (SIP), Real-time Transport Protocol (RTP), Real Time Streaming Protocol (RTSP), Session Description Protocol (SDP), VoiceXML, Simple Object Access Protocol (SOAP), Extensible Messaging and Presence Protocol (XMPP), ITU-T recommendations H.323, H.225.0, cryptography,security protocols,wireless/mobility protocols such as Mobile IP and some intra-domain mobility protocols for fast handoff, IP-PSTN interworking for telephony and related protocols. I have worked extensively on server scalability and reliability, and peer-to-peer systems.

Misc

Professional References

Prof. Henning Schulzrinne,
Department of Computer Science, Columbia University, 1214 Amsterdam Ave., MC 0401, New York, NY, 10027, USA
Phone: +1-212-939-7004, Email: hgs@cs.columbia.edu, Web: http://www.cs.columbia.edu/~hgs

Dr. Henry Sinnreich
Adobe Systems, Inc., 601 Townsend Street, San Francisco, CA 94103, USA
Phone: +1-972-897-7723, Email: hsinnrei@adobe.com, henrys@adobe.com, Web: http://www.linkedin.com/pub/henry-sinnreich/0/934/2

Dr. Xiaotao Wu
IP Communications Dept., Avaya Labs Research, 307 Middletown Lincroft Road, Lincroft, NJ 07738, USA
Phone: +1-732-852-2133, Email: xwu@avaya.com, Web: http://www.cs.columbia.edu/~xiaotaow

Nick Triantos
(ex) CEO, TokBox Inc., 128 King Street, San Francisco, CA, 94107
Phone: +1-408-507-8800, Email: nick@triantos.com, Web: http://www.linkedin.com/in/triantos

Awards, honors and other activities

Extraordinary Teaching Assistant Award, Fall 2001, Columbia University, New York, USA.
University Gold Medalist, 1997, Birla Institute of Technology and Science, India
Second rank in 10th and 12th Maharashtra (India) state board exam among lakhs of students.
Coordinator, Department of Hindi Press, APOGEE 1996, BITS, Pilani, India.
Ph.D. student representative, 2001, Department of Computer Science, Columbia University, New York

Proudest and persistent acheivement: I have never lost an academic grade in my bachelors, masters or PhD study; always got A or A+ grade in all subjects.

Patents

United States Patent 7,453,852, Method and system for mobility across heterogeneous address spaces, Buddhikot; Milind M. (Cliffwood, NJ), Hari; Adiseshu (Matawan, NJ), Miller; Scott C. (Freehold, NJ), Singh; Kundan Narendra (New York, NY), Lucent Technologies Inc. (Murray Hill, NJ) , Filed: July 14, 2003, Awarded: November 18, 2008. Also has international applications.

United States Patent 7,257,201, System and method for unified messaging in inter/intranet telephony, Singh; Kundan (New York, NY), Schulzrinne; Henning (New York, NY), The Trustees of Columbia University in the City Of New York (New York, NY), Filed: Aug 13, 2001, Awarded: Aug 14, 2007. Also has international applications.

United States Patent 7,266,091, System and method for conferencing in inter/intranet telephony, Singh; Kundan (New York, NY), Nair; Gautam (New York, NY), Schulzrinne; Henning (New York, NY), The Trustees of Columbia University in the City Of New York (New York, NY), Filed: Feb 28, 2002, Awarded: Sep 4, 2007. Also has international applications.

Citizenship and Visa status

I am an Indian citizen and a U.S. permanent resident (green card holder).

Publications and Invited Talks

Complete list of my academic publications including my PhD thesis as well as invited talks can be found on my web page at http://kundansingh.com. Please visit http://39peers.net for my open source P2P-SIP effort, http://p2p-sip.blogspot.com for my thoughts on P2P-SIP and http://code.google.com/p/videocity for my open source video communication project.

PhD Thesis Information

Title: Reliable, Scalable and Interoperable Internet Telephony
Thesis Committee: Prof. Henning Schulzrinne (advisor), Prof. Gail Kaiser, Prof. Vishal Misra, Prof. Dan Rubenstein, Dr. Milind Buddhikot
Defense Date: June 21, 2006.
Thesis URL: http://kundansingh.com/papers/thesis.pdf

Abstract:

The public switched telephone network (PSTN) provides ubiquitous availability and very high scalability of more than a million busy hour call attempts per switch. If large carriers are to adopt Internet telephony, then Internet telephony servers should offer at least similar quantifiable guarantees for scalability and reliability using metrics such as call setup latency, server call handling capacity, busy hour call arrivals, mean-time between failures and mean-time to recover. This thesis presents a reliable, scalable and interoperable Internet telephony architecture for user registration, call routing, conferencing and unified messaging using commodity hardware. The results extend beyond Internet telephony to encompass multimedia communication in general.

The architecture presented in this thesis deals with two aspects: at least PSTN-grade reliability and scalability of the Internet telephony servers, and interoperable Internet telephony services such as conferencing and voice mail using existing protocols. We describe the architecture and implementation of our Session Initiation Protocol (SIP)-based enterprise Internet telephony architecture known as Columbia InterNet Extensible Multimedia Architecture (CINEMA). It consists of a SIP registration and proxy server, a multi-party conferencing server, a gateway for interworking SIP with ITU's H.323, an interactive voice response system and a multimedia mail server. CINEMA provides a distributed interoperable architecture for collaboration using synchronous communications like multimedia conferencing, instant messaging, shared web-browsing, and asynchronous communications like discussion forum, shared files, voice and video mails. It allows seamless integration with various communication means like telephone, IP phone, web and electronic mail.

We present two techniques for providing scalability and reliability in SIP: server redundancy and a novel peer-to-peer architecture. For the former, we use DNS-based load sharing among multiple distributed servers that use backend SQL databases to maintain user records. Our two-stage architecture scales linearly with the number of servers. For the latter, we propose a peer-to-peer Internet telephony architecture that supports basic user registration and call setup as well as advanced services such as offline message delivery, voice mail and multi-party conferencing using SIP. It interworks with server-based SIP infrastructures.