Support Support Downloads Knowledge Base Case Manager My Juniper Community

Knowledge Base

Search our Knowledge Base sites to find answers to your questions.

Ask All Knowledge Base Sites All Knowledge Base Sites JunosE Defect (KA)Knowledge BaseSecurity AdvisoriesTechnical BulletinsTechnotes Sign in to display secure content and recently viewed articles

[QFX] Example - Changing forwarding mode to “cut-through” mode

0

0

Article ID: KB32874 KB Last Updated: 28 Oct 2020Version: 2.0
Summary:

This article provides an example of changing from the default forwarding mode (store and forward) to cut-through forwarding, thereby reducing the packet switching time on QFX devices.

 

Symptoms:
  • Time taken for transmission of data from a transit QFX device is high.

  • A copy of forwarding data is stored and then forwarded over to the destined device.

 

Solution:

The default behavior of Junos switching devices is “store and forward”. Reduction in the time of packet switching can be accomplished by changing the forwarding mode to "cut-through".

Cut-through forwarding mode enables the switch to transmit and receive packets simultaneously. This benefits the overall latency on the switch because of the reduction in delay time during transmission of packets to the destination. Furthermore, cut-through switches are more appropriate for extremely demanding high-performance computing (HPC) applications that require process-to-process latency of precisely 10 microseconds or less.

Important: To be eligible for the cut-through forwarding mode, the ingress and egress port interface speeds must be identical. For example, if a QFX5100 switch is configured to exhibit cut-through forwarding properties, a packet arriving on the ingress interface and transmitted on an egress interface with different speed cannot be forwarded properly due to CRC error.

Additional conditions to accomplish cut-through forwarding:

  • The packet must not be destined to the Routing Engine. Meaning, only transit traffic can be cut-through forwarded.

  • The egress port must have an empty queue with no packets waiting to be transmitted.

  • The egress port must not have rate-limiting applied. 

  • For multicast packets, every egress port must meet all the conditions. If one egress port fails to meet any condition, all multicast packets will be transmitted via store-and-forward.

Additionally, the store-and-forward technique continues to stay fairly linear from 64 bytes to 9,216 bytes. However, cut-through flattens out at approximately 0.73 µs from 600 bytes to 9,216 bytes. Store-and-forward follows a linear progression because the latency is a factor of how large the packet is. The larger the packet, the more memory it takes to buffer it before the packet is allowed to be transmitted. Cut-through mode stays flat because it begins transmitting the packet as soon as it is received. Thus, the packet size is never a factor to determine the overall latency.

Example

Below is an example configuration. For more information, refer to the technical documentation: Configuring Forwarding Mode on Switches

As store and forward is the default forwarding mode in all devices, the following ping outputs are seen in default mode:

64 bytes from 10.10.12.4: icmp_seq=0 ttl=64 time=10.933 ms
64 bytes from 10.10.12.4: icmp_seq=1 ttl=64 time=11.127 ms
64 bytes from 10.10.12.4: icmp_seq=2 ttl=64 time=11.128 ms
64 bytes from 10.10.12.4: icmp_seq=3 ttl=64 time=11.128 ms
64 bytes from 10.10.12.4: icmp_seq=4 ttl=64 time=11.119 ms

Command to change forwarding mode:

[edit forwarding-options]
#set cut-through

Verification of the configuration change:

show | compare
 
[edit] 
+ forwarding-options { 
+ cut-through; 
+}

After changing the forwarding mode to cut-through, ping takes variably higher time in the initial few seconds. However, there is a drastic decrease in the ping time thereafter as shown below:

64 bytes from 10.10.12.4: icmp_seq=28 ttl=47 time=232.421 ms
64 bytes from 10.10.12.4: icmp_seq=29 ttl=47 time=222.352 ms
64 bytes from 10.10.12.4: icmp_seq=30 ttl=47 time=218.691 ms
64 bytes from 10.10.12.4: icmp_seq=31 ttl=47 time=216.130 ms
64 bytes from 10.10.12.4: icmp_seq=32 ttl=47 time=225.149 ms
64 bytes from 10.10.12.4: icmp_seq=33 ttl=47 time=238.672 ms
64 bytes from 10.10.12.4: icmp_seq=34 ttl=47 time=221.129 ms
64 bytes from 10.10.12.4: icmp_seq=35 ttl=47 time=201.323 ms
64 bytes from 10.10.12.4: icmp_seq=36 ttl=64 time=11.123 ms ------decrease in ping time           
64 bytes from 10.10.12.4: icmp_seq=37 ttl=64 time=9.782 ms
64 bytes from 10.10.12.4: icmp_seq=38 ttl=64 time=7.117 ms
64 bytes from 10.10.12.4: icmp_seq=39 ttl=64 time=4.251 ms

Switches that support cut-through forwarding feature:

  • QFX5k

  • QFX3500

  • QFX3600

 

Modification History:

2020-10-28: Modified Solution section to indicate the importance of the CRC error when traffic flows across different interface speeds

 

 

Comment on this article > Affected Products Browse the Knowledge Base for more articles related to these product categories. Select a category to begin.

Getting Up and Running with Junos

Getting Up and Running with Junos Security Alerts and Vulnerabilities Product Alerts and Software Release Notices Problem Report (PR) Search Tool EOL Notices and Bulletins JTAC User Guide Customer Care User Guide Pathfinder SRX High Availability Configurator SRX VPN Configurator Training Courses and Videos End User Licence Agreement Global Search