[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[connect24h:3765] Re: PC ルータ



In message <20020415145009.31794@xxxxxxxxxxxxx>
vm@xxxxxxxxxxxxxxxxxx wrote:
 >カーネルのコンフィギュレーションにおいて
 >・options NETGRAPH
 >・options NETGRAPH_PPPOE(任意)
 >・options NETGRAPH_SOCKET(任意)
 >のoptionを追加して、という話が有るのですが、OpenBSDで man options
 >してもこれらのoptionは無い様なのです。

OpenBSDを使ったことはないのですが、ソースツリーを眺めた限りでは、netgraphは
採用されていないようですね。(FreeBSDだけかな?)

 >また、pppoeのmanを引いてみても、最後の方に↓とあり、
 >  This is software runs completely in user mode. 
 >  As such it will have muchmore overhead than a kernel implementation.
 >  The service is not currently used by the server code.
 >このpppoeのコードを書かれた jason@xxxxxxxxxxx さんのページ、
 ><http://deep.thought.net/jason/pppoe/> を見ても、
 >This daemon uses ppp(8) and bpf(4) to create a PPP Over Ethernet 
 >connection.
 >とあって、本当にkernel modeで動かせるんだろうか?と
 >悩んでいた所だったのです。

この記述の通りならば、このpppoeはuser modeでの実装でしょう。

ether<-->bpf<-->pppoe(user mode)<-->ppp(user mode)<-->tun<-->IP stack

という流れだと思います。

ちなみにNetBSD-currentにはpseudo deviceとして動作するpppoeのkernel modeでの
実装があります。私の知っている範囲では、*BSDでpppoe、ppp共にkernel modeで動作
するのはこれだけです。

# FreeBSDのpppoeをppp(4)と組み合わせることができればkernel mode onlyになる
# けど、できるのかな?

 >自分のスキル等の無さを棚に上げる様ですが、素直にOS変えるか、
 >どこかの製品を買ってきた方が良いのかと思い始めております...。

PPPoE以前にパケット転送能力そのものの限界かもしれないので、当該マシンに
PCを二台繋いで(PPPとは関係なく)ローカルルータとして動作させてみて問題の
切り分けをしてみてはいかがでしょうか。

# CPUの負荷が50%程度であるならば、I/O回りなどのCPU以外の部分がボトルネック
# になっているような気もします。

 >OpenBSDのpppoeには -s や -p といったpppoeをserverとして
 >動かすのが前提のオプションが有る様なのでもう少し悩んでみます。

serverとして動くことと、kernel modeで動くことは別の概念です。
-- 
KOBAYASHI Yoshiaki

--[PR]------------------------------------------------------------------
   ●◎● AirH" FreeMLユーザーの皆様に特別価格でご提供 ●◎●
 さらに4月中にご契約頂いた方から抽選でPDA「hp Jornada548」をプレゼント
 
今がチャンス⇒ http://ad.freeml.com/cgi-bin/ad.cgi?id=aRGd1
------------------------------------------------------------------[PR]--
<GMO GROUP> Global Media Online  www.gmo.jp