現在のインターネット帯域幅を取得する必要があるWindowsデスクトップアプリケーションに取り組んでいます。 ZIPファイルを複数回続けてダウンロードしていますが、結果はSpeed Testと一致しません。 ACTIVEネットワークカードで受信したバイトをキャプチャしていますが、順次ダウンロードでは予期しない結果が得られます。私たちは、異なるファイルを複数回パラレルにダウンロードしようと試みましたが、失敗しました。C#.Net帯域幅計算VS Speedtest.net速度
異なるファイルを並行してダウンロードした場合にのみ成功し、Speed Testを使って同時にテストが行われました。
今ここに私のいくつかの質問があります:
は- はTCP HOPS間の帯域幅は、私たちの帯域幅に影響を与えていますか?
- TCP HOPS間のトラフィックは、私たちの帯域幅に影響しますか?
- HTTP/TCPダウンロードとC#.NETを使用して帯域幅を効果的に消費する方法はありますか?
- ISPはTCPソケット接続ごとに帯域幅を抑制しますか?
ISPはhttp://www.speedtest.netに帯域幅を提供していますか?あなたがギガビットイーサネットに1台のコンピュータを持っている場合は、インターネット「スピード」は、2つのホスト間の唯一の速度は、ありますようなものはありません
for (int downloadCount = 0; downloadCount < iterations; downloadCount++) { try { string downloadUrl = GetUniqueDownloadUrl(); bool isValidUrl = Uri.IsWellFormedUriString(downloadUrl, UriKind.Absolute); if (true != isValidUrl) { return result; } // Download file and register total time to download file. Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); byte[] fileContent = webclient.DownloadData(new Uri(downloadUrl, UriKind.Absolute)); stopwatch.Stop(); double downloadTime = stopwatch.ElapsedMilliseconds/1000; // Milliseconds to Seconds // Convert bytes to Mbits. fileSizeInMbits = fileContent.Length/125000; // bytes to Megabits double speed = fileSizeInMbits/downloadTime; // speed in Mbps // Store speeds for average calculation. speeds.Add(speed); } catch (Exception e) { result.Error = e; break; } } } // Calculate average bandwidth for total successful downloads. double totalAvgSpeed = speeds.Average(); result.FileSizeInMB = fileSizeInMbits/8; result.Speed = Math.Round(totalAvgSpeed, 2, MidpointRounding.AwayFromZero); return result; }
ここにいくつかの質問があります: 1)あなたの方法とスピードテストの違いは何ですか 2)ファイルをダウンロードして速度を計算するコードはどこですか? –
@PawełŁukasik帯域幅を計算するコードスニペットを追加しました。あなたの考えを共有してください。 –