APP下载

云环境下基于多代理系统的三层架构信任管理模型

2021-03-24谢晓兰梁荣华

桂林理工大学学报 2021年4期
关键词:购买方信任度成功率

谢晓兰, 梁荣华

(桂林理工大学 a.广西嵌入式技术与智能系统重点实验室; b.信息科学与工程学院, 广西 桂林 541006)

0 引 言

云计算服务通过将计算资源进行统一管理和整合, 使它能够以较低的成本和较高的性能为用户提供服务。 云计算服务也是海量数据存储和复杂计算的一种可靠解决方案, 用户通过资源使用量进行计费, 最大限度利用资源。因此, 云计算服务被认为是互联网发展历史中的一个重要里程碑[1-2]。但是, 随着云计算服务的发展, 对云计算服务的安全需求也随之增长, 云计算环境的安全问题变得越来越突出[3-4], 因此, 云计算安全问题越来越受到重视。目前, 对于云计算领域的信任模型可以使用基于多Agent的方法来研究。 在基于多Agent系统环境中的云计算服务中,购买方Agent和云服务提供商Agent之间的信息不对等,导致购买方Agent和云服务提供商Agent之间面临着恶意推荐、虚假服务等欺诈方式,使得双方信任度降低,也由此产生云计算服务的信任问题。 因此, 如何建立一个安全和可信的多Agent云计算信任环境就成为了一个重要的研究课题[5-6]。

信任模型作为安全领域的热点, 许多学者都提出了信任管理方法: 文献[7]针对B2B电子商务市场交易提出了一种信任管理模型, 对中介机构与卖方之间的信任关系进行研究和分析; 文献[8]提出了一种用于无线传感器网络的信任模型, 使用区块链方法来检测网络中的恶意节点, 使用区块链的共识机制来确保投票共识结果的可靠性; 文献[9]提出了一种物联网系统中的推荐过滤算法, 将恶意节点进行过滤, 并且提出了动态权重分配方法, 提高了模型的准确度; EigenTrust[10]是一种典型的信任管理算法, 它对不可靠网络中的恶意服务进行研究, 采用了社会网络分析中的中心度量方法, 将服务推荐与信任管理结合, 但也存在着信任管理方法不够全面、 信任度计算不够准确的问题。

虽然很多研究者提出信任模型, 但是针对云计算领域的信任模型的研究还比较少。文献[11]提出了一种用于不可靠云计算的域划分的信任管理模型, 设计一种算法来计算节点的域信任值和过滤恶意信任节点, 但是存在域划分算法较为复杂和过滤恶意节点效果较差的问题; 文献[12]提出了一种在P2P网络中的信任模型信任度的度量方法, 使用反馈机制衡量模型信任度, 提高信任模型的效果; 文献[13]提出了一种在云环境中基于用户行为数据和行为关系的用户可信度计算方法, 取得了一定的效果; 文献[14]提出了一种基于证据理论的信任评估模型, 对云计算中心的信任状况进行评估, 对云安全的发展具有一定的意义。

目前基于多Agent方法的信任模型是常用的策略。文献[15]基于多目标优化的方法提出了一种多Agent的信任联盟模型, 其利用多目标优化方法优化了多Agent环境下的信任模型, 实现联盟信誉和联盟收益最大化, 但是模型设置太过复杂, 会降低系统运行效率; 文献[16]使用AHP算法结合信息熵理论, 对云计算下的信任关系进行了研究, 但是存在着当用户增多时计算信息度较大, 导致模型精度不高的缺陷; 文献[17]基于模糊网络分析法, 使用模糊数来反映专家评判的模糊性, 提出了一种在云环境下的信任分析方法, 为信任安全机制提供了量化依据, 但是算法时间复杂度较低, 导致建模结果误差较大、 精确程度较低。

本文提出了一种在云计算环境下的基于多代理系统(multi-agent system, MAS)的信任管理模型,通过多代理系统引入基于信任管理、服务管理和信任评估的三层信任模型,将复杂的信任模型简化,有效地提高了信任管理的效率和准确度。

1 云计算服务中的信任模式

1.1 相关定义

对Agent的定义一直以来就有所争议, 现在多数认可的Agent的定义是: “Agent是处在某个环境中的实体, 在这个环境中, 该实体具备一定的能力自主行动, 然后实现它的预期设计目标[18]。”Agent通过一些定义好的合作关系, 将一个事先定义好的系统整合成一个较强的系统, 可以起到处理复杂问题的效果。

在引入了MAS的云计算环境中, 用户和云服务提供商之间存在着服务提供关系, 用户通过云服务提供商来选择自己所需要的服务, 并且在提供服务之前需要评估云服务提供商的信任度, 判断它是否存在虚假欺骗服务, 由其提供的服务能否满足用户的需求。因此, 判断用户和云服务提供商之间的信任程度, 保证双方的服务质量就非常重要。

信任在心理学中的定义是一种用来表示某一实体在按照期望行动的信心程度。而在计算机科学中, 信任通常用来描述在特定环境中一个实体判断另一实体的可靠程度。本文对信任的相关定义如下:

定义1信任: Agent A对Agent B的信任是Agent A认为Agent B下一次服务交互能否完成的期望。

定义2信任度: Agent节点之间通过某一信任机制判断出节点之间信任程度的量化表示。

定义3直接信任: 当Agent A和Agent B之间具有直接信任关系时, Agent A可以直接对Agent B作出信任评价。如购买方Agent A与服务方Agent B之间已经进行过若干次交易, 历史合作交易信息和历史信任度非常充足, 信任评价已经建立。

定义4推荐信任: 当用户与服务方之间的过往合作信息不充足时, 此时通过直接信任不能够对Agent B进行充分评估。因此需要凭借其他的购买方Agent C的推荐对服务方Agent B的信任进行评估。

定义5综合信任: 又称为全局信任、 总体信任, 综合信任是将直接信任和间接信任进行综合计算得到的, 是对信任的综合评价。

根据上述信任的定义, 参考文献[19]提出的基于历史信息的信任模型划分思想以及在MAS云环境下的信任管理特点, 本文提出了3种不同的信任模式。

1.2 直接信任模式

根据定义3,假设购买方Agent A和服务方Agent B之间有N次交易,成功的交易次数为S,失败的交易次数为F, 交易成功的概率为θ。 根据定义, 假设购买方Agent A和服务方Agent B的交易结果服从二项分布,它们的下一次交易成功率服从Beta分布,因此直接信任模式下的平均交易成功率θd为

(1)

1.3 推荐信任模式

根据定义4,推荐信任模式由两部分组成: 1)购买方Agent A与推荐方Agent C的推荐信任关系; 2)推荐方Agent C与服务方Agent B的直接信任关系。

推荐方Agent C和购买方Agent A的交易次数为N, 交易成功次数为S1; 购买方Agent A与其他推荐方Agent D的交易次数为M, 交易成功的次数为S2。假设购买方Agent A和服务方Agent B的第N+1次的合作成功概率服从Beta分布, 那么在推荐信任模式下的平均交易成功率为

θrc=E(Beta(1/(N,S1), (M,S2)))

(2)

1.4 综合信任模式

根据定义5, 可以得出综合信任模式由两部分组成: 1)购买方Agent A和服务方Agent B的直接信任度θd; 2)购买方Agent A和服务方Agent B的推荐信任度θrc。综合信任模式就是由两个信任度加权计算得出, 其中权值w1和w2是由购买方Agent的历史交易记录和信任评估机制计算得出。因此, 在综合信任模式的平均交易成功率计算式为

θwt=w1θd+w2θrc。

(3)

2 基于MAS的三层信任管理模型

2.1 模型概述

云计算是一种大规模的分布式开放环境, 用户需要与不同的服务提供商进行交互, 确保服务提供商是可信的, 并且还能验证用户是否是恶意用户等。因此, 云计算需要一个信任管理模型, 它既可以满足用户的服务需求, 也可以测试用户是否为恶意用户, 基于MAS的信任管理模型就是一个可行的方案。因此, 本文提出了一种信任管理Agent、 服务管理Agent和信任评估Agent相结合的三层信任管理模型, 工作流程如图1所示。

图1 信任管理模型工作流程

首先用户向信任管理Agent发起服务请求, 信任管理会查询服务是否存在, 如果存在就会将用户的服务转发给服务管理Agent, 服务管理Agent作出信任评估, 根据综合信任值的大小, 通过信任模式选择算法, 选出最适合的云服务, 并且为用户提供; 如果没有达到相应的信任值阈值或者找不到云服务就会拒绝服务。服务完成之后, 用户会对服务结果作出评价, 服务管理Agent更新信任值。

2.2 模型架构

本文模型由服务管理Agent、 信任管理Agent和信任评估Agent 3个层次组成, 如图2所示。

图2 基于MAS的三层信任管理模型

本文的信任模型的信任主体是用户, 信任对象是云服务, 将云服务按照功能、 类别划分成不相同的信任域, 在每个云服务中对一种或者多种云服务进行管理。

信任管理Agent是本文信任模型的核心组件, 它负责管理用户和服务提供方之间的服务关系Agent和信任评估Agent; 服务管理Agent负责管理用户和用户的信任关系, 并且对云服务进行管理; 信任评估Agent通过历史信任收集和信任信誉评价机制来对服务的信任度进行评估, 并将结果返回到信任管理Agent, 然后作出对应的信任决策。

2.3 服务管理Agent

服务管理Agent的框架如图3所示。在服务管理Agent中, 用户首先通过注册代理的方式进行注册, 然后在以后的使用过程中逐渐完善使用信息, 建立用户信任关系, 当用户请求服务时, 服务代理查询到所需服务, 并且将用户的服务请求和信任关系传递到信任管理Agent。

图3 服务管理Agent

服务管理Agent的详细组成如图4所示。服务管理Agent的主要功能是对云服务信息进行管理, 在信任管理模型中, 每一个不同类别的服务管理Agent都对可以管理某一种云服务, 用户通过信任管理Agent对服务管理Agent进行管理。

图4 服务管理Agent的组成

服务管理Agent由3个模块组成, 分别是服务代理、 数据库和注册代理。服务管理Agent的作用就是对用户与服务的信任信息进行管理, 根据信任模式的结果选择出适当的云服务提供给用户。服务管理Agent中有两个数据库——云服务数据库和信任关系数据库, 前者负责维护服务管理Agent管理的云服务相关信息, 后者负责维护用户和云服务的交互信息。

2.4 信任评估Agent

信任评估Agent由信任收集、 信任判断、 信任更新等模块组成, 负责对云服务进行信任评估, 它对用户与云服务之间的直接交互、 推荐信任、 信任信誉等进行计算, 为信任决策代理提供参考依据, 并且也负责服务完成后在服务管理Agent中更新云服务的信任值。

基于之前已经定义的直接信任模式、 间接信任模式和综合信任模式, 本文提出了一种基于历史交易平均成功率(α)的信任判断选择模型: 首先对购买者Agent和云服务提供商Agent的历史平均交易成功率进行分析, 再对历史交易平均成功率的大小进行划分, 根据历史交易平均成功率选择出对应的信任模型, 然后根据信任模型计算出双方的交易成功率, 最终依据计算出的交易成功率来选定交易的对象Agent。

通过信任判断模型来选择适合的信任模式, 提高交易的可信度, 从而提高双方的合作可能, 信任判断模型如表1所示。

表1 信任判断模型

交易对象选择算法如图5所示。

图5 交易对象选择算法

本文的信任判断模型中, 如果购买方Agent的历史交易平均成功率在0~30%, 因为双方的历史交易成功率较低, 不能够判断出是否是可信的交易对象, 因此需要根据间接信任模式计算双方的合作成功率, 降低遇到非可信合作的可能; 如果购买方Agent的历史交易平均成功率在30%~60%, 这个合作成功率已经不算太低, 可以根据综合信任模式计算出双方的合作成功率, 促成双方的合作; 如果购买方Agent的历史交易平均成功率在60%~100%, 由于双方的历史合作成功率已经是非常高了, 可以被认为是可信的交易对象, 所以通过直接信任模式来计算双方的合作成功率。

在完成云服务动态交易的过程中, 由于信任具有动态性和不确定性, 需要根据交易情况对信任进行更新, 使得信任可以变得更加精准, 得到信任程度更高的结果, 因此在本模型中引入了更新历史交易记录、 更新Agent推荐记录和更新Agent可靠度记录。

1)更新历史交易记录。在完成一次交易之后, 模型就会将本次的交易情况存入交易数据库中, 包含交易时间、 交易结果、 交易满意度等信息。 交易满意度为购买方Agent对服务方Agent的服务满意度, 为了简化模型起见, 购买方Agent可以在交易完成后对服务方Agent进行评价, 并作出服务评价。

2)更新Agent推荐记录。推荐信任度作为推荐信任模式的重要参考, 会在购买方Agent的交易完成后发送本次交易的推荐信任度到推荐方Agent。与此同时, 购买方Agent作为推荐方Agent来接收其他Agent发送的推荐信任度。

3)更新Agent可靠度记录。单纯地依靠信任度更新推荐节点容易造成推荐信任度被滥用, 从而导致推荐效果降低。 因此, 在这里引入了推荐信任度的奖惩机制, 使得推荐信任模式的信任反馈机制变得更加可靠。在完成了一次交易之后, 根据交易结果及推荐节点的效果进行奖惩评判, 引入奖惩评判机制的Agent可靠度Tn的计算公式如下

Tn=T0+Mf·Rc·Rf;

(5)

Tn=T0-Mf·Rc·Rf。

(6)

式(5)用于计算奖励机制的Agent可靠度, 式(6)用于计算惩罚机制的Agent可靠度。其中,T0是原来的Agent可靠度; 而Mf表示Agent改变的区间, 为了保证T0不会超过可靠度的取值范围, 当计算奖励机制时Mf=1-T0, 计算惩罚机制时Mf=T0; 而Rc和Rf分别表示Agent的失败推荐比例和成功推荐比例, 用来平衡Agent在推荐过程中的可靠度程度影响, 使得不会因为一次偶尔的失误造成可靠度降低。

3 仿真实验

3.1 实验设置

为了对本文所提出的信任管理模型的实际效果进行验证, 进行仿真实验验证, 本文的实验环境参数: CPU, E3-1225, 3.30 GHz; 内存32 GB; 操作系统为Windows 10; 显卡, GTX 1660。

根据本文提出的信任模型, 购买方和服务方会对历史交易情况进行判断, 根据交易对象选择算法,即选择对应的信任模型。 本文的信任模型相关参数初始化设置如表2所示。

表2 信任模型参数

3.2 多Agent交易情况实验

对云计算交易环境下的多Agent交易情况进行模拟, 以证明本文模型的有效性。 在实验中设置20个购买方Agent、 20个服务方Agent和1个第三方信任组织, 假设购买方Agent和服务方Agent的历史交易成功次数大于100次, 购买方和服务方Agent的实验交易次数为30次。

将本文的信任模型与另一经典信任模型EigenTrust[10]进行对比, 根据历史交易成功率将实验分为A、 B、 C 3组, 即选择相应的信任模型(表2)。实验结果如图6所示。

图6 多Agent交易情况实验结果

在A组实验中, 购买方Agent和服务方Agent的平均历史交易成功率是0~30%。交易次数在前5次时, 两个模型的平均交易成功率几乎相同, 但是随着交易次数的增多, 本文模型的平均交易成功率不断上升, 而对比模型的增长幅度较小, 说明本文模型在历史交易成功率低的情况下, 平均交易成功率也能保持增长。

在B组实验中, 购买方Agent和服务方Agent的历史交易成功率在30%~60%, 随着交易次数的增多, 本文模型的平均交易成功率不断上升, 而对比模型的平均交易成功率却不断起伏, 最终本文模型的平均交易成功率还是高于对比模型。

在C组实验中, 购买方Agent和服务方Agent的历史交易成功率在60%~100%, 前几次交易次数两个模型的交易成功率比较接近, 但是随着交易次数的增多, 本文模型的交易成功率相比于对比模型要更高。

3.3 多Agent节点安全性实验

在节点安全性实验中, 假设4个信任域中有1 000个云服务节点, 每个节点提供真实的服务概率为95%, 用户数量为150个, 实验中的用户信息和交易数据的初始值将随机产生。将本文模型与另一信任模型EigenTrust进行对比, 实验结果如图7所示。

图7 信任评估实验结果

可看出, 在信任评估实验中, 随着恶意节点比率的增加, 本文模型的平均交易成功率比较平稳, 对比模型的平均交易成功率却逐渐下降, 当恶意服务比率超过0.4时, 平均交易成功率下降得非常快,这是因为对比模型在计算全局信任值时, 判断信任度不够精确。因此, 在恶意服务比率较大时, 对比模型的信任判断就不够精准, 增加了交易失败率的可能。而本文模型基于历史交易成功率, 使用了3种信任模型作为判断的依据, 可以对信任进行充分的判断, 提高信任程度, 降低恶意服务的风险。

4 结束语

本文提出了一种云环境下的基于多Agent系统的三层架构信任管理模型, 结合直接信任模型、 间接信任模型和综合信任模型的信任度判断方法对用户和服务提供者的交易合作信任状况作出判断和评价, 通过三层信任管理模型进行信任的管理。仿真实验结果表明, 本文模型在多Agent交易情况和节点安全性测试上相比于对比模型效果更好。

猜你喜欢

购买方信任度成功率
成功率超70%!一张冬棚赚40万~50万元,罗氏沼虾今年将有多火?
如何提高试管婴儿成功率
售后回购业务会计处理的完善分析
如何提高试管婴儿成功率
“超级”医保局
全球民调:中国民众对政府信任度最高
汽车养护品行业运行环境分析及提高客户信任度的途径
研究发现:面试排第四,成功率最高等4则
信用风险缓释工具问题探讨
2014,如何获得信任