On mié, 2005-09-07 at 22:26 -0400, Alvaro Herrera wrote: > Hola, > > Ando en busqueda de un sistema que me permita hacer simulaciones de > procesos que se comunican por red. La idea es poder alterar "por > debajo" los paquetes que se envian, para determinar que tan robusta es > la comunicacion entre ellos. > > Una referencia de mas o menos lo que busco es UMLsim, que permite correr > un kernel UML y un programa dentro de el, y hacer alteraciones al > kernel. Sin embargo UMLsim parece ser un proyecto muerto :-( (Algunos > lo recordaran de la charla de Werner Almesberger en uno de los > Encuentros de Linux anteriores)
A esta hora no se me ocurre nada coherente, más que pichicatear un driver de red y añadirle ruido aleatoreamente bajo ciertas condiciones (algún parámetro). Otra alternativa podría ser aplicar algún mecanismo de traffic shaper, donde el tráfico de dichos mensajes tengan la menor prioridad posible con el menor ancho de banda disponible, y en contraste, otro con mayor prioridad y ancho de banda. Luego, generas tanto tráfico (iperf) para que comience a descartar paquetes de menor prioridad. Quizás para ello, sea mejor usar algún programa simulador de red, como dummynet (http://info.iet.unipi.it/~luigi/ip_dummynet/). Claro que tiene sentido si puedes colocarlo al medio de 2 equipos. También podrías intentar con Qemu (http://www.qemu.org/) e instalar allí otra instancia de Linux. Correr lo que sea necesario, y, al menos allí puedes pichatear la emulación de la interfaz de red (y dale con lo mismo ;-) > El trasfondo del asunto es el siguiente: estoy estudiando el > comportamiento del sistema de comunicacion de grupos (GCS) llamado > Spread. Con un alto grado de probabilidad, Spread sera una pieza > importante en Slony-II, el sistema de replicacion multi-maestro de > PostgreSQL. En pruebas triviales, se puede ver que Spread transfiere > correctamente los paquetes de un lado a otro; la pregunta es: que sucede > en el caso de que le pegue una particula cuantica a un cable de red en > el momento equivocado? Si un mensaje llega distinto a como fue enviado, > es Spread capaz de darse cuenta y corregir el problema? Ese es un problema. El otro es lo que podría suceder si llegan fuera de orden. Dependerá del tipo de servicio que definas para Spread. El que ofrece mayor confiabilidad es SAFE_MESS, el cual garantiza la integridad de los mensajes y el orden de éstos. Aunque seguramente eso ya lo has leído en la documentación de Spread y estas buscando alguna forma de estar 100% que eso es así. -- Germán Poó Caamaño http://www.ubiobio.cl/~gpoo/ Concepción - Chile

