Mini chat client-serveur (udp) avec transfert de fcihier (tcp)

Soyez le premier à donner votre avis sur cette source.

Vue 16 700 fois - Téléchargée 1 935 fois

Description

Bonjour a vous,
Je veux realiser un chat client-serveur avec transfert de fichier. J'ai plusieurs questions

1) Si le serveur n'envoi pas de reponse a la reception du paquet client sa bug.
2)je l'ai teste avec un pote sur le reseau internet connection ok! mais probleme les paquets que recoit le serveur sont bizarre
mauvais pseudo et pas de texte help me?.

Pour la terminaison client et serveur c'est pas au point ca je me debroullerais. Mais je voudrais des avis sur mon programme et px etre des solutions.
@+ et merci

ps la source est sur la boucle locale.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
249
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
9 août 2008

UDP -> protocole non sécurisé, parfait pour du video stream, ou voix sur ip (car inutile de Renvoyer un paquet)

TCP -> protocoles sécurisé, pour des applis (comme un chat...) où il est préferable de renvoyer si il n'est pas arriver à destination

Comme j'ai lue plus haut, (j'ai pas regardé le code), la taille maximum d'un paquet (ethernet) est de 1500 octets (un paquet Ip 65536 octets). Et donc si un de tes paquets est > 1500, il sera fragementé. les paquets contiennent deja des bits pour dire si c'est le dernier paquets ou pas.
Messages postés
4
Date d'inscription
samedi 20 mai 2006
Statut
Membre
Dernière intervention
28 mai 2008

je voudrais avoir des critiques ainsi que des pistes d'ameliorations!!
avis au programmeur
Messages postés
1491
Date d'inscription
dimanche 19 novembre 2000
Statut
Modérateur
Dernière intervention
7 juillet 2014

Pendant que j'y repense UDP c'Est pas la meilleure politique car tu n'as aucune garantie que ton packet arrivera à destination ni que si tu en envoie plusieurs ils arriveront dans l'ordre à moins de créer un protocole de communication compliqué, ce qui reviendrais en définitive a faire du TCP.

En faîte l'avantage de UDP c'est qu'on peut faire du broadcasting lorsque l'on est en LAN, ce qui permet par exemple de transférer un fichier a 20 ordinateurs sans envoyer 20 fois le même fichier à chacune des personnes.
Messages postés
1491
Date d'inscription
dimanche 19 novembre 2000
Statut
Modérateur
Dernière intervention
7 juillet 2014

Ue structure c'est possible mais je ne te le conseil pas car tu devra envoyer des packets à tailles fixes. Place plutot simplement le caractère changement de ligne comme fin et sa devrait bien aller pour le traitement. http://www.cppfrance.com/codes/SERVEUR-MULTITHREAD-SOUS-LINUX-WINDOWS-MYSQL-VCPLUSPLUS-DEVCPLUSPLUS_40044.aspx

Dans mon code il y a une fonction assez simple a comprendre qui s'occupe de faire ça. Aussi concernant les structures tu risques d'avoir des problèmes avec les machines qui traitent en big endian/little endian (la dessus je dis peut-être une connerie, si quelqu'un veut confirmer/infirmer).
Messages postés
4
Date d'inscription
samedi 20 mai 2006
Statut
Membre
Dernière intervention
28 mai 2008

Je sais pas si tu as regarde mon programme mais je passe mon message sous forme d'une structure.Penses tu que je dois revoir totalement mon appli? Pour detecter la fin dans une structure ca va etre cho?Pour le transfert ce que tu dis est vraiment pas bete.
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.