论文部分内容阅读
随着全球信息化产业的不断融合与发展,互联网资源与数据规模都在飞速增长。传统的数据处理技术因为资源受限等问题已经无法满足当今时代的需求。云计算技术应运而生,它将计算资源作为一种服务按需提供给广大地互联网用户。云计算将服务器集群中的空闲资源整合起来,并通过专门软件实现自动管理,为海量数据并行计算、分布式存储等提供了一个有效地解决方案。MapReduce以其简单易用、高可扩展性与低成本等优势,成为了云计算中主流的计算模型。现有的开放式海量数据处理服务大都是将MapReduce分布式并行计算作为主要的服务模式。然而,为MapReduce模型提供计算服务的工作节点分布极其广泛,我们无法确保所有工作节点都安全可信。此外,单个工作节点产生的错误结果可能会导致整个任务的失败,因而对工作节点返回的计算结果进行验证是十分必要的。现有的MapReduce计算结果验证方案主要采用的是多副本技术,即将任务复制多次并分配给不同的工作节点,通过比较返回结果来验证计算的正确性。但在工作节点相互勾结并返回相同错误结果的情况下,该类方法将失去作用。本文对现有的结果验证方案进行了深入研究,并基于证明图的理论提出了一种高效地MapReduce可验证计算方案。本文的主要贡献有以下几个方面:(1)我们深入研究了现有的MapReduce可验证计算方案,针对现有方案中敌手模型存在的不足,提出了更强的敌手模型,即互相不熟悉的恶意工作节点计算同样任务时可以选择性的输出结果。在此模型基础上,我们提出了一种云环境下基于MapReduce的可验证计算方案。该方案采用了基于证明图的一致团分析算法,利用工作节点间的一致性关系快速、准确地定位出恶意工作节点。通过工作节点的历史任务信息计算其可信值,并以此为依据指导后续的检测工作。同时,我们利用概率推导的方法对所提出的方案进行了详细分析。理论推导的结果表明,本方案能够快速地检测出工作节点间的不一致关系,从而提高方案的检测效率。(2)在Linux系统下通过设定不同的参数构建了模拟环境,对所提方案中的恶意节点检测算法进行了仿真实验,并与相关方案进行了比较。仿真结果表明本文所提方案能够在合适的计算开销下,快速、准确地检测出共谋与非共谋的恶意工作节点,提高了MapReduce计算结果的正确率。