Pause Frames in Ethernet
Fig 1: Pause Frames in Ethernet |
Within the ethernet standard we have a useful flow control feature called the pause frame sometimes one device will send so much traffic that the other parts of the network can become overwhelmed causing congestion if nothing's done about this some traffic will eventually be dropped an overwhelmed device can send a pause frame to the original sender this asks it to take a break from sending which allows other devices to catch up the goal of this is to prevent frames from being lost this might happen if there are devices of different speeds on the network a high speed device can easily overwhelm a low speed device practically though this is common in switches themselves where they might have many devices sending traffic and can't forward it out fast enough pause frames use a special type of ethernet frame called the mac control frame in this case mac means media access control it's not the same thing as a mac address anyway this frame is used to send network information rather than regular data in this case an opcode of 1 which means it's a pause frame these can be sent to a specific destination address or to a multicast address if it's multicasted all senders who receive it will pause sending data inside the frame is the pause duration but this isn't measured in seconds or milliseconds instead it's measured in a unit called a quanta a quanta is equal to 512 bit times so what's a bit time a bit time is the time it takes to put one bit on the network medium so a bit time will vary for different interface speeds now for the practical question do i need to enable pause frames or does it just work in the background that is a feature that you can enable and disable whether it's on or off by default will depend on each vendor and device you might have seen settings for flow control on your network interfaces this is how you control pause frames we can set rx which enables receiving pause frames tx which enables sending pause frames or both this is usually set per interface and only on full duplex interfaces keep in mind that some devices may not support sending pause frames this comes down to each vendor and device there is a problem with standard pause frames when a sender is asked to pause they will pause all flows this is absolutely not ideal as it may result in interruption of real-time traffic like voice and video so to address this pause frames were upgraded in the 802.1 qbb standard to priority based flow control this enables pause frames to be sent on a per class of service queue this means that lower priority traffic can be paused while leaving high priority flows alone we could even have a different pause time per cue and that's how pause frames work.
0 Comments