790 likes | 951 Views
CSE679: Lecture. “Voice and Video over IP (VVoIP)” Prasad Calyam , Sr. Systems Developer/Engineer, Ohio Supercomputer Center 6 th Nov 2007. Topics of Discussion. Introduction Signaling Protocols Terminology Introduction to H.323 - ITU Standard Introduction to SIP – IETF Standard
E N D
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 (2) H.323 SIP Gatekeeper Corporate LAN Gateway Multipoint Control Unit Switched Circuit Network (POTS and ISDN) H.320 (over ISDN) Internet Router H.324 (over POTS) Speech-Only (telephones)
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 Live/Archive Streaming Group Music, 3G Video, Antartica, Virtual Picnics, … World sites participation
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…
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. pcalyam@osc.edu) • 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
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; 4541345415 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 • Research underway to map the network QoS to end-user QoE Network QoS End-user QoE
Understanding Delay… SENDER SIDE NETWORK RECEIVER SIDE Compression Delay Transmission Delay Electronic Delay Propagation Delay Processing Delay Queuing Delay Resynchronization Delay Decompression 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)
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 alevin 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 • Multipoint Control Unit (MCU) bridges three or more videoconference participants • MCUs have limited ports; large videoconferences involve cascaded MCUs
Resource Management Example Site-C Site-A Site-B Best performing path from end-user site 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
Scenario: A Researcher and an Industry professional want to Videoconference
There was a mis-configured firewall blocking necessary ports…
His LAN’s Internet connectivity was non-functional at that time…
Case3: They connected, but of them experienced bad audio & video!
There was congestion at one of the intermediate routers along the path…
There was congestion at one of the intermediate routers along the path…