Associate Professor
Department of Computer Science
LUMS School of Science and Engineering

Office 421, LUMS,
Opposite Sector U, DHA, Lahore,
Pakistan. 54792

Research Projects

  • Information and Communication Technology for Development
    • Disparity in access to information and computing technologies is a primary hurdle in the economic prosperity of the developing world. The reason for this "digital divide" is that traditional research in ICT technologies is based on assumptions suited to the affluent world. High-end computing devices, broadband communication infrastructure, uninterrupted power supply, computer savvy users, are simply not there in developing regions. Our research as part of Dritte focuses on developing both hardware and software infrastructure, specifically designed for the physical, social and economic realities of developing countries.
    • BitMate: BitTorrent for the Developing-world
      • BitTorrent is a hugely popular peer-to-peer file sharing system. In countries where broadband Internet is widespread, BitTorrent accounts for as much as 70% of the overall Internet traffic. In contrast, in developing countries, BitTorrent is almost unusable on the typically low bandwidth dialup connections and accounts for less than 10% of the overall traffic. BitMate is designed to enhance the performance of hosts with low-bandwidth connections. Importantly, BitMate enhances the performance of low-bandwidth nodes without cheating, circumventing the fairness policy of BitTorrent or adversely affecting the performance of other peers. BitMate outperforms vanilla BitTorrent by as much as 70% in download performance, while at the same time improving upload contribution by as much as 1000%! BitMate also outperforms strategic clients like BitTyrant in low-bandwidth conditions by as much as 60% in download performance (without cheating). The system was featured in a series of articles in New York Times, CNN, GigaOM and many others. Read more about the system and download the client from: BitMate.
    • Poor Man's Broadband
      • The Poor Man's Broadband system is designed to circumvent the Internet bandwidth limitations in the developing-world. Sponsored by MSR's Digital Inclusion Grant, Poor Man's Broadband enables modem-speed p2p dialup connections to circumvent the Internet bottleneck in the developing-world. The design of the system is based on the observation that the limited Internet bandwidth in the developing-world is not a last-mile problem. Modern modems can support up to 54 kb/sec, while average end-user bandwidth in the developing-world rarely exceeds 15 kb/sec over a pre-paid dialup connection. Our system enables Bittorrent-style incentive-driven sharing of downloaded content between clients over modem-speed dialup connections (much like a modern-day Fidonet). The system was featured in an article in the New Scientist magazine. Technical details of the system are described in the following papers: [1] DitTorrent: Dialup Peer-to-Peer BitTorrent. [2] Internet Access at Modem-speed Dialup Connections
    • DonateBandwidth.net
      • Building on our experience with the Poor Man's Broadband system, we are currently developing systems for users in the developing-world to share their unused bandwidth to accelerate download for other users. Just as systems such as SETI@Home and OceanStore permit users to share their computing cycles and storage space with others on the Internet, DonateBandwidth.net permits sharing of unused Internet bandwidth (which is much more valuable in the developing-world compared to computing cycles or disk space). Our system is based on the key observation that very little traffic originating from the developing-world is served from the Internet Caches present in the country. As a consequence, the expensive and scarce upstream International link is used considerably more than is necessary. Our studies show that this is often due to two reasons in countries like Pakistan: (1) there is often no proper IXP and only a single monopoly upstream ISP that is focused solely on packet transit, (2) there is often a plethora of small ISPs, frequently with limited, and invariably mis-configured, caches. Therefore, typically very little data is cached in a developing country and there is no sharing of content between users of different ISPs. Our system, dubbed DonateBandwidth.net, has two key components: (1) An ISP-independent web p2p cache that consolidates and enables sharing of data across users of different ISPs, and (2) a forward-caching architecture that enables users to donate their unused bandwidth by "forward populating" an ISP cache for other users.
        Thsi project was featured in the MIT Technology Review
    • Teleputer: Cellphone-based Rural Computer
      • Teleputer is our take at a developing-world PC. Teleputer is essentially a cell-phone, enhanced with a sensor/actuator interfaces and an icon-based visual programming environment to automate the tasks of rural and semi-urban population in the developing-world. Our proposed teleputer is aimed to enable zero-configuration interaction for everyday rural applications. For instance, teleputer enables applications in which a farmer can simply connect a salinity-monitoring sensor to his cell-phone and insert the sensor in the soil, causing the teleputer to send the sensor data to a server-cluster in the city over the cellular connection. The servers in the city can compute the salinity level and send the result back to the teleputer, which is conveyed to the farmer using native speech synthesis -- all with zero configuration and no textual interaction. Currently, we are developing the Teleputer prototype using off-the-shelf cell-phones and the Berkeley Sensor Motes.
    • Internet Bypass Routing
      • Based on our experience with DitTorrent, we have identified that most of the times Internet bottleneck links may be bypassed by using a simple Interest Indirection Overlay, which enables the end-hosts to monitor and adapt to transient congestions and mis-configurations on the Internet. Our current experience with PlanetLab nodes show that for developing-world countries, simply vectoring messages through intermediate nodes (and hence forcing routing paths at the overlay level) could lead to up to 300% improvement in packet latency and up to two fold improvement in available bandwidth. Indirect routing has been used previously only to bypass failures on the Internet, circumventing the long convergence time of BGP. Our system for bypass routing is the first that explores the role of indirection in overlay routing to improve Internet bandwidth and latency in the developing-world. Currently, we are working on an architecture that mimics IP-level route deflections at the overlay level. Layered on top of PlanetLab, our bypass routing system furthers the state-of-the-art in three dimensions: (1) Our system efficiently detects transient performance bottlenecks on a given routing path, (2) Our choke-link location system identifies appropriate intermediate nodes which may be used to bypass the offending links, and (3) our OS socket structure and TCP splicing architecture adaptively sets-up end-to-end overlay routing paths to bypass transient bottlenecks on the Internet.
    • Disease Epidemology and Planning
      • In developing countries such as Pakistan, there is an increased need to track diseases and control outbreaks before they progress to epidemics. It is also vital to develop an understanding of historical disease patterns so that future episodes can be predicted. The proposed healthcare GIS addresses both goals by tracking diseases geographically in an online manner, and relating occurrence of diseases with a variety of parameters for each local community. We further hope to build intelligence into the GIS to identify high-impact locations where possibilities for intervention and significant improvement exist. We consider this an innovative effort in Pakistan. In our review of the existing healthcare system we discovered an opportunity to pool together data from major public hospitals (currently available only as hard files) to construct a GIS. We also believe that a fully automated system to map patients to geographical coordinates using addresses would be a novel contribution with potential use beyond the GIS proposed. This work will be carried out as a collaboration between DRITTE at LUMS and Prof. Zeeshan Syed’s group at MIT/HST (now at Univ. of Michigan). This project received funding from the Punjab Information Technology Board (PITB).

  • Pervasive Computing: Goal-oriented, Self-adaptive Systems
    • In pervasive computing, my work has largely focused on a new area called goal-oriented systems; a goal-oriented system takes a high-level, typically underspecified, service-request, like show this video on the best available display , and automagically satisfies and maintains the goal despite changes in available resources. Goal-oriented applications are, therefore, self-adaptive. Our work on goal-oriented systems received the Mark Weiser Award. We are exploring the goal-oriented paradigm in three domains: Application Programming, Network Service Access, and Mobile Data Access. 
    • Self-Adaptive Applications
    • Opportunistic Service Access
      • Our SoNS and LANS extend the Operating System Network Socket Interface such that an OS socket may be bound to a service rather than a specific server. Instead of taking an IP address and a Port number of a server, Service-oriented Network Sockets take a service specification as an input and opportunistically connect the socket to a server that best satisfies the service specification in a dynamically changing network environment. As an example, watch the demo of the Follow-Me-Video application, designed for mobile media devices such as a portable DVD player. The technical details of the systems are described in the following papers: [1] Paper on system design and implementation, [2] Paper on lessons learned from initial system design
    • Opportunistic File Associations
      • Mobile devices have limited I/O capabilities. Therefore, while data may be stored on a mobile device, it is typically impractical to view, edit or manipulate most types of data on a mobile device. We implemented a system that hijacks the file-association mechanism of a mobile operating system (such as Windows CE), and opportunistically establishes file-associations with available resources in the environment of the mobile device. For instance, when a user clicks on a music file on a portable music player, our system would opportunistically establish a media-type association (.mp3) with the music player on a nearby desktop machine. The technical details of the system are described in the following paper: Opportunistic File-associations

  • Gigabit Network Routing on Multi-core Architectures
    • I have dabbled in system design on the emerging all-purpose multicore architectures. We designed and implemented an all-software 15Gb/sec Network Router for tiled-microprocessors such as the MIT RAW Microprocessor. Our software router achieved close to four times the throughput compared to Intel IXP1200.

Professional Services

Conference which I have organized or served on the Technical Program Committee:

Research Interests

I am a systems person; I build stuff. I am broadly interested in Distributed Systems, Operating Systems, Computer Networks and Mobile Computing. My recent research has largely focused on two themes:
  • Pervasive Computing 
  • ICT for Development (ICTD)
- Updates on my research on ICTD are given on the Dritte Pages.
- List of Conferences for which I am an organizer or Program Committee member.

In the last few years, I helped found a number of startups: