每台机器独立执行:生成一个唯一的测试数据块,通过星型网写入中央存储柜的指定区域,等待一段随机时间(用本机时钟计数器的低几位做延时,避免同时写冲突),然后从存储柜同一地址读回数据,比较读写是否一致。
结果写入存储柜的状态表区域,在显示器上打印“成功”或“失败”。
监控终端上,16个绿色方块的状态从“待机”变成“运行”。
中央存储柜的指示灯开始闪烁,多端口存储控制器在忙碌地处理着来自16个节点的并发请求。
仲裁、排队、响应。
不到十分钟,所有节点的显示器上全部出现了“pASS”。
陈工又记一笔:“星型网单点读写,16台全部通过。”
第三阶段:环状网令牌传递测试。
断开星型网,仅连接环网同轴电缆。
所有节点初始化为监听模式。
吕辰走到一号机前,在操作台上敲了几个键,指定Id=0的节点生成测试令牌。
诸葛彪按下“运行”按钮。
显示器上字符开始跳动:
toKEN GEEd
toKEo NodE 1
机房里16台显示器的字符开始依次跳动。
令牌从一号机传到二号、三号……每一台机器收到令牌时,都会在显示器上打印一行:“toKEN REcEIVEd FRom NodE x, FoRwARdNodE Y”。
令牌像一列看不见的火车,在环网上飞驰。
大约一秒钟后,令牌回到一号机。
最后一行字符出现:
toKEURo NodE 0
AccUmULAtEd SUm: 120
RING EctIVItY tESt: pASS
接力传信通过,接下来是令牌环基础测试。
令牌里带着目的地址和源地址,在环网上广播。
每一台收到令牌的节点把自己的Id添加到数据中,然后转发给右邻。
又是一秒钟,令牌回到一号机:
toKEN RI: ALL NodES pRESENt (16/16)
RING pRotocoL tESt: pASS
陈工笑了:“环状网令牌传递,16台全部通过。”
第四阶段:混合拓扑全连通测试。
星型网和环网同时连接。
16台机器运行“全对全向量求和”算法,每台机器通过星型网向存储柜写入自己的初始值,再读取所有其他节点的值累加;同时通过环网与左右邻居交换数据计算边界差。
所有节点最终都计算出全局和120,边界差验证正确。
监控终端上16个方块全部显示“运行”,中央存储柜指示灯闪烁得比昨天更快。
大约五分钟后,所有节点的显示器上同时出现:
LocAL SUm S=120, VERIFIcAtIoN pASS
boUNdARY dIFF VERIFIcAtIoN pASS
hYbRId topoLoGY tESt: pASS
陈工写道:“混合拓扑全连通测试通过。”
第五阶段:容错与压力测试。
这是最漫长的阶段,也是最暴露问题的阶段。
先做节点离线测试。
孙班长走到七号机后面,拔掉电源插头。
七号机的显示器瞬间熄灭,风扇停止转动。
监控终端上七号机的绿色方块变成红色,旁边出现一行字:“NodE 7 oFFLIEd”。
不到一秒钟,其他十五台机器的显示器上都打印出了“NodE 7 oFFLINE”的警告。
吕辰看了一眼时间:“响应速度合格。”
孙班长把电源插回去,机器重新启动,自检通过,自动加入环网。
监控终端上的方块从红色变回绿色。
然后是存储柜端口故障测试。
孙班长走到中央存储柜后面,拔掉五号机的星型网线。
五号机的显示器上正在运行的程序突然报错:“StAR woRK REAd ERRoR”。
监控终端上五号机的方块从绿色变成黄色,旁边出现“NodE 5 StE AccESS FAILEd”。
吕辰在本子上记:“故障检测正常。”
接下来是环网断线测试,这是整个联调中唯一出现逻辑不直观的地方。
孙班长走到八号机和九号机之间,拔掉了那段同轴电缆。
这一次,故障不是立即全面显现的。
环网上的令牌还在跑,但跑到八号机的时候,发不