上下文

我已将标准QoS配置部署到运行带有IOS 15.1(4)M4的Cisco 891路由器的客户站点。 WAN链接是连接到FE8的一条ADSL2 +链接(24 / 1Mbps)。

我以前曾在另一个站点上通过使用来自局域网的iperf来生成1+ Mbps的上行流量,并在此站点上对该配置进行了测试。确认在WAN接口上启用QoS时呼叫质量发生了显着变化。最初,这就是我确认配置有效的方式。

我最近将相同的配置部署到了另一个站点,但是它们仍然存在上游VOIP带宽的问题。我想合理地确认QoS在不使链接实际饱和的情况下就可以正常工作(特别是因为它们处于状态,并且没有任何现场技术)。然后尝试隔离我可能获得的柚木以获得更好的语音质量。

问题

给出以下策略图输出,特别关注VOICE类-映射为例,以下统计信息是什么意思?:


3860628数据包,1070196895字节:我可以假设这是类映射中匹配的数据包/字节总数?
5分钟提供的速率为0 bps,下降速率为0 bps:“提供的速率”是已被优先处理的流量的bps速率,如果不是,那么呢?同样,丢包率是否是由于带宽不足而无法优先处理的多余流量?那是否表示我们需要X带宽增加VOICE带宽才能容纳此类流量峰值?
优先级:40%(340 kbps),突发字节8500,b / w超过下降:5:在这一行中,我不确定黑白超出幅度意味着什么?

记录

鉴于这些统计数据可能会在高峰时间(这是您最想知道的时间)发生变化(我想)想见他们)。有什么方法可以记录这些数字,或者可以通过SNMP查询这些数字,以便可以以编程方式对其进行图形显示?

学习

我了解QoS是一个相当广泛的话题。在尝试了解这一点时,我经常会因为了解不同类型的QoS实现或由于IOS版本不同(例如,使用语法或输出已更改的命令而使用文档的旧文档)而感到不知所措。

为此,谁能推荐一些思科培训文档或视频课程,以帮助我专注于更好地使用QoS?

一些其他信息

这里是一个示例QoS配置:

class-map match-any SSH
 match protocol ssh
class-map match-any LogMeIn
 match access-group name LogMeIn
class-map match-any VOICE
 match protocol sip
 match protocol rtp

policy-map ADSLPrioritisationOutbound
 class VOICE
  priority percent 40
 class SSH
  bandwidth 80
 class LogMeIn
  priority percent 20
 class class-default
  fair-queue
policy-map ADSLPrioritisationOutboundParent
 class class-default
  shape average 850000
  service-policy ADSLPrioritisationOutbound

interface FastEthernet8
 no ip address
 ip virtual-reassembly in
 duplex auto
 speed auto
 pppoe-client dial-pool-number 1
 service-policy output ADSLPrioritisationOutboundParent


策略映射接口输出:

FastEthernet8

Service-policy output: ADSLPrioritisationOutboundParent

Class-map: class-default (match-any)
  18968101 packets, 6998385051 bytes
  5 minute offered rate 3000 bps, drop rate 0 bps
  Match: any
  Queueing
  queue limit 64 packets
  (queue depth/total drops/no-buffer drops) 0/93737/0
  (pkts output/bytes output) 18874363/6936577128
  shape (average) cir 850000, bc 3400, be 3400
  target shape rate 850000

  Service-policy : ADSLPrioritisationOutbound

    queue stats for all priority classes:

      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 3860623/1070194985

    Class-map: VOICE (match-any)
      3860628 packets, 1070196895 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol sip
        97348 packets, 49867304 bytes
        5 minute rate 0 bps
      Match: protocol rtp
        3763280 packets, 1020329591 bytes
        5 minute rate 0 bps
      Match: access-group name NEC-PBX
        0 packets, 0 bytes
        5 minute rate 0 bps
      Priority: 40% (340 kbps), burst bytes 8500, b/w exceed drops: 5


    Class-map: SSH (match-any)
      89497 packets, 19838544 bytes
      5 minute offered rate 2000 bps, drop rate 0 bps
      Match: protocol ssh
        89497 packets, 19838544 bytes
        5 minute rate 2000 bps
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 89497/19838544
      bandwidth 80 kbps

    Class-map: LogMeIn (match-any)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: access-group name LogMeIn
        0 packets, 0 bytes
        5 minute rate 0 bps
      Priority: 20% (170 kbps), burst bytes 4250, b/w exceed drops: 0


    Class-map: class-default (match-any)
      15017976 packets, 5908349612 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops/flowdrops) 0/93732/0/93732
      (pkts output/bytes output) 14924243/5846543599
      Fair-queue: per-flow queue limit 16


评论

我假设您的意思是第一句中的IOS版本15.1?我只想在进行编辑之前先弄清楚。

嗯是的抱歉。不知道发生了什么...今晚钥匙卡住了。很多错字。

#1 楼

您的问题范围很广。您可以使用许多不同的命令来对QoS进行故障排除和监视,因此我将重点关注您遇到的主要问题,即如何合理地验证QoS配置是否正常以及如何读取策略映射接口输出。验证QoS的唯一正确方法是连接流量生成器并监视各种队列中的丢包率。由于通常这是不可行的,尤其是在生产环境中,因此您真正要做的就是验证流量是否已正确标记和分类。

您真正要寻找的是什么?验证QoS配置是否正常运行是为了使policy-map interface命令中的计数器增加。

因此,例如,在输出中提供了以下内容:

Class-map: VOICE (match-any)
  3860628 packets, 1070196895 bytes
  5 minute offered rate 0 bps, drop rate 0 bps
  Match: protocol sip
    97348 packets, 49867304 bytes
    5 minute rate 0 bps
  Match: protocol rtp
    3763280 packets, 1020329591 bytes
    5 minute rate 0 bps
  Match: access-group name NEC-PBX
    0 packets, 0 bytes
    5 minute rate 0 bps
  Priority: 40% (340 kbps), burst bytes 8500, b/w exceed drops: 5


您可以看到您正在SIP和RTP下看到数据包,但不是NEC-PBX。如果您知道通过链接获取的SIP和RTP流量,则应该看到数据包计数增加,这是知道您的配置基本正常的一种合理方法。

评论


谢谢。 “各种队列中的监视器丢失率”是什么意思?这是“丢弃率X bps”吗?关于需要父整形器来实现ADSL QoS的示例,当我看到流量匹配时,我最初决定QoS在起作用-但最终并没有真​​正起作用。我同意这个问题仍然很广泛(在发布之前,我什至试图重写它!)。我将在短期内进行一些修改,并希望您能提出宝贵的见解。再次感谢!

–极客
13年7月29日在10:38

好吧我认为,如果我至少完全了解有关策略映射输出的那些内容,那么我将能够了解正在发生的事情。

–极客
13年7月29日在11:02

验证配置时,需要特别注意两件事。第一个是整个类别以及每个单独的“匹配”行下的总数据包计数和速率。这将告诉您数据包是否与策略匹配,并被适当地分类/标记/优先排序(取决于您要查看的策略类型)。另一件事是每个组件下的丢失率。在正常的网络条件下,大多数类中您可能不会看到掉线,因此0并不是问题。但是,如果您很拥挤,那么您会看到水滴。

–完全不完整
13年7月30日在5:20