CN104181842A - 一种实现通信处理的方法及装置 - Google Patents
一种实现通信处理的方法及装置 Download PDFInfo
- Publication number
- CN104181842A CN104181842A CN201410394928.2A CN201410394928A CN104181842A CN 104181842 A CN104181842 A CN 104181842A CN 201410394928 A CN201410394928 A CN 201410394928A CN 104181842 A CN104181842 A CN 104181842A
- Authority
- CN
- China
- Prior art keywords
- descriptor
- connection
- controll block
- state information
- connection state
- 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.)
- Granted
Links
Landscapes
- Communication Control (AREA)
Abstract
本申请公开了一种实现通信处理的方法及装置,包括:为分布式控制器的各个连接建立相应的描述符控制块,还包括:当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。本发明通过为各连接建立相应描述符控制块,以描述符控制块的描述符数值作为索引,命中通信处理的行为方法,提高了I/O多路复用技术在分布式控制器中应用的效率;减少了通信处理过程中添加消息报文头的复杂过程,降低了通信过程的带宽消耗。
Description
技术领域
本申请涉及I/O多路复用技术,尤指一种分布式控制器中实现交互通信的方法及装置。
背景技术
随着计算机技术的飞速发展,分布式多控制器设备逐步取代了传统的集中式控制器设备,进入了技术应用的核心领域。分布式多控制器在性能和可靠性方面都有很大进步,特别是在可靠性方面,传统的集中式控制器如果出现故障会导致整个设备瘫痪,造成严重的后果;分布式多控制器出现故障时,可以在业务正常运行的过程中更换故障部分的控制器。另外,多控制器之间还可以相互接管其他控制器的控制任务,可以通过交互实现业务的负载均衡,在设备的可靠性得到提高时,其处理业务的性能也相应提高。
为使分布式多控制器设备作为一个整体,充分发挥其高可靠性和高性能的优势,在系统设计时,需要考虑控制器时间的交互通信。常用的交互通信方式有循环遍历方式、多进程或多线程方式及输入/输出(I/O)多路复用技术三种,由于分布式多控制器的各控制器之间存在多种服务类型的多种状态交互,结合资源耗费的考虑,将I/O多路复用技术应用于分布式多控制器具有明显的优势。
I/O多路复用技术主要在大型网络服务器设备上使用,对服务器上各个不同类型的连接采用独立的服务侦听,在消息中需要针对不同的消息,添加相应的消息报文头,以确定收发地址、消息类型等内容,通过对消息的统一接收和解析,以提供各不同连接的相应的行为方法,实现交互通信的处理。然而,在分布式多控制器上使用I/O多路复用技术,多控制器之间需要在不同服务连接之间进行交互,对不同的连接,在连接通信过程中还伴随有状态的切换;对不同的连接及各连接不同的状态,都需要提供相应的行为方法,采用现有的对消息的统一接收和解析后,提供行为方法的方式,需要添加大量的消息报文头,占用大量的带宽;接收到消息后根据消息的最外层封装的消息头,需要判断此次消息请求的目的和行为方法,然后继续剥掉外层封装的消息头,取出携带的数据最下一步处理。处理方式为了能正确识别消息,就要求所有的消息数据都必须用固定格式的消息头部进行封装,接收消息者能够根据此固定的消息头判断对消息数据采取的行为方法。这种额外的消息头封装就增加了通信传输的数据流量,占用了更多的带宽,并且接收消息后解析消息头判断消息请求的目的和需要采取的行为方法,以及剥掉外层封装的消息头这些过程耗费较多计算时间,对分布式多控制器交互通信而言,过程过于复杂,影响了分布式多控制器设备的高效运行。
发明内容
为了解决上述问题,本发明提供一种实现通信处理的方法及装置,能够降低I/O多路复用技术在分布式多控制器上应用的复杂性,提高分布式多控制器设备交互通信的效率。
为了达到本发明的目的,本申请提供一种实现通信处理的方法;包括:为分布式控制器的各个连接建立相应的描述符控制块,还包括:
当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;
以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。
进一步地,该方法之前还包括:
预先确定各连接相应的描述符控制块的描述符数值;
在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。
进一步地,该方法还包括:存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;
当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。
进一步地,该方法还包括,通过向量表对所述描述符控制块、描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系进行存储和更新。
另一方面,本申请还提供一种实现通信处理的装置,包括:建立单元、映射单元和索引命中单元;其中,
建立单元,用于为分布式控制器的各个连接建立相应的描述符控制块;
获取单元,用于当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;
索引命中单元,用于以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。
进一步地,该装置还包括确定映射单元,用于预先确定各连接相应的描述符控制块的描述符数值;
在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。
进一步地,该装置还包括存储及更新单元,用于存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;
当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。
与现有技术相比,本发明提供的技术方案,为分布式控制器的各个连接建立相应的描述符控制块,包括:当侦听到连接有请求事件时,获取该连接的描述符控制块;以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。本发明通过为各连接建立相应描述符控制块,以描述符控制块的描述符数值作为索引,命中通信处理的行为方法,提高了I/O多路复用技术在分布式控制器中应用的效率;减少了通信处理过程中添加消息报文头的复杂过程,降低了通信过程的带宽消耗。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本发明实现通信处理的方法的流程图;
图2为本发明实现通信处理的装置的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1为本发明实现通信处理的方法的流程图,如图1所示,为分布式控制器的各个连接建立相应的描述符控制块,这里,描述符控制块可以用C语言的结构体类型实现;在C++和JAVA语言中可以借助CLASS实现,根据不同的语言环境,有相应的内容,为本领域技术人员的公知常识。
需要说明的是,通过为各个连接建立相应的描述符控制块,通过根据描述符控制块中的连接状态信息区分练级的各个交互阶段。
包括:
步骤100、当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值。
本发明方法之前还包括:
预先确定各连接相应的描述符控制块的描述符数值;
在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。
需要说明的是,不同的连接通过建立不同的描述符控制块进行区分,通过描述符控制块中的连接状态信息区分连接的各个交互阶段。另外,这里的行为方法是指进行通信处理的函数所表示的处理方法,根据分布式控制器的处理的具体情况,本领域技术人员可以对函数进行修改。根据描述符数值作为索引,命中通信处理的行为方法的过程,为本领域技术人员的惯用技术手段。例如采用向量表或者数组记录行为方法的值,用描述符数值作为向量表或数组的下标索引值,与控制块中连接状态信息相对应的行为方法就记录在对应的存储单元内。
步骤101、以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。
需要说明的是,获取分布式控制器的各控制连接及在控制块设置区分连接状态的信息属于本领域技术人员的惯用技术手段,主要通过控制器通过为各个控制器连接的交互阶段(例如、认证阶段、参数协商,根据控制器和使用环境的不同交互阶段也不同)设置相应的描述符控制块的描述符数值,并以描述符数值作为索引,命中通信处理的行为方法,减少了通信处理过程中添加消息报文头需要进行解析和判断的复杂过程,提高了通信处理的工作效率;另外,由于取消了消息报文头的传输,降低了通信过程的带宽消耗。
本发明方法还包括:存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;
当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。
优选的,通过向量表对所述描述符控制块、描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系进行存储和更新。
需要说明的是,通过向量表对描述符控制块、描述符控制块的连接状态信息与各交互阶段进行通信处理的行为方法一一对应的映射关系进行存储和更新,由于向量表大小设置可以根据连接的变化进行灵活扩展,因此,可以实现对连接的各个交互阶段的即时更新。
图2为本发明实现通信处理的装置的结构框图,如图2所示,包括:建立单元、映射单元和索引命中单元;其中,
建立单元,用于为分布式控制器的各个连接建立相应的描述符控制块;
获取单元,用于当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;
索引命中单元,用于以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。
本发明装置还包括确定映射单元,用于预先确定各连接相应的描述符控制块的描述符数值;
在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。
本发明装置还包括存储及更新单元,用于存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;
当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。
以下通过具体实施例,对本发明进行清楚详细的说明,实施例并不限定本发明的保护范围。
实施例1
本实施例以Linux系统中分布式控制器应用中,使用I/O多路复用技术进行交互通信时,epoll函数连接的通信处理为例,本实施例以向量表管理描述符、描述符数值与行为方法的一一对应的关系。
首先,建立向量表,在向量表中为分布式控制器的各个连接建立相应的描述符控制块;预先确定各连接相应的描述符控制块的描述符数值;在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。
其次,通过当前控制器的连接,以描述符数值作为索引及描述符控制块中的连接状态信息命中通信处理的行为方法。行为方法是指进行通信处理的函数所表示的处理方法,根据分布式控制器的处理的具体情况,本领域技术人员可以对函数进行修改。具体的,进行通信处理的函数包含有查询接口、插入接口、数据类型等指针函数。
当分布式控制器的各个连接的协议过程变化时,根据所述分布式控制器的各个连接的协议过程变化,更新建立连接状态信息与进行通信处理的行为方法。即,可以对连接状态信息,或行为方法进行增加、删除或修改,以实现根据连接的实际情况进行更新。
虽然本申请所揭露的实施方式如上,但所述的内容仅为便于理解本申请而采用的实施方式,并非用以限定本申请,如本发明实施方式中的具体的实现方法。任何本申请所属领域内的技术人员,在不脱离本申请所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本申请的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (7)
1.一种实现通信处理的方法,其特征在于,为分布式控制器的各个连接建立相应的描述符控制块,包括:
当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;
以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。
2.根据权利要求1所述的方法,其特征在于,该方法之前还包括:
预先确定各连接相应的描述符控制块的描述符数值;
在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。
3.根据权利要求1或2所述的方法,其特征在于,该方法还包括:存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;
当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。
4.根据权利要求1或2所述的方法,其特征在于,该方法还包括,通过向量表对所述描述符控制块、描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系进行存储和更新。
5.一种实现通信处理的装置,其特征在于,包括:建立单元、映射单元和索引命中单元;其中,
建立单元,用于为分布式控制器的各个连接建立相应的描述符控制块;
获取单元,用于当侦听到连接有请求事件时,获取该连接的描述符控制块的描述符数值;
索引命中单元,用于以描述符控制块描述符数值作为索引,根据描述符控制块中的连接状态信息及连接状态信息与通信处理的行为方法的映射关系,命中通信处理的行为方法。
6.根据权利要求5所述的装置,其特征在于,该装置还包括确定映射单元,用于预先确定各连接相应的描述符控制块的描述符数值;
在描述符控制块中建立连接状态信息与进行通信处理的行为方法一一对应的映射关系。
7.根据权利要求5或6所述的装置,其特征在于,该装置还包括存储及更新单元,用于存储所述描述符控制块、连接状态信息与进行通信处理的行为方法一一对应的映射关系;
当所述分布式控制器的各连接的协议过程变化时,根据所述分布式控制器的各连接的协议过程变化,更新连接状态信息及与连接状态信息对应的进行通信处理的行为方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410394928.2A CN104181842B (zh) | 2014-08-12 | 2014-08-12 | 一种实现通信处理的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410394928.2A CN104181842B (zh) | 2014-08-12 | 2014-08-12 | 一种实现通信处理的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104181842A true CN104181842A (zh) | 2014-12-03 |
CN104181842B CN104181842B (zh) | 2017-05-03 |
Family
ID=51962980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410394928.2A Active CN104181842B (zh) | 2014-08-12 | 2014-08-12 | 一种实现通信处理的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104181842B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001177558A (ja) * | 1999-10-18 | 2001-06-29 | Fisher Rosemount Syst Inc | 分散プロセス制御システムで用いられる通信リンクを構成する方法、プロセス制御システムで用いられる通信リンクを構成するシステム、およびプロセス制御システムで用いられる通信リンクを構成する方法 |
CN1558637A (zh) * | 2004-01-19 | 2004-12-29 | 深圳市思杰科技有限公司 | 一种提高移动应用系统端到端QoS的方法 |
CN1886953A (zh) * | 2003-11-28 | 2006-12-27 | 松下电器产业株式会社 | 通信切换方法、通信消息处理方法、利用计算机执行这些方法的程序、以及通信系统 |
CN101714985A (zh) * | 2008-09-30 | 2010-05-26 | 兄弟工业株式会社 | 通信系统 |
CN102549971A (zh) * | 2009-09-25 | 2012-07-04 | 三菱电机株式会社 | 网络性能预估装置及方法、网络结构确认方法、以及通信管理装置及数据通信方法 |
-
2014
- 2014-08-12 CN CN201410394928.2A patent/CN104181842B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001177558A (ja) * | 1999-10-18 | 2001-06-29 | Fisher Rosemount Syst Inc | 分散プロセス制御システムで用いられる通信リンクを構成する方法、プロセス制御システムで用いられる通信リンクを構成するシステム、およびプロセス制御システムで用いられる通信リンクを構成する方法 |
CN1886953A (zh) * | 2003-11-28 | 2006-12-27 | 松下电器产业株式会社 | 通信切换方法、通信消息处理方法、利用计算机执行这些方法的程序、以及通信系统 |
CN1558637A (zh) * | 2004-01-19 | 2004-12-29 | 深圳市思杰科技有限公司 | 一种提高移动应用系统端到端QoS的方法 |
CN101714985A (zh) * | 2008-09-30 | 2010-05-26 | 兄弟工业株式会社 | 通信系统 |
CN102549971A (zh) * | 2009-09-25 | 2012-07-04 | 三菱电机株式会社 | 网络性能预估装置及方法、网络结构确认方法、以及通信管理装置及数据通信方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104181842B (zh) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10270648B2 (en) | Configuration information management method, device, network element management system and storage medium | |
CN102316043B (zh) | 端口虚拟化方法、交换机及通信系统 | |
CN106506620A (zh) | 一种云桌面智能终端管理系统 | |
US10331470B2 (en) | Virtual machine creation according to a redundancy policy | |
CN110830574B (zh) | 一种基于docker容器实现内网负载均衡的方法 | |
CN105429946A (zh) | 一种基于sdn虚拟交换机的防伪造ip的系统及方法 | |
CN106452873A (zh) | 软件定义网络中的控制方法,控制设备和处理器 | |
CN107682460A (zh) | 一种分布式存储集群数据通信方法及系统 | |
CN103780467A (zh) | 通信连接方法、通信装置及通信系统 | |
CN104793981B (zh) | 一种虚拟机集群的在线快照管理方法及装置 | |
CN104951481A (zh) | 一种管理数据库连接的方法和装置 | |
CN115348126A (zh) | 一种网络靶场实体设备接入方法、装置及实现系统 | |
CN105210324A (zh) | 策略与计费规则功能虚拟化方法、装置及系统 | |
CN107547675A (zh) | 一种用户设备迁移方法和装置 | |
CN102984055B (zh) | 一种issu的软重启升级方法和设备 | |
CN105812221A (zh) | 虚拟可扩展本地区域网络中数据传输的设备和方法 | |
CN107666401A (zh) | 一种配置信息获取方法及终端 | |
CN102111436A (zh) | 一种通过iSCSI访问存储设备的方法和一种存储设备 | |
CN103019847A (zh) | 对虚拟机数据进行迁移的方法及系统 | |
CN108089968A (zh) | 一种宿主机监控虚拟机数据库状态的方法 | |
RU2693903C1 (ru) | Способ, устройство и система обработки для расширенного порта | |
CN105302664B (zh) | 一种存储快照管理方法及系统 | |
CN106874150A (zh) | 一种虚拟机高可用容灾方法及其系统 | |
CN102118389B (zh) | 一种通过iSCSI多路径访问存储设备的方法和一种存储设备 | |
CN106101175A (zh) | 设备管控方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |