Re: [avtext] Spencer Dawkins' Yes on draft-ietf-avtext-rtp-stream-pause-08: (with COMMENT)
Spencer Dawkins at IETF <spencerdawkins.ietf@gmail.com> Tue, 01 September 2015 22:38 UTC
Return-Path: <spencerdawkins.ietf@gmail.com>
X-Original-To: avtext@ietfa.amsl.com
Delivered-To: avtext@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CBD121A6F82; Tue, 1 Sep 2015 15:38:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id f65vD4ZjGD8n; Tue, 1 Sep 2015 15:38:31 -0700 (PDT)
Received: from mail-vk0-x22d.google.com (mail-vk0-x22d.google.com [IPv6:2607:f8b0:400c:c05::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AAE031A8A25; Tue, 1 Sep 2015 15:38:30 -0700 (PDT)
Received: by vkaw128 with SMTP id w128so65735537vka.2; Tue, 01 Sep 2015 15:38:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=8Id8jj09W+IZCjWMbrXeVUbKTNE97IXY/w1eJ9pFNjc=; b=ErY7W0RGA9JKj8VdoTG1v29ijP1tm7UQl18aghyuWc6eZsVGzH/7iNp0uGXIRjTJ01 dU20YiaGpNPXrb+mf5QEhCtig0JAa8Cmo9kF9J6Qqd5/KzL2RvVwBxRkrUOCTGEK7Ilh ARyIqw7Py8z8CiD4qv4sd2bG8+rfTASkytJ7oWWD94YISM0TwOwsqqEva6izRF6Pz+9G Bt8gTwxxO6l+ei9SFOlZ4Kx5efAS7pXbiunnQSjlc2RvlzywG+FKQH6VuEfEtoChD5PW UqxY429xBqUgjPpVUK3AaPjy2wcpQbacEaFgQHNiWbua2hunx0RZJHH0i4nEOK1tC9cQ z6Pg==
MIME-Version: 1.0
X-Received: by 10.52.114.196 with SMTP id ji4mr33497972vdb.24.1441147109835; Tue, 01 Sep 2015 15:38:29 -0700 (PDT)
Received: by 10.31.63.1 with HTTP; Tue, 1 Sep 2015 15:38:29 -0700 (PDT)
In-Reply-To: <BBE9739C2C302046BD34B42713A1E2A22E70B1ED@ESESSMB105.ericsson.se>
References: <20150819031636.31652.86423.idtracker@ietfa.amsl.com> <BBE9739C2C302046BD34B42713A1E2A22E704A52@ESESSMB105.ericsson.se> <CAKKJt-cuFMw4oBWT7L+DE9ZUMdwu375W5BTqar3XSRV+1ZPVzw@mail.gmail.com> <BBE9739C2C302046BD34B42713A1E2A22E70B1ED@ESESSMB105.ericsson.se>
Date: Tue, 01 Sep 2015 17:38:29 -0500
Message-ID: <CAKKJt-cDgyS-9tt+VTWpCR6RyF=GBNYoahWKjDBXx0fjFgF4zw@mail.gmail.com>
From: Spencer Dawkins at IETF <spencerdawkins.ietf@gmail.com>
To: Bo Burman <bo.burman@ericsson.com>
Content-Type: multipart/alternative; boundary="bcaec548a5038d0d50051eb735d6"
Archived-At: <http://mailarchive.ietf.org/arch/msg/avtext/Adl6LltAo1a_ptJA_Z-0-SKaprM>
Cc: "jonathan@vidyo.com" <jonathan@vidyo.com>, "avtext@ietf.org" <avtext@ietf.org>, "avtext-chairs@ietf.org" <avtext-chairs@ietf.org>, "draft-ietf-avtext-rtp-stream-pause@ietf.org" <draft-ietf-avtext-rtp-stream-pause@ietf.org>, The IESG <iesg@ietf.org>, "draft-ietf-avtext-rtp-stream-pause.ad@ietf.org" <draft-ietf-avtext-rtp-stream-pause.ad@ietf.org>, "draft-ietf-avtext-rtp-stream-pause.shepherd@ietf.org" <draft-ietf-avtext-rtp-stream-pause.shepherd@ietf.org>
Subject: Re: [avtext] Spencer Dawkins' Yes on draft-ietf-avtext-rtp-stream-pause-08: (with COMMENT)
X-BeenThere: avtext@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Audio/Video Transport Extensions working group discussion list <avtext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/avtext>, <mailto:avtext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/avtext/>
List-Post: <mailto:avtext@ietf.org>
List-Help: <mailto:avtext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avtext>, <mailto:avtext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Sep 2015 22:38:36 -0000
Hi, Bo, This all seems fine to me. Thank you for catching me up! Spencer On Tue, Sep 1, 2015 at 4:39 AM, Bo Burman <bo.burman@ericsson.com> wrote: > Hi Spencer, > > > > I think your proposals are good and will make changes accordingly. See > more inline. > > > > *From:* Spencer Dawkins at IETF [mailto:spencerdawkins.ietf@gmail.com] > *Sent:* den 27 augusti 2015 14:37 > *To:* Bo Burman > *Cc:* The IESG; draft-ietf-avtext-rtp-stream-pause@ietf.org; > draft-ietf-avtext-rtp-stream-pause.ad@ietf.org; jonathan@vidyo.com; > draft-ietf-avtext-rtp-stream-pause.shepherd@ietf.org; > avtext-chairs@ietf.org; avtext@ietf.org > *Subject:* Re: Spencer Dawkins' Yes on > draft-ietf-avtext-rtp-stream-pause-08: (with COMMENT) > > > > Hi, Bo, > > > > On Thu, Aug 27, 2015 at 6:28 AM, Bo Burman <bo.burman@ericsson.com> wrote: > > Thank you for good and constructive comments. Please find responses to > your questions inline below. > Cheers, > Bo > > > > -----Original Message----- > > From: Spencer Dawkins [mailto:spencerdawkins.ietf@gmail.com] > > Sent: den 19 augusti 2015 05:17 > > To: The IESG > > Cc: draft-ietf-avtext-rtp-stream-pause@ietf.org; > draft-ietf-avtext-rtp-stream-pause.ad@ietf.org; jonathan@vidyo.com; > > draft-ietf-avtext-rtp-stream-pause.shepherd@ietf.org; > avtext-chairs@ietf.org; avtext@ietf.org > > Subject: Spencer Dawkins' Yes on draft-ietf-avtext-rtp-stream-pause-08: > (with COMMENT) > > > > Spencer Dawkins has entered the following ballot position for > > draft-ietf-avtext-rtp-stream-pause-08: Yes > > > > When responding, please keep the subject line intact and reply to all > email addresses included in the To and CC lines. > > (Feel free to cut this introductory paragraph, however.) > > > > > > Please refer to > https://www.ietf.org/iesg/statement/discuss-criteria.html > > for more information about IESG DISCUSS and COMMENT positions. > > > > > > The document, along with other ballot positions, can be found here: > > https://datatracker.ietf.org/doc/draft-ietf-avtext-rtp-stream-pause/ > > > > > > > > ---------------------------------------------------------------------- > > COMMENT: > > ---------------------------------------------------------------------- > > > > This draft was really easy for me to read (with some background in > RTP/RTCP, but I'm no expert on the topic). Thank you > > for the work on it - the results show. > > > > I have some questions, but nothing is a show-stopper. > > > > In this text: > > > > 3.3. RTP Mixer to Media Sender in Point-to-Multipoint > > > > In this use case there are several receivers of a stream and special > > care must be taken as not to pause a stream that is still wanted by > > some receivers. > > > > I'm assuming that the Mixer is taking special care, but this is passive > enough that I'm filling in blanks. If you like passive > > voice, perhaps something like > > > > In this use case there are several receivers of a stream and special > > care must be taken by the Mixer so as not to pause a stream that is > > ^^^^^^^^^^^^^^^ > > still wanted by some receivers. > > > > would be easier to parse. > > > > If you can do active voice, perhaps > > > > In this use case there are several receivers of a stream and the > > Mixer must take special care so as not to pause a stream that is still > > > > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > wanted by some receivers. > > [BoB] Thanks, your assumption is correct, and I think this active voice is > easier to read. > > > > Great. > > > > > > > In this text: > > > > 8. Message Details > > > > Any references to PAUSE, PAUSED, RESUME and REFUSED in this section > > SHALL be taken to apply to the extent possible also when TMMBR/TMMBN > > are used (Section 5.6) for this functionality. TMMBR/TMMBN MAY be > > ^^^ > > used instead of the messages defined in this specification when the > > effective topology is point-to-point. If either sender or receiver > > learns that the topology is not point-to-point, TMMBR/TMMBN MUST NOT > > be used for pause/resume functionality. If the messages defined in > > this specification are supported in addition to TMMBR/TMMBN by all > > involved parties, pause/resume signaling MUST use messages from this > > specification. If the topology is not point-to-point and the > > messages defined in this specification are not supported, pause/ > > resume functionality with TMMBR/TMMBN MUST NOT be used. > > > > All of this makes sense to me, except that I'm not understanding why > TMMBR/TMMBN is a MAY. There's a lot of text that > > says you really need to use the messages from this specification in this > case, and in that case, and ... but here, you MAY > > do something else. > > > > I understand that TMMBR/TMMBN works in a point-to-point topology, but is > there a reason to prefer TMMBR/TMMBN > > in that topology? If so, it would probably be good to explain why. > > > > And as I read futher, I see this, in section 9: > > > > Note: When TMMBR 0 / TMMBN 0 are used to implement pause and > > resume functionality (with the restrictions described in this > > specification), signaling rtcp-fb attribute with ccm tmmbr > > parameter is sufficient and no further signaling is necessary. > > There is however no guarantee that TMMBR/TMMBN implementations > > ^^^^^^^^^^^^ > > pre-dating this specification work exactly as described here when > > used with a bitrate value of 0. > > > > and that really makes me wonder why this specification is also > describing TMMBR/TMMBN. I'm sure there's a good > > reason, but can you understand my confusion? > > > > Finally, I see this, in section 9.1, > > > > If both "pause" and "tmmbr" are present in the offer, both MAY be > > included also in the answer, in which case TMMBR/TMMBN MUST NOT be > > used for pause/resume purposes (with a bitrate value of 0), to avoid > > signaling ambiguity. > > > > and in section 9.2, > > > > If both "pause" and "tmmbr" are present in the SDP, TMMBR/TMMBN MUST > > NOT be used for pause/resume purposes (with a bitrate value of 0), to > > avoid signaling ambiguity. > > > > I'm now wondering if the description of TMMBR/TMMBN in this > specification just for interworking with older > > implementations that don't support PAUSE/RESUME but figured out how to > get a similar effect with TMMBR/TMMBN? > > > > I'm guessing, of course :-) > > [BoB] Your guess is correct. This is hinted already with the last two > sentences in the Introduction section "The Temporary Maximum Media Bitrate > Request (TMMBR) message of CCM is used by video conferencing systems for > flow control. It is desirable to be able to use that method with a bitrate > value of zero for pause, whenever possible". Do you think this needs to be > more explicitly stated, maybe in section 5.6 on TMMBR/TMMBN considerations? > Say, something similar to what you said above: "This use is expected to be > mainly for interworking with implementations that don't support > PAUSE/RESUME, but make use of TMMBR/TMMBN to achieve a similar effect". Do > you think something needs to be said in section 8 too? > > > > I do think that short explanations about motivation are helpful. > > *[BoB] OK. I’ll add a sentence on this in section 5.6 and in section 8.* > > > > > > > In this text: > > > > 8.5. Transmission Rules > > > > o PAUSE SHOULD use Early or Immediate timing, except for > > retransmissions that SHOULD use Regular timing. > > > > ^ I understand this one. > > > > o The first transmission of PAUSED for each (non-wrapped) PauseID > > SHOULD be sent with Immediate or Early timing, while subsequent > > PAUSED for that PauseID SHOULD use Regular timing. Unsolicited > > PAUSED (sent when entering Local Paused State (Section 6.4)) > > SHOULD always use Immediate or Early timing, until PAUSED for that > > PauseID is considered delivered at least once to all receivers of > > the paused RTP stream, after which it SHOULD use Regular timing. > > > > ^ I'm wondering why these are SHOULDs. Are they MUSTs except that some > implementations don't do it, or > > recommendations but nothing breaks if you don't do them, or something > else? > [BoB] It is recommendations, meaning that if you don't follow them, > nothing will really break, but you'll get worse performance in one way or > the other. The SHOULDs for Early or Immediate is to provide good timeliness > and responsiveness of the application making use of the messages, while the > SHOULDs for Regular are to avoid excessive bandwidth consumption. > > > > > o RESUME SHOULD always use Immediate or Early timing. > > > > ^ I wonder why this is SHOULD. Is there any guidance you can provide > about why RESUME would use Regular timing? > [BoB] The only case I can come to think of is when other RTCP messages > used by the application layer (not PAUSE/RESUME) are somehow considered > more important than resuming media streams in that specific application > context. Again, nothing would really break with regular timing, but > performance would certainly suffer badly. Maybe such application-level > consideration is sufficiently "extreme" that it is motivated changing to a > MUST, forcing such situations to break compliance? > > > > > o The first transmission of REFUSED for each (non-wrapped) PauseID > > SHOULD be sent with Immediate or Early timing, while subsequent > > REFUSED for that PauseID SHOULD use Regular timing. > > > > ^ I am, of course, wondering about the corresponding SHOULDs for REFUSED. > [BoB] Timely transmission of REFUSED can stop unnecessary repetitions of > PAUSE or RESUME, which I believe motivates recommending Immediate or Early > for the first transmission to save some RTCP bandwidth. That is however not > considered critical enough to motivate recommending repetitions of the same > indication to be sent with other than Regular timing. Nothing would break > if repetitions are sent with Early or Immediate timing, but it would > potentially waste some transmission opportunities for other RTCP (FB) > messages. Do you think it motivated to add more text on such considerations? > > > > I'd have a preference for text that explains the strategy, rather than > using RFC 2119 language when this isn't actually about interworking. > > *[BoB] OK. I’ll demote the RFC 2119 language in that section to prose text > and add brief descriptive motivations.* > > *I also think that a clause on RTCP timing in section 8.4 (REFUSED) is > both misplaced and redundant, and propose to remove it:* > > If REFUSED containing a certain PauseID was already sent and yet more > > PAUSE or RESUME messages are received that require additional REFUSED > > with that specific PauseID to be scheduled, further REFUSED messages > > with that PauseID SHOULD be sent in regular RTCP reports. An > > exception to the previous rule is when the stream was paused and > > resumed so many times that the PauseID number space has wrapped since > > REFUSED was last sent with that PauseID. > > *I think that clause should be fully covered by the last bullet in 8.5 > (text copied from -08; will be changed):* > > o The first transmission of REFUSED for each (non-wrapped) PauseID > > SHOULD be sent with Immediate or Early timing, while subsequent > > REFUSED for that PauseID SHOULD use Regular timing. > > > > > > > In this text: > > > > 9. Signaling > > > > When signaling a config value other than 1, an implementation MUST > > ignore non-supported messages on reception, and MAY omit sending non- > > supported messages. > > > > is this saying that an implementation might send non-supported messages? > > I'm confused here. > [BoB] That should have been "... MAY omit sending messages not supported > by the remote peer". I realize that further down it is said "... SHOULD NOT > be used towards receivers that did not declare capability to receive those > messages", so I guess that MAY should be changed to a SHOULD to be > consistent. In any case, not having MUSTs here allows a mix of different > capabilities among receivers in a multi-receiver case without letting the > least capable receiver set the level of P/R functionality for all the > others. With that in mind, do you think "SHOULD omit" is a too strong > wording? > > > > Making it clear who isn't supporting the non-supported messages seems > helpful. > > *[BoB] Definitely :)* > > > > I'd be OK with either MAY or SHOULD in both places (you guys are the > experts), but it sounds like they should match. > > *[BoB] OK. I suggest to go for SHOULD in both places, and also add a > sentence on when it can be motivated to violate that (multiple receivers > with different config-capabilities, to avoid that the least capable > receiver sets the functionality delivered to others).* > > *I also received an offline comment suggesting to clarify that no partial > message support is possible when using TMMBR/TMMBN, which should be obvious > (since there is no such support in RFC 5104), but I anyway think that is a > reasonable clarification to add.* > > > > Thanks! > > > > Spencer >
- [avtext] Spencer Dawkins' Yes on draft-ietf-avtex… Spencer Dawkins
- Re: [avtext] Spencer Dawkins' Yes on draft-ietf-a… Bo Burman
- Re: [avtext] Spencer Dawkins' Yes on draft-ietf-a… Spencer Dawkins at IETF
- Re: [avtext] Spencer Dawkins' Yes on draft-ietf-a… Bo Burman
- Re: [avtext] Spencer Dawkins' Yes on draft-ietf-a… Spencer Dawkins at IETF