Showing results for 
Search instead for 
Did you mean: 


Flow Control on Cisco 9k 10Gbps SFP

I have some sysadmins trying to add Dell storage to a Cisco 9k. They are seeing a lot of latency in storage operations. Dell insists that the problem lies in needing flow control enabled. My question is more general. If the client to the storage is say three hops away from the 9k with the SAN - is there any need to have flow control enabled at all three switches? e.g. [ESX]--Edge SW--Core SW-Cisco 9K-[Dell Storage].

Or would flow control only be relevant at the CIsco 9k  to which the Dell storage is attached? 


I think the answer is that if the Ethernet port on the Cisco 9k has FC enabled and it received a flow control frame from the Dell - it would pause the next transmission until a free buffer on the Dell. In this cause there would be no need to propagate flow control info to the other switches or the client/the ESX.


Thank you for clarifying.


VIP Expert

Re: Flow Control on Cisco 9k 10Gbps SFP

In general, if you've experiencing "latency", flow control shouldn't help unless the "latency" is due receiver packet drops and even then, the transmitting device may drop the packets instead, possible even more so. I.e., flow control is going to force more packets into the transmitting device's port queue. Basically, flow control should keep the Dell SAN device from dropping packets it receives, which it cannot keep up with, but in turn, those packets are now queued on the 9K and can drop there. It's possible the 9K might, without tuning, drop more packets than the Dell SAN device would with FC disabled.

If packets are being queued and/or dropped, you want to determine where's that's happening and if that might be mitigated. For example, perhaps the problem is the SAN sending to the client, which I assume (the client) does not have a 10g connection.

In answer to your question, no, you wouldn't want to generally enable Ethernet flow control end-to-end (or generally use it), especially the "ordinary" Ethernet variant which completely blocks the port. Again, it's generally better if you try to eliminate any packet drops and/or better manage port congestion using QoS techniques.

Consider if there's congestion on the edge<>core link and you have a mix of traffic. E.g. traffic to/from the SAN and perhaps VoIP traffic. If the SAN traffic is causing congestion, you don't want to block the VoIP traffic.
CreatePlease to create content
Content for Community-Ad
July's Community Spotlight Awards