2017 Kodo Inside Demos

An important goal in Steinwurf is to provide software libraries that enable others to accelerate time-to-market or build out proof-of-concept demos. One of our key software libraries is Kodo which implements erasure correcting codes (ECC) also known as forward erasure correcting (FEC) algorithms.

Today, ECC or FEC plays an important role in many communication and storage systems - typically providing increased protection against loss of data. However, with the introduction of next generation ECC/FEC algorithms such as Random Linear Network Coding it is an exciting time to witness the new and innovative usages of ECC/FEC.

Therefore, as we are approaching the end of 2017 we want to high-light a few of the novel demos built by our partners and colleagues using Kodo.

Video on Demand meets coded caching

Cadami demonstrates video-on-demand streaming to 30 tablets via WiFi. The movies in the library available have an average video rate of 2.5 Mbps. The throughput required to deliver a reliable service to all clients is 75 Mbps. The wireless access point is configured to 20 MHz with a theoretical rate of 72 Mbps. Conventional streaming technologies are therefore unable to deliver a reliable service without reducing the video quality. Cadami’s Coded Caching massively reduces the data rate on the network, for this demo by a factor of 3. This allows to demonstrate a reliable video service without interruption of playback. The coded caching solution converts the unicast streams used for conventional video-on-demand transmission into multicast traffic. The Kodo software protects multicast traffic against packet-loss on the WiFi network. Kodo removes the need for a complex reliability protocol. Being very efficient with the available resources at the client, Cadami can run the Coded Caching solution on mobile devices without draining too much from the battery. Among others, the demo was presented at the ICC Workshop on Advanced Caching in Wireless Networks, at a colloquium at the Institute for Broadcasting Technology (the research centre of the German broadcasters) and the innovation days at Thales.

Take a look at their demo:

Visit Cadami’s website at http://cadami.net/ for more information on their solutions.

Reliable and Agile Distributed Cloud Storage

This demo was shown at IEEE 5G Summit in Dresden (September 2017). To demonstrate the power of Random Linear Network Coding (RLNC) for repairing damaged equipment or data corruption in distributed cloud storage, Chocolate Cloud’s team created a demonstrator where visitors of the event were challenged to try and be faster than the system repairs lost data, by shooting storage nodes and reaching the so called ‘Hall of Fame’. Only a few succeeded during the IEEE 5G Summit, but all visitors got the opportunity to explore the speed and efficiency of the cutting-edge technology like RLNC compared to traditional solutions using Reed-Solomon codes.

RLNC can repair losses and data corruption from hardware failures much more efficiently (using less network resources) and by distributing the processing costs across various devices (less complexity in various devices, less use of memory in any single device). RLNC not only optimizes the storage but also opens opportunities to aggregate multiple sources of data to speed up download of content – a very important feature as 5G networks are increasingly combining their storage and network applications and aiming for lower latency (faster response to users).

Chocolate Cloud’s team has develop core technologies and solutions to harness the power of RLNC in multi-cloud and distributed storage scenarios. Our engineering team has used Kodo for the encoding of data fragments at speed, while developing the critical algorithms, networking policies, and system engineering to exploit the new capabilities provided by RLNC.

Checkout Chocolate Cloud’s blog post and follow their twitter account for more news on their activities.

Network Coding Powered NFV for Video Streaming

In this demo a webcam is streaming a live video from computer to another through an intelligent network. The different behaviour of a video stream through a network with and without losses with different coding schemes. The central element is a touch screen with a schematic of the system where users can set losses on two data links. Graphs show the inbound and outbound data of each of the switches and they can display the loss on each link. It is possible to apply different coding schemes, Reed-Solomon and Network coding, with the use of Software Defined Networking. Each coder is running in a virtualized environment in a computer directly connected to the switches. When adding losses to the data path users can see visual impairment of the video stream when transmitted in an uncoded fashion. But with the two coding schemes the data can survive even a lossy environment. Furthermore, the graphs of the total data show another advantage of Network Coding which can add additional redundancy in the middle hop.

Visit ComNets here to find more cool demos by them.

Reliable Multicast with D2D Cooperation

The Nokia Stadium Experience Demo was shown in Barcelona Mobile World Congress 2017. It showcases a reliable streaming of a video file through an emulated 5G network, with a switch to toggle the cooperation between the client nodes that are listening. When there are losses in the channel, the use of Network Coding and Cooperation allow the video to be displayed seamlessly in each client. However, when there is no cooperation, the video is displayed with errors.

Visit ComNets here to find more cool demos by them.

P2P assisted VoD streaming with network coding - Coded WebRTC

This demo is a browser based application using only pure JavaScript without any third party libraries. This makes it possible to run the application in any browser, even on mobile devices. The application can stream a movie from the content server the old fashioned way (HTTP download). It is also capable of creating P2P connection with WebRTC to other browsers that are watching the same movie. The application uses network coding in the application layer to encode and decode the data that is traveling through the network and stored in the application’s local cache. Kodo is used for coding. With emscripten, Kodo is compiled to JavaScript and this version runs in the browser. The demo at CES and CCNC showed that the current server-client based content distribution puts high load on the servers, while P2P assisted streaming can lower this load. Furthermore using network coding server load can be further decreased. This P2P assisted VoD streaming with network coding won a demonstration award at CCNC.

Visit ComNets here to find more cool demos by them.

Previous
Previous

Steinwurf at Mobile World Congress 2018

Next
Next

Keeping Things Up-to-date - Efficient File Distribution over Wireless Networks