• No results found

We investigate the ability of several prominent Delay Based Congestion Estimators (DBCEs) to predict TCP packet losses with a view to avoid them. This would help reduce the impact on performance that results from detecting and recovering from losses. We considered several prominent DBCEs such as CARD, Tri-S, Dual, Vegas, BFA, CIM, FAST, DECA and DAIMD. We modified TCPdebug to

incorporate the equations used by these DBCEs to predict congestion and used it to study the efficacy of each of the DBCE in predicting/mis-predicting losses in a connection. We find that

• CARD has the best performance in predicting TCP packet losses, followed closely by DECA, CIM, and Dual. These DBCEs predicted an impending loss in 45% of the connections. However, in a similar fraction of connections (45%), the DBCEs predicted less than half of the losses in a connection.

• Vegas, DAIMD, and Tri-S did not predict a single loss in nearly 70-90% of the connections. • Vegas has the best ability to avoid mis-predicting losses. In 90% of cases it does not mis-predict

losses even once. This is closely followed by DAIMD that has no mis-prediction in 80% of the connections.

• CARD, CIM, Dual, Tri-S, and DECA erroneously predict losses in a large number of cases. • Another issue to consider is the timeliness of the loss prediction/mis-prediction. We found that

in 50-70% of the cases the prediction/mis-prediction of loss lasted at least for 1 RTT, giving the connection ample time to react to it.

There is much scope to improve the connection’s performance by correctly predicting and avoiding packet losses. However, the DBCEs which show a better loss prediction ability also have a large number of mis-predictions while DBCEs which have good performance in terms of mis-predicting losses do not fare well in predicting the losses. We need to know which of the DBCEs strike a good balance and improve the overall performance of a connection. In this dissertation we develop analytical model to study the overall impact of a correct prediction or mis-prediction on a performance of the connections. To the best of our knowledge this has not been done in any of the past work and provides a good metric to compare the performance of these as well as any new DBCEs that may be proposed. Using these analytical models we first computed the upper bound on improvement that could be achieved by a connection if all losses are predicted and avoided and there are no mis-predictions. We computed the upper bound assuming two different reaction policies to the loss prediction - (i) additive decrease in which the sending rate is reduced by 1 packet and (ii) multiplicative decrease in which the sending rate is reduced by a factor calculated as the ratio of minimum RTT to the current RTT (minRT T /RT T). We find that the best case saving is same for both the additive and multiplicative decrease policy. This is because, most of the times, a connection has very few packets in flight and a multiplicative decrease of minRT T /RT T amount to a decrease of just one packet. While 60% of connections has negligible

scope for improvement in their performance, 25% of connections could see a saving of more than 10 RTT in their duration.

Using the analytical models mentioned above we studied the performance of the various DBCEs and found that

• Based on their performance, the DBCEs can be grouped into three categories:

– Both Vegas and DAIMD are fairly conservative and rarely predict congestion; the median change in connection duration is nearly zero!

– Tri-S and DUAL form the second category. Both of these causes more harm than good, increasing the connection duration for most connections.

– The rest of the DBCEs form the third category. These DBCEs show considerable improve- ment in more than 50% of the connections. CIM performs the best in this category. Surpris- ingly, Random(0.8) predictor of congestion, which predicts congestion with 80% probability, performs almost as well as the others—CARD, BFA, DECA.

• Connections which have low potential to improve their performance still have a lot to lose by mis- predicting losses. A conservative algorithm like Vegas performs quite well for these connections. On the other hand, for a connection with large potential for improvement, Vegas do not improve performance much but a more aggressive DBCE like CIM performs well.

Another interesting observation from our study was the realization that the choice of measuring RTT (and hence making a congestion prediction) on a per-flight or a per-packet basis does not impact the performance of the DBCEs much.

Next, we studied the impact of the connection characteristics on the overall performance of a DBCE. We considered a wide range of connection characteristics such as loss rate, flight sizes, throughput, and loss distances. We found that a connection with high throughput and large flight size benefit the most from any DBCE followed by connections with either of these two characteristics. This suggests that DBCEs hold a lot of promise in high bandwidth networks emerging today.