当前位置: 首页 > 专利查询>复旦大学专利>正文

一种去中心化的文件传输方法技术

技术编号:35987128 阅读:17 留言:0更新日期:2022-12-17 23:01
本发明专利技术属于算机软件和网络技术领域,具体为去中心化的文件传输方法。本发明专利技术采取网络内缓存和网络广播请求结合的方式实现去中心化的文件传输服务,通过动态探测网络中生产方,解决BitTorrent存在的资源定位问题,并通过分析记录网络状况,有效管理网络资源;表现为在文件生产方和消费方之间通过“先请求,后响应”的方式,传输文件数据;由文件消费方发出请求,在网络的一定范围内广播;所有可以响应对应请求的生产方都可以返回数据;用户同时作为消费方和生产方,并且可以实时监测网络状况和动态调整请求发送策略的方法,从而充分利用用户的上行带宽,缓解热门服务器的负载问题,同时也在一定程度上提供资源定位和管理的解决方案。在一定程度上提供资源定位和管理的解决方案。在一定程度上提供资源定位和管理的解决方案。

【技术实现步骤摘要】
一种去中心化的文件传输方法


[0001]本专利技术属于算机软件和网络
,具体涉及去中心化的文件传输方法。

技术介绍

[0002]传统的文件传输协议FTP、SFTP,都是基于C/S架构的端到端传输服务,拥有热门资源的服务器容易成为性能瓶颈,去中心化成为一种趋势。基于P2P的文件分发协议BitTorrent,充分利用了用户的上行带宽,缓解了服务器的负载,提高了多用户场景下的文件传输效率。但是如何在一个大规模分布的环境下定位资源和管理资源,以及如何选择有效的资源请求路由策略,都是十分具有挑战性的问题。

技术实现思路

[0003]本专利技术的目的在于提供一种中心化的文件传输方法,以解决BitTorrent存在的资源定位问题,更有效地管理网络资源。
[0004]本专利技术提出的去中心化的文件传输方法,采取网络内缓存和网络广播请求结合的方式实现去中心化的文件传输服务,通过动态探测网络中生产方,解决BitTorrent存在的资源定位问题,并通过分析记录网络状况,有效管理网络资源;所述网络由中间路由器、生产方和消费方节点组成,节点之间通过传输数据的网络链路连接,生产方是提供文件数据的一方,消费方是请求文件数据的一方,中间路由器管理网络的路由信息和转发过程;生产方和消费方需要通过宣布的方式告知中间路由器,从而成为网络中的一个节点,形成网络拓扑;文件数据传输,表现为在文件生产方和消费方之间通过“先请求,后响应”的方式进行,具体步骤如下。
[0005](一)文件消费方向生产方发出请求(1)由文件消费方发出的请求,可以在网络的一定范围内广播;图 2为文件消费方请求文件过程图示;文件消费方首先向网络中广播文件请求,请求是一个消费方发出的数据包(简称请求数据包),其包含用于标识文件内容的结构化命名(如A/video/mp4/a/1,该结构化命名标识了“应用程序A发布的格式为mp4的视频文件a的片段1”)、请求广播范围的信息、消费方的标识信息和合法性验证信息;(2)消费方向网络中发送请求后,等待接收来自生产方的响应;若未收到响应,则重复广播文件请求;若重复3次后仍无响应,判断网络中无生产方能够提供相应的文件传输服务,请求过程结束;(3)在收到来自生产方的响应后,记录下所有响应的生产方信息和文件信息,包括生产方的标识、文件大小,以及文件传输时分段的数量等(由于文件可能大于底层网络协议单个包的最大容量,所以需要将文件分段传输);根据分段数量初始化请求队列,对于每个响应的生产方,都分配一个发送窗口实体,实体中有一个数值(发送窗口)用于控制请求发送的速率;从所有发送窗口实体中,找到一个发送窗口未满的生产方;如果找不到则进入等待阶段;
(4)从请求队列中选取一个文件分段请求,然后在请求中添加生产方的标识信息,然后发送到网络并监听相应的数据到达事件;重复发送请求的过程,直到所有数据分段都接收到,文件请求过程结束。
[0006]本专利技术中,文件消费方可以指定某个特定的文件生产方,使得请求只会沿着某一条路径到达生产方,这一般在消费方已经了解该生产方的请求监听池的情况下使用的请求策略。
[0007](二)生产方对消费方请求的响应所有可以响应对应请求的生产方都可以返回数据;文件生产方收到从网络中到达的请求数据包,根据请求数据包中的文件内容标识信息,从本地的请求监听池中查找对应的文件数据,如果命中,则将相应数据打包成响应数据包,根据请求数据包中的文件消费方标识信息,指定响应数据包的目的地址,然后将响应数据包通过底层网络协议传输至相应消费方;响应的数据包中还包含生产方相关的验证信息、网络状况和生产方允诺提供的传输服务质量。
[0008]本专利技术中,文件消费方可以记录某个文件生产方正在监听的请求项、到某个生产方网络链路的状况,对网络资源进行管理。
[0009]本专利技术中,文件消费方可以同时作为生产方,将接收到的数据缓存下来,然后监听该数据的请求;经过消费方验证后的合法数据,可以将数据及其对应的结构化命名标识放入消费方的请求监听池中,使得消费方可以在接收同样的请求后作为生产方响应相应的数据。
[0010]本专利技术中,消费方中主要包含缓冲模块、发送窗口模块和事件监听模块三个模块,在应用程序和网络之间传递文件;缓冲模块用于缓存乱序到达的数据包,排序后还原完整文件,最后递交给用户;发送窗口模块负责控制整个发送过程的速率和分配到每个生产方的传输任务额度,将附有生产方标识的请求发送到事件监听模块;事件监听模块负责处理每个请求的数据到达和响应超时事件,向网络中发送请求和接收数据,将接收到的文件片段缓存到缓冲模块中,并通过监听过程中提取的网络状况信息调整发送窗口模块的行为;特别地,应用程序将广播的文件传输请求提交到事件监听模块中,用以探索网络中适合提供传输服务的生产方。文件消费方的数据流参见图4所示。
[0011]本专利技术中,文件消费方发出的请求都被绑定“数据包到达”和“响应超时”两个事件;所述事件监听模块处理过程为:当文件消费方发生数据到达或者监听的请求包响应超时的时候,触发不同的处理逻辑;如果监听到数据包到达的事件,先验证数据的正确性,如果正确则将数据写入缓冲区,更新提供该数据的生产方网络状况信息,根据延迟带宽乘积调整最大发送窗口的数值;如果监听到请求响应超时的事件,则将该请求重新加入请求队列,并认为对该生产方的请求速率过高,应该相应减少对该生产方的最大发送窗口数值;参见图 3所示。
[0012]本专利技术中,关于生产方和消费方网络的加入:当一个主机想要成为可以提供传输服务的生产方时,需要先向网络中发送数据包以宣布自己的身份标识以及它的请求监听池;对于消费方而言,只需要宣布自己的身份标识即可加入网络;中间路由器通过记录生产方和消费方宣布的信息,从而构建起路由表;路由表中不仅记录了生产方、消费方身份标识和转发路径的关系,还记录结构化命名标识前
缀和转发路径的关系;转发请求数据包和响应数据包的过程需要参考路由表信息,根据数据包中包含的结构化命名标识或者接收者标识(当数据包中指定了数据包的接收者),在路由表中进行匹配,从而得知该数据包应该往哪些接口转发,从而构建起网络拓扑。
[0013]有益效果本专利技术所述文件传输方法可以充分利用用户的上行带宽,缓解热门服务器的负载,在多用户场景下有较高的文件传输效率;可以在传输过程中实时监测网络状况,动态调整数据请求策略,对网络状况变化有一定的自适应性;可以在消费方进行网络资源定位和管理,提高网络资源的利用率。
附图说明
[0014]图 1是中心化的文件传输方法部署图示。
[0015]图 2是本专利技术中文件消费方请求方发布请求过程图示。
[0016]图 3是本专利技术中事件监听模块监听过程图示。
[0017]图 4是本专利技术中文件消费方模块结构及文件传递图示。
具体实施方式
[0018]参考图 1,其为本专利技术所述文件传输方法流程图示。主机A作为文件消费方请求文件F,文件F的标识是”xx/xx/F/*”,”*”代表任意数字,作为文件F的分段编号;服务器本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1. 一种去中心化的文件传输方法,其特征在于,采取网络内缓存和网络广播请求结合的方式实现去中心化的文件传输服务,通过动态探测网络中生产方,解决BitTorrent存在的资源定位问题,并通过分析记录网络状况,有效管理网络资源;所述网络由中间路由器、生产方和消费方节点组成,节点之间通过传输数据的网络链路连接,生产方是提供文件数据的一方,消费方是请求文件数据的一方,中间路由器管理网络的路由信息和转发过程;生产方和消费方需要通过宣布的方式告知中间路由器,从而成为网络中的一个节点,形成网络拓扑;文件数据传输,表现为在文件生产方和消费方之间通过“先请求,后响应”的方式进行,具体步骤为:(一)文件消费方向生产方发出请求(1)由文件消费方发出的请求,在网络的一定范围内广播;文件消费方首先向网络中广播文件请求,请求是一个消费方发出的数据包,称为请求数据包,其包含用于标识文件内容的结构化命名、请求广播范围的信息、消费方的标识信息和合法性验证信息;(2)消费方向网络中发送请求后,等待接收来自生产方的响应;若未收到响应,则重复广播文件请求;若重复3次后仍无响应,判断网络中无生产方能够提供相应的文件传输服务,请求过程结束;(3)在收到来自生产方的响应后,记录下所有响应的生产方信息和文件信息,包括生产方的标识、文件大小,以及文件传输时分段的数量,根据分段数量初始化请求队列,对于每个响应的生产方,都分配一个发送窗口实体,实体中有一个数值即发送窗口用于控制请求发送的速率;从所有发送窗口实体中,找到一个发送窗口未满的生产方;如果找不到则进入等待阶段;(4)从请求队列中选取一个文件分段请求,然后在请求中添加生产方的标识信息,然后发送到网络并监听相应的数据到达事件;重复发送请求的过程,直到所有数据分段都接收到,文件请求过程结束;(二)生产方对消费方请求的响应所有可以响应对应请求的生产方都可以返回数据;文件生产方收到从网络中到达的请求数据包,根据请求数据包中的文件内容标识信息,从本地的请求监听池中查找对应的文件数据,如果命中,则将相应数据打包成响应数据包,根据请求数据包中的文件消...

【专利技术属性】
技术研发人员:吴俊朱家信缪一航徐跃东胡蝶
申请(专利权)人:复旦大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1