论文部分内容阅读
随着计算机和网络技术的发展,人们对资源和服务的需求性越来越大,如何把分布在世界各地规模庞大的资源组织起来为用户提供服务成为迫切的要求。然而随着计算规模不断增加,网络的异构性、复杂性以及需求的多样性,使得如何有效的发现资源,合理的分配任务,加强资源间合作成为分布式计算的一个关键问题。常见的分布式系统拓扑结构包括:集中式结构,全分布式结构和半分布式结构,本文主要研究半分布式系统中的资源管理问题。资源管理是将资源提供者和资源请求者联系起来的枢纽,资源管理包括了资源发现,资源监听,资源分配,资源迁移,容错处理等。资源发现是资源管理的第一个也是最重要的问题,其目的是根据资源请求者的要求,返回其需要的资源集合的唯一标识符,让资源请求者从庞大的资源信息中获得其需要的资源。资源发现研究的主要问题是如何快速、高效、准确的定位资源,并降低冗余消息数和系统开销。资源分配则重点解决如何提高系统中可用资源的效率,其目标是适应动态异构的网络环境,提高系统吞吐率,减少任务等待时间,优化负载平衡。本文针对以上问题,主要研究了半分布式系统资源管理中的资源发现,资源监听和资源协作问题,在对比已有方法的基础上,对上述问题进行了研究和讨论,主要工作内容包括:1.研究分布式资源的发现方法,以半分布式拓扑结构为基础,提出了一种基于节点间耦合关系的分组策略。该方法克服了已有分组方法的随机性和不确定性,按照节点的耦合程度分组,主要考虑节点的底层通信距离,后期学习过程中的协作关系和信任程度。通过以上三种关系的加权值建立节点间关系图PRG(PeerRelationship Graph),利用分组算法对节点分组。该策略优化了节点间的分组,使得通信距离越近,耦合程度越高,信任度越高的节点,越趋向于分配在同一组内。同时提供学习反馈机制,以用户请求为学习来源,不断优化分组,通过仿真结果表明,该方法降低了跨组查询概率,减少了消息冗余,提高了查询效率。2.提出了一种基于哨兵代理和排队模型的资源分配和协作策略。哨兵代理携带用户服务请求在资源节点间游走,其运动方向由决策模块决定,哨兵代理将每次跳转结果的信息反馈给决策模块。建立了以M/M/C/排队模型为基础的资源分配机制,通过降低排队时间,优化负载平衡,提高了整个系统的服务效率,减少了哨兵代理的跳转次数。3.提出了一种基于线性规划的多约束条件资源分配方法,该方法改进了排队算法中对用户和请求的无差别对待机制,利用对子任务的聚类划分,协调系统资源分配,通过对不同目标函数的最优求解,优化了分配策略。通过对资源负载与通信时间的动态监测,提高代表节点对任务规模估计的准确度,优化子任务的并行度。4.提出了一种节点综合评估与激励机制,节点的性能和可信度由其他节点的评价和该节点的历史行为共同决定。节点之间对其一次交互协作行为评分,该结果作为当前两节点的一次反馈记录,即节点的局部可信度。节点的全局可信度由响应时间,等待时间,成功率等因素共同决定,反应了该节点的一贯表现和性能指标,资源的分配和选择策略综合考虑节点的局部可信度和全局可信度,提高了资源分配的成功率。根据节点活跃度与贡献值提出了基于多阶段决策的节点激励机制,避免了自私用户带来的优先级混乱问题。5.提出了一种高效独立的半分布式分层系统模型,实现资源的动态管理。该模型自顶向下为自适应模式,自底向上为自组织模式,每层负责相对独立的功能,可扩展性强。该系统能够提供节点动态重组,通过优化分组降低组间查询率,提高查询效率;提供代表节点决策机制,优化资源分配和系统负载平衡。