CN113596111B - 一种基于分布式的节点间通信方法 - Google Patents
一种基于分布式的节点间通信方法 Download PDFInfo
- Publication number
- CN113596111B CN113596111B CN202110773166.7A CN202110773166A CN113596111B CN 113596111 B CN113596111 B CN 113596111B CN 202110773166 A CN202110773166 A CN 202110773166A CN 113596111 B CN113596111 B CN 113596111B
- Authority
- CN
- China
- Prior art keywords
- message
- channel
- function
- sending
- data packet
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000005538 encapsulation Methods 0.000 claims abstract description 10
- 239000000872 buffer Substances 0.000 claims description 20
- 238000012790 confirmation Methods 0.000 claims description 19
- 230000005540 biological transmission Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 5
- 238000004806 packaging method and process Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 239000002184 metal Substances 0.000 description 3
- 230000007474 system interaction Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
一种实现分布式节点间通信的方法,其完全基于ANSI C实现,不依赖具体的操作系统服务,由应用层注册支持的底层通信通道信息,包括通道ID,底层数据包的发送和接收函数等,从而实现对不同底层通信通道的支持,由应用层注册具体的消息,包括消息ID、底层通信通道ID、消息封装和消息解析函数等,通过不同的消息ID可以区分可靠消息和不可靠消息,通过不同的通道ID索引到具体通道的数据包收发函数,本方法作为消息通信中间层服务,对应用层提供统一的API函数,将消息的封装与解析、底层通信通道的收发包处理等具体逻辑都交由应用层实现,从而实现节点间通信的可移植性、可扩展性和可维护性,有利于提高研发资源的利用率,提高产品化速度。
Description
【技术领域】
本发明涉及通信技术领域,具体来讲是一种实现分布式节点间通信的方法。
【背景技术】
现有的大型电力装置通常采用分布式架构,由多种单板分别提供不同的业务功能,共同组合成一套完整的系统装置。每一个单板部署一个或多个业务模块,业务模块之间需要进行通信以提供相关的功能服务,可以将一个业务模块称为一个节点。在实际工程中,电力装置的每个单板的运行环境各不相同,有的单板部署实时操作系统或Linux,有的单板则不部署任何操作系统。电力装置的单板之间通过多种不同的物理通道或者逻辑通道相连,比如以太网,串口、SPI、UDP SOCKET、UNIX SOCKET等。
电力装置的业务模块之间存在多种消息类型,按业务类型可以分为控制报文和数据报文,其中控制报文要求保证消息传输的可靠性,数据报文对于消息传输的可靠性则没有要求。电力装置的业务模块核心功能是提供应用层面的功能服务,而消息通信则仅仅是为完成核心功能而服务的,所以业务模块应该更聚焦于应用层面的实现,不应该将应用与通信的实现过度耦合。
目前,现有的电力装置基本都没有统一独立的节点间通信机制,对上与业务应用高度耦合,对下高度依赖底层通信通道和操作系统运行环境,这样的通信层实现,可扩展性、可维护性、可移植性都很低。
因此,在分布式电力装置领域提供一种跨平台、兼容不同通信通道、支持可靠消息与不可靠消息、与业务应用无关的节点间通信机制,是本领域技术人员亟待解决的问题。
【发明内容】
针对上述问题,提供一种实现分布式节点间通信的方法,包括初始化模块、注册模块、发送模块、接收模块、消息重传模块,所述实现分布式节点间通信的方法实现了一种跨平台、兼容不同通信通道、支持可靠消息与不可靠消息、与业务应用无关的节点间通信机制,具体包括以下步骤:
步骤S1:初始化模块创建LIB库句柄,创建消息红黑树和通道红黑树,初始化每个缓存区长度和缓存区个数,初始化定时器LIB库;
步骤S2:注册模块接收应用层注册的通道信息,构建节点通信地址,申请数据包发送和接收缓存,建立通道控制块;
步骤S3:发送模块将应用层的消息进行打包,并发送至对应的底层通信通道;
步骤S4:接收模块从指定底层通信通道中接收数据包,将接收到的数据包缓存至该通道的接收缓存列表,接收模块从通道的接收缓存列表中取下缓存的数据包,调用应用层的消息解析函数,投递至应用层进行解析处理;
步骤S5:消息重传模块在重传定时器超时后,调用对应通道的数据包发送函数,将发送端节点中的消息缓存再次发送至底层通信通道。
进一步的,所述应用层注册通道信息,包括通道ID、数据包发送函数、数据包接收函数、节点ID、用户数据。
进一步的,所述注册模块接收应用层注册的消息与通道控制块建立映射关系;如果发送端节点进行消息注册,则无需注册消息解析函数,如果接收端节点进行消息注册,则无需注册消息封装函数。
进一步的,所述发送模块在消息发送函数或者确认消息发送函数,获取目的节点地址,消息ID,消息缓存等数据。
进一步的,所述步骤S4中数据包的消息头部字段包含发送端节点地址、协议版本号、消息类型、字节序、序列号、消息ID、消息长度。
进一步的,所述步骤S5中消息重传模块只有发送消息为可靠消息时才会开启,每个目的节点通信方向都有一个独立的消息定时器,根据定时器超时函数的入参可以索引到消息等待标识和消息发送缓存,回调对应的通道数据包发送函数进行数据包的重传。
本发明与现有技术相比具有以下有益效果:
1.本发明的技术方案是由ANSI C实现,不依赖操作系统的具体服务,可以运行在Linux、Vxworks、RTOS、RTthread等任何支持ANSI C的操作系统,也可以运行在不安装任何操作系统的裸机环境,从而实现了对底层操作系统的屏蔽。
2.通过消息ID可以区分可靠消息和不可靠消息,针对不可靠消息,直接将数据包发送至底层通信通道。
3.消息控制块与通道控制块之间存在紧密的映射关系,每一个发送和接收的消息都与特定底层通信通道相绑定,每个底层通信通道和目的通信节点都有独立的发送和接收缓存区,通过对多通道、多消息的管理,从而实现了对底层通信通道的屏蔽
4.应用层仅仅需要预定义所支持的通道ID、消息ID、节点ID,在初始化阶段注册所支持通道和消息,包括数据包发送和接收函数,消息的封装和解析函数。
【附图说明】
图1是本发明技术方案的系统模型示意图。
图2是本发明技术方案的系统交互的时序图。
图3是本发明技术方案的消息头部字段示意图。
图4是本发明技术方案的发送模块的流程图。
图5是本发明技术方案的接收模块的流程图。
【具体实施方式】
本发明所提到的方向用语,例如「上」、「下」、「前」、「后」、「左」、「右」、「内」、「外」、「侧面」等,仅是附图中的方向,只是用来解释和说明本发明,而不是用来限定本发明的保护范围。
本发明的技术方案是由ANSI C实现,不依赖操作系统的具体服务,可以运行在Linux、Vxworks、RTOS、RTthread等任何支持ANSI C的操作系统,也可以运行在不安装任何操作系统的裸机环境,从而实现了对底层操作系统的屏蔽,具体包括初始化模块、注册模块、发送模块、接收模块、消息重传模块。
在本技术方案中,通过消息ID可以区分可靠消息和不可靠消息,针对不可靠消息,直接将数据包发送至底层通信通道;针对可靠消息,则需要根据目的节点通信方向的状态决定是否缓存当前消息,还是将数据包发送至底层通信通道,并且在数据包发送至底层通信通道后,启动重传定时器,以保证每个消息的可靠发送与可靠确认。两种消息采取不同的发送和接收处理逻辑,从而通过一套函数接口实现了对可靠消息和不可靠消息两种消息服务的支持。
在本技术方案中,消息控制块与通道控制块之间存在紧密的映射关系,每一个发送和接收的消息都与特定底层通信通道相绑定,每个底层通信通道和目的通信节点都有独立的发送和接收缓存区,通过对多通道、多消息的管理,从而实现了对底层通信通道的屏蔽。
在本技术方案中,应用层仅仅需要预定义所支持的通道ID、消息ID、节点ID,在初始化阶段注册所支持通道和消息,包括数据包发送和接收函数,消息的封装和解析函数。消息的发送和接收过程都是通过同一套函数接口进行,对应用层来说,不论是可靠消息还是不可靠消息都是一种操作入口,从而实现了应用与通信的解耦。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种基于分布式的节点间通信方法,以实现一种跨平台、兼容不同通信通道、支持可靠消息与不可靠消息、与业务应用无关的节点间通信机制,系统整体示意图如图1所示。
本发名实施例的系统交互时序图如图2所示,具体包括以下步骤:
步骤S1:初始化模块创建LIB库句柄,创建消息红黑树和通道红黑树,初始化每个缓存区长度和缓存区个数,初始化定时器LIB库。
本发明实施例是通过红黑树管理通道控制块和消息控制块,也可以通过链表或其他数据结构进行管理。定时器LIB库的具体实现不属于本技术方案的一部分,定时器LIB库是以ANSI C实现,不依赖具体的操作系统服务,也是可以支持跨平台的。应用层需要预先定义一组通道ID、一组节点ID、一组消息ID。
步骤S2:注册模块接收应用层注册的通道信息,构建节点通信地址,申请数据包发送和接收缓存,建立通道控制块。
所述应用层注册通道信息,包括通道ID、数据包发送函数、数据包接收函数、节点ID、用户数据,注册模块接收应用层注册的消息与通道控制块建立映射关系;如果发送端节点进行消息注册,则无需注册消息解析函数,如果接收端节点进行消息注册,则无需注册消息封装函数。
所述节点通信地址由通道ID和节点ID构成,在实际应用中,为增大并发处理能力,数据包接收缓存是一组缓存,通过红黑树进行管理。
消息ID由32bit整型组成,其中12~16bit表示可靠消息和不可靠消息,0~11bit表示业务消息类型,16~31bit备用
步骤S3:发送模块将应用层的消息或者确认消息进行打包,并发送至对应的底层通信通道。
所述步骤S3如图4所示,具体内容包括:
S301:发送模块在消息发送函数或者确认消息发送函数,获取目的节点地址,消息ID,消息缓存等数据。根据消息ID,索引到对应的消息控制块和通道控制块;根据通道ID,索引到对应通道信息;根据消息ID,索引到对应的消息封装函数。
S302:如果当前消息是确认消息,则根据目的节点地址索引到对应的已接收消息序列号和确认消息发送缓存,执行步骤S305。
S303:如果当前消息不是确认消息,则根据消息ID,判断是可靠消息还是不可靠消息,进行不同的逻辑处理。
具体实现逻辑如下:
如果是可靠消息,则判断目的节点的通信状态。如果存在等待确认的可靠消息,则将当前消息插入到重传消息链表,并结束本次消息发送。如果不存在等待确认的可靠消息,则根据目的节点地址,索引到目的节点的发送缓存,执行步骤S304进行应用层的消息封装。
如果是不可靠消息,则根据通道ID,索引到对应通道的通用发送缓存,执行步骤DS304进行应用层的消息封装。
S304:回调应用层的消息封包函数将消息缓存打包至指定的发送缓存;
S305:填充数据包消息头部字段,如图4所示,包括发送端节点地址、协议版本号、消息类型、字节序、序列号、消息ID、消息长度。
如果是可靠数据消息,则序列号按序自增,并更新已发送消息序列号,消息类型字段填充充为数据消息。
如果是不可靠消息,则序列号字段填零,消息类型字段填充为不可靠消息。
如果是确认消息,则序列号字段填写为已接收消息序列号,消息类型字段填充为确认消息
S306:回调应用层的数据包发送函数将数据包发送至底层通信通道。
底层通信通道的数据包发送函数属于链路层,是由应用层注册时提供。发送模块仅仅负责将数据包发送至底层通信通道的链路层,链路层发送到物理层的逻辑是由应用层负责实现。根据底层通信通道的不同,数据包发送函数的实现也不相同,只要符合如下函数原型定义即可int(*MOM_COMM_SEND)(char*buf,int buf_len,void*cookie)。
举例说明,如果为Linux环境下的socket通道,则通过对标准socket
函数接口write()或send()进行简单封装即可实现socket通道的数据包发送函数。
如果为裸机环境下的uart串口通道和物理以太网通道,则需要应用层自行实现链路层数据包的发送逻辑。
本发明实施例,已经在物理以太网通道、uart串口通道、socket通道中得到充分验证。
S307:如果是不可靠消息,则结束本次消息发送。如果是可靠消息,则开启消息重传定时器。
步骤S4:接收模块从指定底层通信通道中接收数据包,将接收到的数据包缓存至该通道的接收缓存列表;接收模块从通道的接收缓存列表中取下缓存的数据包,调用应用层的消息解析函数,投递至应用层进行解析处理。
所述步骤S4如图5所示,具体包括以下内容:
S401:应用层调用数据包接收函数接口,从指定底层通信通道中接收数据包,并将接收到的数据包缓存至该通道的接收缓存列表。
S402:应用层调用数据包派发函数接口,从指定通道的接收缓存列表取下缓存的数据包,逐个进行解析处理。具体解析步骤如下:
S403:从所述数据包中取出如图3所示的消息头部字段,包含发送端节点地址、协议版本号、消息类型、字节序、序列号、消息ID、消息长度。根据消息ID,索引到对应的消息控制块,进而获取应用层的消息解析函数。
S404:如果消息类型是不可靠消息,直接回调应用层的消息解析函数,结束当前消息处理过程。
S405:如果消息类型是确认消息,则根据当前消息序列号进行不同的逻辑处理。
具体判断策略如下:
当前消息序列号小于已发送消息序列号,则将当前消息视为重复的确认消息,不予处理,结束当前消息处理过程。
当前消息序列号大于已发送消息序列号,则将当前消息视为无效消息,不予处理,结束当前消息处理过程;
当前消息序列号等于已发送消息序列号,则将当前消息视为正确的确认消息,重置目的节点的通信状态,清空目的节点的发送缓存,停止消息重传定时器。
然后从重传消息链表中取出第一个消息,调用发送模块处理。
S406:如果消息类型是数据消息,根据当前消息序列号进行不同的逻辑处理。
具体判断策略如下:
当前消息序列号等于已接收消息序列号,则将当前消息视为重复消息,再次回复确认消息,无需提交给应用层,结束当前消息处理过程。
当前消息序列号小于已接收消息序列号,则将当前消息视为无效消息丢弃,结束当前消息处理过程。
当前消息序列号大于已接收消息序列号,则将当前消息视为正确消息,先向发送端节点回复确认消息,然后回调应用层的消息解析函数,并更新已接收消息序列号,结束当前消息处理过程。
步骤S5:消息重传模块在重传定时器超时后,调用对应通道的数据包发送函数,将发送端节点中的消息缓存再次发送至底层通信通道。
只有发送消息为可靠消息时,消息重传定时器才会开启;不可靠消息是不需要进行重传的。每个目的节点通信方向都有一个独立的消息定时器,根据定时器超时函数的入参可以索引到消息等待标识和消息发送缓存,回调对应的通道数据包发送函数进行数据包的重传。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (6)
1.一种实现分布式节点间通信的方法,其特征在于,所述实现分布式节点间通信的方法实现了一种跨平台、兼容不同通信通道、支持可靠消息与不可靠消息、与业务应用无关的节点间通信机制,具体包括以下步骤:
步骤S1:初始化模块创建LIB库句柄,创建消息红黑树和通道红黑树,初始化每个缓存区长度和缓存区个数,初始化定时器LIB库;
步骤S2:注册模块接收应用层注册的通道信息,构建节点通信地址,申请数据包发送和接收缓存,建立通道控制块;
步骤S3:发送模块将应用层的消息进行打包,并发送至对应的底层通信通道;
步骤S4:接收模块从指定底层通信通道中接收数据包,将接收到的数据包缓存至该通道的接收缓存列表,接收模块从通道的接收缓存列表中取下缓存的数据包,调用应用层的消息解析函数,投递至应用层进行解析处理;
步骤S5:消息重传模块在重传定时器超时后,调用对应通道的数据包发送函数,将发送端节点中的消息缓存再次发送至底层通信通道;
所述步骤S3具体内容包括:
S301:发送模块在消息发送函数或者确认消息发送函数,获取目的节点地址,消息ID,消息缓存等数据,根据消息ID,索引到对应的消息控制块和通道控制块;根据通道ID,索引到对应通道信息;根据消息ID,索引到对应的消息封装函数;
S302:如果当前消息是确认消息,则根据目的节点地址索引到对应的已接收消息序列号和确认消息发送缓存,执行步骤S305;
S303:如果当前消息不是确认消息,则根据消息ID,判断是可靠消息还是不可靠消息,进行不同的逻辑处理;
具体实现逻辑如下:
如果是可靠消息,则判断目的节点的通信状态,如果存在等待确认的可靠消息,则将当前消息插入到重传消息链表,并结束本次消息发送,如果不存在等待确认的可靠消息,则根据目的节点地址,索引到目的节点的发送缓存,执行步骤S304进行应用层的消息封装,
如果是不可靠消息,则根据通道ID,索引到对应通道的通用发送缓存,执行步骤DS304进行应用层的消息封装;
S304:回调应用层的消息封包函数将消息缓存打包至指定的发送缓存;
S305:填充数据包消息头部字段,包括发送端节点地址、协议版本号、消息类型、字节序、序列号、消息ID、消息长度,
如果是可靠数据消息,则序列号按序自增,并更新已发送消息序列号,消息类型字段填充充为数据消息,
如果是不可靠消息,则序列号字段填零,消息类型字段填充为不可靠消息,
如果是确认消息,则序列号字段填写为已接收消息序列号,消息类型字段填充为确认消息;
S306:回调应用层的数据包发送函数将数据包发送至底层通信通道,
底层通信通道的数据包发送函数属于链路层,是由应用层注册时提供,发送模块仅仅负责将数据包发送至底层通信通道的链路层,链路层发送到物理层的逻辑是由应用层负责实现,根据底层通信通道的不同,数据包发送函数的实现也不相同,只要符合如下函数原型定义即可int(*MOM_COMM_SEND)(char*buf,int buf_len,void*cookie);
S307:如果是不可靠消息,则结束本次消息发送,如果是可靠消息,则开启消息重传定时器。
2.根据权利要求1所述的一种实现分布式节点间通信的方法,其特征在于,所述应用层注册通道信息,包括通道ID、数据包发送函数、数据包接收函数、节点ID、用户数据。
3.根据权利要求1所述的一种实现分布式节点间通信的方法,其特征在于,所述注册模块接收应用层注册的消息与通道控制块建立映射关系;如果发送端节点进行消息注册,则无需注册消息解析函数,如果接收端节点进行消息注册,则无需注册消息封装函数。
4.根据权利要求1所述的一种实现分布式节点间通信的方法,其特征在于,所述发送模块在消息发送函数或者确认消息发送函数,获取目的节点地址,消息ID,消息缓存等数据。
5.根据权利要求1所述的一种实现分布式节点间通信的方法,其特征在于,所述步骤S4中数据包的消息头部字段包含发送端节点地址、协议版本号、消息类型、字节序、序列号、消息ID、消息长度。
6.根据权利要求1所述的一种实现分布式节点间通信的方法,其特征在于,所述步骤S5中消息重传模块只有发送消息为可靠消息时才会开启,每个目的节点通信方向都有一个独立的消息定时器,根据定时器超时函数的入参可以索引到消息等待标识和消息发送缓存,回调对应的通道数据包发送函数进行数据包的重传。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110773166.7A CN113596111B (zh) | 2021-07-08 | 2021-07-08 | 一种基于分布式的节点间通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110773166.7A CN113596111B (zh) | 2021-07-08 | 2021-07-08 | 一种基于分布式的节点间通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113596111A CN113596111A (zh) | 2021-11-02 |
CN113596111B true CN113596111B (zh) | 2024-02-09 |
Family
ID=78246476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110773166.7A Active CN113596111B (zh) | 2021-07-08 | 2021-07-08 | 一种基于分布式的节点间通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113596111B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117056378B (zh) * | 2023-10-11 | 2024-04-26 | 北京人大金仓信息技术股份有限公司 | 一种缓存数据与全局实例数据的同步方法及相关设备 |
CN117891627B (zh) * | 2024-03-14 | 2024-05-14 | 南京智联达科技有限公司 | 应用于储能协控装置的核间通信交互系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006333220A (ja) * | 2005-05-27 | 2006-12-07 | Toshiba Corp | ネットワーク電話システム及びこのネットワーク電話システムのサーバ装置 |
CN102523225A (zh) * | 2011-12-22 | 2012-06-27 | 浙江国自机器人技术有限公司 | 分布式松耦合构架中的解耦方法及分布式松耦合构架平台 |
CN111917852A (zh) * | 2020-07-23 | 2020-11-10 | 上海珀立信息科技有限公司 | 基于Unity的多人网络同步系统及开发方法 |
CN112559134A (zh) * | 2020-12-23 | 2021-03-26 | 安徽航天信息有限公司 | 一种分布式WebSocket集群构建方法、装置、系统及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104375841B (zh) * | 2014-12-03 | 2018-04-20 | 广州广电运通金融电子股份有限公司 | 一种基于linux系统的CEN/XFS标准的架构以及实现方法 |
-
2021
- 2021-07-08 CN CN202110773166.7A patent/CN113596111B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006333220A (ja) * | 2005-05-27 | 2006-12-07 | Toshiba Corp | ネットワーク電話システム及びこのネットワーク電話システムのサーバ装置 |
CN102523225A (zh) * | 2011-12-22 | 2012-06-27 | 浙江国自机器人技术有限公司 | 分布式松耦合构架中的解耦方法及分布式松耦合构架平台 |
CN111917852A (zh) * | 2020-07-23 | 2020-11-10 | 上海珀立信息科技有限公司 | 基于Unity的多人网络同步系统及开发方法 |
CN112559134A (zh) * | 2020-12-23 | 2021-03-26 | 安徽航天信息有限公司 | 一种分布式WebSocket集群构建方法、装置、系统及存储介质 |
Non-Patent Citations (1)
Title |
---|
"面向控制领域的微内核系统服务的设计与实现";林舜清;《中国优秀硕士学位论文全文数据库信息科技辑》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113596111A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113596111B (zh) | 一种基于分布式的节点间通信方法 | |
US6088777A (en) | Memory system and method for dynamically allocating a memory divided into plural classes with different block sizes to store variable length messages | |
US6338091B1 (en) | System for optimistic transmission flow control including receiver data discards upon inadequate buffering condition | |
CN105024861B (zh) | 一种基于北斗卫星的可靠远程通信方法及其通信装置 | |
US9240899B2 (en) | Method for implementing virtual network port and embedded device for implementing virtual network port | |
CN101552785B (zh) | 基于消息机制的用于海量数据传输的can总线通信方法 | |
US6760304B2 (en) | Apparatus and method for receive transport protocol termination | |
US20080019391A1 (en) | Uniform message header framework across protocol layers | |
CN1264235A (zh) | 使用短消息业务的数据传输协议 | |
CN107508828B (zh) | 一种超远程数据交互系统及方法 | |
CN1276635C (zh) | 提供用于传送数据分组的串行总线通信协议的方法 | |
CN107786464B (zh) | 一种实现节点间通信的方法及装置 | |
CN110071839B (zh) | 支持数字信号处理器的corba通信装置 | |
KR100439238B1 (ko) | 전송유니트간 송수신 데이터의 릴라이어블 프로토콜운용방법 | |
CN111970092A (zh) | 一种支持可靠性调节的多协议冗余网络异步通信方法 | |
CN108737397B (zh) | 一种实现路由器中业务与协议栈之间数据交互的方法 | |
CN108234397A (zh) | 一种基于通道的异构网络数据发送方法和接收方法 | |
EP1562115A2 (en) | Socket connections over a serial link | |
CN109951458B (zh) | 一种应用于模拟ICP环境的RapidIO/FC协议转换系统及方法 | |
US11196792B2 (en) | Method, device and system for transmitting data | |
CN114928660B (zh) | 一种嵌入式操作系统透明进程间通信的方法 | |
CN106254396A (zh) | 私有协议信息传输系统与方法 | |
CN110928828B (zh) | 处理器间业务处理系统 | |
CN113132069A (zh) | 一种丢包重传的通信机制及基于fpga实现其的方法 | |
CN115037795B (zh) | 一种嵌入式设备多机通信方法 |
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 |