UDP: first packets not sent

Rolf Schroedter Rolf.Schroedter at dlr.de
Mon Oct 6 15:39:51 UTC 2003


I'm using UDP to a fixed server with the open_eth RTEMS driver.
	fd = socket(...);	/* Open the socket */
	connect(fd, ...);	/* specify destination address */
If sending data every 10 milliseconds is started immediately
	for(;;) {
		send(fd,...);
		sleep_10_milliseconds();
	}
then the first ~16-17 packets are completely lost.
ETHEREAL shows that they are not sent by the RTEMS host.
Seems to me that RTEMS ignores all send() calls until the
hardware (ethernet) address of the destination is detected (ARP).
Send() doesn't return any error.

If sending data is started ~3 seconds after calling connect(),
then everything is fine.

Is this an RTEMS problem, or am I missing something ?
Is there a way to know, when data can be sent ?

Thanks, Rolf.

---------------------------------------------------------------
Rolf Schroedter
German Aerospace Center
Institute of Space Sensor Technology and Planetary Exploration
Email:    Rolf.Schroedter at dlr.de




More information about the users mailing list