(57)【特許請求の範囲】
【請求項１】
デバイスがＵＳＢを用いて接続されるゲートウェイ装置と、管理サーバとを具備するデータ通信システムであって、
前記ゲートウェイ装置は、
前記デバイスおよび自装置の少なくともどちらか一方に関する接続元情報を管理サーバに送信する送信手段を具備し、
前記管理サーバは、
前記デバイスの接続先の候補となる候補サーバに関するサーバ情報を格納する格納手段と、
前記接続元情報に基づいて、前記候補サーバの中から前記デバイスの接続先となる接続先サーバを選択する選択手段と、
前記接続先サーバに関する接続先サーバ情報を前記ゲートウェイ装置に送信する送信手段と、を具備し、
前記ゲートウェイ装置の前記送信手段は、前記接続先サーバ情報に基づいて、ＵＳＢ／ＩＰ接続を行うための接続開始要求を前記接続先サーバに送信するデータ通信システム。
【請求項２】
前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証する認証手段と、
前記デバイスが接続可能である場合、前記ゲートウェイ装置とＵＳＢ／ＩＰ接続を行う仮想化手段と、を具備する前記接続先サーバをさらに具備する請求項１に記載のデータ通信システム。
【請求項３】
デバイスがＵＳＢを用いて接続されるゲートウェイ装置と、中継サーバと、前記デバイスの接続先となる接続先サーバとを具備するデータ通信システムであって、
前記ゲートウェイ装置は、
前記デバイスおよび自装置の少なくともどちらか一方に関する接続元情報を含む接続開始要求を前記中継サーバに送信する送信手段を具備し、
前記中継サーバは、
前記デバイスの接続先の候補となる候補サーバに関するサーバ情報を格納する格納手段と、
前記接続元情報に基づいて、前記候補サーバの中から前記デバイスの接続先となる接続先サーバを選択する選択手段と、
前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証する認証手段と、
前記デバイスが接続可能である場合、前記ゲートウェイ装置とＵＳＢ／ＩＰ接続を行う仮想化手段と、
前記接続先サーバに前記ＵＳＢ／ＩＰ接続開始要求を送信する送信手段と、を具備し、
前記接続先サーバは、
前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証する認証手段と、
前記デバイスが接続可能である場合、前記中継サーバとＵＳＢ／ＩＰ接続を行う仮想化手段と、を具備するデータ通信システム。
【請求項４】
前記接続先サーバは、サービスオーダーが投入される場合または前記ゲートウェイ装置からの前記接続元情報が送信される場合に、ＵＳＢ／ＩＰ接続のためのサーバ構成が設定される請求項２または請求項３に記載のデータ通信システム。
【請求項５】
前記接続元情報は、前記ゲートウェイ装置に関するゲートウェイ識別子、および前記デバイスに関するデバイス識別子を含み、
前記接続先サーバの前記認証手段は、前記ゲートウェイ識別子および前記デバイス識別子の少なくともいずれか１つに基づいて認証する請求項２から請求項４のいずれか１項に記載のデータ通信システム。
【請求項６】
デバイスがＵＳＢを用いて接続されるゲートウェイ装置と、管理サーバとを具備するデータ通信システムで用いるデータ通信方法であって、
前記ゲートウェイ装置は、
送信手段が、前記デバイスおよび自装置の少なくともどちらか一方に関する接続元情報を管理サーバに送信し、
前記管理サーバは、
格納手段が、前記デバイスの接続先の候補となる候補サーバに関するサーバ情報を格納し、
選択手段が、前記接続元情報に基づいて、前記候補サーバの中から前記デバイスの接続先となる接続先サーバを選択し、
送信手段が、前記接続先サーバに関する接続先サーバ情報を前記ゲートウェイ装置に送信し、
前記ゲートウェイ装置の前記送信手段は、前記接続先サーバ情報に基づいて、ＵＳＢ／ＩＰ接続を行うための接続開始要求を前記接続先サーバに送信するデータ通信方法。
【請求項７】
デバイスがＵＳＢを用いて接続されるゲートウェイ装置と、中継サーバと、前記デバイスの接続先となる接続先サーバとを具備するデータ通信システムで用いるデータ通信方法であって、
前記ゲートウェイ装置は、
送信手段が、前記デバイスおよび自装置の少なくともどちらか一方に関する接続元情報を含む接続開始要求を前記中継サーバに送信し、
前記中継サーバは、
格納手段が、前記デバイスの接続先の候補となる候補サーバに関するサーバ情報を格納し、
選択手段が、前記接続元情報に基づいて、前記候補サーバの中から前記デバイスの接続先となる接続先サーバを選択し、
認証手段が、前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証し、
仮想化手段が、前記デバイスが接続可能である場合、前記ゲートウェイ装置とＵＳＢ／ＩＰ接続を行い、
送信手段が、前記接続先サーバに前記ＵＳＢ／ＩＰ接続開始要求を送信し、
前記接続先サーバは、
認証手段が、前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証し、
仮想化手段が、前記デバイスが接続可能である場合、前記中継サーバとＵＳＢ／ＩＰ接続を行うデータ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＵＳＢデバイスの仮想化通信で用いるデータ通信システムおよび方法に関する。
【背景技術】
【０００２】
近年、仮想化技術の進展に伴い、装置に接続される周辺機器を仮想化するＩ／Ｏ仮想化技術が普及している。Ｉ／Ｏ仮想化技術の一例として、装置に接続されたＵＳＢデバイスをネットワーク上の別の装置にＴＣＰ／ＩＰを用いて仮想的に接続する技術（ＯＳＳ）であるＵＳＢ／ＩＰ方式が挙げられる（例えば、非特許文献１および非特許文献２参照）。  
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“USB/IP PROJECT”、sourceforge.net、［Online］、インターネット＜URL:http://usbip.sourceforge.net/＞
【非特許文献２】“kernel/git/next/linux-next.git”、Linux Next Group、[online]、<URL:http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/tree/drivers/usb/usbip/usbip_protocol.txt>
【発明の概要】
【発明が解決しようとする課題】
【０００４】
既存のＵＳＢ／ＩＰ技術では、ＵＳＢデバイスが仮想的に接続される装置（例えば、サーバ）からＵＳＢ／ＩＰ接続を開始する。この既存のＵＳＢ／ＩＰ技術を用いて、ゲートウェイ（ＧＷ）装置に接続されたＵＳＢデバイスをキャリアネットワーク上またはインターネット上のサーバに仮想的に接続する場合、ＮＡＰＴ／ＦＷ（Network Address Port Translation / Firewall）越えに対応するため、ＧＷ側からサーバ側にＴＣＰコネクションを張る必要がある。  
ＧＷ側からコネクションを張る場合は、各ＧＷにＵＳＢ／ＩＰ接続先情報を個別に設定しなければならないという問題がある。
【０００５】
この発明は上記事情に着目してなされたもので、その目的とするところは、効率的かつ容易にＵＳＢ／ＩＰ接続を行うことができるデータ通信システムおよび方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するためにこの発明の一つの観点に係るデータ通信システムは、デバイスがＵＳＢを用いて接続されるゲートウェイ装置と管理サーバとを含む。前記ゲートウェイ装置は、前記デバイスおよび自装置の少なくともどちらか一方に関する接続元情報を管理サーバに送信する送信手段を含む。前記管理サーバは、前記デバイスの接続先の候補となる候補サーバに関するサーバ情報を格納する格納手段と、前記接続元情報に基づいて、前記候補サーバの中から前記デバイスの接続先となる接続先サーバを選択する選択手段と、前記接続先サーバに関する接続先サーバ情報を前記ゲートウェイ装置に送信する送信手段とを含む。前記ゲートウェイ装置の前記送信手段は、前記接続先サーバ情報に基づいて、ＵＳＢ／ＩＰ接続を行うための接続開始要求を前記接続先サーバに送信することを特徴とする。
【０００７】
さらに、一つの観点に係るデータ通信システムは、接続先サーバをさらに含み、前記接続先サーバは、前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証する認証手段と、前記デバイスが接続可能である場合、前記ゲートウェイ装置とＵＳＢ／ＩＰ接続を行う仮想化手段と、を具備することを特徴とする。
【０００８】
さらに、一つの観点に係るデータ通信システムは、デバイスがＵＳＢを用いて接続されるゲートウェイ装置と、中継サーバと、前記デバイスの接続先となる接続先サーバとを含む。前記ゲートウェイ装置は、前記デバイスおよび自装置の少なくともどちらか一方に関する接続元情報を含む接続開始要求を前記中継サーバに送信する送信手段を含む。前記中継サーバは、前記デバイスの接続先の候補となる候補サーバに関するサーバ情報を格納する格納手段と、前記接続元情報に基づいて、前記候補サーバの中から前記デバイスの接続先となる接続先サーバを選択する選択手段と、前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証する認証手段と、前記デバイスが接続可能である場合、前記ゲートウェイ装置とＵＳＢ／ＩＰ接続を行う仮想化手段と、前記接続先サーバに前記ＵＳＢ／ＩＰ接続開始要求を送信する送信手段と、を含む。前記接続先サーバは、前記接続元情報に基づいて、前記デバイスが接続可能かどうかを認証する認証手段と、前記デバイスが接続可能である場合、前記中継サーバとＵＳＢ／ＩＰ接続を行う仮想化手段と、を含むことを特徴とする。
【０００９】
さらに、一つの観点に係るデータ通信システムは、前記接続先サーバが、サービスオーダーが投入される場合または前記ゲートウェイ装置からの前記接続元情報が送信される場合に、ＵＳＢ／ＩＰ接続のためのサーバ構成が設定されることを特徴とする。
【００１０】
さらに、一つの観点に係るデータ通信システムは、前記接続元情報が、前記ゲートウェイ装置に関するゲートウェイ識別子、および前記デバイスに関するデバイス識別子を含み、前記接続先サーバの前記認証手段は、前記ゲートウェイ識別子および前記デバイス識別子の少なくともいずれか１つに基づいて認証することを特徴とする。
【発明の効果】
【００１１】
すなわちこの発明によれば、効率的かつ容易にＵＳＢ／ＩＰ接続を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態に係るデータ通信システムの概略図。
【図２】ゲートウェイ装置の詳細を示すブロック図。
【図３】管理サーバの詳細を示すブロック図。
【図４】接続先サーバの詳細を示すブロック図。
【図５】第１の実施形態に係るデータ通信システムの通信制御処理を示すシーケンス図。
【図６】第２の実施形態に係るデータ通信システムの概略図。
【図７】第２の実施形態に係るデータ通信システムの通信制御処理を示すシーケンス図。
【図８】データ通信システムの通信制御処理におけるサーバ構成処理を示すシーケンス図。
【図９】データ通信システムの通信制御処理におけるサーバ構成処理の別例を示すシーケンス図。
【図１０】接続拒絶と決定される場合のデータ通信システムの動作を示すシーケンス図。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら本開示の一実施形態に係るデータ通信システム及び方法について詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。  
（第１の実施形態）  
第１の実施形態におけるデータ通信システムについて図１の概略図を参照して説明する。  
図１に示すデータ通信システム１００は、ＵＳＢデバイス１１０、ゲートウェイ（ＧＷ）装置１２０、管理サーバ１３０および接続先サーバ１４０を含む。  
ＵＳＢデバイス１１０とゲートウェイ装置１２０との間は、ＵＳＢを用いて（シリアルバスで）接続される。ゲートウェイ装置１２０、管理サーバ１３０および接続先サーバ１４０の間は、ＩＰネットワークで接続される。
【００１４】
本実施形態に係るデータ通信は、ＩＰネットワーク上でＵＳＢ／ＩＰ方式により、ゲートウェイ装置１２０にＵＳＢを用いて接続されるＵＳＢデバイス１１０が、ゲートウェイ装置１２０を介して接続先サーバ１４０と通信を行う、いわゆるＵＳＢ仮想化通信（ＵＳＢ／ＩＰ通信ともいう）を想定する。  
ゲートウェイ装置１２０は、管理サーバ１３０にＵＳＢ／ＩＰ通信をするための接続（ＵＳＢ／ＩＰ接続ともいう）に関する問い合わせを行う。管理サーバ１３０は、接続先サーバ１４０の情報をゲートウェイ装置１２０に送信する。ゲートウェイ装置１２０は、接続先サーバ１４０の情報に基づいて、接続先サーバ１４０とＵＳＢ／ＩＰ接続を行い、ＵＳＢ／ＩＰ接続確立後、ＵＳＢ／ＩＰ通信を行う。なお、ＵＳＢ／ＩＰ通信の方式については、一般的な手法を用いればよいため、ここでの具体的な説明は省略する。
【００１５】
次に、ゲートウェイ装置１２０の詳細について図２のブロック図を参照して説明する。  
第１の実施形態に係るゲートウェイ装置１２０は、ＵＳＢハードウェア部２０１、格納部２０２、送受信部２０４およびＵＳＢ仮想化部２０３を含む。  
ＵＳＢハードウェア部２０１は、接続されるＵＳＢデバイス１１０からデバイス識別子を取得する。デバイス識別子は、デバイスに関する情報であり、例えば、ベンダーの情報を示すベンダーＩＤ、製品種別を示すプロダクトＩＤ、同一製品を識別するためのシリアル番号を含む。なお、これに限らず、ＵＳＢデバイス１１０を識別することができる情報をさらに含んでもよい。
【００１６】
格納部２０２は、ＵＳＢハードウェア部２０１からデバイス識別子を受け取って格納する。格納部２０２はさらに、ゲートウェイ装置１２０自身の識別子であるゲートウェイ識別子（ＧＷ識別子）と、管理サーバ１３０に関する情報である管理サーバ情報を格納する。管理サーバ情報は、例えば、ＩＰアドレス、ＦＱＤＮ（Full Qualified Domain Name）であるが、これに限らず管理サーバ１３０を識別できる情報であればよい。
【００１７】
ＵＳＢ仮想化部２０３は、送受信部２０４から接続先情報を受け取り、ＵＳＢ／ＩＰ接続に関する処理と、ＵＳＢ／ＩＰ接続確立後のＵＳＢ／ＩＰ通信に関する処理とを行う。具体的には、格納部２０２からＵＳＢデバイス１１０および自装置の少なくともどちらか１つに関する情報（すなわち、ＧＷ識別子およびデバイス識別子の少なくともどちらか１つ）を接続元情報として受け取り、接続元情報を含む接続先情報要求を生成する。ＵＳＢ仮想化部２０３は、送受信部２０４から接続先サーバ１４０に関する接続先サーバ情報を受け取った場合、接続元情報を含む接続開始要求を生成する。接続先サーバ情報は、例えば接続先サーバ１４０のＩＰアドレスを想定するが、接続先サーバ１４０を識別できる情報であればよい。
【００１８】
送受信部２０４は、ＵＳＢ仮想化部２０３から接続先情報要求を受け取り、接続先情報を管理サーバ１３０に送信する。送受信部２０４は、管理サーバ１３０から接続先サーバ情報を受信し、その後、ＵＳＢ仮想化部２０３から接続開始要求を受け取り、接続先サーバ１４０に接続開始要求を送信する。
【００１９】
次に、管理サーバ１３０の詳細について図３のブロック図を参照して説明する。  
第１の実施形態に係る管理サーバ１３０は、格納部３０１、送受信部３０２および選択部３０３を含む。
【００２０】
格納部３０１は、ＧＷ識別子、デバイス識別子およびサーバ情報を格納する。格納部３０１は、サーバ情報として、ＵＳＢデバイスの接続先の候補となる１以上のサーバ（候補サーバともいう）の情報を格納する場合を想定する。  
送受信部３０２は、ゲートウェイ装置１２０から接続元情報を受け取る。また、送受信部３０２は、選択部３０３から選択された接続先サーバ１４０に関する接続先サーバ情報を受け取ってゲートウェイ装置１２０に送信する。
【００２１】
選択部３０３は、送受信部３０２から接続元情報を、格納部３０１からＧＷ識別子およびデバイス識別子の少なくともどちらか一方とサーバ情報とをそれぞれ受け取る。選択部３０３は、接続元情報に基づいて、候補サーバの中からＵＳＢデバイス１１０の接続先となる接続先サーバのサーバ情報を接続先サーバ情報として選択する。
【００２２】
次に、接続先サーバ１４０の詳細について図４のブロック図を参照して説明する。  
第１の実施形態に係る接続先サーバ１４０は、格納部４０１、送受信部４０２、認証部４０３およびＵＳＢ仮想化部４０４を含む。
【００２３】
格納部４０１は、ＧＷ識別子およびデバイス識別子を格納する。  
送受信部４０２は、ゲートウェイ装置１２０から接続開始の要求である接続開始要求を受信する。送受信部４０２は、後述する接続要求をゲートウェイ装置１２０に送信する。
【００２４】
認証部４０３は、送受信部４０２から接続開始要求を受け取る。認証部４０３は、格納部４０１に格納されるＧＷ識別子およびデバイス識別子を参照し、接続開始要求に含まれる接続元情報に基づいて、ＵＳＢデバイス１１０が接続可能かどうかを認証し、認証結果を生成する。  
ＵＳＢ仮想化部４０４は、認証部４０３から認証結果を受け取り、ＵＳＢ／ＩＰ接続に関する処理と、ＵＳＢ／ＩＰ接続確立後のＵＳＢ／ＩＰ通信に関する処理とを行う。具体的には、ゲートウェイ装置１２０に接続を要求する接続要求を生成する。
【００２５】
次に、第１の実施形態にかかるデータ通信システム１００の通信制御処理について図５のシーケンス図を参照して説明する。  
ＵＳＢデバイス１１０、ゲートウェイ装置１２０、管理サーバ１３０および接続先サーバ１４０のそれぞれでの処理が時系列で示される。
【００２６】
ステップＳ５０１では、事前設定として、ＵＳＢデバイス１１０、ゲートウェイ装置１２０、管理サーバ１３０および接続先サーバ１４０のそれぞれにおいて、情報が予め設定される。  
具体的には、ＵＳＢデバイス１１０では、デバイス識別子が設定される。ゲートウェイ装置１２０では、管理サーバ情報およびＧＷ識別子が格納部２０２に格納される。管理サーバ１３０では、ＧＷ識別子、デバイス識別子および接続先サーバ情報が格納部３０１に格納される。接続先サーバ１４０では、ＧＷ識別子およびデバイス識別子が格納部４０１に格納される。
【００２７】
ステップＳ５０２では、ＵＳＢデバイス１１０がゲートウェイ装置１２０に挿入される。ＵＳＢデバイス１１０がゲートウェイ装置１２０に挿入されると、ＵＳＢデバイス１１０は、ゲートウェイ装置１２０にデバイス識別子を送信する。  
ステップＳ５０３では、ゲートウェイ装置１２０のＵＳＢ仮想化部２０３が、ＵＳＢ／ＩＰ接続用のプロセスを立ち上げ、ゲートウェイ装置１２０が、ＵＳＢデバイス１１０からデバイス識別子を取得する。
【００２８】
ステップＳ５０４では、ゲートウェイ装置１２０が、ＵＳＢ／ＩＰ接続先となる接続先サーバ１４０に関する情報を要求するため、事前設定された管理サーバ情報に基づいて、接続先情報要求を管理サーバ１３０に送信する。  
ステップＳ５０５では、管理サーバ１３０の選択部３０３が、ゲートウェイ装置１２０から受信した接続先情報要求に基づいて、接続先サーバ１４０を選択する。接続先サーバ１４０の選択方法としては、例えば、ＧＷ識別子およびデバイス識別子の少なくともいずれか一方と、接続させる接続先サーバ情報とを対応付けたテーブルを用意しておき、テーブルを参照して接続元情報に対応する接続先サーバを選択すればよい。  
ステップＳ５０６では、管理サーバ１３０が、接続先サーバ情報をゲートウェイ装置１２０に送信する。ここでは、ＩＰアドレスを送信する場合を想定する。
【００２９】
ステップＳ５０７では、ゲートウェイ装置１２０が、管理サーバ１３０から受信した接続先サーバ情報に基づいて、ＵＳＢ／ＩＰ接続を開始するための接続開始要求を、指定される接続先サーバ１４０に送信する。
【００３０】
ステップＳ５０８では、接続先サーバ１４０の認証部４０３が、ゲートウェイ装置１２０から受信した接続開始要求に基づいて、ＵＳＢデバイス１１０およびゲートウェイ装置１２０を認証し、接続を許可するかどうかを決定する。認証方法としては、例えば、接続先サーバ１４０の格納部４０１に、接続開始要求に含まれる接続元情報と一致するＧＷ識別子とデバイス識別子とが格納されていれば認証成功とすればよく、ＧＷ識別子とデバイス識別子とが格納されていなければ、認証失敗とすればよい。ここでは、認証が成功し、ゲートウェイ装置１２０の接続を許可する場合を想定する。
【００３１】
ステップＳ５０９では、接続先サーバ１４０が、ＵＳＢ／ＩＰ接続の接続要求をゲートウェイ装置１２０に送信する。  
ステップＳ５１０では、ゲートウェイ装置１２０が、接続要求を接続先サーバ１４０から受け取り、接続要求に対する応答である接続応答を接続先サーバ１４０に送信する。接続先サーバ１４０が接続応答を受信することで、ＵＳＢデバイス１１０と接続先サーバ１４０とのゲートウェイ装置１２０を介したＵＳＢ／ＩＰ接続が確立する。
【００３２】
その後、ステップＳ５１１では、ゲートウェイ装置１２０と接続先サーバ１４０との間でＵＳＢ／ＩＰ通信が行われる。
【００３３】
以上に示した第１の実施形態によれば、ＵＳＢ／ＩＰ接続の処理をゲートウェイ装置側から開始することで、ＮＡＰＴ／ＦＷ越え問題を解決することができる。さらに、管理サーバがＵＳＢデバイスの接続先となる接続先サーバの情報を管理して選択することにより、ゲートウェイ装置に接続先サーバの情報を個別に設定する必要がなく、ＵＳＢデバイスごとに異なる接続先サーバに接続させることもできる。さらに、接続先サーバ側でＵＳＢデバイスとゲートウェイ装置との認証を行うことで、不正なＵＳＢ接続を検出することができる。よって、効率的かつ容易にＵＳＢ／ＩＰ接続を行うことができる。
【００３４】
（第２の実施形態）  
第２の実施形態では、管理サーバの代わりに中継サーバを含み、中継サーバによりＵＳＢ／ＩＰ接続の接続先サーバを決定しつつ、ＵＳＢ／ＩＰ通信を中継する点が第１の実施形態と異なる。
【００３５】
第２の実施形態に係るデータ通信システムについて図６の概略図を参照して説明する。  
図６に示すデータ通信システム６００は、ＵＳＢデバイス１１０、ゲートウェイ装置１２０、接続先サーバ１４０および中継サーバ６０１を含む。  
データ通信システム６００に含まれるＵＳＢデバイス１１０、ゲートウェイ装置１２０および接続先サーバ１４０は、第１の実施形態とほぼ同様である。
【００３６】
中継サーバ６０１は、図３に示す管理サーバ１３０の構成に加え、図４に示す接続先サーバ１４０に含まれる認証部４０３およびＵＳＢ仮想化部４０４を含む点が異なる。なお、接続先サーバ１４０が１つに固定されるならば、中継サーバ６０１は選択部３０３を含まなくともよい。候補サーバから接続先サーバ１４０を選択する場合は、格納部３０１が、候補サーバに関するサーバ情報を格納し、選択部３０３が、接続元情報に基づいて、候補サーバの中からＵＳＢデバイス１１０の接続先となる接続先サーバ１４０を選択すればよい。
【００３７】
次に、第２の実施形態に係るデータ通信システムの通信制御処理について図７のシーケンス図を参照して説明する。ここでは、中継サーバ６０１の中継先の接続先サーバ１４０が予め指定されている場合を想定する。  
ステップＳ５０１からステップＳ５０３まで、ステップＳ５０５およびステップＳ５０８の動作については、図５に示す動作と同様であるので説明を省略する。
【００３８】
ステップＳ７０１では、ゲートウェイ装置１２０が、接続開始要求を中継サーバ６０１に送信する。接続開始要求は、ＧＷ識別子およびデバイス識別子を含む。  
ステップＳ７０２では、中継サーバ６０１が、ゲートウェイ装置１２０から受信した接続開始要求に基づいて、ＵＳＢデバイス１１０に関する認証処理を行う。ここでは、認証処理が成功したと想定する。
【００３９】
ステップＳ７０３では、中継サーバ６０１が、認証処理の結果とともにＵＳＢ／ＩＰ接続の接続要求をゲートウェイ装置１２０に送信する。  
ステップＳ７０４では、ゲートウェイ装置１２０が、接続要求に対する接続応答を中継サーバ６０１に送信する。以上の処理により、ゲートウェイ装置１２０と中継サーバ６０１との間でＵＳＢ／ＩＰ接続が確立される。
【００４０】
ステップＳ７０５では、中継サーバ６０１が、接続開始要求をステップＳ５０５で選択された接続先サーバ１４０に送信する。なお、予め接続先サーバ１４０が１つに固定される場合は、ステップＳ５０５の処理を行わずに、接続開始要求を既知の接続先サーバ１４０に送信すればよい。  
ステップＳ７０６では、接続先サーバ１４０が、接続要求を中継サーバ６０１に送信する。
【００４１】
ステップＳ７０７では、中継サーバ６０１が、接続要求に対する接続応答を接続先サーバ１４０に送信する。これにより、中継サーバ６０１と接続先サーバ１４０との間でＵＳＢ／ＩＰ接続が確立される。  
ステップＳ７０８では、ゲートウェイ装置１２０と中継サーバ６０１との間、および、中継サーバ６０１と接続先サーバ１４０との間でＵＳＢ／ＩＰ通信が行われる。
【００４２】
以上に示した第２の実施形態によれば、中継サーバにより、ＵＳＢ／ＩＰ通信を中継することで、接続先サーバに直接、接続要求を送信せずとも中継サーバと接続を確立するだけで、接続先サーバとＵＳＢ／ＩＰ通信を行うことができる。また、第１の実施形態と同様に、ＵＳＢ／ＩＰ接続の処理をゲートウェイ装置側から開始することで、ＮＡＰＴ／ＦＷ越え問題を解決することができ、効率的かつ容易にＵＳＢ／ＩＰ接続を行うことができる。
【００４３】
（第３の実施形態）  
接続先サーバでは、ＵＳＢデバイス（ゲートウェイ装置）が接続されることを想定して、対象のＵＳＢデバイス用にリソースを空けて常に起動していることもありうるが、実際にＵＳＢデバイスが接続されなかったり、実際にユーザによるサービスの利用が開始していなかったりすると、無駄なリソース消費および電力消費となり得る。  
そこで、第３の実施形態では、管理サーバまたは中継サーバからの指示に応じて、接続先サーバが構成される点が上述の実施形態と異なる。このようにすることで、接続先サーバが常に起動している必要がなくなり、リソースおよび電力の浪費を抑制することができる。
【００４４】
第３の実施形態に係るデータ通信システムの通信制御処理におけるサーバ構成処理について図８のシーケンス図を参照して説明する。  
図８の例では、管理サーバ１３０からのユーザのサービス加入、つまりサービスオーダーの投入（ＳＯ投入）をトリガとして、接続先サーバ１４０を構成する場合を想定する。なお、以降、図８から図１０において管理サーバ１３０を例に説明するが、中継サーバ６０１でも同様の処理を行うことができる。
【００４５】
ステップＳ８０１では、事前設定として、ＵＳＢデバイス１１０、ゲートウェイ装置１２０および管理サーバ１３０に、各情報が設定される。ここで、接続先サーバ１４０には事前情報はされていない。  
ステップＳ８０２では、管理サーバ１３０にサービス加入の通知（ＳＯ投入）が設定される。サービス加入の設定は、例えば、ユーザが管理サーバ１３０にサービス加入に関する情報を入力したときに設定されてもよいし、管理サーバ１３０が、外部にあるＳＯ投入に関する情報が格納されるデータベースにアクセスして情報を取得した場合に設定されてもよい。
【００４６】
ステップＳ８０３では、管理サーバ１３０が、サーバ設定命令および設定情報を接続先サーバ１４０に送信する。設定情報は、例えば、ＧＷ識別子、デバイス識別子である。  
ステップＳ８０４では、接続先サーバ１４０が、サーバ設定命令を受信した場合に管理サーバ１３０から受信したＧＷ識別子およびデバイス識別子を自身の格納部４０１に設定する。これによって、接続先サーバ１４０はサーバ構成を完了する。
【００４７】
ステップＳ８０５では、接続先サーバ１４０が、起動完了通知を管理サーバ１３０に送信する。  
ステップＳ８０６では、管理サーバ１３０が、起動完了通知に基づいて、サーバ構成が完了したことを登録する。  
その後、ステップＳ５０２以降の処理を図５と同様に行えばよい。
【００４８】
なお、ＳＯ投入時に限らず、ゲートウェイ装置１２０からの接続の問い合わせがある場合をトリガとしてもよい。第３の実施形態に係るデータ通信システムの通信制御処理におけるサーバ構成処理の別例について図９のシーケンス図を参照して説明する。  
図９は、接続の問い合わせがある、すなわちゲートウェイ装置１２０から接続元情報が管理サーバ１３０（または中継サーバ）に送信される場合をトリガとする。ステップＳ８０１、ステップＳ５０２からステップＳ５０５までの処理は図５および図８と同様である。
【００４９】
ステップＳ９０１では、管理サーバ１３０は、ステップＳ５０５において接続先サーバ１４０が選択された後、サーバ設定命令および設定情報を選択された接続先サーバ１４０に送信する。  
ステップＳ８０４以降の処理は、図８と同様に行えばよい。
【００５０】
以上に示した第３の実施形態によれば、ＳＯ投入、管理サーバまたは中継サーバへの問い合わせをトリガとして、接続先サーバを構成することで、不要なサーバ起動によるリソース浪費を防ぎつつ、効率的かつ容易にＵＳＢ／ＩＰ接続を行うことができる。
【００５１】
なお、上述の実施形態において、管理サーバ１３０における接続先サーバ１４０の選択処理において、接続先となるサーバがないとして、接続拒絶と決定される場合もある。接続拒絶と決定される場合の動作について図１０のシーケンス図を参照して説明する。  
ステップＳ５０２からステップＳ５０４までの処理は、図５と同様である。  
ステップＳ１００１では、管理サーバ１３０が、接続可能な接続先サーバ１４０が存在しないことを示す接続拒絶を含む接続先サーバ情報をゲートウェイ装置１２０に送信する。  
ステップＳ１００２では、ＵＳＢ／ＩＰ接続が行われない代わりに、ゲートウェイ装置１２０がデバイスドライバを起動し、ゲートウェイ装置１２０とＵＳＢデバイス１１０とを接続する。  
このようにすることで、ゲートウェイ装置１２０においてＵＳＢデバイス１１０を利用できる。
【００５２】
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。  
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００５３】
１００，６００・・・データ通信システム
１１０・・・ＵＳＢデバイス
１２０・・・ゲートウェイ（ＧＷ）装置
１３０・・・管理サーバ
１４０・・・接続先サーバ
２０１・・・ＵＳＢハードウェア部
２０２，３０１，４０１・・・格納部
２０３，４０４・・・ＵＳＢ仮想化部
２０４，３０２，４０２・・・送受信部
３０３・・・選択部
４０３・・・認証部
６０１・・・中継サーバ。
【図１】
0006340357.tif 000002
【図２】
0006340357.tif 000003
【図３】
0006340357.tif 000004
【図４】
0006340357.tif 000005
【図５】
0006340357.tif 000006
【図６】
0006340357.tif 000007
【図７】
0006340357.tif 000008
【図８】
0006340357.tif 000009
【図９】
0006340357.tif 000010
【図１０】
0006340357.tif 000011