When a packet comes to a firewall it does 1 of 3 things. Allow, Deny, or Reject.
Allow is obvious, it allows the packet through.
Reject sends a message back to the requester saying that the packet can not be forwarded. This is translated to the port being closed.
Deny (or drop) just deletes the packet. The packet is lost. This is translated to "Timed-Out".
So here is the issue with your situation.
You may have done the port forward incorrectly and the router is dropping the packet.
You may have done the port forward incorrectly and the router is sending the packet to a non existent place.
You may have done the port forward correctly, but the computer you have the server on is dropping the packet.
You may have done the port...