1. ホーム(Home) > 
  2. 製品情報 > 
  3. NQ

Products

ファイル共有ミドルウェア

異なるOS間で共有フォルダにアクセスしたい場合、双方のOS上にファイル共有機能を実装する必要があります。
WindowsにはSMBというMicrosoft社が中心に仕様策定しているファイル共有機能が実装されており、Windows同士であれば、このSMB機能を用いてファイル共有が実現できます。
このSMB機能は仕様がオープンになっているため、Windows以外のOSにも実装されています。Apple社が開発しているMac OS(v10.7以降)にも実装されており、Mac OS同士はもちろん、Windows−Mac OS間でもファイル共有の実現が可能です。
また、Linuxの世界にはSAMBAというオープンソースのSMBがあります。SAMBAを実装すれば、Linux上でもファイル共有機能が実現できますが、SAMBA v3.2以降はGPL ver.3に該当するため、商用利用する際は、以前のGPLの制約に加え、新しい特許条項等にも対応が必要となります。
こういったGPL ver.3の制約を回避するには、SMBを独自開発し実装するか、商用のSMBを購入し実装するかを選ぶことになりますが、商用のSMBを開発・販売している企業は非常に少なく、現在ではVisuality Systems社の「NQ™」だけが、事実上利用可能な唯一の商用SMB実装となっています。
では、Visuality Systems社の「NQ™」とは、どのような製品なのでしょうか?

NQ™の4つの特徴

NQ™には、「高い移植性」、「省リソース設計」、「設定の柔軟性」そして「高い相互接続性」といった、主に4つの特徴があります。

高い移植性

NQ™はVxWorks、Linux、iOS、Android、iTron、μcLinux、Windows CE等、既に様々なOS上での動作実績があります。
NQ™はコア部分と移植レイヤー部分が完全に独立した設計になっており、それぞれのOSに合わせて移植レイヤーを変更するだけで、様々なOSに移植できます。

  • 注)VxWorks、Linux、Windows CE以外のOSへは、お客様自身での実装が必要となります。また、使用するOS及びネットワークスタックにはいくつかの要件がありますので、詳細はお問合せください。
図:高い移植性

省リソース設計

一般的に組込み機器の世界ではリソースに対する制限が厳しいため、NQ™では開発当初より「省リソース設計」に重点を置いています。
例:VxWorks上にNQ™を実装した場合、RAM/ROMサイズは約数百KB程度。(詳細なデータをご希望の場合はお問合せ下さい)

設定の柔軟性

NQ™は、実際のターゲットの機能要求に合わせて、様々な設定変更が可能です。
Windowsにはクライアント機能・サーバ機能の両方が標準で実装されていますが、NQ™はクライアント機能のみ、サーバ機能のみ、或いは両方といったように、お客様のニーズに合わせて実装することが可能です。
また、「ホスト名ではなく、IPアドレスで直接接続したい」という場合には、NetBIOSを外し、ROM/RAMサイズをより小さくすることも可能です。
その他にも、同時接続数、DFSの有無、SMB署名のレベル、ポート番号の使用優先度といった様々な設定変更が可能です。

高い相互接続性

既に市場には、NQ™を搭載した製品が数多くリリースされています。そのため、機器間での相互接続性を担保することは、NQ™にとって大きな課題です。
Visuality Systems社では新バージョンのリリースごとに、市場にある数十種類のSMB実装に対して、数千項目の相互接続試験を行い、接続に関する問題に対処しています。
新しい製品が市場に投入され、新たな接続の問題が出た場合は、お客様の協力を得ながら問題を分析し、SMB仕様の範囲内で解決策を提案しています。


NQ™の主な機能

次に、NQ™の主な機能について説明します。

  • NQ™には、サーバ機能とクライアント機能があり、サーバ機能の中には、「ファイルサーバ機能」と「プリントサーバ機能」があります。
  • NQ™は、SMB1.0と2.1に対応しており、2014年 7月にリリースした「NQE」製品では、SMB3.0のSMB Encryption機能にも対応しています。(2015年末にリリース予定の「NQ™8.0」では、更なるSMB3.0機能対応が行われる予定です。)
  • NQ™は、IPv4とIPv6のネットワーク環境、或いは混在するネットワーク環境にも対応しており、またクライアント機能、サーバ機能共に、ドメインのメンバーとして、ドメインへの参加が可能です。
    • ※ NQ™は、DFSサポート(NQ™にはLDAPモジュールは含まれていません。)
  • NQ™は、Unicodeファイルシステムに対応していますので、日本語を含め全ての言語に対応可能です。
  • NQ™は、以下の認証・署名・暗号化機能をサポートしています。
    LM、NTLM、LMv2、NTLMv2、NTLMSSP、SPNEGO、Kerberos(※)
    • ※ NQ™はKerberos (Heimdal/MIT実装)を使用するためのAPIを提供します。
      Kerberosモジュール本体は含まれていませんので、外部モジュールを使用する必要があります。
  • 名前解決機能としては、NetBIOS、WINS、DNS、LLMNRの4つをサポートしています。(NQ™ 8.0からは、マスターブラウザー機能もサポート予定。)

NQ™の使用イメージ

次にNQ™の使い方について説明します。
まずサーバ機能ですが、サーバ機能用のタスクを立ち上げたあと、公開したいフォルダを追加するだけです。
クライアント機能の使い方については、実際のソースコードを使って説明します。こちらはVxWorks上でのコードになります。
仮に「HOST-PC」という名前のPCがあり、その中に「Shared」という共有フォルダがあるとします。この共有フォルダを「AddMount」というAPIを使って「MPOINT]というマウントポイントにマウントします。この処理により、VxWorks上で「/net/MPOINT」という名前のフォルダが作られます。
あとはローカルフォルダのファイルを扱うのと同様、opendir, closedir, open、read、write、closeといったAPIを使って、MPOINTフォルダ及びフォルダ内のファイルに対して様々な操作を行うことが可能です。

図:VxWorksでの使用イメージ

Sambaとの比較

NQ™とSAMBAを比較した場合、一番大きな違いはそのライセンス形態です。
SAMBAはGPL ver.3というライセンス形態のため、SAMBAのコードを変更して使用した場合、その変更したコードをそのまま公開する義務があります。更にSAMBAベースで開発したアプリなどの二次著作物についても、公開の義務があります。
それに対してNQ™は完全商用ライセンスのため、このような義務は一切生じません。
次にサポートの有無が挙げられます。
SAMBAはオープンソースなので、誰かが責任をもってサポートしてくれる訳ではありません。一方NQ™は完全商用ソフトウェアなので、開発元のVisuality Systems社より、ソフトウェアに関する技術サポート、不具合対応(Windows、Mac OS X、SAMBAなどのOS側のSMBバージョン変更による不整合があった場合の対応も含む)、お客様の機能拡張要求への対応といった、完全なサポートが提供されます。
日本国内では、アイティアクセス株式会社が窓口として、日本語でのサポートを提供しています。
NQ™はSAMBAより省リソースである点も、もう一つの重要なポイントです。


NQ™の応用事例

NQ™が実際にどの様な分野で、どの様に使われているかについて簡単に説明してみましょう。

MFP(マルチ・ファンクション・プリンタ)

NQ™のプリンタサーバ機能を使って、PCから印刷するデータをSMBプロトコル経由でMFPに送ります。
MFPにはファックスやスキャナが付いているため、NQ™クライアント機能を使って、MFPでスキャンしたデータを自分のPCやファイルサーバにアップロードしたり、MFPで受信したファックスのデータを、ファイルサーバにアップロードしたりする事も可能です。
また最近では、iOS上でNQ™クライアント機能を使用し、PCやファイルサーバからiPhoneやiPadに持ってきたデータをプリンタに送って印刷する、といった使い方もポピュラーになってきています。

デジタルカメラ

最近のデジタルカメラには、Wi-Fi機能が搭載されているものがあります。NQ™のクライアント機能をこのようなカメラに搭載すると、写真やビデオデータの自動バックアップが可能になります。
外で撮影し、家に帰ってから充電を開始すると、自動的に今日撮った写真が自分のPCにアップロードされます。この機能は、特に上級ユーザに良く使われているようです。

医療機器

電子カルテが使用可能になったのはもう十年ほど前ですが、ここ二、三年でやっと医療機器もネットワークに繋がる様になってきました。
以下はNQ™が搭載されている、(株)トプコン様の検眼器です。
この機器で患者の目の写真を撮影すると、その画像データはすぐにネットワーク経由で電子カルテシステムのサーバに送信されます。このデータは、診察室のPC上の電子カルテシステムに瞬時に反映されるので、医師は効率的に診察を行うことができます。

FA機器

NQ™は、C言語コントローラ、画像による検査機器等に搭載されています。

航空宇宙防衛

最新鋭の戦闘機・偵察機に、NQ™が搭載されています。以下は実際の使用例です。
使用例1:戦闘機
ミッションに出発する前に、基地内のサーバから、機内のメイン・コンピュータにターゲットエリアの膨大な地図データを転送する必要があるため、NQ™が使用されています。また、ターゲットエリア上空では、メイン・コンピュータからパイロットのコントロール画面に地図データを転送する際にもNQ™が使用されています。
膨大なデータを素早く転送する手段として、ミッション・クリティカルな場面でも、NQ™は採用されています。
使用例2:偵察機
基地に戻り、ミッション中に撮影した膨大な画像データを基地内のファイルサーバにアップロードする際に、NQ™が使用されています。

この様に、NQ™は航空宇宙、FA、医療機器、プリンタやルータや、更にはスマートデバイスなど、様々な分野で採用されています。

Visuality Systems社とは

NQ™開発元である、イスラエル企業。1998年の設立と同時にNQ™の開発に着手し、4年の歳月をかけて2002年に初版をリリース。
その後順調にシェアを拡大し、現在では世界随一の、SMB分野におけるリーディング・カンパニー。


製品情報
アプリケーション/サービス
ミドルウェア
Codec規格適合性検証ツール
SoC向けVideo Codec HW IP
コンテンツ自動検査・品質評価ツール
ソフトウェアエンコーダ
組込みOS
開発環境
プラットフォーム
↑このページのトップ