6 ms·
Seems like this would benefit from not using standard TCP (which assumes that a dropped packet is always due to congestion), and maybe use one of the WiFi retra
by steventhedev 10y ago
Seems like this would benefit from not using standard TCP (which assumes that a dropped packet is always due to congestion), and maybe use one of the WiFi retransmission protocols (the names are slipping my mind at the moment).
Might increase that bandwidth from 7kbps to something more comfortable.
- brian-armstrong 10y agoMaybe - in my experience with this, when the devices are within a foot or so, there really isn't much packet loss, maybe as low as 10^-6 or so. But I haven't really explored moving further apart. I suspect that this suffers from a sharp knee where it starts out reliable and then very quickly fades off. To be clear, the 7kbps is the raw frame throughput, not the effective rate with TCP. There are two ways I can see to boost this number. One would be to pack more bits into each symbol, e.g. to use a wider QAM mode. I find that in practice the degradation from using speaker/mic makes this somewhat impractical. The other would be to use a more broadband signal (the width of the the main audible channel is a few kHz). But this is also kind of undesirable since it has to compete with more interference across the spectrum and can also be a less pleasing sound.
- anindha 10y agoIs the packet loss the same when there is background noise?
- noselasd 10y agoPresumably the old V.42 protocol used for modems would be quite suitable for this - it does re-transmissions.
- 0xdeadbeefbabe 10y agoPPP would be more suitable, right?
- krallja 10y agoYes, but you will still have to run a network layer protocol on top of PPP.
- Cyph0n 10y agoCSMA/CA?
- aexaey 10y agoWiFi handles the same problem by having CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance) and MAC-level retransmissions: http://www.labs.hpe.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.mac.html http://www.labs.hpe.com/personal/Jean_Tourrilhes/Linux/Linux...