비잔티움 장애 허용

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색

비잔티움 장애 허용(Byzantine Fault Tolerance)은 두 장군 문제(Two Generals Problem)를 일반화한 문제인 비잔티움 장군 문제(Byzantine Generals Problem)로부터 파생된 장애 허용 분야 연구의 한 갈래다.

이 분야의 연구는 비잔티움 장애(영어: Byzantine faults)라고 불리는 시스템에 생길 수 있는 임의의 장애를 견딜 수 있는 시스템을 만들기 위한 것이 목적이다. 이 비잔티움 장애는 단지 시스템이 멈추거나 에러 메시지를 내보내는 것과 같은 장애 뿐 아니라, 잘못된 값을 다른 시스템에 전달하는 등의 좀 더 그 원인을 파악하기 어려운 장애들까지 포함한다. 제대로 구현된 비잔티움 장애 허용 시스템에서는 미리 정해진 정도를 넘지않는 부분에서 어떠한 형태의 장애가 있더라도 정확한 값을 전달할 수 있다.

비잔티움 장군 문제[편집]

비잔티움 장군 문제는 레슬리 램포트와 쇼스탁, 피스가 공저한 1982년 논문에서 처음 언급됐다.[1] 이 논문에서 저자들은 적군의 도시를 공격하려는 비잔티움 제국군의 여러 부대가 지리적으로 떨어진 상태에서 각 부대의 지휘관들이 (중간에 잡힐지도 모르는) 전령을 통해 교신하면서 공격 계획을 함께 세우는 상황을 가정하고 있다. 이 부대의 지휘관 중 일부에는 배신자가 섞여있을 있고, 배신자는 규칙을 충실히 따르는 충직한 지휘관들과 달리 규칙에 얽매이지 않고 마음대로 행동할 수 있다. 이 때 배신자의 존재에도 불구하고 충직한 지휘관들이 동일한 공격 계획을 세우기 위해서는 충직한 지휘관들의 수가 얼마나 있어야 하며, 이 지휘관들이 어떤 규칙을 따라 교신해야 하는지에 대한 문제가 비잔티움 장군 문제다.

이름의 기원[편집]

레슬리 램포트는 이 문제의 장군들의 국적을 놓고 고민하던 중 당시 동구 공산국가 중 가장 고립된 국가였던 알바니아를 장군들의 국적으로 한다면 주변의 누구도 불쾌해하지 않을 것이라 생각해서 당시 논문의 초안을 "알바니아 장군 문제"라는 제목으로 작성했다. 하지만 이 초안을 읽은 잭 골드버그가 알바니아인이 꼭 알바니아에만 사는 것은 아니라고 지적했고, 이 말에 램포트는 아무도 불쾌해하지 않을 비잔티움 제국으로 장군들의 소속을 바꿨다.[2]

비잔티움 장애[편집]

실용적 비잔티움 장애 허용[편집]

참고 문헌[편집]

  1. L. Lamport, R. Shostak, M. Pease, The Byzantine Generals Problem, ACM Transactions on Programming Languages and Systems, v. 4 n. 3, pp. 382-401, July 1982.
  2. The Writings of Leslie Lamport