CN101222344B - 文件组播传输方法和系统 - Google Patents
文件组播传输方法和系统 Download PDFInfo
- Publication number
- CN101222344B CN101222344B CN2008100041773A CN200810004177A CN101222344B CN 101222344 B CN101222344 B CN 101222344B CN 2008100041773 A CN2008100041773 A CN 2008100041773A CN 200810004177 A CN200810004177 A CN 200810004177A CN 101222344 B CN101222344 B CN 101222344B
- Authority
- CN
- China
- Prior art keywords
- multicast
- packet
- receiving terminal
- file
- transmission
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种文件组播传输方法和系统,其中,该方法包括:当发送端处理机启动文件的组播传输时,初始化组播控制结构表;根据组播控制结构表,发送端处理机向接收端处理机发送预传输信息,并将关于将要进行组播传输的文件的数据包填入组播数据包结构表中;在填写完组播数据包结构表之后,发送端处理机采用组播方式发送数据包,并将数据包放入发送端处理机的发送缓冲区中;在接收到数据包之后,接收端处理机向发送端处理机反馈数据包接收确认消息,并将数据包放入接收端处理机的接收缓冲区中;以及根据组播数据包结构表,接收端处理机判断组播传输是否完成,并在确定组播传输完成后,将接收到的数据包写入存储设备并清空接收缓冲区。
Description
技术领域
本发明涉及通信领域,更具体地,涉及一种文件组播传输方法和系统。
背景技术
通信网中存在可靠性要求较高的大批量文件分发需求,这类需求通常表现为电信设备软件升级时的文件分发。仅仅以核心网系统来看,它的每个网元都由几十甚至数百块单板组成(而基站系统这个数字更为庞大)。这些单板组成了不同的通信网元。每个单板相当于一个独立的嵌入式计算机,他们之间相互协作实现功能。在维护过程中通常采用对这些设备进行软件升级的方式实现对新功能的支持。
目前,运营商逐渐采用以IP为核心的骨干网来承载数据和语音业务,因此升级部分通常基于TCP协议来实现。由于TCP为端到端通信,需要在通信的两点之间建立连接,然后才发送数据包,中间要对数据进行校验,这些处理会降低传输的性能,使得处理速度相对变慢。同时由于传输时间加长,接收端单板上的进程会占用较多的CPU时间进行接收处理,这样还会影响到接收端其他进程的处理,这样长时间影响业务是难以忍受的。
此外,对于通信系统而言,通信网中所存在的单板数目庞大,而TCP仅仅在两个点之间实现可靠传输,因此当通信网中间目标机 数量巨大的时候传输只能逐点的进行,其时间复杂度随着设备数目的增多线性增加,效率比较低。
有些系统在实现时采用多任务方式实现数据发送。这类通常使发送端被动等待接收端的请求,为每个数据请求分配一个工作任务进行处理,该工作任务守护在一个TCP连接上,进行数据的发送。由多个工作任务同时并行发送处理,这样可以一定程度上提高发送端的发送能力。虽然这种方法可以同时在多个TCP连接上发送数据,实际上并非支持的并发任务数目越多越好,由于发送端受到存储设备速度的影响,实际上所有的TCP连接的发送速度之和是低于存储设备的读写速度的。而且当并发的任务数目增加时,由于存在多任务下的任务切换以及底层互斥操作的影响,发送端的发送能力反而会随着任务的增多而降低。同时仅仅依靠提高并发的数量,会使得发送端长时间内保存大量的连接,在系统规模加大时,这种拥塞使得其他处理机长期无法得到数据,降低了吞吐率。
IP组播是在IP网络中指将一个IP数据报向一个主机组进行点到多点的通信方式,该主机组是由一个单独的IP目的地址标记的多个或零个主机。一个组播数据报被尽可能地传递给它的目的主机组的所有成员,就像常规的单播IP数据报一样,但只发送一份数据。传送过程中需要组播路由器将数据复制传送给需要数据的主机。
相比较下,单播是一个发送者将数据发送给一个接受者,如果要发给多个接收者,需将数据重复发送多次。显然组播将减少带宽的占用。广播虽然也能一次发送给多个接收者,但其接受者是全体网络,很多用户对这些数据是不关心的,这样对带宽的占用较大。而组播既可以发送给特定的一组成员也可以在大型网络中使用,同时对带宽的占用也较小。
虽然组播的优点比较明显,但也存在缺点。最大的缺陷是组播是基于UDP传送的,不能保证数据报能完好无损的到达目的组所有成员,也不能保证它以相对于其它数据报同样的顺序到达。针对通信系统中对文件传输的高可靠性要求,仅仅采用组播方式进行传输并不能满足需要。
发明内容
针对现有技术中的问题,本发明提供了一种文件组播传输方法和系统,通过接收端和发送端之间进行少量交互控制来实现组播的可靠传输,并通过在收端采用缓冲区分别提高接收和文件写入的速度,从而实现文件的高效可靠的分发。
根据本发明的一个方面,文件组播传输方法包括以下步骤:步骤一,当发送端处理机启动文件的组播传输时,初始化组播控制结构表,以确定作为文件的组播传输成员的一个或多个接收端处理机;步骤二,根据组播控制结构表,发送端处理机向一个或多个接收端处理机发送预传输信息,并将关于将要进行组播传输的文件的数据包填入组播数据包结构表中;步骤三,在填写完组播数据包结构表之后,发送端处理机采用组播方式发送数据包,并将数据包放入发送端处理机的发送缓冲区中;步骤四,在接收到数据包之后,一个或多个接收端处理机向发送端处理机反馈数据包接收确认消息,并将数据包放入一个或多个接收端处理机的接收缓冲区中;以及步骤五,根据组播数据包结构表,一个或多个接收端处理机判断组播传输是否完成,并在确定组播传输完成后,将接收到的数据包写入存储设备并清空接收缓冲区。
在该方法中,组播控制结构表包括IP地址信息、状态标志信息、和应答标志数组信息,其中,IP地址信息对应一个或多个接收端处理机中的一个接收端处理机的IP地址;状态标志信息对应IP地址信息对应的接收端处理机的状态;以及应答标志数组信息对应发送缓冲区中的数据包是否收到接收端处理机的应答。
组播数据包结构表包括:数据包的类型、将要进行组播传输的文件的大小、将要进行组播传输的文件中的数据及其在文件中的偏移。
另外,在步骤一中还执行以下处理:在确定作为文件的组播传输成员的一个或多个接收端处理机之后,发送端处理机向一个或多个接收端处理机发送通知加入组播传输消息;在接收到通知加入组播传输消息后,一个或多个接收端处理机判断是否需要接收文件;以及确定需要接收文件的接收端处理机加入发送端处理机的组播组,并通过单播的方式向发送端处理机返回确认加入组播传输信息。
其中,发送端处理机向一个或多个接收端处理机发送通知加入组播传输消息的方式至少包括:单播逐点或组播。
在步骤四中,还执行以下处理:根据一个或多个接收端处理机的数据包接收确认消息,发送端处理机确定是否需要重传数据包,直至组播组中的所有的接收端处理机都确认收到数据包。
在本方法中,当一个或多个接收端处理机中的任一个没有返回数据包接收确认消息、确认加入组播传输信息、或确认收到数据包的信息时,发送端处理机将任一个接收端处理机的状态标志信息设为无响应。
本发明还提供了一种文件组播传输系统,包括:初始化装置,用于当发送端处理机启动文件的组播传输时,初始化组播控制结构表,以确定作为文件的组播传输成员的一个或多个接收端处理机;预传输装置,与初始化装置相连,用于根据初始化装置中的组播控制结构表,向一个或多个接收端处理机发送预传输信息,并将关于 将要进行组播传输的文件的数据包填入组播数据包结构表中;数据包发送装置,与预传输装置相连,用于在预传输装置填写完组播数据包结构表之后,采用组播方式发送数据包,并将数据包放入发送端处理机的发送缓冲区中;接收反馈装置,与数据包发送装置相连,用于在接收到数据包发送装置发送的数据包之后,向发送端处理机反馈数据包接收确认消息,并将数据包放入一个或多个接收端处理机的接收缓冲区中;以及数据写入装置,与接收反馈装置相连,用于根据组播数据包结构表,判断组播传输是否完成,并在确定组播传输完成后,将接收到的数据包写入存储设备并清空接收缓冲区。
在初始化装置中还包括:通知加入模块,用于在确定作为文件的组播传输成员的一个或多个接收端处理机之后,向一个或多个接收端处理机发送通知加入组播传输消息;判断模块,用于在一个或多个接收端处理机接收到通知加入组播传输消息后,判断是否需要接收文件;以及确认加入模块,用于当一个或多个接收端处理机确定需要接收文件时,通过单播的方式向发送端处理机返回确认加入组播传输信息。
在接收反馈装置中还包括:重传确定模块,用于根据一个或多个接收端处理机的数据包接收确认消息,确定发送端处理机是否需要重传数据包。
因而,通过本发明,通过采用缓冲区技术减少了接收端和发送端之间的交互,并且缓冲区大小可以设置,在接收主机数目较多的情况下,降低了控制消息对带宽的占用率,提高了文件分发的整体速度。同时在接收端对数据接收和写存储设备进行了分离,提高了传输和写入的并行度,并且整个控制过程比较简单,适合文件的大范围传输,有效克服了现有文件传输方法的费时费力、在传输大批文件时容易产生操作纰漏的问题。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是根据本发明的文件组播传输方法的流程图;
图2是本发明的文件组播传输方法所涉及的设备网络结构示意图;
图3是组播控制表结构示意图;
图4是组播数据包结构示意图;
图5是根据本发明实施例的文件组播传输处理过程的流程示意图;
图6是文件组播传输方法中接收端处理过程的流程示意图;以及
图7是根据本发明的文件组播传输系统的框图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明的基本思想在于,处理机的初始化,包括发送端和接收端所处组播组的初始化,发送端和接收端之间配合,完成数据的传输,以及接收端收到数据之后采用缓冲区技术以及写操作分离完成文件写入。
图1是根据本发明的文件组播传输方法的流程图。如图1所示,该方法包括以下步骤:
步骤S102,当发送端处理机启动文件的组播传输时,初始化组播控制结构表,以确定作为文件的组播传输成员的一个或多个接收端处理机;
步骤S104,根据组播控制结构表,发送端处理机向接收端处理机发送预传输信息,并将关于将要进行组播传输的文件的数据包填入组播数据包结构表中;
步骤S106,在填写完组播数据包结构表之后,发送端处理机采用组播方式发送数据包,并将数据包放入发送端处理机的发送缓冲区中;
步骤S108,在接收到数据包之后,接收端处理机向发送端处理机反馈数据包接收确认消息,并将数据包放入接收端处理机的接收缓冲区中;以及
步骤S110,根据组播数据包结构表,接收端处理机判断组播传输是否完成,并在确定组播传输完成后,将接收到的数据包写入存储设备并清空接收缓冲区。
在该方法中,组播控制结构表至少包括IP地址信息、状态标志信息、和应答标志数组信息,其中,IP地址信息对应一个或多个接收端处理机中的一个接收端处理机的IP地址;状态标志信息对应IP地址信息对应的接收端处理机的状态;以及应答标志数组信息对应发送缓冲区中的数据包是否收到接收端处理机的应答(如图3所示)。
组播数据包结构表至少包括:数据包的类型、将要进行组播传输的文件的大小、将要进行组播传输的文件中的数据及其在文件中的偏移(如图4所示)。
另外,在步骤一中还执行以下处理:在确定作为文件的组播传输成员的接收端处理机之后,发送端接收机向接收端处理机发送通知加入组播传输消息;在接收到通知接入组播传输消息后,接收端处理机判断是否需要接收文件;以及确定需要接收文件的接收端处理机加入发送端处理机的组播组,并通过单播的方式向发送端接收机返回确认加入组播传输信息。
其中,发送端接收机向接收端处理机发送通知加入组播传输消息的方式至少包括:单播逐点和组播。
在步骤四中,还执行以下处理:根据接收端处理机的数据包接收确认消息,发送端处理机确定是否需要重传数据包,直至组播组中的所有的接收端处理机都确认收到数据包。
在本方法中,当一个或多个接收端处理机中的任一个没有返回数据包接收确认消息、确认加入组播传输信息、以及确认收到数据 包的信息时,发送端接收机将任一个接收端处理机的状态标志信息设为无响应。
在后续的组播传输过程中,发送端处理机不再关注任一个接收端处理机的状态。
图2是本发明的文件组播传输方法所涉及的设备网络结构示意图。如图2所示,A为组播发送端处理机,B,C,D为接收端处理机。它们中间通过支持组播的IP网络进行连接。
图3是组播控制表结构示意图,图4是组播数据包结构示意图,以及图5是根据本发明实施例的文件组播传输处理过程的流程示意图。以下将结合图3至图5,对本发明的实施例进行详细描述。
如图5所示,具体包括以下步骤:
步骤S502,在发送端启动组播任务时,初始化一个组播控制表结构,用来控制当前组播任务,其中,组播控制表表项结构如图3所示,包括目标机地址,目标机状态标志,目标机应答标志数组三部分,其中,目标机地址描述本次组播中一个目标机所对应的IP地址,目标机状态标志描述该IP对应的目标机是否在线,目标机应答标志数组的成员用来表示发送端的缓冲区中的数据包是否收到了该目标机的应答;
步骤S504,在发送端A完成发送控制信息初始化后,首先通知接收端B,C加入本次组播所在的组播组,这个通知消息,可以采用单播逐点进行,也可以通过所有主机组播组组播发送,通知消息发送完成之后会设置定时器T1,等待接收端的应答,当T1到时之后,重新发出通知加入组播组消息,防止通知消息丢失,当发生几次超时之后,将控制表中依然没有应答的主机对应的表项的目标机状态标志字段设置为无响应,不再关注其状态,开始传输数据;
步骤S506,接收端B,C收到这个消息后,B,C判断需要接收数据后,加入组播组,并通过单播的方式给予A以应答;
步骤S508,A收到B,C应答之后,在组播控制表中间增加接收组播的主机所对应的表项并检查组播控制表,当收到所有的应答之后,发送端发送一个预传输消息,通知接收端发送方已经准备完成。并在等待一段时间(几个毫秒级)之后,开始发送数据,接收端B,C收到预传输消息后,B准备进行数据传输,同时设置一个相对T1而言较大的定时器T2(通常为分钟级),T2的作用是检测是否长时间没有收到数据包,当T2到时时,认为发送端有异常,接收端退出组播组,发送端读取数据包,将其填入组播包结构,数据包结构如图4所示,其中包括数据包类型,本次传输的文件大小,本次传输的数据在整个文件中的偏移,本次传输的数据体这几个部分;
步骤S510,采用组播方式发送数据,发送完成后将数据包放入缓冲区,随后继续发送下一个包,直至发送缓冲区满或者传输完数据,同时清空组播控制表中间对应表项的目标机应答标志数组的所有成员为未收到应答,并让发送进程等待一段时间(几个毫秒级)后发送一个请求反馈消息,并设置一个定时器T3进行等待,T3超时之后如果发送端A依然无法收到B的确认,A就重发请求反馈消息,如果多次重传请求反馈消息后仍然无法收到B的反馈确认消息,A将组播控制表中B机对应表项的目标机状态标志字段设置为无响应,后续组播不再关注B的状态;
步骤S512,接收端B收到数据后根据包号将数据包放入接收缓冲区的对应位置,也表明发送端A正常,重置T2,当B的接收缓冲区收满数据或者收完数据,就将收到的数据进行提交,用来写入存储设备,此时不清除缓冲区,以防止给A的反馈丢失,只有当再次收到在下一个序号的数据包的时候,才对缓冲区信息进行清空, 当收到A的请求反馈消息时,B按照当前收包的情况给发送端A应答,这个应答包含当前接收端的所有的缓冲区中的收包信息;
步骤S514,A收到B的反馈信息后,按照B反馈的信息确定需要重传的包,并进行重传,针对重传的包也需要设置定时器T4,对每个重传的包,接收方依然需要进行应答确认,直至重传结束,如果多次重传后B仍然无法收到这个包,A将组播控制表中B机对应表项的目标机状态标志字段设置为无响应,后续组播不再关注B的状态,继续进行下面的发送,直至所有目标机都无响应或者发送完毕;以及
步骤S516,在收到数据包之后,接收端B的处理通过两个部分来进行处理,任务T_Receiver负责接收组播数据包,判定当前数据包有效后,将数据包放入接收缓冲区RecvBuf。当缓冲区满或者数据接收完成之后,利用消息队列将消息逐个转给T_Writer进行写处理。这样的划分使得整个系统尽量处于传输状态,防止因为接收端的写操作而使得整个系统处于停滞等待。
图6是文件组播传输方法中接收端处理过程的流程示意图,如图6所示,在T_Writer进行写操作时,为提高存储设备写速度,采用了多包合并写入的方式,即只使用一个写缓冲区WriteBuf,当放满缓冲区或者接收数据完成之后一次将数据从缓冲区内写入存储设备,从而减少了外设的操作,提高了写入的时间。为了确保读写异常的上报,T_Writer可以主动向发送端发出读写操作异常的反馈。这样可以确保了写入动作的正确性的检测。同时,参考文件操作的特性,接收端的T_Writer进程在进行写操作时采用打开文件写入数据后不关闭文件句柄,直到文件接收完成之后才关闭句柄,这样可以减少大量文件操作OPEN,SEEK的操作时间,当文件较大时可以进一步提高速度。
图7是根据本发明的文件组播传输系统700的框图。如图7所示,该系统包括:初始化装置702,用于当发送端处理机启动文件的组播传输时,初始化组播控制结构表,以确定作为文件的组播传输成员的一个或多个接收端处理机;预传输装置704,与初始化装置702相连,用于根据初始化装置702中的组播控制结构表,向一个或多个接收端处理机发送预传输信息,并将关于将要进行组播传输的文件的数据包填入组播数据包结构表中;数据包发送装置706,与预传输装置704相连,用于在预传输装置704填写完组播数据包结构表之后,采用组播方式发送数据包,并将数据包放入发送端处理机的发送缓冲区中;接收反馈装置708,与数据包发送装置706相连,用于在接收到数据包发送装置706发送的数据包之后,向发送端处理机反馈数据包接收确认消息,并将数据包放入一个或多个接收端处理机的接收缓冲区中;以及数据写入装置710,与接收反馈装置708相连,用于根据组播数据包结构表,判断组播传输是否完成,并在确定组播传输完成后,将接收到的数据包写入存储设备并清空接收缓冲区。
组播控制结构表至少包括IP地址信息、状态标志信息、和应答标志数组信息,其中,IP地址信息对应一个或多个接收端处理机中的一个接收端处理机的IP地址;状态标志信息对应IP地址信息对应的接收端处理机的状态;以及应答标志数组信息对应发送缓冲区中的数据包是否收到接收端处理机的应答。
组播数据包结构表至少包括:数据包的类型、将要进行组播传输的文件的大小、将要进行组播传输的文件中的数据及其在文件中的偏移。
在初始化装置702中还包括:通知加入模块,用于在确定作为文件的组播传输成员的一个或多个接收端处理机之后,向一个或多个接收端处理机发送通知加入组播传输消息;判断模块,用于在一 个或多个接收端处理机接收到通知接入组播传输消息后,判断是否需要接收文件;以及确认加入模块,用于当一个或多个接收端处理机确定需要接收文件时,通过单播的方式向发送端接收机返回确认加入组播传输信息。
其中,通知加入模块发送通知加入组播传输消息的方式至少包括:单播逐点和组播。
在接收反馈装置708中还包括:重传确定模块,用于根据一个或多个接收端处理机的数据包接收确认消息,确定发送端处理机是否需要重传数据包。
综上所述,本发明通过采用缓冲区技术减少了接收端和发送端之间的交互,并且缓冲区大小可以设置,缓冲区的大小数值为1时是简单的停等传送,大于1时是一次应答多个数据包,这样就可以减少应答次数,在接收主机数目较多的情况下,降低了控制消息对带宽的占用率,提高了文件分发的整体速度。同时,在接收端对数据接收和写存储设备进行了分离,提高了传输和写入的并行度。并且整个控制过程比较简单,适合文件的大范围传输,有效克服了现有文件传输方法的费时费力,在传输大批文件时容易产生操作纰漏的问题。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种文件组播传输方法,用于在发送端处理机和一个或多个接收端处理机之间实现文件的组播传输,其特征在于,包括以下步骤:
步骤一,当所述发送端处理机启动所述文件的组播传输时,初始化组播控制结构表,以确定作为所述文件的组播传输成员的所述一个或多个接收端处理机;
步骤二,根据所述组播控制结构表,所述发送端处理机向所述一个或多个接收端处理机发送预传输信息,并将关于将要进行组播传输的所述文件的数据包填入组播数据包结构表中;
步骤三,在填写完所述组播数据包结构表之后,所述发送端处理机采用组播方式发送所述数据包,并将所述数据包放入所述发送端处理机的发送缓冲区中;
步骤四,在接收到所述数据包之后,所述一个或多个接收端处理机向所述发送端处理机反馈数据包接收确认消息,并将所述数据包放入所述一个或多个接收端处理机的接收缓冲区中;以及
步骤五,根据所述组播数据包结构表,所述一个或多个接收端处理机判断所述组播传输是否完成,并在确定所述组播传输完成后,将接收到的所述数据包写入存储设备并清空所述接收缓冲区。
2.根据权利要求1所述的方法,其特征在于,所述组播控制结构表包括IP地址信息、状态标志信息、和应答标志数组信息,其中,
所述IP地址信息对应所述一个或多个接收端处理机中的一个接收端处理机的IP地址;
所述状态标志信息对应所述IP地址信息对应的所述接收端处理机的状态;以及
所述应答标志数组信息对应所述发送缓冲区中的数据包是否收到所述接收端处理机的应答。
3.根据权利要求1所述的方法,其特征在于,所述组播数据包结构表包括:所述数据包的类型、将要进行组播传输的所述文件的大小、将要进行组播传输的所述文件中的数据及其在所述文件中的偏移。
4.根据权利要求1所述的方法,其特征在于,在所述步骤一中还执行以下处理:
在确定作为所述文件的组播传输成员的所述一个或多个接收端处理机之后,所述发送端处理机向所述一个或多个接收端处理机发送通知加入组播传输消息;
在接收到所述通知加入组播传输消息后,所述一个或多个接收端处理机判断是否需要接收所述文件;以及
确定需要接收所述文件的接收端处理机加入所述发送端处理机的组播组,并通过单播的方式向所述发送端处理机返回确认加入组播传输信息。
5.根据权利要求4所述的方法,其特征在于,所述组播控制结构表包括IP地址信息、状态标志信息、和应答标志数组信息,其中,
所述IP地址信息对应所述一个或多个接收端处理机中的一个接收端处理机的IP地址;
所述状态标志信息对应所述IP地址信息对应的所述接收端处理机的状态;以及
所述应答标志数组信息对应所述发送缓冲区中的数据包是否收到所述接收端处理机的应答。
6.根据权利要求4所述的方法,其特征在于,所述发送端处理机向所述一个或多个接收端处理机发送通知加入组播传输消息的方式至少包括:单播逐点或组播。
7.根据权利要求4所述的方法,其特征在于,在所述步骤四中,还执行以下处理:
根据所述一个或多个接收端处理机的所述数据包接收确认消息,所述发送端处理机确定是否需要重传所述数据包,直至所述组播组中的所有的接收端处理机都确认收到所述数据包。
8.根据权利要求5所述的方法,其特征在于,当所述一个或多个接收端处理机中的任一个没有返回所述数据包接收确认消息、所述确认加入组播传输信息、或确认收到所述数据包的信息时,
所述发送端处理机将所述任一个接收端处理机的所述状态标志信息设为无响应。
9.一种文件组播传输系统,用于在发送端处理机和一个或多个接收端处理机之间实现文件的组播传输,其特征在于,包括:
初始化装置,用于当所述发送端处理机启动所述文件的组播传输时,初始化组播控制结构表,以确定作为所述文件的组播传输成员的所述一个或多个接收端处理机;
预传输装置,与所述初始化装置相连,用于根据所述初始化装置中的所述组播控制结构表,向所述一个或多个接收端处理机发送预传输信息,并将关于将要进行组播传输的所述文件的数据包填入组播数据包结构表中;
数据包发送装置,与所述预传输装置相连,用于在所述预传输装置填写完所述组播数据包结构表之后,采用组播方式发送所述数据包,并将所述数据包放入所述发送端处理机的发送缓冲区中;
接收反馈装置,与所述数据包发送装置相连,用于在接收到所述数据包发送装置发送的所述数据包之后,向所述发送端处理机反馈数据包接收确认消息,并将所述数据包放入所述一个或多个接收端处理机的接收缓冲区中;以及
数据写入装置,与所述接收反馈装置相连,用于根据所述组播数据包结构表,判断所述组播传输是否完成,并在确定所述组播传输完成后,将接收到的所述数据包写入存储设备并清空所述接收缓冲区。
10.根据权利要求9所述的系统,其特征在于,在所述初始化装置中还包括:
通知加入模块,用于在确定作为所述文件的组播传输成员的所述一个或多个接收端处理机之后,向所述一个或多个接收端处理机发送通知加入组播传输消息;
判断模块,用于在所述一个或多个接收端处理机接收到所述通知加入组播传输消息后,判断是否需要接收所述文件;以及
确认加入模块,用于当所述一个或多个接收端处理机确定需要接收所述文件时,通过单播的方式向所述发送端处理机返回确认加入组播传输信息。
11.根据权利要求10所述的系统,其特征在于,在所述接收反馈装置中还包括:
重传确定模块,用于根据所述一个或多个接收端处理机的所述数据包接收确认消息,确定所述发送端处理机是否需要重传所述数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100041773A CN101222344B (zh) | 2008-01-23 | 2008-01-23 | 文件组播传输方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100041773A CN101222344B (zh) | 2008-01-23 | 2008-01-23 | 文件组播传输方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101222344A CN101222344A (zh) | 2008-07-16 |
CN101222344B true CN101222344B (zh) | 2010-12-29 |
Family
ID=39631937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100041773A Expired - Fee Related CN101222344B (zh) | 2008-01-23 | 2008-01-23 | 文件组播传输方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101222344B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025712B (zh) * | 2009-09-15 | 2013-08-07 | 上海华为技术有限公司 | 一种数据更新方法、装置和系统 |
CN106059936B (zh) * | 2016-08-10 | 2019-09-27 | 北京海誉动想科技股份有限公司 | 云系统组播文件的方法及装置 |
CN108234327A (zh) * | 2016-12-13 | 2018-06-29 | 英业达科技有限公司 | 数据传输系统、数据接收方法、及数据传输方法 |
CN111180049B (zh) * | 2019-12-31 | 2024-05-31 | 广州市华奕电子科技有限公司 | 医学影像数据一对多快速传送方法 |
CN111865625A (zh) * | 2020-07-17 | 2020-10-30 | 大连飞创信息技术有限公司 | 一种可靠组播软件实现方法 |
CN114584262B (zh) * | 2020-11-30 | 2024-04-16 | 华为技术有限公司 | 数据传输方法和相关设备 |
CN113315815B (zh) * | 2021-05-10 | 2023-03-03 | 华锐分布式(北京)技术有限公司 | 文件传输方法、装置、计算机设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1403929A (zh) * | 2001-08-27 | 2003-03-19 | 日本电气株式会社 | xDSL适配装置,多点传送发布系统和数据发布方法 |
CN1498480A (zh) * | 2001-04-20 | 2004-05-19 | �Ҵ���˾ | 多播传输的有效处理 |
-
2008
- 2008-01-23 CN CN2008100041773A patent/CN101222344B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1498480A (zh) * | 2001-04-20 | 2004-05-19 | �Ҵ���˾ | 多播传输的有效处理 |
CN1403929A (zh) * | 2001-08-27 | 2003-03-19 | 日本电气株式会社 | xDSL适配装置,多点传送发布系统和数据发布方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101222344A (zh) | 2008-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101222344B (zh) | 文件组播传输方法和系统 | |
US9003053B2 (en) | Message acceleration | |
US6981032B2 (en) | Enhanced multicast-based web server | |
US9137180B2 (en) | Method for data delivery in a network | |
EP1872534B1 (en) | System and method of message traffic optimization | |
CN101340268B (zh) | 节点间通信确认机制的实现方法和实现系统 | |
RU2004109133A (ru) | Улучшение доступности и масштабируемости в системе передачи сообщений способом, прозрачным для приложения | |
CN105119810A (zh) | 一种基于xmpp协议的即时通讯方法及系统 | |
CN103684974B (zh) | 邮件处理方法及系统 | |
CN103780363A (zh) | 消息再传输装置及方法 | |
US7536468B2 (en) | Interface method, system, and program product for facilitating layering of a data communications protocol over an active message layer protocol | |
CN104205735A (zh) | 用于分布式信息技术体系结构的通信传输协议 | |
CN101510816A (zh) | 基于路径关联化的多路径并行传输方法 | |
CN103314552B (zh) | 使用非统一接收器的基于组的组播方法 | |
CN103338184A (zh) | 数据发送方法及装置、数据接收装置以及数据传输系统 | |
KR20130065619A (ko) | 송신 노드로부터 목적지 노드로의 데이터 전송 방법 | |
JP2012186839A (ja) | Udp基盤の通信方法 | |
CN101808037B (zh) | 交换网中流量管理的方法和装置 | |
CN106911485A (zh) | 用于可靠组播传输数据的方法及设备 | |
US8055782B2 (en) | System and method for generating exception delay messages when messages are delayed | |
JP5039677B2 (ja) | エッジノードおよび帯域制御方法 | |
CN102685143A (zh) | 音频数据的传输方法以及客户端、服务器 | |
CN101742451A (zh) | 计费信息发送方法、系统和装置 | |
JP2009212796A (ja) | 送信装置、データ転送システム、データ転送方法およびデータ転送プログラム | |
CN102238493A (zh) | 基于m2m平台的有序收发消息的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101229 Termination date: 20180123 |
|
CF01 | Termination of patent right due to non-payment of annual fee |