Voice over IP (VoIP)
Why VoIP? Voice Codec Signaling & Control Protocols Quality of Service Design a VoIP network
Why VOIP ? Cost reduction Toll by-pass
WAN Cost Reduction
Operational Improvement Common network infrastructure Simplification of Routing Administration
Business Tool Integration Voice mail, email and fax mail integration Web + Call Mobility using IP
Components of VOIP Coding & Decoding of Analog Voice Analog-to-Digital and Digital-to-Analog conversions Compression Signaling Call setup & tear down Resource & coding negotiation Transport of Bearer Traffic Voice packet transmission Routing Support of quality of service Numbering Phone number, IP address
What Protocols are Required ?
Signaling Protocol: To establish presence, locate user, set up, modify and tear down sessions.
Media Transport Protocols: To transmit packetized audio/video signal.
Supporting Protocols: Gateway Location, QoS, AAA, Address Translation, etc.
VOIP Protocols H.323: ITU-T standard, latest version v4 Peer-to-peer protocol that supports terminals communicating over packet based networks
SIP: IETF standard, RFC 3261 Peer-to-peer protocol for initiation, modification termination of communication sessions between users
MGCP: ITU-T and IETF collaboration, RFC 3435 Master/slave protocol for media gateway controller to control media gateway.
VOIP Protocol Stacks
VOIP Using H.323 ITU-T standard, latest version v4 Peer-to-peer protocol that supports terminals communicating over packet based networks H.323 includes Call signaling H.225 Media control H.245 Audio coding G.711, G.722, G.723, G.728, G.729 Video coding H.261, H263 Data sharing T.120 Media transport RTP, RTCP
Powerful for video-conferencing Widely deployed
Components Defined in H.323 H.323 defines four major components for a packet network based multimedia communication H.323 Terminal: Client end points that provides real-time communications with other H.323 entities. Functions performed include (1) signaling and control, (2) real-time communications, and (3) codec. Gateway: Provides the connection path between the packet switched network and the switched circuit network. Gatekeeper: Performs address translation, admission control, bandwidth control, zone management, call control signaling, call authorization, bandwidth management, call management. Multipoint control unit (MCU): Supports conferencing between three or more endpoints. MCU consists of multipoint controller (MC) and multipoint processor (MP). The collection of all terminals, gateways, and MCUs managed by a single gatekeeper is called a zone.
SIP Registration Establishes presence of user with an address (email@example.com) Binds this address to users current location (22.214.171.124)
Register sip:abc.com SIP/2.0 From sip:firstname.lastname@example.org Contact <sip:126.96.36.199> Expires 3600 1
SIP register SIP / 2.0 200 OK
SIP Operation with Proxy Server Location Server
OK 200 VIA: email@example.com FROM: sip:firstname.lastname@example.org TO: sip:email@example.com Call-id: firstname.lastname@example.org
Where is john?
INVITE sip:email@example.com VIA: firstname.lastname@example.org FROM: sip:email@example.com TO: sip:firstname.lastname@example.org Call-ID: email@example.com
INVITE sip:firstname.lastname@example.org VIA: email@example.com VIA: firstname.lastname@example.org FROM: sip:email@example.com TO: sip:firstname.lastname@example.org Call-id: email@example.com
5 Proxy Server
ACK sip:firstname.lastname@example.org VIA: email@example.com FROM: sip:firstname.lastname@example.org TO: sip:email@example.com Call-id: firstname.lastname@example.org
Media Streams 14
OK 200 VIA: email@example.com VIA: firstname.lastname@example.org FROM: sip:email@example.com TO: sip:firstname.lastname@example.org Call-id: email@example.com
SIP operation with Redirect Server
302 moved temporarily Contact firstname.lastname@example.org ACK email@example.com
Where is john
INVITE sip:firstname.lastname@example.org VIA dave @abc.com 1 From sip:email@example.com To sip:firstname.lastname@example.org Call ID email@example.com
Redirect Server 4 INVITE sip:firstname.lastname@example.org VIA email@example.com To sip:firstname.lastname@example.org Call ID email@example.com
8 ACK firstname.lastname@example.org Media Stream 9
Session Initiation Protocol (SIP) Peer-to-peer protocol for initiation, modification termination of communication sessions between users Two components: user agents and network servers User agents: client end-system applications User-agent client (UAC): originate calls User-agent server (UAS): listen for incoming calls
Network servers: Proxy server: relay calls, act as both client and server Redirect server: redirect calls to other servers Registrar: accept user registration
Simple text based messages
SIP Messages SIP is a text-based protocol with message syntax and header fields identical to HTTP Message header includes: General header Entity header
Two kinds of messages: Requests initiated by client Responses returned by server
Methods defined in RFC 2543: INVITE: to invite the server to participate in a session ACK: to accept the INVITE to participate OPTIONS: to inquire capability BYE: to terminate a session CANCEL: to cancel any in-progress request REGISTER: a client to register location information with a server