送信デーモン:UDPは受信/送信バッファを設定できません。

送信デーモン:UDPは受信/送信バッファを設定できません。

Debian 10 Busterでコンパイルしてインストールしたところtransmission{-daemon,-cli}、いくつかのマイナーで重要な問題が発生しました。

マイナーな問題の1つは、ログに従ってUDP受信バッファ/送信バッファを設定できなかった明らかなエラーです。

[2019-05-23 12:45:40.950] UDP Failed to set receive buffer: requested 4194304, got 425984 (tr-udp.c:84)
[2019-05-23 12:45:40.950] UDP Please add the line "net.core.rmem_max = 4194304" to /etc/sysctl.conf (tr-udp.c:89)
[2019-05-23 12:45:40.950] UDP Failed to set send buffer: requested 1048576, got 425984 (tr-udp.c:95)
[2019-05-23 12:45:40.950] UDP Please add the line "net.core.wmem_max = 1048576" to /etc/sysctl.conf (tr-udp.c:100)

顧客が私に最大のパフォーマンスを見せたいので、私のシステムでこれら2つを調整する方法が気になります。これが提案するのでしょうか? 4 on 1 MiBは私には何もないようですが、私はネットワーキングの専門家ではないので、この値をより高い数に調整できるかどうかを詳しく説明してください。


ハードウェア

ISPリンク速度:

30/25頃

接続設定:転送されたポートを持つパブリック静的IPv4。


完全性のために他のコンポーネントも言及します。ここでこの情報が重要かどうかはわかりません。

答え1

次のようなこの古い記事役に立ちました。まず、既知の解決策に言及します。

  1. このテキストファイルをルートとして開きます。このファイルは重要なシステムファイルの1つです。

    /etc/sysctl.conf
    

    別のオプションは、オーバーライドするパラメータを保持する新しい設定ファイルを作成することです。しかし、この質問自体は構成方法に関するものではないので、直接取り上げます。

  2. メモリが十分だったので、この2行を追加しました。たとえば、組み込みシステムを使用している場合は、この行を適用することをもう一度検討してください。受信バッファに16MiB、送信バッファに4MiBを設定しました。)、まだ実際の実行メモリ要件がわからない。

    net.core.rmem_max = 16777216
    net.core.wmem_max = 4194304
    
  3. 上記の行を追加することを決定した場合は、次のように設定を読み直すことができます。

    sysctl -p
    

適用するために再起動する必要はありません。


それではこのページを引用しましょう。

このメッセージは、何らかの理由でTransmissionがUDPソケットに対して4MBの受信バッファと1MBの転送バッファを望んでいることを伝えようとします。 µTP(μTorrent Transfer Protocol)のサポートは、単一のソケットを使用して実装されることがわかりました。

これら 2 つの変数を調整すると、µTP を使用してより高いスループットを達成することが容易になります。


複数のµTPソケットを実装するために単一のUDPソケットを使用しており、着信UDPパケットを常にタイムリーにサービスしないため、より大きな受信バッファを使用することが重要です。転送バッファはそれほど重要ではないかもしれませんが、とにかく追加しました。

答え2

答えられた解決策はうまくいきますが、システム次の行を作成する必要があります。

/etc/sysctl.d/<anyname>.conf

次に、rootとして次を実行します。

systemctl restart systemd-sysctl

関連情報