CN109951535B - 基于key-value机制的设备中各个模块间可靠通信方法 - Google Patents
基于key-value机制的设备中各个模块间可靠通信方法 Download PDFInfo
- Publication number
- CN109951535B CN109951535B CN201910162947.5A CN201910162947A CN109951535B CN 109951535 B CN109951535 B CN 109951535B CN 201910162947 A CN201910162947 A CN 201910162947A CN 109951535 B CN109951535 B CN 109951535B
- Authority
- CN
- China
- Prior art keywords
- key
- module
- message
- value
- modules
- 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
Landscapes
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Abstract
本发明涉及基于key‑value机制的设备中各个模块间可靠通信方法,首先,模块一启动后通过socket与模块二建立连接;然后,模块一与模块二建立socket连接后,在消息交互前进行身份认证,按照key‑value机制,发送用户身份验证消息;模块二收到身份认证消息后,进行身份认证,如果认证通过,同样按照key‑value格式返回结果给模块一;认证通过后,模块一与模块二根据需要互相发送消息通信。在各个模块间建立socket连接,收发基于key:value方式的消息,实现各个模块间可靠的可扩展的灵活通信;根据key‑value机制灵活在模块间定义消息字段,对模块间消息进行身份验证。
Description
技术领域
本发明涉及一种基于key-value机制的设备中各个模块间可靠通信方法。
背景技术
目前,设备模块间的通信方式主要有pipe、FIFO、消息队列、信号量、共享内存、信号等,这些方式都有各自的优缺点,如共享内存方式需要对访问共享内存进行同步处理,pipe、FIFO、消息队列也需要对共用缓冲区进行访问控制。
发明内容
本发明的目的是克服现有技术存在的不足,提供一种基于key-value机制的设备中各个模块间可靠通信方法。
本发明的目的通过以下技术方案来实现:
基于key-value机制的设备中各个模块间可靠通信方法,特点是:包括以下步骤:
S101:模块一启动后通过socket与模块二建立连接;
S102:模块一与模块二建立socket连接后,在消息交互前进行身份认证,按照key-value机制,发送用户身份验证消息;
S103:模块二收到身份认证消息后,进行身份认证,如果认证通过,同样按照key-value格式返回结果给模块一;
S104:认证通过后,模块一与模块二根据需要互相发送消息通信。
进一步地,上述的基于key-value机制的设备中各个模块间可靠通信方法,其中,步骤S102,用户身份验证消息为:
Action:login
Seqid:000001
Username:admin
Secret:secret
其中,Action、Seqid、Username、Secret为key值,Action表示本消息为认证消息,Seqid为消息流序号,用来消息返回处理,Username为需要认证的账号,Secret为认证账号的密码;上述key对应的value值分别为login、000001、admin、secret,key-value之间通过回车换行符CRLF分隔。
进一步地,上述的基于key-value机制的设备中各个模块间可靠通信方法,其中,步骤S103,按照key-value格式返回结果,为:
Action:login
Seqid:000001
Result:success。
进一步地,上述的基于key-value机制的设备中各个模块间可靠通信方法,其中,通过key-value机制,消息在模块间收发处理,根据需要对key-value消息类型扩展定义。
进一步地,上述的基于key-value机制的设备中各个模块间可靠通信方法,其中,定义一Command:restart的key-value消息,当接收到的模块收到消息后,将模块进行重启操作。
进一步地,上述的基于key-value机制的设备中各个模块间可靠通信方法,其中,步骤S102,用户身份验证消息,增加一key-value值,Secretmod:md5,认证消息如下:
Action:login
Seqid:000001
Username:admin
Secret:secret
Secretmod:md5
模块一发送的认证消息的密码加密模式为md5方式,模块二收到消息采用md5方式进行校验账户密码。
本发明与现有技术相比具有显著的优点和有益效果,具体体现在以下方面:
本发明基于key-value机制的设备中各个模块间可靠通信方法,通过在各个模块间建立socket连接,收发基于key:value方式的消息,能够实现各个模块间可靠的可扩展的灵活通信;能够根据key-value机制灵活的在模块间定义消息字段,并能够对模块间消息进行身份验证,保证消息的可靠性。
本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明具体实施方式了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书中所特别指出的结构来实现和获得。
附图说明
图1:模块一与模块二的消息通信方式示意图;
图2:本发明方法的流程示意图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现详细说明具体实施方案。
本发明基于key-value机制的设备中各个模块间可靠通信方法,通过在各个模块间建立socket连接,收发基于key:value方式的消息,能够实现各个模块间可靠的可扩展的灵活通信。
如图1,利用本发明进行消息通信的模块一与模块二。
基于key-value机制的模块间通信方法,利用key-value机制能够在模块间自由扩展通信消息而不会破坏原有的消息通信;
Key:value格式如下:
<Key 1>:<Value 1><CRLF>
<Key 2>:<Value 2><CRLF>
...
...
<Key n>:<Value n><CRLF>
<CRLF>
如图2所示,基于key-value机制的模块间可靠通信方法,具体步骤为:
S101:模块一启动后通过socket与模块二建立连接;
S102:模块一与模块二建立socket连接后,在消息交互前进行身份认证,按照key-value机制,发送用户身份验证消息,为:
Action:login
Seqid:000001
Username:admin
Secret:secret
其中,Action、Seqid、Username、Secret为key值,Action表示本消息为认证消息,Seqid为消息流序号,用来消息返回处理,Username为需要认证的账号,Secret为认证账号的密码;上述key对应的value值分别为login、000001、admin、secret,key-value之间通过回车换行符CRLF分隔;
S103:模块二收到身份认证消息后,进行身份认证,如果认证通过,同样按照key-value格式返回结果给模块一,为:
Action:login
Seqid:000001
Result:success;
S104:认证通过后,模块一与模块二根据需要互相发送消息通信。
本发明通过key-value机制,消息在模块间收发处理,根据需要对key-value消息类型扩展定义。可定义一Command:restart的key-value消息,当接收到的模块收到消息后,将模块进行重启操作。
另外还可对现有的消息进行扩展,步骤S102,用户身份验证消息,增加一key-value值,Secretmod:md5,认证消息如下:
Action:login
Seqid:000001
Username:admin
Secret:secret
Secretmod:md5
模块一发送的认证消息的密码加密模式为md5方式,模块二收到消息采用md5方式进行校验账户密码。
综上所述,本发明能够根据key-value机制灵活的在模块间定义消息字段,并能够对模块间消息进行身份验证,保证消息的可靠性。
需要说明的是:以上所述仅为本发明的优选实施方式,并非用以限定本发明的权利范围;同时以上的描述,对于相关技术领域的专门人士应可明了及实施,因此其它未脱离本发明所揭示的精神下所完成的等效改变或修饰,均应包含在申请专利范围中。
Claims (6)
1.基于key-value机制的设备中各个模块间可靠通信方法,其特征在于:包括以下步骤:
S101:模块一启动后通过socket与模块二建立连接;
S102:模块一与模块二建立socket连接后,在消息交互前进行身份认证,按照key-value机制,发送用户身份验证消息;
S103:模块二收到身份认证消息后,进行身份认证,如果认证通过,同样按照key-value格式返回结果给模块一;
S104:认证通过后,模块一与模块二根据需要互相发送消息通信。
2.根据权利要求1所述的基于key-value机制的设备中各个模块间可靠通信方法,其特征在于:步骤S102,用户身份验证消息为:
Action:login
Seqid:000001
Username:admin
Secret:secret
其中,Action、Seqid、Username、Secret为key值,Action表示本消息为认证消息,Seqid为消息流序号,用来消息返回处理,Username为需要认证的账号,Secret为认证账号的密码;上述key对应的value值分别为login、000001、admin、secret,key-value之间通过回车换行符CRLF分隔。
3.根据权利要求1所述的基于key-value机制的设备中各个模块间可靠通信方法,其特征在于:步骤S103,按照key-value格式返回结果,为:
Action:login
Seqid:000001
Result:success。
4.根据权利要求1所述的基于key-value机制的设备中各个模块间可靠通信方法,其特征在于:通过key-value机制,消息在模块间收发处理,根据需要对key-value消息类型扩展定义。
5.根据权利要求4所述的基于key-value机制的设备中各个模块间可靠通信方法,其特征在于:定义一Command:restart的key-value消息,当接收到的模块收到消息后,将模块进行重启操作。
6.根据权利要求1所述的基于key-value机制的设备中各个模块间可靠通信方法,其特征在于:步骤S102,用户身份验证消息,增加一key-value值,Secretmod:md5,认证消息如下:
Action:login
Seqid:000001
Username:admin
Secret:secret
Secretmod:md5
模块一发送的认证消息的密码加密模式为md5方式,模块二收到消息采用md5方式进行校验账户密码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910162947.5A CN109951535B (zh) | 2019-03-05 | 2019-03-05 | 基于key-value机制的设备中各个模块间可靠通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910162947.5A CN109951535B (zh) | 2019-03-05 | 2019-03-05 | 基于key-value机制的设备中各个模块间可靠通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109951535A CN109951535A (zh) | 2019-06-28 |
CN109951535B true CN109951535B (zh) | 2021-10-22 |
Family
ID=67008506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910162947.5A Active CN109951535B (zh) | 2019-03-05 | 2019-03-05 | 基于key-value机制的设备中各个模块间可靠通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109951535B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572608A (zh) * | 2009-06-17 | 2009-11-04 | 杭州华三通信技术有限公司 | 一次登录参数的获取方法及装置 |
CN103747097A (zh) * | 2014-01-22 | 2014-04-23 | 电子科技大学 | 移动终端http请求聚合压缩的系统及方法 |
CN106464736A (zh) * | 2014-10-30 | 2017-02-22 | 环球互连及数据中心公司 | 用于基于云的服务交换的实时配置和管理的互连平台 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7805510B2 (en) * | 2006-05-11 | 2010-09-28 | Computer Associates Think, Inc. | Hierarchy for characterizing interactions with an application |
CN102122255B (zh) * | 2011-03-15 | 2012-09-05 | 合肥华云通信技术有限公司 | 利用虚拟字符设备和genetlink实现Linux系统中进程间通信的方法 |
US10642750B2 (en) * | 2015-08-03 | 2020-05-05 | Arista Networks, Inc. | System and method of a shared memory hash table with notifications and reduced memory utilization |
-
2019
- 2019-03-05 CN CN201910162947.5A patent/CN109951535B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572608A (zh) * | 2009-06-17 | 2009-11-04 | 杭州华三通信技术有限公司 | 一次登录参数的获取方法及装置 |
CN103747097A (zh) * | 2014-01-22 | 2014-04-23 | 电子科技大学 | 移动终端http请求聚合压缩的系统及方法 |
CN106464736A (zh) * | 2014-10-30 | 2017-02-22 | 环球互连及数据中心公司 | 用于基于云的服务交换的实时配置和管理的互连平台 |
Also Published As
Publication number | Publication date |
---|---|
CN109951535A (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10581589B2 (en) | Method for the authentication of a first electronic entity by a second electronic entity, and electronic entity implementing such a method | |
CN102484557B (zh) | 用于数据传输模式之间的转换的信令技术 | |
CN103248452A (zh) | 数据发送装置、数据接收装置、终端和数据传输方法 | |
CN101702687B (zh) | 利用具有交换机架构的装置作为宽带接入服务器的方法 | |
CN105183519A (zh) | Onu软件版本分片升级的装置及方法 | |
TWI280474B (en) | Method, apparatus and system for optimizing exit latency | |
CN102594893A (zh) | 一种移动终端设备与计算机远程互控的方法及其系统 | |
CN103650401A (zh) | 一种移动终端内部通信方法 | |
JP6616159B2 (ja) | 制御装置 | |
CN109951535B (zh) | 基于key-value机制的设备中各个模块间可靠通信方法 | |
US11529983B2 (en) | Arrangement having a safety-related system and method for the protected operation thereof by means of a remote query | |
CN102394734A (zh) | 无极性连接的rs485通讯系统及其控制方法 | |
EP0886410A2 (en) | Data communication method, data communication apparatus, and data communication program recording medium | |
CN106850554B (zh) | 双系统定向连接的方法和装置 | |
JP3920892B2 (ja) | 端末装置 | |
CN105866798A (zh) | 基于北斗通讯车载终端物联网方法 | |
CN101626320A (zh) | 一种通道环回检测方法及装置 | |
CN112817895B (zh) | 一种基于gpio的通信方法 | |
KR20150107223A (ko) | 히스토리 큐를 이용한 통신 에러 복구 장치 및 그 방법 | |
CN114629889B (zh) | 远程控制链接的建立方法、装置、设备及介质 | |
JP6912536B2 (ja) | 近距離無線通信装置 | |
CN204087203U (zh) | 多个arm间的通信电路 | |
CN109525363B (zh) | 数据传输方法及装置 | |
US8270611B2 (en) | System and method for communicating with a key variable loader (KVL) using a standard universal asynchronous receiver transmitter (UART) peripheral | |
US20240176860A1 (en) | Dynamic Command Protection Method and Dynamic Command Protection System by Using Time-Vary Salt Data |
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 |