Я использую LWIP в приложении, которое требует высоких скоростей передачи данных. Поэтому я выделяю 4 pbufs один раз и сохраняю их адрес и с помощью некоторой аппаратной магии, заполняю их один за другим и сообщаю программе, что буфер готов, и программное обеспечение отправляет его как UDP-пакеты, как когда-либо через некоторое время, когда я обнюхаю пакет I имеют около 60 дополнительных байтов в моем пакете, они кажутся дополнительными заголовками UDP, но в полезной нагрузке. любое обходное решение/предложение?LWIP PBUF, дополнительные байты при отправке UDP?
ответ
В моем проекте на работе у нас была коррупция pbuf, которая вызывала подобный вопрос. Мы использовали несколько MAC разных типов от xilinx, и в отделе pbuf было несчастье. То, что я бы рекомендовал вам, это включить полную отладку lwip для уровня IP и, возможно, слоя UDP. Затем вручную обрезайте отпечатки на что-то управляемое, которое воспроизводит проблему (lwip имеет минимальный уровень печати - вы можете использовать это, чтобы помочь обрезать такие вещи, как предупреждение против серьезных отпечатков). В нашем случае мы получим ошибки контрольной суммы уровня UDP или IP, и это было признаком плохих вещей. Кроме того, полезно тестировать только в одном направлении за раз, чтобы ограничить возможности плохого материала в одном направлении. Мы использовали примеры iperf из xilinx и расширили их. Это помогло устранить проблему. BTW 4 pbufs - ничто ... Когда я посмотрел на трафик в сети - есть тонна вещей, накладные расходы и т. Д. Существует множество потенциальных проблем, из-за слишком небольших записей в ARP-таблице и ... Четыре pbufs крайне изменчив, если вы оказались в ловушке для памяти, мне жаль, что вы пытаетесь использовать lwIP. Это просто похоже на кошмар. Кроме того, будьте осторожны, что обычно отпечатки блокируются ... так что это испортит производительность. Разумно заменить отладочные отпечатки lwip с помощью неблокирующей процедуры, которая, как вы знаете, не будет забивать вашу производительность в реальном времени.
- 1. STM32 + LWIP - Конфигурация Pbuf
- 2. Создание соединения RAW UDP в lwip ARP
- 3. FreeRTOS + LWIP -UDP Передача данных
- 4. cipher.doFinal дополнительные байты
- 5. Получили пакеты UDP в очереди LwIP?
- 6. Потеря данных при отправке по UDP
- 7. OpenStreamForWriteAsync оставляет дополнительные байты
- 8. Дополнительные байты при генерации текстового файла
- 9. Длинные задержки при отправке пакетов UDP
- 10. [SOLVED] Раздражающая ошибка при отправке пакета udp
- 11. Java UDP socket эхо-байты
- 12. Дополнительные данные формы при отправке формы
- 13. Java cipher.doFinal() написать дополнительные байты
- 14. дополнительные байты в распределении таНоса
- 15. Дополнительные байты в файлах .mid
- 16. хост: порт пары: PBUF
- 17. java.lang.ClassFormatError: дополнительные байты в конце файла класса
- 18. Python3 добавив дополнительные байты в байтах строку
- 19. Приложение Java-сокета отправляет дополнительные байты при попытке отправить файл
- 20. Дополнительные байты, добавляемые к файлу при сохранении в SQL Server
- 21. C: последние байты пакетов UDP потеряны
- 22. Опция SO_RCVTIMEO на LwIP
- 23. Дополнительные байты между кластерами в FAT12
- 24. Дополнительные байты на конце буфера YUV - RaspberryPi
- 25. Реализация LwIP
- 26. Python OpenCV: Воспроизведение видеопотока UDP при отправке сообщений с сохранением
- 27. Res.write не работает при непрерывной отправке пакета UDP
- 28. «Неверный аргумент» при отправке пакета UDP, но который?
- 29. Установить исходный порт при отправке сообщения udp с эхом?
- 30. Изменение IP-адреса источника при отправке сообщения UDP в node.js