Practical Implementations of Network Coding


Lecturer: Professor Frank Fitzek

Main lecturer:
Professor Frank Fitzek

Assistant: M.Sc. Juan Cabrera

M.Sc. Juan Cabrera

Assistant: Dipl.-Ing. Sandra Zimmermann

Dipl.-Ing. Sandra Zimmermann


Course will be held partially online due to current corona situation.
More information can be found in TUD Aktuelle Hinweise COVID-19


This course introduces the students to the challenges and approaches of the state of the art implementations of network coding. The course is taught not just through lectures, but also with hands-on exercises using the Kodo software library. Kodo is available as a C++ and Python library, and also as a web tool. Therefore, students with different programming preferences will be able to approach it. 

The initial lectures refresh the knowledge of the students of the theoretical background of network coding, e.g., the min-cut max-flow of a network, inter-flow network coding, and intra-flow Random Linear Network Coding (RLNC). The student is then introduced to the state of the art software library Kodo and the advanced implementations of network coding such as systematic, sparse, tunable sparse, sliding window, etc. The course also covers the benefits of network coding in distributed storage applications. By the end of the course, the student will be introduced to advanced applications of network coding, e.g., Coded TCP, MORE, FULCRUM.

The exercises will teach the students how to use sockets in python as well as the python bindings of the Kodo software library for implementing unicast and broadcast communication applications.

Language of the course and exam: English

Optional course, 8th semester

Module Number

ET-12 10 21


Written exam.

Examination schedule for the SS 2020:

Date: 12.08.2020

Time: 90 Min.

Room: HSZ/04/H

Time Schedule

Wednesday 6DS (16:40 – 18:10)
Thursday (Only 1.WO) 5DS (14:50 – 16:20)

[Please check the timetable and there may be new updates during the semester.]

Lecture Videos

Lectures and exercises:

08.Apr.2020L1OnlineDigital Inter Flow Network Coding: Motivation for network coding and use cases (5G, IoT, Wireless Mesh); Butterfly example; min cut max flow. Inter Flow network coding. Index Coding. Zick Zack Coding. CATWOMAN. Alice, Relay and Bob scenario under IEEE802.11 networks and asymmetric traffic
09.Apr.2020L2OnlineDigital Inter Flow Network Coding (continuation)
15.Apr.2020L3OnlineDigital Inter Flow Network Coding (continuation)
Analog Inter Flow Network Coding: Introduction to Physical-layer Network Coding (PNC) and Analog Network Copding (ANC); Basic concepts; Implementation on Software Defined Radios; Potential gains
23.Apr.2020L5OnlineDigital Intra Network Coding: Introduction to Random Linear Network Coding; Performance parameters field size and generation size; impact on resilience and latency; decodability for different field sizes; code variants: full RLNC/sliding window/sparse/seed/systematic/perpetual; overhead considerations for different field sizes and sparsity levels; heterogenous packet sizes; KODO and examples
29.Apr.2020L6OnlineDigital Intra Network Coding (continuation)
06.May.2020E1OnlineAnalysis of the activity, throughput, power, and energy per bit of a system with the cross topology when using forwarding, network coding, and network coding with overhearing. Analysis of the asymmetric Alice and Bob scenario.
07.May.2020E2OnlineE1 continuation. Basic UDP transmissions over WIFI and an implementation of Alice, Relay and Bob scenario with digital inter-flow network coding (both with Python)
13.May.2020E3OnlineIntroduction to KODO library. Full vector encoding ,decoding and recoding. Multi-path, Multi-hop full vector coding. Placement of recoder in multi-hop scenario.
20.May.2020L7OnlineDigital Intra Network Coding (continuation)
21.May.2020E4OnlineGetting started with Kodo. Available in here.
27.May.2020L8OnlineAnalog Inter Flow Network Coding - Continuation
03.Jun.2020L9Online Fulcrum Network codes - Continuation
04.Jun.2020E5OnlineKodo Code efficiency. Available in here.
10.Jun.2020L10OnlineIntroduction to PRAC; dealing with bit errors rather than packet ereasure
18.Jun.2020E6OnlineNetwork coding in multipath scenarios. Available in here.
02.Jul.2020E7OnlineNetwork coding in multihop scenarios. Available in here.
16.Jul.2020E8OnlineOnline Q&A

Further Material


Please check the OPAL link for the latest version.