Lockstep protocol
Encyclopedia
The lockstep protocol is a partial solution to the look-ahead cheating problem in peer-to-peer
Peer-to-peer
Peer-to-peer computing or networking is a distributed application architecture that partitions tasks or workloads among peers. Peers are equally privileged, equipotent participants in the application...

 architecture multiplayer games, in which a cheating client delays his own actions to await the messages of other players. A client can do so by acting as if he is suffering from high latency
Latency (engineering)
Latency is a measure of time delay experienced in a system, the precise definition of which depends on the system and the time being measured. Latencies may have different meaning in different contexts.-Packet-switched networks:...

; the outgoing packet is forged by attaching a time stamp that is prior to the actual moment the packet is sent.

To avoid this method of cheating, the lockstep protocol requires each player to first announce a "commitment" (e.g. hash
Cryptographic hash function
A cryptographic hash function is a deterministic procedure that takes an arbitrary block of data and returns a fixed-size bit string, the hash value, such that an accidental or intentional change to the data will change the hash value...

 value of the action); this commitment is a representation of an action that:
  • Cannot be used to infer the action; and
  • Easily compares whether an action corresponds with a commitment.


Once all players have received the commitments, they reveal their actions, which are compared with the corresponding commitments to ensure that the commitment is indeed the sent action.

Drawbacks

As all players must wait for all commitments to arrive before sending their actions, the game progresses as slowly as the player with the highest latency. Although this may not be noticeable in a turn-based game, real-time online games, such as first person shooters, require much faster reactions.

This can be acquired by placing a limit on the time in which a player can announce his action. If no action is sent within this period, other players do not announce their actions to that player and ignore any action that arrives too late.

Asynchronous lockstep protocol

To overcome the obvious drawback of the simple lockstep protocol, an asynchronous variant of the protocol exists wherein players advance in time free of any negotiations with other players until interaction between players exists, known as a "lockstep mode." This mode may be defined by a certain area around a player, such as a sphere, in which the game world may be affected by the player.

Such an interaction can only occur when, for example, the areas of influence surrounding two players intersect.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK