首頁 資料庫 mysql教程 Cisco committed access rate(CAR)承诺访问速率

Cisco committed access rate(CAR)承诺访问速率

Jun 07, 2016 pm 03:11 PM
access ca cisco

一、CAR概述 CAR是在Cisco环境里最广的使用方法,它在网络边缘入口和出口标记数据包,CAR能实现两种功能的其中之一。 功能1: 速率 限制; 功能2:通过使用IP优先权和QOS组来设置分类数据包; 二、语法: rate-limit { input | output } [ access-group [ ra

一、CAR概述

CAR是在Cisco环境里最广的使用方法,它在网络边缘入口和出口标记数据包,CAR能实现两种功能的其中之一。

功能1:速率限制;

功能2:通过使用IP优先权和QOS组来设置分类数据包;

 

二、语法:

 

rate-limit {input | output} [access-group [rate-limit] acl-indexbps burst-normal burst-max conform-action action exceed-action action

 

input

对进入接口的数据包应用CAR

output

Applies this CAR traffic policy to packets sent on this interface.

access-group

(可选) Applies this CAR traffic policy to the specified access list.

rate-limit

(可选) The access list is a rate-limit access list.

acl-index

(可选) Access list number.

bps

平均速率 ,单位为bps

burst-normal

Normal burst size in bytes. The minimum value is bps divided by 2000.

burst-max

Excess burst size in bytes.

conform-action

对于符合以上速率的要采取行动

action

Action to take on packets. Specify one of the following keywords:

continue—继续,如果有更多的CAR语句,该数据表会被继续处理.

drop—丢弃数据包

set-prec-continue new-prec—设置优先权,然后继续

set-prec-transmit new-prec—设置优先权然后传输

transmit—传输该数据包

exceed-action

超过速率所采取的行动



三、CAR 的局限性

  • CAR只影响IP流量,非IP流量的速率没有限制,也没有标记。
  • CAR不支持以太通道( Fast EtherChannel  )、隧道( Tunnel )、以及ISDN PRI接口
  • 不支持帧中继离得BECN或FECN
  • 需要开启CEF

 

 

 

四、配置示例

 

router(config)# interface Hssi0/0/0

<span><span>!任何<strong>速率</strong>小于20M的www流量、normal burst小于24MB、excess burst小于32MB,设置IP优先级为5,超过规则的www流量设置IP优先级为0(最大努力传输)</span></span>
登入後複製

router(config-if)# <b>rate-limit input access-group 101 20000000 24000 32000    conform-action set-prec-transmit 5 exceed-action set-prec-transmit 0 </b>
登入後複製
<span><span>!小于10M的FTP流量</span></span><span>、normal burst小于24MB、excess burst小于32MB</span><span>,设置IP优先级为5,超过10M的FTP流量被丢弃</span>
登入後複製

router(config-if)# <b>rate-limit input access-group 102 10000000 24000 32000    conform-action set-prec-transmit 5 exceed-action drop </b>
登入後複製
<span><span>!其他小于8Mbps</span></span><span>流量</span><span>、normal burst小于16MB、excess burst小于24MB</span><span>,设置</span><span>设置IP优先级为5,</span><span>normal burst 为16000字节,excess burst 为24000字节,</span><span>超过8mbps的被丢弃,</span>
登入後複製

router(config-if)# <b>rate-limit input 8000000 16000 24000 conform-action    set-prec-transmit 5 exceed-action drop </b>
登入後複製

router(config-if)# <b>ip address 200.200.14.250 255.255.255.252 </b>
登入後複製

<span>!101<strong>访问</strong>控制列表匹配任意www流量,102<strong>访问</strong>控制列表匹配任意FTP流量</span> 
登入後複製

router(config-if)# <b>access-list 101 permit tcp any any eq www </b>
登入後複製

router(config-if)# <b>access-list 102 permit tcp any any eq ftp</b>
登入後複製



四、CAR的运作机制

CAR可以看成是数据包分类识别和流量控制的结合。其工作流程可以从下图指出:

Cisco committed access rate(CAR)承诺访问速率

 

第一步的Traffic Matching是首先从数据流中识别出感兴趣的流量。所谓感兴趣的流量,是指用户希望对其进行流量控制的数据包类型。用户可以选择以下几种不同的方式来进行流量识别:

(1)全部的IP流量,这样可以把所有的IP流量采用统一的流量控制策略。

(2)基于IP前缀,此种方式是通过rate-limit access list来定义的。

(3)QoS 分组

(4)MAC地址,此种方式通过rate-limit  access list来定义。

(5)IP access list,可通过standard或extended access list来定义。

第二步,流量衡量(traffic measurement)。CAR采用一种名为token bucket的机制来进行流量衡量。见下图:

Cisco committed access rate(CAR)承诺访问速率

 

图 中的token可以看成是第一步所识别到的感兴趣流量,该种流量的数据包进入一个bucket(桶)内,该bucket的深度则由用户定义,在进入该 token bucket后,以用户希望控制的流量速率(此流量速率并非该类流量的实际速率,而是用户希望该类流量的速率上限)离开该bucket,执行下一部操作 (conform action)。在这里,对于实际流量速率的不同,可以看到会有两种情况发生:

(1)实际流量小于或等于用户希望速率,这样,明显地,token离开bucket的实际速率将和其来到的速率一样,bucket内可以看作是空的。流量不会超过用户的希望值。

(2) 实际流量大于用户希望速率。这样,token进入bucket的速率比其离开bucket的速率快,这样在一段时间内,token将填满该bucket, 继续到来的token将溢出(excess)bucket,则CAR采取相应的动作(一般是丢弃或将其IP前缀改变以改变该token的优先级)。这样就 保证了数据流量速率保证在用户定义的希望值内。

二、如何配置CAR

一般来说,CAR比较适合部署在网络的边缘部分,我们的一般做法也是在分关路由器上部署CAR。配置CAR主要包括以下几部分:

1.确定“感兴趣”的流量类型,主要通过下列方式确定:

(1)所有的IP流量

(2)基于IP前缀

(3)基于QoS分组

(4)基于MAC地址

(5)基于standard或extended的IP access list

一 般最常用的是第五种方式。用户可以使用standard ip access list来确定哪些进行访问(被访问)的IP的流量需要进行rate-limit,也可以用extended ip access list来确定哪些访问(被访问)的IP的协议类型流量(如HTTP,FTP)需要进行rate-limit。例如我们想限制用户到内部网站上浏览网页的 速度,则可以采用如下的access list来定义流量:

access-list 101 permit tcp any eq www any

这 里值得注意的一点是在配置时要配成any eq www any而不是any any eq www。因为主要的流量不是用户向http server发送的请求(这类请求流量的源端口号为随机,目的端口号为80),而是http server收到用户的请求后发给用户方的网页内容的流量(这部分流量的源端口号为80,目的端口号为发起方的端口号),如果在这个小细节上不加注意则不 能对下载的流量进行有效的限制。

2.在相应的端口配置rate-limit:

一般的写法是:

interface X

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

命令解释如下:

interface: 用户希望进行流量控制的端口,可以是Ethernet也可以是serial口,但是不同类型的interface在下面的input output上选择有所不同,需要注意一下。

Input|output:用户希望限制输入或输出的流量。还是以限制浏览网页为例子,如果在以太网端口配置,则该流量为output;如果在serial端口配置,则该流量为input。

Access-group number: number是前面用户用access list定义流量的access list号码。

Bps:用户希望该流量的速率上限,单位是bps。

Burst-normal、burst-max:这个是指token bucket的大小,一般采用8000,16000,32000这些值,视乎bps值的大小而定。

Conform-action :在速率限制以下的流量的处理策略。

Exceed-action:超过速率限制的流量的处理策略。

Action:处理策略,包括以下几种:

Transmit:传输

Drop:丢弃

Set precedence and transmit:修改优先权然后传输

Set QoS group and transmit:将该流量划入一个QoS group内传输

Continue:不动作,看下一条rate-limit命令中有无流量匹配和处理策略,如无,则transmit

Set precedence and continue:修改优先权然后continue

Set QoS group and continue:划入QoS group然后continue

这 里需要指出的是,在一个interface内,可以配置多条rate-limit命令,如果action里面有continue,则顺序执行下一条 rate-limit命令,若某种流量在continue之后没有被某条rate-limit命令丢弃,则它将进行传输。一个端口最多可配20条 rate-limit命令。

那么对于我们进行http限制的例子,相应的配置为:

interface e0

rate-limit output access-group 101 128000 16000 16000 conform-action transmit exceed-action drop

这里我们把下载的流量定义在128Kbps,token bucket的大小为16000字节。如果把token bucket定得太小(如4000),则用户端的速率将显得不够平滑。

三、如何检查CAR是否在相应端口起了作用

采用命令show interface XX rate-limit可以检查端口XX的CAR实际效果,见如下实例:

Fddi2/1/0

Input

matches: access-group 101

params: 80000000 bps, 72000 limit, 72000 extended limit

conformed 0 packets, 0 bytes; action: set-prec-transmit 5

exceeded 0 packets, 0 bytes; action: set-prec-transmit 0

last packet: 4738036ms ago, current burst: 0 bytes

last cleared 01:02:05 ago, conformed 0 bps, exceeded 0 bps

matches: all traffic

params: 50000000 bps, 64000 limit, 64000 extended limit

conformed 0 packets, 0 bytes; action: set-prec-transmit 5

exceeded 0 packets, 0 bytes; action: set-prec-transmit 0

last packet: 4738036ms ago, current burst: 0 bytes

last cleared 01:00:22 ago, conformed 0 bps, exceeded 0 bps

Output

matches: all traffic

params: 80000000 bps, 80000 limit, 80000 extended limit

conformed 0 packets, 0 bytes; action: transmit

exceeded 0 packets, 0 bytes; action: drop

last packet: 4809528ms ago, current burst: 0 bytes

last cleared 00:59:42 ago, conformed 0 bps, exceeded 0 bps

这里解释一下show interface rate-limit看到的结果。

Matches 是表示该interface配置的traffic matching规则,有多个matches表示该interface配置了多条rate-limit命令,采用了多条matching规则。下面的 params表示该规则定义的各项参数,xxx bps表示设定速率值,limit和extended limit表示token bucket的容量。Conformed x packets,y bytes表示对速率限制内的包数量和字节数,action表示对符合规则的包采用的处理方式;exceeded x packets这行也类似地是表示对超过速率限制的包的数量和字节数,action是其处理方式。下面的last packet是表示最新的到来数据包的是多久前到达的,current burst是当前token bucket内的数据大小,last cleared是最近一次清记数器到现在的时间,conform x bps表示速率限制内的包的实际流量速率,exceed y bps 表示超过部分的速率

我们可以用这条命令检查我们配置CAR的实际效果,如果发现没有conform的流量,则一般情况下是traffic matching的规则设置有问题,又或者是在interface上的input output设得不正确

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1665
14
CakePHP 教程
1423
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
sql if語句怎麼用 sql if語句怎麼用 Apr 09, 2025 pm 06:12 PM

SQL IF 語句用於有條件地執行 SQL 語句,語法為: IF (condition) THEN {語句} ELSE {語句} END IF;。條件可以是任何有效的 SQL 表達式,如果條件為真,執行 THEN 子句;如果條件為假,執行 ELSE 子句。 IF 語句可以嵌套,允許更複雜的條件檢查。

如何解決Vue Axios跨域導致的&quot;Network Error&quot; 如何解決Vue Axios跨域導致的&quot;Network Error&quot; Apr 07, 2025 pm 10:27 PM

解決 Vue Axios 跨域問題的方法包括:服務器端配置 CORS 頭使用 Axios 代理使用 JSONP使用 WebSocket使用 CORS 插件

apache怎麼配置zend apache怎麼配置zend Apr 13, 2025 pm 12:57 PM

如何在 Apache 中配置 Zend?在 Apache Web 服務器中配置 Zend Framework 的步驟如下:安裝 Zend Framework 並解壓到 Web 服務器目錄中。創建 .htaccess 文件。創建 Zend 應用程序目錄並添加 index.php 文件。配置 Zend 應用程序(application.ini)。重新啟動 Apache Web 服務器。

c#多線程的好處有哪些 c#多線程的好處有哪些 Apr 03, 2025 pm 02:51 PM

多線程的好處在於能提升性能和資源利用率,尤其適用於處理大量數據或執行耗時操作。它允許同時執行多個任務,提高效率。然而,線程過多會導致性能下降,因此需要根據 CPU 核心數和任務特性謹慎選擇線程數。另外,多線程編程涉及死鎖和競態條件等挑戰,需要使用同步機制解決,需要具備紮實的並發編程知識,權衡利弊並謹慎使用。

無法以 root 身份登錄 mysql 無法以 root 身份登錄 mysql Apr 08, 2025 pm 04:54 PM

無法以 root 身份登錄 MySQL 的原因主要在於權限問題、配置文件錯誤、密碼不符、socket 文件問題或防火牆攔截。解決方法包括:檢查配置文件中 bind-address 參數是否正確配置。查看 root 用戶權限是否被修改或刪除,並進行重置。驗證密碼是否準確無誤,包括大小寫和特殊字符。檢查 socket 文件權限設置和路徑。檢查防火牆是否阻止了 MySQL 服務器的連接。

如何在Debian上監控Nginx SSL性能 如何在Debian上監控Nginx SSL性能 Apr 12, 2025 pm 10:18 PM

本文介紹如何在Debian系統上有效監控Nginx服務器的SSL性能。我們將使用NginxExporter將Nginx狀態數據導出到Prometheus,再通過Grafana進行可視化展示。第一步:配置Nginx首先,我們需要在Nginx配置文件中啟用stub_status模塊來獲取Nginx的狀態信息。在你的Nginx配置文件(通常位於/etc/nginx/nginx.conf或其包含文件中)中添加以下代碼段:location/nginx_status{stub_status

phpmyadmin漏洞匯總 phpmyadmin漏洞匯總 Apr 10, 2025 pm 10:24 PM

PHPMyAdmin安全防禦策略的關鍵在於:1. 使用最新版PHPMyAdmin及定期更新PHP和MySQL;2. 嚴格控制訪問權限,使用.htaccess或Web服務器訪問控制;3. 啟用強密碼和雙因素認證;4. 定期備份數據庫;5. 仔細檢查配置文件,避免暴露敏感信息;6. 使用Web應用防火牆(WAF);7. 進行安全審計。 這些措施能夠有效降低PHPMyAdmin因配置不當、版本過舊或環境安全隱患導致的安全風險,保障數據庫安全。

使用DICR/YII2-Google將Google API集成在YII2中 使用DICR/YII2-Google將Google API集成在YII2中 Apr 18, 2025 am 11:54 AM

vProcesserazrabotkiveb被固定,мнелостольностьстьс粹餾標д都LeavallySumballanceFriablanceFaumDoptoMatification,Čtookazalovnetakprosto,kakaožidal.posenesko

See all articles