Microsoft KB Archive/247101

From BetaArchive Wiki
Knowledge Base

Description of the DSBM Election Algorithm

Article ID: 247101

Article Last Modified on 3/1/2007


  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server

This article was previously published under Q247101


The protocol for electing and discovering Designated Subnet Bandwidth Manager (DSBM) is named the DSBM election Protocol. To allow for a timely recovery from a DSBM failure, it may be useful to have additional Subnet Bandwidth Managers active on the segment for fault tolerant purposes. After a DSBM is recognized, the remaining Subnet Bandwidth Managers remain passive on the network only until it is necessary to start an election.


For algorithm purposes, a Subnet Bandwidth Manager (SBM) is in one of the following four states:

  • Idle
  • DetectDSBM
  • ElectDSBM

When an SBM (for this example, SBM 1) starts, it is in the DetectDSBM state, where it waits to receive either a I_AM_DSBM or a DSBM_WILLING advertisement. If an I_AM_DSBM advertisement is received, SBM 1 notes the current DSBM. If a DSBM_WILLING advertisement is received (for this example, SBM 2), SBM 1 checks its own credentials to see if it is a better candidate, and if so, sends out a DSBM_WILLING, and then enters the ElectDSBM state. When in the ElectDSBM state, an SBM sets a timer (ElectionIntervalTimer) to wait for the election process to finish. During this period, SBM 1 is keeping track of the best candidate, based on the priority criterion. SBM 1 is also sending out a DSBM_WILLING of its own, based on its refresh interval, to reassert its candidacy. At the end of the election, SBM 1 checks to determine which computer has the best chance to become the DSBM. If it is SBM 1, SBM 1 goes into the I_AM_DSBM state, where it sends out the I_AM_DSBM advertisement (every 5 seconds according to the default DSBMRefreshInterval). Otherwise, it would wait for the best candidate to declare itself the winner and goes through another round of elections, resetting itself to the ElectDSBM state.

An SBM is idle only when there is not an election process and the DSBM is already elected. If the DSBMDeadInterval is reached (meaning no I_AM_DSBM messages were received by active SBMs), then the SBM candidates would go in to the ElectDSBM state after sending out a DSBM_WILLING message. Also, if the DSBM is shut down, it sends out a DSBM_WILLING message. During this process, SBM priority is set to 0 to remove itself from the election and then require an election between other DSBM candidates. For additional information about related topics, click the article numbers below to view the articles in the Microsoft Knowledge Base:

228830 Description of Subnet Bandwidth Manager (SBM) in Windows 2000

247102 DSBM Election Algorithm

Additional query words: qos

Keywords: kbinfo kbnetwork KB247101