Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.

Sapan Bhatia

dblp:96/2718 · DBLP profile ↗
← Back
11ranked-venue papers
10as first author
0since 2021 · last 2013
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Computer networks · 4 · 3 first-authorSoftware engineering, systems software and programming languages · 4 · 4 first-authorSystems, architecture and hardware · 2 · 2 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
3 papers
Cloud and datacenter computing · 46% Embedded and real-time systems · 46% Distributed systems · 7%
Software engineering, system software, and programming languages
3 papers
Operating systems · 42% Program analysis · 29% Compilers and program optimization · 29%
Computer networks
1 paper
Software-defined and programmable networks · 100%
Network and information security
1 paper
Authentication and access control · 100%

Topics — the 10 heaviest of 12, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Authentication and access control › access control
permission management
0.112011
Vsys: A Programmable sudo · USENIX ATC 2011
Software-defined and programmable networks
network virtualization
0.112008
Trellis: a platform for building flexible, fast virtual networks on commodity hardware · CoNEXT 2008
Software-defined and programmable networks › network virtualization
virtual network embedding
0.112008
Trellis: a platform for building flexible, fast virtual networks on commodity hardware · CoNEXT 2008
Program analysis › dynamic analysis
runtime monitoring
0.112008
Lightweight, High-Resolution Monitoring for Troubleshooting Production Systems · OSDI 2008
Compilers and program optimization › program specialization
runtime specialization
0.112008
Remote specialization for efficient embedded operating systems · ACM Trans. Program. Lang. Syst. 2008
Cloud and datacenter computing › virtualization › containerization
container-based virtualization
0.112008
Trellis: a platform for building flexible, fast virtual networks on commodity hardware · CoNEXT 2008
Embedded and real-time systems › embedded software
embedded operating systems
0.112008
Remote specialization for efficient embedded operating systems · ACM Trans. Program. Lang. Syst. 2008
Embedded and real-time systems
program specialization
0.112008
Remote specialization for efficient embedded operating systems · ACM Trans. Program. Lang. Syst. 2008
Cloud and datacenter computing
virtualization
0.112008
Trellis: a platform for building flexible, fast virtual networks on commodity hardware · CoNEXT 2008
Operating systems › system security › operating system security
access control
0.012011
Vsys: A Programmable sudo · USENIX ATC 2011

Methods — techniques the papers use, named apart from their topics

virtualization · 0.2tunneling · 0.2program specialization · 0.2
YearPublicationVenuePosition
2013 Wanted: Systems Abstractions for SDN
Sapan Bhatia, Andy C. Bavier, Larry L. Peterson
HotOS1
2011 sfatables: A Firewall-like Policy Engine for Federated Systems
abstract
Recent efforts to federate computation and communication resources across organizational boundaries face a challenge in establishing the policies by which one organization's users can access resources in other organizations. This paper describes an approach to defining, communicating, analyzing, and enforcing resource allocation policies in this new setting. Our approach was designed to address the needs of Planet Lab, but we demonstrate through a range of examples that it is general enough to accommodate a diverse collection of computing facilities. Our policy engine is implemented in a specific tool chain, called sfatables, that is patterned after the iptables mechanism used to define packet processing policies for network traffic. The interface to our policy engine thus uses the familiar paradigm of a firewall and provides a flexible interface for resource owners to specify access policies for their resources. Our implementation makes it possible to precisely document policies, query, and analyze them.
Sapan Bhatia, Andy C. Bavier, Larry L. Peterson, Soner Sevinc
ICDCS1
2011 Vsys: A Programmable sudo
Sapan Bhatia, Giovanni Di Stasi, Thom Haddow, Andy C. Bavier, Steve Muir, Larry L. Peterson
USENIX ATC1
2008 Trellis: a platform for building flexible, fast virtual networks on commodity hardware
abstract
We describe Trellis, a platform for hosting virtual networks on shared commodity hardware. Trellis allows each virtual network to define its own topology, control protocols, and forwarding tables, while amortizing costs by sharing the physical infrastructure. Trellis synthesizes two container-based virtualization technologies, VServer and NetNS, as well as a new tunneling mechanism, EGRE, into a coherent platform that enables high-speed virtual networks. We describe the design and implementation of Trellis and evaluate its packet-forwarding rates relative to other virtualization technologies and native kernel forwarding performance.
Sapan Bhatia, Murtaza Motiwala, Wolfgang Mühlbauer, Yogesh Mundada, Vytautas Valancius, Andy C. Bavier, Nick Feamster, Larry L. Peterson, Jennifer Rexford
CoNEXT1
2008 Lightweight, High-Resolution Monitoring for Troubleshooting Production Systems
Sapan Bhatia, Abhishek Kumar 0003, Marc E. Fiuczynski, Larry L. Peterson
OSDI1
2008 Remote specialization for efficient embedded operating systems
abstract
Prior to their deployment on an embedded system, operating systems are commonly tailored to reduce code size and improve runtime performance. Program specialization is a promising match for this process: it is predictable and modules, and it allows the reuse of previously implemented specializations. A specialization engine for embedded systems must overcome three main obstacles: (i) Reusing existing compilers for embedded systems, (ii) supporting specialization on a resource-limited system and (iii) coping with dynamic applications by supporting specialization on demand. In this article, we describe a runtime specialization infrastructure that addresses these problems. Our solution proposes: (i) Specialization in two phases of which the former generates specialized C templates and the latter uses a dedicated compiler to generate efficient native code. (ii) A virtualization mechanism that facilitates specialization of code at a remote location. (iii) An API and supporting OS extensions that allow applications to produce, manage and dispose of specialized code. We evaluate our work through two case studies: (i) The TCP/IP implementation of Linux and (ii) The TUX embedded web server. We report appreciable improvements in code size and performance. We also quantify the overhead of specialization and argue that a specialization server can scale to support a sizable workload.
Sapan Bhatia, Charles Consel, Calton Pu
ACM Trans. Program. Lang. Syst.1
2006 Memory-manager/scheduler co-design: optimizing event-driven servers to improve cache behavior
abstract
Event-driven programming has emerged as a standard to implement high-performance servers due to its flexibility and low OS overhead. Still, memory access remains a bottleneck. Generic optimization techniques yield only small improvements in the memory access behavior of event-driven servers, as such techniques do not exploit their specific structure and behavior.This paper presents an optimization framework dedicated to event-driven servers, based on a strategy to eliminate data-cache misses. We propose a novel memory manager combined with a tailored scheduling strategy to restrict the working data set of the program to a memory region mapped directly into the data cache. Our approach exploits the flexible scheduling and deterministic execution of event-driven servers.We have applied our framework to industry-standard webservers including TUX and thttpd, as well as to the Squid proxy server and the Cactus QoS framework. Testing TUX and thttpd using a standard HTTP benchmark tool shows that our optimizations applied to the TUX web server reduce L2 data cache misses under heavy load by up to 75% and increase the throughput of the server by up to 38%.
Sapan Bhatia, Charles Consel, Julia Lawall
ISMM1
2006 Minimizing Cache Misses in an Event-driven Network Server: A Case Study of TUX
abstract
We analyze the performance of CPU-bound network servers and demonstrate experimentally that the degradation in the performance of these servers under high-concurrency workloads is largely due to inefficient use of the hardware caches. We then describe an approach to speeding up event-driven network servers by optimizing their use of the L2 CPU cache in the context of the TUX Web server, known for its robustness to heavy load. Our approach is based on a novel cache-aware memory allocator and a specific scheduling strategy that together ensure that the total working data set of the server stays in the L2 cache. Experiments show that under high concurrency, our optimizations improve the throughput of TUX by up to 40% and the number of requests serviced at the time of failure by 21%
Sapan Bhatia, Charles Consel, Julia Lawall
LCN1
2006 Efficient Packet Processing in User-Level OSes: A Study of UML
abstract
Network server consolidation has become popular through virtualization technology that builds secure, isolated network systems on shared hardware. One of the virtualization techniques used is that of user-level operating systems. (ULOSes) However, the isolation and security they bring comes at the price of performance, as virtualization introduces a number of overheads into the system. Such overheads can be surprisingly large, especially for complex OS modules like network protocol stacks. Our studies of the TCP/IP stack in user-mode Linux (UML), an implementation of a ULOS, attribute the resulting slow-downs to three main sources: the execution of privileged code, memory management across layers, and additional instructions to execute. To mitigate these bottlenecks, we present five optimization techniques, improving the network performance significantly, reducing packet processing latency by 60% and increasing network throughput by three folds. Furthermore, the network throughput of the improved ULOS is comparable to that of native Linux up to gigabit speeds
Younggyun Koh, Calton Pu, Sapan Bhatia, Charles Consel
LCN3
2004 Remote customization of systems code for embedded devices
abstract
Dedicated operating systems for embedded systems are fast being phased out due to their use of manual optimization, which provides high performance and small footprint, but also requires high maintenance and portability costs every time hardware evolves.In this paper, we describe an approach based on customization of generic operating system modules. Our approach uses a remote customization server to automatically generate highly optimized code that is then loaded and executed in the kernel of the embedded device. This process combines the advantages of generic systems software code (leveraging portability and evolution costs) with the advantages of customization (small footprint and low overhead).We have validated our customization infrastructure with a case study: the TCP/IP stack of the Linux kernel. We analyzed the performance and size of the customized code generated on three platforms: a Pentium III (600MHz), an ARM SA1100 (200Mhz) on a COMPAQ iPAQ, and a 486 (40MHz). The customized code runs about 25% faster and its size reduces by up to a factor of 20. The throughput of the protocol stack improves by up to 21%.
Sapan Bhatia, Charles Consel, Calton Pu
EMSOFT1
2004 Automatic Specialization of Protocol Stacks
abstract
Abstract — Fast and optimized protocol stacks play a major role in the performance of network services. This role is especially important in embedded class systems, where performance metrics such as data throughput tend to be limited by the CPU. It is common on such systems, to have protocol stacks that are optimized by hand for better performance and smaller code footprint. In this paper, we propose a strategy to automate this process. Our approach uses program specialization, and enables appli-cations using the network to request specialized code based on the current usage scenario. The specialized code is generated dy-namically and loaded in the kernel to be used by the application. We have successfully applied our approach to the TCP/IP implementation in the Linux kernel and used the optimized protocol stack in existing applications. These applications were minimally modified to request the specialization of code based on the current usage context, and to use the specialized code generated instead of its generic version. Specialization can be performed locally, or deferred to a remote specialization server using a novel mechanism [1]. Experiments conducted on three platforms show that the specialized code runs about 25 % faster and its size reduces by up to 20 times. The throughput of the protocol stack improves by up to 21%. I.
Sapan Bhatia, Charles Consel, Anne-Françoise Le Meur, Calton Pu
LCN1