本文档概述了使用帧中继封装配置的串行接口上的分层队列架构。如果使用帧中继流量整形 (FRTS) 进行配置,则帧中继接口可支持以下队列层:
PVC队列
接口级队列
本文读者应该熟悉以下知识:
本文档中使用的配置是在Cisco 7200系列路由器上使用以下硬件和软件捕获的:
PA-MC-4T1多通道端口适配器
Cisco IOS® 软件版本 12.2(6)
本文档中的信息都是基于特定实验室环境中的设备创建的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您是在真实网络上操作,请确保您在使用任何命令前已经了解其潜在影响。
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
下图说明将FRTS应用于接口时的两层队列。应用FRTS和帧中继论坛实施协议(FRF.12)会导致接口级队列变为双FIFO队列,具体取决于支持此排队技术的平台。这两个队列包括传输IP语音(VoIP)和某些控制数据包的高优先级队列,以及传输所有其他数据包的低优先级队列。有关双FIFO队列的更多信息,请参阅双FIFO部分。
启用FRTS和PVC队列时,帧中继接口支持接口队列和PVC队列。如果PVC队列配置为WFQ,则每个PVC队列也支持单独的加权公平队列(WFQ)系统。
帧中继和ATM接口都支持多条虚电路(VC)。根据硬件不同,这些接口支持PVC队列,从而确保一个拥塞的VC不会占用所有内存资源并影响其他(非拥塞)VC。
frame-relay traffic-shaping命令为帧中继接口上的所有VC启用流量整形和PVC队列。PVC流量整形可更好地控制单个VC上的流量。流量整形与VC排队相结合,可限制单个VC的接口带宽消耗。VC无需任何整形,即可消耗所有接口带宽,并耗尽其他VC。
如果不指定整形值,将应用平均速率和突发大小的默认值。当VC的负载超过整形值时,超额数据包将存储在VC的数据包缓冲队列中。缓冲数据包后,您可以应用排队机制并有效控制从VC队列中出队到接口队列的数据包的顺序。默认情况下,PVC队列使用先到先服务的队列,队列限制为40个数据包。在map-class配置模式下使用frame-relay holdq命令更改此值。或者,您可以使用服务质量(QoS)策略(使用模块化QoS命令行界面(CLI)(MQC)的命令配置)应用低延迟队列(LLQ)或基于类的加权公平队列(CBWFQ)。此外,您可以使用fair queue命令直接在映射类内部应用WFQ。此命令配置路由器根据流量对流量进行分类,并将这些流量放入其自己的子队列中。因此,fair queue命令为每个虚电路创建一个WFQ系统。
PVC队列的详细排队机制说明如下。
执行show frame-relay pvc 20命令。帧中继数据链路连接标识符(DLCI)由20标识。以下输出未显示排队信息,因为FRTS未启用。
Router# show frame PVC 20 PVC Statistics for interface Serial6/0:0 (Frame Relay DTE) DLCI = 20, DLCI USAGE = LOCAL, PVC STATUS = DELETED, INTERFACE = Serial6/0:0.1 input pkts 0 output pkts 0 in bytes 0 out bytes 0 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 0 out bcast bytes 0 PVC create time 00:00:38, last time PVC status changed 00:00:25
在物理接口下的接口配置模式下使用frame-relay traffic-shaping命令配置FRTS。再次执行show frame-relay PVC [dlci]命令。
Router# show frame-relay PVC 20 PVC Statistics for interface Serial6/0:0 (Frame Relay DTE) DLCI = 20, DLCI USAGE = LOCAL, PVC STATUS = DELETED, INTERFACE = Serial6/0:0.1 input pkts 0 output pkts 0 in bytes 0 out bytes 0 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 0 out bcast bytes 0 PVC create time 00:04:59, last time PVC status changed 00:04:46 cir 56000 bc 7000 be 0 byte limit 875 interval 125 !--- Shaping parameters. mincir 28000 byte increment 875 Adaptive Shaping none pkts 0 bytes 0 pkts delayed 0 bytes delayed 0 shaping inactive traffic shaping drops 0 Queueing strategy: fifo !--- Queue mechanism. Output queue 0/40, 0 drop, 0 dequeued !--- Queue size.
默认情况下,PVC队列使用40个数据包的输出队列限制。使用frame-relay holdq命令配置非默认值。
Router(config)# map-class frame-relay shaping Router(config-map-class)# no frame-relay adaptive-shaping Router(config-map-class)# frame-relay holdq 50 Router(config)# interface serial 6/0:0.1 Router(config-subif)# frame-relay interface-dlci 20 %PVC is already defined Router(config-fr-dlci)# class shaping Router(config-fr-dlci)# end Router# sh frame PVC 20 PVC Statistics for interface Serial6/0:0 (Frame Relay DTE) DLCI = 20, DLCI USAGE = LOCAL, PVC STATUS = DELETED, INTERFACE = Serial6/0:0.1 input pkts 0 output pkts 0 in bytes 0 out bytes 0 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 0 out bcast bytes 0 PVC create time 00:11:06, last time PVC status changed 00:10:53 cir 56000 BC 7000 be 0 byte limit 875 interval 125 mincir 28000 byte increment 875 Adaptive Shaping none pkts 0 bytes 0 pkts delayed 0 bytes delayed 0 shaping inactive traffic shaping drops 0 Queueing strategy: FIFO Output queue 0/50, 0 drop, 0 dequeued !--- Queue size.
PVC队列还支持CBWFQ和LLQ,您可以使用服务策略和MQC的命令配置这两个队列。在应用QoS服务策略后,在帧中继PVC上捕获了以下输出示例。
Router(config)# class-map gold Router(config-cmap)# match ip dscp 46 Router(config-cmap)# class-map silver Router(config-cmap)# match ip dscp 26 Router(config-cmap)# policy-map sample Router(config-pmap)# class gold Router(config-pmap-c)# priority 64 Router(config-pmap-c)# class silver Router(config-pmap-c)# bandwidth 32 Router(config)# map-class frame-relay map1 Router(config-map-class)# service-policy output sample Router(config-if)# frame-relay interface-dlci 20 Router(config-fr-dlci)# class map1 Router# show frame-relay PVC 20 PVC Statistics for interface Serial6/0:0 (Frame Relay DTE) DLCI = 20, DLCI USAGE = LOCAL, PVC STATUS = DELETED, INTERFACE = Serial6/0:0.1 input pkts 0 output pkts 0 in bytes 0 out bytes 0 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 0 out bcast bytes 0 PVC create time 00:12:50, last time PVC status changed 00:12:37 cir 56000 bc 7000 be 0 byte limit 875 interval 125 mincir 28000 byte increment 875 Adaptive Shaping none pkts 0 bytes 0 pkts delayed 0 bytes delayed 0 shaping inactive traffic shaping drops 0 service policy sample Service-policy output: sample Class-map: gold (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 BPS Match: ip dscp 46 Weighted Fair Queueing Strict Priority Output Queue: Conversation 24 Bandwidth 64 (kbps) Burst 1600 (Bytes) (pkts matched/bytes matched) 0/0 (total drops/bytes drops) 0/0 Class-map: silver (match-all) 0 packets, 0 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: ip dscp 26 Weighted Fair Queueing Output Queue: Conversation 25 Bandwidth 32 (kbps) Max Threshold 64 (packets) !--- Queue information. (pkts matched/bytes matched) (depth/total drops/no-buffer drops) 0/0/0 Class-map: class-default (match-any) 0 packets, 0 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: any Output queue size 0/max total 600/drops 0 !--- Queue size.
最初,frame-relay holdq <size> map-class命令仅用于配置FIFO流量整形队列的大小。最大尺寸为512。在Cisco IOS软件版本12.2和IOS软件版本12.2(4)中,此命令还会影响CBWFQ流量整形队列中的最大缓冲区,如service-policy output map-class命令所启用。最大大小现在为1024。默认值为40(FIFO)和600(CBWFQ),保持不变。
帧中继帧在PVC队列中入队后,会出队到接口级队列。来自所有VC的流量通过接口级队列。
根据配置的功能,帧中继接口级队列使用以下机制之一。
功能 | 默认排队机制 |
---|---|
FRTS | FIFO |
FRF.12 | 双重 FIFO |
PIPQ | PIPQ |
注意:PVC接口优先级队列(PVC Interface Priority Queueing)会覆盖FIFO和双FIFO。换句话说,如果启用FRF.12,接口排队策略将保持PIPQ。
以下步骤说明FRTS配置如何将应用的排队机制更改为FIFO。
使用channel-group命令创建信道化接口。
Router(config)# controller t1 6/0 Router(config-controller)# channel-group 0 ? timeslots List of timeslots in the channel group Router(config-controller)# channel-group 0 timeslots ? <1-24> List of timeslots which comprise the channel Router(config-controller)# channel-group 0 timeslots 12
执行show interface serial 6/0:0命令并确认T1接口正在使用默认的“Queueing strategy: weighted fair”。首先,数据包在VC级别排队到花哨队列。然后将其发送到接口队列。在这种情况下,将应用WFQ。
Router# show interface serial 6/0:0 Serial6/0:0 is up, line protocol is up (looped) Hardware is Multichannel T1 MTU 1500 bytes, BW 64 Kbit, DLY 20000 usec, reliability 253/255, txload 1/255, rxload 1/255 Encapsulation HDLC, crc 16, Data non-inverted Keepalive set (10 sec) Last input 00:00:08, output 00:00:08, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: Queueing strategy: weighted fair !--- Queue mechanism. Output queue: 0/1000/64/0 (size/max total/threshold/drops) !--- Queue size. Conversations 0/1/16 (active/max active/max total) !--- Queue information. Reserved Conversations 0/0 (allocated/max allocated) !--- Queue information. Available Bandwidth 48 kilobits/sec !--- Queue information. 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 5 packets input, 924 bytes, 0 no buffer Received 0 broadcasts, 14 runts, 0 giants, 0 throttles 14 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 17 packets output, 2278 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions no alarm present Timeslot(s) Used:12, subrate: 64Kb/s, transmit delay is 0 flags !--- Queue information.
当排队策略为WFQ时,您可以使用show queueing和show queue命令进行确认。
Router# show queueing interface serial 6/0:0 Interface Serial6/0:0 queueing strategy: fair Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: weighted fair Output queue: 0/1000/64/0 (size/max total/threshold/drops) Conversations 0/1/16 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated) Available Bandwidth 48 kilobits/sec Router# show queue serial 6/0:0 Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: weighted fair Output queue: 0/1000/64/0 (size/max total/threshold/drops) Conversations 0/1/16 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated) Available Bandwidth 48 kilobits/sec
在接口配置模式下使用frame-relay traffic-shaping命令应用FRTS。
Router(config)# interface serial 6/0:0 Router(config-if)# frame-relay traffic-shaping
应用FRTS会提示路由器将接口级队列上的排队策略更改为FIFO。
Router# show interface serial 6/0:0 Serial6/0:0 is up, line protocol is down (looped) Hardware is Multichannel T1 MTU 1500 bytes, BW 64 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation FRAME-RELAY, crc 16, Data non-inverted Keepalive set (10 sec) LMI enq sent 13, LMI stat recvd 0, LMI upd recvd 0, DTE LMI down LMI enq recvd 19, LMI stat sent 0, LMI upd sent 0 LMI DLCI 1023 LMI type is CISCO frame relay DTE Broadcast queue 0/64, broadcasts sent/dropped 0/0, interface broadcasts 0 Last input 00:00:06, output 00:00:06, output hang never Last clearing of "show interface" counters 00:02:16 Queueing strategy: FIFO !--- queue mechanism Output queue 0/40, 0 drops; input queue 0/75, 0 drops 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 19 packets input, 249 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 19 packets output, 249 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions no alarm present Timeslot(s) Used:12, subrate: 64Kb/s, transmit delay is 0 flags
由于排队策略现在是FIFO,show queue和show queueing命令输出将发生变化。
Router# show queueing interface serial 6/0:0 Interface Serial6/0:0 queueing strategy: none Router# Router# show queue serial 6/0:0 'Show queue' not supported with FIFO queueing.
Cisco IOS软件版本12.2(4)T引入了自适应帧中继流量整形接口拥塞功能,该功能旨在将接口拥塞引起的延迟和丢包的影响降至最低。用于接口拥塞的自适应帧中继流量整形功能有助于确保在VC队列中发生丢包。
启用此新功能时,流量整形机制会监控接口拥塞。当拥塞级别超过一个称为队列深度的配置值时,所有PVC的发送速率将降至最低承诺信息速率(minCIR)。一旦接口拥塞降至队列深度以下,流量整形机制就会将PVC的发送速率改回承诺信息速率(CIR)。当出现接口拥塞时,此过程可保证PVC的minCIR。
show interface serial命令输出中显示的帧中继队列是双FIFO,它使用两个优先级级别。高优先级队列处理语音数据包和控制数据包,例如本地管理接口(LMI)。低优先级队列处理分段数据包(数据或非语音数据包)。
当您启用以下功能之一时,接口级排队机制会自动更改为双FIFO:
FRF.12分段 — 在映射类配置模式下使用frame-relay fragment命令启用此功能。大于frame-relay fragment命令中指定的数据包大小的数据包将首先排入WFQ子队列。然后,它们将出列并分段。分段后,传输第一个数据段。其余数据段等待该VC的下一个可用传输时间(由整形算法确定)。此时,从其他PVC交替发送小型语音数据包和分段数据包。
实时传输协议(RTP)优先级 — 最初,小数据包仅因为其大小而被归类为属于高优先级队列。Cisco IOS软件版本12.0(6)T使用RTP优先级(VoIPoFR)功能更改了此行为。它仅为语音和LMI控制数据包保留高优先级队列。VoIPoFR通过匹配帧中继映射类中定义的RTP UDP端口范围对VoIP数据包进行分类。此端口范围内的所有RTP流量都排入到VC的优先级队列中。此外,语音数据包将进入接口级别的高优先级队列。所有其他数据包都进入接口级别的非优先级队列。
注意:此功能假设配置了FRF.12。
使用show interface命令查看两个队列的大小。以下步骤显示双FIFO队列并描述如何更改队列大小。
执行show interface serial命令。高优先级队列使用的队列限制是低优先级队列限制的两倍。
Router# show interface serial 6/0:0 Serial6/0:0 is up, line protocol is down Hardware is Multichannel T1 MTU 1500 bytes, BW 64 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation FRAME-RELAY, crc 16, Data non-inverted Keepalive set (10 sec) LMI enq sent 236, LMI stat recvd 0, LMI upd recvd 0, DTE LMI down LMI enq recvd 353, LMI stat sent 0, LMI upd sent 0 LMI DLCI 1023 LMI type is CISCO frame relay DTE Broadcast queue 0/64, broadcasts sent/dropped 0/0, interface broadcasts 0 Last input 00:00:02, output 00:00:02, output hang never Last clearing of "show interface" counters 00:39:22 Queueing strategy: dual FIFO! --- Queue mechanism. Output queue: high size/max/dropped 0/256/0 !--- High-priority queue. Output queue 0/128, 0 drops; input queue 0/75, 0 drops !--- Low-priority queue. 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 353 packets input, 4628 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 353 packets output, 4628 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions no alarm present Timeslot(s) Used:12, subrate: 64Kb/s, transmit delay is 0 flags
使用hold-queue {value} out命令更改接口队列大小。
Router(config)# interface serial 6/0:0 Router(config-if)# hold-queue ? <0-4096> Queue length Router(config-if)# hold-queue 30 ? in Input queue out Output queue Router(config-if)# hold-queue 30 out
再次执行show interface serial命令,并注意“输出队列”的最大值是如何变化的。
Router# show interface serial 6/0:0 Serial6/0:0 is up, line protocol is up Hardware is Multichannel T1 MTU 1500 bytes, BW 64 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation FRAME-RELAY, crc 16, Data non-inverted Keepalive set (10 sec) LMI enq sent 249, LMI stat recvd 0, LMI upd recvd 0, DTE LMI down LMI enq recvd 372, LMI stat sent 0, LMI upd sent 0 LMI DLCI 1023 LMI type is CISCO frame relay DTE Broadcast queue 0/64, broadcasts sent/dropped 0/0, interface broadcasts 0 Last input 00:00:02, output 00:00:02, output hang never Last clearing of "show interface" counters 00:41:32 Queueing strategy: dual FIFO !--- Queue mechanism. Output queue: high size/max/dropped 0/60/0 !--- High-priority queue. Output queue 0/30, 0 drops; input queue 0/75, 0 drops !--- Low-priority queue. 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 372 packets input, 4877 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 372 packets output, 4877 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions no alarm present Timeslot(s) Used:12, subrate: 64Kb/s, transmit delay is 0 flags
帧中继PIPQ是为配置而设计的,其中独立的VC承载的是一种流量类型,例如语音或数据。这允许您为每个PVC分配优先级值。PIPQ通过确保高优先级VC首先得到服务,最大程度地降低了接口级别的序列化或排队延迟。PIPQ通过提取DLCI并在适当的PVC结构中查找优先级来对数据包进行分类。PIPQ机制不查看数据包内容。因此,它不会根据数据包内容做出决策。
使用以下命令配置PIPQ。
在主接口上使用frame-relay interface-queue priority命令启用PIPQ。
Router(config)# interface serial 6/0:0 Router(config-if)# frame-relay interface-queue priority Router(config-if)# end
使用show interface serial命令确认“Queueing strategy: DLCI priority”。此命令还显示每个队列的当前大小和丢弃数。
Router# show interface serial 6/0:0 Serial6/0:0 is up, line protocol is up Hardware is Multichannel T1 MTU 1500 bytes, BW 64 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation FRAME-RELAY, crc 16, Data non-inverted Keepalive set (10 sec) LMI enq sent 119, LMI stat recvd 0, LMI upd recvd 0, DTE LMI down LMI enq recvd 179, LMI stat sent 0, LMI upd sent 0 LMI DLCI 1023 LMI type is CISCO frame relay DTE Broadcast queue 0/64, broadcasts sent/dropped 0/0, interface broadcasts 0 Last input 00:00:06, output 00:00:06, output hang never Last clearing of "show interface" counters 00:19:56 Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: DLCI priority !--- Queue mechanism. Output queue (queue priority: size/max/drops): high: 0/20/0, medium: 0/40/0, normal: 0/60/0, low: 0/80/0 !--- Queue size. 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 179 packets input, 2347 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 179 packets output, 2347 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions no alarm present Timeslot(s) Used:12, subrate: 64Kb/s, transmit delay is 0 flags
使用frame-relay interface-queue priority {high|medium|normal|low}命令构建帧中继映射类并为VC分配优先级。默认PVC优先级为正常。具有相同优先级的所有PVC共享相同的FIFO优先级队列。将映射类应用于VC。在下面的输出示例中,DLCI号为21的PVC被分配给高优先级接口队列。
Router(config)# map-class frame-relay high_priority_class Router(config-map-class)# frame-relay interface-queue priority high Router(config-map-class)# exit Router(config)# interface serial 6/0:0.2 point Router(config-subif)# frame-relay interface-dlci 21 Router(config-fr-dlci)# class ? WORD map class name Router(config-fr-dlci)# class high_priority_class
使用show frame-relay PVC [dlci]和show queueing interface命令确认配置更改。
Router# show frame PVC 21 PVC Statistics for interface Serial6/0:0 (Frame Relay DTE) DLCI = 21, DLCI USAGE = LOCAL, PVC STATUS = INACTIVE, INTERFACE = Serial6/0:0.2 input pkts 0 output pkts 0 in bytes 0 out bytes 0 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 0 out bcast bytes 0 PVC create time 00:00:17, last time PVC status changed 00:00:17 cir 56000 BC 7000 be 0 byte limit 875 interval 125 mincir 28000 byte increment 875 Adaptive Shaping none pkts 0 bytes 0 pkts delayed 0 bytes delayed 0 shaping inactive traffic shaping drops 0 Queueing strategy: FIFO Output queue 0/40, 0 drop, 0 dequeued !--- Size of the PVC queue. priority high !--- All frames from this PVC are dequeued to the high-priority queue !--- at the interface. Router# show queueing interface serial 6/0:0 Interface Serial6/0:0 queueing strategy: priority Output queue utilization (queue/count) high/13 medium/0 normal/162 low/0
或者,使用以下命令配置每个接口队列的大小。高、中、普通和低优先级队列的默认大小分别为20、40、60和80个数据包。要配置其他值,请在接口配置模式下使用命令frame-relay interface-queue priority [<high limit><medium limit><normal limit><low limit>]。
一旦启用,PIPQ将覆盖任何其它帧中继接口排队机制,包括双FIFO。如果随后启用FRF.12或FRTS,接口级排队机制将不会恢复到双FIFO。此外,如果接口上已配置非默认花式排队机制,则无法启用PIPQ。如果WFQ是默认接口排队方法,则可以在WFQ存在时启用它。如果启用FRF.12,删除PIPQ配置会将接口级队列更改为默认或双FIFO。
PIPQ应用严格的优先级队列。如果流量持续出列到高优先级队列,队列调度程序将调度高优先级队列,并且可能有效地使低优先级队列缺水。因此,请注意将PVC分配给高优先级队列。
TX环是未优先化的FIFO缓冲区,用于在传输之前存储帧。帧中继接口使用由所有VC共享的单个TX环。默认情况下,高速串行WAN接口的TX环大小为64个数据包,包括PA-T3+、PA-MC-2T3+和PA-H。低速广域网端口适配器现在自动将TX环调低到2个数据包的值。换句话说,接口驱动程序根据带宽量设置唯一的默认TX环值。
队列 | 位置 | 排队方法 | 应用服务策略 | 调整命令 |
---|---|---|---|---|
每个接口的硬件队列或传输环路 | 端口适配器或网络模块 | 仅 FIFO | 无 | tx-ring-limit |
每个VC的第3层队列 | 第 3 层处理器系统或接口缓冲区 | FIFO、WFQ、CBWFQ或LLQ | Yes | 随排队方法变化:
|
注意:与PA-A3等ATM接口不同,帧中继接口使用单个传输环作为接口。它们不会为每个VC构建单独的环。
了解TX环是FIFO并且不支持替代排队机制非常重要。因此,在低速接口上将TX环调低到2值,可以有效地将大部分数据包缓冲移到PVC队列,而花哨的排队机制和QoS服务策略确实适用于该PVC队列。
下表列出了7x00系列的串行端口适配器,用于自动调低传输环。
端口适配器部件号 | TX环限制自动调整 |
---|---|
高速串行端口适配器 | |
PA-H和PA-2H | Yes |
PA-E3和PA-T3 | Yes |
PA-T3+ | Yes |
多通道串行端口适配器 | |
PA-MC-2T3+ | Yes |
PA-MC-2T1(=)、PA-MC-4T1(=)、PA-MC-8T1(=)、PA-MC-8DSX1(=) | Yes |
PA-MC-2E1/120(=)、PA-MC-8E1/120(=) | Yes |
PA-MC-T3、PA-MC-E3 | Yes |
PA-MC-8TE1+ | Yes |
PA-STM1 | Yes |
串行端口适配器 | |
PA-4T、PA-4T+ | Yes |
PA-4E1G | Yes |
PA-8T-V35、PA-8T-X21、PA-8T-232 | Yes |
启用语音优化功能后,传输环的大小将自动调低。此外,应用PIPQ可使传输环路自动关闭。
以下输出是在运行Cisco IOS软件版本12.2(6)的7200系列路由器上捕获的。
7200-16# show controller serial 6/0:0 Interface Serial6/0:0 f/w rev 1.2.3, h/w rev 163, PMC freedm rev 1 idb = 0x6382B984 ds = 0x62F87C18, plx_devbase=0x3F020000, pmc_devbase=0x3F000000 Enabled=TRUE, DSX1 linestate=0x0, Ds>tx_limited:1 Ds>tx_count:0 Ds>max_tx_count:20 alarm present Timeslot(s) Used:1-24, subrate: 64Kb/s, transmit delay is 0 flags Download delay = 0, Report delay = 0 IDB type=0xC, status=0x84208080 Pci shared memory = 0x4B16B200 Plx mailbox addr = 0x3F020040 RxFree queue=0x4B2FA280, shadow=0x62F9FA70 Rx freeq_wt=256, freeq_rd=256, ready_wt=1, ready_rd=0 TxFree queue=0x4B2FAAC0, shadow=0x62F8FA44 TX freeq_wt=4099, freeq_rd=4099, ready_wt=4, ready_rd=3 # of TxFree queue=4095 Freedm FIFO (0x6292BF64), hp=0x6292C034 indx=26, tp=0x6292CF5C indx=511 reset_count=0 resurrect_count=0 TX enqueued=0, throttled=0, unthrottled=0, started=10 tx_limited=TRUE tx_queue_limit=2 !--- Note "tx_limited=TRUE" when PIPQ is enabled. The "tx_queue_limit" value !--- describes the value of the transmit ring. 7200-16(config)# interface serial 6/0:0 7200-16(config-if)# no frame-relay interface-queue priority 7200-16(config-if)# end 7200-16# show controller serial 6/0:0 Interface Serial6/0:0 f/w rev 1.2.3, h/w rev 163, PMC freedm rev 1 idb = 0x6382B984 Ds = 0x62F87C18, plx_devbase=0x3F020000, pmc_devbase=0x3F000000 Enabled=TRUE, DSX1 linestate=0x0, Ds>tx_limited:0 Ds>tx_count:0 Ds>max_tx_count:20 alarm present Timeslot(s) Used:1-24, subrate: 64Kb/s, transmit delay is 0 flags Download delay = 0, Report delay = 0 IDB type=0xC, status=0x84208080 Pci shared memory = 0x4B16B200 Plx mailbox addr = 0x3F020040 RxFree queue=0x4B2FA280, shadow=0x62F9FA70 Rx freeq_wt=256, freeq_rd=256, ready_wt=1, ready_rd=0 TxFree queue=0x4B2FAAC0, shadow=0x62F8FA44 TX freeq_wt=4099, freeq_rd=4099, ready_wt=4, ready_rd=3 # of TxFree queue=4095 Freedm FIFO (0x6292BF64), hp=0x6292C034 indx=26, tp=0x6292CF5C indx=511 reset_count=0 resurrect_count=0 TX enqueued=0, throttled=0, unthrottled=0, started=11 tx_limited=FALSE !--- Transmit ring value has changed.