If it's an embedded system it's probably using the DHCP client udhcpc from busybox. Its detailed behaviour is specified in a script, usually /usr/share/udhcpc/default.script
If the network goes down, I'm not sure the udhcpc process even finds out until it tries to renew the lease, which might be hours later. Can you just set a cron job or a simple loop to check for network connectivity and restart networking if it is out?
There is a discussion of udhcpc in the embedded context here:
http://www.nslu2-linux.org/wiki/HowTo/GetDHCPWorking
One of the suggestions is to configure udhcpc to fall back to a usable static address, so that you can still communicate with the device if dhcp fails.