불리 알고리즘

불리 알고리즘(Bully algorithm)은 분산 컴퓨팅에서 분산 컴퓨터 프로세스들의 그룹으로부터 코디네이터(조정자) 또는 리더(leader)를 자동으로 선출하기 위한 한 방식이다. 실패 없이 정상 동작하는 프로세스들 중에서 가장 높은 프로세스 ID를 가진 프로세스가 조정자로 선정된다.

가정 편집

알고리즘은 다음과 같은 가정 하에 동작한다:[1]

  • 시스템이 동기적이다.
  • 프로세스는 알고리즘이 실행되는 시간을 포함하여 언제든지 실패할 수 있다.
  • 실패한 프로세스를 감지하는 실패 감지기가 존재한다.
  • 프로세스 간 메시지 전달이 신뢰적이다.
  • 각 프로세스는 자신의 프로세스와 기타 모든 다른 프로세스의 ID와 주소를 알고있다.

알고리즘 편집

알고리즘은 다음 메시지 타입을 사용한다:

  • 선출 메시지(Election Message): 선출을 선언하기 위해 보내는 메시지.
  • 응답(Alive) 메시지: 선출 메시지에 대한 응답.
  • 조정자(Victory) 메시지: 승리(victory)를 선언하기 위한 선출 승자가 보내는 메시지.

같이 보기 편집

각주 편집

  1. Coulouris, George; Dollimore, Jean; Kindberg, Tim (2000). 《Distributed Systems: Concepts and Design》 3판. Addison Wesley. ISBN 978-0201619188. 

외부 링크 편집