热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

通过_配置通过流策略实现限速

篇首语:本文由编程笔记#小编为大家整理,主要介绍了配置通过流策略实现限速相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了配置通过流策略实现限速相关的知识,希望对你有一定的参考价值。



技术图片
微信公众号:网络民工

组网图形

技术图片
图1 配置流策略实现限速组网图

简介

流策略中,可以按照ACL对报文进行分类。基于ACL规则定义方式,可以将ACL分为基本ACL、高级ACL、二层ACL等种类。基本ACL根据源IP地址、分片信息和生效时间段等信息来定义规则。对于匹配的流量,在流行为中配置流量监管动作,可以实现限速。

访问控制列表ACL(Access ControlList)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。

组网需求

如图1所示,公司内部有两个部门,分别属于VLAN 10和VLAN 20。VLAN 10主要是一些服务器,对带宽要求比较高;VLAN 20只有公司员工上网,对带宽要求不是很高。公司从运营商购买的是10Mbit/s的专线。要求VLAN 20中的员工上网的带宽限制为2Mbit/s,最大不能超过4Mbit/s,超过4Mbit/s的流量全部丢弃。

配置思路

采用如下的思路配置针对不同网段用户限速:



  1. 创建VLAN,配置各接口和路由协议,实现公司和外部网络互通。



  2. 在Switch上配置ACL,匹配指定网段的流量。



  3. 在Switch上配置流分类,按照ACL对报文进行分类。



  4. 在Switch上配置流行为,对匹配的流量进行限速。



  5. 在Switch上配置流策略,绑定流分类和流行为,并应用到与SwitchA相连的GE1/0/1接口的入方向,实现限速。

操作步骤



  1. 创建VLAN,配置各接口和路由协议


配置Switch。

system-view

[HUAWEI] sysnameSwitch

[Switch] vlanbatch 10 20 30 //创建VLAN 10、VLAN20、VLAN30

[Switch] interfacegigabitethernet 1/0/1

[Switch-GigabitEthernet1/0/1]port link-type trunk //设置接口接入类型为trunk

[Switch-GigabitEthernet1/0/1]port trunk allow-pass vlan 10 20 //将接口划分到VLAN 10和VLAN 20

[Switch-GigabitEthernet1/0/1]quit

[Switch] interfacegigabitethernet 1/0/2

[Switch-GigabitEthernet1/0/2]port link-type access //设置接口接入类型为access

[Switch-GigabitEthernet1/0/2]port default vlan 30 //将接口划分到VLAN 30

[Switch-GigabitEthernet1/0/2]quit

[Switch] interfacevlanif 10 //创建VLANIF接口

[Switch-Vlanif10] ipaddress 192.168.1.1 255.255.255.0 //配置VLANIF接口的IP地址,此IP地址为192.168.1.0/24网段的网关

[Switch-Vlanif10] quit

[Switch] interfacevlanif 20

[Switch-Vlanif20] ipaddress 192.168.2.1 255.255.255.0

[Switch-Vlanif20] quit

[Switch] interfacevlanif 30 //创建VLANIF接口

[Switch-Vlanif30] ipaddress 10.1.20.2 255.255.255.0 //配置VLANIF接口的IP地址,用于与Router互连

[Switch-Vlanif30] quit

[Switch] iproute-static 0.0.0.0 0 10.1.20.1 //配置静态路由指向外网,实现网络互通


配置SwitchA。

system-view

[HUAWEI] sysnameSwitchA

[SwitchA] vlanbatch 10 20 //创建VLAN10和VLAN20

[SwitchA] interfacegigabitethernet 1/0/1

[SwitchA-GigabitEthernet1/0/1]port link-type access //设置接口接入类型为access

[SwitchA-GigabitEthernet1/0/1]port default vlan 10 //将接口划分到VLAN 10

[SwitchA-GigabitEthernet1/0/1]quit

[SwitchA] interfacegigabitethernet 1/0/2

[SwitchA-GigabitEthernet1/0/2]port link-type access

[SwitchA-GigabitEthernet1/0/2]port default vlan 20

[SwitchA-GigabitEthernet1/0/2]quit

[SwitchA] interfacegigabitethernet 1/0/3

[SwitchA-GigabitEthernet1/0/3]port link-type trunk //设置接口接入类型为trunk

[SwitchA-GigabitEthernet1/0/3]port trunk allow-pass vlan 10 20 //将接口划分到VLAN 10和VLAN 20

[SwitchA-GigabitEthernet1/0/3]quit


配置路由器。

配置路由器上与Switch相连的接口的IP地址为10.1.20.1/24。



  1. 配置ACL


在Switch上配置ACL规则,匹配来自192.168.2.0/24网段的流量。

[Switch] acl3000

[Switch-acl-adv-3000]rule permit ip source 192.168.2.0 0.0.0.255

[Switch-acl-adv-3000]quit



  1. 配置流分类


在Switch上配置流分类,按照ACL对报文进行分类。

[Switch] trafficclassifier c1 operator and

[Switch-classifier-c1]if-match acl 3000

[Switch-classifier-c1]quit



  1. 配置流行为


在Switch上配置流行为,对流量进行限速。

[Switch] trafficbehavior b1

[Switch-behavior-b1]car cir 2048 pir 4096 //配置带宽限制为2Mbit/s,最大不能超过4Mbit/s

[Switch-behavior-b1]statistic enable

[Switch-behavior-b1]quit



  1. 配置流策略并应用到接口


在Switch上创建流策略,将流分类和对应的流行为进行绑定,并将流策略应用到与SwitchA相连的接口GE1/0/1的入方向上。

[Switch] trafficpolicy p1

[Switch-trafficpolicy-p1]classifier c1 behavior b1

[Switch-trafficpolicy-p1]quit

[Switch] interfacegigabitethernet 1/0/1

[Switch-GigabitEthernet1/0/1]traffic-policy p1 inbound

[Switch-GigabitEthernet1/0/1]quit



  1. 验证配置结果


查看ACL规则的配置信息。

[Switch] displayacl 3000

Advanced ACL 3000,1 rule

Acl‘s step is 5

rule 5 permit ip source 192.168.2.0 0.0.0.255 (match-counter 0)


查看流策略的配置信息。

[Switch] displaytraffic policy user-defined p1

User Defined Traffic Policy Information:

Policy: p1

Classifier: c1

Operator: AND

Behavior: b1

Permit

Committed Access Rate:

CIR 2048 (Kbps), PIR 4096 (Kbps), CBS 256000 (byte), PBS512000 (byte)

Color Mode: color Blind

Conform Action: pass

Yellow Action: pass

Exceed Action: discard

Statistic: enable

配置文件

· Switch的配置文件

#

sysname Switch

#

vlan batch 10 20 30

#

acl number 3000

rule 5 permit ip source 192.168.2.0 0.0.0.255

#

traffic classifierc1 operator and precedence 5

if-match acl 3000

#

traffic behavior b1

permit

car cir 2048 pir 4096 cbs 256000 pbs 512000mode color-blind green pass yellow pass red discard

statistic enable

#

traffic policy p1match-order config

classifier c1 behavior b1

#

interface Vlanif10

ip address 192.168.1.1 255.255.255.0

#

interface Vlanif20

ip address 192.168.2.1 255.255.255.0

#

interface Vlanif30

ip address 10.1.20.2 255.255.255.0

#

interface GigabitEthernet1/0/1

port link-type trunk

port trunk allow-pass vlan 10 20

traffic-policy p1 inbound

#

interface GigabitEthernet1/0/2

port link-type access

port default vlan 30

#

ip route-static0.0.0.0 0.0.0.0 10.1.20.1

#

return

· SwitchA的配置文件

#

sysname SwitchA

#

vlan batch 10 20

#

interface GigabitEthernet1/0/1

port link-type access

port default vlan 10

#

interface GigabitEthernet1/0/2

port link-type access

port default vlan 20

#

interface GigabitEthernet1/0/3

port link-type trunk

port trunk allow-pass vlan 10 20

#

return
技术图片
微信公众号:网络民工


推荐阅读
  • 配置IPv4静态路由实现企业网内不同网段用户互访
    本文介绍了通过配置IPv4静态路由实现企业网内不同网段用户互访的方法。首先需要配置接口的链路层协议参数和IP地址,使相邻节点网络层可达。然后按照静态路由组网图的操作步骤,配置静态路由。这样任意两台主机之间都能够互通。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 本文由编程笔记#小编整理,主要介绍了关于数论相关的知识,包括数论的算法和百度百科的链接。文章还介绍了欧几里得算法、辗转相除法、gcd、lcm和扩展欧几里得算法的使用方法。此外,文章还提到了数论在求解不定方程、模线性方程和乘法逆元方面的应用。摘要长度:184字。 ... [详细]
  • 本文讨论了微软的STL容器类是否线程安全。根据MSDN的回答,STL容器类包括vector、deque、list、queue、stack、priority_queue、valarray、map、hash_map、multimap、hash_multimap、set、hash_set、multiset、hash_multiset、basic_string和bitset。对于单个对象来说,多个线程同时读取是安全的。但如果一个线程正在写入一个对象,那么所有的读写操作都需要进行同步。 ... [详细]
author-avatar
小小小菜鸡
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有