Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 ·...

Preview:

Citation preview

www.gradwell.com | 01225 800 800 | info@gradwell.com

Internet Technology – Voice over IP

Peter Gradwell

www.gradwell.com | 01225 800 800 | info@gradwell.com

BT Advert from 1980s

http://www.youtube.com/v/o0H65_pag04Page | 2

www.gradwell.com | 01225 800 800 | info@gradwell.comPage | 3

Welcome to Gradwell

Gradwell provides technology for every line on your business card

Every product we sell solves a problem we had

www.gradwell.com | 01225 800 800 | info@gradwell.com

The TCP/IP Stack

Page | 4

Where does VoIP fit in?

www.gradwell.com | 01225 800 800 | info@gradwell.comPage | 5

Different Types of VoIP

VoIP Comes in Many Flavours

www.gradwell.com | 01225 800 800 | info@gradwell.com

Voice Protocols

All systems use some kind of application protocol to communicate

- SIP

- H323

- IAX (Inter Asterisk eXchange)‏

- Skinny (Cisco Protocol)‏

Audio is transported as RTP

www.gradwell.com | 01225 800 800 | info@gradwell.com

TCP/UDP/Ports

Traffic is either TCP or UDP

MTU on Ethernet typically 1500 bytes

100 bytes of headers, 1400 bytes of data

Lots of packet overhead

MTU = Max Transfer

Unit/A Packet

Socket = IP Address + Port

www.gradwell.com | 01225 800 800 | info@gradwell.com

Good book:

If you're interested in more details

You can read most of it on amazon

www.gradwell.com | 01225 800 800 | info@gradwell.com

H.323

Point to Point Protocol

H.323 is actually a family of protocols

H.323 is used a lot on trunk routes, as it's signalling reflects ISDN, but is

becoming obsolete

9

Modem over IP

Conferencing

Fax

www.gradwell.com | 01225 800 800 | info@gradwell.com

Inter-Asterisk eXchange

Asterisk is a major OpenSource phone system

IAX was invented by Mark Spencer/Digium

Single UDP stream – port 4569

Handles the Media inband on the same socket

- Can support multiple RTP streams

- Single signalling link

- Far more bandwidth efficient

- Also much friendlier for firewalls

- Pronounced‏“eeks” 10

www.gradwell.com | 01225 800 800 | info@gradwell.com

SIP – Session Initiation Protocol

SIP is the dominant VoIP protocol

It's a peer to peer protocol, unlike H.323

11

www.gradwell.com | 01225 800 800 | info@gradwell.com

SIP Addressing

SIP is very similar to Email and HTTP

URI Address format:

- sip:peter@gradwell.com

- sip:100@sip.gradwell.net:5060

- sip:441225800800@sip.gradwell.net

12

www.gradwell.com | 01225 800 800 | info@gradwell.com

Types of SIP Message

INVITE—An INVITE method indicates that the recipient user or service is invited to participate in a

session.

ACK - An ACK request confirms that the UAC has received the final response to an INVITE request.

- ACK is used only with INVITE requests. ACK is sent end to end for a 200 OK response.

OPTIONS—A UA uses the OPTIONS request to query a UAS about its capabilities

BYE—A UA uses BYE to request the termination of a previously established session.

CANCEL—The CANCEL request enables UACs and network servers to cancel an in-progress

request, such as INVITE. This does not affect completed requests in which the UAS had already sent

final responses.

REGISTER—A client uses a REGISTER request to register its current location information

corresponding to the AOR of the user with SIP servers.

13

www.gradwell.com | 01225 800 800 | info@gradwell.com

SIP Registration

Phone registers periodically to tell the SIP server where it is

14

www.gradwell.com | 01225 800 800 | info@gradwell.com

SIP Call Flow

15

www.gradwell.com | 01225 800 800 | info@gradwell.com

A Complete Call

16

Often we'll draw

SIP call path

diagrams out like

this for debugging

www.gradwell.com | 01225 800 800 | info@gradwell.com

Debug using wireshark

17

www.gradwell.com | 01225 800 800 | info@gradwell.com

You can also do redirects

18

www.gradwell.com | 01225 800 800 | info@gradwell.com

Codecs

Audio is sampled at 8k or 16k times per second

(Hertz) – Pulse Code Modulation

Codecs trade off quality, bandwidth and CPU to

produce an RTP data packet

Narrow Band (8k) or Wide Band (16k)‏

We waste loads of Bandwidth on packet

overhead

Audio transmitted as RTP

Codec BR NEB

G.711 64 Kbps 87.2 Kbps

G.729 8 Kbps 31.2 Kbps

G.723.1 6.4 Kbps 21.9 Kbps

G.723.1 5.3 Kbps 20.8 Kbps

G.726 32 Kbps 55.2 Kbps

G.726 24 Kbps 47.2 Kbps

G.728 16 Kbps 31.5 Kbps

iLBC 15 Kbps 27.7 Kbps

BR = Bit rate

NEB = Nominal Ethernet

Bandwidth (one direction)‏

Skype uses iLBC and ISAC

“Nyquist theorem states that if you sample an analog signal at twice the rate of the

highest frequency of interest, you can accurately reconstruct that signal back into

its analog form”

www.gradwell.com | 01225 800 800 | info@gradwell.com

Jitter & Packet Loss

―Jitter‏is‏the‏variation‏of‏packet‏interarrival time‖

Jitter is a major problem

- The internet is asymmetrical

- Manage the problem with a Jitter buffer ~ 20ms

www.gradwell.com | 01225 800 800 | info@gradwell.com

Quality of Service

QoS is needed if a network link is congested

Routers need to enforce traffic prioritisation across

their links

How do they decide?

- Trust the user? - DiffServ, Expedited Forwarding and

Low Delay bits in IP header

- Trust the network – all traffic on port X or from IP

address Y is special

21

www.gradwell.com | 01225 800 800 | info@gradwell.com

Google Voice Video

Page | 24 http://www.youtube.com/v/m4Q9MJdT5Ds

www.gradwell.com | 01225 800 800 | info@gradwell.com

What is ENUM

User ENUM

- Allows users to define how calls should be routed to their numbers

- Stores telephone numbers in DNS and routing records

ENUM = E.164 NUmber Mapping (E164 is an ITU standard)

Needs‏a‏new‏‗root‘

- .e164.arpa

- Managed by RIPE

Numbers stored in reverse

- +44 1865 332211 becomes

- 1.1.2.2.3.3.5.6.8.1.4.4.e164.arpa

www.gradwell.com | 01225 800 800 | info@gradwell.com

What is ENUM

DNS uses a special form of record

- Name Authority Pointer (NAPTR)

- RFC2915

NAPTR contains a URI

- Information on how to route call

- Can specify multiple ways to call

- VoIP (SIP/H323)

- Email

- Tel(ephone)

- Fax

NAPTR records can be very sophisticated

- Can contain time of day and other information

- Can contain regular expressions so say a SIP record relates to the ENUM data

- (Generic ENUM records for a telco)

www.gradwell.com | 01225 800 800 | info@gradwell.com

What is ENUM

This is a record for +1 770 555 1212

100 / 102 is priority

- Lowest number, highest priority

10 is a preference level

- Can be ignored here as both records 10

―u‖‏is‏a‏user‏record‏i.e.‏stop‏processing

E2U+sip‏is‏the‏way‏of‏writing‏it‘s‏a‏SIP‏record

Regular expression and the final destination

$ORIGIN 2.1.2.1.5.5.5.0.7.7.1.e164.arpa.

IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:information@pbx.example.com!i" .

IN NAPTR 102 10 "u" "E2U+email" "!^.*$!mailto:information@example.com!i"

www.gradwell.com | 01225 800 800 | info@gradwell.com

ENUM call

+44 123 456789

SIP:01@A.co.uk

Company A

SIP:25@compB.co.uk

Company B

+44 987 654321

Dials +44 987 654321

Internet

PSTN

No ENUM

www.gradwell.com | 01225 800 800 | info@gradwell.com

ENUM call

+44 123 456789

SIP:01@A.co.uk

Company A

SIP:25@compB.co.uk

Company B

+44 987 654321

Dials +44 987 654321

Internet

PSTN

ENUM

+44 987 654321SIP:25@compB.co.uk

+1.2.3.4.5.6.7.8.9.44.164.arpa

D

N

S

www.gradwell.com | 01225 800 800 | info@gradwell.com

ENUM in production

Asterisk‏supports‏ENUM‏―out‏the‏box‖

OpenSIPS has an ENUM module

Various PBX suppliers can support ENUM though may require special

configuration

Nominet have developed an Android application Enumdroid

- Integrated into dialer

ENUM in the UK is currently looking for users

- www.nominet.org.uk/enum/

www.gradwell.com | 01225 800 800 | info@gradwell.com

Enumdroid – real life app

• Developed by Nominet’s Ray Bellis

– published as open source.

– Available on the Android Marketplace

• Dial the number of your contact

• Application performs an ENUM

query and Presents the user the

options available

• Caller make decision of call method

and places the call.

• Presents a number of options

– Has flexibility to turn off GSM if necessary

www.gradwell.com | 01225 800 800 | info@gradwell.com

Enumdroid – real life app

• Developed by Nominet’s Ray Bellis

– published as open source.

– Available on the Android Marketplace

• Dial the number of your contact

• Application performs an ENUM

query and Presents the user the

options available

• Caller make decision of call method

and places the call.

• Presents a number of options

– Has flexibility to turn off GSM if necessary

www.gradwell.com | 01225 800 800 | info@gradwell.com

Enumdroid – real life app

• Developed by Nominet’s Ray Bellis

– published as open source.

– Available on the Android Marketplace

• Dial the number of your contact

• Application performs an ENUM

query and Presents the user the

options available

• Caller make decision of call method

and places the call.

• Presents a number of options

– Has flexibility to turn off GSM if necessary

www.gradwell.com | 01225 800 800 | info@gradwell.com

Enumdroid – real life app

• Developed by Nominet’s Ray Bellis

– published as open source.

– Available on the Android Marketplace

• Dial the number of your contact

• Application performs an ENUM

query and Presents the user the

options available

• Caller make decision of call method

and places the call.

• Presents a number of options

– Has flexibility to turn off GSM if necessary

www.gradwell.com | 01225 800 800 | info@gradwell.comPage | 35

ENUM Conclusions

Story so far

ENUM allows interoperability between

carriers

More than just voice

Most applications can be completed

without‏“ENUM”,‏if‏you‏control‏the‏

network & devices

It needs a lot of end user applications

www.gradwell.com | 01225 800 800 | info@gradwell.comPage | 36

Voice Over IP?

Protocols and services are well established & here to stay

Lines (no pun intended) are bluring

Network convergence is actually happening

No one wants a desk phone

Some of the mobile problems will be fixed commercially

Some problems by changes in end user behaviour and open access to networks

The desktop environment is quickly unifying

Telcos still like building islands of subscribers

Regulator is looking at mobile number portability

ENUM gives end-user control, but no applications or drive for it

Where are we at with VoIP?

www.gradwell.com | 01225 800 800 | info@gradwell.comPage | 37

Peter Gradwell

T: 01225 800 810E: peter@gradwell.com

Any Questions?

Recommended