Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Announcement: Try the Ask AI chatbot for answers to your technical questions about Juniper products and solutions.

close
header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Shared and Dedicated Buffer Memory Pools on ACX Series Routers

date_range 19-Feb-21

The ACX5048 and ACX5096 router has 12 megabytes of Packet Forwarding Engine (PFE) wide common packet buffer memory that is used to store packets on interface queues. The buffer memory is divided into two pools, shared buffers and dedicated buffers or reserved buffers.

Shared buffers are a global memory pool that the router allocates dynamically to ports as needed, so the buffers are shared among the ports. To configure a maximum amount of shared buffer that the multicast packets can consume, include the multicast percentage CLI statement at the [edit class-of-service schedulers scheduler-name shared-buffer maximum] hierarchy level. The value that you can specify for multicast percentage CLI command can be from 0 through 100 percent. If the multicast percentage CLI statement is not added, then the value defined by the shared-buffer maximum percent percentage is used for multicast packets as well.

Dedicated buffers or reserved buffers are a memory pool divided equally among the router ports. Each port receives a minimum guaranteed amount of buffer space, dedicated to each port, not shared among ports. To configure a dedicated buffer for multicast packets, include the buffer-partition multicast percentage CLI statement at the [edit class-of-service schedulers scheduler-name buffer-size] hierarchy level. The value that you can specify for buffer-partition multicast percentage CLI command can be from 0 through 100 percent. If the buffer-partition multicast percentage CLI statement is not configured, then a default value of 25% is reserved for multicast packets.

Note:

The total amount of actual queue buffer is defined using the buffer-size CLI command.

The ACX5448 router supports delay bandwidth buffer (DBB) for virtual output queues (VOQs). ACX5448 router supports an external DRAM memory, as well as an on-chip buffer (OCB) for storing packet data. A packet is either fully stored in the DRAM or fully stored in the OCB and can consume one or more buffers (upto 40 buffers) depending on the packet size versus the buffer size. A buffer contains a single packet or a part of a single packet.

Note:

The ACX5448 router does not support buffering for IRB multicast traffic and therefore CLIs for configuring multicast is not supported.

The ACX5448 router does not support buffer-partition multicast percent percentage option for buffer-size and multicast percentage option for shared-buffer-maximum.

To configure shared and dedicated buffers, include the multicast percentage and buffer-partition multicast percentage CLI statements at the [edit class-of-service] hierarchy level:

content_copy zoom_out_map
[edit class-of-service]
schedulers {
    scheduler-name {
        buffer-size (percent percentage | remainder | temporal microseconds | buffer-partition multicast percent percentage						);
        shared-buffer maximum (percent percentage | multicast percentage);
    }
}

The following is a sample configuration for shared and dedicated buffers in ACX5048 and ACX5096 routers:

content_copy zoom_out_map
[edit class-of-service]
schedulers schd1{
    buffer-size percent 80;
        buffer-partition {
            multicast {
                percent 30;
            }
        }
        shared-buffer {
            maximum {
                20;
                multicast {
                    10;
                }
            }
        }
    }

The port gets 50 microseconds worth of reserved buffer. For a 10 Gigabyte port without any shaper, this translates to 62500 Bytes.

In the above sample configuration, the total buffer size allotted for the queue is 80 percent.

Under buffer-partition, the multicast packets get 30 percent of the total buffer-size, which translates to about 24 percent of port-buffer. The unicast packets get the remaining 70 percent of 80 percent of the port buffer, which translates to 56 percent of port buffer.

Under shared-buffer, the multicast packets get up to 10 percent of the total shared buffer. Unicast packets use up to 20 percent of the total shared buffer.

The following is a sample configuration for shared and dedicated buffers in ACX5448 router:

content_copy zoom_out_map
[edit class-of-service]
schedulers schd1{
    buffer-size percent 80;
        shared-buffer {
            maximum {
                20;
            }
        }
    }

The ACX5448 router has OCB size of 16MB and DRAM size of 6GB. The default buffer size per port is 100 microseconds. The total buffer size for 48X10GE + 4X100GE comes to 11MB. The ACX5448 router supports deep buffering of oversubscribed traffic using external DRAM to queue traffic to oversubscribed ports. The ACX5448 router uses the DRAM-Mix mode by default, which uses DRAM buffers during oversubscription cases. The ACX5448 router supports configuring buffer size (dedicated buffers) per egress queue, which is similar to ACX5000 line of routers.

The ACX6360 routerhas a 39 MB total switch buffer pool. By default, 15 percent of the total buffer pool is allocated to the dedicated buffer pool and the remaining is allocated to the shared buffer pool. If you configure the shared buffer pool as less than 100 percent of the available buffer pool, the remaining buffer space is added to the dedicated buffer pool. You can distribute the shared buffer pool among lossless, lossy, and multicast queues with the following configuration:

content_copy zoom_out_map
[edit class-of-service shared-buffer]
user@router# set egress percent 100
user@router# set egress buffer-partition lossless percent percent-value
user@router# set egress buffer-partition lossy percent percent-value
user@router# set egress buffer-partition multicast percent percent-value
footer-navigation