Giter Site home page Giter Site logo

rg-materials's Introduction

rg-materials

Repository for the NWCRG meeting materials (agenda, presentations, minutes) used during IETF meetings and Interim meetings. Related Internet-drafts are accessible from the NWCRG datatracker web site.

Note that, in addition to this repository:

Eight simple ideas to start understanding FEC and Network Coding for newcomers

Idea 1-

"We focus on networks where a packet either arrives or is lost"

  • we're not at PHY-layer, we are above in the protocol stack and potential bit errors have either been fixed or the packet dropped

Idea 2-

"Encoding consists in adding redundancy (i.e., "repair packets") to the flow"

"Decoding consists in using redundancy (i.e., using "repair packets") to recover from packet losses"

Idea 3-

"Math is not an obstacle to understand FEC and NC"

  • it's essentially a matter of linear combination and linear system resolution (e.g., via basic Gaussian elimination)
  • details (e.g., computations in a certain Finite Field) can be complex, but mastering them is not required

Idea 4-

"There are roughly two categories of FEC codes: block codes and sliding window codes"

  • block: segment the packet flow into blocks and apply FEC encoding per block, independently
  • sliding window: an encoding window slides progressively over the packet flow, the encoder computes a linear combination of packets in this encoding window

Idea 5-

"With large independant data objects, block codes are great, with streams of real-time data that have time correlation, sliding window codes are preferable"

  • ... because splitting the application flow into blocks delays the moment when "repair packets" can be generated!
  • code performance also depends on the type of losses (independant, uniform losses versus correlated, bursty losses)

Idea 6-

"Some codes are restricted to a single encoder (e.g., sender) and single decoder (e.g., receiver)"

  • usually called FEC

"Other codes can be used within intermediate nodes (i.e., multiple encoders)"

  • usually called Network Coding (NC)

Idea 7-

"With NC, network equipments can perform FEC encoding to improve network usage"

  • trivial example where a network equipment could reduce traffic (it sends a single "P1 XOR P2" packet (using multicast or broadcast) instead of sending both P1 and P2):
Alice        Wireless router          Bob    
  |    --P1-->      |                 |    
  |                 |     <--P2--     |    
  | <--P1 XOR P2--- | ---P1 XOR P2--> | (multicast or broadcast)
  |                 |                 |
recover P2                     Recover P1

Idea 8-

"One can use FEC and NC in a congestion friendly manner"

  • only stupid persons will further overload a congested network with even more redundant traffic in the hope it may help!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.