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.
? Tutorial for this page

Charles P. Wright

dblp:51/5214 · DBLP profile ↗
← Back
18ranked-venue papers
3as first author
0since 2021 · last 2012
—ORCID · none

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

Systems, architecture and hardware · 11 · 3 first-authorSoftware engineering, systems software and programming languages · 4Computer networks · 3Databases, data management, data science and information retrieval · 3Security and privacy · 1

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
13 papers
Storage systems · 39% Performance modeling and evaluation · 20% Cloud and datacenter computing · 18%
Software engineering, system software, and programming languages
6 papers
Program analysis · 66% Operating systems · 34%
Computer networks
3 papers
Network performance modeling · 74% Internet architecture and protocols · 26%
Network and information security
3 papers
Systems and software security · 48% Malware analysis · 27% Network security · 25%

Topics — the 25 heaviest of 29, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems
file systems
0.592009
Enabling Transactional File Access via Lightweight Kernel Extensions · FAST 2009
Extending ACID semantics to the file system · ACM Trans. Storage 2007
On incremental file system development · ACM Trans. Storage 2006
Parallel and multicore computing
load balancing
0.222012
Design, Implementation, and Performance of a Load Balancer for SIP Server Clusters · IEEE/ACM Trans. Netw. 2012
Load Balancing for SIP Server Clusters · INFOCOM 2009
Cloud and datacenter computing › datacenter services › online service systems
request routing
0.222012
Design, Implementation, and Performance of a Load Balancer for SIP Server Clusters · IEEE/ACM Trans. Netw. 2012
Load Balancing for SIP Server Clusters · INFOCOM 2009
High-performance computing › cluster computing
server cluster
0.222012
Design, Implementation, and Performance of a Load Balancer for SIP Server Clusters · IEEE/ACM Trans. Netw. 2012
Load Balancing for SIP Server Clusters · INFOCOM 2009
Performance modeling and evaluation
workload characterization
0.122008
A nine year study of file system and storage benchmarking · ACM Trans. Storage 2008
Operating System Profiling via Latency Analysis · OSDI 2006
Cloud and datacenter computing › cluster resource management and scheduling
cluster resource management
0.112012
Design, Implementation, and Performance of a Load Balancer for SIP Server Clusters · IEEE/ACM Trans. Netw. 2012
Program analysis › cost analysis
latency analysis
0.122006
Operating System Profiling via Latency Analysis · OSDI 2006
Versatile, portable, and efficient OS profiling via latency analysis · SOSP 2005
Performance modeling and evaluation
benchmarking
0.112008
A nine year study of file system and storage benchmarking · ACM Trans. Storage 2008
Performance modeling and evaluation › benchmarking › storage benchmarking
file-system benchmarking
0.112008
A nine year study of file system and storage benchmarking · ACM Trans. Storage 2008
Program analysis › dynamic analysis
profiling
0.122006
Operating System Profiling via Latency Analysis · OSDI 2006
Versatile, portable, and efficient OS profiling via latency analysis · SOSP 2005
Storage systems › file systems
transactional file system
0.112007
Extending ACID semantics to the file system · ACM Trans. Storage 2007
Storage systems › file systems
copy-on-write
0.112006
Versatility and Unix semantics in namespace unification · ACM Trans. Storage 2006
Storage systems › file systems › file system design
stackable file systems
0.112006
On incremental file system development · ACM Trans. Storage 2006
Internet architecture and protocols › signaling protocol
SIP
0.122009
Load Balancing for SIP Server Clusters · INFOCOM 2009
Evaluating SIP server performance · SIGMETRICS 2007
Malware analysis
anti-virus
0.012004
Avfs: An On-Access Anti-Virus File System · USENIX Security Symposium 2004
Program analysis › dynamic analysis
program tracing
0.012004
Tracefs: A File System to Trace Them All · FAST 2004
Storage systems › i/o workload characterization
file system traces
0.012004
Tracefs: A File System to Trace Them All · FAST 2004
Storage systems › file systems › versioning
versioning file system
0.012004
A Versatile and User-Oriented Versioning File System · FAST 2004
Network security › secure communication › secure communication protocol
TLS
0.012012
The Impact of TLS on SIP Server Performance: Measurement and Modeling · IEEE/ACM Trans. Netw. 2012
Systems and software security › file system security
cryptographic file system
0.012003
NCryptfs: A Secure and Convenient Cryptographic File System · USENIX ATC, General Track 2003
Systems and software security
file system security
0.012003
NCryptfs: A Secure and Convenient Cryptographic File System · USENIX ATC, General Track 2003
Storage systems › file systems › file system design
cryptographic file system
0.012003
NCryptfs: A Secure and Convenient Cryptographic File System · USENIX ATC, General Track 2003
Operating systems › extensible operating systems › kernel extensibility
kernel extensions
0.012009
Enabling Transactional File Access via Lightweight Kernel Extensions · FAST 2009
Transaction processing and concurrency control
nested transactions
0.012007
Extending ACID semantics to the file system · ACM Trans. Storage 2007
Operating systems › resource management › storage management › file systems
file system design
0.012004
A Versatile and User-Oriented Versioning File System · FAST 2004

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

profiling · 0.3measurement · 0.3simulation · 0.2recoverable memory library · 0.1performance evaluation · 0.1load balancing algorithm · 0.1experimental evaluation · 0.1layered file system design · 0.1signature scanning · 0.1file system interception · 0.1workload generation · 0.1benchmarking · 0.1latency analysis · 0.1
YearPublicationVenuePosition
2012 Design, Implementation, and Performance of a Load Balancer for SIP Server Clusters
abstract
This paper introduces several novel load-balancing algorithms for distributing Session Initiation Protocol (SIP) requests to a cluster of SIP servers. Our load balancer improves both throughput and response time versus a single node while exposing a single interface to external clients. We present the design, implementation, and evaluation of our system using a cluster of Intel x86 machines running Linux. We compare our algorithms to several well-known approaches and present scalability results for up to 10 nodes. Our best algorithm, Transaction Least-Work-Left (TLWL), achieves its performance by integrating several features: knowledge of the SIP protocol, dynamic estimates of back-end server load, distinguishing transactions from calls, recognizing variability in call length, and exploiting differences in processing costs for different SIP transactions. By combining these features, our algorithm provides finer-grained load balancing than standard approaches, resulting in throughput improvements of up to 24% and response-time improvements of up to two orders of magnitude. We present a detailed analysis of occupancy to show how our algorithms significantly reduce response time.
Hongbo Jiang 0001, Arun Iyengar, Erich M. Nahum, Wolfgang Segmuller, Asser N. Tantawi, Charles P. Wright
IEEE/ACM Trans. Netw.6
2012 The Impact of TLS on SIP Server Performance: Measurement and Modeling
abstract
Securing Voice over IP (VoIP) is a crucial requirement for its successful adoption. A key component of this is securing the signaling path, which is performed by the Session Initiation Protocol (SIP). Securing SIP can be accomplished by using Transport Layer Security (TLS) instead of UDP as the transport protocol. However, using TLS for SIP is not yet widespread, perhaps due to concerns about the performance overhead. This paper studies the performance impact of using TLS as a transport protocol for SIP servers. We evaluate the cost of TLS experimentally using a testbed with OpenSIPS, OpenSSL, and Linux running on an Intel-based server. We analyze TLS costs using application, library, and kernel profiling and use the profiles to illustrate when and how different costs are incurred. We show that using TLS can reduce performance by up to a factor of 17 compared to the typical case of SIP-over-UDP. The primary factor in determining performance is whether and how TLS connection establishment is performed due to the heavy costs of RSA operations used for session negotiation. This depends both on how the SIP proxy is deployed and what TLS operation modes are used. The cost of symmetric key operations such as AES, in contrast, tends to be small. Network operators deploying SIP-over-TLS should attempt to maximize the persistence of secure connections and will need to assess the server resources required. To aid them, we provide a measurement-driven cost model for use in provisioning SIP servers using TLS. Our cost model predicts performance within 15% on average.
Charles Shen, Erich M. Nahum, Henning Schulzrinne, Charles P. Wright
IEEE/ACM Trans. Netw.4
2009 Enabling Transactional File Access via Lightweight Kernel Extensions
Richard P. Spillane, Sachin Gaikwad, Manjunath Chinni, Erez Zadok, Charles P. Wright
FAST5
2009 Load Balancing for SIP Server Clusters
abstract
This paper introduces several novel load balancing algorithms for distributing session initiation protocol (SIP) requests to a cluster of SIP servers. Our load balancer improves both throughput and response time versus a single node, while exposing a single interface to external clients. We present the design, implementation and evaluation of our system using a cluster of Intel x86 machines running Linux. We compare our algorithms with several well-known approaches and present scalability results for up to 10 nodes. Our best algorithm, transaction least-work-left (TLWL), achieves its performance by integrating several features: knowledge of the SIP protocol; dynamic estimates of back-end server load; distinguishing transactions from calls; recognizing variability in call length; and exploiting differences in processing costs for different SIP transactions. By combining these features, our algorithm provides finer-grained load balancing than standard approaches, resulting in throughput improvements of up to 24 percent and response time improvements of up to two orders of magnitude. We present a detailed analysis of occupancy to show how our algorithms significantly reduce response time.
Hongbo Jiang 0001, Arun Iyengar, Erich M. Nahum, Wolfgang Segmuller, Asser N. Tantawi, Charles P. Wright
INFOCOM6
2008 SERvartuka: Dynamic Distribution of State to Improve SIP Server Scalability
abstract
A growing class of applications, including VoIP, IM and presence, are enabled by the session initiation protocol (SIP). Requests in SIP typically traverse through multiple proxies. The availability of multiple proxies offers the flexibility to distribute proxy functionality across several nodes. In particular, after experimentally demonstrating that the resource consumption of maintaining state is significant, we define the problem of state distribution across multiple nodes when the goal is to increase overall call throughput. We first formulate this as an optimization problem and then derive a distributed algorithm from it. This distributed algorithm leads to the design and evaluation of SERvartuka, a more scalable SIP server that dynamically determines the number of SIP requests for which the server is stateful while delegating state maintenance for the remainder of the requests to a server further downstream. This design is in contrast to existing SIP servers that are statically configured to either be stateless or stateful and therefore result in sub-optimal call throughput. We implement SERvartuka on top of OpenSER, a commercial SIP proxy server and measure performance benefits of different server configurations. An example of our results is a 20% percent increase in call throughput when using our algorithm for a configuration of two servers in series.
Vijay A. Balasubramaniyan, Arup Acharya, Mustaque Ahamad, Mudhakar Srivatsa, Italo Dacosta, Charles P. Wright
ICDCS6
2008 A nine year study of file system and storage benchmarking
abstract
Benchmarking is critical when evaluating performance, but is especially difficult for file and storage systems. Complex interactions between I/O devices, caches, kernel daemons, and other OS components result in behavior that is rather difficult to analyze. Moreover, systems have different features and optimizations, so no single benchmark is always suitable. The large variety of workloads that these systems experience in the real world also adds to this difficulty. In this article we survey 415 file system and storage benchmarks from 106 recent papers. We found that most popular benchmarks are flawed and many research papers do not provide a clear indication of true performance. We provide guidelines that we hope will improve future performance evaluations. To show how some widely used benchmarks can conceal or overemphasize overheads, we conducted a set of experiments. As a specific example, slowing down read operations on ext2 by a factor of 32 resulted in only a 2--5% wall-clock slowdown in a popular compile benchmark. Finally, we discuss future work to improve file system and storage benchmarking.
Avishay Traeger, Erez Zadok, Nikolai Joukov, Charles P. Wright
ACM Trans. Storage4
2007 Evaluating SIP server performance
abstract
SIP is a protocol of growing importance, with uses for VoIP, instant messaging, presence, and more. However, its performance is not well-studied or understood. In this extended abstract we overview our experimental evaluation of common SIP server scenarios using open-source SIP software such as OpenSER and SIP prunning on Linux.
Erich M. Nahum, John M. Tracey, Charles P. Wright
SIGMETRICS3
2007 Extending ACID semantics to the file system
abstract
An organization's data is often its most valuable asset, but today's file systems provide few facilities to ensure its safety. Databases, on the other hand, have long provided transactions. Transactions are useful because they provide atomicity, consistency, isolation, and durability (ACID). Many applications could make use of these semantics, but databases have a wide variety of nonstandard interfaces. For example, applications like mail servers currently perform elaborate error handling to ensure atomicity and consistency, because it is easier than using a DBMS. A transaction-oriented programming model eliminates complex error-handling code because failed operations can simply be aborted without side effects. We have designed a file system that exports ACID transactions to user-level applications, while preserving the ubiquitous and convenient POSIX interface. In our prototype ACID file system, called Amino, updated applications can protect arbitrary sequences of system calls within a transaction. Unmodified applications operate without any changes, but each system call is transaction protected. We also built a recoverable memory library with support for nested transactions to allow applications to keep their in-memory data structures consistent with the file system. Our performance evaluation shows that ACID semantics can be added to applications with acceptable overheads. When Amino adds atomicity, consistency, and isolation functionality to an application, it performs close to Ext3. Amino achieves durability up to 46% faster than Ext3, thanks to improved locality.
Charles P. Wright, Richard P. Spillane, Gopalan Sivathanu, Erez Zadok
ACM Trans. Storage1
2006 Operating System Profiling via Latency Analysis
Nikolai Joukov, Avishay Traeger, Rakesh Iyer, Charles P. Wright, Erez Zadok
OSDI4
2006 Versatility and Unix semantics in namespace unification
abstract
Administrators often prefer to keep related sets of files in different locations or media, as it is easier to maintain them separately. Users, however, prefer to see all files in one location for convenience. One solution that accommodates both needs is virtual namespace unification---providing a merged view of several directories without physically merging them. For example, namespace unification can merge the contents of several CD-ROM images without unpacking them, merge binary directories from different packages, merge views from several file servers, and more. Namespace unification can also enable snapshotting by marking some data sources read-only and then utilizing copy-on-write for the read-only sources. For example, an OS image may be contained on a read-only CD-ROM image---and the user's configuration, data, and programs could be stored in a separate read-write directory. With copy-on-write unification, the user need not be concerned about the two disparate file systems.It is difficult to maintain Unix semantics while offering a versatile namespace unification system. Past efforts to provide such unification often compromised on the set of features provided or Unix compatibility---resulting in an incomplete solution that users could not use.We designed and implemented a versatile namespace unification system called Unionfs . Unionfs maintains Unix semantics while offering advanced namespace unification features: dynamic insertion and removal of namespaces at any point in the merged view, mixing read-only and read-write components, efficient in-kernel duplicate elimination, NFS interoperability, and more. Since releasing our Linux implementation, it has been used by thousands of users and over a dozen Linux distributions, which helped us discover and solve many practical problems.
Charles P. Wright, Jay Dave, Puja Gupta, Harikesavan Krishnan, David P. Quigley, Erez Zadok, Mohammad Nayyer Zubair
ACM Trans. Storage1
2006 On incremental file system development
abstract
Developing file systems from scratch is difficult and error prone. Using layered, or stackable, file systems is a powerful technique to incrementally extend the functionality of existing file systems on commodity OSes at runtime. In this article, we analyze the evolution of layering from historical models to what is found in four different present day commodity OSes: Solaris, FreeBSD, Linux, and Microsoft Windows. We classify layered file systems into five types based on their functionality and identify the requirements that each class imposes on the OS. We then present five major design issues that we encountered during our experience of developing over twenty layered file systems on four OSes. We discuss how we have addressed each of these issues on current OSes, and present insights into useful OS and VFS features that would provide future developers more versatile solutions for incremental file system development.
Erez Zadok, Rakesh Iyer, Nikolai Joukov, Gopalan Sivathanu, Charles P. Wright
ACM Trans. Storage5
2005 Versatile, portable, and efficient OS profiling via latency analysis
abstract
Operating systems are complex and their behavior depends on many factors. Source code, if available, does not directly help understand the OS's behavior, as the behavior depends on actual workloads and external inputs. Runtime profiling is a key technique for understanding the behavior and mutual-influence of modern OS components. Such profiling is useful to prove new concepts, debug problems, and optimize the performance of existing OSs. Unfortunately, existing profiling methods lack in important areas: they do not provide much of the necessary information about the OS's behavior; they require OS modification and therefore are not portable; or they exact high overheads thus perturbing the profiled OS.
Nikolai Joukov, Rakesh Iyer, Avishay Traeger, Charles P. Wright, Erez Zadok
SOSP4
2004 Tracefs: A File System to Trace Them All
Akshat Aranya, Charles P. Wright, Erez Zadok
FAST2
2004 A Versatile and User-Oriented Versioning File System
Kiran-Kumar Muniswamy-Reddy, Charles P. Wright, Andrew Himmer, Erez Zadok
FAST2
2004 Reducing Storage Management Costs via Informed User-Based Policies
Erez Zadok, Jeffrey Osborn, Ariye Shater, Charles P. Wright, Kiran-Kumar Muniswamy-Reddy, Jason Nieh
MSST4
2004 Avfs: An On-Access Anti-Virus File System
Yevgeniy Miretskiy, Abhijith Das, Charles P. Wright, Erez Zadok
USENIX Security Symposium3
2003 Cosy: Develop in User-Land, Run in Kernel-Mode
Amit Purohit, Charles P. Wright, Joseph Spadavecchia, Erez Zadok
HotOS2
2003 NCryptfs: A Secure and Convenient Cryptographic File System
Charles P. Wright, Michael C. Martino, Erez Zadok
USENIX ATC, General Track1