42
Designing and Designing and deploying a VoIP deploying a VoIP network network When ITU meets IETF When ITU meets IETF Thomas(at)Kernen.Net Thomas(at)Kernen.Net

8-Designing and deploying a VoIP network.ppt

Embed Size (px)

Citation preview

Page 1: 8-Designing and deploying a VoIP network.ppt

Designing and Designing and deploying a VoIP deploying a VoIP

networknetworkWhen ITU meets IETFWhen ITU meets IETF

Thomas(at)Kernen.NetThomas(at)Kernen.Net

Page 2: 8-Designing and deploying a VoIP network.ppt

A quick VoIP recapA quick VoIP recap Directory Gatekeeper (DGK): Performs call routing Directory Gatekeeper (DGK): Performs call routing

search at highest level (ex: country code distributes). search at highest level (ex: country code distributes). Country codes among other DGKs Forward LRQ Country codes among other DGKs Forward LRQ (location request) to a partner DGK if call doesn't (location request) to a partner DGK if call doesn't terminate in local SP DGKterminate in local SP DGK

Gatekeeper (GK): Performs call routing search at Gatekeeper (GK): Performs call routing search at intermediate level (ex: NPA-NXX). Distributes NPA intermediate level (ex: NPA-NXX). Distributes NPA among other GKs. Provides GW resource management among other GKs. Provides GW resource management (Ressource Availabilty Indicator, gw-priority, ....)(Ressource Availabilty Indicator, gw-priority, ....)

Gateway (GW): Acts as interface between the PSTN Gateway (GW): Acts as interface between the PSTN and IP. Normalizes numbers from PSTN before and IP. Normalizes numbers from PSTN before entering IP. Normalizes numbers from the IP before entering IP. Normalizes numbers from the IP before entering the PSTN. Contains the dial-peer entering the PSTN. Contains the dial-peer configuration. Registers with the GK.configuration. Registers with the GK.

Page 3: 8-Designing and deploying a VoIP network.ppt

Gatekeeper A Gatekeeper B

RRQ/RCF

ARQ

RRQ/RCF

LRQ

IP Network

Phone A

Gateway A Gateway B

H.225 (Q.931) Setup

H.225 (Q.931) Alert and Connect

H.245

RTP

ACF

LCF

VV

Basic H.323 CallBasic H.323 Call

VV

ARQ

ACF

Phone B

Page 4: 8-Designing and deploying a VoIP network.ppt

Various Codec Various Codec Bandwidth Bandwidth

ConsumptionsConsumptionsEncoding/Compression

ResultBit Rate

G.711 PCMA-Law/u-Law

64 kbps (DS0)

G.726 ADPCM 16, 24, 32, 40 kbps

G.727 E-ADPCM

G.729 CS-ACELP 8 kbps

G.728 LD-CELP 16 kbps

G.723.1 CELP 6.3/5.3 kbpsVariable

16, 24, 32, 40 kbps

StandardTransmissionRate for Voice

Page 5: 8-Designing and deploying a VoIP network.ppt

Cisco Encoding Cisco Encoding ImplementationImplementation

= Sample

8 kHz (8,000 Samples/Sec)

= 0010110101

IP QoS WAN

Encode Decode

20 Byte packet every 20ms (50pps)8kbps Data Rate

Note - This 8bkps for “Voice Payload” only!!

Add on 40 bytes of IP/UDP/RTP and you now have 24kbps!RTP Header Compression will take this down to 11.2kbps

Page 6: 8-Designing and deploying a VoIP network.ppt

Voice Quality of Service Voice Quality of Service (QoS) Requirements(QoS) Requirements

Loss

Delay

Delay Variation (Jitter)

Avoiding The 3 Main QoS Challenges

Page 7: 8-Designing and deploying a VoIP network.ppt

Loss and Delay SourcesLoss and Delay Sources

• Input queuing

• Jitter buffer

• CODEC (Decode)

• Access (up) link transmission

• Backbone network transmission

• Access (down) link transmission

• CODEC (Encode)

• Packetization

• Output queuingVoice Path

Loss+

Delay+

DelayVariation

Page 8: 8-Designing and deploying a VoIP network.ppt

Delay—How Much Is Too Delay—How Much Is Too Much? Much?

Cumulative Transmission Path Delay

Time (msec)

0 100 200 300 400

CB ZoneCB Zone

Satellite QualitySatellite Quality

Fax Relay, BroadcastFax Relay, BroadcastHigh QualityHigh Quality

Delay Target

500 600 700 800

ITU’s G.114 Recommendation = 0 – 150msec 1-way delay

Page 9: 8-Designing and deploying a VoIP network.ppt

Fixed Delay ComponentsFixed Delay Components

Propagation—six microseconds per kilometerPropagation—six microseconds per kilometer Serialization Serialization ProcessingProcessing

Coding/compression/decompression/decodingCoding/compression/decompression/decodingPacketizationPacketization

Processing Delay

Propagation Delay

Serialization Delay—Buffer to Serial Link

Page 10: 8-Designing and deploying a VoIP network.ppt

Variable Delay Variable Delay Components Components

Queuing delayQueuing delay Dejitter buffersDejitter buffers Variable packet sizesVariable packet sizes

DejitterBuffer

Queuing Delay

Queuing Delay

Queuing Delay

Page 11: 8-Designing and deploying a VoIP network.ppt

56kb WAN

Large Packets “Freeze Large Packets “Freeze Out” VoiceOut” Voice

Large packets can cause playback buffer Large packets can cause playback buffer underrun, resulting in slight voice degradationunderrun, resulting in slight voice degradation

Jitter or playback buffer can accommodate Jitter or playback buffer can accommodate some delay/delay variationsome delay/delay variation

~214ms Serialization Delay

10mbps Ethernet 10mbps Ethernet

Voice Packet60 bytes

Every 20ms

Voice 1500 bytes of Data Voice

Voice Packet60 bytes

Every >>214ms

Voice Packet60 bytes

Every >214ms>214ms

Voice 1500 bytes of Data Voice

Voice 1500 bytes of Data Voice

Page 12: 8-Designing and deploying a VoIP network.ppt

RTP Controlling Dejitter RTP Controlling Dejitter BufferBuffer

RTP Timestamp From Router AInterframe gap of 20ms

CC

Sender Receiver

IPNetwork

VV VV

BB AA

RouterA RouterB

10 30 50

20ms 20ms

RTP Timestamp From Router AVariable Interframe Gap (Jitter)

CC BB AA10 30 50

20ms 80ms

RTP Timestamp From Router ADelitter Buffer removes Variation

CC BB AA10 30 50

20ms 20ms

Page 13: 8-Designing and deploying a VoIP network.ppt

Calculate Delay Budget - Calculate Delay Budget - Worst CaseWorst Case

PropagationDelay—8 ms

Coder Delay25 ms

Serialization Delay2 ms

Dejitter Buffer50 ms

QueuingDelay4 ms

Site A Site B

(128kbps Frame Relay)

Total 89 msecDejitter Buffer 50 msec

Min 8 msecNetwork Delay (e.g.,Public Frame Relay Svc)

Serialization Delay 128 kbps Trunk 2 msec

4 msecQueuing Delay 128 kbps Trunk

5 msec

Packetization Delay—Included in Coder Delay

Coder Delay G.729 (5 msec look ahead)

Propagation Delay (Private Lines)

Fixed Delay

Variable Delay

Coder Delay G.729 (10 msec per frame) 20 msec

Page 14: 8-Designing and deploying a VoIP network.ppt

Fragmentation and Fragmentation and InterleavingInterleaving

Serialization delay for 64Kbps link with an Serialization delay for 64Kbps link with an MTU of 1500 bytesMTU of 1500 bytes

(1500 bytes x 8bits/byte) / (64000 bits/sec) (1500 bytes x 8bits/byte) / (64000 bits/sec) = 187.5ms= 187.5ms

Fragmentation size: design for 10ms Fragmentation size: design for 10ms fragmentsfragments

(0.01 sec x 64000 bps) / (8 bits/byte) = 80 (0.01 sec x 64000 bps) / (8 bits/byte) = 80 bytesbytes

It takes 10 ms to send an 80 byte packet or It takes 10 ms to send an 80 byte packet or fragment over a 64kbps link.fragment over a 64kbps link.

Page 15: 8-Designing and deploying a VoIP network.ppt

Fixed Frame Serialization Fixed Frame Serialization Delay MatrixDelay Matrix

Frame Size

LinkSpeed

56kbps

64kbps

128kbps

256kbps

512kbps

768kbps

1536kbs

1Byte

143us

125us

62.5us

31us

15.5us

10us

5us

64Bytes

9ms

8ms

4ms

2ms

1ms

640us

320us

18ms

128Bytes

16ms

8ms

4ms

2ms

1.28ms

640us

36ms

256Bytes

32ms

16ms

8ms

4ms

2.56ms

1.28ms

72ms

512Bytes

64ms

32ms

16ms

8ms

5.12ms

2.56ms

144ms

1024Bytes

128ms

64ms

32ms

16ms

10.24ms

5.12ms

1500Bytes

46ms

214ms

187ms

93ms

23ms

15mss

7.5ms

Page 16: 8-Designing and deploying a VoIP network.ppt

Multilink PPP with Multilink PPP with Fragmentation and Fragmentation and

InterleaveInterleave

Elastic Traffic MTUReal-Time MTU

64 kbps Line

Elastic MTU Real-Time MTUElastic MTU Elastic MTU

Addendum to PPP Specification

187ms Serialization Delayfor 1500 byte Frame at 64 kbps

64 kbps Line

Page 17: 8-Designing and deploying a VoIP network.ppt

Media Link Layer Media Link Layer OverheadOverhead

Layer 2 Media Layer 2 Header Size

Ethernet 14 bytes

PPP/MLPPP 6 bytes

Frame Relay

ATM (AAL5) 5 bytes + waste5 bytes + waste

MLPPP over FR 14 bytes

MLPPP over ATMMLPPP over ATM 5 bytes for every ATM cell5 bytes for every ATM cell+ 20 bytes for MLPPP/AAL5+ 20 bytes for MLPPP/AAL5

6 bytes6 bytes

Page 18: 8-Designing and deploying a VoIP network.ppt

RTP Header RTP Header CompressionCompression

20ms@8kb/s yields 20 20ms@8kb/s yields 20 byte payloadbyte payload

IP header 20; UDP header IP header 20; UDP header 8; RTP header 128; RTP header 12

2X payload!!!!!!!!2X payload!!!!!!!! Header compression Header compression

40Bytes to 2-4 much of the 40Bytes to 2-4 much of the timetime

Hop-by-HopHop-by-Hop on on slow links <512kbpsslow links <512kbps

CRTP—Compressed Real-CRTP—Compressed Real-time protocoltime protocol

Overhead

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Header ChecksumProtocolTime to Live

Source Address

Destination Address

PaddingOptions

Source Port Destination Port

ChecksumLength

PTPTMMCCCCXXPPV=2V=2 Sequence NumberSequence Number

TimestampTimestamp

Synchronization Source (SSRC) IdentifierSynchronization Source (SSRC) Identifier

Page 19: 8-Designing and deploying a VoIP network.ppt

RTP Header compression RTP Header compression detailsdetails

Can save a lot of bandwidth (>50%) per Can save a lot of bandwidth (>50%) per flow.flow.

Works on serial links between 2 routersWorks on serial links between 2 routers CPU intensive, might overkill the routersCPU intensive, might overkill the routers Limited to 256 sessions (128 calls) over FRLimited to 256 sessions (128 calls) over FR Limited to 1000 sessions (500 calls) over Limited to 1000 sessions (500 calls) over

HDLC (checked in 12.2(8)T)HDLC (checked in 12.2(8)T) Not recommend on links with data rates Not recommend on links with data rates

above E1above E1

Page 20: 8-Designing and deploying a VoIP network.ppt

Silence suppressionSilence suppression

VAD (Voice Activity Detection) (Cisco)VAD (Voice Activity Detection) (Cisco) Codec built-in silence suppression Codec built-in silence suppression

(G.729a/G.723.1b)(G.729a/G.723.1b) Should not be taken into account for Should not be taken into account for

circuits carrying less than 24/30 calls circuits carrying less than 24/30 calls since based on aggregate volume, not since based on aggregate volume, not individual calls.individual calls.

Should not be taken into account when Should not be taken into account when engineering the network.engineering the network.

Page 21: 8-Designing and deploying a VoIP network.ppt

IP Precedence/DSCPIP Precedence/DSCP

DSCP - Differentiated Services Code DSCP - Differentiated Services Code Point (RFC 2474-2475)Point (RFC 2474-2475)

Set IP Precedence/DSCP higher for Set IP Precedence/DSCP higher for VoIP. Usually set to 5/101000VoIP. Usually set to 5/101000

Set at source (gateway) if possible Set at source (gateway) if possible for less hassle.for less hassle.

Page 22: 8-Designing and deploying a VoIP network.ppt

Queuing mechanisms Queuing mechanisms (in Cisco’s world)(in Cisco’s world)

FIFO, First In First OutFIFO, First In First Out Packets arrive and leave the queue in exactly the Packets arrive and leave the queue in exactly the

same ordersame order Simple configuration and fast operationSimple configuration and fast operation No Priority servicing or bandwidth guarantees No Priority servicing or bandwidth guarantees

possiblepossible

WFQ, Weighted Fair QueuingWFQ, Weighted Fair Queuing A hashing algorithm, places flows into separate A hashing algorithm, places flows into separate

queues where weights are used to determine how queues where weights are used to determine how many packets are serviced at a time. You define many packets are serviced at a time. You define weights by setting IP Precedence and DSCP values.weights by setting IP Precedence and DSCP values.

Simple configuration.Simple configuration. No priority servicing or bandwidth guarantees No priority servicing or bandwidth guarantees

possible.possible.

Page 23: 8-Designing and deploying a VoIP network.ppt

Queuing mechanisms (2)Queuing mechanisms (2) CQ, Custom QueuingCQ, Custom Queuing Traffic is classified into multiple queues with configurable Traffic is classified into multiple queues with configurable

queue limits.queue limits. Has been available for a few years and allows approximate Has been available for a few years and allows approximate

bandwidth allocation for different queues.bandwidth allocation for different queues. No priority servicing possible. Bandwidth guarantees are No priority servicing possible. Bandwidth guarantees are

approximate and there are a limited number of queues. approximate and there are a limited number of queues. Configuration is relatively difficult.Configuration is relatively difficult.

PQ, Priority QueuingPQ, Priority Queuing Traffic is classified into high, medium, normal and low Traffic is classified into high, medium, normal and low

priority traffic is serviced first, then medium priority traffic, priority traffic is serviced first, then medium priority traffic, followed by normal and low priority traffic.followed by normal and low priority traffic.

Has been available for a few years and provides priority Has been available for a few years and provides priority servicing.servicing.

Higher priority traffic can starve lower priority queues of Higher priority traffic can starve lower priority queues of bandwidth. No bandwidth guarantees possible.bandwidth. No bandwidth guarantees possible.

Page 24: 8-Designing and deploying a VoIP network.ppt

Queuing mechanisms (3)Queuing mechanisms (3) CBWFQ, Class Based Weighted Fair QueuingCBWFQ, Class Based Weighted Fair Queuing MQC is used to classify traffic. Classified traffic is placed into MQC is used to classify traffic. Classified traffic is placed into

reserved bandwidth queues or a default unreserved queue.reserved bandwidth queues or a default unreserved queue. Similar to LLQ except there is no priority queue. Simple Similar to LLQ except there is no priority queue. Simple

configuration and ability to provide bandwidth guarantees. No configuration and ability to provide bandwidth guarantees. No priority servicing possible.priority servicing possible.

PQ-WFQ, Priority queue-Weighted Fair Queuing (IP RTP PQ-WFQ, Priority queue-Weighted Fair Queuing (IP RTP Priority)Priority)

Single interface command is used to provide priority servicing Single interface command is used to provide priority servicing to all UDP packets destined to even port numbers within a to all UDP packets destined to even port numbers within a specific range.specific range.

Simple, one command config. Provides priority servicing to RTP Simple, one command config. Provides priority servicing to RTP packets.packets.

All other traffic is treated with WFQ. RTCP traffic is not All other traffic is treated with WFQ. RTCP traffic is not prioritized. No guaranteed bandwidth capability.prioritized. No guaranteed bandwidth capability.

Note: MQC = Modular QoS CLINote: MQC = Modular QoS CLI

Page 25: 8-Designing and deploying a VoIP network.ppt

Queuing mechanisms (4)Queuing mechanisms (4) Low Latency Queueing (LLQ) = Priority Queue (PQ)Low Latency Queueing (LLQ) = Priority Queue (PQ)

+ Class Based-Weighted Fair Queue (CB-WFQ).+ Class Based-Weighted Fair Queue (CB-WFQ). Allows a strict Priority Queue to handle a defined Allows a strict Priority Queue to handle a defined

class of packet to be prioritized over all other traffic.class of packet to be prioritized over all other traffic. Simple config, ability to provide priority to multiple Simple config, ability to provide priority to multiple

classes of traffic and give upper bounds on priority classes of traffic and give upper bounds on priority bandwidth utilization. Can also config bandwidth bandwidth utilization. Can also config bandwidth guaranteed classes and a default class.guaranteed classes and a default class.

All priority traffic is sent throught the same priority All priority traffic is sent throught the same priority queue which can introduce jitter.queue which can introduce jitter.

Note: Cisco appears to be working on improving LLQ Note: Cisco appears to be working on improving LLQ and this is currently the #1 queuing mechanism and this is currently the #1 queuing mechanism according to SEs, TAC and updated documentation.according to SEs, TAC and updated documentation.

Page 26: 8-Designing and deploying a VoIP network.ppt

TrafficTraffic Engineering Engineering Busy Hour (BH) = Number of lines required to support Busy Hour (BH) = Number of lines required to support

the worst hour of the daythe worst hour of the day Grade of service (GOS) = Percentage of lines that will Grade of service (GOS) = Percentage of lines that will

experience a busy tone on the 1st attempt during the experience a busy tone on the 1st attempt during the BHBH

A GOS of 0.05 means 5 out of 100 callers might get a A GOS of 0.05 means 5 out of 100 callers might get a busy tonebusy tone

Erlang B, most widely used traffic model to estimate Erlang B, most widely used traffic model to estimate the number of lines required for a specific GOS and BH the number of lines required for a specific GOS and BH of traffic.of traffic.

Based on various traffic assumptions such as call Based on various traffic assumptions such as call queueing, arrival rate, etc...queueing, arrival rate, etc...

1 trunk in use for 1 hour = 1 Erlang = 36 CCS of traffic1 trunk in use for 1 hour = 1 Erlang = 36 CCS of traffic 1 Centrum Call Seconds (CCS) = 100 call seconds1 Centrum Call Seconds (CCS) = 100 call seconds 1 hour = 3600 seconds or 36 CCS = 1 Erlang 1 hour = 3600 seconds or 36 CCS = 1 Erlang

Page 27: 8-Designing and deploying a VoIP network.ppt

Traffic Traffic Engineering (2)Engineering (2)

Step1: Obtain voice traffic dataStep1: Obtain voice traffic data Sources of traffic information: CDRs (Call Sources of traffic information: CDRs (Call

Detail Record) or carrier bills, carrier studies, Detail Record) or carrier bills, carrier studies, traffic reportstraffic reports

Data needs to be adjusted for call processing Data needs to be adjusted for call processing since a trunk in use = Dialing + Call setup + since a trunk in use = Dialing + Call setup + Ringing + Talking + ReleasingRinging + Talking + Releasing

Other sources: Ring No Answer, Busy Signal, Other sources: Ring No Answer, Busy Signal, etcetc

Add 10% to 16% to all call lengths/total time Add 10% to 16% to all call lengths/total time estimates.estimates.

Page 28: 8-Designing and deploying a VoIP network.ppt

TrafficTraffic Engineering (3) Engineering (3) Step 2: Convert to ErlangsStep 2: Convert to Erlangs Adjusted total hours a month / business Adjusted total hours a month / business

days * % of traffic in busy hourdays * % of traffic in busy hour Step 3: Calculate the number of voice linesStep 3: Calculate the number of voice lines Based on statistical model for the # of Based on statistical model for the # of

lines vs the grade of service desiredlines vs the grade of service desired Step 4: Calculate the data network Step 4: Calculate the data network

bandwidthbandwidth (Codec + protocol overhead) * number of (Codec + protocol overhead) * number of

voice lines = required bandwidthvoice lines = required bandwidth

Page 29: 8-Designing and deploying a VoIP network.ppt

POP POP SizingSizing Calculate the number of gateways (GW) Calculate the number of gateways (GW)

required to handle anticipated call volumerequired to handle anticipated call volume Use Busy Hour Call Attempts (BHCA) metricUse Busy Hour Call Attempts (BHCA) metric Calculate the number of (Directory) Calculate the number of (Directory)

Gatekeepers required to process the GW Gatekeepers required to process the GW signalingsignaling

GWs = max E1s per GW, BHCA, CPS (Calls GWs = max E1s per GW, BHCA, CPS (Calls per Second)per Second)

GKs = max CPS (check with vendor, not an GKs = max CPS (check with vendor, not an obvious figure to get, varies with each obvious figure to get, varies with each chassis/configuration/software release/DSP chassis/configuration/software release/DSP rev)rev)

Page 30: 8-Designing and deploying a VoIP network.ppt

Tips & tricksTips & tricks

Build GK redundancy by making sure Build GK redundancy by making sure all GWs have multiple GKs to reach. all GWs have multiple GKs to reach. HSRP can be very useful in conjunction HSRP can be very useful in conjunction with multiple GW->GK destinations.with multiple GW->GK destinations.

Make sure the GWs normalize the Make sure the GWs normalize the format of the called numbers so the format of the called numbers so the VoIP core deals with a single call VoIP core deals with a single call format (E.164 = country+city+local).format (E.164 = country+city+local).

Page 31: 8-Designing and deploying a VoIP network.ppt

Inter provider VoIP Inter provider VoIP servicesservices

What happens when you want to What happens when you want to extend the reach of your VoIP extend the reach of your VoIP services by interconnecting with services by interconnecting with other ITSP?other ITSP?

Tandem coding (VoIP->PSTN-Tandem coding (VoIP->PSTN->VoIP)>VoIP)

Open Settlement ProtocolOpen Settlement Protocol

Page 32: 8-Designing and deploying a VoIP network.ppt

Tandem CodingTandem Coding

In the case where a call is passed back from In the case where a call is passed back from the VoIP network to the PSTN and then the VoIP network to the PSTN and then resampled & compressed the call has been resampled & compressed the call has been sampled and compressed twice and sampled and compressed twice and therefore the call quality will degrade very therefore the call quality will degrade very rapidly.rapidly.

Examples:Examples:VoIP to GSM via the PSTN.VoIP to GSM via the PSTN.VoIP to the PSTN via another carrier with VoIP to the PSTN via another carrier with

compression gear.compression gear.Other VoIP carrier doesn’t want to “risk” Other VoIP carrier doesn’t want to “risk”

interconnects over VoIP (inter-ITSP QoS interconnects over VoIP (inter-ITSP QoS management issues)management issues)

Page 33: 8-Designing and deploying a VoIP network.ppt

Open Open Settlement Settlement ProtocolProtocol (OSP) (OSP)

Open Settlement Protocol (OSP), client-server protocol Open Settlement Protocol (OSP), client-server protocol defined by the ETSI TIPHON standards organization. defined by the ETSI TIPHON standards organization. Designed to offer billing and accounting record Designed to offer billing and accounting record consolidation for voice calls that traverse ITSP boundaries. consolidation for voice calls that traverse ITSP boundaries. It also allows service providers to exchange traffic with It also allows service providers to exchange traffic with each other without establishing multiple bilateral peering each other without establishing multiple bilateral peering agreements by using a 3rd party clearinghouse to enable agreements by using a 3rd party clearinghouse to enable extending the reach of their network.extending the reach of their network.

3rd party clearinghouse with an OSP server will allow 3rd party clearinghouse with an OSP server will allow services such as route selection, call authorization, call services such as route selection, call authorization, call accounting, and inter-carrier settlements, including all the accounting, and inter-carrier settlements, including all the complex rating and routing tables necessary for efficient complex rating and routing tables necessary for efficient and cost-effective interconnections. The OSP based and cost-effective interconnections. The OSP based clearinghouses provide the least cost and the best route-clearinghouses provide the least cost and the best route-selection algorithms based on the a wide variety of selection algorithms based on the a wide variety of parameters.parameters.

Page 34: 8-Designing and deploying a VoIP network.ppt

How How it worksit works Step 1: customer places call via the PSTN to a VoIP Step 1: customer places call via the PSTN to a VoIP

Gateway, which authenticates the customer by Gateway, which authenticates the customer by communicating with a RADIUS servercommunicating with a RADIUS server

Step 2: The originating VoIP gateway attempts to locate the Step 2: The originating VoIP gateway attempts to locate the termination point within it's own network by communicating termination point within it's own network by communicating with a gatekeeper using H.323 RAS. If there's no appropriate with a gatekeeper using H.323 RAS. If there's no appropriate route, the gatekeeper tells the gateway to search for a route, the gatekeeper tells the gateway to search for a termination point elsewhere.termination point elsewhere.

Step 3: The gateway contacts an OSP server at the 3rd party Step 3: The gateway contacts an OSP server at the 3rd party clearinghouse. The gateway establishes an SSL connection clearinghouse. The gateway establishes an SSL connection to the OSP server and sends an authorization request to the to the OSP server and sends an authorization request to the clearinghouse. The authorization request contains pertinent clearinghouse. The authorization request contains pertinent information about the call, including the destination number, information about the call, including the destination number, the device ID, and the customer ID of the gateway.the device ID, and the customer ID of the gateway.

Step 4: The OSP server processes the information and, Step 4: The OSP server processes the information and, assuming the gateway is authorized, returns routing details assuming the gateway is authorized, returns routing details for the possible terminating gateways that can satisfy the for the possible terminating gateways that can satisfy the request of the originating gateway.request of the originating gateway.

Page 35: 8-Designing and deploying a VoIP network.ppt

How it works (2How it works (2)) Step 5: The Clearinghouse creates an Step 5: The Clearinghouse creates an

authorization token, signs it with the certificate authorization token, signs it with the certificate and private key, and then replies to the and private key, and then replies to the originating gateway with a token and up to 3 originating gateway with a token and up to 3 selected routes. The originating gateway uses selected routes. The originating gateway uses the IP address supplied by the clearinghouse to the IP address supplied by the clearinghouse to setup the call.setup the call.

Step 6: The originating gateway sends the token Step 6: The originating gateway sends the token it received from the settlement server in the it received from the settlement server in the setup message to the terminating gateway.setup message to the terminating gateway.

Step 7: The terminating gateway accepts the call Step 7: The terminating gateway accepts the call after validating the token and completes the call after validating the token and completes the call setup.setup.

Page 36: 8-Designing and deploying a VoIP network.ppt

Voice Speech Quality Voice Speech Quality (VSQ)(VSQ)

MOS: ITU P.800 & P.830, scale from 1 (bad) to 5 MOS: ITU P.800 & P.830, scale from 1 (bad) to 5 (excellent), based on human perception (excellent), based on human perception (subjective), most widely used by VoIP vendors (subjective), most widely used by VoIP vendors when comparing codec quality, the oldest model.when comparing codec quality, the oldest model.

PSQM (Perceptual Speech Quality Measurement), PSQM (Perceptual Speech Quality Measurement), ITU P.861, compares input and output speech ITU P.861, compares input and output speech (automated), developed by KPN Research(automated), developed by KPN Research

PAMS (Perceptual Analysis Measurement System), PAMS (Perceptual Analysis Measurement System), Developed by British Telecom, “Objectively” Developed by British Telecom, “Objectively” predict results of subjective speech quality testspredict results of subjective speech quality tests

PESQ (Perceptual Evaluation of Speech Quality) PESQ (Perceptual Evaluation of Speech Quality) ITU P.862, latest standard (January 2001), ITU P.862, latest standard (January 2001), currently the most accurate model for automated currently the most accurate model for automated voice quality perception, improves over PSQM and voice quality perception, improves over PSQM and PAMSPAMS

Page 37: 8-Designing and deploying a VoIP network.ppt

Sources of potential VSQ Sources of potential VSQ problemsproblems

Delay jitter: variance in delay (zero, little or Delay jitter: variance in delay (zero, little or excessive delay)excessive delay)

Encoding and decoding of voice Encoding and decoding of voice (PCM/ADPCM/low bit-rate codecs/CLEP)(PCM/ADPCM/low bit-rate codecs/CLEP)

Time-Clipping (Front end clipping) introduced by Time-Clipping (Front end clipping) introduced by Voice Activity Detectors (VAD)Voice Activity Detectors (VAD)

Temporal signal loss and dropouts introduced by Temporal signal loss and dropouts introduced by packet lesspacket less

Environmental noise, including background noiseEnvironmental noise, including background noise Signal attenuation and gain/attenuation variancesSignal attenuation and gain/attenuation variances Level clippingLevel clipping Transmission channel errorsTransmission channel errors

Page 38: 8-Designing and deploying a VoIP network.ppt

Echo: What makes it a Echo: What makes it a problem?problem?

An An analog leakageanalog leakage path path between analog Tx and Rx paths between analog Tx and Rx paths

SufficientSufficient delay delay in echo return in echo return Sufficient Sufficient echo amplitudeecho amplitude

When all of the following conditions are true, echo is perceived as annoying:

Page 39: 8-Designing and deploying a VoIP network.ppt

How the packet voice How the packet voice impact on echo impact on echo

perception ?perception ?

Bits don’t leak - Echo is not introduced on digital linksBits don’t leak - Echo is not introduced on digital links The packet segment of the voice connection introduces a The packet segment of the voice connection introduces a

significant delay (typically 30 ms in each direction). significant delay (typically 30 ms in each direction). The introduction of delay causes echoes (from analog tail The introduction of delay causes echoes (from analog tail

circuits) that are normally indistinguishable from side tone to circuits) that are normally indistinguishable from side tone to become perceptible.become perceptible.

Because the delay introduced by packet voice is unavoidable, the Because the delay introduced by packet voice is unavoidable, the voice gateways must prevent the echovoice gateways must prevent the echo..

WAN PSTN PSTN

Low delay, potential echo sources

Large delay,no echo sources

Page 40: 8-Designing and deploying a VoIP network.ppt

Identify and Isolate the Identify and Isolate the echo problemecho problem

IdentifyIdentify the echo problem. Which side the echo problem. Which side hears echo? Calls to which numbers hears echo? Calls to which numbers hear echo ?hear echo ?

IsolateIsolate the problem as much as the problem as much as possible and try to find a scenario possible and try to find a scenario where the echo is reproducible.where the echo is reproducible.

Whenever I hear echo, the problem is Whenever I hear echo, the problem is at the OTHER end !!at the OTHER end !!

Page 41: 8-Designing and deploying a VoIP network.ppt

Basic securityBasic security GWs/GKs w/ACLs with source ip (yes, can be GWs/GKs w/ACLs with source ip (yes, can be

spoofed) appears to be the #1 source of spoofed) appears to be the #1 source of protection against un-authorized calls.protection against un-authorized calls.

Run your VoIP network isolated from any Run your VoIP network isolated from any public network using your prefered flavor public network using your prefered flavor (physical seperation, VLAN, MPLS, etc..)(physical seperation, VLAN, MPLS, etc..)

VoIP packets are _not_ encrypted, if this is an VoIP packets are _not_ encrypted, if this is an issue used IPSec! Beware that software issue used IPSec! Beware that software crypto will add delay and jitter, use hardware crypto will add delay and jitter, use hardware crypto for better performance (should add crypto for better performance (should add predictable delay and jitter)predictable delay and jitter)

Note: CRTP doesn't work with IPSec, Note: CRTP doesn't work with IPSec, remember this when designing the bandwidth remember this when designing the bandwidth budget.budget.

Page 42: 8-Designing and deploying a VoIP network.ppt

Questions?Questions?