OLSR协议基本原理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2020年1月24日OLSR协议1CONTENTS1423协议简介协议内容仿真实现2结果分析1OLSR协议简介31自组网自组网(常用英文名为AdHocNetwork)也称为分组无线网或多跳网,是一组有收发功能的节点组成的网络,它不依赖于基础设施,是临时自组织的网络。自组网具有自组织性、节点对等性、分布式控制、多跳网、临时性、拓扑结构动态变化、链路带宽有限等特点。1OLSR协议简介41自组网应用1OLSR协议简介51OLSR协议1OLSR协议简介6最优链路状态路由协议(OptimizedLinkStateRouting)特点:多点中继节点(MPR)机制,优化泛洪算法,降低了协议的开销;先应式路由计算,查找路由时延小;最短路径,路由计算选择最短路径作为最优路径。2OLSR协议内容71主要思想2OLSR协议内容8核心思想:MPR(MultiPointRelay)机制分组格式:HELLO分组、TC(TopologyControl)分组表格式:邻居表、MPRSelector表、拓扑表、路由表算法描述:邻居监听、MPR选择、生成控制信息、路由计算12OLSR协议内容92.1OLSR协议核心——MPR机制:节点选择部分邻节点作为它的中继节点,只有被选择的中继节点转发节点的控制消息。ABCDEFHGQPNMLKJIMPR机制ABCDEFHGQPNMLKJI纯扩散机制中继节点12OLSR协议内容10MPR机制ABCDEFHGQPNMLKJI中继节点多跳范围内的消息转发仍然遵循MPR机制12OLSR协议内容112.2.1HELLO控制分组HELLO分组的作用是链路检测、发现邻居。MessageSeq.NoMPRSeq.NoLinkTypeReservedLinkMessagesizeNeighborAddressNeighborAddress…LinkTypeReservedLinkMessagesizeNeighborAddressNeighborAddress…HELLO分组格式MessageSeq.No:HELLO分组的序列号。由生成此分组的节点产生,用于区分不同的分组。MPRSeq.No:MPR的序列号。用于区分新旧MPR信息。LinkType:链路类型。有3种:非对称(可听到的)链路,对称链路,列表中节点被选为MPR。Reserved:保留字段。必为“00000000”。LinkMessagesize:本分组的大小。NeighborAddress:邻节点地址。在同一链路类型后的邻节点列表与节点之间的链路类型是相同的。1邻居监听2OLSR协议内容12AB***B邻居表***A邻居表2.4.1发现邻节点和二跳邻节点A**B**12OLSR协议内容13AB***B二跳邻居表BCDA邻居表2.4.2发现邻节点和二跳邻节点CD…12OLSR协议内容142.2.2TC控制分组TC分组的作用是声明MPR信息。TC分组包含拓扑信息,节点通过该信息计算路由。TC分组格式MessageSeq.No:TC分组序列号。用来识别是否为重复接收的TC分组MSSN:MPRSelector序列号。与MPRSelector集合相对应,当MPRSelector集合有变化时,MSSN随之更新。HopCount:跳数。TC分组转发的最大跳数,当为“0”时,不再转发。OriginatorAddress:生成该TC分组的节点地址。Reserved:保留字节。必为“000000000000000000000000”。MPRSelectorAddress:多点中继选择节点地址。该字段包含节点的多点中继选择节点的地址列表。MessageSeq.NoMSSNHopCountOriginatorAddressReservedMPRSelectorAddressMPRSelectorAddress…可以从我这到这些节点12OLSR协议内容152.2.2TC控制分组TC分组的作用是声明MPR信息。TC分组包含拓扑信息,节点通过该信息计算路由。网络中节点周期的发送TC分组,以声明自己的MPRSelector集,如果此节点没有被任何节点选作MPR,则它的MPRSelector集是空集,那么此节点不发送TC分组。节点的TC分组需要扩散至整个网络中的每个节点,这是与HELLO分组不同之处。HELLO分组只在产生HELLO分组的节点的一跳范围内传播。12OLSR协议内容162.3.1邻居表网络中每个节点从HELLO分组中得到其两跳以内的邻居的信息。N_addr:节点的一条邻居地址。N_status:节点与一条邻居之间链路的状态。N_2hop_list:通过一条邻居可到达的两跳邻居的列表,包含保持时间。N_time:每个邻居表条目的保持时间。邻居表条目格式12OLSR协议内容172.3.2MPRSelector表节点为判断转发哪些控制消息,需要维护一张MPRSelector表。此表包含节点的MPRSelector。当接收到MPRSelector的控制分组,节点转发分组,否则不转发。MS_addr:MPRSelector节点地址。MS_seq_num:MPRSelector集的序列号。用来区分MPRSelector集的新旧。MS_time:该MPRSelector集条目的保持时间。如过期,删除该条目。MPRSelector表格式12OLSR协议内容182.3.3拓扑表网络中的每一个节点维护一张拓扑表,记录从TC分组中得到的拓扑信息,并由此信息计算路由。节点将网络中其他节点的多点中继信息作为拓扑条目记录在拓扑表中。拓扑条目格式此条目说明了T_dest已经选择T_last作为MPR,而且T_last已经发布了序列号为T_seq的MPRSelector集信息。T_time作为保持时间,过期就删除该条目。12OLSR协议内容192.3.4路由表R_dest_addr:目的节点地址。R_next_addr:下一跳节点的地址。R_dist:本节点到目的节点的跳数。路由表格式12OLSR协议内容202.4.3生成控制信息网络中的节点根据收到TC分组构建拓扑表条目。当接收到一个TC分组后,执行以下步骤:(1)如果拓扑表中存在的条目T_last与接受到的TC分组初始发送节点地址相同,并且TC分组的MSSN值小于该条目T_seq,那么丢掉此分组。(2)如果拓扑表中存在的条目T_last与接受到的TC分组初始发送节点地址相同,并且TC分组的MSSN值大于该条目T_seq,那么删除拓扑表中所有该T_last的条目,并且记录新的拓扑信息。(3)如果拓扑表中不存在与接受到的TC分组初始发送节点地址相同的T_last条目,则在拓扑表中记录新的拓扑条目。OLSR:拓扑建立SBACDMPRMPRMPRSBMPR_SelectorsACMPR_SelectorsBDMPR_Selectors邻居发现与MPR选取拓扑建立T_destT_lastSABAT_destT_lastABCBT_destT_lastBCDCTC更新前TC更新后这里令B发送TC分组更新T_destT_lastSABACBT_destT_lastABCBT_destT_lastBCDCABT_destT_lastA\T_destT_lastC\BABCT_destT_lastC\BCABT_destT_lastA\BACB12OLSR协议内容222.4.4路由计算OLSR路由协议采用Dijkstra最短路径选路算法进行选路。2OLSR协议OptimizedLinkStateRoutingProtocolOLSR协议优点和局限优点:OLSR协议是一种先应式路由协议,具有查找路由时延小的优点。OLSR协议采用MPR机制,只有MPR节点负责向全网泛洪TC控制消息,从而减少了协议开销。OLSR路由协议采用Dijkstra最短路径选路算法进行选路。缩减了控制分组的大小。节点并不发布它与所有邻节点的链路状态信息,而是仅发布它和作为它的多点中继选择节点(MPRSelector)的邻节点的信息。这就使分组的大小显著变小。局限:MPR机制只考虑覆盖度,忽略了链路质量的影响。233仿真实现2413仿真实现25仿真工具:omnet4.3.1初始化邻节点、二跳邻节点发现计算MPR泛洪TC分组建立拓扑表计算路由建立路由表修改节点位置信息流程图

1 / 25
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功