Re: [AVT] draft-ietf-avt-ports-for-ucast-mcast-rtp-04: Review Comments [csp]

"Ali C. Begen (abegen)" <abegen@cisco.com> Thu, 02 December 2010 01:55 UTC

Return-Path: <abegen@cisco.com>
X-Original-To: avt@core3.amsl.com
Delivered-To: avt@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 4F6E93A6826 for <avt@core3.amsl.com>; Wed, 1 Dec 2010 17:55:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.403
X-Spam-Level:
X-Spam-Status: No, score=-10.403 tagged_above=-999 required=5 tests=[AWL=0.196, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KVmju9PztPNF for <avt@core3.amsl.com>; Wed, 1 Dec 2010 17:55:28 -0800 (PST)
Received: from sj-iport-3.cisco.com (sj-iport-3.cisco.com [171.71.176.72]) by core3.amsl.com (Postfix) with ESMTP id 3BF603A6812 for <avt@ietf.org>; Wed, 1 Dec 2010 17:55:28 -0800 (PST)
Authentication-Results: sj-iport-3.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAAeL9kyrR7H+/2dsb2JhbACjIXGnf406jUqFRwSEXoke
X-IronPort-AV: E=Sophos;i="4.59,285,1288569600"; d="scan'208";a="250000001"
Received: from sj-core-2.cisco.com ([171.71.177.254]) by sj-iport-3.cisco.com with ESMTP; 02 Dec 2010 01:56:42 +0000
Received: from xbh-sjc-231.amer.cisco.com (xbh-sjc-231.cisco.com [128.107.191.100]) by sj-core-2.cisco.com (8.13.8/8.14.3) with ESMTP id oB21ugnd024677; Thu, 2 Dec 2010 01:56:42 GMT
Received: from xmb-sjc-215.amer.cisco.com ([171.70.151.169]) by xbh-sjc-231.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.4675); Wed, 1 Dec 2010 17:56:42 -0800
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
Date: Wed, 01 Dec 2010 17:56:39 -0800
Message-ID: <04CAD96D4C5A3D48B1919248A8FE0D540DC93B87@xmb-sjc-215.amer.cisco.com>
In-Reply-To: <396D3FC7-9DA5-416E-9883-7FABD7234652@csperkins.org>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [AVT] draft-ietf-avt-ports-for-ucast-mcast-rtp-04: Review Comments [csp]
Thread-Index: AcuRf95C4Zt96BgbSCyGr/fGmL9J2AAKmwlQ
References: <4CF3BAB3.2000501@ericsson.com> <04CAD96D4C5A3D48B1919248A8FE0D540DC93041@xmb-sjc-215.amer.cisco.com> <EDC0A1AE77C57744B664A310A0B23AE21E36365E@FRMRSSXCHMBSC3.dc-m.alcatel-lucent.com> <396D3FC7-9DA5-416E-9883-7FABD7234652@csperkins.org>
From: "Ali C. Begen (abegen)" <abegen@cisco.com>
To: Colin Perkins <csp@csperkins.org>, "DRAGE, Keith (Keith)" <keith.drage@alcatel-lucent.com>
X-OriginalArrivalTime: 02 Dec 2010 01:56:42.0801 (UTC) FILETIME=[2ACEE210:01CB91C4]
Cc: Magnus Westerlund <magnus.westerlund@ericsson.com>, IETF AVT WG <avt@ietf.org>
Subject: Re: [AVT] draft-ietf-avt-ports-for-ucast-mcast-rtp-04: Review Comments [csp]
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Audio/Video Transport Working Group <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/avt>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 02 Dec 2010 01:55:29 -0000

Hi Colin,

> - Introduction, 1st paragraph: suggest clarifying that the ports "are a shared resource that is defined declaratively"?

The first paragraph is concerned about the multicast applications and it does not mention "shared" in the text. Could you clarify your comment?
 
> - Section 3.2, 1st paragraph, begins "We illustrate the second step with an example", but it's not clear what is "the second
> step" being referred to here.

Reworded.
 
> - Section 3.2 is written as an example, but uses RFC 2119 language, and contains many normative requirements. I would
> suggest that Section 3 be split into two Sections: one giving the motivating example, and another giving normative
> requirements for use of the port mapping extensions to RTCP.

Good idea, done.
 
> - Section 3.2, 1st bullet point on page 8 ("Port P3 denotes..."): the draft should clarify that the client may send any type of
> RTCP packet to the feedback target, any not just RTCP feedback messages, receiver, and extended reports.

Fixed.
 
> - Section 3.2, 3rd bullet on page 8, sub-point 1: it's not clear what is meant by "When the retransmission server sends unicast
> packets for a long period of time, this can exceed that timeout". Would it be clearer to say "when the gap between
> retransmission requests (or other traffic sent from client to server) is long, this can exceed that timeout"?

Good suggestion.
 
> - Section 3.2, 4th bullet on page 8: the discussion of how the token may remain valid for multiple sessions is unclear. It may
> be clearer to say that the token is valid for that port on the server until its expiration time, irrespective of what that port is

Yes, reworded as requested.

> used for. Following on from this, would it be appropriate to add a warning that the server port SHOULD NOT be reused for
> other RTP sessions until the expiration time of the tokens issued?

Not sure why we would need this.

> - Section 3.2, step 4 on page 9: the draft needs to give a normative list of which RTCP packet types require an associated
> token.

Reworded as: The client needs to provide the Token to the server using a new RTCP message, called Token Verification Request, whenever the client sends an RTCP feedback message for triggering or controlling a unicast session (See Section 5.3).

> - Section 3.2, step 1-5 on pages 9 and 10: these need to be moved out of the example, into a separate normative section.

Done.
 
> - Section 5: The RTCP extensions defined here are exchanged in order to setup a unicast session, rather than to provide
> feedback on an existing session. Accordingly, it's not clear that they should be sent as RTCP Feedback messages. Would it be
> appropriate to define new RTCP packet types to convey this information, rather than trying to shoehorn this into transport
> layer feedback packets (this would also avoid the problem of how to set the SSRCs)?

We did not do this for RAMS-R, either. I am not very keen on changing this at this stage. Does anybody feel strong about this?
 
> - Section 5: Does the nonce have to be 64 bits? If a 56 bit nonce were sufficient, the feedback packets could be packed much
> more efficiently.

Nope, it does not. Changed it to 56.
 
> - Section 5.3 should give a normative list of which RTCP packet types require the token verification messages. Does the RTCP
> BYE packet need this?

I don’t think BYE messages need a Token. NACKs, RAMS-R and RAMS-T require Tokens.

There could be some future packet formats or message types that might require a Token. How could we word this better? Any ideas?
 
> - Section 5.4: it would be useful to include the nonce from the token that failed in the verification failure message, so the
> client can match up the failure to the token used.

OK.
 
> - Section 5 should discuss timings and failure modes. RTCP is not a timely or reliable protocol. What is the expected
> behaviour if these messages are lost and/or delayed? (e.g., that's the retransmission behaviour).

Just before 5.1, added:

Note that RTCP is not a timely or reliable protocol. The RTCP packets might get lost or re-ordered in the network. When a client sends a Port Mapping Request or Token Verification Request message but it does not receive a response back from the server (either a Port Mapping Response or Token Verification Failure message), it MAY resend its request when it is eligible to do so based on the timer rules defined in RFC 4585.

> - Section 6: is this section normative, or an example of how the server can generate a token? There seems little requirement
> for it to be normative.

Magnus made a similar comment. We will keep as an example.
 
> - Section 6: why base-64 encode the output? RTCP is a binary protocol.

:) Good point. Fixed. 

> - Section 7: it would seem appropriate to always send the verification failure RTCP message, even if another error response
> has been delivered.

Done.

Thanks much.
-acbegen