I'm sure there is some developer out there who considers this take horribly naive, but like, here it goes. Writing dumb takes is how I learn.
I did Beej's networking guide. I also managed to transmit audio PCM frames from microphone, directly using UDP, to another device, using the C APIs mentioned in Beej's guide. It was fun. But ofcourse, in practice, nobody transmits audio this way, they use webRTC or something equally complicated.
In theory, I understand TCP is built on top because packet ordering or whatever, and webRTC is built on top because connections can be dropped and reused and stuff.
In practice, I wonder how much of this infra exists to bypass pesky bottlenecks like the fact many firewalls block UDP traffic.
If packet ordering is a concern, why not just flood the connection with many copies of each packet? If dropped connections is a concern, why not just resend everything when the connection drops? We have enough internet bandwidth to make the dumb solution work, why do you need a smart solution?
Maybe I will one day just write the code for the dumb solution. Not a priority right now.
Subscribe
Enter email or phone number to subscribe. You will receive atmost one update per month