Point Grey Research Knowledge Base

Article 354 - Lost Ethernet data packets on Linux systems

Issue:
This article provides possible solutions to lost data packets when streaming images from a GigE Vision camera on Linux Ubuntu 8.04 systems.

Cause:
When streaming images from a GigE Vision camera on Linux Ubuntu 8.04 systems, a high number of lost data packets may be observed. In FlyCapture SDK applications, dropped packets result in IMAGE_CONSISTENCY_ERRORS returned.

Solution:

To fix, try one or both of the following:

  • Increase packet delay time using the FlyCapture API or the FlyCap Demo program.
  • Increase the amount of memory Linux uses for receive buffers using the sysctl interface. Whereas the system standard (default) and maximum values for this buffer default to 128 KB and 120 KB respectively, increasing both of these parameters to 1 MB significantly improves image streaming results.

The following sysctl command updates the receive buffer memory settings:

sudo sysctl -w net.core.rmem_max=1048576 net.core.rmem_default=1048576

Note: In order for these changes to persist after system reboots, the following lines must be manually added to the bottom of the /etc/sysctl.conf file:

net.core.rmem_max=1048576
net.core.rmem_default=1048576

Once changes are persisted, they can be reloaded at any time by running the following command in sysctl:

sudo sysctl -p

Related Articles:
1.) Standard PCI network adapters may cause camera control problems
2.) Some GigE network parameters may prevent video streaming
3.) Windows Firewall may disable GigE network


Article ID:
354
Published:
10/6/2010 9:05:25 AM
Last Modified:
10/14/2010 10:10:19 AM
Keywords:
lost packets, dropped packets, Linux, sysctl
Issue Type:
Normal Use

Copyright © 2004 Point Grey Research Inc.