|
подключение устройства к ethernet |
|
|
|
Dec 17 2007, 13:07
|

Местный
  
Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131

|
Цитата(Rst7 @ Dec 17 2007, 15:55)  Безусловно. Допустим, у нас безмозглая железка генерирует RAW-пакеты с правильными MAC-адресами (заранее задаными). В результате, первый же пакет от железки установит соответствие MAC<->PORT для железки, хотя, если не нужно принимать пакеты, это не особо и надо. А куда же отроутится пакет? Полетит он скорее всего в нужный порт, к которому подключен комп, т.к. стек сетевых протоколов на компе тоже проявляет некоторую активность (особенно виндозный, всякие девайсы PnP в сети ищет). В крайнем случае на компе можно просто пинг запустить хоть и не в существующий девайс.  Понятно. Я почему беспокоюсь? Hацелился организовать с помощью raw-пакетов приличный поток данных от девайсов и не хочется, чтобы эти пакеты распространялись по всей сети, а шли бы прямиком в компьютер. То же- из компьютера в девайсы.
|
|
|
|
|
Dec 18 2007, 15:40
|

Местный
  
Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131

|
Цитата(Rst7 @ Dec 17 2007, 15:55)  Безусловно. Допустим, у нас безмозглая железка генерирует RAW-пакеты с правильными MAC-адресами (заранее задаными). В результате, первый же пакет от железки установит соответствие MAC<->PORT для железки, хотя, если не нужно принимать пакеты, это не особо и надо. А куда же отроутится пакет? Полетит он скорее всего в нужный порт, к которому подключен комп, т.к. стек сетевых протоколов на компе тоже проявляет некоторую активность (особенно виндозный, всякие девайсы PnP в сети ищет). В крайнем случае на компе можно просто пинг запустить хоть и не в существующий девайс. Каверза возникла. Если безмозглая железка не генерирует RAW пакеты, а наоборот - только принимает пакеты молча, то свитч никогда ее обнаружить на порту не сможет и будет рассылать широковещательно. Получается, read only режим неэффективен в случае применения свитча и RAW пакетов.
|
|
|
|
|
Dec 19 2007, 09:48
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(Rst7 @ Dec 19 2007, 12:36)  В принципе, особо никакой сложности не вижу. И зря боитесь, будет все работать. Насколько я помню, когда я отлаживал МАС в ПЛИС, то как раз и гонял пакеты, в которых были только МАС адреса и CRC. Так вот сниффер их тоже принимал и благополучно обрабатывал, как пакеты с ошибками и складывал в счетчик "непринятых данных", поэтому и до приема данных дело не доходило. Так что на уровне РС, где стандартно все настроено на прием данных, которые имеют структуру IP, могут быть проблемы. Мало того, пакеты могут и не прийти вовсе. И кто будет делать перезапрос?
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Dec 19 2007, 11:15
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата(zltigo @ Dec 19 2007, 12:55)  Шаманства и попыток "избегать" не надо. Надо просто со знанием дела выбрать, например, фрейм IEEE 802.3 (не массово используемый DIX/Ethernet II ) и индивидуальный 16bit FRAMEID из официально не занятых. И можете спать спокойно. Кстати, о шаманстве. Я думаю, самое оно послать пакет с одинаковым маком источника и приемника. Цитата Насколько я помню, когда я отлаживал МАС в ПЛИС, то как раз и гонял пакеты, в которых были только МАС адреса и CRC. Вот только паддить их желательно до 64 байт. И надо бы тогда или выбрать FrameID или собственный мак в destination записать.
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Dec 20 2007, 13:39
|

Местный
  
Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131

|
Цитата(iosifk @ Dec 19 2007, 12:48)  Насколько я помню, когда я отлаживал МАС в ПЛИС, то как раз и гонял пакеты, в которых были только МАС адреса и CRC. Так вот сниффер их тоже принимал и благополучно обрабатывал, как пакеты с ошибками и складывал в счетчик "непринятых данных", поэтому и до приема данных дело не доходило. Так что на уровне РС, где стандартно все настроено на прием данных, которые имеют структуру IP, могут быть проблемы. Эти проблемы, как я понял, в виндах решается применением WinPCap. Под линуксом , говорят, проблем с RAW пакетами нет в вообще. Другие OS в расчет можно не брать. Цитата Мало того, пакеты могут и не прийти вовсе. И кто будет делать перезапрос? А вот это серьезно. Я поэтому и интересуюсь работой свитчей, ищу возможные причины, по которым могут пропадать RAW пакеты в корпоративной сети. Цитата(zltigo @ Dec 19 2007, 13:55)  Шаманства и попыток "избегать" не надо. Надо просто со знанием дела выбрать, например, фрейм IEEE 802.3 (не массово используемый DIX/Ethernet II ) и индивидуальный 16bit FRAMEID из официально не занятых. И можете спать спокойно. Подскажите пожалуйста список официально занятых FrameID. Хочу выбрать незанятый.
|
|
|
|
|
Dec 20 2007, 14:33
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Aprox @ Dec 20 2007, 15:39)  Я поэтому и интересуюсь работой свитчей, ищу возможные причины, по которым могут пропадать RAW пакеты в корпоративной сети. По причине кривости железа. Цена железа падает, качество обработки ошибок никого не волнует, нехай все потом будут разруливать протоколы верхнего уровня... Типичная проблема - пакет влетел в hub/switch, на _выходе_ из hub/switch коллизия. Старое доброе железо, как и положено отражало эту проблему на вход, я на сетевой карте фиксировал проблему и перепередавал. Все работало как часики. Ну а потом призводители начали все упрощать  Самый первый раз столкнулся лет десять на Realtek - оборудование абсолютно с таким-же названиеми и номером для заказа. Две разницы - пластмассовый корпус и другой чип  . В общем, в нагруженной сети с произвольным сетевым оборудованием пакеты изредка теряться будут. Цитата Подскажите пожалуйста список официально занятых FrameID. Хочу выбрать незанятый. Поищите в интернете, или возьмите 0x69 0x7B - это следующий после моего
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 20 2007, 17:27
|

Местный
  
Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131

|
Цитата(zltigo @ Dec 20 2007, 17:33)  По причине кривости железа. Цена железа падает, качество обработки ошибок никого не волнует, нехай все потом будут разруливать протоколы верхнего уровня... Типичная проблема - пакет влетел в hub/switch, на _выходе_ из hub/switch коллизия. Старое доброе железо, как и положено отражало эту проблему на вход, я на сетевой карте фиксировал проблему и перепередавал. Все работало как часики. Ну а потом призводители начали все упрощать  Самый первый раз столкнулся лет десять на Realtek - оборудование абсолютно с таким-же названиеми и номером для заказа. Две разницы - пластмассовый корпус и другой чип  . В общем, в нагруженной сети с произвольным сетевым оборудованием пакеты изредка теряться будут. Черт! У меня как раз такая ситуация- свитч гигабитным портом к компьютеру, а остальными 100Мбит портами к периферийным устройствам, которые шлют в компьютер пакеты на пределе пропускной способности FastEthernet. Я думал, что в таком свитче имеется буферная память, в которой пришедшие от периферии пакеты будут выстроены в очередь перед отправкой в компьютер. И, вроде бы, описанных вами коллизий не должно быть. Может, надо аккуратно выбирать модель свитча? Цитата Поищите в интернете, или возьмите 0x69 0x7B - это следующий после моего  Спасибо за FrameID. Однако, я сейчас разбирался с одним готовым MAC, встроенным в микроконтроллер, и обнаружил, что он фильтрует фреймы с неизвестными FrameID. Ему подавай или ограниченный ряд значений типов, или там должна стоять длина фрейма не более 1500. Чем мне может грозить использовать в этом поле длину вместо неизвестного FrameID?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|