【资料名称】:【XC原创】3分钟解决NCS、MRR、FAS定义大跨度问题
【资料作者】:ZengFang
【资料日期】:2012-09-27
【资料语言】:中文
【资料格式】:DOC/DOCX
【资料目录和简介】:
我们几乎每天都在操作的爱立信OSS维护终端系统,我们经常使用的功能主要有:CNA、Operation Procedure Support(OPS)、Terminal、Command Handling、Activity Manager等等,主要用于日常CDD数据、SwithDump、MRR、NCS、FAS等数据的提取、日常频率修改及变频方案实施等工作。
一、 爱立信BSC维护终端协议介绍
爱立信的BSC主要可以通过TCP/IP和x.25/x.29方式进行连接,其中OSS终端即我们平时所操作的维护终端即采用的x.25/x.29方式接连,而且像WinFIOL等三方维护工具则采用Telnet方式与BSC相连。
[attach]312422[/attach]
二、 快速定义脚本的组成及运行流程
程序主要由主脚本(独立的Unix Shell脚本)、BSC网元列表文件、指令集文件、perl封装及输送脚本组成,运行的原理是将需要执行的命令通过封装再通过eaw连接网元后执行,同时将执行返回的LOG进行记录,程序的主要特点:
采用Unix脚本达到自动化效果,通过控制达到操作一体化作用;
采用Bsc List和Order List分集的方式运行,使程序的可改可操作性更强;
采用eaw连接网元的方式登陆网元维护平台,提高了多网元的操作效率;
2.1 脚本文件组成
主脚本:完成各种判断和过程控制;
BSC List:BSC名称列表文件,为提高执行效率可将网元分成多个部分,若在BSC增减的情况,直接修改BSC List文件即可;
Order List:各种需要被执行的指令,如定义、提取、检查MRR、NCS、FAS指令、CDD指令等,若需要增添执行的指令,修改对应的指令集文件即可;
Perl封装脚本:用于封装指令并通过eaw发送至BSC;
2.2脚本运行流程图
[attach]312423[/attach]
三、 脚本介绍
3.1 主程序
[attach]312424[/attach]
3.2 BSC List:广州将147个网元分成5份BSC LIST文件,格式如下右图所示:
[attach]312425[/attach]
3.3 Order List:包括所有需要被执行的脚本文件,在主程序里调用;
[attach]312426[/attach]
3.4 eaw封装:包括4个文件,相互引用,整体调用过程相当复杂;
[attach]312427[/attach]
3.5主程序脚本详解
#!/bin/csh 【设置环境】
set logTime=`date "+%H%M"`【设置logTime变量为当前时间】
set logDate=`date "+%e"`【设置logDate变量为当前日期】
set Now_Time=`date '+%H'`【设置Now_Time变量,获取小时时间,作为后续控制变量】
set DateCheck=`expr $logDate % 2`【用于当前日期的单双号判断】
if ($Now_Time == 10) then 【分支判断条件,用于指令控制,当时间为10点,说明是要定义早忙时NCS】
set FileName=`date "+%m-%d"_Ncs_Setting_AM` 【设置变量FileName,作为文件夹名称】
mkdir /home/liu_yh2/cha/Set_Ncs_File/$FileName【创建文件夹】
set cmd_list_GSM="/home/liu_yh2/cha/Set_Ncs_File/Cmd_File/Set_GSM_Ncs_Cmd_AM"【指定需要执行的指令集文件位置,这里是设置读取900网络的指令集】
if ($DateCheck == 0) then【广州DCS同时有用高低频,按单双号分开定义】
set cmd_list_DCS="/home/liu_yh2/cha/Set_Ncs_File/Cmd_File/Set_HighDCS_Ncs_Cmd_AM"【为双号时执行定义高频的指令集文件】
else if ($DateCheck == 1) then
set cmd_list_DCS="/home/liu_yh2/cha/Set_Ncs_File/Cmd_File/Set_LowDCS_Ncs_Cmd_AM"【为单号时执行定义高频的指令集文件】
endif
set log_path="/home/liu_yh2/cha/Set_Ncs_File/${FileName}/Ncs_Setting_a.log"【设置返回LOG的存放位置及LOG文件名称】
else if……【还有很多其它时间段的设置,原理一样不再一一介绍】
endif 【结束判断】
echo ====================Action the Ncs Order=====
cd /home/liu_yh2/cha/GZ_BSC_ListFile 【打开OSS上存放CDD的目录】
set bsc_list = `cat ./gz_list_a` 【设置变量bsc_list从BSCLIST文件中获取值】
foreach bsc_name ($bsc_list)【循环读取BSCLIST文件,依次完成所有BSS的读取】
perl /home/liu_yh2/cha/Set_Ncs_File/dal_with_eaw.pl ${cmd_list_GSM} ${bsc_name} ${log_path}【将定义900NCS的指令集封装并发送到BCS执行,并将产生的指令LOG返回】
perl /home/liu_yh2/cha/Set_Ncs_File/dal_with_eaw.pl ${cmd_list_DCS} ${bsc_name} ${log_path}【将定义1800NCS的指令集封装并发送到BCS执行,并将产生的指令LOG返回】
end【结束】
四、 小结
该程序采用Unix编写,期间调用了eaw和prel,实现以后台登录BSC并执行相应指令的方式实现,省去了前台登录网元、退出网元的等待过程,从而提高了相应脚本的执行效率,程序整体的架构明朗,适用性和可推广性较强,在网元数量多、数据定义种类多、临时定义任务多或OSS前台运行速度慢的情况下可考虑使用。经过1个多月的测试,广州的NCS、质差MRR、CDD等数据的定义和提取均能顺利完成,工作效率较以前提高了十倍。
五、 软件附件
以下内容跟帖回复才能看到==============================
eaw定数脚本.rar (29.24 KB)==============================
以下内容跟帖回复才能看到==============================
OSS快速定义脚本执行之解决方案.rar (359.36 KB)==============================