J'utilise la classe TcpListener en C# pour ouvrir de nouvelles connexions tcp. Je vois des problèmes de performances et je veux voir si cela est dû à la surcharge du backlog tcp. Y a-t-il un moyen de vérifier la taille actuelle de l'arriéré pour mon processus?Comment surveillez-vous la taille du backlog de TcpListener?
4
A
Répondre
0
Vous pouvez utiliser un utilitaire comme Wireshark (graphique, mais pas scriptable à partir de C#, AFAIK). Wireshare utilise une bibliothèque appelée WinPcap, qui effectue la surveillance réelle des flux TCP sur l'ordinateur. Le décodage des en-têtes HTTP devra être fait dans votre application (c'est ce que wireshark/tcpdump/windump devrait être capable de faire). Vous devrez utiliser PInvoke pour appeler la DLL WinPcap. Vous pouvez trouver des wrappers de bibliothèque en effectuant une recherche Web pour "WinPcap PInvoke".
Ce son question très semblable à ce qui suit:
Is there any way in .NET to programmatically listen to HTTP traffic?
En outre, Capturing HTTP requests peut aider
Questions connexes
- 1. Comment visualisez-vous votre backlog de sprint?
- 2. TFS Liaison d'éléments de backlog
- 3. Comment fermer de force un TcpListener
- 4. Valeur maximum du backlog pour le port Windows
- 5. Objets passant C# TCPListener
- 6. Comportement étrange: TcpListener
- 7. Comment gérer mieux les clients avec TCPListener?
- 8. multithreading en utilisant tcplistener
- 9. Taille de l'élément en fonction de la taille du QListView
- 10. SocketException empêcher l'utilisation de C# TcpListener dans Windows
- 11. Un service WCF peut-il remplacer la fonctionnalité de TCPListener?
- 12. Comment obtenir la taille du contenu WebView
- 13. Android: Comment changer la taille du RadioButton
- 14. Comment limiter la taille du tas?
- 15. comment choisir la taille du tas jvm?
- 16. Comment optimiser la taille du fichier PDF?
- 17. Comment limiter la taille du téléchargement?
- 18. Comment trouver la taille du fichier
- 19. Comment régler la taille du terminal?
- 20. Taille de la taille initiale du portail de collaboration Sharepoint
- 21. Comment extraire la taille du PDF? (Dimensions, pas la taille du fichier)
- 22. Comment trouver la taille de la mémoire virtuelle et la taille du cache d'un système Linux?
- 23. Yahoo.widget.Editor - Comment configurer la taille de la police du texte
- 24. Obtenir la taille du dossier
- 25. Comment faire de la taille de l'IFRAME la taille du conteneur?
- 26. png taille téléchargée différente de la taille du serveur?
- 27. Définir la taille du curseur de défilement?
- 28. Correction de la taille du panneau Windows
- 29. différence de taille entre la taille du dossier du Finder et du gestionnaire de fichiers Carbon
- 30. comment contraindre le nombre de clients qu'un TcpListener peut accepter?
S'il vous plaît préciser quel type de problèmes de performances que vous voyez. Fréquemment, la limite de backlog est spécifiée lors de l'appel système 'listen', puis ignorée par le noyau. :-) Un grand retard ne devrait pas affecter vos performances. Un backlog court avec beaucoup de connexions entrantes étant ignoré ralentirait la vitesse de connexion apparente une fois que le backlog s'efface et que le client attend pour retransmettre le SYN initial. Pour répondre à votre question explicite, je ne connais aucun moyen de vérifier directement la taille de la file d'attente de backlog. –
avez-vous trouvé une réponse .... intéressée! comme je semble courir dans les limites – Seabizkit