Presentation is loading. Please wait.

Presentation is loading. Please wait.

Performance Optimization of VoIP Using an Overlay Network Raj Kumar Rajendran Samrat Ganguly Rauf Izmailov Dan Rubenstein Mentor(s): Project: Grid Networking.

Similar presentations


Presentation on theme: "Performance Optimization of VoIP Using an Overlay Network Raj Kumar Rajendran Samrat Ganguly Rauf Izmailov Dan Rubenstein Mentor(s): Project: Grid Networking."— Presentation transcript:

1 Performance Optimization of VoIP Using an Overlay Network Raj Kumar Rajendran Samrat Ganguly Rauf Izmailov Dan Rubenstein Mentor(s): Project: Grid Networking (GRIN)/VoIP Group: IP Networking and Distributed Systems Group

2 Motivation VoIP traffic poised to grow rapidly FCC projects 27 million residential VoIP lines by 2010 Corporate VoIP usage to go from 4% to 44% by 2010 Skype had 10 billion minutes of calls in first year Internet not engineered for delay-sensitive applications Skype is proprietary Not clear how it works Hypothesized that VoIP performance can be improved by Path-Diversity Error-coding

3 Challenge Design VoIP-specific overlay network Implement Path-Diversity Parity-coding Deploy Test performance Design test tools and methodology Test usefulness of overlay Effect of Path-Diversity Tradeoffs of Redundancy and Error-Coding

4 Measuring VoIP Performance ITU-T E-Model R-factor R-FactorVoice Quality Rating 0<R<100Best 80<R<90High 70<R<80Medium 60<R<70Low 50<R<60Poor Delay Impairment (I d ) 0.024D unto 177ms 0.11D after 177ms Loss Impairment (I e ) Network Loss Jitter Loss Variance in Delay Non-Linear Depends on Codec R-factor depends on delay, loss, clustering of loss Is Non-linear

5 System User-nodes Beacon-Nodes Overlay-nodes Nodes play 3 roles User-node Runs VoIP appl On startup finds and registers with beacon-node Beacon-node Intermediary between overlay and user Represents registered user-nodes for routing purposes Overlay-Node Routes VoIP streams Receives and sends VoIP streams directly to user-nodes

6 Architecture Control -Layer Route-Compute Layer Probe Layer Data Layer Probe Layer User Layer Data Layer Beacon Layer Data Layer Beacon Layer Control -Layer Route-Compute Layer Probe Layer Data Layer User-nodes Beacon-Nodes Overlay-nodes Data Quality Probe Control Data User-Nodes Send VoIP stream to overlay node indicated to it by beacon Beacon-node With Overlay-nodes periodically assesses quality of links between them Overlay Nodes Calculates optimal routes to all beacon-nodes (directly or through other overlay-nodes) Receives VoIP streams directly from user-nodes and optimally routes them

7 Estimating Link-Quality Link Quality-Probe 8 second talk-spurt (1000 132Byte packets) is sent and we estimate Average Delay (d) Network Loss-rate (n) Jitter Loss-rate (j) Delay loss Loss Clustering (c) Spurt-beginningSpurt-end132B1000 132B packets Overlay-nodes periodically asses quality of link between each other They send a talk-spurt Estimate quality of link

8 Estimating Path-Quality R-factor is not linear so is not additive ! We cannot just add the R- factor of the links Overlay User-node We know quality of link between individual overlay nodes Call may go over multiple-links What is the end-to-end quality of the path (R-factor) ? We need to estimate parameters for whole path! Delay is additive Network loss is multiplicative Cluster-factor can be computed as a weighted average Jitter (delay) loss is hard Our experiments indicated that sum is a good estimate

9 The Routing Algorithm Do (Every T seconds) Measure quality of direct- path to beacon, overlay nodes Repeat Exchange delay, loss( network,cluster) of best- path with other overlay- nodes If better-path exists through another overlay- node, update best-path Until (paths don’t change) Done Calculates best quality (R-factor) paths. Uses a modified Bellman-Ford (distance-vector) algorithm

10 Experimental Setup System Implemented on PlanetLab 35 nodes spread over US, Europe, Asia 11 nodes were chosen to be overlay-nodes Tests Used the G.711 codec 120 Byte frames every 15 ms (133 f/s) Each call 170Kbps (Frame+RTP+UDP+IP) Created a VoIP tester application Generated a call consisting of 8-second talk-spurts Statistics are collected for each talk spurt

11 Results: Overlay Performance Overlay run for 1 day uninterrupted Routing algorithm rerun every 10 minutes % Paths that improved Avg. R-factor improvement % Paths where R-factor Improved from low to medium ( 70) Improved from medium to high ( 80) 41% of calls improved R-factor improved by 26 for these calls 11% improved from “low” to “medium” quality 11% improved from “medium” to “high” The improvement was stable over time

12 Usefulness of Path-Diversity Can we put through more calls if we use multiple paths? We tested 2-calls, 3- calls and 4-calls R-factor improved on average by 4, 11 and 12 low quality spurts fell by 11%, 21% and 22% 12 Path-1 Path-2 121 2 1 2

13 Use of Coding Can we improve quality by using more bandwidth Packet-duplication Parity-codes Duplication deteriorates performance of regular channels Parity-coding offers better tradeoff. A 50% increase in BW ( 3,2) code channel improves R-factor by 16, and low-quality spurts fell by 27% Path-1 Path-2 121 2 P 1 2 P 1 2

14 Conclusion Quality of VoIP calls can significantly improved by using an overlay-network 41% of calls improve, and 10% improve from low to medium quality and 10% improve from medium to high quality The Path-diversity offered by overlays can be used to improve quality At large loads 20% fall in low-quality spurts When bandwidth is available Parity codes can be used to effectively trade-off bandwidth for quality Details: Infocom submission at www.ee.columbia.edu/~kumar/papers/


Download ppt "Performance Optimization of VoIP Using an Overlay Network Raj Kumar Rajendran Samrat Ganguly Rauf Izmailov Dan Rubenstein Mentor(s): Project: Grid Networking."

Similar presentations


Ads by Google