一种通信方法、装置、设备及可读存储介质制造方法及图纸

技术编号:31014633 阅读:17 留言:0更新日期:2021-11-30 02:53
本申请公开了一种通信方法、装置、设备及可读存储介质。本申请使通信双方各自记录自己的收发序列号,消息接收方对比这两个序列号,即可确定消息收发顺序是否正确,从而保障消息的有序性,提高通信可靠性;同时在一次发送操作中同时完成应答和新消息的发送,可以提高传输效率,因此本申请能够同时保障通信过程的高可靠性和高传输效率,实现了各节点之间的高可靠性和高效率传输。相应地,本申请提供的一种通信装置、设备及可读存储介质,也同样具有上述技术效果。述技术效果。述技术效果。

【技术实现步骤摘要】
一种通信方法、装置、设备及可读存储介质


[0001]本申请涉及计算机
,特别涉及一种通信方法、装置、设备及可读存储介质。

技术介绍

[0002]目前,存储集群中的各个节点采用传统的计算机通信方式,如:TCP或UDP。TCP是面向连接的协议,能够提供可靠的服务,实现按序到达不丢包,但传输效率低,每发完一次数据,对端都需要返回一个应答包。UDP为无连接的协议,传输效率高,但不保证可靠性。可见现有通信方式无法同时保障高可靠性和高传输效率。
[0003]因此,如何同时实现各节点之间的高可靠性和高效率传输,是本领域技术人员需要解决的问题。

技术实现思路

[0004]有鉴于此,本申请的目的在于提供一种通信方法、装置、设备及可读存储介质,以同时实现各节点之间的高可靠性和高效率传输。其具体方案如下:
[0005]第一方面,本申请提供了一种通信方法,应用于对象端,包括:
[0006]通过预先建立的信道接收通信消息和目标应答;
[0007]其中,所述信道用于连接所述对象端和目标端;所述通信消息和所述目标应答封装于同一数据包内,且由所述目标端发送;
[0008]若所述通信消息携带的目标发送序列号和所述对象端生成的对象接收序列号一致,则处理所述通信消息;否则,在所述目标发送序列号大于所述对象接收序列号时,将所述通信消息暂存至对象接收队列;在所述目标发送序列号小于所述对象接收序列号时,丢弃所述通信消息;
[0009]基于所述目标应答确定所述对象端向所述目标端发送的对象历史消息的发送结果。
[0010]优选地,所述基于所述目标应答确定所述对象端向所述目标端发送的对象历史消息的发送结果之后,还包括:
[0011]若基于所述目标应答确定所述对象历史消息发送成功,则从所述对象端的对象发送队列中删除所述对象历史消息;否则,通过空闲信道向所述目标端发送所述对象历史消息和对象应答,以重传所述对象历史消息;
[0012]其中,所述空闲信道为连接所述对象端和所述目标端的当前未使用信道;所述对象历史消息和所述对象应答封装于同一数据包内;所述对象历史消息携带有对象发送序列号;所述对象应答用于使所述目标端确定自身向所述对象端发送的目标历史消息的发送结果。
[0013]优选地,还包括:
[0014]若不存在所述空闲信道,则将所述对象历史消息添加至所述对象发送队列。
[0015]优选地,所述通过预先建立的信道接收通信消息和目标应答之后,还包括:
[0016]释放所述信道,并发送信道申请命令和所述对象应答至所述目标端,以使所述目标端根据所述信道申请命令新建信道,并基于所述对象应答确定自身向所述对象端发送的目标历史消息的发送结果;
[0017]其中,所述信道申请命令和所述对象应答封装于同一数据包内。
[0018]优选地,所述目标端发送所述通信消息和所述目标应答后,在所述目标端本地将所述目标发送序列号递增一;
[0019]相应的,所述处理所述通信消息之后,将所述对象接收序列号递增一。
[0020]优选地,还包括:
[0021]利用线程矩阵处理所述对象发送队列和所述对象接收队列中的通信消息。
[0022]优选地,还包括:
[0023]若接收到所述目标端发送的信道新增指令,则确定信道个数小于预设阈值的物理链路,并在所述物理链路中新建信道。
[0024]第二方面,本申请提供了一种通信装置,应用于对象端,包括:
[0025]接收模块,用于通过预先建立的信道接收通信消息和目标应答;
[0026]其中,所述信道用于连接所述对象端和目标端;所述通信消息和所述目标应答封装于同一数据包内,且由所述目标端发送;
[0027]消息处理模块,用于若所述通信消息携带的目标发送序列号和所述对象端生成的对象接收序列号一致,则处理所述通信消息;否则,在所述目标发送序列号大于所述对象接收序列号时,将所述通信消息暂存至对象接收队列;在所述目标发送序列号小于所述对象接收序列号时,丢弃所述通信消息;
[0028]应答处理模块,用于基于所述目标应答确定所述对象端向所述目标端发送的对象历史消息的发送结果。
[0029]第三方面,本申请提供了一种电子设备,包括:
[0030]存储器,用于存储计算机程序;
[0031]处理器,用于执行所述计算机程序,以实现前述公开的通信方法。
[0032]第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的通信方法。
[0033]通过以上方案可知,本申请提供了一种通信方法,应用于对象端,包括:通过预先建立的信道接收通信消息和目标应答;其中,所述信道用于连接所述对象端和目标端;所述通信消息和所述目标应答封装于同一数据包内,且由所述目标端发送;若所述通信消息携带的目标发送序列号和所述对象端生成的对象接收序列号一致,则处理所述通信消息;否则,在所述目标发送序列号大于所述对象接收序列号时,将所述通信消息暂存至对象接收队列;在所述目标发送序列号小于所述对象接收序列号时,丢弃所述通信消息;基于所述目标应答确定所述对象端向所述目标端发送的对象历史消息的发送结果。
[0034]可见,在本申请中,目标端在发送通信消息给对象端时,同时还发送了目标应答,该目标应答能够让对象端知道自身向目标端发送的历史消息的发送结果。可见,本申请在一次发送操作中同时完成了应答和新消息的发送,因此可以节省通信次数,节约通信资源,提高传输效率。并且,目标端在发送通信消息给对象端时,还发送了该消息在目标端中的目
标发送序列号,同时接收该消息的对象端本地也有相应的对象接收序列号,因此对比此二者即可确定当前消息的发送顺序是否正确。具体的,若目标发送序列号和对象端生成的对象接收序列号一致,则表明消息发送顺序正确,则直接处理通信消息;否则,在目标发送序列号大于对象接收序列号时(即提前发送了未来的消息),将通信消息暂存至对象接收队列,以备后续使用;在目标发送序列号小于对象接收序列号时(即发送的消息之前已经发过),因此丢弃该通信消息。可见,通信双方各自记录自己的收发序列号,消息接收方对比这两个序列号,即可确定消息收发顺序是否正确,从而保障消息的有序性,提高通信可靠性,而在一次发送操作中同时完成应答和新消息的发送,可以提高传输效率,因此本申请能够同时保障通信过程的高可靠性和高传输效率,实现了各节点之间的高可靠性和高效率传输。
[0035]相应地,本申请提供的一种通信装置、设备及可读存储介质,也同样具有上述技术效果。
附图说明
[0036]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0037]图1为本申请公开的一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种通信方法,其特征在于,应用于对象端,包括:通过预先建立的信道接收通信消息和目标应答;其中,所述信道用于连接所述对象端和目标端;所述通信消息和所述目标应答封装于同一数据包内,且由所述目标端发送;若所述通信消息携带的目标发送序列号和所述对象端生成的对象接收序列号一致,则处理所述通信消息;否则,在所述目标发送序列号大于所述对象接收序列号时,将所述通信消息暂存至对象接收队列;在所述目标发送序列号小于所述对象接收序列号时,丢弃所述通信消息;基于所述目标应答确定所述对象端向所述目标端发送的对象历史消息的发送结果。2.根据权利要求1所述的通信方法,其特征在于,所述基于所述目标应答确定所述对象端向所述目标端发送的对象历史消息的发送结果之后,还包括:若基于所述目标应答确定所述对象历史消息发送成功,则从所述对象端的对象发送队列中删除所述对象历史消息;否则,通过空闲信道向所述目标端发送所述对象历史消息和对象应答,以重传所述对象历史消息;其中,所述空闲信道为连接所述对象端和所述目标端的当前未使用信道;所述对象历史消息和所述对象应答封装于同一数据包内;所述对象历史消息携带有对象发送序列号;所述对象应答用于使所述目标端确定自身向所述对象端发送的目标历史消息的发送结果。3.根据权利要求2所述的通信方法,其特征在于,还包括:若不存在所述空闲信道,则将所述对象历史消息添加至所述对象发送队列。4.根据权利要求2所述的通信方法,其特征在于,所述通过预先建立的信道接收通信消息和目标应答之后,还包括:释放所述信道,并发送信道申请命令和所述对象应答至所述目标端,以使所述目标端根据所述信道申请命令新建信道,并基于所述对象应答确定自身向所述对象端发送的目标...

【专利技术属性】
技术研发人员:张珠玉
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1