专利名称:一种基于序列流检测的sff-8485协议容错解析方法
技术领域:
本发明涉及计算机通信领域,具体是利用一种基于序列流检测的SFF-8485协议容错解析方法,来解决目前实际产品SFF-8485协议的被动识别方式中缺乏对SFF-8485协议可容错的解析识别问题,极大提高了 SFF-8485协议的实时解析能力,并提升了对协议识别的容错能力。
背景技术:
随着服务器的集成度越来越高,服务器与外围部件信号连接路径的简化受到厂商和用户的高度重视,各种节约信号通道的串行协议应运而生,其中SFF-8485协议即是其中一种,其广泛应用在磁盘阵列的状态监控中;由于大多数应用中存在多个硬盘的集合,即磁盘阵列,对硬盘运行的监控成为增强系统可靠性的重要因素之一,硬盘运行监控即在系统掉电时或不可预期的系统关机时,硬盘状态数据需要得以保护,以进一步获取硬盘方面的运行信息,为能第一时间了解硬盘的运行状态,以便在其出问题之前,有所准备,重要数据予以备份,不至于在硬盘突然损坏时造成数据的丢失。同时为了快速定位硬盘,需要硬盘位置的直观形象指示;实现对SFF-8485协议的实时解析以获取硬盘的工作状态,对提升服务器存储系统的稳定性起到很大的作用,因此实现对SFF-8485协议的实时解析是提高服务器数据可靠性的重要条件。在对SFF-8485协议的实时解析中,目前主要采用被动接受方式,即只要SFF-8485 协议总线上有数据传输,且SLOAD信号上有上升沿跳变即进行顺序读取SDATA上的数据,并把数据强制分配给硬盘状态指示灯,这种被动的协议识别方式,在很多情况下,例如主控制器发出的基于SFF-8485协议的信号不完整或传输线上出现干扰,都会导致硬盘状态的错误指示,很容易产生对用户的误导,如硬盘定位错误时,用户替换掉误报错的硬盘,结果会导致RAID数据的丢失,无法完成数据的重建等等;因此这种被动的SFF-8485协议识别方式,无法完全保证系统工作的可靠性;对以上的目前实际中缺乏对SFF-8485协议可容错的解析识别问题,根据SFF-8485协议本身的特点,通过深入分析,我们总结了一种基于序列流检测的SFF-8485协议容错解析方法。
发明内容
本发明的目的是提供一种基于序列流检测的SFF-8485协议容错解析方法。本发明的目的是按以下方式实现的,步骤如下
1)重新界定协议解析起始标志,即SLOAD信号线上连续出现4个时钟周期的低电平,紧接着的下一个时钟周期内,SLOAD信号线电平跳变为高电平,即SLOAD有一上升沿跳变;即在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流“00001”, 即连续的四个低电平和一个高电平;
2)当检测不到协议解析起始标志序列流时,不对SDATA信号线上的任何变化做出响应;当检测到所设定的协议解析起始标志序列流“00001”时,启动对硬盘状态数据的解析,但将解析后的硬盘状态数据予以暂时储存,同时继续检测协议解析起始标志序列流 “00001” ;
3)重新界定协议解析起始的标志,即界定协议解析起始标志序列流“00001”,不再是被动协议解析下的仅靠检测SLOAD信号的上升沿跳变;
4)在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流 “00001”,对起始标志序列流的检测是一直循环进行的,即本次协议解析开始后,在提取存储硬盘状态的过程中,同时启动下一次协议解析的起始标志序列流;
5)步骤1)、3)所述的协议解析开始后,对当前协议解析后的硬盘状态数据予以暂时储存,同时启动下一次协议解析的起始标志序列流,若所有硬盘的状态数据提取完毕后,正好检测到下一次协议解析的起始标志序列流或未检测到协议解析的起始标志序列流,则将所有硬盘的状态数据分配给硬盘的状态指示灯,以标示硬盘状态;若所有硬盘的状态数据未提取完毕,但检测到下一次协议解析的起始标志序列流,则本次提取的硬盘状态数据失效, 自动清空错误不完整数据,实现容错处理.
本发明的有益效果是我们可以很方便的进行服务器硬盘组运行状态的实时监测,不仅满足实际环境中对SFF-8485协议检测准确性的要求,同时满足了对对SFF-8485协议解析的实时性要求,从而提高了对服务器硬盘运行状态检测的可靠性要求,并提升了对服务器硬盘系统人机交互的稳定性。因而,具有很好的推广使用价值。
图1是容错解析流程图。
具体实施例方式参照说明书附图对本发明的方法作以下详细地说明。本发明的基于序列流检测的SFF-8485协议容错解析方法,通过如下内容进行更加详细的阐述
本发明是以信号容错理论支撑点,利用一种基于序列流检测的SFF-8485协议容错解析方法,来解决目前实际产品SFF-8485协议的被动识别方式中缺乏可容错的解析识别问题,具体发明内容可以分为如下四个方面
1)重新界定协议解析起始的标志,即SLOAD信号线上连续出现4个时钟周期的低电平,紧接着的下一个时钟周期内,SLOAD信号线电平跳变为高电平,即SLOAD有一上升沿跳变;即在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流 “00001”,即连续的四个低电平和一个高电平;
2)当检测不到协议解析起始标志序列流时,不对SDATA信号线上的任何变化做出响应;当检测到所设定的协议解析起始标志序列流“00001”时,启动对硬盘状态数据的解析,但将解析后的硬盘状态数据予以暂时储存,同时继续检测协议解析起始标志序列流 “00001” ;
4)重新界定协议解析起始的标志,即界定协议解析起始标志序列流“00001”,不再是被动协议解析下的仅靠检测SLOAD信号的上升沿跳变;
4)在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流“00001”,对起始标志序列流的检测是一直循环进行的,即本次协议解析开始后,在提取存储硬盘状态的过程中,同时启动下一次协议解析的起始标志序列流;
5)容错策略为本次协议解析开始后,对当前协议解析后的硬盘状态数据予以暂时储存,同时启动下一次协议解析的起始标志序列流,若所有硬盘的状态数据提取完毕后,正好检测到下一次协议解析的起始标志序列流或未检测到协议解析的起始标志序列流,则将所有硬盘的状态数据分配给硬盘的状态指示灯,以标示硬盘状态;若所有硬盘的状态数据未提取完毕,但检测到下一次协议解析的起始标志序列流,则本次提取的硬盘状态数据失效, 自动清空错误不完整数据,实现容错处理。
实施例a) 检测所界定协议解析起始的标志,即检测在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流“00001” ;
b)检测不到协议解析起始标志序列流时,不对SDATA信号线上的任何变化做出响应;当检测到所设定的协议解析起始标志序列流“00001”时,启动对硬盘状态数据的解析,但将解析后的硬盘状态数据予以暂时储存,同时继续检测协议解析起始标志序列流 “00001” ;
c)本次协议解析开始后,对当前协议解析后的硬盘状态数据予以暂时储存,同时启动下一次协议解析的起始标志序列流,若所有硬盘的状态数据提取完毕后,正好检测到下一次协议解析的起始标志序列流或未检测到协议解析的起始标志序列流,则将所有硬盘的状态数据分配给硬盘的状态指示灯,以标示硬盘状态;若所有硬盘的状态数据未提取完毕, 但检测到下一次协议解析的起始标志序列流,则本次提取的硬盘状态数据失效,自动清空错误不完整数据,实现容错处理。除说明书所述的技术特征外,均为本专业技术人员的已知技术。
权利要求
1. 一种基于序列流检测的SFF-8485协议容错解析方法,其特征在于步骤如下1)重新界定协议解析起始标志,即SLOAD信号线上连续出现4个时钟周期的低电平,紧接着的下一个时钟周期内,SLOAD信号线电平跳变为高电平,即SLOAD有一上升沿跳变;即在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流“00001”, 即连续的四个低电平和一个高电平;2)当检测不到协议解析起始标志序列流时,不对SDATA信号线上的任何变化做出响应;当检测到所设定的协议解析起始标志序列流“00001”时,启动对硬盘状态数据的解析,但将解析后的硬盘状态数据予以暂时储存,同时继续检测协议解析起始标志序列流 “00001” ;3)重新界定协议解析起始的标志,即界定协议解析起始标志序列流“00001”,不再是被动协议解析下的仅靠检测SLOAD信号的上升沿跳变;4)在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流 “00001”,对起始标志序列流的检测是一直循环进行的,即本次协议解析开始后,在提取存储硬盘状态的过程中,同时启动下一次协议解析的起始标志序列流;5)步骤1)、3)所述的协议解析开始后,对当前协议解析后的硬盘状态数据予以暂时储存,同时启动下一次协议解析的起始标志序列流,若所有硬盘的状态数据提取完毕后,正好检测到下一次协议解析的起始标志序列流或未检测到协议解析的起始标志序列流,则将所有硬盘的状态数据分配给硬盘的状态指示灯,以标示硬盘状态;若所有硬盘的状态数据未提取完毕,但检测到下一次协议解析的起始标志序列流,则本次提取的硬盘状态数据失效, 自动清空错误不完整数据,实现容错处理。
全文摘要
本发明提供一种基于序列流检测的SFF-8485协议容错解析方法,步骤如下1)重新界定协议解析起始标志,即SLOAD信号线上连续出现4个时钟周期的低电平,紧接着的下一个时钟周期内,SLOAD信号线电平跳变为高电平,即SLOAD有一上升沿跳变;即在SLOAD信号线上,在时钟信号的配合下,检测设定的协议解析起始标志序列流“00001”,即连续的四个低电平和一个高电平;2)当检测不到协议解析起始标志序列流时,不对SDATA信号线上的任何变化做出响应;当检测到所设定的协议解析起始标志序列流“00001”时,启动对硬盘状态数据的解析,但将解析后的硬盘状态数据予以暂时储存,同时继续检测协议解析起始标志序列流“00001”。
文档编号H04L29/06GK102404320SQ20111036019
公开日2012年4月4日 申请日期2011年11月15日 优先权日2011年11月15日
发明者刘涛 申请人:浪潮电子信息产业股份有限公司