Printer FriendlyEmail Article Link

Spirent TestCenter: When does Deficit Idle Count apply and how it's used to achieve accurate rates?

Environment/Versions
  • Deficit Idle Count - DIC
  • 10G
  • 40G
  • 100G
Answer
  • Deficit Idle Count (DIC) is independent of the form factor and is applicable to 10G and above.
  • DIC is use for purpose of maintaining accurate data rates such as to that ensures predictable and repeatable traffic generation and that aligns with the STC application feature sets. 
    • With deficit idle count mode disabled, the phy will always add additional gap bytes to ensure alignment of the next frame.
    • When deficit idle count is enabled, the phy will add or subtract gap bytes to align the next frame thus producing average frame rates closer to the theoretical values.
      • Enable deficit idle count to see rates closer to the theoretical value. There will still be some discrepancy at certain rates because 10G cards can only specify IFG in bytes.
    • For 10G, frames are required to begin on a 4 byte boundary, specifically the first octet of the preamble must begin in lane 0 of the xgmii/xaui interface.
    • 802.3ae 46.3.1.4.  You might have to read all of Clause 46 to understand this statement
      • "On transmit, it may be necessary for the RS to modify the length of the <inter-frame> in order to align the Start control character (first octet of preamble) on lane 0."
      • As a use case example:
        • The use case is for 65 byte frame + 12 byte configured IFG + 8 byte preamble.
        • With 64 byte frame + 12 byte configured IFG + 8 byte preamble we always land on a 4-byte boundary. (64 + 12 + 8 = 84 and 4 divides evenly into 84/4 = 22)
    • If Deficit Idle Count is enabled, there is then no restriction on the IFG. The actual IFG from one frame to another will be dithered (according to an algorithm published in the IEEE 802.3 spec) so that the average IFG is the value specified. The IFG from one frame to another will change by 4 bytes, but the average will be correct.
    • The start of a frame is required to happen on four byte boundaries. The end of a frame can come anywhere. Once the frame ends, and the IFG is applied, then additional gap bytes may need to be inserted to bring the start of the next frame to a four byte boundary.
    • If we have a 65 byte frame, and want the minimum gaps, then you have to enable DIC. After the last frame byte, there are 3 bytes to get to the next boundary, and after another 4 bytes (7 in all), we would be at the start of a four byte boundary, but with only 7 bytes IFG. If we add an additional 4 bytes, we are the next four byte boundary, but the IFG is up to 11 bytes. The DIC will use the 7 byte IFG ¾ of the time, and the 11 byte IFG ¼ of the time, so the average gap will be 8 bytes. The shortest gap will be 7 bytes, and the longest will be 11 bytes.
  • For 10G, there is a difference between LAN and WAN rates. An explanation is summarized in the attached documents.
  • The 10 Gigabit Ethernet MAC always runs at exactly 10 Gigabit/second. In 10 Gigabit Ethernet, the sublayers will put and take bytes to and from the IFG to achieve the line rates for the LAN or WAN mode.
  • 10GigE White Papers also attached.
    • www.10gea.org/tech-whitepapers.html
  • The calculation of 10G WAN rate is a bit different from regular Ethernet calculations, mainly due to the WAN bandwidth being less than the LAN bandwidth.
    • Attached is a document entitled 'How the Frame Rate calculations are made for the WAN 10 gigabit' 
 

Attachment Description
how the Frame rate calculations are made for the WAN 10 gigabit

Product : Spirent TestCenter,CM,CV,MX,MSA