Hobbits, or There and Back Again:
A Lightweight, Multiclient Wire Protocol For Web3 Communications
Zak Cole, Distributed Systems Engineer
Matt Elder, Software Engineer
Ethereum 1.0 introduces RPLx, a unique protocol suite which defines the manner in which nodes participating within a network become aware of one another, establish a handshake, and pass messages between one another. While RLPx provides a transport layer for ÐΞVp2p, which primarily addresses application layer logic, the implementation has been unable to offer a diverse degree of functionality capable of adequately addressing the demands of an ever-scaling software ecosystem.
The Web3 space is continuing to grow - offering a wide array of emerging software stacks, such as IPFS, libp2p, and an array of additional communications protocols which attempt to provide generalized and multipurpose application layer logic within a burgeoning distributed environment. The demands of such solutions require a similarly robust wire protocol that is modular in nature, simple by design, and robust in its capabilities.
With this in mind, we present Hobbits, a novel wire-level transportation protocol for next-generation Web3 communications based on Binary JSON (BSON), a binary-encoded serialization of JSON-like documents, which is intended to be lightweight, modular, and versatile enough for future implementations.