欢迎访问学兔兔,学习、交流 分享 !

返回首页 |

数据分发服务 以数据为中心的发布-订阅式通信 任昊利,张少扬 等编著 2014年版

收藏
  • 大小:162.72 MB
  • 语言:中文版
  • 格式: PDF文档
  • 阅读软件: Adobe Reader
资源简介
数据分发服务 以数据为中心的发布-订阅式通信
作者:任昊利,张少扬 等编著
出版时间:2014年版
内容简介
  DDS(Data Distribution Service,数据分发服务)是OMG发布的有关分布式实时系统中数据传输的一个规范(2004年12月发布1.0版,2007年1月发布1.2版)。随着实时分布式系统复杂度的不断增加和研发规模的迅速扩大,系统集成的难度和风险都在大幅度提高,DDS为各种不同的分布式应用提供了数据通信模型,对分布式的异构系统集成提供了很好的解决方案。DDS是以数据为中心的发布/订阅通信模型,针对强实时系统进行了优化,提供低延迟、高吞吐量以及对实时性能的控制级别,从而使DDS能够广泛地用于航空航天、国防、分布式仿真、工业自动化、分布控制、机器人、电信以及物联网等多个领域。 本书的编写本着由浅入深、深入浅出的原则,系统地介绍了DDS的使用、编程技术。本书中配有大量的例子,供使用人员参考,适合软件工程师、软件架构师、软件项目经理等专业人员使用,同时也适合作为硕士研究生、本科生的教材。
目录
第1章 概述
1.1体系集成需求
1.1.1系统集成的问题
1.1.2耦合性问题
1.1.3复杂数据流问题
1.2什么是数据分发服务
1.3什么是中间件
1.4网络通信模型
1.5什么是“以数据为中心”
1.6DDS对开发者有什么帮助第2章 DDS架构
2.1设计理念
2.2可扩展的传输框架
2.2.1以数据为中心的发布/订阅
2.2.2数据本地重构层
2.3DDS的发现
2.4线程处理
2.5配置
2.6DCPS通信
2.6.1DCPS通信概述
2.6.2域和域参与者
2.6.3数据写入者和发布者
2.6.4数据读取者和订阅者
2.6.5主题、实例与关键字
2.6.6服务质量(QoS)策略控制通信行为
2.6.7监听器
2.6.8条件第3章 数据类型和数据样本
3.1数据类型概述
3.1.1序列
3.1.2字符串和宽字符串
3.1.3类型代码
3.2内置数据类型
3.2.1注册内置类型
3.2.2为内置类型创建主题
3.2.3字符串内置类型
3.2.4关键字字符串内置类型
3.2.5管理内置数据类型的内存
3.2.6内置数据类型的类型代码
3.3使用IDL创建用户数据类型
3.3.1可变长度类型
3.3.2值类型
数据分发服务--以数据为中心的发布/订阅式通信
3.4与用户数据类型动态互动
3.4.1类型代码概述
3.4.2定义新类型
3.5使用数据样本
3.5.1具体类型的对象
3.5.2动态定义数据类型的对象第4章 服务质量(QoS)策略
4.1QoS策略概述
4.1.1默认QoS策略
4.1.2DEADLINE(截止期限(T,DR,DW))
4.1.3DESTINATION_ORDER(目标顺序(T,DR))
4.1.4DURABILITY(持久性(T,DR,DW))
4.1.5ENTITY_FACTORY(实体工厂(DP,Pub,Sub))
4.1.6GROUP_DATA(组数据(Pub,Sub))
4.1.7HISTORY(历史(T,DW,DR))
4.1.8LATENCY_BUDGET(时延预算(T,DR,DW))
4.1.9LIFESPAN(寿命(T,DW))
4.1.10LIVELINESS(活跃度(T,DW,DR))
4.1.11OWNERSHIP、OWNERSHIP STRENGTH(所有权(T)、
所有权强度(DW))
4.1.12PARTITION(分割(Pub,Sub))
4.1.13PRESENTATION(呈现(Pub,Sub))
4.1.14READER_DATA_LIFECYCLE(读取者数据生命周期(DR))
4.1.15RELIABILITY(可靠性(T,DW,DR))
4.1.16RESOURCE_LIMITS(资源限制(T,DW,DR))
4.1.17TIME_BASED_FILTER(基于时间的过滤(DR))
4.1.18TOPIC_DATA(主题数据(T))
4.1.19TRANSPORT_PRIORITY(传输优先级(T,DW))
4.1.20USER_DATA(用户数据(T,DP,DR,DW))
4.1.21WRITER_DATA_LIFECYCLE(写入者数据生命周期(DW))
4.1.22DURABILITY_SERVICE(持久性服务(DW))
4.1.23OWNERSHIP_STRENGTH(所有权强度(DW))
4.2策略示例第5 章实体
5.1所有实体的一般操作
5.1.1创建和删除实体
5.1.2启用实体
5.1.3获取实体的实例句柄
5.1.4获取状态和状态改变
5.1.5获取和设置监听器
5.1.6获取状态条件
5.1.7获取和设置服务质量策略
5.2实体的服务质量策略
5.2.1QoS请求vs.提供兼容性--RxO属性
5.2.2C语言的特殊服务质量策略处理
5.3通信状态
5.4监听器实体
5.4.1监听器的类型
5.4.2创建和删除监听器第6章 主题
6.1主题概述
6.1.1创建主题
6.1.2删除主题
6.1.3设置主题的服务质量策略
6.2内容过滤主题
6.2.1内容过滤主题概述
6.2.2过滤器适用的地方--发布与订阅方
6.2.3创建内容过滤主题
6.2.4删除内容过滤主题
6.2.5使用内容过滤主题第7章 发送数据
7.1发送数据的步骤
7.2发布者
7.2.1显式与隐式地创建发布者
7.2.2创建发布者
7.2.3删除发布者
7.2.4设置发布者的服务质量策略
7.2.5创建发布者监听器
7.2.6寻找一个发布者的相关实体
7.2.7等待应答
7.2.8发布者状态
7.2.9暂停和恢复发布
7.3数据写入者
7.3.1创建数据写入者
7.3.2获取所有数据写入者
7.3.3删除数据写入者
7.3.4创建数据写入者监听器
7.3.5检查数据写入者的状态
7.3.6数据写入者的状态
7.3.7使用一个类型特定数据写入者(FooDataWriter)
7.3.8写入数据
7.3.9刷新批量数据样本
7.3.10写入相关数据样本组
7.3.11等待应答
7.3.12管理数据实例(使用关键字控数据类型)
7.3.13设置数据写入者服务质量策略
7.3.14实体间的导航关系
7.3.15断言活跃度第8章 接收数据
8.1接收数据的步骤
8.1.1接收数据的准备
8.1.2使用一种机制接收数据
8.2订阅者
8.2.1显式与隐式地创建订阅者
8.2.2创建订阅者
8.2.3删除订阅者
8.2.4设置订阅者服务质量策略
8.2.5开始和终止组顺序的访问
8.2.6设置订阅者监听器
8.2.7用特定样本获取数据读取者
8.2.8寻找一个订阅者的相关实体
8.2.9订阅者的状态
8.3数据读取者
8.3.1创建数据读取者
8.3.2获取所有数据读取者
8.3.3删除数据读取者
8.3.4建立数据读取者监听器
8.3.5检查数据读取者状态和状态条件
8.3.6等待历史数据
8.3.7数据读取者的状态
8.3.8设置数据读取者服务质量策略
8.3.9实体间的导航关系
8.4使用数据读取者访问数据(读取或获取)
8.4.1使用类型指定数据读取者(FooDataReader)
8.4.2借出和返回数据以及样本信息序列
8.4.3用读取或提取访问数据样本第9章 使用域
9.1域和域参与者的基本原理
9.2域参与者工厂
9.2.1设置域参与者工厂QoS策略
9.2.2获取和设置域参与者的默认QoS策略
9.2.3释放域参与者工厂所用资源
9.2.4查找域参与者
9.2.5从QoS策略配置文件获取QoS策略值
9.3域参与者
9.3.1创建域参与者
9.3.2删除域参与者
9.3.3删除包括的实体
9.3.4选择域ID和创建多个域
9.3.5建立域参与者监听器
9.3.6设置域参与者QoS策略
9.3.7查找主题描述
9.3.8寻找主题
9.3.9获取隐式发布者或订阅者
9.3.10断言活跃度第10章 条件和监听器
10.1条件和监听器概述
10.2通信状态类型
10.2.1主题状态类型
10.2.2订阅者状态类型
10.2.3数据读取者状态类型
10.2.4数据写入者状态类型
10.3定义监听器
10.3.1主题监听器
10.3.2数据写入者监听器
10.3.3发布者监听器
10.3.4数据读取者监听器
10.3.5订阅者监听器
10.3.6域参与者监听器
10.4定义条件
10.4.1状态条件
10.4.2附加的条件类型第11章 配置OpenDDS
11.1配置方式
11.2通用配置选项
11.3发现配置
11.3.1域配置
11.3.2为DCPSInfoRepo配置应用程序
11.3.3为DDSRTPS发现配置
11.4传输配置
11.4.1传输配置概述
11.4.2配置文件示例
11.4.3传输注册示例
11.4.4传输配置选项
11.4.5传输实例选项
11.5记录
11.5.1DCPS层记录
11.5.2传输层记录第12章 开始使用
12.1规定遵从
12.1.1DDS规定遵从
12.1.2DDSRTPS规定遵从
12.2使用DCPS
12.2.1定义数据类型
12.2.2处理IDL
12.2.3一个简单的消息发布者
12.2.4建立订阅者
12.2.5数据读取者监听器实行
12.2.6清理OpenDDS客户端
12.2.7运行示例
12.2.8用RTPS运行示例
12.3数据处理最佳化
12.3.1在发布者中注册和使用实例
12.3.2读取多个样本
12.3.3零复制读取
12.4构建一个应用程序
12.4.1搭建开发环境
12.4.2构建应用程序
12.4.3数据类型定义
12.4.4建立发布应用程序
12.4.5建立订阅应用程序
12.4.6运行应用程序
参考文献
下载地址