27.SSHで低速回線をドーピング(2003/02/24)

27.1.SSHでデータ圧縮するしかないやろ


川崎出張中につき、常時接続回線は悲しいかなAirH”。
しかも、128Kbpsは高嶺の花というわけで、32Kbpsでこじんまりとしたネット生活。
さすがにね、自宅のADSL回線と比べると泣けてきますよ。(しかも、これで月々5000円)
でね、どーにかしてドーピング(笑)してスピードアップが図れないかなぁ〜と思ってまして、
MTU値の調整やら、プロキシ変えてみるやら、いろいろやったんだけど、期待したほどのスピードアップは得られず…。
しかし、ここで諦めてはいけません。
ボクには、自宅サーバがあります。
自宅サーバでSquid動かして、SSH経由で圧縮かけりゃ速くなるのでは?と考え、さっそく実行してみました。
SSHの設定は、前回のままです。
まずはデータ圧縮を有効にするために、ホームディレクトリの ~./ssh/config ファイルを編集します。
無ければ、作りましょう。

〜 ~./ssh/config 〜
Host *
  Compression yes      ← 圧縮をするかどうかの設定
  CompressionLevel 6   ← 圧縮率(1〜9)。6がDefaultらしい

サーバのスペックが良ければ、圧縮率は最高の9でも良いです。(ウチは、Mobile Celeron 266MHzなんでこんなもんで) これで、SSH関連の設定は終わりです。 次は、Squidの設定です。 設定ファイルは、/etc/squid/squid.conf です。 とりあえず、変更したところをば。 /etc/squid/squid.conf
http_port 8080   ← プロキシポート番号(Defaultは3128でコメントアウトされている)
  ・
  ・
  ・
acl localhost src 127.0.0.1/255.255.255.255
acl admission_host src ashiyu.no-ip.com/255.255.255.255
  ・
  ・
  ・
http_access allow localhost
http_access allow admission_hosts
http_access deny all

一番上の8080とか書いてる部分は、プロキシポート番号の指定です。(Defaultは3128でコメントアウトされている) 基本的に、動いているサービスとかぶらなければ、何でもOKです。 で、次の acl〜 ってのは、このプロキシサーバにアクセスできるIPアドレスを設定してます。 上の行はローカルネット内、下の行は自分自身からのアクセスを許可するようにIPアドレスを設定してまっしゅ。 あとは、一番下の http_access〜 の行で、プロキシサーバにアクセスできるIPアドレスを設定し、 それ以外はアクセス不許可(deny all)にしとけば、無断アクセスを防げます。 まぁ、一応ここまで設定したんだけど、ルータの8080ポート開けてないんで、大丈夫なんだが。^^; まっ、保険ということで。 ちなみに、acl〜 の行はVine標準のSquidだと1417行目付近に、http_access〜 の行は1466行目付近にあります。 さて、サーバ側の設定はすべて完了。 あとは、Squidを動かすだけです。(ちなみにワタシは今までずーっと止めてました) root で /etc/rc.d/init.d/squid start です。(再起動の場合はrestart)
27.2.クライアントの設定が終わったら、測ってみましょか♪

というわけで、サーバ側の設定の後は、クライアント側の設定です。
データ圧縮に対応したSSHクライアントソフトが必要なんだけど、TTSSHでもバッチリ使えます。
とりあえず、日本語化した段階で話を進めていくので、日本語化したTeraTerm+TTSSHをインストールしといてください。
(各ソフトのダウンロード先は、前回を参考にしてください)
この設定は楽チンです。
[設定]→[SSH...]を選んで、圧縮レベルってところを[最高]にしとけば良いです。

圧縮レベルは[最高]に

デフォルトだと、[なし]になってると思うんで。
で、あとは先ほど設定した8080ポートをフォワードさせればOK。

8080ポートをフォワード

[設定]→[SSH転送]で、ローカルの8080ポートをashiyu.no-ip.com の8080ポートへ転送しませう。
あとは、いつも通りTTSSHを立ち上げれば、サーバにアクセスしている間はデータ圧縮転送が可能です。
IEだろうがネスケだろうが、プロキシサーバの設定をすれば、すべて完了だす。
使用するプロキシのアドレスは 127.0.0.1 、ポートは 8080 です。

さて、設定完了したところで、どれだけ速度アップされるかテストしてみましょー!!
いろんな速度測定サイトがありますが、今回はOSO's Modem Site を利用させていただきました。
まずは、結果をご覧くださいませ。


データ圧縮前
データ圧縮前(160K)データ圧縮前(500K)データ圧縮前(1000K)
 

データ圧縮後
データ圧縮後(160K)データ圧縮後(500K)データ圧縮後(1000K)
とりあえず、160KB、500KB、1000KBの3種類を試してみました。 比較的回線が空いている時間に試したので、データ圧縮前の場合でもAirH”の上限に近い速度が出ております。 しかし、データ圧縮後はデータ圧縮前と比較して、平均すると約1.8倍もの向上が見られました。 ていうか、32Kの限界を超えてるっつうの。 凄すぎます。 といっても、データ圧縮して送っているので、データの種類によってはレスポンスは大分違ってきます。 テキストが多いサイトなどは効果を発揮するんだけど、画像(JPEGとかGIF)を多用しているページだと、イマイチだとか。 それでも、Webサーフィン(死語だな…)の快適度は間違いなくアップしました。(2倍ぐらいは速く感じる) しかし、TTSSHのバグ?なのかどーなのかよくわからないんだけど、たま〜に『ローカルポートが閉じられました』とかメッセージが出ることがある。 特に影響は無いので、放っておいて構わんと思うが。 それにしても、凄い快適になったんだけど、残念?ながら川崎常駐も終了してしまい、快適AirH”生活はほとんど有効活用する間も無かったっす。 もっと早めからやっときゃ良かったなぁ〜。

管理人の戯言トップ | ホームに戻る |

webmaster@ashiyu.net