Алгоритм хулігана

Алгоритм хулігана — метод вибору нового координатора в розподілених обчисленнях, що використовує ідентифікаційний номер (ID) процесу. Коли процес P визначає, що поточний координатор не виконує своїх функцій через втрату зв'язку або вихід із ладу, процес P ініціює рукостискання, виконуючи наступну послідовність дій:

  1. P передає повідомлення (запит) про вибори всім інших процесам з вищим ID;
  2. Якщо P не отримує відповіді від будь-якого процесу з вищим ID, то він негайно оголошує себе новим координатором і повідомляє про це всім іншим процесам;
  3. Якщо P отримує відповідь від процесу з вищим ID, він чекає певну кількість часу, щоб будь-який процес з більшим ID оголосив себе лідером. Якщо такого повідомлення вчасно не надходить, P повторно передає повідомлення про вибори.
Якщо P отримує повідомлення про перемогу від процесу з нижчим ID, він негайно ж ініціює нові вибори. Саме цим пояснюється назва алгоритму — процес з вищим ID хуліганськи не визнає проголошення переможцем процесу з нижчим ID.

Див. також