摘要:研究基于OTN网络进行算力接入时延圈绘制展示的方法并在现网部署。算网大脑通过向OTN控制器查询获取以指定机房为中心,小于等于指定时延指标的所有机房节点的信息。基于这些节点的地理位置信息,算网大脑用Graham扫描算法生成凸多边形,进而通过调用能力开放平台平滑接口计算生成平滑面,在GIS地图上绘制和展示每个网络机房或算力机房的时延圈。通过这种方法,将运营商的OTN网络时延性能进行地理化呈现,便于客户快速直观地选云、入云,同时也能协助运营商在规划算力机房时选择最佳的地理位置,以满足目标区域的算力服务覆盖需求。
01 背 景
随着算力网络技术和业务的快速发展,通用算力、智能算力、超算算力为不同行业、不同应用场景提供多样化的算力支撑。部署算力的机房可以灵活地为接入算力网络的不同客户提供算力服务,而客户也可以通过算力网络灵活地接入不同的算力机房完成业务处理。在接入或访问算力机房中的算力资源时,网络传输时延成为客户和通信运营商非常关注的一个重要性能指标,比如一些低时延业务如自动驾驶、视频类应用、远程控制等。
为了更好更快捷地提供算力和网络服务,通信运营商需要提前规划布局算力机房和网络设备,以便为目标区域的客户提供满足指定时延要求的全覆盖的算力服务。
02 现有技术的不足
在给定的传输时延要求下,运营商无法在地图上直观查看算力机房能覆盖和服务的网络机房范围,同时,客户无法在地图上直观查看指定时延约束条件下的可选接入的算力机房,不便于运营商快速、直观、高效地为客户制定算网调度方案。
目前业界没有地理化呈现的直观便捷准确的方法和工具辅助运营商进行算网资源规划和建设,合理的规划设置算力机房和网络机房建设地理位置,提前规划进行合理布局。
受网络机房分布不均或符合/满足条件的网络机房样本量少的影响,目前缺乏比较准确、合理的时延圈绘制方法,绘制的时延圈出现变形失真或相互交叉的情况,与现网的实际时延性能数据差异较大,无法进行商用展示和指导实际生产.
03 OTN网络算力接入时延圈绘制展示研究和实践
3.1 OTN网络算力接入时延圈绘制展示系统简介
本文提出了一种OTN网络算力接入时延圈绘制展示方法,当用户在地图上点击某个网络机房或算力机房时,算网大脑向OTN网络的SDN控制器查询该机房内OTN设备到周边机房内OTN设备的时延数据,地理化直观呈现不同时延区间的时延圈。
文中算力机房指算力资源所在的机房,该机房有部署OTN设备用于算力资源的接入,算网大脑需要将该OTN设备关联到其部署的算力机房;网络机房指核心、汇聚、接入、CPE等不同层级OTN设备所在的机房,由于存在多个OTN设备共机房的情况,并且在同个机房的OTN设备其经纬度都一致,为了减少计算的复杂度,需要将OTN设备按机房颗粒度进行归集聚合,同机房的OTN设备聚合为机房一个点,然后使用机房的经纬度坐标参与计算。图1所示为系统的整体框架。具体地,网络规划设计者可直观地查看算力机房网络能力覆盖范围。当网络规划设计者点击算力机房时,系统可以展示从当前算力机房到周边算力机房和网络机房的时延圈,以便其规划设计算力机房的最佳地理位置;客户可直观地在地图上查看运营商的算力网络资源。当客户点击算力业务接入点附近网络机房时,系统可以展示从当前网络机房到周边算力机房的时延圈,以便于为客户快速、直观、高效地制定算网调度方案。
图1 系统整体架构图
SDN控制器提供传输时延数据查询接口,需要先指定查询的起始机房,再设定需查询的时延范围(本文中的时延均为单向时延),SDN控制器会将起始机房周围时延小于等于指定时延范围(比如2ms以内)的所有设备信息返回(为避免样本点少儿而导致时延圈失真的问题,返回的设备包括核心、汇聚、接入、CPE各层级的OTN设备和算力机房OTN接入设备),并返回每个OTN设备到起始机房的OTN设备的最低时延数据,通过所有这些点的信息生成凸多边形,绘制时延圈。通过这种方法,尽可能地扩大参与时延圈绘制的机房的数量,使得时延圈的拟合/绘制更加贴近现网的时延性能,并且可以避免因为OTN设备/机房样本量少引起的时延圈图形失真、不平滑,甚至出现不同时延圈之间交叉的异常情况。
3.2 OTN网络拓扑数据管理
3.2.1 OTN网络信息获取
时延圈所涉及的OTN网络数据由算网大脑调用SDN控制器接口获取,由于OTN网络信息数据量较大,由算网大脑采用FTP文件传送接口每天定时采集(比如每天凌晨01:00),并且对SDN控制器导出的文件进行解析处理。该文件提供最新的全网各层级OTN设备的信息,以及OTN设备之间相互连接的拓扑信息和时延信息。从SDN控制器采集回的相关数据,需要在算网大脑进行加工处理。
SDN控制器通过PCEP(Path Computation Element Communication Protocol)协议获取OTN设备之间的拓扑信息和时延信息。OTN设备根据G.709标准用ODU开销测量链路时延,测量链路时延时,一端单板在开销中插入测量字节并记录发送时间,对端单板再把字节传回来,发起端收到后记录接收时间,接收时间减去发送时间可得到双向时延,由于OTN链路双向路径通常一致,双向时延除以2即可获得单向时延,精度可达到微秒级。
3.2.2 OTN设备和机房信息关联
OTN设备的数据来源包括2部分,一部分来自于SDN控制器,提供OTN设备的名称、ID、类型、角色等信息;一部分来自于资源管理系统,提供OTN设备的名称、ID、所属机房名称、机房GIS经纬度坐标等信息,2个系统返回的数据通过设备名称或设备ID进行关联整合,整合后的OTN设备主要字段信息如表1所示。
表1 OTN设备主要字段信息
3.2.3 时延圈数据预处理
算网大脑以机房视角保存各机房之间相互访问的时延数据,具体说明如下:以机房作为基本单元来绘制时延圈,即参与绘制时延圈的多边形的端点不是OTN设备,而是OTN设备所在的机房,本文中的机房分为算力机房和网络机房。
运营人员可以点击地图中的网络机房或算力机房查询时延圈,如果运营人员点中的是网络机房,则分别以该网络机房内的每个OTN设备为起点发起查询,如果点中的是算力机房,则分别以部署在该算力机房内的每个OTN设备为起点发起查询。具体地,算网大脑依次调用SDN控制器接口,输入每个指定的起点OTN设备信息以及要查询的时延信息,SDN控制器返回从该OTN设备到周边时延上限范围内的所有OTN设备及其时延信息。算网大脑以每个OTN设备为起点查询的所有结果(符合条件的OTN设备)的并集进行绘图。
举例说明如下:运营人员点击A机房查询2 ms时延圈,A机房内有a、b 2台OTN设备,算网大脑以a设备为起点向SDN控制器查询2ms时延圈,获得周边满足条件的OTN设备集合是{d、e、f、g、i};接着算网大脑再以b设备为起点查询2ms时延圈,获得周边满足条件的OTN设备集合是{c、e、f、h},将以上2个集合求并集得到设备集合{c、d、e、f、g、h、i},假设各设备的机房归属关系分别为B(c、d)、C(e)、D(f)、G(g)、H(h)、I(i),那么以A机房为中心的2ms时延圈内的机房将包括B、C、D、G、H、I机房。需说明的是,A机房内任一OTN设备(比如a、b设备)到B机房内任一OTN设备(比如c、d设备)的所有链路时延中,以最低链路时延作为A机房到B机房的时延,其他机房之间的时延计算方法以此类推。
为了提升查询速度和操作体验,算网大脑按照以上方法,每天凌晨完成OTN网络信息采集后,对指定地理区域内的所有算力机房和网络机房内的OTN设备按不同时延区间的时延圈要求进行遍历预查询和计算,对查询得到的网络时延数据按机房视角进行归集处理和入库保存。具体的,以2ms时延圈为例,算网大脑将起点机房、终点机房、时延、经纬度计算结果入库保存,示例如表2所示。
表2 2ms时延圈的机房列表
在表2的基础上,算网大脑还可以通过凸包算法,计算得到的每个机房对应不同时延圈的凸多边形(比如对应2ms时延圈)数据(包含凸多边形的各端点名称和经纬度信息)并入库保存,方便按需直接查询。具体举例说明:以A机房为中心的2ms时延圈凸多边形,是基于表2中以A机房为起点,时延小于等于2ms的所有终点机房为初始集合{B、C、D、G、H、I},对这个初始集合内的每个机房基于其GIS坐标在地图上打点,然后对这些点的集合运用凸包算法生成凸多边形,假设生成的凸多边形端点集合为{B、C、D、G、H},那么算网大脑库表中保存的A机房2ms时延圈凸多边形端点数据如表3所示。
表3 A机房2ms时延圈的凸多边形端点列表
3.3 时延圈计算方法
在GIS地图上绘制时延圈时,需要先根据指定时延范围内所有机房的经纬度坐标,按照凸包算法计算生成凸多边形,并根据这个凸多边形的各端点经纬度,来调用能力开放平台的多边形平滑面查询接口,用于生成一个平滑面的边界坐标,再使用这个坐标来进行时延圈的绘制和展示。
3.3.1 计算生成平滑面过程
a)对绘制多边形的坐标组里的数据进行预处理,处理端点顺序,避免自相交,采用凸包算法处理。
b)根据处理后的坐标组构建凸多边形,该生成过程通过引入JTS工具包(JTS工具包是一套JAVA API,提供一系列的空间数据分析相关的API),调用API实现。
c)将预处理后的凸多边形坐标组,调用能力开放平台平滑面接口获得平滑面的坐标组,在GIS地图上进行绘制。
3.3.2 凸包算法处理过程
凸包问题是计算几何的核心问题之一。在一个实数向量空间V中,对于给定集合X,所有包含X的凸集的交集S被称为X的凸包。X的凸包可以用X内所有点(X1,…Xn)的凸组合来构造。简单来讲,给定二维平面上的点集(即点的集合),凸包就是将最外层的点连接起来构成的凸多边形,它的内部包含了点集中其余所有的点。
凸包算法广泛应用于地理信息学和地理信息系统。目前已知许多凸包算法,例如:Graham扫描法、Jarvis步进法、Melkman算法等。在项目实践中采用的是Graham扫描法。具体计算过程如下:
a)把所有的点放在二维坐标系上,先找到凸包最下方的点P0(假设P0为坐标原点)。
b)从P0开始按增加的逆时针角度对凸包上的点进行排序,存在多点角度一致时,则按到P0距离进行排序。如图2(a)所示,P0与P5、P6水平夹角一致,与P0距离近的P5点排在前面。
c)在完成以上准备工作后,便可以求凸包了。从P0点开始扫描点集,依次连接每个点,每连接一个点,检测连线×的值,若大于0,2条连线的走向为逆时针,则保留前一个点;若小于或等于0,2条连线的走向为顺时针或共线,则删除前一个点,再让前面的第二个点连接,继续检测,直到所有点均被检测过。
由几何知识可知,P1与P7一定在凸包上。如图2(b),连接P2时,检测与的方向,图中箭头为逆时针,则点P1在凸包上;如图2(c),连接P3时,检测与的方向,图中箭头为顺时针,则点P2不在凸包上;如图2(e),连接P4时,检测与的方向,图中箭头为逆时针,则点P3在凸包上,如此循环,最终得到凸包上的点集(P0,P1,P3,P4,P6,P7)。
图2 凸包算法处理过程示意图
3.3.3 平滑面接口调用
a)调用接口时,经纬度坐标的顺序要正确,比如按顺时针顺序依次调用,不能有自相交的,需要能按照顺序绘制出一个闭合图形。
b)调用接口时,传入用于绘制平滑面接口的坐标需要遵循WKT数据规范(Well-Known Text是一种文本标记语言,用于表示矢量几何对象、空间参照系统及空间参照系统之间的转换),首尾端点坐标一样。例如,当前只有4个点的坐标,按照顺序是(A、B、C、D),这样传入参数时应该是传坐标(A、B、C、D、A)。
3.4 时延圈展示
用户在GIS地图上点击某个机房,算网大脑直接查询库表数据,展示点中的算力机房或网络机房的时延圈,用以评估在指定时延约束下的算力服务范围。以百度地图的地图层级为例,当时延圈地图打开时,地图层级默认为7级(比例尺为1:100km),可以在省级视图下选中某个机房展示多级时延圈信息,用户可以通过放大地图展示更多的地理信息,最多可展示到区、县、城镇、乡、街道名、地名级别(对应地图层级15级〔比例尺为1:500m〕)。时延圈展示业务逻辑如下:
a)在地图上展示算力机房、网络机房和子网节点,子网节点指的是每个地市的OTN网络在地图上浓缩为一个子网节点。
(a)地图层级7-8级,属于省级视图,在图上展示算力机房和子网节点。
(b)地图层级大于8级(比例尺为1:50km),属于地(市)级视图,在图上展示算力机房和网络机房。
b)用户点击图上某个机房后,前端页面向后台请求数据,获取从当前点中的机房到周围算力机房、网络机房的时延圈数据,系统从库表中查询符合时延条件的算力机房、网络机房数据,并按照3级时延圈进行分组。
(a)在查询机房后,需要考虑当前地图展示边界的经纬度,对当前地图展示边界范围外的机房进行过滤。
(b)时延圈3级分组规则:地图层级7-8级,可以按1ms、2ms、3ms时延区间进行分组,如图3所示,展示了以“某共享节点”为中心的算力机房的时延圈;地图层级大于8级,可以按0.2ms、0.5ms、0.8ms时延区间进行分组,以上具体时延区间可酌情设置,如图4所示,展示了以“某科技园机房”为中心的网络机房时延圈。
(c)在得到分组的机房数据后,分别根据每个分组内机房数据的经纬度,先计算对应时延圈的多边形边界,并调用平滑圈查询接口,将多边形边界转换为平滑边界,用于在地图上的时延圈绘制。由于时延圈是从大到小覆盖的,较大时延圈的机房数据须包含所有较小时延圈的机房数据。
d)在时延圈平滑圈边界计算完成后,返回至前端页面进行时延圈绘制。
(a)在点击的中心点机房上显示气泡,在其周围展示3级时延圈,可以通过颜色进行区分。地图层级7-8级,按1ms、2ms、3ms时延圈绘制;地图层级大于8级,按0.2ms、0.5ms、0.8ms时延圈绘制。
(b)点击地图上某个机房,可以在图上打开浮窗,展示机房内的OTN设备信息,可以包括设备名称、设备角色。
在图上点击其他机房后,原先机房的时延圈去掉,改为展示新点击机房的时延圈。
图3 以“某共享节点”算力机房为中心的时延圈
图4 以“某科技园机房”网络机房为中心的时延圈
04 总结
通过本文介绍的方法,运营商对算力机房能覆盖和服务的网络机房范围可以在地图上直观查看,同时,客户对可选接入的算力机房也可以在地图上直观查看,便于为客户快速、直观、高效地制定算网调度方案。本文提供了直观便捷的方法和工具辅助运营商进行算网资源规划和建设,合理地规划设置算力机房和网络机房建设地理位置,提前规划进行合理布局。
作者简介
杨振东,高级工程师,毕业于华南理工大学,硕士学位,主要从事运营支撑系统、算力网络的相关技术研发工作。
陈善杰,助理工程师,毕业于暨南大学,硕士学位,主要从事运营支撑系统、承载网相关的新技术研发工作。
版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。