Ezpc - як самому зробити хаб на три комп’ютери
Як самому зробити хаб на три комп'ютери
теорія
Спочатку трохи загальної теоретичної інформації.
Мережева карта Ethernet з інтерфейсом "кручена пара" і швидкістю 100 або 10 Мбіт має стандартний восьмиконтактний роз'єм. З восьми зазвичай використовуються тільки чотири контакти: перший, другий, третій, шостий. З них парами є контакти 1, 2 і 3,6. Відрізнити пари дуже просто - вони складаються з кольорового дроту і білого проводу, пофарбованого в смужку відповідного кольору. Одна з пар передає дані від комп'ютера, інша приймає їх "з того боку".
Ми будемо виготовляти хаб, який працює в режимі half duplex (односторонній режим), так як full duplex (двосторонній режим) підтримують тільки свитчи, а не хаби, а виготовити свитч куди складніше. Особливо переживати не варто - при включенні мережева карта зв'яжеться з віддаленим пристроєм і визначить, в якому режимі можлива робота. Про тонкощі роботи карт в режимі half duplex ви можете прочитати в кінці статті в розділі "Post Scriptum".
Хаб повинен забезпечити поширення інформації на сусідні комп'ютери, але при цьому передана інформація не повинна потрапити на вхід своєї карти, інакше ця подія буде прийнято за колізію і передача тут же закінчиться. Таким чином, при передачі інформації не повинно виникати ефекту "луни" від власного сигналу. У найпростішому випадку (при з'єднанні двох комп'ютерів) ніякого хаба не потрібно - просто з'єднайте комп'ютери безпосередньо: 1-й і 2-й контакти - до контактів 3 і 6 сусіда, і навпаки. При цьому буде повний дуплекс, якщо карти його підтримують.
У більш складному випадку в мережу об'єднуються три і більше комп'ютерів. А як уникнути "луни" тут? Для початку розглянемо найпростішу схему - резисторний міст (резистори однакового опору утворюють квадрат - дивись рис. 1).
Якщо на протилежні вершини цього квадрата подати напругу, то різниця потенціалів на двох інших вершинах буде дорівнює нулю (вольтметр покаже "О"). Припустимо, тепер до протилежних вершин квадрата підключений вихід мережевої карти, до решти (теж протилежним) - вхід. На вході адаптера ніякого сигналу не буде, тобто мети досягнуто. Але в реальності сигнал там все-таки може з'явитися через розкиду опорів резисторів. Значить, чим на більшу кількість інтерфейсів робиться пасивний хаб, тим менше повинен бути розкид параметрів резисторів. Їх опір має бути таким, щоб при підключенні до будь-яких двох протилежних вершин виходило 100 Ом. Це хвильовий опір кручений пари. Якщо виміряний опір буде відрізнятися від 100 Ом, виникнуть відображення сигналу і мережа буде непрацездатна. Природно, дана конструкція приведена тільки для ілюстрації принципу роботи пасивного хаба.
Тепер розглянемо хаб на N комп'ютерів. Для загального випадку це така схема, яка з точки зору кожного з інтерфейсів (входу і виходу мережевої карти конкретної машини) являє собою збалансований резистивний міст. Сигнал від будь-якого комп'ютера, повністю ослабляючись для власного входу, повинен залишитися досить сильним на вході іншої машини. Найпростіший варіант - кільце з резисторів (міст з чотирьох резисторів - окремий випадок кільця). Кількість резисторів має дорівнювати N х 4, а опір кожного резистора повинно бути 100. N.
У разі трьох комп'ютерів це буде 12 резисторів опором по 33,3 Ом кожен. Кільце виконується таким чином, що кожна пара - "вхід" і "вихід" - підключається до вершин квадрата, утвореного рівною кількістю резисторів. Для трьох комп'ютерів це означає, що підключення кожного з них проводиться в точках, віддалених один від одного на три резистора. Решта машин підключаються зі зміщенням, як саме - зрозуміло зі схеми (дивись рис. 2).
На цьому теоретична частина закінчена, переходимо до практики.
Практика
Тепер пробуємо зібрати таку схему "в залізі". На першому ж етапі практично у всіх виникнуть проблеми - де знайти деталі для зборки?
Де взяти гнізда RJ-45? Можна використовувати настінні розетки під виту пару (можна випаять їх з несправних мережевих карт). Розетки потім можна прикрутити гвинтами на шматок фольгированні-ного склотекстоліти, який буде служити одночасно і верхньою кришкою коробки (відсіку) з резисторами, і друкованою платою (фольга, природно, буде з внутрішньої сторони коробки), в даній конструкції так і зроблено. Поверхня фольги заздалегідь розділимо на ізольовані одна від одної "квадратики", прорізаючи в провідному шарі канавки до підкладки. До цих квадратикам і будуть припаюватися резистори. Туди ж припаиваются дроти від контактів гнізд. Бічні стінки корпусу виготовляємо з кусків фольгованого склотекстоліти, пропаяв при складанні стики по всій довжині коробки. По кутах отриманого корпусу можна припаяти гайки М3 для гвинтів кріплення нижньої кришки деустройства, виготовленої самі здогадайтеся з чого.
Тепер найцікавіше запитання: а де можна знайти необхідну кількість резисторів, та ще з таким нестандартним опором? Можна, звичайно, спробувати купити "точні" резистори з допуском в 1%, але у багатьох такої можливості немає і не передбачається. Що робити.
Залишається одне - вирішувати цю проблему "народними засобами". Беремо велику купу (ніяк не менше 40-50 штук) резисторів опором 100 Ом, бажано одного типу і однієї потужності, і починаємо довгу і нудну роботу.
Для початку необхідно розсортувати резистори по величині опору, адже в купі напевно виявляться такі, "омность" яких буде не 100, а 101, або 102, або 99 Ом. Ось і розкладіть їх по купках згідно вимірюванного опору (бажано з точністю до 0,1 Ома). Вимірювання необхідно проводити за допомогою цифрового приладу, які зараз доступні і досить дешеві (в крайньому випадку, такий прилад можна на час позичити у знайомого). Головна умова - щоб показання цього приладу не починали змінюватися самі по собі в процесі роботи (такий глюк буває у багатьох китайських мультиметров). Після закінчення сортування і тривалого відпочинку з'єднуємо (споює разом) по три резистора паралельно, так, щоб в результаті вийшло 33,3 Ома (при паралельному з'єднанні результуючий опір буде якраз 100. 3 = 33,3 ома). А сортування потрібна для того, щоб спростити цей підбір - наприклад, можна з'єднати паралельно резистори з опорами 99, 101 і 100 Ом. Або 97, 101 і 102 Ом. Хоча, звичайно, є безліч інших варіантів. Принцип підбору, сподіваюся, зрозумілий? Різниця в опорах на 0,1 0м не критична, хоча дуже навіть бажано підбирати резистори якомога точніше. Вимірювання отриманого опору необхідно проводити тільки після охолодження спаяних разом резисторів. Цю хитру операцію повторюєте, поки врешті-решт не отримаєте 12 "прибудованих резисторів, готових до установки на плату. Можливий і такий варіант: вийшло, наприклад, шість резисторів опором 33,3 Ом і шість резисторів опором 33,4 0м. Це не страшно , просто підпоюють їх в кільце через один: 33.3 - 33,4 - 33,3 - 33,4. ну і так далі.
Як розташовані контакти на роз'ємах, показано на малюнку 3.
Провід від резисторів до гнізд - відрізки кручений пари невеликої довжини. Пропускаються ці "хвостики" крізь отвори в платі з резисторами, отвори просвердлені безпосередньо під розетками. Довжину проводів зробіть якомога менше і розміщуйте їх на деякому відстаней один від одного. Розетки кріпляться до корпусу (платі) гвинтами МОЗ - отвори для кріплення є в їх підставах. В даному випадку використані розетки, в яких провідники витої пари затискаються гвинтами. У розеток більш просунутою конструкції дроти затискаються в спеціальні "ножі".
Після закінчення складання корпус хаба зовні можете пофарбувати в улюблений колір. Користуйтеся!
Перевірка
Після висихання фарби настала пора перевірки працездатності свіжовиготовленого пристрою в реальних умовах - в будинкової мережі невеликої довжини (найдовша лінія від хаба до комп'ютера - близько 25 метрів з усіма вигинами, інші лінії не більше 10 метрів).
Мережеві карти інтегровані - Intel PRO / 1000 CT Desktop Connection в одному комп'ютері, і 3Com ЗС91О в іншому комп'ютері. Встромляємо дроти від мережевих карт в гнізда хаба, і оцінюємо результати праць - чи не занадто погано вийшло. Може бути викинути це все туди, де взяв, і розоритися на півсотні доларів?
Windows XP на одному з комп'ютерів показує, що мережа працює в режимі 100 Мбіт, full duplex. Лестить, напевно. -)
Post Scriptum
Сучасні мережеві карти вміють одночасно приймати і передавати дані - це і є режим full duplex (повний дуплекс). Тільки ось в даному випадку цей режим використовуватися не буде (його підтримують свитчи, але не хаби, а виготовити свитч на порядок складніше, та й не завжди це виправдано для з'єднання всього лише трьох комп'ютерів).
У нас буде односторонній режим (half duplex), при якому кожна карта може тільки або передавати, або приймати інформацію. Якщо раптом при передачі даних карта отримає сигнал на вхід (тобто інша карта вирішить в той же момент теж щось послати), виникне колізія. У цьому випадку передача зупиниться і відновиться через деякий випадковий проміжок часу. Оскільки з великою часткою ймовірності адаптери почнуть наступну спробу передачі в різний час, "запізнилася" карта буде знати про те, що передача йде від іншого адаптера, і буде приймати інформацію, відклавши підлягають передачі дані в буфер для наступної спроби. Які мінуси несе а собі цей режим, думаю, пояснювати не треба.