Некоторое сетевое устройство

Тема в разделе "WASM.ELECTRONICS", создана пользователем perez, 6 июн 2005.

  1. perez

    perez Member

    Публикаций:
    0
    Регистрация:
    25 апр 2005
    Сообщения:
    502
    Адрес:
    Moscow city
    Задача такова: нужно сделать устройство, которое будет

    подключено к свичу (RJ45) и которое будет отвечать на

    ping- запросы. Нужно это для того, чтобы расставить на

    свичах такие устройства с целью определения места поломки

    сети. Сеть TCP/IP, 100Mbit/s.



    Думаю сделать это с поиощью микроконтроллера MCS51

    или PIC.



    Мне нужна исчерпывающая информация по сл. вопросу:

    какие сигналы приходят на коннектор, как на них надо

    отвечать на уровне железа. Тот минимум, который нужен

    решения данной задачи. Может, кто кинет ссылочку.



    Мои мысли: как минимум нужно правильно отвечать на

    ARP- запросы и на эхо- запросы ICMP.

    В инете пока ничего путного не нашел.



    Заранее спасибо.
     
  2. Arvensis

    Arvensis New Member

    Публикаций:
    0
    Регистрация:
    18 сен 2004
    Сообщения:
    72
    Адрес:
    Russia
  3. perez

    perez Member

    Публикаций:
    0
    Регистрация:
    25 апр 2005
    Сообщения:
    502
    Адрес:
    Moscow city
    Заценю. Но всеже очень интересно реализовать.

    Думаю так: сначала спаять схему с контроллером,

    чтобы принимать байты из сети. Они будут идти на входные порты контроллера. Контроллером научиться читать эти

    байты. Структура не очень сложная. Потом научиться

    создавать пакеты и отправлять их в сеть. Потом довести

    до все ума.

    Ничего не пропустил?



    Или, как вариант, иожно научить это устройство только

    отправлять UDP пакеты на какой- то сервер. Так легче.
     
  4. Arvensis

    Arvensis New Member

    Публикаций:
    0
    Регистрация:
    18 сен 2004
    Сообщения:
    72
    Адрес:
    Russia
    И все же, я против создания такого устройства на голом микроконтроллере. Сеть - это не системная шина, ни возможности захвата, ни стробов. По ней не ползают байты. Наводки, коллизии, шумы, отраженные сигналы - все это не отловить программно, imho.

    [added]

    Плюс, если я не ошибаюсь, PICи не работают на частотах свыше 40Мгц ==> Ethernet 100Mbps просто не успеешь раскодировать
     
  5. perez

    perez Member

    Публикаций:
    0
    Регистрация:
    25 апр 2005
    Сообщения:
    502
    Адрес:
    Moscow city
    Но если сделать устройство, которое только _отсылает_

    датаграммы каждые 5 секунд? По идее от него только

    требуется создать пакет, перевестиего в сигнал и

    отправить в сеть..





    кстати, свич позволит это сделать, если устройство не имеет IP адреса?
     
  6. OLS

    OLS New Member

    Публикаций:
    0
    Регистрация:
    8 янв 2005
    Сообщения:
    322
    Адрес:
    Russia




    ... нужно еще отловить коллизии с широковещательными пакетами, которых на самом деле довольно много, и переотправить пакет в случае коллизии.



    Свичу (если он не маршрутизирующий) глубоко наплевать на твой IP-адрес, так как его функции ограничиваются вторым уровнем:

    - запомнить минут на пять-десять, что с порта номер 14 пришел пакет с sourceMAC-адресом 00:11:22:33:44:55;

    - поискать, нет ли среди запомненных destinationMAC-адреса (например, 00:66:77:88:99:AA), если есть, то отправить его на запомненный порт (например, на 21-ый), иначе отправить его по всем портам, кроме того, с которого он поступил (то есть кроме 14-го).





    Как следствие:

    - нежелательно изменять свой MAC

    - крайне нежелательно попасть на уже существующий в сети MAC или IP адрес
     
  7. perez

    perez Member

    Публикаций:
    0
    Регистрация:
    25 апр 2005
    Сообщения:
    502
    Адрес:
    Moscow city
    А если сделать максимум примитивно: не проверять ошибки,

    а только отсылать датаграммы через определенные

    промежутки времени и все. Я не плохо понимаю, как

    все это работает на уровне железа, только начал изучать.

    Так что за глупые вопросы прошу прощения.
     
  8. OLS

    OLS New Member

    Публикаций:
    0
    Регистрация:
    8 янв 2005
    Сообщения:
    322
    Адрес:
    Russia
    Ну а вдруг ты 7 раз подряд попадешь на коллизии и твоя мониторящая система подумает, что сеть упала ?



    Может лучше чуть чуть постараться и ...



    - либо отслеживать коллизии по всем правилам IEEE 802.3 (с переотправкой через промежуток времени, определенный в стандарте),



    - либо пытаться услышать ответ на твой пинг и перепосылать чаще в случае неответа (хотя сам по себе данный вариант и неправилен с точки зрения идеологии сетевого стека).
     
  9. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    perez

    Вот эти ребята специализируются на embedded-TCP/IP. У них можно за примерно 20$ заказать z80-совместимый микроконтроллер с полным стеком TCP/IP.
     
  10. perez

    perez Member

    Публикаций:
    0
    Регистрация:
    25 апр 2005
    Сообщения:
    502
    Адрес:
    Moscow city
    OLS

    Ты прав. Надо все-таки отслеживать коллизии. Надеюсь,

    это не так сложно.



    Quantum

    Задача была создать устройство с наименьшими затратами

    денег. За $20 я могу купить принт- сервер, который

    отвечает на пинг =)
     
  11. S_T_A_S_

    S_T_A_S_ New Member

    Публикаций:
    0
    Регистрация:
    27 окт 2003
    Сообщения:
    1.754
    А что понимать под
    ? Если речь идёт о кабелях, и лампочек link не достаточно, то устройство для проверки "почему работает 10BaseT, но не работает 100BaseTX" будет стОить намного больше 20$. А если определять неисправность свитча, то почему не подходит дедовский способ - замена на заведомо рабочий?
     
  12. CARDINAL

    CARDINAL Member

    Публикаций:
    0
    Регистрация:
    23 янв 2004
    Сообщения:
    551
    Адрес:
    Moscow
    perez

    а ты не думал о том, чт возможно твое время и твои труды обойдутся тебе куда дороже $20 ?
     
  13. perez

    perez Member

    Публикаций:
    0
    Регистрация:
    25 апр 2005
    Сообщения:
    502
    Адрес:
    Moscow city
    Железо однозначно дешевле.

    А умственный труд- самому интересно,

    никто не заставляет =)
     
  14. Rai

    Rai New Member

    Публикаций:
    0
    Регистрация:
    18 окт 2005
    Сообщения:
    35
    Адрес:
    красноярск
    Можно на MICROCHIP.com посмотреть там была исчерпывающая информация по контроллерам и устройствам на их основе так-же приводились хорошие материалы по их програмированию
     
  15. kyprizel

    kyprizel New Member

    Публикаций:
    0
    Регистрация:
    1 авг 2003
    Сообщения:
    232
    Адрес:
    TSK
    xttp://www.opennet.ru/opennews/art.shtml?num=6263