Couple of years ago I had this idea that most REST calls I had in my app could easily fit a single packet if encoded in binary.<p>I rolled my own framework for fun that did REST-style communication but sans TCP, HTTP and JSON.<p>This improved latency and efficiency by couple orders of magnitude. I would like something that did this that I could use directly without having to write my own framework.
This is about the fourth time something like this has been built.<p>QNX native networking over IP (protocol 106) is probably the closest to Homa. It's an RPC system, intended primarily for local networks, although it will extend across the Internet. Message based. No head of line blocking between different RPC calls. It's still used in Blackberry/QNX.<p>Is there a spec for Homa? Did they get a new protocol number from IANA? [1] This needs an RFC before it gets out into the wild.<p>[1] <a href="https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml" rel="nofollow">https://www.iana.org/assignments/protocol-numbers/protocol-n...</a>
Not directly related to Homa, but I'd like to point that the paper's author and presenter is none other than TCL programming language original designer John Ousterhout [1].<p>[1]<a href="https://web.stanford.edu/~ouster/cgi-bin/home.php" rel="nofollow">https://web.stanford.edu/~ouster/cgi-bin/home.php</a>
I feel like Homa's competiton isn't TCP, but instead is SCTP.<p>I know that SCTP isn't very popular, but it is an old standard and solves the ahead-of-line blocking issue. Linux does support SCTP, and maybe more expensive routers support it as well (honestly, I haven't experimented much with SCTP on networks...).<p>SCTP is built on top of IP. So the main issue with SCTP is firewall / NAT / etc. etc. which are built on top of TCP / UDP instead. Homa, being an alternative protocol, would be very similar to SCTP (in that routers wouldn't work on it), except its decades younger.
This heavily reminds me of Plan 9's IL[1] which was used to increase the performance of the 9p protocol, a file based RPC protocol, over local networks.<p>[1] <a href="http://doc.cat-v.org/plan_9/4th_edition/papers/il/" rel="nofollow">http://doc.cat-v.org/plan_9/4th_edition/papers/il/</a>
It would be really nice if articles about protocols, even if talking about implementation details, would include or link to a representative traffic sample / .pcap of said protocol.
Nowhere in this site is encryption mentioned, and that probably makes it a non-starter - Cryptographic data integrity is a must for modern RPC, if not also confidentiality.