广州天河区移动机房,地下室三层。这里常年恒温恒湿,但空气里有种说不出的沉闷——像时间停滞的味道。
林辰跟着张志强穿过一排排机柜,指示灯在昏暗的光线里明明灭灭,机器风扇的低鸣声汇成一片白色的噪音。
“李峰的工位在这里,”张志强停在一个靠墙的隔间前,“他逃跑后,我们封存了他的所有物品,包括工作电脑。”
隔间很普通:一张办公桌,一把转椅,一台台式电脑,还有墙上贴着的几张基站分布图。桌子上摆着个搪瓷茶杯,杯底有没喝完的茶垢;烟灰缸里有三个烟头,都是红双喜。
林辰戴上白手套——这是王哲从酒店厨房要来的,说是“保持现场”。他按下电脑电源键,老旧的兼容机发出硬盘转动的咔哒声,屏幕亮起蓝光,windows 95的开机画面缓慢加载。
“密码是多少?”他问。
“我们试过了,,”张志强苦笑,“这种老员工,安全意识差。”
果然,密码是。系统进入桌面,壁纸是默认的蓝天白云。桌面很干净,只有几个快捷方式:基站监控软件、邮件客户端、扫雷游戏——1998年windows自带的经典游戏。
林辰点开“我的电脑”,开始浏览硬盘。c盘是系统文件,d盘是工作资料。他打开d盘,里面按照年份分文件夹:1995、1996、1997、1998。每个年份里又有子文件夹:基站日志、故障报告、维护记录……
看起来一切正常。一个普通维护工程师的工作档案。
但周峰凑过来看了一眼,就发现了问题:“1998年的文件夹,最后修改日期是12月20日。”
“昨天?”林辰皱眉,“李峰昨天还来上班了?”
“来了,”张志强说,“昨天下午他还正常交班。谁能想到晚上就……”
林辰点开1998年文件夹。里面确实有12月20日创建的文件:一份基站巡检报告,一份备件申请单,还有几个临时文件。他逐个打开检查,内容都很正常。
“等等,”王哲指着屏幕,“看这个临时文件的创建时间:12月20日,晚上十一点三十七分。”
那个时间,正是天河城基站故障发生前。
林辰双击打开文件。是一个文本文件,里面只有一行乱码:0x7F 0x45 0x4c 0x46...
“这是……”张涛凑过来看,“十六进制数据。看起来像……可执行文件的头部?”
“对,”周峰眼睛亮了,“这是Linux可执行文件的魔数。0x7F后面是‘ELF’,是Linux程序的标准格式。”
“李峰的电脑是windows系统,怎么会有Linux可执行文件?”林辰问。
“可能是个工具,”周峰说,“或者……是个木马。”
这个词让机房里的温度骤降了几度。
1998年,计算机病毒还是个新鲜概念,木马更是少有人知。但在清华计算机系,林辰他们早就接触过这些概念。
“能恢复这个文件吗?”林辰问。
“我试试,”周峰从背包里拿出几张软盘——里面是他自己写的磁盘工具,“这种临时文件,系统删除时只是标记删除,实际数据还在硬盘上,除非被新数据覆盖。”
他把软盘插入驱动器,运行恢复程序。屏幕上出现扫描进度条,硬盘灯狂闪。
等待的时间里,林辰继续查看其他线索。他打开李峰的邮件客户端——outlook Express,1998年最流行的邮件软件。收件箱里有几百封邮件,大部分是工作往来:故障通知、会议邀请、文件传送……
但有一个发件人引起了林辰的注意:ericsson.support@guangzhou.
“爱立信技术支持?”他点开邮件。
邮件内容很简短,都是技术问答:某个接口参数怎么设置,某个告警怎么处理,某个功能怎么开启。看起来是正常的厂商技术支持。
但邮件的频率有点高:过去三个月,李峰和这个邮箱往来超过五十封邮件,平均每周三四封。对于一个维护工程师来说,这个频率太高了。
更奇怪的是,这些邮件的时间:大部分在晚上八点以后,甚至凌晨。
“李峰这么敬业?半夜还跟爱立信讨论技术问题?”王哲嘀咕。
林辰没说话,继续往下翻。翻到最近的一封邮件,发送时间是12月20日晚上十点——天河城故障发生前三小时。
邮件内容是:“关于华为天网项目接口兼容性的技术咨询。”
附件里有个文件,文件名是huawei_interface_spec.pdf。
林辰点开附件,pdF阅读器缓慢加载——1998年,pdF还是个新鲜格式,阅读器又大又慢。文件打开后,里面确实是华为设备的接口规范文档,但文档上有大量手写批注,用的红色字体,很刺眼。
批注内容很专业,指出了接口设计中的几个“潜在风险点”:某个参数范围定义过宽,可能导致设备过载;某个指令缺少安全检查,可能被恶意利用;某个状态机设计有缺陷,可能在特定条件下死锁……
“这是……”张涛推了推眼镜,“专业的技术分析。写批注的人,至少是资深系统工程师水平。”
“李峰有这个水平吗?”林辰问。
“没有,”张志强肯定地说,“李峰在维护部干了八年,技术还行,但到不了这个程度。这些批注……像是爱立信那边的人写的。”
线索开始指向一个方向:李峰和爱立信有密切联系,爱立信在关注华为的天网项目,而且对华为的接口设计很了解。
这时,周峰的恢复程序发出“滴”的一声提示音。
“恢复了!”他调出恢复出来的文件,“是个可执行文件,大小128Kb。我反编译看看。”
他又运行另一个工具——自己写的反编译器。屏幕上出现一屏屏的汇编代码,密密麻麻,看得人眼花。
但周峰看得很快,手指在键盘上飞舞,一边看一边解释:“这是个监控工具……功能是实时采集基站性能数据……有数据转发模块……转发地址是……192.168.10.205。”
“这个Ip是哪里的?”林辰问。
张志强脸色变了:“这是……爱立信广州办事处的内部网络地址段。”
机房里的空气凝固了。
一个移动的维护工程师,在电脑里藏着爱立信提供的监控工具,把华为基站的数据实时转发给爱立信。
这意味着什么,所有人都明白了。
“商业间谍,”王哲吐出这个词,“李峰是爱立信的人?”
“不一定是爱立信的人,但至少是被收买了,”林辰说,“爱立信通过他,监控华为设备的运行情况,了解华为的技术细节,甚至……找机会破坏。”
他想起天河城基站的故障:接地线被剪断,强制重启指令,干扰信号释放——这些都是专业手法。如果只是李峰一个人,可能做不到这么周全。但如果背后有爱立信的技术支持,就说得通了。
动机也清晰了:天网项目如果成功,华为在移动网络优化领域的地位会大大提升,直接威胁爱立信的市场份额。破坏这个项目,符合爱立信的利益。
“王总知道这些吗?”林辰问张志强。
“我……我现在就汇报,”张志强声音发干,“这事太大了,超出了我的权限。”
他掏出手机,走到机房角落打电话。林辰听到断断续续的声音:“王总……查出来了……爱立信……对……证据确凿……”
五分钟后,张志强回来,脸色更加难看:“王总说,这事要慎重。爱立信是移动的重要合作伙伴,不能轻易下结论。他让我们先把证据整理好,等他明天从北京回来再定。”
“明天?”周峰皱眉,“夜长梦多。”
“王总有他的考虑,”张志强叹气,“爱立信在移动的根基很深,高层很多人和爱立信关系密切。没有铁证,动不了他们。”
这就是现实的复杂。技术问题可以靠数据解决,商业问题、政治问题,就没那么简单了。
林辰看了看表:下午三点半。
“这样,”他说,“证据我们继续收集,但先不公开。等王总回来定夺。不过,咱们得做好最坏的准备——如果爱立信知道事情败露,可能会狗急跳墙。”
“他们会怎么做?”王哲问。
“不知道,但肯定会继续阻挠天网项目,”林辰说,“而且手段可能更隐蔽,更专业。”
正说着,林辰的大哥大响了。是深圳总部的号码。
“林辰,我李一男。”电话那头的声音有些急促,“你们那边查得怎么样?”
林辰简单汇报了发现。
李一男沉默了几秒,然后说:“跟我猜的差不多。其实昨天,我就收到风声了。”
“您早就知道?”
“猜到,但没证据,”李一男说,“爱立信这几个月,对华为的打压越来越明显。上个月,他们在浙江抢了我们一个单子,用的手段就不干净。这次在天河城,只是升级了。”
“那我们怎么办?”
“两条路,”李一男说,“第一,把事情闹大,公开证据,让移动高层不得不处理。但风险是,可能引发华为和爱立信的全面对抗,移动夹在中间难做,最后可能两败俱伤。”
“第二呢?”
“第二,暂时压住,用这个把柄跟爱立信谈判,换取他们在天网项目上的配合,”李一男说,“但风险是,对方可能不认账,反而倒打一耙。”
两条路都有风险。林辰想了想:“李总,我觉得可以先选第二条试试。如果谈不成,再选第一条。”
“跟我想的一样,”李一男说,“这样,你准备一份技术报告,把证据梳理清楚。明天,我派人去广州,跟爱立信那边‘沟通’一下。”
“派谁?”
“郑宝用,”李一男说,“他是华为负责对外合作的副总裁,跟爱立信的人熟,知道怎么谈。”
郑宝用,这个名字林辰听过。华为早期的“外交官”,擅长处理复杂的商业关系。
“好,我等郑总来。”
“另外,”李一男顿了顿,“你们项目的试点推进不能停。爱立信越阻挠,说明你们越做对了。用成绩打他们的脸,比什么都管用。”
“明白。”
挂了电话,林辰看着机房里的兄弟们:“都听到了?战斗升级了。从技术战,升级到商业战了。”
周峰掐灭烟:“怕什么,咱们有技术。”
“对,”张涛推推眼镜,“数据在手,真理在握。”
王哲握拳:“干就完了!”
刘博没说话,但从工具箱里拿出一个新笔记本,封面写着:“爱立信设备接口逆向工程计划”。
这就是团队。不管对手是谁,不管战斗多难,他们总是知道该做什么。
傍晚六点,石牌村大排档。
还是那家店,还是那个光膀子烤串的老板。但今天的气氛不一样——五个人的表情都很严肃。
炒粉上来了,加辣,加蛋,加肉。但没人动筷子。
“辰哥,爱立信这事,你打算怎么跟郑总汇报?”王哲问。
林辰掰开一次性筷子:“如实汇报。技术证据、邮件记录、恢复的工具程序,都整理好。但汇报的时候,要突出重点:第一,爱立信在监控华为设备;第二,他们可能参与了天河城破坏;第三,他们的目的是阻挠天网项目。”
“郑总会怎么谈?”张涛问。
“不知道,但肯定是以‘合作’为名,行‘施压’之实,”林辰说,“华为和爱立信现在的关系很微妙:既是竞争对手,又是合作伙伴——在很多项目上,华为的设备要和爱立信的设备互联互通。所以不能完全撕破脸。”
周峰吐出一口烟:“那咱们就憋屈了?明明是他们搞破坏,还不能公开?”
“暂时的,”林辰说,“等天网项目成功了,等咱们的技术领先了,到时候再算账,更有底气。”
这就是现实。技术人总想用技术解决问题,但商业世界,往往需要更多的智慧和耐心。
“对了,”林辰想起什么,“爱立信设备接口的问题,咱们研究得怎么样了?”
这是天网项目的另一个难题:要实现对多厂商设备的统一管理,必须打通华为、爱立信、诺基亚三家的接口。华为自己的接口好办,但爱立信和诺基亚不配合。
刘博拿出笔记本:“爱立信接口,有三种协议:coRbA、SNmp、私有协议。coRbA是公开标准,但他们的实现有私有扩展;SNmp是标准协议,但mIb库不公开;私有协议完全没有文档。”
“能逆向吗?”
“能,但需要时间,”刘博说,“我分析了天河城周围爱立信基站的数据流,抓包分析了三天,大概摸清了他们的私有协议格式。但不同的设备型号,协议可能不一样。”
“需要多少时间?”
“全面逆向,至少一个月,”刘博说,“而且需要实际设备测试,风险大——如果被爱立信发现我们在破解他们的协议,可能会告我们侵权。”
又是两难。技术上行得通,商业上风险大。
“诺基亚呢?”林辰问。
“诺基亚更麻烦,”张涛接话,“他们的接口倒是标准,但设置了严格的权限控制。要访问他们的设备,需要诺基亚总部发放的数字证书。我们申请了,但诺基亚回复说,要‘评估合作价值’。”
“评估?评估什么?”
“评估天网项目对他们有没有利,”张涛说,“说白了,就是看这个项目会不会威胁他们的市场地位。如果会,他们就不配合。”
问题一环扣一环。爱立信用阴招破坏,诺基亚用阳招拖延。目的都一样:阻挠天网项目。
林辰喝了口啤酒,冰凉的液体顺着喉咙下去,带来短暂的清醒。
“这样,”他说,“咱们分两条线走。第一条线,继续跟爱立信和诺基亚正面沟通,走官方渠道,该申请申请,该谈判谈判。
第二条线,暗中准备技术方案——爱立信的协议逆向继续做,但要小心;诺基亚的证书,看看能不能想办法绕过。”
“绕过?”王哲眼睛亮了,“怎么绕?”
“设备在现场运行,总要有管理接口,”林辰说,“诺基亚的证书是软件层面的认证,硬件层面,设备总要接收指令。如果能从硬件层面入手……”
他没说完,但刘博懂了:“基站控制器有调试接口,通常是串口。但这个接口一般不开放给客户。”
“一般不开放,不代表不能开放,”林辰说,“移动是设备的主人,他们有权限要求厂商开放所有接口。只是以前没人这么要求过。”
“你的意思是,让移动施压?”
“对,”林辰说,“但不是现在。等郑总跟爱立信谈完,如果谈成了,爱立信配合了,那诺基亚就没有理由不配合——否则就是故意刁难。到时候,让移动以‘统一网管’的名义,要求所有厂商开放调试接口。”
这个思路很清晰:用商业手段解决技术障碍,用技术成果推动商业谈判。
“可行,”周峰点头,“但需要时间。”
“时间咱们有,”林辰说,“三个月试点期,现在才过三分之一。而且经过天河城这事,移动那边会更支持我们——毕竟,谁都不想自己的网络被人监控,被人破坏。”
正说着,林辰的传呼机响了。是苏晚晴发来的:“今天冬至,北京吃饺子。你吃了吗?”
他这才想起,今天是冬至。1998年的冬至,他在广州的城中村大排档,跟兄弟们讨论着商业间谍和技术攻防。
他回电话。
“喂?”
“林辰,”苏晚晴的声音传来,背景有喧闹声,“我们在徐教授家包饺子,陈浩把面粉弄得到处都是,吴瀚在研究怎么用算法优化饺子馅配比——你那边怎么样?”
林辰简单说了说进展,隐去了爱立信商业间谍的细节——电话里不安全。
苏晚晴听完,沉默了一会儿,然后说:“听起来很难。但你知道徐教授刚才说什么吗?”
“说什么?”
“他说,任何重要的技术突破,都会遇到三重阻力:技术本身的难度、既得利益者的阻挠、还有人们惯性的怀疑。你们现在遇到的是第二重,这说明你们做的是真正重要的事。”
这话有道理。徐云深不愧是学术泰斗,看问题一针见血。
“替我谢谢徐教授。”
“你自己谢,等他去深圳开会的时候,”苏晚晴笑,“对了,饺子我给你留了一份,冻在冰箱里。等你回北京,煮给你吃。”
简单的话,温暖的承诺。林辰心里一软:“好,我一定回去吃。”
挂了电话,炒粉已经凉了。但五人还是吃完了——战斗还没结束,身体不能垮。