RMCAT architectural overview Michael Welzl 1 RMCAT, 85 th IETF Meeting 8. 11. 2012.

Slides:



Advertisements
Similar presentations
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Advertisements

TCP--Revisited. Background How to effectively share the network? – Goal: Fairness and vague notion of equality Ideal: If N connections, each should get.
ELECTRONICS RESEARCH GROUP DEPARTMENT OF ENGINEERING IETF-68, March 19-23, 2007 Quick-Start for DCCP draft-fairhurst-tsvwg-dccp-qs-00 (Individual Submission)
Coupled congestion control for RTP media draft-welzl-rmcat-coupled-cc-02 Michael Welzl, Safiqul Islam, Stein Gjessing 88th IETF Meeting Vancouver,
Transmission Control Protocol (TCP)
IS333, Ch. 26: TCP Victor Norman Calvin College 1.
Congestion Control An Overview -Jyothi Guntaka. Congestion  What is congestion ?  The aggregate demand for network resources exceeds the available capacity.
Explicit Congestion Notification (ECN) RFC 3168 Justin Yackoski DEGAS Networking Group CISC856 – TCP/IP Thanks to Namratha Hundigopal.
Explicit Congestion Notification (ECN) Qi (Gill) Wang CISC 856 – TCP/IP, Fall 2012 Special thanks to: Dr. Paul Amer Guna Ranjan, Justin.
IETF87 Berlin DCTCP implementation in FreeBSD
EE228A Project, Fall 2000 Yunfei Deng, Kenneth Cheung, Daniil Khidekel Professor Jean Walrand 12/5/2000 Modular TCP.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168) Limited Transmit (RFC 3042)
RAP: An End-to-End Rate-Based Congestion Control Mechanism for Realtime Streams in the Internet Reza Rejai, Mark Handley, Deborah Estrin U of Southern.
Leveraging Multiple Network Interfaces for Improved TCP Throughput Sridhar Machiraju SAHARA Retreat, June 10-12, 2002.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168)
A Real-Time Video Multicast Architecture for Assured Forwarding Services Ashraf Matrawy, Ioannis Lambadaris IEEE TRANSACTIONS ON MULTIMEDIA, AUGUST 2005.
CSE 461: Sliding Windows & ARQ. Next Topic  We begin on the Transport layer  Focus  How do we send information reliably?  Topics  The Transport layer.
TDC375 Winter 03/04 John Kristoff - DePaul University 1 Network Protocols Transmission Control Protocol (TCP)
1 Emulating AQM from End Hosts Presenters: Syed Zaidi Ivor Rodrigues.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #8 Explicit Congestion Notification (RFC 3168) Limited Transmit.
2: Application Layer 1 1DT066 Distributed Information System Chapter 3 Transport Layer.
UCB TCP Jean Walrand U.C. Berkeley
3-1 Transport services and protocols r provide logical communication between app processes running on different hosts r transport protocols run in end.
RMCAT - Shared Bottleneck Detection and Coupled Congestion Control vs. QoS for WebRTC Michael Welzl CAIA, Swinburne University, Melbourne 4. December 2014.
1 Transport Layer Computer Networks. 2 Where are we?
MulTFRC: TFRC with weighted fairness draft-welzl-multfrc-00 Michael Welzl, Dragana Damjanovic 75th IETF Meeting Stockholm, Sweden 29 July 2009.
Potential Applications of Shared Bottleneck Detection (SBD) Michael Welzl NNUW-1 Simula, Oslo
TCP and SCTP RTO Restart draft-hurtig-tcpm-rtorestart-03 Michael Welzl 1 TCPM, 85 th IETF Meeting
Data Link Layer We have now discussed the prevalent shared channel technologies  Ethernet/IEEE  Wireless LANs (802.11) We have now covered chapters.
Mobile Communications: Mobile Transport Layer Mobile Communications Chapter 10: Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping.
TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model CS 218 W 2003 Oct 29, 2003.
Adding Explicit Congestion Notification (ECN) Capability to TCP's SYN/ACK Packets A. Kuzmanovic, A. Mondal, S. Floyd, and K.K. Ramakrishnan draft-ietf-tcpm-ecnsyn-03.txt.
CS332, Ch. 26: TCP Victor Norman Calvin College 1.
B 李奕德.  Abstract  Intro  ECN in DCTCP  TDCTCP  Performance evaluation  conclusion.
Datagram Congestion Control Protocol
U Innsbruck Informatik - 1 CADPC/PTP in a nutshell Michael Welzl
Transport Control Protocol (TCP) Features of TCP, packet loss and retransmission, adaptive retransmission, flow control, three way handshake, congestion.
Uni Innsbruck Informatik - 1 We Don‘t Need No Control Plane Michael Welzl, Kashif Munir Michael Welzl DPS NSG Team
RMCAT Application Interaction draft-zanaty-rmcat-app-interaction-01 Mo Zanaty, Varun Singh, Suhas Nandakumar, Zahed Sarker IETF 90.
Draft-welzl-rmcat-coupled-cc-01 Coupled Congestion Control for RTP Media Michael Welzl, Safiqul Islam, Stein Gjessing Networks and Distributed Systems.
CSC 600 Internetworking with TCP/IP Unit 5: IP, IP Routing, and ICMP (ch. 7, ch. 8, ch. 9, ch. 10) Dr. Cheer-Sun Yang Spring 2001.
Our pre-TAPS work on transport services Michael Welzl TAPS, 92 nd IETF meeting 23. March 2015.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
Multipath TCP Signaling Options or Payload? Costin Raiciu
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Fall 2004FSU CIS 5930 Internet Protocols1 TCP – Data Exchange Reading: Section 24.4.
CS/EE 145A Reliable Transmission over Unreliable Channel II Netlab.caltech.edu/course.
TCP Friendly Rate Control (TFRC): Protocol Specification RFC3448bis draft-ietf-dccp-rfc3448bis-03.txt S. Floyd, M. Handley, J. Padhye, and J. Widmer Testing.
RMCAT Application Interaction draft-zanaty-rmcat-app-interaction-00 Mo Zanaty, Varun Singh, Suhas Nandakumar IETF 89.
Tightly Coupled Congestion Control in WebRTC Michael Welzl Upperside WebRTC conference Paris
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
1 Ad-hoc Transport Layer Protocol (ATCP) EECS 4215.
U Innsbruck Informatik - 1 Specification of a Network Adaptation Layer for the Grid GGF7 presentation Michael Welzl University.
Protocols and layering Network protocols and software Layered protocol suites The OSI 7 layer model Common network design issues and solutions.
Master’s Project Presentation
Internet Networking recitation #9
IETF-86 RTP Media Congestion Avoidance Techniques
UNIT-V Transport Layer protocols for Ad Hoc Wireless Networks
Discussion: Messaging
TCP-in-UDP draft-welzl-irtf-iccrg-tcp-in-udp-00.txt
Ad-hoc Transport Layer Protocol (ATCP)
Introduction of Transport Protocols
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
I like the protocol. What I have to say makes me sad.
Falling Back! … and: a Functional Decomposition of Post-Sockets
Internet Networking recitation #10
Department of Informatics Networks and Distributed Systems (ND) group
LOOPS Generic Information Set draft-welzl-loops-gen-info-00
Presentation transcript:

RMCAT architectural overview Michael Welzl 1 RMCAT, 85 th IETF Meeting

Disclaimer I’ll be talking about “sender” and “receiver” here, just to differentiate roles – Yes we’re dealing with bidirectional traffic, but so is TCP, and talking about “sender” and “receiver” roles never was a problem there 2

A framework Delay-based congestion control has many, many issues – Unlikely that we solve them all straight away Charter: “Determine if extensions to RTP/RTCP are needed for carrying congestion control feedback, using DCCP as a model. If so, provide the requirements for such extensions to the AVTCORE working group for standardization there.” – This sounds like “define fields”, but DCCP had to do much more to become a framework – It may also be overloaded... The framework involves some general design decisions that would affect all cc. mechanisms we standardize – Better get them right from day 1 3

TCP, for example Feedback – Unreliable ACKs; can lead to misinterpretation of backward loss as forward congestion – not a big deal because information in ACKs redundant, and lots of ACKs are sent – to detect backward congestion (and do ACK cc.), sender must know receiver’s ACK ratio Reaction to ECN – MUST be similar to reaction to loss, for compatibility with non- ECN-capable TCP flows Pluggable congestion control – even without standardization, sender-side change, no need to even inform the receiver – possible because of rather “dumb” (better: “generic”) receiver 4

Lessons learned from TCP Feedback – To avoid misinterpreting feedback loss as forward congestion and/or do backwards congestion control: consider making ACKs reliable (see DCCP) Reaction to ECN – We’re designing stuff from scratch here, could make all RMCAT flows ECN-capable => no need to protect non-ECN-capable RMCAT flows (?) – Flows that don’t get ECN marks from the same bottleneck: not likely (?) Pluggable congestion control – Probably desirable – Requires one side to be generic or [Randell]: both sides generic, might be possible to exchange either one of them 5

Devil’s advocate: Consider RRTCC (draft-alvestrand-rtcweb- congestion-03), for example Receiver: – Look at changes in inter-packet delay, apply some maths (Kalman filter) – If the sender should stop increasing (or a feedback timer expires), tell it “your new rate is X” Sender: – calculate TFRC equation; rate is max (result of TFRC equation, X) – In the absence of a feedback, increase rate (but: no feedback for a long time => timeout) Can we agree that: – this receiver behavior is ok for all possible future senders? – this sender behavior is ok for all possible future receivers? Thinking of TCP again: the simpler one side, the more flexible the other becomes 6

Sender- vs. Receiver-based Perhaps we should decide now which side to make simple? Many sides to sender- vs. receiver-based CC... Key question: always minimize feedback or not? -might make the control unnecessarily fragile +less traffic is less traffic... also: simpler than feedback-CC, and e.g. smaller chance of collision on wireless Many more pro’s and con’s... e.g., “interactions with applications”: importance of packets in send buffer could play a role for congestion control decision – affects signalling in case of receivers-side cc. 7

Coupled congestion control Only makes sense for flows that share a bottleneck – Obvious for some flows in case of WebRTC (same 5-tuple = same bottleneck) – Less so in the general case, but there are working methods – Coordinate streams between multiple hosts: need to detect shared bottlenecks on both sides Signalling needed 8 H1 H3 H2

“Flow State Exchange” (FSE) The result of searching for minimum-necessary- standardization: only define what goes in / out, how data are maintained – Could reside in a single app (e.g. browser) and/or in the OS CM Stream 1 Stream 2 CM Stream 1 Stream 2 FSE Stream 1 Stream 2 FSE Traditional CMFSE-based CM Another possible implementation of flow coordination

Thank you! Questions?