Ian McDonald, Richard Nelson

Slides:



Advertisements
Similar presentations
Introduction 2 1: Introduction.
Advertisements

Introduction 1 Lecture 13 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
Assume that a file is transferred from a node A to a node B. The file has been fragmented in 5 frames. Frame 0 is corrupted, the ACK of frame 1 is corrupted,
Using FEC for Rate Adaptation of Multimedia Streams Marcin Nagy Supervised by: Jörg Ott Instructed by: Varun Singh Conducted at Comnet, School of Electrical.
Measurements of Congestion Responsiveness of Windows Streaming Media (WSM) Presented By:- Ashish Gupta.
An Empirical Study of Real Audio Traffic A. Mena and J. Heidemann USC/Information Sciences Institute In Proceedings of IEEE Infocom Tel-Aviv, Israel March.
Medium Start in TCP-Friendly Rate Control Protocol CS 217 Class Project Spring 04 Peter Leong & Michael Welch.
Modeling TCP Throughput: A Simple Model and its Empirical Validation Ross Rosemark Penn State University.
TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model CS 218 W 2003 Oct 29, 2003.
An Experimental Evaluation of Voice Quality over the Datagram Congestion Control Protocol H. Balan International Univeristy Bremen L. Eggert Nokia Research.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
1. Introduction REU 2006-Packet Loss Distributions of TCP using Web100 Zoriel M. Salado, Mentors: Dr. Miguel A. Labrador and Cesar D. Guerrero 2. Methodology.
1 Fair Queuing Hamed Khanmirza Principles of Network University of Tehran.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April 2009.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
© THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO 1 ns-2 TCP Simulations with The Network Simulation Cradle Sam Jansen and Anthony McGregor.
28/09/2016 Congestion Control Ian McDonald (with many other WAND members)
29/09/2016 Passive Detection of TCP Congestion Events Shane Alcock and Richard Nelson University of Waikato, Hamilton New Zealand.
Could SP-NAT Save the Internet?
Distributed Systems 11. Transport Layer
The Transport Layer Implementation Services Functions Protocols
Chapter 3 Transport Layer
Master’s Project Presentation
TCP - Part II.
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
13. TCP Flow Control and Congestion Control – Part 2
CS450 – Introduction to Networking Lecture 19 – Congestion Control (2)
TCP Vegas: New Techniques for Congestion Detection and Avoidance
Topics discussed in this section:
Chapter 3 outline 3.1 transport-layer services
TCP Vegas: New Techniques for Congestion Detection and Avoidance
Chapter 6 TCP Congestion Control
Neha Jain Shashwat Yadav
TCP-LP: A Distributed Algorithm for Low Priority Data Transfer
Presented by Kristen Carlson Accardi
Process-to-Process Delivery, TCP and UDP protocols
CIS, University of Delaware
TFRC for Voice: VoIP Variant and Faster Restart.
Review: UDP demultiplexing TCP demultiplexing Multiplexing?
Computer Networks Bhushan Trivedi, Director, MCA Programme, at the GLS Institute of Computer Technology, Ahmadabad.
Faster Restart for TCP Friendly Rate Control (TFRC)
Chapter 2 Introduction Application Requirements VS. Transport Services
CONGESTION CONTROL.
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
CSE679: Multimedia and Networking
TCP.
CIS679: Prioritized Delivery in UDP and TCP
A Selective Retransmission Protocol for Multimedia on the Internet
Process-to-Process Delivery:
ECE 599: Multimedia Networking Thinh Nguyen
PUSH Flag A notification from the sender to the receiver to pass all the data the receiver has to the receiving application. Some implementations of TCP.
CS4470 Computer Networking Protocols
Faster Restart for TCP Friendly Rate Control (TFRC)‏
PRESENTATION COMPUTER NETWORKS
Jiyong Park Seoul National University, Korea
CS640: Introduction to Computer Networks
CS4470 Computer Networking Protocols
COMP/ELEC 429/556 Fall 2017 Homework #2
Congestion Control Reasons:
The Transport Layer Reliability
Congestion Control (from Chapter 05)
Computer Science Division
Chapter 3 outline 3.1 Transport-layer services
Sally Floyd and Eddie Kohler draft-floyd-ccid4-01.txt July 2007
Congestion Control (from Chapter 05)
TCP flow and congestion control
Computer Networks Protocols
TCP: Transmission Control Protocol Part II : Protocol Mechanisms
DCCP: Issues From the Mailing List
Presentation transcript:

Ian McDonald, Richard Nelson Application-level QoS : Improving Video Conferencing Quality through Sending the Best Packet Next Ian McDonald, Richard Nelson

Introduction Aim is to improve audio reception over video Why send packets when we know they will be of no use? Why send packets in order at the transport level? Use the information of priority and RTT at the transport level to send the best packet next

Use of DCCP Standards track RFC Has unreliable sessions and pluggable congestion control Designed to replace UDP for multimedia apps Available in Linux Use CCID3 which is TFRC (TCP Friendly Rate Control) * CCID3 is more like a sine wave for congestion control, rather than saw tooth which is TCP * CCID3 uses a timer rather than ACK clocking

Testing setup Captured traces from Ekiga, Skype, MSN. Traffic was nearly all UDP. Applications used congestion control on top of UDP. Created model based on these and wrote a program to play/record this model using DCCP to compare standard vs send best packet next (not trying to model congestion control in Skype/Ekiga/MSN) Created programs to track time differences between machines and analyse results * In our model we did not replicate UDP congestion control

Packet timing * P is processing (server and client) * Q is queue time * N is network time

SBPN1 algorithm Expiry time is packet creation time plus allowed delay (200 ms in testing). Packet has a priority – 2 is audio, 3 is video Check expiry time on transmit, taking into account half of rtt. Discard if it has expired, or will expire in transit. 200 msecs is an arbitrary number and is within ITU guidelines rtt is round trip time. We use half rtt as this is one way delay. We are assuming symmetric network links but this could be adjusted if needed. DCCP only tracks RTT so would need external source.

Linux kernel implementation Linux 2.6.20 plus patches to meet TFRC performance Control data sent through sendmsg – expiry time, priority and method Kernel stores information in priority queue and DCCP already tracks RTT At time of transmission check for best packet to send and discard any expired packets This implementation was done by work from Lulea being worked on by WAND research and then merged into the kernel via a kernel maintainer. Since then it has been largely driven by the University of Aberdeen

Testing setup Netem is the equivalent for dummynet Can do delay, loss Synchonise time between boxes

Testing with loss - 80 ms RTT, queue length 5 We use loss as congestion control reacts to loss Explain axis Bars are 95% confidence intervals Results worse with SBPN then normal Opposite of what we want Note – audio is higher than video as audio packets are sent at intervals where video packets are sent in chunks. This applies to all results

Timing of packets

Being penalised for not sending Sending rate X = max(min(X_calc, 2 * X_recv), s/t_mbi) (s = packet size, t_mbi = 64) X_recv is updated at least once per RTT If no sending for a period, then X plummets Need to transmit whenever possible sbpn2 sends a packet if expired if it is the only one in queue

Testing with loss - SBPN1 vs SBPN2 - 80 ms RTT, queue length 5 SBPN2 is better than SBPN1 but not better than unmodified DCCP (removed for clarity reasons) vertical is improvement

Difference in on time arrival - 80 ms RTT, queue length 5 explain axis This graph shows for unmodified DCCP that a substantial proportion of packets arrive out of time with sbpn1 virtually no data arrives late so shows that it is taking effect with sbpn2 video packets act as network fillers to keep connection from slowing too much

Unmodified DCCP vs SBPN2 - 80 ms RTT, queue length 5 Explain axis Use with two competing TCP flows on constrained link rather than loss. TCP flows are TCP New Reno as TFRC is based on the performance of tbis Previous test is more resembling mobile link where loss does not indicate congestion always More closely resembles link such as home or at a business

Unmodified DCCP vs SBPN2 - 80 ms RTT, queue length 32 With queue length 32 we see more significant results as larger queue to work with A better improvement in audio with less degradation in audio

Unmodified DCCP vs SBPN2 - 30 ms RTT, queue length 5 Showing with a shorter RTT

Unmodified DCCP vs SBPN2 - 150 ms RTT, queue length 5 Showing with a longer RTT

Unmodified DCCP Faster Restart - 80 ms RTT, queue length 5 This shows that faster restart did not deliver a statistically significant result Run on Linux 2.6.23 so results not directly comparable to previous results

Future work/Conclusion Conclusion – a real improvement in on time audio reception and can be implemented on server only Tradeoff between bandwidth and improvement – penalised for not sending expired data Future – more complex algorithms, increased sending of expired packets to use bandwidth Look at time of bandwidth changing

WAND Network Research Group Department of Computer Science The University of Waikato Private Bag 3105 Hamilton, New Zealand www.crc.net.nz www.wand.net.nz www.waikato.ac.nz