Step1 | 问题初始化、算法参数初始化。 首先,程序初始化仿真参数,包括仿真次数、时间槽数量、节点数量、竞争窗口范围等。 |
Step2 | 循环仿真。 程序通过循环多次仿真来模拟不同的情况。每次仿真都包括多个时间槽的竞争和数据运输过程。 |
Step3 | 数据传输和碰撞检测。 节点根据其竞争窗口尝试发送数据帧。如果多个节点选择相同的时间槽发送并且竞争窗口同时达到0,就会发生碰撞,即数据传输失败,于是,CW重置传输下一个数据帧,直到重传次数达到最大后,数据帧会被丢弃,而当节点间没有发生碰撞,即数据传输成功。一直循环此过程,直至循环结束。 |
Step4 | 计算实时吞吐量和碰撞率以及存储数据。 在每一个循环结束时,程序可以计算实时的吞吐量(成功传输的数据帧比例)和碰撞率(碰撞发生的概率),在所有循环过程全部结束后,程序将吞吐量和碰撞率的数据存储在数组中,以进行后续分析。 |
Step5 | 计算平均值和数据可视化。 所有仿真结束后,再数组中计算系统的平均吞吐量和平均碰撞率。最后,程序将实验结果以图形方式可视化,绘制吞吐量和碰撞率随仿真次数的变化图。 |