CN107689927B - 一种异步数据传输方法和系统 - Google Patents
一种异步数据传输方法和系统 Download PDFInfo
- Publication number
- CN107689927B CN107689927B CN201710889339.5A CN201710889339A CN107689927B CN 107689927 B CN107689927 B CN 107689927B CN 201710889339 A CN201710889339 A CN 201710889339A CN 107689927 B CN107689927 B CN 107689927B
- Authority
- CN
- China
- Prior art keywords
- target transmission
- transmission data
- node
- data
- relay node
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/33—Flow control; Congestion control using forward notification
Abstract
本发明涉及一种异步数据传输方法和系统,其方法包括:源节点向接收节点发送第一连接请求,在第一预设时间内如果接收到接收节点反馈的第一反馈信息,源节点向接收节点传输所述目标传输数据,如果未接收到第一反馈信息,源节点将目标传输数据编号发送至中继节点,并根据目标传输数据的数据量大小确定是否将目标传输数据也发送至中继节点中,由中继节点继续向接收节点发送第二连接请求,协助接收节点将目标传输数据发送至接收节点中。本发明根据能否连通接收节点的情况分别对目标传输数据进行处理,设置了中继节点来协助连接和传输,减轻了源节点传送数据的压力,接收节点在异步接收数据的情况下,能够更快的使目标传输数据送达。
Description
技术领域
本发明涉及数据传输技术领域,尤其涉及一种异步数据传输方法和系统。
背景技术
两个节点的数据传输方式,最常见的方式之一是实时在线传输,即发送方和接收方建立传输通道后,直接进行两点传输数据,另一种方式是,发送方可以在任何时刻发送数据,而接收方从不知道它们会在什么时候到达,即异步传输的方式,而目前异步传输的方法,当待传输数据过多时容易造成数据堵塞,也造成待传输数据严重滞后到达接收端的情况。
发明内容
为解决上述技术问题,本发明提供了一种异步数据传输方法和系统。
第一方面,本发明实施例提供了一种异步数据传输方法,包括如下步骤:
当任务栈队中存在目标传输数据时,源节点向接收节点发送第一连接请求;
如果在第一预设时间内所述源节点接收到所述接收节点反馈的第一反馈信息,则所述源节点向所述接收节点传输所述目标传输数据;
如果在第一预设时间内所述源节点未接收到所述第一反馈信息,则所述源节点将目标传输数据编号发送至中继节点,并判断所述目标传输数据标号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至中继节点;
所述中继节点根据接收的目标传输数据编号,向所述接收节点发送第二连接请求,
如果在第二预设时间内所述中继节点接收到所述接收节点的第二反馈信息,则在中继节点的本地存储器查找与目标传输数据编号对应的目标传输数据,如果查找到所述目标传输数据,则将查找到的目标传输数据传输至所述接收节点中,如果未查找到所述目标传输数据,则向所述源节点转发所述第二反馈信息;
所述源节点根据中继节点转发的第二反馈信息,将所述目标传输数据发送至所述接收节点中。
本发明源节点根据能否连通接收节点的情况分别对目标传输数据进行处理,在未能连通接收节点的情况下,设置了中继节点来协助连接和传输,如果能够连通,源节点可以直接将目标传输数据发送给接收节点,能够减少数据拥堵的现象,减轻了源节点传送数据的压力,接收节点在异步接收数据的情况下,能够更快的使目标传输数据送达;另外,在目标传输数据的数据量大小超出一定范围时,不必将目标传输数据发送至中继节点,只需通过中继节点协助连接接收节点即可,一定程度上避免了过多的大数据传输而造成链路拥堵的情况。
进一步的,还包括步骤:所述源节点向所述接收节点发送第一连接请求时,所述第一连接请求中携带目标传输数据编号;所述接收节点反馈第一反馈信息时,所述第一反馈信息携带目标传输数据编号;
所述中继节点向所述接收节点发送第二连接请求时,所述第二连接请求中携带目标传输数据编号;所述接收节点反馈第二反馈信息时,所述第二反馈信息携带目标传输数据编号。
上述进一步技术方案,源节点或中继节点向接收节点发送请求时,携带目标传输数据编号,接收节点向源节点或中继节点反馈信息时,也携带该目标传输数据编号,可避免数据传输错误。
进一步的,还包括步骤:
当所述中继节点同时接收到所述源节点发送的目标传输数据编号和目标传输数据时,将所述目标传输数据与目标传输数据编号对应保存至本地存储器中。
上述进一步技术方案,将目标传输数据与目标传输数据编号对应保存,有利于快速查找目标传输数据。
进一步的,还包括步骤:记录所述源节点发送所述第一连接请求的时间、发送所述目标传输数据至所述接收节点的时间以及发送所述目标传输数据至所述中继节点的时间。
上述进一步技术方案,能够统计源节点发出连接请求的时间和完成目标传输数据发送的时间。
第二方面,本发明还提供了一种异步数据传输系统,包括源节点、中继节点和接收节点;
所述源节点用于,当任务栈队中存在目标传输数据时,向所述接收节点发送第一连接请求,如果在第一预设时间内接收到所述接收节点反馈的第一反馈信息,则向所述接收节点传输所述目标传输数据,如果在第一预设时间内未接收到所述第一反馈信息,则将目标传输数据编号发送至中继节点,并判断所述目标传输数据标号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至中继节点;
所述中继节点用于,根据接收的目标传输数据编号,向所述接收节点发送第二连接请求,如果在第二预设时间内所述中继节点接收到所述接收节点的第二反馈信息,则在中继节点的本地存储器中查找与目标传输数据编号对应的目标传输数据,如果查找到所述目标传输数据,则将查找到的目标传输数据传输至所述接收节点中,如果未查找到所述目标传输数据则向所述源节点转发所述第二反馈信息;
所述源节点还用于,根据中继节点转发的第二反馈信息,将所述目标传输数据发送至所述接收节点中。
本发明根据能否连通接收节点的情况分别对目标传输数据进行处理,在未能连通接收节点的情况下,设置了中继节点来协助连接和传输,如果能够连通,源节点可以直接将目标传输数据发送给接收节点,能够减少数据拥堵的现象,减轻了源节点传送数据的压力,接收节点在异步接收数据的情况下,能够更快的使目标传输数据送达;另外,在目标传输数据的数据量大小超出一定范围时,不必将目标传输数据发送至中继节点,只需通过中继节点协助连接接收节点即可,一定程度上避免了过多的大数据传输而造成链路拥堵的情况。
进一步的,所述源节点向所述接收节点发送第一连接请求时,所述第一连接请求中携带目标传输数据编号;所述接收节点反馈第一反馈信息时,所述第一反馈信息携带目标传输数据编号;
所述中继节点向所述接收节点发送第二连接请求时,所述第二连接请求中携带目标传输数据编号;所述接收节点反馈第二反馈信息时,所述第二反馈信息携带目标传输数据编号。
上述进一步技术方案,源节点或中继节点向接收节点发送请求时,携带目标传输数据编号,接收节点向源节点或中继节点反馈信息时,也携带该目标传输数据编号,可避免数据传输错误。
进一步的,所述中继节点还用于,
当同时接收到所述源节点发送的目标传输数据编号和目标传输数据时,将所述目标传输数据与目标传输数据编号对应保存至本地存储器中。
上述进一步技术方案,将目标传输数据与目标传输数据编号对应保存,有利于快速查找目标传输数据。
进一步的,所述源节点还用于,记录发送所述第一连接请求的时间、发送所述目标传输数据至所述接收节点的时间以及发送所述目标传输数据至所述中继节点的时间。
上述进一步技术方案,能够统计源节点发出连接请求的时间和完成目标传输数据发送的时间。
附图说明
图1为本发明一实施例提供的异步数据传输方法的方法流程图;
图2为本发明一实施例提供的数据传输链路的连接示意图;
图3为本发明另一实施例提供的异步数据传输方法的方法流程图;
图4为本发明另一实施例提供的数据传输链路的连接示意图;
图5为本发明一实施例提供的异步数据传输系统的模块框图。
附图中,各标号所代表的部件列表如下:
01、源节点,02、中继节点,03、接收节点。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透切理解本发明。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
图1为本发明一实施例提供的异步数据传输方法的方法流程图;
图2为本发明一实施例提供的数据传输链路的连接示意图;
如图1所示,第一方面,本发明实施例提供了一种异步数据传输方法,包括如下步骤:
步骤S101:设置源节点至接收节点,以及源节点至中继节点、中继节点至接收节点两条数据传输链路;
如图2所示,设置了两条数据传输链路,中继节点的加入可以协助源节点连接接收节点以及协助源节点传输数据至接收节点;
步骤S102:当任务栈队中存在目标传输数据时,源节点向接收节点发送第一连接请求;
步骤S103:判断是否接收到所述接收节点反馈的第一反馈信息,如果在第一预设时间内所述源节点接收到所述接收节点反馈的第一反馈信息,则执行步骤S104,否则执行步骤S105;
步骤S104:所述源节点向所述接收节点传输所述目标传输数据;
步骤S105:所述源节点将目标传输数据编号发送至中继节点,并判断所述目标传输数据标号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至中继节点;
上述步骤中,首先源节点向接收节点发送连接请求,如果能够收到接收节点的“响应”,则将目标传输数据直接发送给接收节点,而不需要再发送给中继节点,避免增加数据传输量,减轻链路传输压力;如果没有得到接收节点的“响应”,可以通过中继节点协助连接和传输,也就是说将目标传输数据发送给中继节点,由中继节点来协助处理目标传输数据,以此减轻源节点的工作量,以使得源节点可以再处理其他的目标传输数据;
步骤S106:所述中继节点根据接收的目标传输数据编号,向所述接收节点发送第二连接请求;
步骤S107:判断是否接收到所述接收节点反馈的第二反馈信息,如果在第二预设时间内所述中继节点接收到所述接收节点的第二反馈信息,则执行步骤S108;
步骤S108:在中继节点的本地存储器查找与目标传输数据编号对应的目标传输数据,如果查找到所述目标传输数据,则执行步骤S109,如果未查找到所述目标传输数据,则执行步骤S1010;
步骤S109:将查找到的目标传输数据传输至所述接收节点中;
步骤S1010:向所述源节点转发所述第二反馈信息;
步骤S1011:所述源节点根据中继节点转发的第二反馈信息,将所述目标传输数据发送至所述接收节点中;
步骤S1012:如果在第二预设时间内所述中继节点接收到所述接收节点的第二反馈信息,在所述本地存储器中查找与目标传输数据编号对应的目标传输数据,并将查找到的所述目标传输数据删除。
上述实施例中,根据能否连通接收节点的情况分别对目标传输数据进行处理,在未能连通接收节点的情况下,设置了中继节点来协助连接和传输,如果能够连通,源节点可以直接将目标传输数据发送给接收节点,能够减少数据拥堵的现象,减轻了源节点传送数据的压力,接收节点在异步接收数据的情况下,能够更快的使目标传输数据送达;另外,在目标传输数据的数据量大小超出一定范围时,不必将目标传输数据发送至中继节点,只需通过中继节点协助连接接收节点即可,一定程度上避免了过多的大数据传输而造成链路拥堵的情况;另外,在接收节点长时间未接收数据的情况下,为了避免冗余的数据的积压,可根据时间要求来删除中继节点的本次存储器中积压的数据。
图3为本发明另一实施例提供的异步数据传输方法的方法流程图;
具体的,在图1的基础上,本实施例进行改进,如图3所示,
步骤S1051:判断所述目标传输数据标号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,如果是,则执行步骤S1052,否则执行步骤S1053;
步骤S1052:将所述目标传输数据发送至所述中继节点;
步骤S1053:不发送。
具体的,例如,预设数据量阈值为3.5GB,如果所述目标传输数据的数据量大小小于或等于3.5GB,则不发送目标传输数据,仅发送目标传输数据编号即可;
上述实施例中,可视目标传输数据的数据量大小来决定是否发送给中继节点,如果传输数据的数据量大小过大,则不通过中继节点发送目标传输数据,只需要中继节点协助连接接收节点即可,避免了大数据在链路中传输,造成链路拥塞的情况。
优选地,作为本发明的一个实施例,所述源节点根据中继节点转发的第二反馈信息,将所述目标传输数据发送至所述接收节点中具体包括:
如果所述目标传输数据标号对应的目标传输数据的数据量大于预设数据量阈值时,所述源节点将所述目标传输数据进行分割,得到m个数据块,根据分割顺序将m个数据块进行排序,将排序后的m个数据块进行编号,并根据数据块编号生成编号序列表,将所述m个数据块和所述编号序列表发送至接收节点,其中,m≥2;
所述接收节点根据所述编号序列表和数据块携带的编号将所述m个数据块进行重组,复原所述目标传输数据。
上述实施例中,源节点能够将大于预设数据量阈值的目标传输数据分割成多个数据块,并进行编号,生成编号序列表,接收节点根据所述编号序列表和数据块携带的编号将接收到的所述m个数据块进行重组,来复原目标传输数据,从而能够避免大数据传输给传输通道带来压力,能够避免传输通道拥塞。
图4为本发明另一实施例提供的数据传输链路的连接示意图;
具体的,在图1的基础上,本实施例进行改进,如图4所示,所述源节点将所述目标传输数据也发送至中继节点中还包括:
当中继节点设有的数量n≥2时,获取各中继节点本地存储器的剩余容量,根据各中继节点本地存储器剩余容量的大小得到最大剩余容量对应的中继节点,将该中继节点作为目标中继节点,将所述目标传输数据编号发送至所述目标中继节点中,并判断所述目标传输数据标号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至所述目标中继节点。
上述实施例中,可以通过设置多个中继节点的形式来协助源节点进行传输,并且根据存储器剩余容量的大小来选择合适的中继节点进行传输,能够均衡中继节点的存量。
具体的,在图1的基础上,本实施例进行改进,还包括步骤:
所述源节点向所述接收节点发送第一连接请求时,所述第一连接请求中携带目标传输数据编号;所述接收节点反馈第一反馈信息时,所述第一反馈信息携带目标传输数据编号;
所述中继节点向所述接收节点发送第二连接请求时,所述第二连接请求中携带目标传输数据编号;所述接收节点反馈第二反馈信息时,所述第二反馈信息携带目标传输数据编号。
上述实施例中,源节点或中继节点向接收节点发送请求时,携带目标传输数据编号,接收节点向源节点或中继节点反馈信息时,也携带该目标传输数据编号,可避免数据传输错误。
具体的,在图1的基础上,本实施例进行改进,还包括步骤:
当所述中继节点同时接收到所述源节点发送的目标传输数据编号和目标传输数据时,将所述目标传输数据与目标传输数据编号对应保存至本地存储器中。
上述实施例中,将目标传输数据与目标传输数据编号对应保存,有利于快速查找目标传输数据。
具体的,在图1的基础上,本实施例进行改进,还包括步骤:记录所述源节点发送所述第一连接请求的时间、发送所述目标传输数据至所述接收节点的时间以及发送所述目标传输数据至所述中继节点的时间。
上述实施例中,能够统计源节点发出连接请求的时间和完成目标传输数据发送的时间。
具体的,在图1的基础上,本实施例进行改进,还包括步骤:在第二预设时间内如果中继节点未接收到所述第二反馈信息,则向所述接收节点周期性的发送所述第二连接请求。
上述实施例中,所述周期性为每隔n分钟向接收节点发送一次第二连接请求,例如,每隔10分钟即向接收节点发送一次第二连接请求;通过中继节点向接收节点发送多次连接请求,可以保障连接的有效性,避免请求信息未发送成功的情况。
具体的,在图1的基础上,本实施例进行改进,所述将所述目标传输数据删除时还包括步骤:
向源节点发送删除信息,所述删除信息包括删除的目标传输数据对应的编号信息和删除时间。
上述实施例中,能够及时向源节点通知目标传输数据已删除的信息,以便源节点接收到删除信息时,可以对比较重要的目标传输数据进行保护或备份处理。
具体的,在图1的基础上,本实施例进行改进,还包括步骤:在第二预设时间之后所述中继节点接收到接收节点发送的第二反馈信息时,将所述第二反馈信息转发至源节点中。
上述实施例中,如果第二反馈信息是在第二预设时间过后才接收到的,中继节点可以将第二反馈信息及时转发至源节点,以便源节点将目标传输数据及时发送至接收节点中,能够尽快处理目标传输数据。
具体的,在图1的基础上,本实施例进行改进,还包括步骤:当中继节点完成对所述目标传输数据的发送时,生成完成信息,将完成信息发送至源节点中,所述完成信息包括目标传输数据编号、发送时间和对应的接收节点的编号。
上述实施例中,能够便于源节点统计目标传输数据发送完成的时间。
图5为本发明另一实施例提供的异步数据传输系统的模块框图;
如图5所示,一种异步数据传输系统,包括源节点01、中继节点02和接收节点03;
所述源节点01用于,当任务栈队中存在目标传输数据时,向所述接收节点03发送第一连接请求,如果在第一预设时间内接收到所述接收节点03反馈的第一反馈信息,则向所述接收节点03传输所述目标传输数据,如果在第一预设时间内未接收到所述第一反馈信息,则将目标传输数据编号发送至中继节点02中,并判断所述目标传输数据标号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至中继节点02;
所述中继节点02用于,根据接收的目标传输数据编号,向所述接收节点03发送第二连接请求,如果在第二预设时间内所述中继节点02接收到所述接收节点03的第二反馈信息,则在中继节点02的本地存储器中查找与目标传输数据编号对应的目标传输数据,如果查找到所述目标传输数据,则将查找到的目标传输数据传输至所述接收节点03中,如果未查找到所述目标传输数据则向所述源节点01转发所述第二反馈信息;
如果在第二预设时间内所述中继节点未接收到所述第二反馈信息,则在所述本地存储器中查找与目标传输数据编号对应的目标传输数据,并将查找到的所述目标传输数据删除;
所述源节点01还用于,根据中继节点02转发的第二反馈信息,将所述目标传输数据发送至所述接收节点03中。
上述实施例中,首先源节点向接收节点发送连接请求,如果能够收到接收节点的“响应”,则将目标传输数据直接发送给接收节点,而不需要再发送给中继节点,避免增加数据传输量,减轻链路传输压力;如果没有得到接收节点的“响应”,可以通过中继节点协助连接和传输,也就是说将目标传输数据发送给中继节点,由中继节点来协助处理目标传输数据,以此减轻源节点的工作量,以使得源节点可以再处理其他的目标传输数据;
上述实施例中,根据能否连通接收节点的情况分别对目标传输数据进行处理,在未能连通接收节点的情况下,设置了中继节点来协助连接和传输,如果能够连通,源节点可以直接将目标传输数据发送给接收节点,能够减少数据拥堵的现象,减轻了源节点传送数据的压力,接收节点在异步接收数据的情况下,能够更快的使目标传输数据送达;另外,在目标传输数据的数据量大小超出一定范围时,不必将目标传输数据发送至中继节点,只需通过中继节点协助连接接收节点即可,一定程度上避免了过多的大数据传输而造成链路拥堵的情况。另外,在接收节点长时间未接收数据的情况下,为了避免冗余的数据的积压,可根据时间要求来删除中继节点的本次存储器中积压的数据。
优选的,本实施例对中继节点02进行改进,所述中继节点02还用于,
在第二预设时间之后所述中继节点02接收到接收节点03发送的第二反馈信息时,则将所述第二反馈信息转发至源节点01中。
上述实施例中,如果第二反馈信息是在第二预设时间过后才接收到的,中继节点可以将第二反馈信息及时转发至源节点,以便源节点将目标传输数据及时发送至接收节点中,能够尽快处理目标传输数据。
优选的,本实施例对源节点进行改进,所述源节点还用于,
判断所述目标传输数据的数据量大小是否小于或等于预设数据量阈值,如果是,则将所述目标传输数据发送至所述中继节点02中,否则,不发送。
具体的,例如,预设数据量阈值为3.5GB,如果所述目标传输数据的数据量大小小于或等于3.5GB,则不发送目标传输数据,仅发送目标传输数据编号即可;
上述实施例中,可视目标传输数据的数据量大小来决定是否发送给中继节点,如果传输数据的数据量大小过大,则不通过中继节点发送目标传输数据,只需要中继节点协助连接接收节点即可,避免了大数据在链路中传输,造成链路拥塞的情况。
具体的,作为本发明的一个实施例,所述源节点还具体用于:
如果所述目标传输数据标号对应的目标传输数据的数据量大于预设数据量阈值时,所述源节点将所述目标传输数据进行分割,得到m个数据块,根据分割顺序将m个数据块进行排序,将排序后的m个数据块进行编号,并根据数据块编号生成编号序列表,将所述m个数据块和所述编号序列表发送至接收节点,其中,m≥2;
所述接收节点用于根据所述编号序列表和数据块携带的编号将所述m个数据块进行重组,复原所述目标传输数据。
上述实施例中,源节点能够将大于预设数据量阈值的目标传输数据分割成多个数据块,并进行编号,生成编号序列表,接收节点根据所述编号序列表和数据块携带的编号将接收到的所述m个数据块进行重组,来复原目标传输数据,从而能够避免大数据传输给传输通道带来压力,能够避免传输通道拥塞。
优选的,本实施例对中继节点02进行改进,所述中继节点02还用于,
当同时接收到所述源节点01发送的目标传输数据编号和目标传输数据时,将所述目标传输数据与目标传输数据编号对应保存至本地存储器中。
上述实施例中,将目标传输数据与目标传输数据编号对应保存,有利于快速查找目标传输数据。
优选的,本实施例对中继节点02进行改进,所述中继节点控制模块02还用于:在第二预设时间内如果未接收到所述第二反馈信息,则向所述接收节点周期性的发送所述第二连接请求。
上述实施例中,所述周期性为每隔n分钟向接收节点发送一次第二连接请求,例如,每隔10分钟即向接收节点发送一次第二连接请求;通过中继节点向接收节点发送多次连接请求,可以保障连接的有效性,避免请求信息未发送成功的情况。
优选的,本实施例对源节点01进行改进,所述源节点01还用于,
当中继节点02的数量n≥2时,获取各中继节点02本地存储器的剩余容量,根据各中继节点02本地存储器剩余容量的大小得到最大剩余容量对应的中继节点02,将该中继节点02作为目标中继节点,将所述目标传输数据编号发送至所述目标中继节点,并判断所述目标传输数据标号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至所述目标中继节点。
上述实施例中,可以通过设置多个中继节点的形式来协助源节点进行传输,并且根据存储器剩余容量的大小来选择合适的中继节点进行传输,能够均衡中继节点的存量。优选的,所述源节点01向所述接收节点03发送第一连接请求时,所述第一连接请求中携带目标传输数据编号;所述接收节点03反馈第一反馈信息时,所述第一反馈信息携带目标传输数据编号;
所述中继节点02向所述接收节点发送第二连接请求时,所述第二连接请求中携带目标传输数据编号;所述接收节点03反馈第二反馈信息时,所述第二反馈信息携带目标传输数据编号。
上述实施例中,当接收到多个接收节点发送来的反馈信息时,可以根据接收节点的编号,将目标传输数据发送至对应的接收节点中,避免数据传输错误。
优选的,在图5的基础上进行改进,所述源节点01还用于,记录发送所述第一连接请求的时间、发送所述目标传输数据至所述接收节点03的时间以及发送所述目标传输数据至所述中继节点02的时间。
上述实施例中,能够统计源节点发出连接请求的时间和完成目标传输数据发送的时间。
优选的,本实施例对中继节点02进行改进,所述中继节点02还用于:向源节点发送删除信息,所述删除信息包括删除的目标传输数据对应的编号信息和删除时间。
上述实施例中,能够及时向源节点通知目标传输数据已删除的信息,以便源节点接收到删除信息时,可以对比较重要的目标传输数据进行保护或备份处理。
优选的,在图5的基础上进行改进,所述中继节点02还用于,当完成对所述目标传输数据的发送时,生成完成信息,并将完成信息发送至源节点中,所述完成信息包括目标传输数据编号、发送时间和对应的接收节点的编号。
上述实施例中,能够便于源节点统计目标传输数据发送完成的时间。
本发明的主要优点是:
1、根据能否连通接收节点的情况分别对目标传输数据进行处理,在未能连通接收节点的情况下,设置了中继节点来协助连接和传输,如果能够连通,源节点可以直接将目标传输数据发送给接收节点,能够减少数据拥堵的现象,减轻了源节点传送数据的压力,接收节点在异步接收数据的情况下,能够更快的使目标传输数据送达;
2、可视目标传输数据的数据量大小来决定是否发送给中继节点,如果传输数据的数据量大小过大,则不通过中继节点发送目标传输数据,只需要中继节点协助连接接收节点即可,避免了大数据在链路中传输,造成链路拥塞的情况;
3、可视目标传输数据的数据量大小来决定是否发送给中继节点,如果传输数据的数据量大小过大,则不通过中继节点发送目标传输数据,只需要中继节点协助连接接收节点即可,避免了大数据在链路中传输,造成链路拥塞的情况;
4、可以通过设置多个中继节点的形式来协助源节点进行传输,并且根据存储器剩余容量的大小来选择合适的中继节点进行传输,能够均衡中继节点的存量;
5、在接收节点长时间未接收数据的情况下,为了避免冗余的数据的积压,可根据时间要求来删除中继节点本地存储器中积压的数据。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种异步数据传输方法,其特征在于,包括如下步骤:
当任务栈队中存在目标传输数据时,源节点向接收节点发送第一连接请求;
如果在第一预设时间内所述源节点接收到所述接收节点反馈的第一反馈信息,则所述源节点向所述接收节点传输所述目标传输数据;
如果在第一预设时间内所述源节点未接收到所述第一反馈信息,则所述源节点将目标传输数据编号发送至中继节点,并判断所述目标传输数据编号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至中继节点;
所述中继节点根据接收的目标传输数据编号,向所述接收节点发送第二连接请求;
如果在第二预设时间内所述中继节点接收到所述接收节点的第二反馈信息,则在中继节点的本地存储器查找与目标传输数据编号对应的目标传输数据,如果查找到所述目标传输数据,则将查找到的目标传输数据传输至所述接收节点中,如果未查找到所述目标传输数据,则向所述源节点转发所述第二反馈信息;
所述源节点根据中继节点转发的第二反馈信息,将所述目标传输数据发送至所述接收节点中,具体包括:
如果所述目标传输数据编号对应的目标传输数据的数据量大于预设数据量阈值时,所述源节点将所述目标传输数据进行分割,得到m个数据块,根据分割顺序将m个数据块进行排序,将排序后的m个数据块进行编号,并根据数据块编号生成编号序列表,将所述m个数据块和所述编号序列表发送至接收节点,其中,m≥2;
所述接收节点根据所述编号序列表和数据块携带的编号将所述m个数据块进行重组,复原所述目标传输数据;
所述源节点将所述目标传输数据也发送至中继节点,还包括:
当中继节点的数量n≥2时,获取各中继节点本地存储器的剩余容量,根据各中继节点本地存储器剩余容量的大小得到最大剩余容量对应的中继节点,将该中继节点作为目标中继节点,将所述目标传输数据编号发送至所述目标中继节点,并判断所述目标传输数据编号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至所述目标中继节点。
2.根据权利要求1所述的异步数据传输方法,其特征在于,还包括:
如果在第二预设时间内所述中继节点未接收到所述第二反馈信息,则在所述本地存储器中查找与目标传输数据编号对应的目标传输数据,并将查找到的所述目标传输数据删除。
3.根据权利要求2所述的异步数据传输方法,其特征在于,还包括:
在第二预设时间之后所述中继节点接收到接收节点发送的第二反馈信息时,则将所述第二反馈信息转发至源节点中。
4.一种异步数据传输系统,其特征在于,包括源节点、中继节点和接收节点;
所述源节点用于,当任务栈队中存在目标传输数据时,向所述接收节点发送第一连接请求,如果在第一预设时间内接收到所述接收节点反馈的第一反馈信息,则向所述接收节点传输所述目标传输数据,如果在第一预设时间内未接收到所述第一反馈信息,则将目标传输数据编号发送至中继节点,并判断所述目标传输数据编号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至中继节点;
所述中继节点用于,根据接收的目标传输数据编号,向所述接收节点发送第二连接请求,如果在第二预设时间内所述中继节点接收到所述接收节点的第二反馈信息,则在中继节点的本地存储器中查找与目标传输数据编号对应的目标传输数据,如果查找到所述目标传输数据,则将查找到的目标传输数据传输至所述接收节点中,如果未查找到所述目标传输数据则向所述源节点转发所述第二反馈信息;
所述源节点还用于,根据中继节点转发的第二反馈信息,将所述目标传输数据发送至所述接收节点中,具体为:
如果所述目标传输数据编号对应的目标传输数据的数据量大于预设数据量阈值时,将所述目标传输数据进行分割,得到m个数据块,根据分割顺序将m个数据块进行排序,将排序后的m个数据块进行编号,并根据数据块编号生成编号序列表,将所述m个数据块和所述编号序列表发送至接收节点,其中,m≥2;
所述接收节点用于根据所述编号序列表和数据块携带的编号将所述m个数据块进行重组,复原所述目标传输数据;
所述源节点还用于,
当中继节点设有的数量n≥2时,获取各中继节点本地存储器的剩余容量,根据各中继节点本地存储器剩余容量的大小得到最大剩余容量对应的中继节点,将该中继节点作为目标中继节点,将所述目标传输数据编号发送至所述目标中继节点中,并判断所述目标传输数据编号对应的目标传输数据的数据量是否小于或等于预设数据量阈值,若是,则将所述目标传输数据也发送至所述目标中继节点。
5.根据权利要求4所述的异步数据传输系统,其特征在于,所述中继节点还用于,
如果在第二预设时间内未接收到所述第二反馈信息,则在所述中继节点本地存储器中查找与目标传输数据编号对应的目标传输数据,并将查找到的所述目标传输数据删除。
6.根据权利要求4所述的异步数据传输系统,其特征在于,所述中继节点还用于,
在第二预设时间之后所述中继节点接收到接收节点发送的第二反馈信息时,则将所述第二反馈信息转发至源节点中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710889339.5A CN107689927B (zh) | 2017-09-27 | 2017-09-27 | 一种异步数据传输方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710889339.5A CN107689927B (zh) | 2017-09-27 | 2017-09-27 | 一种异步数据传输方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107689927A CN107689927A (zh) | 2018-02-13 |
CN107689927B true CN107689927B (zh) | 2021-10-08 |
Family
ID=61156650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710889339.5A Active CN107689927B (zh) | 2017-09-27 | 2017-09-27 | 一种异步数据传输方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107689927B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881042A (zh) * | 2018-04-25 | 2018-11-23 | 郑州易通众联电子科技有限公司 | 数据传输方法及数据传输装置 |
CN113556580A (zh) * | 2019-06-10 | 2021-10-26 | 西安万像电子科技有限公司 | 数据传输方法及装置 |
CN112437106A (zh) * | 2020-08-31 | 2021-03-02 | 上海哔哩哔哩科技有限公司 | 一种使用中继节点上传文件的方法及设备 |
CN113315601B (zh) * | 2021-05-06 | 2022-09-30 | 北京和峰科技有限公司 | 多点协助的数据传输方法、装置、存储介质及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127623A (zh) * | 2007-09-27 | 2008-02-20 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及系统 |
CN102647251A (zh) * | 2012-03-26 | 2012-08-22 | 北京星网锐捷网络技术有限公司 | 数据传输方法及系统、发送端设备与接收端设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101170523B (zh) * | 2007-12-05 | 2010-09-29 | 腾讯科技(深圳)有限公司 | 文件传输系统、方法以及文件中转决策服务器 |
CN102014160A (zh) * | 2010-11-25 | 2011-04-13 | 中国联合网络通信集团有限公司 | 终端间数据传输方法和终端间数据传输系统 |
JP2015171128A (ja) * | 2014-03-11 | 2015-09-28 | 富士通株式会社 | パケットの取得方法、パケット取得装置、及び、パケット取得プログラム |
CN105763618B (zh) * | 2016-03-31 | 2019-08-13 | 网宿科技股份有限公司 | 数据传输的方法和装置 |
CN106411560A (zh) * | 2016-06-01 | 2017-02-15 | 深圳市永兴元科技有限公司 | 数据传输方法和装置 |
-
2017
- 2017-09-27 CN CN201710889339.5A patent/CN107689927B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127623A (zh) * | 2007-09-27 | 2008-02-20 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及系统 |
CN102647251A (zh) * | 2012-03-26 | 2012-08-22 | 北京星网锐捷网络技术有限公司 | 数据传输方法及系统、发送端设备与接收端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107689927A (zh) | 2018-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107689927B (zh) | 一种异步数据传输方法和系统 | |
JP6749926B2 (ja) | データを同期する方法、機器、及びシステム | |
US9009234B2 (en) | Complex event processing system having multiple redundant event processing engines | |
US10282247B2 (en) | Distributed database management system with node failure detection | |
US10877935B2 (en) | Stream computing system and method | |
US20170142000A1 (en) | Packet control method, switch, and controller | |
CN107707640A (zh) | 一种点对点数据传输方法和装置 | |
CN106936662A (zh) | 一种实现心跳机制的方法、装置及系统 | |
CN104104475A (zh) | 一种应答信号的生成方法、接收方法与装置 | |
CN108259595A (zh) | 一种服务间异步调用的方法及系统 | |
US10992760B2 (en) | Information processing system, session management method, and non-transitory computer-readable storage medium | |
CN115080215B (zh) | 由状态监控芯片在计算节点间进行任务调度的方法及系统 | |
CN108199856A (zh) | 数据发送方法、装置、计算机节点及存储介质 | |
CN114827013A (zh) | 配电网站域式快速保护系统数据冗余发送方法及相关装置 | |
CN112131180B (zh) | 数据上报方法、装置以及存储介质 | |
CN107682423A (zh) | 一种数据转发方法及装置 | |
KR101451781B1 (ko) | 가상머신 환경에서 가상화 시스템의 장치 복제 시스템 및 그 방법 | |
CN108874530B (zh) | 对报文转发设备的业务板进行扩容、缩容的方法和装置 | |
CN107689926B (zh) | 一种通讯协议的数据传输方法及系统 | |
KR20130109195A (ko) | 유사 이메일을 처리하기 위한 시스템 및 방법 | |
JP2016220095A (ja) | データ伝送装置、データ伝送システムおよびデータ伝送方法 | |
WO2018121353A1 (zh) | 数据通路的测试方法、测试服务器及测试系统 | |
CN105227467B (zh) | 报文转发方法及装置 | |
CN102281150A (zh) | 多模块网关及其流量控制方法 | |
CN116841929B (zh) | 用于传输数据的方法及装置、电子设备、存储介质 |
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 |