在具体接口下执行以下命令:

rate-limit input 2048000 8000 16000 conform-action transmit exceed-action drop

rate-limit output 2048000 8000 16000 conform-action transmit exceed-action drop

释义:

2048000----Bits per second
BPS:比特/秒 (BITS PER SECOND):信息传输的比特率。

8000----Normal burst bytes
正常突发流量

16000----- Maximum burst bytes
最大突发流量

conform-action-----符合规则的所采取的动作为

transmit -----传输

exceed-action------超越范围的所采取的动作为

drop-----丢弃

 

 


在Cisco设备中,只有支持思科快速转发(CEF,Cisco Express Forward)的路由器或交换机才能使用rate-limit来限制流量,具体设置分三步

1. 在全局模式下开启cef:
configure terminal
Router(config)#ip cef
2. 定义标准或者扩展访问列表(定义一个方向就可以了):
Router(config)#access-list 111 permit ip 192.168.1.0 0.0.0.255 any
3. 在希望限制的端口上进行rate-limit:
Router(config)#interface FastEthernet 0/1
Rounter(config-if)#rate-limit input access-group 111 2000000 40000 60000 conform-action transmit exceed-action drop

这样我们就对192.168.1.0网段进行了限速,速率为2Mbps。注意,是对整个网段,因为你定义的ACL就是针对整个网段的。

rate-limit命令格式:

#rate-limit {input|output} [access-group number] bps burst-normal burst-max conform-action action exceed-action action

input|output:这是定义数据流量的方向。

access-group number:定义的访问列表的号码。

bps:定义流量速率的上限,单位是bps。

burst-normal burst-max:定义的数据容量的大小,一般采用8000,16000,32000,单位是字节,当到达的数据超过此容量时,将触发某个动作,丢弃或转发等,从而达到限速的目的。

conform-action和exceed-action:分别指在速率限制以下的流量和超过速率限制的流量的处理策略。

action:是处理策略,包括drop和transmit等

 

 


企业对网络性能的需求

 

  在全球信息化进程明显加快,人类社会从工业社会向信息社会演进的今天,企业对网络性能的要求与日俱增。企业要在网络上传输各类数据,包括日常业务数据包、电子文件、数据仓库数据、图形图象数据等,网络管理员开始发现企业有限的网络带宽经常发生网络阻塞和拥挤。一般而言,网络上传输的数据可分为两大类:一类是关键业务数据,另一类是非关键业务数据,网络带宽必须优先满足关键业务数据的传输。也就是说网络设备要能够区分来自不同应用的数据包,然后优先发送来自关键业务的数据包,在网络带宽允许的条件下,再发送来自非关键业务的数据包,从而达到网络有效合理地使用。
  下面以Cisco路由器为例,分析关键业务数据包优先发送的机制。

 

Cisco路由器中的优先机制

 

  在Cisco路由器优先机制中,优先级别可分为High、Medium、Normal、Low四级,当不同级别的数据包需要同时从一个物理通信口出去,发生抢占带宽时,出现“插队”现象:High优先级别的数据包将优先于其它级别的数据包而被发送,Medium优先级别的数据包将优先于Normal和Low级别的数据包而被发送,依此类推;同级别的数据包发生抢占带宽时,出现“管道”现象:先进先发,后进后发。
  配置时,首先通过路由器配置命令priority-list定义优先组号,定义优先组号有四种方式

  其次,使用路由器配置命令priority-group设置特定通信口符合某一优先组号。
示 例
  设有两台Cisco路由器A和B,各有三个以太口e0、e1、e2和一个高速同步串口s0,其连接方式如上图:
  在路由器B上,假设以太口e0的IP地址为98.1.1.1、e1的IP地址为98.1.1.2、e2的IP地址为98.1.1.3,它们分别通过以太网与相应的前置机相连;同步串口s0的IP地址为202.1.1.1;子网掩码全部为255.255.255.0。
  在路由器A上,假设以太口e0的IP地址为98.1.1.11、e1的IP地址为98.1.1.12、e2的IP地址为98.1.1.13,它们分别通过以太网与相应的服务器相连;同步串口s0的IP地址为202.1.1.11;子网掩码全部为255.255.255.0。
  业务应用前置机用于完成该企业的关键业务,它要时时地与业务应用服务器交换数据,该应用模式是基于TCP/IP协议的C/S模式,其端口号是3333。
  telnet前置机用于用telnet命令访问telnet服务器。
  ftp前置机用于用ftp命令从ftp服务器获取文件。
  如此,Router A 和 Router B 的通常配置为:
Router A:
Current configuration:
!
interface Ethernet0
 ip address 98.1.1.11 255.255.255.0
!
interface Ethernet1
 ip address 98.1.1.12 255.255.255.0
!
interface Ethernet2
 ip address 98.1.1.13 255.255.255.0
!
interface Seria10
 ip address 202.1.1.11 255.255.255.0
!
router eigrp 1
network 98.1.1.0
network 202.1.1.0
!
snmp-server community public RO
snmp-server community private RW
!
end
Router B:
Current configuration:
!
interface Ethernet0
  ip address 98.1.1.1 255.255.255.0
!
interface Ethernet1
 ip address 98.1.1.2 255.255.255.0
!
interface Ethernet2
 ip address 98.1.1.3 255.255.255.0
!
interface Seria10
 ip address 202.1.1.1 255.255.255.0
!
router eigrp 1
network 98.1.1.0
network 202.1.1.0
!
snmp-server community public RO
snmp-server community private Rw
!
end
  要求:由于DDN专线的速度有限,因此必须使用路由器的优先机制来合理使用DDN。希望把业务应用数据包的优先发送权设为high,telnet数据包的优先权设为medium,ftp数据包的优先权设为low,其它数据包设为normal。下面将通过三个例子来说明满足该要求的各种方法。
  例1:使用Priority-list list-number interface interface-type interface-number {high|medium|normal|low}命令设置数据包的优先级别。为满足上述要求增加如下设置:
  在Router A 和 Router B上分别作如下配置:首先分别对Ethernet0、Ethernet1、Ethernet2、Seria10口配置,加上priority-group 1,然后在公共配置加上:
Priority-list 1 interface Ethernet 0 high
Priority-list 1 interface Ethernet 1 medium
Priority-list 1 interface Ethernet 2 low
Priority-list 1 default normal
  例2:使用Priority-list list-number protocol protocol-name {high|medium|normal|low}queue-keywork keyword-value 命令设置数据包的优先级别。
  在该命令中,protocol-name 可取下列值之一:arp、bridge、cdp、compressedtcp、ip、llc2、pad、snapshot,这里假设取ip;对应ip,queue-keywork可取下列值之一:fragments、gt、list、lt、tcp、udp、<cr>,其中gt、lt是按ip包的大小包来设置,list是按ip访问列表来设置,tcp、udp是按ip端口号来设置,<cr>是对所有的ip包来设置,这里假设取tcp,对应tcp,keyword-value是端口号(port number)。为满足上述要求增加如下设置:
  在Router A 和Router B 上分别作如下配置:首先分别对Ethernet0、Ethernet1、Ethernet2、 Seria10口配置,加上priority-group 1,然后在公共配置加上:
Priority-list 1 protocol ip high tcp 3333
Priority-list 1 protocol ip medium tcp telnet
Priority-list 1 protocol ip low tcp ftp
Priority-list 1 default normal
  例3:使用Priority-list list-number queue_limit high-limit medium-limit normal-limit low-limit命令设置数据包的优先级别。
  该命令比较简单,首先用queue-list按要求定义四个队列,假设队列1是业务应用包、队列2是telnet包、队列4是ftp包、队列3是其它包,这样为满足上述要求增加如下设置:
  在 Router A 和 Router B 上分别作如下配置:首先分别对Ethernet0、Ethernet1、Ethernet2、Seria10口配置,加上priority-group 1,在公共配置加上:
Priority-list 1 queue_limit 1 2 3 4

 

 


限制10.7.40.0网络访问主机10.7.20.210的速率为16KB


rate-limit output access-group 110 160000 24000 24000 conform-action transmit exceed-action drop
access-list 110 permit ip host 10.7.20.210 10.7.40.0 0.0.0.255