注目の書籍

好評発売中!

知識ゼロから始めるLinuxサーバーの作り方

Linux初心者でも
本格 サーバーが“即席”で 完成!自宅サーバー
クラウド化も!

必聴講座ご紹介

Cloud Days Tokyo 2012
クラウド時代を勝ち抜く企業戦略を考える

エムオーテックス


Cloud Days Tokyo 2012
クラウド時代の企業インフラとユーザー環境の姿

ヴイエムウェア


Cloud Days Osaka 2012
クラウドでIT維新を〜ビジネスを加速させるベストプラクティス

アマゾン データ サービス ジャパン

オープンソース/Linux

Linuxチューニング

日経Linux

第1部
第5回 ネットワークのチューニング

2008/06/09
出典:日経Linux 2003年4月号  43ページより
(記事は執筆時の情報に基づいており、現在では異なる場合があります)

PPPoE接続処理の向上

 FTTPやADSL接続サービス(以下,ADSL)において,データリンク層プロトコルとして広く利用されているのが,PPPoE(PPP over Ethernet)。PPPoEは,Ethernet経由でPPPを利用できるようにするため,プロトコルである。

 Linuxでは,カナダRoaring Penguin Software社が提供する「RP-PPPoE」というPPPoE接続ソフトウエアを利用して手軽にADSLを利用できる。多くのディストリビューションでは標準でRP-PPPoEが添付されるため,その設定を行うだけでADSL接続が行える。

 RP-PPPoEには導入や設定が容易という利点があるが,ユーザー空間で動作するドライバであるため処理速度の面で若干問題がある。RP-PPPoE が遅いのは,ドライバが処理するデータがユーザー空間とカーネル空間の間で頻繁にコピーされるためである。ドライバをカーネル空間で動作させることができれば,こうした“無駄”なコピーは発生せず,結果としてより高速な実効通信速度が得られる。

 RP-PPPoEも設定次第でカーネル空間で動作させられる。カーネル空間で動作させた場合の性能向上は著しく,1.5〜2Mビット/秒の実行速度しか出なかったi486DX4搭載のノートPCで作ったルーターでもカーネル空間で動かせば,4.5〜5Mビット/秒の実効通信速度が得られた。

カーネル設定とソフトの導入

 RP-PPPoEをカーネル空間で動作させるには,図1の設定項目を有効にしてビルドしたバージョン2.4以降のLinuxカーネルが必要である。図1で有効にしたドライバ用の設定(図2)を/etc/modules.confファイルに追加し,ドライバが利用するデバイス・ファイルも以下のようにmknodコマンドで作成する。

# mknod --mode=664 /dev/ppp c 108 0

図1●カーネル空間ドライバに必要なカーネル設定項目
図1●カーネル空間ドライバに必要なカーネル設定項目

alias char-major-108 ppp_generic
alias tty-ldisc-3 ppp_async
alias tty-ldisc-13 n_hdlc
alias tty-ldisc-14 ppp_synctty
alias net-pf-24 pppoe
図2●/etc/modules.confファイルに追加する設定
次ページ以降はITpro会員(無料)の方のみお読みいただけます。
会員の方は、 ログインしてご覧ください。
まだ会員でない方は、ぜひ登録(無料)していただき、ITproの豊富なコンテンツをご覧ください。

この記事に対するfacebookコメント

nikkeibpITpro

読みましたか? 〜 未読記事をご紹介