路由协议的功能
路由选择算法的特性
- 算法必须是正确和完整的
- 计算简单
- 适应网络通信量和拓扑结构的变化
- 具有稳定性,公平,最佳
路由选择的种类
静态路由选择
- 也可以成为非自主路由选择
- 管理员对目标地址和路由器端口的关系进行人工配置。只要网络出现拓扑变化,管理员需要进行手动的更新
- 应用:当一个网络只有一条路径可以到达时,使用静态路由,可以避免动态路由的开销
动态路由选择
- 也可以称为自适应路由选择
- 管理员配置参数启动动态路由选择,动态路由选择协议主动去发现路由
- 应用:当网络结构比较复杂多变时,使用动态路由
路由选择协议
分布式动态选择协议
AS自治系统
- 将Internet划分为许多个小的自治系统
- AS是一个小的网络集,里面包含一个管理员或者一组管理员
- 一个AS中的路由器必须是相互连通的
内部网关协议 RIP
介绍
- 基于距离向量的路由选择协议
- 通过路由器之间互发全部的路由表,计算网络中所有链路的距离向量,并以此判断最佳的路由
特点
- 简单
- 基于跳数进行选路,每经过一个路由器,跳数自动+1;当可以直接到达目标网络时,跳数置为1
- 一条链路上最大的路由器数为15,也就是说,跳数最大为16时,网络不可达
- 每隔30s,就会更新一次路由表
好消息传的快,坏消息传的慢
距离向量算法 如何计算最佳路由
收到相邻路由器(其地址为 X)的一个 RIP 报文:
1、先修改此RIP报文中的所有项目(每一个路由信息):
a. 把“下一跳”字段中的地址都改为X,并把所有的“距离”字段的值加1。
b. 每个项目中的三个关键数据:到目的网络N,距离为d,下一跳路由器是X。
(便于进行本路由表的更新,假设从位于地址X的相邻路由器发来的RIP报文某一个项目是"NET2 ,3, Y",意思是:我经过路由器Y到NET2的距离是3,那么本路由器可推断出,我通过X路由器到达NET2的距离应该是3+1=4)
2、对修改后的RIP 报文中的每一个项目(路由信息),进行以下步骤(更新路由表):
a. 若原来的路由表中没有目的网络N,则把该项目加到路由表中。否则,查看下一跳路由器地址:
b. 若下一跳路由器地址是X,则用收到的项目替换原路由表中的项目。(为什么要替换?,要以 最新的地址为准,到目的网络的距离可能增大也可能减小,所以应该以最新的更新)
c. 否则若收到项目中的距离小于路由表中的距离,则进行更新(例如若路由表已有项目"NET2 ,5,P",就要更新为:“NET2,4,X”,因为距离从5变到4更短了,)
d. 否则,什么也不做。
3、若3分钟还没有收到相邻路由器的更新路由表,则把此相邻路由器记为不可达路由器,即将距离置为16。
4、返回。
RIP的位置
- RIP协议在应用层,使用UDP用户数据报,转发IP数据报的过程在网络层
内部网关协议 OSPF
介绍
-
基于链路状态的路由选择协议 -
链路是网络中2个路由器之间的连接 链路状态是连接的传输速度,延迟状态等等 -
每个路由器创建数据库,建立整个网络的拓扑结构,以计算出到达各网络的最佳路径 -
基本思想:每个节点都知道怎么到达相邻节点,若每个结点将知道的信息传播到网络中的所有其他节点,那么,最终每个节点都会有一份完整网络的映像
洪范法
- 通过洪范法,将链路状态信息传送给网络上的每一台路由器,建立一个关于网络的拓扑结构的数据库
RIP VS OSPF
- OSPF在维护路由表时,比RIP使用的带宽较少
- RIP基于跳数,选择的路由不一定速度最快的
- OSPF基于和带宽相关的参数进行选路
- RIP 简单,使用的路由器内存和处理器资源较少
- RIP最大的跳数为16,限制了网络的规模。但是,每个路由器只知道已到达的节点的度量,不知道整个网络的完整信息
- OSPF选择最快的无环路经
- OSPF,没有还消息传播慢的问题,每隔30min刷新一次数据库中链路状态
外部网关协议 BGP
- BGP是不同自治系统的路由器之间交换路由信息的协议
- BGP外部网关协议只是找到一条可以到达目标网络的较好的路径,并不是最佳的
- BGP发言人:在BGP协议中,一个自治系统中用来与其他自治系统(通过TCP连接)交换路由信息的路由器;
交换信息的两个BGP发言人彼此成为临站或对等站
|