CN116886576A - 一种多控存储集群通信超时控制方法、装置、设备及介质 - Google Patents

一种多控存储集群通信超时控制方法、装置、设备及介质 Download PDF

Info

Publication number
CN116886576A
CN116886576A CN202310946446.2A CN202310946446A CN116886576A CN 116886576 A CN116886576 A CN 116886576A CN 202310946446 A CN202310946446 A CN 202310946446A CN 116886576 A CN116886576 A CN 116886576A
Authority
CN
China
Prior art keywords
timeout
current
threshold
determining
duration
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.)
Pending
Application number
CN202310946446.2A
Other languages
English (en)
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202310946446.2A priority Critical patent/CN116886576A/zh
Publication of CN116886576A publication Critical patent/CN116886576A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Communication Control (AREA)

Abstract

本申请公开了一种多控存储集群通信超时控制方法、装置、设备及介质,涉及数据存储技术领域,包括:获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;从所述实时参数值中确定出数值最大的目标参数值;基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。可见,本申请避免了多控存储集群下节点控制器因通信超时导致的异常重启的问题,保证了多控存储集群的稳定性和可靠性。

Description

一种多控存储集群通信超时控制方法、装置、设备及介质
技术领域
本发明涉及数据存储技术领域,特别涉及一种多控存储集群通信超时控制方法、装置、设备及介质。
背景技术
为了提高存储设备的高可用性,目前常使用多控制器解决数据中断不可用等故障。多控存储集群的实现可以是一框多控或多框多控。目前的多框多控的存储集群通信链路主要有FC(Fibre Channel,光纤通道)、Roce(RDMA over Converged Ethernet,基于融合以太网的远端内存直接访问技术)、PCIE(Peripheral Component Interconnect Express,高速串行计算机扩展总线标准)等方式。
在通过FC链路连接的存储多控或灾备环境中,存储设备需要外插FC卡实现存储多控或集群间互联。现有的FC HBA(Host Bus Adapter,主机总线适配器)卡存在多速率、多类型、多厂家等情况,如一张FC HBA卡可能存在1个、2个或4个FC端口。
然而,当前部分多端口FC HBA卡存在单端口拥塞导致其他端口拥塞的硬件问题,在某一端口拥塞时,该端口对应的节点控制器与其他节点控制器的连接超时断开,产生单节点控制器或多节点控制器因通信超时导致的节点控制器热重启等租约超期现象,严重影响用户使用体验,降低产品可靠性。
为此,如何避免节点控制器因通信超时导致的异常重启的问题,保证多控存储集群的稳定性和可靠性,是本领域亟待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种多控存储集群通信超时控制方法、装置、设备及介质,能够避免节点控制器因通信超时导致的异常重启的问题,保证多控存储集群的稳定性和可靠性,其具体方案如下:
第一方面,本申请公开了一种多控存储集群通信超时控制方法,包括:
获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;
从所述实时参数值中确定出数值最大的目标参数值;
基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;
基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。
可选的,所述获取当前周期内各节点控制器之间的目标类型参数的实时参数值之前,还包括:
从预设三种类型参数中筛选出一种类型参数作为所述目标类型参数;所述预设三种类型参数包括直接存储访问超时时长、输入输出全流程超时时长以及输入输出申请访问间隔超时时长;
相应的,所述基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制,包括:
利用所述目标类型参数对应的当前超时时长阈值确定所述预设三种类型参数中的其余两种类型参数对应的当前超时时长阈值;
基于所述目标类型参数对应的当前超时时长阈值以及所述其余两种类型参数对应的当前超时时长阈值对当前多控存储集群进行通信超时控制。
可选的,所述从预设三种类型参数中筛选出一种类型参数作为所述目标类型参数,包括:
从所述预设三种类型参数中筛选出直接存储访问超时时长,以得到所述目标类型参数。
可选的,所述基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值,包括:
确定所述目标参数值和目标时长之间的和值;
基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值。
可选的,所述基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值,包括:
若所述和值大于所述预设超时时长阈值范围中的上限阈值,则将所述第一当前超时时长阈值确定为所述上限阈值;
若所述和值小于所述预设超时时长阈值范围中的下限阈值,则将所述第一当前超时时长阈值确定为所述下限阈值;
若所述和值在所述下限阈值和所述上限阈值之间,则将所述第一当前超时时长阈值确定为所述和值。
可选的,所述基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值之后,还包括:
基于所述第一当前超时时长阈值确定输入输出全流程超时时长对应的第二当前超时时长阈值,以及基于所述第二当前超时时长阈值确定输入输出申请访问间隔超时时长对应的第三当前超时时长阈值;
相应的,所述基于所述当前超时时长阈值以及所述其余两种类型参数对应的当前超时时长阈值对当前多控存储集群进行通信超时控制,包括:
基于所述第一当前超时时长阈值、所述第二当前超时时长阈值和所述第三当前超时时长阈值对当前多控存储集群进行通信超时控制。
可选的,所述基于所述第一当前超时时长阈值确定输入输出全流程超时时长对应的第二当前超时时长阈值,包括:
从所述各节点控制器中确定出第一节点控制器和第二节点控制器;
确定所述第一节点控制器和所述第二节点控制器之间的目标命令传输时长,其中,所述目标命令传输时长包括第一目标命令发送时长和第二目标命令反馈时长;
确定所述第一节点控制器与所述第二节点控制器进行通信的过程中相应的光纤队列的调度最大时延和目标检测周期;
基于所述第一当前超时时长阈值、所述第一目标命令发送时长、所述第二目标命令反馈时长、所述调度最大时延和所述目标检测周期确定所述第二当前超时时长阈值;
相应的,所述基于所述第二当前超时时长阈值确定输入输出申请访问间隔超时时长对应的第三当前超时时长阈值,包括:
基于所述第二当前超时时长阈值和所述调度最大时延确定所述第三当前超时时长阈值。
可选的,所述多控存储集群通信超时控制方法,还包括:
获取与当前多控存储集群对应的存储设备的硬件配置信息;
根据所述硬件配置信息确定所述预设超时时长阈值范围。
第二方面,本申请公开了一种多控存储集群通信超时控制装置,包括:
实时参数值获取模块,用于获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;
目标参数值确定模块,用于从所述实时参数值中确定出数值最大的目标参数值;
当前超时时长阈值确定模块,用于基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;
通信超时控制模块,用于基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的多控存储集群通信超时控制方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的多控存储集群通信超时控制方法。
可见,本申请提出一种多控存储集群通信超时控制方法,包括:获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;从所述实时参数值中确定出数值最大的目标参数值;基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。综上可见,本申请基于数值最大的目标参数值与预设超时时长阈值范围之间的比较结果,来确定当前超时时长阈值,然后通过当前超时时长阈值对当前多控存储集群进行通信超时控制,这样一来,本申请中的通信超时时长阈值是保持在预设超时时长阈值范围内的,从而能够避免多控存储集群下的节点控制器因通信超时时长过大导致的连接断开的问题,进一步避免了因节点控制器连接断开导致的异常重启的问题,提高了多控存储集群的稳定性和可靠性,并提高了用户使用体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种多控存储集群通信超时控制方法流程图;
图2为本申请公开的一种具体的多控存储集群通信超时控制方法流程图;
图3为本申请公开的一种通信示意图;
图4为本申请公开的一种具体的多控存储集群通信超时控制方法流程图;
图5为本申请公开的一种多控存储集群通信超时控制装置结构示意图;
图6为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前部分多端口FC HBA卡存在单端口拥塞导致其他端口拥塞的硬件问题,在某一端口拥塞时,该端口对应的节点控制器与其他节点控制器的连接超时断开,产生单节点控制器或多节点控制器因通信超时导致的节点控制器热重启等租约超期现象,严重影响用户使用体验,降低产品可靠性。
为此,本申请实施例提出一种多控存储集群通信超时控制方案,能够避免节点控制器因通信超时导致的异常重启的问题,保证多控存储集群的稳定性和可靠性。
本申请实施例公开了一种多控存储集群通信超时控制方法,参见图1所示,该方法包括:
步骤S11:获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数。
本实施例中,采用滑动时间窗口的方式,记录一定时间内各节点控制器之间的目标类型参数的实时参数值,进一步的,获取当前周期内各节点控制器之间的目标类型参数的实时参数值。
可以理解的是,在记录目标类型参数的实时参数值之前,需要先确定所述目标类型参数,具体的,从预设三种类型参数中筛选出一种类型参数作为所述目标类型参数;所述预设三种类型参数包括直接存储访问超时时长、输入输出全流程超时时长以及输入输出申请访问间隔超时时长。也即,本实施例中的所述实时参数值可以是直接存储访问超时时长的实时参数值,可以是全流程超时时长的实时参数值,也可以是输入输出申请访问间隔超时时长的实时参数值。
步骤S12:从所述实时参数值中确定出数值最大的目标参数值。
从所述实时参数值中确定出数值最大的目标参数值,例如获取到的实时参数值分别为300ms、400ms、700ms,则将700确定为目标参数值。
步骤S13:基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值。
所述预设超时时长阈值范围是基于当前多控存储集群对应的存储设备的硬件配置信息确定的,例如,根据不同的CPU(中央处理器,Central Processing Unit/Processor)设置不同的预设超时时长阈值范围,对于性能较好的CPU,设定预设超时时长阈值范围的上限值为5000ms、下限值800ms,对于性能较差的CPU,设定预设超时时长阈值范围的上限值为6000ms、下限值为1000ms。
进一步的,基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值,这样一来,所述当前通信超时时长阈值是保持在预设超时时长阈值范围内的,避免了多控存储集群下的节点控制器因通信超时时长过大导致的连接断开的问题。
步骤S14:基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。
需要指出的是,本实施例在确定出与所述目标类型参数对应的当前超时时长阈值后,利用所述目标类型参数对应的当前超时时长阈值确定所述预设三种类型参数中的其余两种类型参数对应的当前超时时长阈值,进一步的,基于所述目标类型参数对应的当前超时时长阈值以及所述其余两种类型参数对应的当前超时时长阈值对当前多控存储集群进行通信超时控制。
可见,本申请提出一种多控存储集群通信超时控制方法,包括:获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;从所述实时参数值中确定出数值最大的目标参数值;基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。综上可见,本申请基于数值最大的目标参数值与预设超时时长阈值范围之间的比较结果,来确定当前超时时长阈值,然后通过当前超时时长阈值对当前多控存储集群进行通信超时控制,这样一来,本申请中的通信超时时长阈值是保持在预设超时时长阈值范围内的,从而能够避免多控存储集群下的节点控制器因通信超时时长过大导致的连接断开的问题,进一步避免了因节点控制器连接断开导致的异常重启的问题,提高了多控存储集群的稳定性和可靠性,并提高了用户使用体验。
本申请实施例公开了一种具体的多控存储集群通信超时控制方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图2所示,具体包括:
步骤S21:从所述预设三种类型参数中筛选出直接存储访问超时时长,以得到所述目标类型参数,并获取所述直接存储访问超时时长的实时参数值。
本实施例中,确定直接存储访问超时时长为所述目标类型参数,进一步的,获取所述直接存储访问超时时长的实时参数值。
步骤S22:确定所述目标参数值和目标时长之间的和值。
所述目标时长为预设的超时时长余量,用于提供一定的安全范围。进一步的,确定所述目标参数值和目标时长之间的和值。例如,假设所述目标参数值为700ms,所述目标时长为200ms,则所述目标参数值和目标时长之间的和值为900ms。
步骤S23:基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值。
以所述预设超时时长阈值范围为800ms-5000ms为例。
在第一种具体的实施方式中,若所述和值大于所述预设超时时长阈值范围中的上限阈值,则将所述第一当前超时时长阈值确定为所述上限阈值,也即,若所述和值为5100ms,则将所述第一当前超时时长阈值确定为所述上限阈值5000ms。
在第二种具体的实施方式中,若所述和值小于所述预设超时时长阈值范围中的下限阈值,则将所述第一当前超时时长阈值确定为所述下限阈值,也即,若所述和值为700ms,则将所述第一当前超时时长阈值确定为800ms。
在第三种具体的实施方式中,若所述和值在所述下限阈值和所述上限阈值之间,则将所述第一当前超时时长阈值确定为所述和值,也即,若所述和值为800ms-5000ms中的任一值,例如900,则将所述第一当前超时时长阈值确定为900。
步骤S24:基于所述第一当前超时时长阈值确定输入输出全流程超时时长对应的第二当前超时时长阈值,以及基于所述第二当前超时时长阈值确定输入输出申请访问间隔超时时长对应的第三当前超时时长阈值。
本实施例中,基于所述第一当前超时时长阈值确定输入输出全流程超时时长对应的第二当前超时时长阈值,具体包括:从所述各节点控制器中确定出第一节点控制器和第二节点控制器;确定所述第一节点控制器和所述第二节点控制器之间的目标命令传输时长,其中,所述目标命令传输时长包括第一目标命令发送时长和第二目标命令反馈时长;确定所述第一节点控制器与所述第二节点控制器进行通信的过程中相应的光纤队列的调度最大时延和目标检测周期;基于所述第一当前超时时长阈值、所述第一目标命令发送时长、所述第二目标命令反馈时长、所述调度最大时延和所述目标检测周期确定所述第二当前超时时长阈值。
综上可见,在一种具体的实施方式中,第一当前超时时长阈值与第二当前超时时长阈值之间的关系为:第二当前超时时长阈值=第一当前超时时长阈值+目标检测周期+目标命令传输时长+调度最大时延。
本实施例中,所述基于所述第二当前超时时长阈值确定输入输出申请访问间隔超时时长对应的第三当前超时时长阈值,包括:基于所述第二当前超时时长阈值和所述调度最大时延确定所述第三当前超时时长阈值。
综上可见,在一种具体的实施方式中,第二当前超时时长阈值与第三当前超时时长阈值之间的关系为:第三当前超时时长阈值=第二当前超时时长阈值+调度最大时延。
步骤S25:基于所述第一当前超时时长阈值、所述第二当前超时时长阈值和所述第三当前超时时长阈值对当前多控存储集群进行通信超时控制。
本实施例中,在确定出所述第一当前超时时长阈值、所述第二当前超时时长阈值和所述第三当前超时时长阈值之后,基于所述第一当前超时时长阈值、所述第二当前超时时长阈值和所述第三当前超时时长阈值对当前多控存储集群进行通信超时控制。
可见,本申请提出一种多控存储集群通信超时控制方法,包括:从所述预设三种类型参数中筛选出直接存储访问超时时长,以得到所述目标类型参数,并获取所述直接存储访问超时时长的实时参数值;确定所述目标参数值和目标时长之间的和值;基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值;基于所述第一当前超时时长阈值确定输入输出全流程超时时长对应的第二当前超时时长阈值,以及基于所述第二当前超时时长阈值确定输入输出申请访问间隔超时时长对应的第三当前超时时长阈值;基于所述第一当前超时时长阈值、所述第二当前超时时长阈值和所述第三当前超时时长阈值对当前多控存储集群进行通信超时控制。综上可见,本申请基于数值最大的目标参数值与预设超时时长阈值范围之间的比较结果,来确定当前超时时长阈值,然后通过当前超时时长阈值对当前多控存储集群进行通信超时控制,这样一来,本申请中的通信超时时长阈值是保持在预设超时时长阈值范围内的,从而能够避免多控存储集群下的节点控制器因通信超时时长过大导致的连接断开的问题,进一步避免了因节点控制器连接断开导致的异常重启的问题,提高了多控存储集群的稳定性和可靠性,并提高了用户使用体验。
下面通过一实施例对本申请所述的一种多控存储集群通信超时控制方法进行更详细的说明,参见图3所示:
在多控存储集群的通信IO(输入/输出,Input/Output)流程中,LV/CO(LocalView/Communication Object,本地视图/通信模块)处于中间环节,承接应用模块具体消息收发,又以协议包的形式收发消息与平台接口(platform interface)和驱动层通信。上述应用模块,例如CA(Cache,缓存)模块,再如RC(Remote Copy,远程复制)模块。由图3可知,对多控存储集群通信超时时长阈值的控制便是对CO模块通信超时时长阈值的控制,CO模块的3个通信超时时长的定义如下所示:
DMA_TIMEOUT:全称CO_COMPLETION_DMA_TIMEOUT,是指CO模块通信接收端组织好数据包时设置时间起点,调用平台接口函数向驱动层发送数据,直至收到驱动层的反馈结果时设置时间终点,该时间起点与时间终点之间的时间差,也即上文中的直接存储访问超时时长,如图4所示。该时长设定的目的除了作为IO全流程超时时长的一部分,还用于约束端口资源最大限度的循环利用。影响直接存储访问超时时长大小的因素包括:a、硬件发送时长,即硬件自身性能和运行情况;b、系统繁忙程度,CPU使用占比,光纤队列调度情况。如光纤队列被其他线程长时间占用,则会大大延长直接存储访问超时时长,相反的,如果直接存储访问超时时长均值较小,则这个阶段就不会成为制约集群通信的性能瓶颈。
CMD_TIMEOUT:全称Communication Command_TIMEOUT,IO全流程时长,是指自CO模块的通信发送端端发起IO申请,经链路传输,到达通信接收端,通信接收端反馈结果(数据+状态,data+status),经链路传输,送达本地CO模块的通信发送端的全流程的超时时长。也即上文中的输入输出全流程超时时长,如果IO全流程耗时过长则表示通信性能差,因IO并发数存在上限限制,影响IO并发运行。
COMPLETION_TIMEOUT,IO申请访问间隔超时时长,是指CO模块通信接收端接收两次IO申请的最大时间间隔,也即上文中的输入输出申请访问间隔超时时长。全称CO_COMPLETION_ANTI_DEADLOCK_TIMEOUT。
结合图4以及上述描述,针对以上3个参数建立关联关系:
CMD_TIMEOUT=DMA_TIMEOUT+2*800+400+400;
COMPLETION_TIMEOUT=CMD_TIMEOUT+800。
其中,在第一个关联关系中,2*800分别对应图4中的两个光纤队列调度最大时延,其中1个400对应检测周期以及另外1个400对应t1+t2。在第二个关联关系中,800为光纤队列调度最大时延。
因此,设定任意参数值,便可以得到另外两个参数值,示例性的,设定DMA_TIMEOUT一个参数值,可以推算出CMD_TIMEOUT和COMPLETION_TIMEOUT。
具体的,采用滑动时间窗口的方式,记录一定时间内DMA_TIMEOUT的实际值,并取实际值中的最大值,在将所述最大值增加一定的余量之后得到和值,并根据和值与多控存储集群允许的预设超时时长阈值范围进行比较,然后根据比较结果设定与DMA_TIMEOUT对应的第一当前超时时长阈值。具体比较方式参见前述公开的内容所示,在此不做具体赘述。进一步的,在得到第一当前超时时长阈值之后,根据关联关系得到另外两个当前超时时长阈值。可以看出,按照比较结果设定的超时时长阈值既可以有效的避免FC卡单端口拥塞导致多端口拥塞,进而导致节点控制器通信超时热重启问题,又能在解决该问题的情况下提高集群通信性能,避免资源浪费。需要指出的是,最初的多控集群通信超时时长阈值默认为最小值,如此一来,可以保证最大的集群通信性能。
综上可见,本申请在多控存储集群通信出现网络拥塞时,通过滑动时间窗口的方式实时自动的调整多控存储集群通信超时时长阈值,避免出现FC HBA卡单端口故障或拥塞导致多端口拥塞的情况,进而避免节点控制器通信超时导致连接断开的情况,既解决了多控集群下节点控制器因通信超时异常重启的问题,又可以减少多控存储集群的环境搭建成本,包括物料成本和人力成本等,同时又最大程度的保证了集群通信的性能,相比固定的使用最大超时时长阈值提升了通信性能,保障存储通信的稳定性和可靠性,提高产品竞争力。
相应的,本申请实施例还公开了一种多控存储集群通信超时控制装置,参见图5所示,该装置包括:
实时参数值获取模块11,用于获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;
目标参数值确定模块12,用于从所述实时参数值中确定出数值最大的目标参数值;
当前超时时长阈值确定模块13,用于基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;
通信超时控制模块14,用于基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。
其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请提出一种多控存储集群通信超时控制方法,包括:获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;从所述实时参数值中确定出数值最大的目标参数值;基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。综上可见,本申请基于数值最大的目标参数值与预设超时时长阈值范围之间的比较结果,来确定当前超时时长阈值,然后通过当前超时时长阈值对当前多控存储集群进行通信超时控制,这样一来,本申请中的通信超时时长阈值是保持在预设超时时长阈值范围内的,从而能够避免多控存储集群下的节点控制器因通信超时时长过大导致的连接断开的问题,进一步避免了因节点控制器连接断开导致的异常重启的问题,提高了多控存储集群的稳定性和可靠性,并提高了用户使用体验。
进一步的,本申请实施例还提供了一种电子设备。图6是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图6为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、显示屏23、输入输出接口24、通信接口25、电源26和通信总线27。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的多控存储集群通信超时控制方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源26用于为电子设备20上的各硬件设备提供工作电压;通信接口25能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口24,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括计算机程序221,存储方式可以是短暂存储或者永久存储。其中,计算机程序221除了包括能够用于完成前述任一实施例公开的由电子设备20执行的多控存储集群通信超时控制方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的多控存储集群通信超时控制方法。
关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本申请书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种多控存储集群通信超时控制方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (11)

1.一种多控存储集群通信超时控制方法,其特征在于,包括:
获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;
从所述实时参数值中确定出数值最大的目标参数值;
基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;
基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。
2.根据权利要求1所述的多控存储集群通信超时控制方法,其特征在于,所述获取当前周期内各节点控制器之间的目标类型参数的实时参数值之前,还包括:
从预设三种类型参数中筛选出一种类型参数作为所述目标类型参数;所述预设三种类型参数包括直接存储访问超时时长、输入输出全流程超时时长以及输入输出申请访问间隔超时时长;
相应的,所述基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制,包括:
利用所述目标类型参数对应的当前超时时长阈值确定所述预设三种类型参数中的其余两种类型参数对应的当前超时时长阈值;
基于所述目标类型参数对应的当前超时时长阈值以及所述其余两种类型参数对应的当前超时时长阈值对当前多控存储集群进行通信超时控制。
3.根据权利要求2所述的多控存储集群通信超时控制方法,其特征在于,所述从预设三种类型参数中筛选出一种类型参数作为所述目标类型参数,包括:
从所述预设三种类型参数中筛选出直接存储访问超时时长,以得到所述目标类型参数。
4.根据权利要求3所述的多控存储集群通信超时控制方法,其特征在于,所述基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值,包括:
确定所述目标参数值和目标时长之间的和值;
基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值。
5.根据权利要求4所述的多控存储集群通信超时控制方法,其特征在于,所述基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值,包括:
若所述和值大于所述预设超时时长阈值范围中的上限阈值,则将所述第一当前超时时长阈值确定为所述上限阈值;
若所述和值小于所述预设超时时长阈值范围中的下限阈值,则将所述第一当前超时时长阈值确定为所述下限阈值;
若所述和值在所述下限阈值和所述上限阈值之间,则将所述第一当前超时时长阈值确定为所述和值。
6.根据权利要求5所述的多控存储集群通信超时控制方法,其特征在于,所述基于所述和值与所述预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定直接存储访问超时时长对应的第一当前超时时长阈值之后,还包括:
基于所述第一当前超时时长阈值确定输入输出全流程超时时长对应的第二当前超时时长阈值,以及基于所述第二当前超时时长阈值确定输入输出申请访问间隔超时时长对应的第三当前超时时长阈值;
相应的,所述基于所述当前超时时长阈值以及所述其余两种类型参数对应的当前超时时长阈值对当前多控存储集群进行通信超时控制,包括:
基于所述第一当前超时时长阈值、所述第二当前超时时长阈值和所述第三当前超时时长阈值对当前多控存储集群进行通信超时控制。
7.根据权利要求6所述的多控存储集群通信超时控制方法,其特征在于,所述基于所述第一当前超时时长阈值确定输入输出全流程超时时长对应的第二当前超时时长阈值,包括:
从所述各节点控制器中确定出第一节点控制器和第二节点控制器;
确定所述第一节点控制器和所述第二节点控制器之间的目标命令传输时长,其中,所述目标命令传输时长包括第一目标命令发送时长和第二目标命令反馈时长;
确定所述第一节点控制器与所述第二节点控制器进行通信的过程中相应的光纤队列的调度最大时延和目标检测周期;
基于所述第一当前超时时长阈值、所述第一目标命令发送时长、所述第二目标命令反馈时长、所述调度最大时延和所述目标检测周期确定所述第二当前超时时长阈值;
相应的,所述基于所述第二当前超时时长阈值确定输入输出申请访问间隔超时时长对应的第三当前超时时长阈值,包括:
基于所述第二当前超时时长阈值和所述调度最大时延确定所述第三当前超时时长阈值。
8.根据权利要求1至7任一项所述的多控存储集群通信超时控制方法,其特征在于,还包括:
获取与当前多控存储集群对应的存储设备的硬件配置信息;
根据所述硬件配置信息确定所述预设超时时长阈值范围。
9.一种多控存储集群通信超时控制装置,其特征在于,包括:
实时参数值获取模块,用于获取当前周期内各节点控制器之间的目标类型参数的实时参数值;所述目标类型参数为用于表征所述节点控制器之间的通信超时时长的参数;
目标参数值确定模块,用于从所述实时参数值中确定出数值最大的目标参数值;
当前超时时长阈值确定模块,用于基于所述目标参数值与预设超时时长阈值范围之间的比较结果,从所述预设超时时长阈值范围内确定当前超时时长阈值;
通信超时控制模块,用于基于所述当前超时时长阈值对当前多控存储集群进行通信超时控制。
10.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至8任一项所述的多控存储集群通信超时控制方法。
11.一种计算机可读存储介质,其特征在于,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的多控存储集群通信超时控制方法。
CN202310946446.2A 2023-07-31 2023-07-31 一种多控存储集群通信超时控制方法、装置、设备及介质 Pending CN116886576A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310946446.2A CN116886576A (zh) 2023-07-31 2023-07-31 一种多控存储集群通信超时控制方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310946446.2A CN116886576A (zh) 2023-07-31 2023-07-31 一种多控存储集群通信超时控制方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN116886576A true CN116886576A (zh) 2023-10-13

Family

ID=88256750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310946446.2A Pending CN116886576A (zh) 2023-07-31 2023-07-31 一种多控存储集群通信超时控制方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN116886576A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117336345A (zh) * 2023-11-30 2024-01-02 苏州元脑智能科技有限公司 一种数据复制容灾方法、系统、装置及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117336345A (zh) * 2023-11-30 2024-01-02 苏州元脑智能科技有限公司 一种数据复制容灾方法、系统、装置及介质
CN117336345B (zh) * 2023-11-30 2024-02-23 苏州元脑智能科技有限公司 一种数据复制容灾方法、系统、装置及介质

Similar Documents

Publication Publication Date Title
CN116886576A (zh) 一种多控存储集群通信超时控制方法、装置、设备及介质
CN107528747B (zh) 主从站通信状态的诊断方法和装置及计算机可读存储介质
US20030177228A1 (en) Adaptative heartbeat flow for cluster node aliveness detection
CN103095703B (zh) 一种实现网络与串口数据交互的方法、设备及系统
CN110943878A (zh) 心跳包传输方法、终端及具有存储功能的装置
WO2017124708A1 (zh) 一种隧道流量控制方法、装置和网络管理系统
CN109391691A (zh) 一种单节点故障下nas服务的恢复方法及相关装置
CN112134763B (zh) 一种集群节点间分层消息传输方法、系统、设备及介质
CN103731476A (zh) 一种提高信息推送速度的方法和装置
CN107948063B (zh) 一种建立聚合链路的方法和接入设备
CN109040295A (zh) 异常断线的确定方法及装置、终端及存储介质
CN115086104B (zh) 一种支持数据断线重传的方法及串口服务器
CN107534576B (zh) 一种链路恢复方法和网络设备
CN104601376A (zh) 心跳报文发送方法及装置
CN106603480B (zh) 流媒体文件的传输方法及装置
CN103227794A (zh) 数据传输控制方法、装置以及系统
CN107070872B (zh) 一种用于客户端的数据处理方法和装置
CN108900375A (zh) 一种业务报文传输方法、装置及网络设备
CN112256454B (zh) 消息延时处理方法和系统
US11522762B2 (en) Coordination device and method for providing control applications via a communication network for transmitting time-critical data
CN210274135U (zh) 一种远程连接系统
CN110166506B (zh) 超文本传输协议Http的连接方法及节点设备
CN106304241A (zh) 一种数据传输方法、转发器及网关
CN106452869B (zh) 一种管理一卡通终端的方法
CN113840331B (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