Re: [nwcrg] Sliding window draft and coding schemes (e.g. RLNC)
"Morten V. Pedersen" <mvp@es.aau.dk> Tue, 05 May 2015 03:13 UTC
Return-Path: <mvp@es.aau.dk>
X-Original-To: nwcrg@ietfa.amsl.com
Delivered-To: nwcrg@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7D2391B2DBC for <nwcrg@ietfa.amsl.com>; Mon, 4 May 2015 20:13:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.2
X-Spam-Level:
X-Spam-Status: No, score=-3.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DK=1.009, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, T_RP_MATCHES_RCVD=-0.01] 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 y3C_MCC24SLL for <nwcrg@ietfa.amsl.com>; Mon, 4 May 2015 20:13:22 -0700 (PDT)
Received: from ad-exchedge02.aau.dk (ad-exchedge04.aau.dk [130.225.194.129]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B64921B2DBA for <nwcrg@irtf.org>; Mon, 4 May 2015 20:13:21 -0700 (PDT)
Received: from AD-EXCHHUB1-1.aau.dk (172.25.14.36) by ad-exchedge04.aau.dk (130.225.194.129) with Microsoft SMTP Server (TLS) id 14.3.210.2; Tue, 5 May 2015 05:13:20 +0200
Received: from [10.0.0.4] (71.192.172.129) by smtp.aau.dk (172.25.14.35) with Microsoft SMTP Server (TLS) id 14.3.210.2; Tue, 5 May 2015 05:13:19 +0200
Message-ID: <5548354C.6000201@es.aau.dk>
Date: Mon, 04 May 2015 23:13:16 -0400
From: "Morten V. Pedersen" <mvp@es.aau.dk>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: jonathan detchart <jonathan.detchart@isae.fr>, Muriel Medard <medard@mit.edu>
References: <8DC7A924-3859-4196-ACDB-B786DA6EED60@nrl.navy.mil> <E0DCA2D8-F2B4-46B5-AF2C-1D35DA91D895@inria.fr> <5546BCB4.9000306@es.aau.dk> <f8gagtlyy7dd8fgy48ye03xl.1430704702512@email.android.com> <281DE50D-8138-4ED4-AACA-5B4DA77C7011@isae.fr>
In-Reply-To: <281DE50D-8138-4ED4-AACA-5B4DA77C7011@isae.fr>
Content-Type: multipart/alternative; boundary="------------090209090900010601000905"
X-Originating-IP: [71.192.172.129]
Archived-At: <http://mailarchive.ietf.org/arch/msg/nwcrg/PzRg6u662swmvxw-4rIoWgh12Zo>
Cc: "nwcrg@irtf.org" <nwcrg@irtf.org>
Subject: Re: [nwcrg] Sliding window draft and coding schemes (e.g. RLNC)
X-BeenThere: nwcrg@irtf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IRTF Network Coding Research Group discussion list <nwcrg.irtf.org>
List-Unsubscribe: <https://www.irtf.org/mailman/options/nwcrg>, <mailto:nwcrg-request@irtf.org?subject=unsubscribe>
List-Archive: <http://www.irtf.org/mail-archive/web/nwcrg/>
List-Post: <mailto:nwcrg@irtf.org>
List-Help: <mailto:nwcrg-request@irtf.org?subject=help>
List-Subscribe: <https://www.irtf.org/mailman/listinfo/nwcrg>, <mailto:nwcrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Tue, 05 May 2015 03:13:27 -0000
Hi Jonathan, I'm a bit puzzled by your statement "many use cases where re-encoding is not feasible or practical". Do you have any specific scenarios in mind? - M On 05/04/2015 09:29 AM, jonathan detchart wrote: > Morten, > I re-read your email. We fully agree on the use of windows since this > is what Tetrys has been doing from the start. > > Muriel, > On the re-encoding : > while this should be a valued feature we all know of many use cases > where re-encoding is not feasible or practical. > > So our modified FECFRAME (NCFRAME ?) should be use-case driven to > allow maximum flexibility and even in some cases the use of network > codes as simple (AL-)FEC (block codes, or not). > > Jonathan DETCHART >> On 04 May 2015, at 03:58, Muriel Medard <medard@mit.edu >> <mailto:medard@mit.edu>> wrote: >> >> >> Dear all, >> >> Thank you. I think it is important that coding not be restricted to >> blocks, which can be highly limiting and incompatible with sliding >> windows. Recoding is crucial. Otherwise, it is just a code, like RS >> or Fountain, not a network code. >> >> Best, Muriel. >> >> >> Sent from my Verizon Wireless 4G LTE smartphone >> >> >> -------- Original message -------- >> From: "Morten V. Pedersen" <mvp@es.aau.dk <mailto:mvp@es.aau.dk>> >> Date: 05/03/2015 20:28 (GMT-05:00) >> To: nwcrg@irtf.org <mailto:nwcrg@irtf.org> >> Subject: Re: [nwcrg] Sliding window draft and coding schemes (e.g. RLNC) >> >> Hi everybody, >> I've just finished reading RFC 6363, and I agree with Vincent's >> assessment that the general concepts and architecture looks okay. As >> Vincent points out in draft-roca-nwcrg-fecframev2-problem-position-00 >> it is mostly a question of removing the limitation of fixed size blocks. >> >> Below are my comments to draft-roca-nwcrg-fecframev2-problem-position-00: >> >> Section 1. >> >> However, it is REQUIRED in [RFC6363] that the FEC scheme operate in a >> block manner, i.e., the input flow(s) MUST be segmented into a >> sequence of blocks, and FEC encoding (at a sender/coding node) and >> decoding (at a receiver/decoding node MUST be performed >> independently on a per-block basis. This approach has a major impact >> on coding and decoding delays. >> >> I don't think the fact that we operate in a block manner impacts the >> delay significantly. It is possible with most blocked RLNC codes to >> code only over the symbols currently available (and for the decoder >> to "detect" full rank of a sub-matrix). The crux of the problem is >> however captured in the next statement. >> >> Encoding requires that all the source symbols be known at the encoder. >> >> This is the real problem causing delay. Mapping this back to RFC 6363 >> (Section 4.1 p.12 top) I would say that the following statement : >> >> The FEC Framework then performs two operations. First, it appends >> the Source FEC Payload IDs, if provided, to each of the ADUs, and >> sends the resulting packets, known as "FEC source packets", to the >> receiver. Second, it places the provided FEC repair packet payloads >> and corresponding Repair FEC Payload IDs appropriately to to construct >> FEC repair packets and send them to the receiver. >> >> Which specifically defines an order in which source and repair >> symbols should be sent should be softened. Such that we are allowed >> to dynamically generate repair according to some rate defined in the CDP. >> >> Section 2.2 >> >> A Code Rate close to 1 indicates that a small number of Output >> Symbols have been produced during the encoding process. >> >> I think Output Symbols should be replaced with Repair Symbols to >> match the definitions? >> >> Section 4.2 >> >> The question of having multiple in-network re-coding operations >> is not considered in [RFC6363]. The question whether this is feasible >> and appropriate, given the typical FECFRAME use-cases, is an open >> question that remains to be discussed. >> >> I think it worth including, but maybe not in this first iteration. >> If/when we decide to do it. I think most of the logic for this could >> reside in the CDP. The additional functionality needed by the FEC >> scheme would (I think) be minimal. Also the FEC payload ID for >> encoded and recoded packets would probably be the same for most FEC >> schemes. >> >> Section 4.5 >> >> The question of having FECFRAME used in lower protocol layers is not >> considered in [RFC6363]. Whether this is feasible and appropriate, >> given the typical FECFRAME use-cases, is an open question that >> remains to be discussed. >> >> It is a good question. I would probably just say that it is a bridge >> we will cross should it ever become relevant. I would probably not >> try to include anything on that into the document. >> >> Section 5.1 >> >> In the description of the interaction between the FEC Framework v2 >> and the FEC Scheme. I think it would be nice to describe it in terms >> of a "pull model" where the FEC Framework v2 or the CDP "pulls" >> repair symbols from the FEC Scheme at a suitable rate (defined by the >> CDP). The way it is formulated now it is not clear whether it is the >> FEC Scheme that defines how many repair symbols are created or the >> FEC Framework v2 / CDP. But I think that is also unclear in RFC6363, >> perhaps it is just me ;) >> >> Section 5.2 >> >> with FECFRAMEv2 in window mode, can be dynamic and chosen on a >> per-window basis. In that case the length of repair symbols will >> dynamically evolve as well in order to be equal to the maximum >> ADUI size in the encoding window at the time of encoding. >> >> I would say we can even "loosen" this a bit more and way that the >> length will be "equal to the maximum ADUI size included in a repair >> symbol". So even though we have a very long symbol in the window, if >> it isn't included in a specific encoding it will not impact the >> length of that repair symbol. This will not have much impact on high >> field codes - but for binary/sparse codes it may. >> >> For Figure 2 the definition of the F and L fields should be given. I >> did not find it - but perhaps I missed it. >> >> >> Section 5.3 >> >> at the FECFRAME instance level >> >> Should be "at the FECFRAMEv2 instance level" >> >> if the sender knows that a particular ADU has been correctly >> received by the receiver(s), the corresponding source symbol(s) >> is(are) removed. Of course this mechanism requires that an >> acknowledgement mechanism be setup to inform the FECFRAMEv2 sender >> of good ADU reception, which is out of the scope of FECFRAMEv2. >> Whether or not this is desirable is an open question; >> >> I think we should consider including it. One way of doing it is to >> let the FEC Scheme decoder (receiver) be queried, whether it has >> feedback for the encoder (sender) or not. If it has feedback to send >> and the CDP has a method of getting that feedback to the sender then >> it can take advantage of it. However, no FEC scheme should rely on >> the feedback e.g. to move the window, but simply utilize it for >> performance reasons. I think this is also in-line with what is >> already in RFC 6363 Section 6. However, we many want to explicitly >> generate some working around that and define a container for it FEC >> Feedback Information. >> >> Section 5.4 >> >> I don't this the symbol identifiers should be specified by the >> FECFRAMEv2, but rather left up the specific FEC Scheme. I might have >> missed something here but to me the symbol identifiers specified by >> RFC 6363 see adequate for our purpose here as well. >> >> That was it, let me know your thoughts. >> >> Best regards, >> Morten >> >> >> On 04/12/2015 10:35 AM, Vincent Roca wrote: >>> Hello Brian and everybody, >>> >>> In order to move forward and enrich the end-to-end transport >>> use-case discussions, I have >>> worked on an update to FECFRAME in order to support the sliding >>> window approach (see >>> my other email). The general architecture and concepts seem okay to >>> me at first glance. >>> >>> Here also the next step is now to specify a first convolutional FEC >>> Scheme… This I-D will be, >>> for some parts, FECFRAME specific, but the rest will be common with >>> other NC proposals. >>> >>> And we need a public repository to work collaboratively on this and >>> other documents >>> (e.g., taxonomy)… >>> >>> Cheers, >>> >>> Vincent >>> >>> >>>> Le 6 avr. 2015 à 18:44, Brian Adamson <brian.adamson@nrl.navy.mil >>>> <mailto:brian.adamson@nrl.navy.mil>> a écrit : >>>> >>>> As a result of some discussion with Marie, I thought it would be a >>>> good idea to share a few of my thoughts on some of the near term >>>> activities we seem to have identified and making some progress on. >>>> One of the nearer-term “products” of our NWCRG discussion is the >>>> end-to-end transport use case with the developing sliding window >>>> approach being documented in Jonathan, et al’s draft. >>>> >>>> To support that work, it could be good to consider trying to >>>> document an accompanying “FEC Scheme or two (e.g. RLNC, etc) that >>>> could be applied with the sliding window protocol. That may help >>>> us get the framework right. It would perhaps even be an >>>> interesting thought exercise to see if something like RLNC could >>>> documented in the form of an RMT or FecFrame “FEC Scheme”?. One >>>> thing to note here is the the main value proposition for _unicast_ >>>> end to end use of coding lies somewhat with the delay improvements >>>> and that the sliding window type approach helps maximize the gains >>>> here as compared to the transport efficiencies coding yields for >>>> multicast (it also gets some delay benefits too under certain use >>>> cases). While some of the formats / semantics of RMT/FecFrame may >>>> be reused, they may be too "block code oriented” as they are >>>> currently specified? >>>> >>>> So I think we are sort of on a good course to get some consensus >>>> for defining a sliding window framework that one could then “plug >>>> in” RLNC and some of the other coding algorithms discussed (all the >>>> IPR issues notwithstanding). It may be necessary to have the >>>> sliding window document to provide a reference for how to specify >>>> RLNC. We did that in RMT where we wrote the “FEC Building Block” >>>> document that established some core packet formats (and IANA >>>> registries) so we could go on to document specific FEC coding >>>> algorithms (we called them FEC Schemes) including non-proprietary >>>> stuff like Reed Solomon, LDPC as well as the proprietary Raptor >>>> codes, etc. >>>> >>>> I haven’t been too explicitly vocal on this aspect because it >>>> seemed we were getting some progress on this with Jonathan’s draft >>>> and more recently Morten’s constructive comments on that. This may >>>> be one of the pieces that can transition more early to IETF working >>>> group activities for end-to-end transport purposes while we >>>> continue in NWCRG to work on the more “researchy” items. I think >>>> having this initiated in NWCRG is OK since we’ve assembled a set of >>>> people that may be able to work the problem? And if we establish a >>>> basis of components (e.g. packet formats, coding scheme >>>> definitions) from this that may also be useful for other >>>> applications of network coding (i.e. more “in network” things like >>>> your DNC concept, ideas like Cedric described, SDN applications of >>>> coding, etc), then it is also beneficial to ongoing NWCRG work, >>>> too. Then, when it’s sufficiently mature it might find a >>>> (transport area) working group home for the longer term? >>>> >>>> Again I personally haven’t explicitly articulated this like I’ve >>>> done here since we seemed (to me) to be sort of proceeding (perhaps >>>> lurching) along this path anyway, but (with Marie’s help) have >>>> realized these might thoughts worth sharing. >>>> >>>> best regards, >>>> >>>> Brian >>>> _______________________________________________ >>>> nwcrg mailing list >>>> nwcrg@irtf.org <mailto:nwcrg@irtf.org> >>>> https://www.irtf.org/mailman/listinfo/nwcrg >>> >>> >>> >>> _______________________________________________ >>> nwcrg mailing list >>> nwcrg@irtf.org >>> https://www.irtf.org/mailman/listinfo/nwcrg >> >> _______________________________________________ >> nwcrg mailing list >> nwcrg@irtf.org <mailto:nwcrg@irtf.org> >> https://www.irtf.org/mailman/listinfo/nwcrg >
- [nwcrg] Sliding window draft and coding schemes (… Brian Adamson
- Re: [nwcrg] Sliding window draft and coding schem… Vincent Roca
- Re: [nwcrg] Sliding window draft and coding schem… Morten V. Pedersen
- Re: [nwcrg] Sliding window draft and coding schem… Muriel Medard
- Re: [nwcrg] Sliding window draft and coding schem… jonathan detchart
- Re: [nwcrg] Sliding window draft and coding schem… Vincent Roca
- Re: [nwcrg] Sliding window draft and coding schem… Muriel Medard
- Re: [nwcrg] Sliding window draft and coding schem… Morten V. Pedersen
- Re: [nwcrg] Sliding window draft and coding schem… Morten V. Pedersen
- Re: [nwcrg] Sliding window draft and coding schem… Vincent Roca
- Re: [nwcrg] Sliding window draft and coding schem… jonathan detchart
- Re: [nwcrg] Sliding window draft and coding schem… Vincent Roca
- Re: [nwcrg] Sliding window draft and coding schem… Muriel Medard
- Re: [nwcrg] Sliding window draft and coding schem… Marie-Jose Montpetit
- Re: [nwcrg] Sliding window draft and coding schem… Vincent Roca
- Re: [nwcrg] Sliding window draft and coding schem… Morten V. Pedersen
- Re: [nwcrg] Sliding window draft and coding schem… Morten V. Pedersen
- Re: [nwcrg] Sliding window draft and coding schem… Muriel Medard
- Re: [nwcrg] Sliding window draft and coding schem… Marie-Jose Montpetit