Avoiding Priority Inversion on the Processing of Requests by Active Replicated Servers

合集下载

RAMCloud Slides

RAMCloud Slides

Offline
October 2, 2012 RAMCloud Slide 8
...
...
...
...
...
Goal: Scale and Latency
Traditional Application
Application Servers
Web Application
Storage Servers
RAMCloud
Research Issues
● Durability and availability ● Fast communication (RPC) ● Data model ● Concurrency, consistency, transactions ● Data distribution, scaling ● Multi-tenancy ● Client-server functional distribution ● Node architecture
Main-memory databases
UNIX buffer cache
Large file caches
Main-memory DBs, again
1970
October 2, 2012
1980
1990
RAMCloud
2000
2010
Slide 3
RAMCloud
Harness full performance potential of large-scale DRAM storage:
Hash Table Buffered Segment Disk
Backup
Buffered Segment Disk
Backup

存储HCIP考试模拟题含答案

存储HCIP考试模拟题含答案

存储HCIP考试模拟题含答案一、单选题(共38题,每题1分,共38分)1.生产中心有 2080GB 的数据,需要备份到灾备中心。

备份窗为 6 小时,不进行重删,带宽利用率为 0.8。

则至少需要多大的带宽才能满足此备份要求。

A、49.28MB/sB、61.6MB/sC、98.56MB/sD、123.2MB/s正确答案:D2.存储设备产生了故障告警,以下方法中,哪一项不能收集存储系统故障信息()A、检查 Zone 配置B、检查所有事件C、导出系统数据D、检查告警信息正确答案:A3.以下哪项不是 oceanstor cloud service 具备的功能?A、自动检查存储健康状态B、时刻发现设备告警C、自动解决故障D、故障信息即时传输到云端服务器正确答案:C4.在 oceanstor v3 存储中,edevlun 哪个信息是有华为存储直接提供的存储空间A、meta volumeB、external lunC、data volumeD、taget lun正确答案:A5.华为容灾方案中,关于同步远程复制顺序的描述正确的是:1 主存储阵列写 I/O 数据到主 LUN,并发送 IO 到从 LUN2 主机发送 IO 到主存储阵列。

3 主存储阵列向主机返回写成功的信息。

4 写 IO 数据到主从LUN 中。

A、2->1->4->3B、1->4->3->2C、3->2->1->4D、1->2->3->4正确答案:A6.配置主备容灾时,主端和备端阵列上的 LUN 需满足以下哪个条件?A、备端 LUN 大小需大于等于主端 LUN。

B、备端需配置相同的 RAID 级别,并且备端 LUN 需和主端 LUN 大小一致。

C、只需备端 LUN 和主端 LUN 大小一致。

D、备端需配置相同类型的硬盘,备端 LUN 大小需大于等于主端 LUN。

正确答案:C7.华为 Oceanstor 9000 InfoTier 文件池策略将决定文件创建的存储位置,以及文件重条带化时的目标分级,以下关于文件池策略说法不正确的是哪一项?A、策略参数组合间为“或”的关系B、default 策略优先级最低C、default 策略可以被修改D、最多可支持配置 128 条文件池策略正确答案:A8.以下关于 oceanstor 9000 InfoLocker 特性说法不正确的是哪一项?A、WORM 文件能进行修改和删除B、WORM 时钟只允许设置一次,设置成功后不再允许更改C、当一个目录配置为 WORM 根目录时,该目录的所有子目录、新增目录和新建文件自动获取父目录的WORM 属性D、WORM 保护的提交方式只支持自动提交正确答案:A9.下面对重复数据删除技术原理描述不正确的是哪项?A、相同的数据块物理上只存储一次。

存储HCIP习题含答案

存储HCIP习题含答案

存储HCIP习题含答案一、单选题(共38题,每题1分,共38分)1.某容灾项目采用华为网络层完整空间快照方案,在9:00时开始对源卷创建快照,9:10时快照创建完成,在此过程中源卷有写操作,请问以下说法哪项是正确的?A、快照卷数据内容和源卷在9:00时数据内容相同。

B、快照卷是一份源卷在9:00时间点上的物理拷贝。

C、快照卷数据内容是源卷在9:00至3:10之间的增量数据。

D、快照卷数据内容和源卷在9:10时数据内容相同。

正确答案:A2.使用华为OceanStorBCManagereReplication配置主备容灾时,下列哪个操作不是必须的?A、添加存储设备和主机B、创建保护组C、配置站点D、配置主机组正确答案:D3.下面哪项属于oceanstor18000存储系列产品RAID2.0+技术支持的自动负载均衡技术?A、smartmotionB、smarttierC、smartqosD、smartpartition正确答案:A4.多路径软件的主要功能不包括以下那一项?A、负载均衡B、failover域failbackC、对数据加密D、屏蔽冗余磁盘正确答案:C5.在一个城市中,假如市公安局需要对各个派出所辖区内的视频监控进行定期归档,在这样的应用场景中,如果采用Oceanstor9000VIRC30提供的解决方案,应该推荐客户采用以下什么节点类型?A、P12节点B、P24节点C、P36节点D、P72节点E、C36节点正确答案:E6.大数据时代,也应该具有大数据思维,以下说法不正确的是哪一项?A、大数据时代,对数据的处理和分析不再依赖于随机的样本B、大数据时代,对大数据的处理分析更倾向于预测将会发生什么C、大数据时代,应该热衷追求数据的精确度正确答案:C7.在Oceanstor9000中,以下哪个组件的应用需要License支持。

A、NDMP备份B、同统一网管C、InfoReplicatorD、统一视图正确答案:C8.以下哪一项是华为混合闪存系列存储产品所支持的维护软件?A、SmartKitB、OceanStorUltraPathC、BCManagereReplicationD、OceanStoreSDK正确答案:A9.以下关于开箱验货说法不正确的是哪一项?A、开箱验货时出现错货、缺货,请填写《货物差错反馈表》反馈给当地办事处B、如果货物出现与装箱清单不符情况,应将已拆包装箱的设备转室内妥善存放C、开箱验货时,工程督导可以单独开箱清点货物正确答案:C10.以下关于华为OceanStor备份解决方案的描述,哪项是错误的,A、与容灾相比备份的恢复颗粒度较细,可以以文件为恢复级别,且可以做多个恢复版本。

MySQL集群节点宕机,数据库脑裂!如何排障?

MySQL集群节点宕机,数据库脑裂!如何排障?

MySQL集群节点宕机,数据库脑裂!如何排障?作者介绍王晶,中国移动DBA,负责“移动云”业务系统的数据库集成架构设计、运维、优化等⼯作;擅长技术领域MySQL,获Oracle颁发的“MySQL DBA”官⽅认证,熟悉MySQL复制结构、MHA、cluster等多种架构及运维优化。

发现故障的时间正值⼤年初⼆,在各种铺天盖地的拜年信息和微信红包之中,我发现了⼿机上的这条告警通知:PROBLEM:Disaster: Galera cluster has node down。

我⽣产环境的Galera集群有⼀个节点宕机了。

可能有的⼈不太熟悉MySQL Galera集群,下⾯先介绍⼀下出故障的集群信息。

PXC:我们⽣产上⽤的是Percona的⼀个MySQL分⽀版本,PerconaXtradb Cluster,简称PXC,这是⼀个可以实时同步的MySQL集群,基于⼴播write set和事务验证来实现多节点同时commit,冲突事务回滚的功能。

强数据⼀致性保证。

Galera Replication原理总结:1. 事务在本地节点执⾏时采取乐观策略,成功⼴播到所有节点后再做冲突检测;2. 检测出冲突时,本地事务优先被回滚;3. 每个节点独⽴、异步执⾏队列中的WS;4. 事务T在A节点执⾏成功返回客户端后,其他节点保证T⼀定会被执⾏,因此有可能存在延迟,即虚拟同步。

Galera复制的架构图:Galera flow control:Galera是同步复制(虚拟同步)⽅案,事务在本地节点(客户端提交事务的节点)上提交成功时,其它节点保证执⾏该事务。

在提交事务时,本地节点把事务复制到所有节点,之后各个节点独⽴异步地进⾏certification test、事务插⼊待执⾏队列、执⾏事务。

然⽽,由于不同节点之间执⾏事务的速度不⼀样,长时间运⾏后,慢节点的待执⾏队列可能会越积越长,最终可能导致事务丢失。

Galera内部实现了flow control,作⽤就是协调各个节点,保证所有节点执⾏事务的速度⼤于队列增长速度,从⽽避免丢失事务。

DPOS共识机制的改进方案

DPOS共识机制的改进方案

收稿日期:2019 05 20;修回日期:2019 07 16 作者简介:高迎(1973 ),女,硕导,博士,主要研究方向为信息管理、分布式系统;谭学程(1994 ),男,硕士研究生,主要研究方向为区块链以及分布式网络(18910947922@163.com).DPOS共识机制的改进方案高 迎,谭学程(首都经济贸易大学管理工程学院,北京100070)摘 要:针对委托权益证明(DPOS)共识机制节点投票不积极以及恶意节点勾结现象提出了一种改进方案。

首先,引入非结构化网络信任模型,根据每个节点的历史记录和其他节点的推荐值计算综合信任值。

根据综合信任值进行投票,使得选择的节点更可信。

引入推荐算法,节点的权益得到了分散,降低了中心化程度。

其次,加入了奖惩机制,针对积极投票的节点给予信用值的奖励,使其有机会成为共识节点,针对恶意节点给予信任值的惩罚。

实验结果表明,基于综合信任值投票计算的DPOS共识机制能够快速剔除错误节点,维护系统稳定性,具有较高的安全性。

关键词:委托权益证明;信誉投票;奖惩机制中图分类号:TP302.7 文献标志码:A 文章编号:1001 3695(2020)10 042 3086 05doi:10.19734/j.issn.1001 3695.2019.05.0234ImprovementofDPOSconsensusmechanismGaoYing,TanXuecheng(SchoolofManagementEngineering,CapitalUniversityofEconomics&Business,Beijing100070,China)Abstract:Inordertosolvetheproblemofpassivenodevotingandcollusionbetweenmaliciousnodes,thispaperproposedanimprovedDPOSconsensusmechanism.Firstly,itintroducedtheunstructurednetworktrustmodel.Accordingtothehistoryofeachnodeandtherecommendationvalueofothernode,itcalculatedthecomprehensivetrust.Accordingtothecomprehensivetrustvalue,itmadetheselectednodemorereliable.Byintroducingtherecommendationalgorithm,itdispersedtheinterestsofnodesandreducedthedegreeofcentralization.Secondly,itaddedarewardandpunishmentmechanismtorewardthecreditvalueofthenodesthatvotedactively,sothattheyhadachancetobecomeconsensusnodes,andalsotopunishthecreditva lueforthemaliciousnode.TheexperimentalresultsshowthattheDPOSconsensusmechanismbasedonthecomprehensivetrustvaluevotingcalculationcanquicklyeliminatetheerrornodes,maintainthestabilityofthesystem,andhavehighsecurity.Keywords:DPOS;reputationvoting;rewardandpunishmentmechanism 区块链是分布式存储、点对点传输、共识机制、加密算法等信息技术在互联网时代的集成创新。

大数据HCIA试题及参考答案

大数据HCIA试题及参考答案

大数据HCIA试题及参考答案1、以下关于Zookeeper的Leader节点在收到数据变更请求后的读写流程说法正确的是?A、仅写入内存B、同时写入磁盘和内存C、先写磁盘再写内存D、先写内存再写磁盘答案:C2、在FusionInsight产品中,关于KafkaTopic,以下描述不正确的有?A、每个Topic只能被分成一个partition(区)B、Topic的partition数量可以在创建时配置C、每个Partition的存储层面对应一个log文件,log文件中记录了所有的信息数据D、每条发布到Kafka的消息都有一个类别,这个类别被称为Topic,也可以理解为一个存储消息的队列答案:A3、HBase的物理存储单元是什么?A、RegionB、ColumnFamilyC、ColumnD、ROW答案:B4、以下哪些选项属于Hive的数据存储模型?A、以上全都正确B、表C、桶D、数据库E、分区答案:A5、Zookeeper的scheme认证方式不包含以下哪项?()A、digestB、authC、saslD、world答案:C6、Hive中的这条命令“ALTERTABLEemployee1ADDcolumns(column1string);”是什么含义?A、删除表B、增加列C、创建表D、修改文件格式答案:B7、FusionInsightHD的HBase中的一张表包含以下几个Region[10,20),[20,30),[30,+∞],分别编号为①,②,③,那么,11,20,222分别属于哪个Region?A、①①③B、①②③C、①②②D、①①②答案:C8、FusionInsightHD的HBase中保存一张用户信息表meg_table,Rowkey为用户id,其中一列为用户昵称,现在按先后顺序往这列写入三个KeyValue:001:Li,001:Mary,001:LiLy,请问scan'meg_table',{VERSIONS=>2}会返回哪几条数据?A、001:LiB、001:LilyC、001:Li,001:Mary,001:LiLyD、001:Mary,001:LiLy答案:D9、Flink中的()接口用于流数据处理,()接口用于批处理?A、DataStreamAPI,DataSetAPIB、DatabatchAPI,DataStreamAPIC、StreamAPI,BatchAPID、BatchAPI,StreamAPI答案:A10、关于RDD,下列说法错误的是?A、RDD具有血统机制(Lineage)B、RDD默认存储在磁盘C、RDD是一个只读的,可分区的分布式数据集D、RDD是Spark对基础数据的抽象答案:B11、加载数据到Hive表,哪种方式不正确?A、直接将本地路径的文件load到Hive表中B、将HDFS上的文件load到Hive表中C、Hive支持insertinto单条记录的方法,所以可以直接在命令行插入单条记录D、将其他表的结果集insertinto到Hive表答案:C12、在fusionlnsight产品中,关于kafka的topic.以下描述不正确的是?A、topic的partition数量可以创建时配置B、每个topic只能被分成一个partition区C、每条发布到kafka的消息都有一个类别,这个类别被称为topi也可以理解为一个存储消息的队列D、每个partition在存储层面对应一个log文件,log文件中记录了所有的消息数据答案:B13、FusionInsightHD产品中,关于Kafka组件部署说法不正确的是?A、Kafka强依赖于ZooKeeper,安装Kafka必须安装ZooKeeperB、Kafka部署的实例个数不得小于2C、Kafka的服务端可以产生消息D、Consumer作为Kafka的客户端角色专门进行消息的消费答案:C14、KafkaClusterMirroring工具可以实现以下哪项功能?A、Kafka跨集群数据同步方式B、Kafka单集群内数据备份C、Kafka单集群内数据恢复D、以上全不正确答案:A15、FusionlnsightHD中,如果需要查看当前登录HBase的用户和权限组,可以在HBaseshell中执行什么命令?A、use_permissionB、whoamiC、whoD、get_user答案:B16、以下关于KafkaPartition偏移量的描述不正确的是?A、唯一标记一条消息B、消费者通过offset、partition、topic跟踪记录C、每条消息在文件中的位置称为offset偏移量D、offset是一个String型字符串答案:D17、Spark自带的资源管理框架是?A、YARNB、MesosC、StandaloneD、Docker答案:C18、下列关于SparkStreaming和Streaming比较说法不正确的是?A、SparkStreaming是一个微批处理框架,事件需要积累到一定量时才进行处理B、Streaming的执行逻辑是即时启动,运行完后再回收C、SparkStreaming的吞吐量大约是Streaming的2-5倍D、SparkStreaming事件处理时延比Streaming更高答案:B19、某银行规划的FusionlnsightHD集群有90个节点,如果控制节点规划了3个,那集群中数据节点推荐规划()个。

5G无线技术及部署练习题附答案

第一章课后练习1. 选择题(1)在5G移动通信系统网络架构中, 无线接入网的设备是( C )。

A. BTSB. BSCC. gNodeBD. eNodeB(2)从物理层次划分时, 5G承载网被分为( ABD )。

A. 前传网B. 中传网C. 后传网D. 回传网(3)为了满足低时延业务需要, 核心网的部分网络需要下沉到( D )中。

A. 核心DCB. 中心DCC. 区域DCD. 边缘DC(4)全球3G标准包含(ABCD )。

A. WCDMAB. CDMA2000C. TD-SCDMAD. WiMAX(5)4G使用的多址接入技术是(D)。

A. FDMAB. CDMAC. TDMAD. OFDMA2. 简答题(1)请写出ITU定义的5G的八大能力目标。

(2)请描述5G的三大应用场景。

5G的应用场景分为三大类: 增强移动带宽(enhanced Mobile Broadband, eMBB)、超高可靠低时延通信(Ultra Reliable and Low Latency Communication, URLLC)、海量物联网通信(massive Machine Type of Communication, mMTC), 不同应用场景有着不同的关键能力要求。

其中, 峰值速率、时延、连接数密度是关键能力。

eMBB场景下主要关注峰值速率和用户体验速率等, 其中, 5G的峰值速率相对于LTE的100Mbit/s提升了100倍, 达到了10Gbit/s;URLLC场景下主要关注时延和移动性, 其中, 5G的空口时延相对于LTE的50ms降低到了1ms;mMTC场景下主要关注连接数密度, 5G的每平方千米连接数相对于LTE 的104个提升到了106个。

第二章(1)以下可用于5G无线接入网部署的组网方式为( D )。

A. DRANB. CRANC. Cloud RAND. 以上都可以(2)以下不属于DRAN架构优势的是( D )。

Neo4j中文使用手册以及例子

目录前言I. 简介1. Neo4j的亮点2. 图数据库概要3. Neo4j图数据库II. 教程4. 在Java应用中使用Neo4j5. Neo4j远程客户端库6. 遍历查询框架7. 数据模型范例8. 多语言支持9. 在Python应用中使用Neo4j10. 扩展Neo4j服务器III. 参考11. 性能12. 事务管理13. 数据导入14. 索引15. Cypher查询语言16. 图形算法17. Neo4j服务器18. REST API19. 在Python中使用Neo4j嵌入模式IV. 操作20. 安装和部署21. 配置和调优22. 高可用性模式23. 备份24. 安全25. 监视服务器V. 工具集26. 基于Web的Neo4j图数据库管理工具27. Neo4j命令行VI. 社区28. 社区支持29. 促进Neo4j发展A. 联机帮助页A.1. neo4jA.2. neo4j-shellA.3. neo4j-backupA.4. neo4j-coordinatorA.5. neo4j-coordinator-shellB. 常见问题第 1 章Neo4j的亮点作为一款强健的,可伸缩的高性能数据库,Neo4j最适合完整的企业部署或者用于一个轻量级项目中完整服务器的一个子集存在。

它包括如下几个显著特点:完整的ACID支持高可用性轻易扩展到上亿级别的节点和关系通过遍历工具高速检索数据适当的ACID操作是保证数据一致性的基础。

Neo4j确保了在一个事务里面的多个操作同时发生,保证数据一致性。

不管是采用嵌入模式还是多服务器集群部署,都支持这一特性。

更多详细的介绍,请参考章节:transactions。

可靠的图型存储可以非常轻松的集成到任何一个应用中。

随着我们开发的应用在运营中不断发展,性能问题肯定会逐步凸显出来,而Neo4j不管应用如何变化,他只会受到计算机硬件性能的影响,不受业务本身的约束。

部署一个neo4j服务器便可以承载上亿级的节点和关系。

大数据HCIA题库含参考答案

大数据HCIA题库含参考答案一、单选题(共41题,每题1分,共41分)1.YARN调度器分配资源的顺序,下面哪一个描述是正确的?A、任意机器->同机架->本地资源B、任意机器->本地资源->同机架C、本地资源->同机架->任意机器D、同机架->任意机器->本地资源正确答案:C2.Flink中的()接口用于流数据处理,()接口用于批处理?A、DataStreamAPI,DataSetAPIB、DatabatchAPI,DataStreamAPIC、StreamAPI,BatchAPID、BatchAPI,StreamAPI正确答案:A3.关于Hive在FusionlnsightHD中的架构描述错误的是?A、只要有一个HiveServer不可用,整个Hive集群便不可用B、HiveServer负责接受客户端请求、解析、执行HQL命令并返回查询结果C、MetaStore用于提供原数据服务,依赖于DBServerD、在同一时间点HiveServeir只有一个处于Active状态,另一个则处于Standby状态正确答案:A4.FusionInsightHD系统中HDFS默认BlockSize是多少?A、32MBB、64MBC、128MBD、256MB正确答案:C5.FusionInsightHDHBase默认使用什么作为其底层文件存储系统?()A、HadoopB、MapReduceC、MemoryD、HDFS正确答案:D6.hbase的底层数据以()的形式存在的?A、行存储B、实时存储C、keyvalueD、列存储正确答案:C7.HDFS的副本存放策略中,同一机架不同服务器之间的距离是()A、2B、3C、1D、4正确答案:A8.下列选项中,关于Zookeeper可靠性含义说法正确的是?A、可靠性通过主备部署模式实现B、可靠性是指一条消息被一个server接收,它将被所有server接受C、可靠性是指无论哪个server,对外展示的均是同一个视图D、可靠性是指更新只能成功或者失败,没有中间状态正确答案:B9.以下关于FusionInsightCTBase的描述不正确的是?()A、CTBase的javaAPI提供一套Hbase连接池管理的接口,内部进行连接共享,减少客户端应用开发难度B、CTBase提供了一套WebUI进行元数据定义,提供了直观易用的表设计工具,降低表设计的难度。

XMemcached使用指南

XMemcຫໍສະໝຸດ ched 的主要特性高性能
XMemcached 同样是基于 java nio 的客户端,java nio 相比于传统阻塞 io 模型来说,有效率高 (特别在高并发下)和资源耗费相对较少的优点。传统阻塞 IO 为了提高效率,需要创建一定 数量的连接形成连接池,而 nio 仅需要一个连接即可(当然,nio 也是可以做池化处理),相对 来说减少了线程创建和切换的开销,这一点在高并发下特别明显。因此 XMemcached 与 Spymemcached 在性能都非常优秀,在某些方面(存储的数据比较小的情况下)Xmemcached 比 Spymemcached 的表现更为优秀,具体可以看这个 Java Memcached Clients Benchmark。
touch 更新数据超时时间
经常有这样的需求,就是希望更新缓存数据的超时时间(expire time),在没有 touch 协议之前, 你需要整体的 get-set 一次:
value=client.get("a"); client.set("a",new-expire-time,value);
两次操作,加上 value 的序列化/反序列化、网络传输,这个开销可不小。幸好,现在 memcached 已经支持 touch 协议,只需要传递 key 就更新缓存的超时时间:
Search for
User_Guide_zh 用户指南 0.4版本 Phase-Support, UserGuide, 用户指南, Featured Updated Jul 16, 2012 by killme2...@
• 变更历史 • XMemcached 简介 • XMemcached 的主要特性 高性能 支持完整的协议 支持客户端分布 允许设置节点权重 动态增删节点 支持 JMX 与 Spring 框架和 Hibernate-memcached 的集成 客户端连接池 可扩展性 • 使用指南 依赖包 如果你使用 maven 简单例子 touch 更新数据超时时间 客户端分布 CAS 操作 更全面的例子 迭代所有 key Incr/Decr 查看统计信息 SASL 验证 高级主题 与 Spring 框架集成 Spring 3.0和 Builder 配置 设置节点权重 使用二进制协议 JMX 支持 动态添加/删除节点 Nio 连接池 Failure 模式和 standby 节点 与 Kestrel 交互 与 tokyotyrant 交互 与 Hibernate-memcached 集成 压缩、sanitizeKeys 等杂项 数据压缩 packZeros sanitizeKeys
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

AvoidingPriorityInversionontheProcessingofRequestsbyActiveReplicatedServers

Y.WangSoutheastUniversityNanjing,PRChinayunwang@seu.edu.cnF.BrasileiroFederalUniversityofPara´ıbaCampinaGrande,Brazilfubica@dsc.ufpb.brE.Anceaume,F.Greve,M.HurfinIRISARennes,Franceanceaume,fgreve,hurfin@irisa.fr

AbstractWeconsiderthepriorityinversionprobleminanactivelyreplicatedsystem.Priorityinversionwasoriginallydefinedinthecontextofnon-replicatedsystems.Thereforewefirstintroducetheconceptofgrouppriorityinversion,whichex-tendstheconceptof(local)priorityinversiontothecontextofagroupofprocessorsthatperformanactivelyreplicat-edprocessing.Wethenpresentthepropertiesofarequestschedulingprotocoltoenforceatotalorderingforthepro-cessingofrequestswhileavoidinggrouppriorityinversion-s.Thesepropertieshavebeenimplementedinaprotocolthatreliesonatimedasynchronoussystemmodelequippedwithafailuredetectoroftheclass.Theproposedso-

lutionallowstoreplicateacriticalserverwhileensuringthattheprocessingofalltheincomingrequestsisconsis-tent(mechanismsforsolvingtheatomicbroadcastproblem)andpredictable(mechanismsforsolvingthegrouppriorityinversionproblem).Thus,thedescribedrequestschedul-ingprotocolisakeycomponentwhichcanbeusedtode-velopfaulttolerantrealtimeapplicationsinatimedasyn-chronoussystem.

1IntroductionManyexecutionplatformsforreal-timeapplicationsuseapriority-basedschedulingpolicy.Insuchsystems,detect-ingandlimitingtheeffectsofpriorityinversionsisakeyrequirementtoattainpredictability.Informally,apriorityinversionoccurswhenahigherpriorityactivityisdelayedbyalowerpriorityone.Anactivityisagenerictermthatmaycorrespondtoaprocess,athread,atransactionoreventheprocessingofarequest.Furthermore,whentheexe-cutiontimeoflowerpriorityactivitiesispotentiallymuchlargerthanthatofahigherpriorityactivity,thenpriorityin-Thetotalorderingprotocolwhichallowsreplicastopro-cessthesamesequenceofinputrequestsisthecoreofafault-tolerantsystemthatemploysactivereplication.Fur-ther,whentheextrarequirementofdealingappropriatelywithpriorityinversionsisintroduced,theorderingonwhichinputrequestsareprocessedmustnotonlybeconsistenta-mongthereplicas,butalso“sensible”.Itisinterestingtopointoutthatwhenthecomputationisreplicated,theverynotionofpriorityinversionisnotclearlydefined[12,14].Sincethereisnosynchronizationontheinstantsoftimewheninputrequestsarereceived,madeavailableforpro-cessing,orprocessedatdifferentreplicas,itispossiblethatonereplicaexperiencesa“local”priorityinversion,whileanotherdoesnot.Thus,thefirstcontributionofthispaperistheintroductionoftheconceptofGroupPriorityInver-sion(GPI),whichextendsthatoflocalpriorityinversiontothecontextofagroupofprocessorsthatperformanac-tivelyreplicatedprocessing.Informally,agrouppriorityin-versionoccurswhentoomanylocalpriorityinversionshaveoccurred,causingtheprocessingofsomehigherpriorityac-tivitytobedelayedbythatoflowerpriorityones.Thus,inourtargetsystem,“sensibly”orderingrequestsmeansdoingthatinsuchawaythatgrouppriorityinversionsareavoided.Inasynchronoussystem,ifgrouppriorityinversionsareavoidedandthearrivallawofinputrequestsisknown,thepredictabilityofthereplicatedsystemwillnotbeaffected.Predictabilityisthecapabilityofthesystemtoperformasetofactivitiesinawell-definedfashion,suchthateachac-tivity’stimingrequirementsaresatisfied:whenanactivityispredictable,itsresultanditsworstcaseexecutiontimeareknownbeforeitsexecution.Therefore,predictabilityisessentialtosupportreal-timeapplications.Thefault-tolerantreal-timesystemswhichhavepreviouslybeenmen-tioned[10,11]arebasedonsynchronoussystemsinwhichpredictableruntimebehaviorscanbeensured.Howeverthedefinitionofasynchronoussystemreliesontheexistenceandtheknowledgeoftemporalboundswithinthesystem,i.e.,thedelayofmessagetransmissionandthespeedofprocessing.Thereforerelyingonstricttimingassumption-sisunsafeespeciallyinsystemswhereperformancefail-ures(e.g.,networkcongestions)arepossible.Suchfailuresaregenerallyinfrequentbutmaypreventmostofthesyn-chronousprotocolsfrombeingused.Inthispaperratherthanconsideringa“pure”synchronoussystem,wesupposethatthesystemalternatesbetween“good”and”bad”pe-riods,asintheTimedAsynchronousDistributedSystemModelof[1].Duringagoodperiod,thesystembehavesasasynchronoussystem,whileinbadperiods,thesystemisasynchronous(i.e.,performancefailuresmayoccur).Ofcourse,thedurationsofthegoodperiodsmustbelongerthanthoseofthebadones.Itwouldbefutiletodevelopreal-timeapplicationinancompletelyinadequateenviron-ment.Clearly,thepredictabilityanalysisisvalidonlydur-inggoodperiods.ThesecondcontributionofthispaperisasolutiontoavoidGPIwithinasetofreplicatedserversevenwhenthesystementersbadtransientperiods.More-over,thissolutionguaranteestheequivalencebetweentheavoidanceofGPIandpredictabilityduringgoodperiods.Anumberoftotalorderingprotocolshavebeenpresent-edintheliterature.Asfarasweknow,onlytwoofthemconsiderthepriorityassociatedwithrequeststoestablishtotalordering[12,14].Theseprotocolswerenotdesignedtoavoidgrouppriorityinversionswhichisnotsurprising,sincegrouppriorityinversionisanewconceptintroducedinthispaper.Theydifferfromtheprotocolweproposeinseveralaspects.WediscussthesedifferencesindetailinSection7.Inthispaper,thetermrequestschedulingpro-tocolreferstoatotalorderingprotocolthattakespriorityofinputrequestsintoaccountandavoidstheoccurrenceofgrouppriorityinversions.Wefocusonthedesignofrequestschedulingprotocols.Ontheotherhand,wedonotdiscussdetailsassociatedwithanyprotocolthatcouldberequiredtofiltertherepliesproducedbyareplicatedserver,eithertovalidatethem,ortodiscardduplicates.Thepaperisorganizedinthefollowingway.Section2presentsourtargetsystemmodel.Section3recallssomekeydefinitionsabouttheactivereplicationmodel.Section4definesthenotionofgrouppriorityinversioninageneralsetting.InSection5,weformallydefinetheproblemthathastobesolvedandwediscussthemaindifficultiesrelatedtothedesignofasolution.Then,inSection6,arequestschedulingprotocolispresented.InSection7wediscussrelatedworks.Finally,Section8bringsourconcludingre-marks.

相关文档
最新文档