This article provides background data about heap utilization to help making an informed decision when applying a firewall filter on an interface with input and input-list keywords. The data illustrates conclusively the theory of heap utilization on a line card with regard to firewall filters. The article supplements information available in the MX Series technical documentation, and is useful to evaluate issues of heap utilization when considering to scale up the network footprint.
A firewall filter generates different heap utilization on the MPC1 line card when applied on the 10-GbE interface by using input and input-list keywords. For example, when using:
What is the cause of this difference in heap utilization, when the same filter is applied by using input or input-list keywords?
Case 1 - Interface-specific firewall filter is applied as input :
[edit] jtac@ERX-MX960-2-RE0# run show chassis fpc | match "Temp|Slot|Online" Temp CPU Utilization (%) Memory Utilization (%) Slot State (C) Total Interrupt DRAM (MB) Heap Buffer 1 Online 43 20 0 2048 9 13 3 Online 42 19 0 2048 9 13 8 Online 42 19 0 2048 9 13 10 Online 40 19 0 2048 6 17 < Heap 6% [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input input TEST-ACL-V4; input TEST-ACL-V4; input TEST-ACL-V4; input TEST-ACL-V4; [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input | count Count: 999 lines [edit groups firewall family inet] jtac@ERX-MX960-2-RE0# show filter TEST-ACL-V4 interface-specific; term block-to-internal { from { destination-prefix-list { internal-v4; } }
Case 2 - Non interface-specific firewall filter is applied as input :
[edit] jtac@ERX-MX960-2-RE0# run show chassis fpc | match "Temp|Slot|Online" Temp CPU Utilization (%) Memory Utilization (%) Slot State (C) Total Interrupt DRAM (MB) Heap Buffer 1 Online 43 20 0 2048 9 13 3 Online 42 19 0 2048 9 13 8 Online 42 20 0 2048 9 13 10 Online 41 21 0 2048 6 17 < Heap 6% [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input input TEST-ACL-V4; input TEST-ACL-V4; input TEST-ACL-V4; input TEST-ACL-V4; [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input | count Count: 999 lines [edit groups firewall family inet] jtac@ERX-MX960-2-RE0# show filter TEST-ACL-V4 < not interface-specific term block-to-internal { from { destination-prefix-list { internal-v4; } } then { count to-internal-v4-dscd; discard; } }
Case 3 - Interface-specific firewall filter is applied by using input-list :
[edit] jtac@ERX-MX960-2-RE0# run show chassis fpc | match "Temp|Slot|Online" Temp CPU Utilization (%) Memory Utilization (%) Slot State (C) Total Interrupt DRAM (MB) Heap Buffer 1 Online 42 21 0 2048 23 13 3 Online 42 18 0 2048 22 13 8 Online 42 20 0 2048 22 13 10 Online 40 20 0 2048 23 17 < Heap 23% [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input input-list TEST-ACL-V4; input-list TEST-ACL-V4; input-list TEST-ACL-V4; input-list TEST-ACL-V4; [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input | count Count: 1001 lines [edit groups firewall family inet] jtac@ERX-MX960-2-RE0# show filter TEST-ACL-V4 interface-specific; term block-to-internal { from { destination-prefix-list { internal-v4; } }
Case 4 - Non interface-specific firewall filter is applied by using input-list :
[edit] jtac@ERX-MX960-2-RE0# run show chassis fpc | match "Temp|Slot|Online" Temp CPU Utilization (%) Memory Utilization (%) Slot State (C) Total Interrupt DRAM (MB) Heap Buffer 1 Online 42 20 0 2048 23 13 3 Online 42 20 0 2048 22 13 8 Online 42 19 0 2048 22 13 10 Online 40 19 0 2048 23 17 < Heap 23% [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input input-list TEST-ACL-V4; input-list TEST-ACL-V4; input-list TEST-ACL-V4; input-list TEST-ACL-V4; [edit] jtac@ERX-MX960-2-RE0# show interfaces xe-10/1/0 | match input | count Count: 999 lines [edit groups firewall family inet] jtac@ERX-MX960-2-RE0# show filter TEST-ACL-V4 <not interface-specific</strong> term block-to-internal { from { destination-prefix-list { internal-v4; } } then { count to-internal-v4-dscd; discard; } }
The test results appearing in the "Problem or Goal" section of this article give useful information on the behavior of heap utilization when applying firewall filters with input or input-list keywords. The conclusions based on this data should be used when evaluating to scale up the network, and applied depending on the network configuration: