一种实现通信处理的方法及装置制造方法及图纸

技术编号:10701241 阅读:123 留言:0更新日期:2014-12-03 10:32
本申请公开了一种实现通信处理的方法及装置,包括:为分布式控制器的各个连接建立相应的描述符控制块,还包括:当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。本发明专利技术通过为各连接建立相应描述符控制块,以描述符控制块的描述符数值作为索引,命中通信处理的行为方法,提高了I/O多路复用技术在分布式控制器中应用的效率;减少了通信处理过程中添加消息报文头的复杂过程,降低了通信过程的带宽消耗。

【技术实现步骤摘要】
一种实现通信处理的方法及装置
本申请涉及I/O多路复用技术,尤指一种分布式控制器中实现交互通信的方法及装置。
技术介绍
随着计算机技术的飞速发展,分布式多控制器设备逐步取代了传统的集中式控制器设备,进入了技术应用的核心领域。分布式多控制器在性能和可靠性方面都有很大进步,特别是在可靠性方面,传统的集中式控制器如果出现故障会导致整个设备瘫痪,造成严重的后果;分布式多控制器出现故障时,可以在业务正常运行的过程中更换故障部分的控制器。另外,多控制器之间还可以相互接管其他控制器的控制任务,可以通过交互实现业务的负载均衡,在设备的可靠性得到提高时,其处理业务的性能也相应提高。为使分布式多控制器设备作为一个整体,充分发挥其高可靠性和高性能的优势,在系统设计时,需要考虑控制器之间的交互通信。常用的交互通信方式有循环遍历方式、多进程或多线程方式及输入/输出(I/O)多路复用技术三种,由于分布式多控制器的各控制器之间存在多种服务类型的多种状态交互,结合资源耗费的考虑,将I/O多路复用技术应用于分布式多控制器具有明显的优势。I/O多路复用技术主要在大型网络服务器设备上使用,对服务器上各个不同类型的连接采用独立的服务侦听,在消息中需要针对不同的消息,添加相应的消息报文头,以确定收发地址、消息类型等内容,通过对消息的统一接收和解析,以提供各不同连接的相应的行为方法,实现交互通信的处理。然而,在分布式多控制器上使用I/O多路复用技术,多控制器之间需要在不同服务连接之间进行交互,对不同的连接,在连接通信过程中还伴随有状态的切换;对不同的连接及各连接不同的状态,都需要提供相应的行为方法,采用现有的对消息的统一接收和解析后,提供行为方法的方式,需要添加大量的消息报文头,占用大量的带宽;接收到消息后根据消息的最外层封装的消息头,需要判断此次消息请求的目的和行为方法,然后继续剥掉外层封装的消息头,取出携带的数据最下一步处理。处理方式为了能正确识别消息,就要求所有的消息数据都必须用固定格式的消息头部进行封装,接收消息者能够根据此固定的消息头判断对消息数据采取的行为方法。这种额外的消息头封装就增加了通信传输的数据流量,占用了更多的带宽,并且接收消息后解析消息头判断消息请求的目的和需要采取的行为方法,以及剥掉外层封装的消息头这些过程耗费较多计算时间,对分布式多控制器交互通信而言,过程过于复杂,影响了分布式多控制器设备的高效运行。
技术实现思路
为了解决上述问题,本专利技术提供一种实现通信处理的方法及装置,能够降低I/O多路复用技术在分布式多控制器上应用的复杂性,提高分布式多控制器设备交互通信的效率。为了达到本专利技术的目的,本申请提供一种实现通信处理的方法;包括:为分布式控制器的各个连接建立相应的描述符控制块,还包括:当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。进一步地,该方法之前还包括:预先确定各连接相应的描述符控制块的描述符数值;在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。进一步地,该方法还包括:存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。进一步地,该方法还包括,通过向量表对所述描述符控制块、描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系进行存储和更新。另一方面,本申请还提供一种实现通信处理的装置,包括:建立单元、映射单元和索引命中单元;其中,建立单元,用于为分布式控制器的各个连接建立相应的描述符控制块;获取单元,用于当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;索引命中单元,用于以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。进一步地,该装置还包括确定映射单元,用于预先确定各连接相应的描述符控制块的描述符数值;在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。进一步地,该装置还包括存储及更新单元,用于存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。与现有技术相比,本专利技术提供的技术方案,为分布式控制器的各个连接建立相应的描述符控制块,包括:当侦听到连接有请求事件时,获取该连接的描述符控制块;以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。本专利技术通过为各连接建立相应描述符控制块,以描述符控制块的描述符数值作为索引,命中通信处理的行为方法,提高了I/O多路复用技术在分布式控制器中应用的效率;减少了通信处理过程中添加消息报文头的复杂过程,降低了通信过程的带宽消耗。附图说明附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。图1为本专利技术实现通信处理的方法的流程图;图2为本专利技术实现通信处理的装置的结构框图。具体实施方式为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。图1为本专利技术实现通信处理的方法的流程图,如图1所示,为分布式控制器的各个连接建立相应的描述符控制块,这里,描述符控制块可以用C语言的结构体类型实现;在C++和JAVA语言中可以借助CLASS实现,根据不同的语言环境,有相应的内容,为本领域技术人员的公知常识。需要说明的是,通过为各个连接建立相应的描述符控制块,通过根据描述符控制块中的连接状态信息区分练级的各个交互阶段。包括:步骤100、当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值。本专利技术方法之前还包括:预先确定各连接相应的描述符控制块的描述符数值;在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。需要说明的是,不同的连接通过建立不同的描述符控制块进行区分,通过描述符控制块中的连接状态信息区分连接的各个交互阶段。另外,这里的行为方法是指进行通信处理的函数所表示的处理方法,根据分布式控制器的处理的具体情况,本领域技术人员可以对函数进行修改。根据描述符数值作为索引,命中通信处理的行为方法的过程,为本领域技术人员的惯用技术手段。例如采用向量表或者数组记录行为方法的值,用描述符数值作为向量表或数组的下标索引值,与控制块中连接状态信息相对应的行为方法就记录在对应的存储单元内。步骤101、以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的本文档来自技高网
...
一种实现通信处理的方法及装置

【技术保护点】
一种实现通信处理的方法,其特征在于,为分布式控制器的各个连接建立相应的描述符控制块,包括:当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。

【技术特征摘要】
1.一种实现通信处理的方法,其特征在于,为分布式控制器的各个连接建立相应的描述符控制块,包括:当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法;该方法之前还包括:预先确定各连接相应的描述符控制块的描述符数值;在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。2.根据权利要求1所述的方法,其特征在于,该方法还包括:存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。3.根据权利要求1所述的方法,其特征在于,该方法还包括,通过向量表对所述描述符控制块、描述符控制块中建立连接状态信息与进行通信处理的行为方法一一...

【专利技术属性】
技术研发人员:李美欣
申请(专利权)人:浪潮北京电子信息产业有限公司
类型:发明
国别省市:北京;11

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

1