|
подключение устройства к ethernet |
|
|
|
Dec 10 2007, 09:14
|
Участник

Группа: Свой
Сообщений: 43
Регистрация: 15-09-06
Пользователь №: 20 407

|
Всем добрый день, В данный момент имеется устройство сбора информации, которое для ввода информации в PC использует плату PCI или ISA (не ругайте  устройство старое). Хотелось бы подключить все это хозяйство к ethernet дабы избавиться от необходимости что-то вставлять в компьютер у пользователя. Устройство - это крейт с набором измерительных модулей. Соответственно, исходящий поток единицы Мбит, входящий на 1-2 порядока меньше. Нужен совет или некий обзор по существующим решениям для подключения к ethernet. Основной критерий - стоимость подключения. Для начала хотелось бы понять самый простой с точки зрения реализации вариант. Возможно ли обойтись без реализации TCP IP? Заранее спасибо.
|
|
|
|
|
Dec 11 2007, 12:31
|

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

|
Цитата(Aprox @ Dec 11 2007, 13:55)  Подскажите, где берут программную поддержку для RAW Socket-ов на стороне компьютера. Для Linux - нигде не берут  Цитата В составе WinSock я ничего похожего не нашел. http://msdn2.microsoft.com/en-us/library/ms740548.aspxWinSock 2.2 уже что-то было а вообще смотрите как ставят сниферы: http://komsoft.ru/pma/sniffer.htm
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 12 2007, 15:27
|

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

|
Цитата(Aprox @ Dec 12 2007, 16:23)  создать в Windows XP сокет, который работал бы с периферийными устройствами на канальном уровне, простейшими Ethernet фреймами по физическим МАС адресам Да. Цитата и увеличенным размером пакета, А вот про это лучше забудьте.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 12 2007, 19:00
|
Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 16-06-05
Из: Оренбург
Пользователь №: 6 039

|
Цитата(Aprox @ Dec 12 2007, 19:23)  Спасибо за ссылки. Вникаю. Меня интересует возможность создать в Windows XP сокет, который работал бы с периферийными устройствами на канальном уровне, простейшими Ethernet фреймами по физическим МАС адресам и увеличенным размером пакета, без IP протокольных наворотов. Возможно такое в Windows? Если возможно, то куда посоветуете смотреть? Для Windows есть WinPcap . Через него работает сниффер Ethereal (сейчас уже подругому называется)
--------------------
Программа выполнила невыполнимое и допустила недопустимое
|
|
|
|
|
Dec 13 2007, 08:31
|

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

|
Цитата Цитата создать в Windows XP сокет, который работал бы с периферийными устройствами на канальном уровне, простейшими Ethernet фреймами по физическим МАС адресам
Да. Интересно, как будут себя вести "умные" свичи в составе сети, если послать не IP пакет, а пакет только с физическими адресами в заголовке? Умные- это которые запоминают распределение IP адресов девайсов на своих портах. Ведь, в рассматриваемых "сырых" пакетах нет IP хидера. Мне кажется, совсем "сырые" пакеты разумно использовать только в соединениях точка-точка.
|
|
|
|
|
Dec 13 2007, 11:50
|

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

|
Цитата(zltigo @ Dec 13 2007, 13:09)  Свитчи, естественно, работают по MAC адресам. IP им без надобности  . Да, это я ступил. Прошу прощения. Цитата(ishergin @ Dec 12 2007, 22:00)  Для Windows есть WinPcap . Через него работает сниффер Ethereal (сейчас уже подругому называется) О! WinPcap у меня оказывается уже стоит, его пользует сниффер WireShark. Спасибо, пошел вникать в документацию.
|
|
|
|
|
Dec 17 2007, 11:50
|

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

|
Цитата(Aprox @ Dec 17 2007, 13:40)  На каком этапе свитчи формируют у себя в памяти таблицу соответствия "порт - MAC адрес"? Сомневаюсь, ведь устройство, работающее на raw пакетах без IP, не будет отвечать на стандартные ARP запросы. Как же свитч поймет, что к данному порту подключено устройство с таким-то MAC адресом?  На самом деле ему пофиг  Цитата 8.2. Switch Core Functional Overview 8.2.1. Address Search, Learning, and Aging When a packet is received, the RTL8309SB uses the least 10 bits of the destination MAC address to index the 1024-entry lookup table, and at the same time compares the destination MAC address with the contents of the 16-entry CAM. If the indexed entry is valid or the CAM comparison is matched, the received packet will be forwarded to the corresponding destination port. Otherwise, the RTL8309SB will broadcast the packet. This is the ‘Address Search’. The RTL8309SB then extracts the least 10 bits of the source MAC address to index the 1024-entry look-up table. If the entry is not already in the table it will record the source MAC address and add switching information. If this is an occupied entry, it will update the entry with new information. This is called ‘Learning’. If the indexed location has been occupied by a different MAC address (hash collision), the new source MAC address will be recorded into the 16-entry CAM. The 16-entry CAM reduces address hash collisions and improves switching performance. Address aging is used to keep the contents of the address table correct in a dynamic network topology. The look-up engine will update the time stamp information of an entry whenever the corresponding source MAC address appears. An entry will be invalid (aged out) if it’s time stamp information is not refreshed by the address learning process during the aging time period. The aging time of the RTL8309SB is around 300 seconds. Как видите, он смотрит на ВСЕ пакеты, а не только на ARP
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Dec 17 2007, 12:28
|

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

|
Цитата(Rst7 @ Dec 17 2007, 14:50)  Как видите, он смотрит на ВСЕ пакеты, а не только на ARP Спасибо. Насколько я понял, на первом этапе, когда еще нет MAC таблица еще сформирована, или не соответсвует действительности, свитч рассылает поступившие пакеты во все порты. Далее, по мере прихода пакетов с других портов, по их source адресам заполняет таблицу "MAC-порт". Я правильно понял текст?
|
|
|
|
|
Dec 17 2007, 12:55
|

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

|
Цитата(Aprox @ Dec 17 2007, 14:28)  Спасибо. Насколько я понял, на первом этапе, когда еще нет MAC таблица еще сформирована, или не соответсвует действительности, свитч рассылает поступившие пакеты во все порты. Далее, по мере прихода пакетов с других портов, по их source адресам заполняет таблицу "MAC-порт". Я правильно понял текст? Безусловно. Допустим, у нас безмозглая железка генерирует RAW-пакеты с правильными MAC-адресами (заранее задаными). В результате, первый же пакет от железки установит соответствие MAC<->PORT для железки, хотя, если не нужно принимать пакеты, это не особо и надо. А куда же отроутится пакет? Полетит он скорее всего в нужный порт, к которому подключен комп, т.к. стек сетевых протоколов на компе тоже проявляет некоторую активность (особенно виндозный, всякие девайсы PnP в сети ищет). В крайнем случае на компе можно просто пинг запустить хоть и не в существующий девайс.
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|