【IP路由基本原理】

概述:

IP路由原理可以拆分为,IP 、 路由两方面讲,IP就是网络中每个设备都需要配置一个IP地址用于设备之间的一种“身份标识”。路由就是不同IP之间该向那条路径发送数据,从而最终能到达需要通信的设备。这里就举个更直白的,路由就是一个地图,上面有各种各样的路线,而IP就是每个节点的名称,通过地图上的路线来到达对端。就好比如像下面这个图一样,你会根据最近距离去选择路线,这个距离就类比于IP理由里面的cost(度量值)。越小越优先。
 

9cf9969036a8b087b3eaeb87781774f.jpg


路由就是指导路由器进行数据转发的路径信息。IP连通的前提,沿途每个路由器都具有到达目的网段的路由信息,因为通信是一个双向一来一回的方式。

路由表(RIB)

每个路由器自己都会有一张路由表(RIB),这个表会记录路由器所有已知的路由信息,就好比如交换机会有MAC地址对应表是一样的,路由器自己也有对应的路由信息表,会记录源目地址、目的的掩码信息(mask)、优先级、度量值、出接口、路由协议等相关信息,自己在路由器上可以通过命令查询。

dis ip routing-tab

1667458088369.jpg

RIB表是基准表,是路由器转发路由最基本的依据,路由器当接收一个数据包,会根据去往目的地然后再路由表中进行查找,若有对应的路由表就按照路由表进行转发,路由表的转发是基于最优路径转发,路由最优的选择是通过下列方式选择出来。

路由转发选择

路由表出现有去往同一目的地址但是有不同的下一跳时,会根据下列规则进行选择最优路径。


一,路由优先级越小的越优先

在路由表里每条学习到的路由,都会有优先级标注,为了更方便后续的路由转发,若此比对优先级是一样的话,继续按照第二条进行比对。每个厂家的对于不同路由协议的优先级的定义不一样,例如华为设备的静态路由的优先级是60,OSPF路由协议是10,RIP路由协议是100。而思科设备分别对应的优先级是1、110、120。

二、内部协议优先

当优先级相同时,会根据路由协议的内部协议优先转发,路由协议分外部协议和内部协议。在后面的网络协议中会学到AS自治系统,内部外部的区分就是在AS内和AS外的区分,这里简单提及,比如简单的RIP、OSPF路由协议是内部路由协议,BGP、MPLS就是外部路由协议。若比对还是相同,则按照第三条比对。

三、度量值越小越优先

在路由表中度量值代表的是去往每条路径的路线开销。路径开销最小路由器会直接通过这条路由转发。若度量值开销比对依旧相同,那么会形成链路负载又称等价路由,也就是多条线路同时转发这个数据包的流量。这种负载的好处前面讲解Trunk的时候提到这里就不展开了。
(注意:优先级是用于不同协议之间的比对,度量值是用于相同协议之间的比对。这并不影响你按照这三条比对规则来选举最优路由。)

负载分担


这里的路由表各项指标比对后都相同的线路,会形成负载,华为设备对于这种负载最大只支持8条线路同时负载,负载分担在实际应用里面也存在缺点;因为数据流是通过多条线路到达,对于设备的流量管理会有不准确的情况。当设备流量异常时抓包分析,数据包的信息会不完整。
负载分担这里华为设备是提供两种方式,一种是逐包、一种是逐流。

逐包负载分担

是通过对于数据包的发送进行负载,当每个数据包转发时会依据上一个数据包的不同下一跳地址进行转发来进行负载。

逐流负载分担

而逐流负载分担是根据数据包五元组(源地址、目的地址、源端口、目地端口、协议),当数据包的五元组相同的时候,数据包会参照第一个数据包通过的下一跳地址进行转发,不同的五元组就随机下一跳进行转发。逐流负载是华为设备默认的负载路由的方式。

若没有匹配到路由表的路由条目,路由器就会直接丢弃数据包,这里跟交换机接收未知数据包时做的操作不一样,交换机是继续进行广播。当一个网络环境比较大的时候,有几百条甚至上千条的路由信息时,他是会把整个表进行查找一遍,路由表越大查找时间越长,对设备的性能也消耗较大。

快速转发表(FIB)

FIB表是基于RIB表的,RIB表内新增一条最优路径的路由条目时,对应的在FIB表内会同时新增,FIB表的是快速转发顾名思义就是要为路由寻找目的地址快速的转发

为了达到这一目的,FIB表内的路由条目全都是最优路径,且路由表内会指明报文到某网段或者某主机的出接口,及下一跳地址或目的主机地址,FIB表中包含路由器进行路由转发数据包的一组最小必需数据,目的地址、前缀地址、传输端口、下一跳地址、表明路由特征,以及时间戳

路由器会优先去匹配FIB路由表内的路由条目,没有查找到就会去查找RIB路由表。

FIB路由表构建完成后会下发到各个板卡,板卡收到数据包后,各个板卡会优先查看FIB表的路由匹配,若没有的话才会上传数据到主控板查看RIB表,FIB表的查找路由是需要经过设备CPU进行运算得出的最优路径,FIB表会减少CPU的运算压力,提高CPU处理复杂路由计算的性能。

可以通过命令行查看设备上的FIB表。

dis fib

图片.png

扩展:

VLAN路由
有IP路由,还有个VLAN路由,其实原理都是IP路由,不过是这里换了VLAN,VLAN前面讲过很多次都是二层的,而IP不是三层才会涉及到的东西吗,为什么会有个VLAN路由出来。

指导设备对于不同vlan进行路由转发,通过在交换机上起一个VALNif虚拟网关的三层接口,来和三层设备进行数据通信,VLANif和VLAN是互相绑定的

只有在交换机上先创建了VLAN才可以起虚拟VLANif接口并配置地址,现在生产环境几乎都会启用一个VLANif进行交换机的管理,

注意:所有交换机上默认开了vlan1,配置相关地址不要起VLANif 1 的虚拟地址,因所有设备都会起用vlan1 ,若trunk口没有禁用vlan1,默认是vlan1全局都放通,vlan隔离用户的作用就达不到了,当然你特殊环境需要启用,那就注意每个trunk 口按需放行 vlan 1

也可以在路由器上配置单臂路由的方式达到此目的,在路由器连接交换机的接口开启识别802.1x报文的功能,然后配置子接口用于跟vlanif 进行通信即可达到使用vlan来指导路由转发。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值