Re: [AVTCORE] Comments on draft-ietf-avtcore-feedback-supression-rtp-06.txt

Magnus Westerlund <magnus.westerlund@ericsson.com> Mon, 12 September 2011 14:20 UTC

Return-Path: <magnus.westerlund@ericsson.com>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9CB4021F8B75 for <avt@ietfa.amsl.com>; Mon, 12 Sep 2011 07:20:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.202
X-Spam-Level:
X-Spam-Status: No, score=-106.202 tagged_above=-999 required=5 tests=[AWL=-0.203, BAYES_00=-2.599, J_CHICKENPOX_14=0.6, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qEUa0n4An9zd for <avt@ietfa.amsl.com>; Mon, 12 Sep 2011 07:20:56 -0700 (PDT)
Received: from mailgw10.se.ericsson.net (mailgw10.se.ericsson.net [193.180.251.61]) by ietfa.amsl.com (Postfix) with ESMTP id 00BA121F8B73 for <avt@ietf.org>; Mon, 12 Sep 2011 07:20:55 -0700 (PDT)
X-AuditID: c1b4fb3d-b7c47ae000000b17-f5-4e6e15c2b0d2
Received: from esessmw0197.eemea.ericsson.se (Unknown_Domain [153.88.253.125]) by mailgw10.se.ericsson.net (Symantec Mail Security) with SMTP id 7E.66.02839.2C51E6E4; Mon, 12 Sep 2011 16:22:58 +0200 (CEST)
Received: from [127.0.0.1] (153.88.115.8) by esessmw0197.eemea.ericsson.se (153.88.115.88) with Microsoft SMTP Server id 8.3.137.0; Mon, 12 Sep 2011 16:22:58 +0200
Message-ID: <4E6E15BD.7060404@ericsson.com>
Date: Mon, 12 Sep 2011 16:22:53 +0200
From: Magnus Westerlund <magnus.westerlund@ericsson.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:6.0.2) Gecko/20110902 Thunderbird/6.0.2
MIME-Version: 1.0
To: Qin Wu <bill.wu@huawei.com>
References: <20110831070359.24630.22446.idtracker@ietfa.amsl.com> <4E5F9C23.8050702@ericsson.com> <19810C85B8E8469899492927E1AAA6B9@china.huawei.com> <4E65D2BD.2050008@ericsson.com> <C6D2DB253DBC45E98EE3DB9F6D3A4D99@china.huawei.com>
In-Reply-To: <C6D2DB253DBC45E98EE3DB9F6D3A4D99@china.huawei.com>
X-Enigmail-Version: 1.3.1
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Brightmail-Tracker: AAAAAA==
Cc: "avt@ietf.org" <avt@ietf.org>, "draft-ietf-avtcore-feedback-supression-rtp@tools.ietf.org" <draft-ietf-avtcore-feedback-supression-rtp@tools.ietf.org>
Subject: Re: [AVTCORE] Comments on draft-ietf-avtcore-feedback-supression-rtp-06.txt
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.12
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, 12 Sep 2011 14:20:57 -0000

Hi,

Removed the issues where I have no more comments.

See inline

On 2011-09-07 05:28, Qin Wu wrote:
> Hi,Magnus:
> Please see my replies below. Hope it address your remaining comments.
> ----- Original Message -----
> From: "Magnus Westerlund" <magnus.westerlund@ericsson.com
> <mailto:magnus.westerlund@ericsson.com>>
> To: "Qin Wu" <bill.wu@huawei.com <mailto:bill.wu@huawei.com>>
> Cc: <avt@ietf.org <mailto:avt@ietf.org>>;
> <draft-ietf-avtcore-feedback-supression-rtp@tools.ietf.org
> <mailto:draft-ietf-avtcore-feedback-supression-rtp@tools.ietf.org>>
> Sent: Tuesday, September 06, 2011 3:58 PM
> Subject: Re: Comments on draft-ietf-avtcore-feedback-supression-rtp-06.txt
> 
> 
> On 2011-09-05 06:06, Qin Wu wrote:
>> Hi, Magnus:
>> Thank for your valuable review. please see my replies below.
>>
>>> ----- Original Message -----
>>> From: "Magnus Westerlund" <magnus.westerlund@ericsson.com
> <mailto:magnus.westerlund@ericsson.com>>
>>> To: <avt@ietf.org <mailto:avt@ietf.org>>;
> <draft-ietf-avtcore-feedback-supression-rtp@tools.ietf.org
> <mailto:draft-ietf-avtcore-feedback-supression-rtp@tools.ietf.org>>
>>> Sent: Thursday, September 01, 2011 10:52 PM
>>> Subject: Comments on draft-ietf-avtcore-feedback-supression-rtp-06.txt
> 

> 
>>
>>> 5. Section 3, fourth paragraph:
>>> I am trying to get my head around the implications of not being explicit
>>> about the time feedback suppression lasts. And I don't quite get how it
>>> works from either side.
>>
>>> As the sender of of Third party loss report, the first message is pretty
>>> straight forward. It suppresses all receiver that get it for one of
>>> their Retransmission timeout intervals. As a sender I have no idea how
>>> long that interval are in the various receivers implementations. It is
>>> likely a RTT + some fudge time for the source being reported. The issue
>>> is that the RTT to the orignal source, rather than the third party
>>> reporting the loss is quite different, thus not reflecting the interval
>>> before the Third party expects to get the packet for forwarding.
>>
>> [Qin]: Firstly, the normal behavior of TPLR sender is the same as for
> sending a NACK and not
>> receiving a repair. I think that the paragraph was about the case when the
>> downstream receiver received a suppression message but expected to get a
>> repair packet w=even though it did not sent a NACK.
>>
>> Secondly, it is true that the interval to get TPLR varies from
> different receivers implementation.
>> However the senders of TPLR does not need to know how long it take for
> receiver to get TPLR
>> message, instead the receiver should more concerns the interval to
> recieve TPLR from the sender
>> of TPLR. In other words, upon being told about the packet loss, TPLR
> senders should immediately
>> create, send TPLR to the recievers. The other intermediary between
> sender and receiver just simply
>> forward TPLR message to the recievers.
>>
>> For reciever who concerns the interval, they should know how to choose
> appropirate interval for timer.
>> one way is to choose the longest time to receive TPLR, i.e., one RTT
> to recieve TPLR from source since
>>  the media source also can be the sender of TPLR. Does this
> clarification make sense to you?
> 
> Well, but if you are a Intermediary that forwards upstream RTP packets
> onto a multicast segment and at the same time buffers them for
> retransmission. Then when that Intermediary detects a loss upstream of
> itself it might want to send a TPLR as soon as it is pretty certain of
> that loss downstream to avoid the receivers sending NACK on something it
> can't repair. And in that case, it is difficult to determine how often
> it should be repeated while it is still not received or repaired.
> 
> [Qin]: I get your point. As I said, the behavior of intermediary for
> sending TPLR could be the same as one for sending a NACK.
> 
> In case of the loss of TPLR, the intermediary may send another TPLR for
> the same packet loss event.
> 
> Before sending the another TPLR, the intermediary may rely on a timer to
> ensure that the attempt to send first TPLR for suppression
> 
> has failed and so avoid unnecessary resending new TPLR for the same
> packet loss.
> 
> The timer can be based on observed round-trip time measured from
> intermediary to the receiver. The estimate of the round-trip time
> 
> (RTT) to the receiver can be calculated based on past observations, RTCP
> report round-trip time. Does this address your comment?
> 

I think using observed RTTs is a good thing. However, one needs to
answer the question of who's RTT are one using. A SSM receiver has no
RTT measurements performed, as they are sending no SRs. So unless the
summary Report is provided the receiver have no knowledge of any RTTs in
the system.

This is likely true also for intermediaries unless they send data using
their own SSRC, like unicast RTX.

Thus, it becomes difficult to know how the entities will behave with
these retransmission timers.

In addition as the receiver reaction to additional TPLRs aren't
documented it becomes difficult to determine how big impact spurious
TPLRs have on the system.

But lets assume that a TPLR simply resets the timer each time it is a
received. Then it makes sense for an intermediary that are awaiting
retransmission upstream to send TPLR periodically on an interval that is
guaranteed to be shorter than any participants retransmission timer
until it receives the retransmission request. Yes, sending one and if
the receiver populations timer is as long or longer than the
intermeediary's timer to the media source, then that is more optimal.
But if that results in a lot of NACK requests, then I would claim it
might be less efficient from a network resource perspective.

Thus different implementation choices exist. And with the current lack
of clarity I guess different implementation choices will be made and
with poor performance as result.

>  
> 
> Another case in my mind is how often to send a TPLR for different packet
> loss in case there is no loss of TPLR or of retransmission packet.
> 
> In this case, the intermediary can follow the same timing rule of
> sending NACK defined in RFC4585. i.e., The TPLR message may be sent
> 
> in a regular full compound RTCP packet or in an early RTCP packet, as
> per AVPF.
> 

Yes, I think the normal rules fro sending AVPF packets should be
followed. I don't think you need to have the "full" rule for something
that is in fact a new Feedback event. Just use the rules for sending
feedback events.

> 
>>
>>> The next question is if and in that case when the node should send an
>>> additional TPLR message. Should it wait for receiving a first NACK and
>>> expect a storm of others before the suppression has reached the others.
>>> Should it try to estimate the lowest suppression time to any of the down
>>> stream receivers?
>>
>> [Qin]:
>>  In most case, the node in the middle does not need to send additional
>> TPLR if upstream node has been told about all the packet loss event.
>>  Unless the upsteam node miss one or more than one packet loss, the
>>  node in the middle between upstream node and the receive may send
>> additional TPLR. However same as the upstream node sending TPLR,
>>  the node in the middle does not need to wait for a certain time to send
>> TPLR. upon been told about the loss and make sure the loss is not
> reported
>> by upstream node, the node should create and send additional TPLR
> immediately.
>> Does it make sense?
> 
> I still don't know how often I need to send them to ensure that I don't
> get NACKs from my receivers.
>  
> [Qin] See above.
> 
>>
>>> As a receiver, when I receive an additional TPLR message, do I
>>> immediately restart the timer, or do I wait until the timer expires and
>>> then refreshes it for one new interval?
>>
>> [Qin]: First, I think the reciever behavior follows the feedback
> suppression
>>  rule defined in RFC4585. secondly, I think the timer is restarted per
> each new loss, if the
>>  reciever receive additinal TPLR message, which report the different
> loss, the
>>  reciever should restart the timer immediately. However if additinal
> TPLR report
>> the same loss as the previous TPLR, the receiver should wait untile
> the timer expires
>> and then refreshes it for one new interval.
> 
> I personally think refreshing the timer immediately in both cases might
> be both simpler and work better. Especially as the sender of an update
> then knows that it is one interval from the reception of the new TPLR,
> and not two intervals since the first one. As the length of the interval
> is not known it is difficult to know when receivers will approximately
> resume sending NACKs.
>  
> [Qin]: I agree with you. In the case the first TPLR is lost and the
> second TPLR arrives
> at the receiver, the receiver should immediately refresh the timer. In
> the case the first
> TPLR is not lost and the second TPLR for different packet loss event
> arrives at the receiver,
> the receiver should immediately start a new timer for the second TPLR.
> The length of the interval
> can be estimated based on past observation or RTCP report round-trip
> time or other means.
> Does it make sense to you?

I am fine with individual timers for each TPLR report.

As before, I think how a receiver truly can estimate a reasonable timer
needs discussion.

Cheers

Magnus Westerlund

----------------------------------------------------------------------
Multimedia Technologies, Ericsson Research EAB/TVM
----------------------------------------------------------------------
Ericsson AB                | Phone  +46 10 7148287
Färögatan 6                | Mobile +46 73 0949079
SE-164 80 Stockholm, Sweden| mailto: magnus.westerlund@ericsson.com
----------------------------------------------------------------------