When an RMI client (stub, even registry stub) tries to
contact a server, it will try:
Contact directly using JRMP.
Make direct HTTP connection to server, encapsulate method
call in HTTP request.
Assume firewall is proxy server, ask it to forward the
request to appropriate port on server. Firewall forwards
request as HTTP request.
Connect to port 80 on server machine and send request to
URL beginning with /cgi-bin/java-rmi.cgi. Hope
request gets forwarded to proper port on server machine.
Connect to port 80 of firewall machine and send request to
URL beginning with /cgi-bin/java-rmi.cgi. Hope
request gets forwarded to server.