Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WM11] Dialogue par socket - pertes d'informations

22 réponses
Avatar
Emmanuel Haefele
Bonjour,

Nous avons des terminaux mobiles qui dialoguent en Wifi via socket avec un
programme serveur. Cette pratique est éprouvée et fonctionne.

Chez l'un de nos clients dont nous ne sommes pas maître du réseau, nous
avons des pertes d'informations.

Le terminal envoi une demande au serveur, le serveur traite cette demande,
renvoi la réponse (nous le savons) mais le terminal ne reçoit pas cette
réponse. Le symptôme n'est pas systématique et ne se produit que dans 30%
des cas, un programme de test nous l'indique.

Le réseau wifi est bon, le symptôme se produit avec 3 terminaux
différents. Jusqu'à présent nous n'avons rien trouvé et avons vraiment
beaucoup de mal à détecter l'origine du problème.

Est-ce que l'un d'entre vous saurait quelle pourrait être la cause de ces
pertes aléatoires ?

En vous remerciant par avance pour votre aide.


Amicalement,

Emmanuel Haefelé.

10 réponses

1 2 3
Avatar
patrice
TCP ou UDP ?
si UDP la perte est un cas possible (faut pas envoyer en udp des paquets
indispensable)
si TCP la perte doit être liée normalement à une rupture de la connexion qui
est détectable par le serveur et le client. y a t'il rupture de la connexion
tcp ?

"Emmanuel Haefele" a écrit dans le message de
news:47cfaabb$0$894$
Bonjour,

Nous avons des terminaux mobiles qui dialoguent en Wifi via socket avec un
programme serveur. Cette pratique est éprouvée et fonctionne.

Chez l'un de nos clients dont nous ne sommes pas maître du réseau, nous
avons des pertes d'informations.

Le terminal envoi une demande au serveur, le serveur traite cette demande,
renvoi la réponse (nous le savons) mais le terminal ne reçoit pas cette
réponse. Le symptôme n'est pas systématique et ne se produit que dans 30%
des cas, un programme de test nous l'indique.

Le réseau wifi est bon, le symptôme se produit avec 3 terminaux
différents. Jusqu'à présent nous n'avons rien trouvé et avons vraiment
beaucoup de mal à détecter l'origine du problème.

Est-ce que l'un d'entre vous saurait quelle pourrait être la cause de ces
pertes aléatoires ?

En vous remerciant par avance pour votre aide.


Amicalement,

Emmanuel Haefelé.



Avatar
Emmanuel Haefele
"patrice" a écrit

Bonjour Patrice,

si TCP la perte doit être liée normalement à une rupture de la connexion
qui est détectable par le serveur et le client. y a t'il rupture de la
connexion tcp ?



C'est du TCP, à chaque demande de la part du terminal nous réalisons sur
celui-ci un socketconnect qui nous garanti qu'il n'y a pas de rupture de
connexion. Bizarre, non ?


Amicalement,

Emmanuel Haefelé.
Avatar
Pierre BOUSQUET
au moment de l'envoi serveur->client socketexiste() renvoit-il vrai ?


Emmanuel Haefele a couché sur son écran :
"patrice" a écrit

Bonjour Patrice,

si TCP la perte doit être liée normalement à une rupture de la connexion
qui est détectable par le serveur et le client. y a t'il rupture de la
connexion tcp ?



C'est du TCP, à chaque demande de la part du terminal nous réalisons sur
celui-ci un socketconnect qui nous garanti qu'il n'y a pas de rupture de
connexion. Bizarre, non ?


Amicalement,

Emmanuel Haefelé.



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Avatar
patrice
c'est quoi alors la séquence qui pose pb ?
est ce :
client ! serveur
---------------
connecte ! attente connecte
xxxxxxxx! connecté
xxxxxxxx! send
?? recoit rien ? ! close socket




"Emmanuel Haefele" a écrit dans le message de
news:47cfb5e6$0$839$
"patrice" a écrit

Bonjour Patrice,

> si TCP la perte doit être liée normalement à une rupture de la connexion
> qui est détectable par le serveur et le client. y a t'il rupture de la
> connexion tcp ?

C'est du TCP, à chaque demande de la part du terminal nous réalisons sur
celui-ci un socketconnect qui nous garanti qu'il n'y a pas de rupture de
connexion. Bizarre, non ?


Amicalement,

Emmanuel Haefelé.



Avatar
Emmanuel Haefele
"Pierre BOUSQUET" a écrit

Bonjour Pierre,

au moment de l'envoi serveur->client socketexiste() renvoit-il vrai ?



Nous ne testons pas SocketExiste au niveau serveur mais le programme
serveur récupère la demande du terminal via un socketLit, donc forcément
elle existe. Par contre côté client nous faisons un socketExiste avant de
nous mettre en attente de la réponse et là pas de problème.

A mon avis le socketExiste a peu d'intérêt côté serveur mais reste utile
coté client en cas de perte du réseau Wifi.


Amicalement,

Emmanuel Haefelé.
Avatar
Emmanuel Haefele
"patrice" a écrit:

c'est quoi alors la séquence qui pose pb ?
est ce :



Je ne suis pas certain de bien te comprendre.

Le serveur créé la socket

A chaque demande :

Le client se connecte
Le client envoi une demande
Le serveur reçoit la demande et la traite (c'est une certitude)
Le serveur renvoit la réponse
Le client ne reçoit pas la réponse dans 30% des cas environ ???

Un programme de test avec un lien wifi au plus faible testé chez nous en
local, montre que le terminal reçoit 100% des réponses. Chez notre client
avec le même programme c'est 30% !


Amicalement,

Emmanuel Haefelé.
Avatar
patrice
quand la réponse n'arrive pas, la socket est elle ouverte ?

"Emmanuel Haefele" a écrit dans le message de
news:47cfc26f$0$890$
"patrice" a écrit:

> c'est quoi alors la séquence qui pose pb ?
> est ce :

Je ne suis pas certain de bien te comprendre.

Le serveur créé la socket

A chaque demande :

Le client se connecte
Le client envoi une demande
Le serveur reçoit la demande et la traite (c'est une certitude)
Le serveur renvoit la réponse
Le client ne reçoit pas la réponse dans 30% des cas environ ???

Un programme de test avec un lien wifi au plus faible testé chez nous en
local, montre que le terminal reçoit 100% des réponses. Chez notre client
avec le même programme c'est 30% !


Amicalement,

Emmanuel Haefelé.



Avatar
Emmanuel Haefele
"patrice" a écrit:

quand la réponse n'arrive pas, la socket est elle ouverte ?



Un socketExiste est testé avant le stockLit sur le client, donc oui !

Entre temps on a un peu avancé dans nos tests. Le batiment où nous faisons
nos tests est relié par un pont aérien en Wifi au serveur central.

Nous avons installé le programme serveur sur un portable et courcircuité
ce pont en nous connectant directement sur le switch dans le batiment.

Dans ce cadre là les pertes de données n'apparaissent pas.

Ensuite nous avons simplement courcircuité le serveur en reliant le
portable derrière le pont aérien du côté serveur central. Là non plus pas
de perte de données !

Donc ça laisserait à penser que quelque chose sur le serveur, perturberait
notre connexion, oui mais alors quoi ?


Amicalement,

Emmanuel Haefelé.
Avatar
Pierre BOUSQUET
combien d'antennes wifi dans le batiment ?

Le 06/03/2008, Emmanuel Haefele a supposé :
"patrice" a écrit:

quand la réponse n'arrive pas, la socket est elle ouverte ?



Un socketExiste est testé avant le stockLit sur le client, donc oui !

Entre temps on a un peu avancé dans nos tests. Le batiment où nous faisons
nos tests est relié par un pont aérien en Wifi au serveur central.

Nous avons installé le programme serveur sur un portable et courcircuité
ce pont en nous connectant directement sur le switch dans le batiment.

Dans ce cadre là les pertes de données n'apparaissent pas.

Ensuite nous avons simplement courcircuité le serveur en reliant le
portable derrière le pont aérien du côté serveur central. Là non plus pas
de perte de données !

Donc ça laisserait à penser que quelque chose sur le serveur, perturberait
notre connexion, oui mais alors quoi ?


Amicalement,

Emmanuel Haefelé.



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Avatar
Emmanuel Haefele
"Pierre BOUSQUET" a écrit

combien d'antennes wifi dans le batiment ?



4


Amicalement,

Emmanuel Haefelé.
1 2 3