网络异常情况下的拜占庭容错算法研究
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
其 发 展 , 由于拜 占庭 故障造 成 的 分布 式应 用 偏离 指 定的 行 为 ,可能 导致 财产 损失 甚至 人类 生命丧 失 。 当前 主流 拜 占庭 容错 算 法主 要针 对算 法 正常 执行 的 问 题 ,提 出 了考 虑 出错情 况 下 的拜 占庭 容错 算 法 。该算 法 主 要 考 虑 实 际过程 中服 务请 求端 和 服务 提供 端 的主 复制 品可 能发 生错 误 而 没有 响应 ,或者 因 网络拥 塞而 使 响应没 有 及 时送达 的情况 。
信 息 家 安 全 ’ 0 L
网络异常情况下 的拜 占庭容错算法研 究
余 丽静 /贵州 师 范学 院数 学与计算 机 科 学学 院
本 ’ T 期翱 ● ’ . , ’ 黪 莺 蘩
卜 :
.
错 算 法 ,一 直 是分 布 式应 用程 序 框 架 的组 成
部分 。在 分 布 式系 统 中 ,研 究 者们对 高可 用 l _ - _ | 系 统 的研 究 。 一般 集 中在 良性错 误 , 如服 务 器宕 机 、拒 绝 服 务攻 击 、在 网络 上窃 听 消息 或修 改 与破 坏
消 息后 ,t k 向 T的 主 复 制 品 t 。 发 送 消 息m = < Tr a n s i t — R E QU E S T, O , x , t t k , t k > ,并启 动计 时器 。 S t e p 4 :t 向T 的主 复制 品t 0 发送 消息m 后 ,在 时器 时 间 收到 了t 。 发 送的消 息 ,则说 明t 。 未发 生错 误 ,T 的复 制 品 开始 P R E — P R E P ARE、P R E P AR E和CO MMI TS : 个 阶段 的通 信过 程 ;如果 t 在 计 时器 时 间 内未 收到 t 。 发送 的消 息 ,t 开 始怀 疑 t 发 生 了错 误 , 向其 他 复 制 品 发送 更 改 视 图的 消 息
1 算 法描述
1 . 1基本概念 。拜 占庭容错 中,为 了容忍f 个错误 的复制 品,复制 品集 合的大小n 3 f + l 。一 旦错 误复制 品的数 量超 过
了错误容忍的门限值f ,该服务就不能再正常工作。一 些符号 说 明如 下: 是服 务请 求端 中发生拜 占庭错 误上 限值 ;每个 r e p l i c a 用c i 表示 ,主副制 品用c o 表示 ;服务 响应端T l  ̄ t t . = 3 f t + 1 个
r e p i f c a s 组成 ,f I 是服 务响应端中发生拜 占庭错  ̄ . x e p l i c a s 个数 的 上 限值 ,每 个t e I m c a 用L 表示,主副制品用t D 表示 。 1 . 2 出错情 况 下 的拜 占庭 容错 算法 。当 前主流 的拜 占 庭 容 忍算 法 针对 的是服 务请 求 端和 服务 提 供端 的主 复 制 品 都 未 发生 错 误且 网络 畅 通 的情 况 ,这 是一 种理 想状 况 。在 实 际 过 程 中 服 务 请 求 端 和 服 务 提 供 端 的主 复制 品 可 能 发 生 错 误而 没有 响 应 ,或 者 因 网络拥 塞而 使 响应 没有 及 时送 达 。本 节 就 服 务 请 求 端 未 能 及 时 收 到 消 息 , 引起 计 时器 超 ,服 务提 供端 发 生错误 的情 形 ,对算 法进 行讨 论 。 引起 服 务请 求 端 的复制 品计 时器超 时的 原 因可 能有 : ( 1 )服 务 响应端 的主复 制 品t 发 生错误 ,未 能将服 务请 求 端 发 生来 的 请求 转 发给 其他 服 务 响 应端 的复 制 品 。 ( 2 ) 服 务 响应 端 的 主 复制 品t 被 黑 客控 制 ,故 意不 将 服 务 响应 端 的复 制 品经 过 算法 认可 后 的结 果 发送 给服 务 请求 端 的 复 制品。 ( 3 )服 务 请 求 端 的复 制 品计 时 器 时 间设 置 过 短 ,
数据等 ,这些错误 可能使服务器中断,破坏数据的完整性 和 保 密 性 。但 缺 乏 对 更 为严 重 的 恶 意攻 击 的研 究 ,譬 如
软件 错 误 、错 误操 作 、密 钥 丢失 、服 务 器被 黑客 控 制等 。 这 种 由恶 意 攻击 引起 的错误 ,被称 为 拜 占庭 错 误。如 果 任
时,C 中的每一个复制品向T 中的主服务复制品t D 发送消息m
= < R E QU E S T , O , x , t c C i v p >u d l p 。其 中。 是要C 请 求 的操 作 ,x 是
该操作的序号, 是该请求O 的时间戳。发送 清求后,服务
请求者C i 启动 计时器 ,等待来 自T 的应答 ,如 图l 所示 。
不适 用于 当前 的网络状 况 。
图l计 时器 超 时的处 理过程 S t e p 2 :C中 的 复制 品C . 发送 请 求 后 ,等 待 应答 的 过程 中 ,计时器超 时,c j 将请 求n l c Di l r e c t — R E Q UE S T , O , x , , C >0。 T 发送给T 中的每 一个复制 品。 S t e p 3 :T中的 复制 品t k 收 到 +1 条 匹配 的Di r e c t R e q u e s t
计 时器 的 时 间进行 建模 ,对计 时 器 的时 间进 行动 态调 整 , 这 不 在本 文 讨 论 的 范 围 内 ,本 文主 要 考 虑情 况 ( 1 )和 情 况 ( 2 )。解决 这一 问题 的算法 描述 如下 : S t e p l :当服务请 求端C 需要 调用外部 服务 响应端T 服 务