一种控制数据发送的方法、装置及系统制造方法及图纸

技术编号:9644194 阅读:71 留言:0更新日期:2014-02-07 04:45
本发明专利技术公开了一种控制数据发送的方法、装置及系统,涉及数据通信技术领域,在数据发送过程中,显著缓解了资源浪费的问题,降低了系统开销。本发明专利技术的具体实施例包括:当确定检测机制可以发送业务数据时,从缓存中确定待发送业务数据的索引,根据该待发送业务数据的索引获取与该索引对应的待发送数据,并通过通信通道发送该待发送数据。本发明专利技术实施例提供的技术方案主要应用于数据发送流程中。

【技术实现步骤摘要】
一种控制数据发送的方法、装置及系统
本专利技术涉及数据通信
,尤其涉及一种控制数据发送的方法、装置及系统。
技术介绍
目前,在数据通信过程中,当发送端设备发送数据时,会出现无法发送数据的情况,造成这一情况的原因是由于通信通道发送缓冲区远远小于发送端设备要发送的数据量,比如,通信通道带宽有限、流控、发送/接收缓冲区已满、网络出现震荡等情况都导致发送缓冲区小于待发送的数据量,进而导致发送端设备无法发送数据这一问题的出现。这时,发送端设备就会将待发送的数据先缓存起来,直到通信通道允许发送新数据为止,这样虽然发送端设备能够将需要发送的数据发送出去,但是同时也使得发送端设备必须要缓存大量的数据,这就会造成大量的资源浪费,也就加大了发送端设备系统的开销。
技术实现思路
本专利技术的实施例提供一种控制数据发送的方法、装置及系统,在数据发送过程中,显著缓解了资源浪费的问题,降低了系统开销。为达到上述目的,本专利技术的实施例采用如下技术方案:一种控制数据发送的方法,应用于发送端设备,包括:数据生产者模块与接收端设备的消费者模块建立通信通道,并创建与所述接收端设备的消费者模块对应的发送控制单元;所述发送控制单元当检测到所述通信通道允许发送业务数据时,依次根据缓存中的待发送业务数据的索引获取所述待发送业务数据,并生成新的待发送数据,通过所述通信通道,发送所述新的待发送数据到所述接收端设备。本专利技术的另一个目的,提供一种控制数据发送的装置,所述装置包括至少一个数据生产者模块,所述数据生产者模块,用于与接收端设备的消费者模块建立通信通道,并创建与所述接收端设备的消费者模块对应的发送控制单元;所述发送控制单元,用于当检测到所述通信通道允许发送业务数据时,依次根据缓存中的待发送业务数据的索引获取所述待发送业务数据,并生成新的待发送数据,通过所述通信通道,发送所述新的待发送数据到所述接收端设备。本专利技术的另一个目的,提供一种控制数据发送的系统,其特征在于,包括数据发送的装置和接收端设备。本专利技术实施例提供的控制数据发送的方法、装置及系统,当确定与接收端设备建立的通信通道可以发送业务数据时,从缓存中确定待发送业务数据的索引,根据该待发送业务数据的索引获取与该索引对应的待发送数据,并通过通信通道发送该待发送数据到接收端设备。与现有技术中,发送端设备必须要缓存所有的待发送数据,并在通信通道允许的情况下再发送这些数据相比,本专利技术实施例提供的技术方案,只需要缓存待发送数据的索引,索引的数据量小于与该索引对应的业务数据的数据量,从而显著缓解了资源浪费的问题,降低了系统开销。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术一实施例提供的一种控制数据发送的方法流程图;图2为本专利技术另一实施例提供的一种控制数据发送的方法流程图;图3为本专利技术另一实施例提供的一种控制数据发送的方法流程图;图4为本专利技术另一实施例提供的一种消除重复发送数据的方法流程图;图5为本专利技术另一实施例提供的一种控制数据发送系统的组成示意图;图6为本专利技术另一实施例提供的一种控制数据发送装置的组成示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术一实施例提供了一种控制数据发送的方法,如图1所示,该方法包括:101、数据生产者模块与接收端设备的消费者模块建立通信通道,并创建与接收端设备的消费者模块对应的发送控制单元。其中,通信通道用于实现业务数据的接收和发送,优选的数据传输模块为可靠的传输模块,比如可以包括:TCP/TIPC/SCTP/UNIX/LLC2等传输机制中的任意一种或几种。值得说明的是,通信通道还可以呈现为套接字socket、文件描述符、句柄等。102、发送控制单元当检测到通信通道允许发送业务数据时,依次根据缓存中的待发送业务数据的索引获取待发送业务数据,并生成新的待发送数据,通过通信通道,发送新的待发送数据到接收端设备。具体的,由于待发送业务数据的索引是数据生产者模块的数据产生单元根据待发送业务数据生成的,则待发送业务数据与该索引是一一对应的,待发送业务数据的索引由待发送业务数据产生单元发送到发送控制单元,发送控制单元从而根据已缓存的待发送业务数据的索引可以在内存、业务数据库或者应用文件等介质中,获取到待发送的业务数据,进而将获取到的业务数据缓存起来,根据待发送业务数据的索引以及获取到的业务数据生成新的待发送数据,进行发送。本专利技术实施例提供的控制数据发送的方法,当确定检测机制可以发送业务数据时,从缓存中确定待发送业务数据的索引,根据该待发送业务数据的索引获取与该索引对应的待发送数据,生成新的待发送数据,并通过通信通道发送该新的待发送数据。与现有技术中,发送端设备必须要缓存所有的待发送数据,并在通信通道允许的情况下,在发送这些数据相比,本专利技术实施例提供的技术方案,只需要缓存待发送数据的索引,索引的数据量小于与该索引对应的业务数据的数据量,从而显著缓解了资源浪费的问题,降低了系统开销。本专利技术另一实施例提供了一种控制数据发送的方法,如图2所示,该方法包括:201、数据生产者模块的数据产生单元根据待发送业务数据生成待发送业务数据的索引,并发送至发送控制单元。可选的,该方法由产生业务数据的发送端设备执行,该业务数据可以是该发送端设备的数据产生模块接收的外界网络或者其它发送端设备发送的数据,或者是该发送端设备的数据产生模块内部发生变化的数据。优选的,按照业务数据的组织方式,生成与该业务数据对应的索引。202、发送控制单元保存业务数据的索引至预设缓存结构中。其中,预设缓存结构至少包括:先进先出队列和树形结构。具体的,在缓存该业务数据的索引时,按照以下两种方式进行结合存储:第一种存储方式:按照获取到业务数据的以先进先出队列的方式顺序存放;第二中存储方式:将索引按照树形结构存放。进一步的,可以根据用户或者系统设定的其它存放规则来存储业务数据的索引。值得说明的是,当采用第一种存储方式时,能够保证业务数据按照获取到的顺序依次发送给业务数据的接收端,从而简化了业务数据发送控制与调度的处理逻辑;当采用第二种存储方式时,在清除特定的索引数据时,能够提高该业务数据的索引的查找效率。203、当检测到通信通道允许发送业务数据时,根据缓存的待发送业务数据的索引获取待发送业务数据,并生成新的待发送数据,通过通信通道,发送新的待发送数据到接收端设备。值得说明的是,在通过通信通道,发送待发送数据过程中,还包括:以下三种情况:第一种情况:当数据生产者模块的数据产生单元对相同待发送业务数据进行两次或者多次操作时,由于针对每一次操作都会发送该待发送业务数据的索引到发送控制单元,发送控制单元只保留数据产生单元最后一次发送的待发送业务数据的索引。具体的,当对同一份业务数据进行多本文档来自技高网...

【技术保护点】
一种控制数据发送的方法,应用于发送端设备,其特征在于,包括:数据生产者模块与接收端设备的消费者模块建立通信通道,并创建与所述接收端设备的消费者模块对应的发送控制单元;所述发送控制单元当检测到所述通信通道允许发送业务数据时,依次根据缓存中的待发送业务数据的索引获取所述待发送业务数据,并生成新的待发送数据,通过所述通信通道,发送所述新的待发送数据到所述接收端设备。

【技术特征摘要】
1.一种控制数据发送的方法,应用于发送端设备,其特征在于,包括:数据生产者模块与接收端设备的消费者模块建立通信通道,并创建与所述接收端设备的消费者模块对应的发送控制单元;所述发送控制单元当检测到所述通信通道允许发送业务数据时,依次根据缓存中的待发送业务数据的索引获取所述待发送业务数据,并生成新的待发送数据,通过所述通信通道,发送所述新的待发送数据到所述接收端设备;在所述发送控制单元当检测到所述通信通道允许发送业务数据之前,所述方法还包括:数据产生单元根据所述待发送业务数据的操作指令,生成附加信息,将所述附加信息和根据所述待发送业务数据生成的所述待发送业务数据的索引一起,发送至所述发送控制单元;所述发送控制单元接收所述数据产生单元发送的所述附加信息以及所述待发送业务数据的索引并保存至预设缓存结构中,根据所述附加信息以及获取的所述待发送业务数据,生成通过所述通信通道发送的新的待发送数据;所述发送控制单元从所述数据产生单元接收所述待发送业务数据的索引和所述附加信息后,所述方法还包括:当判断在所述预设缓存结构中保存有相同的所述待发送业务数据的索引时,以当前所接收的附加信息更新所述预设缓存结构中保存的所述待发送业务数据的索引对应的附加信息。2.根据权利要求1所述的控制数据发送的方法,其特征在于,在所述发送控制单元当检测到所述通信通道允许发送业务数据之前,所述方法还包括:数据生产者模块的数据产生单元根据待发送业务数据生成所述待发送业务数据的索引,并发送至所述发送控制单元;所述发送控制单元接收所述待发送业务数据的索引,并保存至预设缓存结构中;其中,所述预设缓存结构至少包括:先进先出队列和树形结构。3.根据权利要求1-2任一项所述的控制数据发送的方法,其特征在于,所述方法还包括:所述发送控制单元当检测到所述通信通道异常时,清除缓存中的所有待发送...

【专利技术属性】
技术研发人员:王佑刚蒋虎李永合
申请(专利权)人:迈普通信技术股份有限公司
类型:发明
国别省市:

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

1