les sockets: informations...

les sockets: informations... - Programmation

Marsh Posté le 03-09-2001 à 11:00:09    

Je voudrais avoir quelques précisions sur les sockets...
Je sais que gràce à elles, on est capable de créer un pont entre deux ordinateurs... Je sais qu'il y a deux modes pour les sockets: Le mode connecté , et le mode non connecté... Jusque là, je n'ai pas trop de problème...
Je crois savoir que pour pouvoir utiliser les sockets, il faut que le serveur soit prêt à recevoir la demande de connection d'un client... Une fois que la socket est créee, comment çà se passe?? Est ce que les informations peuvent aller dans les deux sens?? Ex: j'ai un fichier que je veux transférer sur le serveur... En ouvrant une socket, je peux transférer le fichier jusqu'au serveur sans prob... Mais peut on par la même socket, télécharger un fichier du serveur sur notre propre poste??
Voilà la question...
Merci d'avance...

Reply

Marsh Posté le 03-09-2001 à 11:00:09   

Reply

Marsh Posté le 03-09-2001 à 11:06:26    

tu peut tout a fait envoyé et recevoire des données par la meme socket , ca marche dans les deux sens ( mais po en meme temps il me semble ) tant que le serveur ou le client na pas fermer ca socket.  
 
note : je te repond seulement pour les sockets en mode connecté, je n'est travailé que dessus

Reply

Marsh Posté le 03-09-2001 à 11:09:46    

_naoua a écrit a écrit :

Je voudrais avoir quelques précisions sur les sockets...
Je sais que gràce à elles, on est capable de créer un pont entre deux ordinateurs... Je sais qu'il y a deux modes pour les sockets: Le mode connecté , et le mode non connecté... Jusque là, je n'ai pas trop de problème...
Je crois savoir que pour pouvoir utiliser les sockets, il faut que le serveur soit prêt à recevoir la demande de connection d'un client... Une fois que la socket est créee, comment çà se passe?? Est ce que les informations peuvent aller dans les deux sens?? Ex: j'ai un fichier que je veux transférer sur le serveur... En ouvrant une socket, je peux transférer le fichier jusqu'au serveur sans prob... Mais peut on par la même socket, télécharger un fichier du serveur sur notre propre poste??
Voilà la question...
Merci d'avance...  




 
oula! tu parles de socket de fichier, de telechargement... c un peu confus.
 
Les socket c un mecanisme de base par lequel tu vas etablir une conection entre 2 couple IP/port (2 PCs pour simplifier...) et tu vas y ecrire des octets.
Apres ça depend de quoi tu parles comme implementation de socket... Java, C?
 
En Java tu peux serialiser plein de chose tres facilement sur la socket.
 
Apres, si c du transfert de fichier, bases toi plutot sur FTP ou TFTP...
 
tu veux transferer quoi?

Reply

Marsh Posté le 03-09-2001 à 11:34:52    

Non,mais c'est juste à titre d'information... Je sais que ce que tu transmets, ce sont des paquets d'octets.. J'ai déjà conclus mon histoire de tranfert de fichiers en php, avec l'upload... Mais je voulais aussi voir avec cette méthode sans l'appliquer...
En fait, j'avais déjà utiliser les sockets sous des stations sun... Mais là c'est une autre vision que celle des stations sun...  
Mon transfert de fichier est en php... donc il faut que tu joues avec le navigateur... Sachant que tous tes scripts sont sur le serveur, il faut pouvoir créer ce pont entre le serveur et ton pc... C'est à dire qu'avant que tu te connectes, ton ordi n'a aucun moyen de se connecter de cette façon au serveur... Mais par le biais du navigateur, tu chopes l'adresse ip du client (toi), et c'est à partir de là que tout commence...
C'est comme çà que je vois la chose..  
1: tu chopes l'adresse ip, et tu utilises le même port...
2: à partir de là, il doit être possible créer cette socket...
Ce que je me demande, est ce qu'à partir du moment où t'as l'adresse du client, tu peux créer la socket?? C'est à dire, gérer la demande de création, l'accord du serveur, la "communication" entre les deux machines, et la fermeture de la socket, sur 1 seul script...  
Ce qui est différent par rapport aux stations suns pour lesquelles j'avais un script sur le client, un script sur le "serveur" (poste récepteur).
 
Encore une fois, c'est juste à titre d'information... C'est plus un sujet de discussion qu'une question à proprement parler...

Reply

Marsh Posté le 03-09-2001 à 11:42:16    

_naoua a écrit a écrit :

Non,mais c'est juste à titre d'information... Je sais que ce que tu transmets, ce sont des paquets d'octets.. J'ai déjà conclus mon histoire de tranfert de fichiers en php, avec l'upload... Mais je voulais aussi voir avec cette méthode sans l'appliquer...
En fait, j'avais déjà utiliser les sockets sous des stations sun... Mais là c'est une autre vision que celle des stations sun...  
Mon transfert de fichier est en php... donc il faut que tu joues avec le navigateur... Sachant que tous tes scripts sont sur le serveur, il faut pouvoir créer ce pont entre le serveur et ton pc... C'est à dire qu'avant que tu te connectes, ton ordi n'a aucun moyen de se connecter de cette façon au serveur... Mais par le biais du navigateur, tu chopes l'adresse ip du client (toi), et c'est à partir de là que tout commence...
C'est comme çà que je vois la chose..  
1: tu chopes l'adresse ip, et tu utilises le même port...
2: à partir de là, il doit être possible créer cette socket...
Ce que je me demande, est ce qu'à partir du moment où t'as l'adresse du client, tu peux créer la socket?? C'est à dire, gérer la demande de création, l'accord du serveur, la "communication" entre les deux machines, et la fermeture de la socket, sur 1 seul script...  
Ce qui est différent par rapport aux stations suns pour lesquelles j'avais un script sur le client, un script sur le "serveur" (poste récepteur).
 
Encore une fois, c'est juste à titre d'information... C'est plus un sujet de discussion qu'une question à proprement parler...  




 
Ce que je sais , c que les restrictions de securité du navigateur entrent en ligne de compte, ainsi que celles di firewall du serveur d'ou ta page 'vient'.
 
Je sais pas si tu peux le faire en PHP, mais en JAVA (applet en l'occurrence) tu peux te connecter sur le serveur d'ou ta page a été telechargé (si le firewall le permet).
Bien sur, il faut qu'il y ai un 'serveur' qui te reponde de l'autre côté!
 
Le scenario ideal (sans erreurs!) est le suivant:
 
1- demande de connection sur (ip,port)
2- connection ok, obtention d'une input et d'une output stream
3- echange (lectures, ecritures)
4- fermeture.

Reply

Marsh Posté le 03-09-2001 à 11:54:26    

therier a écrit a écrit :

 
 
Ce que je sais , c que les restrictions de securité du navigateur entrent en ligne de compte, ainsi que celles di firewall du serveur d'ou ta page 'vient'.
 
Je sais pas si tu peux le faire en PHP, mais en JAVA (applet en l'occurrence) tu peux te connecter sur le serveur d'ou ta page a été telechargé (si le firewall le permet).
Bien sur, il faut qu'il y ai un 'serveur' qui te reponde de l'autre côté!
 
Le scenario ideal (sans erreurs!) est le suivant:
 
1- demande de connection sur (ip,port)
2- connection ok, obtention d'une input et d'une output stream
3- echange (lectures, ecritures)
4- fermeture.  




 
Vu que je suis dans un intranet,là, la question du fire wall ne se pose pas, mais c'est vrai que je n'y avais pas penser lorsque tu demandes depuis l'extérieur...
Il faudra que j'essaie... C'est vrai que çà pourrait être un énorme trou de sécurité, s'il y avait moyen de poser un script qui te permetterait de visiter le serveur... Encore que tu ne pourrais pas aller bien loin gràce à la gestion des utilisateurs, mais tu peux toujours y déposer des petites merdes...  
Officiellement, le firewall empêche à un externe de se connecter, mais de cette manière, c'est à tester... S'il y en a qui savent ce que çà donne... Qu'ils ne se gènent pas...

Reply

Marsh Posté le 03-09-2001 à 11:55:52    

_naoua a écrit a écrit :

 
 
Vu que je suis dans un intranet,là, la question du fire wall ne se pose pas, mais c'est vrai que je n'y avais pas penser lorsque tu demandes depuis l'extérieur...
Il faudra que j'essaie... C'est vrai que çà pourrait être un énorme trou de sécurité, s'il y avait moyen de poser un script qui te permetterait de visiter le serveur... Encore que tu ne pourrais pas aller bien loin gràce à la gestion des utilisateurs, mais tu peux toujours y déposer des petites merdes...  
Officiellement, le firewall empêche à un externe de se connecter, mais de cette manière, c'est à tester... S'il y en a qui savent ce que çà donne... Qu'ils ne se gènent pas...  




 
Un firewall te permet de fermer certains ports, d'en filtrer d'autres, quoiqu'il en soit, le navigateur aussi à une sécurité qui est assez penible des fois...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed