论文部分内容阅读
发布订阅系统因其松耦合特性而被视为实现大规模高可拓展性网络通讯应用的关键技术。近年来发布订阅系统的应用需求逐步向大数据量多源数据分发场景拓展,而现有的数据分发机制往往只以单数据源应用场景作为研究对象。由于数据分发机制具有较强的应用场景依赖性,因此现有分发机制无法有效应对多源场景下的节点负载异构等问题。因此对发布订阅系统下的多源数据分发机制进行研究具有十分重要的意义。本文的主要研究工作及贡献包括:(1)结合大数据量多源场景的特点将数据分发过程分为“启动”、“稳定”、“结束”三个阶段,并总结多源数据分发机制所应遵循的四条设计原则:一是对主题数据进行分块后,利用多棵分发树对各块数据进行分发;二是保证多棵分发树间的内部节点不交特性,以充分利用分发树的叶节点上载带宽;三是避免重负载节点成为轻负载节点的祖先节点;四是将负载分为接收负载和发送负载两类,并将重负载节点的发送负载转移给轻负载节点以实现负载均衡。(2)参照典型分发机制在发布订阅系统下实现了三种比较对象,并从四条设计原则的角度分析了三种比较对象各自的优缺点。(3)依照设计原则,为发布订阅系统提出了一种名为MeshCast的多源数据分发机制,对MeshCast的理论模型、组成模块以及工作流程进行了详细介绍与理论分析,并通过MeshCast与三种比较对象的对比实验对理论分析进行验证。MeshCast采用网格结构对系统拓扑结构进行组织,它的核心算法由贪心策略和约束策略两部分构成。这些策略使该分发机制能够结合大数据量多源场景的特点,通过优化数据传输路径的方式,在均衡节点负载的同时提高系统的总带宽利用率,从而缩短数据分发任务的总耗时。与三种比较对象的对比实验结果表明,MeshCast能够有效缩短大数据量多源场景下数据分发任务的耗时。