最长前缀匹配

科技工作者之家 2020-11-17

最长前缀匹配是指在IP协议中,被路由器用于在路由表中进行选择的一个算法。

因为路由表中的每个表项都指定了一个网络,所以一个目的地址可能与多个表项匹配。最明确的一个表项——即子网掩码最长的一个——就叫做最长前缀匹配。之所以这样称呼它,是因为这个表项也是路由表中,与目的地址的高位匹配得最多的表项。

简介最长前缀匹配是指在IP协议中,被路由器用于在路由表中进行选择的一个算法。

因为路由表中的每个表项都指定了一个网络,所以一个目的地址可能与多个表项匹配。最明确的一个表项——即子网掩码最长的一个——就叫做最长前缀匹配。之所以这样称呼它,是因为这个表项也是路由表中,与目的地址的高位匹配得最多的表项。

例如,考虑下面这个IPv4的路由表(这里用CIDR来表示):

192.168.20.16/28192.168.0.0/16在要查找地址192.168.20.19的时候,这两个表项都“匹配”。也就是说,两个表项都包含着要查找的地址。这种情况下,前缀最长的路由就是192.168.20.16/28,因为它的子网掩码(/28)比其他表项的掩码(/16)要长,使得它更加明确。

路由表中常常包含一个默认路由。这个路由在所有表项都不匹配的时候有着最短的前缀匹配。

子网子网(英语:Subnetwork)这个词有两个相关的含义:其中一个较老的、一般的含义是互联网中的一个物理网络;在因特网协议(Internet Protocol,IP)中,子网指的是从分类网络中划分出来的一部分。本文叙述其第二种含义。

具有相同的前半部分地址的一组IP地址,可以利用地址的前半部分划分组。在一个IP网络中划分子网使我们能将一个单一的大型网络——至少(逻辑上)看上去如此——分成若干个较小的网络。在最初引入这个概念的时候,IPv4还未引入分类网络这个概念。而引入划分子网这个概念的目的是为了允许一个单一的站点能拥有多个局域网。即使在引入了分类网络号之后,这个概念仍然有它的用处,因为它减少了因特网路由表中的表项数量(通过隐藏一个站点内部所有独立子网的相关信息)。此外它还带来了一个好处,那就是减少了网络开销,因为它将接收IP广播的区域划分成了若干部分。1

路由表在计算机网络中,路由表(routing table)或称路由择域信息库(RIB, Routing Information Base),是一个存储在路由器或者联网计算机中的电子表格(文件)或类数据库。路由表存储着指向特定网络地址的路径(在有些情况下,还记录有路径的路由度量值)。路由表中含有网络周边的拓扑信息。路由表建立的主要目标是为了实现路由协议和静态路由选择。

在现代路由器构造中,路由表不直接参与数据包的传输,而是用于生成一个小型指向表,这个指向表仅仅包含由路由算法选择的数据包传输优先路径,这个表格通常为了优化硬件存储和查找而被压缩或提前编译。本文将忽略这个执行的详细情况而选择整个路径选择/传输信息子系统作为路由表来说明。1

本词条内容贡献者为:

黄伦先 - 副教授 - 西南大学

科技工作者之家

科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。