路由器可以
通过多种不同协议学习到
去往
同一目的
网络
的路由
,
当
这些
路由都符合最长匹配原则时,必须决定哪个路由优先。
每个路由协议都有一个协议优先级(取值越小、优先级越高)。当有多个路由信息时,选择最高优先级的路由作为最佳路由。
如图所示,路由器通过两种路由协议学习到了网段
10.1.1.0
的路由。虽然
RIP
协议提供了一条
看起来
更加
近
的路线,但是由于
OSPF
具有更高的优先级,因而成为
优选路由
,并被加入路由表中。
路由度量
如果
路由器
无法用优先级来判断最
优
路由,则使用
度量值(
metric
)
来决定需要加入路由表的路由。
一些常用的度量值有:跳数,带宽,时延,代价,负载,可靠性等。
跳数是指
到达目的地
所
通过的
路由器
数目。
带宽
是指链路的容量,
高速链路开销
(度量值)
较小。
metric
值
越小,
路由
越
优先;因此,图示中
metric=1+1=2
的路由是到达目的地的最优路由,其表项可以在路由表中找到。
建立路由表
根据比较“路由优先级”
和“路由度量”,设备
可以产生最优路径的
IP
路由表。
根据来源的不同,路由表中的路由通常可分为以下三类:
? ?链路层协议发现的路由(也称为接口路由或直连路由)。
? ?由网络管理员手工配置的静态路由。
? ?动态路由协议发现的路由。
最长匹配原则
? ??路由表中如果有多个匹配目的网络的路由条目,则路由器会选择掩码最长的条目。
路由器
在转发数据时,
需要
选择路由表中的最优路由
。
当数据报文到达路由器时,路由器首先提取出报文的目的
IP
地址,然后查找路由表,将报文的目的
IP
地址与路由表中某表项的掩码字段做“与”操作,“与”操作后的结果跟路由表该表项的目的
IP
地址比较,相同则匹配上,否则就没有匹配上。 当与所有的路由表项都进行匹配后,路由器会选择一个掩码最长的匹配项。
如图所示,
路由表中
有两个表项到达目的网段
10.1.1.0
,下一跳地址都是
20.1.1.2
。如
果要
将报文转发至网段
10.1.1.1
,则
10.1.1.0/30
符合最长匹配原则。
路由器转发数据包
? ??路由器需要知道下一跳和出接口才能将数据转发出去。
路由器收到一个数据包后,会检查其目的
IP
地址,然后查找路由表。查找到匹配的路由表项之后,路由器会根据该表项所指示的出接口信息和下一跳信息将数据包转发出去。
本章总结
问:路由器选择最优路由的顺序是什么?
答:路由器在选择最优路由时,会首先根据路由的优先级选择哪些路由可以放入路? 由表中;如果优先级相等,再比较metric数值,决定哪些路由放入路由表;最后在查路由表时根据最长掩码匹配原则选择路由表项指导数据报文转发。
问:Preference字段在路由表中代表什么含义?
答:Preference字段在路由表中代表了路由优先级。设备厂商会在各自的产品中为不同的路由协议规定不同的优先级。