10 research outputs found

    Going Large-scale in P2P Experiments Using the JXTA Distributed Framework

    Get PDF
    The interesting properties of P2P systems (high availability despite node volatility, support for heterogeneous architectures, high scalability, etc.) make them attractive for distributed computing. However, conducting large-scale experiments with these systems arise as a major challenge. Simulation allows to model only partially the behavior of P2P prototypes. Experiments on real testbeds encounter serious difficulty with large-scale deployment and control of peers. This paper shows that using an optimized version of the JXTA Distributed Framework (JDF) allows to easily deploy, configure and control P2P experiments. We illustrate these features with sample tests performed with our JXTA-based grid data sharing service, for various large-scale configurations

    Very high speed link emulation with TLEM

    Get PDF
    In this work we discuss the limitations of link emulators based on conventional network stacks, and present our alternative architecture called TLEM, which is designed to address current high speed links and be open to future speed improvements. TLEM is structured as a pipeline of stages, implemented with separate threads and with limited interactions with each other, so that high performance can be achieved. Our emulator can handle bidirectional traffic at speeds of over 18 Mpps (64 byte packets) and 40 Gbit/s (1500 byte packets) per direction even with large emulation delays. Even higher performance can be achieved with shorter delays, as the workload fits better into the L3 cache of the system. TLEM is distributed as BSD-licensed opensource as part of the netmap distributions, and runs on any system that supports netmap (this includes FreeBSD, Linux and now even Windows)

    Going Large-scale in P2P Experiments Using the JXTA Distributed Framework

    Get PDF
    The interesting properties of P2P systems (high availability despite node volatility, support for heterogeneous architectures, high scalability, etc.) make them attractive for distributed computing. However, conducting large-scale experiments with these systems arise as a major challenge. Simulation allows to model only partially the behavior of P2P prototypes. Experiments on real testbeds encounter serious difficulty with large-scale deployment and control of peers. This paper shows that using an optimized version of the JXTA Distributed Framework (JDF) allows to easily deploy, configure and control P2P experiments. We illustrate these features with sample tests performed with our JXTA-based grid data sharing service, for various large-scale configurations

    Using failure injection mechanisms to experiment and evaluate a grid failure detector

    Get PDF
    Selected for publication in the post-conference bookComputing grids are large-scale, highly-distributed, often hierarchical, platforms. At such scales, failures are no longer exceptions, but part of the normal behavior. When designing software for grids, developers have to take failures into account. It is crucial to make experiments at a large scale, with various volatility conditions, in order to measure the impact of failures on the whole system. This paper presents an experimental tool allowing the user to inject failures during a practical evaluation of fault-tolerant systems. We illustrate the usefulness of our tool through an evaluation of a hierarchical grid failure detector

    Une Plate-forme d'Emulation Légère pour Etudier les Systèmes Pair-à-Pair

    Get PDF
    National audienceLes méthodes actuellement les plus utilisées pour étudier les systèmes pair-à-pair (modélisation, simulation, et exécution sur des systèmes réels) montrent souvent des limites sur les plans du passage à l'échelle et du réalisme. Cet article présente P2PLab, une plate-forme pour l'étude et l'évaluation des systèmes pair-à-pair, qui combine l'émulation (utilisation de l'application réelle à étudier à l'intérieur d'un environnement synthétique) et la virtualisation. Après la présentation des caractéristiques principales de P2PLab (émulation réseau distribuée, virtualisation légère), nous montrons son utilité lors de l'étude du système de diffusion de fichiers BitTorrent, notamment en comparant deux implantations différentes de ce protocole complexe

    SACK TCP VENO

    Get PDF
    by Chung Ling Chi.Thesis (M.Phil.)--Chinese University of Hong Kong, 2001.Includes bibliographical references (leaves 74-76).Abstracts in English and Chinese.Chapter Chapter 1 --- Introduction --- p.1Chapter 1.1 --- Overview --- p.1Chapter 1.2 --- Motivation and Proposed Solution --- p.2Chapter 1.3 --- Organization of the Thesis --- p.4Chapter Chapter 2 --- Background --- p.5Chapter 2.1 --- Basics of Transmission Control Protocol --- p.5Chapter 2.1.1 --- Slow Start and Congestion Avoidance --- p.5Chapter 2.1.2 --- Fast Retransmit and Fast Recovery --- p.7Chapter 2.2 --- SACK TCP Mechanism --- p.8Chapter 2.2.1 --- SACK-permitted Option during Three-way Handshake --- p.8Chapter 2.2.2 --- SACK blocks in SACK Option --- p.9Chapter 2.2.3 --- Interpreting the SACK Option using Scoreboard --- p.10Chapter 2.2.4 --- Retransmission Strategy --- p.11Chapter 2.3 --- TCP Veno Mechanism --- p.13Chapter 2.3.1 --- Refined Additive Increase --- p.13Chapter 2.3.2 --- Refined Multiplicative Decrease --- p.14Chapter Chapter 3 --- SACK TCPVeno --- p.16Chapter 3.1 --- Distinguishing between Types of Packet Loss --- p.17Chapter 3.2 --- Refined Multiplicative Decrease --- p.21Chapter 3.2.1 --- Algorithm --- p.21Chapter 3.2.2 --- Recovery in Consecutive packet Losses --- p.22Chapter 3.2.3 --- Recovering Multiple Packet Losses within a Single Window --- p.26Chapter 3.3 --- Refined Additive Increase --- p.37Chapter 3.3.1 --- Algorithm --- p.37Chapter 3.3.2 --- Advantages --- p.40Chapter 3.4 --- Other Issues --- p.43Chapter 3.4.1 --- Two Side Modifications --- p.43Chapter Chapter 4 --- Experiments --- p.44Chapter 4.1 --- The Network Scenario --- p.44Chapter 4.1.1 --- Dummynet --- p.45Chapter 4.2 --- Experiment Results --- p.47Chapter 4.2.1 --- Single Connection --- p.47Chapter 4.2.1.1 --- Congestion Window Evolution --- p.47Chapter 4.2.1.2 --- Sending Rate and Throughput Evolution --- p.49Chapter 4.2.1.2.1 --- Impact of Packet Loss Rate Due to Lossy Link --- p.49Chapter 4.2.1.2.2 --- Impact of Buffering --- p.52Chapter 4.2.1.2.3 --- Impact of Propagation Delay --- p.57Chapter 4.2.2 --- Multiple Connections --- p.62Chapter 4.2.2.1 --- Fairness --- p.62Chapter 4.2.2.2 --- Compatibility --- p.67Chapter Chapter 5 --- Conclusion --- p.72Bibliography --- p.7

    Equation-Based Congestion Control for Unicast and Multicast Data Streams

    Full text link
    We believe that the emergence of congestion control mechanisms for relatively-smooth congestion control for unicast and multicast traffic can play a key role in preventing the degradation of end-to-end congestion control in the public Internet, by providing a viable alternative for multimedia flows that would otherwise be tempted to avoid end-to-end congestion control altogether. The design of good congestion control mechanisms is a hard problem, even more so for multicast environments where scalability issues are much more of a concern than for unicast. In this dissertation, equation-based congestion control is presented as an alternative form of congestion control to the well-known TCP protocol. We focus on areas of equation-based congestion control which were not yet well understood and for which no adequate solutions existed. Starting from a unicast congestion control mechanism which in contrast to TCP provides smooth rate changes, we extend equation-based congestion control in several ways. We investigate how it can work together with applications which can only operate in a very limited region of available bandwidth and whose rate can thus not be adapted to the network conditions in the usual way. Such a congestion control mechanism can also complement conventional equation-based congestion control in regimes where available bandwidth is too low for further rate reduction. When extending unicast congestion control to multicast, it is of paramount importance to ensure that changes in the network conditions anywhere in the multicast tree are reported back to the sender as quickly as possible to allow the sender to adjust the rate accordingly. A scalable feedback mechanism that allows timely congestion feedback in the face of potentially very large receiver sets is one of the contributions of this dissertation. But also other components of a congestion control protocol, such as the rate increase/decrease policy or the slow-start mechanism, need to be adjusted to be able to use them in a multicast environment. Our resulting multicast congestion control protocol was implemented in a simulation environment for extensive protocol testing and turned into a library for the use in real-world applications. In addition, a simple video transmission tool was built for test purposes that uses this congestion control library

    Dummynet and forward error correction

    No full text
    In this paper we presentacouple of tools developed by theauthor on FreeBSD, and available from the author's Web page in source format. The rst one, called dummynet, is a tool designed for the performance evaluation of network protocols and applications. Despite its original design goal, there has been a lot of interest on using dummynet as a bandwidth manager in network servers. dummynet simulates the e ect of nite queues, bandwidth limitations, and queueing delays, and is embedded in the protocol stack of the host, allowing even complex experiments to be run on a single machine, using existing applications and protocol implementations. The second tool is a software implementation of an erasure code especially suited for use in network protocols. Erasure codes are used in Forward Error Correction (FEC) techniques to reduce or remove the need for retransmissions in presence of communication errors. FEC has been rarely used in network protocols, because of the encoding/decoding overhead, and also because the underlying theory of error correcting codes is generally not well known to network researchers. In this paper we discuss the theory behind a simple erasure code, and provide performance data to show that the encoding/decoding overhead is acceptable for many applications even on low-end machines.

    Adaptive video streaming : pre-encoded MPEG-4 with bandwidth scaling

    No full text
    The increasing popularity of streaming video is a cause for concern for the stability of the Internet because most streaming video content is currently delivered via UDP, without any end-to-end congestion control. Since the Internet relies on end systems implementing transmit rate regulation, there has recently been significant interest in congestion control mechanisms that are both fair to TCP and effective in delivering real-time streams. In this paper we design and implement a protocol that attempts to maximize the quality of real-time MPEG-4 video streams while simultaneously providing basic end-to-end congestion control. While several adaptive protocols have been proposed in the literature [An End-to-End rate-based congestion control mechanism for real-time streams in the Internet, in: Proceedings of INFOCOMM\u201999, March 1999; IEEE Trans. Multimedia 3 (2001) 339], the unique feature of our protocol, the Video Transport Protocol (VTP), is its use of receiver side bandwidth estimation. Such estimation is transmitted to the sender and enables it to adapt to network conditions by altering its sending rate and the bitrate of the transmitted video stream. We deploy our protocol in a real network testbed and extensively study its behavior under varying link speeds and background traffic profiles using the FreeBSD Dummynet link emulator [Dummynet and Forward Error Correction, in: Proceedings of Freenix\u201998. June 1998]. Our results show that VTP delivers consistent quality video in moderately congested networks and fairly shares bandwidth with TCP in all but a few extreme cases. We also describe some of the challenges in implementing an adaptive video streaming protocol
    corecore