4 ms·
Great idea! But leads to an observation/question: Why do so many protocols exist in the first place? I think it would be a great idea for a protocol engineer
by peter_d_sherman 7y ago
Great idea!
But leads to an observation/question:
Why do so many protocols exist in the first place?
I think it would be a great idea for a protocol engineer in the future to try to look at all known protocols, and try to compact and integrate them all into a
Single universal protocol, eliminating all redundant functionality...
Maybe someone has already done this, or is working on this... I don't know. If anyone has any ideas or knowledge in this direction, please feel free to post what you know...
- integricho 7y agoObligatory response: https://xkcd.com/927/ https://xkcd.com/927/
- bobbiechen 7y agoA "single universal protocol" sounds to me like you'd need at a minimum, a blob of data, with a header for length and how to interpret the data. Maybe if you flesh out the problem more you'd end up with something like this: https://tools.ietf.org/html/rfc791#section-3.1 https://tools.ietf.org/html/rfc791#section-3.1 What would it even mean to have a single universal protocol beyond IP? Layering on top of IP (TCP, UDP, and higher-level protocols like HTTP, DNS) is the way things already work. Not layering sounds like every application would just invent and parse their own protocols, which is even worse.
- p0cc 7y agoThis is like asking for a "universal vehicle". Some people want a truck while others want a forklift. It would also not be economical to make a truck extensible so that forklift components could be later tacked on. What vehicle you use depends on the goods you carry. Likewise, the protocols do different things at different layers. Some are nested like Ethernet/IP/TCP/HTTP. TCP ensures delivery while UDP does not.
- zamadatix 7y agoSuch a protocol would be so dynamic you'd just end up with nodes that are all unique in that no two nodes that aren't running the same OS/software run the same capabilities of "universal protocol". As a result you have the same problem now without the ability to categorize nodes by which features they actually support (currently covered by "protocols" which rely on simpler protocol abstractions to be passed by intermediate nodes that don't understand them).
- wpietri 7y agoThis is not how you should think about making something new. What you're optimizing for here is your experience. Your desire for tidiness. To make a real change in the world, you need to optimize for the experience of the people who will adopt the new thing. For example, how would people using the the web benefit right now from replacing 802.11, IP, TCP, and HTTP with one monster protocol that just did the same stuff? They wouldn't. And neither would most protocol implementers, because a) they have to throw out everything they know and learn it all again, and b) they'd have to rebuild everything that currently exists. And even if we push past that, it still won't work, because it's based on what I think of as the Architect's Illusion, the notion that a sufficiently smart person can just look at things and think real hard and have a perfect solution appear. The truth is that real products evolve over time as part of a dialog between and among users and makers. Even the simple paperclip, for example, evolved heavily. [1] If smart people can't get the paperclip right on a first try, there is no way they'll get a massive protocol stack right. And even if they did, next week somebody would come up with something new that doesn't fit, and we'd be right back where we were. [1] https://www.amazon.com/Evolution-Useful-Things-Artifacts-Zippers-Came/dp/0679740392 https://www.amazon.com/Evolution-Useful-Things-Artifacts-Zip...
- tomc1985 7y agoI'd pity the fools that would be stuck implementing such a complex protocol
- saber6 7y ago> Single universal protocol, eliminating all redundant functionality... This concept is dead on arrival.