|
ABSTRACT
Development of network communication in a homogeneous sensor network environment is straightforward as the nodes can share message layouts simply by letting the compiler lay out messages in an arbitrary fashion and using the same executable code on all nodes. However, this simple approach does not usually work in a heterogeneous sensor network setting because different compilers may generate different message layouts, and different processors often have different basic type representations and alignments. The traditional solutions to this problem is to either require programmers to insert network-byte-order and host-byte-order conversions, or to use a compiler that automatically generates marshalling and unmarshalling routines. Unfortunately, these approaches are in-adequate for sensor networks because they are either error-prone and/or add significant overheads to already resource-constrained sensor motes. Instead, we propose a language extension --- network types --- which supports heterogeneous networking in a simple and efficient way. We have implemented network types in the nesC, the language of the TinyOS sensor network operating system and its applications. We have used network types to supports heterogeneous networking between micaz and telos motes (which have different alignment restrictions). We also show that our implementation introduces a negligible amount of overhead in runtime and code size. Network types have the additional benefit of requiring few changes to existing TinyOS code.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
Mark Yarvis, Nandakishore Kushalnagar, Harkirat Singh, Anand Rangarajan, York Liu, and Suresh Singh, "Exploiting Heterogeneity in Sensor Networks," in IEEE INFOCOM, Mar. 2005.
|
| |
3
|
Y. Ge, L. Lamont, and L. Villasenor, "Improving Scalability of Heterogeneous Wireless Networks with Hierarchical OLSR," in The OLSR Interop and Workshop, Aug. 2004.
|
 |
4
|
Philip Levis , Nelson Lee , Matt Welsh , David Culler, TOSSIM: accurate and scalable simulation of entire tinyOS applications, Proceedings of the 1st international conference on Embedded networked sensor systems, November 05-07, 2003, Los Angeles, California, USA
[doi> 10.1145/958491.958506]
|
| |
5
|
Lewis Girod, Jeremy Elson, Alberto Cerpa, Thanos Stathopoulos, Nithya Ramanathan, and Deborah Estrin, "EmStar: a Software Environment for Developing and Deploying Wireless Sensor Networks," in Proceedings of the 2004 USENIX Technical Conference, Boston, MA, 2004, USENIX, To appear.
|
 |
6
|
Jason Hill , Robert Szewczyk , Alec Woo , Seth Hollar , David Culler , Kristofer Pister, System architecture directions for networked sensors, Proceedings of the ninth international conference on Architectural support for programming languages and operating systems, p.93-104, November 2000, Cambridge, Massachusetts, United States
|
| |
7
|
"Information technology -- Abstract Syntax Notation One (ASN.1): Specification of basic notation," ISO/IEC Standard 8824-1:2002.
|
| |
8
|
Sun Microsystems, Inc., "RFC 1014 - XDR: External Data Representation," 1987.
|
 |
9
|
David Gay , Philip Levis , Robert von Behren , Matt Welsh , Eric Brewer , David Culler, The nesC language: A holistic approach to networked embedded systems, Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation, June 09-11, 2003, San Diego, California, USA
|
| |
10
|
"Information technology -- ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)," ISO/IEC Standard 8825-1:2002.
|
| |
11
|
"Information technology -- ASN.1 encoding rules: Specification of Packed Encoding Rules (PER)," ISO/IEC Standard 8825-2:2002.
|
 |
12
|
Sean O'Malley , Todd Proebsting , Allen Brady Montz, USC: a universal stub compiler, Proceedings of the conference on Communications architectures, protocols and applications, p.295-306, August 31-September 02, 1994, London, United Kingdom
|
 |
13
|
Eric Eide , Kevin Frei , Bryan Ford , Jay Lepreau , Gary Lindstrom, Flick: a flexible, optimizing IDL compiler, Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation, p.44-56, June 16-18, 1997, Las Vegas, Nevada, United States
|
| |
14
|
Christian Huitema, "MACROS: Highlights of an ASN.1 Compiler," Tech. Rep. Internal working paper, INRIA Project RODEO, 1991.
|
| |
15
|
Jon Siegel , Dan Frantz , Hal Mirsky , Raghu Hudli , Peter de Jong , Alan Klein , Brent Wilkins , Alex Thomas , Wilf Coles , Sean Baker , Maurice Balick, COBRA fundamentals and programming, John Wiley & Sons, Inc., New York, NY, 1996
|
| |
16
|
M. Kirtland, Designing Component-Based Applications, Microsoft Press, 1999.
|
| |
17
|
"Information technology -- Programming languages -- Ada," ISO/IEC Standard 8652:1995.
|
| |
18
|
|
| |
19
|
Philip Levis, Sam Madden, David Gay, Joseph Polastre, Robert Szewczyk, Alec Woo, Eric Brewer, and David Culler, "The emergence of networking abstractions and techniques in tinyOS," in First Symposium on networked system design and implementation (NSDI04), San Francisco, California, USA, 2004, pp. 1--14.
|
 |
20
|
|
|