This paper addresses the problem of CPU resource contention between a Web proxy cache and the TCP... more This paper addresses the problem of CPU resource contention between a Web proxy cache and the TCP Splice kernel service, which this application employs for serving cache misses. TCP Splice improves the performance of a proxy cache by reducing the CPU utilization and latency for cache misses. However, TCP Splice implementations based on packet forwarding in the IP or socket levels can delay the serving of cache hits when high bursts of packets move through the in-kernel infrastructure. In these implementations, the TCP Splice activity has higher priority than the application, and the application has no means of controlling the pace of spliced transfers. In this paper, we propose an alternative paradigm for TCP Splice implementation that enables application control, while providing reasonably large reductions in CPU overheads.
This paper proposes two mechanisms for reducing the communication-related overheads of Web applic... more This paper proposes two mechanisms for reducing the communication-related overheads of Web applications. One mechanism is user-level connection tracking, which allows an application to coordinate its non-blocking I/O operations with significantly fewer system calls than previously possible. The other mechanism is data-stream splicing, which allows a Web proxy application to forward data between server and client streams in the kernel with no restrictions on connection persistency, object cacheability, and request pipelining. These mechanisms remove elements that scale poorly with CPU speed, such as context switches and data copies, from the code path of Web-request handling.
An evaluation of TCP splice benefits in web proxy servers
... Marcel-C˘at˘alin Rosu IBM TJ Watson Research Center, NY, USA rosu@us.ibm.com ... 2]. TheTCP S... more ... Marcel-C˘at˘alin Rosu IBM TJ Watson Research Center, NY, USA rosu@us.ibm.com ... 2]. TheTCP Splicekernel servicewas proposed as amech-anism for loweringthe overheads of split-connection prox-ies.This is achievedby eliminatingthe double data copy between kernel and ...
Workstations and personal computers are increasingly being used for applications with real-time c... more Workstations and personal computers are increasingly being used for applications with real-time characteristics such as speech understanding and synthesis, media computations and I/O, and animation, often concurrently executed with traditional nonreal-time workloads. This paper presents a system that can schedule multiple independent activities so that:
Workstations and personal computers are increasingly being used for applications with real-time c... more Workstations and personal computers are increasingly being used for applications with real-time characteristics such as speech understanding and synthesis, media computations and I/O, and animation, often concurrently executed with traditional nonreal-time workloads. This paper presents a system that can schedule multiple independent activities so that:
The goal of the Rialto project at Microsoft Research is to build a system architecture supporting... more The goal of the Rialto project at Microsoft Research is to build a system architecture supporting coexisting independent real-time (and non-real-time) programs. Unlike traditional embedded-systems real-time environments, where timing and resource analysis among competing tasks can be done off-line, it is our goal to allow multiple independently authored real-time applications with varying timing and resource requirements to dynamically coexist and cooperate to share the limited physical resources available to them, as well as also coexisting with nonreal-time applications.
Workstations and personal computers are increasingly being used for applications with real-time c... more Workstations and personal computers are increasingly being used for applications with real-time characteristics such as speech understanding and synthesis, media computations and I/O, and animation, often concurrently executed with traditional nonreal-time workloads. This paper presents a system that can schedule multiple independent activities so that:
Uploads
Papers by Daniela Rosu