Top Banner
H igh Speed Network Lab. EE, NDHU Implementation of Embedded SIP-based VoIPv6 System Pre Dr. Han-Chieh Chao Department of Electronic Engineering National Ilan University Email: [email protected]
47

Implementation of Embedded SIP-based VoIPv6 System

Feb 10, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

Implementation of Embedded SIP-based VoIPv6 System

PreDr. Han-Chieh Chao

Department of Electronic Engineering

National Ilan University

Email: [email protected]

Page 2: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

2

Drivers for IPv6

Page 3: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

3

Drivers for IPv6

Restoringan Environmentfor Innovation

O.S. and Applications

Services on the EdgeOf the Network

Mobile Networking

ManufacturingConsumer

and Services

Government

MedicalAgriculture/WildlifeTransportation

The Ubiquitous Internet

Page 4: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

4

Drivers for IPv6 (cont.)

ImprovementAvailable address spaceMulticastConfigurationAddressing Aggregation

PerformanceHeader structure better organizedNo fragmentationNo checksumAddressing architecture can be more aggregated

Security IPv6 integrateds IPSec inside the protocolIPv4 needs to add IPsecIPSec (ESP) and IKE

QoSIPv6 improves the performance

Header and its processingReduces jitter and processing delayNew specific fields in the header

Page 5: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

5

Network : IPv6

IPv6 Ready Logo Phase 1 ( Silver )

IPv6 Ready Logo Phase 2 ( Gold )

Let your product get certified

Page 6: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

6

IPv6 Logo Committee (v6LC)

the TAHI project (Japon) the University of New Hampshire (USA)ETSI IPv6 Plugtest (Europe)TTA (Korea)BII (China)NICI v6Lab (Taiwan)IRISA/INRIA (France)

Page 7: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

7

Drivers for VoIPISP : xDSL providers are also the old incumbent Telo’s

Revenue streams from the existing PSTNPSTN replacement/upgrades with lifetimes of 20+ years

Reluctant to invest money if voice traffic migrates from the PSTN to IP technologyDeutsch Telecom

Announced to January 2004 that by 2020 all telephone traffic will run over IPConsumer

Cost savings

Integrated data and voice networks

Device interoperability using standards-based protocols

Flexibility in deriving new services

VoIP + IPv6 is better solution than VoIP + IPv4ConveniencePerformanceSecurityQoS

Page 8: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

8

What is VoIP?

Carrying voice or/and video conservations over Internet protocolpacket networks

IP Network

Page 9: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

9

Why Use VoIP?

Cost savings

Integrated data and voice networks

Device interoperability using standards-based protocols

Flexibility in deriving new services

Page 10: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

10

Traditional Voice Versus VoIP

A traditional T1 can carry 24 telephone calls simultaneously

With VoIP, a T1 can carry 64 calls simultaneously!

G.729 8kbps compression, 20 msec frame size = 24 kbps

1544 / 24 = 64 calls per T1

T1 = 1544 kbps, DS0 = 64 kbps,

1544 / 64 = 24 DS0 per T1

Page 11: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

11

Consumer: IP-to-IP

Uses PC software to make calls over public and private internetsFree!!But, no quality of service guaranteesExamples:

Microsoft NetMeetingTM

SkypeTM

HybridsPC2PhoneTM

The InternetPC PCModemModem

Page 12: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

12

A Scenario of Applications

PSTN

Edge Router

IP Telephones

IP-to-PSTN Gateway

Edge Router

INTERNET

IP Telephones

Page 13: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

13

VoIP QoS Issue

DelayAlgorithmic DelayProcessing DelayNetwork Delay

JitterLost-Packet CompensationEcho CompensationCODECS

Page 14: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

14

Delay

Processing DelayActual process of encoding and collecting the encoded samples into a packet for transmission over the packet network.The encoding delay is a function of both the processor execution time and the type of algorithm used

Network DelayPhysical medium and protocols used to transmit the voice data and by the buffers used to remove packet jitter on the receive side.Network delay is a function of the capacity of the links in the network and the processing.

Page 15: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

15

Delay Causes Problems

EchoSignal reflections of the speaker's voice from the far-end telephone equipment back into the speaker's ear.Round-trip delay becomes greater than 50 milliseconds. (ITU G.131)

Talker overlapOne talker stepping on the other talker's speech The one-way delay becomes greater than 250 milliseconds. (ITU G.114)

Page 16: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

16

Jitter

Variable delay caused by network traversesRemoving jitter : buffering packets and waiting for the slowest packets to arrive in time to be played in the correct sequence.Causes additional delay

Page 17: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

17

Lost-Packet Compensation

Lost packets can be an even more severe problem, depending on the type of packet network that is being used.

Interpolate for lost speech packets by replaying the last packet received during the interval.Send redundant information.Use a hybrid approach with a much lower bandwidth voice coder toprovide redundant information.Avoiding and managing network congestion

Page 18: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

18

Echo Compensation

For network, usuallyRound-trip delay > 50 milliseconds

ITU standard G.165 Defines performance requirements required for echo cancellers

Page 19: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

19

CODEC

Voice codecs create blocks of data at fixed intervals Usually 10 ms

Each block contains a fixed number of bytes depending on the coding scheme used

10-80 bytes/blockCodecs can typically be parameterized to put a given number of voice data bytes into a single IP packet

10, 20, 30, …, 240 bytesBandwidth saving techniques

Silence suppressionCompression

TradeoffsSmall packets = less delay, but more layer 2/3 overheadLarge packets = more delay, less layer 2/3 overhead

Page 20: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

20

CODEC Characteristics

Codec Compression Method

Codec Bit

Rate

Block Length

Block Size

(bytes)

Blocks per

Packet

Voice Call Bandwidth Required

(Excl. L2 o/h)

Mean Opinion Score

Compression Delay (ms)

g711alaw PCM 64000 10 ms 80 2 80000 4.1 0.75

g711ulaw PCM 64000 10 ms 80 2 80000

g723ar53 ACELP 5300 10 ms 7 2 22000 3.65 30

g723ar63 MP-MLQ 6300 10 ms 8 2 23000 3.9 30

g723r53 ACELP 5300 10 ms 7 2 22000

g723r63 MP-MLQ 6300 10 ms 8 2 23000

g726r16 ADPCM 16000 10 ms 20 2 32000

g726r24 ADPCM 24000 10 ms 30 2 40000

g726r32 ADPCM 32000 10 ms 40 2 48000 3.85 1

g728 LD-CELP 16000 10 ms 20 2 32000 3-5

g729r8 CS-ACELP 8000 10 ms 10 2 24000 3.92 10

g729br8 CS-ACELP 8000 10 ms 10 2 24000 3.7 10

Page 21: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

21

Streaming Video

Video Challenges – Raw to Compression

Page 22: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

22

Network Challenges

Bandwidth : depend on Codec

H.261H.263

Display size 640 x 480320 x 240

Real-time Quality of Service (QoS)Packet lossJitterLatency : Video needs much more computing latency then audio

Page 23: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

23

Network Issues

Page 24: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

24

Real-time Transport Protocol (RTP)

Disadvantage of UDPPackets may be lost or out-of-sequence

RTP: A Transport Protocol for Real-Time ApplicationRFC 3550RTP – Real-Time Transport ProtocolRTCP- RTP Control Protocol

RTP over UDPA sequence numberA time stamp ofr synchronized play-outDoes not solve the problems: simply provides additional information

Page 25: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

25

Real-time Transport Protocol (RTP)

V P X PayloadM Sequence Number

Timestamp

Synchronization Source Identifier (SSRC)

Payload

Media content typeTalk spurtsPayload identificationSynchronizationLoss detectionSegmentation and reassembly

Page 26: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

26

The RTP Header

Sequence numberA random number generated by the sender at the beginning of a se A random number generated by the sender at the beginning of a session ssionIncremented by one for each RTP packet

TimestampThe receiver The receiver

Synchronized play Synchronized play-out outCalculate the jitter Calculate the jitterSupport silence suppression Support silence suppressionThe initial timestamp is a random number chosen by the sending application.

Payload Type (PT)In general, a single RTP In general, a single RTP only one payload format. only one payload format.RED is an exception. RED is an exception.

Page 27: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

27

RTP Payload Formats

RTP carries the actual digitally encoded voiceRTP header + a payload of voice/video samples UDP and IP headers are attached

Many voice- and video standards coding standardsA payload type identifier in the RTP header

A payload type identifier in the RTP headerSpecified in RFC 1890 and RFC 3551. New coding schemes have become available

A sender has no idea what coding schemes a receiver could handleNegotiated by signaling protocols like SIP.

Page 28: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

28

RTP Payload Formats (Cont.)

Separate signaling systemsCapability negotiation during the call setupSIP and SDPA dynamic payload type may be used

Support new coding scheme in the futureThe encoding name is also significant

RED, Redundant payload type RED, Redundant payload typeVoice samples + previous samplesCope with packet lossMay use different encoding schemes

Page 29: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

29

SIP signaling : Introduction

3GPP standardSimpler then H.323Also used for video conferencing, network gaming, instant messagingSimilar to HTTP, textual codingUses URLs for addressing:

sip:[email protected]:[email protected]?subject=callmesip:[email protected]:+1-919-555-1234

DTMFs carried in signaling message

Page 30: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

30

SIP Components

SIP UAHardware or software running SIP protocols

SIP ProxyOrdinary, service provided by ISP

Media GatewayConnects different networks

SIP-to-PSTNSIP-to-{other VoIP signaling protocol}

Page 31: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

31

IPv6 Network

SIP Call Setup

SIP Proxy

①INVITE sip:[email protected]: [email protected]:[email protected]:[email protected]

②INVITEsip:[email protected]: [email protected]:[email protected]:[email protected]

⑤ACK [email protected]⑥Voice/Video packets flow between IP telephones

Proxy for sip.com gets location information for called party.

IP Phone ([email protected])

IP Phone ([email protected])

③OK 200From: [email protected]:[email protected]:[email protected]

④OK 200From: [email protected]:[email protected]:[email protected]

Page 32: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

32

SIP UA Choice

Page 33: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

33

PC + SIP UA softwareWindows MessengerCCL + PCAX-Lite

It is upset whenever making a phone call after waiting for a computer booted.

For a consumer, SIP UA should beeasy to usezero-configuration : plug & dialto dial a number to make a phone callas cheaper as possible

SIP UA must behave like an ordinary telephone?

Page 34: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

34

Embedded System for SIP UA

CPU & HardwardSoC : ethernet on chip, VGA on chipEasy to extension : PCI, USB

Operating SystemEmbedded LinuxVxWork

Efficiency and system requirementPerformanceTime-to-prototype and time-to-marketSize : easy to be packed into a standalong phoneMaintainability

Page 35: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

35

Protocol stack for embedded system

SignalingSIP-SDP

CODECsVoice

G.711, G.723, G.729Video

H.261, H.263Transport

RTP

SIP-SDP

TCP/UDP

CODECs

RTP

UDP

IPv6

2G/3G WIFI XDSL Ethernet

Transport

Network

Link and Physical

Application

User Interface

Page 36: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

36

Application architecture for Embedded system

Voice CODECs Module

DSP

Video CODECs Module

Telephony

Signaling

Module

Network

Management

Module

Network

Protocol

Module

Embedded System

Video, Voice,

Signal Packets

Signaling

Voice

Video

Page 37: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

37

Application Architecture (cont.)

Voice/Video ModuleDigital-signal processor (DSP)

Telephony-Signaling ModuleTranslating signaling into state changes used by the network protocol module to set up connections

Network-Management ModuleManagement interface to configure and maintain the other modules

Network Protocol ModuleProcesses signaling information and converts it.

Page 38: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

38

Reference Embedded System

Provided by vendorTargeted at potential customersUsually includes

Hardware testbedDevelopment softwareSimulator or emulatorDownload and bootstrap softwareReference implementations

Page 39: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

39

Reference Software

Known as tool chains : installed into host PC

Software PurposeC compiler Compile programs for the ADM5120Assembler Assemble programs for ADM5120 and DSPDownloader Load software into the Embedded SystemMonitor Communicate with the Embedded system and

interact with running softwareBootstrap Start the embedded system runningReference Code Example programs for the ADM5120 that show

how to implement basic functions

Page 40: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

40

Reference Hardware

Quantity or Size Item1 Infenion-ADM5120 (175 MHz)8 Mbytes of SDRAM memory4 Mbytes of Flash ROM memory5 10/ 100 Ethernet ports1 Serial interface (console)2 MINI-PCI bus interface1 DSP

Page 41: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

41

Host

Functionalities of hostCompiling software for embedded systemSoftware includes OS kernel, device drivers and applicationsConsole of embedded system normally through serial portShow debug messages

Page 42: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

42

Development Flow

Let the OS kernel support IPv6Configure the OS kernel source to support IPv6IPv6 Ready Logo TestIf failed for IPv6 Ready Logo Test, the network protocol stack in OS kernel should be modified.

Let the SIP UP support IPv6Configure your C library for your embedded systemthe SIP UA software programming

Voice/Video ModuleTelephony-Signaling ModuleNetwork-Management ModuleNetwork Protocol Module

Put them togetherIntegration test

Page 43: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

43

Reference System In Our Lab

Operating System: LinuxSIP, RTP for IPv6Video Codec

H.261, H.263Audio Codec

G.711, G723, G.728, G.729aIPv6 protocol stack

IPv6 Phase 1 Ready Logo : Logo ID : 01-000277

Page 44: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

44

Video Cam

LCD Display

Signaling

Microphone

Page 45: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

45

Future way of communication

SIP proxy

SIP proxy

IPv6

SIP phone

SIP phone

SIP phoneSIP softwarephone

SIP softwarephone

SIP phone

Page 46: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

46

Documentation References

H.323 ITU Standard for Voice/Video over IPSIP – Session Initialization Protocol, IETF RFC 2543RTP – Real-time Transport Protocol, IETF RFC 1889ITU-T.37 – Procedures for the Transfer of Facsimile Data Via Store-and-forward on the InternetITU-T.38 – Procedures for Real-time Group 3 Facsimile Communication over IP Networks

Page 47: Implementation of Embedded SIP-based VoIPv6 System

High Speed Network Lab. EE, NDHU

47

Thank You