Всем привет!
У меня в наличии имеется:
1. Устройство на основе трансивера Micrel KSZ9031, которое формирует по гигабиту обычные UDP пакеты;
2. Компьютер с windows 7 (Realtek RTL8111F) и с windows 8 (Realtek RTL8171);
3. Компьютер с Ubuntu 14.04.1 (Marvell 88E8055);
4. Гигабитный "неуправляемый" свитч TP-Link TL-SG1005D на основе Realtek RTL8367, на котором видимо стоит некое подобие Linux (http://blog.zapto.org/?p=52).
5. Сетевая карта на основе Intel 82574L.
Если соединить напрямую устройство (KSZ9031) с компьютером (windows 7, 8), то линк поднимается, пакеты идут и их видно через wireshark. Если соединить напрямую устройство (KSZ9031) с компьютером (Ubuntu 14.04.1), то линк поднимается, но UDP пакеты с помощью wireshark или других утилит не видны. Пропустив UDP пакеты через TL-SG1005D, поднимается только линк, UDP пакеты до компьютера (windows 7, 8 или Ubuntu 14.04.1) тоже не доходят. Пробовали пропустить пакеты через D-link DGS-1005A, пакеты также не доходят. Длина всех патчкордов из UTP 5e во всех конфигурациях не превышает одного метра. Смена портов назначения (destination port) и портов источника (source port) не помогает. Broadcast пакеты тоже не доходят. Расчет контрольной суммы (установка значения отличного от 0х0000) пользовательских данных в UDP пакете не помогает. Если генерить точно такие же пакеты с компьютера (windows 7, 8 или Ubuntu 14.04.1) с помощью обычных сокетов, то пакеты спокойно проходят через TL-SG1005D и через DGS-1005A.
При подключении устройства (KSZ9031) с 82574L(windows 8) линк поднимается, но пакеты не видны даже в wireshark как бы я не старался.
Дамп из wiresharkа с UDP пакетами, которые доходят если напрямую подключать устройство (KSZ9031) с компьютером (windows 7, 8) можно посмотреть здесь - https://sites.google.com/site/dumpudp/home/...rects=0&d=1.
Хочется чтобы UDP пакеты в независимости от операционной системы и используемого трансивера доходили и через свитч тоже. Что я делаю не так? Есть ли какие-то методы решить эту проблему хотя бы частично? Буду крайне благодарен если поможете с этой задачей.