by o1iver on 10/23/12, 8:29 PM with 42 comments
by tomstokes on 10/23/12, 9:28 PM
They haven't improved the underlying link rate at all. In fact, the FEC overhead is going to reduce the effective link rate. However, in some edge-case high packet loss scenarios, the reduced packet loss will more than make up for the reduced effective link rate.
by wmf on 10/24/12, 12:47 AM
by guelo on 10/23/12, 11:21 PM
Edit: Not RFPs, duh
by oconnor0 on 10/23/12, 9:28 PM
by zackbloom on 10/23/12, 9:55 PM
by Inufu on 10/24/12, 9:56 AM
Basically, you split your data into blocks, XOR random blocks together and the client can recreate the data by solving the equation of which blocks where XORed with which.
A good tutorial is here: http://blog.notdot.net/2012/01/Damn-Cool-Algorithms-Fountain...
And a fast implementation: http://en.wikipedia.org/wiki/Raptor_code
by stephengillie on 10/23/12, 9:24 PM
by potkor on 10/24/12, 12:27 PM
This problem is very common but it wants fixing on the L2 and not TCP. Turning up the FEC on the L2 would reduce its capacity even further though since more of the bandwidth is taken up by the FEC (and so does this TCP level FEC).
3G gets it wrong on the other extreme, it pretends to always have 0% packet loss, your packets just sometimes show up 30-100 seconds late and in order.
by delinka on 10/24/12, 2:45 AM
Let's suppose you have a mathematical process that outputs a stream of [useful] data. The description of the process is much, much smaller than the output. You can "compress" the data by sending the process (or equation) instead. Think π. Do you transmit a million digits of π or do you transmit the instruction "π to a million digits"? The latter is shorter.
Now, reverse the process: given an arbitrary set of data, find an equation (or process) that represents it. Not easy for sure. Perhaps not possible. I recall as a teenager reading an article about fractals and compression that called on the reader to imagine a fractal equation that could re-output your specific arbitrary data.
If I've totally missed the article's point, please correct me, but explain why it also talks about algebra.
EDIT: I re-read and noticed this: "If part of the message is lost, the receiver can solve the equation to derive the missing data." I can see the FEC nod here.
Guh. I guess I'm blind tonight. "Wireless networks are in desperate need for forward error correction (FEC), and that’s exactly what coded TCP provides." I cannot for the life of me understand why they'd need to keep this a secret.
by mikepurvis on 10/24/12, 12:41 AM
They have a patent on this: http://www.google.com/patents/US20120201147
(Disclosure: I was an intern there in 2009, when it was IPeak Networks.)
by Jabbles on 10/24/12, 10:31 AM
Obviously this is a much weaker and less efficient solution that what is proposed in the paper, but this would be trivial to implement. I believe netem allows you to simulate this.
by leif on 10/24/12, 1:45 AM
Also, how were we not doing this already?
Also, I need a writer. Whoever wrote this up made it sound WAY cooler than when I explain error correcting codes.
by lovamova on 10/23/12, 9:29 PM
It also means less power consumption on mobile phones. There will be no need to increase signal power to get better speed or voice quality.
by dnos on 10/24/12, 1:57 AM
I wonder if something along the lines of old-school Parity files would work in the packet world? Basically just blast out the packets and any that were lost, you just reconstruct using the meta-data sent with the other packets.
by codex on 10/23/12, 11:55 PM
by codex on 10/24/12, 5:15 PM
by liamzebedee on 10/24/12, 6:45 AM
by Schwolop on 10/24/12, 6:12 AM
by Snapps on 10/23/12, 10:59 PM