3 ms·
I would suggest a forward error correction model. Your problem is not unlike satellite radio transmission (essentially a 1-way UDP transmission) and FEC is the
by brk 17y ago
I would suggest a forward error correction model. Your problem is not unlike satellite radio transmission (essentially a 1-way UDP transmission) and FEC is the method used in Sirius/XM to minimize audio garbling from brief signal loss.
Google should yield many results and more info.
If the connection is mostly reliable (just slow) you shouldn't have to chew up a lot of wasted packets with error-correction data.
- RiderOfGiraffes 17y agoI'm not sure how FEC is going to help, unless I do this. Send lots of packets, bit the first bit of each packet is an error corrected byte of the file to be transmitted. Then if a packet gets lost I simply make up a random one and let the error correction deal with it. If I use 2 bit correction then I can lose two packets and still have uncorrupted transmission. Hmm. I still need to know how many packets I expect, how big the file is, and some sort of checksum to ensure that I haven't error "corrected" to the wrong value anywhere. It seems very complex compared with just a simple re-try of packets that haven't arrived. Advantage is that it's forward only, but that doesn't help much since I do have a two-way connection. I'll think about that though, because although it's non-obvious, I can see that it does potentially have advantages. Not necessarily in this specific case, though.