Ottawa Linux Symposium3日目:NFS、USB、AppArmor、LSBの話題Linuxの最新動向が一目で分かる(2/5 ページ)

» 2006年07月31日 08時00分 公開
[David-'cdlu'-Graham,Open Tech Press]
SourceForge.JP Magazine

 キーチ氏によると、NFSバージョン2の評判が悪いのは、実装の詳細が意味のある仕様ではなくて主として古くからの伝統を受け継いだものになっているためだという。彼は、異なる実装の普及が原因となってクライアント/サーバの混乱につながる恐れのある性質の問題に言及している。

 開いているファイルのリネームや削除を行っても、そのファイルへの継続的書き込みを許すべきである。NFSバージョン2および3では、ファイルの削除またはリネームが興味深い結果をもたらすことがある、とキーチ氏は説明する。NFSバージョン4では、削除されたファイルをドットファイル(.nfs.xxxxxx)に変更するという「思慮の足らないリネーム」により、この問題が解決されている。ただし、このドットファイルも削除可能である。それ以上開かれることがない場合に限り、ドットファイルは削除される。

 NFSバージョン2および3では、1つのファイルへの同時アクセスを正しく処理できない、とキーチ氏は警告している。その結果が一意に定まらない可能性があるのだ。NFSバージョン4にもこの問題はあるが、厄介な事態になる恐れがあることをエラーメッセージで警告してくれる。

 NFSに固有のもう1つの問題はセキュリティが不十分な点である。クライアントマシンがNFSサーバ上のファイルにアクセスしようとしているユーザーのユーザーIDおよびグループIDをNFSサーバに通知すると、NFSサーバは、クライアントを完全に信用してこの情報を何の疑いも持たずに受け入れてしまう。長い間、数々の対処方法の提案および実装がされてきたが、実際に採用されたものはない。

 NFSには、ネットワークを飽和させてしまうという困った傾向もある。バージョン3以前のNFSのプロトコルは、完全にユーザーデータグラムプロトコル(UDP)ベースだった。UDPは、極度なビジー状態になるとネットワークがダウンする恐れのある、損失の多いプロトコルである。結論として何らかの輻輳回避の機能が必要だ、とキーチ氏は述べている。UDPには、より洗練された再送信機能が必要である。その解決策がTCPであり、現在、NFSバージョン4ではこれらを排他的に用いている。TCPは、パケットを確実に送信先に届け、パケット喪失時にのみ再送信を行う、ステートフルなネットワークプロトコルである。

 キーチ氏は、NFSに代わるさまざまなファイルシステムが存在することを述べ、自由に選択できるようにそれらをまとめていた。数多くの代替ファイルシステムとその簡単な説明の後、それぞれの利点と欠点を記した詳細な一覧が示された。

  • AFSの存続をはかる手段として、IBMはメンテナンスの継続ではなくオープンソース化の道を選んだ
  • DFSはOpen Groupが生み出したものだが、消滅しつつあるか完全に消滅したかのどちらかだ
  • CIFSは意外にも健全なネットワークファイルシステムである
  • Intermezzoはうまく設計されていたが、姿を消してしまった
  • Codaを開発したピーター・ブラーム氏は、その後、別のプロジェクトへの移管を行ったが、これも消滅したに等しい状態にある
  • Clusterファイルシステムは、多くの場合、NFS上またはCIFS上のどちらかに存在する
  • pNFSと呼ばれる、拡張機能付きNFSは、ファイルとメタデータを別々のサーバ上に保存する

 こうした一覧を示したキーチ氏は、そのうちの幾つかについてより詳しい説明を加えた。

 AFSを「安売り中のアンティーク(Antiques For Sale)」と呼ぶキーチ氏によると、このファイルシステムはメンテナンス状態にあるという。AFSはセキュリティ機能をKerberos 4に頼っている。コードそのものは、複数のプラットフォーム間での移植性を確保するために#ifdefステートメントだらけで、読みづらいものだ。また、相互運用性が低く、64ビットのプラットフォームでは機能しない。

 キーチ氏が「相互運用不能なファイルシステム(Cannot Interoperate File System)」と揶揄するCIFSは、ステートフルで、コネクションベースのネットワークファイルシステムである。彼はこのプロトコルをジャングルと表現し、とにかく「ひどい状態」にあるとしか言えない、と語った。CIFSの最大の問題は、Microsoftによって管理されていることであり、それが採用の大きな障害になっている、と彼は説明している。ユーザーが知りたがっているのは、それでも存続するのか、という点だと彼は補足した。

 「これで十分に満足できるのか(Now Fully Satisfactory?)」と自らが表現したNFSバージョン4について、キーチ氏は次のように述べている。NFSバージョン4は、多くの点が修正されたインターネット指向のファイルシステムである。Windowsとの相互運用性を備え、ファイアウォールとの相性がよい単一のポート(2049番)を用いているほか、別のポートを開いてしまうというコールバック処理のコードにあった欠陥もバージョン4.1では修正されている。NFSバージョン4はすっかりTCPに染まり、今やUDPは過去のものになってしまっている。

Copyright © 2010 OSDN Corporation, All Rights Reserved.

注目のテーマ