The best master clock algorithm (BMCA) is an algorithm designed into the precision timing protocol that is used to determine which of two master clocks should be used as the main source of time. It does this by assigning a master clock as a grandmaster. Which will act as the primary source of time. If the grandmaster goes offline the BMCA will then automatically assign the redundant master clock as the primary source of time for the network.
To determine which of the two master clocks is best suited for the role of grandmaster the BMCA will run through a list of criteria (listed below) to determine which clock should be used. If the criteria are identical on each clock, it will move to the next set of criteria. For example, if both clocks have the same Priority and Clock class, the grandmaster will then be determined by the time source being used.
BMCA Criteria
- Priority 1
- Class
- Time Source
- Variance
- Boundary or Ordinary
- Priority 2
- MAC Address
*Please note that the BMCA only applies to Precision Time Protocol (PTP) and not the network time protocol (NTP).