系统韧性研究(1)| 何谓「系统韧性」?

4、系统韧性:概念、要素与脆弱性解析 本文深入解析了系统韧性的核心概念、关键要素与脆弱性问题。内容涵盖明确关键功能、安全边界定义与管理、时空交互的影响、反馈循环与学习文化的重要性、系统的灵活性与开放性,以及脆性系统的风险。同时,文章还分析了各要素之间的相互关系,并通过实际案例探讨了增强系统韧性的策略与实践。无论是在信息安全、计算机系统设计,还是复杂系统管理领域,这些内容都为构建具备强大抗干扰能力的系统提供了重要指导。 阅读详情

过去十年,系统韧性作为一个关键问题被广泛讨论,在数据中心和云计算方面尤甚,同时它对赛博物理系统也至关重要,尽管该术语在该领域不太常用。大伙都希望自己的系统具有韧性,但这到底意味着什么?韧性与其他质量属性(如可用性、可靠性、鲁棒性、风险应急能力、安全防御能力和柔性服务能力)有何关系?韧性是这些质量属性的一部分还是全部,是它们的超集,亦或其他云云?在确保系统具备韧性与否之前,我们首先要解开这些问题的答案,并确切地吃透:到底什么才是系统韧性。

作为赛博物理系统韧性需求开发工作的一部分,我最近完成了关于韧性的现有标准和文献的研究。我的研究发现:“韧性”这个术语通常在非正式场合使用彷佛它有明显的含义,在这些场合,它被定义为相似但又略微不同的解释。

我的另一个发现是,韧性一词其实有着两种截然不同的含义。本文是由7篇组成的系列文章中的第一篇,重点关注系统韧性而不是组织韧性,后者的范围要大得多——组织韧性主要涉及业务连续性,包括人员、信息、技术和设施的管理。

01

什么赋予系统以韧性?

一般而言,如果一个系统在逆境中持续执行任务(即,如果它在可能导致中断的过度压力下提供所需的能力),那么它就是有韧性的。有韧性很重要,因为无论一个系统设计得多么好,现实迟早都会破坏这个系统。软件或硬件中的遗留缺陷最终将导致系统无法正确执行所需功能,或导致系统无法满足一个或多个质量要求(例如,可用性、可靠性、鲁棒性、风险应急能力、安全防御能力和柔性服务能力)。无风险应急方案或风险应急方案失效将导致事故的发生,攻击者可能会通过未知或未修复的安全漏洞危害到系统,外部环境异常(例如断电或温度过高)也会中断服务。

由于这些不可避免的破坏,可用性和可靠性是不充分的,因此系统也必须具有韧性。它必须能够抵御逆境并提供连续性服务,即便是在不利事件和条件造成干扰后也需要运行在降级模式。它还需要能够迅速从这些干扰可能造成的伤害中恢复。就像Timex(始创于1854年的美国钟表品牌)的老广告一样,一个有韧性的系统可以做到“受虐千百遍运转如初恋。”

然而,系统韧性的本身比前面的解释要复杂得多。系统韧性不是一个简单的布尔函数(即系统不是简单的“具有韧性或不具有韧性”)。没有一个系统能够100%抵御所有不良事件或情况。韧性总体而言是一个程度的问题,通常不能用单一的有序量表来衡量。换言之,说系统A比系统B更有韧性可能是个伪命题。

想要充分理解韧性,必须将其组成部分进行分解、还原。为了表现出韧性,系统必须包含控制逻辑:对不良事件和条件的检测,对干扰的正确响应和干扰过后的迅速恢复。因为韧性会假设不利事件和条件一定会发生,如何防止不利情况的发生并不在韧性的范围内。

一些韧性控制逻辑支持检测,而其它控制逻辑支持响应或恢复。因此,一个系统可能在某些方面具有韧性,但在其他方面则不然。系统A可能是在某些特定不良事件的检测方面最有韧性的,而系统B可能在某些特定特性事件的响应方面,是最具韧性的;以此类推,系统C可能是在从某些不良事件造成的特定伤害中恢复方面,是最有韧性的。

了解系统抵御逆境的范围边界非常重要:

  • 在中断的情况下,系统必须继续提供哪些关键功能/服务?
  • 哪些类型的逆境会干扰这些关键能力的交付(即,系统必须能够容忍哪些不利事件和条件)?
  • 什么资产受到什么类型/级别的破坏会导致中断?

以上几点引出了对系统韧性的更详细、更细致的定义:

系统在一定程度上具有韧性,能够快速有效地保护其关键能力免受不利事件和条件造成的干扰。

前面的定义隐含着不良事件和条件会发生的想法。系统韧性是指当这些潜在的破坏性事件发生和条件存在时,系统会做什么。系统是否检测到这些事件和情况?一旦检测到它们,系统是否正确响应?之后系统是否恢复正常?

一些组织将“避免”不良事件和条件的发生纳入系统韧性范围。然而,“避免”并不在系统韧性的定义范围内,这是具有误导性和不恰当性的。避免或预防逆境并不能使系统更有韧性,相反,避免减少了对韧性的需求,因为如果逆境从未发生,系统就不需要有韧性。

图1说明了前文关于系统韧性定义中的关键概念之间的关系。韧性系统使用防护的韧性技术来被动抵御不利事件和条件,或主动检测这些不利情况对其作出反应,并从其造成的伤害中恢复,从而保护其关键能力(和相关资产)免受伤害。这些不利事件和条件中的每一个都与以下次要质量特征之一有关:鲁棒性、安全性、网络安全(包括防篡改)、军事生存能力、能力、寿命和互操作性。我们接下来会在本系列的第二篇文章中展开讨论。

↑图1:系统韧性定义中的关键概念

图2显示了通过韧性控制的有序应用来管理不良事件并恢复的时间线。

↑图2:韧性时间线示例

要理解系统韧性的全部范围和复杂性,重要的是要理解前文定义的关键词含义,以及它们在上图中的关系。

保护由以下四个功能组成:

① 抵御能力是指系统在不利事件或条件下被动防止或最大限度减少伤害的能力。被动防御的韧性技术包括模块化架构(该架构可防止模块之间的故障传播)、避免单点失败,以及电气设备的屏蔽、使计算机和网络设备免受电磁脉冲(EMP)的干扰。

检测是系统主动检测(通过检测技术)的能力:

  • 关键能力的丧失或降级
  • 对实现关键能力所需资产的危害
  • 可能对关键能力或相关资产造成伤害的不利事件和条件

② 反应是指系统对正在进行的不良事件的发生做出积极反应或对不良条件的存在做出反应的能力(通过反应技术实现反应)。在检测到逆境时,系统可能会停止或避免不利事件,消除不利条件,从而消除或最大限度地减少进一步的伤害。反应技术包括采用异常处理、降级操作模式以及冗余投票等

③ 恢复是指系统在不良事件结束后主动从伤害中恢复的能力(通过恢复技术实现恢复)。恢复可以是完全的,即系统恢复到完全运行状态,所有损坏/销毁的资产都已修复或更换。恢复也可以是部分恢复(例如,使用冗余资源恢复全部服务而不进行更换/修复)或最小恢复(例如仅提供有限服务的降级模式操作)。恢复还可能包括系统的演变或调整(例如,通过重新配置自身),以避免未来发生不良事件或条件。

系统功能是系统在逆境造成中断的情况下必须继续提供的关键服务。

④ 资产是有价值的物品,必须加以保护,使其免受不利事件和条件造成的伤害,因为它们实现了系统的关键功能。在所有不利事件和条件下,通常不可能完全防止对所有资产造成损害。因此,通常会对资产进行优先级排序,以便检测、反应和恢复首先集中精力保护最重要的资产。与韧性相关的资产包括:

  • 系统组件:系统的组件子系统、硬件、软件(如应用程序、基础设施、操作系统和固件)、网络(如设备、无线电和电缆)和设施
  • 系统数据:系统存储、生成和操作的数据
  • 系统外部资产:系统负责保护其免受伤害的任何系统外部资产(如人员、财产、环境、资金和声誉)

对这些资产造成的危害包括:

  • 对系统功能的危害:服务完全或部分丧失以及服务被盗
  • 对系统组件的危害:硬件或软件的破坏、损坏、盗窃或未经授权的逆向工程
  • 对数据的危害:访问丢失(可用性违规)、损坏(完整性违规),未经授权的披露(机密性和匿名性违规)和交易抵赖(不抵赖违规),以及关键程序信息的逆向工程(CPI)(防篡改违规)
  • 对系统外部资产的危害:资金损失、声誉损失、业务损失以及环境损害或破坏

不良事件是指由于其压力而可能通过对相关资产造成伤害来破坏关键能力的事件。这些不良事件(及其相关质量属性)包括以下情况的发生:

  • 不利的环境事件,如系统外部电力损失以及地震或野火等自然灾害(鲁棒性,特别是环境耐受性)
  • 输入错误,如操作员或用户错误(鲁棒性,特别是容错性)
  • 满足要求的外部可见故障(鲁棒性,特别是故障容限)
  • 事故和未遂事故(安全)
  • 网络安全/篡改攻击(网络安防与反篡改)
  • 恐怖分子或敌对军事力量的人身攻击(生存能力)
  • 负载过大导致的负载峰值和故障(容量)
  • 过度老化和磨损导致的故障(寿命)
  • 通信丢失(互操作性)

不利条件是指由于其压力性质而可能干扰或导致关键能力中断的条件。这些不利条件包括以下情况的存在:

  • 恶劣的环境条件,如过高的温度和恶劣的天气(鲁棒性,特别是环境耐受性)
  • 系统内部故障,如硬件和软件缺陷(鲁棒性,特别是容错性)
  • 安全隐患(安全)
  • 网络安全威胁和漏洞(网络安防和反篡改)
  • 军事威胁和弱点(生存能力)
  • 过载(容量)
  • 过度老化和磨损(长寿)
  • 降级通信(互操作性)

值得注意的是,防篡改(AT)是一种特殊情况,乍一看可能与韧性无关。AT的目标是防止对手对机密软件等关键程序信息(CPI)进行逆向工程。防篡改专家通常认为,在这种情况下,对手将获得包含要进行逆向工程的CPI的系统的物理占有权,确保系统在篡改的情况下继续运行是无关紧要的。然而,篡改也可以远程尝试(即,无需首先获得系统的占有权)。在对手无法访问的情况下,AT对策可能是检测对手远程尝试访问和复制CPI,然后通过将CPI归零进行响应,此时系统将不再可操作。因此,远程篡改确实具有韧性影响。

02

总结与预告

本文阐述了系统韧性质量属性的详细而细致的定义,是关于系统韧性系列文章的开篇。在本系列的第二篇文章中,我将就这个定义阐明系统韧性与其他密切相关的质量属性之间的关系。敬请期待。

交通系统韧性研究综述 本文对交通系统韧性的相关研究进行了系统性综述,涵盖定义、度量指标、数学模型及增强策略。通过数据库检索与引文分析筛选核心文献,识别了多个热点子课题,并指出当前研究空白与未来方向,为后续研究提供理论基础和方法参考。 阅读详情

相关推荐

【Labview学习】——如何实现软件的中/英文切换

各位亲爱的小伙伴们大家好,这里是小万的labview专题,今天为大家带来的是软件的中/英文切换,在全球化的浪潮之下,各行各业发生着巨大的变化,emmm………… 以下是简单的演示图片,注意观察菜单栏和软件界面各控件的语言状态: 本次分享将分为两部分:菜单中英文切换&界面控件中英文切换 ** 菜单中英文切换 ** 1. 中/英文菜单制造 要想实现菜单的中/英文语言切换,就得做两个菜单,一个...

weixin_44827166的博客 1万+

软件工程之韧性工程

韧性工程的含义是通过设计使得系统能够经受不利的外部事件例如操作人员失误或网络攻击的影响。系统的韧性是指系统在出现破坏性事故例如设备失效和网络攻击的情况下能够保持系统关键性服务的连续性的程度。一个有韧性的系统能够在系统设计者所作出的一些基本假设不再成立的情况下也能够保持正常运行。对韧性的定义包含了三个方面的基本思想:1、一个系统所提供的服务中有一些是关键性服务,这些服务的失效会造成严重的人员、社会或...

weixin_40768973的博客 805

光学遥感显著目标检测初探笔记总结

一张图片里最吸引注意力的部分就是显著性物体,其实是模拟人的一个注意力机制。目标是希望通过计算机的方法让我们自动定位和模拟人的这种感知能力,从而去定位场景中的一个让人感兴趣的目标。

醋酸洋红的博客 2077

系统韧性研究(2)|系统韧性如何关联其他质量属性?

韧性功能支持上表中列出的系统韧性的八个从属质量属性(如鲁棒性、安全性和网络安全性)中的一个或多个。系统韧性不是一个孤立的质量属性。鉴于本文是关于系统韧性及其细节的系列文章中的第二篇,所以它更多的是与鲁棒性、安全性、网络安全、防篡改、生存性、容量、寿命和互操作性直接相关,而与适应性、可用性、性能、可靠性和可修复性的关系不大。这些资产中的每一项都会受到许多不同类型的特定于资产的损害,例如服务的损失或降级、关键系统组件的损坏或破坏、关键数据的机密性和完整性的损失,以及持续运营所需的外部系统或对象的损坏或毁坏。

EasyOps_DevOps的博客 486

AURIX™ TC3xx 调试口保护 secure debug

AURIX™ TC3xx 调试口保护 secure debug UCB_DBG_ORIG and UCB_DBG_COPY Content 使用Debug Password 保护调试接口设置 项目硬件接口保护方案 hexview Lock using UDE Unlockusing UDE Lock using Lauterbach Unlock using Lauterbach

2301_76563067的博客 6861

ROS机器人未知环境自主探索功能包explore_lite最全源码详细解析(一)

本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包

慕羽★的博客 3937

为复杂混沌的微服务生产环境设计韧性系统

太长不读版 即使每一个微服务都在测试部门的QA环境上通过了测试,当将其一个个部署到生产环境后,也必然会发生故障。 不能以通过测试部门的QA测试为目标,而应该为生产环境的韧性而设计。 当使用鱼骨根因分析法、因果回路图或者麦肯锡MECE分析法进行分析时,要小心不要用错场景,掉进复杂混沌世界的深渊。 面对复杂混沌的生产环境,应该本着“不信有好事”的原则来进行“明哲保身”式的软件设计,并在生产环境中利用...

IDEAL Garden 512

MTK(camera篇)Camera整体点亮

本文介绍了在MTK平台上添加新Camera Sensor的驱动开发流程。主要内容包括:1)MTK Camera采用HAL3架构,驱动层主要负责sensor电源控制和寄存器操作;2)详细说明了添加新sensor需要在多个文件中进行的修改,包括设备树配置、内核头文件、驱动列表、电源序列等;3)特别指出需要配置I2C地址表,并导入tuning文件和metadata文件以完善ISP处理流程。文章提供了完整的文件修改清单,涵盖了从内核层到HAL层的完整开发过程,为MTK平台Camera Sensor驱动开发提供了具体

weixin_49303682的博客 362

【韧性架构设计】分布式系统的韧性

由许多协同工作的微服务组成的云原生应用程序架构形成了一个分布式系统。确保分布式系统可用——减少其停机时间——需要提高系统的弹性。弹性是使用提高可用性的策略。弹性策略的示例包括负载平衡、超时和自动重试、截止日期和断路器。弹性可以通过不止一种方式添加到分布式系统中。例如,让每个微服务的代码都包含对具有弹性功能的代码库的调用,或者让特殊的网络代理处理微服务请求和回复。弹性的最终...

全网:架构师研究会 748

PyTorch深度学习项目实战100例数据集

最近很多订阅了的用户私信咨询有些数据集下载不了以及一些文章中没有给出数据集链接,为了解决这个问题,专门开设了本篇文章,提供数据集下载链接,打包100例的所有数据集。本专栏适用人群:深度学习初学者,专栏将具体讲解如何快速搭建深度学习模型用自己的数据集实现深度学习小项目。 本专栏整理了《PyTorch深度学习项目实战100例》,内包含了各种不同的深度学习项目,包含项目原理以及源码,每一个项目实例都附带有完整的代码+数据集。

优快云 精品推荐 2万+

Android PMS——概述(一)

PMS(Package Manager Service)是 Android 操作系统的一个重要组件,它负责管理应用程序的包信息以及与应用程序的安装、卸载、权限控制等相关功能,确保应用程序的安全性和稳定性。 Android PMS 负责维护一个应用程序包的清单信息,该清单是一个 XML 文件,包含应用程序的各种元数据,例如应用程序的包名、版本号、权限要求、组件信息等。PMS通过访问该清单文件来获取应用程序的信息。 此外,Android PMS 还负责应用程序的安装和卸载。在安装应用

小旭的专栏 1668

系统韧性研究(3)| 工程系统韧性要求

如本系列第一篇文章的初始图所示,系统韧性可以是被动的,也可以是主动的,即被动韧性被动地抵御逆境,而主动韧性主动地检测、应对逆境并从逆境中恢复。在第三篇文章中,我将阐述系统韧性需求,这些需求推动选择架构、设计和实现功能(例如,保障、安全控制和韧性相关的模式和习惯用法),以实现所需类型和级别的韧性。关于与防篡改(例如,试图远程访问关键程序信息)、生存能力(例如,检测敌方雷达或导弹锁定等威胁)、容量(例如,系统接近或超过其最大容量)和寿命(例如,接近或超过设计寿命的系统组件)相关的不利因素,可以指定类似的要求。

EasyOps_DevOps的博客 597

SAP 费用化采购订单简介

费用性采购的核心特点费用性采购的流程费用性采购的优势适用场景业务场景前台操作1、创建成本中心---KS012、创建采购订单---ME21N3、采购订单审批---ME29N4、采购订单收货---MIGO5、查看成本中心费用---S_ALR_870136116、控制费用化的采购订单自动带出科目和成本中心SAP费用性采购(Expense Procurement)指的是企业在采购过程中,直接将采购的物料或服务成本计入费用科目,而不是记入库存账户的采购行为。

我小时候很黑的博客 2016

【JY】从“刚性抵抗“到“韧性适应“:延性与韧性研究的百年演进(延性韧性篇)

14] 钱稼茹, 程丽荣, 周栋梁. 普通箍筋约束混凝土柱轴心受压性能试验研究[J]. 建筑结构学报, 2002, 23(6): 15-21."传统抗震设计仅关注结构在弹性阶段的强度,这是不充分的。[12] 陈肇元. 唐山地震震害调查与结构抗震设计反思[J]. 建筑结构学报, 1977, (1): 1-15.不同于传统的"不倒"标准,该方法关注:地震造成的经济损失、修复所需时间、功能恢复速度等指标。1964年阿拉斯加地震(Mw 9.2)后,结构工程界出现了一个值得深思的现象:部分按当时规范设计的"

Gavinson的博客 528

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

上一篇: 优维产品最佳实践:实例视图
下一篇: 间歇性微服务问题...
优维科技EasyOps
博客等级 码龄5年 1483粉丝 395原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值