+ All Categories
Home > Documents > The Voice Over Internet Protocol (VOIP)

The Voice Over Internet Protocol (VOIP)

Date post: 25-Feb-2016
Category:
Upload: limei
View: 34 times
Download: 0 times
Share this document with a friend
Description:
Presented by: Christopher Thorpe Course: TCP/IP and Upper Layer Protocols Instructor: Professor Amer May 10 th 2011. The Voice Over Internet Protocol (VOIP). Slides used from: Varsha Mahadevan , Kevin Jeffay , Behrouz Forouzan. VOIP Standards. - PowerPoint PPT Presentation
Popular Tags:
57
The Voice Over Internet Protocol (VOIP) Presented by: Christopher Thorpe Course: TCP/IP and Upper Layer Protocols Instructor: Professor Amer May 10 th 2011 Slides used from: Varsha Mahadevan, Kevin Jeffay, Behrouz Forouzan
Transcript
Page 1: The Voice Over Internet Protocol (VOIP)

The Voice Over Internet Protocol (VOIP)Presented by: Christopher ThorpeCourse: TCP/IP and Upper Layer ProtocolsInstructor: Professor AmerMay 10th 2011

Slides used from: Varsha Mahadevan, Kevin Jeffay,

Behrouz Forouzan

Page 2: The Voice Over Internet Protocol (VOIP)

VOIP Standards

International Telecommunications Union (ITU) H.323 – Visual Telephone Systems and

Equipment for Local Area Networks which Provide a Non-Guaranteed Quality of Service

Internet Engineering Task Force (IETF) Session Initiation Protocol (SIP) Media Gateway Control (Megaco) Signal Transport (SigTran)

Page 3: The Voice Over Internet Protocol (VOIP)

Reasons for VOIP’s growth

Demand for multimedia communication.

Demand for integration of voice and data networks.

Demand for greater flexibility. Cost reduction in long distance

telephone calls.

Page 4: The Voice Over Internet Protocol (VOIP)

VOIP Components Media Encoding

G.711, Pulse Coded Modulation, Excellent quality, Delay << 1ms G.723.1, Algebraic Codebook Excited Linear Prediction, Good quality,

Delay 67-97ms G.729, Conjugate Structure-ACELP, Good quality, Delay 25-35ms

Gateway Control ITU H.GCP IETF MGCP, MEGACO, IPDC

Media Transport Real Time Protocol (RTP) Real Time Control Protocol (RTCP)

Signaling H.323 – ITU recommendation for telephone on local area networks Session Initiation Protocols (SIP) Session Description Protocol (SDP)

Page 5: The Voice Over Internet Protocol (VOIP)

VOIP using H.323

Application layer

Transport layer

Network layer

Link layer

Physical layer

Underlying LAN or WAN Technology

IP

UDP

RTSP

UDP

TCP

H.323

Audio Services – Encoding and Compression

Audio Services – Control and Signaling

RTCP H.245RTP H.225RAS Q.93

1

Page 6: The Voice Over Internet Protocol (VOIP)

VOIP using SIP

Application layer

Transport layer

Network layer

Link layer

Physical layer

Underlying LAN or WAN Technology

IP

UDP

RTP

RTSP

UDP/TCP

SIP

Audio Services – Encoding, Compression

Audio Services – Control and Signaling

RTCPRTP

UDP

Page 7: The Voice Over Internet Protocol (VOIP)

Session Initiation Protocol (SIP) Major Features

User location – Determines the end system to used for communications.

User availability – Determines called party’s willingness to engage in communications.

Feature negotiation – Matches device capabilities.

Call setup – Establishment of call parameters.

Call handling – Transfer and termination of call.

Page 8: The Voice Over Internet Protocol (VOIP)

VOIP using SIP

Before you make a call…Bell-tell

X-tel

y-tel

sip.mcast.net, 224.0.1.75

REGISTER sip:bell-tel.com SIP/2.0Via: SIP/2.0/UDP saturn.bell-tel.comFrom: sip:[email protected]:sip:[email protected]: [email protected]:1 REGISTERContact: sip:[email protected]:3890;transport=udpExpires: 7200

saturn

Page 9: The Voice Over Internet Protocol (VOIP)

VOIP using SIP

Before you make a call…Bell-tell

X-tel

Y-tel

401 UnauthorizedAuthentication challengenonce="dcd98b7102dd2f0e8b11d0f600bfb0c093"

saturn

Page 10: The Voice Over Internet Protocol (VOIP)

VOIP using SIP

Before you make a call…Bell-tell

X-tel

Y-tel

RegistrationAuthentication responseresponse="6629fae49393a05397450978507c4ef1"

saturn

Page 11: The Voice Over Internet Protocol (VOIP)

VOIP using SIP

Before you make a call…Bell-tell

X-tel

Y-tel

200 - OK

saturn

Page 12: The Voice Over Internet Protocol (VOIP)

VOIP using SIP

Before you make a call…Bell-tell

X-tel

Y-tel

saturn

Watson’sinformation

Page 13: The Voice Over Internet Protocol (VOIP)

SIP – Making a call

Establishing

Communicating

Terminating

INVITE: address, options

OK: address

ACK

Exchanging Audio

BYE

Page 14: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEContact: BigGuy sip:[email protected]: application/sdpContent-Length: 147

V = 0O = UserA 2890844526 2890844526 IN IP4 here.comS = Session SDPC = IN IP4 100.101.102.103T = 0 0M = audio 49170 RTP/AVP 0A = rtpmap: 0 PCMU/8000

User A User BProxy 1 Proxy 2

1

Page 15: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 407 Proxy Authorization RequiredVia: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEProxy-Authenticate: Digest realm=“MCI WorldCom SIP”Domain=“wcom.com”, nonce=“wf84f1ceczx41ae6cbe5aea9c8e88d359”Opaque=“”, stale = “FALSE”, algorithm=“MD5”Content-Length: 0

User A User BProxy 1 Proxy 2

2

Page 16: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

ACK sip:[email protected] SIP/2.0Via: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEContent-Length: 0

User A User BProxy 1 Proxy 2

3

Page 17: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

INVITE sip:[email protected] SIP/2.0From: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: 1 INVITEAuthorization:Digest username=“UserA”, Nonce = “wf84f1ceczx41ae6cbe5aea9c8e88d359”Uri=sip:ss1.wcom.com,Response=“42ce3cef44b22f50c6a6071bc8”Content-Type: application/sdpContent-Length: 147

User A User BProxy 1 Proxy 2

4

Page 18: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP ss1.wcom:5060Via: SIP/2.0/UDP here.com:5060Record-Route: sip:[email protected]: BigGuy sip:[email protected]: LittleGuy sip:[email protected]

User A User BProxy 1 Proxy 2

5

Page 19: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 100 TryingVia: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEContent-Length: 0

User A User BProxy 1 Proxy 2

6

Page 20: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP ss2.wcom:5060Via: SIP/2.0/UDP ss1.wcom:5060Via: SIP/2.0/UDP here.com:5060Record-Route: sip:[email protected] , sip:[email protected]: BigGuy sip:[email protected]: LittleGuy sip:[email protected]

User A User BProxy 1 Proxy 2

7

Page 21: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 100 TryingVia: SIP/2.0/UDP ss1.wcom.com:5060Via: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEContent-Length: 0

User A User BProxy 1 Proxy 2

8

Page 22: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 180 RingingVia: SIP/2.0/UDP ss2.wcom.com:5060Via: SIP/2.0/UDP ss1.wcom.com:5060Via: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159Call-ID: [email protected]: 1 INVITEContent-Length: 0

User A User BProxy 1 Proxy 2

9

Page 23: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 180 RingingVia: SIP/2.0/UDP ss1.wcom.com:5060Via: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159Call-ID: [email protected]: 1 INVITEContent-Length: 0

User A User BProxy 1 Proxy 2

10

Page 24: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 180 RingingVia: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159Call-ID: [email protected]: 1 INVITEContent-Length: 0

User A User BProxy 1 Proxy 2

11

Page 25: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 200 OKVia: SIP/2.0/UDP ss2.wcom:5060Via: SIP/2.0/UDP ss1.wcom:5060Via: SIP/2.0/UDP here.com:5060Record-Route: sip:[email protected] , sip:[email protected]: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEContact: BigGuy sip:[email protected]: application/sdpContent-Length: 134

User A User BProxy 1 Proxy 2

12

Page 26: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 200 OKVia: SIP/2.0/UDP ss1.wcom:5060Via: SIP/2.0/UDP here.com:5060Record-Route: sip:[email protected] , sip:[email protected]: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEContact: BigGuy sip:[email protected]: application/sdpContent-Length: 134

User A User BProxy 1 Proxy 2

13

Page 27: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

SIP/2.0 200 OKVia: SIP/2.0/UDP here.com:5060Record-Route: sip:[email protected] , sip:[email protected]: BigGuy sip:[email protected]: LittleGuy sip:[email protected]: [email protected]: 1 INVITEContact: BigGuy sip:[email protected]: application/sdpContent-Length: 134

User A User BProxy 1 Proxy 2

14

Page 28: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

ACK sip:[email protected] SIP/2.0Via: SIP/2.0/UDP here.com:5060Route: sip:[email protected] , sip:[email protected]: BigGuy sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159Call-ID: [email protected]: 1 ACKContent-Length: 0

User A User BProxy 1 Proxy 2

15

Page 29: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

ACK sip:[email protected] SIP/2.0Via: SIP/2.0/UDP ss1.wcom.com:5060Via: SIP/2.0/UDP here.com:5060Route: sip:[email protected] ,From: BigGuy sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159Call-ID: [email protected]: 1 ACKContent-Length: 0

User A User BProxy 1 Proxy 2

16

Page 30: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

ACK sip:[email protected] SIP/2.0Via: SIP/2.0/UDP ss2.wcom.com:5060Via: SIP/2.0/UDP ss1.wcom.com:5060Via: SIP/2.0/UDP here.com:5060From: BigGuy sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159Call-ID: [email protected]: 1 ACK

User A User BProxy 1 Proxy 2

17

Page 31: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

User A User BProxy 1 Proxy 2

Two-way Media Flow

Page 32: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

User A User BProxy 1 Proxy 2

18

BYE sip : [email protected] SIP/2.0Via: SIP/2.0/UDP there.com:5060Route: sip:[email protected] , sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159 To: BigGuy sip:[email protected]: [email protected]: 1 BYEContent-Length: 0

Page 33: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

User A User BProxy 1 Proxy 2

19

BYE sip : [email protected] SIP/2.0Via: SIP/2.0/UDP ss2.wcom.com:5060Via: SIP/2.0/UDP there.com:5060Route: sip:[email protected] , sip:[email protected]: LittleGuy sip:[email protected] ; tag = 314159 To: BigGuy sip:[email protected]: [email protected]: 1 BYEContent-Length: 0

Page 34: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

User A User BProxy 1 Proxy 2

20

BYE sip : [email protected] SIP/2.0Via: SIP/2.0/UDP ss1.wcom.com:5060Via: SIP/2.0/UDP ss2.wcom.com:5060Via: SIP/2.0/UDP there.com:5060From: LittleGuy sip:[email protected] ; tag = 314159 To: BigGuy sip:[email protected]: [email protected]: 1 BYEContent-Length: 0

Page 35: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

User A User BProxy 1 Proxy 2

21

SIP/2.0 200 OKVia: SIP/2.0/UDP ss1.wcom.com:5060Via: SIP/2.0/UDP ss2.wcom.com:5060Via: SIP/2.0/UDP there.com:5060From: LittleGuy sip:[email protected] ; tag = 314159 To: BigGuy sip:[email protected]: [email protected]: 1 BYEContent-Length: 0

Page 36: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

User A User BProxy 1 Proxy 2

22

SIP/2.0 200 OKVia: SIP/2.0/UDP ss2.wcom.com:5060Via: SIP/2.0/UDP there.com:5060From: LittleGuy sip:[email protected] ; tag = 314159 To: BigGuy sip:[email protected]: [email protected]: 1 BYEContent-Length: 0

Page 37: The Voice Over Internet Protocol (VOIP)

SIP Connection Through Two Proxy Servers

User A User BProxy 1 Proxy 2

23

SIP/2.0 200 OKVia: SIP/2.0/UDP there.com:5060From: LittleGuy sip:[email protected] ; tag = 314159 To: BigGuy sip:[email protected]: [email protected]: 1 BYEContent-Length: 0

Page 38: The Voice Over Internet Protocol (VOIP)

H.323 Architecture

Page 39: The Voice Over Internet Protocol (VOIP)

TCP/IP Protocol Suite 39

Figure 25.27 H.323 example

Find IP addressof gatekeeper

Q.931 messagefor setup

RTP for audio exchangeRTCP for management

Q.931 messagefor termination

Page 40: The Voice Over Internet Protocol (VOIP)

VOIP using H.323

Before you make a call….

GRQ

GRQ

GRQ

Gatekeeper RequestrequestSeqNumprotocolIdentifiernonStadardDatarasAddressendpointTypegatekeeperIdentifiercallServicesendpointAlias

Gateway discovery

Page 41: The Voice Over Internet Protocol (VOIP)

VOIP using H.323

Before you make a call….

RCF

RRJ

RRJ

Gatekeeper ConfirmrequestSeqNumprotocolIdentifiernonStadardDatagatekeeperIdentifierrasAddress

Gatekeeper RejectrequestSeqNumprotocolIdentifiernonStadardDatagatekeeperIdentifierRejectReason

Gateway discovery

Page 42: The Voice Over Internet Protocol (VOIP)

VOIP using H.323

Before you make a call….

RRQRegistration RequestrequestSeqNumprotocolIdentifiernonStadardDatadiscovery completeCallSignalAddressrasAddressterminalTypeterminalAliasterminalIdentifierendpointVendor

Gateway registration

Page 43: The Voice Over Internet Protocol (VOIP)

VOIP using H.323

Before you make a call….

RCFRegistration ConfirmrequestSeqNumprotocolIdentifiernonStadardDataCallSignalAddressterminalAliasgatekeeperIdentifierendpointVendor

Gateway registration

Page 44: The Voice Over Internet Protocol (VOIP)

VOIP using H.323

When you make a call….

ARQACF

Setup Call Proceeding

ARQACF

AlertingConnect

Page 45: The Voice Over Internet Protocol (VOIP)

H.323 vs SIP

H.323 SIP

Philosophy Designed for multimedia communication over different types of networks

Designed to session b/w two points

Reliability Designed to handle failure of network entities

No defined procedures for handling device failure

Message Encoding

Encodes in compact binary format

Encodes in ASCII text format. Hence easy to debug and process

Addressing Flexible addressing scheme using URLs and E.164 numbers

Understands only URLs style addresses

Architecture Monolithic Modular

H.232 VS SIP

Page 46: The Voice Over Internet Protocol (VOIP)

Real Time Protocol (RTP)

Ver P X Contr.count M Payload type Sequence

number

Timestamp

Synchronization source identifier

Contributor identifier

Contributor identifier

Type Application Type Application Type Application0 PCMµ Audio 7 LPC audio 15 G728 audio1 1016 8 PCMA audio 26 Motion JPEG2 G721 audio 9 G722 audio 31 H.2613 GSM audio 10-11 L16 audio 32 MPEG1 video

5-6 DV14 audio 14 MPEG audio 33 MPEG2 video

Page 47: The Voice Over Internet Protocol (VOIP)

Real Time Control Protocol (RTCP) Five types of PDUs.

Sender Report – 200▪ Contains transmission and reception statistics for all RTP

packets sent during an interval. Receiver Report – 201▪ Informs senders and other recipients about QoS.

Source destination Message – 202▪ Contains additional information about source. Eg email,

telephone number or address of owner. Bye Message – 203▪ Announces to all receivers that the source is leaving the

session. Application-Specific Message – 204▪ Allows the specification of new message type

Page 48: The Voice Over Internet Protocol (VOIP)

RTCP PDUs

Page 49: The Voice Over Internet Protocol (VOIP)

VOIP Challenges - Jitter

Page 50: The Voice Over Internet Protocol (VOIP)

VOIP Challenges - Jitter

Page 51: The Voice Over Internet Protocol (VOIP)

VOIP Challenges - Jitter

Page 52: The Voice Over Internet Protocol (VOIP)

VOIP Challenges – Echo

Speaker Echo Reflections at interconnections within

PSTN.

Listener Echo Multiple speaker echoes reflected toward

listener.

Page 53: The Voice Over Internet Protocol (VOIP)

VOIP using Skype

Page 54: The Voice Over Internet Protocol (VOIP)

VOIP using Skype LoginStart

Send UDP PDUs to HC IP addresses and portsResponse within 5 seconds

TCP connection attempt with HC IP address and port

Connected ? Success

Wait for 6 seconds

YesNo

Yes

No

TCP connection attempt with HC IP address and port 80

Connected ?

TCP connection attempt with HC IP address and port 443 (HTTPS port)

Connected ?

Connection attempts ==

5?Failure

Yes

Yes

No

No

Yes

No

Page 55: The Voice Over Internet Protocol (VOIP)

Skype Call Establishment Call Establishment

without NAT Call Establishment

with NAT

Page 56: The Voice Over Internet Protocol (VOIP)

Skype Call Maintenance and Teardown Skype call “keep

alive” process Skype call

teardown

Page 57: The Voice Over Internet Protocol (VOIP)

Questions?


Recommended