Existe-t-il un moyen de détecter la vitesse du réseau et l'utilisation de la bande passante en C #? Même les pointeurs vers des composants open source sont les bienvenus.
Essayez d'utiliser les classes System.Net.NetworkInformation. En particulier, System.Net.NetworkInformation.IPv4InterfaceStatistics
devrait avoir des informations sur ce que vous recherchez.
Plus précisément, vous pouvez vérifier la propriété bytesReceived
, attendre un intervalle donné, puis vérifier à nouveau la propriété bytesReceived
pour avoir une idée du nombre d'octets/seconde que votre connexion traite. Pour obtenir un bon nombre, cependant, vous devriez essayer de télécharger un gros bloc d'informations à partir d'une source donnée, puis vérifier; de cette façon, vous devriez "maximiser" la connexion lorsque vous faites le test, ce qui devrait donner des chiffres plus utiles.
Vous devriez être en mesure de calculer tout ce dont vous avez besoin à partir de la classe IPGlobalStatistics .