Subject: [AVTCORE] DART dscp-rtp draft: Proposed RTCP text

From: "Black, David" <[email-masked]>
Date: Thu, 28 Aug 2014 15:45:10 -0400

Here's the proposed new section 5.4, with the RTCP multi-stream reporting
optimizations text moved into that new section from its current location
at the end of 5.3, plus the rewritten Section 6 guideline bullet:

5.4.  DiffServ and RTCP

   The RTP Control Protocol (RTCP) [RFC3550] is used with RTP to monitor
   quality of service and convey information about RTP session
   participants.  A sender of RTCP packets that also sends RTP packets
   (i.e., originates an RTP stream) should use the same DSCP marking for
   both types of packets.  If an RTCP sender doesn't send any RTP
   packets, it should mark its RTCP packets with the DSCP that it would
   use if it did send RTP packets.  If the RTCP sender uses or would use
   multiple DSCPs that differ only in drop precedence for RTP, then it
   should use the DSCP with the least likelihood of drop for RTCP to
   increase the likelihood of RTCP packet delivery.

   This guidance may result in different DSCP markings for RTP streams
   and RTCP receiver reports about those RTP streams.  The resulting
   variation in network QoS treatment by traffic direction could result
   in unrepresentative round trip time (RTT) estimates that don't
   correspond to consistent network QoS treatment in both directions.
   RTCP receiver reports may be relatively infrequent (e.g., may be sent
   only once per video frame rendered) and hence the resulting RTT
   estimates are of limited utility for congestion control (although
   they have other important uses, see [RFC3550]).  For this reason, it
   is not important that RTCP receiver reports receive the same network
   QoS treatment as the RTP stream or streams being reported on.

   RTCP multi-stream reporting optimizations for an RTP session
   [I-D.ietf-avtcore-rtp-multi-stream-optimisation] assume that the RTP
   streams involved experience the same network behavior, including
   packet loss.  This mechanism is highly inappropriate when the RTP
   streams involved use different DSCPs, even if the corresponding PHBs
   differ solely in drop precedence.

6.  Guidelines

[... snip ...]

   o  Should use a single DSCP for RTCP packets, which should be a DSCP
      used for RTP packets that are or would be sent by the same sender,
      see Section 5.4.

Thanks,
--David
----------------------------------------------------
David L. Black, Distinguished Engineer
EMC Corporation, 176 South St., Hopkinton, MA  01748
+1 (508) 293-7953             FAX: +1 (508) 293-7786
[email-masked]        Mobile: +1 (978) 394-7754
----------------------------------------------------

---

From: "Black, David" <[email-masked]>
Date: Thu, 28 Aug 2014 16:36:25 -0400

Minor edit to proposed text below:

OLD
    If an RTCP sender doesn't send any RTP
    packets, it should mark its RTCP packets with the DSCP that it would
    use if it did send RTP packets.
NEW
   If an RTCP sender doesn't send any RTP
   packets, it should mark its RTCP packets with the DSCP that it would
   use if it did send RTP packets with media similar to the RTP traffic
   that it receives.

Thanks,
--David

> -----Original Message-----
> From: Black, David
> Sent: Thursday, August 28, 2014 3:45 PM
> To: [email-masked]; [email-masked] WG ([email-masked])
> Cc: Black, David; Colin Perkins ([email-masked]); [email-masked]
> Subject: DART dscp-rtp draft: Proposed RTCP text
>

---

From: Ben Campbell <[email-masked]>
Date: Thu, 28 Aug 2014 15:44:44 -0500

That works for me, thanks!

---

From: Colin Perkins <[email-masked]>
Date: Thu, 28 Aug 2014 21:59:03 +0100

>   increase the likelihood of RTCP packet delivery.

This looks okay (the correction in your next message is good also). 

You might also add something along the lines of “If the SDP bundle extension [cite] is used to negotiate sending multiple types of media in a single RTP session, then the receivers will send separate RTCP reports for each type of media, using a separate SSRC for each media type; those RTCP reports need to be marked with the DSCP corresponding to the type of media handled by the reporting SSRC.” 

>   correspond to consistent network QoS treatment in both directions.

I don’t think this is a problem. The media doesn’t get consistent network QoS treatment in both directions, and the RTCP is trying to sample the RTT seen by the media, so this is fine.

>   differ solely in drop precedence.

This could maybe say “received RTP streams”, since it’s okay to use the rtp-multi-stream-optimisation if you send with different DSCPs (the optimisation is optimising how you send reports about what you receive).

>      used for RTP packets that are or would be sent by the same sender,

Perhaps “Each SSRC should use a single DSCP for RTCP … used by RTP packets that are or would be sent by that SSRC…”? Just “sender" could be ambiguous, since an endpoint could be a sender for several streams, each of which has a separate SSRC and could use a different DSCP.

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

---

From: "Black, David" <[email-masked]>
Date: Fri, 29 Aug 2014 11:17:19 -0400

Colin,

Many thanks, once again!

I'm about to submit a -05 version of the DART draft that reflects
this feedback, and also says that we're using SSRC as both the
identifier of an RTP stream and to designate the sender of that
RTP stream  (the new terminology draft uses Media Packetizer
as the term for the sender of an RTP stream).

Thanks,
--David

> From: Dart [mailto:[email-masked]] On Behalf Of Colin Perkins
> Sent: Thursday, August 28, 2014 4:59 PM
> To: Black, David
> Cc: [email-masked]; [email-masked]; [email-masked] WG ([email-masked])
> Subject: Re: [Dart] DART dscp-rtp draft: Proposed RTCP text
> 
> You might also add something along the lines of "If the SDP bundle extension
> [cite] is used to negotiate sending multiple types of media in a single RTP
> session, then the receivers will send separate RTCP reports for each type of
> media, using a separate SSRC for each media type; those RTCP reports need to
> be marked with the DSCP corresponding to the type of media handled by the
> reporting SSRC."
> 
> I don't think this is a problem. The media doesn't get consistent network QoS
> treatment in both directions, and the RTCP is trying to sample the RTT seen by
> the media, so this is fine.
> 
> This could maybe say "received RTP streams", since it's okay to use the rtp-
> multi-stream-optimisation if you send with different DSCPs (the optimisation
> is optimising how you send reports about what you receive).
> 
> > 6.  Guidelines
> >
> > [... snip ...]
> >
> Perhaps "Each SSRC should use a single DSCP for RTCP ... used by RTP packets
> that are or would be sent by that SSRC..."? Just "sender" could be ambiguous,
> since an endpoint could be a sender for several streams, each of which has a
> separate SSRC and could use a different DSCP.
> 
> --
> Colin Perkins
> http://csperkins.org/
> 
> 
> 
> _______________________________________________
> Dart mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/dart