Hacker News new | ask | show | jobs
by walrus 4110 days ago
Clever solution to a unique problem!

> So how does this help with queue oscillation? Simple: We generate a few extra "spare" combination packets, so that we now have more equations than variables. This means we can afford to lose a few combination packets in overflowing queues or elsewhere – and still get all of our original packets back.

If I understand correctly, this would also work with a more traditional coding scheme (block coding or convolutional coding). I'm curious if there are plans to take advantage of the properties of network codes in the future.

1 comments

"Network code" as described here isn't the academic definition, I think he's just describing colloquially "i'm using a code in my network". The technical definition is a Packet Erasure Channel [1], which any erasure code [2] can deal with. Network coding is a more unexplored technique where routers in the network combine packets in various ways that are better than regular routing: see the example at [3].

[1] http://en.wikipedia.org/wiki/Packet_erasure_channel

[2] http://en.wikipedia.org/wiki/Erasure_code

[3] http://en.wikipedia.org/wiki/Linear_network_coding#The_butte...

The vendor mentioned in the article, Steinwurf ApS, says on their website that "Our products are based on Random Linear Network Coding[...]" [1]. In this case, it looks like they're using it as an erasure code, though.

[1] http://steinwurf.com/technology/

Their phrasing appears to state they use TCP/NC, a network coding-based variant of TCP introduced in an academic paper by (some of) the same people behind this initiative:

http://arxiv.org/pdf/0809.5022.pdf