计算机网络体系结构-内部路由

本文详细介绍了路由的基本原理,包括路由协议如距离向量协议(RIP)和链路状态路由协议(OSPF)。OSPF基于Dijkstra算法,通过链路状态数据库实现快速收敛。边界网关协议(BGP)用于自治系统间的路由交换。此外,还讨论了移动Ad hoc网络(MANET)的特点,如其多跳、无中心的特性,以及OLSR协议如何通过多点中继(MPR)优化链路状态路由。
摘要由CSDN通过智能技术生成

路由的基本原理
• 路由是使用routing protocal在routed protocal数据的源点和终点之间确定传输路径的过程。
• 路由器相互交换路由消息以推断到其他逻辑网络的路径
-基于某些标准的测度选择从源点到终点的最佳路径(确定路由表);
-使用两个出口地址(下一跳网络地址和出口物理地址)建立转发表。

路由信息的来源:①Neigghbor/Peer②Announce/Accept③Originate

路由测度:通路长度、可信度、时延、带宽、负载

路由算法的基本要求
①优化路径选择②开销小③快速收敛④可扩展性好⑤易配置⑥支持策略路由⑦可靠性和鲁棒性⑧传输服务支持(QoS、多路径(解决传输性能问题))

距离向量协议(Bellman-Ford协议)

路由扩散方式:距离向量协议:距离向量协议要求网内各个节点向自己所有的邻节点广播它对网内其他节点的可达性(用距离来衡量),并通过逐级扩散的方式使这种可达性信息在网内传播,从而使各个节点能推算出自己到网内其他非邻接节点的路由。

最短路径原则:各节点根据最短路径原则(即跳数最少)选择自己到网内其他节点的路由。

收敛过程:网络刚启动时,各个节点的路由表为空,需要经过一段时间的广播扩散,才能建立各节点的路由表。在收敛期间,一些节点的路由表不完备,因为有一些路由尚未广播到,这时网络不能正常工作。路由表的收敛速度与路由的广播频度有关,同样与网络的传输开销也有关。

路由不对称性:由于各节点是自发进行广播的,路由表的建立有一定的随机性,取决于收到广播的次序。若网络中两个节点之间存在两条距离相同的路由,则双方的选择可能会不一样,因此它们之间的路由可能是非对称的。

路由表的维护
• 在距离向量协议中,每个节点在收到邻节点的广播信息之后,要与自己路由表的内容进行比较。对于路由表中的每一条路由:
-若该路由信息是来自于这个邻节点,则若该路由的距离变化了,要按新的距离修改原来的路由;
-若该路由信息不是来自这个邻节点,若路由表中没有该点信息,或收到的节点距离小于原有距离,于是将该距离+1,记入路由表。
• 当网络发送故障使某条链路中断时,这个链路两端所连接的两个节点要经由该链路的路由距离设置为无穷大,然后广播这个故障信息,逐渐收敛到新路由。
• RIP的定期广播会在网络中产生同步效应,即在网络中产生周期性的流量高峰,因为大家的时钟基本一致,广播周期相同。解决方法:随机设置广播间隔(15S - 45S)。

慢收敛问题的解决:①水平分割②触发更新③毒性逆转④抑制机制

边界网关协议(BGP):是运行于 TCP 上的一种自治系统的路由协议。 BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议。 BGP 构建在 EGP 的经验之上。 BGP 系统的主要功能是和其他的 BGP 系统交换网络可达信息。网络可达信息包括列出的自治系统(AS)的信息。这些信息有效地构造了 AS 互联的拓朴图并由此清除了路由环路,同时在 AS 级别上可实施策略决策。

OSPF(Open Shortest Path First):基于Dijkstra的最短路径算法
OSPF是一种基于链路状态的路由协议,它要求各节点发送自己的链路状态(LSA)到同一层次区域(area)的所有其他节点。LSA包括各节点的邻接情况,所使用的测度值等,这样区域内各节点便可同步了解全区域的拓扑情况,并以此来计算到区域内各节点的最短路径。(使用IP报文承载OSPF协议路由信息)

层次化OSPF:由一组IP子网构成一个区域,所有区域通过主干网互联,形成逻辑拓扑。
工作机制:区内路由器向ABR报告路由,ABR从/向主干网广播路由摘要,BR从/向AS通告路由摘要

虚拟连接:逻辑上要求所有区域必须与区域0直连;虚拟链接的两个端点是区域边界路由器。

OSPF的路由类型:域内路由、域间路由、外部路由

OSPF vs. RIP
• 收敛性:区内各节点的链路信息是广播的,收敛速度快。节点收到所有节点的广播后才开始计算,原则上不会出现路由回路。
• 多测度:允许使用多种路由测度。
• 多通路:支持分流传输,不同实现的分流能力会不一样。
• 支持外部路由:存在专门的边界链路状态记录,支持外部路由的穿越。
• 支持分层结构。

链路状态数据库:一个区域内的OSPF路由器共享同一个链路状态数据库,其描述了区域内的网络拓扑,可用以计算最短路径。

Advertising router是负责广播某状态记录的路由器,用它的IP地址标识,若该路由器具有多个IP地址,则选择其中之一作为它的OSPF标识符。

OSPF协议
OSPF协议支持OSPF路由器之间的交互,它直接运行于IP协议之上,由Hello、交换(exchange)、和广播(flooding)等三个规程组成。
• Hello规程:发现新链路并检查现有链路是否还在正常工作。
• 交换规程:两个路由器在建立了相邻关系后要交换彼此的链路状态数据库,检查并更新数据库、具体路由的交换。
• 广播规程:当链路状态发生变化,负责该链路的路由器要将新的状态广播给其他路由器,同样当收到链路状态请求报文时,对应的路由器也要将这个链路的状态记录传给询问者。

OSPF特征总结
• 基于真实度量的最短路径路由,不仅仅是跳数
• 允许跨相等路径的路由,执行负载均衡
• 支持服务类型(TOS)路由
• 允许注入外部路由(来自其他自治系统的路由)
• 认证路线交换
• 快速收敛

现网存在的问题:基于目的地址的转发机制,不能基于每个源端的需求、不能动态满足源对特定应用的带宽和时延需求、所有的信令是逐跳产生和传递的、在任一链路拥塞时,不能自动地调控流量路径、要提供带宽保证、不能分辨应用于网络流量行为的联系。

解决方法:SDN+段路由(一种替代LDP和RSVP协议实现标记分配的方法)

MANET
移动Ad hoc网络/多跳无线网络

传统的无线蜂窝通信网络,需要固定的网络设备如基地站的支持,进行数据的转发和用户服务控制。而无线自组织网络不需要固定设备支持,各节点即用户终端自行组网,通信时,由其他用户节点进行数据的转发。这种网络形式突破了传统无线蜂窝网络的地理局限性,能够更加快速、便捷、高效地部署,适合于一些紧急场合的通信需要,如战场的单兵通信系统。但无线自组织网络也存在网络带宽受限、对实时性业务支持较差、安全性不高的弊端。国内外有大量研究人员进行此项目研究。
无线自组织网络(mobile ad-hoc network)是一个由几十到上百个节点组成的、采用无线通信方式的、动态组网的多跳的移动性对等网络。其目的是通过动态路由和移动管理技术传输具有服务质量要求的多媒体信息流。通常节点具有持续的能量供给。

-是一个多跳、临时、无中心网络,不需要现有信息基础网络设施的支持,可以在任何时候、任何地点快速构建(自组网)
-网络中每个终端都带有无线通信收发装置可以自由移动、低位相等(对等网)
-有限的无线传输带宽,且存在单向的无线信道
-生存时间短,安全性差,网络的可扩展性不强

MANET关键问题:路由协议、服务质量、功率控制、安全问题、节点移动、隐藏节点、信息不齐

MANET路由的基本方法
• 根据决策时间
• 根据网络结构

LSR 协议
LSR 为基于链路状态的路由算法。如何判断链路状态呢?在无线通信的环境下,只需要节点能够收到另一节点的包,就说明链路有效。另一方面,为了建立端到端的路径,路由算法需要发现并检查一跳由多个单跳链接组成的多条链路的可用性,这就需要不断的洪泛广播(flooding)来进行。这种洪泛的方式是非常浪费的。为了在网络中同步节点状态,需要各个节点进行洪泛广播,产生大量冗余的通信,在能源受限的移动网络中是非常不经济的。OLSR 通过有选择的洪泛转发(MPR: Multi-Point Relay)来解决这个问题。

OLSR(针对Ad Hoc需求的经典链路状态算法的优化协议)
• 基于链路状态算法的逐跳Proactive(table-driven)路由协议-路由基于维护在中间节点的动态路由表项
• 节点仅向处于其multipoint relay selector set的邻接点通告状态信息,同时只通过multipoion relay节点在网络罗中发送数据-如果我是(子)树的根,谁是我的下一级节点?
• 完整进行路由更新,并使用顺序号来维持数据的完整性,因此不需要可靠传输的支持

Multipoint Relays(多中继依赖节点):网络中每个节点N都选择一组邻近节点MPR(N)作为其multipoint relays,用于转发来自N的控制报文
节点在从自己的一跳邻居节点中选择 MPR 时:
(1)必须选择和自己之间存在双向对称链路的节点。
(2)节点所发送的分组通过 MPR 的中继,能够到达所有的两跳邻居节点,目的是为了——方便确认数据分组有没有被下个节点成功接收,这就是常说的“反馈”。

邻节点探测
以 A 和 B 两个节点举例,想要检测它们之间链路的状态,需要进行以下几步:
• A 向 B 发送空的 HELLO 消息。
• B 接收到消息后,由于没有在消息中找到 B 自己的地址,所以将 A 设为非对称邻节点。2秒后,B 向 A 发送携带 A 地址的 HELLO 消息。
• A 接收到消息后,在消息中找到了自己的地址,所以将 B 定义为对称链路,接着再向 B 发送带有 B 地址的 HELLO 消息。
• B 收到最新消息后,将 A 视为对称邻节点。
基于这个机制,OLSR 中的节点可以进行邻节点的探测,如果与某个邻节点的连接状态变为双向对称连接,则记录在 neighbor set 中,并开放接口连接邻节点;如果连接状态建立失败,则删除记录。
通过 HELLO 消息广播过程,可以让网络中所有节点都能知晓距离自己两跳及以内的邻居的信息。

MPR 的选择
基于上述过程建立的邻居信息表,节点可以选择出邻居 MPR 节点集合。一个节点选定的 MPR 是负责转发此节点的广播消息的节点,通过控制 MPR 集合的大小可以减少洪泛的开销。
主要分为两步
首先选择能够覆盖孤立两跳邻节点的一跳邻节点。这里的孤立两跳邻节点是指仅通过一个邻节点同目标节点相连的两跳邻节点。
在余下的一跳邻节点中,按照覆盖二跳邻节点的数量从高到低依次选择,直到覆盖所有的两跳邻节点。

MPR作用
每个节点在自己的一跳邻居节点之中选择一部分节点作为多点中继站,只有被选为 MPR 的邻居节点才负责转发控制消息,节点之间周期性地交换各种控制信息(只有被选择为MPR的才能发控制消息),通过分布式计算来更新和建立自己的网络拓扑图。目的是为了—被选为 MPR 的节点通过发送控制消息周期性地向全网声明通过自己可以到达自己的 MPR Selector。

拓扑管理:OLSR有两种控制分组:Hello分组和TC分组(Tologogy Control)
(1)HELLO 用于建立一个节点的邻居表:邻居节点的地址,本节点到邻居节点的延迟或开销(延迟就是指时间)
OLSR 采用周期性地广播 HELLO 分组来侦听邻居节点的状态,包括他们的链路状态。HELLO 分组只在一跳的范围内广播,不能被转发。
——————Hello分组的作用只是为了看链路状态,选择MPR
(2)TC分组全网广播。<MPR一定要被转发>
TC信息中包含“MPR的邻居节点”都将收到"我的TC分组",但收到就收到,只有MPR才能转发。
——————TC分组作用计算出网络的拓扑图

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值