- 传统的路由转发原理是首先根据报文的目的地址查找路由表,然后进行报文转发。随着业务的发展,用户更加希望能够在传统路由转发的基础上根据自己定义的策略进行报文转发和选路。
Policy-based-route PBR permif node 10 类似于router policy
名称 | 操作对象 | 描述 |
路由策略 (Route-Policy) | 路由信息 | 路由策略是一套用于对路由信息进行过滤、属性设置等操作的方法,通过对路由的操作或控制,来影响数据报文的转发路径 |
PBR | 数据报文 | PBR直接对数据报文进行操作,通过多种手段匹配感兴趣的报文,然后执行丢弃或强制转发路径等操作 |
PBR:策略路由,在模拟器中只能使用router设备来实验
PBR调用区分:
1.接口调用:对于接口收到到流量 执行对应策略
2.全局调用:对于自身始发的流量 执行对应策略
AR1:
#
acl number 3000
rule 5 permit ip source 192.168.1.1 0 destination 172.16.2.2 0
#
policy-based-route test permit node 1
if-match acl 3000
apply ip-address next-hop 10.1.13.3 指定下一跳为10.1.13.3 指定匹配类型
#
interface GigabitEthernet0/0/2 一定要在流量的入接口做
ip address 192.168.1.254 255.255.255.0
ip policy-based-route test test:name
[AR1]ip local policy-based-route test 全局使能PBR
如果终端设备多个入接口则每个接口都要做
*PBR是优先于设备的路由表执行转发的
设备收到流量后,会查看接口是否存在策略路由
如何不存在,则设备继续查找FIB表项 FIB:转发 信息表项
如果存在,但不匹配流量,则设备继续查找FIB表项
如果存在,且匹配流量,则根据根据策略路由匹配的下一跳执行转发
*如果策略路由匹配的下一跳失效,则策略路由失效,设备按照FIB表项转发
说人话:转发会先查看转发信息表项,如果里面有和转发的流量对应相关的内容就按照转发信息表项来转发,如果没有才按照路由表来转发,如果策略路由失效了就按照FIB转发
Display cu
DIS FIB:查看FIB信息表项 FIB表来自路由表
设备为什么转发这么快?
查转发信息表,路由表项是控制平面,转发信息表是转发平面
traffic-filter:流过滤
MQC:模块化的QOS命令行
就是通过流策略的方式,实现流量的改变
MQC存在模块:
1.traffic class 流分类 读
2.traffic behavior 流行为 写
3.traffic policy 流策略 移植
traffic-policy:流策略(使用设备AR2220)
通过模块化的命令,来实现流量的匹配、流量的设置、策略的调用、PBR的功能
第一步#
acl number 3000 通过ACL匹配流量 PC3访问PC4
rule 5 permit ip source 192.168.1.3 0 destination 172.16.2.4 0
第二步# 流分类
traffic classifier class1 通过流分类调用ACL class1:name operator or :运算符:与
if-match acl 3000
第三步#流策略
traffic behavior behavr1 通过流行为设置流量的处理动作 behavr1行为名称
redirect ip-nexthop 10.1.13.3 redirect:重定向 ip-nexthop IPV4地址
动作还可以设置允许或者拒绝
第二条流量怎样配置?
#
acl number 3001 通过ACL匹配流量
rule 5 permit ip source 192.168.1.3 0 destination 172.16.2.5 0
#
traffic classifier class2
if-match acl 3001
#
traffic behavior behavr2 通过流行为设置流量的处理动作
deny
两个流行为如何关联一个流策略
流行为关联 流行为
#
traffic policy test 将流分类和流行为进行关联
classifier class1 behavior behavr1 class :流分类名称 behavr1:流行为名称
classifier class2 behavior behavr2
#
interface GigabitEthernet0/0/0
ip address 192.168.1.254 255.255.255.0
traffic-policy test inbound
一个行为可以有多个动作
流分类,流行为,流策略的默认规则:不匹配就是允许,不匹配的话就是不做策略,正常通信,做了策略就根据策略来做允许或拒绝
PBR
policy-based-route
命令功能
policy-based-route命令用来创建或修改本地策略路由中策略路由和策略点,并进入本地策略路由视图。
undo policy-based-route命令用来删除本地策略路由中策略路由或策略点。
缺省情况下,本地策略路由中未创建策略路由或策略点。
命令格式
policy-based-route policy-name { permit | deny } node node-id
undo policy-based-route policy-name [ permit | deny | node node-id ]
参数说明
参数 | 参数说明 | 取值 |
policy-name | 指定策略名称。 | 字符串形式,不支持空格,区分大小写,长度范围是1~19。 |
permit | 策略点的模式,表示对满足匹配条件的报文进行策略路由。 | - |
deny | 策略点的模式,表示对满足匹配条件的报文不进行策略路由。 | - |
node node-id | 指定策略点的顺序号。策略点顺序号的值越小则优先级越高,相应策略优先执行。 | 整数形式,取值范围是0~65535。 |
视图
系统视图
缺省级别
2:配置级
使用指南
用户在创建本地策略路由时,需要首先执行该命令进入本地策略路由视图,进入该视图则进入了本地策略路由的配置模式。
使用实例
# 创建策略路由pbr1和策略点1,策略点1的模式为permit。
<Huawei> system-view
[Huawei] policy-based-route pbr1 permit node 1
[Huawei-policy-based-route-pbr1-1]
相关主题
traffic behavior
命令功能
traffic behavior命令用来创建一个流行为并进入流行为视图,或进入已存在的流行为视图。
undo traffic behavior命令用来删除指定的流行为。
缺省情况下,系统上存在名为be的流行为。
命令格式
traffic behavior behavior-name
undo traffic behavior behavior-name
参数说明
参数 | 参数说明 | 取值 |
behavior-name | 指定流行为名称。 | 字符串形式,不支持空格,区分大小写,长度范围是1~31。 |
视图
系统视图
缺省级别
2:配置级
使用指南
应用场景
创建流分类是为了提供差分服务,它必须与某些流量控制或资源分配动作(比如报文过滤、流量监管、重标记等)关联起来才有意义,而这些具体流动作的总和便构成了流行为。traffic behavior命令用来创建一个流行为。
后续任务
在流行为视图下配置相关流动作,比如可以通过执行car(流行为视图)命令配置流量监管动作等。
注意事项
系统上缺省存在名为be的流行为,该流行为既不能被删除,也不能对其进行修改。
如果要删除某个流行为,必须先取消包含该流行为的流策略在接口上的应用,并且在流策略下解除流分类和流行为的绑定。如果只是修改某个流行为所包含的流动作,不需要取消包含该流行为的流策略在接口上的应用。
设备最多可以配置的流行为个数为1024,且一个流行为中可以包含多个流动作。
使用实例
# 创建流行为b1并进入流行为视图。
<Huawei> system-view
[Huawei] traffic behavior b1
[Huawei-behavior-b1]
相关主题
traffic classifier
命令功能
traffic classifier命令用来创建一个流分类并进入流分类视图,或进入已存在的流分类视图。
undo traffic classifier命令用来删除指定的流分类。
缺省情况下,系统上存在名为default-class的流分类。
命令格式
traffic classifier classifier-name [ operator { and | or } ]
undo traffic classifier classifier-name
参数说明
参数 | 参数说明 | 取值 |
classifier-name | 指定流分类名称。 | 字符串形式,不支持空格,区分大小写,长度范围是1~31。 |
operator | 指定流分类下各规则之间的逻辑运算符。如果没有指定operator,则各规则之间缺省为逻辑“或”的关系。 | - |
and | 指定流分类下各规则之间是逻辑“与”的关系。 指定该逻辑关系后:
| - |
or | 指定流分类下各规则之间是逻辑“或”的关系。 指定该逻辑关系后,报文只需匹配流分类下的一个或多个规则就属于该类。 | - |
视图
系统视图
缺省级别
2:配置级
使用指南
应用场景
流分类是指根据一定的规则,把具有某些共同特征的报文划分为同一类。将流分类与某种流行为(请参见traffic behavior)绑定后可以形成某种流策略,通过流策略的应用来实现针对不同类别的业务流进行差分服务。
流分类可以基于vlan-8021p、cvlan-8021p、vlan、l2-protocol等二层信息创建,也可以基于DSCP、IP优先级等三层信息创建,还可以基于ACL创建。
后续任务
在流分类视图下为指定流分类定义匹配规则。比如可以通过执行if-match 8021p命令定义基于VLAN报文802.1p优先级的匹配规则等。
注意事项
系统上缺省存在名为default-class的流分类,该流分类既不能被删除,也不能对其进行修改。
如果要删除某个流分类,必须先取消包含该流分类的流策略在接口上的应用,并且在流策略下解除流分类和流行为的绑定。
设备最多支持配置1024个流分类。
流分类中各规则间的逻辑关系更改时,系统会对规则间的互斥性进行检查。因此,对于配置多值的情况,比如配置了基于cvlan-802.1p、DSCP、IP优先级、VLAN ID等参数的匹配规则,当逻辑关系参数由“或”改为“与”时,会因为规则冲突而提示无法更改;而当逻辑关系参数由“与”改为“或”时,放宽了报文的匹配规则,可能会影响到业务的应用,所以在更改逻辑关系时请谨慎操作。
使用实例
# 创建流分类c1并进入流分类视图。
<Huawei> system-view
[Huawei] traffic classifier c1 operator and
[Huawei-classifier-c1]
相关主题
traffic policy
命令功能
traffic policy命令用来创建一个流策略并进入流策略视图,或进入已存在的流策略视图。
undo traffic policy命令用来删除指定的流策略。
缺省情况下,系统未创建任何流策略。
命令格式
traffic policy policy-name
undo traffic policy policy-name
参数说明
参数 | 参数说明 | 取值 |
policy-name | 指定流策略名称。 | 字符串形式,不支持空格,区分大小写,长度范围是1~31。 |
视图
系统视图
缺省级别
2:配置级
使用指南
应用场景
设备基于报文的二层信息、三层信息或匹配的ACL可以对报文进行精细化的分类,然后在已创建的流策略下绑定相应流分类和流行为,并通过应用流策略来实现对业务流的差分服务。traffic policy命令用来创建一个具体的流策略。设备最多支持1024个流策略。
前置任务
创建待绑定的流分类和流行为。
后续任务
- 创建流策略后,自动进入流策略视图,在该视图下需执行classifier behavior命令,以关联流分类和流行为。
- 为了使创建的流策略生效,必须在接口上执行traffic-policy(接口视图)命令应用此策略。
注意事项
如果需要删除的流策略已经应用到接口,则不允许直接删除该策略,需要先在相应的视图下执行undo traffic-policy命令取消对该策略的应用,然后再到系统视图下执行undo traffic policy命令完成删除。如果没有应用,则可以直接删除。
使用实例
# 创建流策略p1,并关联流分类c1和流行为b1。
<Huawei> system-view
[Huawei] traffic classifier c1
[Huawei-classifier-c1] if-match any
[Huawei-classifier-c1] quit
[Huawei] traffic behavior b1
[Huawei-behavior-b1] remark 8021p 2
[Huawei-behavior-b1] quit
[Huawei] traffic policy p1
[Huawei-trafficpolicy-p1] classifier c1 behavior b1
# 删除已经应用在接口Eth2/0/0入方向上的流策略p1。
<Huawei> system-view
[Huawei] interface ethernet 2/0/0
[Huawei-Ethernet2/0/0] undo traffic-policy inbound
[Huawei-Ethernet2/0/0] quit
[Huawei] undo traffic policy p1
相关主题