Make your own free website on Tripod.com

Mahesh Kallahalla

The up-to-date version of this page is at http://home.pacbell.net/kmahesh

I am a researcher in the Mobile Software Laboratory at NTT DoCoMo Communication Labs, San Jose, California. Prior to joining DoCoMo Labs, I was researcher in the Storage System Department at Hewlett Packard Laboratories, Palo Alto, California. I got my Ph.D. in 2001 from the ECE Department at Rice University. Prior to that, I was an undergrad at Indian Institute of Technology, Madras.

If you're looking for, my wife, Suman's web page, it is here.

Research

I love to work at the intersection of theory and systems, leaning more on the systems side. I believe in algorithms problems motivated by systems issues, and systems that have some sound footing in theory. In general I like to take on all aspects of developing a system: from algorithm design to system hacking.

My research has focused on storage systems; it has covered many aspects, including security, automatic configuration, and paging algorithms. I am currently working on research issues related to mobile storage systems -- storage systems for handhelds and cell-phones. More on these below. This page describes some of my research. My publications page lists my papers, which should give you specific details. Or you could send me a email.

Recent research

Mobile storage

This research is looking at the implications of having large amounts of storage in small scale devices -- handhelds and cell phones. The storage available in small scale devices has different characteristics than the storage in traditional desktops and servers. The applications' requirements and user's attitutude towards these devices is very different from what one would expect from a "storage system". I am exploring what these mean to the mobile and small scale storage system and how they interact with servers' "fixed" storage. 

Flexible enterprise data-centers

In a world of declining IT budgets, utility computing is an attractive paradigm. It promises to decrease IT costs by increasing data-center resource sharing between potentially diverse applications. To realize this vision, we first need a "utilitized" IT infrastructure. The main properties of such an infrastructure are that (a) the resources (server and storage) are partitionable and (b) the partitions are enforceable. This research is developing software technologies to enable such software based utility data-centers.

This research is currently in progress. Please contact me for more details. A paper on this vision called the "SoftUDC" is to appear in the november edition of IEEE Computer

Ram Swaminathan, Mustafa Uysal, and I started this project; it now involves researchers from several departments at HP Labs.

Plutus: Secure storage system

How trusted is your file system or SAN storage? Are you protected from a person who can plug a machine in the network? How about from the person who has root on the file servers, or the person who can replace hard disks on the disk arrays? It turns out that storage security is much more than just encrypting all SAN or network traffic, or storing only encrypted data. There are several issues in key management to enable easy and secure data sharing.

The first part of this work provided a framework for evaluating different kinds of secure storage systems.

Based on the previous study, we developed, Plutus, a cryptographic storage system that enables secure file sharing without placing much trust on the file servers. The salient features of Plutus are (a) it makes novel uses of cryptographic primitives to protect and share files, (b) it features highly scalable key management while allowing individual users to retain direct control over who gets access to their files, (c) it features novel mechanisms to reduce the number of cryptographic keys exchanged between users by using filegroups, distinguish file read and write access, handle user revocation efficiently, and allow an untrusted server to authorize file writes.

This is joint work with Kevin Fu, Erik Riedel, Ram Swaminathan, and Qian Wang.

Byzantine fault-tolerant bricks: Securing the FAB protocols

The FAB project at HP Labs aims to build a enterprise class disk array using " smart " commodity storage devices linked with a high bandwidth link. The FAB protocols currently assume that the faults in the system are not byzantine. This work augments the FAB procols to support such malicious bricks. The novelty of this work is in the way it brings together concepts from distributed computing and concepts from security and cryptography.

This work is currently in progress. Please contact me for more details.

This is joint work with Ram Swaminathan and Svend Frolund.

Buttress: Accurate storage benchmarking

Two commonly used techniques in benchmarking I/O systems are (a) trace replay, and (b) synthetic workloads. In both these cases it is important to accurately generate the I/O access pattern that one is intending to generate. But the sophistication of today's stock operating systems makes it difficult to issue I/Os at the desired time at high I/O rates. Our results indicate that we may be introducing substantial errors in observed system metrics when we benchmark I/O systems with inaccurate trace-replay tools

To address this problem, we developed Buttress, a portable and flexible toolkit that can generate I/O workloads with microsecond accuracy at the I/O throughputs of high-end enterprise storage arrays. In particular, Buttress can issue I/O requests within 100 microseconds of the desired issue time even at rates of 10000 I/Os per second (IOPS).

A paper on these results is to appear in the USENIX Conference on File and Storage Technologies. Please contact me for a draft.

This is joint work with Eric Anderson, Ram Swaminathan, and Mustafa Uysal.

Ergastulum: Automating storage system design

The cost of managing a large storage system is by far the dominant cost of owning such a system. However manual configuration of these systems, which is the current practice, is error-prone and expensive because of the high complexity of the systems and the applications using them. This work addresses the problem of designing an appropriate storage system given simple characteristics of the applications using these systems, business constraints such as cost or existing systems, and headroom.

Ergastulum is a new automatic storage designer, which uses a novel search heuristic to search the vast design space efficiently. Ergastulum can be used to (a) generate an initial design of the system, (b) propose improvements to the existing design that can be executed with minimal disruption to running applications, (c) evaluate " what-if " questions for different configurations as might arise in a storage consolidation. It is very flexible in the constraints and optimization criteria, such as accommodating requests to (a) use existing hardware, (b) have a maximum cost limit, (c) generate a minimum cost design, or (d) generate a design with minimum average device utilization.

This is joint work with Eric Anderson, Susan Spence, Ram Swaminathan, and Qian Wang.

Parallel paging algorithms

The traditional metric for caching algorithms, such as LRU or FIFO, is "the total number of page faults". Though this metric is appropriate when the back-end system is a single disk, it is not when the storage system has multiple disks that can perform multiple I/Os in parallel. A better metric is the "total number of parallel I/Os". The question then is "What is an appropriate parallel paging algorithm?"

The first part of this work showed fundamental limits on the performance achievable by traditional prefetching and caching algorithms. These bounds show that current algorithms have significant limitations in exploiting latent I/O parallelism.

The latter part of this work presents new prefetching and caching algorithms that optimizing buffer usage and concurrency in I/O accesses. These algorithms include

This work was part of my Ph.D. dissertation, and my advisor was Peter J. Varman

For additional information please check my publications, or you could send me an email.


Contacting me

Mahesh Kallahalla
3375 Alma St., Apt 375
Palo Alto, CA 94306

Res: (650) 493-1304
Off: (650) 857-3250
Email: {first-name}.{last-name}@gmail.com