有效的群组通信,
8!@A5B
!"#!定!!义
群组通信主要涉及节点和+06H一致性相关的概念,!+的连接$606H一!!这里给出了与群组通信和6
致性主要包括顺序&因果&操作&对象和结果一致性$在此基础上给出了这些定义的数学表达形式,
定义#!设’代表协同任务$"是第-个加入’的节点$则加入’的节点)是加入’的节点的个数$-.!
"$显然$"创建’2集合/’/’-%1""-#)+.!.!)可以定义为%)0*
定义!!设-$3$"是第-个加入’的节点$则有.!"$表示建立了节点.!"到节点.!的---.!3"3"%.!
连接2""%.!"同时成立$""表示建立了自连接,-----&.!&.!.!3"表示.!3"和.!3"%.!.!
定义$!点到点对等模式%
任意!!"$"%.!"$--&.!!!%#-.!.!3"3"3#)!$
不存在!!""-&.!!$!%#-#)$.!3"3’)!2!"%!"!
"上执行的第,个操作6,$操作对象7,$执行结果"!,"0"6,$7,$8,’表示节点.!5!!定义%!4.!5
"上的第,个操作先于节点.!"上的第%个操作发生,"!"!8,24.!,"’4.!%"表示节点.!5959
定义&!顺序一致性%节点.!"上操作,先于操作%发生4.!$那么节点.!"上按同样"!"!5,"%"955’4.!
的顺序执行操作!""!"!4.!,"’4.!%"299
"$"$*+"!"!"!"!59,$%",’%)4.!,"’4.!%"%4.!,"’4.!%"(!!2.!.!5599
节点.!"上操作,先于节点.!"上操作%发生4.!$那么节点"!"!59,"’4.!%"!!定义’!因果一致性%59
"和节点.!"上先执行,操作$后执行%操作4.!"!"!"!"!59,"’4.!%"和4.!,"’4.!%"2.!5599
"$"$*+"!"!"!"!"!"!59,$%"4.!,"’4.!%"%4.!,"’4.!%")4.!,"’4.!%"(!!2.!.!595599
节点.!"执行,操作和节点.!"执行,操作的命令是一样的,59!!定义(!操作一致性%
"!"!4.!,"6,04.!,"6,!259
提出了点到点(P2P)模式下协同工作安全群组通信模型,实现了P2P模式下协同工作节点动态加入和退出,以及群组安全可靠有序的通信机制.算法设计的节点管理和节点通信为P2P模式下协同工作应用开发提供了必要的支持.通过理论分析,证明了点组内节点操作的一致性,协同绘图作为
节点."#执行,操作和节点."#执行,操作的对象是一样的,59!!定义)!对象一致性!
#"#"4.",#7,04.",#7,!259
节点."#执行,操作和节点."#执行,操作的结果是一样的,59!!定义*!结果一致性!
#"#"4.",#8,04.",#8,!259
!"!!标!!记
实现安全可靠有序的群组通信技术$系统采用公钥和对称密钥相结合的加密算法,所用标记如下!
##!用节点."#的公钥进行加密2##!用节点."#的私钥进行解密2##!用节:^E"--6^+"--0=-@."."."^+"
点."#的私钥进行签名$##!用."#的公钥验证签名2用公共密钥;进行加密$用公共密-X;<--:;!6;!."^E"
钥;进行解密2"##!节点."#保留已经执行任务序列集合$""##!节点."#等待执0;:P3>;--0;:HD=:--."."
行任务集合$##!节点."#完成任务的最大序列号2"##!节点."#向全RDO0;<P3>;"--U;J0;<.443:;C--."."
局序列服务器"#申请全局序列号$!_00RDO0;<.443:_00已经分配任务的最大序号
,
!"$!+,-.原语
其点组结构如图%所VW0S采用点组作为资源管理的单位$
示,#和_参与者主VW0S点组内的节点可以分为参与者".1:3<00,
要完成具体的操作,全局序列服务器主要向参与者提供全局序列
号$同时缓存参与者所执行的操作序列$向参与者提供操作序列的
副本,VW0S实现+!+模式下606H主要完成的两个方面的工作!
安全有效的群组通信,+!+系统建立和维护$+!+系统建立和维护
主要通过加入和退出两个原语实现$安全有效的群组通信通过发
送和接收两个原语保证在点组节点之间进行安全有序的通信,
"#节点加入!假设新加入的节点是."#$根据定义知道已经%-
那么原有的节点为任意."#"#有-<%个节点加入点组$""3"-23
建立."#到."#的连接!."##----&."!2
建立."#到."#%."&--1""3"-!23#的连接!任意3%."3#
建立."#的连接!任意3%#&--1""3"-!23#到."."3#%."
节点加入算法满足定义*的两个条件"#和"#$证明如下!%!
当节点."#加入时$执行式"#$很明显满足定义*2假如/’节点加入算法满足定义*2那么节点%*;$
#加入时$要执行式"#$建立."##$产生了一个新的连接2执行式"#$建立任意;=%*;=%;=%)&."."
#%."&$生成;个新的不同连接2执行式"#$建立任意#;=%""3";=%#;=%113%."3#3%."3#%."
&$生成了;个新的不同连接2如果/’只可能是存在."""3";=%""3#3#";=%不满足定义*的要求$
#和."#不满足."#$否则和假设/’如果不满足."#$与式"#;=%;=%;=%;=%)&."3#3#%.";相矛盾2
相矛盾’如果不满足."#%."$与式"#相矛盾’如果不满足."#%."#$与式"#相矛盾2;=%#;=%;=%*3#
所以."#加入到/’;=%/’;$;=%满足定义*的要求,
"#节点退出!假设节点."#离开点组$那么其他节点为(&$该算法描!-%#3#)且3$-13%."3#
述如下!
"#/
断开节点."#到其他节点."取消."#%."$#"#--)0)<%!2’<%$3#的连接$3#."3#成为."3<%