Adaptive Mode Mechanism Overview for IPv4
You configure the auto-sense mechanism in the multicast bandwidth using the set admission-bandwidth adaptive command, set qos-bandwidth adaptive command, or both. For example:
In this example, any stream with an (S,G) that matches the sdtv access list performs adaptive bandwidth detection for admission control and QoS adjustment.
A rate measurement mechanism runs on the ingress line card that polls the forwarding controller (FC) to obtain statistics for each mroute. This mechanism then reports the rate measurement to the SRP to update the bandwidth map. By computing the average bandwidth over a relatively short sampling period (T1; 5 seconds), the measurement approximates the peak bandwidth of the multicast stream.
As an example, assume that a new mroute (S1, G1) is added to the interface controller (IC) at time t0.
Figure 1: Example of Adaptive IPv4 Multicast Bandwidth Detection
To calculate the measured bandwidth of a stream, the router uses the following equation:
R = (N_{t+5} – N_{t}) / 5
Where
R = Calculated bandwidth of the stream during each sampling interval
N_{t} = Bytes measured at the start of each sampling period (t seconds)
N_{t+5} = Bytes measured at the end of each sampling period (t+5 seconds)
Note: When the mroute is first installed in the FC (at t = 0), R_{0} is undetermined. For multicast admission control no joins are admitted until the first bandwidth measurement is computed (that is, for admission control, R0 is considered to be infinite). Similarly, no QoS adjustment occurs until the first bandwidth measurement is computed (that is, for QoS adjustment, R0 is considered to be zero [0]). |
Using the previous graph as a reference, the first bandwidth rate (R1_{0}) and at time t_{5} (N_{5}) and the bytes received values are subtracted and divided by the sampling period T_{1} to yield the average rate. This process is repeated every sampling interval, T_{2}, to yield rates R1, R2, R3, and so on.
The first two sampling interval calculations are as follows:
R_{1} = (N_{5} - N_{0})/5
R_{2} = (N_{#+5} - N_{#})/5
The router maintains a history of bandwidth measurements (H) for each mroute, up to a maximum of M measurements. The actual rate, R, reported to the SRP is the maximum rate measured in those H samples.
To minimize the IC to SRP traffic generated by the rate measurements, the IC reports a bandwidth change only when a newly computed rate (R#) differs from the current rate by a specified threshold. When R_{s} is computed at time t = 5 seconds, R is set to R_{1}. A rate update occurs whenever a newly calculated rate (R) differs from R_{1} by at least a threshold value (specified as a percentage, P) of the measured peak bandwidth. This calculation is as follows:
R = Rt, if and only if the absolute value of (R - Rt) > P * R.
Table 4 lists values assigned to variables associated with this algorithm.
Table 4: Adaptive Mode Algorithm Values
Variable | Value | Units | Description |
---|---|---|---|
T1 | 5 | Seconds | Sampling period; the time in which a sample is taken |
T2 | 0 | Seconds | Sampling interval; zero (0) seconds indicates continuous sampling |
H | 12 | Samples | Number of history samples over which to compute measurement |
M | 12 | Samples | Maximum number of samples maintained in history |
P | 1 | Percent | Threshold value; percent difference by which a newly calculated rate must differ from the measured peak bandwidth before a rate update occurs |