About
39
Publications
29,160
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
7,061
Citations
Introduction
Additional affiliations
June 2010 - April 2013
April 2003 - June 2010
April 2003 - January 2010
Publications
Publications (39)
In this position paper we explore a holistic approach for the integration of social and human-level concepts with all layers of the communication network. This integration is bidirectional - the social information can help inform and configure network-level parameters, while network information can contribute to the gathering and learning of social...
The problem of frame synchronization is formulated and investigated for multiple access channels (MAC). Several decision rules for locating the starting positions in continuously transmitted frames are proposed and compared, for both user- synchronous and user-asynchronous cases. It is shown that the common decision rule based on the correlation st...
We present a practical design of an RFID reader that is capable of reading multiple passive tags through joint decoding. The reader is implemented and analyzed using the GNU Software Defined Radio system. We use low frequency (LF) 125 kHz commodity MIT ID cards in the experiment, and discuss extensions to decoding high frequency (HF) tags. This des...
In this paper, we present the Connected Consumption Network (CCN) that allows a community of consumers to collaboratively sense the market from a mobile device, enabling more informed financial decisions in geo-local context. The mobile application allows one to log one's wish list and itemized list of transactions to form a social network around t...
The future is far from rosy in Jonathan Zittrain's The Future of the Internet and How to Stop It
TCP/IP is known to have poor performance under condi- tions of moderate to high packet loss (5%-20%) and end- to-end latency (20-200 ms). The CHART system, under development by HP and its partners under contract to the US Defense Advanced Research Projects Agency, is a care- ful re-engineering of Internet Layer 3 and Layer 4 proto- cols to improve...
Information storage and storage sharing are key components of modern networked computer systems. Mobile devices such as PDAs and cell phones normally have very limited storage capacities compared with PCs or laptops, while storing a large number of media objects (such as e-books, pictures and videos, etc.) on mobile devices could take a lot of spac...
In this paper, we describe the networking and distributed systems challenges and opportunities that are present in adoption of information and computing technology (ICT) in the developing world, and illustrate connections between these challenges and current distributed systems and networking research programs. We suggest that this agenda form a co...
Given a mobile mesh network, we attempt to address the question of which nodes are accessible at any point in time through some path from a given node. From the viewpoint of some node in the mesh network, we claim that it is impossible to deterministically infer which other nodes are still accessible through some path from the current node. By form...
In this demonstration we present SnapN'Share, the first sample application of a new platform implementing a wireless, peer-to-peer information system that bypasses the need for any centralized servers, coordination, or administration. SnapN'share runs on wireless pocket devices as well as stationary computers, and enables users to generate and seam...
Cooperative diversity has been recently proposed as a way to form virtual antenna arrays that provide dramatic gains in slow fading wireless environments. However, most of the proposed solutions require distributed space-time coding algorithms, the careful design of which is left for future investigation if there is more than one cooperative relay....
Collaborative environments range from the very primitive (IM) to a rich mixture of media, computation, and three-dimensional graphics. Critical to all such systems is scalability: how many users can a system support in a single session? How many simultaneous sessions can be supported? These questions ultimately reduce to bandwidth and computation c...
Croquet is a collaborative 3D platform that allows users to work together to create and share ideas. We are developing an architecture that incorporates the ideas of filters and controls for 3D to solve this problem. Our model uses the Croquet 2D portals as view filters that can modify the nature of the content displayed on the other side of the fi...
Croquet is a collaborative 3D platform that allows users to work together to create and share ideas. From the beginning we have worked to ensure that the Croquet interface remain as modeless as possible. This allows the user to be most productive with the fewest errors. This is even more important in a collaborative 3D environment. The modeless nat...
Underlying Croquet is an object-oriented semantics based on active objects that have the capability of temporal reflection. That is, each object is aware and in direct control of its behavior in time. Croquet also directly supports replication of computation, allowing computation to be moved close to the point of interaction on demand, while mainta...
We propose a simple distributed method to find out the "best" end-to-end path between source and destination, among M possible relays. The method requires no explicit communication among the relays, assumes no prior knowledge of network geometry and is based on instantaneous wireless channel measurements and reciprocity. The success (or failure) to...
This paper defines a domain of study, some experiments and a research agenda to explore a topic we term viral radio. The premise is that we can make energy- and spectrum-efficient radio communications systems that scale (almost) without bound. We do this by treating the RF signals in a given space as a distributed optimisation process whereby each...
A new architecture like Croquet presents numerous opportunities and challenges to create useful interfaces to enable access to the underlying power of the system. In particular, our focus on an integrated 2D and 3D system ensures that we have a rich intellectual environment within which to explore. This experience is similar to the development of t...
Croquet is a computer software architecture built from the ground up with a focus on deep collaboration between teams of users. It is a totally open, totally free, highly portable extension to the Squeak (Ingalls et al., 2002) programming system. Croquet is a complete development and delivery platform for doing real collaborative work. There is no...
This paper presents a design principle that helps guide placement of functions among the modules of a distributed computer system. The principle, called the end-to-end argument, suggests that functions placed at low levels of a system may be redundant or of little value when compared with the cost of providing them at that low level. Examples discu...
The value of the Internet lies in its connections, but some connections are more valuable than others. Which matter most? Reed's Law can tell you.
on and consonance aside, because programmability enables such a wide range of possibilities, applying end-to-end arguments in a general, yet definitive, way may be impossible. Instead, the specifics of each particular active networking idea would benefit from evaluation in light of the end-to-end principle. Programmability's Effect on Design-time F...
A design principle aimed at choosing the proper placement of functions among the modules of a distributed computer system is presented. The principle, called the end-to-end argument, suggests that certain functions usually placed at low levels of the system are often redundant or of little value compared to the cost of providing them at a low level...
In this paper, a new approach to coordinating accesses to shared data objects is described. We have observed that synchronization of accesses to shared data and recovering the state of such data in the case of failures are really two sides of the same problem—implementing atomic actions on multiple data items. We describe a mechanism that solves bo...
Synchronization of concurrent processes requires controlling the relative ordering of events in the processes. A new synchronization mechanism is proposed, using abstract objects called eventcounts and sequencers, that allows processes to control the ordering of events directly, rather than using mutual exclusion to protect manipulations of shared...
Within a restricted area such as a single building, or a small cluster of buildings, high-speed (greater than 1 Mbit/s) data transmission is available at a small fraction of the cost of obtaining comparable longhaul service from a tariffed common carrier. Local area networks use this low-east, high-speed transmission capabality as the basis for a g...
Thesis. 1979. Ph.D.--Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science.
The design of computer systems to be concurrently used by multiple, independent users requires a mechanism that allows programs to synchronize their use of shared resources. Many such mechanisms have been developed and used in practical applications. Most of the currently favored mechanisms, such as semaphores and monitors are based on the concept...
Fluid Voice is a community based infrastructure free, mo-bile communication system based on ad-hoc wireless over 802.11. Fluid Voice exploits the inherent broadcast nature of the wireless medium. The system is designed for coordi-nating people in an outdoor setting, spreading news during emergency response and providing purely opportunistic so-cial...