什么是 5 级 QoS 模型(通过配置示例)?

网络工程 思科 服务质量
2021-07-29 16:32:20

我听说有人说他们的网络

“运行 5 级(或层)QoS 模型”

有时他们还会提到 7 级 QoS 模型。任何人都可以向我提供有关此处含义的 Cisco IOS 配置示例。所以我的意思是一个配置示例,展示了如何实现这个(假设有这样的事情!)。我更熟悉 IOS 12.whatever 而不是 15.whatever 但两者都很棒。

我假设这些人正在引用 5 个类设置匹配流量,它是以下 5 个标准类之一,并适当地处理流量;

  • DF 默认值
  • EF 加急转发
  • VA语音承认
  • AF 保证转发
  • CS 类选择器(为了向后兼容)

我正在寻找匹配 5(或 7!)类流量的 IOS 配置示例,然后应用适当的策略(我知道这是一个很大的模糊,不同的网络运营商可能希望以不同的方式处理流量,但这纯粹是教育。我希望看到 5 种不同的流量被匹配并被区别对待)。

边注

例如,我真的很想知道人们如何为 100Mbps 链接配置这样的策略,以便使用简单的算法我可以将其扩展到 1Gbps 或降低到 10Mbps。我猜要让这有效,整个 QoS 模式需要保留缓冲区空间或分配存储桶空间,而不是例如使用管制来限制带宽?我认为这是因为您不知道在任何时候有多少带宽是语音、视频、数据或 P2P/Torrents 等

1个回答

思科有一种他们称之为思科验证设计 (CVD) 的东西。这些是思科推荐并测试过的从不同角度的网络设计,如 QoS、高可用性、WAN 等。

对于 QoS,它们有 3 种不同的设计,分别为 4、8 或 12 个类别,如下图所示。

思科 QoS 等级

从 4 类模型开始:

! This section defines the 4-Class class-maps 
! (three are explicitly defined and one is default)
Router(config)# class-map match-any REALTIME
Router(config-cmap)# match dscp ef
 ! Matches VoIP
Router(config-cmap)# match dscp cs5
 ! Matches Broadcast Video
Router(config-cmap)# match dscp cs4
 ! Matches Realtime-Interactive

Router(config)# class-map match-any CONTROL
Router(config-cmap)# match dscp cs6
 ! Matches Network-Control
Router(config-cmap)# match dscp cs3
 ! Matches Signaling (control-plane traffic for voice/video infrastructure)
Router(config-cmap)# match dscp cs2
 ! Matches Network Management

Router(config)# class-map match-any CRITICAL-DATA
Router(config-cmap)# match dscp af41 af42 af43
 ! Matches Multimedia Conferencing on AF4 
Router(config-cmap)# match dscp af31 af32 af33
 ! Matches Multimedia Streaming on AF3
Router(config-cmap)# match dscp af21 af22 af23
 ! Matches Transactional Data on AF2
Router(config-cmap)# match dscp af11 af12 af13
 ! Matches Bulk Data on AF1


! This section defines the 4-Class Policy-Map
Router(config)# policy-map WAN-EDGE-4-CLASS
Router(config-pmap)# class REALTIME
Router(config-pmap-c)# priority percent 33
 ! Provisions 33% LLQ for REALTIME class
Router(config-pmap-c)# class CONTROL
Router(config-pmap-c)#  bandwidth percent 7
 ! Provisions 7% CBWFQ for CONTROL class
Router(config-pmap-c)# class CRITICAL-DATA
Router(config-pmap-c)#  bandwidth percent 35
 ! Provisions 35% CBWFQ for CRITICAL-DATA class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on CRITICAL-DATA class
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on CRITICAL-DATA class
Router(config-pmap-c)#   random-detect dscp af11 50 64
 ! Tunes WRED min and max drop-thresholds for AF11/10 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af12 45 64
 ! Tunes WRED min and max drop-thresholds for AF12/12 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af13 40 64
 ! Tunes WRED min and max drop-thresholds for AF13/14 to 40 and 64 packets
Router(config-pmap-c)#   random-detect dscp af21 50 64
 ! Tunes WRED min and max drop-thresholds for AF21/18 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af22 45 64
 ! Tunes WRED min and max drop-thresholds for AF22/20 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af23 40 64
 ! Tunes WRED min and max drop-thresholds for AF23/22 to 40 and 64 packets
Router(config-pmap-c)#   random-detect dscp af31 50 64
 ! Tunes WRED min and max drop-thresholds for AF31/26 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af32 45 64
 ! Tunes WRED min and max drop-thresholds for AF32/28 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af33 40 64
 ! Tunes WRED min and max drop-thresholds for AF33/30 to 40 and 64 packets
Router(config-pmap-c)#   random-detect dscp af41 50 64
 ! Tunes WRED min and max drop-thresholds for AF41/34 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af42 45 64
 ! Tunes WRED min and max drop-thresholds for AF42/36 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af43 40 64
 ! Tunes WRED min and max drop-thresholds for AF43/38 to 40 and 64 packets
Router(config-pmap-c)# class class-default
Router(config-pmap-c)#  bandwidth percent 25
 ! Provisions 25% CBWFQ for default (Best-Effort) class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on default (Best-Effort) class
Router(config-pmap-c)#  queue-limit 128 packets
 ! Expands queue-limit to 128 packets
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on default (Best-Effort) class
Router(config-pmap-c)#   random-detect dscp default 100 128
 ! Tunes WRED min and max drop-thresholds for DF/0 to 100 and 128 packets
Router(config-pmap-c)#   random-detect dscp cs1 60 100
 ! Tunes WRED min and max drop-thresholds for CS1/8 to 60 and 100 packets

如您所见,它匹配不同的 DSCP 值。DSCP EF 通常用于 VoIP。这意味着您的数据包应该已经在您的网络中尽早标记。带宽值以百分比形式输入,这意味着该策略可以应用于不同速度的接口,并且与以 kbit/s 输入它们相比仍然提供良好的值。在 10 Gbit 等非常高速的接口上,将 7% 用于控制流量可能会很大,但因为那将是 700 Mbit/s。

数据和类默认都使用公平队列,这是一种基于 DSCP 和数据包大小的数据包排队方式,即使对于小数据包流也能提供公平排队。为了能够使用它,您需要一个支持12.4(20)T或更新版本的分层队列框架 (HQF) 的图像

加权随机早期检测 (WRED) 还用于处理 TCP 同步等问题,其中 TCP 流将同时加速和回退。

然后你有 8 类模型。

! This section defines the 8-Class class-maps 
! (seven are explicitly defined and one is default)
Router(config)# class-map match-all VOICE
Router(config-cmap)# match dscp ef
 ! Matches VoIP

Router(config)# class-map match-any INTERACTIVE-VIDEO
Router(config-cmap)# match dscp cs5
 ! Matches Broadcast Video
Router(config-cmap)# match dscp cs4
 ! Matches Realtime-Interactive
Router(config)# class-map match-any NETWORK-CONTROL
Router(config-cmap)# match dscp cs6
 ! Matches Network Control
Router(config-cmap)# match dscp cs2
 ! Matches Network Management

Router(config)# class-map match-all SIGNALING
Router(config-cmap)# match dscp cs3
 ! Matches Signaling

Router(config)# class-map match-all MULTIMEDIA-STREAMING
Router(config-cmap)# match dscp af31 af32 af33
 ! Matches Multimedia-Streaming on AF3

Router(config)# class-map match-any CRITICAL-DATA
Router(config-cmap)# match dscp af41 af42 af43
 ! Matches Multimedia-Conferencing on AF4
Router(config-cmap)# match dscp af21 af22 af23
 ! Matches Transactional-Data on AF2
Router(config-cmap)# match dscp af11 af12 af13
 ! Matches Bulk-Data on AF1

Router(config)# class-map match-all SCAVENGER
Router(config-cmap)# match dscp cs1
 ! Matches Scavenger


! This section configures the 8-class policy-map
Router(config)# policy-map WAN-EDGE-8-CLASS
Router(config-pmap)# class VOICE
Router(config-pmap-c)#  priority percent 10
 ! Provisions 10% LLQ for VOICE class (dual LLQ-policy)
Router(config-pmap-c)# class INTERACTIVE-VIDEO
Router(config-pmap-c)#  priority percent 23
 ! Provisions 23% LLQ for INTERACTIVE-VIDEO class (dual-LLQ policy)
Router(config-pmap-c)# class NETWORK-CONTROL
Router(config-pmap-c)#  bandwidth percent 5
 ! Provisions 5% CBWFQ for NETWORK-CONTROL class
Router(config-pmap-c)# class SIGNALING
Router(config-pmap-c)#  bandwidth percent 2
 ! Provisions 2% CBWFQ for SIGNALING class
Router(config-pmap-c)# class MULTIMEDIA-STREAMING
Router(config-pmap-c)#  bandwidth percent 10
 ! Provisions 10% CBWFQ for MULTIMEDIA-STREAMING class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on MULTIMEDIA-STREAMING class
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on MULTIMEDIA-STREAMING class
Router(config-pmap-c)#   random-detect dscp af31 50 64
 ! Tunes WRED min and max drop-thresholds for AF31/26 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af32 45 64
 ! Tunes WRED min and max drop-thresholds for AF32/28 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af33 40 64
 ! Tunes WRED min and max drop-thresholds for AF33/30 to 40 and 64 packets
Router(config-pmap-c)# class CRITICAL-DATA
Router(config-pmap-c)#  bandwidth percent 24
 ! Provisions 24% CBWFQ for CRITICAL-DATA class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on CRITICAL-DATA class
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on CRITICAL-DATA class


Router(config-pmap-c)#   random-detect dscp af11 50 64
 ! Tunes WRED min and max drop-thresholds for AF11/10 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af12 45 64
 ! Tunes WRED min and max drop-thresholds for AF12/12 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af13 40 64
 ! Tunes WRED min and max drop-thresholds for AF13/14 to 40 and 64 packets
Router(config-pmap-c)#   random-detect dscp af21 50 64
 ! Tunes WRED min and max drop-thresholds for AF21/18 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af22 45 64
 ! Tunes WRED min and max drop-thresholds for AF22/20 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af23 40 64
 ! Tunes WRED min and max drop-thresholds for AF23/22 to 40 and 64 packets
Router(config-pmap-c)#   random-detect dscp af41 50 64
 ! Tunes WRED min and max drop-thresholds for AF41/34 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af42 45 64
 ! Tunes WRED min and max drop-thresholds for AF42/36 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af43 40 64
 ! Tunes WRED min and max drop-thresholds for AF43/38 to 40 and 64 packets
Router(config-pmap-c)# class SCAVENGER
Router(config-pmap-c)#  bandwidth percent 1
 ! Constrains Scavenger class to 1% CBWFQ
Router(config-pmap-c)# class class-default
Router(config-pmap-c)#  bandwidth percent 25
 ! Provisions 25% CBWFQ for default (Best-Effort) class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on default (Best-Effort) class
Router(config-pmap-c)#  queue-limit 128 packets
 ! Expands queue-limit to 128 packets
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on default (Best-Effort) class
Router(config-pmap-c)#   random-detect dscp default 100 128
 ! Tunes WRED min and max drop-thresholds for DF/0 to 100 and 128 packets

对于这些协议的视频、流媒体和信令等实时应用程序,此策略更为细化。

最后这是12类模型。

! This section configures the class-maps
! (eleven class maps are explicitly defined and one is default)
Router(config)# class-map match-all VOICE
Router(config-cmap)# match dscp ef
 ! Matches VoIP

Router(config)# class-map match-all BROADCAST-VIDEO
Router(config-cmap)# match dscp cs5
 ! Matches Broadcast Video

Router(config)# class-map match-all REALTIME-INTERACTIVE
Router(config-cmap)#  match dscp cs4
 ! Matches Realtime-Interactive

Router(config)# class-map match-all NETWORK-CONTROL
Router(config-cmap)# match dscp cs6
 ! Matches Network Control

Router(config)# class-map match-all SIGNALING
Router(config-cmap)# match dscp cs3
 ! Matches Signaling

Router(config)# class-map match-all NETWORK-MANAGEMENT
Router(config-cmap)# match dscp cs2
 ! Matches Network Management

Router(config)# class-map match-any MULTIMEDIA-CONFERENCING
Router(config-cmap)# match dscp af41
Router(config-cmap)# match dscp af42
Router(config-cmap)# match dscp af43
 ! Matches Multimedia-Conferencing
 ! One match statement per Drop Precedence increases visibility

Router(config)# class-map match-any MULTIMEDIA-STREAMING
Router(config-cmap)# match dscp af31
Router(config-cmap)# match dscp af32
Router(config-cmap)# match dscp af33
 ! Matches Multimedia-Streaming
 ! One match statement per Drop Precedence increases visibility

Router(config)# class-map match-any TRANSACTIONAL-DATA
Router(config-cmap)# match dscp af21
Router(config-cmap)# match dscp af22
Router(config-cmap)# match dscp af23
 ! Matches Transactional-Data
 ! One match statement per Drop Precedence increases visibility

Router(config)# class-map match-any BULK-DATA
Router(config-cmap)# match dscp af11
Router(config-cmap)# match dscp af12
Router(config-cmap)# match dscp af13
 ! Matches Bulk-Data
 ! One match statement per Drop Precedence increases visibility

Router(config)# class-map match-all SCAVENGER
Router(config-cmap)# match dscp cs1
 ! Matches Scavenger


! This section configures the 12-Class policy-map
Router(config)# policy-map WAN-EDGE-12-CLASS
Router(config-pmap)# class VOICE
Router(config-pmap-c)#  priority percent 10
 ! Provisions 10% LLQ to VOICE class (multi-LLQ policy)
Router(config-pmap-c)# class BROADCAST-VIDEO
Router(config-pmap-c)#  priority percent 10
 ! Provisions 10% LLQ to BROADCAST-VIDEO class (multi-LLQ policy)
Router(config-pmap-c)# class REALTIME-INTERACTIVE
Router(config-pmap-c)#  priority percent 13
! Provisions 13% LLQ to REALTIME-INTERACTIVE class (multi-LLQ policy)
Router(config-pmap-c)# class NETWORK-CONTROL
Router(config-pmap-c)#  bandwidth percent 2
 ! Provisions 2% CBWFQ to NETWORK-CONTROL class
Router(config-pmap-c)# class SIGNALING
Router(config-pmap-c)#  bandwidth percent 2
 ! Provisions 2% CBWFQ to SIGNALING class
Router(config-pmap-c)# class NETWORK-MANAGEMENT
Router(config-pmap-c)#  bandwidth percent 3
 ! Provisions 3% CBWFQ to NETWORK-MANAGEMENT class
Router(config-pmap-c)# class MULTIMEDIA-CONFERENCING
Router(config-pmap-c)#  bandwidth percent 10
 ! Provisions 10% CBWFQ to MULTIMEDIA-CONFERENCING class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on MULTIMEDIA-CONFERENCING class
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on MULTIMEDIA-CONFERENCING class
Router(config-pmap-c)#   random-detect dscp af41 50 64
 ! Tunes WRED min and max drop-thresholds for AF41/34 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af42 45 64
 ! Tunes WRED min and max drop-thresholds for AF42/36 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af43 40 64
 ! Tunes WRED min and max drop-thresholds for AF43/38 to 40 and 64 packets
Router(config-pmap-c)# class MULTIMEDIA-STREAMING
Router(config-pmap-c)#  bandwidth percent 10
 ! Provisions 10% CBWFQ to MULTIMEDIA-STREAMING class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on MULTIMEDIA-STREAMING class
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on MULTIMEDIA-STREAMING class
Router(config-pmap-c)#   random-detect dscp af31 50 64
 ! Tunes WRED min and max drop-thresholds for AF31/26 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af32 45 64
 ! Tunes WRED min and max drop-thresholds for AF32/28 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af33 40 64
 ! Tunes WRED min and max drop-thresholds for AF33/30 to 40 and 64 packets
Router(config-pmap-c)# class TRANSACTIONAL-DATA
Router(config-pmap-c)#  bandwidth percent 10
 ! Provisions 10% CBWFQ to TRANSACTIONAL-DATA class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on TRANSACTIONAL-DATA class
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on TRANSACTIONAL-DATA class
Router(config-pmap-c)#   random-detect dscp af21 50 64
 ! Tunes WRED min and max drop-thresholds for AF21/18 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af22 45 64
 ! Tunes WRED min and max drop-thresholds for AF22/20 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af23 40 64
 ! Tunes WRED min and max drop-thresholds for AF23/22 to 40 and 64 packets
Router(config-pmap-c)# class BULK-DATA
Router(config-pmap-c)#  bandwidth percent 4
 ! Provisions 4% CBWFQ to BULK-DATA class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on BULK-DATA class
Router(config-pmap-c)#   random-detect dscp-based
! Enables DSCP-based WRED on BULK-DATA class
Router(config-pmap-c)#   random-detect dscp af11 50 64
 ! Tunes WRED min and max drop-thresholds for AF11/10 to 50 and 64 packets
Router(config-pmap-c)#   random-detect dscp af12 45 64
 ! Tunes WRED min and max drop-thresholds for AF12/12 to 45 and 64 packets
Router(config-pmap-c)#   random-detect dscp af13 40 64
 ! Tunes WRED min and max drop-thresholds for AF13/14 to 40 and 64 packets
Router(config-pmap-c)# class SCAVENGER
Router(config-pmap-c)#  bandwidth percent 1
 ! Constrains Scavenger to 1% CBWFQ
Router(config-pmap-c)# class class-default
Router(config-pmap-c)#  bandwidth percent 25
 ! Provisions 25% CBWFQ for default (Best-Effort) class
Router(config-pmap-c)#  fair-queue
 ! Enables fair-queuing pre-sorter on default (Best-Effort) class
Router(config-pmap-c)#  queue-limit 128 packets
 ! Expands queue-limit to 128 packets
Router(config-pmap-c)#   random-detect dscp-based
 ! Enables DSCP-based WRED on default (Best-Effort) class
Router(config-pmap-c)#   random-detect dscp default 100 128
 ! Tunes WRED min and max drop-thresholds for DF/0 to 100 and 128 packets

该策略有更多的交互式流量类,也有更多的不同类型数据的类和一个管理类。

最后,您必须将策略应用于这样的界面。

int gix/x 服务策略输出 WAN-EDGE-12-CLASS

这是WAN QoS CVD的链接