Link layer fragmenation interleaving for real-time packets ---------------------------------------------------------- (using Multilink PPP) Description ----------- Interleaving on Multilink PPP allows large packets to be multilink encapsulated and fragmented into a small enough size to satisfy the delay requirements of real-time traffic; small real-time packets are not multilink encapsulated and are transmitted between fragments of the large packets. The interleaving feature also works with WFQ so that the smaller, delay-sensitive packets can be transmitted earlier than other flows. Weighted fair-queuing on Multilink PPP works on the packet level, not at the level of multilink fragments. Thus, if a small real-time packet gets queued behind a larger best-effort packet and no special queue has been reserved for real-time packets, the small packet will be scheduled for transmission only after all the fragments of the larger packet are scheduled for transmission. Previously, fair-queuing was not allowed on virtual access interfaces and virtual interface templates. Interleaving provides the delay bounds for delay-sensitive voice packets on a slow link that is used for other best-effort traffic. Restrictions ------------ Interleaving applies only to interfaces that can configure a multilink bundle interface. These include virtual-templates, dialer interfaces, and ISDN BRI or PRI interfaces. Multilink and fair queuing are not supported when a multilink bundle is off-loaded to a different system using Multichassis Multilink PPP. Thus, interleaving is not supported in Multichassis Multilink PPP (MMP) networking designs. Platforms --------- This feature is supported on all platforms on which Multilink PPP is supported, which include these platforms: Cisco 1003, 1004, 1005 Cisco 2500 series Cisco 4000 series (Cisco 4000, 4000-M, 4500, 4500-M, 4700, 4700-M) Cisco AS5200 Cisco 7000 series Cisco 7200 series Cisco 7500 series Prerequisites ------------- Before you configure interleaving, Multilink PPP must be configured on the relevant interface and the interface must be operational. Fair queueing, which is enabled by default, must remain enabled on the interface. Configuration Tasks ------------------- Multilink PPP support for interleaving can be configured on virtual-templates, dialer interfaces, and ISDN BRI or PRI interfaces. To configure interleaving, complete the following tasks: Step Configure the dialer interface, BRI interface, PRI interface, or virtual template, as defined in the relevant chapters of the Cisco IOS Release 11.2 Wide-Area Networking Configuration Guide. Step Enable Multilink PPP and interleaving on the interface or template. To configure Multilink PPP and interleaving on a configured and operational interface or virtual interface template, perform the following tasks in interface mode: Task Command Step 1 Enable Multilink PPP. ppp multilink Step 2 Enable real-time packet interleaving. ppp multilink interleave Step 3 Optionally, configure a maximum fragment delay. ppp multilink fragment-delay milliseconds Step 4 Reserve a special queue for real-time packet flows to specified destination UDP ports, allowing real-time traffic to have higher priority than other flows. (this is not necessary, but an additional optimization). ip rtp reserve lowest-UDP-port range-of-ports [maximum-bandwidth] Step 5 For virtual templates only, apply the virtual template to the multilink bundle. multilink virtual-template 1 Configuration Examples ---------------------- The following example defines a virtual interface template that enables Multilink PPP interleaving and a maximum real-time traffic delay of 20 milliseconds, and then applies that virtual template to the multilink PPP bundle: interface virtual-template 1 ip unnumbered ethernet 0 ppp multilink ppp multilink interleave ppp multilink fragment-delay 20 ip rtp reserve 32768 20 1000 multilink virtual-template 1 The following example enables Multilink PPP interleaving on a dialer interface that controls a rotary group of BRI interfaces. This configuration permits IP packets to trigger calls. interface BRI 0 description connected into a rotary group encapsulation ppp dialer rotary-group 1 interface BRI 1 no ip address encapsulation ppp dialer rotary-group 1 interface BRI 2 encapsulation ppp dialer rotary-group 1 interface BRI 3 no ip address encapsulation ppp dialer rotary-group 1 interface BRI 4 encapsulation ppp dialer rotary-group 1 interface Dialer 0 description Dialer group controlling the BRIs ip address 8.1.1.1 255.255.255.0 encapsulation ppp dialer map ip 8.1.1.2 name angus 14802616900 dialer-group 1 ppp authentication chap ! Enables Multilink PPP interleaving on the dialer interface and reserves ! a special queue. ppp multilink ppp multilink interleave ip rtp reserve 32768 20 100 ! Keeps fragments of large packets small enough to ensure delay of ! 20 milliseconds or less. ppp multilink fragment-delay 20 dialer-list 1 protocol ip permit Commands Details ---------------- ip rtp reserve ------------- To reserve a special queue for a set of Real-time Transport Protocol (RTP) packet flows belonging to a range of UDP destination ports, use the ip rtp reserve interface configuration command.To disable the special queue for real-time traffic, use the no form of the command. ip rtp reserve lowest-UDP-port range-of-ports [maximum-bandwidth] no rtp reserve Syntax Description lowest-UDP-port Lowest UDP port number to which the packets are sent. range-of-ports Number, which added to the lowest-UDP-port value, yields the highest UDP port value. maximum-bandwidth Bandwidth, in kilobits per second, reserved for the RTP packets to the specified UDP ports. Default This function is disabled by default. No default values are provided for the arguments. Command Mode Interface configuration Usage Guidelines This command first appeared in Release 11.2F. If the bandwidth needed for RTP packet flows exceeds the maximum bandwidth specified, the reserved queue will degrade to a best-effort queue. This command helps in improving the delay bounds of voice streams by giving them a higher priority. Example The following example reserves a unique queue for traffic to destination UDP ports in the range 32768 to 32788 and reserves 1,000 kbps bandwidth for that traffic. ip rtp reserve 32768 20 1000 Related Commands ppp multilink ppp multilink fragment-delay ppp multilink interleave ppp multilink fragment-delay ---------------------------- To configure a maximum delay in milliseconds allowed for transmission of a packet fragment on a Multilink PPP bundle, use the ppp multilink fragment-delay interface configuration command. To reset the maximum delay to the default value, use the no form of the command. ppp multilink fragment-delay milliseconds no ppp multilink fragment-delay Syntax Description milliseconds Maximum delay in milliseconds allowed for any packet fragment. Default is 30 milliseconds. Default This command is disabled by default. Default delay is 30 milliseconds. Command Mode Interface configuration Usage Guidelines The ppp multilink fragment-delay command applies only to interfaces that can configure a bundle interface. These include virtual-templates, dialer interfaces, and ISDN BRI or PRI interfaces. Multilink PPP chooses a fragment size based on the maximum delay allowed. If real-time traffic requires a certain maximum bound on delay, using this command to set that maximum delay can ensure that a realtime packet will get interleaved within the fragments of a large packet. Example In the following example, a voice stream is required to have a maximum bound on delay of 20 milliseconds: ppp multilink fragment-delay 20 Related Commands ip rtp reserve ppp multilink ppp multilink interleave ppp multilink interleave ------------------------ To enable interleaving of Real-Time Transport packets among the fragments of larger packets on a Multilink PPP bundle, use the ppp multilink interleave interface configuration command. To disable interleaving, use the no form of the command. ppp multilink interleave no ppp multilink interleave Syntax Description This command has no arguments and keywords. Default This function is disabled by default. Command Mode Interface configuration Usage Guidelines This command first appeared in Release 11.2F. The ppp multilink interleave command applies only to interfaces that can configure a bundle interface. These include virtual-templates, dialer interfaces, and ISDN BRI or PRI interfaces. Example The following example defines a virtual interface template that enables Multilink PPP interleaving and a maximum real-time traffic delay of 20 milliseconds, and then applies that virtual template to the multilink PPP bundle: interface virtual-template 1 ip unnumbered ethernet 0 ppp multilink ppp multilink interleave ppp multilink fragment-delay 20 multilink virtual-template 1 Related Commands ip rtp reserve ppp multilink ppp multilink fragment-delay Show commands ------------- show interfaces --------------- When MLP interleaving is enabled on an interface, a show interfaces command shows interleaves only if there are interleaves. Output queue: 315/64/164974/31191 (size/threshold/drops/interleaves) Sample Display The following is sample output from the show interfaces bri command shows interleaves: Router# show interfaces bri 0:1 BRI0:1 is down, line protocol is down Hardware is BRI MTU 1500 bytes, BW 64 Kbit, DLY 20000 usec, rely 255/255, load 1/255 Encapsulation PPP, loopback not set, keepalive not set LCP Closed Closed: IPCP Last input never, output never, output hang never Last clearing of "show interface" counters never Queueing strategy: fifo Output queue: 315/64/164974/31191 (size/threshold/drops/interleaves) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 0 packets input, 0 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 0 packets output, 0 bytes, 0 underruns 0 output errors, 0 collisions, 7 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions show queuing virtual-access --------------------------- To display information about interleaving, use the show queuing EXEC command. show queuing virtual-access number Syntax Description number Virtual access interface number. Command Mode EXEC Sample Display The folowing is sample output of the show queuing virtual-access command: Router# show queueing virtual-access 1 Input queue: 0/75/0 (size/max/drops); Total output drops: 164974 Queueing strategy: weighted fair Output queue: 315/64/164974/31191 (size/threshold/drops/interleaves) Conversations 5/8 (active/max active) Reserved Conversations 2/2 (allocated/max allocated) (depth/weight/discards/interleaves) 64/4096/38669/0 Conversation 36, linktype: ip, length: 52 source: 140.3.3.201, destination: 225.1.2.3, id: 0x0001, ttl: 254, TOS: 0 prot: 17, source port 6789, destination port 2345 (depth/weight/discards/interleaves) 64/4096/0/0 Conversation 2, linktype: ip, length: 52 source: 140.3.3.201, destination: 225.1.2.4, id: 0x0001, ttl: 254, TOS: 0 prot: 17, source port 5432, destination port 9870