路由协议汇总整理

IGP主内,EGP主外

IGP 是网内路由协议,运行在单一的自治系统内部(autonomous system,AS)内决策路由。

EGP 是网间路由协议,是一种在AS的相邻两个网关主机间交换路由信息的协议。

IGP

距离矢量协议:听信谣言

类似的,假如你要从A到D地区,先问路人甲如何从A到B,再问路人乙如何从B到C,最后问路人丙如何从C到D。这样的话引申出了RIP协议的缺陷: * RIP限制了网络的规模,能使用的最大距离为15(16表示不可达) * 其次路由器交换的信息是路由器的完整路由表,因而随着网络规模的扩大,开销也就增加 * “坏消息传播得慢”,使更新过程的收敛时间过长。

链路状态路由协议:全局考量

类似的,假如你要从A到D地区,先下载全国的地图,然后根据拥堵情况等等,在本地计算最近的路径。其优点是: * 创建拓扑图(SPF树),路由器可以独立确定通向每个网络的最短路径。 * 收敛快速,当收到一个LSP(链路状态数据包)后链路状态路由协议立即将该LSP从除接收该LSP的接口以外的所有接口flooding出去。 * 事件驱动更新:仅在拓扑发生改变的时候才发出LSP,而距离路由协议则会定期发送更新。 * 层次设计:区域的概念使得多个区域行程了层次化的结构。

OSPF&IS-IS

  • OSPF 支持NBMA以及点对多点链接,但是IS-IS不支持
  • IS-IS直接建立在L2上,而OSPF则是基于IP,因此IS-IS有更好的安全性。
  • OSPF可以支持虚拟链路但是IS-IS不可以(因为它建立在L2上)
  • OSPF选举DR(Designated Router)和BDR(Backup Designated Router),(注意这里是先选举BDR然后才选举DR,因为如果反过来当选举BDR的时候DR失效,切换将无法进行,状态机也没法切换),这样不容易被预抢占。反之IS-IS使用单一的DIS。

EGP

一般局域网中用不到,在大网中使用。底层还是要IGP来负责。现在EGP里面主要用的就是BGP。

BGP

BGP用于在不同的自治系统(AS)之间交换路由信息。当两个AS需要交换路由信息时,每个AS都必须指定一个运行BGP的节点,来代表AS与其他的AS交换路由信息。这个节点可以是一个主机。但通常是路由器来执行BGP。两个AS中利用BGP交换信息的路由器也被称为边界网关(Border Gateway)或边界路由器(Border Router)。 由于可能与不同的AS相连,在一个AS内部可能存在多个运行BGP的边界路由器。同一个自治系统(AS)中的两个或多个对等实体之间运行的BGP 被称为 IBGP(Internal/Interior BGP)。归属不同的AS的对等实体之间运行的BGP称为EBGP (External/Exterior BGP)。在AS边界上与其他AS交换信息的路由器被称作边界路由器(border/edge router)。