服务质量 (QoS) : QoS 数据包标记

实施Crypto 和 QoS 的参考指南

2015 年 8 月 28 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 4 月 22 日) | 反馈


目录


简介

VPN成长为请包括数据、语音和视频流量,不同类型的流量需要不同处理在网络。服务质量(QoS)和带宽管理功能允许VPN提供时间敏感的应用程序的传输质量例如语音和视频。每数据包被标记识别其有效负载优先级和时间区分,并且流量根据其交付优先级排序并且路由。Cisco VPN解决方案支持各种各样的QoS功能。

本文设计起单个参考作用对于配置Cisco IOS 加密和QoS功能在同一网络或一组路由器的用户。您在IP安全面前将看到输入和输出QoS策略和通用路由封装(GRE)通道基本配置。本文帮助您了解配置任务。使用Cisco路由器,它在限制和已知问题也提供信息,保证增强的IP RTP优先策略服务最佳性能和成功实施。

先决条件

要求

本文档的读者应掌握以下这些主题的相关知识:

  • IPSec技术

对于在IPSec的更多详尽的文档,参考IP安全

使用的组件

本文档不限于特定的软件和硬件版本。

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

IPsec 协议

IPSec协议的详细讨论是超出本文的范围之外。然而,概述在此部分提供。请参阅本文相关信息部分关于更加进一步的IPSec资源。

IPSec定义了网络层验证和加密型号。它包括加密密钥交换建立安全连接和验证和两对等体在加密连接的寿命中协商然后使用的加密协议。

互联网安全协会和密钥管理协议(ISAKMP)协商加密策略并且提供一个普通的框架生成IPSec对等体共享的密钥。ISAKMP协商结果是安全关联(SA)。此示例输出show crypto isakmp policy命令说明在SA的协商时使用的参数:

P5R0#show crypto isakmp policy 
Protection suite of priority 100 
        encryption algorithm:   DES - Data Encryption Standard (56 bit keys). 
        hash algorithm:         Secure Hash Standard 
        authentication method:  Pre-Shared Key 
        
!--- Supports pre-shared keys or a public/private 

		
!--- key mechanism such as RSA.
 
        Diffie-Hellman group:   #1 (768 bit) 
        lifetime:               86400 seconds, no volume limit 
        
!--- Lifetime can be based on time or on the  number of transmitted bytes.
 
Default protection suite 
        encryption algorithm:   DES - Data Encryption Standard (56 bit keys). 
        hash algorithm:         Secure Hash Standard 
        authentication method:  Rivest-Shamir-Adleman Signature 
        Diffie-Hellman group:   #1 (768 bit) 
        lifetime:               86400 seconds, no volume limit

ISAKMP协商导致对等体协商另外的IPSec参数的加密连接(和SA)。这包括用于的实际协议保护IP数据包。特别地,两个加密对等体在此表里协商参数。

参数 选项
IPSec协议集
  • 认证报头(AH)
  • 封装安全有效载荷(ESP)
对于多数应用程序, AH或ESP是满足的。
模式
  • 隧道模式-,当保留并且加密原始IP报头时,插入新,封装IP报头。
  • 传输模式-保留原始IP报头,但是更改Protocol字段对值为51或50反射AH或ESP报头,分别。
当在协商阶段, ISAKMP “自动地后退”对隧道模式,如果传输模式希望时,但是不可能设立。

注意: RFC 2401leavingcisco.com 使用“外面”的术语或“封装”报头描述与隧道模式和“内在”报头的新的IP报头描述原始IP报头。从RFC的报价单:“外面IP报头源地址和目的地址识别“终端”通道(encapsulator和解封包器)。内在IP报头源地址和目的地址识别数据包的原始发送器和收件人, (从此通道的角度),分别”。这些术语用于本文档的剩余部分。

变换集
  • 仅验证的AH。
  • 验证和加密的ESP。

show crypto ipsec sa address命令的输出说明IPSec SA,其中每一由安全参数索引(SPI)识别。例如,连接识别与SPI 0x21A85375 (564679541)使用MD5-HMAC算法AH和DES ESP的。

P5R0#show crypto ipsec sa address 
dest address: 10.1.1.1 

!--- Address of the IPSec peer.
 
   protocol: AH 
      spi: 0x93B90183(2478375299) 
        transform: ah-md5-hmac , 
        in use settings ={Tunnel, } 
        slot: 0, conn id: 2808, flow_id: 405, crypto map: testibm 
        sa timing: remaining key lifetime (k/sec): (4607901/1654) 
        replay detection support: Y 
      spi: 0x21A85375(564679541) 
        transform: ah-md5-hmac , 
        
!--- AH  uses the MD5-HMAC algorithm.
 
        in use settings ={Transport, } 
        slot: 0, conn id: 2812, flow_id: 407, crypto map: testibm 
        sa timing: remaining key lifetime (k/sec): (4607915/1604) 
        replay detection support: Y 

   protocol: ESP 
      spi: 0xDFF0FEC3(3757113027) 
        transform: esp-des , 
        in use settings ={Tunnel, } 
        slot: 0, conn id: 2810, flow_id: 405, crypto map: testibm 
        sa timing: remaining key lifetime (k/sec): (4607901/1654) 
        IV size: 8 bytes 
        replay detection support: Y 
      spi: 0xDB00B862(3674257506) 
        transform: esp-des , 
        
!--- ESP  uses DES.
 
        in use settings ={Transport, } 
        
!--- Transport mode accepted for this flow.
 
        slot: 0, conn id: 2814, flow_id: 407, crypto map: testibm 
        sa timing: remaining key lifetime (k/sec): (4607914/1568) 
        IV size: 8 bytes 
        replay detection support: Y

AH和ESP

以上的表中注明,可以并用AH和ESP独立地或。然而,为了多数应用程序仅一是满足的。对于这两份协议, IPSec不定义了特定安全算法使用。反而,它提供一个开放的框架实现工业标准算法。

使用SHA或MD5散列算法, AH为IP数据包提供严格的完整性和验证。它也提供不可否认性。AH是至少12个字节和说明在此图形。互联网分配号码授权中心(IANA)有分配的协议编号51对AH。因此,在与隧道模式和传输模式的一个AH报头面前, IP报头在Protocol字段使用值为51。

此图形显示一数据包的格式有IPSec的AH。使用隧道模式,服务类型(ToS)字节值从原始IP报头自动地复制到隧道报头。欲知更多信息,请参阅本文的分类数据包部分。

/image/gif/paws/18667/crypto_qos_01.gif

ESP包括已加密数据和一已加密报尾跟随的未加密的报头。ESP提供加密和验证。如同AH, ESP支持验证的SHA和MD5散列算法。它支持DES和3DES作为加密协议。ESP报头是至少8个字节和说明在此图形。IANA有分配的协议编号50对ESP。因此,在(只)与隧道模式和传输模式的一ESP报头面前, IP报头在Protocol字段使用值为50。

此图形显示一数据包的格式用IPSec ESP报头和报尾。使用隧道模式, Tos字节值从原始IP报头自动地复制到隧道报头。欲知更多信息,请参阅本文的分类数据包部分。

/image/gif/paws/18667/crypto_qos_02.gif

以IPSec使用GRE隧道

IPSec不支持组播或非IP数据流,例如互联网络信息包交换(IPA)和AppleTalk。IPSec不支持组播的事实意味着不能传播是组播类似EIGRP的路由协议信息(224.0.0.10)和OSPF (224.0.0.5和224.0.0.6)。GRE用于封装组播数据流。这可能由IPSec然后加密,以便路由协议流量能在VPN间流。对于IPSec和GRE配置示例,参考配置在IPSec的一GRE隧道与OSPF

GRE隧道报头介绍封装第二级。如果不使用GRE隧道和仅IPSec,参考在GRE隧道接口的服务质量选项。用IPSec、GRE和原始IP报头说明数据包封装的此图:

/image/gif/paws/18667/crypto_qos_03.gif

分类数据包

分类定义了匹配数据包的Layer2, 3个或者4个报头然后安置的该数据包一个或更多字段进程在组或流量等级。在数据包分类,您帮助下能分区网络流量到多个优先级级别或业务类别。

当您配置与GRE时的IPSec,最简单的分类方法将匹配在IP优先级或差分服务代码点值。Cisco IOS软件版本11.3T介绍的支持IPSec的和与它一起Tos字节保存功能。使用此功能,当使用时,路由器自动地复制从原始IP数据包的Tos报头值到封装的IP报头在隧道模式的IPSec。

Cisco PIX防火墙版本5.1和以上和VPN 3000系列集中器版本3.5和以上支持Tos字节复制。部分5.1.2, “隧道模式的报头建筑”,在RFC 2401leavingcisco.com 要求复制IP TOS位。

Tos字节保存也适用于AH。并且请注意在传输模式的ESP保留原始IP报头,没有Tos字节保存,并且原始Tos值传送的。

如果数据包到达在路由器,不用set ip precedence或DSCP值,您能标记基于类在加密或封装前重新标明信息包报头。当数据包到达出口接口时, QoS输出策略在引人注目的价值能然后配比和操作。

当您配置根据IP优先级时的QoS策略,两项策略应用。

策略的类型 策略的操作 策略位置
输入 标记在原始IP报头的IP优先级。 入口接口
输出 提供最低带宽保证给IP优先级区分的流量等级。 出口接口

此表显示根据IP优先级的QoS策略的一配置:

基于TOS的QoS
输入策略
access-list 150 permit tcp any any eq www
access-list 150 permit tcp any eq www any
access-list 151 permit tcp any any eq telnet
access-list 151 permit tcp any eq telnet any 
!
class-map match-any ingress-web
  match access-group 150
class-map match-any ingress-telnet
  match access-group 151
!
policy-map setToS
  class ingress-web
   set ip precedence 1
  class ingress-telnet
   set ip precedence 2
!
interface ethernet 0/0
  service-policy in setToS
输出策略
class-map match-any egress-web
  match ip precedence 1
class-map match-any egress-telnet
  match ip precedence 2
!
policy-map useToS
  class egress-web
    bandwidth percent 25
  class egress-telnet
    bandwidth percent 15
!
interface serial 1/0
  bandwidth 512
  service-policy out useToS
  crypto-map TEST

虽然没显示,您能也应用加权随机早期检测(WRED)到每类作为备选丢弃机制到尾部丢弃。

被重新标明的IP优先值完成网络。因此,请确保您通过您的QoS域实现一致的策略避免意外的分类和性能。

交替地,您可以要分类根据值的流量除IP优先级或DSCP之外。例如,您可以要分类根据Ip流或第3层信息的数据包,例如源和目的地IP地址。要执行此,您必须使用VPN的QoS功能。此功能用qos pre-classify命令启用并且是可用的为思科7100系列VPN路由器和思科7200系列路由器从Cisco IOS软件版本12.1(5)T和为2600和3600系列路由器从Cisco IOS软件版本12.2(2)T。参考配置虚拟专用网络的Qos

qos pre-classify机制允许Cisco路由器做复制内在IP报头和在根据内在IP报头的字段的加密前运行QoS分类。没有此功能,分类引擎看到单个只已加密和被建立隧道的流,因为在拥塞情形下,横在同一个通道间把同一个隧道报头并且得到同一治疗的所有信息包。

如果您的分类策略配比与Tos字节,您不需要使用qos pre-classify命令默认情况下,因为Tos值复制对外面报头。您能创建排序流量到根据IP优先级的类的简单QoS策略。然而,区分在类内的流量和分离它到多个基于流的队列, qos pre-classify命令要求。

注意: Tos字节复制完成由隧道机制和不由qos pre-classify命令

qos pre-classify命令在您的配置方面可以应用在多种点,如说明此处。

  • 仅GRE -配置qos pre-classify命令在隧道接口。

    interface Tunnel0
      ip address 1.1.1.1 255.255.255.252
      qos pre-classify
      tunnel source 12.2.2.8
      tunnel destination 12.2.2.6
    !
    interface serial 0/0
      ip address 12.2.2.8 255.255.255.0
      fair-queue
  • 仅IPSec -配置qos pre-classify命令在加密映射下。

    crypto map TEST 10 ipsec-isakmp
      set peer 5.5.5.5
      set transform-set SET
      match address Test
      qos pre-classify
    !
    interface serial 0/0
      ip address 5.5.5.4 255.255.255.0
      crypto map TEST
      random-detect
      random-detect flow
  • IPSec和GRE -配置qos pre-classify命令在隧道接口和在加密映射下。

    crypto map TEST 10 ipsec-isakmp
      set peer 12.2.2.6
      set transform-set SET
      match address Test
      qos pre-classify
    !
    interface Tunnel0
      ip address 1.1.1.1 255.255.255.252
      qos pre-classify
      tunnel source 12.2.2.8
      tunnel destination 12.2.2.6
      crypto map TEST
    !
    interface serial 0/0
      ip address 12.2.2.8 255.255.255.0
      service-policy out matchPORTnumbers
      crypto map TEST

完成这些步骤配置与IPSec和GRE的QoS事前分类。

  1. 配置加密映射并且指定qos pre-classify命令在映射配置模式。

    crypto map cryptomap_gre1 10 ipsec-isakmp
    	set peer 172.32.241.9
    	set transform-set transf_GRE1_transport
    	match address 130
    	qos pre-classify
  2. 请使用show crypto map命令确认您的配置。

    2621vpn1#show crypto map
    Crypto Map: "cryptomap_gre1" idb: Loopback0 local address: 172.31.247.1
    Crypto Map "cryptomap_gre1" 10 ipsec-isakmp
            Description: Crypto map on GRE1 tunnel mode transport - 10.240.252.0->3/30
            Peer = 172.32.241.9
            Extended IP access list 130
                access-list 130 permit gre host 172.31.247.1 host 172.32.241.9
            Current peer: 172.32.241.9
            Security association lifetime: 4608000 kilobytes/3600 seconds
            PFS (Y/N): N
            Transform sets={ transf_GRE1_transport, }
            QOS pre-classification
  3. 定义GRE隧道接口并且适用加密映射qos pre-classify命令。

    interface Tunnel0
    ip address 10.240.252.1 255.255.255.252
    qos pre-classify
    tunnel source Loopback0
    tunnel destination 172.32.241.9
    crypto map cryptomap_gre1
  4. 请使用show interface tunnel 0命令确认QoS事前分类启用。

    2621vpn1#show interface tunnel 0
    Tunnel0 is up, line protocol is up
      Hardware is Tunnel
      Description: VPN resilience test - 1st GRE tunnel Interface mode transport - 10.240.252.0->3/3
      Internet address is 10.240.252.1/30
      Tunnel source 172.31.247.1 (Loopback0), destination 172.32.241.9
      Tunnel protocol/transport GRE/IP, key disabled, sequencing disabled
      Checksumming of packets disabled,  fast tunneling enabled
      Last input 00:00:04, output 00:00:04, output hang never
      Last clearing of "show interface" counters 00:00:51
      Queueing strategy: fifo (QOS pre-classification)
      Output queue 0/0, 0 drops; input queue 0/75, 0 drops

上述输出说明隧道接口继续使用启用的先入先出(FIFO)作为的排队策略与QoS事前分类和理想的排队机制。这在与线路排队策略的show命令输出中说明:fifo (QOS预分类)。GRE和IPSec隧道要求FIFO队列,因为目的地设备丢弃到达故障中的IPSec信息包。

在VPN环境,您能运用QoS服务策略到隧道接口或到基础物理接口。决策您是否需要配置qos pre-classify命令依靠哪个报头,并且哪些报头值您要使用分类。

  • 如果要分类根据内部头标的数据包,请运用策略对隧道接口,不用qos pre-classify命令

  • 如果要分类根据外面报头的数据包,请运用策略对物理接口,不用qos pre-classify命令

  • 如果要分类根据内部头标的数据包和运用策略到物理接口,因为物理接口可能是拥塞点,请运用策略对物理接口并且启用qos pre-classify命令

在2002年5月,思科推荐分级策略的应用程序给在VPN环境的物理接口。参考的数据流策略作为QoS策略(层次化数据流策略)示例。在此配置中,父策略在属于该通道并且使用shape命令限制通道的输出的所有流量包括每个通道一类分类或配比。流的分类在通道里面在子策略帮助下应用,并且可以内在IP报头用qos pre-classify命令或根据外面IP报头,不用qos pre-classify命令。保证在shape命令的指定的带宽值其中每一个通道的父策略不过度预定接口速率。

这是步骤对此配置。

  1. 创建子策略的类。例如,如果那些值在通信流,已经设置请选择匹配在特定DSCP或IP优先级值。

    class-map ef 
      match ip dscp ef 
    class-map af 
      match ip dscp af31
  2. 创建子策略地图。指定您在步骤1.使用运用QoS操作对那些类的类。示例的这样操作包括优先级队列的规格用priority命令或一最低带宽保证的规格用bandwidth命令

    policy-map QoS 
      class ef 
        priority percent a% 
      class af 
        bandwidth percent b%
  3. 创建父策略的类。请使用访问列表命令指定通过匹配分类特定的隧道所有流量在隧道源及目的地IP地址的ACL。然后请创建类映射并且请使用match access-group命令参考ACL。

    class-map class-tunnel1 
      match access-group 101 
    class-map class-tunnel2 
      match access-group 102 
    class-map class-tunnel3 
      match access-group 103
  4. 创建父策略地图。指定您在步骤3.使用实施shape命令对每类限制所有流量输出来自隧道接口的类。

    policy-map main 
      class class-tunnel1 
        shape average x1 bps 
        service-policy QoS 
      class class-tunnel2 
        shape average x2 bps 
        service-policy QoS 
      class class-tunnel3 
        shape average x3 bps 
        service-policy QoS 
      class class-default 
        shape average x4 bps
  5. 应用父策略地图对物理接口在service-policy命令帮助下

    interface serial 1/0 
      service-policy out main

注意: 如果您的应用程序要求在IPSec或IPSec的QoS事前分类与GRE环境,请启用qos pre-classify命令在加密映射。父类的匹配标准应该是由加密映射使用的同一访问组。在示例中, class-tunnel1的匹配标准使用访问组和加密映射一样,您附加对物理接口或GRE隧道接口。思科支持基于软件的加密和基于硬件的加密,亦称加密加速器。此表列出思科的crypto硬件加速器和支持事前分类的:

平台 加密硬件 QoS预先分类支持
Cisco 1700 系列 线速VPN通过硬件加密。 Cisco IOS软件版本12.2T在crypto前的支持低延迟排队(LLQ)。
Cisco 2600和3600系列 Cisco 2600系列支持一内部高级综合模块选项(AIM) slot。Cisco 3660支持两AIM slot。
  • AIM-VPN/BP (基本性能)
  • AIM-VPN/EP (增强的性能)
  • AIM-VPN/MP (中间性能)
  • AIM-VPN/高性能(HP)
Cisco 2600和3600系列Cisco 2600及3600 VPN路由器Bundles的Cisco 7200系列路由器首要的用户预定设备应用程序模块化多业务路由器虚拟专用网络模块
联机,自Cisco IOS软件版本12.2(2)T。
Cisco 7100及7200系列 SA-VAM是VPN加速模块。它在端口在Cisco 7200或7100系列的适配器slot在Cisco 7100系列的服务模块slot安装并且安装。 Cisco IOS软件版本12.2T在加密性能前支持LLQ。
Cisco 7100及7200系列 SA-ISA (=)和SA-ISM (=)分别为综合业务适配器和集成服务模块。 在Cisco IOS软件版本12.2、12.2T、12.1E和12.0(5)XE的联机。

当您修改数据包交换路径在路由器里面时, QoS策略行为在硬件加密面前更改。使用硬件加密,在出站接口前,排队CPU重定向数据包到加密模块。因此,在与GRE环境的IPSec与硬件加密,有两潜在拥塞点:

  • 加密队列—支持仅FIFO。当您使用crypto时的硬件或的软件,对延迟敏感的信息包,例如VoIP实时传输协议(RTP)数据流,您可以遇到在封装过程的单个FIFO队列的若干延迟。此延迟增加,当对延迟敏感的信息包到达,当队列已经拿着很多数据流。要最小化所有影响,请选择与适当地被扩展的体系结构和使用硬件加速的一个Cisco路由器系列。如果加密引擎没有拥塞,则不提出问题有加密引擎的FIFO,除非FIFO太小以至于不能吸收流量突发。如果通过加密引擎运行VoIP,您可以要通过引擎了解延迟。

  • 接口级别队列—支持精致排队方法。默认情况下,隧道接口是与9 Kbps带宽参数的一个逻辑接口。此带宽参数由上层协议仅使用例如EIGRP和OSPF。它实际上不限制通道流量能使用的输出速率或接口带宽。因此,您可能需要实现在隧道接口的基于等级的整形创建“人为”拥塞队列或整形队列。基于等级的整形限制输出速率并且导致逻辑隧道接口的一个拥塞的状态。隧道接口然后开始排队由成型机保持的多余数据包,并且您的理想的排队机制策略适用于多余数据包。

硬件加密引擎支持仅FIFO队列。因此,如果运用与LLQ的一个服务策略在隧道流量传送的出口物理接口,请保证IPSec处理性能比输出接口极大。这允许接口的优先级排队机制是有效的和避免把加密引擎变成FIFO瓶颈。

在Cisco IOS软件版本12.1,常见分类介绍保证数据包配比对在策略映射(参考的服务质量运算顺序的单个类欲知更多信息)。在VPN环境,此增强一种结果是加密流量运输流量的分类在IPSec隧道内的发生故障,既使当服务策略指定匹配在IP优先级或在隧道报头的DSCP值。此问题在Cisco Bug ID CSCdw90486 (仅限注册用户)和CSCdx08427 (仅限注册用户)的Cisco IOS软件版本12.2(10)被解决。在包括的Cisco IOS软件版本中更改实现由于这些bug,分类行为用硬件和软件加密当前一致。

此表描述MQC功能行为有和没有QoS事前分类在修正以后。对于不支持事前分类也没有启用的事前分类的平台,在“没有预分类”列的MQC行为预计。同样定义在本文中用于内在和外面报头再用于此表。

预分类 没有预分类
硬件加密加速器和CEF
常见分类 里面 从外部
集合police命令 里面 从外部
排队 里面 从外部
基于流的WFQ 里面 从外部
硬件加密加速器和进程交换
常见分类 里面 从外部
集合police命令 在(1)里面 从外部
排队 里面 从外部
基于流的WFQ 里面 从外部
软件加密和CEF
常见分类 里面 从外部
集合police命令 里面 从外部
排队 里面 从外部
基于流的WFQ 里面 从外部
软件加密和进程交换
常见分类 里面 从外部
集合police命令 在(1)里面 从外部
排队 里面 从外部
基于流的WFQ 里面 从外部

注意: 虽然police act命令在preclassified分类,数据包标记仅发生在外面报头。

配置示例

此配置示例说明命令创建IPSec的QoS服务策略与GRE环境。

  • GRE隧道联络IPSec对等体,并且隧道信息包在IPSec帮助下加密。

  • 创建应用基于分类的营销对set ip precedence的输入策略。

  • 创建对最大带宽限制每加密隧道使用基于等级的整形并且通过基于类的加权公平排队的输出策略(CBWFQ)应用最低带宽保证。

输入策略

完成这些步骤创建应用基于分类的营销的输入策略。

  1. 使用 ip cef 命令启用 CEF。CEF为基于分类的营销要求。什么时候参考为服务质量要求的CEF ?

  2. 定义排序流量到类的标准。此配置定义了类“高流量”为Telnet流量和类“低流量”为ICMP流量。

  3. 定义策略映射并且定义QoS操作对定义的类别。

  4. 运用您的策略对接口。在这种情况下,它是串行子接口。

此表显示基于分类的营销输入策略的一配置。

基于分类的营销输入策略
ip cef 

! 
class-map match-any flow-low 
 match protocol icmp  
! 
class-map match-any flow-hi 
  match protocol telnet 

! 
policy-map qos-in 
 class flow-hi  
  set ip precedence 4 
! 
class flow-low 
  set ip precedence 2 
! 
int s0/0.1 
 service-policy input qos-in 

  
router#show policy-map interface s0/0.1 

Serial0/0.1  

Service-policy input: qos-in) 

!--- Apply input policy named "qos-in."
 

     Class-map: flow-hi (match-any) 
      447 packets, 227851 bytes 
      30 second offered rate 5000 bps, drop rate 0 bps  

!--- Input rate for class named "flow-hi."
 

      Match: protocol telnet 
        447 packets, 227851 bytes 
        30 second rate 5000 bps 

!--- Input rate for class named "flow-hi."
 
      QoS Set 
        ip precedence 4 
          Packets marked 447  

!--- Number of packets marked.
  

   Class-map: flow-low (match-any 
      237 packets, 337898 bytes 
      30 second offered rate 21000 bps, drop rate 0 bps 
      Match: protocol icmp 
        237 packets, 337898 bytes 
        30 second rate 21000 bps 
      QoS Set 
        ip precedence 2 
          Packets marked 237  

    Class-map: class-default (match-any) 

!--- The default class is automatically defined.
 
      1 packets, 48 bytes 
      30 second offered rate 0 bps, drop rate 0 bps 
      Match: any

输出策略

此配置创建一个分层的输出策略,亦称嵌套策略(参考的数据流策略作为QoS策略(层次化数据流策略)示例欲知更多信息)。“parent”策略应用基于等级的整形限制隧道接口的整体输出速率,并且“儿童”策略应用最低带宽保证使用CBWFQ对排队的超出部分。

这些是此配置的步骤。

  1. 创建子策略。

    • 此配置定义了类“ipsec-hi”被重新标明的Telnet流量的和类“ipsec-low”被重新标明的ICMP流量的。

    • 使用bandwidth命令,此配置使用策略映射“ipsec-flow”应用CBWFQ到Telnet和ICMP流量。

  2. 创建父策略。此配置定义了匹配流量对16 Kbps的类“ipsec”和形状。

  3. 运用在父策略内的子策略。此配置运用子策略“ipsec-flow”作为在父策略“qos-out内的QoS操作”。QoS操作是CBWFQ到成型机保留和排队的数据包。

  4. 运用父策略对接口。在这种情况下,它是串行子接口。

此表显示输出策略的一配置能根据引人注目的价值整形和应用CBWFQ。

Shaping和CBWFQ出局策略
class-map match-all ipsec-hi 
  match ip precedence 4  
class-map match-all ipsec-low 
  match ip precedence 2  
! 
policy-map ipsec-flow  
  class ipsec-hi 
   bandwidth 8  
  class ipsec-low 
   bandwidth 8 
! 
class-map match-all ipsec  
 match protocol gre 
!  
policy-map qos-out 
 class ipsec 
  shape average 16000 
   service-policy ipsec-flow 
! 
int fa0/0 
 service-policy output qos-out

!--- Apply the policy to the physical interface through
 

!--- which the tunnel traffic is transmitted.
 
router#show policy-map interface fast 0/0 
 FastEthernet0/0  

  Service-policy output: qos-out  

!--- "Parent" policy named "qos-out."
 

    Class-map: ipsec (match-all)  
      1422 packets, 1390125 bytes 
      30 second offered rate 38000 bps, drop rate 0 bps  

!--- Egress rate before shaping.


      Match: protocol gre  
      Traffic Shaping 

      Target  Byte   Sustain   Excess    Interval  Increment Adapt 
      Rate    Limit  bits/int  bits/int  (ms)      (bytes)   Active 
      16000   2000   8000      8000      500       1000      - 
  

      Queue  Packets   Bytes   Packets  Bytes     Shaping 
      Depth                     Delayed  Delayed   Active 
        69     641      611106  582      535364    yes  

  Service-policy : ipsec-flow  

!--- "Child" policy named "ipsec-flow." 


        Class-map: ipsec-hi (match-all)  
          788 packets, 464485 bytes 
          30 second offered rate 15000 bps, drop rate 0 bps 
          Match: ip precedence 4  
          Weighted Fair Queueing 
            Output Queue: Conversation 25  
            Bandwidth 8 (kbps) Max Threshold 64 (packets) 
            (pkts matched/bytes matched) 389/241922 
            (depth/total drops/no-buffer drops) 4/0/0 

        Class-map: ipsec-low (match-all)  
          634 packets, 925640 bytes 
          30 second offered rate 25000 bps, drop rate 0 bps 
          Match: ip precedence 2  
          Weighted Fair Queueing 
            Output Queue: Conversation 26  
            Bandwidth 8 (kbps) Max Threshold 64 (packets) 
            (pkts matched/bytes matched) 270/400140 
            (depth/total drops/no-buffer drops) 64/2/0 

        Class-map: class-default (match-any)  
          0 packets, 0 bytes 
          30 second offered rate 0 bps, drop rate 0 bps 
          Match: any  

       Class-map: class-default (match-any)  
         115 packets, 14827 bytes 
         30 second offered rate 0 bps, drop rate 0 bps 
         Match: any

注意: 父策略使用match protocol gre命令指定匹配在协议值分配到在IP报头的GRE。基于大约Cisco IOS功能的执行, ACL和QoS功能看到未加密数据包。因此,在AH或ESP协议值配比ACL的配置(51和50,分别)不工作(Cisco Bug ID CSCdu63385 (仅限注册用户)和CSCdv20737 (仅限注册用户))。此限制应用对两硬件和软件加密。偶然地,分类根据加密的信息包已修改IP报头的数据包的QoS功能在为CEF交换配置的路由器的。原因是CEF数据包实际上是交换的进程,当crypto代码和CEF不可能错误找出有效CEF邻接。

注意: 如果在类映射在非IP协议在内部头标的值使用match protocol命令匹配,例如IPX和AppleTalk,并且使qos pre-classify配比,根据内部头标的分类不工作。

限制与相关问题

此部分讨论与crypto和QoS的应用程序和应急方案涉及的已知问题在同一路由器的。

QoS 和反重放保护

一些crypto转换集提供反重放保护,工作,当您运用序号对crypto报头。在与理想的排队机制的一个拥塞的接口,低优先级信息包在队列可能延迟然后到达在解密的路由器,在反重放窗口被超出了后。在这种情况下,接收的设备将丢弃数据包。另外,如果加密的信息包到达在目的地失序由某一窗口(当前设置为64数据包),数据包丢弃。思科当前在监视解决的方法这些限制。注意反重放保护不可能禁用从实现的这些转换。

  • esp-sha-hmac

  • esp-md5-hmac

  • ah-md5-hmac

  • ah-sha-hmac

请使用show crypto ipsec sa命令确定反重放支持是否为每IPSec SA启用。

2611-ch5#show crypto ipsec sa
interface: Tunnel0
Crypto map tag: Test, local addr. 12.2.2.6
inbound esp sas:
spi: 0xDE92271(233382513)
transform: esp-des esp-sha-hmac ,
in use settings ={Transport, }
slot: 0, conn id: 2000, flow_id: 1, crypto map: Test
sa timing: remaining key lifetime (k/sec): (4607996/99)
IV size: 8 bytes 
replay detection support: Y

NBAR

NBAR不是可配置在使用建立隧道或加密的逻辑接口。配置的任何物理接口也不支持它与加密映射。因此,您不能使用NBAR分类根据更高层数据包信息的流量例如一URL或Web服务器主机名使用GRE和IPSec的任何QoS策略的。此限制起因于分类前功能保存然后参考信息包报头的字节数。特别地,在数据包被封装前, QoS事前分类呼叫在IOS的API。此API采取原始信息包报头信息的复制。当数据包最终押出口QoS功能时, QoS可以应用到根据的数据包任何已保存信息例如TCP端口或实时目的IP地址。

双重记帐

分类计数器在输出show policy-map interface命令中可能显示双在与CEF、GRE和IPSec的一配置里加密已知隧道信息包的数量。此输出说明此情况。

router#show policy-map interface fa0/0 
  FastEthernet0/0 

   Service-policy output: qos-out 

     Class-map: ipsec (match-all) 
       44 packets, 8580 bytes 
       30 second offered rate 1000 bps, drop rate 0 bps 
       Match: protocol gre 
       Traffic Shaping 
         Target    Byte   Sustain   Excess    Interval  Increment Adapt 
         Rate      Limit  bits/int  bits/int  (ms)      (bytes)   Active 
         16000     2000   8000      8000      500       1000      - 

         Queue     Packets   Bytes     Packets   Bytes     Shaping 
         Depth                         Delayed   Delayed   Active 
         0         22        4796      0         0         no 

此情况起因于在CEF交换开关路径一次发生,并且再的输出信息包分类,当加密进程离队数据包时。此问题在这些Cisco Bug ID被解决。

另外,当GRE隧道和IPSec配置时,数据包传输两次通过CEF查找进程,一次在GRE封装以后和一次在IPSec封装以后。因为数据包在IPSec封装之后传送, CEF每个信息包负载均衡发生故障,并且数据包总是使用同一个接口。

软件加密和快速交换/CEF

当您使用软件加密、QoS预先分类功能和CBWFQ时,快速交换数据包不可以适当地分类。此问题在输出被看到show policy-map interface命令中

3640-ch1#show policy-map interface 
 {snip} 
      Class-map: precedence (match-all) 
        5 packets, 520 bytes 
        
!--- Five packets matched the class.
 
        30 second offered rate 0 bps, drop rate 25000 bps 
        Match: ip precedence 5 
        Weighted Fair Queueing 
          Output Queue: Conversation 26 
          Bandwidth 10 (%) 
          Bandwidth 1 (kbps) Max Threshold 64 (packets) 
          (pkts matched/bytes matched) 11756/14350192 
          
!--- Many packets actually are  queued.
 
          (depth/total drops/no-buffer drops) 63/6359/0 

作为应急方案,请使用一个硬件加密模块,强制交换用no ip route-cache cef命令的进程或者禁用QoS预先分类。这导致看到在等级默认的等级的公平排队系统单个已加密流。

此问题在Cisco Bug ID CSCdw28771 (仅限注册用户)被解决。

传统优先级排队和 QoS 预先分类

不一起支持思科的传统优先级排队功能,使用priority-listpriority-group命令和QoS预先分类功能。反而,请通过配置一个策略映射实现LLQ用priority命令MQC。

硬件加密和 QoS

这些是与硬件加密和QoS的解决的问题。

  • Cisco Bug ID CSCdv25358 (仅限注册用户) -当您使用rate-limit命令通过Cisco传统承诺访问速率(CAR)时功能实现流量监管, qos pre-classify命令不工作,当也使用时硬件加密。此功能组合防止加密发生。作为应急方案,请在police命令帮助下实现基于类的策略在策略映射配置与模块化QoS命令行界面(CLI) (MQC)。其他QoS功能(MQC或非MQC)不受影响。

  • Cisco Bug ID CSCdw29595 (仅限注册用户) -,当Cisco IOS软件版本12.2(6.8)与硬件加密卡一起使用时,加密路径的性能降低。在性能的损耗发生,因为加密的信息包被过程交换而不是快速交换。此情况发生,当IPSec应用对接口时,当使用时硬件加密卡。没有应急方案。

  • Cisco Bug ID CSCdw30566 (仅限注册用户) -在与GRE环境的IPSec,如果启用CEF,它导致降低的转发性能,因为数据包实际上被过程交换。在他们GRE封装的后,此情况如何起因于CEF处理的信息包。作为应急方案,禁用CEF,和允许将快速交换的数据包。

当您使用加密加速器时,请参阅本文的分类数据包部分和实现的变化讨论在Cisco Bug ID CSCdw90486 (仅限注册用户)和CSCdx08427 (仅限注册用户)上。

相关的思科支持社区讨论

思科支持社区是您提问、解答问题、分享建议以及与工作伙伴协作的论坛。


相关信息


Document ID: 18667