Linkspeed and bitrates

Introduction

Bitrates and linkspeeds can often differ much more than expected. In this article, we explain why both can still be correct.

Packet overhead

On the Link Layer, each Frame is surrounded by a number of extra bytes. The table below shows the complete Ethernet Frame. 

PreambleStart of Frame Delimiter (SFD)Frame (as displayed in the Frame View)Frame Check Sequence (32-bit CRC)Interframe Gap (Pause)
7 Bytes1 Byte60 - 10000 Bytes4 Bytes12 Bytes
The effect on a 1 Gbps link

When sending Frames with a length of 60 Bytes, the actual number of bytes sent is 84. This means that only 60/84 = 71.42% of the transmitted data consists of the bytes displayed in the Frame View. So, to achieve Line Rate on a 1 Gbps link, the Frame Rate is calculated as follows:

  • Frame Rate = 1 000 000 000 bps / ( ( 1B + 7B + 60B + 4B + 12B ) * 8b/B ) = 1 488 095.24 fps
  • Ethernet Bitrate (without overhead) = 1 488 095.24 fps * 60B * 8b/B = 714 285 714,29 bps = 714 Mbps
Tip: When sending bigger Frames, the relative overhead becomes smaller.
The GUI to the rescue

In the Preferences of the ByteBlower GUI under Project>BitRate, you can specify what you want to be included in the Layer 2 Speed calculation. A screenshot of this view can be found below.

  • Frame (as displayed in the Frame View)
  • Frame and FCS (includes the CRC, so each Frame gets 4 Bytes extra)
  • Frame, FCS, Preamble, SFD, and Pause (each Frame gets 24 Bytes extra)

This affects the calculated rates displayed in the Frame Blasting Flow Templates, and in the Reports.