Multicast Fairness Tuning

Multicast fairness

Multicast traffic involves sending data from one source to multiple destinations simultaneously, which can sometimes lead to difference in latency. The multicast fairness tuning feature aims to minimize the latency difference for a multicast stream across different ports.

Starting from Cisco NX-OS Release 10.5(2)F, the multicast fairness tuning feature for Cisco Nexus 3550-T switches allows you to tune the egressing multicast traffic by configuring equalization delay for specific ports. Thus, this feature ensures that the egressing traffic reaches its destinations at almost the same time.

You can tune the latency difference for a multicast stream among the ports by adding delays to the faster ports. However, you need to measure the delay or latency for each port beforehand and be aware of the default latency, only then can you equalize the delay on the faster ports. The deviation is reduced to a negligible difference of less than 250 pico-seconds.

For example, consider a multicast stream is being sent through the interfaces Ethernet 1/2, Ethernet 1/3, and Ethernet 1/4. The timestamp of the multicast stream reveals that it leaves N3550-T from Ethernet 1/2 at 6.85 nano-seconds, from Ethernet 1/3 at 5.70 nano-seconds, and from Ethernet 1/4 at 6.20 nano-seconds. The tuning feature allows you to add around 1000 pico-seconds delay at Ethernet 1/3 and around 600 pico-seconds delay at Ethernet 1/4 to allow each of these streams coming out from these ports within the 250 pico-seconds range.

Guidelines and limitations for multicast fairness tuning

Follow these guidelines and limitations while configuring the multicast fairness tuning feature.

  • If you send more traffic than the line rate, it leads to congestion and the interface can no longer maintain the fairness. However, as soon as the traffic rate reduces, the fairness is restored.

  • If traffic from multiple sources compete to go out of the same interface, then this impacts the latency fairness for that interface.

  • If you try to configure latency on a specific port with running traffic, then this results in a short disruption in the traffic in the form of either a drop or corruption.

Configure multicast fairness tuning

The multicast fairness tuning feature is an interface specific feature, so go to the required interface to configure the feature. Follow these steps to configure the multicast fairness tuning feature.

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

interface type slot/port

Example:

switch(config)# interface ethernet 1/10
switch(config-if)# 

Specifies an interface to configure and enters the interface configuration mode.

Step 3

[ no] equalization-delay value

Example:

switch(config-if)# equalization-delay 10
switch(config-if)# 

Specify the equalization delay value that you want to configure on the specified interface. The default value is zero (0).

The range for equalization delay values is 0 to 15 for 10G ports, where 1=100 pico-seconds. Thus, the maximum delay that can be configured for a 10G port is 1500 pico-seconds.

If you configure the delay as 4, it is equal to 400 pico-seconds.

The no form of this command disables equalization delay.

Step 4

shut

Example:

switch(config-if)# shut
switch(config)# 

Disables the specified interface.

Step 5

no shut

Example:

switch(config-if)# no shut
switch(config)# 

Enables the specified interface.

Step 6

exit

Example:

switch(config-if)# exit
switch(config)# 

Exits the interface configuration mode.

Example

This example shows how to configure multicast fairness tuning on a particular interface.

switch# configure terminal
switch(config)# interface ethernet 1/10
switch(config-if)# equalization-delay 10
switch(config-if)# shut
switch(config-if)# no shut
switch(config-if)# exit

Verify the Multicast Fairness Tuning Configuration

Perform the relevant show commands listed in the table to display the required information about the multicast fairness tuning configuration.

Command

Purpose

show interface type slot/port

Displays the interface status and information for the specified interface along with the configured equalization delay in pico-seconds.

show interface type slot/port equalization-delay

Displays only the values for equalization delay in pico-seconds for the specified interface.

show interface type range of slots/ports equalization-delay

Displays all the values for equalization delay in pico-seconds for the specified range of interfaces.

show running-config [ all ]

Displays information about the current configuration. The all option displays the default and current configurations.

This command also displays the equalization delay configured for each interface.

Sample Outputs for Show Commands

This is a sample output of the show run interface type slot/port command that displays the equalization delay for the specified interface.

show run interface ethernet 1/10
  interface Ethernet1/10
  equalization-delay 10

This is a sample output of the show interface type slot/port command that displays the interface status and information for the specified interface including the information regarding equalization delay for the interface.

switch(config-if)# show int eth1/10 
Ethernet1/10 is up 
admin state is up, Dedicated Interface 
Hardware: 1000/10000 Ethernet, address: 643f.5f84.c5bc (bia 643f.5f84.c5bc) 
MTU 1500 bytes, BW 10000000 Kbit , DLY 10 usec 
reliability 255/255, txload 1/255, rxload 1/255 
Encapsulation ARPA, medium is broadcast 
Port mode is access 
full-duplex, 10 Gb/s, media type is 10G 
Beacon is turned off 
Auto-Negotiation is turned on FEC mode is Auto 
Input flow-control is off, output flow-control is off 
Auto-mdix is turned off 
Rate mode is dedicated 
Switchport monitor is off 
EtherType is 0x8100 
EEE (efficient-ethernet) : n/a 
admin fec state is auto, oper fec state is auto 
Equalization delay 1000 picosec 
Last link flapped 4week(s) 5day(s) 
Last clearing of "show interface" counters 4w4d 
0 interface resets 
Load-Interval #1: 30 seconds 
30 seconds input rate 0 bits/sec, 0 packets/sec 
30 seconds output rate 0 bits/sec, 0 packets/sec
input rate 0 bps, 0 pps; output rate 0 bps, 0 pps 
Load-Interval #2: 5 minute (300 seconds) 
300 seconds input rate 0 bits/sec, 0 packets/sec 
300 seconds output rate 0 bits/sec, 0 packets/sec 
input rate 0 bps, 0 pps; output rate 0 bps, 0 pps 
RX 
0 unicast packets 0 multicast packets 0 broadcast packets 
0 input packets 0 bytes 
0 jumbo packets 0 storm suppression packets 
0 runts 0 giants 0 CRC 0 no buffer 
0 input error 0 short frame 0 overrun 0 underrun 0 ignored 
0 watchdog 0 bad etype drop 0 bad proto drop 0 if down drop 
0 input with dribble 0 input discard 
0 Rx pause 
0 Stomped CRC 
TX 
0 unicast packets 30000 multicast packets 0 broadcast packets 
30000 output packets 0 bytes 
0 jumbo packets 
0 output error 0 collision 0 deferred 0 late collision 
0 lost carrier 0 no carrier 0 babble 0 output discard 
0 Tx pause 

switch(config-if)#