如果报文没有匹配到traffic policy中的Classifier该怎么处理?

一个Traffic policy中可以配置一个或多个Classifier & Behavior对。当收到一个报文,做复杂流分类处理时,会按照Traffic-policy中Classifier & Behavior对的配置顺序进行匹配。

如果命中,则停止匹配;如果不命中,则匹配后面的Classifier;如果是最后一个Classifier,且还不命中,则报文走正常的转发处理,类似于没有应用流分类策略


以下内容摘自华为 HedEx文裆NE5000E,用于后期的快速查找

关于Traffic Policy

流策略(Traffic Policy)用于QoS复杂流分类,实现丰富的QoS策略。

Traffic Policy分为三部分:

  • 流分类(Classifier)模板:定义流量类型。一个Classifier可以配置一条或多条if-match语句,if-match语句中可以引用ACL规则。不同的Classifier模板可以应用相同的ACL规则。一个ACL规则可以配置一个或多个Rule语句。
  • 流动作(Behavior)模板:指用于定义针对该类流量可实施的流动作。一个Behavior可以定义一个或多个动作。
  • 流策略(Traffic Policy)模板:将流分类Classifier和流动作Behavior关联,成为一个Classifier & Behavior对。当Traffic Policy模板设置完毕之后,需要将Traffic Policy模板应用到接口上才能使策略生效。

接口、流策略、流动作、流分类、ACL之间的关系如图

Classifier & Behavior对之间的匹配顺序

一个Traffic policy中可以配置一个或多个Classifier & Behavior对。当收到一个报文,做复杂流分类处理时,会按照Traffic-policy中Classifier & Behavior对的配置顺序进行匹配。

如果命中,则停止匹配;如果不命中,则匹配后面的Classifier;如果是最后一个Classifier,且还不命中,则报文走正常的转发处理,类似于没有应用流分类策略。

Classifier之间的顺序可以通过命令行classifier behavior修改。例如,Traffic-policy T中配置了A、B、C三个Classifier:

#

traffic policy T

classifier A behavior A

classifier B behavior B

classifier C behavior C

#

缺省情况下,A、B、C三个Classifier的顺序分别是1、2和3,与配置的顺序相同。如果要将A排在最后,可以执行如下命令:

classifier A behavior A precedence 4

结果是:

#

traffic policy T

classifier B behavior B

classifier C behavior C

classifier A behavior A precedence 4

#

此时,B之前的顺序号1没有被占用,因此可以在B之前添加一个Classifier(假设是D),则可执行如下命令实现。

classifier D behavior D precedence 1

结果是:

#

traffic policy T

classifier D behavior D precedence 1

classifier B behavior B

classifier C behavior C

classifier A behavior A precedence 4

#

如果按如下方法,不指定precedence值的方式添加D,

classifier D behavior D

结果如下:

#

traffic policy T

classifier B behavior B

classifier C behavior C

classifier A behavior A precedence 4

classifier D behavior D

#

If-match语句之间的匹配顺序

由于Classifier中配置的是一个或多个if-match语句,按照if-match语句配置顺序进行匹配。报文命中if-match语句后,是否执行对应的behavior动作,取决于If-match语句之间是And还是Or逻辑。

If-match语句之间的And和Or逻辑

如果流分类模板下配置了多个if-match语句,则这些语句之间有And和Or两种逻辑关系:

  • Or逻辑:数据包只要匹配该流分类下的任何一条if-match语句定义的规则就属于该类。
  • And逻辑:数据包必须匹配该流分类下的全部if-match语句才属于该类。

流策略的执行过程(if-match语句间是Or逻辑)

流策略的执行过程(Or逻辑)

如图,针对每个Classifier,如果If-match语句之间是Or逻辑,按照if-match语句配置顺序进行匹配,数据包一旦命中某个if-match语句:

如果数据包没有命中任何if-match语句,则不支持任何动作,继续处理下一个Classifier。

流策略的执行过程(if-match语句间是And逻辑)

如果If-match语句之间是And逻辑,设备先会将这些if-match语句进行合并(这里的“合并”相当于集合的乘法操作),再按照Or逻辑的处理流程进行处理。

对于引用ACL的if-match语句,不是将ACL内部的各条Rule进行合并,而是逐条与其他if-match语句进行合并。因此值得注意的是:And逻辑中if-match语句的顺序不影响匹配结果,但ACL中Rule的顺序仍然会影响匹配结果。

例如,某个流策略下配了如下一个classifier:

acl 3000rule 5 permit ip source 1.1.1.1 0rule 10 deny ip source 2.2.2.2 0
#
traffic classifier example operator andif-match acl 3000if-match dscp af11

则设备首先进行if-match语句的合并,合并结果相当于:

acl 3000rule 5 permit ip source 1.1.1.1 0 dscp af11rule 10 deny ip source 2.2.2.2 0 dscp af11
#
traffic classifier example operator orif-match acl 3000
#
traffic behavior exampleremark dscp af22
#
traffic policy exampleshare-modeclassifier example behavior example
#
interface GigabitEthernet2/0/0traffic-policy P inbound
#

然后,再针对合并结果按Or逻辑的执行过程进行处理。处理结果是从GE2/0/0收到的源IP为1.1.1.1/32且dscp=10的报文重标记为AF22,源IP为1.1.1.2/32且dscp=10的报文丢弃,其他报文由于没有匹配任何规则,直接转发。

说明:

对于And逻辑,系统License中最多只允许存在一条引用ACL的if-match语句;而Or逻辑中,可以有多条引用ACL的if-match语句。

If-math语句引用ACL时的匹配过程

如果if-match语句指定的是ACL,需要在ACL的多个Rule语句中进行匹配:首先查找用户是否配置了该ACL(因为流分类允许引用不存在的ACL),命中的第一条则停止匹配,不再继续查找后续的规则。

说明:

当Rule中的动作为Deny时,如果behavior是镜像或采样,即使对于丢弃的报文,也会执行behavior。

ACL中可以指定permit或deny规则,它与ACL所在Classifier所对应的Behavior中的动作的关系是:

例如以下配置的匹配结果是:源地址是50.0.0.1/24的报文IP优先级被标记为7;源地址是60.0.0.1/24的报文被丢弃;源地址是70.0.0.1/24的报文IP优先级不变。

acl 3999rule 5 permit ip source 50.0.0.0 0.255.255.255rule 10 deny ip source 60.0.0.0 0.255.255.255traffic classifier aclif-match acl 3999traffic behavior testremark ip-pre 7
traffic policy testclassifier acl behavior testinterface GigabitEthernet1/0/1traffic-policy test inbound

流量策略中ACL计数功能

为节省内存,系统缺省不使能流量策略的统计功能。当用户需要显示流量策略的统计数据时,可配置statistics enable命令使能流量策略的统计功能。

#

traffic policy example

classifier example behavior example

 statistics enable

#

华为之ACL应用于Traffic Policy/华为策略路由匹配原则相关推荐

  1. ACL中的permit/deny与traffic policy中behavior的permit/deny之间是什么关系?

    ACL中的permit/deny与traffic policy中behavior的permit/deny之间是什么关系? ACL与traffic policy(流策略)经常组合使用.traffic p ...

  2. 内外网隔离-Traffic Policy

    内外网隔离-Traffic Policy 网络拓扑 Traffic Policy 全网互联 创建ACL 配置流策略 网络拓扑 本次测试主要通过流策略(Traffic Policy)实现内外网隔离,内网 ...

  3. 记录一次与大神们的关于GAN应用于NLP的讨论

    说实话,是聆听了大神们,本人只是捧哏似的嗯.啊了几句. 之前paperweekly的GAN讨论组要进行一次讨论,给出了很多议题进行投票.里边有GAN in NLP.GAN and RL.半监督GAN等 ...

  4. 鸿蒙整体战略发布会,“鸿蒙OS”能否用于手机?华为宣布:就看明天的整体战略!...

    原标题:"鸿蒙OS"能否用于手机?华为宣布:就看明天的整体战略! 在今年8月9日的华为HDC全球开发者大会上,华为发布了自主研发的操作系统"鸿蒙",英文名为&q ...

  5. 轻舟已过万重山:华为之路,平板PC之变

    平板.PC,这些产品对于你来说意味着什么? 参数怪兽,傻大黑粗.吃灰神器,这些都是萦绕在平板.PC这些产品身边的高频词汇.曾几何时,我们似乎对平板.PC的认知陷入了某种局限.比如认为它们的主要卖点就是 ...

  6. Tensorflow—CNN应用于MNIST数据集分类

    代码: import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_datamnist = input_ ...

  7. 如何将CSS应用于iframe?

    我有一个简单的页面,其中包含一些iframe部分(以显示RSS链接). 如何将相同的CSS格式从首页应用到iframe中显示的页面? #1楼 上面有一些更改的作品: var cssLink = doc ...

  8. 基于脑电图的情绪识别BCI应用于DOC患者

    点击上面"脑机接口社区"关注我们 更多技术干货第一时间送达 ‍‍‍ 基于脑电图(EEG)信号的人类情感识别已引起广泛关注.现有的大多数研究都集中在离线分析上,使用脑计算机接口(BC ...

  9. fritz_如何使用Fritz.ai将机器学习应用于Android

    fritz 本文介绍如何使用Fritz.ai将机器学习应用于Android . 在深入探讨如何开发机器学习Android应用程序的细节之前,简要介绍一下什么是Fritz.ai平台很有用. 如您所知,机 ...

最新文章

  1. 《背包问题》 动态规划
  2. DD_belatedPNG
  3. Atitit  从 RGB 到 HSL 或 HSV 的转换
  4. cross validation交叉验证
  5. Ubuntu 20.04开机自启脚本(亲测)
  6. c语言为什么运行慢,【图片】今天写几个性能测试,为什么C语言跑得这么慢呢??【c语言吧】_百度贴吧...
  7. 4. 吴恩达机器学习课程-作业4-神经网络学习
  8. 20200127每日一句
  9. CocosCreator之场景编辑器介绍
  10. 基金使用计划 数学建模 matlab,基金使用计划模型
  11. 高德地图大头针功能_关于高德地图遇到的自定义大头针的坑
  12. 苹果或将采用高通屏下指纹方案,5GiPhone基带由三星、高通共同提供...
  13. USB-HDD和USB-ZIP制作U盘启动盘有什么区别?
  14. java传递汉字翻译为英文_java写的能将汉字翻译成拼音的类
  15. 云计算技术 实验三 安装Hadoop系统并熟悉hadoop命令
  16. HTML5+JavaScript调用摄像头拍照或者摄像
  17. 编译原理 SysY语言的词法分析程序
  18. iOS 全屏侧滑手势/UIScrollView/UISlider间滑动手势冲突
  19. php5.4.31安装php_fileinfo扩展和php_intl扩展
  20. 多情石木生似我,不死不知误花秋.

热门文章

  1. N5N4 日语动词的11种变形
  2. 11、16支足球队随机分组
  3. C语言的按位取反符号~(详解)
  4. 快速学习-Saturn Executor部署
  5. Lab3-1 832001227
  6. Ansys导出刚度矩阵及文件说明
  7. 云原生钻石课程 | 第2课:Kubernetes 技术架构深度剖析
  8. 产品经理的主要工作内容
  9. MogaFX —北美和大洋洲的汇率
  10. 手把手教你如何用selenium实现自动抽奖工具(穿越火线王者夺宝活动为例)