《网络仿真VRNET基础与开发》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:霍景河主编;张国辉,张增,陈茜副主编
  • 出 版 社:北京:北京交通大学出版社
  • 出版年份:2016
  • ISBN:9787512124189
  • 页数:377 页
图书介绍:本书针对常用通信网络仿真工具VRNET Developer从入门到开发应用进行介绍,对仿真工具VRNET Developer的集成开发环境、开发原理、仿真工具使用的NED语言及涉及到的主要对象和类进行详细剖析。

第1章 VRNET简介 1

1.1 VRNET的特点 2

1.2 VRNET的应用范围 2

第2章 VRNET快速入门实例 4

2.1 安装和授权 4

2.1.1 软件安装 4

2.1.2 软件授权(License) 9

2.1.3 编译器安装注意事项 9

2.2 快速入门教程 10

2.2.1 教程简介 10

2.2.2 IDE界面介绍 10

2.2.3 导入已有项目 11

2.2.4 运行模型库已有项目 21

2.2.5 创建新项目 26

第3章 VRNET集成开发环境 41

3.1 概述 41

3.1.1 菜单栏 42

3.1.2 工具栏 45

3.1.3 项目资源管理器 45

3.1.4 属性/大纲视图 48

3.1.5 文件编辑区 49

3.1.6 信息显示区 52

3.2 高级设置 53

3.2.1 属性 53

3.2.2 首选项 55

第4章 VRNET仿真原理 57

4.1 离散事件仿真原理 57

4.1.1 VRNET中的简单模块 58

4.1.2 VRNET中的事件 58

4.2 分组传输模型 59

4.2.1 传输延迟,误比特率和速率 59

4.2.2 链路上的多个传输 59

4.3 无线仿真原理 60

4.3.1 无线收发流程 60

4.3.2 天线的设置和使用 63

第5章 NED语言 64

5.1 NED概述 64

5.2 NED编辑器 65

5.3 简单模块 66

5.4 复合模块 67

5.5 网络 68

5.6 参数 69

5.7 端 69

5.8 信道 69

5.9 子模块 70

5.1 0链路 70

第6章 VRNET对象和类 72

6.1 消息类cMessage 72

6.1.1 cMessage类 73

6.1.2 自消息 75

6.1.3 分组的建模 75

6.1.4 封装 76

6.1.5 附着对象和附着参数 78

6.1.6 消息定义 79

6.1.7 枚举 80

6.1.8 消息声明 80

6.1.9 继承,合成 82

6.1.10 利用已有的C++类型 84

6.1.11 定制生成的类 85

6.1.12 Generation Gap模式 87

6.1.13 在消息类中利用STL 90

6.1.14 消息类cMessage总结 91

6.1.15 消息编辑器 92

6.2 随机数产生类 95

6.2.1 随机数产生器 96

6.2.2 随机数流,RNG映射 96

6.2.3 获取随机数 96

6.2.4 随机变量 97

6.2.5 从柱状图产生随机数 98

6.3 模块参数类cPar 98

6.4 容器中存储数据类cQueue和cArray 98

6.4.1 队列类:cQueue 99

6.4.2 可扩展数组:cArray 100

6.5 路由支持和网络发现类cTopology 101

6.5.1 概述 101

6.5.2 基本用法 101

6.5.3 最短路径 103

6.6 统计类cStatistic与其派生类 105

6.7 分布估计类 105

6.7.1 k分算法 108

6.7.2 瞬时检测和结果准确性 110

6.8 记录仿真结果类 111

6.8.1 输出矢量:cOutVector 111

6.8.2 输出标量 112

6.8.3 精度 113

6.9 变量图形化观察类WATCH 113

6.9.1 基本查看 113

6.9.2 读写查看 114

6.9.3 结构查看 114

6.9.4 STL查看 115

6.9.5 快照 115

6.9.6 获取协同程序栈的用途 117

6.10 发送调试输出和提示输入ev对象 118

第7章 简单模块设计与实现 119

7.1 定义简单模块类型 119

7.1.1 概述 119

7.1.2 构造器 120

7.1.3 构造器和析构器与initialize()和finish()的比较 120

7.1.4 “Garbage collection”和兼容性 121

7.1.5 举例 121

7.1.6 使用全局变量 123

7.2 为cSimpleModule增加功能 123

7.2.1 handleMessage() 123

7.2.2 activity() 126

7.2.3 initialize()和finish() 130

7.2.4 handleParameterChange() 131

7.2.5 通过派生重用模块代码 132

7.3 有限状态机 132

7.4 发送和接收消息 137

7.4.1 发送消息 137

7.4.2 广播和重传 137

7.4.3 延迟发送 138

7.4.4 直接消息发送 138

7.4.5 接收消息 139

7.4.6 wait()函数 139

7.4.7 使用自消息进行事件建模 140

7.4.8 仿真终止 141

7.5 获取模块参数 141

7.6 获取端口和链路 143

7.6.1 端口对象 143

7.6.2 链路属性 143

7.6.3 传输状态 143

7.6.4 连接性 144

7.7 遍历访问各模块 145

7.8 模块间方法的直接调用 146

7.9 动态创建模块 147

7.9.1 何时需要动态创建模块 147

7.9.2 概述 147

7.9.3 创建模块 148

7.9.4 删除模块 149

7.9.5 模块的删除和finish()的调用 149

7.9.6 创建链路 149

7.9.7 删除链路 150

第8章 VRNET项目创建及实现 151

8.1 创建仿真程序 151

8.1.1 概述 151

8.1.2 使用Windows和Microsoft Visual C++ 152

8.2 配置仿真 156

8.2.1 配置仿真 156

8.2.2 配置文件:vrnet.ini 156

8.2.3 配置段 157

8.2.4 设置模块参数 159

8.2.5 参数研究 161

8.2.6 参数研究及结果分析 164

8.2.7 配置随机数发生器 168

8.3 运行仿真 169

8.3.1 简介 169

8.3.2 命令行界面 172

8.3.3 图形化界面 174

8.3.4 批处理 176

8.3.5 疑难解决 178

8.4 分析仿真结果 179

8.4.1 结果文件 179

8.4.2 集成开发环境中的分析工具 180

8.4.3 Scave工具 181

8.4.4 可选的统计分析和绘图工具 182

第9章 VRNET的其他功能 183

9.1 网络图形和动画 183

9.1.1 显示字符串 183

9.1.2 参数的导入 189

9.1.3 颜色 189

9.1.4 图标 190

9.1.5 增强动画效果 191

9.1.6 中文名称 192

9.2 事件日志 194

9.2.1 简介 194

9.2.2 配置 194

9.2.3 事件日志工具 195

9.3 NED文档和消息 196

9.3.1 概述 196

9.3.2 文档注释 196

9.3.3 文本布局与格式化 197

9.3.4 定制和添加页面 200

9.4 插件扩展 201

9.4.1 简介 201

9.4.2 插件描述 202

9.4.3 访问配置 204

9.4.4 执行新的接口 204

第10章 VRNET模型库 206

10.1 标准模型库 206

10.1.1 使用指南 207

10.1.2 常用API函数 240

10.1.3 常用配置项 273

10.2 高级模型库 274

10.2.1 WiMax协议模型库 274

10.2.2 接口模型库 280

10.2.3 无线传播模块WPM 289

第11章 典型通信网络构建实训 302

11.1 包交换案例实训 302

11.1.1 实训目的 302

11.1.2 实训简介 302

11.1.3 创建项目 303

11.1.4 创建简单模块 303

11.1.5 创建消息 307

11.1.6 创建网络 309

11.1.7 实现函数体 313

11.1.8 生成INI文件 317

11.1.9 构建项目 319

11.1.10 使用INI参数,运行仿真 319

11.2 路由协议性能分析案例实训 322

11.2.1 实训目的 322

11.2.2 实训简介 322

11.2.3 使用模型库搭建节点及网络 323

11.2.4 AODV协议仿真 329

11.2.5 DSR协议仿真 332

11.2.6 DSDV路由协议仿真 334

11.3 无线开发实训 335

11.3.1 天线定制实训 337

11.3.2 指定调制曲线实训 343

11.3.3 通信流程定制实训 347

参考文献 377