3
私のコードでは、tcp接続の帯域幅を制限したいと考えています。 This質問にはいくつかの手がかりがありますが、正確には私が望むものではありません。私は同様のアプローチを使用して、標準lib(net/tcpパッケージ)のsrcコードをハックしようとしましたが、失敗しました。 私の主な考えは、何とかsyscallから内部バッファへのデータをゆっくりと書いて、OSにtcpパケットをドロップさせることです。ゴランのtcpダウンロード速度を制限する
ローカルTCPバッファからゆっくりと読み込んだとしても、カーネルは一度に '/ proc/sys/net/ipv4/tcp_rmem'(3番目の数字は最大バッファサイズです)までフェッチすることができます。長期間接続する場合は、時間の経過と共に平均化することができます(バッファーがバーストで満たされ、ゆっくり消費され、バッファーの再充填など)。実際に帯域幅を制限するには、GoではなくOSレイヤーで行う必要があります。 https://unix.stackexchange.com/a/28203/40168を参照してください。 –