REX-WIFIUSB1を探る(USB-LAN増設編)

 rootになれば何でもできる!とOpenWrt通(自称)の主は意気込んでいたのですが、 REX-WIFIUSB1にOpenWrtを入れるのはやめました。技量がない&REX-WIFIUSB1に入っている商用版のntfsとexfatのドライバが勿体ない(もちろん、OpenWrtでは動きませんでしたw)。というわけで、どうやってREX-WIFIUSB1を機能アップするか!が課題となります。

 ネットを徘徊していたらRT5350のSDKを手に入れました。そしてクロスコンパイラ込のRT288x_SDKも手に入ってしまいました(情報元はここ、でも前者はまぁ信頼できるが後者のSDKのリンクは怪しいサイトなので最後にまとめておいておきますわ)。3年くらい前にRT5350を遊び尽くしているとは、やっぱり周回遅れな主ですw。そら2chもメルコ一色になるわな

 さてやる気を戻して、GPLかなんかに従って開示されているんだよなSDK、英語読めないけどそんな風に書いてあるよな、と自分に言い聞かせてユーザマニュアルを見てみるとUSB Ethernetが使えるようになるではないですか。というわけで、さっそくやって見ました。最初はushareを入れるつもりだったのですがw。

image

 

1.開発環境

 RT5350のSDKとRT288XのSDKをインストールします。5350のSDKを適当に展開して、クロスコンパイラ等はは5350SDKの中にあるユーザマニュアル33ページを参照してぶち込みます。主はVMWare+CentOs6.5にぶち込みました。

2.USB-LANドライバの作成

 ユーザマニュアル99ページ参照。

 ①make menuconfig実行

 OpenWrtの時と同じ様なメニューが出てきます。Custmize Kernel Settingsを選択して一旦Exitします。

image

 
 ②LANドライバの選択

 つらつらとコマンドが流れて再びメニューが出ます。ここでユーザマニュアル99ページに従いMマークを付けます。

image

 ちなみに手元にあるUSB-LANアダプタはグリーンハウスのやつ

イメージこいつUSB-LANの中ではメジャーなASIXのチップでした。

 ③make実行

 最初OpenWrtのtoolchainを入れようと思った主には信じられないほど簡単にmakeが走りますw。autoconf.hが無いというエラーがでましたがmakeを実行したディレクトリにあったのでそれをコピーしました。主はlzmaを入れてていないのでいつもそこでエラー終了しますが、romfsの下にドライバーが生成されますので問題なしです。

image

他にもいろいろなドライバが生成できそうで楽しみです。

 

2.REX-WIFIUSB1への導入

2.1 REX-WIFIUSB1のファイルシステム

 ROMとRAMしかないという、OpenWrtをやってきた身としてはいやらしいファイルシステムです。

image

 /etcだけは再起動前にmtd7にバックアップ、起動時にそれを読み込むみたいです。仕方ないのでUSBハブ(セルフパワー)を増設し、システム補助用のUSBメモリ(Candoで買った100円(税抜き)カードリーダー)とUSB-LANを接続しています。

 ちなみに、Web管理画面での再起動は/etcの中身が保存されますが、コマンドでやろうとすると、etc_tools pで保存してreboot –fで行けると思います。

image

 その他、USBに差すと勝手にマウントされる元凶の/etc/udev/scriptからadd_usb_storage.shをmvしています。

2.2 REX-WIFIUSB1への導入

 というわけで、増設したUSBメモリ(システム用)をSwapとデータに分けて、そして面倒なのでrc.localの末尾に起動コマンドを全部入れましたw。後で整理しますw。

image

imageext3はなぜかmountできませんでした

USB-LANも認識されています

image

 

3.性能向上

 さてお楽しみのベンチマークですUSBメモリ(ソフマップで1100円)をNTFSでフォーマットしてSamba共有書き込み実施!。

3.1 書き込み性能(NTFS)

image

5MB/sという数字、初めて見ました、感動。でもそんなに都合のいい話ばかりではなくwriteのキャッシュがいっぱいになると3MB/sに頻繁に落ち(グラフの波線)、Swapが発生したりするとさらに速度が落ちます。topコマンドで見ているとpdflushが頻繁に起動しています。

image

しかし、同じ環境でwifi接続(130M~150Mbps)で比べても十分高速であります。

image

 

3.2 読み込み性能(NTFS)

 ある意味キャッシュのごまかしが効きにくい読み込み性能が本来のものと言えます。

image

ちなみにwifiだと

image

なので有線LAN(100Mbps)の方が無線(802.11.n)よりも速いみたいです。暗号化とかの負荷が多いのでしょうか?

3.3 exFATの問題点

 負荷が軽いexFATが本命と思っていたのですが、REX-WIFIUSB1のドライバに問題がありそうです。大きなファイルをコピーすると

image

途中から転送速度が半減します。topコマンドで見ていた限りではwriteのキャッシュが効かなくなり同期モードで動いている(Idole時間が多い)になります。同じ事象はwifi接続でも発生します。

image

NTFSでは転送速度がSwap等で低下しても復帰しますのでexFATドライバ特有の現象ではないかと思われます。

 

4.結論

  REX-WIFIUSB1にUSB-LANとUSBメモリを接続しているため、USBの負荷が高く、mipsではいっぱいいっぱいな感じです(最大2.5wじゃ仕方ない)。多分、Nexx WT1520の純正ファームにREX-WIFIUSB1のNTFSドライバ(TUXERAの商用NTFSドライバ)を組み込んで使うのが最速だと推測されます。Nexx WT1520は純正ファームに戻せないので検証できませんがw。

#とりあえず、怪しいものを置いておきますw。
UDFドライバを動かして、寝ながらスマフォでエロDVD-PGが今の目標ですw。

広告
カテゴリー: 20世紀プログラマ, コンピューターとインターネット タグ: , パーマリンク

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中