Re: [AVTCORE] Errata 4192 RFC 3550

Stephen Casner <casner@acm.org> Mon, 08 December 2014 22:36 UTC

Return-Path: <casner@acm.org>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 54C4F1A0070 for <avt@ietfa.amsl.com>; Mon, 8 Dec 2014 14:36:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.935
X-Spam-Level:
X-Spam-Status: No, score=-1.935 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_SOFTFAIL=0.665] autolearn=no
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 wLwWBSy862YI for <avt@ietfa.amsl.com>; Mon, 8 Dec 2014 14:36:57 -0800 (PST)
Received: from c.mail.sonic.net (c.mail.sonic.net [64.142.111.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 10B341A006F for <avt@ietf.org>; Mon, 8 Dec 2014 14:36:57 -0800 (PST)
Received: from auge (75-25-120-141.lightspeed.snvaca.sbcglobal.net [75.25.120.141]) (authenticated bits=0) by c.mail.sonic.net (8.14.9/8.14.9) with ESMTP id sB8MassD002520 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 8 Dec 2014 14:36:54 -0800
Date: Mon, 08 Dec 2014 14:36:53 -0800
From: Stephen Casner <casner@acm.org>
To: Julius Friedman <juliusfriedman@gmail.com>
In-Reply-To: <CACFvNHWz0m0RxHznS8r3cfEJJurV7KVLLUuxXN-JyAYH4FKtHg@mail.gmail.com>
Message-ID: <alpine.OSX.2.19.9991.1412081336050.35977@auge.attlocal.net>
References: <CACFvNHUHH1rv2OmcFGvRA+AnotmACrOHbqb8VdAJpY4w8ORiig@mail.gmail.com> <CACFvNHWSJsJ2mgALRG9Vw5bvMa84srxuEC8aYqUk4tPK=DJ1sw@mail.gmail.com> <CACFvNHWz0m0RxHznS8r3cfEJJurV7KVLLUuxXN-JyAYH4FKtHg@mail.gmail.com>
User-Agent: Alpine 2.19.9991 (OSX 64 2014-05-31)
MIME-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
X-Sonic-CAuth: UmFuZG9tSVaNXKUoQTCQHtnNkxdvl8pMDqsu3l0fj17tst6sotB3hCKig9FBxcCO+u2Hp5+MKsEs1S822lJ5bxT/HGo6kyxW
X-Sonic-ID: C;WhaktSp/5BG02lZegs/dsg== M;bhvRtSp/5BG02lZegs/dsg==
X-Sonic-Spam-Details: 0.0/5.0 by cerberusd
Archived-At: http://mailarchive.ietf.org/arch/msg/avt/RVR0UXXCvgSmPgvmNdFXtugvFo0
Cc: Ron Frederick <ron.frederick@bluecoat.com>, avt@ietf.org
Subject: Re: [AVTCORE] Errata 4192 RFC 3550
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Audio/Video Transport Core Maintenance <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/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: Mon, 08 Dec 2014 22:36:58 -0000

On Fri, 5 Dec 2014, Julius Friedman wrote:

> Hello All.
>
> There is definitely some confusion related to the errata I submitted for
> RFC3550.

I believe the confusion is within your interpretation of the standard,
not in our interpretation of your proposed errata.  Perhaps you would
like RTP to have some functions that are different than those that
were specified, but those do not constitute errata.

> The RFC clearly states:
>
> sender's octet count: 32 bits
>       The total number of payload octets (i.e., not including header or
>       padding) transmitted in RTP data packets by the sender since
>       starting transmission up until the time this SR packet was
>       generated.  The count SHOULD be reset if the sender changes its
>       SSRC identifier.  This field can be used to estimate the average
>       payload data rate.
>
> Just because it CAN be used for an average does not mean it should.

Let me clarify.  When we wrote that sentence, we were stating why this
field was included.  It was included so that receivers would be able
to know the sender's average payload data rate over various time
intervals by taking the value of this field from two sender reports
and dividing by the difference in time of the two sender reports.  The
receiver might want to compare that result with the average of the
data as received (perhaps with some losses).

> Further it is the total number of octets in the payload besides the
> header because the header is always 12 octets.
>
> Since csrc and extension octets are included then padding should be
> also.

The CSRC and extension octets part of the RTP header and the phrase
"not including header" means that they would not be included in the
sender's octet count.  What text in RFC 3550 led you to believe that
the header is always just the first 12 octets and that therefore the
CSRC and extension octets would be included in the sender's octet
count?

> Since rtcp also reflects the count with padding this is obviously
> correct.

I am not sure what you are referring to here.  In another email you
said "Rtcp counters include this value anyway."  What RTCP counters
include a count of padding bytes?  Perhaps you are referring to the
fact that the legnth field in the RTCP header includes padding on the
RTCP compound packet.  That is irrelevant to the question of whether
the sender's octet count, which is a count of payload octets, should
or should not include padding octets.

> Any padding only packet would not change the counter for rtp and is
> thus a security issue as well as a redundantly conveyed piece of
> information because each packet contains the number of padding bytes
> which can be accounted for in the implementation when required.

I do not see a security issue.  Please explain how there would be an
added security risk for an application that does send RTP data packets
with padding compared to an application does does not send RTP data
packets with padding, even if sometimes those applications send RTP
data packets containing no payload data.

The sender's octet count is an aggregate count of the payload octets
over some number, often a large number, of RTP data packets.  If the
receiver gets all of the data packets with no loss, then that same
count could be calculated.  However, some packets may be lost.  RTP is
designed to help implementations be tolerant of packet loss.

> To account for padding when padding is not required and would be 0
> is also contradictory.

I don't understand this sentence.  The sender's octet count does not
include padding octets, so for implementations that do not send
padding the number of excluded padding octets is zero, but that does
not form any contradiction.

> Please read and re read the errata if required.
>
> Please advise.  ( intelligently )

I suggest that careful reading and understanding of RFC 3550 is what
is required here.

                                                        -- Steve