(57)【要約】【課題】WebSocketプロトコルに基づく通信システムにおいてWebSocketセッション数の増大を防ぐこと。【解決手段】通信システムは、Web（ウェブ）アプリケーションが動作するWebサーバと、Webブラウザが動作する端末と、Webサーバおよび端末に接続されたプロキシサーバと、を備え、Webサーバは、Webアプリケーションが利用するWebSocketセッションを集約して第１のWebSocketセッションとしてプロキシサーバに接続する第１のプロキシクライアントを有し、端末は、Webブラウザが利用するWebSocketセッションを集約して第２のWebSocketセッションとしてプロキシサーバに接続する第２のプロキシクライアントを有し、プロキシサーバは、第１のWebSocketセッションと第２のWebSocketセッションを中継する中継部を有する。【選択図】図１
2014222455.tif 000002
【特許請求の範囲】
【請求項１】
Web（ウェブ）アプリケーションが動作するWebサーバと、
Webブラウザが動作する端末と、
前記Webサーバおよび前記端末に接続されたプロキシサーバと、を備え、
前記Webサーバは、前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを集約して第１のWebSocketセッションとして前記プロキシサーバに接続する第１のプロキシクライアントを有し、
前記端末は、前記Webブラウザが利用するWebSocketセッションを集約して第２のWebSocketセッションとして前記プロキシサーバに接続する第２のプロキシクライアントを有し、
前記プロキシサーバは、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する中継部を有する、通信システム。
【請求項２】
前記プロキシサーバは、前記第１のプロキシクライアントの識別子と前記第１のプロキシクライアントに割り当てられたＩＰ（Internet Protocol）アドレスとを関連付けて保持するとともに、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する管理データベースを有し、
前記中継部は、前記管理データベースを参照して、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する、請求項１に記載の通信システム。
【請求項３】
前記第１のプロキシクライアントは、自身に割り当てられたＩＰアドレスを前記プロキシサーバに通知し、
前記管理データベースは、前記第１のプロキシクライアントからの通知に基づいて、前記第１のプロキシクライアントの識別子と前記第１のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する、請求項２に記載の通信システム。
【請求項４】
前記第２のプロキシクライアントは、自身に割り当てられたＩＰアドレスを前記プロキシサーバに通知し、
前記管理データベースは、前記第２のプロキシクライアントからの通知に基づいて、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する、請求項２または３に記載の通信システム。
【請求項５】
前記管理データベースは、前記第２のプロキシクライアントの識別子とキャリア網から前記第２のプロキシクライアントに払い出されたＩＰアドレスとを関連付けて保持する、請求項２または３に記載の通信システム。
【請求項６】
前記プロキシサーバは、前記第１のプロキシクライアントの識別子と前記WebアプリケーションのＵＲＬとを関連付けて保持するとともに、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する管理データベースを有し、
前記中継部は、前記管理データベースを参照して、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する、請求項１に記載の通信システム。
【請求項７】
前記第１のプロキシクライアントは、前記WebアプリケーションのＵＲＬ（Uniform Resource Locator）を前記プロキシサーバに通知し、
前記管理データベースは、前記第１のプロキシクライアントからの通知に応じて、前記第１のプロキシクライアントの識別子と前記WebアプリケーションのＵＲＬとを関連付けて保持する、請求項６に記載の通信システム。
【請求項８】
Web（ウェブ）アプリケーションが動作するWebサーバとWebブラウザが動作する端末に接続されるプロキシサーバであって、
前記Webサーバは、前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを集約して第１のWebSocketセッションとして前記プロキシサーバに接続する第１のプロキシクライアントを有し、
前記端末は、前記Webブラウザが利用するWebSocketセッションを集約して第２のWebSocketセッションとして前記プロキシサーバに接続する第２のプロキシクライアントを有し、
前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する中継部を備える、プロキシサーバ。
【請求項９】
プロキシサーバが、Web（ウェブ）アプリケーションが動作するWebサーバであって前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを第１のWebSocketセッションとして集約するように構成された前記Webサーバに接続する工程と、
Webブラウザが動作する端末であって前記Webブラウザが利用するWebSocketセッションを第２のWebSocketセッションとして集約するように構成された前記プロキシサーバに接続する工程と、
前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する工程と、を含む、通信方法。
【請求項１０】
Web（ウェブ）アプリケーションが動作するWebサーバであって前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを第１のWebSocketセッションとして集約するように構成された前記Webサーバに接続する処理と、
Webブラウザが動作する端末であって前記Webブラウザが利用するWebSocketセッションを第２のWebSocketセッションとして集約するように構成された前記プロキシサーバに接続する処理と、
前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する処理と、をコンピュータに実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、プロキシサーバ、通信方法およびプログラムに関し、特に、WebSocketに基づく通信システム、プロキシサーバ、通信方法およびプログラムに関する。
【背景技術】
【０００２】
Web（ウェブ）サーバとクライアント端末（以下、「端末」という。）間の双方向通信を効率良く行うための通信規格として、WebSocket（ウェブソケット）プロトコルが知られている。
【０００３】
WebSocketプロトコルは、Webサーバと端末とのエンドツーエンドでセッションを張り、リアルタイム双方向通信を実現する技術である。
【０００４】
なお、関連技術として、クライアントブラウザ（端末上のブラウザ）の負荷を軽減するために、クライアントブラウザとサービス提供サーバとの間にプロキシサーバを設け、クライアントブラウザで実行していた情報操作ライブラリをプロキシサーバ上で実行するとともに、クライアントブラウザは情報操作ライブラリの実行に必要となる情報を１つのメッセージに集約してプロキシサーバに送信し、一方、プロキシサーバは各サービスから取得した情報を１つのメッセージに集約してクライアントブラウザに返す技術が、特許文献１に記載されている。
【０００５】
また、サーバと複数のクライアント（端末）との間に負荷制御装置を設けたときに、サーバと負荷制御装置との間のＴＣＰ（Transmission Control Protocol）コネクション数を削減するために、負荷制御装置と複数のクライアントとの間のＴＣＰコネクションを集約する技術が、特許文献２に記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１２／０６３２８２号
【特許文献２】国際公開第２００７／１２５９４２号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の特許文献１、２の全開示内容は、引用をもって本書に繰り込み記載されているものとする。以下の分析は、本発明者によってなされたものである。
【０００８】
図３は、関連技術の問題点について説明するための図である。図３は、一例として、４台のWebサーバ１２０Ａ〜１２０Ｄと、３台の端末１３０Ａ〜１３０Ｃがインターネット４０およびキャリア網５０を経由してWebSocket通信を行う場合を示す。
【０００９】
WebSocketによるセッションは、端末内のWebブラウザとWebサーバ間のエンドツーエンドで張られるため、WebSocketセッションはWebブラウザとWebサーバの組合せの数に相当する数だけ張られることになる。図３に示した例においては、インターネット４０において１２（＝３×４）本のWebSocketセッションが張られ、キャリア網５０においても１２（＝３×４）本のWebSocketセッションが張られることになる。
【００１０】
このとき、端末におけるWebブラウザの枚数が１枚増えただけで、Webサーバの台数に相当する数のセッションが増えてしまう。同様に、Webサーバの台数が１台増えただけで、Webブラウザの枚数に相当する数のセッションが増えてしまう。これにより、WebブラウザとWebサーバ間の通信が経由するネットワーク機器に求められるメモリなどの必要リソース量が、WebブラウザやWebサーバの個数の増大に伴って一気に増大するという問題がある。
【００１１】
また、１つの端末から張られるWebSocketセッション数は、その端末が保有するリソースの範囲（メモリ量など）に制限されるため、WebSocketセッションを利用して同時に接続し得るWebサーバの台数は制限される。
【００１２】
以上のように、WebSocketプロトコルに基づいてエンドツーエンドでセッションを張ってリアルタイム双方向通信を実現した場合、ネットワーク内に張られるセッション数の増大が問題となる。
【００１３】
なお、特許文献１に記載された技術は、ブラウザとプロキシサーバとの間でやりとりされる情報を１つのメッセージに集約するものであり、ソケット通信のセッション数を削減するものではない。また、特許文献２に記載された技術は、負荷制御装置により複数のクライアントとの間のＴＣＰコネクションを集約するものであり、各クライアントで使用されるWebブラウザの枚数が増大した場合におけるソケット通信のセッション数を削減するものではない。
【００１４】
そこで、WebSocketプロトコルに基づく通信システムにおいてWebSocketセッション数の増大を防ぐことが要望される。本発明の目的は、かかる要望に寄与する通信システム、プロキシサーバ、通信方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１５】
本発明の第１の視点に係る通信システムは、
Web（ウェブ）アプリケーションが動作するWebサーバと、
Webブラウザが動作する端末と、
前記Webサーバおよび前記端末に接続されたプロキシサーバと、を備え、
前記Webサーバは、前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを集約して第１のWebSocketセッションとして前記プロキシサーバに接続する第１のプロキシクライアントを有し、
前記端末は、前記Webブラウザが利用するWebSocketセッションを集約して第２のWebSocketセッションとして前記プロキシサーバに接続する第２のプロキシクライアントを有し、
前記プロキシサーバは、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する中継部を有する。
【００１６】
本発明の第２の視点に係るプロキシサーバは、
Web（ウェブ）アプリケーションが動作するWebサーバとWebブラウザが動作する端末に接続されるプロキシサーバであって、
前記Webサーバは、前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを集約して第１のWebSocketセッションとして前記プロキシサーバに接続する第１のプロキシクライアントを有し、
前記端末は、前記Webブラウザが利用するWebSocketセッションを集約して第２のWebSocketセッションとして前記プロキシサーバに接続する第２のプロキシクライアントを有し、
前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する中継部を備える。
【００１７】
本発明の第３の視点に係る通信方法は、
プロキシサーバが、Web（ウェブ）アプリケーションが動作するWebサーバであって前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを第１のWebSocketセッションとして集約するように構成された前記Webサーバに接続する工程と、
Webブラウザが動作する端末であって前記Webブラウザが利用するWebSocketセッションを第２のWebSocketセッションとして集約するように構成された前記プロキシサーバに接続する工程と、
前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する工程と、を含む。
【００１８】
本発明の第４の視点に係るプログラムは、
Web（ウェブ）アプリケーションが動作するWebサーバであって前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを第１のWebSocketセッションとして集約するように構成された前記Webサーバに接続する処理と、
Webブラウザが動作する端末であって前記Webブラウザが利用するWebSocketセッションを第２のWebSocketセッションとして集約するように構成された前記プロキシサーバに接続する処理と、
前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する処理と、をコンピュータに実行させる。
なお、プログラムは、非一時的なコンピュータ可読記録媒体（non-transitory computer-readable recording medium）に記録されたプログラム製品として提供することができる。
【発明の効果】
【００１９】
本発明に係る通信システム、プロキシサーバ、通信方法およびプログラムによると、WebSocketプロトコルに基づく通信システムにおいてWebSocketセッション数の増大を防ぐことが可能となる。
【図面の簡単な説明】
【００２０】
【図１】一実施形態に係る通信システムの構成を一例として示す図である。
【図２】第１の実施形態に係る通信システムの構成を一例として示すブロック図である。
【図３】関連技術の問題点について説明するための図である。
【発明を実施するための形態】
【００２１】
はじめに、一実施形態の概要について説明する。なお、この概要に付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。
【００２２】
図１は、一実施形態に係る通信システムの概略構成を一例として示す図である。図１を参照すると、通信システムは、一例として、Webサーバ２０Ａ〜２０Ｄと、端末３０Ａ〜３０Ｃと、WebSocketプロキシサーバ１０とを備えている。
【００２３】
図２は、図１に示した通信システムのより詳細な構成を例示するブロック図である。図２を参照すると、通信システムは、Web（ウェブ）アプリケーション２４が動作するWebサーバ２０Ａ〜２０Ｄと、Webブラウザ３４Ａ〜３４Ｃが動作する端末３０Ａ〜３０Ｃと、Webサーバ２０Ａ〜２０Ｄおよび端末３０Ａ〜３０Ｃに接続されたプロキシサーバ（WebSocketプロキシサーバ）１０とを備えている。なお、図１、図２に示したWebサーバおよび端末の台数、ならびに、Webブラウザの枚数は例示に過ぎず、本発明は図示の態様に限定されない。
【００２４】
Webサーバ２０Ａ〜２０Ｄは、Webアプリケーション２４が利用するWebSocket（ウェブソケット）セッションを集約して第１のWebSocketセッションとしてプロキシサーバ１０に接続する第１のプロキシクライアント（サーバ側プロキシクライアント）２２を有する。一方、端末３０Ａ〜３０Ｃは、Webブラウザ３４Ａ〜３４Ｃが利用するWebSocketセッションを集約して第２のWebSocketセッションとしてプロキシサーバ１０に接続する第２のプロキシクライアント（端末側プロキシクライアント）３２を有する。プロキシサーバ１０は、第１のWebSocketセッションと第２のWebSocketセッションを中継する中継部１２を有する。
【００２５】
このように、一実施形態の通信システムでは、端末３０Ａ〜３０Ｃ内のWebブラウザ３４Ａ〜３４ＣとWebサーバ２０Ａ〜２０Ｃ間で張られるWebSocketセッションを、Webブラウザ側およびWebサーバ側それぞれのプロキシクライアント２２、３２で終端して、相手側にそれぞれプロキシすることで集約する。
【００２６】
このとき、端末が１台増えたときに増えるWebSocketセッション数は１本となり、Webサーバが１台増えたときに増えるWebSocketセッション数は１本となる。このとき、Webサーバの増設台数に相当するだけのリソース量を、WebブラウザとWebサーバ間のネットワーク機器に増設すればよいことになる。
【００２７】
すなわち、一実施形態に係る通信システムによると、関連技術（図３）において端末とWebサーバの組合せの数だけネットワーク内に張られるWebSocketセッションの数を、ネットワーク内に配置されるWebSocketプロキシサーバを経由するように集約することで、大幅に削減することが可能となる。このとき、セッションが経由するネットワーク内機器に必要とされるリソース（メモリ量など）も削減することが可能となる。
【００２８】
＜実施形態１＞
次に、第１の実施形態に係る通信システムについて、図面を参照して説明する。図２は、本実施形態に係る通信システムの構成を一例として示すブロック図である。
【００２９】
図２を参照すると、WebSocketプロキシサーバ１０は、中継部１２およびユーザ管理ＤＢ（Database、データベース）１４を備えている。
【００３０】
WebSocketプロキシサーバ１０は、Webサーバ２０Ａ〜２０Ｄと接続される。Webサーバ２０Ａ内では、まず、サーバ側プロキシクライアント２２が前段に接続され、後段にWebアプリケーション２４が接続される。なお、Webサーバ２０Ｂ〜２０ＤはWebサーバ２０Ａと同様の構成を有することから、説明を省略する。
【００３１】
また、WebSocketプロキシサーバ１０は、端末３０Ａ〜３０Ｃと接続される。端末３０Ａ内では、まず、端末側プロキシクライアント３２が前段に接続され、後段にWebブラウザ３４Ａ〜３４Ｃが接続される。なお、端末３０Ｂ、３０Ｃは端末３０Ａと同様の構成を有することから、説明を省略する。
【００３２】
WebSocketプロキシサーバ１０の中継部１２は、端末３０Ａ〜３０Ｃ、Webサーバ２０Ａ〜２０Ｄのそれぞれと接続し、端末−Webサーバ間のWebSocketセッションを仲介する。中継部１２は、必要に応じて、端末３０Ａ〜３０Ｃ、Webサーバ２０Ａ〜２０Ｄの接続先ＩＰアドレス情報をユーザ管理ＤＢ１４に要求する。
【００３３】
ユーザ管理ＤＢ１４は、端末３０Ａ〜３０Ｃ、Webサーバ２０Ａ〜２０Ｄの保持するＩＰアドレスを管理し、中継部１２の要求に応じて接続先ＩＰアドレス情報を提供する。
【００３４】
Webサーバ２０Ａ〜２０Ｄは、端末３０Ａ〜３０Ｃに対してWebSocketを利用したWebサービスを提供する。
【００３５】
サーバ側プロキシクライアント２２は、Webアプリケーション２４が張るWebSocketセッションを集約して、WebSocketプロキシサーバ１０の中継部１２と接続する。
【００３６】
Webアプリケーション２４は、WebSocketセッションをサーバ側プロキシクライアント２２との間で張った上で、Webサービスを提供する。
【００３７】
端末３０Ａ〜３０Ｃは、Webサーバ２０Ａ〜２０Ｄが提供するWebサービスをユーザが利用するための機能を提供する。
【００３８】
端末側プロキシクライアント３２は、複数のWebブラウザ３４Ａ〜３４Ｃが張るWebSocketセッションを検出した上で集約して、WebSocketプロキシサーバ１０の中継部１２と接続する。
【００３９】
Webブラウザ３４Ａ〜３４Ｃは、WebSocketセッションを端末側プロキシクライアント３２との間で張り、ユーザに向けては、Webサーバ２０Ａ〜２０Ｄの提供するWebサービスを利用するための画面を提供する。
【００４０】
次に、図２を参照して、本実施形態の通信システムの動作について説明する。
【００４１】
端末３０Ａは、端末側プロキシクライアント３２を備えている。Webブラウザ３４Ａ〜３４ＣからのWebSocket通信は、端末３０Ａ内で端末側プロキシクライアント３２に集約される。
【００４２】
一方、Webサーバ２０Ａは、サーバ側プロキシクライアント２２を備える。Webアプリケーション２４からのWebSocket通信は、Webサーバ２０Ａ内でサーバ側プロキシクライアント２２に集約される。
【００４３】
端末側プロキシクライアント３２およびサーバ側プロキシクライアント２２は、それぞれ、事前に自身に割り振られたＩＰ（Internet Protocol）アドレスをWebSocketプロキシサーバ１０に通知する。WebSocketプロキシサーバ１０のユーザ管理ＤＢ１４は、端末３０Ａ〜３０Ｃ側およびWebサーバ２０Ａ〜２０Ｄ側の各接続先を管理する。端末側プロキシクライアント３２およびサーバ側プロキシクライアント２２は、それぞれ、割り振られたＩＰアドレスが変更されるたびにWebSocketプロキシサーバ１０に対して、変更後のＩＰアドレスを通知する。
【００４４】
端末側プロキシクライアント３２およびサーバ側プロキシクライアント２２は、それぞれ、接続が必要となるタイミングにのみ、WebSocketプロキシサーバ１０の中継部１２に対してWebSocketで接続する。
【００４５】
WebSocket通信を開始する際、まず、ＨＴＴＰ（Hypertext Transfer Protocol）通信にてWebSocketセッションのハンドシェイクが行われる。端末側プロキシクライアント３２は、かかるハンドシェイク通信を監視することでWebSocketセッションの開始を検知し、以降のWebSocketセッションを、端末側プロキシクライアント３２を経由させることにより、WebSocketセッションを集約する。なお、端末側プロキシクライアント３２は、WebSocket通信のみを検出して集約するようにしてもよい。
【００４６】
サーバ側プロキシクライアント２２は、Webサーバ２０Ａに接続する端末が１台も存在しないときに限り、接続を開放する。端末側プロキシクライアント３２は、配下にWebSocketで接続するWebブラウザ３４が１枚も開いていないときに限り、接続を開放する。
【００４７】
本実施形態に係る通信システムによると、ネットワーク内に張られるWebSocketセッション数を、関連技術（図３）と比較して大幅に削減することが可能となる。また、端末内のWebブラウザ、Webサーバ増設時に増えるWebSocketセッション数も少なくすることができる。これにより、ネットワーク内のネットワーク機器に求められるリソース量も削減することが可能となる。また、１台の端末から外部に張られるWebSocketセッション数を１本に集約し、端末内のリソース利用を効率化することで、同量の端末リソースでも同時に接続できるWebサーバの上限数を増やすことが可能となる。
【００４８】
＜変形例１＞
上記実施形態においては、Webサーバの接続先情報としてＩＰアドレスをユーザ管理ＤＢ１４で管理する。一方、Webサーバ側の接続先情報として、ＩＰアドレスの代わりに、ＵＲＬ（Uniform Resource Locator）にて管理する方式を採用してもよい。
【００４９】
＜変形例２＞
上記実施形態では、端末の接続先情報としてＩＰアドレスを端末から通知する方式が用いられている。しかし、ＩＰアドレスの払い出しをキャリア網５０から実施する場合、払い出したＩＰアドレスはキャリア網５０内で管理できるため、端末からのＩＰアドレスの通知を省略してもよい。
【００５０】
なお、本発明において、さらに、下記の形態が可能である。
［形態１］
上記第１の視点に係る通信システムのとおりである。
［形態２］
前記プロキシサーバは、前記第１のプロキシクライアントの識別子と前記第１のプロキシクライアントに割り当てられたＩＰ（Internet Protocol）アドレスとを関連付けて保持するとともに、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する管理データベースを有し、
前記中継部は、前記管理データベースを参照して、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する、形態１に記載の通信システム。
［形態３］
前記第１のプロキシクライアントは、自身に割り当てられたＩＰアドレスを前記プロキシサーバに通知し、
前記管理データベースは、前記第１のプロキシクライアントからの通知に基づいて、前記第１のプロキシクライアントの識別子と前記第１のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する、形態２に記載の通信システム。
［形態４］
前記第２のプロキシクライアントは、自身に割り当てられたＩＰアドレスを前記プロキシサーバに通知し、
前記管理データベースは、前記第２のプロキシクライアントからの通知に基づいて、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する、形態２または３に記載の通信システム。
［形態５］
前記管理データベースは、前記第２のプロキシクライアントの識別子とキャリア網から前記第２のプロキシクライアントに払い出されたＩＰアドレスとを関連付けて保持する、形態２または３に記載の通信システム。
［形態６］
前記プロキシサーバは、前記第１のプロキシクライアントの識別子と前記WebアプリケーションのＵＲＬとを関連付けて保持するとともに、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する管理データベースを有し、
前記中継部は、前記管理データベースを参照して、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する、形態１に記載の通信システム。
［形態７］
前記第１のプロキシクライアントは、前記WebアプリケーションのＵＲＬ（Uniform Resource Locator）を前記プロキシサーバに通知し、
前記管理データベースは、前記第１のプロキシクライアントからの通知に応じて、前記第１のプロキシクライアントの識別子と前記WebアプリケーションのＵＲＬとを関連付けて保持する、形態６に記載の通信システム。
［形態８］
上記第２の視点に係るプロキシサーバのとおりである。
［形態９］
前記第１のプロキシクライアントの識別子と前記第１のプロキシクライアントに割り当てられたＩＰ（Internet Protocol）アドレスとを関連付けて保持するとともに、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する管理データベースを備え、
前記中継部は、前記管理データベースを参照して、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する、形態８に記載のプロキシサーバ。
［形態１０］
前記第１のプロキシクライアントは、自身に割り当てられたＩＰアドレスを前記プロキシサーバに通知し、
前記管理データベースは、前記第１のプロキシクライアントからの通知に基づいて、前記第１のプロキシクライアントの識別子と前記第１のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する、形態９に記載のプロキシサーバ。
［形態１１］
前記第２のプロキシクライアントは、自身に割り当てられたＩＰアドレスを前記プロキシサーバに通知し、
前記管理データベースは、前記第２のプロキシクライアントからの通知に基づいて、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する、形態９または１０に記載のプロキシサーバ。
［形態１２］
前記管理データベースは、前記第２のプロキシクライアントの識別子とキャリア網から前記第２のプロキシクライアントに払い出されたＩＰアドレスとを関連付けて保持する、形態９または１０に記載のプロキシサーバ。
［形態１３］
前記第１のプロキシクライアントの識別子と前記WebアプリケーションのＵＲＬとを関連付けて保持するとともに、前記第２のプロキシクライアントの識別子と前記第２のプロキシクライアントに割り当てられたＩＰアドレスとを関連付けて保持する管理データベースを備え、
前記中継部は、前記管理データベースを参照して、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する、形態８に記載のプロキシサーバ。
［形態１４］
前記第１のプロキシクライアントは、前記WebアプリケーションのＵＲＬ（Uniform Resource Locator）を前記プロキシサーバに通知し、
前記管理データベースは、前記第１のプロキシクライアントからの通知に応じて、前記第１のプロキシクライアントの識別子と前記WebアプリケーションのＵＲＬとを関連付けて保持する、形態１３に記載のプロキシサーバ。
［形態１５］
上記第３の視点に係る通信方法のとおりである。
［形態１６］
Web（ウェブ）アプリケーションが動作するWebサーバと、
Webブラウザが動作する端末と、
前記Webサーバおよび前記端末に接続されたプロキシサーバと、を備えた通信システムにおける通信方法であって、
前記Webサーバが、前記Webアプリケーションが利用するWebSocket（ウェブソケット）セッションを集約して第１のWebSocketセッションとして前記プロキシサーバに接続する工程と、
前記端末が、前記Webブラウザが利用するWebSocketセッションを集約して第２のWebSocketセッションとして前記プロキシサーバに接続する工程と、
前記プロキシサーバが、前記第１のWebSocketセッションと前記第２のWebSocketセッションを中継する工程と、を含む、通信方法。
［形態１７］
上記第４の視点に係るプログラムのとおりである。
【００５１】
なお、上記の特許文献１または２の全開示内容は、引用をもって本書に繰り込み記載されているものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００５２】
１０    WebSocketプロキシサーバ
１２    中継部
１４    ユーザ管理ＤＢ
２０Ａ〜２０Ｄ、１２０Ａ〜１２０Ｄ    Webサーバ
２２    サーバ側プロキシクライアント
２４    Webアプリケーション
３０Ａ〜３０Ｃ、１３０Ａ〜１３０Ｃ  端末
３２    端末側プロキシクライアント
３４Ａ〜３４Ｃ    Webブラウザ
４０    インターネット
５０    キャリア網
【図１】
2014222455.tif 000003
【図２】
2014222455.tif 000004
【図３】
2014222455.tif 000005