首页 / 专利库 / 分销网络和设备 / 需求侧响应 / 一种基于单向网络的跨网文件即时传输方法及系统

一种基于单向网络的跨网文件即时传输方法及系统

阅读:746发布:2020-05-11

专利汇可以提供一种基于单向网络的跨网文件即时传输方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于单向网络的跨网文件即时传输系统及方法,在一个单向网络中,部署文件传输发起侧模 块 和文件传输接收侧模块;在文件传输发起侧模块部署任务 请求 模块,在文件传输接收侧模块部署任务管理模块;该系统及方法,可以根据需求侧获取文件需求,生成任务信息;通过地址转换规则,将任务信息转换为能够被任务请求模块识别到的文件地址;任务请求模块在向任务管理模块发起连接请求时,从任务管理模块中获取到任务信息,和与任务信息相适应的文件地址;基于文件地址,在当前网络中进行搜索后,并将获取到的所需文件推送给任务管理模块;任务管理模块调用缓存模块将文件写入接收侧的缓存区及调用文件发布模块将所需文件反馈给需求侧。,下面是一种基于单向网络的跨网文件即时传输方法及系统专利的具体信息内容。

1.一种基于单向网络的跨网文件即时传输系统,该系统包括在一个单向网络环境中,包括分别在发起侧网络下部署的文件传输发起侧模-FTC,以及在接收侧网络下部署的文件传输接收侧模块-FTS,其特征在于,还包括在FTC部署的任务请求模块-TRM,以及在FTS部署的任务管理模块-TMM,其中:
TMM用于一方面接收TRM推送的文件,并调用文件缓存模块FCM进行缓存存储;另一方面根据文件发布模块FPM获取文件的需求,调用文件缓存模块FCM在任务缓存区进行文件匹配,在文件匹配成功的情况下,将所需文件进一步反馈到需求侧,其他情况下,将生成包括请求文件地址的任务信息进行存储到任务缓存区,其中,通过地址转换规则,将所述任务信息转换为能够被TRM识别到的识别文件地址;
TRM用于向TMM发起连接请求,并从任务缓存区中获取识别文件地址;其中,由发起侧网络下的TRM不断主动的向任务缓存区询问是否存在待处理任务信息,当存在待处理任务信息时,则从所述任务缓存区中获取识别文件地址,所述TRM基于识别文件地址,在发起侧网络中进行搜索,并将获取到的所需文件进一步推送给TMM,由TMM在将所需文件反馈给需求侧的同时,将其存储于任务缓存区。
2.根据权利要求1所述的跨网文件即时传输系统,其特征在于,FTC中还包括文件处理模块-FHM和文件推送模块-FSM,其中:
FHM用于在TRM向TMM发起连接时,从任务缓存区中获取识别文件地址,从而进行文件系统的适配处理,获得文件信息和文件内容;
FSM用于从FHM中获取文件信息和文件内容,按照FTC和FTS间的协议进行网络数据包的封装,并将封装后的数据包推送给TMM。
3.根据权利要求2所述的跨网文件即时传输系统,其特征在于,FTS中还包括文件缓存模块-FCM和文件发布模块-FPM,其中:
FCM用于对TMM创建的包括请求文件地址的任务信息,进行查询和写入管理,并对FSM推送的文件数据进行存储,以及对需求侧向FPM请求的文件进行读取;
FPM用于与需求侧对接,将文件请求数据提供给TMM并从FCM获取文件信息和内容,响应给需求侧。
4.根据权利要求3所述的跨网文件即时传输系统,其特征在于,在所述文件缓存模块FCM中设置定期清理机制,通过对存储的文件数据做进一步分类统计后,设定一个时间阈值,将缓存时间高于阈值的对应缓存文件删除。
5.根据权利要求1所述的跨网文件即时传输系统,其特征在于,在FTC部署文件传输客户端程序,在FTS部署文件传输服务器程序。
6.根据权利要求1所述的跨网文件即时传输系统,其特征在于,采用分布式部署机制,在当前的网络中,将FTC与FTS之间部署为多点对单点的连接关系,将在需求侧设定的应用请求程序与FTS之间部署为多点对多点的连接关系;其中,每个FTC、FTS和应用请求程序视为一个连接节点
7.根据权利要求6所述的跨网文件即时传输系统,其特征在于,在需求侧设定的应用请求程序与FTS之间还设定连接有一个负载均衡组件,所述负载均衡组件用于基于均衡算法将请求任务分发到不同的FTS节点,以平衡各个节点之间的工作负荷。
8.一种如权利要求1-7中所述的任一项跨网文件即时传输系统实现单向网络的跨网文件即时传输方法,其特征在于,包括以下步骤:
需求侧的应用,通过通信协议与文件接收侧之间建立通信连接,并向文件接收侧请求获取所需文件;
文件接收侧接收到请求后,在任务管理模块TMM中调用文件缓存模块FCM,将请求信息中包括的所需文件信息与缓存数据进行匹配,匹配到的数据将进一步反馈到需求侧;其中,在匹配失败的时候,执行下一步骤;
通过FTS中设有的任务管理模块TMM,创建新的文件传输任务,写入与所需文件信息相适应的任务信息,并等待任务请求模块TRM发起请求任务;待TRM发送任务请求给TMM后,由TMM通过FCM获取待传输任务,其中,基于地址转换规则,将待传输的任务信息转换成能够被文件发起侧识别到的文件地址,并做进一步存储后,将所述文件地址响应给TRM;
待文件发起侧与文件接收侧建立连接后,TRM从FTS的任务管理模块TMM获取到的待传输任务,在发起侧网络下,调用FTC的文件处理模块FHM进行所需文件的处理;
由FSM将处理后的文件信息和文件内容,按FTC/FTS通讯协议进行网络数据包的封装,封装后的数据包,将发送给FTS的TMM,TMM一方面调用文件缓存模块FCM对数据包进行存储,另一方面通过文件发布模块FPM将对数据包进一步反馈到需求侧。
9.根据权利要求8所述的跨网文件即时传输方法,其特征在于,基于分布式部署机制的情况下,在文件接收侧,将需求侧设定的应用请求程序与FTS之间部署为多点对多点的连接关系;在文件发起侧,将FTC与FTS之间部署为多点对单点的连接关系。
10.根据权利要求9所述的跨网文件即时传输方法,其特征在于,在需求侧设定的应用请求程序与FTS之间基于均衡算法,将请求任务分发到不同的FTS节点,以平衡各个节点之间的工作负荷。

说明书全文

一种基于单向网络的跨网文件即时传输方法及系统

技术领域

[0001] 本发明涉及信息传输领域,更具体地说,涉及一种在海量文件的业务需求下,通过分别在发起侧和接收侧分别部署相关的程序,进一步解决单向网络的即时传输方法及系统。

背景技术

[0002] 信息技术的发展大推动了计算机网络和信息系统,在政府及事业单位的广泛应用,为办公及生产建设的电子化、自动化和信息化提供了坚实的保障。
[0003] 在受限的网络(如公安网)环境中,跨网通讯只能由一侧发起连接,在另一侧监听连接请求,而不能反向建立连接。当有反向请求时,现有的文件传输软件基本上都无法使用。这种情况下,通常是由发起侧不加选择的向接收侧发送文件,然后在接收侧再保存一份文件(可称为预传输),这样做的缺点是需要在两个网络中部署两套存储系统,造成项目成本的上升。
[0004] 然而在海量文件的业务下,传统的解决方案显然已经不能满足日益增长的 业务量的现实情况的需求,解决单向网络的跨网文件传输变得尤其重要。

发明内容

[0005] 本发明要解决的技术问题在于,针对解决单一网络里的文件即时传输问题缺陷,提供一种基于单向网络的跨网文件即时传输方法及系统。
[0006] 本发明解决其技术问题所采用的技术方案是:构造一种基于单向网络的跨网文件即时传输系统,该系统包括在一个单向网络环境中,包括分别在发起侧网络下部署的文件传输发起侧模-FTC,以及在接收侧网络下部署的文件传输接收侧模块-FTS,还包括在FTC部署的任务请求模块-TRM,以及在FTS部署的任务管理模块-TMM,其中:
[0007] TMM用于一方面接收TRM推送的文件,并调用文件缓存模块FCM进行缓存存储;另一方面根据文件发布模块FPM获取文件的需求,调用文件缓存模块FCM在任务缓存区进行文件匹配,在文件匹配成功的情况下,将所需文件进一步反馈到需求侧,其他情况下,将生成包括请求文件地址的任务信息进行存储到任务缓存区,其中,通过地址转换规则,将所述任务信息转换为能够被TRM识别到的识别文件地址;
[0008] TRM用于向TMM发起连接请求,并从任务缓存区中获取识别文件地址;基于识别文件地址,在发起侧网络中进行搜索,并将获取到的所需文件进一步推送给TMM,由TMM在将所需文件反馈给需求侧的同时,将其存储于任务缓存区。
[0009] 进一步的,FTC中还包括文件处理模块-FHM和文件推送模块-FSM,其中:
[0010] FHM用于在TRM向TMM发起连接时,从任务缓存区中获取识别文件地址,从而进行文件系统的适配处理,获得文件信息和文件内容;
[0011] FSM用于从FHM中获取文件信息和文件内容,按照FTC和FTS间的协议进行网络数据包的封装,并将封装后的数据包推送给TMM。
[0012] 进一步的,FTS中还包括文件缓存模块-FCM和文件发布模块-FPM,其中:
[0013] FCM用于对TMM创建的包括请求文件地址的任务信息,进行查询和写入管理,并对FSM推送的文件数据进行存储,以及对需求侧向FPM请求的文件进行读取;
[0014] FPM用于与需求侧对接,将文件请求数据提供给TMM并从FCM获取文件信息和内容,响应给需求侧。
[0015] 进一步的,在所述文件缓存模块FCM中设置定期清理机制,通过对存储的文件数据做进一步分类统计后,设定一个时间阈值,将缓存时间高于阈值的对应缓存文件删除。
[0016] 进一步的,在FTC部署文件传输客户端程序,在FTS部署文件传输服务器程序。
[0017] 进一步的,采用分布式部署机制,在当前的网络中,将FTC与FTS之间部署为多点对单点的连接关系,将在需求侧设定的应用请求程序与FTS之间部署为多点对多点的连接关系;其中,每个FTC、FTS和应用请求程序视为一个连接节点
[0018] 进一步的,在需求侧设定的应用请求程序与FTS之间还设定连接有一个负载均衡组件,所述负载均衡组件用于基于均衡算法将请求任务分发到不同的FTS节点,以平衡各个节点之间的工作负荷。
[0019] 本发明提供一种如上述的任一项跨网文件即时传输系统实现单向网络的跨网文件即时传输方法,包括以下步骤:
[0020] 需求侧的应用,通过通信协议与文件接收侧之间建立通信连接,并向文件接收侧请求获取所需文件;
[0021] 文件接收侧的文件发布模块FPM接收到请求后,调用文件缓存模块FCM,将请求信息中包括的所需文件信息与缓存数据进行匹配,匹配到的数据将进一步反馈到需求侧;其中,在匹配失败的时候,执行下一步骤;
[0022] 通过FTS中设有的任务管理模块TMM,创建新的文件传输任务,并等待任务请求模块TRM发起请求任务;待TRM发送任务请求给TMM后,由TMM通过FCM获取待传输任务,基于地址转换规则,将任务信息转换成能够被文件发起侧识别到的文件地址后,响应给TRM;
[0023] 待文件发起侧与文件接收侧建立连接后,TRM从FTS的任务管理模块TMM获取到的待传输任务,在发起侧网络下,调用FTC的文件处理模块FHM进行所需文件的处理;
[0024] 由FSM将处理后的文件信息和文件内容,按FTC/FTS通讯协议进行网络数据包的封装,封装后的数据包,将发送给FTS的TMM,TMM一方面调用文件缓存模块FCM对数据包进行存储,另一方面通过文件发布模块FPM将对数据包进一步反馈到需求侧。
[0025] 进一步的,基于分布式部署机制的情况下,在文件接收侧,将需求侧设定的应用请求程序与FTS之间部署为多点对多点的连接关系;在文件发起侧,将FTC与FTS之间部署为多点对单点的连接关系。
[0026] 进一步的,在需求侧设定的应用请求程序与FTS之间基于均衡算法,将文件请求分发到不同的FTS节点,以平衡各个节点之间的工作负荷。
[0027] 在本发明所述的一种基于单向网络的跨网文件即时传输方法及系统中,不同于现有技术通过文件摆渡工具(如FTP)将文件从一个网络复制到另一个网络;本发明提供了一种单向网络文件下即时传输的方法及系统,通过在接收侧网络提供文件地址映射机制和文件高速缓存机制,在接收侧网络要请求发起侧网络的文件时,一方面基于高速缓存区中已经缓存的文件进行直接反馈,另一方面由发起侧网络下部署的程序来在获取到待处理任务后,将对于的所需文件在本网络下进行下载等处理,推送给部署在接收侧网络的模块再反馈给需求侧;该方法及系统,一方面在受限的网络下,提供了反向建立连接,并进行跨网文件的传输,且不需要在两个网络下部署两套存储系统,大大降低了项目成本。附图说明
[0028] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0029] 图1是本发明公开的一种基于单向网络的跨网文件即时传输系统结构图;
[0030] 图2是实际开发过程中构建的跨网文件即时传输系统拓扑结构图;
[0031] 图3是实际开发过程中数据流的初始传输示意图;
[0032] 图4是实际开发过程中数据流的实际传输示意图;
[0033] 图5是实际开发过程中发起侧的数据交互示意图;
[0034] 图6是实际开发过程中接收侧的数据交互示意图;
[0035] 图7是集群及横向扩展方案的系统结构示意图;
[0036] 图8是FTC获取任务的流程图
[0037] 图9是FTC文件处理的流程图;
[0038] 图10是FTC文件发送的流程图;
[0039] 图11是FTS任务管理的流程图;
[0040] 图12是FTS缓存管理的流程图;
[0041] 图13是FTS文件发布的流程图;
[0042] 图14是现有技术下跨网平台对存储的依赖情况示意图;
[0043] 图15是本发明提供的改进后的跨网平台对存储的依赖情况示意图。

具体实施方式

[0044] 为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
[0045] 请参考图14,其为现有技术下跨网平台对存储的依赖情况示意图,现有的技术中,以交警业务为例,在交警的网络环境下,一般将视频专网和公安网做了区分,在公安网下的其他应用程序(1-n)无法主动向视频专网请求文件,一般是通过文件摆渡工具(如FTP应用程序)将在公安网需要使用的文件全部从视频专网复制到公安网,存储在公安网的存储系统上。
[0046] 对于少量的文件,传统方法,在处理上并不存在问题,然而在海量文件的业务场景下,一套完备的存储系统的花费在整个项目中所占的比例已经占到一半甚至以上,因此传统的解决方案显然已经不能满足日益增长的业务量的现实情况的需求,解决单向网络的跨网文件传输变得尤其重要。
[0047] 请参考图15,其为本发明提供的改进后的跨网平台对存储的依赖情况示意图,本发明的目的在于提供一种在单向网络里解决文件即时传输的问题;即,在接收侧也可以向发起侧发起文件传输请求,发起侧得到请求指令后,再由发起侧设定的应用程序向接收侧发送文件,完成文件的传输。从而解决单向网络里的文件即时传输问题。
[0048] 为了实现上述目的及其他相关目的,具体的操作过程为:由发起侧网络发起长连接请求,在接收侧网络下,由在接受侧设定的应用程序,响应发起侧网络的连接请求和响应本网络下的文件请求,并在接收侧网络下,分别提供文件地址映射机制和文件高速缓存机制;
[0049] 当在接收侧网络需要向发起侧网络请求需求文件时,首先,先检查高速缓存中是否存在已经缓存的文件,如果已经存在,则直接返回文件内容即可完成本次文件请求过程,否则放入待处理队列;发起侧网络的程序会不断检查待处理队列是否有待处理任务,如果有,则拿走文件地址,通过地址转换规则转换为发起侧网络的文件地址,然后完成在本网络的文件处理,之后推送到接收侧网络,再由接收侧再写入高速缓存和返回给请求程序。
[0050] 以下以交警业务为例:在视频专网和公安网分别部署两个模块,在公安网的应用向公安网模块发起文件请求,公安网模块首先检索缓存是否已经缓存了该文件,如果有则取出文件反馈给应用,否则创建一个文件传输任务并等待视频专网的模块获取该文件传输任务;视频专网模块启动后首先与公安网模块建立连接,并依次持续向公安网请求任务,当公安网模块返回任务时,它便根据任务信息在视频专网对文件进行处理(指调用http、ftp下载,通过存储系统专有SDK获取文件等操作),然后根据两个模块之间的协议约定对文件进行网络数据包的封装,然后发送给公安网模块;最后由公安网模块写入缓存和反馈给公安网的应用。
[0051] 下面将结合两个实例,对本发明提供的内容做进一步的详细说明。
[0052] 实施例1:
[0053] 请参考图1,本发明公开的一种基于单向网络的跨网文件即时传输系统结构图,该系统包括在一个单向网络环境中,包括分别在发起侧网络下部署的文件传输发起侧模块FTC,以及在接收侧网络下部署的文件传输接收侧模块FTS,还包括在文件传输发起侧模块FTC部署的任务请求模块TRM、文件处理模块FHM、文件推送模块FSM,以及在文件传输接收侧模块部署的任务管理模块TMM、文件缓存模块FCM和文件发布模块FPM;其中:
[0054] 任务请求模块TRM负责向任务管理模块TMM请求任务,并写入FTC内部队列;
[0055] 文件处理模块FHM从FTC内部队列得到文件处理任务,然后执行相应的处理,包括:http下载、ftp下载、本地文件打开和使用存储系统的专有SDK访问文件等方式获得文件信息和内容;
[0056] 文件推送模块FSM等待FHM的调用,并根据FTC和FTS的协议约定,对文件信息和文件内容进行网络数据包的封装,将封装后的数据包发送给FTS的TMM模块;
[0057] 任务管理模块TMM负责文件传输的管理,它等待FPM的调用,以及与TRM的连接;当FPM调用TMM时,TMM在创建新的文件传输任务后,通过调用FCM,将所述创建新的文件传输任务写入到分布式高速缓存中,并等待FTC来获取文件传输任务,当FTC发起请求任务时,TMM通过FCM从分布式高速缓存获取文件传输任务,并返回给TRM,待FTC完成处理后,将得到的文件信息和文件内容通过FSM发给TMM,当前TMM将进一步调用FCM,将文件信息和文件内容写入到分布式高速缓存;
[0058] 文件缓存模块FCM负责处理TMM与分布式高速缓存之间的交互,包括:将任务写入缓存、从缓存中读取任务、将文件写入缓存和从缓存中读取文件;
[0059] 文件发布模块FPM负责与需求侧应用之间的交互;在需求侧设定的应用程序向FPM发起请求文件时,FPM调用FCM来检查当前待传输的文件是否存在缓存区;若存在,则通过FCM读取缓存区中的文件,并进一步反馈给应用;若不存在且未创建相应的文件传输任务时,则调用TMM来创建新的文件传输任务,之后继续调用FCM检查待请求的文件是否存在于缓存区,如此反复直到文件存在或超时,在文件存在时,则返回文件内容,否则返回找不到文件的信息到应用。
[0060] 本实施例中,FTC主要用于向FTS发起连接请求,并从分布式高速缓存区中获取到识别文件地址;基于识别到的文件地址,在发起侧网络中进行搜索,并将获取到的文件数据进一步推送给FTS,由FTS在将文件数据反馈给应用的同时,并将其存储于分布式高速缓存区。
[0061] 为了减轻FTS中缓存对系统资源所造成的压力,在文件缓存模块FCM中设置定期清理机制,通过对存储的文件数据做进一步分类统计后,设定一个时间阈值,定期将文件缓存时间超时的文件删除。
[0062] 请参考图2,其为实际开发过程中构建的跨网文件即时传输系统结构图,实际开发过程中,发起侧网络简称C(Client),接收侧网络简称S(Server);在C侧部署的程序称为FTC(File Transfer Client),在S侧部署的程序称为FTS(File Transfer Server);当前基于该系统的实现单向网络文件传输的过程为:
[0063] 由FTC向FTS发起连接请求,在建立连接之后,由FTC向FTS询问是否有需要传输文件的任务,如果有则在C网下,对待传输文件进行搜索即下载等处理操作,待文件处理妥当后,由FTC推送给处于S网络的FTS,没有的话,则等待并在下一个周期再次由FTC向FTS发起询问,如此往复,直到FTC或FTS退出。
[0064] 请参考图3,其为数据流的初始传输示意图,当前实施例下,由应用向C网发起请求获取文件,若单向网络即时传输系统FTC/FTS能够从缓存区中搜索到待获取的文件,则将其直接传输给对应的请求应用程序,其他情况下,则将该请求作为任务信息进一步存储,待FTC、FTS建立连接后,FTC获取任务信息,基于该任务信息,在C网下进行所需文件的搜索和处理,并进一步将搜索到的所需文件,由FTS传输到对应请求应用程序。
[0065] 请参考图4,其为数据流的实际传输示意图,当前实施例下,对图3中所示的单向网络即时传输系统做了进一步的详细分解,其中,在FTS内,分别设置了文件地址映射机制和文件高速缓存机制,当前发起侧网络下设定的处理程序会不断检查待处理队列是否存在有待处理的任务,如果有,则首先基于文件地址映射机制将存储的任务信息转换为发起侧网络的能够识别到的文件地址后,在进一步将文件地址传输到FTC后,由FTC完成在C网络下的文件处理,且将处理后的文件进一步推送到FTS,再由FTS写入高速缓存和返回给对应请求应用程序。
[0066] 请参考图5,其为实际开发过程中发起侧的数据交互示意图,当前发起侧的数据交互主要分为以下几步:
[0067] 1、由FTC向FTS询问是否存在待传输的文件清单;
[0068] 2、由FTS在任务缓存区中查询是否存在待传输的文件清单;
[0069] 3、待查询到待传输文件清单后,将其进一步经由FTS返回到FTC;若没有查询到文件清单,在下一个周期,返回到步骤1,重新获取待传输的文件清单;
[0070] 4、在C网下获取文件信息和文件数据,且其将进一步发送给FTS,由FTS将获取到的文件信息和文件数据写入到任务缓存区。
[0071] 请参考图6,其为实际开发过程中接收侧的数据交互示意图,当前接收侧的数据交互主要分为以下几步:
[0072] 1、S网应用通过HTTP、FTP等协议,向FTS请求C网的文件;
[0073] 2、FTS向缓存区中搜索、查询是否有该文件,如果有则直接返回文件信息和文件内容给处于S网的应用,没有则创建新的文件传输任务,向缓存区中写入待传输列表;
[0074] 3、FTC在空闲时,向FTS请求获取待传输的任务;FTS在收到请求后,查阅待传输列表中是否有请求任务,有则返回给FTC;没有则在下一个周期,重复执行当前步骤,直到获取到待传输列表;
[0075] 4、FTC接到待传输列表后,在C网下启动下载和传输任务,将文件信息和文件内容即时推送给FTS,FTS一边将文件信息和文件内容写入任务缓存区,一边返回给S网应用。
[0076] 本实施例中,FTC和FTS之间的交互指令设定为控制指令和数据传输指令,其中,FTC向FTS发送控制指令,来获取是否有文件推送任务的数据信息,有,则FTS返回待推送任务信息给FTC,由FTC完成对任务信息的解析,并在完成对文件推送任务的准备工作后,通过传输数据传输指令到FTS,完成文件的推送工作;FTS收到对应数据传输指令后,一边通过控制指令将其写入高速缓存区,一边通过数据传输指令将其返回给请求的S网应用。上述实施过程中,FTC的询问和FTS的响应属于控制指令,FTC向FTS推送文件属于数据指令;其中,指令的组成请参考表1:
[0077] 表1
[0078] 序号 名称 长度 含义1 SIGN 8 标识:固定值0x7E46215440532324
2 LENGTH 4 长度:包括SIGN+LENGTH
3 TYPE 1 类型:0控制指令,1数据指令
4 VERSION 1 版本:高4位表示主版本,低4位表示次版本
5 COMMAND 1 指令:1请求,2响应
6 PARAMTERS 1 参数,保留
7 DATA N 数据
[0079] 其中,长度的单位是字节(BYTE);在当前交互的指令为控制指令时,COMMAND和PARAMTERS有意义,否则无意义;当为控制指令时,DATA为空,否则DATA由以下部分组成(请参考表2):
[0080] 表2
[0081]序号 名称 长度 含义
1 LENGTH 2 URL长度
2 URL N URL内容
3 FILE N 文件内容
[0082] 以下结合两个例子,通过结合相关指令,对其中一部分的数据传输过程做进一步解释说明:
[0083] (1)S网的应用向FTS请求C网文件时,S网应用向FTS发的请求由两部分组成:http://fts地址:端口/c网url;其中,c网url做了urlencode。
[0084] 举例:
[0085] 设:FTS IP为192.168.1.10,端口为8000;
[0086] 设1:c网文件地址为:http://192.168.100.100:8080/data/test.jpg[0087] 在进行地址转换后,当前S网的应用向FTS请求的文件地址为:
[0088] http://192.168.1.10:8000/http%3A%2F%2F192.168.100.100%3A8080%2Fdata%2Ftest.jpg
[0089] 设2:c网文件地址为:
[0090] ftp://root:123456@192.168.100.100:21/data/test.jpg;
[0091] 则请求的地址为:
[0092] http://192.168.1.10:8000/ftp%3A%2F%2Froot%3A123456%40192.168.100.100%3A21%2Fdata%2Ftest.jpg。
[0093] 请参考图8-13,其为本发明公开的一种基于单向网络的跨网文件即时传输方法流程图,上述跨网文件即时传输方法,包括以下步骤:
[0094] 需求侧设定的应用程序APP通过通信协议与文件接收侧FTS之间建立通信连接,并向FTS请求获取所需文件;
[0095] FTS收到请求后,在文件缓存模块FCM中,将请求信息中包括的所需文件信息与缓存数据进行匹配,并将匹配到的数据反馈到APP;在匹配失败的时候,执行下一步骤;
[0096] 向任务管理模块TMM中写入与所需文件信息相适应的任务信息;基于urlencode字符编码的地址转换规则,将任务信息转换成能够被文件发起侧FTC识别到的文件地址,并做进一步存储;
[0097] 待文件发起侧FTC与文件接收侧FTS建立连接后,基于从任务管理模块TMM中获取到的识别文件地址,在发起侧网络下,进行所需文件的搜索和处理;
[0098] FTC将所得的所需文件传输到文件接收侧FTS的任务管理模块TMM,TMM基于文件缓存模块FCM对所需文件进行存储;文件发布模块FPM基于FCM获取文件内容将其反馈给应用程序。
[0099] 具体的请参考图8,其为FTC的TRM获取任务的流程图,在TRM与FTS建立连接后,由TRM向FTS的TMM获取文件传输任务,在有任务的情况下,按FTC/FTS协议对任务进行解析,并将解析后的任务信息放入FTC内部的任务待处理队列中;在没有任务,或者上述任务解析流程执行完毕之后,判断是否结束当前的执行任务,在需要结束的情况下,TRM与FTS断开连接;其他情况下,返回到前述的任务解析步骤,重新获取任务数据,进入下一个获取任务阶段。
[0100] 请参考图9,其为FTC的FHM文件处理的流程图,按照图8中所述的任务处理流程,TRM的输出即为FHM的输入,FHM向待处理队列取出任务,在有任务的情况下,FHM根据任务中对文件类型的描述,选择文件处理适配器,进一步处理文件(包括:http下载、ftp下载、本地文件打开和使用存储系统的专有SDK访问文件等方式获得文件信息和内容),并调用文件发送模块FSM,将处理得到的文件数据进一步传输到FTS。
[0101] 请参考图10,其为FTC的FSM文件发送的流程图,FSM启动后连接FTS的TMM,并等待FHM的调用,当FHM调用后,它按FTC/FTS之间的网络传输协议对文件信息和文件内容进行封装,并进一步将封装后的数据推送到FTS。
[0102] 请参考图11,其为FTS的TMM任务管理的流程图,当需求侧的应用请求来时,如果是请求未被缓存的文件,则TMM会被FPM调用,从而创建新的文件传输任务并调用FCM写入待处理队列;同时,TMM会被FTC的TRM连接,用于查询待处理任务,当TRM的请求到来时,TMM通过FCM获取新任务并返回给TRM;同时,TMM会被FTC的FSM连接,等待FSM把文件推送给TMM,并调用FCM将文件写入缓存。
[0103] 请参考图12,其为FTS的FCM缓存管理的流程图,它首先与分布式缓存建立连接,然后等待对任务的读写和对文件的读写操作,FPM会调用FCM的 读文件的操作,TMM会调用FCM的读写任务和写文件的操作。
[0104] 请参考图13,其为FTS的FPM文件发布的流程图,FPM首先建立监听,然后等待应用获取文件请求指令,在判断为有请求的时候,调用缓存模块FCM来查询任务缓存区域中是否存在查询文件,存在查询文件的情况下,调用FCM读取文件,并进一步将文件内容反馈到用户;在不存在查询文件的情况下,判断先前是否创建过相同的文件传输任务,在已创建的情况下,检测请求时间是否超时,在超时的情况下,则反馈找不到文件内容的信息到用户;没有超时的情况下,则调用任务管理模块TMM,来创建新的任务。
[0105] 实施例2:
[0106] 为提高FTS的响应速度、抗压和容灾能力,FTS使用了分布式高速缓存的技术方案,该方案使用现有市场成熟的产品来实现,选型依据如下:
[0107] 高响应速度,响应速度要远高于磁盘IO;
[0108] 高并发,支持多路请求;
[0109] 支持分布式部署,有多节点的容灾能力;
[0110] 可以根据硬件条件及业务压力弹性调整使用的资源;
[0111] 支持数据持久化,保证停机时数据不丢失;
[0112] 能与FTS解耦使用,不影响FTS节点的增减、FTS停止不丢数据。
[0113] FTS与高速缓存之间的数据交互关系如图3-图6所示。
[0114] 在一个单向网络中,可以据业务压力同时部署FTC/FTS的多个节点,实现它们各自的横向扩展的集群。
[0115] 整个网络部署如图7所示,当前采用分布式部署机制,在当前的网络中,将FTS与FTC部署为单点对多点的连接关系,将应用请求程序与FTS之间部署为多点对多点的连接关系;其中,FTS、FTC和应用请求程序视为一个连接节点;其中,在应用请求程序与FTS之间还设定连接有一个负载均衡组件,所述负载均衡组件用于基于均衡算法将请求任务分发到不同的任务请求模块节点,以平衡各个节点之间的工作负荷。
[0116] 当前,在分布式部署的系统下,实现跨网文件即时传输方法与实施例1供所得的方法不同之处在于:
[0117] 基于分布式部署机制的情况下,在文件接收侧,将应用请求程序与FTS之间部署为多点对多点的连接关系;在文件发起侧,将FTC与FTS之间部署为多点对单点的连接关系,进一步保证在业务量变大的情况下,整个系统有相匹配的工作能力,以及避免单节点时,会因为节点故障导致整个系统故障的问题。
[0118] 在应用请求程序与FTS之间基于均衡算法,将请求任务分发到不同的任务请求模块节点,以平衡各个节点之间的工作负荷。
[0119] 上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈