17系统的可靠性分析与设计
2021-04-25 10:51:54 1 举报
AI智能生成
系统架构师考试时整理的系统的可靠性分析与设计部分内容
作者其他创作
大纲/内容
17.1 可靠性概述
(1)可靠度。系统的可靠度 R(t)是指在 t=0 时系统正常的条件下,系统在时间区间[0,t]内能正常运行的概率
(2)可用度。系统的可用度 A(t)是指系统在时刻 t 可运行的概率。
(3)可维度。系统的可维度 M(t)是指系统失效后,在时间间隔内被修复的概率
(4)平均无故障时间。可靠度为 R(t)的系统平均无故障时间(Mean Time To Failure,MTTF)定义为从 t=0 时到故障发生时系统的持续运行时间的期望值:式中 λ 为失效率,是指器件或系统在单位时间内发生失效的预期次数,在此处假设为
常数
(5)平均故障修复时间
(6)平均故障间隔时间
17.2 系统故障模型
故障的来源以及表现
(1)失效:硬件的物理改变
(2)故障:由于部件的失效、环境的物理干扰、操作错误或不正确的设计引起的硬件或软件中的错误状态
(3)错误(差错):故障在程序或数据结构中的具体位置
故障或错误有如下几种表现形式
永久性:描述连续稳定的失效、故障或错误。在硬件中,永久性失效反映了不可恢复的物理改变
间歇性:描述那些由于不稳定的硬件或变化着的硬件或软件状态所引起的、仅仅是偶然出现的故障或错误
瞬时性:描述那些由于暂时的环境条件而引起的故障或错误
几种常用的故障模型
1.逻辑级的故障模型
2.数据结构级的故障
故障在数据结构上的表现称为差错
独立差错:一个故障的影响表现为使一个二进制位发生改变。
算术差错:一个故障的影响表现为使一个数据的值增加或减少 2i(i=0,1,2,…)。
单向差错:一个故障的影响表现为使一个二进制向量中的某些位朝一个方向(0 或 1)改变
3.软件故障和软件差错
软件故障是指软件设计过程造成的与设计说明的不一致的情况,软件故障在数据结构或程序输出中的表现称为软件差错
软件故障只与设计有关
常见的软件差错
非法转移:程序执行了说明中不存在的转移。
误转移:程序执行了尽管说明中存在,但依据当前控制数据不应进行的转移。
死循环:程序执行时间超过了规定界限。
空间溢出:程序使用的空间超过了规定的界限。
数据执行:指令计数器指向数据单元。
无理数据:程序输出的数据不合理
4.系统级的故障模型故障在系统级上的表现为功能错误,即系统输出与系统设计说明的不一致。如果系统输出无故障保护机构,则故障在系统级上的表现就会造成系统失效
17.3 系统配置方法
单机容错技术
1.自检技术
自检指系统在发生非致命性故障时能自动发现故障和确定故障的性质、部位,并自动采取措施更换和隔离产生故障的部件
2.冗余技术
冗余可分为硬件冗余(增加硬件)、软件冗余(增加程序,如同时采用不同算法或不同人编制的程序)、时间冗余(如指令重复执行、程序重复执行)、信息冗余(如增加数据位)等
冗余技术中最常用的两种方法是重复线路和备份线路
重复线路指用多个相同品种和规格的元件或构件并联起来,当作一个元件或构件使用,只要有一个不出故障,系统就能够正常工作
备份线路与重复线路的差别是参加备份的构件并不接入系统,只有在处于工作状态的构件发生故障后才把输入和输出接到备份构件上来,同时切断故障构件的输入、输出
双机热备份技术
双机热备份技术是一种软硬件结合的较高容错应用方案。该方案是由两台服务器系统和一个外接共享磁盘阵列柜和相应的双机热备份软件组成。其中的外接共享磁盘阵列柜也可以没有,而是在各自的服务器中采取 RAID(Redundant Array of Independent Disk,独立冗余磁盘阵列)卡
双机热备份系统采用“心跳”方法保证主系统与备用系统的联系
工作模式
双机热备模式即目前通常所说的 active/standby 方式,active 服务器处于工作状态;而standby 服务器处于监控准备状态,服务器数据包括数据库数据同时往两台或多台服务器写入(通常各服务器采用 RAID 磁盘阵列卡),保证数据的即时同步
双机互备模式,是两个相对独立的应用在两台机器同时运行,但彼此均设为备机,当某一台服务器出现故障时,另一台服务器可以在短时间内将故障服务器的应用接管过来,从而保证了应用的持续性,但对服务器的性能要求比较高
双机双工模式是集群的一种形式,两台服务器均处于活动状态,同时运行相同的应用,以保证整体系统的性能,也实现了负载均衡和互为备份,通常使用磁盘柜存储技术。Web 服务器或 FTP 服务器等用此种方式比较多
服务器集群技术
集群技术指一组相互独立的服务器在网络中组合成为单一的系统工作,并以单一系统的模式加以管理。此单一系统为客户工作站提供高可靠性的服务。大多数情况下,集群中所有的计算机拥有一个共同的名称,集群内任一系统上运行的服务可被所有的网络客户使用
17.7 备份与恢复
备份
最常用的技术
数据转储
静态转储是指在系统中无事务时进行的转储操作
动态转储是指转储操作与用户事务并发进行,而且转储工作不会影响事务的运行,但它不能保证副本中的数据正确有效
建立日志文件
建立日志文件是指把所有事务对系统的修改活动都登记下来。若发生了故障,对于静态转储,可以在重装后备副本之后,利用日志文件进行恢复,避免重新运行事务;对于动态转储,可以把转储得到的副本和转储期间的日志文件结合起来进行故障恢复,使系统恢复正常工作状态
方式
脱机备份也叫冷备份,是一种静态转储技术,备份系统所有的物理文件(控制文件、数据文件、重做日志和归档日志)和初始化文件
联机备份也叫热备份,是一种动态转储技术,由于只备份所需的文件,因而被看作是部分备份
17.6 提高系统可靠性的措施
硬件冗余
硬件冗余最常用的是三模冗余(Triple Modular Redundancy,TMR),三个相同的模块接收三个相同的输入,产生的三个结果送至多数表决器。表决器的输出取决于三个输入的多数,若有一个故障模块,则另两个正常模块的输出可将故障模块的输出掩蔽,从而不在表决器输出产生差错
考虑表决的可靠性,为了能够容忍表决器的故障,可以对表决器也采用3 倍冗余
TMR 的推广是 N 模冗余(N-Modular Redundancy,NMR)。与三模冗余原理相同,但采用 N 个相同的模块, N > 3 ,且 N 为奇数,以方便进行多数表决
信息冗余
信息冗余是指通过在数据中附加冗余的信息以达到故障检测、故障掩蔽或容错的目的。应用最广泛的是海明校验码、奇偶校验码
1.海明校验码
海明校验码是由 Richard Hamming 于 1950 年提出,目前仍然被广泛采用的一种很有效的校验方法,是只要增加少数几个校验位,就能检测出二位同时出错,亦能检测出一位出错并能自动恢复该出错位的正确值的有效手段,后者称为自动纠错
2.循环冗余校验码
循环冗余校验码(Cyclic Redundancy Chec,CRC)也广泛应用于移动通信和磁盘数据存储中。CRC 也是给信息码加上几位校验码,以增加整个编码系统的码距和查错纠错能力
17.5 系统的可靠性分析和可靠度计算
组合模型
组合模型是计算机容错系统可靠性最常用的方法。一个系统只要满足以下条件,就可以用组合模型来计算其可靠性。
作如下假设
(1)系统只有两种状态:运行状态和失效状态
(2)系统可以划分成若干个不重叠的部件,每个部件也只有两种状态:运行状态和失效状态
(3)部件的失效是独立的
(4)系统失效当且仅当系统中的剩余资源不满足系统运行的最低资源要求(系统的状态只依赖于部件的状态)时
(5)已知每个部件的可靠性,可靠性指可用度或可靠度等概率参数
马尔柯夫模型
马尔柯夫模型的两个核心概念是状态和状态转移。系统的状态表示了在任何瞬间用以描述该系统所必须知道的一切。对于可靠性分析,马尔柯夫模型的每个状态表示了有效和失效模块的不同组合。如果每个模块都是处于有效和失效两种情况之一,则一个 n 模块系统的完整模型有 2 n 个状态
17.4 系统可靠性模型
时间模型
故障植入模型
基本假设如下
(1)程序中的固有错误数是一个未知的常数。
(2)程序中的人为错误数按均匀分布随机植入。
(3)程序中的固有错误数和人为错误被检测到的概率相同。
(4)检测到的错误立即改正
数据模型
数据模型下,对于一个预先确定的输入环境,软件的可靠度定义为在 n 次连续运行中
软件完成指定任务的概率
0 条评论
下一页