SATA를 사용하여 컴퓨터를 연결할 수 있습니까?


9

크로스 오버 이더넷 케이블처럼 SATA를 사용하여 두 대의 컴퓨터를 함께 연결할 수 있습니까?

SATA에는 "네트워킹"기능이 없으며 컨트롤러에 여러 포트가있을 수 있지만 드라이브는 서로 "인식"하지 않으며 SATA의 한 장치는 호스트 (컴퓨터) 역할을하고 다른 장치는 일부 장치입니다 일종의 "클라이언트"(스토리지 드라이브).

그러나 여전히 누군가 하나의 컴퓨터가 "클라이언트"로 표시되도록 커널 모듈을 만들려고했지만 (호스트의 SATA 컨트롤러가 표준 하드 드라이브로 감지하도록) 가상 이더넷 링크 또는 고속 직렬 링크 (그리고 실행 pppd하고 네트워킹)?

참고 : 나는 이것이 전문적이지 않고 완전히 어리석은 아이디어라는 것을 알고 있습니다. 호기심을 요구합니다.


심문. 컨트롤러가 그렇게 할 수 있습니까?
Kimmax

@ Kimmax 잘 모르겠습니다.

1
내가 아는 한, 이것은 이루어지지 않았습니다. 가능 여부에 대해서는 말할 수 없지만 그러한 목표를 달성하려면 막대한 노력과 코드가 필요하다고 말할 수 있습니다. SATA의 호스트 클라이언트는 네트워킹이 아닌 스토리지 용으로 만 설정됩니다. 따라서 네트워킹 드라이버를 직접 작성하거나 기존의 새 인터페이스를 위해 기존 드라이버를 래핑하는 방법을 찾거나 기존 네트워킹을 포기하고 대신 클라이언트 스토리지를 미러링하여 호스트가 볼 수 있도록 드라이버를 작성해야합니다. 세 가지 길에는 모두 큰 함정이 있습니다. 그래도 재미있는 생각입니다.
HalosGhost

답변:


3

SATA 사양을 간단히 살펴보면 SATA가 디스크 장치와 통신 할뿐만 아니라 드라이브 인클로저와도 통신 할 수 있기를 바랍니다.

그러나 주로 호스트 / 장치 토폴로지이기 때문에 SATA를 사용하여 두 컴퓨터를 함께 연결할 수없는 것 같습니다. 이것은 호스트가 특별한 "호스트 대 장치"명령을 전송하고 장치가 다른 "장치 대 호스트"명령을 다시 전송한다는 것을 의미합니다.

패킷 교환에 사용될 수있는 일반적인 양방향 "데이터"명령이 있지만 올바른 "호스트 대 장치"요청과 적절한 "장치 대 호스트"응답이 선행되어야한다고 생각합니다. PC가 "장치-호스트"메시지 (호스트이므로)가이 메시지를 보낼 수 없다고 생각합니다. 그러나이 시점에서는 틀릴 수 있습니다. PC가 장치-호스트 명령을 보낼 수 있다면, 예, SATA를 통해 호스트-호스트 링크를 설정할 수 있습니다.

그러나 이렇게 할 수 있더라도 표준 SATA 케이블을 사용하면 두 PC가 모두 동일한 와이어 페어를 통해 전송하고 둘 다 동일한 와이어 페어를 통해 전송한다는 것을 의미하므로 사용자 정의 케이블이 필요합니다. TX와 RX 회선을 교환하는 이더넷 크로스 오버 케이블에 해당하는 SATA를 해킹해야합니다.

이 문제는 USB의 문제와 매우 유사하다고 생각합니다. 두 대의 컴퓨터는 베어 USB 케이블을 사용하여 연결할 수 없습니다. 두 컴퓨터는 모두 대화 할 장치가없는 호스트이기 때문입니다. 그러나 두 호스트 모두에서 데이터를 수신하고 전달하는 USB 장치가 있으므로 각 호스트의 USB 컨트롤러는 장치 (기술적으로는 장치)와 통신하고 있다고 생각하여 USB를 통한 호스트 간 통신을 허용합니다.

SATA에 대해서도 동일한 작업을 수행 할 수 있습니다. 여기서 두 호스트 컨트롤러 모두에 연결하는 장치가 있고 각각 장치와 통신한다고 생각합니다. SATA 장치를 네트워크 장치로 표시하려면 사용자 지정 드라이버가 여전히 필요하지만 작동 가능합니다.

그러나 SATA의 최대 케이블 길이는 1 미터이므로 매우 짧은 범위의 연결에만 유용합니다. 따라서 특수 SATA 변환기 장치가 중간에있는 경우 두 개의 SATA 포트는 2 미터 미만이어야합니다 (마더 보드 또는 확장 카드에서 케이스 외부까지의 거리 포함).



1

내가 아는 한, 이것은 이루어지지 않았습니다. 가능 여부에 대해서는 말할 수 없지만 그러한 목표를 달성하려면 막대한 노력과 코드가 필요하다고 말할 수 있습니다.

SATA의 호스트-클라이언트 설정은 네트워킹 용이 아닌 스토리지 전용입니다. 따라서, 당신은

  1. 네트워킹 드라이버를 직접 작성하십시오
  2. 새로운 인터페이스를 위해 기존 드라이버를 래핑하는 방법을 찾거나
  3. 기존의 네트워킹을 포기하고 대신 호스트가 볼 수 있도록 클라이언트의 스토리지를 미러링하는 드라이버를 작성하십시오.

이론 상으로는이 방법이 가능할 것이라고 생각하지만 세 가지 방법 모두 주요한 함정이 있습니다. 그래도 재미있는 생각입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.