Article View: es.comp.os.linux.programacion
Article #17490Re: una vez empezado con sockets...
From: Ignacio Arenaza
Date: Tue, 21 Dec 1999 00:00
Date: Tue, 21 Dec 1999 00:00
51 lines
2780 bytes
2780 bytes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
>>>>> "Alex" == Alex Estevez <alex@interactivebureau.com> writes:
Alex> Pero ahora empiezan mis dudas. Antes de empezar a pelearme
Alex> con los semaforos y la memoria compartida, me gustaria saber
Alex> si hay alguna forma facil de hacer lo siguiente:
Alex> creas un server que espera con listen y hace los forks
Alex> pertinentes cuando un cliente se conecta.
Alex> supongamos ahora que hay dos clientes conectados... como me
Alex> lo monto para que se habra un socket entre ellos, sin tener
Alex> mas datos que los pids de los hijos del server cada uno con
Alex> un socket conectado al cliente? si puede hacerse con solo
El socket lo tiene que abrir uno de los clientes hacia el otro. Para
esto le hara falta la IP del otro cliente. Por tanto, basta con
guardar las IPs de los clientes atendidos por cada hijo. Entre los
clientes y el servidor tendras que definir un protocolo para pasarle
ese dato de alguna forma.
Cada hijo del servidor que atienda a un cliente tiene un socketpair
(para hacerlo mas facil que usar dos tuberias por hijo) que le une al
padre, y cuando un cliente pide conectarse con otro, el hijo le manda
al padre la peticion de obtencion de la IP asociada al otro cliente
(tendras que definir tambien como se hace esto). Luego tendras que
interrogar al resto de los hijos para ver quien esta unido a ese
cliente (nuevo "protocolo" a definir) y que este le devuelva la IP
asociada. Por ultimo, solo resta pasar este dato al hijo que la ha
solicitado para que se la pase al cliente.
Sencillo, �verdad? ;-))))
Saludos. I�aki.
- --
Linux Registered User #44369
Si este mensaje no esta firmado con PGP/GPG, entonces no es mio.
If this message is not PGP/GPG signed, then it's not mine.
Get PGP/GPG Keys at http://personales.jet.es/inaki.arenaza/pgpkey.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.0 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.4 and Gnu Privacy Guard
iD8DBQE4X+4xZXLnGT1HLgcRAqO0AJ9/0shN/twWQIqCXvUSDpTSZBsNkwCfWgER
7Sgs4wfUBzfzBLwr0rghGw4=
=DRm4
-----END PGP SIGNATURE-----
Technical Details
Message-ID:
<87iu1sro3x.fsf@eb2ebu.ampr.org>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<385E8910.48FBA1DF@interactivebureau.com>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,e05694dc7b82742 X-Google-Attributes: gidf86c8,public From: Ignacio Arenaza <inaki.arenaza@jet.es> Subject: Re: una vez empezado con sockets... Date: 1999/12/21 Message-ID: <87iu1sro3x.fsf@eb2ebu.ampr.org> X-Deja-AN: 563545987 Content-Transfer-Encoding: 8bit References: <385E8910.48FBA1DF@interactivebureau.com> Organization: Servidor NNTP de eb2ebu.ampr.org Content-Type: text/plain; charset=iso-8859-1 User-Agent: Gnus/5.070096 (Pterodactyl Gnus v0.96) Emacs/20.3 Mime-Version: 1.0 Newsgroups: es.comp.os.linux.programacion