Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Navigation

Configuring LSQ Interfaces for Single Fractional T1 or E1 Interfaces Using FRF.12

To configure a single fractional T1 interface using FRF.16, you associate a DS0 interface with a link services IQ (lsq) interface. When you configure a single fractional T1, the fractional T1 carries a potentially large number of Frame Relay PVCs identified by their DLCIs. Each DLCI is called a logical interface, because it can represent, for example, a routing adjacency. To associate the DS0 interface with a link services IQ interface, include the bundle statement at the [edit interfaces ds-fpc/pic/port:channel unit logical-unit-number family mlfr-end-to-end] hierarchy level:

[edit interfaces ds-fpc/pic/port:channel unit logical-unit-number family mlfr-end-to-end]bundle lsq-fpc/pic/port.logical-unit-number;

Note: Link services IQ interfaces support both T1 and E1 physical interfaces. These instructions apply to T1 interfaces, but the configuration for E1 interfaces is similar.

To configure the link services IQ interface properties, include the following statements at the [edit interfaces lsq-fpc/pic/port unit logical-unit-number] hierarchy level:

[edit interfaces lsq-fpc/pic/port unit logical-unit-number]drop-timeout milliseconds;encapsulation multilink-frame-relay-end-to-end;fragment-threshold bytes;link-layer-overhead percent;minimum-links number;mrru bytes;short-sequence;family inet {address address;}

The logical link services IQ interface represents the FRF.12 bundle. Four queues are associated with each logical interface. A scheduler removes packets from the queues according to a scheduling policy. Typically, you designate one queue to have strict priority, and the remaining queues are serviced in proportion to weights you configure.

For FRF.12, assign a single scheduler map to the link services IQ interface (lsq) and to each constituent link. For M Series and T Series routers, the default schedulers, which assign 95, 0, 0, and 5 percent bandwidth for the transmission rate and buffer size of queues 0, 1, 2, and 3, are not adequate when you configure LFI or multiclass traffic. Therefore, for FRF.12, you should configure schedulers with nonzero percent transmission rates and buffer sizes for queues 0 through 3, and assign them to the link services IQ interface (lsq) and to each constituent link, as shown in Examples: Configuring an LSQ Interface for a Fractional T1 Interface Using FRF.12.

Note: For M320 and T Series routers, the default scheduler transmission rate and buffer size percentages for queues 0 through 7 are 95, 0, 0, 5, 0, 0, 0, and 0 percent.

To configure and apply the scheduling policy, include the following statements at the [edit class-of-service] hierarchy level:

[edit class-of-service]interfaces {ds-fpc/pic/port.channel {scheduler-map map-name;}}forwarding-classes {queue queue-number class-name;}scheduler-maps {map-name {forwarding-class class-name scheduler scheduler-name;}}schedulers {scheduler-name {buffer-size (percent percentage | remainder | temporal microseconds);priority priority-level;transmit-rate (rate | percent percentage | remainder) <exact>;}}

For link services IQ interfaces, a strict-high-priority queue might starve the other three queues because traffic in a strict-high-priority queue is transmitted before any other queue is serviced. This implementation is unlike the standard Junos CoS implementation in which a strict-high-priority queue does round-robin with high-priority queues, as described in the Junos OS Class of Service Configuration Guide.

After the scheduler removes a packet from a queue, a certain action is taken. The action depends on whether the packet came from a multilink encapsulated queue (fragmented and sequenced) or a nonencapsulated queue (hashed with no fragmentation). Each queue can be designated as either multilink encapsulated or nonencapsulated, independently of the other. By default, traffic in all forwarding classes is multilink encapsulated. To configure packet fragmentation handling on a queue, include the fragmentation-maps statement at the [edit class-of-service] hierarchy level:

[edit class-of-service]fragmentation-maps {map-name {forwarding-class class-name {fragment-threshold bytes;no-fragmentation;}}}

If you require the queue to transmit small packets with low latency, configure the queue to be nonencapsulated by including the no-fragmentation statement. If you require the queue to transmit large packets with normal latency, configure the queue to be multilink encapsulated by including the fragment-threshold statement. If you require the queue to transmit large packets with low latency, we recommend using a faster link and configuring the queue to be nonencapsulated. For more information about fragmentation maps, see Configuring CoS Fragmentation by Forwarding Class on LSQ Interfaces.

When a packet is removed from a multilink-encapsulated queue, it is fragmented. If the packet exceeds the minimum link MTU, or if a queue has a fragment threshold configured at the [edit class-of-service fragmentation-maps map-name forwarding-class class-name] hierarchy level, the software splits the packet into two or more fragments, which are assigned consecutive multilink sequence numbers.

If you do not include the fragment-threshold statement in the fragmentation map, the fragmentation threshold you set at the [edit interfaces interface-name unit logical-unit-number] hierarchy level is the default for all forwarding classes. If you do not set a maximum fragment size anywhere in the configuration, packets are fragmented if they exceed the smallest MTU of all the links in the bundle.

Even if you do not set a maximum fragment size anywhere in the configuration, you can configure the maximum received reconstructed unit (MRRU) by including the mrru statement at the [edit interfaces lsq-fpc/pic/port unit logical-unit-number] hierarchy level. The MRRU is similar to the MTU but is specific to link services interfaces. By default, the MRRU size is 1500 bytes, and you can configure it to be from 1500 through 4500 bytes. For more information, see Configuring MRRU on Multilink and Link Services Logical Interfaces.

When a packet is removed from a multilink-encapsulated queue, the software gives the packet an FRF.12 header. The FRF.12 header contains a sequence number field, which is filled with the next available sequence number from a counter. The software then places the packet on the fractional T1 link. Traffic from another queue might be interleaved between two fragments of the packet.

When a packet is removed from a nonencapsulated queue, it is transmitted with a plain Frame Relay header. The packet is then placed on the fractional T1 link as soon as possible. If necessary, the packet is placed between the fragments of a packet from another queue.

The fractional T1 interface links to another router, which can be from Juniper Networks or another vendor. The router at the far end gathers packets from the fractional T1 link. If a packet has an FRF.12 header, the software assumes the packet is a fragment of a larger packet, and the fragment number field is used to reassemble the larger packet. If the packet has a plain Frame Relay header, the software accepts the packet in the order in which it arrives, and the software makes no attempt to reassemble or reorder the packet.

A whole packet from a nonencapsulated queue can be placed between fragments of a multilink-encapsulated queue. However, fragments from one multilink-encapsulated queue cannot be interleaved with fragments from another multilink-encapsulated queue. This is the intent of the specification FRF.12, Frame Relay Fragmentation Implementation Agreement. If fragments from two different queues were interleaved, the header fields might not have enough information to separate the fragments.

Examples: Configuring an LSQ Interface for a Fractional T1 Interface Using FRF.12

FRF.12 with Fragmentation and Without LFI

This example shows a 128 KB DS0 interface. There is one traffic stream on ge-0/0/0, which is classified into queue 0 (be). Packets are fragmented in the link services IQ (lsq-) interface according to the threshold configured in the fragmentation map.

[edit chassis]fpc 0 {pic 3 {adaptive-services {service-package layer-2;}}}[edit interfaces]ge-0/0/0 {unit 0 {family inet {address 20.1.1.1/24 {arp 20.1.1.2 mac 00.90.1b.12.34.56;}}}}ce1-0/2/0 {partition 1 timeslots 1-2 interface-type ds;}ds-0/2/0:1 {no-keepalives;dce;encapsulation frame-relay;unit 0 {dlci 100;family mlfr-end-to-end {bundle lsq-0/3/0.0;}}}lsq-0/3/0 {per-unit-scheduler;unit 0 {encapsulation multilink-frame-relay-end-to-end;family inet {address 10.200.0.78/30;}}}fxp0 {unit 0 {family inet {address 172.16.1.162/24;}}}lo0 {unit 0 {family inet {address 10.0.0.1/32;}}}[edit class-of-service]forwarding-classes {queue 0 be;queue 1 ef;queue 2 af;queue 3 nc;}interfaces {lsq-0/3/0 {unit 0 {fragmentation-map map1;}}}fragmentation-maps {map1 {forwarding-class {be {fragment-threshold 160;}}}}

FRF.12 with Fragmentation and LFI

This example shows a 512 KB DS0 bundle and four traffic streams on ge-0/0/0 that are classified into four queues. The fragment size is 160 for queue 0, queue 1, and queue 2. The voice stream on queue 3 has LFI configured.

[edit chassis]fpc 0 {pic 3 {adaptive-services {service-package layer-2;}}}[edit interfaces]ge-0/0/0 {unit 0 {family inet {address 20.1.1.1/24 {arp 20.1.1.2 mac 00.90.1b.12.34.56;}}}ce1-0/2/0 {partition 1 timeslots 1-8 interface-type ds;}ds-0/2/0:1 {no-keepalives;dce;encapsulation frame-relay;unit 0 {dlci 100;family mlfr-end-to-end {bundle lsq-0/3/0.0;}}}lsq-0/3/0 {per-unit-scheduler;unit 0 {encapsulation multilink-frame-relay-end-to-end;family inet {address 10.200.0.78/30;}}}[edit class-of-service]classifiers {inet-precedence ge-interface-classifier {forwarding-class be {loss-priority low code-points 000;}forwarding-class ef {loss-priority low code-points 010;}forwarding-class af {loss-priority low code-points 100;}forwarding-class nc {loss-priority low code-points 110;}}}forwarding-classes {queue 0 be;queue 1 ef;queue 2 af;queue 3 nc;}interfaces {lsq-0/3/0 {unit 0 {scheduler-map sched2;fragmentation-map map2;}}ds-0/2/0:1 {scheduler-map link-map2;}ge-0/0/0 {unit 0 {classifiers {inet-precedence ge-interface-classifier;}}}}scheduler-maps {sched2 {forwarding-class be scheduler economy;forwarding-class ef scheduler business;forwarding-class af scheduler stream;forwarding-class nc scheduler voice;}link-map2 {forwarding-class be scheduler link-economy;forwarding-class ef scheduler link-business;forwarding-class af scheduler link-stream;forwarding-class nc scheduler link-voice;}}fragmentation-maps {map2 {forwarding-class {be {fragment-threshold 160;}ef {fragment-threshold 160;}af {fragment-threshold 160;}nc {no-fragmentation;}}}schedulers {economy {transmit-rate percent 26;buffer-size percent 26;}business {transmit-rate percent 26;buffer-size percent 26;}stream {transmit-rate percent 35;buffer-size percent 35;}voice {transmit-rate percent 13;buffer-size percent 13;}link-economy {transmit-rate percent 26;buffer-size percent 26;}link-business {transmit-rate percent 26;buffer-size percent 26;}link-stream {transmit-rate percent 35;buffer-size percent 35;}link-voice {transmit-rate percent 13;buffer-size percent 13;}}}}

Published: 2012-11-27

Supported Platforms

Published: 2012-11-27