Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DQOS Exam Certification Guide - Cisco press.pdf
Скачиваний:
73
Добавлен:
24.05.2014
Размер:
12.7 Mб
Скачать

Link Fragmentation and Interleaving 499

Now imagine that you need to configure R1 in the figure to use MLP LFI. You already know that you want a maximum serialization delay of 10 ms, and conveniently, MLP LFI enables you to configure a max-delay parameter. MLP LFI then calculates the fragment size, based on the following formula:

Max-delay * bandwidth

In this formula, bandwidth is the value configured on the bandwidth interface subcommand, and max-delay is the serialization delay configured on the ppp multilink fragment-delay command. For instance, R1 in Figure 7-8 shows a budget for 10 ms of serialization delay. On a 56-kbps link, a 10-ms max-delay would make the fragment size 56,000 * .01, or 560 bits, which is 70 bytes.

Cisco generally suggests a maximum serialization delay per link of 10 ms in multiservice networks. Because serialization delay becomes less than 10 ms for 1500-byte packets at link speeds greater than 768 kbps, Cisco recommends that LFI be considered on links with a 768-kbps clock rate and below.

The math used to find the fragment size, based on the serialization delay and bandwidth, is pretty easy. For perspective, Table 7-8 summarizes the calculated fragment sizes based on the bandwidth and maximum delay.

Table 7-8 Fragment Sizes Based on Bandwidth and Serialization Delay

Bandwidth/Link Speed

10-ms Delay

20-ms Delay

30-ms Delay

40-ms Delay

 

 

 

 

 

56 kbps

70

140

210

280

 

 

 

 

 

64 kbps

80

160

240

320

 

 

 

 

 

128 kbps

160

320

480

560

 

 

 

 

 

256 kbps

320

640

960

1280

 

 

 

 

 

512 kbps

640

1280

1920*

2560*

 

 

 

 

 

768 kbps

1000

2000*

3000*

4000*

 

 

 

 

 

1536 kbps

1600*

3200*

4800*

6400*

 

 

 

 

 

*Values over 1500 exceed the typical maximum transmit unit (MTU) size of an interface. Fragmentation of sizes larger than MTU does not result in any fragmentation.

Frame Relay LFI Using FRF.12

Cisco IOS Software supports two flavors of Frame Relay LFI. The more popular option, FRF.12, is based on Frame Relay Forum Implementation Agreement 12, with the other option, FRF.11-C, being based on Frame Relay Forum Implementation Agreement 11, Annex C. FRF.12 applies to data VCs, and FRF.11-C applies to voice VCs. Because most Frame Relay VCs are data VCs, and because most service providers do not offer FRF.11 (VoFR) VCs, this section focuses on FRF.12. The final part of the FRF configuration section at the end of this chapter covers the differences between FRF.12 and FRF.11-C.

500 Chapter 7: Link-Efficiency Tools

NOTE

Another LFI feature, called multilink PPP over Frame Relay and ATM, also provides an option

 

for LFI. This option is suited for environments that use Frame Relay/ATM internetworking and

 

desire to run delay-sensitive applications such as VoIP on slow-speed WAN links.

 

 

FRF.12 varies greatly from MLP LFI in terms of how it works with queuing tools. IOS requires that Frame Relay traffic shaping (FRTS) be used to also use FRF.12. Remember all the trivia from Chapter 5, “Traffic Policing and Shaping”? You may recall that FRTS can apply queuing tools to shaping queues associated with each VC, but FRTS only allows a single FIFO queue on the physical interface. When you add FRF.12 to FRTS, however, two interface FIFO output queues are created rather than the single FIFO queue. Figure 7-9 shows the two FIFO interface output queues, called Dual FIFO queues, with FTRS and FRF.12.

Figure 7-9 Interface Dual FIFO Queues with FRTS and FRF.12

1500 Byte Packet Arrives, Followed by One 60 Byte Packet

 

 

“Dual FIFO” Queue 1

 

 

 

 

 

 

Small

 

TX Queue, Length 2

 

 

 

Packet

 

 

 

 

 

 

 

Fragment

 

 

 

Schedule

Frag 2

Frag1

Classify

 

 

Like PQ

 

 

 

 

if > 300

 

 

 

 

 

Frag 5

Frag 4

Frag 3

 

 

 

 

 

 

 

 

 

“Dual FIFO” Queue 2

 

 

 

Figure 7-9 focuses on the interface output queues, ignoring the shaping queues. Just like in the figure that depicted MLP LFI, a 1500-byte packet arrives, followed by a 60-byte packet. The large packet is fragmented into five 300-byte packets, with the first two being placed into the TX Queue, and the last three ending up in one of the interface output queues. The small packet arrives next, and it is not fragmented, because it is less than 300 bytes in length. It is placed into the other Dual FIFO queue.

This two-queue Dual FIFO structure acts like the queuing tools described in Chapter 4 in many ways. It has classification logic that places packets into one queue or the other (more on that in a few paragraphs). It has a number of queues (always two), and it has particular behavior inside each queue (FIFO). It also performs scheduling between the two queues using an algorithm

Link Fragmentation and Interleaving 501

such as Priority Queuing’s (PQ) scheduling algorithm. Therefore, to understand what happens, you need to take a closer look at the classification logic and the scheduling algorithm applied to the Dual FIFO queues.

First, when a packet passes through the fragmentation step in Figure 7-9, if there are no packets in either Dual FIFO queue, and there is room in the TX Queue/TX Ring, the fragments get placed into the TX Ring/TX Queue until it is full. That’s why in Figure 7-9 the first two fragments of the large packet got placed into the 2-entry TX Queue. Then, when the TX Queue is full, packets are placed into one of the two Dual FIFO queues.

IOS schedules packets from the Dual FIFO interface queues into the interface TX Queue in a PQ-like fashion. The logic treats one of the two Dual FIFO queues like the PQ High queue, and the other like the PQ Normal queue. The scheduler always takes packets from the High queue first if one is available; otherwise, the scheduler takes a packet from the Normal queue. Just like PQ, the scheduler always checks the High queue for a packet before checking the Normal queue. Although IOS does not give a lot of information about the two Dual FIFO queues in show commands, one command (show queueing interface) does list counters for the High and Normal queues. (This book refers to these two queues as the High and Normal Dual FIFO queues, even though most other IOS documents and courses do not even name the two queues.)

The classification logic with the FRF.12 Dual FIFO queues appears to be very straightforward. One popular school of thought concerns how FRF.12 classifies packets into the Dual FIFO queues, however, and another less-popular school of thought describes how classification really works. Most of the available references, including the courses on which the exams are based, state that the classification boils down to this:

Fragmented packets are placed in the Normal Dual FIFO queue.

Unfragmented packets are placed in the High Dual FIFO queue.

Putting the classification logic together with the queue service logic makes one neat package. LFI wants to interleave the small packets between fragments of the larger packets. By classifying the unfragmented packets into the High queue, and the fragments into the Normal queue, the PQ-like queue service algorithm interleaves unfragmented packets in front of fragmented packets.

In spite of what the courses actually say, FRF.12 actually classifies packets into one of the Dual FIFO interface output queues based on the queuing configuration for the shaping queues on each VC. FRTS allows a large variety of queuing tools to be configured for the shaping queues. Two of these queuing tools, if enabled on the shaping Queue of a VC, cause packets to be placed in the High Dual FIFO queue on the physical interface. Figure 7-10 outlines the main concept.

502 Chapter 7: Link-Efficiency Tools

Figure 7-10 Classification Between FRTS LLQ Shaping Queues and Interface Dual FIFO Queues with FRF.12

Shaping Queues Created

 

 

by LLQ Configuration

 

 

on a Single VC

 

FRF.12 Dual FIFO Queues

 

 

Class 1 –

 

 

LLQ

 

 

 

 

High Queue

Class 2 –

 

TX Ring

Non-LLQ

 

Shape

Normal

 

 

 

 

 

Queue

Class 3 –

 

 

Non-LLQ

 

 

Class 3 –

 

 

Non-LLQ

 

 

The figure depicts LLQ for the shaping queue on a single VC feeding into the interface Dual FIFO queues. The shaping logic remains unchanged, as does the LLQ logic for the shaping queues—in other words, with or without FRF.12 configured, the behavior of shaping acts the same. The only difference created by adding FRF.12 to FRTS comes when FRTS must decide which of the two interface Dual FIFO queues to place the packet into after the shaper allows it to pass. (Without FRF.12, a single FIFO interface queue exists, in which case classification logic is not needed.)

As shown in the figure, the only way a packet makes it to the High Dual FIFO queue is to have first been in the low-latency queue. In other words, FRF.12 determines which packets are interleaved based on which packets were placed into the low-latency queue in the shaping queue.

The classification logic and the scheduling logic make perfect sense if you consider the packets that need the minimal latency. When you purposefully configure LLQ for shaping queues, the class of packets you place into the low-latency queue must be the ones for which you want to minimize latency. FRF.12 should interleave those same packets to further reduce latency; therefore, FRF.12 just places those same packets into the Dual FIFO High queue.

NOTE Because the Dual FIFO queues created by FRF.12 essentially creates a high-priority queue appropriate for VoIP traffic, when you are using FRTS, Cisco also recommends configuring LFI on links that run at speeds greater than 768 kbps. However, you should configure the fragment size to something larger than the MTU—for instance, 1500 bytes. By doing so, no packets are actually fragmented, but VoIP packets can be placed in the high-priority queue in the Dual FIFO queuing system on the physical interface.