综述:云计算中科学工作流调度故障与入侵容忍性方法综述 Mazen Farid, Oluwatosin Ahmed Amodu, Heng Siong Lim, Jamil Abedalrahim Jamil Alsayaydeh, Mohammed Fadhl Abdullah, Faten A. Saif

《Computers》:A Survey of Fault and Intrusion Tolerance Approaches for Scientific Workflow Scheduling in Cloud Computing Mazen Farid, Oluwatosin Ahmed Amodu, Heng Siong Lim, Jamil Abedalrahim Jamil Alsayaydeh, Mohammed Fadhl Abdullah and Faten A. Saif

【字体: 大 中 小 】 时间:2026年05月13日 来源:Computers 4.2

编辑推荐:

  摘要 为了在云环境中提供可靠的服务,容错性可能是最重要的考虑因素。云服务对故障的固有敏感性会阻碍其性能和可靠性。因此,容错性成为维持可靠性的必要特性,但由于动态架构和复杂的相互依赖性,这很难实现。为了解决云服务可靠性问题,文献中已经开发了许多容错方法。本文

  摘要 为了在云环境中提供可靠的服务,容错性可能是最重要的考虑因素。云服务对故障的固有敏感性会阻碍其性能和可靠性。因此,容错性成为维持可靠性的必要特性,但由于动态架构和复杂的相互依赖性,这很难实现。为了解决云服务可靠性问题,文献中已经开发了许多容错方法。本文介绍了一项最近的研究调查,旨在对各种故障和入侵容忍架构进行分类。此外,它还对现有的故障和入侵容忍方法以及结合方法进行了全面的批判性分析,以提高云服务的可靠性、可用性和执行效率。报告还基于成本、完成时间、可靠性、安全性、资源利用率、能耗和故障比率等关键标准,对所研究的系统框架进行了比较。本研究旨在全面回顾这一主题,以便研究人员从文献中的现有模式中汲取见解,并对一些具有挑战性的问题和前景提供更深入的见解。这将促进高度弹性的容错和抗入侵调度算法的发展,以适应当前和未来的云应用。

1. 引言
云计算已成为向最终用户提供计算服务最常见的方法之一。所提供的资源可以作为一种公用服务,用户根据他们使用的服务付费,这是这一范式的关键组成部分[1,2,3,4,5,6]。例如,安装大规模虚拟机(VM)来运行基于云的应用程序在经济上高效且高度可扩展[7,8]。科学计算是云系统支持的主要应用之一,其中应用程序数据和子任务可以在多个组织之间分布式处理[9]。为了支持日益复杂的计算过程,引入了科学工作流来高效地自动化和管理这些应用[10]。科学工作流管理系统最初是在网格环境中开发的,用于支持这些工作流的控制、执行和监控[11]。随着云计算的发展,研究人员越来越多地探索基于云的科学工作流系统,因为它们具有可扩展性和灵活性[12]。尽管有这些优势,但由于复杂性、动态资源行为和分布式架构,基于云的工作流系统仍然容易发生故障[13,14]。此类故障可能会对任务执行、工作流完成和整个系统的可靠性产生负面影响[15]。例如,过载的机器或与网络、内存或系统组件相关的故障可能会中断任务执行,并在依赖任务中传播延迟[16]。这些挑战促使人们开发了容错调度方法来提高工作流的弹性。例如,[17]中的工作通过优化数据放置和容错任务调度解决了地理分布式云工作流调度中的挑战,展示了执行效率和能耗方面的改进。除了意外故障外,基于云的科学工作流还面临来自入侵和恶意活动的安全威胁,这进一步激发了对集成容错和抗入侵调度机制的需求。

1.1. 基于云的科学工作流中的安全问题
在云中执行科学工作流有许多优势,如易于访问资源、按需可扩展性、提高资源利用率和节省成本[12]。尽管如此,仍存在重大的安全问题。首先,科学工作流的逻辑结构容易受到攻击。科学工作流通常被建模为有向无环图(DAG)。图中节点之间的依赖关系会导致错误继承问题,即任何阶段发生的错误都会传递给最终输出[18]。其次,与传统业务工作流相比,科学工作流具有高计算复杂性特征[19]、长执行时间[9]和高研究价值。因此,它们被认为更具挑战性和重要性:(1) 需要大量的虚拟机(VM)来执行科学工作流。虚拟机很容易成为云中的攻击目标[20],因此虚拟机数量越多,攻击的规模就越大。(2) 科学工作流可能需要执行数月甚至数年[21],这给攻击者提供了足够的时间进行攻击[22]。(3) 科学工作流通常应用于大气科学、高能物理和生物信息学等主要科学研究领域[23],任何小的错误都可能造成巨大损害[24]。最后,云采用多租户共存的服务模型。不同的租户通过虚拟化技术在相同的物理设施上被逻辑分隔。虽然这种模型实现了灵活的资源管理,但也引入了自己的风险。一方面,攻击者可以通过侧信道突破逻辑边界并攻击同一物理设施中的其他租户[25]。另一方面,在虚拟化环境中还存在一些漏洞,如虚拟机逃逸漏洞[26]。一旦攻击者通过这些漏洞获得了对整个虚拟化环境的管理权限,就可以控制所有租户的虚拟机[27,28]。

1.2. 动机
所确定的挑战是本次系统综述的催化剂,重点关注为云环境中工作流调度设计的容错和抗入侵算法。这些算法根据它们提供的容忍类型进行分类,重点关注它们的目标和属性。此外,我们强调了通过将容错方法与抗入侵方法相结合所取得的改进。这项分析提供了各种方案的比较概述,突出了它们的独特特点,以激发该领域的进一步探索。由于科学工作流的特殊特性,解决云中科学工作流的安全问题相当困难。许多科学操作计算密集[29],需要使用虚拟机。然而,攻击者可以轻易地针对这些虚拟机[20]。同样,实施科学工作流也很耗时[9]。这给了攻击者足够的时间发起攻击。此外,科学工作流通常是一种特别容易受到攻击的有向无环图(DAG),因为中间故障会传递到最终结果中[18]。在多个科学领域,中间科学工作流数据还包含敏感信息。如果这些数据被黑客攻击,用户将受到严重损害[30]。这是科学工作流调度的主要安全威胁之一,即未经授权的实体入侵云系统。考虑到这些挑战,很明显,容错性和抗入侵性是影响云服务提供商提供的服务质量以及消费者使用服务质量的两个主要因素。

1.3. 贡献
有趣的是,在过去几年中,已经有人尝试提出容错或抗入侵技术来提高基于云的应用程序中科学工作流调度的质量。虽然一些调查已经讨论了云计算中的工作流调度和容错性,但很少有研究关注在统一框架内对容错性和抗入侵性进行综合分析。表1总结了之前的相关调查论文,强调这些工作都没有同时审查容错和抗入侵技术。与之前的调查相比(见表1),本次对现有云计算容错方法和模型的综述旨在激励研究人员开发更高效的算法。因此,本文讨论了故障的各个方面以及容错性和抗入侵性在云计算中的重要性,同时揭示了其中的挑战和未来的考虑因素。表1总结了本次调查的主要贡献:
- 系统地分类了云计算中科学工作流的容错和抗入侵调度方法。
- 基于服务质量(QoS)指标(如成本、完成时间、可靠性和资源利用率)提供了现有技术的比较分析。
- 通过文献计量分析进行了算法级别的比较,以识别研究趋势、权衡和文献中的空白。
- 强调了容错性和抗入侵性整合的局限性,并概述了开放的挑战和未来的研究方向。
除了分类之外,这项调查还通过结合比较评估和文献计量分析提供了分析性见解。这种综合分析揭示了服务质量指标(如完成时间、成本、可靠性和能耗)之间的关键权衡,并指出了文献中的一个结构空白,即抗入侵性与容错工作流调度之间的整合有限。

本文的其余部分安排如下:第2节介绍了系统综述过程;第3节详细介绍了云系统中的一些基本概念和术语,以及衡量(容错)性能的参数;第4节专门讨论了云中工作流调度的容错性和提出的容错技术;第5节讨论了抗入侵性以及文献中提出的一些实现抗入侵性的工作;第6节详细讨论了挑战和开放的研究方向;第7节总结了这项调查。

在相关文献的回顾中,文章[31]从服务质量(QoS)受限的角度研究了工作流调度技术,涵盖了安全性和容错性方面,但在具体调度策略方面有所欠缺。文章[32]提供了云计算的多目标调度算法概述,但没有讨论抗入侵技术。文章[21]对云工作流调度进行了分类分析,忽略了容错性和抗入侵性的考虑。文章[33]深入探讨了云计算中的容错解决方案,但没有讨论安全性和抗入侵性。文章[34]的审稿人探讨了故障模型和容错指标,但忽略了抗入侵性的考虑。文章[35]回顾了容错方法,但没有讨论抗入侵策略。文章[36]定义了故障类型和各种方法,但未能解决抗入侵性和安全挑战。文章[37]根据系统架构和安全性对云科学工作流调度算法进行了分类,但缺乏对已识别安全问题的潜在解决方案的探索。文章[38]关注了云计算中的研究方法,建议结合机器学习,但没有提供实际应用。最后,文章[39]提供了云工作流的安全性和隐私属性的全面概述,但强调了在处理安全违规关键方面的重大局限性。

2. 系统综述过程
本节简要解释了用于定义、分析和解释这项综述的方法。它制定了研究问题,以精确界定本研究的目标。随后制定了搜索计划,以便于检查相关研究论文。这是通过应用特定的搜索词和目标数字存储库来实现的。为纳入和排除标准建立了明确的指导方针,界定了在审查阶段决定纳入或排除研究文章的参数。随后,汇总收集的数据,以确保全面且有意义地解决所有研究问题。

2.1. 研究问题(RQ)
以下研究问题是在本综述的规划阶段制定的,其答案在后续章节中提供:
RQ1. 哪些术语和指标主要与云计算中的容错性和抗入侵性相关?
RQ2. 哪些容错性和抗入侵性方法与云计算中的工作流调度相关?
RQ3. 哪些模拟工具主要用于在云计算中进行容错性和抗入侵性实验?
RQ4. 哪些算法可以同时有效处理容错性和抗入侵性?
RQ5. 从云计算中的容错性和抗入侵性中可以获得哪些关键见解?
RQ6. 在云计算背景下,工作流调度中的容错性和抗入侵性面临的主要挑战和未来建议是什么?
为了回答这些问题,我们遵循了系统文献综述(SLR)协议[38]。

2.2. 搜索策略
制定搜索短语的过程包括以下步骤[39]:(1) 从研究问题中选择关键词。(2) 识别同义词和不同的拼写形式以扩大关键词范围。(3) 在相关文献中检查这些关键词。(4) 使用“布尔OR”合并同义词和不同的拼写。(5) 使用“布尔AND”连接主要术语和条件。随后,我们提取了与QoS定制相关的总体术语和条件。在数字图书馆引擎中使用的相应搜索字符串是:“((“容错” OR “容错” OR “抗入侵” OR “抗入侵容忍” OR “容错入侵” OR “容错入侵容忍” OR “容错和抗入侵”) AND (“工作流调度”) AND (“云计算” OR “云”) AND (“QoS”)”)”。

2.3. 研究方法(QA)
本研究的方法旨在仔细评估现有文献中针对研究问题的有针对性和公正的解决方案。已建立的搜索标准涵盖了云计算、优化、工作流程、调度、故障处理、入侵检测、容错性和服务质量(QoS),确保了全面的覆盖范围。2.4. 样本区分策略(SDS)文献选择过程遵循了一个结构化的多阶段筛选程序,包括识别、重复项删除、标题/摘要筛选、全文资格评估和最终纳入。在每个阶段,都计算了保留和排除的研究数量,并在图1中报告,以确保透明度和可重复性。图1. 区分策略。最初,通过数据库搜索共识别出300篇研究论文。在筛选之前,移除了50条记录,其中包括重复项(n = 17)和其他原因被排除的记录(n = 33),剩下250篇论文进行初步筛选。在筛选阶段,根据标题和摘要审查排除了50篇论文。剩余的200篇论文通过全文评估进行了资格审核,其中42篇论文因超出调查范围(n = 35)或缺乏足够的阐述和结论(n = 10)而被排除。经过这一过程后,最终选出了155篇关于容错和/或入侵容忍工作流程调度的相关研究论文纳入本研究。这些论文的发表年份从2005年到2026年不等,包括基础性和最新的贡献。为了提高透明度和可重复性,在筛选之前识别并删除了来自多个来源的重复记录。选择过程遵循了两阶段筛选程序:首先基于标题和摘要进行初步过滤,然后使用预定义的纳入和排除标准进行全文评估。审查过程的步骤在图1中进行了说明。由于工作流程调度研究的不断发展,既包括了同行评审的期刊文章,也包括了会议论文。社论、论文、简短摘要和非同行评审的来源被排除在外。研究的选择基于与容错和/或入侵容忍工作流程调度的相关性、技术贡献的完整性以及实验或分析评估的充分性。2.5. 数据澄清和规划(DCP)为了系统地组织和便于比较必要的数据,构建了全面的框架(表1、表2、表3、表4、表5、表6和表7)。随后,这些收集的信息被精心组织起来,以解决手头的具体研究问题。2.6. 目标受众本研究针对的是专注于在结合容错和入侵容忍系统的同时进行工作流程调度的研究人员。此外,来自分布式计算、云计算、大数据、网格和并行计算等不同科学领域的个人也可以通过几十年的研究提供关于使用容错和入侵容忍方法进行工作流程调度的见解。具有容错和入侵容忍功能的调度算法已在计算机科学和实际数学领域的多个领域得到广泛应用,包括神经网络权重计算、时间序列分析、市场优化等任务。2.7. 数据来源选定的数据库包括索引数字图书馆(例如IEEE Xplore、ScienceDirect、Springer、Scopus和Wiley)和补充搜索平台(例如Google Scholar和ResearchGate)。使用索引数据库作为主要来源,以确保检索到的研究的质量和可靠性,而补充平台则用于提高覆盖率并识别主要数据库中未索引的潜在相关作品。随后用于本研究的在线电子数据库包括:(1) IEEE Xplore(https://ieeexplore.ieee.org,访问日期为2026年5月6日)。(2) ScienceDirect(https://www.sciencedirect.com,访问日期为2026年5月6日)。(3) Springer(https://www.springer.com,访问日期为2026年5月6日)。(4) ResearchGate(https://www.researchgate.net,访问日期为2026年5月6日)。(5) Google Scholar(https://scholar.google.com,访问日期为2026年5月6日)。(6) Scopus(https://www.scopus.com,访问日期为2026年5月6日)。(7) Taylor & Francis(https://www.taylorandfrancis.com,访问日期为2026年5月6日)。(8) Wiley Online Library(https://onlinelibrary.wiley.com,访问日期为2026年5月6日)。2.8. 文献计量QoS分析方法进行了文献计量分析,以量化容错科学工作流程调度中服务质量(QoS)目标的体现。分析是在2026年3月28日使用以下查询从Scopus检索到的(N = 161)篇出版物上进行的:TITLE-ABS-KEY ((“workflow scheduling” OR “task scheduling” OR “scientific workflow” OR “workflow management”) AND (“fault tolerance” OR “intrusion tolerance” OR “security-aware scheduling”) AND (“cloud computing”))。分析应用于每条记录的标题、摘要、作者关键词和索引关键词。对于给定的文档(d),如果任何关键词(k∈K_i)出现在(d)中,则定义QoS类别的存在为:(m_i(d) = 1),否则(m_i(d) = 0),其中(K_i)表示与类别(m_i)相关联的预定义关键词集。QoS目标根据工作流程调度中的功能角色被分为五类:时间性能:完成时间、执行时间、延迟、响应时间和吞吐量。财务成本:成本、定价、预算、计费和经济性。能源和可持续性:能源、功率、能源消耗和能源效率。资源和基础设施:资源利用、利用、负载均衡、分配、迁移、虚拟机和VM。SLA和QoS违规:截止日期、SLA、违规和约束。关键词集的选择基于工作流程调度文献中常见的评估指标以及在性能和资源管理研究中使用的术语。选择优先考虑在实验评估中一致使用的术语,以确保与算法级分析的兼容性。如果至少有一个相关关键词在组合文本字段中被检测到,则将记录分配到一个类别中。关键词检测使用精确短语匹配进行,以避免歧义并确保确定性提取。弹性类别(例如,容错性、可靠性、故障处理)未包含在比较分析中。这是由于搜索查询的构建明确要求包含与容错相关的术语,导致其在数据集中几乎普遍出现,从而限制了其区分价值。提取过程在算法1中进行了总结。该算法执行基于关键词的记录到QoS类别的确定性映射,并计算类别频率、术语级别频率和类别共现关系。没有应用统计推断或基于模型的估计。所有结果都是直接从可观察的术语频率中得出的,以保持可重复性和可追溯性。算法1:从文献计量记录中提取QoS类别输入:D = 文献计量记录集F = {标题、摘要、作者关键词、索引关键词}C = 与类别c_i相关的关键词集K_i∈C输出:类别计数表术语计数表类别共现矩阵1: 对所有c_i∈C,初始化category_count[c_i] ← 02: 对所有关键词k在所有K_i中,初始化term_count[k] ← 03: 对所有记录d和类别c_i,初始化存在矩阵P[d, c_i] ← 04: 对每个记录d∈D执行5: 通过连接F中的所有字段构建可搜索文本T_d6: 将T_d转换为小写7: 对每个类别c_i∈C执行8: matched ← False9: 对每个关键词k∈K_i执行10: 如果精确短语k出现在T_d中,则11: term_count[k] ← term_count[k] + 112: matched ← True13: 结束if14: 结束for15: 如果matched = True,则16: category_count[c_i] ← category_count[c_i] + 117: P[d, c_i] ← 118: 结束if19: 结束for20: 结束for21: 对每对类别(c_i, c_j)执行22: co_occurrence[c_i, c_j] ← 满足P[d, c_i] = 1且P[d, c_j] = 1的记录数量23: 结束for24: 由于查询引起的偏见,从比较解释中排除弹性类别25: 返回category_count、term_count和co_occurrence使用上述描述的161条记录的更广泛的Scopus数据集进行了QoS类别分析和文献计量可视化。相比之下,表3中报告的关键词统计是从一个更窄的Scopus搜索中得出的,该搜索专门针对云计算中容错工作流程调度的最新研究。补充搜索也在2026年3月28日使用以下查询进行:TITLE-ABS-KEY ((“workflow scheduling”) AND (“fault tolerance” OR “intrusion tolerance” OR “security-aware scheduling”) AND (“cloud computing”) AND (PUBYEAR > 2018) AND (LIMIT-TO (DOCTYPE, “ar”) OR LIMIT-TO (DOCTYPE, “cp”) AND (LIMIT-TO (LANGUAGE, “English”))该查询返回了2018年后发表的32篇英文期刊文章和会议论文。这个补充数据集仅用于生成表3中的关键词统计,并未用于QoS类别可视化或比较QoS分析。3. 基本概念和指标3.1. 基本概念3.1.1. 故障这是由于系统的一个或多个部分存在异常条件或错误而导致系统无法执行其预期任务[33,36,40,41,42]。故障在云系统中很常见。即使存在组件故障或发生一个或多个故障,容错性也是系统提供所需服务所必需的[43,44]。图2显示了系统中可能发生的几种类型的故障。图2. 故障分类[45]。图2根据故障的来源和行为将云系统中的故障分为几类。遗漏故障是由于硬件或软件组件未能执行预期操作而引起的,而与老化相关的故障是由于长期退化(如拒绝服务效应或存储耗尽)引起的。响应故障包括执行期间的错误值或状态传输错误。软件故障可能是短暂的或间歇性的,而与时间相关的故障包括提前或延迟执行偏差。其他故障,如永久性故障和设计错误,代表了系统故障的持久或结构性原因。这种分类突出了容错调度机制必须在云环境中解决的故障多样性。3.1.2. 错误由于故障的存在,系统组件可能会进入错误状态或错误条件。系统组件的错误性能可能导致系统部分或完全失败[36,41]。分布式系统中的不同类型的错误如图3所示。图3. 错误分类[45]。图3总结了分布式和云系统中的主要错误类别,包括网络、软件和时间相关错误。网络错误可能由数据包损坏、数据包丢失或拥塞引起,而软件错误包括内存泄漏和数值异常等问题。与时间相关的错误可能是永久的、间歇性的或短暂的。该图强调了不同的错误状态如何影响系统行为,并且如果通过容错机制不当处理,可能会传播成服务故障。3.1.3. 故障这指的是消费者可能检测到的系统错误行为。它可能来自人类或某些计算机系统。只有当系统的结果或输出不正确时,故障才被知晓[36,41,46]。故障可以如图4所示进行分类。图4. 故障分类[46]。图4展示了云系统中的故障分类,表明故障可能由遗漏、硬件、软件、网络或各种原因引起。这些故障可能表现为机器崩溃、应用程序异常、链接故障、时间违规或系统状态不正确等问题。该图强调了故障发生的多样性,并强调了需要能够解决云环境多层故障的容错机制。系统中的故障是由故障引起的错误造成的。故障、错误和故障之间的关系在下面的图5中进行了说明。图5. 故障、错误和故障。为了清晰和一致性,本研究采用了标准的可靠性术语。故障是指问题的根本原因(例如,硬件或软件缺陷)。错误是由故障引起的错误系统状态。当系统行为偏离预期时,就会发生故障,这可能包括错误输出、执行时间违规(超时)、性能下降或服务不可用。这些定义在整个论文中一致使用,以区分原因(故障)、系统状态(错误)和可观察的结果(故障),确保后续分析的概念清晰性。3.1.4. 容错性容错性被定义为系统在存在故障的情况下仍能正确运行的能力。它与故障检测不同,故障检测侧重于识别故障或异常,而容错性则侧重于在故障发生时保持系统的正确运行。3.2. 指标在评估和描述基于云的科学工作流程调度系统时,有几个设计指标和概念非常有用。特别是,当考虑容错性时,其中一些概念和术语非常相关。这些与算法的自适应性质有关,表明它可以自动响应特殊变化以实现特定目标。另一方面,实现目标可能需要使用原本可以节省的资源,从而导致开销。性能是一个更广泛的术语,表示系统/算法在特定指标方面的效率。云计算的性能有时会因为其大规模运行而容易受到故障的影响。表2对问题RQ1提供了详尽的解答。这些术语的解释以及相关指标可以在表中找到。表2. 与云计算中的容错性相关的术语和指标。3.3. 评估指标的定义和解释为了确保所审查研究之间评估指标的一致性,表2中列出的评估指标使用了明确的测量标准。makespan是最常报告的指标,用于量化在时间限制下的调度效率。可靠性通常被定义为在发生故障时成功完成任务的概率,通常通过复制和检查点机制来提高。成本和能耗直接受到冗余策略的影响。特别是基于复制的方法会增加资源使用,从而导致更高的运营成本和能源需求。资源利用率反映了基础设施使用的效率,而截止日期满足度则代表了在延迟敏感的工作流中满足时间限制的能力。表3报告了从补充的32条记录的Scopus数据集中获得的关键词统计信息。该表展示了最近研究中特别关注云计算中容错工作流调度的主要术语。出现频率最高的关键词是“云计算”(20次出现,总链接强度为46),其次是“工作流调度”(13次出现,总链接强度为34),“容错性”(10次出现,总链接强度为27),“任务调度”(6次出现,总链接强度为11)以及“可靠性”(5次出现,总链接强度为15)。相比之下,“入侵容忍性”仅出现了2次,总链接强度为5。这种差异表明,相关领域的最新文献更加强调故障处理和可靠性,而不是对抗性或入侵抵抗性调度。表3. 从文献计量分析中获得的关键词统计信息。4. 云计算中的容错性为了回答问题RQ2,本节深入解释了故障可能由于多种原因而重复出现的情况;其中一些原因可能是由于任务、硬件、操作系统或中间件[47]造成的。通过开发容错和抗入侵技术,可以在很大程度上解决这些问题。用于实现容错的一些技术包括:(1) 检查点,从最后一个检查点重新开始任务;(2) 在发生故障时将任务迁移到另一台机器;(3) 将任务副本存储在不同位置;(4) 回滚和恢复过程;(5) 将任务重新提交到相似的资源或不同的机器执行;(6) 重复执行任务直到成功;(7) 继续执行直到至少有一个副本成功完成,之后可以终止剩余的副本;(8) 救援工作流,使系统能够在任务失败后继续执行,直到无法进行故障修复[45]。需要注意的是,有几种复制技术。其中一种是通过(流行的)空间冗余,为执行某些任务提供额外的资源以增强韧性[47]。解决容错问题是必要的,因为它们有助于检测和处理可能由于硬件(H/W)故障或软件(S/W)故障而发生的系统故障。在云平台中,容错性尤为重要,因为它确保了性能、可靠性和应用程序的可用性。有效地访问和管理故障对于利用云计算的稳健性至关重要[40,41,42,48]。文献中的一些容错方法可以如图6所示进行分类。图6. 容错方法的分类。4.1. 容错方法的分类容错方法大致可以分为两类:反应式容错和主动式容错。4.1.1. 反应式容错在故障发生后,这种技术主要用于减少其对云系统的影响,以确保系统的稳健性或可靠性[42,43]。对于云和其他分布式系统,已经探索的反应式容错技术列在表4中。表4. 反应式容错机制。图7显示了主要容错机制与其优化的性能指标之间的关系。检查点与减少makespan和成本相关,复制提高了可靠性但增加了成本和能耗,迁移增强了可靠性和资源利用率,而重新提交提高了可靠性,但可能会增加makespan。该图突出了工作流调度中不同容错策略之间的权衡。图7. 容错机制对关键性能指标的影响。4.1.2. 主动式容错主动式技术用于主动预测故障,并用其他运行中的组件替换疑似故障的组件,从而避免从故障和错误中恢复的需要[35,43,44,52]。表5提供了主动式容错方法的概述。表5. 主动式容错机制。4.2. 容错调度算法本节回答了问题RQ2。在[56]的研究中,作者提出了动态容错工作流调度(DFTWS),它根据故障类型和任务重要性实时管理在线调度,做出容错决策。DFTWS并不总是准确的,其性能可能受到各种情况的影响。[57]的作者引入了一种容错调度方法,即使在内部和外部故障发生时也能通过减少截止日期来降低成本。容错调度(FTS)并不是为了节能而创建的。智能能源和可靠性感知调度(SERAS)算法以可接受的频率将任务发送到最相关的虚拟机,同时保持效率和完成云系统所需的时间。然而,SERAS缺乏故障预测策略,并且只考虑了两个指标[58]。容错弹性调度算法(FTESW)通过故障检测确保容错,从而减少了设备故障事件。它主要提高了资源使用率而不是能耗[59]。当发生短暂故障时,一种考虑能源的动态调度容错模型(IPIREM)提供了不需要任何故障分布估计的稳定评估。然而,复制过程成本较高[60]。在[61]中,作者提出了一种基于改进的差分进化算法(ANFIS)的自适应故障检测策略,用于基于云的调度,该策略可以主动监控资源负载波动。该策略在故障发生前提高了故障预测的准确性,但ANFIS仅基于虚拟机故障。[62]的作者开发了一种实时和动态的容错调度算法,通过资源调整(RA)策略动态提高资源利用率。该技术受到无法解决恶意云攻击引起的调度问题的限制。表6通过展示用于容错方法的最相关工具和算法来回答问题RQ2和RQ3,表7则展示了与云计算中科学工作流调度容错技术相关的不同参数,从而回答了问题RQ1和RQ2。尽管已经提出了许多适用于云环境的容错调度算法,但许多现有方法主要关注有限的性能指标,如makespan或执行成本。实际上,云工作流系统在高度动态和异构的环境中运行,必须同时优化多个目标,包括可靠性、安全性、能耗和资源利用率。因此,未来的研究应强调多目标优化框架,能够在故障和安全威胁存在的情况下平衡这些竞争目标。4.3. 比较分析的基础表6和表7中总结的算法根据它们对关键QoS指标(包括成本、makespan和可靠性)的影响进行了定性比较,这是由于实验设置和评估环境的不同而造成的。表6. 容错科学工作流调度算法的比较。4.4. 对容错调度方法的观察表6中总结的容错算法主要通过冗余机制(包括复制、故障检测和动态重新调度)来提高可靠性。SERAS[58]同时针对能源效率和可靠性,而FTS[57]则侧重于在截止日期限制下的成本最小化。一个共同的局限性是没有考虑对抗性条件。如[63]所指出的,恶意攻击没有被考虑在内,这反映了容错性与安全性独立处理的普遍趋势。这与数据集分析一致,其中容错性显著优于入侵容忍性。表7. 容错科学工作流调度算法的QoS参数。4.5. QoS指标的解释表7显示了容错调度方法中QoS指标的分布。makespan和成本是最常优化的指标,而能耗和故障比率则较少得到一致处理。没有一种方法能够同时优化所有QoS参数,表明调度设计中可能存在固有的权衡。基于复制的方法提高了可靠性,但可能会增加成本和能耗。相比之下,考虑能源的方法通常会降低功耗,但可能会以有限的故障预测能力为代价。4.6. 工作流调度研究的文献计量分析使用第2.8节中定义的查询从Scopus数据库构建了一个文献计量数据集。该数据集包括2016年至2026年的161篇出版物,限于英文的同行评审期刊和会议文章。它用于分析容错工作流调度中的关键词分布、时间趋势和主题结构。关键词出现分析显示,文献主要集中在基于云的执行和容错机制上。出现频率最高的关键词是“云计算”(87次出现),其次是“任务调度”(60次)和“容错性”(59次)。其他常见术语包括“负载均衡”(25次)、“调度”(16次)和“工作流调度”(14次),表明在分布式云环境中强调调度优化。观察到术语的碎片化,例如“容错性”、“fault tolerant”和“fault tolerant”分别出现。这些变体的聚合进一步强化了容错性作为中心主题的地位。相比之下,与入侵相关的术语在应用出现阈值下并未出现在最常见的关键词中,表明入侵容忍调度的相关性表示有限。图8展示了从第2.8节描述的更广泛的161条记录的Scopus数据集中获得的关键词聚类结果。聚类识别出四个主题组,代表了容错科学工作流调度的主要研究方向。第一个簇关注以性能为导向的容错调度,包括成本、能耗、makespan和可靠性,以及强化学习。第二个簇涵盖了基于云的工作流执行,包括云计算、虚拟机、机器学习和工作流管理。第三个簇代表了传统的容错机制,包括检查点、复制、迁移和资源利用率。第四个簇强调资源管理和QoS优化,包括负载均衡、能源效率和资源分配。图8. 工作流调度研究的关键词共现网络。节点大小代表关键词频率,链接强度反映了共现关系。时间分布显示持续增长,2020年后的出版物数量增加。如图9所示,2020年之前的年出版物数量少于12篇,到2025年达到峰值28篇。2026年的数量较少,反映了部分年份的数据。图9. 与容错设置相关的工作流调度出版物的时间分布(2016年—2026年3月28日)。没有观察到与入侵容忍性或安全感知调度相对应的明显簇,表明这些方面没有很好地整合在一起。这种容错性和以安全为导向的方法之间的分离突显了集成韧性感知调度框架的差距。4.7. QoS目标的文献计量分析使用算法1中定义的基于关键词的分类方法,我们分析了所有161条记录的标题、摘要和关键词,以量化QoS目标。时间目标是最突出的,出现在110项研究中(68.3%),其次是资源和基础设施考虑,在107项研究中(66.5%)。财务成本出现在66项研究中(41.0%),而与能源相关的目标出现在56项研究中(34.8%)。SLA或违规导向的术语出现在36项研究中(22.4%),表明对明确的服务保证的关注有限。在术语层面,makespan是最主要的时间指标,出现在61项研究中,其次是执行时间,在32项研究中。在成本类别中,成本出现在62项研究中,而预算和定价则较少见。与能源相关的分析主要由能源和能耗主导,分别出现在47项和36项研究中。资源导向的分析由利用率、分配和负载均衡领导,表明强调基础设施级别的调度效率。共现分析显示,时间和资源类别最为紧密相关,在78项研究中共同出现。相比之下,与服务水平协议(SLA)相关的术语与能源相关术语仅共同出现在11项研究中,这表明服务保障与可持续性考虑之间的整合程度较低。如图10所示,时间和资源目标在文献中占据主导地位,而成本和能源方面的内容相对较少,SLA相关指标也较为有限。表8中的详细术语级分布进一步证实了制作时间和执行时间是时间分析的主要关注点,而利用率和负载均衡是最常见的资源相关指标。需要注意的是,在这项研究中,吞吐量被归类为时间性能指标,因为它衡量的是单位时间内完成的工作量。然而,一些研究可能更广泛地将其视为调度性能或容量指标,尤其是在关注总体完成工作量的情况下。图10显示了分析数据集中服务质量(QoS)类别的覆盖情况,排除了由于查询引起的偏差导致的弹性指标。表8展示了数据集中所有QoS相关指标的完整术语级分布(N = 161),同样排除了弹性指标。图11中的共现矩阵进一步显示了时间和资源目标之间的强耦合关系,而SLA相关指标的整合程度较弱。总体而言,如图12所示,文献主要关注执行效率和资源优化,对服务保障和集成QoS建模的重视程度较低。图11显示了分析研究中QoS类别的共现矩阵。图12根据术语级文献计量频率展示了各类别的主要QoS指标。

4.8. 经验教训与建议
本节回答了研究问题RQ5。通常,人们希望有一种高度可靠且具有容错性的技术,这种技术还具备其他吸引人的特性,如降低能源消耗。对于系统来说,能够预测性地应对容错挑战同时提高资源利用率也是非常有利且优选的。长期以来,人们认识到复制是一种实现容错性的有前景的技术;然而,这种方法成本较高。此外,容错性需要考虑主机、虚拟机(VM)以及云服务提供商方面的故障。大多数被审查的方案都没有考虑能源消耗、故障率、可靠性和截止时间约束。然而,在现实中,所有传统的工件调度指标都很重要,无论容错性多么重要,都应予以考虑。这是因为有时可以为不同的应用指标分配不同的优先级。为科学工作流开发能够抵御云环境中故障的稳健调度方案非常重要。可以引入新的概念来实现这一目标。例如,参考文献[65]使用松弛时间的定义来模拟所有VM的随机性,并使用一组标准参数。资源故障参数来自不同的分布,从而使系统更加健壮。复制可以通过多种方式提高容错性,已经研究了不同的方法,并且可以进一步改进。在[66]中,复制数量是根据每个任务对执行时间的影响程度来确定的。通过使用无监督机器学习算法,该方法可以推断出复制次数,从而提供更准确的预测。这也展示了如何利用机器学习通过复制来提高容错性。除了复制之外,重新提交也是一种可以提高容错性的技术。然而,需要注意的是,这会增加执行时间。还可以利用复制启发式方法、轻量级检查点和重启策略[67]。复制启发式方法计算每个工作流任务所需的复制次数,从而减少资源浪费和执行成本。同样,轻量级检查点使得设备能够拥有有限的稳定存储空间,并更易于管理中间数据的传输,从而减少执行时间[66]。

本节全面概述了云计算中的常见故障,并将其归因于任务、硬件、操作系统和中间件等因素。强调了开发有效的容错和抗入侵技术的重要性。详细介绍了各种容错方法,包括检查点、作业迁移、复制、回滚和恢复、任务重新提交、重复执行任务、直到复制被销毁以及救援工作流。强调了容错性在确保云平台性能、可靠性和应用程序可用性方面的必要性。将容错方法分为反应性和主动性两类,并通过示例进行了说明。此外,本节还探讨了各种容错调度算法,讨论了动态容错工作流调度、容错调度、智能能源和可靠性感知调度、容错弹性调度、考虑能源的动态调度容错模型、自适应故障检测策略以及实时和动态容错调度等方法的优点和缺点。结论部分提供了见解,强调了将传统工件指标与容错指标相结合的重要性,介绍了新概念,利用复制和重新提交技术,并探索了利用机器学习来提高容错性的方法。文献中的一个重要观察结果是容错性和入侵容忍机制之间存在固有的权衡。虽然基于冗余的技术(如复制)可以提高可靠性,但它们可能会引入额外的攻击面并增加安全风险。这突显了需要平衡和综合的方法,同时考虑可靠性和安全要求。

5. 云计算中的入侵
本节关注入侵容忍性,回答了研究问题RQ2。入侵是一类广泛的攻击,不仅包括外部攻击者对计算机的破坏,还包括注册用户的未经授权使用[68]。这些入侵可以根据入侵者的权限或目标进行分类。入侵者可以是外部入侵者(即那些未注册为计算机系统用户的人,他们必须欺骗或绕过身份验证和授权过程),也可以是内部入侵者(即已注册为合法用户但试图超出其权限的人,例如尝试读取或修改未经授权访问的机密信息)。例如,安全人员可以(但不应该)采取恶意行动,或者操作员可能(但不应该)以不当方式停止计算机,从而导致服务拒绝。入侵目标可以分为以下几种:
- 信息保密:入侵泄露机密信息。
- 信息完整性:入侵试图生成虚假信息、修改或破坏敏感信息。
- 服务可用性:入侵试图阻止合法用户使用系统(服务拒绝)。

在可靠性术语中[69],入侵是一种故意的外部操作故障,即特定类型的故障。传统上,可靠性是通过故障预防和容错相结合来实现的。这种双重方法也可以应用于入侵,即我们可以考虑入侵预防和入侵容忍。入侵预防是大多数物理和逻辑访问控制机制的目标。当考虑到某些机制可能被击败的概率时,可以考虑入侵容忍技术。实际上,入侵容忍并不是一个现代概念。例如,密码学可以被视为一种非常成功的容错技术,用于抵御数据保密性的入侵以及检测未经授权的数据更改(通过加密签名)。此外,传统的容错技术可用于容忍入侵错误检测和恢复,或者应用错误掩蔽技术来维持数据完整性或服务可用性,尽管存在入侵。然而,这些容错方法通常被认为会对数据保密性造成损害,因为它们具有冗余性[70]。实现入侵容忍比实现故障容忍更加困难,因为它需要考虑意外和恶意故障[24,71]。另一个新兴趋势是利用机器学习技术来指导调度和复制决策。最近的方法利用数据驱动模型来预测故障并优化资源分配,从而在动态云环境中实现更适应性和高效的工作流执行。

5.1. 科学工作流调度的入侵容忍技术
本节回答了研究问题RQ2和RQ4。参考文献[72]利用科学工作流的空闲时间对中间数据进行加密,并将加密算法选择与任务调度算法相结合,以确保科学工作流的保密性,同时降低成本和时间。参考文献[73]提出了一种注重安全的策略来放置中间数据,以在三个方面保护中间数据:特权访问、完整性和保密性。为了提高科学工作流数据的可用性、保密性和完整性,参考文献[30]使用了不同的擦除码、加密算法和哈希函数,并考虑了科学工作流的截止时间。此外,参考文献[74]考虑了科学工作流的调度和中间数据分配。作者将它们建模为一个综合规划挑战,以减少云网络中中间数据的传输。为了优化任务规划、中间数据分配策略和任务调度,随后提出了一个名为HEA-TaSDAP的混合进化算法。参考文献[75]创建了TryXy,为科学工作流提供了安全的存储设施。在[24]中,ITSW设计者使用任务复制和投票系统来防止攻击者修改科学工作流的结果。ITSW忽略了由于意外[76]或恶意攻击[77,78]导致的延迟,这些延迟可能会增加整个工作流的制作时间。为了确定每个提交的子截止时间,Wang等人[27]提出了INHIBITOR,该系统首先使用截止时间划分过程。弹性资源提供系统旨在根据子截止时间最大化效率并降低成本。为了提高ITSW的入侵容忍性,使用了任务-VM映射框架和弹性资源分配机制。FITSW工作流调度算法可以进一步提高系统的容错和抗入侵能力。该算法在考虑由于意外故障或入侵攻击导致的延迟的同时提高了效率[79]。表9全面回答了研究问题RQ1、RQ2和RQ4,重点关注入侵容忍调度算法。容错性和入侵之间的关系在于它们共同的目标,即保护基于云的系统的完整性、可用性和安全性。虽然容错性主要关注系统抵御故障和中断的能力,但入侵检测专门用于识别和缓解安全威胁。在一个连贯的策略中,容错系统可以整合检测和应对入侵的措施,形成一种全面的方法来维护系统的可靠性和安全性。我们的文章还旨在展示对这两种技术都有效的算法。

表9提供了云计算中科学工作流调度的入侵容忍方法。大多数现有研究将容错性和入侵容忍性视为独立的研究问题。然而,现代云基础设施需要同时解决意外故障和恶意攻击的集成机制。开发结合故障检测、入侵检测和自适应调度策略的混合框架可以显著提高基于云的工作流系统的可靠性和安全性。这样的集成将使调度算法能够动态响应系统故障和安全违规,同时保持可接受的性能水平。

5.2. 关于入侵容忍调度的观察
表9中总结的入侵容忍方法明确关注安全性和对抗性韧性,而这些在容错方法中大多缺失。例如ITSW[24]和FITSW[79]将安全机制与工作流调度相结合,以在对抗性条件下提高可靠性。这些方法引入了额外的系统复杂性和计算开销,如它们的局限性所示。与容错方法相比,入侵容忍调度在研究数量和技术多样性方面都表现不足。关键词出现分析也支持了这种不平衡,其中入侵容忍的出现频率明显低于容错性。

本节回答了研究问题RQ5。目前,关于在基于云的应用中实现科学工作流调度入侵容忍性的研究相对较少,而且大多数研究并没有强调满足截止时间的要求。同样,大多数论文没有考虑系统成本,而经常考虑制作时间和可靠性。尽管同时解决这些目标具有挑战性,但未来的提案应该探讨如何在考虑所有这些指标的情况下实现入侵容忍性。此外,关于云系统的文献很多,提供了对不同类型入侵攻击的见解以及一些用于缓解这些攻击的技术。在这种情况下,为了在现有的分析和仿真框架内进行有效的性能评估,对这类入侵进行建模是必要的。为了解决由于故障(如中断和工作流修改)导致的问题[27],应防止或减轻导致资源失败或基于网络的攻击(如入侵)的威胁。通过改进多个指标可以实现这一目标,例如成功执行率、任务完成率、失败概率、任务周期、虚拟机预留时间率、成本以及任务时间与主机时间的比率以及任务周期延迟。可以利用和适应不同形式的入侵检测和预防技术[81]到现有框架中。例如,基于主机的入侵检测可以监控主机的文件系统、网络事件或系统调用,而无需任何额外的硬件。但是,它需要安装在每个虚拟机、管理程序或主机系统上,并且只能监控其安装所在主机的攻击。网络入侵检测系统(IDS)通过监控网络流量来识别入侵,它只需要放置在底层外部或虚拟网络上,从而可以同时监控多个系统。然而,挑战在于难以检测加密流量,并且只能检测外部入侵。此外,虚拟网络内的网络入侵也很难检测到。一种相对较新的技术是基于管理程序的IDS,用户可以监控和分析虚拟机、管理程序以及虚拟机-管理程序之间的通信。通过在主机、虚拟机、管理程序或外部网络上安装分布式IDS,可以获得网络IDS和基于主机的IDS的优点。然而,在集中式形式(集中式DIDS)下,它难以管理,且中央服务器可能会过载。同样,计算和通信成本也显著增加。

入侵预防技术是非常有吸引力的选择,因为它们可以帮助防止各种形式的攻击,如入侵攻击、网络攻击和系统级攻击。然而,由于它们是预防性机制,与IDS技术相比,它们的检测准确性较低。最后,检测和预防技术的结合是另一种选择。尽管在这种情况下,涉及的架构变得更加复杂,但它们可以有效防止和检测入侵。

本节探讨了云计算中的入侵容忍性,涵盖了多种方面,如入侵类型、基于入侵者权限的分类以及入侵目标(保密性、完整性和服务可用性)。讨论强调了入侵预防和容忍性的重要性,并将其与容错策略进行了类比。讨论了科学工作流调度中的入侵容忍技术,举例说明了利用加密、安全数据放置、擦除码和哈希函数来增强科学工作流数据安全性的研究。介绍了诸如ITSW、INHIBITOR和FITSW等著名的入侵容忍算法,每种算法在应对入侵挑战时都有其独特的优势和局限性。经验教训强调了需要综合考虑成本、任务周期、可靠性、安全性和截止日期等指标的全面解决方案。此外,本节提倡整合入侵检测和预防技术,以应对挑战并提出策略来提高系统对意外和恶意故障的韧性。许多入侵容忍性研究,如表9所示,主要依赖于集群技术,这些技术本质上具有容错功能。这种双重性质使这些算法能够同时抵御故障和入侵。

6. 挑战与未来建议
尽管在容错和入侵容忍的工作流调度方面取得了 recent 进步,但仍存在一些挑战。一个关键挑战是开发能够预测故障和安全威胁的智能调度算法。机器学习技术为预测性故障管理和异常检测提供了有希望的解决方案,使得工作流执行更加适应性和韧性。

本节通过概述工作流调度中的关键挑战和未来研究方向来回答研究问题6(RQ6)(见图13)。图13展示了本节的结构。图8总结了容错和入侵容忍工作流调度的主要研究挑战和未来方向。所确定的挑战包括容错性、安全性和入侵预防、优化、定价和成本、资源管理以及能源效率。该图还强调了新兴方向,如机器学习驱动的优化、动态定价、多目标调度以及集成的故障和入侵预防机制,强调了实现更加适应性和韧性工作流调度解决方案的机会。

6.1. 容错挑战
6.1.1. 复杂架构
一种典型的容错方法是使用虚拟机(VM)。为了实现这一点,可以使用故障转移集群[82]来避免硬件故障导致的停机。需要更多的文献来研究如何在涉及复杂基础设施的架构中处理与故障相关的故障,特别是考虑到这些应用程序的特殊性。在这方面的一项广泛研究是[83]。然而,由于系统的复杂性,需要及时识别这些系统子组件中的故障,以便于管理和开发针对整个系统或其组件的容错技术。

6.1.2. 优先处理故障
另一个考虑因素是根据故障的严重程度对其进行排序。这样就可以识别出一些最紧迫的需求,尤其是在非常大的基于云的系统中。与此相关,参考文献[84,85]提出了一种排序方法,其中所有云组件都根据调用结构和频率进行了分类。在这种情况下,可以通过根据各个系统的容错级别分配权重来优化系统性能,特别是在维护成本有限的情况下。然而,即使有这样的替代解决方案,精确地排名系统的容错和脆弱性水平仍然具有挑战性。特别是,这需要对目标基础设施的行为以及特定系统的长期跟踪数据有深入的了解。

6.2. 安全性和入侵预防
6.2.1. 虚拟机
虚拟化
入侵会影响云资源服务的可用性、保密性和完整性。云基础设施使用虚拟化技术、集成技术并通过标准互联网协议运行。由于存在许多漏洞,这些技术可能会吸引入侵者[81]。应该考虑虚拟化的优势,因为它作为基本计算实例而不是主机。此外,它还允许虚拟机在多个主机之间迁移。在分析虚拟机迁移的约束时应该考虑到这一点[86]。在追求系统弹性的同时,必须适当结合容错和入侵预防技术。由于故障可能由多种原因引起(如资源过度使用和主机故障),因此需要适当的资源管理和主机维护。同样,故障和入侵可能同时影响多个主机,因此系统设计者应考虑能够最小化故障或入侵对整个系统影响的架构。

为了提供与其他虚拟机和主机操作系统的隔离,可以使用虚拟机来实现安全性和隔离,特别是在具有非常敏感安全边界的任务关键系统中[83]。入侵容忍技术应该足够强大,以防止攻击者访问虚拟机,更不用说篡改科学工作流了。这是重要的,因为这种非法访问可能导致不准确的结果。因此,需要技术来迷惑对手。尽管Wang等人[22]开发了CLOSURE技术来迷惑对手,但该技术不足以阻止对手篡改科学工作流。

6.2.2. 保护工作流存储
还应开发入侵检测系统来保护科学工作流的存储功能。此外,部署异构虚拟机以实现容错性是一个好做法,这样即使单个虚拟机发生故障或被破坏,也不会完全影响整个系统的性能。请注意,使用单个虚拟机非常危险,因为对手可以简单地使单个虚拟机处于危险状态,从而停止工作流的执行。关于提供安全科学工作流存储功能的先前文献,如Nepal等人[75],仅考虑了单个虚拟机。这可以在未来的工作中解决容错和入侵容忍性问题。

6.2.3. 应对网络攻击
大多数关于基于云的科学工作流安全性的研究更多地关注资源特性,而不是网络攻击,而网络攻击可能更具危害性[27]。网络攻击和其他形式的入侵攻击对基于云的科学应用程序的成功至关重要。其他攻击包括侧信道攻击、恶意软件攻击和数据泄露。应使用适当的技术来解决这些问题,如签名匹配、硬件辅助虚拟化、嵌套虚拟化、机器学习技术、异常检测和模式匹配。例如,签名匹配和机器学习技术适用于网络攻击;二进制签名分析适用于恶意软件攻击;模式匹配适用于网络和恶意软件攻击[87]。

在容错解决方案中的调度过程应该非常有效。由于网络攻击的普遍性,必须解决意外和恶意故障。因此,科学工作流的安全性应包括加密、可用性、保密性和高效的任务调度。这是必要的,因为基于云的科学工作流的失败可能会导致巨大的损失,因为它被用于非常关键的科学研究领域。另一方面,提出的方案不仅应解决调度开销问题,还应结合容错和入侵容忍性。同样,这些方案不应导致额外的临时故障[88]。为了实现容错性,不应不必要的重新启动虚拟机实例,以减少虚拟机启动延迟。

6.2.4. 安全法规
可以在虚拟机实例和网络上实施安全机制。然而,可能存在数据治理的法规,以及防止数据离开特定基础设施的法律[21]。这意味着需要在不违反这些法律的情况下正确定义安全要求。实现强大的容错性需要正确决定是采用工作流级安全(整个工作流仅在私有资源上执行)还是任务级安全(任务在私有资源上调度)更为合适。此外,在许多情况下,调度策略可能需要知道工作流中每个任务所需的“虚拟机”数量。利用这些信息,还可以为每个任务指定可信的虚拟机。同样,可以限制在私有或可信云系统上的执行,以减轻入侵的影响。因此,当目标是实现安全性时,私有云有其优势,尽管将数据从公共云数据中心传输会产生成本。

6.2.5. 安全路由算法设计
需要设计高效且安全的路由算法和廉价的数据中心网络拓扑结构以实现容错和入侵容忍性。在这种情况下,需要采取主动措施以及增强系统可靠性的强大路由算法。其他期望的方面包括改进响应特定算法所需的时间以及已完成的任务数量。此外,系统的整体性能必须高效,以便在需要使用时能够正常工作并获得准确的结果。主动技术以不同的形式发挥作用。例如,它们可以将要调度的任务分成多个部分以提高系统性能。它们还可以定期从新状态重新启动系统。最后,它们可以使用反馈循环控制,因为应用程序被持续观察和分析。在所有这些方面,都可以结合入侵容忍性[45]。

云计算中使用的另一种技术是虚拟机预留。预留虚拟机很有吸引力,但应用程序资源需求的模式决定了用户能否以及如何从预留选项中受益。按需预订(适用于需求波动较大的用户)是合适的,因为用户可以比预留选项更细粒度地使用资源。然而,按需预订的费用比具有相同容量和配置的预留实例更高[31]。

6.2.6. 利用现有IDS/IPS方案的优缺点
根据[81],存在各种入侵检测系统(IDS)/入侵预防系统(IPS)技术,每种技术都有其优点和缺点。可以使用不同的技术来实现这些目标:异常检测、基于签名的、基于ANN的、基于模糊逻辑的、基于关联规则的、基于SVM的、基于GA的以及混合技术。尽管基于签名的方案通过将捕获的单词与基础模式进行匹配来识别入侵的存在,具有低计算成本和高检测精度,并且是一个预配置的知识数据库,但它更有可能对未知攻击产生更高的误报率,并且无法检测已知攻击的变体。通过使用统计测试来识别未知行为的入侵(异常检测)可以解决未知攻击的高误报率问题。这些方法的准确性取决于收集的数据量(行为/特征),在这种情况下需要更多时间来识别攻击。人工神经网络(ANN)方法也被用于入侵检测系统(IDS/IPS)中,通过使用多个ANN层来有效分类非结构化网络数据包,从而提高数据包分类的效率。然而,这会消耗更多时间,并且在训练阶段需要更多的样本。此外,它的灵活性较低。使用模糊逻辑可以对某些不确定的问题提供更大的灵活性;特别是对于定量特征,其检测精度要低得多。在误用检测中,可以使用关联规则来识别已知的攻击签名/相关攻击,但这种技术无法检测完全未知的攻击。同样,生成规则需要更多的数据库扫描,而这仅适用于误用检测。基于支持向量机(SVM)的方案可以处理大量特征,并且即使在样本数据较少的情况下也能非常准确。然而,它需要预处理,并且只能对离散特征进行分类。遗传算法(GA)技术非常高效,因为它们可以选择最佳的检测特征。然而,它们更为复杂,通常用于特定问题。混合技术有助于实现更准确的分类;不过,它们也更复杂[81]。

6.3. 故障/入侵容忍度(通用)
6.3.1. 计算时间和资源
在科学工作流调度中,寻求计算时间相对较短且能产生全局最优解的优化方案是非常重要的,尤其是在搜索区域较大的情况下。在故障容忍度的背景下,这样的方案将非常有利,因为许多算法会遇到因陷入局部搜索而提前收敛的问题。当问题维度合理增加时,解决方案应该更加适用,因为需要优化的决策也会增加[89]。可以利用元启发式方法来获得更好的优化解决方案。每种元启发式方法都有其优缺点。例如,随着工作流任务数量的增加,元启发式的开销会迅速增加,这使得它们不太适合任务数量较多的时间敏感型工作流[31]。因此,将启发式方法和元启发式方法结合起来是合适的[19]。除了结合元启发式算法外,还可以将元启发式方法与其他启发式方法结合,以开发改进的元启发式版本[90]。

6.3.2. 计算资源
当多个任务共享云服务时,可用的服务容量可能无法满足所有需求[91]。因此,可能需要更多的计算资源来提供更好的服务,这会增加成本。在这种情况下,引入故障和入侵容忍度会进一步增加成本并消耗一些资源。尽管如此,云框架内的故障容忍和入侵容忍技术仍应确保按时完成任务并有效利用时间槽。对于服务提供商来说,未预留的时间槽在资源利用方面至关重要。通过合理利用时间槽,可以避免租用新资源,从而节省财务成本。开发和维护能够抵御故障和恶意攻击的稳健系统将更加昂贵,因此需要制定合适的定价模型。这是因为传统上,最快的调度方案并不一定意味着最高的成本[91]。因此,提出如动态规划这样的精确算法将非常有益,但可能无法有效捕捉故障和入侵容忍调度方法的复杂性。此外,对于这种复杂的工作流实例来说,这会非常耗时。

6.3.3. 优化
工作流调度是一个NP难优化问题,由于存在众多虚拟机(VM)以及需要考虑多种调度因素和目标,因此实现最优选择非常困难[90]。因此,包括安全性和其他故障容忍参数会使问题在迭代次数、负载均衡和计算成本方面变得更加复杂。同样,实现高成功率并最小化执行时间和CPU时间也更具挑战性。对于需要数据复制的故障容忍技术,这会增加总数据量并可能减少平均执行时间。在这种情况下,确保所有这些参数以及能耗和成本得到良好管理非常重要。由于成本指标多样(如执行成本、数据传输成本和通信成本),为了满足某些性能目标,可能需要权衡其中的一些指标。未来的工作应强调这种权衡。执行时间、通信时间、任务完成时间和数据传输时间也是如此。

6.3.4. 机器学习与优化在特定应用中的使用
尽管存在许多针对基于云的调度的故障容忍和安全意识技术,但机器学习和优化的进步以及基于云的调度的多样化和扩展应用将需要更多特定于应用的解决方案,这些解决方案能够主动预测故障、防止入侵,并保证基于云的系统的保密性和完整性。在这方面,Liu等人[73]提出了一个考虑安全性的中间数据放置方案,确保中间数据的完整性、保密性和特权访问。还可以研究多种安全性和入侵预防方法。例如,Wang等人[30]在考虑科学工作流截止日期的情况下,使用了各种擦除码、加密算法和哈希函数来提高科学过程数据的可用性、保密性和完整性。

6.3.5. 定价和成本
另一个挑战是定价。在故障容忍和入侵容忍调度中,优化虚拟机的使用和收费率至关重要。例如,由于故障容忍和入侵容忍会对现有资源造成额外负担,因此必须确保即使租用了这些服务,它们也不会被闲置。一种方法是确保租用这些服务的人可以在不使用资源时将其租给其他感兴趣的人。虽然这可能不符合云提供商的利益,但他们可以收取费用。应鼓励按秒计费以实现更好的资源利用。通常,定价模型应与当前的商业云存储定价保持一致。

6.3.6. 需要考虑故障和入侵的动态定价
使用即时实例进行动态定价被认为比使用现有虚拟机的静态定价结构更经济[93]。建议使用即时实例来运行科学操作,以降低财务成本[93]。然而,在这种情况下,必须考虑故障和入侵容忍性,以节省维护故障系统的财务成本。同样,由于入侵系统造成的破坏可能是不可逆的。

6.3.7. 安全性和效率
在基于云的工作流调度研究中,最大化系统效率和降低成本的重要性不容忽视。然而,这也必须考虑故障和入侵容忍机制。例如,Wang等人[27]提出了确定提交子截止日期的想法。作者利用截止日期划分技术实现了弹性资源供应。然而,故障和入侵容忍性并未被纳入确定子截止日期的目标中。尽管[79]提出的任务-虚拟机映射架构可以提供入侵容忍性和弹性资源供应方法,但在故障容忍性和最大化系统效率以及优化成本方面仍有改进空间。

6.3.8. 可信赖第三方
在科学工作流调度机制和基于云的系统的设计和开发中,缺乏能够访问故障容忍功能并提供问题检查和解决方案的可信赖第三方是一个挑战。一个潜在的解决方案是[94]中提出的方案,该方案允许第三方从基于云的应用程序中获取所需的故障容忍功能。这种第三方参与可以解决该领域的一些特殊问题。然而,选择最合适的第三方是一个挑战。在这种情况下,可以制定标准来帮助普通用户选择经过认证和可信赖的第三方。

6.3.9. 硬件实现
在某些情况下,将故障和入侵容忍技术添加到现有的硬件实现机制中比提出全新的技术更为有效,因为全新的技术可能无法在真实硬件上完全部署。在其他情况下,虽然可以部署,但可能存在严重的限制,例如开销过高且无法帮助系统满足实时或严格的截止日期。因此,应研究现有的工作流方案(特别是在真实虚拟机上实现的方案)及其入侵容忍水平。Li等人[29]提供了关于云服务风险率的研究。研究人员开发了安全成本意识调度(SCAS)方法,以在风险率有限且截止日期紧迫的情况下节省费用。利用空闲时间
需要更多关于故障容忍性的研究,以确保即使在资源失败的情况下,工作流也能顺利运行,特别是对于涉及秘密数据和敏感计算的科学工作流[30]。因此,以安全的方式执行科学操作非常重要。例如,可以在科学工作流调度过程中利用空闲时间来部署增强计算密集型安全机制。然而,如果空闲时间较少,部署此类机制将非常具有挑战性。文献中的一项研究考虑了加密,并且在这一领域还有很大的改进空间。Chen等人[72]利用空闲时间来保护科学工作流的安全性,同时降低成本和时间。在这种情况下,增加入侵容忍度会进一步增加开销,因为入侵容忍度可能需要采用一种或几种安全措施(来处理内部和外部攻击)来管理和保护工作流应用程序。此外,由于设计框架中包含更多参数,优化这些系统的性能变得更加具有挑战性。因此,需要非常高效的优化技术,但这可能会带来效率与复杂性的权衡。尽管如此,这些技术和算法的一个基本特点是它们不会陷入局部最优解。为了防止陷入局部最优解,需要生成一个更好的初始种群[90]。

实际评估参数
为了确定系统的容错水平,应考虑几个关键参数。其中一个因素是响应时间[92],因为确保容错不应使系统的性能低于其最低预期性能阈值。同样,重要的是在接近实际可实现的合理大小的调度问题上测试所提出的算法,并考虑整体的云异构性和动态性[92]。然而,异构性和动态性都有其自身的特点和期望。就特点而言,系统建模和设计以及问题解决变得更加复杂。至于动态性,它需要处理非常关键的任务,这些任务可能是预防性的,以改善服务质量(QoS)或满足目标截止日期。因此,在进行工作流调度决策时,可用资源的动态性至关重要。

对于异构云环境中的入侵检测和缓解,可以根据每个子应用程序中的关键性和工作流类型,将不同的机制组合到一个通用框架中。一组独立任务由动态调度技术处理,这些技术可以使用有限的异构云资源在适当的计算规模上运行在集群/分区上。可以利用对云环境中资源约束的了解,通过启发式方法对任务集群进行分类。考虑到以上所有因素,很明显,在实现较低故障率的同时设置一个异构计算环境是具有挑战性的[95]。

动态变化的目标
在某些情况下,可能需要根据每个时刻的优先级动态改变目标。这种方法在[96]中被使用,尽管当时的动机是在没有可行解决方案的区域找到可行的解决方案。包含容错和入侵容忍技术的主要动机和目标之一是避免执行过程中的延迟和系统故障,因为这些会损害调度过程和获得的结果质量。同样,减少计算步骤以节省时间也非常重要[95]。尽管容错和入侵容忍可能会增加计算时间,但仍然可以将其控制在可容忍的截止日期阈值内。

能源管理
动态能源管理方案[32]也有望提高能源效率。不仅要在时间关键的应用中减少能源消耗,还要确保其可靠性、容错性和抗入侵性。存储备份(检查点)或运行副本(复制)会增加资源冗余,从而增加资源能源消耗[97]。然而,根据应用程序的关键性质,短期内可能会牺牲能源效率以实现长期的系统可用性。因此,在某些情况下可能需要增加处理器的数量,但这应该考虑到长期系统功能和入侵预防。

多租户云计算
工作流调度中的另一个特殊场景是多租户云计算。在这种情况下,适当的资源管理框架的作用不容忽视[98]。在这种情况下,一些传统的调度标准(如时间、成本、可靠性、能源和安全[21])需要得到妥善处理。关于安全性,根据应用程序需求,需要实施单层和多层安全措施。例如,由于公共云的脆弱性,其安全性更为重要。对于私有云,内部攻击也是可能的,这也需要得到很好的管理。应使用实际云应用程序来实现针对入侵的算法,以确定它们在调度和工作负载性质(如静态和动态)方面的有效性。

结合容错和入侵预防
容错和入侵预防是调度技术需要解决的两个基本问题,以确保任务的准确执行。静态调度假设可以在调度之前获得准确的任务执行和完成时间。这在实践中并不总是成立的。因为这些参数在很大程度上由工作流和资源信息决定。工作流信息包括任务执行、工作负载、工作流结构和通信数据大小,而资源信息包括通信带宽、可用性和处理能力[31]。为了实现更短的任务完成时间(以及一定的可靠性),可以使用基于副本的调度,但这会增加调度过程的难度。调度算法必须处理任务之间的程序约束以及哪些任务需要复制以及如何将它们安排在空闲时间槽中。

未来展望
工作流调度应用程序可能非常关键,例如用于癌症诊断的科学任务[99],因此容错和入侵容忍机制在这些应用程序中非常重要。人工智能可以用来增强工作流调度[100],并在检测入侵以及预测预防入侵所需的入侵模式方面发挥重要作用。同样,一些工作流的特点是短暂故障[101]。当这些工作流遇到入侵时,它们会变得更加脆弱,因此需要提出解决方案来提高其性能。在这种情况下,可以提出自适应的容错和入侵容忍技术来改善调度性能。同样,在涉及线性工作流[101]、多工作流[102]、异构工作流[103]、数据密集型工作流[104]、优先级变化的工作流[101]以及随机到达的工作流[105]的场景中,也需要容错和入侵容忍。

在不同的工作流调度场景中也需要容错和入侵容忍机制,例如预算受限的工作流调度[106]、截止日期受限的工作流调度[104]、动态截止日期和预算意识的工作流调度[103]、动态工作流调度[107]、多工作流调度[108]、能源意识的工作流调度[109]、故障弹性工作流调度[110]、实例密集型工作流调度[111]、成本意识的工作流调度[112]、公平预算受限的工作流调度[113]、保护隐私的工作流调度[114]、多云系统上的租赁成本和能源意识的多工作流调度[115]、即时实例的工作流调度[116]、成本效益高的工作流调度[117]、时间成本受限的工作流调度[118]、考虑通信竞争的云工作流调度[119],以及具有抢占性和非抢占性任务的调度[120]。入侵意识的工作流调度也可以与分布式工作流的平衡调度一起考虑,云工作流的通信关键任务复制[121]、前向负载意识调度[122]、信任受限的工作流调度[123]、容错弹性调度、针对科学工作流的不同的预算分配策略[124]、基于数据复制的任务调度策略[125]、自主容错调度[126]、具有能源减少的工作流调度[127]、具有复制的工作流调度[128]、优先级受限的调度策略[129]。

在动态空闲时间间隔调度框架内也可以考虑容错和入侵容忍[130]、公平调度和多工作流的动态优先级[29]、数据意识调度[131]、基于科学云中数据复制的调度[125]、资源高效的工作流调度[132]、去中心化工作流调度[133]、多截止日期受限的工作流[134]、任务包工作流[134]、动态移动任务调度[135]、资源冗余较低的可靠工作流调度[136]、利用服务间隙的调度[137]、数据意识的工作流调度[138]、考虑队列等待时间的动态工作流调度[139]。同时,还需要考虑容错和入侵容忍的调度机制,这些机制还需要具备能源效率、可靠性、成本效益、截止日期意识、公平性以及低复杂性。

不同的云架构需要结合容错和入侵容忍机制。这些特殊性和架构的例子包括移动云[140]、混合云[130]、多站点云[141]和弹性计算云[142]。同样,实现容错和入侵容忍不应牺牲基本目标,如最低成本和完成时间,并考虑诸如任务完成时间等属性。最后,可以对不同类型任务(如执行时间不确定的任务[143]和非抢占性任务[144])研究容错和入侵容忍。

在不同的工作流形式中也需要研究和结合容错和入侵容忍考虑,包括批处理科学工作流[145]、微服务工作流[146]、实时并行工作流[147]、随机到达的工作流[105]、数据密集型科学工作流[105]、多用户工作流(调度)[148]、数据密集型工作流[149]、高吞吐量科学工作流[150]和时间关键工作流[151]。在调度容错和入侵容忍的工作流时,应考虑不同的约束形式,包括能源消耗约束[152]、预算约束、优先级约束、目标截止日期约束、任务完成时间和可靠性约束[153]。此外,容错和入侵容忍研究可以扩展到不同的架构,如雾计算-云计算、物联网-雾计算、雾计算、绿色云计算、工作流即服务环境、网络物理云系统、异构云计算系统、协作边缘云计算、IaaS云、软件即服务环境[154]、多租户云计算[155]、硬截止日期受限的云环境[156]、云和云间环境以及商业多云环境[157]。

结论
容错是提供可靠云服务最关键的考虑因素。由于云服务对故障的固有敏感性,其性能和可靠性会受到影响。因此,容错已成为维持可靠性的重要特征,但由于动态设计和复杂的相互依赖性,这很难实现。文献中提出了许多容错机制来解决云可靠性的难题。本文旨在对几种容错架构进行当前的研究调查。因此,本文描述了现有的容错方法,以增强云服务的可靠性、可用性和应用程序执行。该综述还包括基于各种关键标准(如成本、任务完成时间、可靠性、资源利用率、能源消耗和故障率)对所研究框架系统的比较。这项研究将有助于开发新的云容错技术。
相关新闻
生物通微信公众号
微信
新浪微博
  • 搜索
  • 国际
  • 国内
  • 人物
  • 产业
  • 热点
  • 科普

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号