hmmm... hast du schonmal in erwägung gezogen, dass du den parent schließt und nicht den client?
Quote
perldoc -f fork
Does a fork(2) system call to create a new process running the
same program at the same point. It returns the child pid to the
parent process, 0 to the child process, or "undef" if the fork
is unsuccessful.
...