CN109951535B - 基于key-value机制的设备中各个模块间可靠通信方法 - Google Patents

基于key-value机制的设备中各个模块间可靠通信方法 Download PDF

Info

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
Application number
CN201910162947.5A
Other languages
English (en)
Other versions
CN109951535A (zh
Inventor
王平
刘继明
吴东明
王辉
黄星星
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ITIBIA TECHNOLOGIES (SUZHOU) CO LTD
Original Assignee
ITIBIA TECHNOLOGIES (SUZHOU) CO LTD
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ITIBIA TECHNOLOGIES (SUZHOU) CO LTD filed Critical ITIBIA TECHNOLOGIES (SUZHOU) CO LTD
Priority to CN201910162947.5A priority Critical patent/CN109951535B/zh
Publication of CN109951535A publication Critical patent/CN109951535A/zh
Application granted granted Critical
Publication of CN109951535B publication Critical patent/CN109951535B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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机制的设备中各个模块间可靠通信方法
技术领域
本发明涉及一种基于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方式进行校验账户密码。
CN201910162947.5A 2019-03-05 2019-03-05 基于key-value机制的设备中各个模块间可靠通信方法 Active CN109951535B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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