위키득계정 ↗
기술

FLP 불가능성 정리

FLP 불가능성 정리기술
이름
Fischer, Lynch와 Paterson
대상
결정적 분산 합의
모형
완전 비동기 메시지 전달
핵심 한계
모든 허용 실행의 종료 보장 불가
FLP 불가능성 정리는 완전 비동기 분산 시스템에서 하나의 프로세스 중단 가능성만 있어도 결정적 합의 알고리즘의 모든 허용 실행에 대한 종료를 보장할 수 없다는 결과다. 합의가 언제나 실패한다는 뜻이 아니라 종료하지 않는 허용 실행이 존재한다는 뜻이다.

느림과 중단을 구분할 수 없을 때

완전 비동기 모형에서는 메시지 지연이나 프로세스 속도에 알려진 상한을 두지 않는다. 응답이 오지 않는 상대가 멈췄는지 매우 느린지는 유한한 대기만으로 확정할 수 없다. 메시지가 영원히 사라진다는 가정을 해야만 나오는 결론은 아니며 정상 프로세스에 대한 전달은 결국 이루어져도 된다.

무엇을 보장할 수 없는가

합의에는 서로 다른 결정을 내리지 않는 안전성과 결국 결정하는 종료 성질이 필요하다. 정리는 주어진 모형에서 두 요구를 모든 허용 실행에 함께 보장할 수 없음을 보여 준다. 정상적으로 동작하는 많은 실행에서 빠르게 결정하는 알고리즘의 존재와 모순되지 않는다.

증명의 기본 관점

아직 어느 결정도 가능할 수 있는 상태를 생각한다. 특정 메시지를 늦추거나 사건 순서를 조절하면서도 그런 미결정 상태를 계속 유지할 수 있음을 논증한다. 단지 서버 하나의 응답이 느리다는 사례 하나를 드는 것보다 강한 결과로, 조건을 만족하는 임의의 결정적 프로토콜을 대상으로 한다.

실제 알고리즘과의 관계

실제 시스템은 통신이 결국 안정된다는 부분 동기성 가정이나 장애 감지기, 무작위화 등 다른 조건을 사용할 수 있다. 이는 정리가 틀렸다는 뜻이 아니라 분석 모형이 달라졌다는 뜻이다. 타임아웃을 추가했다는 사실만으로 완전 비동기 환경에서 상대의 중단을 정확히 알아낼 수 있게 되는 것은 아니다.

관련 문서

분산 시스템 / 알고리즘 / 프로세스 / 네트워크 / Paxos / Raft / CAP 정리 / 비잔틴 장군 문제