我是无线研发的,对交付并不熟悉,只是根据直接的接触随便写了一些,对华为的无线产品还算比较熟悉的。可以这么说,看着第一产品开局,参与过产品的开局,再看到规模使用,再看到华为产品的局部领先。下面将开始说说华为的产品的竞争力。写这一块可能会讲讲华为的产品的历史,以前曾经的失误,以前产品的问题,华为的几个重大创新等,也顺便讲讲我自己的学习GSM的过程。
作为技术型的公司,产品的竞争力很重要,可以说是公司生存的基础。无线产品的竞争力是华为攻城略地的基础,是核心,再加上强劲的销售能力和具有华为特色的及时响应能力,这才造就了今天的无线。一个公司无论是多么高的工程管理水平,多么高的销售能力,多么高的营销水平,都必须依赖于有竞争力的产品才能打开市场和生存。如果没有了有竞争力的产品,高超的销售能力和营销水平,只能延缓他的下降速度,并不会改变他下降的趋势,比如Moto。如果在这个下降的趋势中,他能及时推出有竞争力的产品,将力挽狂澜,如果不能,则必死无疑。
如果将通讯企业比作军队的话,产品就是武器,是一个军队战斗力的基础,也就是一个公司竞争力的基础。销售和营销可能就是战场上的各级指挥人员,不但在战场指挥在一线的士兵,而且还会将武器的不足反馈给后方,比如某类型的枪会卡壳,让后方进行改进,或者对手拿了新式武器了。而服务有点像士兵,工程交付就是真正的战争。而研发则主要是负责研制和开发武器,总部的财务或者其他辅助部门则有点像大后方了。
如果一支只装备了汉阳造的军队绝对是打不过装备了坦克和重武器的摩托化的军队的,只要是现代化军队有一定的规模,也就是这个企业有一定的规模,因为汉阳造是打不动坦克的。这样的军队就算有勇猛的士兵,有优秀的指挥官,也只能在敌人关注不到地方建立一个据点,过过勉强吃饱饭的生活,还不能太声张。华为也基本上从汉阳造开始的,最开始的CC08机,产品并不稳定,功能并不强大,也只能走“农村包围城市”的道路。
华为无线最开始的产品也就是一个汉阳造(BTS20和单模块BSC),只能在边缘地区弄点小单子。等到BTS30和BSC32的时代,基本就算装备了迫击炮,枪也换成了自动步枪和冲锋枪,乘敌人巡逻或者扫荡不带重武器的时候去袭击一下。等到华为BSC6000和BTS3012出来的时候,应该算是勉强用上了坦克,不过这个坦克呢,防护装甲还不是很好,火力也不是很好,速度还很慢。等华为多载波基站/SingleRAN和双模BSC推出后,华为的坦克火力,速度和装甲算是基本平齐了,甚至可能还局部领先了,不过呢这个坦克使用比较复杂,并且驾驶舱里面还没有配备空调,士兵开起来满头大汗,而同期虽然对手的坦克火力和装甲赶不上咱华为的,但是也基本算差不多,不是行家看不出来,但是人家驾驶舱里面配备了空调,使用起来也比较方便,操作不会出错,而咱华为的,因为操作复杂,偶尔还可能会出错。但是这个时候华为已经基本能够和对手开始搞阵地战了,郊外的阵地战(新网新牌)胜算大些,但是攻城站(搬迁项目)虽然攻得不少,但是失利的也不少,一般胜利战役的对手都是坦克比较差的,并且防守的火力又不行的,失利的战役大多少是对手的坦克差不多或者防守的火力特别猛的。
随着指挥官(销售和营销)和士兵(交付体系)的水平提高,这两年攻城的胜利比例正逐年提高,同时坦克也在改善中,驾驶舱的空调(OM能力和资料)也在研制中。相信华为最终会成为一支战斗力最强的军队。虽然这样,也不可能战无不胜,因为也会有指挥官的失误,也会有士兵的训练不足。
3.1 华为GSM产品简史
/*想了想,还是不写小兵看无线了,就在这里加上一节,算是从小兵的角度看看GSM的发展,算是对之前回帖的一个交代吧。当是注释,略过*/
华为的无线是是从ETS开始的,ETS开始的时间不详,但是就传闻来说,华为开始没有无线的经验,直接从交换机的研发团队拨了一批人成立了无线业务部,当然最开始目标肯定是瞄着当时中国刚刚开始的GSM市场的。
中国移动通讯历史可以参考近期国庆宣传资料,简单而言,就是87年开始了移动网的建设,在94年,为了打破垄断,成立了联通,联通应用的是GSM,而那个时候的中国电信还在苦苦等待Moto的CDMA系统商用,那个时候因为寻呼和模拟系统,和电信的关系非同一般。因为联通GSM很快放号使用了,并且比电信的模拟移动网络好很多,因此电信也没有了等待的耐心,因此很快就上了GSM,并分家成立了现在的中国移动。
刚刚成立的无线业务部,一拨领导人再加上招聘的新员工,摸索着将模拟的ETS整出来了。随着ETS的研究成功,标志着华为已经基本掌握了无线的射频技术,当然这个射频应该是模拟的,和GSM的射频应该还是有不小的差异。你们应该知道,那个时候搞射频的,国内的资源不多,除了军事单位的雷达之外,民用的最多也就是微波了,所以射频算是那个时候的特殊人才,在考评和待遇上面是有倾斜的。
GSM最开始的技术积累是从几个单位挖的人开始的,因为毕竟没有搞过这么复杂的产品,这么多网元,每个网元的复杂度都很高,只有MSC还能从交换机那里有点继承。因为交换机也只有对上业务系统和7号及对下的用户线而已(固网的人不要笑我,我对交换机了解不多),而GSM系统要上就是一整套系统,包括核心网的HLR,VLR(现在都已经集成在交换机中了),MSC,接入网的BSC和基站,每个网元的处理复杂度都要比交换机大一些。拿比较熟悉的接入网来说,BSC(基站控制器)不但要处理用户的接入和接续,还完成对基站的配置,无线资源管理,功率控制,切换等,并且还需要有TRAU子模块,完成语音编解码。而基站不但要完成无线信号的收发,还要完成信号的解调,基带处理,跳频等。所有的都是新的,如果没有熟悉的技术牵头人,仅仅靠华为原来的老员工去学,估计不知道什么时候才能拿出产品。
当然那个时候国内没有任何单位在开发GSM产品,有的只是一些邮电部的研究所在跟踪和了解GSM技术,所以华为的GSM产品都是自己一笔一画的写出来,当然基站在华为无可用的平台,肯定有模仿的对象,会在后面提到,但是应该没有从友商那里去抄袭。
没有经历过97年样机打通电话的激动人心的时刻,我进华为的时候,已经处于商用产品开发的功能补齐阶段,比如话统告警性能开发,OM维护功能完善,从当时的Phase1协议往Phase2升级,现在很多人可能都不知道有这些协议阶段,类似现在R99和R4的关系,但是那个时候Phase2定义的功能大多数是一些基本功能,而不是现在协议中升级中的可做可不做的可选功能。那个时候GSM已经成立了产品线,产品线的领导都是当时从研究所挖过来的技术大拿。说大拿,那可不是吹出来的,传闻当时的BSC主机软件,就是一个大拿带着两个员工写出来的,不要说写这么多代码,就是将所有和BSC相关的协议都读懂,理解透,并且勾画出BSC架构,再将主机软件分模块,就已经让人佩服不已了。现在华为的BSC开发测试团队加起来可是有几百人的,并且有前人的多年累计的文档和资料。当然现在的BSC功能是比以前复杂多了,代码量也是以前的几十倍了。
3.1.1 产品真正的商用化
样机和商用化产品有多远,对于小系统可能不是很远,可能差几个月或者半年,但是对于整个GSM系统来说,那就差得很远了。97年打通电话的产品是没有见过,等我见到华为产品的时候,BSC的版本号已经到了BSC2.1,BTS也已经到了2.0,MSC的版本号已经到了3.X了。按照现在华为部分研究项目的样机开发来看,一般样机都是怎么简单怎么来,我敢肯定,样机的维护台是没有消息解释的,样机里面的话统肯定是很不完整的,样机里面的很多网规参数都是不能设置的,应该是在程序中写死的。
华为GSM从样机到商用化产品,一走就是一年半,接近两年。按照1997年9月5日华为的GSM打通第一个电话,也就是从原型机开发出来,到真正具备试商用,其实按照严格意义上面来说,还不能算商用,只不过当时的中国移动和中国联通能够宽容的接受了华为的一个很不成熟的产品而已,但是市场的容量是很小的。
举几个现在看来不可能的例子,那个时候,基本没有问题定位手段,基本上是靠打开前台的打印和前台发到后台的断言来定位问题,最开始的时候,所有人都是靠记住消息的字段划分来判断这一条消息是否对,经常看到一个开发人员和一个测试人员一起盯着显示器,打开一条消息,开始数1,2,3….,一直数到第12个字节,看到这个字节是5F,好,然后再打开协议,测试人员说,你看,这个消息,这个字段你应该发的是5E,而不是5F。发了5F,这个就变为XX含义了,呼叫当然就进行不下去了。
GSM的消息跟踪是从交换机继承过来的,那个时候不知道交换机是否有消息跟踪的解释,反正GSM是没有的,这个时候,一个大拿(5,6千号左右,在那时是一个比较老的新员工而已)出现了,觉得这样定位问题和测试太费劲了,就自己研究编译原理,设计了一套机制,根据前台吐出来的消息,动态根据GSM的协议不同的IE,将GSM协议的每个字段都解释出来,一点某个具体的消息,就弹出一个小框,然后分层分段的将消息头,消息的IE字段全部解释出来,后推广到整个GSM产品线,就将技术全部移交给开发了,因为他是测试人员。那个时候,能够解释的消息的有惠普的MA10,那可是10多万一台呢,整个产品线好像就几台,并且还只能解释很标准的信令。这么一来,相当于产品线人手一台MA10,大大提高了测试和问题定位的速度。不过很可惜,这个大拿2000年的时候就离职出国去了。据说这个工作是他自己琢磨的,并没有耽误主管安排的工作任务,只是工作基本有思路之后才给主管提及,专心的搞这个。所以呢,我觉得任何岗位,只要你会思考,都能做出很大的成绩,关键看你是否思考而已。现在很多测试人员觉得测试没有劲,关键你是否有思考,是否有想法,测试其实也出了不少人才的,当然你到了一定级别之后,测试上升空间稍微小一些,我也是搞测试出身的。
商用化开发,大话务量测试是必不可少的。在刚进公司的时候,因为忙于学习和工作任务,因此对其他的小组的工作并不是很了解,只能大概描述一下这个过程。华为无线的大话务量工具的鼻祖也是一个测试人员,是从BSC开始的。MSC的原来是否有大话务量工具我不清楚,但是我知道后来MSC专门吸取了BSC组话务量测试方法和理论,后来MSC话务量测试组在一个美女带领下,也是做得有声有色。
那个时候BSC的软件已经基本成型,一般的功能测试虽也能发现问题,但是还是很担心话务量冲击的问题。原来最老的单模块BSC虽然是没有经过话务量测试,毕竟那个时候单模块BSC容量小,在商用网上带的基站也少,到是没有出过话务量冲击的问题。但是基于多模块交换机的BSC31,已经能够支持1024个载频,并且涉及到模块间通讯,容量大了之后也肯定会涉及到流量控制的问题,因此当时的产品已经意识到必须要上话务量测试。就这样,话务量工具的鼻祖就带了3个98年进公司的3个测试员工(其中两个还是后来加入的),开始了话务量测试。从最开始设计模拟基站和BSC建链开始,到在工具里面增加模拟手机用户的状态,再到XX(不能再细说了,免得有信息安全的风险)。到了最后,工具成型了,将话务量的环境搭建起来之后,新版本要发布到测试部去测试,必须要经过话务量测试这一关,因为发现发布的版本经常因为一些低级的没有释放内存或者其他的低级错误导致版本测试阻塞。话务量测试组为BSC的稳定起到了至关重要的作用,发现了不少类似内存泄漏,高话务冲击情况下设计考虑不周的问题。当时那个组某兄弟的屏幕保护曾经写着“痛并快乐着”,还曾经在产品内部宣传了一把,写过一篇文章,老兄弟应该是知道的。
那个时候商用化不成熟的另外一个标志就是,开发人员(那个时候还没有定义设计人员,只有骨干人员牵头的概念)在开发时候,所谓的设计都是从研发人员实现的角度来考虑的,那不是一般烦琐,比如用于内部单板之间通讯连接的链路号都是要数据配置人员进行计算和匹配,逻辑编号要对应,不然BSC起不来。你想,那么多数据表格,不但要保证业务的数据的逻辑正确,还要保证BSC内部连接逻辑关系的正确性,你说累不累啊,局方怎么去接手维护啊。
在BSC的业务数据中,小区的全球小区号(好像在核心网叫GCI)要不同的表格中配置两次,我印象中一次是在基站数据配置中,一次在切换数据中。一般情况是以站点数据配置的为主,如果有不一致,那么就会导致切换失败,影响切换成功率。
那个时候,最开始HLR开局的时,开户好像只能单个开,一组开户好像可以,但是不知道什么原因,反正运营商开户的时候因为操作烦琐,开户特别慢。有一次一个领导到了内蒙,局方的一个领导开玩笑对华为的领导说,你留下来吧,我们这里用你们的HLR开户特别慢,开户的人手不够。某领导回去之后大怒,立即将问题给整改了。这个问题在10年前,都已经上升到产品线级的领导了,要是放到现在,移动还不把华为人给吃了?
总之,在样机打通电话之后,经过一年半的开发,产品已经基本能够开局,也基本能够开局了,但是实际上商用化的程度还是远远不够,在业务功能上面也和友商存在很大的差距。
3.1.2 BTS的产品历程
华为的BTS经过好几代,从我的接触看,应该包含如下的如下四代半:BTS1.0 -> BTS2.0 -> BTS3.0/BTS312 ->BTS3012 ->BTS3900 。所谓的半代是说的BTS1.0,那个应该是属于非成熟化的产品,只能说是半代了。当然从BTS2.0 开始就应该开始有了系列化的概念,这个系列化就是室外型(国内很少用)和小基站。小基站也会有不同的规格,不同的应用场景,这里就不详细说了,主要说说主流的宏基站。
1. BTS1.0
BTS1.0应该是样机阶段开发出来的,等我加入到华为的时候,我只在某个实验室看到过一次,只是放在那里,没有使用。BTS1.0应该是一个2.2米左右瘦高形的机柜,不记得是6个机框还是7个机框了,能够支持的载频数量是6个,内部的结构不清楚, 因为是第一次做,集成度很差的。TRX、基带、功放等,都是分离的。我印象中BTS1.0是没有推向市场的,上市的直接是BTS2.0,就算开了,估计也就是最开始开的两个试验局(内蒙和河北)。
2. BTS2.0
我接触的最开始是BTS2.0,大概是1.6米高,一个控制框,里面包含了基带板,再上面是TRX单元,再上面是功放单元,合分路器和双工器单元。这里之所以用单元是因为这些部件基本都是大家伙。机柜不但前面要有复杂的框间连线,连机柜后面也要连线,因此肯定不能靠墙安装。因为一个机柜只能支持6载波,分到三个扇区,就是每个扇区2载波,而国内那个时候已经有很多的站点配置超过S222的配置了,因此一般情况是要并柜的,要并柜,那么就涉及到机柜之间的连线,那个时候机柜之间的跳频连线那是叫复杂啊,花花绿绿的线大概需要6根还是9根,机柜之间都要互联。除了调频线,还有时钟线,传输线,反正我印象中并柜是很麻烦的。
BTS2.0 传说是模仿的西门子的基站,因为那个时候搞的是BSC,因此也没有见过西门子的基站,对这个传闻也不知道真假。BTS2.0 在国内还是卖了一些,一直到06年,还有一些国内在网的BTS2.0基站,后来一般是通过自己搬迁自己替换掉的。印象中BTS20在海外卖得不多,不过最后的存活都是卖到了一些最落后的国家,国家的名字就不说了。
3. BTS30/312
华为在立项开发BTS2.0之后没有多久,就立项开发了BTS3.0。BTS3.0的开发是以上海研究所为主体的,这个也是上研所第一次开发真正意义上面的产品。这个实际上是华为在北研之外,第二次进行产品布局,具体过程不清楚,但是原因是深圳不能吸引到足够多的专业人才,比如射频。因为上海周围的搞射频的研究所还是有一些,江浙人比较喜欢在上海呆着而不愿意跑到深圳。因此在96年的时候公司就已经决定成立上海研究所了。在启动了BTS30之后,又在上海启动了应用时间很长的BSC32的开发,这个时候上研所已经有了真正意义上面的开发。
BTS30的开发吸取了BTS20开发的很多的经验教训,比如我印象中,虽然BTS30还不能严格意义上面的靠墙安装,但是一般情况下,已经不需要打开后盖了,只有特殊的情况下才需要打开后盖。同事BTS30在功能布局上面也有了长足的进步,比如功放和TRX合一了,虽然模块个头稍微大了一些,但是已经避免很多复杂的电缆连接,上下框的线缆连接主要是双工器和合分路器射频电缆连接及通讯管理连接。但是BTS30虽然提高了集成度,但是并没有解决一个机柜只能支持6TRX的固有缺陷,因为当时移动的S444的站点已经很多了,而联通是因为频点数的限制,才配置的S332的站型。就算S332,华为的BTS30一个机柜也不能搞定。因此在BTS30开发出来之后,就立即启动了华为卖了最长时间的BTS312的开发。为什么将BTS312归为BTS30系列呢,是因为这两个型号的基站的单板是通用的,只是结构上面变化,机柜更高一些,更宽一些,能够支持12的载波而已,而12载波最大的好处就是能够满足当时中国移动及中国联通的单机柜搞定一个S444以下站点的需求,市场定位还是很准确的。至于12载波是否是华为原创,我就不知道了,因为那个时候是小兵,基本是干BSC的活的,根本就不知道其他友商的情况。
BTS312的开发有一个很有意义的教训,就是没有注意工程问题的开发人员将第0框定义在最上面,也就是如果一个基站只有一个扇区,那么就需要将TRX和双工器放在最高的那个框。这样造成最严重的问题是只有一个框的时候,会造成基站的头重脚轻。最开始提出这个问题的时候,研发人员还认为无所谓,只是插哪里的问题,还不愿意进行软件的更改,没过多少时间,据说在生产线上面出现过机柜倒下的问题,才由上升到领导层,决策更改掉。从这个事情就可以看出,一批有经验的工程师对一个产品是多么重要。类似的例子可以举出很多,涉及到信息安全的因素,就不多举了。
成功的边际网
在BTS30系列基站中,最值得大书特书的就是开发了BTS3001/3002小基站,也就是大家熟悉的华为边际网的小基站。具体怎么包装的,没有经历过,但是边际网的包装的确是华为无线第一次高水平运作,为华为无线在移动品牌积累起到了至关重要的作用。这个产品经过市场准确定位和优秀的包装,很好的满足了当时的中国市场需求。
01年的时候,虽然城市里面年轻人的手机普及率已经比较高了,当时在中西部农村地区及东部相对落后的农村地区,手机普及率还不是很高。但是中国移动还是要覆盖农村地区啊,并且当时移动分家没有多久,网络的核心还是在城市里面,但是如果建立一个真正意义上面的基站,包括机房,铁塔,备电等,成本很高。但是BTS3001基站就很好的满足了中国的市场需求,直接挂在一个电线杆上,立一根全向天线,不用备电,基站直接带光接口板,只要传输拉到就可以。很快,就靠边际网的小基站,在全国布了很多点。大家都知道,基站布了以后再搬迁就很困难,而华为通过小基站的切入,逐渐打开了国内的市场。当然因为“边际网”包装得太成功,导致05年以后华为想进城,还特地再包装宏基站,避免“华为=边际网”的影响,那是后话了。
BTS30的开发基本上模仿的爱立信的,在01年之前,华为研发对对其他大牌的友商的认识可能差不多,比如爱立信,Moto,诺基亚;其他的友商,比如西门子,北电,朗讯等因为进入时间的早与晚,有些在网的载频多一些,有些市场小一些,但是当时已经是按照上述两个集团来看待友商了。BTS30基站也是华为有模仿对象的最后一款基站了,后面的基站已经基本上是华为自己根据市场需求,进行分析,确定规格了,因为那个时候华为的系统工程师已经有了一次完整的产品设计经验,已经有了不需要模仿(注意只是模仿,不是抄袭,和QQ的外型模仿类似,不需要因为布局分布和比例而大伤脑筋)对象而进行自主设计的能力。
3.1.3 BSC的产品历程
华为的GSM的BSC基站控制器严格意义上来说只开发了两代,但是也可以说开发了两代半。那就是以B型机32模为基础BSC32之前的版本及以PARC平台为基础的单模BSC6000及双模的BSC6900。但是版本还是经过了不少,从BSC2.1 -> BSC2.2 -> BSC31 ->BSC32 -> BSC600 -> BSC6900。BSC3X之前,硬件平台都是B型机,BSC6×××都是以PARC平台的,内部的核心是IP交换,当然也包含了TDM交换。双模BSC也可以算半代,有点类似GPRS算是2.5G的意思了,呵呵。
1.立下汗马功劳的B型机
先说一下BSC的平台B型机,那个可是华为第一稳定的电信级产品,也是华为真正和其他很多用户交换机设备商区分开来的划时代的产品,当然是那个时候的划时代的产品。推出时间应该是94年。在华为决定多元化的时候,几乎所有产品都是以那个产品开始为平台的,比如GSM全系列产品(基站除外,无法应用),智能网,传输等,就是不知道当时红极一时的A8010是否用到过这个产品。那个时候也是实力所限,有系统设计能力的大拿都在交换业务部,同时交换业务的硬件更新也同步到无线的平台,比如时钟,最开始是Clock2和Clock3, 后更换为GCKS。主控制板也随着业界处理器的进步在不停的升级,比如在我的印象中就有过MPU12,13的升级,因为处理器升级,因为内存扩展的升级,因为器件替代的升级等等,我接触的最后的MPU就是以AMD的5K86芯片为主处理器的,后面的就不知道了。
2.销售时间超过6年的BSC32
BSC最开始的版本是单模块的,一个机柜搞定,支持128TRX,因为实在是B型机的网板交换容量受到限制。但是别看小,那个时候业界主流的BSC的容量也就100多200多TRX,那个时代,一个TRX的价格传说要10万,具体的价格就不知道了,因为我入行比较晚,并且是研发的小兵。集成度在最开始的时候还算可以,一个机柜搞定主控,基站接口, A接口传输单板, TC码变换单元。单模块的BSC的应用量很小,BSC21根本就没有开局,BSC22也没有开几个局。因为在开发单模块的同时很快就启动了多模块BSC31的开发,以交换机的32模为基础,增加了AM/CM机柜,5个机柜能够支持1024TRX,当时已经是最大的BSC了,其他的友商一般才200多到500多,我印象中看到最大的BSC好像是当时的Nokia,好像是700多。因此在2000年的时候,觉得BSC差不多就这样了。但是毕竟无线的业务比交换机 业务要复杂,交换机够用的处理能力和内存在无线就显得不是那么充裕了,因此又将部分业务处理转移到了其他单板上面处理,增强了当时的LAPD单板的处理能力,但是又不能转移太多,因为内部通讯的带宽不够,毕竟B型机是90年代中期的设计产品,每个框的交换容量太受限制,能够支撑到2006年,已经很不容易了。
到了01、02年GSM 已经基本跨过了基本功能竞争阶段,进入性能竞争阶段的时候,原平台的限制的矛盾就立马突显出来了。主要是受限于三点:
1是交换能力不够,集成度无法提高了。
2是随着交换机平台的切换,主处理器的硬件不再做新开发了,更多的算法无法加到主机中。
3是前后台交换只有128K,严格限制了功能的扩展。因为BSC32早就不销售了,这个也不算泄密吧?也相当于让国内的运营商知道,不是华为不想在BSC32上面接纳新需求,实在手推车最高时速只能是10公里200公斤,再高的速度再重的重量搞不定了。
当然在无线业务内部BSC的局部改进一直没有停止过,比如基站接口板的改进,TC和传输合一的改进,TC板自身的能力的提高等。那个时候无线的其他控制器(CDMA BSC和RNC)已经用上了交换的另外一个平台,只有大规模卖钱的BSC平台还是10年前的产品。
3.无线自己的第一平台--PARC
在04年的时候,因为BSC能力限制也已经严重阻碍了市场需求接纳,和其他的友商对比而言,硬件集成度,功耗,占地面积等都已经相当落后了。在这种情况下,领导决定上马新的BSC开发,这一开发就是两年,等BSC6000真正上市的时候已经是06年了。
在开发BSC6000的过程中,吃过的苦头,那真是数不胜数,不但硬件平台是全新的,底层的软件也是全新的,业务部分软件虽然有继承,但是代码基本上重新写过。硬件平台是新的,但是硬件出了一个原计划替代BAM单板出了问题,其他的单板还比较争气。但是底层软件出现重大设计失误,软件效率极低,严重影响了设计规格。后从深圳请了几个大拿级别的人,主持整改,规格也基本达标了,只是在部分接口单板处理能力不够,多用一些就行了,后来也通过改版通过达到了指标。
不管怎么样,BSC6000总算弄出来了,2个机柜能够支持2048载频,连TC也只需要3个机柜。这样的规格还是很有竞争力的,关键是处理能力上去了,一些对性能有重要作用的算法能够上了。在第二个版本中,用了一块单板替换桎梏华为BSC多年的BAM,也就是后台计算机。随后又将处理分组业务的PCU集成到BSC内部,再次通过提升单板的处理能力来提高集成度,后面已经能够单机柜支持2048载频(含TC),这个在业界应该是领先的。现在好像有友商支持3072载频的BSC,但是不知道要几个机柜,也就不妄下评论了。后面会提及到,到了双模BSC,华为也好像也能够支持3072载频了。
说到容量,正好看到有一个帖子说华为的核心网的容量是吹的,我感觉基本上是扯淡,以华为现在系统设计能力要将容量做上去,硬件绝对不是问题,只是软件的复杂度大一些而已,包括核心网和BSC。虽然我没有接触核心网的产品,但是我相信他的产品规格肯定是可以达到的,至少BSC的规格我是在实验室看到的。但是这么大的容量运营商敢满配置吗,特别是MSC,N年以前,华为就可以支持200万的用户容量,但是除了在某些特别场景能够用到,比如沙特的朝拜(我觉得沙特的保障成功对核心网品牌的意义非凡),其他的地方一般真的敢用吗?一台MSC达到1000万用户,想想有几个运营商有几个城市能够达到这么高的容量?一般运营商的MSC实际带的用户数也是随着产品的稳定而逐渐增长的。记得原来一般的是20万到30万,后来是30万到50万,现在能够实际运行200万用户,也是说明华为的产品稳定啊,还Beat个啥啊(我是瞎扯的,对现在的核心网容量完全没有概念)。
BSC的应用也是一样的,我可以不夸张的说,以华为现在的设计能力,在现在BSC平台基础上,硬件架构略加改造,支持1万载频不是不可达的目标,无非是多加几个模块而已。但是如果所有的设备商都有了支持1万载频甚至2万载频的BSC,运营商敢用吗,敢用满吗?用满了,那可好了,全国就那么多载频,除以2万,假设中国移动有600万载频,全国最多3百台BSC搞定了,但是现实吗?设备容量实际上是运营商信心和业务容量需求的一个综合平衡,运营商只有在小容量被逼得没有办法的情况下,才会用更大容量的设备,就拿BSC来说,在10年前,一个普通本地网撑死了就几百载频,分2-3BSC是一个很正常的事情。但是如果用现在放到现在,稍微大一点的的本地网可能都超过1万,如果按照256载频算的话,要40个BSC,就BSC间的切换关系就能做死人。因此2000TRX的需求就自然提出来了,一个城市总归是需要分成几个BSC的,不然网络太不安全了。/*跑题了。*/
因为G9的成功,因此BSC6000的版本开始版本号是从V9开始,而不是V1开始的。但是最开始立项的时候是V1,需要从V1改为V9,为了从V1改V9,讨论过好几次,也花了很多不少力气去改这个东西。不要认为只是在版本中改一个显示版本号那么简单,在流程化的公司,改一个版本号的工作量还是很大的,比如公司各项管理系统中的版本号,各项市场宣传资料,产品资料,系统里面的帮助,软件里面的版本管理等等。当然BSC6000也没有无愧于这个V9的版本号,虽然没有G9的辉煌,但是在上市之后的质量还是很稳定的,至少比我预想的要好很多很多。
总之,随着BSC6000的上市,在网络性能,功能方面华为已经有了施展的平台,而不是像原来的BSC32那样,感觉就是像在走平衡木,所有的需求都要进行平衡,需要取舍,不知道下一次那个大T(包括国内的两个运营商)哪个必选需求就会将华为的BSC击垮(打-倒是敏感词汇,晕啊)。
4.双模的BSC产品
双模的BSC,顾名思义就是能够同时支持2G和3G,也就是一个硬件既能支持2G的BSC,又能支持WCDMA的RNC。这个是业界很早有的一个概念,但是实际上面是华为第一个将这个产品做出来的。华为在产品这个产品上面其实也随着3G逐渐商用,才将这个概念落到实处。
业界最开始提出双模的时候,其实并没有想得太清楚,双模BSC到底有什么用,怎么样用,有什么好处,只是大家都有了一个这样的概念而已。当华为还是BSC32时代,正在开发BSC6000的时候,已经在考虑,双模的概念到底是怎么用,有哪些好处?随着BSC6000的开发进展,规格也明确了,BSC6000和RNC采用的是一样的机架,因此第一层意思也就出来了,那就是能够BSC/RNC共柜安装,就当时的产品来说,共柜安装除了给可能比较的小的运营商带来机房面积的节省之外,并不会给运营商带来更多好处。
随着华为RNC的硬件平台的切换,RNC也采用了和BSC6000的平台,当然使RNC集成度和规格上面有了进一步的提升,同时也给双模带来第二层的概念,也就是BSC6000能够升级到RNC,当然本来GSM使用的是TDM传输,WCDMA大多数使用的是ATM,最新的还有使用IP的,因此肯定不是所有的单板都能够重复利用。当时这个还是能够吸引运营商的,毕竟从BSC升级到RNC,很多单板是可以使用的,机柜机框都是可以使用的,升级的话,也就是更换部分单板,升级软件而已,比将老机柜扔掉,安装新机柜,或者割接要来得简单得多。
随着华为SingleRan概念的深入和落地,双模BSC的开发,那么概念就变得更加清晰化了。我一个双模的BSC,你要用成BSC的,很简单,就是将软件配置成为GSM-Only的方式就可以了,如果你要成RNC,那么就是将软件配置成为UMTS-Only的方式。你要用双模,那也没有问题,配置成为Dual-Mode就可以了。当然在整个过程里面,还会伴随着XXX,YYY等工作,ZZZ的调整等。
?你要BSC/RNC独立,互不影响,可以实现。
?你要一个网元实现BSC/RNC的功能,业务分框实现,也没有问题。
?你要在一个框里面实现BSC/RNC的业务,进行单板级共享,我也能支持。
?你为了保护投资,先用成GSM-Only的模式,随着2G网络容量的减少,用成GSM+UMTS的双模BSC,最后随着GSM网络的关闭或者合并,将这个控制器转换为UMTS-Only的模式,肯定可以,这个就是我们设计的初衷。
总之,双模BSC将你想到保护投资的场景已经都涵盖了,由运营商来选择。同时双模BSC除了给运营商带来保护硬件成本投资外,还能够减少硬件施工次数,再就是将投资之出就可以直接将网络后续的发展空间留下来。另外对于GSM-Only的情况,还可以提供3000多载频的容量,应该是业界最高容量的控制器了吧,关键看运营商是否敢用了。
随着双模BSC的推出,再加上之前提供的3900系列双模SDR基站,华为的SingleRan已经实现,这个是华为SingleRan概念的完整阐述,能够最大限度的保证运营商的投资,无论是升级模式,还是容量迁移模式,都能够最大程度的保护运营商的投资,同时还能够带来2G/3GXXX共享,2G/3G XXX管理,2G/3G XXX功能(估计省略的部分所有的友商都知道,为了避免麻烦,还是省略了),这些是独立BSC,RNC不能带来的好处。
5.EDGE功能的支持
这个里面还有一件事情,值得称赞的,那个就是EDGE载频的开发。大概是03还是04年时候吧,市场的EDGE需求已经很明确了,但是当时GSM的人员少也一个实际存在的因素,无人力投入。在这种情况下,基站的领导还是偷偷的弄了一小拨人,去研究EDGE,包括硬件和软件。等到研究了差不多了,就正式立项进行开发。据说就10多人,将EDGE给整出来了,这个也是没有办法的办法,因为当时EDGE作为运营商的普遍需求,作为标书的必选项,因此产品投入基本是当时能够投入的最好的资源了。据说后来,别的一个产品咨询经验,问你们怎么那么少人就很快将这么大一个特性给做出来了。某主管的答复是:在各个模块投入的都是有好几年开发经验的老员工,如果一部分老的搭很多新员工话,可能就会拖延或者失败。在这个地方,不是要贬低新员工,新员工里面也有优秀的,也有编程比较厉害的,当时我这里主要是强调老员工在通讯企业中的作用是非常明显,最主要是体现在方案评审上面。
编程在华为虽然是基本技能,但是做任何开发一样,编程仅仅是一个工具,关键就是对业务的掌握能力和理解力。老员工在方案设计和评审的作用体现在他有经验,他碰到过很多网上问题,他在脑海中有这样的概念。他对原有系统的不足和瓶颈是很清楚,在新产品中如何提高会有思路。他的面会相对广一些,做射频小信号部分的,对基带多少有点了解,在会议上还是能够提出一些意见的,做主控的对整个基站的软件构架及通讯机制也是会有一点了解的,也提出自己疑问和想法。所以经验在设计中是非常重要的。
6.BTS3012
BTS312开发出来之后因为投入WCDMA的原因,BTS40的下马,华为在基站上面的新产品开发基本就暂停,除了在BTS312上面开发了EDGE载频之外。开发人员一般是优化和定位问题,进行器件更新等等的工作。
但是当时我们面临一个什么样的情况呢?爱立信还是按照自己的节奏在推产品,华为的BTS312在集成度,功耗上面已经比对手落后很多了。采用很多年前的架构,整体成本偏高。在爱立信双密度推出来之后,华为的312基站是彻底失去了竞争力,市场项目拓展困难重重。
这个时候华为已经认识到GSM的生命周期会比我们预想的要长,华为的市场还是很有空间的。关于GSM的重新定位,为华为的GSM的第二次大发展定了基调。这个时候决定开始搞BTS3012。
BTS3012应该来说是华为的第三代基站,至于基站的分代的方法,可能是华为提的,虽然我没有问过别人现在的第四代基站的是怎么划分的,但是大概也能够猜测出来。第一代,基本上是集成度不高的,基带、功放和TRX是分开的,第二代应该是基带,功放和TRX合一了。第三代应该是双密度系列,第四代应该是基于GSM的多载波技术及SDR的产品。
BTS3102的基站大概是1.4米高,宽度也降低了不少,框架结构基本上也还是沿用312的技术,比如射频单元是一个模块,还是有独立的双工器,还是有独立的主控框等等。双密度基站的推出,将华为的基站产品的技术已经基本上和领先的友商拉齐了。BTS3102基站在技术上面最大的改进就是提高了集成度和降低了功耗,从业务上面,就是可以全部TRX的所有时隙支持EDGE业务,而之前的BTS312基站因为带宽的因素,不能全规格支持EDGE。虽说全规格支持EDGE并没有实际的应用场景,但是问题是其他的卖家支持,就你华为不支持,你在投标中就处于不利的地位。并且运营商的心态是我招标里面要求,但是我是否买这个功能,是否用这个功能是我决定的,但是你要支持。类似的例子就是所谓的基站环型组网,估计大家都听说过,也就是系列基站能够连接起来之后能够再接回BSC,这个功能很多运营商在招标中要去,但是实际上在现网中应用极少,因为毕竟要增加基站管理的复杂度,还要增加一跳传输。
因为BTS3012基站基站是相对较新的产品,里面的故事和不足肯定不能写太多啦,任何产品肯定都会有不足的!
7.BTS3900系列
在3012基站搞完以后,华为的GSM多载波技术已经基本成熟,又开发了3900系列基站,这个系列基站包括分布式基站,宏基站,小基站及SingleRAN基站。 3900系列是华为开发的基站过程中,第一次站在了业界的前端,不敢所有方面都领先,但是至少在射频中还是有自己核心技术,并且在多载波和SDR上面已经领先了竞争对手。
3900系列基站的BBU是可以同时用在GSM,UMTS及在双模的情况,根据不同的配置要求在BBU上面插上不同单板,连接不同的射频模块。每个基站能够支持6个模块,对于一般的运营商,都已经能够满足要求。一个模块至少支持4载波,如果能够接受功率小一点的,可以配置6载波。纯GSM的话,两个模块可以支持8载波每扇区,或者配置900M/1800M双频网,或者配置S444/S666的GSM和S333的UMTS,总之,BTS3900的宏基站单机柜已经能够满足世界上大多数运营商的需求,分布式的基站也基本类似。当然面对移动的需求可能一个机柜还不能搞定,这个就得另想解决方案了。
第四代基站的详细的技术领先,我会在华为GSM的几大利器里面提及。这里还提及了3900E的小基站,在这个小基站之外,增加了不少新概念的技术,整体解决方案对运营商还是很有吸引力的,这个我会在GSM的利器里面提到。在推出之后,虽然在应用量上面还没有上去,但是已经有很多运营商主动联系华为询问这个基站的详细情况,因为部分市场人员并没有掌握这个解决方案的核心及如何向运营商来推广。
3.1.4 核心网的产品历程
华为无线最开始成立的时候,是包含核心网的,那个时候是叫MSC,而不是叫核心网。MSC时代,核心网包括了好几个网元,包括MSC,VLR,HLR,SGSN,GGSN,当然SGSN和GGSN两个PS域的网元是到了GPRS时代才增加的,在GSM协议的最初阶段是不包含这两个网元的。
MSC时代的交换机大概包含了MSC3X,MSC60两个主要的版本,这个都是基于交换机的平台,前面好像是16模还是32模,后面是基于128模的,已经很漂亮了。MSC8当时主要用于WCDMA,好像就没有用在GSM上面,因此应用的面并不是很广。
G9大家应该是很熟悉了,应该就是R4架构的核心网。其实在引用了固网的NGN平台到WCDMA之后,在海外可能应用了一些,当时最成功的是创新的将WCDMA R4架构的CS域的产品引入到2G上面,而在此之前,华为的SGSN早就实现2G/3G产品合一了。G9的推出一举扭转了核心网在中国移动的市场,引领了IP化的潮流,同时也在海外引起了巨大的反响。
不过呢因为欧洲市场对核心网是非常保守的,因此感觉欧洲的核心网市场还没有打开,不过近期有PS域的喜讯,好像是中了德国还是西班牙的一个单子。
华为开始的无线业务部是包含GSM,WCDMA和CDMA的核心网的,但是随着融合通讯概念提出和进展,华为将核心网和无线侧分开了。之前因为在一个部门下面,多少有些了解核心网的业务,自从分开之后,基本上只会偶尔看到一些公开的信息。因此对核心网并不了解,上面只是根据一些公开的信息的简单整理。
3.1.5 GPRS/EDGE
华为最开始做GSM的时候,是不包含GPRS的,GPRS的开发应该是已经到了99年下半年了。但是GPRS的开发肯定也经过不少周折,但是因为没有参与过,等真正接触到了GPRS的时候,产品已经全部成型了。
因为是分组业务,都是以包交换为主,B型机的平台是肯定不能用了。交换或者数通数否有成熟的平台不清楚,反正最后产品线用的是某个友商的硬件。说到用别人的硬件,那个苦处不是一天能够道完的。 /*少发表500字。*/
华为是应该是最后将PCU集成到BSC中去的,原BSC32的平台是一个原因,BSC6000成熟和稳定得晚又是另外一个原因了。/*少发表350字*/总之PCU集成之后,除了成本之外,也为华为的分组业务的性能提升打开了一扇窗,自从PCU集成之后,华为的PS的业务指标也基本能够在第一集团了。
SGSN没有太多的印象,因为很早之前就将他们划归核心网了。不过有印象的是两个,很早之前就是业界容量最大的SGSN了,很早之前就将2G/3G的SGSN合一了。GGSN连长得什么样都没有见过,或者可能是见过,但是整个不知道他是什么样。
对于EDGE,上层的工作量不大,主要是基站一定要更换EDGE载频,因为有了8PSK的调制,老硬件是无法支持的,这个工作在BTS312就完成了,但是在BSC32时代,因为要将更多的数据传输到PCU,因此对原1024载频的规格也是有很大影响的,不过还好,因为一般EDGE业务量也不是很大,对规格的冲击也在可接受的范围内。
3.1.6 GSM的再发展
BTS30/312开发之后,本来也有计划进一步开发BTS4.0,也许名字起得不好,关键是2000年的时候3G热潮,全世界的热潮,跟着热潮,那个时候华为已经启动了WCDMA的开发,也从GSM抽调了精兵强将到WCDMA开发中去。整个无线也开始收缩GSM的开发,因此BTS40项目下马了。随着将深圳GSM BSS的人员搬迁到上海,也多出来一些干部,多出了一些开发人员,当然这个结论的前提是在当时的BSC32和BTS30之后不再作大的新平台的开发。
1. 3G的热潮
当时的华为,至少是无线,主要还是以技术导向的,认为GSM的生命周期快要结束了,BSC也快要封版本了。封版本的概念就是不做新版本了,等到版本基本稳定了,连补丁也不会出了。无线第一封版本的产品是MSC33,但是当时人家有了MSC60了。不过封版本的事情都是私下在说,也没有在产品的正式会议上面讨论过。
那个时候,3G热到什么程度,现在回过头来,觉得真是不可思议。老员工天天找主管谈心,我要去3G,我要去3G,那边是接收部门都找好了,只要这边放就可以。已经进入2G的半新员工想,等那批老的员工走掉之后,也该轮到我调去3G了吧,应该有更新的员工来接替我吧?新员工分配的时候,分配到2G新员工都闹情绪,觉得搞的是落后的技术,最多搞个1年2年,产品就不要开发了,学了2G之后还要学3G,浪费大好时光。总的来说,但是我们这些基层主管在业务之外,很重要的就是稳定军心。
那个时候感觉的确整个公司的技术导向型,也就是追求最新的技术。当然应该不仅仅是无线,估计整个公司的研发都是这样。
你要看到任总及公司高层从2000年开始一直就在批评的技术导向论,不管是在管理层面还是技术层面,应该是起到作用了。现在的新员工分配到GSM的,好像也没有什么意见了。当然了一般员工还是会要求分配到新成立的产品线或者部门去,这样才能够有更好的机会,更快的成长,但这个时候的情绪已经基本和技术无关了。
那个时候还有一个事情,我很清楚的记得。应该是00年吧,当时市场行销一个领导(不记得是谁了,因为我当时也就是一个小兵,只认识研发的兄弟和领导,不认识市场的领导)召集我们上海BSS的骨干来鼓劲,记得在好像在淮海路的哪个宾馆的会议室,人去了不少。先讲讲市场形势,我们今年的销售要达到XX亿,我们要突破A省,B省,C省等等。后面又谈到了3G,然后就说了,3G马上就要来了,明年肯定能够发牌。知道国外政府发牌照赚了这么多钱,中国为什么还不发吗?因为华为的3G还没有出来。所以兄弟们要抓紧啊,国家在等华为啊。我当时的感觉,你这不是在给兄弟们鼓劲呢,是在动员我们这批人去3G呢。就这个故事,就能够说明当时的3G已经热到什么程度。当然,结果也是大家知道的,01年国家是没有发牌的,这个对华为WCDMA的商用有很大的影响的。虽然当时是满世界的搞WCDMA试验局,但是不是商用,那么就不会有真正的商用经验,不会有优化的压力,不会有业务流控的压力,不会积累解决问题的能力。当然随着阿联酋商用网和香港的商用网的投入运营,WCDMA的技术实力就完全显示出来了,当然这个是题外话。
除了将主要的研发人员投入到3G上面去之外,当时的研发还面临输出的压力。这里的输出主要是行销,因为毕竟行销开始的技术底子还是比较弱,各项技术积累还不足。GSM人员分流到无线很多部门,市场多一些,网规网优也有一些,一些公共的技术部门,但是技术支援相对少一些,还有一些到刚刚成立的印度研究所去锻炼。
记得2000年的时候,好像整个无线还开过到行销去的动员大会,说明是行销的空间是如何宽广(不过现在回头看,行销的空间的确比较大),到海外如何好等等。动员大会还设立了上海分会场,也选了一些已经确认去市场的研发人员发表讲话,具体的议程不记得了,只记得一个兄弟在发言中提到了“离开可爱的女友”的时候,整个会场轰然大笑。当然那个兄弟我认识,一个很有能力的兄弟,现在做市场做得很不错。
2. 缺位的MARKETING
现在回头看,之所以出现上面的哪些问题,关键是当时对GSM生命周期存在了误判,估计除了外部的因素之外,关键华为的无线当时没有人真正的分析市场和趋势,从现在的观点看,就是MKT的缺位。
当时的版本规划都是研发说了算,什么需求要做,什么需求不做,基本上是研发内部讨论就可以决定了。行销因为市场还没有打开,反馈的有效需求不多,一般是要求研发在XX时间点解决哪个局点的YY问题,什么时候出ZZ补丁。在研发没有市场眼光,行销无有效需求的情况下,新产品的开发就无限期的停下来了。当然在BTS312和BSC32上面能够做的一些平台能够支持的增量开发还是一直在做,也正是当时保留下来的这一批老员工,使得后续在大发展的时候起到了至关重要的火种的作用。
后来MKT的成立,解决了看趋势的问题,也解决了需求的排序和规划的问题。虽然我这样写,并不是说明我水平有多高,当时并没有看到这些问题,我也没有这么高的眼界。估计当时领导层,基层管理层及我们这些小兵,都没有能够看出来趋势。事后诸葛亮是很容易当的,不过据说当时极力反对减少GSM投入的是海外行销的一个头,当时毕竟大多数人看的趋势是要缩减,因此这个领导并没有能够有效的影响无线的决策。
对于华为对市场形势的判断,可以参考网上的一篇文章,虽然里面有些内容写得欠严谨,但是对于市场预计那一块还是那么个意思,这个公司的老板好像是原华为的高层:
在04,05年的时候,那个时候基站和BSC都已经是卖了4,5年的产品了,况且BSC的平台还是94年开发设计的B型机的平台,形势已经到了不改变不行了的时候了,于是变化开始发生了。
3.大规模投入
业界已经开始交付双密度基站,单机柜支持1000多TRX的BSC,但是华为的基站还是最大12载波,在集成度合功耗上面已经远远落后于对手,并且是几年没有推出新产品了,市场没有亮点,项目的拓展越来越困难,给商务带来很大的压力。并且从04起,已经看出来3G替换2G的时间将比在2000年的时候看要长很多,GSM生命周期将远远长于预期,在新兴市场,华为还有很大的空间,这个时候无线逐渐开始在GSM上面加大投入,并且不仅仅是GSM,CDMA也开始加大投入。
这个时候在GSM留守的那一批兄弟应该是最辛苦的,一方面要承担起新产品的设计工作,一方面又要带大量的新员工。那个时候,进公司1年当PL是很正常的事情,进公司1、2年带几十个人的项目组很多。当时GSM很缺有经验的基层管理者,于是又从其他部门大量抽调基层管理者到GSM产品线。我个人觉得那两年进GSM的新员工也许还算比较幸运,虽然工作辛苦一些,但是在在实践中能够经历一个全新平台合全新产品的设计开发的机会并不多,能够在这个过程中得到相当好的锻炼,能力得到提升。
具体怎么投入,我就不能说了,只说一下当时无线投入GSM的决心吧。当时的无线总裁余总要求每个部门都抽调人员到GSM,也不是随便给的,过来的人水平还不能差,先看考评,考评不好的不能给。考评合格了还要面试,面试不过的不要。在这个过程中,也抽调很多基层管理者充实到GSM产品线,而这一批人员对GSM的作用也是不可低估的。据说余总说过狠话,指标完不成的主管直接调到GSM去当兵,部门一把手负责。由此可以看出当时支持GSM的力度和决心。
华为的GSM成功绝非偶然,能够走到今天,从04年启动的开发起到了至关重要的作用,特别是05,06年后的强势投入。在这个过程中,所有华为无线人,包括领导和我们这些基层员工,真的是牺牲了很多。真正在产品线一线领导的工作强度远远超过我们这些基层员工,经常在我们和领导加班开完会之后,我们回家了之后,领导还在办公室在处理邮件,和海外开电话会议。但是我认为我的付出是值得的,看到GSM市场的攻城略地,说句实话,成就感还是很强的。
3.1.7. 歪楼—我是怎么学习GSM的
/*这一节和华为的无线是无关的,所以标题是歪楼。写这个的原因我也说不清楚,供入行的新人参考吧。其实无论多大的系统,我建议的学习方法是笼统和概貌-> 深入理解某一小快-> 再扩展模块 -> 再深入了解架构。肯定要有一个了解细节部分,不然对系统架构的理解不会深刻。 */
我是学计算机的,和通讯没有什么关系。不过说起来很惭愧,从毕业到现在10几年了,我没有一行代码是写在任何产品的发布版本中的,只写过测试代码,包括我之前工作过的那个单位。那个时候网络也没有这么发达,也没有意识到自己有多么的无知。在进公司的时候对通讯一无所知,可能计算机和通讯编程还算对口吧,面试了一下,还算让我混进了公司。当时我同部门的同事里面,专业不对口的大把,可能和那个时候通讯和计算机毕业生资源不多有关。那个时候感觉招聘更多是看综合素质,对通讯或者编程只要有一点基础就行了。同事里面,有学大气物理的,核物理的,学生物的,学数学的,当然计算机和自动化比较多了。还有过一个学空气动力的,来华为之前是搞导弹的,呵呵!
进公司的时候,部门主管给我指定了一个导师,不过那个时候导师在出差,在我转正之前就没有见过导师,因此我实际是一个比我早三个月进公司的美女带的。为什么是她,因为我的导师和她的导师就是一个人,她代管导师管我了。一进部门,她先对着机架给我讲了半个小时,后来回想起来当时记得的只有一个叫基站的东西。另外还一个只知道发音叫Eone的线,但是不知道E1是什么。那时候在实验室,一直听别人E1,E1的说着,就一根线,为什么叫E1呢,还不知道怎么写,也没有好意思问。直到两三天后看到一个文档,才知道E1是怎么写的,原来是将1念成One,我还不是一般的土啊,这个事情是一直没有和别人说过,呵呵。
开始很不好意思问老员工,只是自己闷头看书,因为原来在国营单位的缘故。后来美女导师老是问,有什么问题吗,有什么问题吗?只要开了头,开始问起来了,那就是问题不断了,不光是我的美女导师,座位在一起的老员工也经常被我问。毕竟美女导师也仅仅比我早三个月而已,经常被我给问住,这个时候她会问别人或者告诉我这个问题应该请教谁,总之问题总归是能够找到答案的,当然问题肯定不会是那种伦理化的高深问题。随着自己的水平的提高,问的问题也越来越难了,也不能总让别人花那么多时间在我身上吧,于是很快就自己看代码和看协议了。
导师见不着,虽然导师说过让我学无线资源管理部分,但是我的美女师父是搞基站管理的,她也就直接扔了一份11.21的基站管理协议给我,对我说,3天看完吧,看完了之后给我讲讲。就这样,她就忙于自己的事情了。那个晕啊,大学的英文根本没有认真学过,4级完全就是靠高中那点底子混过去的。自己没有去面试外企,就是因为英文不行。但是现在没有办法了,只好硬着头皮上啊。第二天又扔了一本一个红皮的GSM原理的书(32K本的),名字不记得了,说的东西比较简单,但是翻译得不是很好,但是对于理解GSM的基本概念还是一个不错的选择。看完协议之后,花了一个礼拜将这本书啃完,虽然对里面很多细节不了解,但是至少对GSM已经有点概念了,知道怎么样进行呼叫接续的,为什么和怎样进行功控和切换的,为什么要取漫游号码及怎么取的,为什么要分配TMSI,怎么样加密的等等,总之反正是基本概念有了。现在对核心网的概念和一些基本原理,都是那个时候学来的,呵呵!看完这本之后,又看了一本16开本的GSM的书,名字不记得了,但是觉得里面东西说得挺清楚,也是老外写的,但是必须要有一点GSM的基础,不然看这本书还是挺难懂的。在看这本书的时候,我发现了一个我不能理解的问题,然后请教一个老员工,他思考了一下,就回答我,书上写错了,当时还小小的得意和满足了一把。
美女“假公济私”让我搞基站,导师和主管也默认了。我就直接从基站管理开始了,在后面和BSC开发的基站管理的人员比较熟悉,和基站的开发也比较熟悉,碰到很多问题,他们对我的帮助很大,所以呢我比后来组内的人直接搞呼叫的人呢,要多了解一些基站。
做新员工的时候,老家伙可能有点印象,那个时候要去看一个录像的,是公司请的南邮老师的给员工做的培训,在培训过程中全程录了像,然后新员工都要看。据说是花了大价钱请来的。当时工作都忙,老员工也没有那么多时间带新员工,更多是自学,自己琢磨。哪像现在的新员工,导师给制定学习计划,除了特招的之外,一般要转正之后才要独立干活,导师或者主管要一直指导3个月或者更长。我1个月之后,美女导师已经基本不管我了,基本上是有问题才请教她。回到上面,你别说,老师就是老师,知道要给你讲什么,知道怎么怎么样能够将一个复杂的东西讲清楚,特别是空口编码那一块,看书很费劲的,听了他的讲解之后,再看书,就能够明白。他还在讲解里面说了各种空口信道之间的关系,什么CCCH,AGCH,PCH ,XXCH,**CH等等,什么物理信道,逻辑信道,物理信道到逻辑信道之间的映射等等,他说反映到产品上,大家只要知道一个BCCH载频的0时隙,是发射系统消息,接收接入请求,发送寻呼消息就可以了,也就是0时隙完成了系统广播,接入和寻呼等系统的所有功能就行了,里面再详细的信道怎么分的,做BTS编码的人要仔细研究,做BSC,大多数不要研究,少部分人要研究。所以呢,我也就没有必要为那些弄不清楚的怎么样编码,怎么样映射去纠结了。
虽然进公司1个月以后已经基本独立干活了,但是一直到过几个月,对BSC内的交换网板还是很不理解,什么是网板,什么叫网板搭接,虽然我知道它的作用和功能,但是我不能理解它是怎么样运作的。因为是学计算机的,只对IP包有概念,对于TDM交换的实质还是很不理解,总是想从IP路由转发方面去理解TDM交换到底是怎么样运作的。这个疑惑一直到了某次的一个培训,一个做过大学老师的老员工在回答我的问题的时候,说得很直白,TDM交换网板就是面包板,网板搭接好之后的固定交换就是将两端用线连起来。TDM交换芯片就像一个筛子,一团面(消息包)经过交换芯片之后就固定的变成粗面条(固定帧格式),而且只能是那个形状。恍然大悟,原来所谓的网板搭接就是在面包板上面插两根线而已。这个两根线由芯片完成了,插线的过程就是给网板发一条命令,告诉网板哪个进接哪个出而已,后来再理解其他的TDM交换就简单了。
因此肚子有货并不高明,高明的是能够将肚子里面的货以一种浅显的方式说出来,让不懂的人能够理解。任总的文章为什么受欢迎,有管理思想和管理理念的人在中国不少,但是能够将高深的管理理念用很通俗的话说出来,写出来,这个才叫水平。
进部门大概一周时候,部门主管安排了给新员工讲解了整个GSM系统,将到BSC的时候,说了一句我后来几个月都没有深入理解的东西:“我们BSC是一套实时的多处理器嵌入式系统”,这么复杂啊,到底是什么,估计当时解释了,但是我理解不了,只记得说用了多少个类似386芯片的芯片。几个月后,虽然能够胜任工作了,但是对系统还是不了解,工作起来很没有方向感,总觉得自己是在云里雾里的,对整个系统怎么样协同,这么多东西怎么作为一个整体,还是没有掌握。那是实时系统啊,那是多处理器系统啊,那是嵌入式啊。总之就是没有整体概念,那种感觉说不出来,就是感觉系统很复杂,掌握不了全局。后来有感觉,也是通过一次培训,才茅塞顿开的。
有一次培训切换流程,是一个博士讲的,他是一个能够将一个事情讲得非常清楚的人,据说有一次他和南哥出差去交流,南哥也比较赏识他。研发人员自己的培训,一般情况特别容易陷入细节,被培训的员工也容易陷细节,并且针对细节进行提问,越解释越细,导致效果很不好。这么多年,我只对上面我提及的两个培训有很深的印象,自己了解这个,所以我给别人培训的时候,尽量多想一些,让别人能够通俗的去理解。但是这个博士在讲切换的时候,先是讲全局,他说切换很简单,就是等测量报告,看谁不行了,不行了的就切换。然后说测量报告是怎么上来的,怎么触发功率控制,怎么样看一个呼叫不行了,怎么触发切换。每个测量报告都要处理,所以所谓触发,就是处理完测量报告,发现他需要功控了,发现他需要切换了而已。然后再讲测量报告怎么处理,怎么平滑,再讲测量报告关键信息提取完了,就将这些信息带到切换判决模块。但是这么多切换判决怎么处理呢,不管有多少中切换判决的算法,都是在设计的时候排个顺序,最先判决是什么,用什么信息,一般情况是紧急切换(不知道现在算法是否还有),然后再是X1,再是X2云云。那个时候才知道,实时系统也就是一步一步执行而已,和我之前说学的计算机程序没有什么两样。大家也知道,之前的大学教育基本上还是以理论为主,实践的机会是很少的。
实时的多处理器嵌入式系统,可以分别通俗一点方法解读(纯粹是我自己理解,见笑),然后再合起来。嵌入式,简单一点通俗一点说,就是没有通常计算的显示器,键盘鼠标,也就是基本没有显式输出,但是一般会有输入,比如开关量检测。也会有输出,比如控制动作,但是这些基本是消息输入和输出的。系统的内部构造及编程原理和一般的计算机没啥差别,将计算机变为一个模块或者单板而已,也有CPU,也有内存,运行的时候也要队列堆栈,举个简单的例子,你家里的DVD也可以称为嵌入式系统,现在的家电里面多多少少都会有芯片,你的照相机,摄像机等,只要是稍微复杂一点的电子产品,我的理解应该都可以称为嵌入式系统。
实时系统,通俗化的解读就是里面用大量的定时器,里面有N多不同模块的状态机,一般情况下响应都是在毫秒级或者秒级,定时器超时改变状态机及异常处理。就好比你和你女朋友约着晚上8点看电影,这个时候你和你女朋友都会在脑海启动至少两个定时器,一个是6点半或者7点肯定要出发了,看你们两个离电影院的距离,另外一个是8点钟对方肯定要在电影院。一切正常,不需费笔墨,这个也就是系统中的主流程为什么占的代码比例很少的原因。如果你迟到了,那就是你女朋友的第二个定时器超时了,你女朋友的状态机就从热情高涨变成了心生怒气。这个时候她一般会有两种异常处理保护,一个是延长定时器,就是再等你半个小时,如果你在定时器超时之前到,就会将状态机转换为埋怨,否则就转换为拆呼叫,也就是取消晚上的活动;第二种异常保护就是直接拆呼叫,取消晚上活动,同时还会造成其他的反应。还有一种处理方式就是在你女朋友的第二个定时器超时之前,提前做一个动作,就是延长一下定时器,电话告知你女朋友,今天你的老板叫你加班,需要晚半个小时到。这个时候她也会根据自己的状态机(心情状态),做出自己的反应,取消活动或者继续等待,取消活动之后不通知你,当你到达的时候,就相当于丢弃消息。当然在实时系统中的状态机的抽象和提炼是一个技术活,也有相应的方法论,但是我没干过,呵呵。因此所谓的实时系统,只是定时器过一些,定时器短一些而已。
所谓的多处理器就简单的将他看成要将在不同计算机的发消息而已,只是除了消息发送和转发之外,还要涉及到数据同步和状态机同步而已。我没有主持过真正的产品设计,上面也只是我对实时多处理器嵌入式系统的一个简单的理解。至于实时系统中的分进程调度,那是和计算机的原理是一样的,就不提了。
分别理解了硬件和软件的架构及运作之后,你再看设计文档和程序,就简单多了。将主机程序中的呼叫处理模块拿出来一看,看清楚呼叫控制块CCB(Call Control Block)数据结构定义,大概知道表示什么,再看复杂的状态机就比较容易理解了,无非是在什么状态,只能在限定时间内来那几个类型的消息,其他的就是异常保护处理。对系统真正了解之后再干工作,方向感明显就强很多了,碰上一个新任务或者新功能,你知道怎么去折腾他,怎么去设计他,对开发和设计也能粗粗谈自己的看法了,再接着了解所谓的设计,就是将场景及异常情况考虑清楚,保护工作做好,也就大差不差了。
当然上面只是说了对系统的理解,要真正成为高手,你还必须对业务非常熟悉,比如一条信令到了BSC的时候,这个时候他应该有哪几种情况,根据业务的现象,推断出系统应该是属于什么状态,可能哪个地方出错等等。这个都是依赖于你对GSM系统的熟悉程度,对协议熟悉程度的。
当然如果你已经深刻理解了GSM,再去看其他的系统,比如WCDMA系统,CDMA系统,其实都差不多,无线系统无非是切换,功控,PS业务调度,信道管理等无线资源管理及呼叫接续流程两大核心,再加上基站的射频和基带,A接口或者Iu接口的管理。因此在华为内部做开发或者测试的,换产品上手是很快的,这也是为什么会在不同时期资源在不同部门之间流动的原因。当然更换产品之后,想成为这个领域的高手,熟读协议的功夫还是免不了的,就象学外语背单词一样。
罗罗嗦嗦的写了这一段,其实只是想告诉一些新入行的人,能力提升是看你自己的,外部环境只是一个权重并不高的外部变量。当然华为有一个最大的好处,不管什么技术问题,只要你肯去问,你肯定会有答案的,当然不是哥德巴赫猜想这样的难题,呵呵。你的导师或者领导的水平高一些,你可能在最开始阶段的方向明确一些,起点高一些,但是后面就是看个人在实际工作中的应用了。古人说,师父领进门,修行靠个人,这两句在华为是非常有道理的。当然你和高水平的人在一起,平时的工作中肯定会学到更多的东西。