Connexion TCP JAVA
Fermé
ibma
Messages postés
103
Date d'inscription
jeudi 26 juillet 2007
Statut
Membre
Dernière intervention
17 juin 2010
-
9 août 2007 à 21:55
ibma Messages postés 103 Date d'inscription jeudi 26 juillet 2007 Statut Membre Dernière intervention 17 juin 2010 - 11 août 2007 à 02:19
ibma Messages postés 103 Date d'inscription jeudi 26 juillet 2007 Statut Membre Dernière intervention 17 juin 2010 - 11 août 2007 à 02:19
bonjour
je suis en train de programmer en utilisant le langage JAVA, trois applications inter connectées entre elles, en mode connecté, c'est à dire en utilisant la connexion TCP.
je voudrai savoir que si c'est normal lorsque une application (station émettrice ) envoie une information de la taille de 50 Kilo Octets, et que la durée de l'envoi est presque instantanée, mais la durée de réception de cette même information par une autre application (station réceptrice ), dure 2 secondes ou un peut plus??? sachant que j'utilise une seule machine (un seul ordinateur ) et par contre une seule carte réseau et une adresse LOUPBACK ( adresse de boucle ) pour tester tout cela.
merci de bien vouloir me répondre.
je suis en train de programmer en utilisant le langage JAVA, trois applications inter connectées entre elles, en mode connecté, c'est à dire en utilisant la connexion TCP.
je voudrai savoir que si c'est normal lorsque une application (station émettrice ) envoie une information de la taille de 50 Kilo Octets, et que la durée de l'envoi est presque instantanée, mais la durée de réception de cette même information par une autre application (station réceptrice ), dure 2 secondes ou un peut plus??? sachant que j'utilise une seule machine (un seul ordinateur ) et par contre une seule carte réseau et une adresse LOUPBACK ( adresse de boucle ) pour tester tout cela.
merci de bien vouloir me répondre.
A voir également:
- Connexion TCP JAVA
- Gmail connexion - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Tcp udp - Guide
- Tcp optimizer - Télécharger - Optimisation
7 réponses
Spearhead
Messages postés
355
Date d'inscription
lundi 23 juillet 2007
Statut
Membre
Dernière intervention
29 décembre 2007
116
10 août 2007 à 01:25
10 août 2007 à 01:25
Voici un exemple avec deux fichiers, qui s'appel a tort serveur et client mais tous les deux échanges des données a tour de role, l'un envoi la date et l'autre le mot "test" ... a lancer simulatnément dans deux instances différentes, ce sont mes fichiers de TP d'IUT donc faut etre indulgent sur le code lol je n'ai pas le temps d'y regarder en détails
===================================
serveur.java
===================================
package I6.TP3;
import java.io.BufferedReader;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.InetAddress;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.Date;
import java.io.PrintStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.BufferedWriter;
public class Serveur {
/** Creates a new instance of Reception */
public static void reception() {
int port = 40000;
try {
ServerSocket ecoute = new ServerSocket(port);
while(true){
Socket echange = ecoute.accept();
Date dat = new Date();
PrintStream stream = new PrintStream(echange.getOutputStream());
stream.println(dat.toString());
InputStreamReader stream2 = new InputStreamReader(echange.getInputStream());
BufferedReader buf2 = new BufferedReader(stream2);
System.out.println(buf2.readLine());
System.out.println(echange.getInetAddress().getHostAddress());
buf2.close();
}
} catch (SocketException ex) {
ex.printStackTrace();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
public static void main(String [] argv) {
reception();
}
}
======================================
client.java
======================================
package I6.TP3;
import java.io.IOException;
import java.net.Socket;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.BufferedWriter;
import java.io.*;
import java.io.PrintStream;
/**
*
* @author SpeaRHeaD
*/
public class Client {
public static void emission(){
int port = 40000;
InetAddress adr;
try {
adr = InetAddress.getByName("127.0.0.1");
Socket soket = new Socket(adr,port);
InputStreamReader stream = new InputStreamReader(soket.getInputStream());
BufferedReader buf2 = new BufferedReader(stream);
System.out.println(buf2.readLine());
PrintStream stream2 = new PrintStream(soket.getOutputStream());
stream2.println("test");
stream2.close();
soket.close();
} catch (UnknownHostException ex) {
ex.printStackTrace();
}
catch (SocketException ex) {
ex.printStackTrace();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
public static void main(String [] argv) {
emission();
}
}
===================================
serveur.java
===================================
package I6.TP3;
import java.io.BufferedReader;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.InetAddress;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.Date;
import java.io.PrintStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.BufferedWriter;
public class Serveur {
/** Creates a new instance of Reception */
public static void reception() {
int port = 40000;
try {
ServerSocket ecoute = new ServerSocket(port);
while(true){
Socket echange = ecoute.accept();
Date dat = new Date();
PrintStream stream = new PrintStream(echange.getOutputStream());
stream.println(dat.toString());
InputStreamReader stream2 = new InputStreamReader(echange.getInputStream());
BufferedReader buf2 = new BufferedReader(stream2);
System.out.println(buf2.readLine());
System.out.println(echange.getInetAddress().getHostAddress());
buf2.close();
}
} catch (SocketException ex) {
ex.printStackTrace();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
public static void main(String [] argv) {
reception();
}
}
======================================
client.java
======================================
package I6.TP3;
import java.io.IOException;
import java.net.Socket;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.BufferedWriter;
import java.io.*;
import java.io.PrintStream;
/**
*
* @author SpeaRHeaD
*/
public class Client {
public static void emission(){
int port = 40000;
InetAddress adr;
try {
adr = InetAddress.getByName("127.0.0.1");
Socket soket = new Socket(adr,port);
InputStreamReader stream = new InputStreamReader(soket.getInputStream());
BufferedReader buf2 = new BufferedReader(stream);
System.out.println(buf2.readLine());
PrintStream stream2 = new PrintStream(soket.getOutputStream());
stream2.println("test");
stream2.close();
soket.close();
} catch (UnknownHostException ex) {
ex.printStackTrace();
}
catch (SocketException ex) {
ex.printStackTrace();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
public static void main(String [] argv) {
emission();
}
}
Spearhead
Messages postés
355
Date d'inscription
lundi 23 juillet 2007
Statut
Membre
Dernière intervention
29 décembre 2007
116
9 août 2007 à 22:04
9 août 2007 à 22:04
Ce n'est pas normal, quelque chose cloche dans ton code, moi je n'ai jamais rencontré ce probleme !
ibma
Messages postés
103
Date d'inscription
jeudi 26 juillet 2007
Statut
Membre
Dernière intervention
17 juin 2010
20
10 août 2007 à 01:13
10 août 2007 à 01:13
bonjour
pouvez vous me donner un exemple écrit en java de deux stations, une émettrice et l'autre réceptrice de données en utilisant une connexion TCP????
merci
pouvez vous me donner un exemple écrit en java de deux stations, une émettrice et l'autre réceptrice de données en utilisant une connexion TCP????
merci
ibma
Messages postés
103
Date d'inscription
jeudi 26 juillet 2007
Statut
Membre
Dernière intervention
17 juin 2010
20
10 août 2007 à 02:10
10 août 2007 à 02:10
bonjour
merci de votre réponse et votre gentillesse de m'avoir donné ce code.
j'ai fait exactement la même chose mais en envoyant 50 Kilo Octets d'information. j'ai mis une boucle, à l'intérieur de cette boucle, j'ai mis un code qui consiste à envoyer une chaine de caractère de 255 octets, parce que la socket à une capacité de 255 octets. bein j'ai toujours le même problème.
si vous voulez, je peux vous donner le code des deux applications (émettrice et réceptrice).
merci.
merci de votre réponse et votre gentillesse de m'avoir donné ce code.
j'ai fait exactement la même chose mais en envoyant 50 Kilo Octets d'information. j'ai mis une boucle, à l'intérieur de cette boucle, j'ai mis un code qui consiste à envoyer une chaine de caractère de 255 octets, parce que la socket à une capacité de 255 octets. bein j'ai toujours le même problème.
si vous voulez, je peux vous donner le code des deux applications (émettrice et réceptrice).
merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ibma
Messages postés
103
Date d'inscription
jeudi 26 juillet 2007
Statut
Membre
Dernière intervention
17 juin 2010
20
11 août 2007 à 01:58
11 août 2007 à 01:58
bonjour
est qu'il aurait un problème de paramétrage de la carte réseau pour booster le débit?????????
merci
est qu'il aurait un problème de paramétrage de la carte réseau pour booster le débit?????????
merci
Tu te trompes le buffer de reception ou d'émission d'un socket par défaut de la pile TCP/IP a une taille 65535 octets ( représenté par les macros : SO_RCVBUF et SO_SNDBUF )
ibma
Messages postés
103
Date d'inscription
jeudi 26 juillet 2007
Statut
Membre
Dernière intervention
17 juin 2010
20
11 août 2007 à 02:19
11 août 2007 à 02:19
bonjour
vous pouvez me dire comment je vais faire pour savoir si la taille de la socket est vraiment 65535??
merci
vous pouvez me dire comment je vais faire pour savoir si la taille de la socket est vraiment 65535??
merci