L. Lamport – Protocolo Causal Broadcast Mínimo (MBCP) – Turing Award 2013

Leslie Lamport ganador del Turing Award 2013 gracias a su propuesta del Protocolo Causal Broadcast Mínimo (MBCP) que asegura de forma eficiente la entrega de mensajes en grupo de manera correcta y segura, eliminando fallas por omisión en la red.

Este protocolo es prácticamente nuevo (2013) y no existe implementación como tal para demostrar su eficiencia. Por esta razón les traigo un ejemplo programado en Java y basado en comunicación a través de UDP, la configuración es sencilla e intuitiva.

 

ipsEsta aplicación está basada en la comunicación entre cinco procesos distribuidos. Como he mencionado la aplicación es con base a UDP y no a multidifusión; realizado de esta manera para simular retrasos en la red y así comprobar, a como este artículo propone, la eficiencia del MBCP.

interfazUna vez ingresadas las IP lo que resta es por intuición.

 

Gracias a este algoritmo se comprueba y se asegura que, aunque lleguen mensajes fuera de orden ya sea por omisión de red y/o procesos, el proceso receptor puede ser capaz de ordenarlos acorde fueron enviados. Se garantiza la espera de aquellos paquetes que no corresponda su entrega causal hasta que aquellos que tengan relación de dependencia inmediata (IDR) sean entregados.

 

Descarga el código fuente: aquí

Pseudocódigo del MBCP y IDR: FormularioSD