Current Research

Network Resource Allocation using Flexible Packet Processsing

Recent switch hardware proposals make it feasible to perform flexible packet processing inside the network. This allows operators to configure switches to parse and process custom packets headers using flexible match+action tables. As a result we have more insight and control over how packets are processed and routed. However, these flexible switches have limited state, support limited types of operations, and limit the per-packet computing in order to be able to operate at line rate. We are exploring key design principles to tackle the problem of network resource allocation within datacenters using these flexible switches. Collaborators:
Antoine Kaufmann
Simon Peter
Changhoon Kim
Arvind Krishnamurthy

Predictable Tail-Latency Systems

Modern datacenter applications struggle with the need to access thousands of servers while still providing a fast response time to the user. In these situations, the user's overall request is not complete until the slowest sub-request has completed, making it important to design network services that offer not just low latency but predictable latency. We are developing techniques for building systems that offer predictable response time. Collaborators:
Jialin Li
Dan Ports
Steve Gribble

High-Performance Transactional Storage

Transactional Application Protocol for Inconsistent Replication, or TAPIR, is a new protocol for linearizable distributed transaction built using replication with no consistency guarantees. By eliminating consistency, and thus coordination, from the replication layer, TAPIR provides the same transaction model and consistency guarantees as existing systems like Spanner with better latency and throughput. Collaborators:
Irene Zhang
Adriana Szekeres
Dan Ports
Arvind Krishnamurthy

Past Research

Discovering topic authorities on Twitter (August 2012)

Twitter is increasingly being used to find interesting trending topics and recent news. Search engines rely on different influence metrics of Twitter users to estimate the importance their tweets and to rank the tweets. Our aim in this project is the extraction of the "essence" of a user. More specifically, we are trying to infer the expertise of a user in Twitter and annotate him/her with meaningful tags which describe the user accurately. Once we get the accurate annotations for a user, we can use them to build various other services such as recommender systems, search for topical experts or authorities.
Live services: Whom To Follow and Who is Who.
Advisors:
Saptarshi Ghosh
Niloy Ganguly
Krishna Gummadi

Improving QoS in BitTorrent like p2p-based Video-on-Demand Systems (April 2011)

In this project, we attempt to gain insights into the BitTorrent dynamics from a purely experimental and simulation based study. We study how heterogeneity of peer bandwidth plays an important role in the overall performance of the system. Further, we investigate the application of BitTorrent protocols to Video-on-Demand systems. We propose topology optimization mechanisms to achieve high performance in networks and verify these by extensive simulations on our home-built simulator. Advisors:
Joydeep Chandra
Niloy Ganguly

Spam Detection in IP-Telephony Networks (July 2010)

One of the most prominent problems with today’s messaging systems is the high percentage of spam content clogging the systems. Spam in Internet Telephony (SPIT) is not only more annoying and disruptive than generic E-Mail spam, but also more expensive to the service provider. The fact that it has to be analysed and filtered in real-time makes the problem more difficult. In this project, we develop an Android application which displays the spam rating for each call and collects feedback. We also design a SPIT detection server to analyse call feedbacks and calculate spam ratings. Mentor:
Yashar Ganjali

Characterization of Indian Railway Networks (April 2010)

We study the Indian Railway Network (IRN) as a weighted complex network in which railway stations are considered as the nodes, while the weights on edges represent the number of trains directly linking two stations. Apart from the small-world characteristics and exponential distributions of node-degrees and edge-weights in the IRN, we explore the correlations of the amount of traffic with the topology of the network. We also identify the most important stations in the IRN with respect to connectivity and traffic-flow, which help to identify some of the probable points (and regions) of congestion in the network. Advisors:
Saptarshi Ghosh
Niloy Ganguly

Efficient Implementation of Reverse-Mode Automatic Differentiation (July 2009)

We review the extended Jacobian approach to automatic differentiation of a user-supplied function and highlight the Schur complement form's forward and reverse variants. We detail a Matlab operator overloaded approach to construct the extended Jacobian that enables the function Jacobian to be computed using Matlab’s sparse matrix operations. On five of the six mesh-based gradient test problems from the MINPACK2 Test Problem Collection, the reverse variant of our extended Jacobian technique with hoisting outperforms the sparse storage forward mode of the MAD package. Mentor:
Shaun Forth