New Hope for Pervasive ComputingMay 1, 2005 By: David Davies, OrderOne Networks Ltd., Chris Davies Sensors
Making pervasive computing a reality involves figuring out how to make very large networks work. Here's how OrderOne Networks is addressing the problem.
Pervasive computing is the holy grail of computer and network technology. It promises a world where communications and computation are everywhere, instantly available, virtually free, and capable of almost anything. Why doesn't pervasive computing exist today?
The problem is complexity. Unless a system is extremely well designed, as it grows larger it becomes harder to ensure correct operation. In ad hoc networks, for example, this complexity takes the form of system-wide flooding that overwhelms usable bandwidth. Complexity rears its head in chip design, large software projects, and large organizations such as the government, the military, and networks.
As a system grows bigger, the only way to ensure its correct operation is to impose additional structure and rules. Examples of these are design rules, functional blocks, bureaucratic procedures, rules of engagement, and protocols (e.g., TCP/IP). The imposed structure and rules serve to restrict the range of possible behavior for those units that make up the system. The bigger the system, the greater the restrictions, and the more time required for system management and maintenance. The time and resources spent managing these types of systems raise the costs of scaling far above the benefits it provides. Costs will kill a pervasive network as certainly as wholesale flooding; in a network of hundreds of billions of nodes, even the smallest cost per node adds up to a very large total cost. The marginal costs of adding a node to the network have to effectively be zero.
Requirements of a Pervasive Communication Network
Needing no human intervention is not enough. A pile of rocks doesn't need human intervention, but it's not very useful. A pervasive network should possess, at a minimum, the following characteristics.
It should be self-configuring. Regardless of size, structure, or mobility the network should be able to organize itself such that nodes in the network can establish connections and communicate with one another and the outside world. The network should organize wired nodes as easily as it does wireless nodes.
It should be self-healing. Pervasive networks should be capable of instant repair and re-routing around problem areas. If a network is split into parts, they should operate independently; if the parts are joined, they should operate as one.
It should support heterogeneous nodes. An extremely low-power mote should be able to share a network with a supercomputer. Any node should be able to connect to, or accept connections from, any node in a network of millions.
Connectivity should be instantaneous. Two new nodes joining a network of millions should be able to connect to each other across that network within moments.
It should have low bandwidth. The vast majority of available bandwidth must be set aside for actual payload packets.
It should require no human intervention. There should be no user management needed anywhere in the network, ever. This requirement keeps maintenance costs to an absolute minimum. For networks involving billions of nodes, even very limited human intervention on a per-node basis would make pervasive communication too expensive.
Current Approaches Don't Scale
Although this fact is not well known outside companies specializing in mesh networks, no current ad hoc point-to-point mesh network approach can scale past a trivial number of nodes (current mesh networks are limited to 400 or fewer).
There are three broad classes of networking protocols: flat, hierarchical, and location based.
Common flat routing protocols are ad hoc on-demand direct vector, destination-sequenced distance vector, fisheye state routing, and topology broadcast reverse-path forwarding. Flat routing protocols face scaling limitations as a result of how connections are established and maintained. A node X can establish a connection to another node Y in the network only if every node in the network is aware of how to get to Y. This causes network control traffic to grow exponentially as a function of network size. Large networks become impossible since all network bandwidth is needed for control bandwidth messages.
Most Read Articles