SATAを使用してコンピューターを接続できますか?


9

クロスオーバーイーサネットケーブルと同じように、SATAを使用して2台のコンピューターを接続できますか?

SATAには「ネットワーク」機能がなく、コントローラーに複数のポートがあっても、ドライブが互いに「認識」しないことを知っています。SATAでは、1つのデバイスがホスト(コンピューター)として機能し、他のデバイスは「クライアント」(ストレージドライブ)の一種。

しかし、それでも、1台のコンピューターを「クライアント」のように見せるために(ホストのSATAコントローラーが標準のハードドライブとしてそれを検出するように)カーネルモジュールを作って、疑似イーサネットリンクまたは非常に高速シリアルリンク(それを実行pppdしてネットワーキングを行う)?

注:私はこれが専門家ではない、まったく愚かな考えであることを知っています。好奇心から質問しているだけです。


興味深い。コントローラはそうすることができますか?
Kimmax

@Kimmaxわからないけど、たぶん...だから、この質問をした。

1
私の知る限り、これは行われていません。それが可能かどうかは言えませんが、そのような目標を達成するには莫大な労力とコードが必要になると言えます。SATAのホストクライアントは、ストレージではなくネットワーク用にセットアップされています。したがって、ネットワークドライバーを自分で作成するか、既存のドライバーを新しいインターフェイス用にラップする方法を見つけるか、従来のネットワークを放棄し、代わりにドライバーを作成してクライアントのストレージをミラーリングし、ホストがそれを認識できるようにする必要があります。3つすべての道には大きな落とし穴があります。でも面白いアイデアです。
HalosGhost 2014年

回答:


3

SATAの仕様を簡単に検討した結果、SATAはディスクデバイスと通信するだけでなく、ドライブエンクロージャーと通信することもできるため、当初は希望に満ちていました。

ただし、主にホスト/デバイストポロジであるため、SATAを使用して2台のコンピューターを接続することはできないようです。これは、ホストが特別な「host-to-device」コマンドを送信し、デバイスがさまざまな「device-to-host」コマンドを返信することを意味します。

パケットの交換に使用できる一般的な双方向の「データ」コマンドがありますが、これらのコマンドの前には、正しい「ホストからデバイスへの」要求と適切な「デバイスからホストへの」応答が必要だと思います。PCは「デバイスからホストへ」メッセージを送信できないと思います(ホストであるため)これは必要ですが、この点で間違っている可能性があります。PCがデバイスからホストへのコマンドを送信できる場合は、そうです。SA​​TAを介してホストからホストへのリンクを確立できます。

ただし、これが可能であっても、標準のSATAケーブルを使用すると、両方のPCが同じワイヤペアで送信し、両方が同じワイヤペアで受信することになるため、カスタムケーブルも必要です(だれも送信しないため、データを受信することはありません!)TXとRXの線を入れ替えるイーサネットクロスオーバーケーブルに相当するSATAをハックアップする必要があります。

この問題はUSBの問題と酷似していると思います。2台のコンピューターはどちらも裸のUSBケーブルで接続できません。どちらのコンピューターも、通信するデバイスがないホストであるためです。ただし、両方のホストからデータを受信して​​渡すUSBデバイスがあるため、各ホストのUSBコントローラーはデバイスと通信していると技術的に認識し、USBを介したホスト間通信を可能にします。

両方のホストコントローラーが接続するデバイスがあり、それぞれがデバイスと通信していると考えるSATAについても同じことができます。SATAデバイスをネットワークデバイスとして表示するには、カスタムドライバーが必要ですが、動作可能です。

ただし、SATAの最大ケーブル長は1メートルであるため、これは非常に短距離の接続にのみ役立ちます。したがって、中央に特別なSATAトランスレータデバイスがある場合、2つのSATAポートの間隔は2メートル未満にする必要があります(マザーボードまたは拡張カードからケースの外側までの距離を含む)。



1

私の知る限り、これは行われていません。それが可能かどうかは言えませんが、そのような目標を達成するには膨大な労力とコードが必要になると言えます。

SATAのホストクライアントセットアップはストレージ用であり、ネットワーク用ではありません。だから、あなたはどちらかが必要になるでしょう

  1. ネットワーキングドライバーを自分で書く
  2. 新しいインターフェイス用に既存のドライバーをラップする方法を理解する、または
  3. 従来のネットワークを放棄し、代わりにクライアントのストレージをミラーリングしてホストが認識できるようにするドライバーを作成します。

3つすべての道には大きな落とし穴がありますが、理論的には実行可能です。つまり、最終的には想像しているほど速くはないでしょう。でも面白いアイデアです。

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