EN JA
WL(4) (i386)
WL(4) FreeBSD Kernel Interfaces Manual (i386) WL(4)

名称

wlT1 スピード ISA/ラジオ LAN カード

書式

device wl0 at isa? port 0x300 irq 5

解説

wl ドライバは、NCR、次に ATT、現在 Lucent によってもとは作られたラジオ LAN カードシステムを制御します。システムは約 915MHz (または 2.4GHz) のスペクトル拡散のラジオです。供給された全方位アンテナで、約 400 フィート (屋内で、屋外はもっと) の周辺をカバーできます。このカードはコンパニオン (wlp0) pccard と通信することができます。速度は 1 メガビットから理論上 2 メガビットで変化します (大体速度 T1)。

カードは 3 つの基本的なハードウェアユニット、いわゆる PSA かプログラム可能な記憶域、ラジオモデム、イーサネット LAN コントローラを持っています。後のコンポーネントは古い (かつ、たいへん立派でない) Intel 82586 イーサネットチップです。基本的に、それはイーサネットシステムとしてオペレーティングシステムに現われて、 IEEE MAC アドレスを話します。ラジオモデムは、単にイーサネットパケットを、ラジオモデムに依存する 2.4GHz または 915MHz のいずれかであるラジオパケットに変換するか、またはラジオパケットから変換します。それはコリジョン (衝突) 防止スキームをサポートします。 LAN コントローラはプロミシャス (無差別) モード、ブロードキャスト (放送) とマルチキャスティング (しかしながら、後者に問題がありますが) をサポートします。 "それがイーサネットであると思います"。

それがどのように使用されるかは、それを配置したアンテナの種類に依存します。ポイントツーポイントアプリケーションはイーサネットのような LAN の使用であるように、可能です。ベンダは 400 フィート (屋内で) の周辺で動作する全方位アンテナを出荷します。ポイントツーポイントアンテナは購入することができます。

セットアップ (設定)

カードはベンダで初期化されるか、DOS セットアップソフトウエアを供給されるかのいずれかができます。一般的に、最小の IRQ、ポートとネットワーク ID は供給されなければなりません。今は、Michael Smith が作成した wlconfig(8) ユーティリティを UNIX 側からのこの仕事を行うために使用することができます。カードはプラグアンドプレイではありません。ネットワーク ID は、1 組のカードが別のものを聞くことができるかどうか制御します。違っている場合、カードは物理的なパケットを読み込みますが、それらはラジオモデムによって廃棄されます。

制御

config ユーティリティに加えて、ランタイムパラメータを修正するために使用することができるいくつかの sysctl スイッチがあります。 sysctl(8) 変数は次のとおりです。
machdep.wl_xmit_delay <useconds>
この変数は、ドライバに送信でディレイ (遅れ) を挿入させます。 250 がデフォルトです。ディレイ (遅れ) はたぶん速い CPU では少し長く、遅い CPU では少なくするべきです。 82586 が pentium 速度の CPU システムで動作するように設計されていなかったので、オーバドライブが大量の送信側のエラーを持つ場合、それは存在します。
machdep.wl_ignore_nwid <0 | 1>
このスイッチは自動的に 0 になります。すなわち、nwid は無視されません。 nwid を使用されないようにするために、それは 1 に設定できます。デバイスがすべてのパケットを観察し、nwid 差分を無視することができるようなプロミシャス (無差別) モードである場合、これは有用となります。
machdep.wl_xmit_watch <milliseconds>
このスイッチは現在使いものになりません。
machdep.wl_gather_snr <milliseconds>
このスイッチは現在使いものになりません。

また、ドライバには信号強度のキャッシュがあります。それは wlconfig(8) で問い合わせることができます。着信パケットは信号強度、静けさ、品質を含むあるハードウェアラジオモデム値がチェックされ、それぞれ、その範囲は 0 〜 63、0 〜 63、0 〜 15 です。したがって、どのように閉じるか見るため、遠くのピアノードを見るために信号強度値を読み込むことができます。信号強度のキャッシュは送信機の MAC アドレスによってインデックス付けられます。どのようにパケットをフィルタするかを変更する 2 つの sysctls があります。両方はデフォルトではオンです。

machdep.wl_wlcache_mcastonly <0 | 1>
デフォルトでは、このスイッチはオンです。それは、ユニキャストパケットをフィルタするキャッシュを強制します。単にブロードキャスト (放送) かマルチキャストパケットは受信されます。
machdep.wl_wlcache_iponly <0 | 1>
デフォルトでは、このスイッチはオンです。それは、非 IP パケットを廃棄することをドライバに強制して、さらに、IP ソースアドレスを格納します。 IPv4 パケットがなければ他のネットワークプロトコルであるかのように、 ARP パケットは無視されます。

関連項目

sysctl(8), wlconfig(8)

http://www.wavelan.com

歴史

wl ドライバは、(数千年前に ?) Anders Klemets によって書かれ、さらに古い Intel 82586 ドライバに基づいて登場しました。 82586 コントローラはブロック上の最初の (最初とは言わないまでも ?) 統合 LAN コントローラのうちの 1 つでした。それは、最上というわけではありません。 Anders が移植し、そして ISA wavelan のためのドライバと PCCARD wavelan システムのためのドライバ (wlp) もまた作成しました。 Robert T. Morris, Jr. は、BSDI に Mach ドライバを移植しました。 Jim Binkley は、 FreeBSD 2.1 にそれらを移植しました。 Michael Smith は、2.2.2 にだけ wl ドライバを移植しました。 Jim と Michael はそれらをメンテナンスしていました。ドライバの現状は NOT ANYONE'S FAULT (誰にも分からない失敗はない) です。寄贈してくれた Bernie DoehnerRobert Buaas に感謝します。

作者

記載するにはあまりにも多数です。上記を参照してください。

警告

82586 は多数の欠陥があります。現在のより速い CPU がそれが扱えるより速くパケットを送る場合、それは送信側のエラーを経験するかもしれません。ドライバ (おそらくチップも) はすべてのマルチキャストモードをサポートしません、結果として、それは mrouted(8) ( ports/net/mrouted) のようなアプリケーションで使用することができますが、それが動作するためにプロミシャス (無差別) モードに入らなければなりません。ドライバは、たぶん設定コードのディレイ (遅れ) のために "普通"からプロミシャス (無差別) モードまでモードをゆっくり変更します。
September 29, 2006 FreeBSD