Chirp is a simplified messaging scheme geared for the Internet of Things where many basic devices will not have the muscle to process traditional protocols such as IPv6, says author Francis DaCosta.
In my last blog, I described why Internet of Things traffic must be self-classified if we are to wring meaning from billions of devices. Those self-classification techniques work fine with IPv6 -- but IPv6 has too much overhead for the vast majority of IoT devices. Instead, I suggest a minimal data format I call Chirp.
With Chirp only the most important elements of an IoT signal need be sent or received. A Chirp can consist of a classification of data type, some minimal (non-unique) addressing, the actual value or reading, a directional “arrow” indicating whether this is a message intended for a device or for a server, and a minimal checksum to protect against garbled transmissions.
As I explained in my book, the low overhead of a Chirp is especially important for the IoT because many devices will send or receive only a tiny squib of data with each message -- often only 8 bits or fewer for a simple reading or status. This minimum message requires the addition of only 3.5 bytes of overhead to form a viable Chirp. Contrast this with roughly 40 bytes of overhead for an IPv6 packet to encapsulate that same 8-bit-or-less message, and the efficiencies become clear -- not to mention the processor power and memory needed to manage an IPv6 connection.
A Chirp device need not be concerned with managing a higher-level client-server relationship. Instead, Chirps may simply be repeated when a reading or state changes. Since the overwhelming majority of IoT messages are each individually uncritical, the success of any one Chirp transmission is of no consequence. For those applications that are critical -- a video surveillance data stream, perhaps -- IPv6 is available.
Obviously, these minimal Chirps can’t traverse the traditional Internet in their native form -- by definition, they lack the required protocol. So IoT networks will need specific devices I call Propagator Nodes to aggregate Chirp streams for connection to the Internet. These Propagator Nodes, similar to routers or access points, will have the processing power, memory, and network interfaces to manage higher-level protocols.
Because Propagator Nodes concentrate many Chirp streams into small data flows, the IPv6 overhead is no longer onerous, and is in fact necessary for servers to be able to discover and subscribe via the Internet to data sources of interest. This approach confines most protocol overhead to a relatively small number of networking nodes and thus vastly expands the number of simple devices whose lightweight Chirps will unlock the true potential of the Internet of Things.
— Francis DaCosta is an engineer and the author of Rethinking the Internet of Things.