CN113783932B - 一种基于p2p文件分发网络的文件传输方法及系统 - Google Patents
一种基于p2p文件分发网络的文件传输方法及系统 Download PDFInfo
- Publication number
- CN113783932B CN113783932B CN202110902781.3A CN202110902781A CN113783932B CN 113783932 B CN113783932 B CN 113783932B CN 202110902781 A CN202110902781 A CN 202110902781A CN 113783932 B CN113783932 B CN 113783932B
- Authority
- CN
- China
- Prior art keywords
- file
- client
- management module
- server
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2521—Translation architectures other than single NAT servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于P2P文件分发网络的文件传输方法及系统,所述方法包括:主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端;主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接;当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。本发明中的最新文件只需要上传一次至服务端,所有客户端之间的文件交换均通过P2P方式在各个关联客户端间传输,服务端只产生一次上传流量,无任何下载流量,缓解了流量压力。
Description
技术领域
本发明涉及文件分发处理技术领域,尤其涉及一种基于P2P文件分发网络的文件传输方法及系统。
背景技术
建筑设计行业目前流行的协同设计平台,均是基于中心服务端的模式。其特点是所有的协同设计客户端数据访问、文件传输均通过协同服务端进行交互,具体示意图如图1所示。这种方式的弊端,主要在于所有的协同客户端文件传输均通过服务端中转,会造成巨大的流量和带宽压力。
因此,现有技术还有待改进和提高。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于P2P文件分发网络的文件传输方法及系统,旨在解决现有技术中进行文件传输时,所有的协同客户端文件传输均通过服务端中转,会造成巨大的流量和带宽压力的问题。
为了解决上述技术问题,本发明所采用的技术方案如下:
第一方面,本发明提供一种基于P2P文件分发网络的文件传输方法,其中,所述方法包括:
主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端;
主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接;
当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。
在一种实现方式中,所述主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接,包括:
所述主客户端根据文件管理模块中记录的项目信息,查询与所述项目信息对应的关联客户端;
获取所述关联客户端的在线状态;
若所述关联客户端在线,则通过连接管理模块连接所述关联客户端。
在一种实现方式中,所述若所述关联客户端在线,则通过连接管理模块连接所述关联客户端,还包括:
判断所述主客户端与所述关联客户端是否处于同一局域网;
若处于同一局域网,则使用本地IP地址与特定端口建立所述主客户端与所述关联客户端之间的连接;
若不处于同一局域网,则使用NAT UDP穿透技术建立所述主客户端与所述关联客户端之间的连接。
在一种实现方式中,所述主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接,还包括:
若所述关联客户端不在线,则所述关联客户端在下一次启动时,重新查询与所述项目信息对应的关联客户端的在线状态,根据在线状态建立与所述项目信息对应的关联客户端之间的连接,并从所述关联客户端或者服务器中获取所述待处理文件;
或者,
若具有所述待处理文件的关联客户端不在线时,所述主客户端与所述服务器连接并下载所述待处理文件。
在一种实现方式中,所述方法还包括:
当所述关联客户端确认所述最新文件无误后,通过文件管理模块将文件已更新信息反馈至所述服务端,并由服务端通过文件管理模块对所述已更新信息进行分发。
在一种实现方式中,所述待处理文件为设计文件的修改文件;所述项目信息为项目策划人员信息或者提资关系信息。
第二方面,本发明实施例还提供一种基于P2P文件分发网络的文件处理系统,其中,所述系统包括主客户端、服务端以及关联服务端;
所述主客户端,用于获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端;并通过连接管理模块与所述项目信息对应的关联客户端建立连接;以及在与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端;
所述服务端,用于将所述项目信息下发至与所述项目信息对应的关联客户端。
在一种实现方式中,所述主客户端与所述关联客户端处于同一局域网或者不同一局域网;若处于同一局域网,则使用本地IP地址与特定端口建立所述主客户端与所述关联客户端之间的连接;若不处于同一局域网,则使用NAT UDP穿透技术建立所述主客户端与所述关联客户端之间的连接。
第三方面,本发明实施例还提供一种终端设备,其中,所述终端设备包括存储器、处理器及存储在所述存储器中并可在所述处理器上运行的基于P2P文件分发网络的文件处理程序,所述处理器执行所述基于P2P文件分发网络的文件处理程序时,实现上述方案中任一项所述的基于P2P文件分发网络的文件传输方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于P2P文件分发网络的文件处理程序,所述基于P2P文件分发网络的文件处理程序被处理器执行时,实现上述方案中任一项所述的基于P2P文件分发网络的文件传输方法的步骤。
有益效果:与现有技术相比,本发明提供了一种基于P2P文件分发网络的文件传输方法,首先主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端。然后主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接。最后当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。本发明中的最新文件只需要上传一次至服务端,所有客户端之间的文件交换均通过P2P方式在各个关联客户端间传输,服务端只产生一次上传流量,无任何下载流量,缓解了流量压力。
附图说明
图1为传统协同设计平台的文件传输方法的系统框架图。
图2为本发明实施例提供的基于P2P文件分发网络的文件传输方法的具体实施方式的流程图。
图3是本发明实施例提供的基于P2P文件分发网络的文件处理系统的系统框架图。
图4是本发明实施例提供的终端设备的内部结构原理框图。
具体实施方式
为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
建筑设计行业目前流行的协同设计平台,均是基于中心服务端的模式。其特点是所有的协同设计客户端数据访问、文件传输均通过协同服务端进行交互,具体示意图如图1所示。这种方式的弊端,一是必须在局域网内部署服务端(包括数据服务端、文件存储服务端和应用服务端),无法进行跨区域、跨企业的协同作业,二是所有的协同客户端文件传输均通过服务端中转,会造成巨大的流量和带宽压力。
为了解决现有技术的问题,本发明实施例提供一种基于P2P文件分发网络的文件处理方法,具体实施时,本实施例中的主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端。然后主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接。最后当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。本发明中的最新文件只需要上传一次至服务端,所有客户端之间的文件交换均通过P2P方式在各个关联客户端间传输,服务端只产生一次上传流量,无任何下载流量,缓解了流量压力。
本实施例是基于P2P文件分发网络,结合中心文件服务端,完成文件在协同客户端上分发的新型协同设计方法。文件分发网络架构包含客户端和服务端,它们互相配合完成文件的传输和分发。在本实施例中,客户端包括有注册模块、查找模块、连接管理模块和文件管理模块。
所述注册模块的作用是将用户的机器作为P2P文件分发网络中的一员。当用户登录协同客户端时,客户端会通过注册模块采集用户客户端机器本地IP地址、项目信息(如果有)或者专业信息等提交给服务端。成功注册后,服务端会返回同一个项目里的所有客户端的本地IP地址、外网IP地址信息。所述查找模块的作用是根据注册模块返回的客户端映射关系,找到并分类本地局域网客户端机器列表信息和跨局域网的机器列表信息。所述连接管理模块的作用是根据查找模块得到的客户端的列表信息,建立跟这些客户端机器的连接,确保网络链路通畅。网络连接分两种情况,一是位于同一个局域网,另一个是位于不同的局域网里。如果两台客户端机器位于同一个局域网,则使用本地IP地址与特定端口即可跟客户端机器建立连接。当两台客户端机器位于不同的局域网时,需要借助NAT UDP穿透技术才能建立两个客户端机器之间的连接。所述文件管理模块的作用是根据服务端的信息,比如项目文件信息、项目策划人员信息、客户端拥有的文件信息、提资关系与记录信息、以及受资关系与记录信息,将文件分发到特定的客户端上。
基于上述内容,本实施例中的基于P2P文件分发网络的文件处理方法在实现时,如图2中所示,具体包括如下步骤:
步骤S100、主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端。
在本实施例中,主客户端即为用户的机器,用户通过主客户端登录协同客户端的,图3中的客户端A即为主客户端。本实施例中的待处理文件即为设计文件的修改文件;所述项目信息为项目策划人员信息或者提资关系信息。当主客户端接收到设计文件的修改文件之后,该主客户端就会通过文件管理模块将该修改文件(即所述待处理文件)需要提资或者设计保存备份的消息和相关信息(即项目信息)发送至服务端。服务端通过文件管理模块将消息和相关信息(即项目信息)分发给与项目信息相关的客户端(即本实施例中的关联客户端)
步骤S200、主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接。
接着,所述主客户端根据文件管理模块中记录的项目信息,查询与所述项目信息对应的关联客户端。然后获取所述关联客户端的在线状态。若所述关联客户端在线,则通过连接管理模块连接所述关联客户端。
具体地,主客户端将根据文件管理模块中记录的项目策划人员清单(即项目信息)查询该项目相关的其他客户端,然后通过查找模块查询这些客户端是否在线,若在线,将通过连接管理模块尝试主动连接所述关联客户端。在本实施例中,所述主客户端与所述关联客户端处于可能同一局域网或者不同一局域网,各个关联客户端之间也同样可能处于同一局域网也可能处于不同局域网。若处于同一局域网,则使用本地IP地址与特定端口建立所述主客户端与所述关联客户端之间的连接;若不处于同一局域网,则使用NAT UDP穿透技术建立所述主客户端与所述关联客户端之间的连接,具体可参照图3中所示,图3中同处于同一局域网中的客户端是归为一类的。
步骤S300、当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。
本实施例中,如果所述主客户端与所述关联客户端连接成功,则朱客户端通过文件管理模块将最新文件(提资文件或设计文件)主动发送至关联客户端,如图3中所示,客户端与客户端之间直接通过P2P传输的方式进行文件传输。当关联客户端接收文件验证无误后,再通过文件管理模块将文件已更新信息提交至服务端,由服务端通过文件管理模块将文件已更新信息分发给其他客户端。
而如果所述项目信息为提资关系信息,则主客户端还将根据文件管理模块中记录的提资关系表查询该项目受资专业的关联客户端,然后通过查找模块查询这些客户端是否在线,若在线,将通过连接管理模块尝试主动连接这些关联客户端,若连接成功,则通过文件管理模块将最新文件(提资文件)主动发送至关联客户端。当关联客户端接收文件验证无误后,再通过文件管理模块将文件已更新信息提交至服务端,由服务端通过文件管理模块将文件已更新信息分发给其他客户端。
在一种实现方式中,如果所述关联客户端不在线,则所述关联客户端在下一次启动时,重新查询与所述项目信息对应的关联客户端的在线状态,根据在线状态建立与所述项目信息对应的关联客户端之间的连接,并从所述关联客户端或者服务器中获取所述待处理文件。具体地,本实施例就是查询拥有该最新文件的客户端是否在线,若在线,将通过连接管理模块尝试主动连接拥有该最新文件的客户端,若连接成功,再通过文件管理模块从这些客户端下载最新文件,客户端接收文件验证无误后,通过文件管理模块将文件已更新信息提交至服务端,由服务端通过文件管理模块将文件已更新信息分发给其他客户端。如果关联客户端通过文件管理模块接收到文件更新信息后,通过查找模块查询拥有该最新文件的客户端均不在线,则通过连接管理模块连接服务端,通过文件管理模块从服务端下载最新文件,这些关联客户端接收文件验证无误后,通过文件管理模块将文件已更新信息提交至服务端,由服务端通过文件管理模块将文件已更新信息分发给其他客户端。
在本实施例中,所述主客户端与所述关联客户端均同属于相同的客户端,即主客户端和关联客户端可互换,本实施例并不对此进行限定,仅仅用做对客户端的区分。在其他实现方式中,关联客户端也可以具有所述待处理文件,此时若具有所述待处理文件的关联客户端不在线时,所述主客户端与所述服务器连接并下载所述待处理文件。
由此可见,本实施例提供的方法与当前的协同方式相比,由于采用P2P的传输方式,将极大的减少客户端与服务端之间的文件传输量。最理想情况下,即所有客户端都在线,则每份提资文件或备份的设计文件只需要上传一次至服务端,所有客户端(包括主客户端与关联客户端)之间的文件交换均通过P2P方式在各个必要的客户端间传输,服务端只产生一次上传流量,无任何下载流量。在有客户端离线的情况下,在某一个区域局域网里,每个文件仅需一个客户端通过公网从服务端下载,进而产生一次下载流量。通过本实施例提供的,同一个区域局域网内的其余客户端无需再从服务端下载。
基于上述实施例,本发明还提供基于P2P文件分发网络的文件处理系统,如图3中所示,所述系统包括主客户端、服务端以及关联服务端。具体地,所述主客户端,用于获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端;并通过连接管理模块与所述项目信息对应的关联客户端建立连接;以及在与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。所述服务端,用于将所述项目信息下发至与所述项目信息对应的关联客户端。
在本实施例中,在本实施例中,客户端包括有注册模块、查找模块、连接管理模块和文件管理模块。所述注册模块的作用是将用户的机器作为P2P文件分发网络中的一员。当用户登录协同客户端时,客户端会通过注册模块采集用户客户端机器本地IP地址、项目信息(如果有)或者专业信息等提交给服务端。成功注册后,服务端会返回同一个项目里的所有客户端的本地IP地址、外网IP地址信息。所述查找模块的作用是根据注册模块返回的客户端映射关系,找到并分类本地局域网客户端机器列表信息和跨局域网的机器列表信息。所述连接管理模块的作用是根据查找模块得到的客户端的列表信息,建立跟这些客户端机器的连接,确保网络链路通畅。网络连接分两种情况,一是位于同一个局域网,另一个是位于不同的局域网里。如果两台客户端机器位于同一个局域网,则使用本地IP地址与特定端口即可跟客户端机器建立连接。当两台客户端机器位于不同的局域网时,需要借助NAT UDP穿透技术才能建立两个客户端机器之间的连接。所述文件管理模块的作用是根据服务端的信息,比如项目文件信息、项目策划人员信息、客户端拥有的文件信息、提资关系与记录信息、以及受资关系与记录信息,将文件分发到特定的客户端上。
因此,本实施例中的所述主客户端与所述关联客户端处于可能同一局域网或者不同一局域网,各个关联客户端之间也同样可能处于同一局域网也可能处于不同局域网。;若处于同一局域网,则使用本地IP地址与特定端口建立所述主客户端与所述关联客户端之间的连接;若不处于同一局域网,则使用NAT UDP穿透技术建立所述主客户端与所述关联客户端之间的连接。
基于上述实施例,本发明还提供了一种终端设备,其原理框图可以如图4所示。该终端设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏、温度传感器。其中,该终端设备的处理器用于提供计算和控制能力。该终端设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该终端设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于P2P文件分发网络的文件传输方法。该终端设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该终端设备的温度传感器是预先在终端设备内部设置,用于检测内部设备的运行温度。
本领域技术人员可以理解,图4中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的终端设备的限定,具体的终端设备以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种终端设备,终端设备包括存储器、处理器及存储在存储器中并可在处理器上运行的基于P2P文件分发网络的文件处理程序,处理器执行基于P2P文件分发网络的文件处理程序时,实现如下操作指令:
主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端;
主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接;
当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
综上,本发明公开了一种基于P2P文件分发网络的文件传输方法及系统,所述方法包括:主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端;主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接;当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端。本发明中的最新文件只需要上传一次至服务端,所有客户端之间的文件交换均通过P2P方式在各个关联客户端间传输,服务端只产生一次上传流量,无任何下载流量,缓解了流量压力。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种基于P2P文件分发网络的文件传输方法,其特征在于,所述方法包括:
主客户端获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端,以使得所述服务端将所述项目信息下发至与所述项目信息对应的关联客户端;
主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接;
当主客户端与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端;
所述客户端包括有注册模块、查找模块、连接管理模块和文件管理模块;所述注册模块的作用是将用户的机器作为P2P文件分发网络中的一员;当用户登录协同客户端时,客户端会通过注册模块采集用户客户端机器本地IP地址、项目信息或者专业信息提交给服务端;成功注册后,服务端会返回同一个项目里的所有客户端的本地IP地址、外网IP地址信息;所述查找模块的作用是根据注册模块返回的客户端映射关系,找到并分类本地局域网客户端机器列表信息和跨局域网的机器列表信息;所述连接管理模块的作用是根据查找模块得到的客户端的列表信息,建立跟这些客户端机器的连接,确保网络链路通;
所述主客户端与所述关联客户端处于同一局域网或者不同一局域网;若所述主客户端与所述关联客户端处于同一局域网,则使用本地IP地址与特定端口建立所述主客户端与所述关联客户端之间的连接;
若所述主客户端与所述关联客户端不处于同一局域网,则使用NAT UDP穿透技术建立所述主客户端与所述关联客户端之间的连接;
所述项目信息为项目策划人员信息或者提资关系信息;
如果所述项目信息为提资关系信息,则主客户端还将根据文件管理模块中记录的提资关系表查询该项目受资专业的关联客户端,然后通过查找模块查询这些客户端是否在线,若在线,将通过连接管理模块尝试主动连接这些关联客户端,若连接成功,则通过文件管理模块将提资文件主动发送至关联客户端;当关联客户端接收文件验证无误后,再通过文件管理模块将所述待处理文件对应的最新文件提交至服务端,由服务端通过文件管理模块将所述待处理文件对应的最新文件分发给其他客户端;
所述主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接,还包括:
若所述关联客户端不在线,则所述关联客户端在下一次启动时,重新查询与所述项目信息对应的关联客户端的在线状态,根据在线状态建立与所述项目信息对应的关联客户端之间的连接,并从所述关联客户端或者服务器中获取所述待处理文件;
或者,
若具有所述待处理文件的关联客户端不在线时,则通过连接管理模块连接服务端,通过文件管理模块从服务端下载所述待处理文件。
2.根据权利要求1所述的基于P2P文件分发网络的文件传输方法,其特征在于,所述主客户端通过连接管理模块与所述项目信息对应的关联客户端建立连接,包括:
所述主客户端根据文件管理模块中记录的项目信息,查询与所述项目信息对应的关联客户端;
获取所述关联客户端的在线状态;
若所述关联客户端在线,则通过连接管理模块连接所述关联客户端。
3.根据权利要求1所述的基于P2P文件分发网络的文件传输方法,其特征在于,所述待处理文件为设计文件的修改文件。
4.一种基于P2P文件分发网络的文件处理系统,其特征在于,所述系统包括主客户端、服务端以及关联服务端;
所述主客户端,用于获取待处理文件,并通过文件管理模块将所述待处理文件对应的最新文件与项目信息发送至服务端;并通过连接管理模块与所述项目信息对应的关联客户端建立连接;以及在与所述关联客户端连接成功后,将所述待处理文件对应的最新文件发送至所述关联客户端;
所述服务端,用于将所述项目信息下发至与所述项目信息对应的关联客户端;
所述客户端包括有注册模块、查找模块、连接管理模块和文件管理模块;所述注册模块的作用是将用户的机器作为P2P文件分发网络中的一员;当用户登录协同客户端时,客户端会通过注册模块采集用户客户端机器本地IP地址、项目信息或者专业信息提交给服务端;成功注册后,服务端会返回同一个项目里的所有客户端的本地IP地址、外网IP地址信息;所述查找模块的作用是根据注册模块返回的客户端映射关系,找到并分类本地局域网客户端机器列表信息和跨局域网的机器列表信息;所述连接管理模块的作用是根据查找模块得到的客户端的列表信息,建立跟这些客户端机器的连接,确保网络链路通;
所述主客户端与所述关联客户端处于同一局域网或者不同一局域网;若所述主客户端与所述关联客户端处于同一局域网,则使用本地IP地址与特定端口建立所述主客户端与所述关联客户端之间的连接;
若所述主客户端与所述关联客户端不处于同一局域网,则使用NAT UDP穿透技术建立所述主客户端与所述关联客户端之间的连接;
所述项目信息为项目策划人员信息或者提资关系信息;
如果所述项目信息为提资关系信息,则主客户端还将根据文件管理模块中记录的提资关系表查询该项目受资专业的关联客户端,然后通过查找模块查询这些客户端是否在线,若在线,将通过连接管理模块尝试主动连接这些关联客户端,若连接成功,则通过文件管理模块将提资文件主动发送至关联客户端;当关联客户端接收文件验证无误后,再通过文件管理模块将所述待处理文件对应的最新文件提交至服务端,由服务端通过文件管理模块将所述待处理文件对应的最新文件分发给其他客户端;
若所述关联客户端不在线,则所述关联客户端在下一次启动时,重新查询与所述项目信息对应的关联客户端的在线状态,根据在线状态建立与所述项目信息对应的关联客户端之间的连接,并从所述关联客户端或者服务器中获取所述待处理文件;
或者,
若具有所述待处理文件的关联客户端不在线时,则通过连接管理模块连接服务端,通过文件管理模块从服务端下载所述待处理文件。
5.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器中并可在所述处理器上运行的基于P2P文件分发网络的文件处理程序,所述处理器执行所述基于P2P文件分发网络的文件处理程序时,实现如权利要求1-3任一项所述的基于P2P文件分发网络的文件传输方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于P2P文件分发网络的文件处理程序,所述基于P2P文件分发网络的文件处理程序被处理器执行时,实现如权利要求1-3任一项所述的基于P2P文件分发网络的文件传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110902781.3A CN113783932B (zh) | 2021-08-06 | 2021-08-06 | 一种基于p2p文件分发网络的文件传输方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110902781.3A CN113783932B (zh) | 2021-08-06 | 2021-08-06 | 一种基于p2p文件分发网络的文件传输方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113783932A CN113783932A (zh) | 2021-12-10 |
CN113783932B true CN113783932B (zh) | 2022-08-02 |
Family
ID=78836959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110902781.3A Active CN113783932B (zh) | 2021-08-06 | 2021-08-06 | 一种基于p2p文件分发网络的文件传输方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113783932B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101039250A (zh) * | 2006-03-16 | 2007-09-19 | 腾讯科技(深圳)有限公司 | 一种图片共享系统和方法 |
CN101977236A (zh) * | 2010-11-05 | 2011-02-16 | 北京云快线软件服务有限公司 | 大文件多点分发系统 |
CN102752397A (zh) * | 2012-07-18 | 2012-10-24 | 北京亿企通信息技术有限公司 | 一种在企业即时通讯中共享文件的方法和系统 |
CN102780779A (zh) * | 2012-07-23 | 2012-11-14 | 北京星网锐捷网络技术有限公司 | 一种园区网出口p2p流量优化方法、装置及网关设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104702710B (zh) * | 2013-12-09 | 2019-02-26 | 中国联合网络通信集团有限公司 | 端口分配方法及装置 |
CN108055140B (zh) * | 2017-12-05 | 2021-05-04 | 深圳市东微智能科技股份有限公司 | 组网中跨设备通信方法、装置、存储介质及其计算机设备 |
-
2021
- 2021-08-06 CN CN202110902781.3A patent/CN113783932B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101039250A (zh) * | 2006-03-16 | 2007-09-19 | 腾讯科技(深圳)有限公司 | 一种图片共享系统和方法 |
CN101977236A (zh) * | 2010-11-05 | 2011-02-16 | 北京云快线软件服务有限公司 | 大文件多点分发系统 |
CN102752397A (zh) * | 2012-07-18 | 2012-10-24 | 北京亿企通信息技术有限公司 | 一种在企业即时通讯中共享文件的方法和系统 |
CN102780779A (zh) * | 2012-07-23 | 2012-11-14 | 北京星网锐捷网络技术有限公司 | 一种园区网出口p2p流量优化方法、装置及网关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113783932A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8082290B2 (en) | Intelligent establishment of peer-to-peer communication | |
US11770359B2 (en) | Maintaining communications in a failover instance via network address translation | |
US6907463B1 (en) | System and method for enabling file transfers executed in a network environment by a software program | |
US11120418B2 (en) | Systems and methods for managing a payment terminal via a web browser | |
US20140156810A1 (en) | Method and system for loading file in webgame | |
US8732281B2 (en) | Actively updating clients with selected data | |
CN106713391B (zh) | 一种session信息的共享方法和共享系统 | |
WO2019052058A1 (zh) | 一种域名重定向方法和系统 | |
CN111245831B (zh) | Ftp数据传输方法及装置、服务端和客户端的信息交互系统 | |
CN112243047A (zh) | 基于公链的区块链网络寻址方法 | |
CN113469736A (zh) | 资源分发控制方法、装置、系统、电子设备及存储介质 | |
CN113783932B (zh) | 一种基于p2p文件分发网络的文件传输方法及系统 | |
CN113746856B (zh) | Ssl可选验证方法、装置、计算机设备和存储介质 | |
CN114422519B (zh) | 一种数据请求的处理方法、装置、电子设备及存储介质 | |
CN104823410A (zh) | 参数设定系统 | |
US11368310B2 (en) | Data transfer between computing nodes of a distributed computing system | |
US20080016166A1 (en) | Host posing network device and method thereof | |
JP2016154332A (ja) | Tcpハンドシェークをリフォームするデバイス及び方法 | |
CN113992735A (zh) | 一种mqtt连接系统及其连接方法、服务器和存储介质 | |
CN113782111A (zh) | 一种基于药物研发模型的协同训练方法、系统及存储介质 | |
CN110928598A (zh) | 系统配置方法、装置、计算机设备和存储介质 | |
US20080301215A1 (en) | NAT (Network Address Translation) traversal methods and systems | |
US11973663B2 (en) | Artificial intelligence based real-time service discovery and binding technique | |
US11842400B2 (en) | System and method for managing events in a queue of a distributed network | |
JP6913132B2 (ja) | データ送信補助方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |