最长前缀匹配

最长前缀匹配简述

最长前缀匹配机制(Longest Prefix Match Algorithm)是目前行业内几乎所有的路由器都缺省采用的一种路由查询机制。

当路由器收到一个IP数据包时,它会将数据包的目的IP地址与自己本地路由表中的所有路由表进行逐位(Bit-By-Bit)对比,直到找到匹配度最长的条目,这就是最长前缀匹配机制。

最长前缀匹配图

路由器AR1的路由表除了直连路由10.1.1.1/24、10.2.2.2/24、10.3.3.3/24外,还有三条路由172.16.1.0/24、172.16.2.0/24、172.16.0.0/24。

在这里插入图片描述
分别关联不同的出接口和下一跳地址,那么当R1收到一个到达172.16.2.1的数据包时,它将把数据包转发给哪台路由器?

大致上,R4将报文的目的IP地址172.16.2.1和路由条目1的目的网络掩码255.255.255.0进行逻辑与运算,与路由条目2、3都进行运算。

路由条目的编号

在这里插入图片描述

逻辑与运算规则

“&&” "·"表示与 (逻辑与)是逻辑运算符,
逻辑与”相当于生活中说的“并且”,就是两个条件都同时成立的情况下“逻辑与”的运算结果才为“真”
二进制与运算规则:1&1=1 1&0=0 0&0=0

路由条目(一)与其子网掩码进行逻辑与运算

172.16.1.0与掩码255.255.255.0进行逻辑与运算

172 16 1 0
10101100 00010000 00000001 00000000
255 255 255 0
11111111 11111111 11111111 00000000
逻辑与结果 ----- ------- -----
10101100 00010000 00000001 00000000

逻辑与运算结果

逻辑运算结果为172.16.1.0,二进制如下:

10101100 00010000 00000001 00000000

数据包目的IP:172.16.2.1

10101100 00010000 00000010 00000001

路由条目与数据包IP对比

j将报文目的IP地址172.16.2.1/24与路由条目的网络掩码255.255.255.0进行“逻辑与”运算。
在这里插入图片描述
将运算结果与路由条目1的目的网络地址的前24bit进行对比,如上图所示,结果发现有两个比特位不相同,因此判断出这个目的IP与路由条目1不匹配,R1将不使用这条路由转发到达172.16.2.1的数据包。

目的IP地址与路由条目1不匹配,会继续与路由条目2、路由条目3匹配,进行逻辑与方式进行。

目的IP地址与路由条目2逻辑与运算

目的IP:172.16.2.1/24

路由条目2:172.16.2.0/24

将IP地址172.16.2.1与路由条目2的目的网络掩码255.255.255.0进行“逻辑与”运算,将运算结果与路由条目2的目的网络地址的前24比特对比,发现每一个比特位都相同,因此该目的IP匹配这条路由,而且匹配结果是172.16.2.0/24,也就是说匹配长度是24。

与路由条目2逻辑与运算完成,不管结果是不是需要的匹配原则都会继续匹配路由条目三、四… …

它会将数据包的目的IP地址与自己本地路由表中的所有路由表进行逐位(Bit-By-Bit)对比

目的IP地址与路由条目3逻辑与运算

目的IP地址:172.16.2.1/24

路由条目3:172.16.0.0/16

将目的IP地址172.16.0.0/16与路由条目3的目的网络255.255.0.0进行“逻辑与”运算,其运算结果是与路由条目3的前16bit进行对比,发现每一个比特位都是相同的,因此该目的IP匹配此路由,匹配结果是172.16.0.0/16,匹配长度16.

但是根据最长匹配原则,路由条目2匹配度更长,因此R1将采用路由条目2来转发到达172.16.2.1的数据包。

最长匹配实现负载分担

最长匹配前缀除了可以实现路由选路,还可以实现数据传输路径的冗余和负载分担,
在这里插入图片描述
在上图中,AR1与AR2是两台企业边界路由器,在该企业中存在192.168.0.0~192.168.3.0网段。现在B与AR1、AR2建立了连接,运行了RIP,企业对1、2路由器有完全操控全,对B不具备操作权限,只能将信息通过给B。
企业要求,通过1、2路由器上进行相应配置,使得B到达上述4个网段的数据包转发给路由器1,当1发生故障,B将数据包平滑的切换至R2。

路由要求实现

即AR1向B通过四条明细路由,AR2配置一条汇总路由192.168.0.0/22,此汇总路由会将四条路由都囊括在内,完成配置后,B的路由表将出现5条路由。
根据最长匹配原则,在网络正常时,数据包通过AR1发送至B。

当AR1故障,数据转发会切换到AR2,这就实现了数据转发的冗余。

参考华为路由交换指南

发布了30 篇原创文章 · 获赞 55 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_39689711/article/details/103746534