Loading

Network系列:了解OSPF、协议报文及其三大表项(一)

1. 距离矢量路由协议

image-20220906140938744

  • 运行距离矢量路由协议的路由器周期性的泛洪自己的路由表。通过路由的交互,每台路由器都从相邻的路由器学习到路由,并且加载进自己的路由表中。
  • 对于网络中的所有路由器而言,路由器并不清楚网络的拓扑,只是简单的知道要去往某个目的方向在哪里,距离有多远。这即是距离矢量算法的本质。

2. 链路状态路由协议

2.1 LSA泛洪

image-20220906141058773

与距离矢量路由协议不同,链路状态路由协议通告的的是链路状态而不是路由表。运行链路状态路由协议的路由器之间首先会建立一个协议的邻居关系,然后彼此之间开始交互LSA(Link State Advertisement,链路状态通告)。

链路状态通告,可以简单的理解为每台路由器都产生一个描述自己直连接口状态(包括接口的开销、与邻居路由器之间的关系等)的通告。


2.2 LSDB组建

image-20220906141149643

每台路由器都会产生LSAs,路由器将接收到的LSAs放入自己的LSDB(Link State DataBase,链路状态数据库)。路由器通过LSDB,掌握了全网的拓扑。


2.3 SPF计算

image-20220906141355152

每台路由器基于LSDB,使用SPF(Shortest Path First,最短路径优先)算法进行计算。每台路由器都计算出一棵以自己为根的、无环的、拥有最短路径的“树”。有了这棵“树”,路由器就已经知道了到达网络各个角落的优选路径。


2.4 路由表生成

image-20220906141422718

最后,路由器将计算出来的优选路径,加载进自己的路由表(Routing Table)。


2.5 总结

image-20220906141555870

链路状态路由协议有四个步骤:

  1. 第一步是建立相邻路由器之间的邻居关系。
  2. 第二步是邻居之间交互链路状态信息和同步LSDB。
  3. 第三步是进行优选路径计算。
  4. 第四步是根据最短路径树生成路由表项加载到路由表。

3. OSPF初探

3.1 OSPF基础

3.1.1 区域

image-20220906141739892

  • OSPF Area用于标识一个OSPF的区域。
  • 区域是从逻辑上将设备划分为不同的组,每个组用区域号(Area ID)来标识。

3.1.2 Router-ID

image-20220906141807089

  • Router-ID(Router Identifier,路由器标识符),用于在一个OSPF域中唯一地标识一台路由器。
  • Router-ID的设定可以通过手工配置的方式,或使用系统自动配置的方式。

在实际项目中,通常会通过手工配置方式为设备指定OSPF Router-ID。请注意必须保证在OSPF域中任意两台设备的Router-ID都不相同。通常的做法是将Router-ID配置为与该设备某个接口(通常为Loopback接口)的IP地址一致。


3.1.3 度量值

image-20220906142042159

OSPF使用Cost(开销)作为路由的度量值。每一个激活了OSPF的接口都会维护一个接口Cost值,缺省时接口Cost值="100 Mbit/s " / "接口带宽" 。其中100 "Mbit/s"为OSPF指定的缺省参考值,该值是可配置的。

笼统地说,一条OSPF路由的Cost值可以理解为是从目的网段到本路由器沿途所有入接口的Cost值累加。


3.2 OSPF协议报文类型

image-20220906142132520

OSPF有五种类型的协议报文,这些报文在OSPF路由器之间交互中起不同的作用。

OSPF报文直接采用IP封装,在报文的IP头部中,协议号为89。


3.3 OSPF三大表项

3.3.1 邻居表

image-20220906142229308

对于OSPF的邻居表,需要了解:

  • OSPF在传递链路状态信息之前,需先建立OSPF邻居关系。
  • OSPF的邻居关系通过交互Hello报文建立。
  • OSPF邻居表显示了OSPF路由器之间的邻居状态,使用display ospf peer查看。

3.3.2 LSDB表

对于OSPF的LSDB表,需要了解:

image-20220906142326718

  • LSDB会保存自己产生的及从邻居收到的LSA信息,本例中R1的LSDB包含了三条LSA。
  • Type标识LSA的类型,AdvRouter标识发送LSA的路由器。
  • 使用命令行display ospf lsdb查看LSDB表。

3.3.3 OSPF路由表

image-20220906142427727

对于OSPF的路由表,需要了解:

  • OSPF路由表和路由器路由表是两张不同的表项。本例中OSPF路由表有三条路由。
  • OSPF路由表包含Destination、Cost和NextHop等指导转发的信息。
  • 使用命令display ospf routing查看OSPF路由表。
posted @ 2023-09-18 09:39  YinJayChen  阅读(119)  评论(2编辑  收藏  举报