Ver Mensaje Individual
  #2  
Antiguo 26-08-2013
Avatar de Julián
Julián Julián is offline
Merodeador
 
Registrado: may 2003
Ubicación: en mi casa
Posts: 2.019
Reputación: 10
Julián Va por buen camino
Yo hice, por si te dá alguna idea, hace mucho mucho mucho tiempo, antes de que se inventara el messenger, y antes del p2p, claro, un programa que venia a resolver ese mismo problema: debía ser un cliente-servidor tcp, pero como las ip's de la época, de cuando andabamos con modems a 33.6, eran dínamicas, pues me inventé un protocolo que venía a funcionar, no recuerdo exactamente, pero era mas o menos así:

Se trataba de un solo programa que podía hacer de servidor o de cliente, o de ambos a la vez, claro.
El programa tenía una lista de url's del tipo: http://loquesea.com/servers.txt que se bajaba al inicio. Cada archivo servers.txt podía tener una lista de ip's en dónda cada línea tenia un formato, mas o menos, asi:
IP:PUERTO:ACTIVO:FECHA:CLIENTES: DESCRIPCION
IP era una IP o un nombre de host y PUERTO el puerto en dónde se suponía que podía haber un server al que conectarse.
ACTIVO es un 0 ó un 1, que indica si dicho server estaba abierto o cerrado en la fecha indicada en FECHA. CLIENTES era el número de clientes conectados a docho server.
Y no recuerdo si había algún parámetro mas. Es que ya hace tiempo, jeje.

Bien, pues cuando ejecutabas el programa tenias la opción de conectarte a cualquier server que estuviese abierto, y como podías saber (por la variable CLIENTES) en qué server "había mas gente", pues lo normal era conectar automáticamente al server con mas clientes.

Ah, normalmente, cada usuario podía elegir si quería hacer o no de server, y en caso afirmartivo necesitaba una url en dón de poder poner (vía ftp, por ejemplo) su archivo servers.txt con su línea corresponediente a su ip,puerto, etc, además de, opcionalmente, otras líneas pertenecientes a otros servers, por ejemplo de su confianza, o lo que fuera.

Lo normal era ejecutar el programa y encontrar un server al que conectarse, y cuando estabas conectado, también podia saberse cuales de los otros clientes podían hacer de server, y además, cada uno de ellos tenia una prioridad, que no recuerdo como se asignaba pero era algo muy sencillito, así que si el servidor actual decidía desconectarse pues los demás clientes se conectaban de inmediato al siguiente en la lista, según la prioridad de la que hablabamos.

Tambien podía alguien solicitar hacer de server, por ejemplo porque tuviese una buena conexión, o porque pensara estar mucho tiempo online.

Como veis era un protocolo muy sencillo, y supongo que bastante chapuzas, pero funcionaba, muy bien, por cierto. Lo que no se es si algo parecido tendría utilidad en estos tiempos.

Un saludo.
__________________
"la única iglesia que ilumina es la que arde"
Anonimo
Responder Con Cita