高完整性系统:Fault Tolerant Design

news2024/12/25 14:11:09

目录

1. INTRODUCTION TO FAULT TOLERANCE

1.2 Definitions

1.3 Two Kinds of Faults

1.4 Hardware vs Software Faults

1.4.1 Failure Curve for Hardware

1.4.2 Hardware and Software Failures

1.5 Causes of Failures

1.6 3 Ways to Class Failures

1.6.1 Temporal Behaviour

1.6.2 Output Behaviour

1.7 Independence vs Correlated 独立性与相关性

2. REDUNDANCY

2.1 冗余 Redundancy

2.2 Hardware Redundancy 硬件冗余

2.2.1 Detecting Errors

2.3 投票(Voting)

2.3.1 近似一致(Approximate Agreement)

2.3.2 投票算法(Voting Algorithms)

2.3.3 多数投票(Majority Voting)

2.3.4 通用k-多数投票(Generalised k-plurality voting)

2.3.5 通用中位数投票(Generalised Median Voting)

2.3.6 Comparison of Voters 

2.4 N模块冗余(N-Modular Redundancy)

2.5 清除(Purging)


1. INTRODUCTION TO FAULT TOLERANCE

容错系统:如果系统能在有限数量的故障存在的情况下,依然按照规定的规格运行,那么这个系统就被认为是容错的。

  • "有限数量的故障"指的是我们作为工程师选择的容错等级,具体容错等级的选择通常基于HAZOP(危害及可操作性研究)等工具。
  • "按照规定的规格在故障存在的情况下运行"意味着系统必须能够检测到故障的发生,并进行故障处理。

1.2 Definitions

  • 故障(Failure):系统行为偏离规定的规格。
  • 缺陷(Fault):故障的原因,可能是错误的步骤,过程,数据定义等。
  • 错误(Error):缺陷的表现(发生)。
  • 可靠性(Reliability):系统在特定时间内无故障运行的概率。

1.3 Two Kinds of Faults

  • 硬件缺陷:物理缺陷,可能导致系统或组件产生错误。 A physical defect that can cause the system or component to produce an error
  • 软件缺陷:软件源代码中的缺陷,可能导致系统或组件产生错误。A defect in the source of the software that can cause the system or component to produce an error

1.4 Hardware vs Software Faults

硬件和软件以不同的方式失败。硬件通常会随着时间的推移出现故障,如元件的退化或环境条件的改变。反观软件,则在相同的状态和输入下,每次都会失败或每次都会成功,这就使得软件的故障更加系统性。

1.4.1 Failure Curve for Hardware

Does this make sense for software failures? No!

1.4.2 Hardware and Software Failures

Hardware (tends to) fail randomly 硬件(倾向于)随机故障

  • e.g. degradation of components 组件的退化
  • e.g. changes in environmental conditions 环境条件的变化

Software (tends to) fail systematically 软件(倾向于)系统性故障

  • with same state, same inputs, fails every time or succeeds every time (although beware concurrency and other sources of nondeterminism) 相同的状态,相同的输入,每次都失败或每次都成功(但要注意并发性和其他非确定性的来源)

1.5 Causes of Failures

  • 规格中的缺陷 Faults in the Specification:需要良好的规格验证技术。
  • 系统组件中的缺陷 Faults in System Components(软件或硬件):需要良好的工程技术(本课程的重点)。
  • 环境影响导致的缺陷 Faults due to Environment Effects:例如,对于太空船来说可能是辐射,对于其他系统可能是温度,G力等。(在HAZOP等工具中应被识别出来)

1.6 3 Ways to Class Failures

  • 时间行为 Temporal Behaviour:永久的,间歇的或瞬态的 permanent, intermittent or transient。
  • 输出行为 Output Behaviour:非恶意的或拜占庭式的 Non-Malicious or Byzantine。
  • 独立性和相关性 Independence and Correlation:独立的或相关的 Independent or Correlated。

1.6.1 Temporal Behaviour

1.6.2 Output Behaviour

非恶意输出:所有接收的组件都能一致地解释输出。

拜占庭式输出:所有接收的组件无法一致地解释输出。

1.7 Independence vs Correlated 独立性与相关性

考虑两个相同的服务器,故障等于服务器崩溃。这两个服务器的故障是独立的还是相关的?在这里,我们需要理解它们的独立性和相关性。就像在可靠性块图(Reliability Block Diagrams)中,我们假设服务器故障是不相关的。

在这个过程中,更深入的理解和扩展,可以涉及到如何进行HAZOP,以及不同类型的故障(例如拜占庭故障)可能如何影响系统的工作。此外,我们也可以研究不同的容错策略,如冗余,备份,多版本等,以及如何在设计时考虑这些策略来提高系统的容错性。

2. REDUNDANCY

2.1 冗余 Redundancy

冗余是一种技术,使得在部分组件失效的情况下,系统仍能继续运行。主要类型包括:

  • 硬件冗余 Hardware Redundancy:如使用多个处理器、复制硬件组件及计算。
  • 软件冗余 Software Redundancy:如开发多种实现方式的软件。
  • 信息冗余 Information Redundancy:如使用错误检查和错误纠正编码。
  • 时间冗余 Time Redundancy:如重试任务,事务回滚等。

例如,空中客车A330/340的设计就使用了硬件冗余。具体内容可以参考 Airbus FCS。

2.2 Hardware Redundancy 硬件冗余

硬件冗余用于检测和容忍系统中的特定错误。例如,在一个静态对(Static Pair)中,监视器和接口互相检查。其中的假设是,P1和P2是独立失败的。

2.2.1 Detecting Errors

例如,当监视器从P1接收到32.0,从P2接收到32.1,这是正常的;但如果从P1接收到32.0,从P2接收到4.3,那么就存在错误。但这时就需要确定到底是P1还是P2出现了故障。

2.3 投票(Voting)

当需要比较超过两个组件时,可以使用投票机制,以确定可能出现故障的组件。如下面的示例,P1, P2, P3通过投票器输出结果。

2.3.1 近似一致(Approximate Agreement)

例如,当P1,P2,P3分别输出24.2、24.1、24.3时,如果他们的输出在某个小距离ε内,我们就认为这两个测量值是足够相等的(sufficiently equal)。在这个例子中,P1和P2是足够相等的,而P3与它们的距离较大,因此可能存在错误。

2.3.2 投票算法(Voting Algorithms)

投票算法决定了应该输出什么。例如,当P1,P2,P3分别输出24.2、24.1、24.3时,应该输出什么?

接下来我们会详细解释三种投票方式:Majority Voting 多数投票,Generalised k-plurality voting 通用k-多数投票,Generalised Median Voting 通用中位数投票。

2.3.3 多数投票(Majority Voting)

多数投票是一种简单的投票算法,其中的输出是投票中得到最多数的选项。在错误检测中,如果大多数的组件(例如P1和P2)提供了相同的值,那么这个值就会被视为正确的,而其他与众不同的值(例如P3)会被视为可能的错误。

 

  • 当票数最多的集合(例如S1)的票数超过总数的一半时(即> N/2),投票算法将输出S1中的任意元素。
  • 当票数最多的集合(例如S2)的票数没有超过总数的一半时,投票算法不会产生输出(表示为⊥)。

2.3.4 通用k-多数投票(Generalised k-plurality voting)

在通用k-多数投票中,我们考虑那些得票数至少为k的值。在我们的例子中,如果k等于2,那么只有那些至少由两个处理器产生的值才会被考虑。这种方式提供了一种灵活的容错机制,因为我们可以根据处理器的数量和信任度来选择合适的k值。

 

  • 当票数最多的集合(例如S2)满足多数约束(即票数≥k),投票算法将输出S2中的任意元素。
  • 当票数最多的集合(例如S2)不满足多数约束(即票数<k),投票算法不会产生输出(表示为⊥)。

2.3.5 通用中位数投票(Generalised Median Voting)

在通用中位数投票中,我们选择所有值中的中位数作为结果。如果处理器数量是奇数,中位数就是排序后处于中间的那个值;如果处理器数量是偶数,中位数就是排序后中间两个值的平均值。这种方法对于处理器输出值相差较大的情况特别有效,因为中位数可以提供一个相对稳定的结果。

在通用中位数投票中,我们反复消除最远的两个元素,直到最后剩下1个或2个元素,然后选择其中任何一个作为输出。

2.3.6 Comparison of Voters 

不同的投票算法有不同的优点和缺点,选择哪种算法取决于具体的应用场景和容错需求。

2.4 N模块冗余(N-Modular Redundancy)

N模块冗余是一种容错技术,它通过掩蔽故障组件的故障来保持系统的正常运行。具体来说,对于有N个组件的系统:

  • 系统可以容忍⌊(N-1)/2⌋个组件的失败。
  • 系统可以检测到??个组件的故障。(这个问题在给出的slides中没有给出具体的数值,需要根据具体的N值和冗余策略来确定。)

2.5 清除(Purging)

如果一个单位是故障的,应该对其进行清除,除非这个故障是暂时的。具体的清除策略包括:

  • 自我清除(Self purging):单位将自己与投票输出进行比较,如果不同,就对自己进行清除。
  • 筛选冗余(Sift-out redundancy):将所有的单位配对,如果某个单位与大多数单位的输出不同,那么控制器就会断开与该单位的连接。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/593304.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java 岗史上最全八股文面试真题汇总,堪称 2023 年面试天花板

前言 现如今&#xff0c;Java 面试的本质就是八股文&#xff0c;把八股文面试题背好&#xff0c;面试才有可能表现好。金九银十招聘黄金季已经来临&#xff01;大家在考研和找工作中纠结的时候&#xff0c;不妨先看一下面试题&#xff0c;毕竟我们的最终目标就是为了找一份心仪…

机器视觉怎么对陶瓷板外观尺寸进行自动检测?

随着陶瓷行业的发展&#xff0c;陶瓷板的生产和质量控制面临越来越高的要求。而机器视觉技术作为一种高精度、高效率、无损、可靠性高的自动化检测手段&#xff0c;已经成为陶瓷板外观尺寸自动化检测的首选方案。本文就如何利用机器视觉对陶瓷板外观尺寸进行自动检测进行分析和…

配电室的管理制度及综合监控系统的介绍

安科瑞虞佳豪 1、配电室全部机电设备&#xff0c;由配电室人员负责管理和值班&#xff0c;停送电由值班电工操作&#xff0c;非值班电工禁止操作&#xff0c;无关人员禁止进入配电室&#xff1b;公司内有关上级部门因检查工作&#xff0c;必须要进入这些场所时&#xff0c;应由…

【温故而知新】阶段总结!我在技术成长过程中的收获!

时间&#xff1a;2023年05月31日 作者&#xff1a;小蒋聊技术 邮箱&#xff1a;wei_wei10163.com 微信&#xff1a;wei_wei10 【20230531】【温故而知新】阶段总结&#xff01;我在技术成长过程中的收获&#xff01;_小蒋聊技术_免费在线阅读收听下载 - 喜马拉雅手机版欢迎…

第十八章行为性模式—观察者模式

文章目录 观察者模式解决的问题结构实例存在的问题使用场景 JDK 提供的实现 - Observable示例 行为型模式用于描述程序在运行时复杂的流程控制&#xff0c;即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务&#xff0c;它涉及算法与对象间职责的分配。行…

WMI系列--WMI订阅事件

前边对于WMI的基础内容进行简单的总结和整理&#xff0c;结下来的这篇内容主要针对WMI的永久订阅事件展开详细的阐述。 WMI事件订阅机制 WMI事件分为两类&#xff0c;分别是本地事件订阅和永久性事件订阅。 所谓本地事件是指运行在本地上下文环境当中的单个进程的事件&#x…

入门编程的方法和步骤

编程是信息时代必备的一项技能&#xff0c;无论是从事计算机行业的人员&#xff0c;还是从事其他行业的人员&#xff0c;学会编程对个人职业发展都有着重要的意义。但是&#xff0c;对于初学者来说&#xff0c;如何入门编程往往是一个比较棘手的问题。本文将介绍一些入门编程的…

训练YOLOv5对象检测模型的逐步指导

介绍 欢迎来到我们的 YOLOv5 教程系列的第 2 部分!如果您还没有查看本系列的第 1 部分,我建议您先阅读该部分;它涵盖了如何在 Windows 和 Google Colab 上安装用于真实对象检测的 YOLOv5 ,我们假设您已在本报告中完成了这些操作。 也就是说,一旦您设置了环境,您就可以开…

DuDuTalk语音工牌:语音数据分析在销售场景的应用价值

在现今这个数字时代&#xff0c;企业需要更高效、更有效地沟通和合作。语音数据的收集和分析能够增加销售团队和客户之间的联系&#xff0c;同时提高销售闭合率。因此&#xff0c;了解和利用销售沟通语音数据的价值&#xff0c;是现代企业所必须的。 销售沟通语音数据指的是在…

精益生产管理的优势特点以及工具步骤

一、何为精益生产 精益生产&#xff08;LeanProduction&#xff0c;简称LP&#xff09;是美国麻省理工学院数位国际汽车计划组织&#xff08;IMVP&#xff09;的专家对日本“丰田JIT&#xff08;JustInTime&#xff09;生产方式”的赞誉之称&#xff0c;精&#xff0c;即少而精…

不同股指期货交易平台的优缺点比较,让你一目了然!

股指期货交易平台是股指期货交易的重要场所&#xff0c;是期货市场的核心平台之一。在股指期货交易平台上&#xff0c;投资者可以进行股指期货的买卖&#xff0c;获得相应的投资收益。然而&#xff0c;对于大部分投资者来说&#xff0c;如何选择一个好的股指期货交易平台却是一…

locust压测脚本文档组织结构

以下为locust压测脚本文档组织结构模板&#xff0c;和TestDeploy对接丝滑&#xff0c;轻松实现分布式压测。 1、common common主要是存放改写了的请求方法&#xff0c;包括GET、POST等等&#xff0c;作为统一入口&#xff0c;以便各个API统一调用。 2、config config主要存…

读取PPT模板替换数据生成PDF报表

一、项目背景 因本人的公司是做短信通信服务的&#xff0c;所以客户需要将短信的发送量&#xff0c;按照他们给定的PPT样例模板&#xff0c;来生成PDF报表数据&#xff0c;即PPT的样式&#xff0c;数据如何展示都是规定好了的&#xff0c;而我需要做的就是将真实的数据&#xf…

B站参战618,直播带货成变现香饽饽,直播数据分析必看

五月已经见底&#xff0c;年中电商大考“618购物节”自26号拉开序幕。 各大主播、平台、品牌都紧锣密鼓地布起活动网。去年&#xff0c;B站因首次参战双十一冲上热门&#xff0c;平台为此上线直播购物分区。 来源-B站 经过去年各大品牌、UP主对双十一购物节直播带货的试水、观…

LCR测试仪夹具选型指南新鲜出炉

好马配好鞍&#xff0c;好仪器配好夹具。有不少朋友好奇&#xff0c;仪器选好了&#xff0c;那测试夹具如何挑选&#xff1f; 接下来安泰测试为大家简单介绍一下关于LCR测试仪中常用的测试夹具。 1/ 四端/四端对测试线 01 TH26011AS 频率范围&#xff1a;5Hz-100kHz 最大…

火山引擎DataLeap:如何构建一套完整、易用的数据标准体系

数据标准是数据治理体系中的核心要素之一。 一方面&#xff0c;统一的数据标准可以在复杂的业务场景下&#xff0c;帮助团队对齐数据口径&#xff0c;提升数据在分析、诊断等场景的质量与效率&#xff1b;另一方面&#xff0c;数仓团队与分析师团队也需要沉淀一套敏捷、可控的…

TimSort——最快的排序算法

TimSort——最快的排序算法 排序算法是每个程序员绕不开的课题&#xff0c;无论是大学课程还是日常工作&#xff0c;都离不开排序算法。常见的排序算法有&#xff1a;冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序、基数排序等。下面是这些算法性能的概…

2022年天府杯全国大学生数学建模竞赛D题高等院校综合发展状况与学科质量评估解题全过程文档及程序

2022年天府杯全国大学生数学建模竞赛 D题 高等院校综合发展状况与学科质量评估 原题再现&#xff1a; 问题背景&#xff1a;   高等院校是我国经济社会发展中的重要参与者&#xff0c;一流大学与一流学科的建成是实现社会主义共同富裕的重要基础。随着国家第二轮“双一流”…

PMP课堂模拟题目及解析(第16期)

151. 一个全球多学科项目的项目经理如何才能确保在所有学科中使用变更控制过程&#xff1f; A. 执行影响分析以考虑所有项目学科 B. 确保变更控制委员会有来自所有学科的代表 C. 邀请所有学科参加变更控制系统委员会会议&#xff0c;但仅从所参加的学科收集意见 D. 代表其…

让你不再好奇图片识别工具怎么用

你是否曾经遇到过想知道一张照片中是什么物品或者景色&#xff0c;却不知道如何搜索的情况&#xff1f;或者&#xff0c;你是否曾经想要识别一张照片中的人脸&#xff0c;想要借助图片识别软件&#xff0c;又不知道图片识别工具怎么用&#xff1f;别担心&#xff0c;接下来我将…