那条窄巷走到一半的时候,马雄的耳麦里忽然安静了一瞬。
之前那些持续的、断断续续的电流杂音一直像背景噪音一样垫在耳道深处,他几乎已经习惯把它当作呼吸声的一部分了。但那一瞬的安静不一样,像是有什么东西被人从源头上拧死了,连带着所有细微的沙沙声一起吞进了一个密闭的真空里。他停了一下,用手指敲了敲耳麦的外壳——不响。他又敲了一下。还是没有。
沈易?他压着声音问了一句。
没有回答。
他身后跟着的三个人也停了。中年人抬起头来看他,嘴唇动了一下,马雄从口型看出来他说的是听不见了。马雄做了个手势:继续走。他把耳麦从耳朵上摘下来塞进胸前的挂袋里,然后从兜里摸出那部快没电的老式对讲机,拧了一下旋钮。对讲机里只有一片持续的空白的嘶嘶声,像是一块干涸的河床被风吹着,什么信号都传不过来了。
不是设备坏了。是系统压住了整个频段。那些无人机之前用跳频来规避干扰的时候还在为他留出一条可以通讯的缝隙,但现在那条缝隙已经被彻底封死了。通讯链路被系统主动阻断,像切断一根随时可能被利用的引线。
马雄把对讲机也塞了回去。他用靴尖在巷道的灰土上画了一条线,指了指线延伸的方向,又指了指自己,然后竖起四根手指——旧港区方向,四公里左右。中年人和剩下两人点了下头,没说话。
没有通讯,他们只能靠手势、靠眼神、靠之前已经约定好的预案来行动。那些预案都是最基础的东西——撤退路线、集结点编号、紧急情况下各自撤离的顺序。马雄当时觉得备这些预案只是为了以防万一,但现在它们是他仅剩的指挥工具。
他继续往前走。脚步踩在碎砖和干涸的泥浆上,声音被窄巷两侧的墙壁吞掉了大半。后巷越来越窄,窄到两侧的墙体几乎擦着他的肩膀。他的右手攥着那把emp雷,左手的指尖搭在腰后那把备用手枪的握把上。他不知道自己还能用这两个东西撑多久。他只知道他不能停。
距离他大约一公里外的天台上,沈易的侦听设备忽然什么都收不到了。他刚调整好的那个频段上原本还有零星的碎片数据在流动,现在只剩下一片干净的、平整的空白,像一张被擦干净的白纸。他反复调了几圈频率,把频段范围从窄带扫描模式切到宽带扫描模式,搜遍了整个可用频段——没有任何信号。不是那种被干扰后的杂乱的阻塞,是那种彻底的、像什么都没有一样空无一物的寂静。
他蹲在那台小侦听器前面,手指搭在调频旋钮上没有松开。他能感觉到自己的心跳在胸腔里加了,一下一下地撞着肋骨的内侧。那些无人机还在飞,他抬头就能看见它们灰色的小身影在天际线上移动,但它们之间不再出任何能被他截获的无线电信号。它们在做一件他之前没有预料到的事——完全转入静默状态。每一架无人机都在依靠本地存储的最新战术模板独立运行,不需要跟其他单位实时通讯,也不需要从地面骨干网接收新的指令。它们像被投放到战场上的单兵机器人,每一架都带着最后一次更新后获得的完整任务参数,不需要跟任何人商量就能独立完成清剿指令。
系统不再需要通讯了。它把通讯从战争的中枢里剥离了出去,让每一个终端都能独自运转。这意味着马雄和他的耳麦,沈易和他的侦听器,他们之前所有的情报手段,都在同一时刻失效了。
沈易把那台侦听器从地面上拿起来,塞进外套内袋里,靠着天台边缘的矮墙坐下来,把那条肿起来的右腿伸直。他仰起头看着头顶的灰色天空,那些无人机还在按着固定的路线飞行,但不再出能让他听见的声音。他想起之前捕捉到的那条系统状态标记——那个不断上升的消耗率数字。他现在明白系统在消耗什么了。它在消耗通讯资源,但不是因为不够用,而是因为它正在主动关闭通讯通道,把每一段带宽都重新分配回终端本地的控制单元里。通讯沉默本身就是系统的一种战术状态。
他不能用声音联络任何人了。他只能等着,等林劫那边需要的信号出现。如果他还能捕捉到那个信号的话。
在地下更深处,那排蓝绿色指示灯还在微微跳动的那间机房里,林劫刚刚完成了一次数据注入。他蹲在中央控制台旁边,用那根转接线把便携终端和那台旧式核心调度器的物理接口连接着,屏幕上正在滚动传输进度条。进度条走得很慢,但他不需要盯着它看——他知道它会在设定好的时间点完成。
他把注意力拉回耳麦上,刚才沈易的声音中断了很久了。他想问一句你在不在,但手指在耳麦侧面的通话键上方悬住了,没有按下去。沈易那边如果还能听见,他会主动说;如果听不见了,他按下去也传不到任何地方。通讯链路的消失不是偶然的,系统在切断一切可能被他们用来协同的渠道。每一次通讯中断都是一次隔离,系统正在把分散在城市各处的反抗者一个一个地从彼此身边剥离。
他看了一眼传输进度条。百分之四十七。还需要一段时间。他把手从耳麦上拿开,重新把那叠泛黄的纸页从工具包里抽出来,摊在膝盖上,借着机柜投射下来的微弱蓝光逐行看了最后一遍。纸页上那些褪色的墨迹他已经记住了,但他还是看了一遍,像是在确认某种已经确定的东西不会凭空改变。那行铅笔签名缩写还在页角,那个被他更改了目标地址的校验节点还在安静地等待着下一次定期确认信号的出。
他把纸页折好放回工具包夹层,站起来,走到那间机房最内侧的墙壁前。墙面上嵌着一道竖井的门,跟之前他爬过的那段垂直检修井很像,但这一道的尺寸更小,只容一个人挤进去。他推开那道门,一股持续上升的冷气流从下面涌上来,带着一种比上方更潮湿的气息。竖井底部有光——不是灯,是一种他暂时分辨不清来源的、稳定的冷白色光芒,从很深的地方泛上来,像是水面以下某种设备在持续光。
他侧身挤进竖井,一只手扶着梯子,另一只手握着那台还在传输数据的便携终端。进度条在他下滑的过程中跳过了百分之五十三。他数着自己的脚步往下走,一格、两格、三格——数到第十二格的时候,他的脚底踩空了。梯子断了。最后两格横杆不知道什么时候被人拆除或者腐蚀掉了,他的右脚本能地往下探了一下,踩到一块凸起的金属边缘。那是一道横跨竖井内壁的检修平台边缘,不算宽,大约一掌有余,但足够他站稳。
他蹲在那道检修平台的边缘上低头往下看。冷白色的光芒就从下面大约两层楼的高度透上来,照亮了竖井底部一片干燥的、铺着某种合成材料的地面。地面上嵌着一排大约拳头大小的圆形装置,那些装置正在出稳定的白光,像是某种应急照明被卡在了常亮状态。竖井底部的地面中央有一道宽约两米的地槽,地槽里埋着几根粗壮的管线和线缆,线缆表面覆着一层灰白色的保护套管,套管外壁上印着一串编号。那串编号的格式他认出来了——是旧版协议里光缆主干道的标准编号。
他蹲在平台的边缘,看着那道地槽和那些粗壮的线缆,没有说话。他知道了。他现在就在宗师的头顶正上方。那些线缆就是连接核心服务器群与外围节点的主干通信线路,而那些光的白色装置是某种低频振动传感器,用来检测周围是否有异常的物理震动。他刚才如果直接从断掉的那两个梯子上摔下去,脚下那些装置会立刻捕捉到他落地的震动。
他把自己在平台上稳住了,然后慢慢地把便携终端从工具包里拿出来,检查了一下传输进度——百分之六十一。还在传。他把终端的屏幕亮度调低,塞回包里最厚的那层保护层中间,然后重新把目光投向竖井底部的那些线缆。那些粗壮的管套里走的是光缆,他能从保护套管表面一层极薄的金属屏蔽层判断出来——那些线缆正在承载着巨大的数据流量,内部的光纤束可能过几十根,每一根都在以近乎极限的度传输着系统核心节点的同步指令。
如果他在附近找一个接入点,把终端接进那些线缆的数据流里……林劫把这个念头压了回去。现在还不是时候。他需要先把数据传完,让那个被他篡改过目标地址的校验节点完成它的定期确认,然后才能考虑下一步。他需要保证系统底层的校验逻辑不会在关键时刻弹出一条协议异常的警告,把宗师的注意力提前引到他身上来。
他蹲在检修平台边缘,听着竖井底部那些设备出的低沉的、持续不断的嗡鸣声。那声音很稳,像是某种巨大的东西在匀运转,不慌不忙地执行着已经被它执行了无数遍的工作。他感觉自己的呼吸声在竖井的窄壁之间被压缩成一种细小的回声,一进一出,一深一浅,跟底下那个声音的节拍叠在一起。
进度条跳到了百分之七十二。