Luigi Rizzo -- Research work

For a detailed list, please see my google scholar page

Older publications and talks

pgmcc: a TCP-friendly single-rate multicast congestion control scheme
Sigcomm'2000 paper describing a single rate multicast congestion control scheme for PGM.

The RLC multicast congestion control algorithm
(with L.Vicisano, J.Crowcroft).

A Layered Video Transcoder for Videoconference Applications
(with G.Iannaccone.). Mosaico Research Report PI-DII/4/99.

mgpm - a Multicast-enabled presentation tool

Fast group management in IGMP [slides]
Hipparch 98 workshop, 15-16 June 1998, UCL, London

Dummynet and Forward Error Correction
Freenix 98, June 1998, New Orleans
See also a more detailed description of dummynet and forward error correction.

Replacement policies for a proxy cache
(with L.Vicisano, UCL). UCL-CS Research Note RN/98/13.
This is a largely revised version of an older tech report).

RMDP: an FEC-based Reliable Multicast protocol for Wireless environments
(with L.Vicisano, UCL). ACM Mobile Computer and Communication Review, v.2 n.2, April 1998)
(compressed postscript)

TCP-like congestion control for layered multicast data transfer
(with L.Vicisano and J.Crowcroft, UCL). IEEE Infocom 98, March 1998

The FreeBSD audio driver
Proc. of the COST 237 Workshop'97, Lisbon, Portugal, December 1997
Source code for the device driver described in this paper is now in the FreeBSD distribution.

A Reliable Multicast data Distribution Protocol based on software FEC techniques (RMDP)
(with Lorenzo Vicisano, UCL). Proc. of the Fourth IEEE HPCS'97 Workshop, Chalkidiki, Grece, June 1997
(uncompressed postscript, 218KB)
Updated C Source for the code described in this paper

An Embedded Network Simulator to Support Network Protocols' Development
Proceedings of Tools '97 Conference, St.Malo, June 1997, LNCS 1245, Springer Verlag

Effective erasure codes for reliable computer communication protocols
ACM Computer Communication Review, April 1997
uncompressed postscript (198KB)
C Source for the code described in this paper (also available as vdm.tar.gz)

A very fast algorithm for RAM compression
ACM Operating System Review, Feb. 1997

Dummynet: a simple approach to the evaluation of network protocols
ACM Computer Communication Review, Jan. 1997

Software FEC in computer communications


This page describes some applications of Forward Error Correction (FEC) in computer communication. It includes some papers describing principle of operation and applications of FEC, and portable C implementation of erasure codes which can be effectively implemented on ordinary workstations at a speed of 1..10MB/s. They can be used to reduce the error rate on unicast communications, or for a number of applications on reliable and unreliable multicast communications. Also available is the code for a Reliable Multicast data Distribution Protocol (RMDP) based on FEC.

The original research dates to 1996-1998.

Dummynet: a simple approach to the evaluation of network protocols

(Also available as gzipped Postscript)

In this paper we show how the evaluation of network protocols can be done on a standalone system using real traffic generators (e.g. FTP, WWW servers, etc.) and still accounting for limited-size queues, bandwidth limitations and communication delays. Source code for FreeBSD 2.1 (easily portable to other BSD-derived systems) is available.

A new version of the code, largely improved and more flexible, is available here. The new version supports all IP traffic, including multicast, and parameters are configurable using the IPFW command per flow.

Replacement policies for a proxy cache

In this paper we analyse Web access to a proxy in order to derive useful information for the development of a good replacement policy for documents held in the cache. We show that LRU works reasonably well, but it can be improved by considering other parameters than time. Basing on the analysis of traces, we propose a policy called LRV which outperforms LRU and other known policies.

A very fast algorithm for RAM compression

Experiments have shown that RAM pages are often filled with many zero-valued entries. This suggests the use of fast compression algorithms to save compressed pages to memory instead of swapping them to disk. In this way, the latency of pagein can be sensibly reduced. The paper presents a very fast algorithm which, while not as effective as gzip, can compress 4KB pages at over 40MB/s on a Pentium100. A sample implementation of the compression/decompression algorithm is also supplied. Also, some code for the LZRW1 algorithm is supplied, for a comparison of the compression speed.

TCP over lossy networks: handling retransmissions

Proposes a change to the retransmission policy used in the BSD implementation of TCP, and introduces the use of bandwidth estimators for a more adaptive computation of timeouts. Estimates are given on the effectiveness of the code, which can improve performance of up to one order of magnitude in presence of significant losses.

Issues in the implementation of selective acknowledgements for TCP

Describes an efficient processing of SACKs on FreeBSD, and also proposes a simple modification to RFC1323 timestamps to carry SACK information. The modified timestamps are called TSACKs, and allow senders to exploit the advantages of selective acknowledgements when talking to RFC1323-compliant receivers.

SACK and TSACK code for FreeBSD

An implementation of SACKs, TSACKs, and other TCP-related changes on FreeBSD2.1R. Although this is experimental code, it has been running on several of our workstations and servers (e.g. since September 1996.
Luigi Rizzo
Dipartimento di Ingegneria dell'Informazione -- Univ. di Pisa
via Diotisalvi 2 -- 56126 PISA
tel. +39-050-2211611