802.1 Tools
  • Home
  • Maintenance
    • All items
    • Open items
    • Closed items
    • Items for review
    • Status
  • Meetings
  • Help
  • Log in
Requested revision
Standard:802-1CB-2017Clause:7.4.3.5
Clause title:MatchRecoveryAlgorithm
Rationale for revision
Code for MatchRecoveryAlgorithm at top of page 44 has an "if (TakeAny) { ...}" section that should have a "return;" after the PRESENT_DATA event. Why? If you look at the code inside that if() it sets RecovSeqNum equal to sequence_number. Because of the missing "return;" the remaining code after the if() will be executed and "delta" will be set to 0. The next if() statement tests if delta is equal to zero, which will be, and counts the packet as also being discarded, which it was not!
Proposed text
Add a "return;" statement after the PRESENT_DATA event in the "if (TakeAny) {...}" code segment.
Impact on existing networks
Existing implementations based on this code will count the first packet transmitted as a Passed packet (which is correct) and as a Discarded packet (which is wrong). Even if there are never any discarded packets the counter will still show that one packet was discarded.
Originator
Name:Craig GuntherEmail:craiggunther@yahoo.com
Affiliation:Craig Gunther Consulting/Bosch
Submitted:2019-08-07