マシンスペックとスループット
Category : サーバ管理日記
Published by M-naka on 2005/2/12
オンボロの限界。
 実家のサーバ環境を再構築中(リモート作業)。

 先日、母親から録画を依頼された番組の録画ファイルをPPTP-VPN経由で実家にFTP転送を掛けたのだが、転送速度の余りの遅さに頓挫。こちらの上りは3.5Mbps程度、あちらの下りは1.5Mbps程度は出るハズなのだが、FTPで転送を掛けると300kbps程度しか速度が出ない。FTP over PPTP-VPNだと、経験上2割程度オーバーヘッドが発生するのは知っていたが、これは余りに速度が遅い。

 逆に帰省時にwww.mythril.ne.jp からFTP over PPTP-VPNでファイルをダウンロードすると、1Mbpsは余裕で出る。自宅から実家にファイルを転送するのは、実家でダウンロードをする動作とほぼ同じなので、回線環境がボトルネックである可能性は低い。問題があるとすればFTPサーバの設定とPPTP-VPNサーバのスペックだ。

 前者はローカル環境内でFTP転送を掛ければはっきりする。ファイアウォール(iptables)の設定は問題ないし、ローカル内なら速度は問題なく出る。とすると、残るはPPTP-VPNサーバのスペック、ということになる。

 如何せんMurasameはMMX-Pentiumの133MHzというオンボロマシンなので、CPU負荷の高いPPTP-VPNの暗号化/復号化処理をやらせるのはちょっと酷。スペックが原因と言えばそれまでだ。逆に言えば、PPTP-VPNで300kbps程度のスループットは出せる、ということだ。FTP転送を掛けるにはキツいが、SSH over PPTP-VPNでは全く問題ないし、VNCでOmoikaneをリモートデスクトップで操作するのにも十分使えている。要は用途ということだろう。

 というわけで、よい機会なのでPPTP-VPNサーバ機能をMurasameからOmoikaneに移行する。

 予めMPPE(Microsoft Point-to-Point Encryption)対応パッチを当てたカスタムカーネルにしてあるので、MPPE対応PPPとPPTPサーバ(PoPToP)をインストールし、実家のルータ兼ADSLモデムのポートフォワーディング設定を変えればOK。PPPとPoPToPはAmatsuで動作実績のある組み合わせのRPMパッケージをインストールした。ポートフォワーディング設定を変更してアクセスしてみると……。繋がらない。何でだー。

 ログを見ると認証で蹴られている。「MPPE required, but kernel has no support.」だと。うーん、パッチは当ててあるしMPPEモジュールはロードしてあるのだが……。調べてみると、PPTP-Clientのページに答えがあった。

either the kernel has no MPPE support, or this version of pppd is incompatible with the MPPE kernel module version you used. The most likely cause is using PPP 2.4.2 or later on a kernel that has an MPPE module built for PPP-MPPE 2.4.0 or 2.4.1.

 どうもMPPE対応カーネルモジュールが古く、現在のPPPに対応していない模様。確かに、AmatsuではMPPE/MPPC(Microsoft Point-to-Point Compression)対応の最新パッチを当ててあるのに対し、Omoikaneでは旧来の2.4系カーネル用パッチの延長にあるパッチファイル(2.6.0用)を当ててあった。これが原因らしい。

 OmoikaneはFedora Core 3でカーネルは2.6.9。対応するパッチをここで入手して当て、カーネルモジュールを再構築してインストールし直し。一応リブートを掛けてPPTPアクセスをしてみると……、成功! あっさり。

 すぐにFTP over PPTP-VPNでファイル転送を掛けてみると、1100kbps程度の転送速度が出ている。やはりサーバスペックが転送速度のボトルネックだった、ということになる。何にせよこれで実家とのデータのやり取りが快適になったので一安心である。