路由策略(普通路由,默认路由)和策略路由
转自:https://blog.csdn.net/qingdao666666/article/details/114088829
路由策略和策略路由
路由策略是根据一些规则,使用某种策略改变规则中/影响路由发布、接收或路由选择/的参数而改变路由发现的结果,最终改变的是路由表的内容。是在路由发现的时候产生作用。
策略路由是尽管存在当前最优的路由,但是针对某些特别的主机(或应用、协议)不使用当前路由表中的转发路径而单独使用别的转发路径。在数据包转发的时候发生作用、不改变路由表中任何内容。
策略路由的优先级比路由策略高,当路由器接收到数据包,并进行转发的时候,会优先根据策略路由的规则进行匹配,如果能匹配上,则根据策略路由来转发,否则按照路由表中转发路径来进行转发。
,路由策略是路由发现规则,策略路由是数据包转发规则。其实将“策略路由”理解为“转发策略”,这样更容易理解与区分。由于转发在底层,路由在高层,所以转发的优先级比路由的优先级高,这点也能理解的通。
其实路由器中存在两种类型和层次的表,一个是路由表(routing-table),另一个是转发表(forwording-table)。转发表是由路由表映射过来的,策略路由直接作用于转发表,路由策略直接作用于路由表。
一、策略路由
策略路由PBR(Policy-Based Routing)是一种依据用户制定的策略进行路由选择的机制,分为本地策略路由、接口策略路由和智能策略路由SPR(Smart Policy Routing)。
策略路由具有如下优点:
可以根据用户实际需求制定策略进行路由选择,增强路由选择的灵活性和可控性。
可以使不同的数据流通过不同的链路进行发送,提高链路的利用效率。
在满足业务服务质量的前提下,选择费用较低的链路传输业务数据,从而降低企业数据服务的成本。
本地策略路由仅对本机下发的报文进行处理,对转发的报文不起作用。
一条本地策略路由可以配置多个策略点,并且这些策略点具有不同的优先级,本机下发报文优先匹配优先级高的策略点。
实现原理
本机下发报文时,根据本地策略路由节点的优先级,依次匹配各节点绑定的匹配规则,本地策略路由支持基于ACL或报文长度的匹配规则。
接口策略路由
接口策略路由只对转发的报文起作用,对本地下发的报文(比如本地的Ping报文)不起作用。
实现原理
接口策略路由通过在流行为中配置重定向实现,只对接口入方向的报文生效。缺省情况下,设备按照路由表的下一跳进行报文转发,如果配置了接口策略路由,则设备按照接口策略路由指定的下一跳进行转发。
在按照接口策略路由指定的下一跳进行报文转发时,如果设备上没有该下一跳IP地址对应的ARP表项,设备会触发ARP学习,如果一直学习不到下一跳IP地址对应的ARP表项,则报文按照路由表指定的下一跳进行转发。如果设备上有或者学习到了此ARP表项,则按照接口策略路由指定的下一跳IP地址进行报文转发。
二、路由策略
定义
路由策略主要实现了路由过滤和路由属性设置等功能,它通过改变路由属性(包括可达性)来改变网络流量所经过的路径。
目的
路由协议在发布、接收和引入路由信息时,根据实际组网需求实施一些策略,以便对路由信息进行过滤和改变路由信息的属性,如:
控制路由的接收和发布
只发布和接收必要、合法的路由信息,以控制路由表的容量,提高网络的安全性。
控制路由的引入
在一种路由协议引入其它路由协议发现的路由信息丰富自己的路由信息时,只引入一部分满足条件的路由信息。
设置特定路由的属性
修改通过路由策略过滤的路由的属性,满足自身需要。
路由策略的实现分为两个步骤:
1、定义规则:首先要定义将要实施路由策略的路由信息的特征,即定义一组匹配规则,可以以路由信息中的不同属性作为匹配依据进行设置,如目的地址、AS号等;
2、应用规则:根据设置的匹配规则,再将它们应用于路由的发布、接收和引入等过程中。
目前提供了如下几种过滤器供路由协议引用: 访问控制列表; 地址前缀列表; AS路径过滤器; 团体属性过滤器; 扩展团体属性过滤器; 路由标识属性过滤器。
前缀列表的组成及匹配规则:
前缀过滤列表由IP地址和掩码组成,IP地址可以是网段地址或者主机地址,掩码长度的配置范围为0~32。
IP-Prefix List中的每一条IP-Prefix都有一个序列号index,匹配的时候将根据序列号从小到大进行匹配。 如果不配置IP-Prefix的index,那么对应的index在上次配置的同名IP-Prefix的index的基础上,以步长为10进行增长。如果配置的IP-Prefix的名字与index都和已经配置了的一项IP-Prefix List的相同,仅仅只是匹配的内容不同,则该IP-Prefix List将覆盖原有的IP-Prefix List。 当所有前缀过滤列表均未匹配时,缺省情况下,存在最后一条默认匹配模式为deny。 当引用的前缀过滤列表不存在时,则默认匹配模式为permit。
前缀掩码长度范围: 前缀过滤列表可以进行精确匹配或者在一定掩码长度范围内匹配,并通过配置关键字greater-equal和less-equal来指定待匹配的前缀掩码长度范围。如果没有配置关键字greater-equal或less-equal,前缀过滤列表会进行精确匹配,即只匹配掩码长度为与前缀过滤列表掩码长度相同的IP地址路由;如果只配置了关键字greater-equal,则待匹配的掩码长度范围为从greater-equal指定值到32位的长度;如果只匹配了关键字less-equal,则待匹配的掩码长度范围为从指定的掩码到关键字less-equal的指定值。
策略路由与路由策略(Routing Policy)存在以下不同:
策略路由的操作对象是数据包,在路由表已经产生的情况下,不按照路由表进行转发,而是根据需要,依照某种策略改变数据包转发路径。
路由策略的操作对象是路由信息。路由策略主要实现了路由过滤和路由属性设置等功能,它通过改变路由属性(包括可达性)来改变网络流量所经过的路径。
策略路由的查找优先级比路由策略高,当路由器接收到数据包并进行转发时,会优先根据策略路由的规则进行匹配,如果能匹配上,则根据策略路由进行转发,否则按照路由表中的路由条目来进行转发。
其中策略路由不改变路由表中的任何内容,它可以通过预先设置的规则来影响数据报文的转发。