37
www.gradwell.com | 01225 800 800 | [email protected] Internet Technology Voice over IP Peter Gradwell

Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

Internet Technology – Voice over IP

Peter Gradwell

Page 2: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

BT Advert from 1980s

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

Page 3: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected] | 3

Welcome to Gradwell

Gradwell provides technology for every line on your business card

Every product we sell solves a problem we had

Page 4: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

The TCP/IP Stack

Page | 4

Where does VoIP fit in?

Page 5: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected] | 5

Different Types of VoIP

VoIP Comes in Many Flavours

Page 6: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 7: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 8: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

Good book:

If you're interested in more details

You can read most of it on amazon

Page 9: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 10: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 11: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

SIP – Session Initiation Protocol

SIP is the dominant VoIP protocol

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

11

Page 12: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

SIP Addressing

SIP is very similar to Email and HTTP

URI Address format:

- sip:[email protected]

- sip:[email protected]:5060

- sip:[email protected]

12

Page 13: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 14: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

SIP Registration

Phone registers periodically to tell the SIP server where it is

14

Page 15: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

SIP Call Flow

15

Page 16: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

A Complete Call

16

Often we'll draw

SIP call path

diagrams out like

this for debugging

Page 17: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

Debug using wireshark

17

Page 18: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

You can also do redirects

18

Page 19: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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”

Page 20: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 21: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 24: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

Google Voice Video

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

Page 25: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 26: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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)

Page 27: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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:[email protected]!i" .

IN NAPTR 102 10 "u" "E2U+email" "!^.*$!mailto:[email protected]!i"

Page 28: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

ENUM call

+44 123 456789

SIP:[email protected]

Company A

SIP:[email protected]

Company B

+44 987 654321

Dials +44 987 654321

Internet

PSTN

No ENUM

Page 29: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

ENUM call

+44 123 456789

SIP:[email protected]

Company A

SIP:[email protected]

Company B

+44 987 654321

Dials +44 987 654321

Internet

PSTN

ENUM

+44 987 654321SIP:[email protected]

+1.2.3.4.5.6.7.8.9.44.164.arpa

D

N

S

Page 30: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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/

Page 31: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 32: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 33: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 34: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected]

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

Page 35: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected] | 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

Page 36: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected] | 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?

Page 37: Internet Technology Voice over IP - Bathjap/cm40212/slides/gradwell-jap-voip.pdf · 2009-11-11 · - SIP - H323 - IAX (Inter Asterisk eXchange) ... - Integrated into dialer ... Enumdroid

www.gradwell.com | 01225 800 800 | [email protected] | 37

Peter Gradwell

T: 01225 800 810E: [email protected]

Any Questions?