基于Python的运营商风险操作分析工具
Technology Study
技术研究
DCW
13
数字通信世界
2021.02
0    引言
当数据网中的设备或者业务配置不能满足业务发展需要,影响到网络的健康运行,就需要对网络进行物理结构或者业务逻辑上的修改,也称为风险操作。风险操作时会影响到承载业务,所以需要提取受影响设备以及接入号,并提前通知用户。以 2019年为例,某百万规模城域网一年风险操作总数为849次,其中数据专业 145次,光缆专业 597次,动力专业 87次,其他专业 20次,每天平均 2–3次。
1    问题背景和工具目标
1.1  问题背景
城域网风险操作流程大致分为 4步,具体如下:(1)风险操作内容整理:包括名称、原因、设备和网络现状、影响范围、执行时间、割接时长、人员安排、实施步骤、测试方案、回退方案等。(2)风险操作审批:根据风险等级,提前 7–20天发起风险操作审批。
(3)风险操作发布:通过网站、电话、营业厅、短信、报纸等方式提前 3天发布风险操作公告,通知政企客户。(4)风险操作实施。其中,风险操作分析占据了风险操作内容整理的大部分时间,以 XL 局7750设备主控板升级为例,数据专业操作步骤如下:
步骤1:整理 XL-7750设备的上下联拓扑结构,其中下联方向需要包含汇聚层和接入层 2个层级。
步骤2:将拓扑中的设备名称,转换为网管告警屏蔽系统可以识别的 IP 地址清单。
步骤3:导出拓扑的中的专线交换机下的专线接入号码。
步骤 4:导出拓扑中的 OLT 下的专线接入号码(目前只有单台导出Web 界面)。(目前只有单台导出 Web 界面)。
以上涉及业务端口 805个,交换机 15台,OLT72台,专线用户 1,357个。从设备清单整理,到通过 Web 界面导出专线用户整理成表格,共需花费时间约2小时。
除分析时间长,消耗大量人力外以外,人工方式还存在错漏隐患。一旦发生,目前检查手段不直接,人工重查过程繁复。
1.2  功能目标
在风险操作分析 4的步骤中,拓扑结构整理需要半小时; Web 接口导出 72台OLT 对应的专线用户,每台需要 1分钟,总共需要 1小时12分钟左右。这两个环节占据了总时长的 85%左右。而在目前的城域网设备中,接口下有规范化的描述字段,字段包括了连接方向、对端设备名称、对端设备端口以及光路编码。通过规划端口描述,理论上可以推导出网络拓扑结构。因此,风险
基于Python 的运营商风险操作分析工具
沈 昀,张岩凯
(中国电信股份有限公司无锡分公司,江苏  无锡  214000)
摘要:运营商在网络风险操作之前需要统计受影响的网络设备和用户,并通知相关人员。探讨了人工割接分析的方法和缺陷,并从分析流程出发,通过基于PYTHON 的pexpect、urllib、pandas 等模块,设计并实现了一种网络设备配置收集分析,专线用户Web 接口提取的风险操作分析工具。
关键词:割接分析;Python ;爬虫doi :10.3969/J.ISSN.1672-7274.2021.02.005中图分类号:TN919  文献标示码:A    文章编码:1672-7274(2021)02-0013-03
Analysis Tool Based on Python for Risk Operations of Telecom Operators
SHEN Yun, ZHANG Yankai
(Wuxi Branch of China Telecom Co., Ltd., Wuxi 214000, China)
Abstract :Telecom operators need to find out affected nodes, users and notify the users before network risk operations.
The paper discusses the method and defects in manual mode. It aslo gives out a tool which can analysis the configure files of network devices and private circuits through the web socket based on pexpect, urllib and pandas modules of Python language. Keywords :risk operation; python; spider
作者简介:沈昀(1984-),男,汉族,上海人,工程师,硕士,研究方向为IP 通信。    张岩凯(1986-),男,汉族,无锡人,工程师,硕士,研究方向为IP 通信。
研究
Technology Study
I G I T C W 技术
14DIGITCW
2021.02
操作分析工具关键功能需求设定如下:
步骤1:根据目标设备以及端口描述,实现上下联拓扑结构的自动发现,下联方向需要发现到接入层。
步骤2:设备名称和 IP 地址自动匹配,如果涉及到物理交换机和虚拟交换机,需要对它们的名称进行转换。
步骤3:OLT 专线用户通过 Web 接口批量,免人工干预导出。
步骤4:根据拓扑表生成风险操作影响范围屏蔽表。
2    割接分析工具介绍
2.1  风险操作原始输入介绍
以某南方电信分公司为例,风险操作原始输入一般有两种形式:(1)形式 1:电子表格形式。在一般的光缆割接中,缆线维护部门通常提供一张光缆割接表。表中包括风险操作涉及的光路编码、光路名称、对端设备名称、对端端子、线缆名称、缆段编码等。其中,光路编码和实际光路一一对应,其他字段由于人工更新不准确、不及时等关系,不能作为参考字段。(2)形式 2:设备 IP 形式。当设备版本升级、替换,此时风险操作分析的起点就是某台特定设备的 IP 地址。
2.2  表结构设计
(1)城域网设备总表。端口描述表用来存放城域网所有设备的名称、 IP 地址、端口以及端口描述。表结构设计如下:
device_name :设备名称; device_ip :IP 地址; interface :端口编号; description :端口描述。
(2)拓扑表。拓扑表用来存放设备的上下联拓扑信息,表结构设计如下:
f_node :父节点设备名称; f_port :父节点接口名称; description :端口描述; peer_name :对端设备名称; peer_port :对端设备 IP 地址; peer_ interface :对端设备端口; f_no :光路编码; level :设备层级。
(3)影响范围表。影响范围表是拓扑表的一个子集,表结构设计如下:
device_ip :被影响设备 IP 地址; interface :被影响设备端口。
2.3  城域网设备总表和拓扑表的生成
2.3.1  生成城域网设备总表
首先通过专业网管导出各型号设备清单,其次利用python 的pexpect 模块依次采集设备名称,端口,端口描述并保存。
2.3.2  生成拓扑表
步骤1:采集风险操作目标设备的端口和端口描述,
存入风险操作拓扑表,层级设置为 0,代表此设备本身。
步骤2:分析端口描述,获得连接方向(上联、下联、同级),对端设备名称等信息。同时根据设备名称判断该设备的层级(核心层、汇聚层、接入层),上联设备层级设置依次加1,下联设备层级设置依次减 1。
城域网端口描述:“ uT :X X-X X-XX-CR-1. MAN.NE5000E :(F1303281XXX )10GE1/9/0/17”,
正则表示式:“ r e.c om pi le (r '.*[u p d]T :(.*\ . MAN\..*):(\(.*\))(.*)')”。其中组 1–3分别匹配了设备名称,光路编码以及端口。
步骤3:以城域网业务控制层设备为例,首先保存三个连接方向的端口描述,通过描述获得设备名称;其次查城域网设备总表,获得设备 IP 地址。
步骤4:比对每一条描述的设备层级,跳过接入层,继续采集汇聚层设备的端口描述,存入割接拓扑表,返回步骤 2,直至产生一张以某台风险操作目标设备为根,与其下汇聚层,接入层设备组成的树型拓扑表。
2.3.3  生成影响范围表
首先,根据风险操作需要,根据设备名称、层级,挑选出影响范围内的设备;其次,根据相关规范清洗端口编码,并和设备 IP 组合成可导入网管的割接屏蔽表。
2.4  通过Web 接口获取专线用户信息
2.4.1 接口程序的编写
根据需求,需要编写两个接口程序:第一个用于导出光路编码对应的线路信息(包括光路编码,光路
两端设备 IP ,光路两端设备端口);第二个用于导出IP 地址对应的专线用户信息(包括专线用户接入号,专线所属设备 IP 和专线所属设备端口),涉及 urllib ,requests ,http ,json 等模块,大致步骤如下 :
步骤1:根据抓包结果或者网页源代码,获得目标url 。
步骤2:获取网站 cookies 。步骤3:将目标 url 、cookies ,以及请求头封装并提交,获取结果并保存成字符串。由于 Web 接口响应存在超时几率,每轮需要新建一个临时列表,保存非 200返回代码的请求,并循环发送,直到临时列表为空。
步骤4:分析结果字符串并提取可用信息,一般为json 格式。
2.4.2 专线用户信息的获取
若原始输入为电子表格形式,第一步根据光路编码,通过接口获取编码对应的设备 IP ,端口;第二步获取 IP 对应的专线用户信息。若原始输入为 IP 形式,第一步遍历端口描述生成下联网络拓扑表,第二步根据拓扑表中的 IP 获取专线用户信息。
2.5  专线用户数据清洗和提取
Technology Study
技术研究
DCW
15
数字通信世界
2021.02
(1)在涉及部分端口的分险操作场景中,专线的提取需要精确到设备端口。此时需要对从 Web 接口提取到的端口字段(光路两端设备端口,专线所属设备端口)清洗,去除多余前置零和前置端口类型,并将四段式端口编码转换为标准的三段式。清洗后,关联查得到被风险操作影响到的专线用户信息。
(2)在涉及设备上联链路的风险操作场景下,如果风险操作涉及某台设备的所有上联,此时设备存在业务全阻可能,此时需导出整台设备下的专线用户信息,解决方法如下:
步骤1:根据城域网设备总表中的设备名称,端口描述,提取出所有设备上联方向的端口编号和光路编码;
步骤2:根据风险操作原始表中提供的光路编码或者设备名称 +端口编号,与步骤 1得到的设备上联表进行关联查。如果某台设备的所有上联的光路编码,均出现在风险操作原始表中,则认为该设备存在业务全阻可能,并导出其下所有专线用户。
2.6  效果展示
(1)风险操作拓扑表。程序会根据端口描述,提取其中的设备名称,并尝试到设备的 IP 地址,如果没有到,则提示“ not found in total_df ”;若描述本身不合法,则提示“ des not match ”;若到 IP ,则把 IP 写入。“ level 1”代表为割接设备的直连设备,“ level 2”则代表为割接设备的二级设备。
(2)风险屏蔽结果列表,拨号设备列表,专线用户信息列表效果展示。程序输出每台 OLT 的IP 地址以及关联专线用户的数量。并把所有专线号码全部存入一个
列表。最后将设备屏蔽,拨号用户屏蔽,专线用户存入电子表格,该表格可直接导入告警系统,起到告警屏蔽作用。部分结果如图 1
所示。
图1 风险操作分析工具效果展示
3    结束语
本文从风险操作流程出发,分析了各环节耗时,针对其中风险操作拓扑整理以及专线用户提取环节,开发了基于Python 的风险操作自动分析工具。相比人工方式,将分析时长从1小时缩短到了5分钟,同时提高了分析准确性。
参考文献
[1]  L UCIANO RAMALHO 著.FLUENT PYTHON [M].南京:东南大学出版社,2017.
[2]  陈春晖,翁恺,季江民编著.Python 程序设计[M].杭州:浙江大学出版社,2019.
不换号转运营商[3]  郭卡,戴亮.Python 数据爬取技术与实战手册[M].北京:中国铁道出版社,2018.
(上接第12页)
4    结束语
以配网通信网ICT 融合要求为立足点,展开相应测
试平台的设计工作,结果表明,该测试可以满足资源优化配置、电网安全运行、经济高效等多个层面的要求,可以为之提供可靠的技术支撑,以此构建完善的信息通信一体化平台。纵观未来发展趋势,对于移动语音、视频监控等业务的开发而言,也能够为之提供技术层面的参考,研究内容具有现实意义。
参考文献
[1]  谢大海,王勇,崔照华.电力数据通信网带宽测试标准的研究与应用[J].电力与能源,2020,41(06):714-717.
[2]  邢保霞.开展800 MHz CDMA 数字蜂窝移动通信网测试对于无线电管理的意义[J].中国无线电,2018(03):61.
[3]  赵锦辉,戴俊峰,张明昭,齐放,叶学程.电力通信网光纤衰减测试及光缆链路故障点的定位[J].电工技术,2018(02):45-46.
[4]  高栋寅,厉进,岑彦,周盛路,陈迪辉,陈州.外线测试功能在行业专用通信网中的网管实现方法[J].信息通信,2017(03):212-213.
[5]  吕玉祥,汪玉成,杨阳.基于业务承载的配网通信网ICT 测试平台设计[J].电气自动化,2016,38(06):100-104.
[6]  陆继钊.基于PTN 技术的河南电力地区通信网的规划与测试[D].郑州:郑州大学,2016.
[7]  郝佳恺,吕文亮,高鹏,刘晓宸,林超,谭静.配电通信网EPON 设备冗余网关测试研究[C].中国电力科学研究院.2016智能电网发展研讨会论文集,2016:5.
[8]  G B/T 32415-2015.GSM/CDMA/WCDMA 数字蜂窝移动通信网塔顶放大器技术指标和测试方法[S].2016.
[9]  吕玉祥.智能配用电通信网测试系统研究[D].重庆:重庆大学,2015.[10]  张成君,由学旭.电力系统继电保护信号在其通信网中的互联技术及测
试方法[J].信息通信,2014(12):180.
[11]  李勇,李会新,王英英.电力通信网异地多台装置协同测试系统的研究[J].
湖北电力,2014,38(10):1-6.
[12]  叶斐.SDN 在电力通信网中的适应性研究[D].重庆:重庆大学,2014.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。