Late join

from Wikipedia, the free encyclopedia

Late-join ( Engl. "Later accession") or late accession referred to in the computer science , the late Join users to an ongoing session of a computer application for group work ( groupware ).

Dealing with problems and solutions related to late joins is one of the tasks of Computer Supported Cooperative Work . As in a real meeting, the question arises as to how the new members can be brought up to date as quickly and comprehensively as possible. In technical terminology, it is about the efficient processing of a late-join request from a late-join client by transmitting late-join data from one or more late-join servers . The following optimization criteria should be observed:

  • Initialization delay. The time until the new users can actively participate in the session should be as short as possible.
  • Network load. The network should be burdened as little as possible by joining.
  • Application complexity. The algorithms that do the initialization should be as simple and fast as possible.
  • Robustness. The initialization should run as smoothly as possible.
  • Consistency. After the initialization is complete, the new users should be up to date and have all the necessary data.

Problems that work against optimal fulfillment of the criteria are:

  • Late join servers experience additional workload from initialization. Selecting a suitable late-join server can be time-consuming and thus negatively impact initialization delays and application complexity. If a server is accidentally chosen that is not up to date, the consistency is at risk.
  • The extent of the late join data can be very large in large systems, which can have a negative effect on initialization delay, network load, application complexity and robustness.
  • The time of the initialization should be as early as possible in order to minimize the initialization delay, but it could possibly be handled much more efficiently in a later idle phase. The question also arises as to whether the late join client receives all late join data immediately or whether these are only sent one by one, sorted according to selection criteria.
  • Transmission errors weaken the robustness and increase the network load through the necessary corrections or repeated transmissions.

The following options are available as possible solutions to these problems:

  • Complete or partial initialization. The scope of the late join data for a complete initialization (in which the late join client receives all available data) can be reduced or at least staggered if it initially only receives the data that is currently required and additional data only when it is required become. The data is selected using so-called late join policies.
  • The type of late join data can vary between history, state, or a combination of both. When initializing through a history, all operations previously carried out by all participants are transmitted to the late join client; Since actions are often undone or overwritten several times, there is usually a lot of redundancy here. The initialization via the current status does not contain this redundancy, but usually requires the transmission of a large amount of data. With the combination, an older status is transmitted first and then all operations carried out from there.
  • The initialization can be carried out via unicast or multicast. Exactly one late join server initializes exactly one late join client via unicast, while a late join server can initialize several late join clients simultaneously via multicast - with additional load on some other group members.