Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
Passthru тормозит сеть.
 
Добрового времени суток всем драйверописателям.

У меня недавно возникла проблема с Passthru работающим на машине с установленым 100Mbit'ой сетевухой (Realtek RTL8139 Family PCI Fast Ethernet NIC), причем исключительно на входящий трафик. Описываю ситуацию: заглушил все, что мог и получил...

Пакет приходит и попадает в PtReceive, где я тут же вызываю NdisMEthIndicateReceive.
Далее Вызывается MPTransferData, где опять же вызывается NdisTransferData.
Потом происходит возврат в PtReceive и, наконец, все комплитится (PtReceiveComplete с функцией NdisMEthIndicateReceiveComplete).
В отладчике посмотрел, что в основном работа тормозится при возврате в PtReceive из MPTransferData.
С другими сетевухами не проверял, но есть подозрение, что подобное случится на всех 100Mbit'ых.

На 1Gbit'ых работает все нормально, но там пакеты проходят через функцию PtReceivePacket, где, насколько я понял, обрабатываются сразу цепочки пакетов.

В связи с этим у меня пара вопросов:
1. Как можно ли ускорить работу в PtReceive?
2. Можно ли направить пакеты через PtReceivePacket (можно ли сформировать цепочки из отдельных пакетов)?

З.Ы. Очень нужно... :|
 
просто не используйте rtl8139.
 
Разобрался. Ошибка проявляется тольлко для passthru из 2003 DDK. Там на приеме пакета стоит некорректная проверка состояния устройства. - Пакет не пропускается, если его состояние D0 :) и пропускается для других состояний. В последующем WDK эта ошибка устранена.
Страницы: 1
Читают тему