论文研究-Ad Hoc网络中AODV路由协议分析与研究 .pdf

所需积分/C币:6 2019-08-16 17:09:11 189KB .PDF

Ad Hoc网络中AODV路由协议分析与研究,荆文礼,乐红兵,本文研究Ad Hoc网络中AODV路由协议的运行流程。分析了AODV路由协议中几个主要函数的工作流程。本文研究了基于AODV路由协议的节点在接收
国科技论文在线 为数流程 函数是这几个函数的主函数,负责调用其它的几个函数。函数是由系统自动调 用的,当有数据需要接收时,系统就会调用这个函数。函数的工作流程如图所示: 个节点收到 数据包 是 交给 协议包 数处理,结束处理 否 接收到本节点 为 本节点产生 产生的数据包 的数据包 丢弃,结束处理 添川报头 丢弃,结束处理 否 <广播分组 转发 路由解析 图函数流程 当一个节点收到上层的数据包时,它首先检查是否是 的协议包:是则调用 函数进行处理;否则继续判断。若减少到,则丢弃该数据包并接收处理;如 是本节点产生的数据包,则添加报头;若,接收到的是本节点产生的数据包(有其它节 点转发而来),则丢弃并接收处理。若该数据包是广播分组,则调用 函数转发;若 不是广播分组,则调用 函数进行路由解析。 函数处理接收到的 协议分组,根据收到的分组类型,负责调用不同的 处理函数。图是其处理流程: 函数流程 数据包 否则 调用 调用 调用 调用 出错处 处理 处理 处理 处理 理 函数流程 国科技论文在线 如果收到的是烙由请求分组,调用 函数进行处坦;如果收到的是路 由响应分组 ,调用 函数进行处理;如果收到的是路由中断分组 用 函数进行处理;如果收到的是 分组,调用 函数进行处理;否 调用错误处理 函数流程 数处理接收到的 报文,其流稈如图所示: 收到 是 该是自己发送的 丢弃,结束处理 是 该是合收到过 丢弃,结束处理 否 把插入广播队列杳找路否 由表是否有到源节点的路由 建立反向路由 是 该路由是否 需要更新 否 是 更新路由 用 函数转发,发 送缓存中相关的分组 本节点是目 含则本节点不是目的节 的节点 点,但有到目的节 点的路由 用 函数 调用 广攆寻找路由 调用 图 函数流程 国科技论文在线 的处理流程如下: 如果收到的是自己发出的,则丢弃,结束处理 査找播列表中是否有该分组即是否收到过该 收到过,丢弃分组。结束处理 如果没有收到,把 保存到广播列表中 查找路表是否有到源芍点的路山 如果没有,则设置反向路由,插入到路由表中 有到源节点的路由。比较两条路由是否需要更新 如果数据包中源节点的序列号大于路由表中到源节点的路由的序列号,或者 序列号相同但跳数史少则史新路由 、否则,不更新 设置好反向路由后,査找发送缓存中是否有到源节点的数据包。若有,则调用 函数转发 、查找路由表中是否有到目的节点的路由。 如果本节点就是目的节点,则发送 做出路由回应 、如果本节点不是目的节点,但是有到该节点的最新的路由,则发送 (经过我可 以到达口的节点) 如果找不到到日的节点的路由,则广播 寻找路由 函数流程 函数处理节点收到的 数据包,其处理流程如下: 、查找是否有到发送这个 的节点的路由(数据包的目的节点,的源节点) 没有建立反向路由 、查看该路由是否需要更新( 每走一步都会建立反向路由,就会产生 个,然后将跳数,中间节点,目的节点加入到路由表中) 、是。更新路由 、如果收到的该 是源节点。则更新延时间隔,设置相应的项目 、路由更新后,用 函数转发发送缓存中相关的数据包 路由不需要更新,则设置相应的项目 、该节点不是源节点或路由没有更新,则丢弃,结束处理(如果该节点是源节点在上面 已经处理过了,不需要再处;如果没有更新则说明通过该节点不能到达源节点) 该节点不是源节点。查找是否有到源节点的路由 、有,转发 没有,云弃 图是 函数的流程图 国科技论文在线 收到 否 是否有到发送 该的路由 建立反向路由 否 路由是否需要吏新 是 更新路由 是 收到的节点 是否是源节点 设置相应项目 否 函数转发,发 设置相应标志 送缓存中相关的分组 该节点是目 该节点不是 的节点或路 源节点 由没有更新 丢弃,结束处理 是否有到该节点的路由 是 用 转发 否丢弃 函数流程图 函数流程 函数处理收到的 数据包,图是其流程图 函数的处理流程如下 个节点收到 数据包后,首先査看哪些嵱径受到了中断链的影响,删除发送缓 存中受到影响的数据包,把出错的路由信息记录到前向链中。等所有出错的路由处理完后 检査前向节点是否有受到影响的。有,则发送没有,则结束处理 国科技论文在线 收到 查找到受到影的路由 否 该路由的下一跳是 受到影响的节点 设置相应的标志,删除发送 缓存中受到影响的数据包 统计前问路由中受到影响的节点 受影响的节点是否处理完 是 前向节点是否受到影响 结束 是 向受影响的节点发送 图 函数流程图 函数流程 函数负责转发数据分组,图是其流程图: 函数的处理流程如下: 、首先检查,如果为,则丢弃分组)结束处理;否则,继续 、如果该数据包不是 的协议包且链路上行(传递给上层协议)且是广播包或者该 数据包的目的地就是本节点,则交给上层协议处理 如果本节点的路由表中有这么一项(本节点的路由表中含有该数据包的目的节点的信 息,说明是广播包),则做相应的处理 国科技论文在线 如果数据包的目的节点在路由表中不存在(即本节点的嵱由表中没有到该数据包目的 节点的路由,说明不是广播包),则做相应的处理 如果该数据包是广播包,则准备广播包的进行调度 如果该数据包不是广播包,则准备非广播包的调度 是 为 结束处理 否 是 不是 包 交给上层协议 或是数据包 处理 否 是否是 设置相应非 的广播包 播包的项目 是 设置相应广播包的项目 准备非广播包 的调度 准备广播包调度 图 函数函数流程图 函数流程 函数对接收到的数据包进行路由解析,图是其流程图: 函数的处理流程如下: 设置链路中断处理函数 、查找是否有到目标节点的路由 、有,若路由可用,则调用 函数进行转发 、无,建立一条到目标节点的路由(此路由现在不可用) 、若是本节点产牛的数据包,则暂存,调用 函数寻找到目标节点的路山 、若路由正在进行修复,则暂存 、若是其它情况,则发送,进行硌由中断处理,丟弃此数据包。 国科技论文在线 数据包 设置链路中断 处理函数 是 有到目标节 点的路由 →≯<路由可用 是 否 函数转 建立一条到日标节点 发 的路由(现在不可用) 本节点产生 路由正在进 其它 的数据包 行修复 暂存,调用 暂存 发送,进行路 函数寻 由中断处理,丢弃数 找路由 据包 图 函数流程 发送数据包 中处理发送数据的函数有如下几个 函数:发送 报文; 函数:发送报文 函数:发送 报文。 由于这几个函数的处理流程查不到,都是先进行一些前期的处理,然后组装数据包,最 后发送。所以,在这里以 网数为例,介绍 中发送数据包的流稈。 函数所完成的功能是:发送报文,寻找到日标节点的路由,图是其 流程图 函数的处理流程如下 查找路由表中是否有到该目标节点的路由 、有到该节点的路由且路由可用,则释放空间,结束处理 是否到了发送 的时间;没有则结束处理 查询次数是否已经用完(多次查询之后仍没有找到到该节点的路由,说明没有到该节 点的路由)则删除发送缓存中到该节点的数据包,结束处理 如果是第一次发送 ,设置为初值 不是第一次发送,则扩大转发的范 、如果最后一次转发的值,小于给定的,则说明可能是的值较小,限制了搜 索范围,从而找不到合适的路由,需扩大 否则,剩余较多,则说明在搜索的范围内,节点的个数比较少,从的只能扩大 搜索半径 国科技论文在线 组装数据包,进行发送 是否有到该 节点的路由 结束处理 是否能发送 结束处理 是 杳询该节点路由 删除发送缓存中到 的次数已用完 该节点的数摭包 合 是 第一次发送 设置相应的属性 否 扩人搜索范围 组装数据 包准备发送 图 函数流程图 路由表的建立与维护 路由表的建立 路由表的建立分为两个过程:正向路由的建立与反向路由的建立。上层协议有数 据要发送的时候 函数就会被系统调用,如图所小。这时候的数据包还不是 的协议包,因此,把该数据包添加上报头,然后进行路由解析。我们看一下路由解析函 数的烙程(图所示)。由于是第一次发送该数据包,因此没有到目标节点的烙由,在路由 表中添加一条到目标节点的路由(此时的路由不可用)。由」该数据包是木节点产生的,因 此把该数据包暂存一下,然后调用 函数,发送 报文寻找到目标节点的路 由。此时就在源节点的路由表中建立了一条从源节点到目标节点的路由(此时的路由还不可 用)。 现在让我们看一看 函数,看看它是怎么寻找到目标芍点的路由的(图所

...展开详情
试读 12P 论文研究-Ad Hoc网络中AODV路由协议分析与研究 .pdf
img

关注 私信 TA的资源

上传资源赚积分,得勋章
    最新推荐
    论文研究-Ad Hoc网络中AODV路由协议分析与研究 .pdf 6积分/C币 立即下载
    1/12
    论文研究-Ad Hoc网络中AODV路由协议分析与研究 .pdf第1页
    论文研究-Ad Hoc网络中AODV路由协议分析与研究 .pdf第2页
    论文研究-Ad Hoc网络中AODV路由协议分析与研究 .pdf第3页
    论文研究-Ad Hoc网络中AODV路由协议分析与研究 .pdf第4页

    试读已结束,剩余8页未读...

    6积分/C币 立即下载 >