Voice over IP
Voice over IP (VoIP) refers to the ability to make phone calls and video calls on the Internet using a PC or Internet connected phone. VoIP is in widespread usage today, provided by the likes of Skype, Hangouts and Tango. It's also widely used in business communications products, such as those sold by my employer Cisco. The tutorial below is one I have presented at Interop for many years. It provides a broad overview of VOIP technologies, ranging from audio and video coding, RTP, signaling via SIP, security, and NAT traversal.
This tutorial is meant for total novices, and was first presented to the Freehold High School Computer Science Academy in February of 2014.
Session Initiation Protocol (SIP)
The Session Initiation Protocol (SIP) is specified in RFC3261. It defines the mechanism for setting up and managing the call - also known as call signaling. Below you will find some training and tutorial materials on SIP.
NAT Traversal and Interactive Connectivity Establishment (ICE)
Network Address Translation (NAT) is in common usage on the Internet, but it poses a tough problem for p2p technologies like VoIP. The industry standard solution for NAT traversal of VoIP is Interactive Connectivity Establishment (ICE) - specified in RFC5245. It works in concert with STUN and TURN, which, when combined with ICE, form a complete solution to the problem. A written overview paper was written for the IETF Journal in November 2006, which you can find in Word format here. Several Powerpoint tutorials are linked below.
Real-Time Transport Protocol (RTP)
The Real-Time Transport Protocol (RTP), originally defined in RFC1889, and now updated in RFC3550, defines the transport of voice, video and other real-time data over UDP/IP. It is one of the oldest and most mature standards for VoIP and almost universally used across the Internet. This RTP tutorial below is old but still accurate.
Quality of Service (QoS)
Quality of Service (QoS) refers to technologies that allow for preferential treatment of voice and video packets on IP. QoS is not in deployment on the public Internet but is commonly used in private networks such as corporate intranets. The tutorial below provides an overview of the primary QoS tools in routers and switches - RSVP and diffserv.
Message Session Relay Protocol (MSRP)
The Message Session Relay Protocol (MSRP) - standardized in RFC4975 - is one of the technologies for instant messaging within SIP. It is the solution for "session mode" IM, in which SIP is used to set up a separate communications channel. In this case, that separate communications channel is MSRP, used for messaging. MSRP is not that widely used, compared to the more popular XMPP standard. The tutorial below is an overview of MSRP.