Прекращение надежной трансляции - Terminating Reliable Broadcast
Прекращение надежной трансляции (TRB) проблема в распределенных вычислений в котором заключена задача вещание сообщение для набора получения процессы в присутствии недостатки.[1] В частности, отправитель и любой другой процесс могут потерпеть неудачу («сбой») в любой момент.
Описание проблемы
Протокол TRB обычно объединяет систему в процесс отправки и набор процессов получения, которые могут включать самого отправителя. Процесс называется «правильным», если он не дает сбоев ни на каком этапе своего выполнения. Цель протокола - передавать данные («сообщение») от отправителя множеству принимающих процессов. Процесс может выполнять много Ввод / вывод операций во время выполнения протокола, но в конечном итоге «доставляет» сообщение, передавая его приложению в том процессе, который вызвал протокол TRB.
Протокол должен предоставлять важные гарантии принимающим процессам. Например, все правильные процессы получения должны доставлять сообщение отправителя, если отправитель также правильный. Процесс приема может доставить специальное сообщение, ("отправитель неисправен"), если отправитель не прошел, но либо все правильные процессы доставят или же никто буду. Таким образом, гарантируется корректный процесс, что доставленные ему данные также были доставлены всем другим правильным процессам.
Точнее, протокол TRB должен удовлетворять четырем формальным свойствам, указанным ниже.
- Прекращение: каждый правильный процесс имеет ценность.
- Срок действия: если отправитель верен и передает сообщение , то каждый правильный процесс дает .
- Честность: процесс доставляет сообщение не более одного раза, и если он доставляет какое-то сообщение , тогда было передано отправителем.
- Соглашение: если правильный процесс доставляет сообщение , то все правильные процессы доставляют .
Наличие неисправностей в системе затрудняет соблюдение этих свойств. В простом, но недействительном протоколе TRB отправитель может транслировать сообщение всем процессам, а принимающие процессы доставляют сообщение сразу после его получения. Однако этот протокол не удовлетворяет соглашение если могут возникнуть ошибки: если отправитель аварийно завершает работу после отправки сообщения одним процессам, но перед его отправкой другим, то первый набор процессов может доставить сообщение, а второй набор доставляет .
TRB тесно связан, но не идентичен фундаментальной проблеме распределенных вычислений консенсус.
Рекомендации
- ^ Альвиси, Лоренцо (2006). «Консенсус и надежное вещание» (PDF). Получено 2006-05-21.