news 2026/9/2 15:25:05

什么是流策略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
什么是流策略

文章目录

    • 为什么需要流策略
    • 如何实现流策略
    • 流策略的典型应用



流策略是一种网络流量管理机制,能够将具有相同特征的报文划分为一类,并为这一类报文提供相同的服务。通过配置流策略,用户可以定义报文分类规则匹配需要单独处理的流量,然后将匹配的流量进行相应处理,以减少网络拥塞带来的损失。


为什么需要流策略

在日常生活中,交通规则对车辆进行分类,并对每一类的车辆指定了其需要遵守的行为,来缓解交通堵塞,提升车流通过效率。如属于“右拐”的车辆必须“靠右侧行驶”,属于“执勤类”的车辆“优先快速通过”,就是典型的交通规则。流策略属于QoS(Quality of Service)技术中的“模块化QoS命令行(MQC)”,流策略作为一种网络流量管理机制,实际上可以看作是网络流量的“交通规则”。流策略能够在不增加网络带宽的情况下,维持流量通过秩序,有效缓解网络拥塞问题,为实时网络业务保驾护航。


交通规则进行车流分类与车辆行为规范

流策略的实现方式也同交通规则类似,先用流分类功能对流量进行分类,再用流行为功能对每类流量定制需要遵守的行为。比如可以根据业务重要程度对流量进行分类,“重要程度高”的流量“最先通过”,“重要程度低”的流量“最后通过”,从而使网络中的流量通过效率最大化。

流策略进行流量分类与流量行为定义

如何实现流策略

实现流策略,需要依次配置以下步骤:

  1. 配置流分类:对流量进行有效管理的前提是识别出这类流量。通过定义一组流量匹配规则,筛选出想要进行管理的流量,这个过程就是“流分类”。
  2. 配置流行为:为流量提供不同的服务,该服务就通过“流行为”来定义,例如给某类重要流量提供“VIP优先通过服务”,翻译成流行为就是——重标记该类报文的优先级,赋予最高优先级。
  3. 配置流策略:将指定的流分类和指定的流行为绑定,形成完整的策略。
  4. 应用流策略:按照需要在相应的视图下应用流策略。

如何实现流策略

流分类

创建一个流分类,需要确定如下两点:

  • 流分类的名称,用于与流行为进行绑定。可以使用命令traffic classifier创建一个流分类模块。
  • 流分类的分类规则。可以使用命令if-match创建一个流分类规则。设备支持众多的流分类匹配规则,可以分为链路层规则(二层规则)、网络层规则(三层规则)、ACL规则等其他规则。常用的报文分类规则有如下几种:

表1-1 常用报文分类规则

在一个流分类下可以定义多条匹配规则,多条匹配规则之间有And和Or两种逻辑关系:

  • Or 逻辑:报文只要匹配该流分类下的任何一条规则就属于该类。
  • And 逻辑:当流分类中有ACL规则时,报文必须匹配其中一条ACL规则以及所有非ACL规则才属于该类;当流分类中没有ACL规则时,则报文必须匹配所有非ACL规则才属于该类。

例如,当想创建一个识别VLAN ID为120的报文的流分类规则时,可以通过以下命令来完成配置:

step1 traffic classifier c1 //创建一个名为c1的流分类
step2 if-match vlan-id 120 //在c1流分类下,创建识别VLAN ID为120的报文的规则

流行为

创建流行为,需要确定如下两点:

  • 流行为的名称,用于与流分类进行绑定。可以使用命令traffic behavior创建一个流行为模块。
  • 流行为中的动作。通过流分类对报文进行分类的目的是对不同类型的报文提供不同的服务,而不同的服务需要通过流行为来定义的,在一个流行为中可以定义一个或多个动作。常用的流行为动作包括以下几种:

表1-2 常用流行为动作

例如,当想创建一个流行为对某类报文进行流量监管,限速为4096kbit/s,同时进行流量统计时,可以通过以下命令来完成配置:

step1 traffic behavior b1 //创建一个名为b1的流行为
step2 car cir 4096 //在b1流行为下,设置流量监管规则
step3 statistics enable //在b1流行为下,设置开启流量统计功能

流策略

前面配置的流分类、流行为是孤立的,必须将两者联系在一起才有意义,而流策略就是把两者绑定起来,对分类后的报文执行对应流行为中定义的动作。一个流策略可以绑定多个流分类和流行为。


流策略绑定多个流分类和流行为

例如,可以通过以下命令来绑定流分类c1和流行为b1:

step1 traffic policy p1 //创建一个名为p1的流策略
step2 classifier c1 behavior b1 //绑定流分类c1和流行为b1

应用流策略

配置完成流策略后,判断需要通过流策略控制的业务流量是通过物理接口、VLAN、VLANIF接口,还是全局或单板,从而选择在对应的视图上应用流策略。

例如,可以通过以下命令将p1流策略应用到VLAN视图下,对进入该VLAN的报文实施流策略:

step1 vlan 10 //进入VLAN10的视图
step2 traffic-policy p1 inbound //在VLAN10的入方向应用流策略

流策略的典型应用

如图所示,网络中存在语音、视频和数据这三种不同的业务,当大量的业务流量进入网络侧时,可能会因为带宽不足产生拥塞,需要对不同的业务提供不同的带宽,优先保证语音业务报文的转发,其次是视频业务,最后是数据业务。语音业务对应的VLAN ID为120,视频业务对应的VLAN ID为110,数据业务对应的VLAN ID为100。通过流策略实现流量监管和报文重标记,为语音报文提供最大带宽和最高优先级,视频报文次之,数据报文带宽最小且优先级最低,保证语音报文优先通过,并让Device1上行接口连接的设备Device2能够按照报文的不同优先级分别进行处理,保证各种业务的服务质量。

使用流策略对不同业务流量进行处理

可以采用如下思路配置流策略:

  1. 在Device1上配置基于VLAN ID进行流分类的匹配规则,区分语音、视频和数据报文。
  2. 在Device1上配置流行为,对不同业务流进行流量监管以及重标记优先级。
  3. 使用流策略绑定已配置的流行为和流分类,并应用在Device1的入方向。

step1 配置流分类
traffic classifier c1 //创建一个名为c1的流分类
if-match vlan-id 120 //在c1流分类下,创建识别VLAN ID为120的报文的规则,识别语音流量
traffic classifier c2 //创建一个名为c2的流分类
if-match vlan-id 110 //在c2流分类下,创建识别VLAN ID为110的报文的规则,识别视频流量
traffic classifier c3 //创建一个名为c3的流分类
if-match vlan-id 100 //在c3流分类下,创建识别VLAN ID为100的报文的规则,识别数据流量
step2 配置流行为
traffic behavior b1 //创建一个名为b1的流行为
car cir 3000 //提供最高带宽
remark 8021p 6 //设置最高优先级
traffic behavior b2 //创建一个名为b2的流行为
car cir 2000 //提供中等带宽
remark 8021p 4 //设置中等优先级
traffic behavior b3 //创建一个名为b3的流行为
car cir 1000 //提供最低带宽
remark 8021p 2 //设置最低优先级
step3 配置流策略
traffic policy p1 //创建一个名为p1的流策略
classifier c1 behavior b1 //绑定流分类c1和流行为b1
classifier c2 behavior b2 //绑定流分类c2和流行为b2
classifier c3 behavior b3 //绑定流分类c3和流行为b3
step4 应用流策略
traffic-policy p1 inbound //在Device1的入接口应用流策略


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 22:34:43

高通6490另类使用场景

之前和朋友在闲聊的时候,朋友提出用他是否可以做3D游戏引擎的使用,比如用芯片矩阵,或阵列服务器的方式。仔细想想其实是有机会的。有机会基于高通QCS6490芯片平台(假设您指的是Qualcomm QCS6490 SoC,这是一个常见的边缘计算和IoT处理器)组成芯片矩阵来运行Unity 3D引擎。…

作者头像 李华
网站建设 2026/8/27 16:56:02

C++ 构造函数

一、构造函数的核心定义构造函数是 C 类中一种特殊的成员函数,它的名字和类名完全相同,没有返回值(连 void 都不需要写)。当你创建类的对象时,构造函数会自动被调用,主要用来完成对象的初始化工作&#xff…

作者头像 李华
网站建设 2026/8/27 20:09:19

【光子AI】 FastAPI 极简教程 3

FastAPI 极简教程 文章目录 FastAPI 极简教程 目录 1. FastAPI 简介 1.1 什么是 FastAPI? 1.2 核心技术栈 2. 环境安装与配置 2.1 安装 Python 2.2 创建虚拟环境 2.3 安装 FastAPI 2.4 推荐的开发依赖 3. 第一个 FastAPI 应用 3.1 Hello World 3.2 运行应用 3.3 自动生成的文档…

作者头像 李华
网站建设 2026/9/2 23:02:17

Thinkphp和Laravel框架的简历智能推荐系统_jw8dzu00

目录ThinkPHP与Laravel框架的简历智能推荐系统技术实现要点部署与优化项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理ThinkPHP与Laravel框架的简历智能推荐系统 简历智能推荐系统是一种基于人工智能技术的招聘辅助工具,旨在通过分析求…

作者头像 李华
网站建设 2026/8/24 5:58:30

「从零到一」我用 Node BFF 手撸一个 Vue3 SSR 项目(附源码)

本文介绍如何使用 Node.js 作为中间层(BFF),结合 Vue 3 和 Vite 实现服务端渲染(SSR)。 为什么需要 SSR? 在传统的单页应用(SPA)中,浏览器首先加载一个空白的 HTML&…

作者头像 李华
网站建设 2026/8/30 10:16:10

JavaWeb相关环境安装

这篇博客我们讲一下JavaWeb相关得环境安装,用来后续完成前后端的项目部署。 1,JDK 1,下载安装包 下载安装包大家可以去官网进行下载,为了方便起见大家可以直接通过我提供的链接进行下载:JDK安装包,将下载后…

作者头像 李华