Subject: [nwcrg] About FEC and NC for dummies

From: Vincent Roca <[email-masked]>
Date: Wed, 26 Sep 2018 09:22:26 +0200

As discussed during the interim, we would like to gather a small number of ideas that
could let people think they understand how FEC and NC works in order to facilitate their
adoption.

This is NOT meant to be a tutorial, and it must remain extremely compact and simple.
We discussed it during the interim and found it useful. 

Therefore we would like to come to IETF 103 with a first consolidated list of ideas (those
in the slides are very preliminary and sometimes questionable).

Your feedback and proposals are therefore welcome (to the list or to me directly, as you prefer).

Cheers,

  Marie-Jose and Vincent

——— from the minutes ———
FEC and NC for dummies (Vincent)

See slides.	https://github.com/irtf-nwcrg/rg-materials/blob/master/interim-2018-09/nwcrg_interim_fec_for_dummies.pdf <https://github.com/irtf-nwcrg/rg-materials/blob/master/interim-2018-09/nwcrg_interim_fec_for_dummies.pdf>

MJM: do not focus too much on type of traffic to justify the use of block vs. sliding window codes, but rather on the application needs (data, streaming, RT, nRT, delay sensitive, jitter sensitive) and like Kerim said later on the topologies underlaying these applications/services (point to point, peer to peer, mesh etc.).

DO: Say also that there's no simple answer. Do we have enough packets to code over?

DO: It's dangerous to mention Shannon capacity as there are situations where sending over the capacity may help. Do not overly simplify things.

CA: simple hints on coding are useful (e.g., Wikipedia introduction to Reed-Solomon codes is too complex). Otherwise I'm lost with some aspects such as relationships between FEC and congestion control (what are the design issues rather than the solutions?).

MJM: it could be useful to have a table with existing FEC/NC codes with pointers to esisting drafts and RFCs.

Globally this initiative is recognized as useful. This is not a tutorial on FEC/NC (we insist on this) but rather a few ideas for background information.

TODO (chairs): continue the discussion on the list.

---

From: Emmanuel Lochin <[email-masked]>
Date: Wed, 26 Sep 2018 11:33:24 +0200

That's an excellent idea! We could do little videos such as the ones 
proposed by the RITE project : https://www.youtube.com/watch?v=n4FcmA6ROGw

Steinwurf's blog has also really nice tutos for instance : 
http://steinwurf.com/blog/2018-03-19-efficient-one-way-communication.html

EL

Le 26/09/2018 à 09:22, Vincent Roca a écrit :
> *Therefore we would like to come to IETF 103 with a first consolidated 
> list of ideas* (those
> See 
> slides.https://github.com/irtf-nwcrg/rg-materials/blob/master/interim-2018-09/nwcrg_interim_fec_for_dummies.pdf
>
>
> MJM: do not focus too much on type of traffic to justify the use of 
> block vs. sliding window codes, but rather on the application needs 
> (data, streaming, RT, nRT, delay sensitive, jitter sensitive) and like 
> Kerim said later on the topologies underlaying these 
> applications/services (point to point, peer to peer, mesh etc.).
>
> DO: It's dangerous to mention Shannon capacity as there are situations 
> where sending over the capacity may help. Do not overly simplify things.
>
> CA: simple hints on coding are useful (e.g., Wikipedia introduction to 
> Reed-Solomon codes is too complex). Otherwise I'm lost with some 
> aspects such as relationships between FEC and congestion control (what 
> are the design issues rather than the solutions?).
>
> MJM: it could be useful to have a table with existing FEC/NC codes 
> with pointers to esisting drafts and RFCs.
>
> Globally this initiative is recognized as useful. This is not a 
> tutorial on FEC/NC (we insist on this) but rather a few ideas for 
> background information.
>
> _______________________________________________
> nwcrg mailing list
> [email-masked]
> https://www.irtf.org/mailman/listinfo/nwcrg

-- 
Emmanuel LOCHIN
Professeur ISAE
ISAE SUPAERO - Institut Supérieur de l'Aéronautique et de l'Espace
10 avenue Edouard Belin - BP 54032 - 31055 TOULOUSE CEDEX 4 FRANCE -
http://www.isae-supaero.fr
Tel +33 5 61 33 84 85 - Fax (+33) 5 61 33 83 45
Web : http://personnel.isae.fr/emmanuel-lochin/

Stop aux idées reçues! Entrez dans la Science sur les campus de l’ISAE-SUPAERO et de l’ENAC pour la Journée Portes Ouvertes du 13 octobre 2018.
Ouverture de 10h/18h, plus d’infos sur isae-supaero.fr et enac.fr.

---

From: Vincent Roca <[email-masked]>
Date: Wed, 26 Sep 2018 13:20:32 +0200

Thanks you for the pointers. The video is great, I agree, but let’s start with the easy side: a small number of simple, key ideas.
I understand that you volunteer ;-)  I’ll come back to you soon.

Morten? Others? Who wants to contribute? It won’t be a time consuming task I think unlike the other ones.

  Vincent

> Le 26 sept. 2018 à 11:33, Emmanuel Lochin <[email-masked]> a écrit :
> 
> That's an excellent idea! We could do little videos such as the ones proposed by the RITE project : https://www.youtube.com/watch?v=n4FcmA6ROGw <https://www.youtube.com/watch?v=n4FcmA6ROGw>
> Steinwurf's blog has also really nice tutos for instance : http://steinwurf.com/blog/2018-03-19-efficient-one-way-communication.html <http://steinwurf.com/blog/2018-03-19-efficient-one-way-communication.html>
> EL
> 
>> [email-masked] <mailto:[email-masked]>
>> https://www.irtf.org/mailman/listinfo/nwcrg <https://www.irtf.org/mailman/listinfo/nwcrg>
> 
> -- 
> Emmanuel LOCHIN

---

From: Zverev Mihail <[email-masked]>
Date: Wed, 26 Sep 2018 14:37:42 +0000

Good part of the day.

My name is Mihail, I am a new member in Josu’s team. I just started my PhD thesis and all these things about NC are very new to me.

As a beginner, it took me some time to understand why intra-flow NC could be better than existing end-to-end coding schemes. In fact, Goiuri helped me on that just a couple of hours ago.

I think it is very important to give a simple and illustrative explanation on what are FEC and NC, and especially, explain the difference between intra-flow and inter-flow NC and the advantages of each one.

The advantage of inter-flow NC is very clear and easy to illustrate:
Alice         Wi-Fi router           Bob
  |    --P1-->      |                 |
  |                 |      --P1-->    |
  |                 |     <--P2--     |
  |   <--P2--       |                 |

Less transmissions with NC:
Alice         Wi-Fi router           Bob
  |    --P1-->      |                 |
  |                 |     <--P2--     |
  | <--P1 XOR P2--  |  --P1 XOR P2--> |

The advantage of intra-flow NC is easily seen with a multi-hop wireless network. Here, it is very important to point out that in every hop, each intermediate node recovers lost packets before forwarding them, which significantly increases the chances that the destination node will receive at least the required minimum of coded packets to decode the whole message (and this is why intra-flow NC is so good and useful, now I understand…).

Yesterday Marie-Jose mentioned that code developers don’t want to use FEC/NC because they think that they perfectly understood these tools and find no use in them. Addressing this problem, I would like to suggest to show how the latency can be reduced with these techniques in realistic environments. An example of such environment could be the one mentioned yesterday: VR goggles used for an online videogame. Player’s goggles are connected to internet via a Wi-Fi link, and the game server is located in another country, with several hops between the two ends. There must be numerical data in some publications that we could use, either from simulations or physical setups. If we cannot find the necessary data for comparison, we could run some simulations ourselves.

Hope this helps. Any feedback on the content or my English is welcome.

Best regards,
Mihail.

From: nwcrg [mailto:[email-masked]] On Behalf Of Vincent Roca
Sent: miércoles, 26 de septiembre de 2018 13:21
To: Emmanuel Lochin
Cc: [email-masked]
Subject: Re: [nwcrg] About FEC and NC for dummies

  Vincent

Le 26 sept. 2018 à 11:33, Emmanuel Lochin <[email-masked]<mailto:[email-masked]>> a écrit :

That's an excellent idea! We could do little videos such as the ones proposed by the RITE project : https://www.youtube..com/watch?v=n4FcmA6ROGw<https://www.youtube.com/watch?v=n4FcmA6ROGw>
Steinwurf's blog has also really nice tutos for instance : http://steinwurf.com/blog/2018-03-19-efficient-one-way-communication.html
EL

Cheers,

  Marie-Jose and Vincent

——— from the minutes ———
FEC and NC for dummies (Vincent)
See slides.           https://github.com/irtf-nwcrg/rg-materials/blob/master/interim-2018-09/nwcrg_interim_fec_for_dummies.pdf

nwcrg mailing list

[email-masked]<mailto:[email-masked]>

--

Emmanuel LOCHIN

---

From: "Morten V. Pedersen" <[email-masked]>
Date: Thu, 27 Sep 2018 13:42:14 +0200

Hi all,
Would be happy to support such efforts as much as we can.

I think perhaps also some of the people teaching NC/FEC could sit on 
some nice material.

All the best,
Morten

On 09/26/2018 01:20 PM, Vincent Roca wrote:
> Thanks you for the pointers. The video is great, I agree, but let’s 
> start with the easy side: a small number of simple, key ideas.
>> Le 26 sept. 2018 à 11:33, Emmanuel Lochin 
>> <[email-masked] 
>> <mailto:[email-masked]>> a écrit :
>>
>> proposed by the RITE project : 
>> https://www.youtube..com/watch?v=n4FcmA6ROGw
>>
>>> *Therefore we would like to come to IETF 103 with a first 
>>> consolidated list of ideas* (those
>>> (data, streaming, RT, nRT, delay sensitive, jitter sensitive) and 
>>> like Kerim said later on the topologies underlaying these 
>>> DO: It's dangerous to mention Shannon capacity as there are 
>>> situations where sending over the capacity may help. Do not overly 
>>> simplify things.
>>>
>>> CA: simple hints on coding are useful (e.g., Wikipedia introduction 
>>> to Reed-Solomon codes is too complex). Otherwise I'm lost with some 
>>> aspects such as relationships between FEC and congestion control 
>>> (what are the design issues rather than the solutions?).
>>>

---

From: Marie-Jose Montpetit <[email-masked]>
Date: Thu, 27 Sep 2018 07:47:00 -0400

Thanks a lot!

We are looking for something short and really simple. And maybe add a few pointers to longer format material.

mjm
Marie-Jose Montpetit, Ph.D.
[email-masked]
[email-masked]
+1-781-526-2661
@SocialTVMIT

> On Sep 27, 2018, at 7:42 AM, Morten V. Pedersen <[email-masked]> wrote:
> 
> Hi all,
> I think perhaps also some of the people teaching NC/FEC could sit on some nice material.
> 
> All the best,
> Morten
> 
> 
>>> Le 26 sept. 2018 à 11:33, Emmanuel Lochin <[email-masked] <mailto:[email-masked]>> a écrit :
>>> 
>>> That's an excellent idea! We could do little videos such as the ones proposed by the RITE project : https://www.youtube..com/watch?v=n4FcmA6ROGw <https://www.youtube.com/watch?v=n4FcmA6ROGw>

---

From: Muriel Medard <[email-masked]>
Date: Thu, 27 Sep 2018 12:05:51 +0000

Dear all,

We have a great amount of material on this, as we have been giving many tutorials and classes.

Best regards,

Muriel.

Sent from my Verizon, Samsung Galaxy smartphone

-------- Original message --------
From: "Morten V. Pedersen" <[email-masked]>
Date: 9/27/18 07:42 (GMT-05:00)
To: [email-masked]
Subject: Re: [nwcrg] About FEC and NC for dummies

Hi all,

All the best,
Morten

  Vincent

EL

Cheers,

  Marie-Jose and Vincent

——— from the minutes ———

--
Emmanuel LOCHIN