Part I: Introduction - Computer Science and Engineering

Download Report

Transcript Part I: Introduction - Computer Science and Engineering

CSE679: Lecture
“Voice and Video over IP (VVoIP)”
Prasad Calyam,
Sr. Systems Developer/Engineer,
Ohio Supercomputer Center
6th Nov 2007
Topics of Discussion
 Introduction
 Signaling Protocols Terminology
 Introduction to H.323 - ITU Standard
 Introduction to SIP – IETF Standard
 Comparison of H.323 and SIP
 Basics of RTP, RTCP
 Factors affecting VVoIP System Performance
 Measuring VVoIP System Performance
 OSC’s H.323 Beacon Tool
 OSC’s Vperf Tool
 Conclusion
Voice and Video over IP (VVoIP)
 Large-scale deployments of VVoIP are on the rise

VoIP
• Skype, Yahoo Messenger, Google Talk

Video streaming (one-way voice and video)
• MySpace, Google Video, YouTube, IPTV, …

Video conferencing (two-way voice and video)
• Polycom, WebEx, Acrobat Connect, …
 VVoIP popularity reasons
 Increased access to broadband
 Advances in standardization of H.323 and SIP protocols
 Today’s protocols allow a wide variety of
communication devices to talk to each other
VVoIP Deployment
VVoIP Deployment (2)
H.323
SIP
Gatekeeper
Corporate LAN
Gateway
Multipoint Control Unit
Switched
Circuit Network
(POTS and ISDN)
Router Internet
H.320
(over ISDN)
H.324
(over POTS)
Speech-Only
(telephones)
Desktop and Room Videoconferencing
Systems
3 Ways to Videoconference over the
Internet
1. Point-to-Point
3 Ways to Videoconference over the
Internet (Contd.)
2. Multi-Point Star Topology
3 Ways to Videoconference over the
Internet (Contd.)
3. Multi-Point Multi-Star Topology
Megaconferences – World’s largest
Annual Internet Videoconferences
MCU
Cascading
World sites
participation
Live/Archive
Streaming
Group Music, 3G
Video, Antartica,
Virtual Picnics, …
Signaling Protocols Terminology
 Call Establishment and Teardown
 Call Control and Supplementary Services
 Call waiting, Call hold, Call transfer
 Capability Exchange
 Admission Control
 Protocol Encoding (ASN1, HTTP)
H.323 – ITU Standard
 H.323 is an umbrella standard that defines how
real-time multimedia communications such as
Videoconferencing can be supported on packet
switched networks (Internet)
 Devices: Terminals, Gateways, Gatekeepers and
MCUs
 Codecs:


Video: H.261, H.263, H.264
Audio: G.711, G.722, G.723.1
 Signaling: H.225, H.245
 Transport Mechanisms: TCP, UDP, RTP and RTCP
 Data collaboration: T.120
 Many others…
H.323 Protocol Stack
APPLICATION
G.711
Video Signal
G.728
H.261
H.263
G.722
G.729
Audio Signal
G.723.1
Data
T.127
T.126
PRESENTATION
SESSION
T.124
RTCP
RAS
RTP
TRANSPORT
T.125/
T.122
Supplementary Services
H.450.3
H.235
H.450.2
H.450.1
X.224.0
Control
UDP
NETWORK
DATA LINK
PHYSICAL
H.245
H.225
TCP
H.323 Call setup and teardown
H.323 Call setup and teardown (Contd.)
RTP STREAM
MEDIA EXCHANGE
TCP CONNECTION
H.245 MESSAGES
CALL TEARDOWN
END SESSION COMMAND
CLOSE LOGICAL CHANNEL
END SESSION COMMAND
CLOSE LOGICAL CHANNEL
RELEASE COMPLETE
RELEASE COMPLETE
SIP - IETF Standard
 Session Initiation Protocol (SIP)
 SIP Elements: User Agent Client (UAC), User
Agent Server (UAS)

Easy to locate users due to the flexibility in SIP to
contact external location servers to determine user or
routing policies (url, email ID, e.g. [email protected])
 Server Types: Redirect Server, Proxy Server and
Registrar


SIP Proxy: perform application layer routing of SIP
requests and responses.
SIP Registrar: UAC sends a registration message and the
Registrar stores registration information in a location
service using a non-SIP protocol (E.g. LDAP)
SIP Deployment Architecture
OSU
You at Hawaii
Friend at San Jose
Comparison of H.323 and SIP
 Evolution


H.323 evolved from Telecommunications Community (ITU-T)
SIP evolved from Internet Community (IETF)
 Protocols


Differences in the signaling and control procedures
Off-the-record: SIP is equivalent to H.225 and RAS of H.323
 Feature sets







Functionality
Quality of Service
Manageability
Scalability
Flexibility
Interoperability
Ease of Implementation
Basics of RTP and RTCP
 RTP
 Provides end-to-end network transport functions suitable
for applications transmitting real-time data
• Audio, video or simulation data, over multicast or unicast
network services
 RTCP
 To allow monitoring of data delivery in a manner scalable to
large multicast networks
 To provide minimal control and identification functionality
 RTP and RTCP need best effort delivery
 UDP provides this
RTP Packet
RTCP Packet
Ethereal RTP Analysis – Try at Home!
 Use the OPENXTRA version of Ethereal!
http://resource.intel.com/telecom/support/appnotes/9008/9008an.pdf
 Steps for analyzing the Traces
 Load the packet trace into Ethereal
•
Trace will contain both forward and reverse direction streams (Check “Source”
and “Destination” IP addresses)
 Decode streams as RTP (default is UDP)
 This will mark all related packets as belonging to a specific audio and video
codec streams
 Analyze individual audio or video streams
 Import various information fields as .csv file (“Save as CSV” option)
 Also has wave file generation relating to an audio stream (“Save Payload”
option)
• Works only for G.711 Codec streams!
• Good for PESQ where you want to compare original and degraded wave files to
obtain Objective MOS information
Ethereal RTP Analysis (2)
General UDP Stream decoded
as an H.263 payload stream
Ethereal RTP Analysis (3)
Audio Stream
Video Stream
Ethereal RTP Analysis (4)
Loss
Re-ordering; 45413 45415 45414
(Observe Sequence #s; could also be 2
consecutive packet losses)
Pink-marked packets relate to either lost or re-ordered packets!
Ethereal RTP Analysis (5)
An Imported CSV File!
Ethereal RTP Analysis (6)
Create interesting visualizations to understand various RTP packet
characteristics; can do the same for both Voice and Video packets!!!
VVoIP System
 End-user Quality of Experience (QoE) is mainly dependent on
Network Quality of Service (QoS) metrics
QoS Metrics: bandwidth, delay, jitter, loss
 Device factors such as voice/video codecs, peak video bit rate (a.k.a.
256/384/768 dialing speed) also matter
Network QoS
End-user QoE

 Research underway to map the network QoS to end-user QoE
Understanding Delay…
SENDER SIDE
NETWORK
RECEIVER SIDE
Compression Delay
Propagation Delay
Resynchronization Delay
Transmission Delay
Processing Delay
Decompression Delay
Electronic Delay
Queuing Delay
Presentation Delay
 Delay is the amount of time that a packet takes to travel from
the sender’s application to reach the receiver’s destination
application
 Caused by codecs, router queuing delays, …
 One-way delay requirement is stringent for H.323
Videoconferencing to maintain good interaction between both
ends
Understanding Jitter…
 Jitter is the variation in delay of the packets arriving at the
receiving end

Caused by congestion, insufficient bandwidth, varying
packet sizes in the network, out of order packets, …
 Excessive jitter may cause packet loss in the receiver jitter
buffers thus affecting the playback of the audio and video
streams
Understanding Loss…
 Packet Loss is the packets discarded deliberately (RED,
TTL=0) or non-deliberately by intermediate links, nodes and
end-systems along a given transmission path
 Caused by line properties (Layer 1), full buffers (Layer 3)
or late arrivals (at the application)
Understanding Bandwidth bottleneck …
Voice and Video Packet Streams
 Total packet size (tps) – sum of payload (ps),
IP/UDP/RTP header (40 bytes), and Ethernet
header (14 bytes)
 Dialing speed is
;
= 64 Kbps
fixed for G.711 voice codec

Voice has fixed packet sizes (tpsvoice ≤ 534 bytes)

Video packet sizes are dependent on alev in the content
Video alev
 Low alev

Slow body movements and constant background; E.g. Claire video
sequence
 High alev

Rapid body movements and/or quick scene changes; E.g. Foreman video
sequence
 ‘Listening’ versus ‘Talking’
Talking video alev(i.e., High) consumes more bandwidth than Listening video alev
(i.e., Low)
Foreman
Claire

Factors affecting VVoIP System Performance
 Human Factors
 Video alev
 Individual perception of audio/video quality - qmos
 Device Factors
 MCUs, Routers, Firewalls, NATs, Modems, Operating
System, Processor, memory, …
 Network Factors
 Bandwidth, Delay, Jitter, Loss
Measuring VVoIP System Performance
 Challenges for monitoring large-scale VVoIP
deployments

Real-time or online monitoring of end-user Quality of
Experience (QoE)
• Traditional network Quality of Service (QoS) monitoring not
adequate

Need objective techniques for automated network-wide
monitoring
• Cannot rely on end-users to provide subjective rankings – expensive
and time consuming

Objective QoE measurements can be used for dynamic resource
management to optimize end-user QoE
Resource Management Example
Open
Port 2 U
MCU
 Multipoint Control Unit (MCU) bridges three or more
videoconference participants
 MCUs have limited ports; large videoconferences involve cascaded
MCUs
Resource Management Example
Open
Port 2 U
MCU
Cascade
MCU
Cascade
Site-A
Open 2 U
Port
Site-C
MCU
MCU
Open 2 U
Port
MCU
Site-B
Best performing path
from end-user site
Gatekeeper
Call Admission Controller
?
End-user QoE Types
 Streaming QoE

End-user QoE affected just by voice and video impairments
• Video frame freezing
• Voice drop-outs
• Lack of lip sync between voice and video
 Interaction QoE

End-user QoE also affected by additional interaction effort in a conversation
• “Can you repeat what you just said?”
• “This line is noisy, lets hang-up and reconnect…”
 QoE is measured using “Mean Opinion Score” (MOS) rankings
Existing Objective Techniques
 ITU-T E-Model is a success story for VoIP QoE estimation
 OSC’S H.323 Beacon tool has E-Model implementation
 It does not apply for VVoIP QoE estimation
• Designed for CBR voice traffic and handles only voice related impairments
• Does not address the VBR video traffic and impairments such as video frame freezing
 ITU-T J.144 developed for VVoIP QoE estimation
 “PSNR-based MOS” – PSNR calculation requires original and reconstructed
video frames for frame-by-frame comparisons
 Not suitable for online monitoring
• PSNR calculation is a time consuming and computationally intensive process

Does not consider joint degradation of voice and video i.e., lack of lip
synchronization
PSNR to MOS Mapping
Scenario: A Researcher and an Industry
professional want to Videoconference
GigaPOP
OC2
OC192
Internet2 Abilene Network
Case1:Researcher is unable to make a call!
GigaPOP
OC2
OC192
Internet2 Abilene Network
There was a mis-configured firewall blocking
necessary ports…
GigaPOP
OC2
OC192
Internet2 Abilene Network
Case2: Industry professional is unable to
make a call!
GigaPOP
OC2
OC192
Internet2 Abilene Network
His LAN’s Internet connectivity was nonfunctional at that time…
GigaPOP
OC2
OC192
Internet2 Abilene Network
Case3: They connected, but of them
experienced bad audio & video!
GigaPOP
OC2
OC192
Internet2 Abilene Network
There was congestion at one of the
intermediate routers along the path…
GigaPOP
OC2
OC192
Internet2 Abilene Network
There was congestion at one of the
intermediate routers along the path…
GigaPOP
OC2
OC192
Internet2 Abilene Network
There was congestion at one of the
intermediate routers along the path…
GigaPOP
OC2
OC192
Internet2 Abilene Network
The performance problem can be anywhere in
the E2E Path!!!
GigaPOP
OC2
OC192
Internet2 Abilene Network
An end-to-end troubleshooting tool can help!
3 Com
CISCO SYSTEMS
GigaPOP
OC2
OC192
3Com
Core Router
CISCO SYSTEMS
Switch
NMS
CDMA Device
Internet2 Abilene Network
Troubleshooting VVoIP System Performance
“OSC H.323 Beacon”
 An application-specific measurement tool

To monitor and qualify the performance of an H.323
sessions at the host and in the network (end-to-end)
 Useful to an end-user/conference operator/network
engineer
 Uses OpenH323 and J323Engine libraries
 Easy to install and use!
 Open source
http://www.itecohio.org/beacon
P. Calyam, W. Mandrawa, M. Sridharan, A. Khan, P. Schopis, “H.323 Beacon: An H.323 application related end-to-end
performance troubleshooting tool”, ACM SIGCOMM 2004 Workshop on Network Troubleshooting (NetTs), 2004.
Initial call setup failures and haphazard
disconnection detection…
Network Health Status…
 Delay, Jitter and Loss
 Real-time, offline raw data and test session summary
Network Health Plots…
 Watermarks for “Good”, “Acceptable” and “Poor” grade of quality as
experienced by end-user
 Delay: (0-150)ms, (150-300)ms, > 300ms
 Jitter: (0-20)ms, (20-50)ms, > 50ms
 Loss: (0-0.5)%, (0.5-1.5)%, > 1.5
Poor
Acceptable
Good
Audio and Video Quality Assessments
 Audio loopback feature
 E-Model-based objective MOS ranking
 Slider-based subjective MOS ranking
Customization of tests…
 Test results data folder, TCP/UDP/RTP port settings, H.225
and H.245 parameters, preferred codec, watermarks for
delay, jitter, loss, …
H.323 Beacon Server
Online VVoIP QoE Measurement Problem
 Given:
 Video-on-demand (streaming) or Videoconferencing (interactive)
 Voice/video codec
 Dialing speed
 Problem:
 An objective technique that can estimate both streaming and interactive
VVoIP QoE in terms of MOS rankings
 Estimation has to be real-time without involving actual end-users, video
sequences and VVoIP appliances
 An active measurement tool that can: (a) emulate VVoIP traffic on a network
path, and (b) uses the objective VVoIP estimation technique
Vperf Tool
GAP-Model

Earlier studies estimate QoE affected by QoS metrics in isolation

E.g. impact due to only bandwidth/delay/loss/jitter
We consider network health as a combination of different levels of bandwidth,
delay, jitter and loss – hence more realistic
 The levels are quantified by well-known “Good”, “Acceptable” and “Poor” (GAP)
performance levels for QoS metrics
 Our strategy



Derive “closed-form expressions” for modeling MOS using offline human subject
studies under different network health conditions
Leverage the GAP-Model in Vperf tool for online QoE estimation for a measured
set of statistically stable network QoS metrics
P. Calyam, M. Sridharan, W. Mandrawa, P. Schopis “Performance Measurement and Analysis of H.323 Traffic”,
Passive and Active Measurement Workshop (PAM), Proceedings in Springer-Verlag LNCS, 2004.
Test-cases Reduction Problem
 Modeling QoE as a function of 4 QoS metrics in 3 levels (GAP)
requires administering 81 test cases per human subject

Test-cases ordering using < bnet dnet lnet jnet > sequence: [<GGGG>,

81 test cases are burdensome to any human subject
<GGGA>, …, <APPP>, <PPPP>]
• They involve long hours of testing
• Results may be error-prone due to human subject exhaustion
 To overcome this problem, we developed novel “Test-cases
Reduction” strategies
P. Calyam, E. Ekici, C. -G. Lee, M. Haffner, N. Howes, “A ‘GAP-Model’ based Framework for Online VVoIP QoE
Measurement”, In Second-round Review - Journal of Communications and Networks (JCN), 2007.
Test-case Reduction Strategy-1
 Reduction based on network condition infeasibility

We conducted a network emulator (NISTnet) qualification study to
identify any practically infeasible network conditions
• E.g. there cannot be Good loss levels when there is Poor bandwidth level
provisioned in the network path

Reduces the test-cases number from 81 to 42
Test-case Reduction Strategy-2
 Reduction based on human-subjects’ ranking inference
 Eliminate more severe test cases during the testing based on the Poor
rankings for less severe test cases
• E.g. If human subject ranked test case <GPPP> with an extremely Poor MOS, it can
be inferred that more severe test cases <APPP> and <PPPP> will also receive
extremely Poor MOS

Reduces the 42 test-cases further depending on the human subjects’
rankings during the testing
NOTE: Our test-case reduction strategies resulted in atmost 90 minutes of testing
time per human subject (including training, administering and short-breaks)
Closed-network Testing



Test environment setup

Testing was automated as much as possible for repeatability

21 belonging to 3 categories: (i) Expert, (ii) General, and (iii) Novice
Human subjects selection
Double stimulus impairment scale method using Streaming-Kelly, Interactive-Kelly
video clips


Human subject compares baseline video sequence with impaired video sequence for MOS
ranking
In-band chat channel between human subject and test administrator
(a) Isolated LAN Testbed
(b) MOS Slider
Closed-form Expressions

Polynomial curve fitting on the Streaming and Interactive qmos training data
obtained from closed-network testing
 Average qmos – mean of the 21 human subject rankings for a particular network health


condition
Lower and Upper bound qmos – 25th and 75th percentile values
• To account for the possible qmos variation range influenced by the human subject categories
Hence, 6 sets of regression surface model parameters in GAP-Model
Vperf Tool Implementation of GAP-Model
 After test duration δt, a set of statistically stable network QoS
measurements are obtained
 When input to GAP-Model, online VVoIP QoE estimates are instantly
produced
GAP-Model Validation
 GAP-Model Validation with human subjects (V-MOS) and network
conditions not tested during model formulation
V-MOS within the lower
and upper bounds
GAP-Model Validation (2)
 GAP-Model validation with ITU-T J.144 estimates (P-MOS) and network
conditions not tested during model formulation
P-MOS within the lower
and upper bounds
MAPTs Methodology
 “Multi-Activity Packet Trains” (MAPTs)
measure Interaction QoE in an automated
manner



They mimic participant interaction patterns and video
activity levels as affected by network fault events
Given a session-agenda, excessive talking than normal due to
unwanted participant interaction patterns impacts
Interaction QoE
“Unwanted Agenda-bandwidth” measurement and compare
with baseline (consumption during normal conditions)
• Higher values indicate poor interaction QoE and caution about
potential increase in Internet traffic congestion levels
• Measurements serve as an input for ISPs to improve network
performance using suitable traffic engineering techniques
P. Calyam, M. Haffner, E. Ekici, C. -G. Lee, “Measuring Interaction QoE in Internet Videoconferencing”, IEEE/IFIP
Management of Multimedia and Mobile Networks and Services (MMNS), Proceedings in Springer-Verlag LNCS, 2007.
Proposed Solution Methodology (2)
‘repeat’
‘disconnect’
‘reconnect’
‘reorient’
Type-I and Type-II fault detection
MAPTs Emulation
 Emulation of Participant Interaction Patterns (PIPs) using MAPTs
for a given session agenda
Normal – PIP1
MAPTs Emulation (2)
 Emulation of Participant Interaction Patterns (PIPs) using MAPTs for a
“Type-I” network fault event

Type-I: Performance of any network factor changes from Good grade to
Acceptable grade over a 5 second duration
Repeat – PIP2
MAPTs Emulation (3)
 Emulation of Participant Interaction Patterns (PIPs) using MAPTs for a
“Type-II” network fault event

Type-II: Performance of any network factor changes from Good grade to
Poor grade over a 10 second duration
Disconnect/Reconnect/Reorient – PIP3
Vperf Tool Implementation of MAPTs


Per-second frequency of Interim Test Report generation
Interaction QoE reported by Vperf tool - based on the progress of the sessionagenda
MAPTs Performance
 Increased the number of Type-I and Type-II network fault events in a
controlled LAN testbed for a fixed session-agenda

NISTnet network emulator for network fault generation
 Recorded Unwanted Agenda-Bandwidth and Unwanted Agenda-Time
measured by Vperf tool
(a) Impact of Type-I Network Fault Events
on Unwanted Agenda-Bandwidth
(b) Impact of Type-I and Type-II Network
Fault Events on Unwanted Agenda-Time
Summary
 Signaling Protocols Terminology
 Introduction to H.323 and SIP
 Comparison of H.323 and SIP
 Basics of RTP, RTCP
 Factors affecting VVoIP System Performance
 Measuring VVoIP System Performance
 OSC’s H.323 Beacon Tool
 OSC’s Vperf Tool
Questions?