¿Cómo funciona kijjaa?

Supongo que es bastante simple. Como se mencionó anteriormente, se podría usar Flash Media Server. Una alternativa más barata es Red5.

Una forma aún más simple es crear un servidor de socket PHP. Lo intenté yo mismo en un proyecto en el que creamos un juego en el que utilizamos nuestros teléfonos móviles como controladores. Configuramos el juego así:

1. El teléfono móvil abre el navegador e ingresa la dirección IP del servidor.
2. El servidor creó una conexión de socket (a través de PHP) al juego.
3. Luego le dijo al juego (basado en XNA) que agregara un nuevo usuario, y agregó una nueva fila a la tabla de puntaje alto en la base de datos.
4. Cuando se hizo eso, devolvió un archivo HTML que funcionaba como el teclado.
5. El jugador presiona las teclas, que utilizan JavaScript para pasar comandos al servidor.

Durante las pruebas, teníamos entre 6 y 7 jugadores en pantalla controlando el tanque de cada uno, conduciéndolo intentando matar a los demás. No experimentamos ningún retraso en absoluto.

Es posible que estén utilizando RTMFP para configurar una conexión de igual a igual. Si las máquinas conectadas están en el mismo grupo de red, esta característica relativamente nueva de Flash Player permite una comunicación optimizada para el ancho de banda.

Más detalles se pueden encontrar aquí: http://www.adobe.com/devnet/flas