我一直在尝试在TCP协议中制作估计RTT的图表,并且获得估算RTT的公式是:
EstimatedRTT1 = (1- α)*EstimatedRTT0 + α*RTT
其中EstimatedRTT1是RTT的当前估计值,EstimatedRTT0是先前估计的值,RTT是精确时刻中确定的分组的往返时间,α仅是等于0.125的典型值。我们假设EstimatedRTT0的第一个值等于α* RTT,之后EstimatedRTT0是前一个RTT的EstimatedRTT1。
Example:
RTT = 23ms
α = 0.125
EstimatedRTT0 = RTT*α = 23 * 0.125 = 2.875
EstimatedRTT1 = (1- α)*EstimatedRTT0 + α*RTT = (1-0.125)*2.875 + 0.125*23
EstimatedRTT1 = 5.390
then the next estimation goes like this:
RTT = 30ms
EstimatedRTT0 = 5.390 (last EstimatedRTT1)
EstimatedRTT1 = (1-0.125)* 5.390 + 0.125*30 = 8,466
and so on..
图形应如下所示:
我遇到的问题是我无法使用Minitab执行图形,因为我无法找到将此公式的结果应用于具有RTT值的列的列的方法。
如果我将第一个操作的结果与EstimatedRTT0 =α* RTT放在一起,则列中的每个单元格都需要前一个单元格的值,以便计算自己的值。
我一直想知道是否有可能用Minitab做这样的事情。
那么,可以吗?是否有任何软件能够做到这一点,或者我应该尝试制作一个小程序来输出具有一点功能的公式结果?
我正在使用RTT示例添加minitab文件。 MPJ file
谢谢,
抱歉,如果我没有非常清楚地解释自己。
答案 0 :(得分:0)
找到了使用Excel完成它的方法。
您只需在单元格中输入公式,然后在较低的单元格中复制该单元格,然后复制公式,但它会将目标单元格替换为相对于新单元格的单元格。
In this cell I input the formula
Then I copy the contents of the cell, and we can see how the parameters of the formula have changed
毕竟这很容易..这是一个尝试的问题。
答案 1 :(得分:0)
你可以用DO ... ENDDO和使用常量来做到这一点。您必须在ENDDO之前切换常量值并将结果存储到单元格中(如C1 [k1] = EstimatedRTT;其中k1是DO ENDDO的常量) 例如:
let k2 = 23 'RTT=23ms
let k3=0.125 'α = 0.125
let k4= k2*k3 ' EstimatedRTT0 = 23 * 0.125 = 2.875
DO k1=1:10 ' 10 iterations
let k2 = C1[k1] ' k2=RTT and RTT values are stored into column C1
let k5=(1-k3)*k4+k3*k2 'EstimatedRTT1 = (1- α)*EstimatedRTT0 + α*RTT
let C2[k1]=k5 'you store your result in C2
let k4=k5 'you switch the constant value to use it in the next iteration
ENDDO