150 likes | 275 Views
Developing VoIP on Linux. Samyeer Metrani Encore Software Limited. Agenda. Introduction to VoIP Tools Stack Organisation Development Issues Questions. Introduction to VoIP. Can we use the internet for voice? Will it reduce the cost of communication?
E N D
Developing VoIP on Linux Samyeer Metrani Encore Software Limited
Agenda • Introduction to VoIP • Tools • Stack Organisation • Development Issues • Questions
Introduction to VoIP • Can we use the internet for voice? • Will it reduce the cost of communication? • Can I get a better than telephone experience?
VoIP Issues • Call Signalling • Media Negotiation • Media Traffic • Interoperability
VoIP Standards • Peer Protocols • H.323/SIP • Master Slave Protocols • MGCP/MEGACO • Media Negotiation - SDP • Media Traffic – RTP
Development Objectives • Embeddable Code • OS Independence • Portability • Testable.
Tools • Kdevelop • CVS • Gcc & gcov • doxygen • Lex and Yacc
Tools – contd • Bugzilla • Ethereal • Python • Others…
VoIP Stack Organisation • VoIP Stack • RTP Stack • Support Libraries • Socket Manager • Media Manager • Handset Manager
Development Issues • Blocking vs Non-blocking • State Machines and Free States • Product organisation • Development Mode vs Product Mode
Development Issues • Static Allocation • A source for Random Numbers • Operating System Threads • There are approx 60 – 10ms slots in a second • Audio Drivers
Advantage Linux • Low cost per development seat • The ability to try “anything” • Platform Acceptance