[En-Nut-Discussion] Http server

Harald Kipp harald.kipp at egnite.de
Wed Feb 18 10:58:10 CET 2004


Hi Cosmin,

Every TCP server in the world, even the fastest SUN/IBM/HP
or whatever will get in trouble sooner or later. SYN attacks
are based on this.

Because of memory constraints, Ethernut has no pre-assigned
buffers for sockets. So your application has to take care
of two things:

1. Do not blindly rely on malloc() being succesfull, like
many PC programs do.

2. Delay your server thread if memory becomes low.

Ethernut is a very small and very slow system, compared
with PCs and larger servers. Compared with other 8-Bit
systems, it's exceptionally fast and, if you take care
of the advices given above, it works very reliable.

Sorry for sounding a bit advertising, but I tried some
"competitor" products. Just as an example, the Rabbit stack
is very complete and works quite well, but is slower,
requires more memory and overruns appear much sooner.
The Atmel stack is a nice toy, nothing more. The hardware
chip (like the one on the newer Atmel Kit) is even more
limited regarding concurrent connections.

So please keep in mind, that you are running a system,
which is similar to the Apple II or Commodore PET.

Regards,
Harald




More information about the En-Nut-Discussion mailing list