2010-08-21 4 views
0

Étant donné une application binaire s'exécutant sur PC Linux. Est-il possible de déterminer s'il désactive l'algorithme de Nagle?Est-il possible de dire si une application a désactivé l'algorithme de Nagle?

Une façon de voir est la sortie dans wireshark et en fonction des différences de temps. Pourriez-vous s'il vous plaît me dire un moyen fiable de le découvrir à partir de la sortie wireshark?

Existe-t-il un moyen plus direct? Puis-je suivre l'appel système qui définit l'option tcp_nodelay?

L'application cible peut être un serveur Web, un serveur d'applications, un programme d'écoute de base de données ou tout autre processus serveur.

Répondre

2

La méthode la plus directe consiste à suivre l'appel système setsockopt. En regardant de l'extérieur, vous pouvez seulement remarquer quand il désactive Nagle et se comporte mal (envoie beaucoup de petits fragments rapidement). Si cela désactive Nagle et se comporte bien, vous ne pouvez pas le remarquer de l'extérieur.

+1

Voir la réponse ici http://stackoverflow.com/questions/1618051/voir-les-options-socket-sur-les-disques-existent-par-autres-applications pour savoir comment tracer efficacement les appels setsockopt. – nos

+0

Je souhaitais qu'il y avait un moyen simple. probablement je vais jouer avec strace et si cela ne fonctionne pas, je vais essayer l'option expliquée dans le message ci-dessus. Merci –

Questions connexes