MicrosoftのBITS(Background Intelligent Transfer Services)実装をLinuxシステムで使用できますか?
私はインターネットを介してリモートLinuxサーバーに大容量ファイルを転送するオプションを検討していますが、これは私の(制限された!)アップストリーム帯域幅のすべてを使用したくありません。
以前はWindowsシステムでBITSを正常に使用してきましたが、今回はLinuxサーバー間で転送する必要がありました。
理想的には、ディストリビューションに依存しないソリューションを望んでいますが、どちらのシステムもおそらくUbuntuベースのシステムを実行しています。
答え1
まず、簡単な方法はrsync
1つの--bwlimit
パラメータを持つことです。これは一定の割合ですが、これを使用して簡単に削減できます。
今、適応速度が欲しいなら、Linuxフロー制御フレームワーク、実際には非常に複雑です。私はいくつかの参考資料があることを知っています。
個人的に設定する必要がある場合は、次を使用します。tcng作業を簡素化します。例は次のとおりです。
dev office {
egress {
class ( <$ssh> )
if ip_tos_delay == 1 && tcp_sport == PORT_SSH ;
class ( <$kyon> )
if ip_dst == 172.16.1.62; // monitoring host
class ( <$fast> )
if ip_tos_delay == 1;
class ( <$default> )
if 1;
htb() {
class ( rate 1440kbps, ceil 1440kbps ) {
$ssh = class ( rate 720kbps, ceil 1440kbps ) { sfq; };
$kyon = class ( rate 360kbps, ceil 1440kbps ) { sfq; };
$fast = class ( rate 180kbps, ceil 1440kbps ) { sfq; };
$default = class ( rate 180kbps, ceil 1440kbps ) { sfq; };
}
}
}
}
この例では、オフィスインターフェイスを介して送信されるトラフィックは、ssh、kyon、fast、およびdefaultなど、さまざまなカテゴリに分けられます。リンク(使用時のT1)は1440kbpsに制限されます。これは、バッファリングがルータではなくLinuxシステムで発生するように実際のリンク速度よりわずかに低くなければなりません。 SSHには720kbps、kyon 360などが割り当てられていることがわかります。どちらも最高速度(最高速度)でバーストできます。競合がある場合には「rate」が比率で作用するため、sshには1/2、kyon 1/4などが与えられます。 「sfq」は、複数のSSHセッションをどのように処理するかを示します。 sfq はラウンドロビン形式です。