HTTPTunellin is is nothing but talking in terms of bytes to the server.This process is used for Applet to Servlet communication. Load balancing is the process for distributing the work load of servlets with other servlets by servlet chaining. The complete details are available at Java Server programming published by WROX.
I disagree with the definition of load balancing given here. Load balancing is the use of more than one server as if it is one system by passing client requests transparently to whichever server the "load balancing algorithm" decides should get it. You can load-balance between hardware servers, routing packets to separate machines, or you can load balance between software systems, routing requests to different server processes. It's faily common practice, for example, to run one web server and several servlet containers, and let the web server route servlet and JSP requests to the servlet containers either randomly, based on server load or based on session id.