old-www/HOWTO/Compressed-TCP-2.html

63 lines
2.8 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>Compressed TCP/IP-Sessions using SSH-like tools: Compressing HTTP/FTP,...</TITLE>
<LINK HREF="Compressed-TCP-3.html" REL=next>
<LINK HREF="Compressed-TCP-1.html" REL=previous>
<LINK HREF="Compressed-TCP.html#toc2" REL=contents>
</HEAD>
<BODY>
<A HREF="Compressed-TCP-3.html">Next</A>
<A HREF="Compressed-TCP-1.html">Previous</A>
<A HREF="Compressed-TCP.html#toc2">Contents</A>
<HR>
<H2><A NAME="s2">2. Compressing HTTP/FTP,...</A> </H2>
<P>My office is connected with a 64KBit ISDN line to the internet, so the
maximum transfer rate is about 7K/s. You can speed up the connection by compressing
it: when I download files, Netscape shows up a transfer rate of up to 40K/s
(Logfiles are compressable by factor 15). SSH is a tool that is mainly designed
to build up secure connections over unsecured networks. Further more, SSH is
able to compress connections and to do port forwarding (like rinetd or redir).
So it is the appropriate tool to compress any simple TCP/IP connection. "Simple"
means, that only one TCP-connection is opened. An FTP-connections or the connection
between M$-Outlook and MS-Exchange are not simple as several connections
are established. SSH uses the LempleZiv (LZ77) compression algorithm - so you
will achieve the same high compression rate as winzip/pkzip. In order to compress
all HTTP-connections from my intranet to the internet, I just have to execute
one command on my dial-in machine:
<P><CODE>ssh -l &lt;login ID&gt; &lt;hostname&gt; -C -L8080:&lt;proxy_at_ISP&gt;:80
-f sleep 10000</CODE>
<P>&lt;<CODE>hostname</CODE>&gt; = host that is located at my ISP. SSH-access is required.
<P>&lt;<CODE>login ID</CODE>&gt; = my login-ID on &lt;<CODE>hostname</CODE>&gt;
<P><CODE>&lt;proxy_at_ISP&gt; =</CODE>the web proxy of my ISP
<P>My browser is configured to use <CODE>localhost:8080</CODE> as proxy. My laptop connects
to the same socket. The connection is compressed and forwarded to the real
proxy by SSH. The infrastructure looks like:
<P>
<PRE>
64KBit ISDN
My PC--------------------------------A PC (Unix/Linux/Win-NT) at my ISP
SSH-Client compressed SSH-Server, Port 22
Port 8080 |
| |
| |
| |
|10MBit Ethernet |100MBit
|not compressed |not compressed
| |
| |
My second PC ISP's WWW-proxy
with Netscape,... Port 80
(Laptop)
</PRE>
<HR>
<A HREF="Compressed-TCP-3.html">Next</A>
<A HREF="Compressed-TCP-1.html">Previous</A>
<A HREF="Compressed-TCP.html#toc2">Contents</A>
</BODY>
</HTML>