目录
概要
前面我们提到路由器凭借一张路由表将数据转发到目标网段,而路由表除了直接连接的直连路由外 要么是手写,要么是自动获得,那么我们这一章就来聊一聊自动获得的问题。也就是说 人们为了让路由器之间自动学习目标网段的路径,开发了很多协议。下面我们就来聊一聊这些是如何实现的比方 rip ospf bgp 各自的原理 工作过程等等。
路由控制的定义
IP地址和路由控制
路由控制,就是路由器依据自己的路由表,参照目标IP地址的网络部分选择一条路径将数据包转发出去。 不但如此 路由器真正的本事是会选择一条最佳路径。也就是达到路由控制最优化。而最优化路径,也是靠路由表实现的,换句话说,路由表中的记录已经是最佳路径了。
那么我们看看路由表地址是怎么来的
静态路由于动态路由
我们之前提过,路由表分直连路由和非直连,就是路由器接口地址所在的网段,这个路由器接口配置地址并且打开后就存在了,而非直连就有点麻烦了,非直连是没有直接和路由器相连的,是别的路由器上的网段,但是我们可能通过几次中转可以到达,这个就需要我们记录到路由表里了。
怎么记录呢 可以手动写进去,这叫静态路由,也可以让路由器自动获得这个叫动态路由。
为什么要有两种,因为如果我们只有一两三个路由器 三四个网段 我们手动些很方便,也稳定。但是如果我们有三四十个路由器 二三十个网段的话,手动配置就太费工夫了,于是人们制定了动态获得的方法。
动态路由最大的好处是管理起来方便,比方我在正常运行的网络中新加入一个路由器,加入几个网段,我只需要在新加入的路由器上配置动态,其他路由器都可以自动获得。但动态的确定是占用了一部分带宽,因为毕竟这些路由器要相互直接学习,交流路由信息。
相较于动他,静态路由器 首先不够灵活,管理不方便,新加路由器网段后,所有其他路由器上都需要再添加新路由条目,但静态稳定,没有带宽的浪费,也是它的优点。
动态路由的基础
动态路由自动相互学习,首先依靠的是网络带宽,其次他们之间的沟通要求使用同一种语言,也就是同一种路由协议。不同协议之间是不能沟通的。
路由控制范围
自治系统与路由协议
互联网的全球网络范围太大,如果要统一管理显然是不可能的事,于是人们将路由控制范围分为内部和外部。内部有内部使用的协议来管理,不同内部之间使用外部协议来管理。
那么所谓内部是如何定义的呢,一般公司网络是由公司内部管理人员决定使用何种设备,何种协议,实现互通,这个能自行决定使用何种协议互连的网络或者数个网络的集合便是一个内部,我们称之为 一个自治系统 AS(Autonmous System) 或者叫一个路由选择域(Routing Domain)。那么不同自治系统之间我们称之为外部。
外部网关路由和内部网关路由
以此我们动态路由协议就可以分为两种,一个是自治系统内部使用的,互连自治系统内部网络的协议,叫内部网关路由协议 IGP(Interior Gateway Protocol) 。可以连接不同自治系统,实现自治系统之间互通的路由协议叫 外部网关路由协议EGP (Exterior Gageway Protocol)
没有 IGP 内部网络不能动态互连,没有EGP AS之间或者说 不同公司之间可能无法互连,所以两者互为补充,分别维护者 内部网络和网络之间的互通互联 缺一不可。
IGP 常用的协议由RIP (路由信息协议 ) OSPF(开放式最短路径优先) IS-IS(中间系统到中间系统)等。
EGP 常见的路由协议有 BGP( 边界网关路由协议)。
路由的算法
我们知道路由器的路由表可以动态获得路由条目,问题是在互联网上有错综复杂的路径,那么很可能到达某个目标的路径不止一条,这个时候路由表会判断哪条最佳,将其添加到路由表中。那么路由器是如何判断最佳路径的。这就是我们要说的路由的算法了。
路由的算法,就是如何判断最佳路径的,算法的种类很多,有的依据距离,经过路由器的个数,有的依据链路的状态,或者判断路径中的代价 延时 等等。
最具代表性的是距离向量算法(Distance-Vector)和链路状体算法(Link-State)
距离矢量的算法
距离矢量,就是依据路径的长短和方向来判断最佳路径,比如 RIP 协议是根据具体经过多少个路由器来判断的 也就是所谓的跳数。一个路由器一个跳。
链路状态的算法
链路状体算法是路由器了解网络整体的连接状态的基础上综合分析 带宽 路径远近 延迟等等来判断最佳路径的。比方说ospf 就是先得到整网络的链路状态图 以自己作为基点算出到其他点的路径最优,形成l链路树,最终写入路由表。
相比之下 ospf的算法要优于rip 所以优先级也比rip 高 但是 ospf 的代价就是占用路由器cpu 和内存资源较多,所以ospf 要求路由器的性能要好很多。
主要路由协议
这里我们先列出常见的路由协议的比较,后面我们会详细接受。 EGP 协议 现在基本不用,因为它不支持 CIDP无类型域间选路。
路由协议名 | 下一层协议 | 方式 | 适用范围 | 循环检测 |
RIP |