SATA สามารถใช้เชื่อมต่อคอมพิวเตอร์ได้หรือไม่?


9

สามารถใช้ SATA เพื่อเชื่อมต่อคอมพิวเตอร์สองเครื่องเข้าด้วยกันเช่นเดียวกับสายเคเบิลไขว้อีเทอร์เน็ต

ฉันรู้ว่า SATA ไม่มีคุณสมบัติ "ระบบเครือข่าย" และแม้ว่าคอนโทรลเลอร์อาจมีหลายพอร์ต แต่ไดรฟ์ไม่ "เห็น" ซึ่งกันและกันและในอุปกรณ์ SATA หนึ่งทำหน้าที่เป็นโฮสต์ (คอมพิวเตอร์) และอุปกรณ์อื่น ๆ มีบางอย่าง ชนิดของ "ไคลเอนต์" (ไดรฟ์จัดเก็บข้อมูล)

แต่ก็ยังไม่มีใครพยายามสร้างเคอร์เนลโมดูลที่จะทำให้คอมพิวเตอร์เครื่องหนึ่งปรากฏเป็น "ไคลเอนต์" (เพื่อให้คอนโทรลเลอร์ SATA ของโฮสต์ตรวจพบว่าเป็นฮาร์ดไดรฟ์มาตรฐาน) จากนั้นตั้งค่าเช่นลิงค์หลอกอีเธอร์เน็ตหรือ ลิงค์อนุกรมความเร็วสูง (และจากนั้นทำงานpppdและทำเครือข่าย)

หมายเหตุ: ฉันรู้ว่านี่เป็นความคิดที่ไม่เป็นมืออาชีพและงี่เง่าทั้งหมดฉันแค่ขอจากความอยากรู้


Interessting คอนโทรลเลอร์สามารถทำเช่นนั้นได้หรือไม่?
Kimmax

@Kimmax ไม่แน่ใจฉันอาจจะพูดว่า ... นั่นเป็นเหตุผลที่ฉันถามคำถามนี้

1
เท่าที่ฉันรู้มันยังไม่เสร็จ ฉันไม่สามารถพูดได้ว่าเป็นไปได้หรือไม่ แต่ถ้าฉันสามารถพูดได้ว่าการบรรลุเป้าหมายดังกล่าวจะต้องใช้ความพยายามและรหัสจำนวนมหาศาล โฮสต์ไคลเอ็นต์ของ SATA ได้รับการตั้งค่าสำหรับการจัดเก็บข้อมูลเท่านั้นไม่ใช่เพื่อการเชื่อมต่อเครือข่าย ดังนั้นคุณจะต้องเขียนไดรเวอร์เครือข่ายด้วยตัวคุณเองหาวิธีห่อไดรเวอร์ที่มีอยู่แล้วสำหรับอินเตอร์เฟสใหม่หรือละทิ้งเครือข่ายดั้งเดิมและแทนที่จะเขียนไดรเวอร์เพื่อสะท้อนพื้นที่เก็บข้อมูลของไคลเอ็นต์เพื่อให้โฮสต์มองเห็นได้ ถนนทั้งสามมีข้อผิดพลาดที่สำคัญ มันเป็นความคิดที่สนุก
HalosGhost

คำตอบ:


3

เมื่อดูข้อมูลจำเพาะของ SATA สั้น ๆ ในตอนแรกฉันหวังว่า SATA ไม่เพียง แต่พูดคุยกับอุปกรณ์ดิสก์เท่านั้น แต่ยังสามารถพูดคุยกับกล่องหุ้มไดรฟ์ได้อีกด้วย

อย่างไรก็ตามดูเหมือนว่าเป็นไปไม่ได้ที่จะใช้ SATA เพื่อเชื่อมต่อคอมพิวเตอร์สองเครื่องเข้าด้วยกันส่วนใหญ่เป็นเพราะเป็นโทโพโลยีของโฮสต์ / อุปกรณ์ ซึ่งหมายความว่าโฮสต์ส่งคำสั่ง "host-to-device" พิเศษและอุปกรณ์ส่งคำสั่ง "device-to-host" ที่แตกต่างกันกลับมา

มีคำสั่ง "data" สองทิศทางทั่วไปซึ่งสามารถใช้สำหรับการแลกเปลี่ยนแพ็คเก็ตได้อย่างไรก็ตามฉันสงสัยว่าสิ่งเหล่านี้จะต้องนำหน้าด้วยคำขอ "host-to-device" ที่ถูกต้องและการตอบสนอง "อุปกรณ์ต่อโฮสต์" ที่ถูกต้อง ฉันเดาว่าพีซีไม่สามารถส่งข้อความ "อุปกรณ์ต่อโฮสต์" (เนื่องจากเป็นโฮสต์) ซึ่งเป็นสิ่งที่จำเป็นต้องใช้ แต่ฉันอาจผิดในจุดนี้ หากเป็นไปได้ที่พีซีจะส่งคำสั่งอุปกรณ์ไปยังโฮสต์จากนั้นใช่คุณสามารถสร้างลิงค์โฮสต์ไปยังโฮสต์ผ่าน SATA

อย่างไรก็ตามแม้ว่าคุณสามารถทำสิ่งนี้ได้คุณก็ไม่ต้องสงสัยว่าต้องใช้สายเคเบิลที่กำหนดเองเนื่องจากการใช้สายเคเบิล SATA มาตรฐานนั้นหมายความว่าพีซีทั้งสองกำลังส่งสัญญาณคู่สายเดียวกันและทั้งคู่ก็รับสายคู่เดียวกัน พวกเขาจะไม่ได้รับข้อมูลใด ๆ !) คุณจะต้องแฮ็ค SATA ที่เทียบเท่ากับสายเคเบิลไขว้อีเธอร์เน็ตซึ่งจะสลับเส้น TX และ RX

ฉันคิดว่าปัญหานี้สะท้อนถึง USB อย่างใกล้ชิด คุณไม่สามารถเชื่อมต่อคอมพิวเตอร์สองเครื่องเข้าด้วยกันด้วยสาย USB เปล่าเพราะทั้งคู่เป็นโฮสต์โดยไม่มีอุปกรณ์ที่จะคุย อย่างไรก็ตามมีอุปกรณ์ USB ที่รับข้อมูลจากโฮสต์ทั้งสองและส่งต่อไปพร้อมกันเพื่อให้คอนโทรลเลอร์ USB ของโฮสต์แต่ละคนคิดว่ากำลังพูดคุยกับอุปกรณ์

เป็นไปได้ที่จะทำเช่นเดียวกันกับ SATA ซึ่งคุณมีอุปกรณ์ที่ตัวควบคุมโฮสต์ทั้งสองเชื่อมต่อและแต่ละคนคิดว่าพวกเขากำลังคุยกับอุปกรณ์ คุณยังต้องมีไดรเวอร์ที่กำหนดเองเพื่อให้อุปกรณ์ SATA ปรากฏเป็นอุปกรณ์เครือข่าย แต่จะใช้งานได้

อย่างไรก็ตามสิ่งนี้จะเป็นประโยชน์สำหรับการเชื่อมต่อระยะสั้นมากเนื่องจาก SATA มีความยาวสายเคเบิลสูงสุดหนึ่งเมตร ดังนั้นด้วยอุปกรณ์นักแปล SATA พิเศษของคุณที่อยู่ตรงกลางพอร์ต SATA ทั้งสองของคุณจะต้องอยู่ห่างกันน้อยกว่าสองเมตร (รวมถึงระยะทางที่จะได้รับจากเมนบอร์ดหรือการ์ดเอ็กซ์แพนชันไปด้านนอกเคส)



1

เท่าที่ฉันรู้มันยังไม่เสร็จ ฉันไม่สามารถพูดได้ว่าเป็นไปได้หรือไม่ แต่ฉันสามารถพูดได้ว่าการบรรลุเป้าหมายดังกล่าวจะต้องใช้ความพยายามและรหัสจำนวนมหาศาล

การตั้งค่าโฮสต์ - ไคลเอนต์ของ SATA ใช้สำหรับการจัดเก็บเท่านั้นไม่ใช่สำหรับการเชื่อมต่อเครือข่าย ดังนั้นคุณจะต้อง

  1. เขียนไดรเวอร์เครือข่ายด้วยตัวคุณเอง
  2. หาวิธีห่อหุ้มไดรเวอร์ที่มีอยู่แล้วสำหรับอินเตอร์เฟสใหม่หรือ
  3. ละทิ้งเครือข่ายดั้งเดิมและแทนที่จะเขียนไดรเวอร์เพื่อมิเรอร์ที่เก็บข้อมูลของไคลเอ็นต์เพื่อให้โฮสต์สามารถมองเห็นได้

ลู่ทางทั้งสามมีข้อผิดพลาดที่สำคัญแม้ว่าฉันเดาว่าในทางทฤษฎีแล้วมันจะทำได้ - ผลลัพธ์สุดท้ายยังคงไม่เร็วเท่าที่คุณจินตนาการ มันเป็นความคิดที่สนุก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.