
私は通常、プロセスごとのネットワーク帯域幅を表示するためにNethogsを使用します。ただし、Nethogs は一部の NFS トラフィックを生成するプロセスの PID を表示できないため、?
次の PID を使用して単一行に集約されます。
なぜこれが起こるのですか? PIDあたりのNFS帯域幅を見るためにこれをバイパスする方法はありますか?
Ubuntu 12.04(クライアント)でNFSv3を使用しています。
答え1
NFSは名前が示すようにファイルシステムです。 NFSマウントディレクトリでファイルを開いたり、読み込んだり、見つけたり、書き込んだり閉じたりするユーザープロセスは、カーネルがNFSを他のファイルシステムのように見えるようにするため、それがNFSファイルシステムであるかどうかを知りません。
したがって、NFSマウントファイルを読み取るユーザープロセスはシステムコールをread(2)
生成し、最終的にいくつかのカーネルコードが実行されるようにします。すべてのNFSトラフィックは、ユーザーレベルのプロセスではなくLinux / Unixカーネル自体で発生します。したがって、「?」はPIDです。