신화와 동로마, 터키 주변

비잔틴 장군 문제

haghiasophia 2018. 2. 13. 21:51

비잔틴 장군 문제(Byzantine General Problem)는, 두 장군 문제(Two Generals Problem)를 일반화한 내용이라고 한다.

그러기에 사실 이 문제는 비잔틴하고 상관이 없었다.


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

레슬리 램포트는 처음 비잔틴 대신 알바니아 장군 문제로 제목을 붙였다가, 알바니아 사람들이 불쾌할 수도 있어, 아무도 불쾌해 하지 않을 비잔틴으로 바꿨다고 한다.

하긴, 지금의 터키 사람들은(경험의 오류일 수 있지만) 돌궐→셀주크→오스만으로 이어지는 역사만 배우기 때문에 동로마나 비잔틴에 대해 거~의 모르고 있다.

내가 터키에 있을 때 직원들을 데리고 동로마 유적을 보러 가면, 처음 봤다는 반응들이었다.


암튼, 비잔틴 장군 문제에서 파생된 게 있다.

비잔틴 장애 허용 Byzantine Fault Tolerance

컴퓨터 프로그램에서의 장애 허용에 대한 연구다.

시스템이 멈추거나, 에러 메시지를 보내거나, 잘못된 값을 다른 시스템에 전달하거나, 또는 원인을 모르는 장애가 벌어지더라도, 제대로 구현된 비잔틴 장애 허용 시스템에서는 미리 정해진 한도를 넘지 않는 범위에서는 어떠한 형태의 장애가 있더라도, 정확한 값을 전달하는 시스템을 만드는 목적의 연구다.


비잔틴은, 330년 콘스탄티누스 대제가 수도를 콘스탄티노플로 옮기기 전까지는, 그리스의 폴리스중 하나였다.

비잔틴이 이런 식으로 현대 사회에 부활하다니...