Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...

What is the purpose of HTTP tunneling?

Answer Posted / rajani nagandla

This well-worn method is popular since it requires almost
no setup, and works quite well in firewalled environments
which permit you to handle HTTP through a proxy, but
disallow regular outbound TCP connections.
If Java RMI fails to make a normal (or SOCKS) connection to
the intended server, and it notices that a HTTP proxy
server is configured, it will attempt to tunnel Java RMI
requests through that proxy server, one at a time.

There are two forms of HTTP tunnelling, tried in order. The
first is http-to-port; the second is http-to-cgi.

In http-to-port tunneling, Java RMI attempts a HTTP POST
request to a http: URL directed at the exact hostname and
port number of the target server. The HTTP request contains
a single Java RMI request. If the HTTP proxy accepts this
URL, it will forward the POST request to the listening Java
RMI server, which will recognize the request and unwrap it.
The result of the call is wrapped in a HTTP reply, which is
returned through the same proxy.

Often, HTTP proxies will refuse to proxy requests to
unusual port numbers. In this case, Java RMI will fall back
to http-to-cgi tunneling. The Java RMI request is
encapsulated in a HTTP POST request as before, but the
request URL is of the form http://hostname:80/cgi-bin/java-
rmi.cgi?port=n (where hostname and n are the hostname and
port number of the intended server). There must be a HTTP
server listening on port 80 on the server host, which will
run the java-rmi.cgi script (supplied with the JDK), which
will in turn forward the request to a Java RMI server
listening on port n. Java RMI can unwrap a HTTP-tunneled
request without help from a http server, CGI script, or any
other external entity. So, if the client's HTTP proxy can
connect directly to the server's port, then you don't need
a java-rmi.cgi script at all.

To trigger the use of HTTP tunneling, the standard system
property http.proxyHost must be set to the hostname of the
local HTTP proxy. (There are reports that some Navigator
versions do not set this property.)

The major disadvantage of HTTP tunneling is that it does
not permit inward calls or multiplexed connections. A
secondary disadvantage is that the http-to-cgi method opens
a dramatic security hole on the server side, since without
modification it will redirect any incoming request to any
port

Is This Answer Correct ?    4 Yes 3 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is an http redirector?

929


What are the advantages and disadvantages of sockets?

995


What is an http server?

950


What is HttpURL connection ?

986


Explain look for local ports?

1055


What you know about random port?

928


Explain a time server?

993


If you do not want your program to halt while it waits for a connection, put the call to accept( ) in a separate thread?

918


What is the Difference between socket and servlet?

1224


Public serversocket(int port, int queuelength) throws ioexception, bindexception?

1054


What are the advantages and disadvantages of java sockets.

991


What is a thread pool?

984


What is socket in java?

1013


What is a listener in networking?

990


What is jhttp web server?

1166