Internet 0 — Inter-Device Internetworking

Internet 0 — Inter-Device Internetworking

Internet 0 — inter-device internetworking R Krikorian and N Gershenfeld The assumptions behind Internet architectures do not scale to small devices — they have a baseline cost that is still too high for small, few-dollar, embedded objects. This barrier either leaves many devices network disenfranchised or encourages the creation of segmented networks. Internet 0 attempts to enable pervasive computing and networking on the embedded level by providing the Internet protocol as a communications substrate, and, through the use of an end-to-end modulation scheme, to speak to devices. I0 is a framework to bridge together heterogeneous devices via IP in a manner that is still compatible with designing globally large computer networks. 1. Introduction embodiment of a Web client. An engineer can attach a light While the Internet has introduced new networking switch to another pin on the parallel port (this time an input technologies and communications methods, its reach has not one), author software that monitors that pin, and when the pin extended far below fairly computationally intensive devices state changes issue a Web request to the computer with the [1]. Most think the smallest computational unit that is light bulb. Internet-capable are those running full-blown operating systems (Windows, Mac OS X, Free DOS, Unix-compatible, etc) and are equipped with high-speed networking hardware I0 networks are based (Ethernet, IEE802.11, etc). Unfortunately, this leaves a disfranchised group of devices — those which are too small, around seven basic tenets too embedded, or thought to be too ‘simple’. This paper introduces Internet 0, a framework to bring networking to that forgotten class. While this light bulb and switch is a functioning solution for network-enabled control, it underscores how the Internet has John Romkey is famous for creating the first Internet ‘device’, failed at ‘interdevice internetworking’. The above example a toaster that could be turned on and off over the Internet, in requires two fairly expensive network-enabled desktop-class 1990. To make that happen, Romkey spliced a power relay to computers (at a cost on the order of $1000 each) and each has his toaster and connected that to the parallel port of his to be individually configured to know how to make or receive network connected laptop. Unfortunately, this example requests from the other. The demonstration also assumes that illustrates exactly why nothing has changed in the last decade. both locations have either Ethernet or IEE802.11 and an IP An engineer asked to put an incandescent light on to the address issuing authority (either computational as a DHCP Internet in the present may do the very same thing. He or she server, or personal via a network administrator) — both of may simply splice a relay on to the AC power line running to which take a qualified IT department to set up and maintain. the light bulb, connect the relay’s switching line to a pin on the And finally, there is more than just the power consumption parallel port of the computer, then author a simple CGI script issues of the light bulb and switch themselves, but now also that takes input from an HTML button and then outputs state the watts of power required to power the computer’s CPU and to that pin. hard drives. Taking this particular example a bit further — consider creating a light switch somewhere else in the building (or even I0 attempts to solve those issues by defining a framework that in another) that controls this light. Using the set-up described not only enables small devices to inter-communicate with each above as the light bulb, a light switch simply needs to be the other, but also inter-operate with any other machine, no 278 BT Technology Journal • Vol 22 No 4 • October 2004 Internet 0 — inter-device internetworking matter how large or small. I0 networks are based around seven that draw watts of power, these stacks are small and simple basic tenets: enough to be trivially embedded into a $1 8-pin microcontroller that consumes only milliwatts of power. • bringing the Internet protocol all the way to the device Moreover, that custom stack can be translated into a couple of level to make devices full network citizens, square millimetres of silicon that can be added to an ASIC. compiling standards and delayering network protocol • The fears of inefficiency in IP is derived from the requirement stacks to make them computationally efficient enough to of the IP header — any transmitted data must be prepended fit into embedded microprocessors, by 20 bytes of the IP header, plus an additional 12 or 20 bytes • allowing devices to talk to each other directly to remove for a UDP or TCP header respectively. If proportionally, data is the necessity of centralised servers and protocol not larger than that header, then transmitting IP may be converters, wasteful, detractors argue. However, on the byte level, IP compression is rather standard [3, 4] achieving header sizes as • advertising a device not only to the virtual network, but small as 5 bytes in long-lived TCP/IP flows (tighter also to the physical one to allow direct interactions compression may be possible by compressing the entire between objects and objects, and also objects and packet and not simply the header). As for power people, considerations, power does not equal transmitted bits, rather, power is related to receiving bits. A sender and receiver can • slowing down networks to decrease network complexity agree on a strategy for the receiver to turn on its amplifier to and therefore simplify network access, listen for a low signal at a particular time in order to be more • using the same modulation scheme across many different power efficient. media so that device designers can be free to choose their preferred hardware medium while not being isolated IP on its own, however, is not that useful as most network from devices that use another, applications tend to use IP to wrap the user data protocol (UDP) [5] or the transmission control protocol (TCP) [6]. While pushing the engineering politics of open standards to • there is much debate on which protocol is the correct one to inspire competition not in differing architectures, but in use in particular situations (consider a light switch based on differing network services. UDP versus one based on TCP — the UDP-based switch requires much less bandwidth, however on a congested There are many other standards which aim to do the same network where the light switch’s packet is dropped, the person thing — everything from CAN bus for the transportation toggling the switch may need to press the button again, unlike industry, LonWorks for building automation, and sensor a TCP-based switch which would handle the negotiation itself; networks, I2C for inter-IC communication, etc. Each one of Bauer and Patrick propose a human-factors extension to the these embody portions of the seven listed above, but none, ISO/OSI network model [7] that formalises scenarios just as except I0, has all characteristics. The Internet has scaled that), either can be implemented on a small scale. TCP does through orders of magnitude in both size and speed while the require more state than UDP; however, implementing TCP device network standards have yet to attempt global naming does allow for trivial interoperability with standard network and routing. applications such as Web browsers. 2. IP to the leaf node We assume that all data is transmitted to I0 nodes in a serial Historically, engineers have stayed away from using native fashion — specifically using the serial line protocol (SLIP) [8] Internet protocols, in all portions of an embedded device (the predecessor, and simpler, sibling to the point-to-point network or system, out of fear that the implementation of the protocol (PPP) [9] which is currently used on most dial-up and stack was too difficult or that the use of IP was inefficient. This some wired connections to ISPs). SLIP specifies a start byte mentality has unfortunately left device networks in a myriad of that is used to frame a packet that is sent over the line making different protocols — almost resembling the disparate it very simple for an I0 processor to pick out the start of the computing networks in the early days of the Internet. To packet. At no point does the I0 processor need to buffer the rectify computer networking, the Internet protocol [2] was entire packet or even the packet header in memory (an introduced as the lowest common denominator — any implementation is free to do so, if it wishes, but it is not computer that wishes to join an IP network simply needs to necessary), it can simply read and process the packet as it prepend all data it transmits with a 20 byte IP header, and any streams in. While it streams in, the software only needs to network technology simply needs to carry packets as small as keep track of a few bytes of state — a 16-bit sum of the packet 576 bytes. This type of abstraction allows for any computer to header (used for checksum verification), the source IP address, talk to any other computer on the Internet without knowledge and the destination IP address. Once the checksum can be of the networking technology that interconnects them. confirmed to be correct, the processor can determine whether the packet is destined for it. If not, it can simply ignore all I0 uses micro-IP stacks that are compliant enough with incoming bytes until the next SLIP start byte. All IP header conventional Internet protocol stacks, thereby enabling any I0 processing can be performed with only 10 bytes state and device to talk to any other device that speaks IP — all in a through use of accumulated operations.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    7 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us