Reliability and Security in the CoDeeN Content Distribution Network
With the advent of large-scale, wide-area networking testbeds, researchers can deploy long-running distributed services that interact with other resources on the Web. The CoDeeN Content Distribution Network, deployed on PlanetLab, uses a network of caching Web proxy servers to intelligently distribute and cache requests from a potentially large client population. We have been running this system nearly continuously since June 2003, allowing open access from any client in the world. In that time, it has become the most heavily-used long-running service on PlanetLab, handling over four million accesses per day. In this paper, we discuss the design of our system, focusing on the reliability and security mechanisms that have kept the service in operation. 
 
Our reliability mechanisms assess node health, preventing failing nodes from disrupting the operation of the overall system. Our security mechanisms protect nodes from being exploited and from being implicated in malicious activities, problems that commonly plague other open proxies. We believe that future services, especially peer-to-peer systems, will require similar mechanisms as more services are deployed on non-dedicated distributed systems, and as their interaction with existing protocols and systems increases. Our experiences with CoDeeN and our data on its availability should serve as an important starting point for designers of future systems.

title: Securing Web Service by Automatic Robot Detection
abstract: Web sites are routinely visited by automated agents known as Web robots, that perform acts ranging from the beneficial, such as indexing for search engines, to the malicious, such as searching for vulnerabilities, attempting to crack passwords, or spamming bulletin boards. Previous work to identify malicious robots has relied on ad-hoc signature matching and has been performed on a per-site basis. As Web robots evolve and diversify, these techniques have not been scaling. 
 
We approach the problem as a special form of the Turing test and defend the system by inferring if the traffic source is human or robot. By extracting the implicit patterns of human Web browsing, we develop simple yet effective algorithms to detect human users. Our experiments with the CoDeeN content distribution network show that 95% of human users are detected within the first 57 requests, and 80% can be identified in only 20 requests, with a maximum false positive rate of 2.4%. In the time that this system has been deployed on CoDeeN, robot-related abuse complaints have dropped by a factor of 10.

title: Scale and Performance in the CoBlitz Large-File Distribution Service
abstract: Scalable distribution of large files has been the area of much research and commercial interest in the past few years. In this paper, we describe the CoBlitz system, which efficiently distributes large files using a content distribution network (CDN) designed for HTTP. As a result, CoBlitz is able to serve large files without requiring any modifications to standard Web servers and clients, making it an interesting option both for end users as well as infrastructure services. Over the 18 months that CoBlitz and its partner service, CoDeploy, have been running on PlanetLab, we have had the opportunity to observe its algorithms in practice, and to evolve its design. These changes stem not only from observations on its use, but also from a better understanding of their behavior in real-world conditions. This utilitarian approach has led us to better understand the effects of scale, peering policies, replication behavior, and congestion, giving us new insights into how to better improve their performance. With these changes, CoBlitz is able to deliver in excess of 1 Gbps on PlanetLab, and to outperform a range of systems, including research systems as well as the widely-used BitTorrent.

title: Robust Delay Estimation for Internet Multimedia Applications
abstract: Traffic estimation and modeling has been a crucial issue in many research areas of communication networks. For example, intermediate routers in networks estimate the rate of packet flows via queue size information in order to maximize throughput and provide fairness between flows. Also, many senders in the end system such as multi-media applications estimate end-to-end delay between a sender and a receiver to reduce dropping probability of packet. In this position paper, we propose a robust adaptive estimation scheme for Internet multimedia applications. The proposed scheme adopts an autoregressive (AR) model for the process and identifies the parameters of the AR process via a robust identification algorithm. This robust identification algorithm usually leads to better performance when the noise is correlated and/or non-stationary, and it is also more robust to modeling uncertainties. Here, we consider the problem of end-to-end delay estimation for audio playout mechanisms. We rigorously formulate the proposed scheme in the realm of audio playout mechanisms and give some preliminary simulation result which shows effectiveness of the proposed scheme. Even though we apply the proposed scheme to the estimation of end-to-end delay in audio applications, the scheme itself is very general and we expect that it can be applied to many other estimation problems in Internet multimedia applications.

title: Analysis and design of the virtual rate control algorithm for stabilizing queues in TCP networks
abstract: The virtual rate control (VRC) algorithm has been proposed for active queue management (AQM) in TCP networks. VRC, a rate-based control mechanism, responds quickly to traffic changes, thus allowing for high utilization and small loss. It can effectively stabilize both the input rate and the queue length around their target levels. In this paper, we analyze the stability of the VRC algorithm based on a linearized TCP model with time delay and provide a design guideline for parameter setting to make the overall system stable. Finally, we confirm the validity of our analysis and the effectiveness of VRC compared to RED, PI, REM, and AVQ through extensive ns-2 simulations.

title: On the relationship between file sizes, transport protocols, and self-similar network traffic
abstract: Measurements of LAN and WAN traffic show that network traffic exhibits variability on different scales. We examine a mechanism that gives rise to self-similar network traffic and discuss performance. The mechanism we study is the transfer of files or messages whose size is drawn from a heavy-tailed distribution. In a realistic client/server network the degree to which file sizes are heavy-tailed can directly determine the degree of traffic self-similarity at the link level. This causal relationship is robust relative to changes in network resources, network topology, the influence of cross-traffic, and the distribution of interarrival times. Properties of the transport layer play an important role in preserving and modulating this relationship. The reliable transmission and flow control mechanisms of TCP serve to maintain the long-range dependency structure induced by heavy-tailed file size distributions. In contrast, if a non-flow-controlled and unreliable (UDP-based) transport protocol is used, the resulting traffic shows little self-similarity: although still bursty at short time scales, it has little long-range dependence. Performance implications of self-similarity are discussed as represented by various performance measures. Increased self-similarity as expected, results in degradation of performance. Queueing delay, in particular is discussed. Throughput-related measures such as packet loss and retransmission rate, however increase only gradually with increasing traffic self-similarity as long as reliable, flow-controlled transport protocol is used.

title: A distributed protocol for multi-class QoS provision in noncooperative many-switch systems
abstract: This paper presents an architecture for multi-class quality of service (QoS) provision in wide area networks. Users or applications are assumed to be selfish and end-to-end QoS is determined by the service levels received by an application traffic flow at each router or switch along a path. In previous work, we have given a comprehensive analysis of the noncooperative multi-class QoS provision game for single-switch systems showing when Nash equilibria exist and under what conditions they are Pareto and/or system optimal. In this paper, we propose a specific network architecture for facilitating noncooperative and of provision in many-switch systems such as the Internet with emphasis on realizability. We shield the user from having to choose the service classes on the switches along a route-a hard combinatorial optimization problem even assuming perfect knowledge about network state-while preserving the basic premise of selfishness. This is achieved by employing a set of QoS agents installed at routers which act on behalf of an user's traffic flow. The QoS agent intercepts packets entering a switch implementing generalized processor sharing (GPS) packet scheduling-and using only constant space packet header overhead and zero per-connection state at the routers-determines which service class to assign the packet to to satisfy the user's end-to-end QoS requirement at minimum cost. We present simulation results which show that our architecture is able to provide stable, stratified services to application traffic with diverse QoS requirements.

title: Multiple Time Scale Congestion Control for Self-Similar Network Traffic
abstract: Analytical and empirical studies have shown that self-similar traffic can have a detrimental impact on network performance including amplified queuing delay and packet loss rate. Given the ubiquity of scale-invariant burstiness observed across diverse networking contexts, finding effective traffic control algorithms capable of detecting and managing self-similar traffic has become an important problem. In this paper, we study congestion control algorithms for improving network performance — in particular, throughput — under self-similar traffic conditions. Although scale-invariant burstiness implies the existence of concentrated periods of contention and idleness, the long-range dependence associated with self-similar traffic leaves open the possibility that correlation structure at larger time scales may be exploited for performance enhancement purposes. We construct a 2-level multiple time scale congestion control protocol that exercises congestion control concurrently across two time scales an order of magnitude apart. The first component — acting at the smaller time scale — is a generic linear increase/exponential decrease feedback congestion control that uses implicit prediction afforded by feedback to affect rate control sensitive to changes in network state at 20–200 ms time scales. The second component — acting at 2–5 s time scales — uses explicit prediction to detect persistent shifts in overall network contention and uses this information to modulate the aggressiveness exhibited by the first component. We show that cooperative interaction between the two congestion control modules acting on information at different time scales leads to improved performance vis-a-vis the case when the large time scale component is absent. We show that the improvement factor increases with long-range dependence and we show that as the number of flows engaging in multiple time scale congestion control (MTSC) increases, both fairness and efficiency are preserved.