Less than Best Effort (LBE) transports are transport protocols that use spare bandwidth left by Best Effort (BE) transports to fulfill their own data transfer tasks. Such kind of protocols can be used by non-delay/bandwidth sensitive applications such as software updating, peer-to-peer file sharing, prefetching, and replication to realize background transfer. By incorporating BE and LBE protocols into the Internet, we can realize flow-based prioritization, which can ensure that the available bandwidth is divided among different applications wisely and give every application an opportunity to run.
We have designed and developed a receiver-side flow-control-based LBE congestion control mechanism. By observing the sign and value of packet interval variations at the receiver side, we can successfully estimate the degree of congestion in the network and distinguish situation (a): the congestion is caused by the LBE flow itself from situation (b): the congestion is caused by the LBE flow as well as other flows. The protocol runs in a conservative mode if it detects other flows, otherwise, it runs in an aggressive mode to quickly reap the available bandwidth.
Testbed evaluation results show that our LBE protocol inflicts low throughput impact on BE flows with which it shares the same bottleneck. The average goodput achieved by a BE flow does not change after an LBE flow is started to operate. An LBE flow can add, on average, 40% round trip delay to a BE flow. Bandwidth utilization ratios of an LBE flow when it runs alone and shares a bottleneck with a constant bit rate BE flow are 99% (stable state, LBE only), 93% (overall, LBE only), and 83% (LBE and BE) respectively. When a BE flow exhibits on-off behavior, the LBE flow’s bandwidth utilization ratio decreases with the decrease of the on/off interval. An LBE flow can immediately yield its bandwidth when a BE flow is started. Finally, our LBE flows are fair toward each other. Jain’s fairness index is 0.99 for 4, 16, and 64 LBE flows.