2

I'm not sure this question needs much detail.

I have two Linux hosts connected to a switch with 10 ports. One host has a 10 GbE NIC and the other host has a 1 GbE NIC. Obviously I can flood the 1 GbE card with udp packets. I enable symmetric flow control on the switch for both ports and "as far as I know" have enabled it on the host NICs.

The question now is, when 1 GbE cannot keep up he sends a pause frame to the switch. From what I see, a pause frame can only go Mac-to-Mac.

Therefore, the switch does not forward the pause frame to the host that is pounding the network with traffic. Is that statement true?

1

A pause frame can be MAC-to-MAC which is host-to-host through a switch. It can also be sent to a special multicast address which a switch will not forward, but the switch itself may or may not participate in ethernet flow control.

The use of ethernet flow control is implementation specific, and not widely or consistently supported. The way it works, or doesn't, on your network is going to be dependent on your network equipment and the software on those devices, and the specific hosts and OSes of the end devices.

7
  • So from your statement, a switch will not forward a pause frame. Essentially, one host cannot tell the other host to pause, using the switch as a hop. A host can only tell the switch to pause and stop sending to myself (the host) .
    – user_ABCD
    Jan 18 '16 at 19:10
  • 1
    That's not what I said. A pause frame sent to a host MAC address will be forwarded by a switch. A pause frame sent to the special multicast address will not be forwarded by a switch since it is meant for the link. The switch may or may not participate in ethernet flow control, so the pause frames sent to the MAC address may or may not be acted upon by the switch. If your host only generates multicast pause frames, the other host will never get them, and a switch which doesn't participate will ignore them.
    – Ron Maupin
    Jan 18 '16 at 19:27
  • Sorry you were quite clear as I misunderstood. How could a switch not participate? If two hosts are only connected via "the switch", the switch would have to participate and forward to the host MAC address if specified as the destination address (rather than the multicast address)?
    – user_ABCD
    Jan 18 '16 at 20:04
  • Of course the switch participates in the forwarding of frames. What it may or may not participate in is ethernet flow control. Pause frames sent to the special multicast MAC address will not be forwarded off the link from the host to the switch, but the switch may not be configured to, or even support, ethernet flow control. If your host only generates multicast pause frames, it can't get to the other host, only the switch, and if the switch ignores the pause frames, you get no flow control.
    – Ron Maupin
    Jan 18 '16 at 20:25
  • @user_ABCD, the end result is that ethernet flow control is poorly supported, and it should never be counted upon. It may be useful if it works, but it takes the correct equipment and the correct type of pause frames for your equipment and what you want to do.
    – Ron Maupin
    Jan 18 '16 at 20:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.