(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-18
(45)【発行日】2024-03-27
(54)【発明の名称】論理ネットワーク構築システム、コントローラ及び論理ネットワーク構築方法
(51)【国際特許分類】
H04L 12/66 20060101AFI20240319BHJP
H04L 65/1069 20220101ALI20240319BHJP
【FI】
H04L12/66
H04L65/1069
(21)【出願番号】P 2022508057
(86)(22)【出願日】2020-12-10
(86)【国際出願番号】 JP2020046061
(87)【国際公開番号】W WO2021186810
(87)【国際公開日】2021-09-23
【審査請求日】2022-07-22
(31)【優先権主張番号】P 2020046027
(32)【優先日】2020-03-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】藏本 真弥
【審査官】鈴木 香苗
(56)【参考文献】
【文献】特開2019-201428(JP,A)
【文献】特開2017-216526(JP,A)
【文献】特開2012-114714(JP,A)
【文献】特開2011-061874(JP,A)
【文献】米国特許第06578087(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/66
H04L 65/1069
(57)【特許請求の範囲】
【請求項1】
ネットワークに接続され、当該ネットワークを介して互いに通信する第1ゲートウェイ装置、第2ゲートウェイ装置及びコントローラと、
前記第1ゲートウェイ装置が有する第1ポートに接続され、前記第1ゲートウェイ装置と通信する送信元デバイスと、
前記第2ゲートウェイ装置が有する第2ポートに接続され、前記第2ゲートウェイ装置と通信する宛先デバイスと、
全体デバイス接続リスト及び全体経路定義リストが記憶された記憶部と、を備え、
前記全体デバイス接続リストには、前記送信元デバイスが接続している前記第1ゲートウェイ装置及び前記宛先デバイスが接続している前記第2ゲートウェイ装置を特定するための接続情報が登録され、
前記全体経路定義リストには、前記送信元デバイスが通信すべき前記宛先デバイスを特定するための情報が登録され、
前記コントローラは、前記全体デバイス接続リスト及び前記全体経路定義リストに基づいて、前記第1ゲートウェイ装置の前記第1ポートに接続された前記送信元デバイスと前記第2ゲートウェイ装置の前記第2ポートに接続された前記宛先デバイスとが通信を行うための論理ネットワークを構築する論理ネットワーク構築システム。
【請求項2】
前記全体デバイス接続リストには、前記第1ゲートウェイ装置のゲートウェイ識別子と前記第1ポートのポート識別子と前記送信元デバイスのデバイス識別子とが対応付けて登録され、かつ、前記第2ゲートウェイ装置のゲートウェイ識別子と前記第2ポートのポート識別子と前記宛先デバイスのデバイス識別子とが対応付けて登録され、
前記全体経路定義リストには、前記送信元デバイスの識別子と前記宛先デバイスの識別子とが対応づけて登録される請求項1に記載の論理ネットワーク構築システム。
【請求項3】
前記第1ゲートウェイ装置は、第1デバイス接続リスト及び第1経路定義リストが記憶された記憶部を備え、
前記第2ゲートウェイ装置は、第2デバイス接続リスト及び第2経路定義リストが記憶された記憶部を備え、
前記コントローラは、前記論理ネットワークを構築する旨の指示を、前記第1ゲートウェイ装置及び前記第2ゲートウェイ装置に送信し、
前記第1経路定義リストには、前記指示を受信した前記第1ゲートウェイ装置により、前記送信元デバイスのデバイス識別子と前記宛先デバイスのデバイス識別子と転送先ゲートウェイ装置である前記第2ゲートウェイ装置のネットワークアドレスとが対応づけて登録され、
前記第2経路定義リストには、前記指示を受信した前記第2ゲートウェイ装置により、転送元ゲートウェイ装置である前記第1ゲートウェイ装置のネットワークアドレスと前記宛先デバイスのデバイス識別子とが対応づけて登録され、
前記第1デバイス接続リストには、前記第1ゲートウェイ装置により、前記第1ポートのポート識別子と前記送信元デバイスのデバイス識別子とが対応づけて登録され、
前記第2デバイス接続リストには、前記第2ゲートウェイ装置により、前記第2ポートのポート識別子と前記宛先デバイスのデバイス識別子とが対応づけて登録され、
前記第1ゲートウェイ装置は、前記第1デバイス接続リスト及び前記第1経路定義リストを参照することにより転送先ゲートウェイ装置である前記第2ゲートウェイ装置を特定し、前記送信元デバイスと前記第1ゲートウェイ装置との間の通信を、当該特定された転送先ゲートウェイ装置である前記第2ゲートウェイ装置に転送し、
前記第2ゲートウェイ装置は、前記第2デバイス接続リスト及び前記第2経路定義リストを参照することにより前記宛先デバイスを特定し、前記第1ゲートウェイ装置から転送される通信を、当該特定された前記宛先デバイスに送信する請求項1又は2に記載の論理ネットワーク構築システム。
【請求項4】
前記第1デバイス接続リストに登録される前記送信元デバイスの識別子は、前記送信元デバイスと前記第1ゲートウェイ装置との間の所定プロトコルによる通信から取得され、
前記第2デバイス接続リストに登録される前記宛先デバイスの識別子は、前記宛先デバイスと前記第2ゲートウェイ装置との間の所定プロトコルによる通信から取得される請求項3に記載の論理ネットワーク構築システム。
【請求項5】
前記全体デバイス接続リストに登録される、前記第1ゲートウェイ装置のゲートウェイ識別子、前記第1ポートのポート識別子及び前記送信元デバイスのデバイス識別子は、前記第1ゲートウェイ装置から取得され、
前記全体デバイス接続リストに登録される、前記第2ゲートウェイ装置のゲートウェイ識別子、前記第2ポートのポート識別子及び前記宛先デバイスのデバイス識別子は、前記第2ゲートウェイ装置から取得される請求項1から4のいずれか1項に記載の論理ネットワーク構築システム。
【請求項6】
送信元デバイスが接続している第1ゲートウェイ装置及び宛先デバイスが接続している第2ゲートウェイ装置を特定するための接続情報が登録される全体デバイス接続リストと、前記送信元デバイスが通信すべき前記宛先デバイスを特定するための情報が登録される全体経路定義リストと、が記憶された記憶部を備え、
前記全体デバイス接続リスト及び前記全体経路定義リストに基づいて、前記第1ゲートウェイ
装置の第1ポートに接続された前記送信元デバイスと前記第2ゲートウェイ
装置の第2ポートに接続された前記宛先デバイスとが通信を行うための論理ネットワークを構築する指示を、前記第1ゲートウェイ装置及び前記第2ゲートウェイ装置に送信するコントローラ。
【請求項7】
前記全体デバイス接続リストには、前記第1ゲートウェイ装置のゲートウェイ識別子と前記第1ポートのポート識別子と前記送信元デバイスのデバイス識別子とが対応付けて登録され、かつ、前記第2ゲートウェイ装置のゲートウェイ識別子と前記第2ポートのポート識別子と前記宛先デバイスのデバイス識別子とが対応付けて登録され、
前記全体経路定義リストには、前記送信元デバイスの識別子と前記宛先デバイスの識別子とが対応づけて登録される請求項
6に記載のコントローラ。
【請求項8】
請求項6に記載のコントローラが、前記全体デバイス接続リスト、及び、
前記全体経路定義リストに基づいて、前記第1ゲートウェイ
装置の第1ポートに接続された前記送信元デバイスと前記第2ゲートウェイ
装置の第2ポートに接続された前記宛先デバイスとが通信を行うための論理ネットワークを構築する論理ネットワーク構築方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、論理ネットワーク構築システム、ゲートウェイ装置、コントローラ及び論理ネットワーク構築方法に関する。
【背景技術】
【0002】
ネットワークに接続し、接続要求を行ったデバイス(組み込み機器)からIDを取得し、この取得したIDに基づいて認証を行い、この認証が成功した場合、当該デバイスとネットワークに接続された別のデバイス(隔離デバイス)とが通信を行うネットワークシステムが知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1においては、ネットワークに接続され、互いに通信可能な複数のゲートウェイ装置のうち任意の二つのゲートウェイ装置にそれぞれデバイスを接続し、一方のゲートウェイ装置に接続されたデバイスと他方のゲートウェイ装置に接続されたデバイスとの間で通信を行うための仕組みについては全く提案されていない。
【0005】
本発明の目的は、上述した課題を鑑み、一方のゲートウェイ装置に接続されたデバイスと他方のゲートウェイ装置に接続されたデバイスとの間で通信を行うことができる論理ネットワーク構築システム、ゲートウェイ装置、コントローラ及び論理ネットワーク構築方法を提供することにある。
【課題を解決するための手段】
【0006】
本発明の論理ネットワーク構築システムは、ネットワークに接続され、当該ネットワークを介して互いに通信する第1ゲートウェイ装置、第2ゲートウェイ装置及びコントローラと、前記第1ゲートウェイ装置が有する第1ポートに接続され、前記第1ゲートウェイ装置と通信する送信元デバイスと、前記第2ゲートウェイ装置が有する第2ポートに接続され、前記第2ゲートウェイ装置と通信する宛先デバイスと、全体デバイス接続リスト及び全体経路定義リストが記憶された記憶部と、を備え、前記全体デバイス接続リストには、前記送信元デバイスが接続している前記第1ゲートウェイ装置及び前記宛先デバイスが接続している前記第2ゲートウェイ装置を特定するための接続情報が登録され、前記全体経路定義リストには、前記送信元デバイスが通信すべき前記宛先デバイスを特定するための情報が登録され、前記コントローラは、前記全体デバイス接続リスト及び前記全体経路定義リストに基づいて、前記第1ゲートウェイ装置の前記第1ポートに接続された前記送信元デバイスと前記第2ゲートウェイ装置の前記第2ポートに接続された前記宛先デバイスとが通信を行うための論理ネットワークを構築する。
【0007】
本発明のゲートウェイ装置は、送信元デバイスのデバイス識別子と宛先デバイスのデバイス識別子と転送先ゲートウェイ装置のネットワークアドレスとが対応づけて登録される第1経路定義リストと、第1ポートのポート識別子と送信元デバイスのデバイス識別子とが対応づけて登録される第1デバイス接続リストと、が記憶された記憶部を備え、前記第1経路定義リスト及び前記第1デバイス接続リストを参照することにより転送先ゲートウェイ装置を特定し、前記送信元デバイスと前記転送元ゲートウェイ装置との間の通信を、当該特定された転送先ゲートウェイ装置に転送する。
【0008】
本発明のコントローラは、送信元デバイスが接続している第1ゲートウェイ装置及び宛先デバイスが接続している第2ゲートウェイ装置を特定するための接続情報が登録される全体デバイス接続リストと、前記送信元デバイスが通信すべき前記宛先デバイスを特定するための情報が登録される全体経路定義リストと、が記憶された記憶部を備え、前記全体デバイス接続リスト及び前記全体経路定義リストに基づいて、前記第1ゲートウェイの第1ポートに接続された前記送信元デバイスと前記第2ゲートウェイの第2ポートに接続された前記宛先デバイスとが通信を行うための論理ネットワークを構築する指示を、前記第1ゲートウェイ装置及び前記第2ゲートウェイ装置に送信する。
【0009】
本発明の論理ネットワーク構築方法は、送信元デバイスが接続している第1ゲートウェイ装置及び宛先デバイスが接続している第2ゲートウェイ装置を特定するための接続情報が登録される全体デバイス接続リスト、及び、送信元デバイスが通信すべき宛先デバイスを特定するための情報が登録される経路定義リストに基づいて、前記第1ゲートウェイの第1ポートに接続された前記送信元デバイスと前記第2ゲートウェイの第2ポートに接続された前記宛先デバイスとが通信を行うための論理ネットワークを構築する。
【発明の効果】
【0010】
本発明により、一方のゲートウェイ装置に接続されたデバイスと他方のゲートウェイ装置に接続されたデバイスとの間で通信を行うことができる論理ネットワーク構築システム、ゲートウェイ装置、コントローラ及び論理ネットワーク構築方法を提供することができる。
【図面の簡単な説明】
【0011】
【
図1】論理ネットワーク構築システム1の概略構成図である。
【
図2】論理ネットワーク構築システム1の詳細構成図である。
【
図4】第1ゲートウェイ装置20Aの概略図である。
【
図5】第2ゲートウェイ装置20Bの概略図である。
【
図7】論理ネットワーク構築システム1の動作(第1デバイス10Aを第1ゲートウェイ装置20A(USBポートPU)に接続した場合の動作)の一例のフローチャートである。
【
図8】論理ネットワーク構築システム1の動作(第1ゲートウェイ装置20Aにおいて通信プロセス10-1が発生した(生成された)場合の動作)の一例のフローチャートである。
【
図9】論理ネットワーク構築システム1の動作(第1ゲートウェイ装置20Aにおいて通信プロセス10-1が発生した(生成された)場合の動作)の一例のフローチャートである。
【発明を実施するための形態】
【0012】
(実施形態1)
以下、本発明の実施形態1である論理ネットワーク構築システム1について添付図面を参照しながら説明する。各図において対応する構成要素には同一の符号が付され、重複する説明は省略される。
【0013】
まず、
図1を用いて、論理ネットワーク構築システム1の構成について説明する。
【0014】
図1は、論理ネットワーク構築システム1の概略構成図である。
【0015】
図1に示すように、論理ネットワーク構築システム1は、ネットワーク40に接続され、当該ネットワーク40を介して互いに通信する第1ゲートウェイ装置20A、第2ゲートウェイ装置20B及びコントローラ30と、第1ゲートウェイ装置20Aが有する第1ポートPU1に接続され、第1ゲートウェイ装置20Aと通信する送信元デバイス10Aと、第2ゲートウェイ装置20Bが有する第2ポートPU2に接続され、第2ゲートウェイ装置20Bと通信する宛先デバイス10Cと、全体デバイス接続リストL3及び全体経路定義リストL4が記憶された記憶部31と、を備えている。
【0016】
全体デバイス接続リストL3には、送信元デバイス10Aが接続している第1ゲートウェイ装置20A及び宛先デバイス10Cが接続している第2ゲートウェイ装置20Bを特定するための接続情報が登録されている。また、全体経路定義リストL4には、送信元デバイス10Aが通信すべき宛先デバイス10Cを特定するための情報が登録されている。
【0017】
コントローラ30は、全体デバイス接続リストL3及び全体経路定義リストL4に基づいて、第1ゲートウェイ装置20Aの第1ポートPU1に接続された送信元デバイス10Aと第2ゲートウェイ装置20Bの第2ポートPU2に接続された宛先デバイス10Cとが通信を行うための論理ネットワークを構築する。
【0018】
実施形態1によれば、一方の第1ゲートウェイ装置20Aに接続された送信元デバイス10Aと他方の第2ゲートウェイ装置20Bに接続された宛先デバイス10Cとの間で通信を行うことができる。
【0019】
(実施形態2)
以下、本発明の実施形態2として、論理ネットワーク構築システム1についてさらに詳細に説明する。システムとは、ネットワークを経由して様々な機器が接続し情報やサービスを活用する仕組みの総称である。
【0020】
図2は、論理ネットワーク構築システム1の詳細構成図である。
【0021】
図2に示すように、論理ネットワーク構築システム1は、第1~第3デバイス10A~10Cと、第1デバイス10Aが接続する第1ゲートウェイ装置20Aと、第2デバイス10B及び第3デバイス10Cが接続する第2ゲートウェイ装置20Bと、コントローラ30と、IP通信部40(例えば、IPネットワーク等のネットワーク)と、を備えている。第1ゲートウェイ装置20A、第2ゲートウェイ装置20B及びコントローラ30は、IP通信部40に接続されており、IP通信部40を介して互いに通信することができる。
【0022】
論理ネットワーク構築システム1においては、デバイス10A~10Cをいずれかのゲートウェイ装置20A、20Bに接続するだけで、接続箇所を気にすることなく、自動的に適切な論理ネットワークを構築することができる。
【0023】
まず、第1~第3デバイス10A~10Cの構成例について説明する。
【0024】
【0025】
第1~第3デバイス10A~10Cの構成は共通しているため、以下、第1~第3デバイス10A~10Cを区別しない場合、単にデバイス10と記載する。
【0026】
デバイス10は、ゲートウェイ装置20に接続することでシステムに繋がる機器の総称である。例えば、センサ、組み込み機器、スマホ、パソコン、サーバ等の機器が該当する。デバイス10は、ゲートウェイ装置20に接続するための機構(Ethernet,Wi-Fi,Bluetooth(登録商標),USB等)を有する。
【0027】
デバイス10は、例えば、USBデバイスである。例えば、第1デバイス10Aは、計測器としての機能を有するUSBデバイスである。また、例えば、第3デバイス10Cは、第1デバイス10Aにより計測された計測情報の保存と表示を行うUSBデバイスである。
【0028】
図3に示すように、デバイス10は、ゲートウェイ装置20(USBポートPU)に接続されるUSBコネクタCを有している。
【0029】
デバイス10(USBコネクタC)は、ゲートウェイ装置20が有するUSBポートPUに接続され、当該接続されたゲートウェイ装置20と通信(USBプロトコルによる通信)する。例えば、第1デバイス10Aは、第1ゲートウェイ装置20Aが有するUSBポートPU(ポート識別子10-1。
図4参照)に接続され、当該接続された第1ゲートウェイ装置20Aと通信(USBプロトコルによる通信)する。第2デバイス10Bは、第2ゲートウェイ装置20Bが有するUSBポートPU(ポート識別子20-1。
図5参照)に接続され、当該接続された第2ゲートウェイ装置20Bと通信(USBプロトコルによる通信)する。第3デバイス10Cは、第2ゲートウェイ装置20Bが有するUSBポートPU(ポート識別子20-2。
図5参照)に接続され、当該接続された第2ゲートウェイ装置20Bと通信(USBプロトコルによる通信)する。
【0030】
図3に示すように、デバイス10は、USB情報を保持している。USB情報は、デバイス10を識別するためのデバイス識別子(プロダクトID、ベンダID、シリアルID)で、例えば、デバイス10が備えるメモリ(図示せず)に保持されている。例えば、第1デバイス10Aは、USB情報100(
図4参照)を保持している。第2デバイス10Bは、USB情報200(
図5参照)を保持している。第3デバイス10Cは、USB情報300(
図5参照)を保持している。
【0031】
次に、第1、第2ゲートウェイ装置20A、20Bの構成例について説明する。
【0032】
図4は第1ゲートウェイ装置20Aの概略図、
図5は第2ゲートウェイ装置20Bの概略図である。
【0033】
第1、第2ゲートウェイ装置20A、20BはUSBポートPUの数が異なる点以外、構成が共通しているため、以下、第1、第2ゲートウェイ装置20A、20Bを区別しない場合、単にゲートウェイ装置20と記載する。
【0034】
ゲートウェイ装置20は、デバイス10からの通信を中継し、デバイス10がシステムに繋がるための入り口となる機器の総称である。例えば、ネットワークスイッチ、ゲートウェイサーバ、IoTゲートウェイ等の機器が該当する。
【0035】
図4、
図5に示すように、ゲートウェイ装置20は、ポート(USBポートPU、EtherポートPE)、記憶部21、デバイス識別子取得部22、経路制御部23及び通信部24を備えている。ポートとは、他の機器と接続するための物理インタフェースの総称である。例えば、LANポート、USBポート、Wi-Fiモジュール、Bluetoothモジュール等が該当する。
【0036】
実施形態2では、ポートとしてUSBポートPU、EtherポートPEを用いる。
【0037】
図4に示すように、第1ゲートウェイ装置20Aは、一つのUSBポートPU(ポート識別子:10-1)を備えている。USBポートPU(ポート識別子:10-1)には、第1デバイス10Aが接続される。
【0038】
図5に示すように、第2ゲートウェイ装置20Bは、二つのUSBポートPU(ポート識別子:20-1、20-2)を備えている。USBポートPU(ポート識別子:20-1)には、第2デバイス10Bが接続される。USBポートPU(ポート識別子:20-2)には、第3デバイス10Cが接続される。以下、デバイス10が接続されたUSBポートPUのことを、接続ポートと呼ぶ。
【0039】
EtherポートPEには、IP通信部40が接続される。EtherポートPEには、IPアドレスが割り振られている。例えば、
図4に示すように、第1ゲートウェイ装置20AのEtherポートPEには、IPアドレス10-1が割り振られている。また、
図5に示すように、第2ゲートウェイ装置20BのEtherポートPEには、IPアドレス20-1が割り振られている。
【0040】
記憶部21は、例えば、ハードディスク装置やROM等の不揮発性の記憶部である。
【0041】
図4に示すように、第1ゲートウェイ装置20Aの記憶部21には、第1デバイス接続リストL1
20A、第1経路定義リストL2
20A及びプログラムP1が記憶されている。同様に、
図5に示すように、第2ゲートウェイ装置20Bの記憶部21には、第2デバイス接続リストL1
20B、第2経路定義リストL2
20B及びプログラムP1が記憶されている。
【0042】
第1デバイス接続リストL1
20Aは、「接続ポート」及び「デバイス識別子」を項目として含む(
図4参照)。第2デバイス接続リストL1
20Bも同様である(
図5参照)。「接続ポート」には、接続ポート(デバイス10が接続されたUSBポートPU)のポート識別子が登録される。「デバイス識別子」には、「接続ポート」に接続されたデバイス10のデバイス識別子が登録される。これらの項目を登録する処理については、後述する。以下、第1デバイス接続リストL1
20Aと第2デバイス接続リストL1
20Bを区別しない場合、単にデバイス接続リストL1と記載する。同様に、第1経路定義リストL2
20Aと第2経路定義リストL2
20Bを区別しない場合、単に経路定義リストL2と記載する。
【0043】
第1経路定義リストL2
20Aは、送信元の「デバイス識別子」、宛先の「デバイス識別子」、「転送先」及び「転送処置」を項目として含む(
図4参照)。第2経路定義リストL2
20Bも同様である(
図5参照)。送信元の「デバイス識別子」には、第1ゲートウェイ装置20A(USBポートPU)に接続されたデバイス10(例えば、第1デバイス10A)のデバイス識別子が登録される。宛先の「デバイス識別子」には、第1ゲートウェイ装置20A(USBポートPU)に接続されたデバイス10(例えば、第1デバイス10A)が通信すべきデバイス10(例えば、第3デバイス10C)のデバイス識別子が登録される。「転送先」には、ゲートウェイ装置20(例えば、第2ゲートウェイ装置20B)のネットワークアドレス(IPアドレス)が登録される。「転送処置」には、転送処置が登録される。これらの項目を登録する処理については、後述する。
【0044】
プログラムP1は、ゲートウェイ装置20が備える1又は複数のプロセッサ(図示せず)により実行されるプログラムで、OS(Operating System)を含む。
【0045】
ゲートウェイ装置20が備える1又は複数のプロセッサ(図示せず)が記憶部21からRAM(図示せず)に読み込まれたプログラムP1を実行することにより、デバイス識別子取得部22、経路制御部23及び通信部24が実現される。これらの一部又は全部は、ハードウェアで実現してもよい。
【0046】
デバイス識別子取得部22は、ゲートウェイ装置20(USBポートPU)に接続されたデバイス10とゲートウェイ装置20との間のUSBプロトコルによる通信から、当該デバイス10のデバイス識別子(USB情報)を取得する。
【0047】
経路制御部23は、ゲートウェイ装置20において発生する通信プロセス(例えば、
図4に示す通信プロセス10-1)による通信を監視し、第1デバイス接続リストL1
20A及び第1経路定義リストL2
20Aを参照して通信経路を制御する。
【0048】
通信部24は、IP通信部40を介してコントローラ30と通信を行う。例えば、ゲートウェイ装置20に接続したデバイス10の接続情報を、コントローラ30に送信する。また、コントローラ30から送信される論理ネットワークを構築する旨の指示を受信する。
【0049】
通信プロセス10-1は、例えば、第1ゲートウェイ装置20Aにおいて発生し(生成され)、第1ゲートウェイ装置20A(USBポートPU)に接続されたデバイス10からのデータを中継し他と通信する。通信プロセス10-1は、接続プロトコル(ここでは、USBプロトコル)が保有する情報(ここでは、USB情報)を指定して通信を試みる。なお、通信プロセス10-1は、他の接続プロトコルが保有する情報、例えば、IPであればIPアドレスやMACアドレス、Wi-FiであればSSIDやBSSID、BluetoothであればBDアドレスやハンドル番号を指定して通信を試みることもできる。経路制御部23は、OSの機能等の既存技術により通信プロセス10-1が通信するのを検知する。例えば、経路制御部23は、通信プロセス10-1が指定した情報を検知する。以上、第1ゲートウェイ装置20Aにおいて発生する通信プロセス10-1(
図4参照)について述べたことは、第2ゲートウェイ装置20Bにおいて発生する通信プロセス20-1、20-2(
図5参照)についても同様に当てはまる。
【0050】
次に、コントローラ30の構成例について説明する。
【0051】
【0052】
コントローラ30は、IP(Internet Protocol)だけでなくWi-Fi、Bluetooth、USB(Universal Serial Bus)等の非IP接続も含め、システム全体のネットワークを管理/制御する。例えば、コントローラ30は、システム全体のデバイス10の接続状況や論理ネットワークやゲートウェイ装置20の経路制御を管理する。
【0053】
図6に示すように、コントローラ30は、記憶部31、通信経路制御判断部32及び通信部33を備えている。
【0054】
記憶部31は、例えば、ハードディスク装置やROM等の不揮発性の記憶部である。記憶部31には、全体デバイス接続リストL3、全体経路定義リストL4、IP通信部のネットワーク情報L5及びプログラムP2が記憶されている。例えば、コントローラ30は、全体デバイス接続リストL3及び全体経路定義リストL4に基づいて、第1ゲートウェイ装置20AのUSBポートPU(ポート識別子10-1)に接続された第1デバイス10Aと第2ゲートウェイ装置20BのUSBポートPU(ポート識別子20-2)に接続された第3デバイス10Cとが通信を行うための論理ネットワークを構築する。
【0055】
全体デバイス接続リストL3には、送信元デバイス(例えば、第1デバイス10A)が接続している第1ゲートウェイ装置20A及び宛先デバイス(例えば、第3デバイス10C)が接続している第2ゲートウェイ装置20Bを特定するための接続情報が登録される。具体的には、
図6に示すように、全体デバイス接続リストL3は、「ゲートウェイ名」、「接続ポート」及び「デバイス識別子」を項目として含む。「ゲートウェイ名」には、ゲートウェイ装置20のゲートウェイ名(ゲートウェイ識別子)が登録される。「接続ポート」には、「ゲートウェイ名」により識別されるゲートウェイ装置20の接続ポートのポート識別子が登録される。「デバイス識別子」には、「接続ポート」に接続されたデバイス10のデバイス識別子が登録される。これらの項目を登録する処理については、後述する。
【0056】
全体経路定義リストL4には、送信元デバイス(例えば、第1デバイス10A)が通信すべき宛先デバイス(例えば、第3デバイス10C)を特定するための情報が登録される。具体的には、
図6に示すように、全体経路定義リストL4は、送信元の「デバイス識別子」及び宛先の「デバイス識別子」を項目として含む。送信元の「デバイス識別子」には、送信元デバイス10のデバイス識別子が登録される。宛先の「デバイス識別子」には、送信元の「デバイス識別子」により識別される送信元デバイス10が通信すべき宛先デバイス10のデバイス識別子が登録される。これらの項目は、ユーザにより予め入力され登録(設定)される。ユーザは、例えば、システムのネットワーク管理者である。
【0057】
IP通信部のネットワーク情報L5には、ゲートウェイ装置20のネットワークアドレス(IPアドレス)が登録されている。具体的には、
図6に示すように、IP通信部のネットワーク情報L5は、「ゲートウェイ名」及び「IPアドレス」を項目として含む。「ゲートウェイ名」には、ゲートウェイ装置20のゲートウェイ名(ゲートウェイ識別子)が登録される。「IPアドレス」には、「ゲートウェイ名」のゲートウェイ装置20に割り当てられたIPアドレスが登録される。このIPアドレスは、ユーザにより予め入力される場合もあるし、既存技術から得られる場合もある。例えば、ゲートウェイ装置20より上のIP通信部40を既存技術のOpenFlowで制御している場合、OpenFlowコントローラ(図示せず)からフローの制御情報を得て、通信経路制御判断部32は、これを活用してゲートウェイ装置20からIP通信部40にどのような宛先情報で受け渡せば目的のゲートウェイ装置20まで到達するのか判断する。
【0058】
プログラムP2は、コントローラ30が備える1又は複数のプロセッサ(図示せず)により実行されるプログラムで、OS(Operating System)を含む。
【0059】
コントローラ30が備える1又は複数のプロセッサ(図示せず)が記憶部31からRAM(図示せず)に読み込まれたプログラムP2を実行することにより、通信経路制御判断部32及び通信部33が実現される。これらの一部又は全部は、ハードウェアで実現してもよい。
【0060】
通信経路制御判断部32は、全体デバイス接続リストL3及び全体経路定義リストL4を参照してゲートウェイ装置20への制御指示を判断する。
【0061】
通信部33は、IP通信部40を介してゲートウェイ装置20と通信を行う。例えば、論理ネットワークを構築する旨の指示を、ゲートウェイ装置20に送信する。また、ゲートウェイ装置20から送信される当該ゲートウェイ装置20に接続したデバイス10の接続情報を受信する。
【0062】
次に、上記構成の論理ネットワーク構築システム1の動作として、第1デバイス10Aを転送元ゲートウェイ装置20A(USBポートPU)に接続した場合の動作の一例について説明する。
【0063】
図7は、論理ネットワーク構築システム1の動作(第1デバイス10Aを第1ゲートウェイ装置20A(USBポートPU)に接続した場合の動作)の一例のフローチャートである。
【0064】
まず、第1ゲートウェイ装置20A(USBポートPU)に第1デバイス10Aを接続する(ステップS10)。これにより、第1ゲートウェイ装置20A(USBポートPU)に接続された第1デバイス10Aと第1ゲートウェイ装置20Aとの間でUSBプロトコルによる通信が開始する。
【0065】
次に、第1ゲートウェイ装置20A(デバイス識別子取得部22)は、第1ゲートウェイ装置20A(USBポートPU)に接続された第1デバイス10Aと第1ゲートウェイ装置20Aとの間のUSBプロトコルによる通信から、当該第1デバイス10Aのデバイス識別子(USB情報100)を取得する(ステップS11)。
【0066】
次に、第1ゲートウェイ装置20Aは、
図4に示すように、第1デバイス接続リストL1
20Aを更新する(ステップS12)。具体的には、第1ゲートウェイ装置20Aは、第1デバイス接続リストL1
20Aに接続情報(どのUSBポートPUにどのデバイス10が接続されているかを表す情報)として、接続ポートのポート識別子(USBポート10-1)と接続ポートに接続された第1デバイス10Aのデバイス識別子(USB情報100)とを対応づけて登録する。この登録される第1デバイス10Aのデバイス識別子(USB情報100)は、ステップS11で取得される。
【0067】
次に、第1ゲートウェイ装置20A(通信部24)は、ステップS12で更新(登録)された接続情報をコントローラ30に通知する(ステップS13)。この接続情報は、接続ポートのポート識別子(USBポート10-1)と接続ポートに接続された第1デバイス10Aのデバイス識別子(USB情報100)とを含む。
【0068】
次に、コントローラ30は、第1ゲートウェイ装置20Aから通知された接続情報を受信すると、
図6に示すように、全体デバイス接続リストL3を更新する(ステップS14)。具体的には、コントローラ30は、全体デバイス接続リストL3に、第1ゲートウェイ装置20Aのゲートウェイ名(ゲートウェイ10)と接続ポートのポート識別子(USBポート10-1)と接続ポートに接続された第1デバイス10Aのデバイス識別子(USB情報100)とを対応づけて登録する。この全体デバイス接続リストL3に登録される、ゲートウェイ装置20のゲートウェイ名(ゲートウェイ装置10)、接続ポートのポート識別子(USBポート10-1)及び接続ポートに接続された第1デバイス10Aのデバイス識別子(USB情報100)は、例えば、第1ゲートウェイ装置20Aから接続情報と共に取得される。
【0069】
以上のように、第1デバイス10Aを第1ゲートウェイ装置20A(USBポートPU)に接続した場合、第1デバイス接続リストL1
20Aが更新され(
図4参照)、かつ、全体デバイス接続リストL3が更新される(
図6参照)。
【0070】
同様に、第2、第3デバイス10B、10Cを第2ゲートウェイ装置20B(USBポートPU)に接続した場合、第2デバイス接続リストL1
20Bが更新される(
図5参照)。また、全体デバイス接続リストL3が更新される。
【0071】
次に、上記構成の論理ネットワーク構築システム1の動作として、第1ゲートウェイ装置20Aにおいて通信プロセス10-1が発生した(生成された)場合の動作の一例について説明する。
【0072】
図8、
図9は、論理ネットワーク構築システム1の動作(第1ゲートウェイ装置20Aにおいて通信プロセス10-1が発生した(生成された)場合の動作)の一例のフローチャートである。
【0073】
以下の説明においては、第1~第3デバイス10A~10Cが第1、第2ゲートウェイ装置20A、20B(USBポートPU)に接続されているものとする。
【0074】
まず、第1ゲートウェイ装置20A(以下、転送元ゲートウェイ装置20Aとも呼ぶ)において、第1デバイス10A(以下、送信元デバイス10Aとも呼ぶ)から第3デバイス10C(以下、宛先デバイス10Cとも呼ぶ)に通信しようとする通信プロセス10-1(
図4参照)が発生し(生成され)、転送元ゲートウェイ装置20A(経路制御部23)が、その発生した通信プロセス10-1が通信するのを検知したとする(ステップS20:YES)。
【0075】
次に、転送元ゲートウェイ装置20A(経路制御部23)は、第1デバイス接続リストL1
20A及び第1経路定義リストL2
20Aを参照することにより第2ゲートウェイ装置20B(以下、転送先ゲートウェイ装置20Bとも呼ぶ)を特定する(ステップS21)。そして、特定できた場合(ステップS22:YES)、
図9に示す処理に進む。
図9の処理については後述する。
【0076】
一方、特定できない場合(ステップS22:NO)、例えば、第1経路定義リストL2
20Aに何も登録されていない(
図4中、更新前の第1経路定義リストL2
20A参照)場合、通信プロセス10-1が中継しようとしている通信元と宛先情報を取得するため、転送元ゲートウェイ装置20A(経路制御部23)は、通信部24を経由してコントローラ30に問い合わせる(ステップS23)。この問い合わせは、送信元デバイス10Aのデバイス識別子(USB情報100)を含む。
【0077】
次に、問い合わせを受信したコントローラ30(通信経路制御判断部32)は、全体デバイス接続リストL3及び全体経路定義リストL4を参照することにより、送信元デバイス10Aが通信すべき宛先デバイス10C及び当該宛先デバイス10Cまでの経路(当該宛先デバイス10Cが接続されている転送先ゲートウェイ装置20B)を特定する(ステップS24)。
【0078】
具体的には、まず、全体経路定義リストL4(
図6参照)を参照することにより、送信元デバイス10A(デバイス識別子:USB100)が対応する宛先デバイス10C(デバイス識別子:USB300)を特定する。
【0079】
次に、全体デバイス接続リストL3(
図6中、更新前の全体デバイス接続リストL3参照)を参照することにより、上記特定された宛先デバイス10C(デバイス識別子:USB300)が対応する転送先ゲートウェイ装置20B(ゲートウェイ名:ゲートウェイ20)を特定する。また、IP通信部のネットワーク情報L5を参照することにより、この特定された転送先ゲートウェイ装置20B(ゲートウェイ名:ゲートウェイ20)のIPアドレスを特定する。
【0080】
ステップS24において転送先ゲートウェイ装置20Bを特定することができない場合(ステップS25:NO)、例えば、全体デバイス接続リストL3及び全体経路定義リストL4の少なくとも一方に送信元デバイス10Aのデバイス識別子(USB情報100)が登録されていない場合、コントローラ30は、通信を遮断するように転送元ゲートウェイ装置20Aに指示を出す(ステップ26)。この指示を受信した転送元ゲートウェイ装置20Aは、通信を遮断する(ステップS27)。
【0081】
一方、ステップS24において転送先ゲートウェイ装置20Bを特定することができた場合(ステップS25:YES)、コントローラ30は、送信元デバイス10Aと宛先デバイス10Cとが通信できるように(送信元デバイス10Aと宛先デバイス10Cとの間に論理ネットワークが構築されるように)、送信元デバイス10Aが接続されている転送元ゲートウェイ装置20A及び宛先デバイス10Cが接続されている転送先ゲートウェイ装置20Bに対して論理ネットワークを構築する旨の指示(通信経路の制御指示)を送信する(ステップS29)。
【0082】
次に、コントローラ30からの指示を受信した転送元ゲートウェイ装置20Aは、
図4に示すように、経路定義リストL2
20Aを更新する(ステップS30)。具体的には、転送元ゲートウェイ装置20Aは、経路定義リストL2
20Aに、送信元デバイス10Aのデバイス識別子(USB情報100)と宛先デバイス10Cのデバイス識別子(USB情報300)と転送先ゲートウェイ装置20Bのネットワークアドレス(IPアドレス20-1)とを対応づけて登録する。この登録される、送信元デバイス10Aのデバイス識別子(USB情報100)、宛先デバイス10Cのデバイス識別子(USB情報300)及び転送先ゲートウェイ装置20Bのネットワークアドレス(IPアドレス20-1)は、例えば、上記コントローラ30からの指示と共に取得される。
【0083】
一方、コントローラ30からの指示を受信した転送先ゲートウェイ装置20Bは、
図5に示すように、第2経路定義リストL2
20Bを更新する(ステップS31)。具体的には、転送先ゲートウェイ装置20Bは、第2経路定義リストL2
20Bに、転送元ゲートウェイ装置20Aのネットワークアドレス(IPアドレス10-1)と宛先デバイス10Cのデバイス識別子(USB情報300)とを対応づけて登録する。この登録される、転送元ゲートウェイ装置20Aのネットワークアドレス(IPアドレス10-1)及び宛先デバイス10のデバイス識別子(USB情報300)は、例えば、上記コントローラ30からの指示と共に取得される。
【0084】
以上のように、転送元ゲートウェイ装置20Aにおいて通信プロセス10-1が発生した(生成された)場合、第1、第2経路定義リストL2
20A、L2
20Bがそれぞれ更新される(
図4、
図5参照)。
【0085】
以後、転送元ゲートウェイ装置20A(経路制御部23)は、通信プロセス10-1からの制御に従い、送信元デバイス10Aと第1ゲートウェイ装置20Aとの間の通信を、転送先ゲートウェイ装置20Bに転送する。以下この処理について
図9を参照しながら説明する。
【0086】
図9に示すように、転送元ゲートウェイ装置20A(経路制御部23)は、送信元デバイス10AからのUSBプロトコルによる通信に含まれるUSBパケットを、IPパケットに変換し(ステップS31)、当該変換後のIPパケットをIP通信部40に送出する(ステップS32)。
【0087】
この送出されるIPパケットは、送信元IPアドレスとして転送元ゲートウェイ装置20AのIPアドレス(IPアドレス10-1)を含む。また、宛先IPアドレスとして第1経路定義リストL220Aを参照することで特定される転送先ゲートウェイ装置20BのIPアドレス(IPアドレス20-1)を含む。
【0088】
以上のようにステップS32で送出されたIPパケットは、IP通信部40を経由して転送先ゲートウェイ装置20Bに届けられる。
【0089】
次に、転送先ゲートウェイ装置20B(通信部24)は、転送元ゲートウェイ装置20Aから送出されたIPパケットを受信する(ステップS33)。
【0090】
IPパケットを受信した転送先ゲートウェイ装置20Bは、第2デバイス接続リストL120B及び第2経路定義リストL220Bを参照することにより宛先デバイス10C(が接続されているUSBポート)を特定し、転送元ゲートウェイ装置20Aから転送される通信(IPパケットを変換した元のUSBパケット)を、当該特定された宛先デバイス10C(が接続されているUSBポート)に送信(送出)する。
【0091】
すなわち、まず、転送先ゲートウェイ装置20Bは、ステップS33で受信したIPパケットを元のUSBパケットに変換する(ステップS34)。
【0092】
次に、転送先ゲートウェイ装置20Bは、第2経路定義リストL220Bを参照することにより、ステップS34で受信したIPパケットの送信元IPアドレス(IPアドレス10-1)に対応する宛先デバイス10C(デバイス識別子:USB300)を特定する(ステップS35)。
【0093】
次に、転送先ゲートウェイ装置20Bは、第2デバイス接続リストL120Bを参照することにより、ステップS35で特定された宛先デバイス10C(デバイス識別子:USB300)に対応するUSBポートPU(ポート識別子:20-2)、すなわち、宛先デバイス10C(デバイス識別子:USB300)が接続されているUSBポートPU(ポート識別子:20-2)を特定する(ステップS36)。
【0094】
次に、転送先ゲートウェイ装置20Bは、ステップS36で特定されたUSBポートPU(ポート識別子:20-2)にステップS34で変換したUSBパケットを送出する(ステップS37)。宛先デバイス10Cは、この送出されるUSBパケットを受信して所定の処理を実行する(ステップS38)。
【0095】
以上のようにして送信元デバイス10Aから宛先デバイス10Cへの通信を確立することができる。すなわち、第1ゲートウェイ装置20AのUSBポートPU(ポート識別子10-1)に接続された第1デバイス10Aと第2ゲートウェイ装置20BのUSBポートPU(ポート識別子20-2)に接続された第3デバイス10Cとが通信を行うための論理ネットワークを構築することができる。もし通信プロセス10-1が送信元デバイス10A(USB情報100)から第2デバイス10B(USB情報200)に通信しようとしても通信は遮断される(ステップS27)ため他に影響を与えることがない。
【0096】
実施形態2によれば、一方の第1ゲートウェイ装置20Aに接続された送信元デバイス10Aと他方の第2ゲートウェイ装置20Bに接続された宛先デバイス10Cとの間で通信を行うことができる。
【0097】
また、実施形態2によれば、デバイス10をゲートウェイ装置20(USBポートPU)に接続するだけで、接続箇所を気にすることなく、自動的に適切な論理ネットワークを構築することができる。すなわち、デバイス10をゲートウェイ装置20(USBポートPU)に接続した場合、コントローラ30が論理ネットワークの経路を自動で判断しゲートウェイ装置20を制御することで自動的に適切な論理ネットワークを構築する。そのため、ユーザが実質的に設定情報(コンフィグ)を登録することなく(実質ゼロコンフィグで)、自動的に適切な論理ネットワークを構築することができる。これにより、デバイス10接続の柔軟性を確保することができる。
【0098】
また、実施形態2によれば、事前にデバイス10に手を加えずとも、システムに接続したデバイス10の接続プロトコルから得られる識別子やセキュリティの設定情報を用いることで、デバイス10が属するべきネットワークを論理的に形成し、各々のデバイス10の用途やセキュリティレベルごとにネットワークを振り分け、ユーザが定義した用途やセキュリティレベル等のポリシーに従ってデバイス10がお互い干渉せずに物理物体上に存在できる。
【0099】
また、実施形態2によれば、次の効果を奏する。
【0100】
すなわち、デバイス用途毎に機器や環境を準備すると大量の機器と場所が必要になる。そのため可能な限り複数用途の環境を同一物理機器上に混在させたいという要望がある(課題1)。
【0101】
また、デバイスに用途に応じたデバイス識別のための機能を追加するのは難しい。デバイス購入者ではデバイスの改造は難しく、デバイスの製造者であったとしても、特にIoT分野では、デバイスの性能やHWリソースが少なく機能を追加できない場合がある。また、デバイスに機能を追加してしまうと組込んだ機能の継続的な更新が必要となる場合も多く、運用に手間や問題が生じる(課題2)。
【0102】
さらに、従来の仮想化技術(例えば、仮想マシン技術、コンテナ技術等)を用いることで複数用途の環境を同一物理機器上に混在させることはできるが、ゲートウェイ上に仮想化技術を用いる場合、デバイスの接続箇所が変更される可能性のある環境や大量のデバイスが接続してくる環境に適さない。仮想化技術ではゲートウェイ上の仮想環境が利用するポートを自由に設定はできるが、特定用途のデバイスの続箇所が設定した特定のゲートウェイとポートに限られる。そのため、もし接続箇所の設定や変更を行いたい場合、デバイス接続を行う利用者が接続したい端末に接続できるように仮想環境の管理者に依頼し逐一再設定が必要となり、運用に手間がかかる。デバイスが多くなると各ゲートウェイに対して仮想環境を作成し用途毎のポートの割り振りや、ポートの変更の再設定作業の手間がさらに多くなり運用できなくなる。特にIoT分野では多数のデバイスが不特定の場所に接続されるケースもあり、よりデバイスがシステムに接続するときの柔軟性が要求される(課題3)。
【0103】
以上の課題1~3に対して、実施形態2によれば、次の効果を奏する。
【0104】
まず、IPだけでなく非IP(Wi-Fi,Bluetooth,USB等)も含むシステムのネットワーク全体を管理するコントローラとゲートウェイを用いて、各ゲートウェイに接続したデバイスがシステム上のどこかに接続しているあらかじめ設定した適切な相手のみと通信できるように論理ネットワークを自動的に構築することができる。
【0105】
また、上記課題2に対して、デバイスの識別にはデバイスが接続したゲートウェイとの接続プロトコル(例IP, MAC, Wi-Fi, Bluetooth, USB)から得られる情報(識別情報、セキュリティレベル)を用いる。デバイスが元々保有しているゲートウェイに接続するための機構の接続プロトコルの情報を利用しているためデバイス側に手を加えずに活用できる。これにより、上記課題2が解決される。
【0106】
さらに、上記課題3に対して、各ゲートウェイは接続しているデバイスの識別子を接続プロトコルから取得し、識別子とどのポートに接続しているのかをコントローラに送る。コントローラは各ゲートウェイのどのポートにどのようなデバイスが接続されているのか管理する(全体のデバイス接続リスト)。デバイスがいずれかのゲートウェイに接続した時に、コントローラはユーザによって事前に設定されたそのデバイスが通信すべき他のデバイスを参照(全体の経路定義リスト)し、全体のデバイス接続リストと照らし合わせて通信すべきデバイスまでの経路を判断する。コントローラは接続したデバイスと通信すべきデバイスとの論理ネットワークが構成できるように各ゲートウェイに通信経路の制御指示を出す。これにより、デバイスがどのゲートウェイに接続してもコントローラが論理ネットワークの経路を自動で判断し各ゲートウェイを制御するので、実質ゼロコンフィグで運用することができる。これにより、上記課題3が解決される。
【0107】
そして、以上により、複数用途の環境を同一物理機器上に混在させることができる。これにより、上記課題1が解決される。
【0108】
次に変形例について説明する。
【0109】
本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上記実施形態2では、ゲートウェイ装置20として、第1ゲートウェイ装置20A、第2ゲートウェイ装置20Bの二つを用いた例について説明したが、これに限らない。ゲートウェイ装置20として、3つ以上のゲートウェイ装置を用いてもよい。また、各々のゲートウェイ装置20が備えるUSBポートの数も1又は2に限られず、3以上のUSBポートを用いてもよい。
【0110】
経路定義は双方向で設定可能なため、片方向の通信のみ許可や双方向通信の許可を分けて設定できる。例えば、
図6に示す全体経路定義リストL4ではデバイス10(デバイス識別子100)からデバイス10(デバイス識別子300)は片方向のみ許可されているが、デバイス10(デバイス識別子200)とデバイス10(デバイス識別子300)は双方向通信が許可されている。通信プロセス20-1(
図5参照)がデバイス10(デバイス識別子300)からデバイス10(デバイス識別子100)に通信しようとした場合は遮断される。通信プロセス20-2(
図5参照)がデバイス10(デバイス識別子200)とデバイス10(デバイス識別子300)で双方向に通信しようとした場合は通信することができる。
【0111】
また、USB以外の接続プロトコルもデバイス識別子の情報がそれぞれの接続プロトコルから取得できるものにすることで対応できる。例えば、Bluetoothの場合はBDアドレス、機器クラス(オーディオ機器、マウス等)、ペアリング方式、暗号化アルゴリズム等、Wi-Fiの場合はSSID、無線LAN規格,認証プロトコル、暗号化プロトコル、暗号化アルゴリズム等、その他にもIPアドレス、MACアドレス、物理ポート、VLAN、プロトコル番号、ToS値、ポート番号等、接続プロトコルの規格に応じた様々な識別子を用いることができる。
【0112】
また、全体経路定義リストL4やゲートウェイ装置20の経路定義リストL2には接続プロトコルから得られる全ての情報を使う必要はない。例えば、Bluetoothであればコントローラ30の全体経路定義リストL4にBDアドレスと暗号化アルゴリズムの組み合わせのみ設定することで、通信経路制御判断部32は、Bluetoothプロトコルで使用されるペアリング方式等他の情報は使わずに、BDアドレスと暗号化アルゴリズムで経路を判断する。
【0113】
BluetoothやWi-Fi等は通信規格(バージョン等)、認証(認証プロトコル等)、暗号(アルゴリズム、暗号化有無等)の情報も含まれているため、接続のセキュリティレベルでネットワークを分けることも可能である。これにより、セキュリティレベルの高い接続のデバイスは重要情報を扱うサーバとの通信を許可し、セキュリティレベルの低い接続のデバイスはネットワークを隔離することができる。
【0114】
また、実施形態2ではUSBデバイス10から他のUSBデバイス10への通信と同種の接続プロトコルへの通信を説明したが、USBデバイス10からWi-Fiデバイス(図示せず)へ等の通信も同じ仕組みで制御できる。例えば、ユーザがコントローラ30の全体経路定義リストL4の送信元にUSBデバイスの識別子、宛先にWi-Fiデバイスの識別子を設定すれば、USBデバイス10からWi-Fiデバイスへの通信を本開発で制御することができる。
【0115】
また、IP通信部40のVLAN等の既存技術と連携が可能である。これにより詳細な論理ネットワークの構築が可能となる。例えば、IP通信部40にコントローラ30の全体経路定義リストL4に設定された経路ごとにIP通信部40ではVLANを割り振り、そのVLANをゲートウェイ装置20の経路定義リストL2の項目「転送処置」に設定する。これにより、ゲートウェイ装置20が特定の通信をIP通信部40に渡す際に経路定義リストL2の項目「転送処置」に登録(記載)されているVLANをつけIP通信部40に受け渡すので、IP通信部40ではこのVLANを用いた経路制御が可能となる。
【0116】
また、ユーザによって全体経路定義リストL4が更新された場合は更新された内容に従って各ゲートウェイ装置20の経路定義リストL2を更新する。具体的には、コントローラ30の通信経路制御判断部32は更新された識別子が全体デバイス接続リストL3に存在するか確認し、全体デバイス接続リストL3に該当の識別子をもつデバイス10が存在する場合は、更新された経路定義リストL3に従って経路を判断して関係するゲートウェイ装置20に経路定義リストL2の更新指示を出す。
【0117】
また、セキュリティの観点から、一般的に意図していない不審デバイスが接続した機器は既にウィルスが混入等何かしら悪さをされている可能性があるため、接続された機器をネットワークから切り離すことで他のデバイスやシステムに影響が広がるのを防ぐ手法をとることがある。本発明では、コントローラ30の全体経路定義リストL4に接続してきたデバイス10の識別子の情報が存在しない時、接続されたゲートウェイ装置20の通信をコントローラ30との通信部のみとし他を全て遮断することで、ゲートウェイ装置20を仮想的にネットワークから分離しこの手法を実行することもできる。
【0118】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0119】
この出願は、2020年3月17日に出願された日本出願特願2020-046027を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【0120】
1 論理ネットワーク構築システム
10 デバイス
PU USBポート
10A 第1デバイス(送信元デバイス)
10B 第2デバイス
10C 第3デバイス(宛先デバイス)
20 ゲートウェイ装置
20A 第1ゲートウェイ装置(転送元ゲートウェイ装置)
20B 第2ゲートウェイ装置(転送先ゲートウェイ装置)
21 記憶部
22 デバイス識別子取得部
23 経路制御部
24 通信部
30 コントローラ
31 記憶部
32 通信経路制御判断部
33 通信部
40 IP通信部(ネットワーク)
L1 デバイス接続リスト
L120A 第1デバイス接続リスト
L120B 第2デバイス接続リスト
L2 経路定義リスト
L220A 第1経路定義リスト
L220A 第2経路定義リスト
L3 全体デバイス接続リスト
L4 全体経路定義リスト
L5 ネットワーク情報
P1、P2 プログラム