2つのイーサネットカードを使用して、LAN上の2つのLinuxオペレーティングシステム間の転送速度を向上させることはできますか?

2つのイーサネットカードを使用して、LAN上の2つのLinuxオペレーティングシステム間の転送速度を向上させることはできますか?

私は現在、1000 Mb / sイーサネットポート(mb単位でインストール)を介してルーター/スイッチに接続されているLinuxを使用する2台のコンピュータを持っています。

これにより、最大120 MB / sの速度で2つのホスト間でデータを転送できます。

この速度を上げる必要があるため、両方のマザーボードの両方のPCIeスロットに2.5Gbイーサネットカード2枚を取り付け(新しいイーサネットカードの合計4本)、ケーブル2本で直接接続して(ルーター/スイッチを介さずに)両方を作成できます。ありますか?カードは理論的速度が5Gbの1つの論理ネットワークインタフェースと見なされますか?

どうすればいいですか?

また、2つのRJ45ポートを備えたシングルイーサネットカード(PCIx)も見ました。これら2つのポートを同時に最高速度で使用できますか?

答え1

はい、可能です。

「リンクバインディングドライバ」をインストールする必要があります。 2つ以上のリンクを介して送信されるパケットのバランスをとって同期するドライバ。これはほとんどのディストリビューションではデフォルト設定の一部ではありませんが、リポジトリで使用できます。たとえば、Ubuntuシリーズの場合、ここで役立つガイダンスを入手できます。https://help.ubuntu.com/community/UbuntuBonding

Googleで「リンク集計」または「リンクの組み合わせ」を検索することもできます。これらの接続速度と持続可能性の方法はサーバー側でよく使用されますが、それを説明する用語はまだありません。

答え2

この速度を上げる必要があるため、2 MBの2つのPCIeスロットに2.5 GBの2つのイーサネットカードを取り付け(合計4つの新しいイーサネットカード)、2つのケーブルで直接接続して(ルータ/スイッチを介して)作成できますか?どちらのカードも理論的に5GBの速度を持つ1つの論理ネットワークインターフェイスと見なされますか?

はい、他の回答で説明したように、これは可能でなければなりません。

つまり、2つのシステム間のポイントツーポイントリンクの非常に具体的なケースあなたはこれを行うことができ、あなたが望むものを(ほぼ)達成することができます。両方のノードは同じように設定する必要があり、両方ともボンディングモード0(balance-rr)を使用する必要があります。これは、2つのシステム間のポイントツーポイントリンクで真のデュアルスループットを達成する唯一の方法です。 Linuxボンディングドライバプログラム(他のすべてのモード)均等にまたはまったくバランスを取らないでください。

ただし、ボンディングドライバのために余分なオーバーヘッドがあるため(ただし、近いはずです)、5GbEリンクとまったく同じリンクは表示されません。

ただし、これは両端に同じボンディング構成を持つ2つのシステム間のポイントツーポイントリンクでのみ機能します。他の場合にはボンディングモード6(balance-alb)が必要かもしれませんが、スイッチは2つのリンク間の個々の接続のバランスをとるように慎重に設計する必要があります(IOW、各接続は最大1つのリンクパスしか使用できませんが、接続の約半分だけが対応する帯域幅を超えて競合する。

それでも10GbEアダプターのペアを購入することをお勧めします。少し高価なケーブルが必要ですが、コストパフォーマンスは2.5GbE 4本または5GbEリンク2本より優れています。一般的に実装されている2.5GbEと5GbEは、伝送速度が遅い10GbEに過ぎないからです。内部構成は同じです。)このアプローチには明らかな利点があります。計画した設定と比較してパフォーマンスが大幅に向上します。ただ仕事だ(優れたLinuxサポートを備えたカードを購入する場合)追加の構成は必要ありません。

また、2つのrj45ポートを備えた単一のイーサネットカード(PCIx)を見ました。これら2つのポートを同時に最高速度で使用できますか?

この質問に対する答えは「はい」です。両方のポートを同時に使用すると、常に機能します。全体の帯域幅を使用できない場合があります(通常、広告された帯域幅の遅延時間のメリットはまだ得られますが)。

その理由はこの答えに比べて複雑すぎますが、PCI-eリンクネゴシエーションのいくつかの珍しい点と、マザーボードメーカーが決定するかなり一般的で疑わしい設計の選択に関連しています。

答え3

Synologyは、複数のネットワークカードではなく、単一のマルチ[クワッド]ポートネットワークカードを使用して、特にあなたが言及したことを行うことができます。例えばhttps://www.synology.com/en-us/products/RS3618xs#specs

https://kb.synology.com/en-ca/DSM/help/DSM/AdminCenter/connection_network_linkaggr?version=7

残念ながら、私がSynologyで行った設定は、グラフィカルDSMインターフェースを介して行われました。私はそれが彼らのDebian風味のLinuxとしてどのように解釈されるのかわかりません。しかし、あなたの質問によると可能で、しばらく実行されてきました。

バインディングのガイドラインは次のとおりです。

ネットワーク結合は、より高いスループットまたは冗長性を備えた論理インタフェースを提供するために、ネットワークインタフェースを結合または集約する方法です。

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/configuring-network-bonding_configuring-and-managing-networking

複数のポートがある1つのNICなのか、それぞれがポートがある複数のNICなのかは関係ありません。各ポートはインターフェイス名(eth0、eth1、eth2... eth-n)で表されます。あなたの組合レベル。

答え4

はい。多くのLinuxディストリビューションでデフォルトで有効になっているmptcpプロトコルを使用してこれを行うことができます。デフォルトのtcpの代わりにmptcpを使用するように接続を構成するには、ipテーブルを使用する必要があります。ここで指示を見つけることができます。https://github.com/multipath-tcp/mptcp

関連情報