Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Troubleshooting Dropped FCoE Traffic

Problem

Description

Fibre Channel over Ethernet (FCoE) traffic for which you want guaranteed delivery is dropped.

Cause

There are several possible causes of dropped FCoE traffic (the list numbers of the possible causes correspond to the list numbers of the solutions in the Solution section.):

  1. Priority-based flow control (PFC) is not enabled on the FCoE priority (IEEE 802.1p code point) in both the input and output stanzas of the congestion notification profile.

  2. The FCoE traffic is not classified correctly at the ingress interface. FCoE traffic should either use the default fcoe forwarding class and classifier configuration (maps the fcoe forwarding class to IEEE 802.1p code point 011) or be mapped to a lossless forwarding class and to the code point enabled for PFC on the input and output interfaces.

  3. The congestion notification profile that enables PFC on the FCoE priority is not attached to the interface.

  4. The forwarding class set (priority group) used for guaranteed delivery traffic does not include the forwarding class used for FCoE traffic.

    Note:

    This issue can occur only on switches that support enhanced transmission selection (ETS) hierarchical port scheduling. (Direct port scheduling does not use forwarding class sets.)

  5. Insufficient bandwidth has been allocated for the FCoE queue or for the forwarding class set to which the FCoE queue belongs.

    Note:

    This issue can occur for forwarding class sets only on switches that support ETS hierarchical port scheduling. (Direct port scheduling does not use forwarding class sets.)

  6. If you are using Junos OS Release 12.2, the fcoe forwarding class has been explicitly configured instead of using the default fcoe forwarding class configuration (forwarding-class-to-queue mapping).

    Note:

    If you are using Junos OS Release 12.2, use the default forwarding-class-to-queue mapping for the lossless fcoe and no-loss forwarding classes. If you explicitly configure the lossless forwarding classes, the traffic mapped to those forwarding classes is treated as lossy (best effort) traffic and does not receive lossless treatment.

  7. If you are using Junos OS Release 12.3 or later and you are not using the default fcoe forwarding class configuration, the forwarding class used for FCoE is not configured with the no-loss packet drop attribute. In Junos OS 12.3 or later, explicit forwarding classes configurations must include the no-loss packet drop attribute to be treated as lossless forwarding classes.

Solution

The list numbers of the possible solutions correspond to the list numbers of the causes in the Cause section.

  1. Check the congestion notification profile (CNP) to see if PFC is enabled on the FCoE priority (the correct IEEE 802.1p code point) on both input and output interfaces. Use the show class-of-service congestion-notification operational command to show the code points that are enabled for PFC in each CNP.

    If you are using the default configuration, FCoE traffic is mapped to code point 011 (priority 3). In this case, the input stanza of the CNP should show that PFC is enabled on code point 011, and the output stanza should show that priority 011 is mapped to flow control queue 3.

    If you explicitly configured a forwarding class for FCoE traffic, ensure that:

    • You specified the no-loss packet drop attribute in the forwarding class configuration

    • The code point mapped to the FCoE forwarding class in the ingress classifier is the code point enabled for PFC in the CNP input stanza

    • The code point and output queue used for FCoE traffic are mapped to each other in the CNP output stanza (if you are not using the default priority and queue, you must explicitly configure each output queue that you want to respond to PFC messages)

    For example, if you explicitly configure a forwarding class for FCoE traffic that is mapped to output queue 5 and to code point 101 (priority 5), the output of the show class-of-service congestion-notification looks like:

  2. Use the show class-of-service classifier type ieee-802.1p operational command to check if the classifier maps the forwarding class used for FCoE traffic to the correct IEEE 802.1p code point.

  3. Ensure that the congestion notification profile and classifier are attached to the correct ingress interface. Use the operational command show configuration class-of-service interfaces interface-name.

  4. Check that the forwarding class set includes the forwarding class used for FCoE traffic. Use the operational command show configuration class-of-service forwarding-class-sets to show the configured priority groups and their forwarding classes.

  5. Verify the amount of bandwidth allocated to the queue mapped to the FCoE forwarding class and to the forwarding class set to which the FCoE traffic queue belongs. Use the show configuration class-of-service schedulers scheduler-name operational command (specify the scheduler for FCoE traffic as the scheduler-name) to see the minimum guaranteed bandwidth (transmit-rate) and maximum bandwidth (shaping-rate) for the queue.

    Use the show configuration class-of-service traffic-control-profiles traffic-control-profile operational command (specify the traffic control profile used for FCoE traffic as the traffic-control-profile) to see the minimum guaranteed bandwidth (guaranteed-rate) and maximum bandwidth (shaping-rate) for the forwarding class set.

  6. Delete the explicit FCoE forwarding-class-to-queue mapping so that the system uses the default FCoE forwarding-class-to-queue mapping. Include the delete forwarding-classes class fcoe queue-num 3 statement at the [edit class-of-service] hierarchy level to remove the explicit configuration. The system then uses the default configuration for the FCoE forwarding class and preserves the lossless treatment of FCoE traffic.

  7. Use the show class-of-service forwarding-class operational command to display the configured forwarding classes. The No-Loss column shows whether lossless transport is enabled or disabled for each forwarding class. If the forwarding class used for FCoE traffic is not enabled for lossless transport, include the no-loss packet drop attribute in the forwarding class configuration (set class-of-service forwarding-classes class fcoe-forwarding-class-name queue-num queue-number no-loss).

See Example: Configuring CoS PFC for FCoE Traffic for step-by-step instructions on how to configure PFC for FCoE traffic, including classifier, interface, congestion notification profile, PFC, and bandwidth scheduling configuration.