网络协议栈设计与分析..docx

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

《网络协议栈分析与设计》

《网络协议栈分析与设计》大作业

最佳链路状态路由协议(OLSR)分析

OptimizedLinkStateRoutingProtocol

肖明旺

201192191

网络1102

万宇腾

201192280

网络1102

丁英才

201193068

网络1101

刘伟麟

201192308

软件1115

2013-12-22

1/36

《网络协议栈分析与设计》

目录

组内分工 4

第一章 引言 4

第二章 代码介绍 5

文件介绍 5

全局变量 5

配置变量 6

第三章 OLSR部分消息包数据结构 7

OLSR首部 7

HELLO消息包 8

TC消息包 9

第四章 邻居发现 9

节点信息的存储 9

关于节点的具体操作分析 11

邻居表的操作 14

邻居表的初始化 14

删除节点 15

邻居节点的查找与插入 17

邻居表的更新 18

其他操作 18

第五章 MPR选择 19

MPR节点的添加和清除 19

MPR算法 20

olsr_find_2_hop_neighbors_with_1_link函数 21

olse_chosen_mpr函数 22

olsr_find_maximum_covered函数 22

olsr_check_mpr_changes函数 23

优化MPR集合 24

第六章 拓扑控制消息洪泛 24

TC消息初始化与删除 24

TC消息处理 26

2/36

《网络协议栈分析与设计》

第七章 路由表的计算 26

主要数据结构分析 27

rt_metric和rt_nexthop 27

rt_entry 27

路由类型 28

路由表计算 29

路由表的创建与删除 29

最优路径 31

第八章 总结 32

3/36

《网络协议栈分析与设计》

组内分工

项目

参与者

数据结构部分代码分析

万宇腾

邻居发现部分代码分析

万宇腾、刘伟麟

MPR选择部分代码分析

刘伟麟

TC消息洪泛部分代码分析

肖明旺

路由计算部分代码分析

丁英才

论文撰写

肖明旺、万宇腾、丁英才、刘伟麟

论文汇总

肖明旺

第一章 引言

最佳链路状态路由协议(OptimizedLinkStatusRoutingProtocol,OLSR),是专门为无线移动AdHoc网络提出来的一种标准化的先验式的优化链路状态路由协议。

该协议的核心是使用了多点中继站(MPRs),MPRs是被选择的节点,具有转发网络控制消息的能力。根据协议,每个节点之间周期性的交换控制信息,节点根据协议计算自己的网络拓扑。OLSR向所有节点提供一个最短路径,该技术可以有效减少网络中数据传输的信息量。

每一个被邻居们选择的节点在控制信息里周期性的广播这一信息。因此,可以说是由被选择的节点构成了主要的网络。

相比经典的链路状态算法,OLSR更适合移动无线局域网。该协议比较适合大型密集的网络。OLSR有以下优点:

利用MPRs来重传控制消息可以减少网络间消息的发送数量。

4/36

《网络协议栈分析与设计》

只需要部分链路状态洪泛就可以获取最佳路径。

网络越大则OLSR可优化的范围就越大也就能得到更好的性能

在OLSR协议中,状态路由协议的网络信息状态由被推选的节点(MPR)掌控。所以,优化的一条途径是减少网络中的控制信息。只有被选择的MPR节点才

能被用做路由节点,非MPR节点不参与路由计算。

MPR可以减少网络中冗余消息的传送。每个节点传送消息给一跳邻居,但是邻居并不能再将此消息传送给其他节点。OSLR协议逐跳寻找路径,每个节点利用本地信息向邻居节点发送路由包来获取路径。

由于该协议在设计之初就考虑到协议的分布式工作,所以该协议不依赖于任何的中心,也不需要稳定的的控制信息的传播。每一个节点都周期性的发送信息,这样也保证了一个在可以接受范围内的丢包率。

OLSR协议在设计之初就考虑了协议的独立性,因此OLSR协议独立工作于一些协议。它对IP的包格式没有做任何改变,因此,任何IP协议栈都能在协议中正常使用。

第二章 代码介绍

文件介绍

OLSR路由协议共有123个源文件。我们将对部分源文件进行功能型介绍。

表格1OLSR协议部分源文件介绍

文件

描述

Olsrd-0.6.0/link_set.c

确定邻居表的信息

Olsrd-0.6.0/lq_packet.h

对olsr,hello,TC数据包以及其他一些数据结构的

定义

Olsrd-0.6.0/mpr.c

关于MPR

文档评论(0)

159****1944 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档