• 沒有找到結果。

Performance Analysis

Congestion Avoidance Mechanism for TCP Vegas

3.4 Performance Analysis

. . .

Figure 3.2: Network model for analysis.

buffer space in the routers, Vegas and Reno can be compatible with one another if Vegas is configured properly. Nevertheless, no mechanism has been proposed to configure Vegas automatically.

3.4 Performance Analysis

In this section, we present a steady-state performance analysis of both Vegas and RoVegas. By investigating the queue length of the bottleneck buffer through the analytical approach, we can clarify the essential nature of these two mechanisms.

The network model used in the analysis is depicted in Fig. 3.2.

Assuming the source S1 is a greedy source. The destination D1 generates an ACK immediately upon receiving a data packet sent from S1. Either the forward or backward link between two routers R1 and R2 is the bottleneck along the path.

The forward link between two routers has a capacity of uf (data packets per second) and backward link has a capacity ub (ACKs per second). To facilitate the analysis as the backward path is congested, a normalized asymmetric factor k, k =uf/ub, is introduced [33]. The network is defined as asymmetric if the asymmetric factor is greater than one.

The service discipline is assumed to be First-In-First-Out (FIFO). Let τ be the BaseRTT (without any queuing delay), lf and lb be the mean numbers of packets queued in the forward and backward bottleneck buffer respectively. Since the

win-dow size of Vegas converges to a fixed value in steady state, the mean number of packets queued in bottleneck buffer should also be converged to a fixed level [10].

3.4.1 Analysis on Vegas

The congestion avoidance mechanism of Vegas shown in Eq. (3.1) can be rewritten as below:

RT T

RT T − BaseRT T ×α ≤ CW N D ≤ RT T

RT T − BaseRT T ×β. (3.6) The BaseRTT and RTT can be expressed as follows:

BaseRT T = τ, (3.7)

After substitution of Eq. (3.7) and Eq. (3.8), Eq. (3.6) can be rewritten as:

τ ufub+ lfub+ lbuf

lfub+ lbuf

×α ≤ CW N D ≤ τ ufub+ lfub + lbuf

lfub+ lbuf

×β. (3.9) Symmetric Network (k ≤ 1): If the bottleneck is in the forward path, packets will be accumulated in the forward bottleneck queue and no packets will be queued in the backward path, that is lb = 0, thus Eq. (3.9) can be simplified as:

τ uf + lf

lf

×α ≤ CW N D ≤ τ uf + lf

lf

×β. (3.10)

Since S1 is the only traffic source in the network thus it may occupy all the bandwidth of the bottleneck. Based on the fluid approximation, the congestion window size of S1 can be obtained through the bandwidth-delay product of the bottleneck as follows:

CW N D = uf ×(τ + lf

uf

). (3.11)

By substituting Eq. (3.11) into Eq. (3.10), we have

α ≤ lf ≤β. (3.12)

The throughput T of S1 can also be derived from Eq. (3.8) and Eq. (3.11) as:

T = CW N D

RT T = uf. (3.13)

From Eq. (3.12) and Eq. (3.13), we observe that when the bottleneck appears in the forward path, the mean number of packets queued in forward bottleneck buffer is kept stable between α and β, and the link bandwidth is always fully utilized in steady state. This observation matches the design goal of Vegas.

Asymmetric Network (k > 1): If the bottleneck exists in the backward path then the queue of the backward bottleneck node will be built up and no packets will be queued in the forward path, that is lf = 0, therefore Eq. (3.9) can be rewritten as:

Similar to the Eq. (3.11), the window size of S1can also be obtained by the bandwidth-delay product of the bottleneck link:

CW N D = ub×(τ + lb

ub

). (3.15)

By substituting Eq. (3.15) into Eq. (3.14), we have

α ≤ lb ≤β. (3.16)

In the meantime, the throughput T of S1can be derived from Eq. (3.8) and Eq. (3.15) as:

T = CW N D

RT T = ub = uf

k . (3.17)

From Eq. (3.16) we can find that, Vegas is unable to distinguish whether con-gestion occurs in the forward path or not. It keeps a steady quantity of extra data between α and β on the backward path. This may lead to poor utilization of for-ward path. As shown in Eq. (3.17), the throughput of S1is limited by the capacity of backward path. Notably, an ACK in the backward path implies that a data packet has arrived at its destination. Therefore, the throughput of S1 is uf/k (data packets per second).

3.4.2 Analysis on RoVegas

The congestion avoidance mechanism of RoVegas can be briefly expressed as follows:

α By Eq. (3.18), we have the congestion window size of RoVegas as:

RT T

From Eq. (3.7) and Eq. (3.8), Eq. (3.19) can be rewritten as:

τ uf + lf

lf

×α ≤ CW N D ≤ τ uf + lf

lf

×β. (3.20)

Since the result of Eq. (3.20) is identical to that of Eq. (3.10). If the bottleneck is in the forward path (i.e., lb = 0), the behavior of RoVegas will be same as Vegas.

However, the result of Eq. (3.20) reveals that the throughput of RoVegas in the case of backward congestion is not simply limited by the bandwidth of backward path as that of Vegas.

As shown in Eq. (3.18), RoVegas always attempts to maintain a proper amount of extra data in the forward path regardless of where the congestion occurs. However, TCP is a “self-clocking” protocol, that is, it uses ACKs as a “clock” to strobe new packets into the network [2]. Hence, as the backward path is congested, the rate of data flow in the forward direction will be throttled in a manner by the rate of ACK flow.

There exists a further restriction in Vegas that may limit the growth of the congestion window. The congestion window will not be increased if the source is unable to keep up with, that is, the difference between the congestion window size and the amount of outstanding data is larger than two maximum-sized packets [25].

Be a variant of TCP Vegas, RoVegas also complies with this restriction.

In an asymmetric network, for example k = 8, assuming that in steady state the forward path can be fully utilized by S1, it means that 7/8 of ACKs will be dropped

ACKs carry all the information contained in earlier ACKs. In this case, a survived ACK may represent that eight data packets have arrived at the destination. Once a survived ACK is received by the source, the difference between the congestion window size and the amount of outstanding data is eight packets. It will restrict the growth of the congestion window. Actually, the forward path may not be fully utilized by RoVegas with k = 8.

For an asymmetric network, if the dropping ratio of ACKs reaches 2/3, the congestion window of RoVegas will not be increased. Since for each ACK received by the RoVegas source, the difference between the congestion window size and the amount of outstanding data will be three packets. In such situation, RoVegas enters the steady state and the growth of congestion window stops. For each ACK received, the RoVegas source may send three packets back-to-back.

Let F be the throughput ratio of RoVegas to Vegas (i.e., F = throughput of RoVegas

throughput of Vegas ). In asymmetric networks, we have the throughput rela-tionship of Vegas and RoVegas as follows:

1 < F ≤ 3, ∀k > 1. (3.21)

Note that, the throughput of RoVegas contains the overhead induced by the AQT option. So the actual throughput ratio of RoVegas to Vegas should be slightly smaller than F. Equation (3.21) will be further verified by the following performance evaluation.

相關文件