2010-07-26 4 views
1

Nous avons une exigence d'application où nous recevrons des messages d'environ 5-10 clients à un débit de 500 Ko/s et de faire une logique interne puis de distribuer les messages reçus entre 30-35 autres réseaux entités.Suggestions pour augmenter le débit du niveau tcp

Quelles sont toutes les optimisations de niveau tcp ou de niveau de thread suggérées?

Répondre

0

~ 4 Mbits/sec (8 x 500 Ko/s) par connexion TCP est bien dans la capacité du code bien écrit sans optimisations spéciales. Cela suppose, bien sûr, que la fréquence d'horloge de votre machine cible est mesurée en GHz et n'est pas faible en RAM. Lorsque vous atteignez la fourchette de 60-80 Mbits/s par connexion TCP, vous commencez à rencontrer des goulots d'étranglement qui peuvent nécessiter un profilage et des contre-mesures. Donc, pour répondre à votre question, à moins que vous ne voyiez des problèmes, aucune optimisation TCP ou thread n'est suggérée.

1

Parfois, les programmeurs peuvent "se tirer dans le pied". Un exemple tente d'augmenter la taille du tampon socket de l'application utilisateur Linux avec setsockopt/SO_RCVBUF. Sur les distributions Linux récentes, cela désactive le réglage automatique de la fenêtre de réception, ce qui conduit à des performances moins bonnes que ce qui aurait été vu si nous n'avions pas appuyé sur le déclencheur.

Questions connexes