Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: коммутация Ethernet-линка внешним устройством
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Fast Ethernet/Gigabit Ethernet/FibreChannel
gerber
Как наиболее простым способом можно программно коммутировать на физическом уровне Ethernet-соединение (достаточно 100 Мбит/c) ?
Объясню более подробно. Есть 2 входящих кабеля UTP, которые соединены с какими-то разными сетями. Также есть третий кабель UTP, который соединён с сетевой картой компьютера. Необходимо физическим образом коммутировать сетевую карту компьютера то с одной, то с другой сетью, в зависимости от внешней управляющей команды (ну скажем по RS-232).
Очевидным образом напрашиваются реле, которые переключают провода соединения. Можно, кстати, и так, а будет ли работать с реле ? А может есть какие-то не столь архаичные (как реле) способы коммутации, скажем, аналоговые ключи ?
Делал похожую штуку для USB, есть простейшие аналоговые ключи для коммутации USB 2.0, а вто есть ли такие ключи для Ethernet ? А может, просто можно взять аналоговые ключи от USB 2.0 и использовать для коммутации Ethernet, будет ли это работать ?
zltigo
Два и более PHY на одном MAC прямо предназначены для решения таких "проблем". Для "компьютера" ставится банальный свич и физическая коммутация в случае разных подсетей просто не нужна. Если, вдруг, подсети одинаковы, то управляемые свичи как раз и таким занимаются.
gerber
Спасибо за ответ, это мне понятно, но по условиям задачи нужно именно физическое переключение одного компьютерного порта RJ-45 в две разные физические сети Ethernet. Про разные подсети IP речи не идёт, разделение должно быть на уровне Ethernet.
vadimp61
Оптореле Вам в помощь, сопротивление канала от 35 Ом и менее.
Myron
Цитата(gerber @ Jul 8 2012, 06:08) *
Спасибо за ответ, это мне понятно, но по условиям задачи нужно именно физическое переключение одного компьютерного порта RJ-45 в две разные физические сети Ethernet. Про разные подсети IP речи не идёт, разделение должно быть на уровне Ethernet.

Использовал 7 лет назад 5-и канальный Ethernet switch (см прикрепленный файл). Позднее перешел на два и более PHY на одном MAC. Возможно, у Marwell есть свичи на 2-3 канала.
Victor®
Есть точно аналоговый ключи...
Сам пользовал, парт намбер не скажу - не на работе.
Вроде как Тексас.

P.S.
Что-то из этих
http://focus.ti.com/paramsearch/docs/param...aramCriteria=no
gerber
О, спасибо за инфу, особенно Victor® и Myron.
Ещё бы узнать, в каком из популярных свичей применяется предложенный 88E6060, чтобы выковырять его оттуда для пробы laughing.gif
Myron
Цитата(gerber @ Jul 11 2012, 04:13) *
О, спасибо за инфу, особенно Victor® и Myron.
Ещё бы узнать, в каком из популярных свичей применяется предложенный 88E6060, чтобы выковырять его оттуда для пробы laughing.gif

Похоже ни в каком. Это все-таки продукт для серьезных индустриальных приложений, да и не дешев (~$8). И обвязки требует - 3 разных напряжения, 5 отдельных трансов по одному на каждый канал (я использовал счетверенные трансы). Преимущество этих ключей - не нужно никакого софта, коммутация автоматическая по подключении Ethernet-а к тому или иному каналу переключателя. Сейчас, все же, чаще используются МАС.
Посмотрите Marwell и Broadcom, может найдете и попроще на пару каналов. Указанный мною можно использовать и частично на 2-3 канала.
gerber
Цитата(Myron @ Jul 11 2012, 18:23) *
Похоже ни в каком.
Нашёл любопытную ссылку, может ещё кому-то окажется полезным: Какие чипсеты использует TP-LINK Оказывается, указанный Вами чип Marvell 88E6060 очень даже популярен, в частности, у TP-Linka.
Цитата(Myron @ Jul 11 2012, 18:23) *
Сейчас, все же, чаще используются МАС.
Не могли бы Вы вкратце пояснить суть этой фразы ? Что имеется в виду ?
vadimp61
Цитата(gerber @ Jul 12 2012, 13:44) *
Нашёл любопытную ссылку, может ещё кому-то окажется полезным: Какие чипсеты использует TP-LINK Оказывается, указанный Вами чип Marvell 88E6060 очень даже популярен, в частности, у TP-Linka.
Не могли бы Вы вкратце пояснить суть этой фразы ? Что имеется в виду ?

Видимо то что можно сделать так.
Берем три PFY to MAC, и MII шины трех чипов включаем через ту-же ALTERA. На МII третьего PFY подключаем MII шину либо с первого либо со второго PFY обычными мультиплексорами 2х1, надо 8 штук для шин данных на частоте 25Мгц. Такты можно не коммутировать.
DmitryM
Цитата(vadimp61 @ Jul 12 2012, 14:09) *
Видимо то что можно сделать так.
Берем три PFY to MAC, и MII шины трех чипов включаем через ту-же ALTERA. На МII третьего PFY подключаем MII шину либо с первого либо со второго PFY обычными мультиплексорами 2х1, надо 8 штук для шин данных на частоте 25Мгц. Такты можно не коммутировать.

Что мешает делать коммутацию той же ALTERA? При каждой перекоммутации придется заново инициализацию PHY делать.
Rst7
Самый надежный способ коммутации в Вашем случае - банальное реле с двумя группами на переключение.

Аналоговые ключи - это все так, баловство для работы на столе, из-за того, что на подводящих кабелях возможны сильные синфазные наводки, например, промчастоты.

Все остальные решения - дороже, и по питанию будут жрать больше.
Mahagam
берём любой дешёвый свитч. ищем у чипа ноги MDIO и MDC. на них вешаем любой контроллер который сумеем зашить и подключить его к компу. через эти ноги можно на свиче произвольно включать/выключать любые порты. соответственно если взять 8-ми портовик, то получим переключение на 7 внешних сетей.

собственно, если в компе есть полноценный RS232, то можно через преобразователь уровней вообще эти ноги повесить на управляющие ножки RS232 и рулить свичом сразу с компа. хоть изврат, зато будет работать
Myron
Цитата(gerber @ Jul 12 2012, 04:44) *
Нашёл любопытную ссылку, может ещё кому-то окажется полезным: Какие чипсеты использует TP-LINK Оказывается, указанный Вами чип Marvell 88E6060 очень даже популярен, в частности, у TP-Linka.
Не могли бы Вы вкратце пояснить суть этой фразы ? Что имеется в виду ?

Вкратце, я использую: OMAP137+LAN89303i+требует софта. Это достаточно сложный путь.

Цитата(Mahagam @ Jul 12 2012, 08:12) *
берём любой дешёвый свитч...

Еще дешевле. В этом случае берем любой дешевый тумблер.
Mahagam
QUOTE (Myron @ Jul 12 2012, 17:26) *
Еще дешевле. В этом случае берем любой дешевый тумблер.


читаем первый пост. там требуется программное переключение. дайте ссылку на дешёвый программно-управляемый тумблер.


vadimp61
Цитата(Mahagam @ Jul 13 2012, 12:28) *
читаем первый пост. там требуется программное переключение. дайте ссылку на дешёвый программно-управляемый тумблер.

http://www.clare.com/home/pdfs.nsf/www/LCC...file/LCC120.pdf
Надо 4-ре реле, а светодиодами включенными последовательно и управляйте программно.
gerber
Спасибо за интересное обсуждение вопроса. Суммируя, получается 3 пути решения задачи:
а) реле (механическое, опто-, или аналоговый переключатель). Преимущество - простота. Недостатки - не совсем ясно, как сделать при этом индикацию наличия линка светодиодами, отсутствие гибкости (настроек портов). Также не совсем очевидна при этом signal integrity.
б) микросхема Ethernet-свича, управляемая по MDIO. Пока мне кажется наиболее рациональным решением по соотношению трудоёмкости/качества реализации.
в) коммутация микросхем PHY на уровне MII. n x PHY + FPGA + контроллер всё равно нужен для настроек PHY и внешнего управления. "Путь джедая", но результат, если он будет достигнут, должен оказаться наиболее интересным.

Есть над чем подумать.
Mahagam
вопрос по третьему варианту - у вас с одной стороны линк на 10 Мбит, с другой - на сотку. чо будет? как обходить? городить буфера в плисине? прикручивать внешнюю память? не слишком ли много геморроя для задачи которая решается тумблером без мозгов )))
действительно, "путь джедая" ))))))
gerber
Цитата(Mahagam @ Jul 13 2012, 16:07) *
вопрос по третьему варианту - у вас с одной стороны линк на 10 Мбит, с другой - на сотку. чо будет? как обходить? городить буфера в плисине? прикручивать внешнюю память? не слишком ли много геморроя для задачи которая решается тумблером без мозгов )))
действительно, "путь джедая" ))))))

Будет потеря пакетов при интенсивном обмене. Это нормальное явление и должно разруливаться протоколами верхнего уровня. Никакими буферами такая проблема не решается в принципе - любой буфер рано или поздно переполнится, если заполнять его быстрее, чем опустошать.
vadimp61
Цитата(gerber @ Jul 13 2012, 17:09) *
Будет потеря пакетов при интенсивном обмене. Это нормальное явление и должно разруливаться протоколами верхнего уровня. Никакими буферами такая проблема не решается в принципе - любой буфер рано или поздно переполнится, если заполнять его быстрее, чем опустошать.

Главное чтобы ваше устройство которое будет подключено к двум линкам было 100 мбитное, тады все-равно какая скорость на линке.
А про буфер + мульон никакой глубины не хватит!
iosifk
Цитата(gerber @ Jul 13 2012, 15:30) *
в) коммутация микросхем PHY на уровне MII. n x PHY + FPGA + контроллер всё равно нужен для настроек PHY и внешнего управления. "Путь джедая", но результат, если он будет достигнут, должен оказаться наиболее интересным.

У микрела есть двухпортовые контроллеры с выходом на PCI - KS8842. По моему это Ваш вариант. Получается двухпортовая сетевая карта с возможностями свитча с порта на порт без участия компьютера... У меня есть статьи о них...
Удачи!
Mahagam
QUOTE (gerber @ Jul 13 2012, 16:09) *
Будет потеря пакетов при интенсивном обмене. Это нормальное явление и должно разруливаться протоколами верхнего уровня. Никакими буферами такая проблема не решается в принципе - любой буфер рано или поздно переполнится, если заполнять его быстрее, чем опустошать.

по-нормальному стек не пихает данные без подтверждения принятия предыдущих. так что требуемый размер буфера всегда можно определить по характеру передаваемых данных.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.