Ad hoc网络路由协议概述3——按需路由协议(1)DSR协议(Dynamic source routing protocol)

这篇具有很好参考价值的文章主要介绍了Ad hoc网络路由协议概述3——按需路由协议(1)DSR协议(Dynamic source routing protocol)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1 DSR协议简介

2 路由发现

2.1 路由发现过程

2.2 几种情况

3 路由维护

3.1 点到点证实机制

3.2 端到端证实机制

4 路由缓冲技术优化策略

5 DSR协议的优缺点

5.1 优点

5.2 缺点


1 DSR协议简介

DSR协议是一种基于源路由方式的按需路由协议。在DSR协议中,当发送者发送报文时,在数据报文头部携带到达目的节点的路由信息,该路由信息由网络中的若干节点地址组成,源节点的数据报文就通过这些节点的中继转发到达目的节点。也就是说,在开始数据报文发送前,源节点就已经完成了路由发现过程并得到了有效路由。与基于表驱动方式的路由协议不同的是,在DSR协议中,节点不需要实时维护网络的拓扑信息,因此在节点需要发送数据时,如何能够知道到达目的节点的路由是DSR路由协议需要解决的核心问题。

DSR路由协议主要路由发现和路由维护两部分组成。路由发现过程主要用于帮助源节点获得到达目的节点的路由。当路由中的节点由于移动、关机等原因无法保证到达目的节点时,当前的路由就不再有效了。DSR协议通过路由维护过程来监测当前路由的可用情况,当监测到路由故障时,将调用新的一轮路由发现过程。同时为了提高系统性能,在DSR协议中,还引入了一系列的优化技术,如路由缓冲等。下面将分别介绍这几个部分。

2 路由发现

2.1 路由发现过程

节点通过路由发现过程获得到达网络中其他节点的路由。

1. 源节点首先向其邻节点广播路由请求报文。报文中包括“目的节点地址”、“路由记录”以及“请求ID”等字段。其中“路由记录”字段用于记录从源节点到目的节点路由中的中间节点地址,当路由请求报文到达目的节点时,该字段中的所有节点地址即构成了从源节点到目的节点的路由。“请求ID”字段由源节点管理,中间节点维护<源节点地址,请求ID>序列对列表,<源节点地址,请求ID>序列用于唯一标识一个路由请求报文,以防止收到重复的路由请求。

2. 中间节点在收到源节点的路由请求报文后,按照以下步骤处理报文:

(1)如果路由请求报文的<源节点地址,请求ID>存在于本节点的序列对列表中,表明此请求报文已经收到过,节点不用处理该请求;如果不存在,则转步骤(2)

(2)然后当前节点的地址已存在与路由记录字段中,该节点不用处理该请求;如果不存在,则转步骤(3)

(3)如果请求报文的目的节点就是本节点,则路由记录节点中的节点地址序列构成了从源节点到目的节点的路由。节点向源节点发送“路由响应”报文,同时将该路由拷贝到“路由响应”报文中;否则转步骤(4)

(4)该节点是中间节点。将节点地址附在报文的“路由记录”字段后,同时向邻节点广播该路由请求。

通过这种方法,路由请求报文将最终到达目的节点。如图1所示为节点A到达节点D的路由请求过程。虚线箭头代表路由请求消息发送,括号中的内容代表消息中的路由记录。

Ad hoc网络路由协议概述3——按需路由协议(1)DSR协议(Dynamic source routing protocol)

 图1 DSR路由请求过程

其中有几个需要注意的问题:

(1)节点B分别收到了两次路由请求报文,B先收到来自A的路由请求,并将自己的地址添加到路由记录字段后将该消息广播给其邻节点,随后B又收到来自F的路由请求,由于路由请求报文的<源节点地址,请求ID>存在于节点B的序列对列表中,因此B对此不做任何处理。

(2)目的节点D可能会同时收到来自节点C和E的路由请求消息,造成消息碰撞,反而收不到正确的路由请求,因此在Ad hoc网络中,广播并非完全可靠。可以采用一定的策略来避免,如节点随机延时发送,或者节点间采用证实机制等。

2.2 几种情况

目的根据收到的源节点路由请求报文回送“路由响应”报文。目的节点在将“路由响应”报文转发到源节点时,需要考虑这样几种情况:

(1)目的节点有到达源节点的路由。此时目的节点可以直接使用该路由回送响应报文;

(2)如果目的节点没有到源节点的路由,此时需要考虑节点通信信道问题:

①如果网络中所有节点间的通信信道是对称的,此时目的节点到源节点的路由即为源节点到目的节点的反向路由;

②如果信道是非对称的,目的节点就需要发起到源节点的路由请求过程,同时将路由响应报文捎带在新的路由协议中。

如图2所示为DSR的路由响应过程。假设信道是双向信道,节点D根据最短路由原则选择了路由(A-B-C-D)作为最终路由,将此信息通过反向路由发送至源节点A

Ad hoc网络路由协议概述3——按需路由协议(1)DSR协议(Dynamic source routing protocol)

 图2 DSR路由响应过程

3 路由维护

传统的路由协议中通过周期性广播路由更新消息将路由发现和路由维护过程合二为一。而在DSR协议中,由于没有这种周期性的广播,节点必须通过路由维护过程来检测路由的可用性。

按照路由维护的不同检测方法,可以将路由维护分为以下两种:

3.1 点到点证实机制

又称逐跳证实机制。即相邻节点间通过数据链路层的消息证实或者高层应用层之间的消息证实机制,来检测路由中各邻节点的可达性。当发现节点间的传输故障,即路由不再有效时,向上级节点发送“路由差错”报文,收到路由差错报文的节点根据此信息将该路由从本节点的路由缓冲区中删除。

3.2 端到端证实机制

在有些应用中要求端到端节点间的证实,通过端到端的证实机制可以用来检测整个路由的有效性。但当路由发生故障时,该机制无法确定故障发生的位置,即究竟是在哪个节点间发生了故障。

ps. 点到点与端到端都是网络设备之间的关系,两者工作的网络分层不同。点到点工作在物理层,是指两个网络设备直接相连,中间没有其他设备;端到端工作在传输层(如TCP连接),是指两个网络设备之间的逻辑互连,不管中间有多少物理设备。

4 路由缓冲技术优化策略

在DSR协议中,为了提高系统效率,协议中采用了路由缓冲优化策略。由于无线广播信道的特点,节点可以处于“混合监听”状态,即可以听到相邻节点发出的所有报文,包括路由请求、路由响应等。这些报文中携带了网络的一些路由信息,节点通过缓存这些路由信息,可以尽量减少每次发送新报文时启动的路由发现过程,以提高系统的效率。如图3所示,节点A通过发起目的节点为D的路由请求过程,获得路由A-B-C-B,同时节点A也获得了到达该路由中所有节点(如节点B、C)的路由,节点B等中间节点也获得了到达节点D的路由。

Ad hoc网络路由协议概述3——按需路由协议(1)DSR协议(Dynamic source routing protocol)

 图3 DSR路由缓冲技术

同时,中间节点在收到源节点的路由请求时,如果本节点路由缓冲区中有到达目的节点的路由,可以直接恢复路由响应消息。如节点F在发起到节点D的路由请求时,当报文到达节点B时,节点B中有缓冲路由B-C-D,此时节点B可以直接回复路由协议(F-B-C-D)。这样一方面加快了路由请求的响应,同时也减少了路由请求消息的广播。

当然,这样也会出现一些问题。例如,假设节点A和节点B都有到节点D的路由,它们几乎同时都收到节点F的路由请求,几乎同时响应,由于“隐终端”等问题,可能会造成报文冲突。为了解决这个问题,在DSR协议中,要求节点在发送缓冲路由前先随机等待一段时间(通常时间和距离目的节点的跳数成正比,即距离越长,等待时间越久)。这样,一方面避免了响应冲突问题,同时也解决了路由的最短优化问题。

尽管路由缓冲技术能够在一定程度上提高系统的效率,但同时一些错误或国企的路由缓冲信息(如由于某些节点的移动使得路由失效)也会对网络带来负面影响,这些错误的路由信息可能会影响和感染其他节点。对此,可以采用一定的策略来减少其影响。例如为缓冲路由设定有效期,超过有效期的路由将被认为无效,将其从缓冲区中删除。文章来源地址https://www.toymoban.com/news/detail-443749.html

5 DSR协议的优缺点

5.1 优点

  1. 仅在需要通信的节点间维护路由,减少了路由维护的代价
  2. 路由缓冲技术可进一步减少路由发现的代价
  3. 由于采用了路由缓冲技术,因此在一次路由的发现过程中,会产生多种到达目的节点的路径
  4. 支持非对称传输信道模式

5.2 缺点

  1. 由于采用源节点路由,每个数据报文的头部都要携带路由信息,增加了报文长度;
  2. 用于路由发现的控制报文可能会涉及全网各节点,造成一定的耗费;一种可行的优化方法是控制路由发现报文的传输距离(如跳数),如果本轮路由发现失败,后续的路由发现过程中再加大传输距离;
  3. “路由响应风暴”问题。由于采用路由缓冲技术,中间节点根据自己的缓冲路由,对路由请求直接应答,源节点会同时收到多个路由响应,造成路由响应信息之间的竞争;通常的解决方法是当中间节点在监听到邻节点的路由报文,发现该路由比自己的路由更短时,就不再发送本节点的路由响应报文;
  4. “脏”缓冲路由对其他节点的影响。如果中间节点的路由缓冲记录已经过时,当该节点根据缓冲路由回复路由请求时,其他监听到此“脏”路由的节点会更改自己的缓冲路由记录,造成“脏”缓冲路由的污染传播。因此必须采取相应的措施,尽量避免和减少“脏”缓冲路由的影响。

到了这里,关于Ad hoc网络路由协议概述3——按需路由协议(1)DSR协议(Dynamic source routing protocol)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • XCode打包IOS应用发布App Store和Ad Hoc测试

    此文章为最新IOS打包教程,每一步都是操作截图 文章包含大量图片说明,请注意流量消耗 由于工具之间的版本不一致,所以注意区分 如果有任何问题,欢迎大家留言一起沟通学习 首先通过 本地钥匙串访问(Mac自带的工具)创建 CertificateSigningRequest.certSigningRequest 文件,步骤

    2024年02月04日
    浏览(44)
  • ADOV路由和DSR路由matlab对比仿真

    目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1 ADOV路由(Ad hoc On-demand Distance Vector Routing) 4.2 DSR路由(Dynamic Source Routing) 5.完整程序         ADOV路由和DSR路由的仿真,仿真输出网络的路由路径,跳数,路由长度,并对比ADOV和DSR的性能。

    2024年02月02日
    浏览(26)
  • No URLs will be polled as dynamic configuration sources警告处理

    启动Eureka 注册中心出现如下警告 WARN 3732 — [main] c.n.c.sources.URLConfigurationSource : No URLs will be polled as dynamic configuration sources. INFO 3732 — [main] c.n.c.sources.URLConfigurationSource : To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properti

    2023年04月08日
    浏览(26)
  • 【计算机网络】UDP协议概述

    UDP协议(User Datagram Protocol,用户数据报协议):面向无连接的协议,不保证可靠性,但是具有较低的延迟和更快的传输速度,常用于实时音视频传输、广播和多播等场景。 基于数据报文 :UDP把应用层提交给它的数据报文,添加上UDP首部后传输,每个UDP数据报的大小不能超过

    2024年02月06日
    浏览(44)
  • 哈工大计算机网络课程网络层协议之:网络层服务概述

    网络层提供的主要功能包括: 从发送主机向接收主机传送数据段(Segment) 发送主机:将数据段封装到数据报(datagram)中 接收主机:向传输层交付数据段(Segment) 每个主机和路由器都运行网络层协议 路由器检验所有穿越它的IP数据报的头部域,决策如何处理IP数据报。 需

    2024年02月12日
    浏览(30)
  • 网络协议概述:物理层、连接层、网络层、传输层、应用层详解

    信号的传输总要符合一定的 协议(protocol) 。比如说长城上放狼烟,是因为人们已经预先设定好狼烟这个物理信号代表了“敌人入侵”这一抽象信号。这样一个“ 狼烟=敌人入侵 ”就是一个简单的协议。协议可以更复杂,比如摩尔斯码(Morse Code),使用短信号和长信号的组合,来

    2024年02月07日
    浏览(27)
  • 【计算机网络-网络层】路由选择协议

    路由器是一种具有多个输入端口和输出端口的 专用计算机 ,其任务是 转发分组 和 路由选择 。 实现的网络模型:物理层、数据链路层、网络层。 路由器的结构分为两个部分: 路由选择部分(控制部分) :核心是路由选择处理机,它根据 路由选择协议 构造出 路由表 ,路

    2024年02月02日
    浏览(32)
  • 计网第四章.网络层—网络层概述、IPv4地址及路由器查表转发

    以下来自湖科大 计算机网络 公开课笔记 一、网络层概述 网络层开始,就是讲网络与网络之间的故事了。 如下是路由器将多个网络N1到N7连接在一起,一个路由器有多个网络端口,每个端口的IP地址都不相同,而且同一个子网下并不只是最后一个数不同: 1.1 网络层主要解决的

    2024年02月01日
    浏览(52)
  • 计算机网络-实验7:网络层-路由选择协议

    实验内容 7 :RIP、OSPF动态路由协议 实验目的 : 配置RIP、OSFP动态路由 实验任务1: RIP 路由 配置实验 实验拓扑图如下所示: (1) 添加三台 2811 型号 路由器 ,为每台路由器添加 网络接口 模块 先关闭 路由器 电源,电源开关如下图。 ( 实际操作中,为确保电路安全,只有关

    2024年02月09日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包