Dans mon programme le récepteur a une plus grande charge de travail, devrais-je faire l'expéditeur attendre le récepteur par des méthodes comme le niveau d'application ACK?tcp/ip communication émetteur récepteur problème de vitesse de traitement différent
0
A
Répondre
1
Vous ne devriez pas envoyer directement des messages TCP ACK - ceux-ci sont gérés à un niveau bas par le système d'exploitation. Je regarderais ce qui suit dans l'ordre de vraisemblance:
- Y a-t-il une optimisation facile sur le récepteur? Il est assez rare que vous puissiez vraiment remplir un tuyau réseau plus rapidement que le destinataire peut gérer les données. Assurez-vous que le récepteur a au moins deux threads: un thread d'E/S réseau et un thread de travail.
- Si le récepteur commence à paniquer, il peut envoyer un message d'accélération au serveur, ce qui fait refroidir le serveur jusqu'à ce que le récepteur le rattrape. C'est plus efficace que d'attendre un message d'accusé de réception après chaque message, mais cela nécessite que le récepteur sache quand il est environ pour tomber, ce qui peut être difficile.
- Alternativement, la chose la plus lente mais la plus fiable est d'avoir le récepteur acquitter tous les messages du serveur, un peu comme vous l'avez mentionné. Ce ne serait pas un ACK TCP, mais un message spécial dans le format de données que votre expéditeur/récepteur utilise pour comm.
+0
@JS Bang, par ACK, je veux dire le niveau d'application ACK, pas TCP ACK, reformulé. – Benny
Questions connexes
- 1. Problème concernant la communication par socket
- 2. Connexion unique du serveur TCPIP
- 3. Problèmes de vitesse de traitement du fichier texte Python
- 4. GDI + problème vitesse gif
- 5. Augmentation maximale de la vitesse de traitement via le parallélisme
- 6. problème fusion Régulateur de vitesse
- 7. Problème de saisie Webpart Communication
- 8. Problème de communication réseau Java
- 9. Microsoft Service Inter-communication Problème
- 10. Lecture d'anneaux dans un récepteur de diffusion
- 11. Mise en réseau TCPIP avec C#
- 12. Ruby expressions régulières - problème de vitesse
- 13. wordpress mu problème de vitesse d'image
- 14. XSLT: Utilisation d'un traitement différent dans le mode de traitement actuel
- 15. domaine croix problème de communication iFrames
- 16. Problème de communication client/serveur .NET TCP
- 17. Problème de mémoire d'écriture de traitement
- 18. problème de traitement de formulaire ASP.NET MVC
- 19. Comment envoyer/recevoir une chaîne nmea sur tcpip/udp
- 20. Comment modifier la vitesse de communication série Simulink xPC cible à la volée
- 21. Quel émetteur de jeton je peux utiliser dans Windows Azure?
- 22. Problème de traitement 3D sécurisé avec dotnetcharge
- 23. Problème d'entité de traitement Java XML?
- 24. Problème de traitement d'image C#/WPF
- 25. iOS - Problèmes de vitesse
- 26. VB.net 1.1 Création de port d'imprimante TCPIP avec l'API CreateProcessWithLogon
- 27. Android du récepteur à l'activité
- 28. Problème de vitesse de datareader dans vs.2008
- 29. Problème de tag de vitesse Struts2 (org.apache.velocity.exception.ParseErrorException: "#end" rencontré)
- 30. Définition de la classe de récepteur
Si le récepteur ne peut pas suivre, l'expéditeur bloque en écriture. Ce comportement n'est-il pas ce que vous voulez? – jdizzle
@jdizzle, c'est bon pour moi. – Benny