面向电力终端设备远程升级的文件切片传输方法

2023-06-09 08:57周忠冉李马峰邹徐熹顾亚林
现代计算机 2023年7期
关键词:分片服务端切片

周忠冉,李马峰,邹徐熹,顾亚林,刘 皓

(南京南瑞信息通信科技有限公司,南京 210003)

0 引言

建设电力物联网为电网运行更安全、管理更精益、服务更优质开辟了一条新路[1‑2]。智慧物联体系是电力物联网的核心基础设施,通过物联管理平台与边缘物联代理,构建电力物联网的纽带,实现终端数据的采集、上报与标准化处理以及终端的下行控制等,打通了专业终端与业务系统的数据互联[3‑4]。

按照物联体系建设原则,需要完成从感知层到平台层再到业务系统层实现端到端全业务流程纵向贯通,最终实现各类跨专业终端统一接入、统一运营、统一管控[5‑6]。海量的电力终端与物联平台之间通常采用移动无线网络的方式进行连接,处于电网一线工作环境下的电力终端经常会受到温度、湿度以及强电磁辐射的影响而造成传输信号扰动,因而网络数据传输过程中的断网重连的现象是一种工作常态[7−8]。为了提高电力终端设备与物联平台之间文件传输的工作效率,研究在恶劣工况下的文件分片以及断点续传技术显得尤为重要[9‑10]。

1 技术理论基础

传统互联网行业内的文件传输技术通常使用FTP(file transfer protocol)文件传输协议来实现,但是在网络条件极为复杂的物联网环境下,采用FTP协议传输数据存在以下几点不足:

(1)FTP 协议的数据传输需要在服务端与客户端至少开放两个端口,一个是命令控制端口,一个是数据传输端口。在物联网环境中,电力终端通过无线移动基站接入到电力专网,之后经过层层网关、路由器以及防火墙设备与物联平台建立连接,如果要在基数庞大的电力终端上同时保持两个端口处于工作状态,会导致整个体系在网络安全管理和维护上的成本成倍增加。

(2)采用FTP协议的客户端每次与服务端建立连接时都需要进行用户身份验证,对于频繁受到环境干扰而不断重连的无线网络连接会产生大量管理数据的交互,从而导致真正需要传输的文件数据的传输效率大幅降低。

(3)FTP 协议中没有在发送的数据中加入Meta‑Data,仅可传输原生的二进制数据,不利于针对电力物联网的专业场景进行扩展。

在电力物联网环境中采用HTTP 协议实现远程升级文件的传输可以针对以上的不足予以提升。HTTP 协议是一种无状态的协议,这意味着它在处理服务端和客户端之间的握手通信过程时,交互的管理信号比FTP 协议要更加高效。HTTP 协议的数据通信只需要一个端口来完成数据传输,并且在传输数据的时候,可以通过Meta‑Data 来扩展协议内容,实现针对电力终端特殊应用场景的定制优化。

2 方法设计

容器架构的敏捷、轻简和高度兼容性使容器成为云原生生态中最基础的一环,无论是混合云/多云的推进,容器都将扮演至关重要的角色。Docker+Kubernetes 构成的应用运行平台,不足以支撑IT 基础设施与信息化全生命周期管理的便捷需求,所以,市场上有大量的公司,以Docker+Kubernetes 的容器环境为基础,增加IT 基础设施与信息化全生命周期管理的各类组件,形成自主行业容器云平台或是开源云平台,或是通过对各组件管理能力的开发、组织统一的管理平台等形成,打造出自主云平台。

2.1 总体架构

采用扩展HTTP协议的方式提供一种面向电力终端设备远程升级的文件切片传输方法,旨在实现在复杂恶劣的网络环境下的数据文件传输,最大化提高数据传输的效率。

面向电力终端设备远程升级的文件切片传输方法总体的步骤包括:构建支持HTTP扩展协议的文件服务器;连接基于4G 移动基站的传输网络;构建支持HTTP扩展协议的远程升级文件下载客户端程序;服务端对下载的文件进行定量切片,并记录每个文件的切片数量;发起下载文件的连接,获取远程文件的实际大小及文件切片的数量;开启多线程网络连接,按文件切片的数量对边缘终端下载的升级文件进行数据传输,并同时记录每个文件分片的数据传输位置信息;在复杂网络环境下接收文件数据时,如果发生网络传输失败,则启动网络重连机制,一旦重连成功则从上次数据传输失败的位置继续接收文件分片的数据内容。

图1 总体架构

面向微应用的自动化运维由资源管理模块、系统管理模块、 监控模块三部分组成。其中,资源管理模块主要负责对象、操作、属性、类别基础管理工作。资源管理模块是系统部署的基础。

系统管理模块主要负责运维平台的江苏电力相关物理系统的部署。负责完成物理系统虚拟化或者容器化部署以及与相应服务组件(F5、Nginx、DB 等)的连接工作。

监控模块主要负责相应的服务组件、虚拟机、集群、主机的监控和告警工作。同时也负责记录和展示系统操作和相关管理系统的日志。

2.2 模型设计

面向电力终端远程升级的文件切片传输方法中构建支持HTTP协议扩展的文件服务器,它可以接收来自HTTP 客户端请求报文头中包含Iot‑edge‑ext:f‑download 特征的数据包。

构建支持HTTP协议扩展的客户端程序,可以发送包含Iot‑edge‑ext: f‑download、Iot‑edge‑ext:p‑download 特征的数据包。支持HTTP 协议扩展的文件服务器具备对下属管理的传输文件进行定量拆分的能力,其拆分的文件含义为F={f1,f2,…,fl}。支持HTTP 协议扩展的客户端程序向服务端发起文件下载请求,其发送的报文头中包含Iot‑edge‑ext: f‑download 数据特征。服务端返回的报文头中包含Iot‑edge‑pfile:数据特征,其携带的数据内容包含了在服务端进行拆分的文件分片信息。支持HTTP协议扩展的客户端程序接收到服务端返回包含Iot‑edge‑pfile:文件头的数据特征,根据收到的文件分片信息开启多线程模式,针对每个不同的文件分块进行数据下载,并且每个线程都对接收到的数据长度进行同步记录与跟踪,其数学含义表达如下:

式(1)中,Fu为下载文件的大小;P为每个文件分片的数据量;Cu为每个线程对应的文件分片接收数据;d为网络数据传输产生的断点位置。

支持HTTP协议扩展的客户端程序在接收文件数据的过程中,如果遭遇到工作环境中因温度、湿度或者电磁辐射产生的无线扰动信号导致的网络连接超时中断,客户端程序将启动网络重连机制。等待无线网络环境条件改善之后,网络连接重新建立成功,客户端程序将从之前记录的数据传送断点位置继续下载文件数据,其数学含义表达如下:

式(2)中,Pu表示文件分片的数据大小;d表示文件传输的断点位置;C表示数据接收线程的工作状态。

3 应用验证

需要注意的是,方法中所采用的关键字“Iot‑edge‑ext”“Iot‑edg‑pfile”,以及这些关键字所涵盖的内容定义,属于在HTTP协议中根据电力物联网专业场景下的扩展内容,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本方法可实施的范畴。

构建支持HTTP协议的文件服务器,连接基于4G 移动基站的传输网络,构建支持远程升级文件下载的HTTP客户端程序三种类型实体组成的网络传输模型。发送远程升级文件下载的HTTP请求:

其中,报文头:Iot‑edge‑ext 为本方法提出的HTTP协议扩展内容。

返回服务器运行状态,以及被拆分之后的文件分片数据信息:

获取到文件分片信息之后开启多线程下载模式,分别由T1、T2、T3 发起文件分片数据下载请求:

在收到请求之后,分别向三个分片数据下载线程返回:

其中报文头:Accept‑Ranges:bytes表达的含义为服务端可接受客户端断点数据下载的请求。三个数据下载线程在接收到网络数据传输的过程中,实时记录每一个报文下载成功之后的数据位置。

如果电力终端受到由于环境温度、湿度及电磁辐射产生的信号扰动,出现网络数据传输超时中断的现象,则断开网络连接,重新发起文件数据分片下载请求:

其中报文头Iot‑edge‑ext: p‑download 表达的含义为电力物联网文件分片数据下载请求,Ranges: 2048‑ 表达要求服务器从文件分片数据的第2048 个字节开始传输数据,从而实现文件分片数据的断点续传。

4 结语

综上所述,提出了一种面向电力终端设备远程升级的文件切片传输方法,通过扩展HTTP协议,在服务端实现对文件长度的定量切片和在客户端实现对数据传输的位置记录,通过多线程技术实现数据文件分片传输以及断点续传,在有限的网络带宽和复杂的网络环境中最大化减少数据传输成本,旨在实现在复杂恶劣的网络环境下的数据文件传输,最大化提高数据传输的效率。

猜你喜欢
分片服务端切片
上下分片與詞的時空佈局
分片光滑边值问题的再生核方法
CDN存量MP4视频播放优化方法
基于模糊二分查找的帧分片算法设计与实现
云存储中基于相似性的客户-服务端双端数据去重方法
新时期《移动Web服务端开发》课程教学改革的研究
在Windows Server 2008上创建应用
基于SDN与NFV的网络切片架构
肾穿刺组织冷冻切片技术的改进方法
冰冻切片、快速石蜡切片在中枢神经系统肿瘤诊断中的应用价值比较