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 a listener in networking?

1017


What do you understand by the term network?

979


What is the Difference between socket and servlet?

1251


What are the advantages and disadvantages of sockets?

1044


Explain the generic term internet.

988


What is an http redirector?

976


What is a thread pool?

1012


How we can make simple java program for Server/Client Communication

1065


What you know about random port?

963


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

951


Explain a daytime server?

1051


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

1087


What is network programming in java?

974


What is network interface name?

933


To create a socket, you need to know the internet host to which you want to connect?

951