2.2.3 RequestElection Browser Frame

The RequestElection frame MUST be broadcast by using the NetBIOS group name <machine group>[0x1E] and mailslot \MAILSLOT\BROWSE. For more information about browser elections, see sections 3.1.6, 4.2, 4.3, and 3.3.5.8.

The format of the RequestElection frame MUST be as follows.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

0x08

Version

Criteria

...

Uptime

...

Unused

...

ServerName (variable)

...

0x08 (1 byte): The 8-bit opcode that identifies this structure as a RequestElection frame. This opcode MUST have a value of 0x08.

Version (1 byte): An 8-bit integer that specifies the version of this election packet and MUST be transmitted with a value of 0x01.

Criteria (4 bytes): An unsigned 32-bit integer that MUST specify the election criteria of the sender. If sent by a browser client, the Criteria field SHOULD be set to 0. If sent by a browser server, it MUST be produced by applying a bitwise OR operation on a combination of the appropriate operating system value, the browser version value, and the role value as defined below. The election process is specified in section 3.3.5.8.

Operating System: This value represents an operating system-specific value. It MUST be set to either 0x10000000 or 0x20000000, based on the server implementation. Servers that set it to 0x20000000 will be more likely to win an election as described in section 3.3.5.8. As such, a server that is less likely to remain active on the subnet SHOULD set this value to 0x10000000 to prevent unnecessary elections.<14>

Browser Version: This value MUST be set to 0x00010F00.

Role: This value is the bitwise OR of zero or more of the flags defined in the following table.

Value

Meaning

0x00000080

A browser server running on a machine that is also the Primary domain controller (PDC).

0x00000008

Preferred master browser server

0x00000004

A master browser server that is currently running

0x00000002

A browser server running on a machine that is also a domain controller (DC)

0x00000001

A backup browser server that is currently running

0x00000020

A computer using NetBIOS Name Service (or Windows Internet Name Service) for NetBIOS

Uptime (4 bytes): An unsigned 32-bit integer that MUST be the number of seconds since the browser service was started on the server.

Unused (4 bytes): An unsigned 32-bit integer that MUST be sent as 0x00000000 and ignored on receipt.

ServerName (variable): MUST be a null-terminated ASCII server name and MUST be less than or equal to 16 bytes in length, including the null terminator.