Windows 10にアップグレードすると、ファイルをコピーするときにこの素敵なグラフが表示されます。
単一の大きなファイルをコピーすると、速度は常にこの合理的に一貫した波形になります。何が原因ですか?
接続は
My PC <- cable -> gigabit switch <- cable -> Netgear ReadyNAS
ファイルはSMBを介してコピーされています。このグラフは、1分程度のコピーを示しています。
ここには問題はありません。物事の仕組みを理解したいだけです。
Windows 10にアップグレードすると、ファイルをコピーするときにこの素敵なグラフが表示されます。
単一の大きなファイルをコピーすると、速度は常にこの合理的に一貫した波形になります。何が原因ですか?
接続は
My PC <- cable -> gigabit switch <- cable -> Netgear ReadyNAS
ファイルはSMBを介してコピーされています。このグラフは、1分程度のコピーを示しています。
ここには問題はありません。物事の仕組みを理解したいだけです。
回答:
短い答え:書き込みキャッシュ
TL; DR:最初に、単一の大きなファイルをコピーするときのオーバーヘッドは、多くの小さなファイルと比較してはるかに少ないです。つまり、PCとNASは、ファイルの検索、ファイルテーブルおよびファイルシステムのメタデータの更新に多くの時間を「浪費」していません。これは、スループットが大幅に向上することも意味し、セットアップの帯域幅のボトルネックの一部が明らかになる可能性があります。
帯域幅グラフの山と谷はかなり規則的な間隔で発生しているようで、単一の大きなファイル(最大帯域幅、最小オーバーヘッド)をコピーしているという事実を考えると、バッファリング/キャッシュの効果が見られると思います。
おそらく、NASにデータをディスクに書き込むよりも速い速度でデータを送信しているようです。書き込みキャッシュ/バッファのおかげで、それはより速いレート(グラフのピーク)で受信できますが、ディスクにコミットせずにデータを受信し続けることはできません。
最終的に、バッファーはいっぱいになり、ディスクに書き込む必要があります。一方、NASはデータを格納する場所がないため、以前ほど高速にデータを受信できません(バッファがいっぱいで、ディスクが低速です)。これは、グラフの谷を取得する場所です。
Windowsはスループットグラフを平滑化しているようです。より正確なグラフ(パフォーマンスモニターなど)を使用すると、間隔と転送バイトを分析することで、実際に書き込みバッファーサイズを推定できます。
ピークと谷が完全に均一な間隔で発生しない理由は、おそらくファイルをコピーしている間、PC、NAS、またはその両方が「何か他のこと」をしているためです。
さらなる調査をせずに正式に回答することは困難です。時間スケールとプロトコルで質問を更新していただきありがとうございます。
通常のTCP「ホタテ」ができます。TCPは、パケット損失が発生するまで可能な限り高速になります。その後、少し後退し、再びランプアップします。したがって、「頭を天井にぶつけて」います。これは、輻輳を悪化させることなく、利用可能な帯域幅を最大化する方法です。私は通常TCPTraceグラフでTCPホタテ貝を見るが、これはこのグラフとは少し異なる。この種のグラフでは、もう少し鋸歯状に見えると思いますが、このグラフではある程度の平滑化が行われている可能性があります。そして今、私はそれについて考えると、TCP帆立貝はこのグラフが示すように見えるよりもはるかに小さなタイムスケールになります。
また、リモートファイルシステムプロトコル(SMB)が一度に1つのチャンクでファイルを読み取り、1つのチャンクの読み取りが完了し、次のチャンクが要求されている場合もあります。
Microsoftはこの機能をWindows 8のプログレスバーに導入したと思います。
左から右のショーの割合で進行&アップダウン運動ショーMB /秒の転送速度を。
転送速度は、メディア(BUSまたはネットワーク)の速度、ファイルの数とサイズ、ファイルシステムとリソースの可用性などによって決まります。
また、ファイル転送中に、多くのメタデータの読み取り/書き込みが行われます。
このメタデータの読み取り/書き込みのオーバーヘッドが削減され、他のリソースが同じレートで使用されているため、合理的に一貫した波が見られます。時々の低下は、パケット損失、次のチャンク読み取り、リソースポーリングなどのイベントである可能性があります。
さらに明確にするために、ここでさらに読みます