We study an abstract setting, where the basic information units (called "superpackets") do not fit into a single packet, and are therefore spread over multiple packets. We assume that a superpacket is useful only if the number of its delivered packets is above a certain threshold. Our focus of attention is communication link ingresses, where large arrival bursts result in dropped packets. The algorithmic question we address is which packets to drop so as to maximize goodput. Specifically, suppose that each superpacket consists of k packets, and that a superpacket can be reconstructed if at most β·k of its packets are lost, for some given parameter 0≤β<1. We present a simple online distributed randomized algorithm in this model, and prove that in any scenario, its expected goodput is Ωoptk(1-β)σ, where opt denotes the best possible goodput by any algorithm, and σ denotes the size of the largest burst (the bound can be improved as a function of burst-size variability). We also analyze the effect of buffers on goodput under the assumption of fixed burst size, and show that in this case, when the buffer is not too small, our algorithm can attain, with high probability, (1-) goodput utilization for any >0. Finally, we present some simulation results that demonstrate that the behavior of our algorithm in practice is far better than our worst-case analytical bounds.
- Competitive analysis
- Forward error correction
- Packet drop
- Packet fragmentation and reassembly
- Randomized algorithms