Re: [Fecframe] Managing losses between the sending application and the FECFRAME instance

"Ali C. Begen (abegen)" <abegen@cisco.com> Fri, 11 February 2011 17:03 UTC

Return-Path: <abegen@cisco.com>
X-Original-To: fecframe@core3.amsl.com
Delivered-To: fecframe@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 159073A6956 for <fecframe@core3.amsl.com>; Fri, 11 Feb 2011 09:03:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level:
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[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 E0ogkvXBko3Y for <fecframe@core3.amsl.com>; Fri, 11 Feb 2011 09:03:33 -0800 (PST)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id 5D4E23A69D2 for <fecframe@ietf.org>; Fri, 11 Feb 2011 09:03:33 -0800 (PST)
Authentication-Results: sj-iport-6.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AiYBAM/6VE2rR7Hu/2dsb2JhbACXF45dc59NmzeFXQSFAYoz
X-IronPort-AV: E=Sophos;i="4.60,456,1291593600"; d="scan'208";a="661790866"
Received: from sj-core-5.cisco.com ([171.71.177.238]) by sj-iport-6.cisco.com with ESMTP; 11 Feb 2011 17:03:48 +0000
Received: from xbh-sjc-221.amer.cisco.com (xbh-sjc-221.cisco.com [128.107.191.63]) by sj-core-5.cisco.com (8.13.8/8.14.3) with ESMTP id p1BH3meN015817; Fri, 11 Feb 2011 17:03:48 GMT
Received: from xmb-sjc-215.amer.cisco.com ([171.70.151.169]) by xbh-sjc-221.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.4675); Fri, 11 Feb 2011 09:03:48 -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: Fri, 11 Feb 2011 09:03:16 -0800
Message-ID: <04CAD96D4C5A3D48B1919248A8FE0D540E4C7E68@xmb-sjc-215.amer.cisco.com>
In-Reply-To: <C97AAA33.9588%luby@qualcomm.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [Fecframe] Managing losses between the sending application and the FECFRAME instance
Thread-Index: AcvJ1GA5qyHZf6FXRyy1N3N8Wy6xBwAIblpgAAWgNXEAAB0s4A==
References: <04CAD96D4C5A3D48B1919248A8FE0D540E4C7DDE@xmb-sjc-215.amer.cisco.com> <C97AAA33.9588%luby@qualcomm.com>
From: "Ali C. Begen (abegen)" <abegen@cisco.com>
To: "Luby, Michael" <luby@qualcomm.com>, Vincent Roca <vincent.roca@inrialpes.fr>, fecframe@ietf.org
X-OriginalArrivalTime: 11 Feb 2011 17:03:48.0598 (UTC) FILETIME=[A670B160:01CBCA0D]
Subject: Re: [Fecframe] Managing losses between the sending application and the FECFRAME instance
X-BeenThere: fecframe@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Discussion of FEC Framework <fecframe.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/fecframe>, <mailto:fecframe-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/fecframe>
List-Post: <mailto:fecframe@ietf.org>
List-Help: <mailto:fecframe-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/fecframe>, <mailto:fecframe-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 11 Feb 2011 17:03:35 -0000

> -----Original Message-----
> From: Luby, Michael [mailto:luby@qualcomm.com]
> Sent: Friday, February 11, 2011 11:56 AM
> To: Ali C. Begen (abegen); Vincent Roca; fecframe@ietf.org
> Subject: Re: [Fecframe] Managing losses between the sending application and the FECFRAME instance
> 
> It seems like this is an unbounded problem.  What about the case when there
> is out of order packet delivery, that can cause the mechanism below to cut a
> source block and then start a new one packet source block, etc.

Yup, packet loss or re-ordering can be dealt with to some extent but beyond the limit, the fecframe sender will continue with what it has.
 
> There are also cases where the receivers cannot handle variable sized source
> blocks (they are expecting exactly so many packets of a fixed size per
> source block), e.g., because that is how the FEC scheme is defined.  The
> solution proposed doesn't work for this case as well (it will really mess up
> the receivers).

Also, true but in that case, one needs to make sure the fecframe sender will not see any gaps in the source packets.
 
> I think a better approach is that all the packets from the original source
> either MUST or SHOULD reach the FEC encoder in their proper sequence.  What

And within a desired delay.

> happens when that is not true seems to be an unbounded problem, and I don't
> think we can solve it (out of scope of the specification).

Then, we make the recommendation above (I guess I prefer SHOULD) but then add that the fecframe sender/receiver implementation needs to consider the impact of such problems.
 
-acbegen

> 
> On 2/11/11 6:17 AM, "Ali C. Begen (abegen)" <abegen@cisco.com> wrote:
> 
> >
> >
> >> -----Original Message-----
> >> From: fecframe-bounces@ietf.org [mailto:fecframe-bounces@ietf.org] On Behalf
> >> Of Vincent Roca
> >> Sent: Friday, February 11, 2011 5:13 AM
> >> To: fecframe@ietf.org
> >> Subject: [Fecframe] Managing losses between the sending application and the
> >> FECFRAME instance
> >>
> >> And this is point 2:
> >>
> >> Managing losses between the sending application and
> >> the FECFRAME instance
> >> ---------------------------------------------
> >>
> >> It is often implicitly assumed in FEC Schemes that there
> >> is no loss between the sending application and the
> >> FECFRAME Instance that performs FEC encoding. That's
> >> reasonable (we apply FECFRAME on lossy channels)
> >> but we should not design solutions that break if ever
> >> this happens, no matter the reason.
> >>
> >> (NB: this may be caused by having FECFRAME on a
> >> middlebox whereas the application flow is generated
> >> on a remote server. Or perhaps because of strange
> >> (bad?) FECFRAME implementations that may loose
> >> ADUs, e.g. in case the machine is frozen during a few
> >> seconds, or for any other reason, bugs included.)
> >>
> >> All FEC Schemes that make use of an Explicit Source
> >> FEC Payload ID (be it Generic or not ;-)) are safe, since
> >> they define their own sequential numbering space.
> >>
> >> However this is not the case for FEC Schemes that reuse
> >> (for instance) the RTP sequence number. In that case, an
> >> erasure between the application (therefore RTP) and
> >> the FECFRAME Instance creates a gap in the RTP sequence
> >> number space that needs to be signaled somehow to the
> >> receiver.
> >>
> >> The simplest way of addressing this situation consists in
> >> saying that source block creation needs to consider this
> >> possibility and start a new block if ever this happens.
> >> Since all the existing FEC Repair Payload IDs for FEC
> >> schemes that rely on RTP sequence numbers, signal to
> >> the receiver in the FEC Repair Payload ID:
> >>   - the base RTP SN of the block and
> >>   - the source block length,
> >> that's sufficient.
> >
> > I like this fix, but maybe we should add a note. Since this will cause source
> > block sizes to vary over time, the overhead may also vary over time. And so
> > this should be a surprise to the sender or receiver. We should add a small
> > note on this.
> >
> > -acbegen
> >
> >> A consequence is that the block size can vary if there
> >> are erasures on this path, and this phenomenon is not
> >> under control. As an extreme case:
> >>
> >> ...<pkt SN=6> LOST <pkt SN=8> LOST <pkt SN=10>...
> >> -------------------------------------------> time
> >>
> >> There's a block that is composed of a single packet
> >> (SN=8). That's bad but the FEC Scheme does not break.
> >> And of course this situation is the sign that something
> >> should be re-considered in the design.
> >>
> >> So this is an easy fix to the problem, that does not
> >> require major changes to current I-D.
> >>
> >> This discussion is already included in our new O&M
> >> proposal, section 10.2, "Within End-Systems vs. within
> >> Middleboxes".
> >>
> >> Opinions?
> >>
> >> Cheers,
> >>
> >>     Vincent and Ali
> >> _______________________________________________
> >> Fecframe mailing list
> >> Fecframe@ietf.org
> >> https://www.ietf.org/mailman/listinfo/fecframe
> > _______________________________________________
> > Fecframe mailing list
> > Fecframe@ietf.org
> > https://www.ietf.org/mailman/listinfo/fecframe