Subject: [AVTCORE] draft-ietf-avtcore-rtp-circuit-breakers-02

From: Colin Perkins <[email-masked]>
Date: Sun, 10 Mar 2013 16:16:07 -0400

We submitted an update to the RTP circuit breakers draft just before the cut-off, and I'll be presenting and discussing it in AVTCORE on Tuesday. The significant changes in the -02 version are:

- Disallow rate reduction by a factor of 10 as a response when the media timeout circuit breaker is triggered. A media timeout (several reporting intervals when media is being set but not received) signals a significant path failure, rather than a transient problem, and so should stop the RTP media flow, not just reduce it's rate.

- Clarify RTCP Timeout circuit breaker, and note that the fixed minimum RTCP reporting intervals SHOULD be used when calculating the RTCP timeout based on the rationale in Section 6.2 of RFC 3550.

- Clarify that the congestion circuit breaker uses the reduced minimum interval, rather than the fixed minimum interval, if it's in use in the RTP session. The reduced minimum interval scales with the data rate and so matches the dynamics of the congestion circuit breaker.

- Break the description of what it means to cease transmission into a
separate section, and expand. Clarify that we look at the destination 3-tuple (transport, port, IP addr) rather than the full 5-tuple when
deciding when to restart (to prevent someone thinking it's okay
to simply change the source port, and try again)

- Clarify that reduced-size RTCP packets containing RTCP SR or RR packets sent under the RTP/AVPF rules MUST be counted towards the circuit breaker conditions. Reduced size RTCP packets that don't contain SR or RR packets are not counted towards the circuit breaker.  These rules are intended to allow the use of low-overhead early RTP/AVPF feedback for generic NACK messages without triggering the RTP circuit breaker.  This is expected to make such feedback suitable for RTP congestion control algorithms that need to quickly report loss events in between regular RTCP reports.  The reaction to reduced-size RTCP SR/RR packets is to allow such algorithms to send feedback that can trigger the circuit breaker, when desired.

- Expand discussion of how and when ECN-CE marks are counted towards the
circuit breaker. RFC 6679 provides RTCP extensions to feed back ECN-CE marks in RTCP XR, and these are counted towards the circuit breaker. ECN-CE marks reported in a reduced size RTCP packet along with an SR or RR block are processed; if the SR or RR block is not present, they're ignored.

In addition, there are a number of minor changes:

- Update title and abstract

- Explain why multicast circuit breakers are out of scope

- Explain why the numbers of SSRCs might be greater than two in a unicast RTP session

- Note that RTCP is an essential part of the RTP protocol, and that the circuit breaker cannot be used if RTCP is not implemented. Clarify that implementations that don't have a circuit breaker (or equivalent) SHOULD NOT be used on networks that might be subject to congestion.

- Clarify that the RTCP RR jitter estimate is only valid where each RTP packet comprises one complete frame of media (i.e., the estimate is not valid if a frame gets split across multiple RTP packets with the same timestamp).

- Expand discussion of competition with TCP flows

- Clarify operation of congestion circuit breaker if the fraction lost is
zero

- Clarify that the circuit breaker at a sender only looks at RTCP SR/RR packets that contain reports for the SSRC values it is using to send

-- 
Colin Perkins
http://csperkins.org/