Systems work at MSR India covers a broad spectrum of areas ranging from program verification, programming languages and tools, distributed systems, networking and security. We are interested in both building real world systems and studying the principles behind how to design them. The following is a broad overview of the work we do. Please visit the links to explore our work in more detail.
Verification and Testing: Ensuring correctness of programs is crucial for software development. The focus of this research is to build tools and techniques to ensure that a program meets its specification. Our work has resulted in tools that are widely used by programmers inside and outside Microsoft to test and verify real world programs. Visit: Corral, P/P#, Yogi, SLAM
Distributed Systems: We are interested in multiple aspects of Distributed Computing and Programming Models for Distributed Computing. Distributed computing promises high performance, scalability, reliability, and cost-effectiveness. We are interested in declarative high-level languages that allow programmers to create distributed systems with ease, in compiling such high-level languages to various distributed computing platforms, and in efficient runtimes, fault-tolerance techniques, and storage systems for such platforms. We are interested in predicting performance characteristics of jobs on such distributed platforms and making performance aware scheduling and resource allocation decisions. We are interested in the consistency-performance tradeoffs that arise in this setting, on how programming can be simplified in the presence of such trade-offs, and the use of formal methods to reason about such systems. Visit: CScale, Perforator
Mobile and Networked Systems: Our work in mobile and networked systems spans network design and optimization, both in the wide-area and wireless access settings, mobile systems that take advantage of sensing and other capabilities to provide a portal into the user context, and issues such as battery-efficient communication that cut across the mobile and networking domains. Our current projects include an architecture for networks based on TV-band whitespace spectrum to provide connectivity to underserved regions, network design to support high-quality real-time streaming for applications such as audio-video conferencing and online games, and a system that helps unlock information contained within mobile apps for the benefit of the user. Our past work has included projects on efficient networking through redundancy elimination, network diagnostics, indoor localization of mobile devices, and systems for road and traffic monitoring. Visit: Mobility, Networks, and Systems
Security and Privacy: We study security and privacy with a specific emphasis on cloud based systems. We have been working on ways to measure fraud in online systems, and ways to check if online systems (such as search engines) conform to privacy policies that they specify as part of their contract to consumers. We have also been working on how to build cloud based systems (such as databases) which give end-to-end security guarantees to the user even if the cloud OS is compromised and the cloud operator turns malicious. Visit: Ad Systems, Cipherbase, Trusted Cloud