3.3.5.3 Receiving a HostAnnouncement Frame

Nonbrowser servers and browser servers periodically (see section 3.2.6) send HostAnnouncement frames to inform the local master browser for the machine group about the status of the server.

Browser servers receiving the HostAnnouncement frame that are not the local master browser MUST ignore the frame.

If the Local master browser server with IsPrimaryDomainController set to TRUE receives a HostAnnouncement frame with the SV_TYPE_MASTER_BROWSER (MB) flag set, it MUST continue to be in the same state and send a RequestElection (section 2.2.3) as specified in section 3.3.5.11.

The server SHOULD continue processing as described below even if the send fails.

If the Local master browser with IsPrimaryDomainController set to FALSE receives a HostAnnouncement frame with the SV_TYPE_MASTER_BROWSER (MB) flag set from a domain controller, then the browser server MUST do the following:

  • It MUST set Current Role to Potential browser server, and it MUST disable advertising of the master browser service as specified in [MS-SRVS] section 3.1.6.10, passing SV_TYPE_MASTER_BROWSER as the input parameter.

  • It MUST unregister the NetBIOS unique name <Machine Group Name>[0x1D] so that the announcing browser server can successfully register it.

  • It MUST empty all elements in the Backup Browser List.

For any other browser server state, if it receives a HostAnnouncement frame with the SV_TYPE_MASTER_BROWSER (MB) flag set, ignore the frame and continue to be in the same state.

The local master browser that receives this request MUST update the Servers List as follows:

  • If an entry exists in the Servers List for the ServerName specified in the received HostAnnouncement, the local master browser server MUST reset the ServerExpirationTimer for this entry and MUST increment the HostAnnouncementCount.

  • If an entry does not exist in the Servers List for the ServerName specified in the received HostAnnouncement, the local master browser server MUST insert a new entry into the list for the Name received with HostAnnouncementCount equal to 1, and MUST create a ServerExpirationTimer for this entry.

If the ServerType in the HostAnnouncement indicates it is a backup browser server and the server is not currently present in the Backup Browser List, the machine MUST be added to the Backup Browser List.

Upon receipt of a HostAnnouncement, if the number of backup browser servers is not sufficient for the machine group, the local master browser SHOULD send out BecomeBackup (section 2.2.6) packets according to the behavior as specified in section 3.3.5.7. The server MUST send the BecomeBackup packet by issuing a mailslot write as specified in [MS-MAIL] section 3.1.4.1 with the following parameters.

Parameter name

Value

NetBIOS name of the remote server

<server to be promoted to backup>[0x00]

Mailslot name

\MAILSLOT\BROWSE

Data

BecomeBackup as specified in section 2.2.6

The server SHOULD ignore the error even if the send fails.