Estamos executando uma câmera de alta resolução em uma única porta Ethernet de 1 Gb reservada, conectada a uma máquina Windows 10. Nós deixamos a câmera rodar em Auto-trigger e então ela pega e envia imagens o mais rápido possível - pelo menos é o que eu deduzo do tráfego de rede observado: assim que nós começamos a câmera, a utilização da Ethernet sobe para ~ 580Mb recebido na máquina Windows.
MAS: nosso software de processamento de imagens (HALCON) não captura todos os quadros enviados pela câmera. Este não é um problema para a nossa tarefa (cena quase estática, só precisamos de um novo quadro quando processamos o antigo após ~ 200 milissegundos), não fosse pelo fato de que a tentativa de capturar a próxima imagem resulta em um comportamento completamente arbitrário. atrasos, com duração de ~ 100 milissegundos a 20-30 segundos. O suspeito é que o primeiro número de tentativas corre sem problemas e só depois tropeçamos com tempos de espera imprevisíveis. É possível que esses atrasos provenham do aplicativo / driver de rede / os (qual deles eu não conheço) navegando pelo fluxo de dados recebidos e jogando fora os pacotes antigos? Existe uma maneira de restringir o Windows em uma interface de rede a alguns MB de buffer de recebimento, para que ele nem tente criar centenas de MB de fluxo de dados que seja jogado fora de qualquer maneira?
Obrigado antecipadamente
PS: Desculpe pela linguagem leiga, meu background é engenharia embarcada.
PPS: o firewall do Windows está desativado para todas as portas
Tags networking video ethernet