基于Python的运营商风险操作分析工具

2021-03-17 09:55张岩凯
数字通信世界 2021年2期
关键词:城域网IP地址端口

沈 昀,张岩凯

(中国电信股份有限公司无锡分公司,江苏 无锡 214000)

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%左右。而在目前的城域网设备中,接口下有规范化的描述字段,字段包括了连接方向、对端设备名称、对端设备端口以及光路编码。通过规划端口描述,理论上可以推导出网络拓扑结构。因此,风险操作分析工具关键功能需求设定如下:

步骤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 专线用户数据清洗和提取

(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分钟,同时提高了分析准确性。

猜你喜欢
城域网IP地址端口
IP城域网/智能城域网BGP收敛震荡的分析方法
一种有源二端口网络参数计算方法
一种端口故障的解决方案
铁路远动系统几种组网方式IP地址的申请和设置
多按键情况下,单片机端口不足的解决方法
面向FTTH业务的IP城域网优化改造设计
基于IP城域网的优化策略及发展应用
IP城域网建设中技术及应用情况分析
公安网络中IP地址智能管理的研究与思考
《IP地址及其管理》教学设计