Research



Through my research, I have explored various aspects of computer networking and distributed systems. Most of my work has been focussed on developing and implementing efficient techniques to scale networked systems. My areas of research have been peer-to-peer systems, mobile and wireless networks, network security and network measurements.

List of Publications

The following is a list of the different projects that I have worked on.

NICE Rover Energy-efficiency Secure Spaces Hierarchies SONIC NetCalliper I2O


NICE: A Cooperative Framework to Scale Multi-Party Applications


My thesis work defines NICE, which is a cooperative framework for scalably implementing distributed applications over the Internet. Applications in NICE are cooperative: they devote a part of their own resources to be used by any member of a cooperative group. We have designed a set of protocols and mechanisms that address different aspects of implementing such cooperative applications. The NICE protocols, in some cases achieve orders of magnitude performance improvements because of the cooperative nature of the protocols. The mechanisms in NICE do not depend on any special network support.

Using the NICE framework, we have defined efficient and scalable schemes for Secure Group Communication, Application Layer Multicast and Resilient Multicast. The NICE application-layer multicast protocol has been implemented and tested on the Inteernet with groups of size upto 100. We are currently implementing a video streaming service using the Apple media streaming server. We are also currently implementing the other components of this architecture. As part of our ongoing work we are working on incentive-based cooperation policies, on mechanisms to scalably check and enforce partnerships and on protocols to ensure privacy and integrity.

Papers/Tools



Rover: Location-Aware Computing for Wireless Environments


Rover enables location, time and context-aware applications for wireless devices that scale to very large user populations. Users intereract with the Rover system through client devices (Rover-clients) that typically are small handheld units with a wireless communication interface. Rover-clients can have great heterogeneity in capabilities in terms of processing, memory and storage, graphics and display and network interfaces.

The Rover server interacts with the clients to provide and manage the different service requests from the Rover-clients. To scale the Rover server operations to a very large client set, we have defined a new Action model which allows fine-grained, real-time scheduling of server operations.

Apart from system design, I have also been involved in project with a team of other students in implementing different aspects of the system.

We have implemented and demonstrated both outdoors and indoors version of Rover. In the outdoor case, we used a GPS unit attached the the clients to provide location service. It had an accuracy of less than 3 metres. For the indoor case, we have experimented with schemes based on signal-strength measurements from different access points. Using even simple techniques we obtained location within an accuracy of 1 metre. The accuracy can be further improved by using more sophisticated models which we have been working on.

Papers/Demos

Energy Efficient Wireless Networks


Battery power is a scarce resource in wireless devices, and therefore, needs to be conserved. In this project, we have defined energy efficient routing techniques for multi-hop wireless networks. Existing protocols for minimum energy routing chooses end-to-end paths depending on the battery capacity and transmission costs of the nodes on the path. However, they ignore the error characteristics of the links on the path. For reliable data delivery, data packets corrupted will be re-transmitted. Therefore, for energy efficient routing for reliable data transfer it is important to also consider the link error rates in choosing end-to-end paths.

Under both, the presence or absence of link layer re-transmissions we have defined schemes that choose more energy efficient paths than currently known schemes. We also showed that this technique is optimal for the case when link layer re-transmissions are present.

As traffic flows through the multi-hop wireless networks, the battery of the nodes gets drained and at some point, the network finally gets partitioned. The useful lifetime of a wireless network is the duration of time till it gets partitioned. Using our technique of choosing energy efficient paths we have defined routing protocols that improves the lifetime of the wireless networks over the currently best known schemes. Implementation of our scheme requires minimal extensions to existing routing schemes for wireless ad-hoc networks.

We are currently working on different extensions to our work ---- choosing energy efficient paths when it is possible to dynamically select transmission power levels to alter link error rates, implementing the mechanisms in a real world multi-hop wireless network. .

Papers

Secure Spaces


I define "Secure Space" as an enclosed area within which wireless devices can participate in secure group communication. A device is able to join a secure space group by the virtue of its location within the enclosure. The devices communicate with each other using IEEE 802.11 wireless LAN or other similar wireless access technologies. There are two important aspects of this problem --- (a) determining and authenticating the location of a wireless device at the granularity of a secure space, and (b) defining scalable mechanisms to (re)-distribute a common group key among the device inside the secure space, as new devices enter and existing devices leave the space.

I solve the location determination and authentication problem using signal strength based techniques. Results from actual wireless experiments show the feasibility of this scheme. I leverage scalable solutions for secure group communication in other environments to propose a hybrid scheme for the key redistribution problem.

Papers

Hierarchies for Multi-hop Wireless Networks


Hierarchies are useful techniques to scale applications. In this project, we defined a clustering-based scheme to create such hierarchies in the context of multi-hop wireless networks. By leveraging some specific properties of the wireless medium, the protocols guarantee a set of desirable properties in the hierarchy. We also observed that all these properties cannot be simultaneous met for general environments. We have demonstrated the scalability achieved using our hierarchy construction scheme, through both analysis and simulations.

As part of future work, we are using this hierarchical control structure to scale different applications in multi-hop wireless networks. Example applications that can be scaled using this hierarchy include service location and discovery, location management and routing.

Papers

SONIC: A Self-Organizing Network of Wireless Devices


This work defined protocols and mechanisms to self-organize a set of small wireless sensor devices, that are deployed for collaborative sensing applications. The sensor devices are equipped with wireless devices for UHF communication at low bandwidths and GPS interfaces to identify their position. Additionally, a few of the devices have very low bandwidth satellite interfaces over which the gathered data is sent back to remote command centers.

As part of this project, we defined and implemented a suite of protocols for end-to-end operations, which allowed remotely located users to interact with the sensors. The API exported by the sensor networks permitted users to dynamically update operational parameters, set special triggers and alerts for specific sensor attributes and various location-dependent functionalities.

We also implemented a simulation tool that highlights various features of the self-organizing protocol for the sensor devices.

Papers/Demos

NetCalliper: Network Measurements


The goal of this project has primarily been understand the dynamic characteristics of a network, and to look at how current practices, as well as new techniques, are applicable to the design and operation of computer networks. In this project, I developed a new technique to estimate the available and the bottleneck bandwidth for a network connection. We conducted experiments using the NetDyn tool on the Internet to validate the technique.

As a separate part of this project, I did some benchmarking of NetBSD TCP/IP stack processing overheads. The processing time measures the packet processing delays incurred by packets as they move from application space to Ethernet level frame processing in the kernel, and vice versa.

Papers

I2O for fast servers


This work was done as an intern at HP Labs (summer 1997) where we implemented Intelligent I/O (I2O) architecture on a (web) server machine. We split the TCP/IP functionality between the main processor and a specialized I/O card for faster response to client file requests. As part of this implementation on the main processor side, I implemented a fast path with zero data copies for the Windows NT kernel.

 


Last updated on Nov 2002 
-- Suman