详解路由策略和策略路由

在网络设备维护上,现在很多维护的资料上都讲到“路由策略”与“策略路由”这两个名词,但是有很多搞维护的技术人员对这两个名词理解的还不是很透彻,无法 准确把握这两者之间的联系与区别。本文简单分析一下这两者之间的概念,并介绍一些事例,希望大家能从事例中得到更深的理解。
  一、路由策略
  路由策略,是路由发布和接收的策略。其实,选择路由协议本身也是一种路由策略,因为相同的网络结构,不同的路由协议因为实现的机制不同、开销计算规则
不同、优先级定义不同等可能会产生不同的路由表,这些是最基本的。通常我们所说的路由策略指的是,在正常的路由协议之上,我们根据某种规则、通过改变某些
参数或者设置某种控制方式来改变路由产生、发布、选择的结果,注意,改变的是结果(即路由表),规则并没有改变,而是应用这些规则。
  下面给出一些事例来说明。
  改变参数的例子:例如,A路由器和B路由器之间是双链路(分别为AB1和AB2)且带宽相同,运行是OSPF路由协议,但是两条链路的稳定性不一样,
公司想设置AB1为主用电路,当主用电路(AB1)出现故障的时候才采用备用电路(AB2),如果采取默认设置,则两条电路为负载均衡,这时就可以采取分
别设置AB1和AB2电路的COST(开销)值,将AB1电路的COST值改小或将AB2电路的COST值设大,OSPF会产生两条开销不一样的路
由,COST(开销)越小路由代价越低,所以优先级越高,路由器会优先采用AB1的电路。还可以不改COST值,而将两条电路的带宽
(BandWidth)设置为不一致,将AB1的带宽设置的比AB2的大,根据OSPF路由产生和发现规则,AB1的开销(COST)会比AB2低,路由
器同样会优先采用AB1的电路。
  改变控制方式的例子,基本就是使用路由过滤策略,通过路由策略对符合一点规则的路由进行一些操作,例如最普通操作的是拒绝(deny)和允许
(Permit),其次是在允许的基础上调整这些路由的一些参数,例如COST值等等,通常使用的策略有ACL(Acess Control
List访问控制列表)、ip-prefix、AS-PATH、route-policy等等。大部分的路由策略都和BGP协议配合使用中,属于路由接收
和通告原则。
  例如,AS1不向AS2发布19.1.1.1/32这个网段,可以设置ACL列表,在RTB上设置(以华为的路由器为例):
  [RTB]acl number 1 match-order auto
  [RTB-acl-basic-1]rule deny source 19.1.1.1 0
  [RTB-acl-basic-1]rule permit source any
  [RTB]bgp 1
  [RTB-bgp]peer 2.2.2.2 as-number 2
  [RTB-bgp] import-route ospf
  [RTB-bgp] peer 2.2.2.2 filter-policy 1 export
  如果B向C发布了这条路由,但是C不想接收这条路由,则C可以设置:
  [RTC]acl number 1 match-order auto
  [RTC-acl-basic-1]rule deny source 19.1.1.1 0
  [RTC-acl-basic-1]rule permit source any
  [RTC]bgp 2
  [RTC-bgp]peer 2.2.2.1 as-number 1
  [RTC-bgp] peer 2.2.2.1 filter-policy 1 import
  再举个ip-prefix的例子:
  例如RTB不向RTC发布19.1.1.0/24这个网段的路由,则可以设置
  [RTB]ip ip-prefix test index 10 deny 19.1.1.0 24
  [RTB]ip ip-prefix test index 20 permit any
  [RTB]bgp 1
  [RTB-bgp]peer 2.2.2.2 as-number 2
  [RTB-bgp] import-route ospf
  [RTB-bgp] import-route direct
  [RTB-bgp]peer 2.2.2.2 ip-prefix test export
  ip-prefix是精确匹配的,如果想实现模糊匹配,可以通过后面的参数less-equal或greater-equal来实现,例如ip
ip-prefix test index 10 deny 19.1.1.0 24 less-equal
31就表示从19.1.1.0/24、19.1.1.0/25、19.1.1.0/26一直到19.1.1.0/31都能匹配上,否则这仅仅表示只匹配目
的网络是19.1.1.0/24这一条路由,而19.1.1.0/25不满足该条件,具体可以参考命令手册,这里不详细解释了。
  上面讲的都是路由的运行和禁止,下面讲更灵活的路由策略设置方式:route-policy中if-match和apply的匹配,这里不仅能设置允许或禁止某些路由,还能对允许的路由设置其属性。
  RTB与RTC之间跑的是IBGP协议,RTA与RTB、RTC之间跑的是EBGP协议。Router_ID按A、B、C、D从小到大排序。正常情况
下,RTA到RTD之间的通信会选择RTB做中转,RTD到RTA的通信也会选择RTB,在默认情况下,所有参数都相同,BGP会选择router_ID
较小的一条路径。现在想让RTD到RTA之间的通信都走RTB,而RTA到RTD之间的通信都通过RTC,即两台路由器中RTB专门负责自治域内路由器与
域外路由器之间的出口通信,而RTC专门做自治域外路由器与域内路由器的进口通信,我们可以用route-policy中的as-path来实现,在
RTB上做:
  [rtb]route-policy test permit node 10
  [rtb-route-policy]apply as-path 300 400 //添加虚假的路径,使as-path增长
  [rtb-bgp]peer 1.1.1.1 route-policy test export //向RTA发布路由信息的时候使用策略
  这样B在向A发布BGP路由的时候,加大路由的AS-Path值,根据BGP路由选择规则,优先选用AS-Path较短的路由,这样RTA向RTD通
信的时候,优先选用AS-Path短的RTC这条路由,而RTD在选择到RTA路由的时候仍然选择的是RTB,因为对RTD来说,影响路由的参数什么都没
有任何变化。其实也可以使用改变Med值来设定,这里用路由策略来举例。
  这种方法特别灵活在apply语句中能设置多种参数,除了as-path,还有ip next
hop(设置下一跳)、local-preference(本地出口优先级)、cost(开销)、origin(起源,来自igp、egp还是
incomplete)、tag(标记)。
  二、策略路由
  2.2.2.2/30
  2.2.2.1/30
  1.1.1.2/30
  RTB
  1.1.1.1/30
  10.10.10.0/24
  策略路由是在路由表已经产生的情况下,不按照现有的路由表进行转发,而是根据需要,某些通信流量选择其他路由的方式。
  PC2
  PC1
  交换机
  RTA
  如图,RTA和RTB之间的通信有2条链路,其中上面那条电路是主用,带宽是1000M的,下面的电路是备用,带宽是10M的,目前10M基本是空
闲,大部分的通信都走主用上走,PC1(10.10.10.10/24)是某个特别重要的客户,他发的信息要求被立即传送,我们根据这种情况,我们可以将
他的发送通信量单独使用下面备用电路的方法。
  rule-map intervlan permitpc1 ip 10.10.10.10 0.0.0.0 any
  flow-action next2 redirect ip 2.2.2.2
  eacl abc permitpc1 next2
  然后在和10.10.10.0/24网络直连的端口上使用 access-group eacl abc命令下发应用。
  这是一个策略路由的典型应用。这个应用是根据源地址来选择转发路径的,还可以根据协议类型(例如将UDP和TCP分开跑不同的电路)、应用(例如某些
视频应用要求实时传送,可以将rstp流单独使用一条电路来跑)、报文大小或它们的组合等来设置转发条件。其实就是将acl规则应用到数据转发
上,rule-map的规则同ACL,这里就不在举再多的例子了,熟悉ACL的技术人员都知道。
  这里flow-action做的动作redirect就是设置下一条,使用flow-action还可以进行QoS相关的操作,例如使用cos或car动作对数据包进行队列匹配,再根据相关设置的流量模型规则进行操作,具体参阅命令参考手册。
  三、联系与区别
  联系:
  双方都是为了转发数据包而进行路径选择的策略,都是根据某种规则改变某些参数或控制手段来设置不同的转发路径。
  区别:
  路由策略是根据一些规则,使用某种策略改变规则中影响路由发布、接收或路由选择的参数而改变路由发现的结果,最终改变的是路由表的内容。是在路由发现的时候产生作用。
  策略路由是尽管存在当前最优的路由,但是针对某些特别的主机(或应用、协议)不使用当前路由表中的转发路径而单独使用别的转发路径。在数据包转发的时候发生作用、不改变路由表中任何内容。
  策略路由的优先级比路由策略高,当路由器接收到数据包,并进行转发的时候,会优先根据策略路由的规则进行匹配,如果能匹配上,则根据策略路由来转发,否则按照路由表中转发路径来进行转发。
  概括一点讲就是,路由策略是路由发现规则,策略路由是数据包转发规则。其实将“策略路由”理解为“转发策略”,这样更容易理解与区分。由于转发在底
层,路由在高层,所以转发的优先级比路由的优先级高,这点也能理解的通。其实路由器中存在两种类型和层次的表,一个是路由表(routing-
table),另一个是转发表(forwording-table)。转发表是由路由表映射过来的,策略路由直接作用于转发表,路由策略直接作用于路由
表。
  四、优缺点
  网络通信的规则是先有路由,才有转发。路由策略由于仅仅在路由发现的时候产生作用,在路由表产生且稳定之后,如果网络不发生变化,路由表通常都不会变
化,这时候,路由策略没有应用就不会占用资源。而策略路由是在转发的时候发生作用,路由器在初始产生路由表之后,基本工作量都在数据包转发上,如果没有策
略路由,路由器只要分析每一个数据包的目的地址,再按路由表来匹配就可以决定下一跳;但是如果有策略路由,策略路由就一直处于应用状态,如果策略路由特别
复杂,路由器要根据规则来判断数据包的源地址、协议或应用等附加信息,这样就会一直占用大量的资源,所以除非不得已,尽量使用路由策略,而不要使用策略路
由。网络优化的时候需要考虑这一点,如果策略路由特别复杂,能通过将网络进行简单分解而达到取消策略路由的尽量进行分解,否则路由器负担很重。

详解路由策略和策略路由

时间: 2024-07-30 10:18:06

详解路由策略和策略路由的相关文章

路由策略与策略路由的区别

路由策略与策略路由的区别这两中方案都是为了控制网络流量的可达性或调整网络流量的路径:一.路由策略.(Route-Policy)路由策略是通过修改路由表的路由条目来控制数据流量的可达性.即对接受和发布的路由进过滤.这种方式称为路由策略.路由策略由于仅仅在路由发现的时候产生作用,在路由表产生且稳定之后,如果网络不发生变化,路由表通常都不会变化,这时候,路由策略没有应用就不会占用资源. 二.策略路由.(Traffic-Policy)策略路由是通过用户制定的策略进行转发,且该策略优于路由表的转发.这种方

路由策略、策略路由

路由就是报文在转发过程中的路径信息,用来指导报文转发 路由可划分为:网段路由.主机路由.直连路由.间接路由把最优的路由放到FIB(forwarding information base),通过它指导报文转发 路由策略是为了改变网络流量所经过的途径而修改路由信息的技术,主要通过改变路由属性来实现 路由策略的应用方式:1.控制路由的发布(路由协议发布路由信息时,对路由进行过滤,只发布满足条件的路由信息acl.prefix-list)2.控制路由的接收(对路由信息进行过滤,只接收满足条件的路由信息,提

路由交换(十一):路由策略与策略路由

一.路由策略 1.路由策略简介 路由策略主要实现了路由过滤和路由属性设置等功能,通过改变路由属性来改变网络流量所经过的路径.实现控制路由的发布.控制路由的接收.过滤和控制引入的路由.设置特定路由的属性.实施路由策略步骤: 定义规则 应用规则 2.过滤器 访问控制列表ACL 地址前缀列表 route-policy 3.route-policy route-policy是一种功能强大的策略列表,route-policy 自上而下进行匹配策略,一旦匹配就离开route-policy.通常用于过滤路由,

详解组策略环回处理(group policy loopback processing)

环回组策略又称:Group Policy Loopback processing.是一种调试后可以限制组策略被执行的方式. 组策略(group policy)分为两部分, 上半部分是计算机策略(Computer policy), 下半部分是用户策略(User Policy) 环回处理可以让管理员执行用户策略基于计算机的OU. 正常的情况,Group Policy会被执行依照以下顺序: 1. 执行computer的policy基于computer OU 2. 执行user的policy基于user

Nop--NopCommerce源码架构详解专题目录

最近在研究外国优秀的ASP.NET mvc电子商务网站系统NopCommerce源码架构.这个系统无论是代码组织结构.思想及分层都值得我们学习.对于没有一定开发经验的人要完全搞懂这个源码还是有一定的难度的,所以也打算写一个跟蓝狐学习Nop--NopCommerce源码架构详解系列文章. 以下文章主要针对NopCommerce版本:Nop3.4 NopCommerce源码架构详解--初识高性能的开源商城系统cms NopCommerce源码架构详解--Autofac依赖注入分析 NopCommer

路由策略---华为实验,不懂得可以当模板用

路由策略是为了改变网络流量所经过的途径而修改路由信息的技术,主要通过改变路由属性(包括可达性)来实现. 实验拓扑:交换机配置: acl number 3000 rule 5 permit ip source192.168.6.105 0 destination 12.12.12.6 0 q traffic classifier secoperator or if-match acl 3000 q traffic behavior sec redirect ip-nexthop172.16.3.1

Linux iptables防火墙详解 + 配置抗DDOS攻击策略实战

inux iptables防火墙详解 + 配置抗DDOS攻击策略实战 Linux 内核中很早就实现了网络防火墙功能,在不同的Linux内核版本中,使用了不同的软件实现防火墙功能.在2.0内核中,防火墙操作工具叫:ipfwadm在2.2内核中,防火墙操作工具叫:ipchains在2.4以后的内核,防火墙操作工具叫:iptables ipfwadm 和 ipchains 比较老,已成历史版本,本章主要介绍Iptables 一.iptable 操作命令参数详解 -A  APPEND,追加一条规则(放到

Cisco路由技术基础知识详解

第一部分 请写出568A的线序(接触网络第一天就应该会的,只要你掐过,想都能想出来) .网卡MAC地址长度是(??)个二进制位(16进制与2进制的换算关系,只是换种方式问,不用你拿笔去算) A.12??? B.6??? C.24??? D.48 .ICMP?在沟通之中,主要是透过不同的类别(Type)与代码(Code)让机器来识别不同的连线状态,请问?type?8?名称是(??),代表的意思___回送消息____________.(同上,整天ping.你是否思考了ping?的细节过程) A.Ec

Centos 7基于DR(直接路由)模式的负载均衡配置详解

DR(直接路由)是三种负载均衡模式其中之一,也是使用最多的一种模式,关于该模式的介绍,可以参考博文:LVS负载均衡群集详解. DR的工作模式示意图如下: 该模式的原理已经在上面链接的博文中写了下来.现在直接搭建一个基于DR模式的负载均衡群集. 环境如下: 在上面这个环境中,需要解决的问题有下面几点: 1.所有web节点和调度器都配置上VIP:客户端访问VIP(群集的虚拟IP地址)时,若是 调度器将请求转发给web节点,然后由web节点直接去响应客户端,那么客户端在收到 数据包后,发现收到的数据包