In this post we highlighted why protocols matter when dealing with distributed systems and we also gave a little introduction to our alternative to the HTTP protocol called IAP that was developed as part of our ongoing project at Nanosai.com.
The IAP protocol was mainly designed with 3 specific goals in mind: To bring about real-time democratization of distributed computing, versatility and intelligence to the Internet as a whole. We call this version of the Internet “The Grid” which we hope will be powered by our open Java toolkit for advanced distributed systems called Grid Ops.
To meet the real-time democratization goal, we have designed IAP’s encoding ION to be binary and as fast and compact as possible. Having compared ION to other binary encodings and JSON, we strongly feel that we are closer to achieving this goal.
To meet the versatility goal, we have designed ION to be functional as a general purpose data format which can easily be used as substitution everywhere XML or JSON are currently being used. Similarly, IAP is designed to be an extensible network protocol, with a protocol base that can be extended with custom semantic protocols (subprotocols). And finally, IAP is designed to handle multiple message exchange patterns, and not just the request-response pattern of the HTTP protocol.
To meet the intelligence goal we are designing a set of IAP semantic protocols for the most common Internet communication use cases. These set of protocols should make the Internet much more ”plug-and-play”-ish, and big step closer to the “semantic web” — Web 3.0 or whatever you want to call it!
In the future we have plans to add more advanced distributed interaction options, but to avoid over promising and disclosing too much of our future business plans; we cannot go into too much detail at this point. It took us almost 2 years to pivot away from the original architecture design to a more ambitious architecture that we hope will help shape a new direction for a smarter and more versatile distributed computing at scale.
Finally, we will soon announce a release date for our first set of infrastructure services for developers working in distributed systems. If you are interested in getting update about our public launch please