Pregunta

Me preguntaba cuál es la diferencia real entre Kahn Process Network y el modelo del actor.De hecho, si miro la definición, ambos son modelos en los que las entidades computacionales (llamadas actores en ambos casos ...) intercambian mensajes a través de buffers ilimitados.Además, en ambos casos, estos mensajes se envían de forma asíncrona, ya que un procedimiento siempre puede enviar un mensaje.No necesita esperar a que el destinatario esté listo para recibir.

De ahí mi pregunta, ¿hay alguna diferencia real?

¡Gracias mucho!

¿Fue útil?

Solución

La red de procesos Kahn está garantizada para ser determinista. Todas las conexiones de FIFO entre los procesos se conocen prioramente y no se alteran dinámicamente durante el curso de ejecución. En contraste, en caso de modelo del actor (citando Wikipedia):

En respuesta a un mensaje que recibe, un actor puede tomar decisiones locales, crear más actores, enviar más mensajes y determinar cómo responder al siguiente mensaje recibido.

Modelo del actor, por lo tanto, no está garantizado para ser determinista. Citando Wikipėda:

El modelo del actor presenta un notibinismo ilimitado que fue capturado en un modelo matemático, Cleming Will usando la teoría del dominio.

Otra distinción importante es cómo se lleva a cabo la comunicación

En el caso de KPN, para preservar el determinismo, toda la comunicación es a través de los canales FIFO. Pero no existe tal requisito en caso de modelo del actor. Citando Wikipedia:

[en KPN. No hay] requisito en orden de la llegada del mensaje [....] Si se desea un pedido de mensaje de salida, puede ser modelado por un actor de cola que proporciona esta funcionalidad. Tal actor de cola cola los mensajes que llegaron para que pudieran recuperarse en la Orden FIFO. Entonces, si un actor X envió un mensaje M1 a un actor y, y luego X envió otro mensaje M2 a Y, no hay ningún requisito que M1 llegue a Y antes de M2.

A este respecto, el modelo del actor refleja los sistemas de conmutación de paquetes que no garantizan que los paquetes deben recibirse en el orden enviado. No proporcionar el orden de la garantía de entrega Permite el cambio de paquetes a los paquetes de búfer, use múltiples rutas para enviar paquetes, reenviar los paquetes dañados y proporcionar otras optimizaciones.

Como es bastante claro a partir de la discusión anterior, KPN es un escenario mucho más restringido que se puede modelar utilizando el modelo del actor agregando restricciones adicionales.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top