JP3782981B2 - セッション中継システム、クライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラム - Google Patents

セッション中継システム、クライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラム Download PDF

Info

Publication number
JP3782981B2
JP3782981B2 JP2002127686A JP2002127686A JP3782981B2 JP 3782981 B2 JP3782981 B2 JP 3782981B2 JP 2002127686 A JP2002127686 A JP 2002127686A JP 2002127686 A JP2002127686 A JP 2002127686A JP 3782981 B2 JP3782981 B2 JP 3782981B2
Authority
JP
Japan
Prior art keywords
session
information
information processing
processing system
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002127686A
Other languages
English (en)
Other versions
JP2003324484A (ja
Inventor
光司 高野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2002127686A priority Critical patent/JP3782981B2/ja
Priority to US10/388,355 priority patent/US20030204601A1/en
Publication of JP2003324484A publication Critical patent/JP2003324484A/ja
Application granted granted Critical
Publication of JP3782981B2 publication Critical patent/JP3782981B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Description

【0001】
【発明の属する技術分野】
本発明は、第1の情報処理システムとの間で第1のプロトコルによる第1のセッションを行うとともに、第2の情報処理システムとの間で第2のプロトコルによる第2のセッションを行い、複数の第1セッション及び1つの第2セッション間を中継してこれらセッションにより構成される第3のセッションを確立するセッション中継システム、及びこれを有するネットワークシステム、並びにこれに適したクライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラムに関する。
【0002】
【従来の技術】
遠隔のサーバとの間で文字情報の送受を行うことにより、サーバのリソースを利用するためのプロトコルとしてTelnet(テルネット)が知られている。Telnetは、クライアントから、TCP/IPにより接続されたサーバに対して遠隔からログ・インし、クライアント側のコンピュータを仮想端末として使用することを可能とするものである。したがって、TCP/IPをベースとしているネットワーク環境では、サーバがTelnetに対してポートを開いていれば、どこのクライアントからでも利用することができる。
【0003】
一方、セキュリティを確保するため、一般に、インターネットと社内ネットワークの間にはファイアウォールが設けられる。企業におけるネットワーク構成としては、ネットワークをファイアウォールで2つのセグメントに分けて管理し、一方のセグメントをDMZ(DeMilitarized Zone)としてそこに公開サーバを配置し、他方を社内ネットワークとして使用するものが一般的に採用されている。このような一般企業のファイアウォールでは、セキュリティ上の理由から、インターネットに対してTelnet用のポートを開けることはない。したがって、従来、TelnetはUnix(登録商標)系のコンピュータで広く使われているが、企業においては通常、社内ネットワーク内で使用されている。そして、社外から社内ネットワーク内のサーバにTelnetでアクセスするには、社内ネットワークにダイヤルインによって直接接続する方法が、一般的に用いられている。
【0004】
【発明が解決しようとする課題】
しかしながら、社内ネットワークは社内にとどまることなく広がっており、世界的な社内ネットワークをもつ企業も増えてきている。したがって、インターネットを介し、パソコンや携帯電話等のモバイルデバイスを用いてあらゆる所から社内ネットワーク内のサーバに対し、安全にTelnetによるアクセスを行いたいという強い要請がある。また、ある社内ネットワークからインターネットを経由して他社のネットワークに対してアクセスしたいという要求もある。
【0005】
そこで、本発明は、外部のネットワークからサーバへのTelnet等によるアクセスがファイアウォールにより制限されている場合でも、サーバとのTelnet等によるアクセスを可能とする技術を提供することを目的とする。
【0006】
【課題を解決するための手段】
この目的を達成するため、本発明に係るセッション中継システムは、第1の情報処理システムとの間で第1のプロトコルによる第1のセッションを行うとともに、第2の情報処理システムとの間で第2のプロトコルによる第2のセッションを行い、複数の前記第1セッション及び1つの前記第2セッション間を中継してこれらセッションにより構成される第3のセッションを確立するセッション中継システムであって、前記第1情報処理システムからの接続要求に応じて確立する前記第3セッションを識別するためのID情報を生成し、前記接続要求を行った前記第1情報処理システムに送るセッション管理手段と、前記第1情報処理システムから前記ID情報とともに送られてきた処理要求に応じて前記第2情報処理システムから送られる処理結果のデータを前記第1情報処理システムに送信する処理結果転送手段とを具備することを特徴とする。
【0007】
また、本発明に係るセッション中継方法は、第1の情報処理システムとの間で第1のプロトコルによる第1のセッションを行うとともに、第2の情報処理システムとの間で第2のプロトコルによる第2のセッションを行い、複数の前記第1セッション及び1つの前記第2セッション間を中継してこれらセッションにより構成される第3のセッションを確立するセッション中継方法であって、前記第1情報処理システムからの接続要求に応じて確立する前記第3セッションを識別するためのID情報を生成し、前記接続要求を行った前記第1情報処理システムに送るセッション管理工程と、前記第1情報処理システムから前記ID情報とともに送られてきた処理要求に応じて前記第2情報処理システムから送られる処理結果のデータを前記第1情報処理システムに送信する処理結果転送工程とを具備することを特徴とする。
【0008】
また、本発明に係るセッション中継プログラムは、コンピュータを、上述の本発明に係るセッション中継システムとして機能させるものであることを特徴とする。
【0009】
前記セッション中継システム、セッション中継方法及びセッション中継プログラムの発明において、セッション中継システムやセッション中継プログラムは、たとえば、ウェブサーバとウェブサーバで稼働するサーブレットによって構成される。第1の情報処理システムとしては、たとえばiアプリに対応した携帯電話やアプレットの実行が可能なWWWブラウザを有するパソコンが該当する。iアプリとは、携帯電話においてウェブにアクセスする際に動作するJava(登録商標)プログラムである。第2の情報処理システムとしては、たとえばファイアウォールで保護されたイントラネット内のサーバが該当する。第1のプロトコルとしては、たとえばリクエストとレスポンスによる1回の通信が終了するとセッション(コネクション)が切断されるHTTP1.0が該当する。第2のプロトコルとしては、たとえば、通常はファイアウォールを通過することができないため、インターネットを介してイントラネット内のサーバにアクセスするためには使用できないTelnetのようなプロトコルが該当する。また、複数の第1セッションとは、複数の第1情報処理システムとの間での多重化された複数のセッションではなく、1つの第1情報処理システムとの間での時間的に非連続的に発生する複数の第1セッションを意味する。第3のセッションとは第1及び第2情報処理システムのアプリケーション間に確立される論理的接続を意味する。
【0010】
前記セッション中継システム、セッション中継方法及びセッション中継プログラムの発明において、第1セッションにより第1情報処理システムからの接続要求があると、セッション中継システムは、前記接続要求に応じて確立する第3セッションを識別するためのID情報を生成し、第1情報処理システムに送る。その後、確立した第3セッションを構成する第1セッションにより、第1情報処理システムからのID情報を伴う処理要求を受けると、セッション中継システムは、既に確立した第3セッションを構成する第2セッションにより、その処理要求を第2情報処理システムに送る。これに応じて第2情報処理システムから送られる処理結果のデータを受け取ると、セッション中継システムは、受け取ったデータを第1情報処理システムに送る。
【0011】
このようにして、セッション中継システムは、ID情報により、どの第1情報処理システムとの間の第3セッションであるかを識別しながら、処理要求等を第1及び第2情報処理システム間で中継する。その際、第2プロトコルがファイアウォールを通過できないものであっても、第1プロトコルを適当に選択し、ファイアウォールを第1セッションにおいて通過するようにすることにより、ファイアウォールの外側に位置する第1情報処理システムと、ファイアウォールの内側に位置する第2情報処理システムとの間の第3セッションを確立し、維持することができる。
【0012】
前記セッション中継システム、セッション中継方法及びセッション中継プログラムの発明の一態様においては、前記処理結果転送手段又は処理結果転送工程は前記処理要求に応じて第2情報処理システムから送られる処理結果のデータを、前記処理要求とともに送られてきたID情報に対応させてバッファに保存するバッファ手段又は保存工程と、前記第1情報処理システムからの前記ID情報を伴う更新要求に応じ、前記ID情報に対応する前記バッファ中のデータであって未だ前記第1情報処理システムには送信していないものを前記第1情報処理システムに送信する更新手段又は更新工程とを備える。前記更新要求は、前記接続要求とは異なる前記第1セッションにより行われる。
【0013】
前記態様によれば、処理結果のデータをバッファに保存し、更新要求に応じて第1情報処理システムへ送るようにしているため、第1セッションが更新要求に対する最初の応答の完了により直ちに切断される場合でも、前記切断の後に第2情報処理システムから送られてくるデータをバッファに蓄えておき、蓄えてあるデータを、その後の更新要求に応じて第1情報処理システムに送ることにより、支障なく第3セッションを維持することができる。
【0014】
前記バッファとしては前記ID情報ごとに作られるリングバッファを使用することができる。前記バッファ手段は、又は前記保存工程では、前記処理結果のデータを、対応する前記リングバッファに追加するとともに、前記追加後の前記リングバッファにおける、前記追加されたデータの末尾のポジションに関連するポジション情報とともに前記第1情報処理システムに送信し、さらに、前記送信終了に伴い前記第1セッションが遮断された後に引き続き送られてくる前記処理結果のデータを前記対応するリングバッファに順次追加する。
【0015】
この場合、前記ID情報を伴う更新要求に応じたデータの送信に際しては、前記ID情報に対応する前記リングバッファ中の、前記更新要求とともに送られてくる前記ポジション以降のデータが前記第1情報処理システムに送信される。
【0016】
また、前記セッション中継システム、セッション中継方法及びセッション中継プログラムの発明の別の態様においては、前記第1情報処理システムは、第1のファイアウォールの外側に存在し、前記セッション中継システム及び第2情報処理システムは前記第1ファイアウォールの内側に存在し、前記第1セッションは前記第1ファイアウォールを通過して行うことが可能なものである。
【0017】
この場合、第3の情報処理システムにより前記第1情報処理システムとの間の第1セッションを行い、前記第3情報処理システムと第3のプロトコルで通信可能な第4の情報処理システムにより前記第2情報処理システムとの間の第2セッションを行い、前記第3及び第4情報処理システム間の前記第3プロトコルによる通信は第2のファイアウォールを通過して行い、前記第3情報処理システムが前記セッション管理手段を有し又は前記セッション管理工程を行い、前記第4情報処理システムが前記第2情報処理システムとの間の第2セッションを確立し、かつ前記第3プロトコルによる通信と、前記第2プロトコルによる通信との中継を行うようにしてもよい。
【0018】
さらに、前記第3情報処理システムは、前記セッション管理手段、バッファ手段及び更新手段を備え、あるいは前記第3情報処理システムが前記セッション管理工程、保存工程及び更新工程を行うとともに、前記第3情報処理システムは、前記第1情報処理システムからの接続要求及びこれに応じて生成した前記ID情報、並びに前記第1情報処理システムからのID情報を伴う処理要求を前記第4情報処理システムへ送信し、前記第1情報処理システムからの接続要求があるたびに作成する前記第4情報処理システムに対するソケットを、前記接続要求に応じて生成される前記ID情報に対応させて記憶し、前記第4情報処理システムは、前記接続要求及びこれに応じて生成されたID情報が送られてくるごとに、前記ID情報に対応させて、前記第2情報処理システムとの間の第2セッションを確立し、前記ソケットを介して前記処理要求が送られてきたときは、送られてきた処理要求を、そのソケットに対応する前記第2セッションにより前記第2情報処理システムに送信し、送信した処理要求に対する処理結果を受信して前記第3情報処理システムに送信するようにしてもよい。
【0019】
一方、本発明に係るネットワークシステムは、上述の本発明に係るセッション中継システム並びにその中継によって確立される第3セッションによって接続される第1情報処理システム及び第2情報処理システムを具備することを特徴とする。
【0020】
本発明に係るクライアント端末は、所定のサーバとの接続要求を受け入れ、所定のプロトコルによるセッションにより所定のセッション中継システムに対して送信する接続要求手段と、前記セッション中継システムから送られる、前記接続要求に応じて確立する前記サーバとの、前記セッションを含む上位のセッションを識別するためのID情報を受信するID情報受信手段と、前記サーバに対する処理要求を受け入れ、前記ID情報とともに前記セッション中継システムに送信する処理要求手段と、前記処理要求に応じて前記サーバから送られ、前記セッション中継システムに保存されている処理結果のデータによる更新要求を前記ID情報とともに前記セッション中継システムに送信する更新要求手段と、前記更新要求に応じて前記セッション中継システムから送られてくるデータを表示する表示手段とを具備することを特徴とする。
【0021】
本発明に係るリモートアクセス方法は、ファイアウォール内のサーバとの接続要求を受け入れ、前記ファイアウォールを通過可能なプロトコルによる一セッションにより前記ファイアウォール内のセッション中継システムに対して送信する接続要求工程と、前記セッション中継システムから送られる、前記接続要求に応じて確立する前記サーバとの、前記一セッションを含む上位のセッションを識別するためのID情報を受信するID情報受信工程と、前記サーバに対する処理要求を受け入れ、前記ID情報とともに前記セッション中継システムに送信する処理要求工程と、前記処理要求に応じて前記サーバから送られ、前記セッション中継システムに保存されている処理結果のデータによる更新要求を前記ID情報とともに、前記一セッションとは別の前記プロトコルによるセッションであって前記上位セッションに含まれるセッションにより、前記通信中継システムに送信する更新要求工程と、前記更新要求に応じて前記セッション中継システムから送られてくるデータを表示する表示工程とを具備することを特徴とする。
【0022】
本発明に係るクライアントプログラムは、上述の本発明に係るリモートアクセス方法に従った手順をクライアント端末に実行させるものであることを特徴とする。
【0023】
前記クライアント端末、リモートアクセス方法及びクライアントプログラムの発明における前記クライアント端末、サーバ、一セッション及び上位のセッションはそれぞれ、上述の本発明に係るセッション中継システムにおける第1情報処理システム、第2情報処理システム、第1セッション及び第3セッションに対応する。所定のプロトコルあるいは前記ファイアウォールを通過可能なプロトコルとしては、たとえばHTTPが該当する。
【0024】
前記クライアント端末、リモートアクセス方法及びクライアントプログラムの発明も、上述のセッション中継システム、セッション中継方法、セッション中継プログラムの発明と協働して、同様の作用・効果を奏する。
【0025】
前記クライアント端末、リモートアクセス方法及びクライアントプログラムの発明の一態様においては、前記セッション中継システムから前記処理要求のデータとともに送られてくる前記セッション中継システムのリングバッファの末尾のポジションを記憶し、前記更新要求の送信に際し、記憶している最新の前記ポジションを同時に送信する。
【0026】
また、前記セッション中継システムから送られてくる処理結果のデータをリングバッファに保存するとともに、履歴表示要求を受け入れ、これに応じて前記リングバッファに保存されているデータのすべてを表示することが可能な履歴表示を行うようにしてもよい。
【0027】
前記セッション中継システムが、上述の第1情報処理システム(クライアント端末)との間の第1セッションを行う第3の情報処理システムと、前記第2情報処理システム(サーバ)との間の第2セッションを行い、かつ前記第3情報処理システムと第3のプロトコルで通信可能な第4の情報処理システムとを備え、前記第3及び第4情報処理システム間の前記第3プロトコルによる通信が第2のファイアウォールを通過して行われるものである場合には、前記クライアント端末は前記セッション中継システムの第4情報処理システムのIPアドレス及びポート番号並びに前記サーバへの認証情報、IPアドレス及びポート番号の入力を受け入れて記憶し、前記接続要求手段は、又は接続要求工程若しくは接続要求手順では、前記接続要求の送信に際し、前記記憶した各情報を同時に送信するようにしてもよい。
【0028】
【発明の実施の形態】
図1は本発明の一実施形態に係るネットワークシステムの構成を示す。図2はこれを階層的に示す。これらの図に示すように、このシステムは、Telnetによりリソースを提供するサーバ1、リソースの提供を受けるクライアント端末2、サーバ1及びクライアント端末2間のセッションを中継するセッション中継システム3を有する。セッション中継システム3はサーバ1及びクライアント2との間でそれぞれHTTP及びTelnetにより通信可能であり、HTTPによる複数のセッションをTelnetによる1つのセッションに対応させて、それらのセッション間の中継を行い、これによりサーバ1及びクライアント2間で上位のセッションを確立するものである。セッション中継システム3はウェブサーバ4及びマッパ5を備える。マッパ5はウェブサーバ4及びサーバ1間の通信において所定のプロトコル変換を伴った中継を行うとともに、ウェブサーバ4及びサーバ1間で複数の異なるセッションが発生した場合に各セッションの接続を保持するようにマッピングを行う。つまり、直接的にはマッパ5がサーバ1との間でTelnetによるセッションを行う。クライアント端末2としては、たとえば、iアプリに対応した携帯端末2aや、Java(登録商標)アプレットに対応したウェブブラウザを有するパソコン2bが該当する。携帯端末2a及びパソコン2bはそれぞれ表示データを保存するためのリングバッファ11及び12を備える。
【0029】
クライアント端末2とウェブサーバ4との間及びウェブサーバ4とマッパ5との間にはそれぞれファイアウォール6及び7が介在し、ネットワークをインターネット8、DMZ(DeMilitarized Zone)9及びイントラネット(社内LAN)10の各ネットワーク・セグメントに分けて、イントラネット10におけるセキュリティを向上させている。ファイアウォール6はインターネット8側からのTCP宛先ポートが80のパケットを通過させ、宛先ポートが23のパケットは破棄するようにフィルタリングしている。したがって、クライアント2は、インターネット8を介し、ファイアウォール6通過してウェブサーバ4との間でHTTPによるコネクションを確立することができるが、Telnetによるアクセスは行うことができない。ファイアウォール7は宛先ポートが23000のパケットを通過させる。
【0030】
図3はウェブサーバ4における本ネットワークシステムに関するシステム構成を示す。このウェブサーバ4のシステムは、ウェブサーバ4上に常駐するJava(登録商標)サーブレットにより実現される。同図に示すように、ウェブサーバ4のシステムは、サーバ1及びクライアント2間で行われるセッションに関する管理を行うセッション管理部31、マッパ5との接続管理を行うマッパ接続管理部32、クライアント2からの処理要求に応じ、クライアント2との間の処理を行うリクエスト処理部33、及びリングバッファ35に関する処理を行うリングバッファ処理部34を備える。36はクライアント端末2及びサーバ1間のセッションを維持するのに必要なセッション情報を保持する領域である。
【0031】
セッション管理部31は、クライアント2からの接続要求に応じてサーバ1との間で確立するセッションを識別するためのセッションIDを生成し、接続要求を行ったクライアント2に送るとともに、そのセッションIDの有効期間の管理を行う。たとえば、クライアント2から一定のセッションIDを伴った要求が10分以上なかったときは、そのセッションIDを無効とし、セッションを終了する。また、生成したセッションIDとともに、接続要求に伴ってクライアント2から送られてきた、Telnetによるログイン用のユーザID、パスワード、サーバ1のIPアドレス(ホストアドレス)、サーバ1におけるTelnet用のポート番号(ホストポート)、マッパ5のIPアドレス(マッパアドレス)、及びマッパ5に対する接続用のポート番号(マッパポート)、現在時刻をミリ秒単位で示すタイムスタンプ及びリングバッファ35のアドレスを示すポインタ、並びにマッパ5における各アプリケーションプロセスへの接続に使用するソケットを各セッションIDごとのセッション情報として保持する。セッション情報は、サーバ1とのセッション開始時に領域36に記憶され、そのセッションが終了した時点で消去される。
【0032】
マッパ接続管理部32は、マッパ5との間の接続及び接続の遮断並びにデータの送受を行うとともに、マッパ5との接続の有効期間を管理する。たとえば、マッパ5との間で何もデータの送受がない期間が10分継続した場合は、接続を遮断する。リクエスト処理部33は、クライアント端末2からのHTTPによるGETメソッド及びPOSTメソッドに従ったリクエストに対し、レスポンスメッセージを返送する処理を行う。
【0033】
リングバッファ処理部34は、クライアント2からセッションIDとともに送られてきた処理要求を送ったことに応じてサーバ1から送られるデータをそのセッションIDに対応させてバッファ35に保存する。また、クライアント端末2からのセッションIDを伴う更新要求に応じ、そのセッションIDに対応するバッファ35中のデータをクライアント端末2に送信する。
【0034】
図4はクライアント端末2におけるシステム構成を示す。同図に示すように、クライアント端末2は、ユーザによるログインの指示を受け入れるログイン部41、各種設定データの入力を受け入れて保存する設定保存部42、サーバ1への処理要求としてTelnetコマンドを受け入れるリクエスト入力部43、サーバ1に対する処理要求の送信及び前記処理要求に応じて送られてくる処理結果の受信を行う要求送信受信部45、処理結果の更新要求を受け入れる同期入力部46、更新要求に応じてリングバッファ11や12のデータの更新処理を行う同期処理部47、及び履歴の表示要求に応じてリングバッファ11や12内のデータを履歴として表示する履歴表示部48を備える。
【0035】
図5は携帯端末2aにおける本ネットワークシステムの使用状況を示す。図5(a)は本ネットワークシステムを実現するiアプリを起動したときに表示されるログイン画面を示す。図中の51はユーザIDの表示領域、52はパスワードの表示領域である。後述の設定画面でユーザID及びパスワード等が設定されている場合に表示される。53はサーバ1とのセッションを開始するためのボタン、54はiアプリを終了させるためのボタン、55は図5(b)及び(c)の設定画面を表示させるためのボタンである。図5(c)の設定画面は、図5(b)の設定画面をスクロールさせることにより表示させることができる。
【0036】
図5(b)及び(c)中の56〜61はサーバ1とのセッションを開始するために特定すべき各種情報を入力するための入力フィールドである。入力フィールド56及び57にはTelnetでサーバ1にログインするために必要なユーザID及びパスワードが入力される。入力フィールド58及び59には、サーバ1のIPアドレス(ホストアドレス)及びTelnet用のポート番号が入力される。入力フィールド60及び61には、サーバ1とのセッションにおいて経由するマッパ5のIPアドレス(マッパアドレス)及びそのマッパへの接続に使用するポート番号(マッパポート)が入力される。62は図5(a)のログイン画面へ戻るためのボタンである。
【0037】
図5(d)は、ボタン53の押下によりセッションが開始されたときに表示されるセッション画面を示す。図中の63はTelnetコマンドの入力フィールド、64は入力したコマンドをサーバ1へ送るためのボタン、65は送られたコマンドに対する処理結果が表示される表示部である。66は処理結果の表示を更新するためのボタン、67は処理結果の履歴を表示させるためのボタンである。
【0038】
図6はパソコン2bにおける本ネットワークシステムの使用状況を示す。パソコン2bでは本ネットワークシステムに関する機能はブラウザ上で実行されるJava(登録商標)アプレットにより実現される。同図(a)では設定画面が示されており、図中の入力フィールド71は、図5の入力フィールド56〜61に対応する。図中の72は入力フィールド71に入力した各種情報に基づいてサーバ1とのセッションを開始するためのボタン、73はJava(登録商標)アプレットによる処理をキャンセルするためのボタンである。
【0039】
同図(b)はボタン72の押下によりセッションを開始したときに表示されるセッション画面を示す。図中のボタン74〜77は、図5のボタン64、66、67及び54にそれぞれ対応する。78はTelnetコマンドの入力フィールド、79は入力したコマンドについての処理結果を表示する表示部である。
【0040】
図4中のログイン部41は、図5(a)のスタートボタン53の押下を受け入れる。設定保存部42は図5(b)及び(c)や図6(a)の設定画面で入力される各種情報を保存する。ここで保存した情報は、消去しない限り保持されており、次回のセッションにおいては、保存した情報をそのまま利用することができる。リクエスト入力部43は、図5や図6のコマンド入力フィールド63や78を用いて行われるコマンドの入力を受け入れる。コマンドとしてはたとえば、ディレクトリの内容を表示させる“ls”、ファイルをコピーする“copy”、現在のディレクトリを変更する“cd”が該当する。
【0041】
要求送信受信部45が送信する要求は、HTTPに従ったGETリクエスト及びPOSTリクエストのメッセージとしてウェブサーバ4に送られる。要求送信受信部45はこれに対する応答として、ウェブサーバ4から、GETレスポンス及びPOSTレスポンスのメッセージを受け取る。GETリクエスト及びGETレスポンスにより更新要求の送信及び更新データの受信が行われ、POSTリクエスト及びPOSTレスポンスによりサーバ1へのTelnetによるログイン及びログアウト並びにTelnetコマンドの送信及び処理結果の受信が行われる。
【0042】
同期入力部46は、更新ボタン66や75の押下を受け入れる。同期処理部47は、更新ボタン66や75の押下に応じ、クライアント端末2におけるリングバッファ11や12の状態、すなわちウェブサーバ4のリングバッファ35中のどこまでのデータを取得済みであるかを示すポジションのデータをウェブサーバ4に送り、これに応じてウェブサーバから送られてくる更新データをリングバッファ11や12に追加するとともに表示部65や79に表示する。履歴表示部48は、履歴ボタン67や76の押下に応じて、リングバッファ11や12に保存されているデータを表示する。
【0043】
図7はマッパ5のシステム構成を示す。マッパ5は、ウェブサーバ4のサーブレットとの接続を管理する接続管理部81及びホスト1との接続を管理する接続管理部82を有する。接続管理部81はウェブサーバ4のマッパ接続管理部32から送られてくるコマンドをそれぞれの処理ルーチンに振り分けて接続管理部82へ送信し、マッパ接続管理部32から送られてくるデータを接続管理部82へ送信するとともに、接続管理部82から送られてくるデータをウェブサーバ4のマッパ接続管理部32に送信する。送られてくるコマンドとしては、たとえばサーバ1に対しTelnetによるログイン及びログアウトを行うことを要求する“DLOGIN”及び“DLOGOUT”並びにTelnetコマンドを送ることを要求する“DTATA”が該当する。たとえば“DLOGIN”コマンドを受け取ると、接続管理部82は、サーバ1との間でネゴシエーションを行ってコネクションを確立し、Telnetセッションを開始する。また、“DTATA”を受け取ると、それに付随するTelnetコマンドをサーバ1へ送信するとともに、これに応じてサーバ1から送られてくるデータを接続管理部81へ送信する。接続管理部81及び82は、複数のクライアント端末2及び1つのサーバ1間の各セッションごとに処理ルーチンの各スレッドとして生成され、各セッションの通信元及び通信先のアプリケーションプロセスをマッピングする。つまり複数のクライアント端末2及びサーバ1間のセッションを多重化して確立することができる。また、マッパ5はウェブサーバ4に対してポート23000を開けており、一方、サーバ1はTelnet用にポート23を開けている。したがってマッパ5により宛先ポートが変換されることになる。
【0044】
図8〜図11はそれぞれ、Telnetサーバ1へのログイン時、Telnetコマンドの送信時、Telnetコマンドに対する処理結果の更新時、及びホスト1からのログアウト時におけるクライアント端末2、ウェブサーバ4、マッパ5、及びサーバ1間のデータの流れを示す。図8〜図11を参照し、ネットワークシステムの動作を説明する。
【0045】
クライアント端末2を用いてサーバ1をTelnetにより遠隔操作するためには、まず、ウェブサーバ4の所定のダウンロードページから本ネットワークシステムに係るiアプリ又はアプレットをダウンロードする必要がある。携帯端末2aがiアプリをダウンロードする場合、ウェブサーバ4は携帯端末2aの製造番号が登録されているか否かを判定し、登録されている場合にのみダウンロードを許可する。したがって、iアプリをダウンロードするためには、あらかじめ、使用する携帯端末2aを特定するための製造番号をシステム管理者に通知しておき、システム管理者がウェブサーバ4にその製造番号を登録することによりアクセス許可がなされている必要がある。パソコン2bがアプレットをダウンロードする場合は、ウェブサーバ4はクライアント認証を行い、肯定的な認証結果が得られたときにダウンロードを許可する。
【0046】
iアプリやアプレットをダウンロードして起動すると、ログイン部41は図5(a)に示すようなログイン画面を表示する。設定ボタン55が押下されると、設定保存部42は図5(b)や図6(a)の設定画面を表示する。また、携帯端末2aの場合はスクロール操作がなされると、図5(c)の画面へスクロールする。これに対し、サーバ1へのログインに必要なユーザID、パスワード、ホストアドレス等の必要な情報が入力されると、設定保存部42はそれらの設定データを保存する。携帯端末2aの場合、戻るボタン62が押下されると、再度ログイン画面が表示されるが、このとき、設定画面で入力されたユーザID及びパスワード(***の表示)が表示領域51及び52に表示されている。スタートボタン53又はOKボタン72が押下されると、要求送信受信部45はHTTPセッションにより、図8に示すように、POSTリクエストとして、ログインコマンド“login”、並びに設定保存部42が保存しているユーザID、パスワード、ホストアドレス、ホストポート、マッパアドレス及びマッパポートのデータをウェブサーバ4へ送信する。
【0047】
前記データを受信すると、ウェブサーバ4のセッション管理部31は、セッションIDを作成し、接続管理部32はマッパアドレス及びマッパポートに基づきマッパ5へのソケットを形成してコネクションを確立し、コマンド“LOGIN”及び作成したセッションID、並びに受信したユーザID、パスワード、ホストアドレス及びホストポートのデータをマッパ5に送信する。
【0048】
マッパ5が前記データを受信すると、マッパ5の接続管理部82は、受信したホストアドレス及びホストポートに基づき、ネゴシエーションを行ってサーバ1とのTCPコネクションを確立するとともに、ホスト1からログインプロンプトが送られてきたら、これに応じて、受信したユーザIDをホスト1へ送る。さらに、ホスト1からパスワードプロンプトが送られてくると、これに応じ、受信したパスワードをサーバ1に送信する。前記ユーザID及びパスワードによる認証が正常に終了し、ログインが認められると、マッパ5及びサーバ1間のTelnetセッションが開始されると同時に、クライアント端末2及びサーバ1間のセッションも開始されることになる。マッパ5の接続管理部81はサーバ1からのログイン可否の結果及びそれに伴うデータをウェブサーバ4に送信する。
【0049】
ウェブサーバ4のリクエスト処理部33は、前記データを受け取ると、前記データをPOSTレスポンスとして、クライアント端末2へ送信する。このとき、サーバ1へのログインが認められた場合には、先に作成されたセッションIDが送信内容に含められる。前記POSTレスポンスの後、クライアント端末2及びウェブサーバ4間のHTTPセッションは終了する。このとき、クライアント端末2では、POSTレスポンスとして送られてきたサーバ1からのデータがリングバッファ11や12に追加されるとともに、前記データの内容が表示部65や79に表示される。たとえば、クライアント端末2bの表示部79では、破線80より上の部分の内容が表示された状態となる。また、サーバ1へのログインが許可された場合には、セッション管理部31は、先に作成したセッションID、並びに先に受信したユーザID、パスワード、ホストアドレス、ホストポート、マッパアドレス及びマッパポート、並びに現在のミリ秒単位の時刻を示すタイムスタンプ、セッションIDに対応させて定義したリングバッファへのポインタとその内容、並びにマッパ5のどの接続管理部1に接続するかを示す前記ソケットへのポインタと前記ソケットの内容を保存する。
【0050】
なお、ウェブサーバ4のセッション管理部31は、各セッションIDについてタイムスタンプが示す時刻から10分間、マッパ5又はクライアント端末2からのデータ送信が無い場合には、ホスト1との対応するTelnetセッションを強制終了し、そのセッションIDに対応するユーザID等のセッション情報を消去するとともに、対応するリングバッファ35を解放する。
【0051】
このようにしてクライアント2及びホスト1間のセッションが確立された後、クライアント端末2のコマンド入力フィールド63や78においてTelnetコマンドが入力され、送るボタン64や74が押下されると、図9に示すようにクライアント端末2の要求送受信部45は、入力されたTelnetコマンドに対し、コマンド“postdata”及び前記セッションのセッションIDを付加し、新たなHTTPセッションによりPOSTリクエストとしてウェブサーバ4に送信する。
【0052】
前記POSTリクエストを受信すると、ウェブサーバ4のリクエスト処理部33は、コマンドが“postdata”であることに応じ、Telnetコマンドに対してコマンド“DDATA”を付加する。コマンド“DDATA”が付加されたTelnetコマンドを、マッパ接続管理部32は、前記セッションIDに対応するマッパ5へのソケットを用いてマッパ5に送信する。前記ソケットに対応するマッパ5の接続管理部81及び82は、対応するTelnetセッションにおいて、前記Telnetコマンドをサーバ1に送信する。サーバ1は、前記Telnetコマンドを受信すると、Telnetコマンドに応じた処理を行い、処理結果をマッパ5に送る。前記処理結果を受信すると、マッパ5の接続管理部81及び82は、受信した処理結果をウェブサーバ4に送信する。
【0053】
前記処理結果を受信すると、ウェブサーバ4のマッパ接続管理部32は、受信した処理結果のデータを、リングバッファ処理部34に送る。前記データを受け取ると、リングバッファ処理部34は前記データを、前記セッションIDに対応するリングバッファ35の末尾に追加(PUT)する。また、リクエスト処理部33は、POSTレスポンスとして、リングバッファ35に追加されたデータと、リングバッファ35における前記追加されたデータの末尾のポジションを示すポジションデータとをクライアント端末2へ送信する。クライアント端末2の要求送信受信部45は、ウェブサーバ4から送られてくる処理結果を受信し、これによってHTTPセッションは終了する。同期処理部47は受信した処理結果をリングバッファ8又は9の末尾に追加するとともに表示部65や79に表示する。なお、このPOSTレスポンスの送信後に引き続きホスト1からマッパ5を介して送られてくる処理結果のデータは、リングバッファ35にさらに追加され、追加されたデータは、次のTelnetコマンドに対する処理結果とともに、又はその前にクライアント端末2から更新コマンド“getdata”が送られてきた場合にはそれに応じて、クライアント端末2に送信されることになる。
【0054】
クライアント端末2における更新ボタン66又は75が押下されると、図10に示すように、クライアント端末2の要求送信受信部45は、GETリクエストとして更新コマンド“getdata”を、先に取得したセッションID及びポジションデータとともにウェブサーバ4に送信する。ウェブサーバ4のリクエスト処理部33が前記セッションID及びポジションデータを受信すると、リングバッファ処理部34は、ポジションデータが示す読取り位置以降のリングバッファ35内のデータを更新データとして読み出す。リクエスト処理部33は読み出した更新データをリングバッファ35の末尾のポジションとともに、GETレスポンスとしてクライアント端末2へ送信する。クライアント端末2の要求送信受信部45がウェブサーバ4から送られてくる更新データを受信すると、同期処理部47は受信した更新データをリングバッファ11又は12に追加するとともに、前記更新データを表示部65や79において表示する。
【0055】
クライアント端末2において、終了ボタン54又は77が押下されると、要求送信受信部45は、POSTリクエストとして、ログアウトすべき旨を指令するコマンド“logout”を、前記セッションIDとともにウェブサーバ4に送信する。コマンド“logout”を受信すると、ウェブサーバ4のリクエスト処理部33は、ログアウトすべき旨を指令するコマンド“DLOGOUT”を、受信したセッションIDとともにマッパ5に送信する。
【0056】
コマンド“DLOGOUT”等のデータを受信すると、マッパ5の接続管理部81は受信したデータを接続管理部82へ送信する。前記送信に応じて接続管理部82は受信したセッションIDに対応するホスト1とのTelnetコネクションを切断し、Telnetセッションを終了する。接続管理部82はTelnetセッションが終了した旨を接続管理部81に通知し、接続管理部81は前記Telnetセッションが終了した旨をウェブサーバ4に通知する。
【0057】
前記Telnetセッションが終了した旨の通知を受けると、ウェブサーバ4の接続管理部32は対応するセッションIDについてのマッパ5への接続を遮断する。また、セッション管理部31は前記セッションIDについてのセッション情報36及びリングバッファ35の内容を削除する。また、リクエスト処理部33は、POSTレスポンスとして、コネクションの切断が完了した旨のメッセージをクライアント端末2へ送信する。これにより、クライアント2及びサーバ1間のセッションは終了する。
【0058】
なお、本発明は上述の実施形態に限定されることなく適宜変形して実施することができる。たとえば、上述においては本発明における第2のプロトコルとしてTelnetを用いる場合について説明しているが、この代わりに他のプロトコル、たとえばFTPやRloginを用いてもよい。
【0059】
また、上述においては、クライアント端末2がインターネット8を介してサーバ1に接続する場合について説明したが、この代わりに、別のネットワーク、たとえば図1に示される別のイントラネット13等を介してサーバ1に接続する場合についても本発明を適用することができる。
【0060】
また、上述においては、ウェブサーバ4からマッパ5を介してサーバ1に接続するようにしているが、ファイアウォール7が存在しない場合は、ウェブサーバ4から直接サーバ1に接続するようにしてもよい。
【0061】
本実施形態によれば、クライアント2との間のHTTPセッション及びサーバ1との間のTelnetセッションを中継することによりクライアント2及びサーバ1間のセッションを確立するようにしたため、HTTPセッション上にファイアウォールを配置することにより、ファイアウォールを通過して、事実上のTelnetセッションをクライアント2及びサーバ1間で行うことができる。また、その際、サーバ1からの処理結果をリングバッファ35に保存し、クライアント2からの要求に応じてクライアント2へ転送するようにしたため、HTTPセッションが切断されている間にサーバ1から送られてくる処理結果についても、支障なくクライアント端末2へ送られることになる。また、クライアント端末2が携帯端末2aのようなハードウェアリソースに乏しいものである場合、一度に大量の処理結果が送られてくるとメモリ容量が不足する場合があるが、リングバッファ35を介し、更新要求に応じて処理結果が送られてくるため、そのような不都合を回避することができる。
【0062】
【発明の効果】
以上説明したように本発明によれば、第1及び第2の情報処理システムとの間で第1及び第2のプロトコルによる第1及び第2のセッションを行い、複数の第1セッション及び1つの第2セッション間を中継してこれらセッションにより構成される第3のセッションを確立し、第1情報処理システムからの処理要求に応じて第2情報処理システムから送られる処理結果のデータを第1情報処理システムに送信するようにしたため、第1セッション上に第2セッションを通過させないファイアウォールが存在しても、第1及び第2情報処理システム間でのセッションを確立することができる。またさらに、第2情報処理システムから第1情報処理システムへ送信される処理結果をバッファに保存し、前記バッファから更新要求に応じて第1情報処理システムに転送するようにしたため、第1セッションが切断されているときに送られてくる処理結果についても、第1情報処理システムは支障なく受け取ることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るネットワークシステムの構成を示す図である。
【図2】図1のネットワークシステムを階層的に示す図である。
【図3】図1のネットワークシステム中のウェブサーバにおけるシステム構成を示す図である。
【図4】図1のネットワークシステム中のクライアント端末におけるシステム構成を示す図である。
【図5】図1のネットワークシステム中の携帯端末の使用状況を示す図である。
【図6】図1のネットワークシステム中のパソコンの使用状況を示す図である。
【図7】図1のネットワークシステム中のマッパのシステム構成を示す図である。
【図8】図1のネットワークシステムにおけるTelnetサーバへのログイン時のデータの流れを示す図である。
【図9】図1のネットワークシステムにおけるTelnetコマンドの送信時のデータの流れを示す図である。
【図10】図1のネットワークシステムにおけるTelnetコマンドに対する処理結果の更新時のデータの流れを示す図である。
【図11】図1のネットワークシステムにおけるホスト1からのログアウト時のデータの流れを示す図である。
【符号の説明】
1:サーバ、2:クライアント端末、2a:携帯端末、2b:パソコン、3:セッション中継システム、4:ウェブサーバ、5:マッパ、6,7:ファイアウォール、8:インターネット、9:DMZ、10:イントラネット、11,12:リングバッファ、13:別のイントラネット、31:セッション管理部、32:マッパ接続管理部、33:リクエスト処理部、34:リングバッファ処理部、35:リングバッファ、36:セッション情報を保持する領域、41:ログイン部、42:設定保存部、43:リクエスト入力部、45:要求送信受信部、46:同期入力部、47:同期処理部、48:履歴処理部、49:リングバッファ、51:ユーザID表示領域、52:パスワード表示領域、53:スタートボタン、54:終了ボタン、55:設定ボタン、56:ユーザID入力フィールド、57:パスワード入力フィールド、58:ホストアドレス入力フィールド、59:ポート番号入力フィールド、60:マッパアドレス入力フィールド、61:マッパポート番号入力フィールド、62:戻るボタン、63:コマンド入力フィールド、64:送るボタン、65:表示領域、66:更新ボタン、67:履歴ボタン、71:入力フィールド、72:OKボタン、73:キャンセルボタン、74:送るボタン、75:更新ボタン、76:履歴ボタン、77:終了ボタン、78:コマンド入力フィールド、79:表示部、80:破線、81:ウェブサーバとの接続管理部、82:Telnetサーバとの接続管理部。

Claims (34)

  1. 第1の情報処理システムとの間で第1のプロトコルによる第1のセッションを行うとともに、第2の情報処理システムとの間で第2のプロトコルによる第2のセッションを行い、複数の前記第1セッション及び1つの前記第2セッション間を中継してこれらセッションにより構成される第3のセッションを確立するセッション中継システムであって、
    前記第1情報処理システムからの、前記第2情報処理システムとのセッションを開始するために必要な情報を伴う接続要求に応じて確立される前記第3セッションを識別するためのID情報を生成し、前記接続要求を行った第1情報処理システムに送るとともに、確立された第3セッションを維持するのに必要なセッション情報を保持するセッション管理手段と、
    前記第1情報処理システムから前記ID情報とともに送られてきた処理要求が、セッション中継システムから転送されてきたことに応じて、対応する前記第2情報処理システムから送られる処理結果のデータを、前記処理要求を行った第1情報処理システムに送信する処理結果転送手段とを具備することを特徴とするセッション中継システム。
  2. 前記処理結果転送手段は、前記処理要求に応じて第2情報処理システムから送られる処理結果のデータを、前記処理要求とともに送られてきたID情報に対応させてバッファに保存するバッファ手段と、前記第1情報処理システムからの前記ID情報を伴う更新要求に応じ、前記ID情報に対応する前記バッファ中のデータであって未だ前記第1情報処理システムには送信していないものを前記第1情報処理システムに送信する更新手段とを有することを特徴とする請求項1に記載のセッション中継システム。
  3. 前記接続要求及び更新要求は、異なる前記第1セッションにより行われるものであることを特徴とする請求項2に記載のセッション中継システム。
  4. 前記バッファは前記ID情報ごとに作られるリングバッファであり、前記バッファ手段は、前記処理結果のデータを、対応する前記リングバッファに追加するとともに、前記追加後の前記リングバッファにおける、前記追加されたデータの末尾のポジションに関連するポジション情報とともに前記第1情報処理システムに送信し、さらに、前記送信終了に伴い前記第1セッションが遮断された後に引き続き送られてくる前記処理結果のデータを前記対応するリングバッファに順次追加するものであることを特徴とする請求項2に記載のセッション中継システム。
  5. 前記更新手段は、前記ID情報を伴う更新要求に応じた処理結果のデータの送信に際しては、前記ID情報に対応する前記リングバッファ中の、前記更新要求とともに送られてくる前記ポジション以降のデータを前記第1情報処理システムに送信するものであることを特徴とする請求項4に記載のセッション中継システム。
  6. 前記第1情報処理システムは第1のファイアウォールの外側に存在し、前記セッション中継システム及び第2情報処理システムは前記第1ファイアウォールの内側に存在し、前記第1セッションは前記第1ファイアウォールを通過して行うことが可能なものであることを特徴とする請求項1に記載のセッション中継システム。
  7. 前記第1情報処理システムとの間の第1セッションを行う第3の情報処理システムと、前記第2情報処理システムとの間の第2セッションを行い、かつ前記第3情報処理システムと第3のプロトコルで通信可能な第4の情報処理システムとを備え、前記第3及び第4情報処理システム間の前記第3プロトコルによる通信は第2のファイアウォールを通過して行われるものであり、前記第3情報処理システムが前記セッション管理手段を有し、前記第4情報処理システムが前記第2情報処理システムとの間の第2セッションを確立し、かつ前記第3プロトコルによる通信と、前記第2プロトコルによる通信との中継を行うことを特徴とする請求項6に記載のセッション中継システム。
  8. 前記第1プロトコルはHTTPであることを特徴とする請求項1に記載のセッション中継システム。
  9. 前記第2プロトコルはTelnetであることを特徴とする請求項1に記載のセッション中継システム。
  10. 所定のサーバとのセッションを開始するために必要な情報を伴う接続要求を受け入れ、所定のプロトコルによるセッションにより所定のセッション中継システムに対して送信する接続要求手段と、
    前記セッション中継システムが前記接続要求に応じてクライアント端末と前記サーバとの間で確立する、前記セッションを含む上位のセッションを識別するためのID情報を前記セッション中継システムから受信するID情報受信手段と、
    前記サーバに対する処理要求を受け入れ、前記ID情報とともに前記セッション中継システムに送信する処理要求手段と、
    前記処理要求に応じて前記サーバから送られ、前記セッション中継システムに保存されている処理結果のデータによる更新要求を前記ID情報とともに前記セッション中継システムに送信する更新要求手段と、
    前記更新要求に応じて前記セッション中継システムから送られてくるデータを表示する表示手段とを具備することを特徴とするクライアント端末。
  11. 第1の情報処理システムとの間で第1のプロトコルによる第1のセッションを行うとともに、第2の情報処理システムとの間で第2のプロトコルによる第2のセッションを行い、複数の前記第1セッション及び1つの前記第2セッション間を中継してこれらセッションにより構成される第3のセッションを確立するセッション中継方法であって、
    前記第1情報処理システムからの、前記第2情報処理システムとのセッションを開始するために必要な情報を伴う接続要求に応じて確立される前記第3セッションを識別するためのID情報を生成し、前記接続要求を行った第1情報処理システムに送るとともに、確立された第3セッションを維持するのに必要なセッション情報を保持するセッション管理工程と、
    前記第1情報処理システムから前記ID情報とともに送られてきた処理要求が、セッション中継システムから転送されてきたことに応じて、対応する前記第2情報処理システムから送られる処理結果のデータを、前記処理要求を行った第1情報処理システムに送信する処理結果転送工程とを具備することを特徴とするセッション中継方法。
  12. 前記処理結果転送工程は、前記処理要求に応じて第2情報処理システムから送られる処理結果のデータを、前記処理要求とともに送られてきたID情報に対応させてバッファに保存する保存工程と、前記第1情報処理システムからの前記ID情報を伴う更新要求に応じ、前記ID情報に対応する前記バッファ中のデータであって未だ前記第1情報処理システムには送信していないものを前記第1情報処理システムに送信する更新工程とを有することを特徴とする請求項11に記載のセッション中継方法。
  13. 前記接続要求及び更新要求は、異なる前記第1セッションにより行われることを特徴とする請求項12に記載のセッション中継方法。
  14. 前記バッファは前記ID情報ごとに作られるリングバッファであり、前記保存工程では、前記処理結果のデータを、対応する前記リングバッファに追加するとともに、前記追加後の前記リングバッファにおける、前記追加されたデータの末尾のポジションに関連するポジション情報とともに前記第1情報処理システムに送信し、さらに、前記送信終了に伴い前記第1セッションが遮断された後に引き続き送られてくる前記処理結果のデータを前記対応するリングバッファに順次追加することを特徴とする請求項12に記載のセッション中継方法。
  15. 前記更新工程では、前記ID情報を伴う更新要求に応じた処理結果のデータの送信に際しては、前記ID情報に対応する前記リングバッファ中の、前記更新要求とともに送られてくる前記ポジション以降のデータを前記第1情報処理システムに送信することを特徴とする請求項14に記載のセッション中継方法。
  16. 前記第1情報処理システムは第1のファイアウォールの外側に存在し、前記セッション中継システム及び第2情報処理システムは前記第1ファイアウォールの内側に存在し、前記第1セッションは前記第1ファイアウォールを通過して行うことが可能なものであることを特徴とする請求項11に記載のセッション中継方法。
  17. 第3の情報処理システムにより前記第1情報処理システムとの間の第1セッションを行い、前記第3情報処理システムと第3のプロトコルで通信可能な第4の情報処理システムにより前記第2情報処理システムとの間の第2セッションを行い、前記第3及び第4情報処理システム間の前記第3プロトコルによる通信は第2のファイアウォールを通過して行われ、前記第3情報処理システムが前記セッション管理工程を行い、前記第4情報処理システムが前記第2情報処理システムとの間の第2セッションを確立し、かつ前記第3プロトコルによる通信と、前記第2プロトコルによる通信との中継を行うことを特徴とする請求項16に記載のセッション中継方法。
  18. 前記第1プロトコルはHTTPであることを特徴とする請求項11に記載のセッション中継方法。
  19. 前記第2プロトコルはTelnetであることを特徴とする請求項11に記載のセッション中継方法。
  20. ファイアウォール内のサーバとのセッションを開始するために必要な情報を伴う接続要求を受け入れ、前記ファイアウォールを通過可能なプロトコルによる一セッションにより前記ファイアウォール内のセッション中継システムに対して送信する接続要求工程と、
    前記セッション中継システムが前記接続要求に応じて前記サーバとの間で確立する、前記一セッションを含む上位のセッションを識別するためのID情報を前記セッション中継システムから受信するID情報受信工程と、
    前記サーバに対する処理要求を受け入れ、前記ID情報とともに前記セッション中継システムに送信する処理要求工程と、
    前記処理要求に応じて前記サーバから送られ、前記セッション中継システムに保存されている処理結果のデータによる更新要求を前記ID情報とともに、前記一セッションとは別の前記プロトコルによるセッションであって前記上位セッションに含まれるセッションにより、前記セッション中継システムに送信する更新要求工程と、
    前記更新要求に応じて前記セッション中継システムから送られてくるデータを表示する表示工程とを具備することを特徴とするリモートアクセス方法。
  21. 前記セッション中継システムから前記処理要求のデータとともに送られてくる前記セッション中継システムのリングバッファの末尾のポジションを記憶する工程を備え、前記更新要求工程では、前記更新要求の送信に際し、記憶されている最新の前記ポジションを同時に送信することを特徴とする請求項20に記載のリモートアクセス方法。
  22. 前記所定のプロトコルはHTTPであることを特徴とする請求項20に記載のリモートアクセス方法。
  23. 第1の情報処理システムとの間で第1のプロトコルによる第1のセッションを行うとともに、第2の情報処理システムとの間で第2のプロトコルによる第2のセッションを行い、複数の前記第1セッション及び1つの前記第2セッション間を中継してこれらセッションにより構成される第3のセッションを確立する手順を含むセッション中継手順をコンピュータに実行させるセッション中継プログラムであって、
    前記セッション中継手順は、前記第1情報処理システムからの、前記第2情報処理システムとのセッションを開始するために必要な情報を伴う接続要求に応じて確立される前記第3セッションを識別するためのID情報を生成し、前記接続要求を行った第1情報処理システムに送るとともに、確立された第3セッションを維持するのに必要なセッション情報を保持するセッション管理手順と、
    前記第1情報処理システムから前記ID情報とともに送られてきた処理要求が、セッション中継システムから転送されてきたことに応じて、対応する前記第2情報処理システムから送られる処理結果のデータを、前記処理要求を行った第1情報処理システムに送信する処理結果転送手順とを具備することを特徴とするセッション中継プログラム。
  24. 前記処理結果転送手順は、前記処理要求に応じて第2情報処理システムから送られる処理結果のデータを、前記処理要求とともに送られてきたID情報に対応させてバッファに保存する保存手順と、前記第1情報処理システムからの前記ID情報を伴う更新要求に応じ、前記ID情報に対応する前記バッファ中のデータであって未だ前記第1情報処理システムには送信していないものを前記第1情報処理システムに送信する更新手順とを有することを特徴とする請求項23に記載のセッション中継プログラム。
  25. 前記接続要求及び更新要求は、異なる前記第1セッションにより行われることを特徴とする請求項24に記載のセッション中継プログラム。
  26. 前記バッファは前記ID情報ごとに作られるリングバッファであり、前記保存手順では、前記処理結果のデータを、対応する前記リングバッファに追加するとともに、前記追加後の前記リングバッファにおける、前記追加されたデータの末尾のポジションに関連するポジション情報とともに前記第1情報処理システムに送信し、さらに、前記送信終了に伴い前記第1セッションが遮断された後に引き続き送られてくる前記処理結果のデータを前記対応するリングバッファに順次追加することを特徴とする請求項24に記載のセッション中継プログラム。
  27. 前記更新手順では、前記ID情報を伴う更新要求に応じた処理結果のデータの送信に際しては、前記ID情報に対応する前記リングバッファ中の、前記更新要求とともに送られてくる前記ポジション以降のデータを前記第1情報処理システムに送信することを特徴とする請求項26に記載のセッション中継プログラム。
  28. 前記第1情報処理システムは第1のファイアウォールの外側に存在し、前記セッション中継システム及び第2情報処理システムは前記第1ファイアウォールの内側に存在し、前記第1セッションは前記第1ファイアウォールを通過して行うことが可能なものであることを特徴とする請求項23に記載のセッション中継プログラム。
  29. 第3の情報処理システムにより前記第1情報処理システムとの間の第1セッションを行い、前記第3情報処理システムと第3のプロトコルで通信可能な第4の情報処理システムにより前記第2情報処理システムとの間の第2セッションを行い、前記第3及び第4情報処理システム間の前記第3プロトコルによる通信は第2のファイアウォールを通過して行われ、前記第3情報処理システムが前記セッション管理手順を行い、前記第4情報処理システムが前記第2情報処理システムとの間の第2セッションを確立し、かつ前記第3プロトコルによる通信と、前記第2プロトコルによる通信との中継を行うことを特徴とする請求項28に記載のセッション中継プログラム。
  30. 前記第1プロトコルはHTTPであることを特徴とする請求項23に記載のセッション中継プログラム。
  31. 前記第2プロトコルはTelnetであることを特徴とする請求項23に記載のセッション中継プログラム。
  32. ファイアウォール内のサーバとのセッションを開始するために必要な情報を伴う接続要求を受け入れ、前記ファイアウォールを通過可能なプロトコルによる一セッションにより前記ファイアウォール内のセッション中継システムに対して送信する接続要求手順と、
    前記セッション中継システムが前記接続要求に応じて前記サーバとの間で確立する、前記一セッションを含む上位のセッションを識別するためのID情報を前記セッション中継システムから受信するID情報受信手順と、
    前記サーバに対する処理要求を受け入れ、前記ID情報とともに前記セッション中継システムに送信する処理要求手順と、
    前記処理要求に応じて前記サーバから送られ、前記セッション中継システムに保存されている処理結果のデータによる更新要求を前記ID情報とともに、前記一セッションとは別の前記プロトコルによるセッションであって前記上位セッションに含まれるセッションにより、前記セッション中継システムに送信する更新要求手順と、
    前記更新要求に応じて前記セッション中継システムから送られてくるデータを表示する表示手順とをクライアント端末に実行させることを特徴とするクライアントプログラム。
  33. 前記セッション中継システムから前記処理要求のデータとともに送られてくる前記セッション中継システムのリングバッファの末尾のポジションを記憶する手順を前記クライアント端末に実行させ、前記更新要求手順では、前記更新要求の送信に際し、記憶されている最新の前記ポジションを同時に送信することを特徴とする請求項32に記載のクライアントプログラム。
  34. 前記所定のプロトコルはHTTPであることを特徴とする請求項32に記載のクライアントプログラム。
JP2002127686A 2002-04-26 2002-04-26 セッション中継システム、クライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラム Expired - Fee Related JP3782981B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002127686A JP3782981B2 (ja) 2002-04-26 2002-04-26 セッション中継システム、クライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラム
US10/388,355 US20030204601A1 (en) 2002-04-26 2003-03-13 Session relay system, client terminal, session relay method, remote access method, session relay program and client program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002127686A JP3782981B2 (ja) 2002-04-26 2002-04-26 セッション中継システム、クライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラム

Publications (2)

Publication Number Publication Date
JP2003324484A JP2003324484A (ja) 2003-11-14
JP3782981B2 true JP3782981B2 (ja) 2006-06-07

Family

ID=29243867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002127686A Expired - Fee Related JP3782981B2 (ja) 2002-04-26 2002-04-26 セッション中継システム、クライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラム

Country Status (2)

Country Link
US (1) US20030204601A1 (ja)
JP (1) JP3782981B2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005100344A (ja) * 2003-08-18 2005-04-14 Ricoh Co Ltd 情報処理装置、セッションの復旧方法、セッション復旧プログラム及び記録媒体
ATE399415T1 (de) * 2003-08-29 2008-07-15 Nokia Corp Persönliche abgesetzte firewall
JP4650792B2 (ja) * 2003-12-03 2011-03-16 日本電気株式会社 セッション中継装置、セッション中継方法及びセッション中継プログラム
JP4492248B2 (ja) * 2004-08-04 2010-06-30 富士ゼロックス株式会社 ネットワークシステム、内部サーバ、端末装置、プログラム、およびパケット中継方法
US7349384B2 (en) * 2004-12-10 2008-03-25 Microsoft Corporation Reliable one-way messaging over request-response transport protocols
US8788674B2 (en) * 2005-01-12 2014-07-22 Blue Coat Systems, Inc. Buffering proxy for telnet access
US7945676B2 (en) 2005-03-10 2011-05-17 International Business Machines Corporation Processing requests transmitted using a first communication protocol directed to an application that uses a second communication protocol
CN1980232A (zh) * 2005-12-02 2007-06-13 国际商业机器公司 远程登录会话维护方法、远程登录代理和计算机网络系统
CN101448283B (zh) * 2008-04-11 2011-11-30 中兴通讯股份有限公司 会话终结触发方法、实现方法及系统
JP2012038121A (ja) * 2010-08-09 2012-02-23 Canon Inc 情報処理装置、情報処理装置の制御方法、プログラム
US8677510B2 (en) 2012-04-06 2014-03-18 Wayne Odom System, method, and device for communicating and storing and delivering data
US8572720B1 (en) * 2013-05-20 2013-10-29 Wayne Odom System, method, and device for communicating and storing and delivering data
US9378339B2 (en) 2012-04-06 2016-06-28 Wayne Odom System, method, and device for delivering communications and storing and delivering data
US8844054B2 (en) 2012-04-06 2014-09-23 Wayne Odom System, method, and device for communicating and storing and delivering data
US9043934B2 (en) 2012-04-06 2015-05-26 Wayne Odom System, method, and device for delivering communications and storing and delivering data
JP6347107B2 (ja) * 2013-01-18 2018-06-27 株式会社リコー 通信管理システム、通信制御システム、通信システム、中継装置、通信方法、及びプログラム
JP6354132B2 (ja) * 2013-10-09 2018-07-11 富士ゼロックス株式会社 中継装置、中継システム及びプログラム
JP6803374B2 (ja) * 2016-03-31 2020-12-23 サトーホールディングス株式会社 サーバ、情報処理システム、クライアント端末
US10455023B2 (en) * 2016-08-26 2019-10-22 Reliance Jio Infocomm Incorporated System and method for remotely accessing a computing device
JP6607361B2 (ja) * 2017-06-30 2019-11-20 京セラドキュメントソリューションズ株式会社 リモート通信システム
JP6751268B2 (ja) * 2017-06-30 2020-09-02 京セラドキュメントソリューションズ株式会社 リモート通信制御システムおよびリモート通信システム
JP6777887B2 (ja) * 2017-06-30 2020-10-28 京セラドキュメントソリューションズ株式会社 リモート通信制御システム、セッション管理システムおよびセッション管理プログラム
US10872023B2 (en) * 2017-09-24 2020-12-22 Microsoft Technology Licensing, Llc System and method for application session monitoring and control
JP6577546B2 (ja) * 2017-09-25 2019-09-18 株式会社東芝 リモートアクセス制御システム
CN112075061A (zh) * 2018-04-26 2020-12-11 谷歌有限责任公司 基于自动填充的网站认证

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0844643A (ja) * 1994-07-27 1996-02-16 Fujitsu Ltd ゲートウェイ装置
US5754830A (en) * 1996-04-01 1998-05-19 Openconnect Systems, Incorporated Server and web browser terminal emulator for persistent connection to a legacy host system and method of operation
TW400487B (en) * 1996-10-24 2000-08-01 Tumbleweed Software Corp Electronic document delivery system
US5884312A (en) * 1997-02-28 1999-03-16 Electronic Data Systems Corporation System and method for securely accessing information from disparate data sources through a network
US6104716A (en) * 1997-03-28 2000-08-15 International Business Machines Corporation Method and apparatus for lightweight secure communication tunneling over the internet
JP3488617B2 (ja) * 1998-02-10 2004-01-19 シャープ株式会社 インターネットを用いた遠隔障害管理システム
JPH11234270A (ja) * 1998-02-16 1999-08-27 Nippon Telegr & Teleph Corp <Ntt> ネットワーク間のデータベースの複製・更新方法
GB2337671B (en) * 1998-05-16 2003-12-24 Ibm Security mechanisms in a web server
US6289384B1 (en) * 1998-06-05 2001-09-11 I2 Technologies, Inc. System and method for event notification through a firewall
JP2998839B1 (ja) * 1998-10-08 2000-01-17 株式会社エヌ・ティ・ティ・データ データ通信方法、データ中継装置及び記録媒体
JP2000151693A (ja) * 1998-11-05 2000-05-30 Ntt Data Corp ファイヤウォールを隔てたシステム制御方式及び方法
JP2000172597A (ja) * 1998-12-08 2000-06-23 Yamatake Corp 通信方法及び通信インタフェース装置
US6412009B1 (en) * 1999-03-15 2002-06-25 Wall Data Incorporated Method and system for providing a persistent HTTP tunnel
JP4104799B2 (ja) * 1999-11-25 2008-06-18 株式会社山武 ネットワークシステム及び通信方法
US7373422B1 (en) * 2000-08-04 2008-05-13 Oracle International Corporation Techniques for supporting multiple devices in mobile applications
US6754621B1 (en) * 2000-10-06 2004-06-22 Andrew Cunningham Asynchronous hypertext messaging system and method
US20030128987A1 (en) * 2000-11-08 2003-07-10 Yaron Mayer System and method for improving the efficiency of routers on the internet and/or cellular networks an/or other networks and alleviating bottlenecks and overloads on the network
US7984157B2 (en) * 2002-02-26 2011-07-19 Citrix Systems, Inc. Persistent and reliable session securely traversing network components using an encapsulating protocol

Also Published As

Publication number Publication date
US20030204601A1 (en) 2003-10-30
JP2003324484A (ja) 2003-11-14

Similar Documents

Publication Publication Date Title
JP3782981B2 (ja) セッション中継システム、クライアント端末、セッション中継方法、リモートアクセス方法、セッション中継プログラム及びクライアントプログラム
JP4349365B2 (ja) 制御情報の伝送方法、中継サーバ、及び被制御装置
US8332464B2 (en) System and method for remote network access
US7792924B2 (en) Using a mobile phone to remotely control a computer via an overlay network
JP4260116B2 (ja) 安全な仮想プライベート・ネットワーク
US7631181B2 (en) Communication apparatus and method, and program for applying security policy
JP3489988B2 (ja) セキュリティ保護通信トンネリングの方法及び装置
KR100758733B1 (ko) 계승된 보안 속성을 이용하여 보안 네트워크를 통하여프록시 요구를 관리하기 위한 시스템 및 방법
JP4456929B2 (ja) リモート・クライアントをローカル・クライアント・デスクトップに接続するためのアーキテクチャ
JP4237754B2 (ja) パーソナルリモートファイヤウォール
CN101399729B (zh) 资料下载与上传管理系统及方法
JP4914479B2 (ja) リモートアクセス装置、リモートアクセスプログラム、リモートアクセス方法及びリモートアクセスシステム
WO2014030426A1 (ja) シームレスプッシュシステム及びその方法
US20050135269A1 (en) Automatic configuration of a virtual private network
US10367894B2 (en) Information processing apparatus, method for controlling the same, non-transitory computer-readable storage medium, and information processing system
JP3935823B2 (ja) Httpセッション・トンネリング・システム、その方法、及びそのプログラム
JP5169461B2 (ja) セキュリティパラメータ配布装置及びセキュリティパラメータ配布方法
JP2005197936A (ja) 通信システム、登録装置及び通信装置
JP2002157219A (ja) 既存オンラインアプリケーションのインターネット端末対応方法及びシステム並びにサーバ装置と記録媒体
JP2010050750A (ja) 通信端末、通信制御方法、通信制御プログラム及び通信システム
JP4797638B2 (ja) 通信中継装置、操作対象端末、通信システム、通信中継方法、操作対象端末の制御方法、プログラム、およびプログラムを記録した記録媒体
WO2017142019A1 (ja) 通信装置、ルータ、サーバ、システムおよび設定方法
WO2018225158A1 (ja) 通信装置、中継装置、情報処理システムおよび通信システム
CN114301968B (zh) 服务端的访问方法、系统、设备及存储介质
JP2004199414A (ja) 通信端末、通信方法及び通信プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050629

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060301

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20060301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060313

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100317

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees