Voice over IP
VOIP process: Sample analog Voice or Video ->; Encode to digital value ->; transmission in an IP data payload
Uses Signaling Protocol for setup and control of the call and a Media Protocol for the payload. They are transmitted separately.
Signaling is typically sent using TCP (connection oriented) because it is important that the other side gets all the signaling information.
After successful negotiation using a signaling protocol, the Media protocol takes over. Media protocol samples the voice/video using a codec and is sent over UDP (connectionless). Why UDP? – If voice does not get to the other side, is not very critical since we are sampling at a very high rate. Packet loss is not as critical as Packet delay.
The Voice gateway provides translation between different VoIP networks or VoIP and non-VoIP networks such as the PSTN. They also provide physical access for local analog and digital voice devices
- easy to configure
- Cost per line is less
- Lower long distance rates
- Data can utilize voice bandwidth when there is no voice
- Usually SIP based
Cisco Unified Border Element (Cisco Multiservice IP-to-IP Gateway)
- Demarcation point between two VoIP networks
- Terminates and reoriginates both signaling and RTP/RTCP streams
- Can interconnect VoIP networks using different signaling protocols
- Provides NAT, Billing, CDR, QoS and media interworking.
Call Control Models:
Distributed – Each router is independent. Reduced scalability.
Centralized – Server / Client Model. Call Manager has all the intelligence. Simple model. Drawback – redundancy.
Campus (Single Site) – All Call Managers in one location. Usually uses the same single high bandwidth uncompressed codec. All application services are centrally connected. Connected to the PSTN and WAN. WAN is usually used for backup or connection to ITSP.
Central Site – all call processing agents in one single site. Can have connections to the remote office and the telecommuter via the WAN. You can also have a backup connection over the PSTN. Advantage TEHO – toll bypass. Remote routers can use SRST in case the central site is unavailable.
Distributed, Multi-cluster – sites are independent and with call processing. More expensive since we have to supply a full call processing model for each site.
CODEC – Compressor /Decompressor
A codec is a software algorithm that compresses and decompresses speech or audio signals.
Compressor IS used in the transmit direction / Decompressor is used in the Rx direction.
Codec is carried in the Media stream (RTP).
G.711 – ITU standard. Uses Pulse Code Modulation PCM (64KBS). Excellent audio. Typically used on LANS
G.722 – ITU standard. 64kbs. has been optimized for wideband speech. Sampling a wider spectrum of audio speech hence better audio quality than G.711
G.729 – Used for WAN connections. 8kbps. high complexity for CPU /DSP (for sampling audio). High complexity requires more chips/DSP channels to compress or decompress voice
g.729a – medium complexity cup/DSP
g.729b – high complexity codec. Added VAD (voice activity connection).added CNG (comfort voice generation). Most people disable g729b
iLBC – internet low bit rate codec. optimized for narrow band speech. 13.3kbps. originally designed by Skype and intended for the internet (lossy wan connections)
ISAC – internet speech audio codec. variable rate codec (ranges from 10 -32 kbps). it’s adaptive. optimized for wideband speech and jitter over WAN e.g. internet
Digital Signal Processors (DSPs).
DSPs Convert analog to digital and vice versa. They:
sample the analog voice ->; quantization of the sampled data ->;encode and packetize ->; optionally compress.
Packet Data Voice Modules (PVDMs)
This is cisco proprietary DSPs. Used in IP phones, VOIP gateways for voice termination, DSP Farms (DSPs grouped together) for conferencing and media termination point MTP or for Transcoding.
MTP terminates the media.
conferencing – mix together various audio/ video streams into one.
transcoder – change one codec into another. can also change the size of packets.
E.g RTP and RTCP.
Real Time Protocol.
Layer 4 protocol. encapsulates all delay sensitive traffic such as voice. Rides on top of UDP. UDP Ports 16384 – 32767.
Provides end-to-end network transport functions for delay senitive traffic
- payload type identification
- sequence numbering
- time stamping
- delivery monitoring
Real Time Control Protocol. Monitors quality and statistics for the RTP protocol. Uses a +1 port from the port used by RTP. RTP uses and odd port, RTCP uses even ports.
- RTCP provides
- session monitoring
- session control
- packet count, loss, delay, jitter
sRTCP – used for security. voice data payload is encrypted using the AES cipher using transport layer security TLS aka SSL v3.1. it does not encrypt the entire packet as IPsec does.
Voice Payload ->; RTP Header ->; UDP header ->; Layer 3 IP header ->; Layer 2 .
Used to setup, teardown and control info about the call. Used for supplementary services like Call forward, pickup, transfer, hold, busy, redirect, call park, presence, Message waiting indicator MWI etc.
Most common: h323 – ITU ,sip – IETF ,MGCP – IETF, SCCP.
Evolved from ISDN Q931 layer 3 signaling .
Peer to peer protocols (phones and gateways have independent dial plans and are intelligent. they do not have to have a server in order to tell them what to do. they do not have to register to anyone but they have the ability to register to a gatekeeper so as to centralize dial plans.
SIP – Session Initiation protocol
Also a peer to peer protocol. Endpoints are intelligent and can make call routing decisions. They can register to a SIP Registrar server. it derives a lot of its roots from email SMTP.
MGCP- media gateway control protocol. designed for IP network to PSTN network voice gateways. from a TDM signaling protocol e.g. PRI to the IP network. it is a client/server (master /slave)protocol. gateway cannot at independently. client endpoints are not intelligent. clients/ slaves must register with the server.
SCCP – Skinny call control protocol.
Designed by Selsius systems who built call manager. SCCP was based on h323. h323 was too fat and had too many messages thus the skinner protocol.
Cisco proprietary. used for cisco devices e.g. IP phones, analog gateways, voice ports(unity and unity connection ) and gateways. skinny uses h225. it has q921 in its header messages.