670 likes | 907 Views
Voice over Internet Protocol (VoIP) technology. Part I - Re-cap of Basics. What is a protocol? Telephony Circuit switching Important technical terms Public switched telephone network (PSTN) Internet Protocol (IP) suite Internet Protocol networks Packet switching What is VoIP?
E N D
Part I - Re-cap of Basics • What is a protocol? • Telephony • Circuit switching • Important technical terms • Public switched telephone network (PSTN) • Internet Protocol (IP) suite • Internet Protocol networks • Packet switching • What is VoIP? • What is the need for VoIP? • Growth opportunity for VoIP
What is a Protocol? • A protocol is a special set of rules that end points in a telecommunication connection use when they communicate
Telephony • Telephony is “communicating at a distance” • It is “circuit switched”, i.e., there is dedicated channel for exchange of voice and signaling throughout the conversation • Reliable delivery • End to end
Circuit switching B ‘B’ rings End to end path setup ‘A’ dials ‘B’ Call established A
Important technical terms • Media – refers data / audio / video • Gateway – a network element that interconnect two disparate networks such as PSTN and IP networks • Signaling – controls that govern how a media stream is set up, maintained, and gracefully discontinued • TDM – Time Division Multiplexing (used in telecom networks)
Internet Protocol (IP) networks • Use Internet Protocol for communication of data across “packet switched” network • Characteristics of IP are • Connectionless • Best effort • Unreliable • Out of order delivery
B Packet switching In this IP network we shall examine how packets from computer ‘A’ travels through the IP network and reach computer ‘B’ The first packet takes thered colouredpath The second packet takes green coloured path Therefore, path taken by a packet in an IP network changes according to conditions prevailing in the network at a particular time (eg: congestion, failure etc) A
What is VoIP? • VoIP is the transmission of voice traffic in packets using IP as the transport protocol • It is the merger of telephony and IP worlds together IP network
What is the need for VoIP? • Integration of voice and data • Universal presence of IP • Maturation of technologies • Bandwidth consolidation • The shift to data networks
Growth opportunity for VoIP By 2007, international VoIP expected to grow to 127B, representing 54% of all international traffic, including TDM Traffic (IDC IP Telephony Market, 2002)
Part II - Voice processing in VoIP • Voice signal • Digitization • Compression • Transmission • VoIP media stream • Sampling error • Sampling rate • Packet delivery in VoIP
Voice signal The transducer present inside the mouth piece converts this analog sound signal to a voltage signal similar in shape, amplitude and timingas shown in figure The human voice (analog in nature) impacts the diaphragm of the mouth piece of handset of the telephone.
Packet delivery in VoIP B Reception at ‘B’ – note the packets reach ‘B’ unordered Transmitted Voice signal generated at ‘A’ This signal is digitized Compressed A
Part III - VoIP protocols • Main types of VoIP protocols • Diagrammatic representation of VoIP protocols • H.323 • MGCP / Megaco (H.248) • SIP • SIP vs H.323 • VoIP signaling protocol standards compared • RTP • RTCP • Converged telephony network • VoIP protocol stack
Main types of VoIP protocols • Call control / signaling • H.323 by ITU-T • SIP (Session Initiation Protocol) by IETF • Call control / signaling, Gateway control • MGCP (Media Gateway Control Protocol) • Megaco/H.248 • Bearer (carries media) • RTP (Real-Time Protocol) • RTCP (Real Time Control Protocol)
H.323 • VoIP signaling protocol • ITU standard and is a protocol suite • Takes a more telecommunications-oriented approach • 90%+ of all Service Provider VoIP networks
H.323 components • Terminal • Video/audio/data client • MCU (Media Control Unit) • Conference control • Content mixing • Gateway • Protocol translation • Gatekeeper • Address resolution • Admission control
(1) User Dials Access Number (3) AAA query (4)AAA response (2) IVR prompt Please enter your Calling Card Number and PIN 1st leg Access call H.323 call flow Hello Billing Server PSTN PSTN VoIP Network PSTN POP (Country B) Other Carrier PSTN
(6) User Dials Destination Number (7) H.323Call Setup (5) IVR prompt (8) PSTN Call Setup 1st leg Access call H.323 call flow Two Stage Dialling Hello Billing Server PSTN PSTN VoIP Network PSTN POP (Country B) Other Carrier PSTN
Hello (11) Billing Start (10) H.323 Call Answered (9) PSTN Call Answered 1st leg Access call 2nd leg IP Transport 3rd leg Termination call H.323 call flow Hello Billing Server PSTN PSTN VoIP Network PSTN POP (Country B) Other Carrier PSTN
Goodbye (12) Disconnect (13) Billing Stop (14) H.323 Call Disconnect (15) Disconnect 1st leg Access call 2nd leg IP Transport 3rd leg Termination call H.323 call flow Hello Billing Server PSTN PSTN VoIP Network PSTN POP (Country B) Other Carrier PSTN
MGCP / Megaco (H.248) • Protocols that have been defined for communication between media gateway controllers and media gateways. Commonly used are • Media Gateway Control Protocol (MGCP) • H.248 (ITU-T) or MEGACO (IETF)
SIP • Another VoIP signaling protocol • IETF RFC2543 • Takes an Internet-oriented approach • A text-based protocol
SIP components • Clients: • User Agent Client (UAC) / User Agent Server (UAS) • Originate & Terminate SIP requests • Typically an endpoint will have both UAC & UAS, UAC for originating requests, and UAS for terminating requests • Servers: • Proxy Server - relays call signaling, i.e. acts as both client and server, operates in a transactional manner, i.e., it keeps no session state • Redirect Server - redirects callers to other servers • Registrar Server - accept registration requests from users, maintains user’s whereabouts at a Location Server • Location Server
SIP service SIP Servers/ Services Redirect Registrar Location “Where is this name/phone#?” 3xx Redirection “TAhey moved, try this address” REGISTER “Here I am” SIP Proxy Proxied INVITE “I’ll handle it for you” INVITE “I want to talk to another UA SIP User Agents SIP User Agents SIP-GW
SIP methods • Basic messages sent in the SIP environment • REGISTER: UA registers with Registrar Server • INVITE: request from a UAC to initiate a session • ACK: confirms receipt of a final response to INVITE • BYE: sent by either side to end a call • CANCEL: sent to end a call not yet connected • OPTIONS: sent to query capabilities outside of SDP • Answers to SIP messages • 1XX – information messages (100 – trying, 180 – ringing, 183 – progress) • 2XX – successful request completion (200 – OK) • 3XX – call forwarding • 4XX – error • 5XX – server error • 6XX – global failure
Basic SIP call flow SIP UA1 SIP UA2 INVITE w/ SDP for Media Negotiation 100 Trying 180/183 Ringing w/ SDP for Media Negotiation 200 OK ACK MEDIA BYE 200 OK
RTP • The challenge for the designers of RTP, was to build a mechanism for robust, real-time media delivery above an unreliable transport layer (UDP). • RTP was developed by the Audio/Video Transport working group of the Internet Engineering Task Force (IETF). RTP is defined by the IETF proposed standard RFC 1889 published in January 1996. It has been adopted by the International Telecommunication Union (ITU) as part of the H.323 series recommendations, and by several other standards organizations. • In the TCP/IP model it is hard to say in which layer RTP is in. On the one hand, it looks as an application layer protocol since it runs in user space and is linked to the application program. On the other hand, it is a generic, application independent protocol that just provides transport facilities, so it looks like a transport protocol. The best description would be that RTP is a transport protocol implemented in the application layer. • Designed to carry a wide variety of data (voice, audio, video)
RTP message format VER : Version(2 bits) P : Padding(1 bit) X : Extension header(1 bit) CC : No. of contributing sources(4 bits) M : Periodic Marker (1 bit) PTYPE : Payload Type(7 bits) SEQUENCE NUMBER : Sequence no. of message(16 bits) - Is used to identify packets, and to provide an indication to the receiver of packets are being lost or delivered out of order. TIMESTAMP : Timestamp of message(32 bits) - Denotes the sampling instant for the first octet of media data in a packet, and it is used to schedule playout of the media data. Synchronization source identifier (SSRC): This is chosen by the participants at random when they join the session. Contributing source identifier (CSRC) : This is chosen corresponding to the SSRC of the participant who contributed to the packet
RTCP • RTCP provides out-of-band communication (such as periodic reporting of information such as reception quality feedback, participant identification, and synchronization between media streams) between the endpoints. • RTCP allows senders and receivers to transmit a series of reports to one another. • Although data packets are typically sent every few milliseconds, the control protocol operates on the scale of seconds. • RTCP messages are encapsulated in UDP datagrams. • UDP port number used is one greater than the port number of the associated data stream in RTP.
RTCP message format • V – Version(2 bits) - Current version is 2. • P- Padding(1 bit) – If set indicates indicate that the packet has been padded. • IC – Item count – Indicates the number of items included in the packet. • PT - Packet type – Identifies the type of information carried in the packet (five standard packet types). • Type 200:Sender report– senders periodically send these messages to provide an absolute timestamp • Type 201:Receiver report– receivers periodically send these messages informing the sender on the condition of reception • Type 202:Source description message– provide general information about the user who owns and controls the source • Type 203:Bye message– is used by sender to end a stream • Type 204:Application specific message– allow applications to define their own message type (eg: subtitles) • Length – Denotes the length of the packet contents following the common header.
VoIP protocol stack OSI Model TCP/IP Voice Application / Presentation RTP, RTCP Session TCP UDP Transport IP Network Ethernet, PPP, FR, ATM Data Link Physical Physical