2つのサーバー間の直接イーサネットリンク


13

超低遅延が必要な2つのサーバー(データベース、ファイルなど)があるとします。2台のサーバーを10GbEで直接接続できるので、各サーバーには「メイン」ネットワークへの接続が1つ(実際には2つ)ありますが、2つ目のサーバーに直接接続するイーサネットケーブル付きのネットワークカード1つサーバー、スイッチまたはルーターなし、直接接続のみ

                         Internet/Datacenter
                                 |
                                 |
                                 |
                                 |
                                 |
                                 |
                                 |
                        --------------------
                        |                  |
            ------------|      Switch      |-----------
            |           |                  |          |
            |           --------------------          |
            |                                         |
            |                                         |
            |                                         |
            |                                         |
            |                                         |
            |                                         |
            |                                         |
  Network Card 1 (eth0)                     Network Card 1 (eth0)
            |                                         |
  --------------------                      --------------------
  |                  |                      |                  |
  |     Server 1     |                      |     Server 2     |
  |                  |                      |                  |
  --------------------                      --------------------
            |                                         |
  Network Card 2 (eth1)                     Network Card 2 (eth1)
            |                                         |
            |                                         |
            |               Direct 10GbE              |
            -------------------------------------------

私の最初の質問は、これも可能でしょうか?標準のファイル以外に、このネットワークを介して通信できるように構成された異常な/特別なサービスが必要でしょう/etc/sysconfig/network-scripts/か?両方ともeth1に静的IPを持っていますが、ルーティングなどはどのように機能しますか?私はネットワーキングの専門家ではないので、これはおそらくn00bっぽい質問でしょう

2番目の質問、ポイントはありますか?スイッチを介して標準のネットワーク接続を介して通信することや、サーバー内の通信のためだけに2番目の専用ネットワークを提供することよりも、これを行う利点はありますか(サーバーにアクセスするクライアントが標準ネットワークで帯域幅を使用するため) 。待ち時間を優先することを想定しました。

この方法にはいくつかの問題があることを知っています。たとえば、3番目のサーバーを追加するときに、すべてのサーバーに別のネットワークカードを割り当て、おそらく非常に複雑な複製の三角形を設定する必要がありますが、これは仮想的なものなので無視してください。

また、遅延が重要な問題であるため、イーサネットよりもファイバの方が優れています(速度は、数Gb /秒を実行できる限り重要ではありません)

これは私のバックグラウンドであるため、Linux POVからこの質問を言いましたが、どのサーバー/デバイスにも適用できます。


1
副次的な注意として、配信の保証を失うことを犠牲にしてレイテンシーを得るために、TCPではなくUDPを使用する必要があります。パケットのサイズに応じて、ジャンボフレームはパケット数を制限することでも役立ちます。
シャドック

@Shadok UDPは、データベースサーバー、ファイルサーバーなどには理想的ではありませんが、監視、ロギング、およびその他の重要ではないことにはUDPの方がはるかに優れたオプションです。このようなネットワーク設定は、保証された配信を必要とするものである可能性が高いと思いますが、メインネットワーク上のUDPパケットには多くの用途があります。
汚れ

さて、私は待ち時間があなたの第一の関心事であるという印象を受けていたので、TCPとは異なる方法でパケットの完全性を確認したり、配信を確認したりできる方法があると考えました。私がちょうど持っていた1つのアイデアは、各パケットでインクリメントされる単純なカウンターを実装し、その後、欠落しているものを再度要求するか、単にドロップすることですが、私は
脱線しています

@Shadok-データベースへのUDP接続をリグできた場合、予期しない動作と破損につながる可能性があります。さらに、基本的には、パケットをシーケンスし、欠落しているパケットを要求することにより、UDPをTCPに変換します。それがTCPの目的です。イーサネットを100gに太らせるか、ファイバー接続を使用することをお勧めします
グリフ

回答:


9

技術的にこれができない理由はありません。

状況下では、実際にはおそらく似たようなことをするでしょう。純粋にLinuxの観点から見ると、本当に簡単です。接続にIPアドレスを/ 30ビットマスクで指定し、2つのIPアドレスを指定するだけで、簡単なPoint-to-Pointリンクになります。

ネットワークを拡大したい場合は、10GEスイッチを取得してから、サーバー間のトラフィック用に別のVLANを使用できます。Force10シリーズのスイッチには、ラインレート10GEスイッチングを可能にし、膨大なバッファを備えた非常に光沢のあるギアがあります。


5

Linuxの観点からコメントすることはできませんが、自分の知識を使って、さらに質問をします。

低遅延に依存しているか、これらのサーバーの同期を維持する必要があるか?彼らは両方ともデータベースか何かを実行していますか?10GbEは、2台のサーバーのほとんどのニーズを満たし、それらを同期させます。あなたが見ているルートに行くのではなく、まもなく2の真ん中にあるまともなスイッチにお金を使うでしょう。

適切なスイッチを使用すると、これらのポートにタグを付けて、リアルタイムのトラフィックに優先順位を付けたり、トラフィックにQoSを設定したりできます。

私の考え。


それらに独自のスイッチ/「プライベートネットワーク」を与えることは、直接接続よりもはるかに優れたオプションになります。そのため、後でサーバーを追加する必要がある場合は、はるかに簡単です。また、トラフィックに優先順位を付けることは良いことです。実際にできるとは思いませんでしたが、スイッチの機能/メーカーに依存するのですか、それともかなり標準的なものですか?
にじみ

スイッチ上のQoSはベンダーに依存するものであり、一部はそれをサポートし、一部は非常に独自の方法でサポートし、一部はRFCに従ってサポートしますが、おそらくネットワーク上のすべてのデバイスでそれを持たなければなりませんまともな効果を参照してください。
トムオコナー

+1は、多くのスイッチが現在本質的にワイヤスピードで動作するためです。適切に構成されたネットワークは、すでに説明した無数の方法で有利であり、障害検出にも役立ちます。
ダン

5

私は実際に2台のラップトップ間でこれを実行しました。最新のLANアダプターのほとんどは、それらの間で自動ネゴシエーションを行うため、通常のLANケーブルを使用できます。

使用している他のサブネットと同じ範囲にない静的 IPアドレスを設定します -たとえば、システムが192.168.xxサブネット上にある場合、それらの間に10.0.0.xサブネットを使用します。それ以外の場合、それはちょうど動作するはずです


2

そのようなセットアップを使用する利点はありません。今日のスイッチは急速に軽量化されているため、スイッチによる目に見える遅延に直面することはありません。スケーラビリティもあなたにとって大きな問題になります。また、1つだけではなく2つの別個のネットワークを維持する必要があるため、ルーティングのセットアップにも問題があります。


2
私の状況での利点は、直接接続により、データベース接続でSSL暗号化を使用する必要がなくなったことです。これは、パスワードを盗聴できるセミプライベートスイッチではなく、プライベートワイヤを経由するためです。
グリフ

2
  1. サーバー1をサーバー2に接続するには、クロスオーバーケーブルが必要になると確信しています。
  2. レイテンシーは非常に低くなりますが、最新のスイッチを使用したLAN全体のレイテンシーは、ほぼゼロに近くなります。私は心からあなたが表示されます疑う任意の測定可能なパフォーマンスの向上を。

10
Gbと10Gbは自動MDIXを行うため、クロスオーバーは必要ありません。これは10/100のみです。
MDマーラ

その上でのあなたの権利、@ MarkM、私は実際に実際にそれを試したことはないと思います。
SBWorks

2

セキュリティ対パフォーマンス対お金。

  • バックチャネルトラフィックが多く、お金が少ない場合は、直接接続を使用します。これは毎日行われ、多くの現実世界の状況では、すでに過負荷のスイッチよりもパフォーマンスが向上する可能性があります。

  • バックチャネルトラフィックが低く、セキュリティが中または低の場合、NICを結合してインターネット全体のスループットを向上させます-各サーバーからインターネットへの2つの接続、レプリケーショントラフィックを「分離」するためのマルチホームNIC 、監査、パケットトレース診断の実行など)。

  • セキュリティが高く、十分なお金がある場合は、スイッチを使用します。簡単に拡張できます。問題を診断しやすくなります。

特定のシナリオでは、スイッチの購入は保証されません。VLANセグメンテーションを備えた既存のスイッチを利用することは理にかなっています。ただし、サーバーが共存していない場合、つまり物理的にアクセスできない場合を除き、スイッチに接続する理由はわかりません。パケットキャプチャ/デバッグがアクティブでない限り、2つのスイッチポートの無駄です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.