비잔티움 장애 허용비잔티움 장애 허용(영어: Byzantine Fault Tolerance)은 두 장군 문제(Two Generals Problem)를 일반화한 문제인 비잔티움 장군 문제(영어: Byzantine Generals Problem)로부터 파생된 장애 허용 분야 연구의 한 갈래다. 이 분야의 연구는 비잔티움 장애(영어: Byzantine faults)라고 불리는 시스템에 생길 수 있는 임의의 장애를 견딜 수 있는 시스템을 만들기 위한 것이 목적이다. 이 비잔티움 장애는 단지 시스템이 멈추거나 에러 메시지를 내보내는 것과 같은 장애 뿐 아니라, 잘못된 값을 다른 시스템에 전달하는 등의 좀 더 그 원인을 파악하기 어려운 장애들까지 포함한다. 제대로 구현된 비잔티움 장애 허용 시스템에서는 미리 정해진 정도를 넘지 않는 부분에서 어떠한 형태의 장애가 있더라도 정확한 값을 전달할 수 있다. 비잔티움 장군 문제비잔티움 장군 문제는 레슬리 램포트와 쇼스탁, 피스가 공저한 1982년 논문에서 처음 언급됐다.[1] 이 논문에서 저자들은 적군의 도시를 공격하려는 비잔티움 제국군의 여러 부대가 지리적으로 떨어진 상태에서 각 부대의 장군들이 (중간에 잡힐지도 모르는) 전령을 통해 교신하면서 공격 계획을 함께 세우는 상황을 가정하고 있다. 충직한 장군들은 합의된 규칙을 충실하게 따르며 이 외의 행동은 하지 않는다. 그러나 전체 장군 중 일부는 배신자일 수 있으며, 배신자는 규칙에 얽매이지 않고 마음대로 행동할 수 있다. 이 때 배신자의 존재에도 불구하고 충직한 장군들이 동일한 공격 계획을 세우기 위해서는 충직한 장군들의 수가 얼마나 있어야 하며, 장군들이 어떤 규칙을 따라 교신해야 하는지에 대한 문제가 비잔티움 장군 문제다. 사실 계획이 합리적인지도 판단한다면 더 좋으나, 이는 판단할 수 없으므로 포기하고, 오직 다수의 합의를 이끌어내는 것에만 초점을 맞춘다. 보장해야 하는 것은 아래와 같다.
이름의 기원레슬리 램포트는 이 문제의 장군들의 국적을 놓고 고민하던 중 당시 동구 공산국가 중 가장 고립된 국가였던 알바니아를 장군들의 국적으로 한다면 주변의 누구도 불쾌해하지 않을 것이라 생각해서 당시 논문의 초안을 "알바니아 장군 문제"라는 제목으로 작성했다. 하지만 이 초안을 읽은 잭 골드버그가 알바니아인이 꼭 알바니아에만 사는 것은 아니라고 지적했고, 이 말에 램포트는 아무도 불쾌해하지 않을 비잔티움 제국으로 장군들의 소속을 바꿨다.[2] 초기 솔루션1982년 Lamport, Shostak, Pease가 여러 솔루션을 제시했다. 이들은 비잔티움 장군 문제가 충직한 부관(Lieutenant) 모두가 지휘관(Commander)이 내린 명령과 일치하게, 같은 행동을 해야한다는 "Commander and Leutenants" 문제로 좁혀질 수 있다고 말했다.
1980년 비잔틴 장애 허용이 도입된 이후로 Draper's FTP, Honeywell's MMFCS. SRI's SIFT 등 여러 시스템 구조가 디자인되었다. 실용적 비잔티움 장애 허용P2P 분산 원장 기술에서 폐쇄형 합의 기준이 비잔티움 장애 허용을 따른다. 활용분야는 결제시스템, 신원 및 문서 인증, 무역금융, 스마트계약 등이 있다. 활용 사례활용되고 있는 비잔티움 장애 허용의 예시 중 하나는 P2P 암호화폐 시스템인 비트코인이다. 비트코인 네트워크는 병렬적으로 작동하여 작업 증명(채굴이라고도 불림) 형태의 해시캐시 체인을 형성한다. 작업 증명 체인은 비잔티움 실패를 해결하고 일관적인 시스템을 구성할 수 있게 한다. 참고 문헌
|
Portal di Ensiklopedia Dunia