%
% $RCSfile: bid.tex,v $
%
% $Revision: 1.2 $
% $Date: 1996/02/02 00:04:22 $
%

\subsection{BID}
\index{bid}

\topic{NAME}
BID (Boot ID Protocol)

\topic{SPECIFICATION}

\noindent 
BID is the filtering module of the BootId protocol. 
The BootId protocol is designed to advise workstations that a peer has
rebooted, to protect protocols from receiving messages generated
during previous boot incarnations, and to inform higher protocols of a
peer's reboot in a timely fashion.

If an upper protocol registers with BIDCTL protocol and messages
from its session pass through BID sessions, the BootId protocol
guarantees that a message from a rebooted peer will not be sent to an
upper protocol until the upper protocol has been informed of the
reboot.  

\topic{SYNOPSIS}

\noindent
BID sessions stamp all outgoing messages with a local and remote
BootId and filter out all incoming messages which do not have the
correct BootIds.  Determination of the ``correct'' BootId is made by
the BIDCTL protocol.  BID requires BIDCTL.

BID is not reliable.  If there is confusion between two peers as to
what their mutual BootIds are, messages between them will be silently
dropped until the confusion is resolved.

\topic{REALM}

\noindent
BID is in the ASYNC realm.

\topic{PARTICIPANTS}

\noindent
BID expects an IPhost on the top of each participant.  It examines
this value but does not remove it form the participant stack before
opening its transport protocol.

\topic{CONFIGURATION}

\noindent
BID expects to be configured above two protocols.  The first is the
transport protocol and the second is the BIDCTL protocol.

\topic{AUTHOR}

\noindent Ed Menze

