3.1.1 Abstract Data Model
The connect sequence is initiated by the client or the peer. If there happens to be an error or disconnect on the server/host, cleanup and disconnect happens with only the client/peer with the failure. (Remaining clients/peers in the session remain connected.)
A DirectPlay 8 Protocol: Core and Service Providers Protocol implementation MUST maintain the following data element:
name table: All participants MUST maintain a name table, as described in section 2.2.6. In peer-to-peer mode, the name table state MUST be kept consistent among all participants, and during connections:
The host MUST generate a DN_ADD_PLAYER (section 2.2.1.7) name table operation associated with the connecting peer.
Existing peers MUST process the DN_ADD_PLAYER name table operation from the host.
New peers MUST construct the initial name table based on the entries contained in the DN_SEND_CONNECT_INFO (section 2.2.1.4) message.
In client/server mode, each client only keeps name table entries that represent its player and the server player. Therefore, only this subset of the name table is synchronized with the server during connection.