JP4564746B2 - データ通信方法及びデータ通信システム - Google Patents

データ通信方法及びデータ通信システム Download PDF

Info

Publication number
JP4564746B2
JP4564746B2 JP2003434590A JP2003434590A JP4564746B2 JP 4564746 B2 JP4564746 B2 JP 4564746B2 JP 2003434590 A JP2003434590 A JP 2003434590A JP 2003434590 A JP2003434590 A JP 2003434590A JP 4564746 B2 JP4564746 B2 JP 4564746B2
Authority
JP
Japan
Prior art keywords
data
communication
packet
reorganization
response
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
JP2003434590A
Other languages
English (en)
Other versions
JP2005192157A (ja
Inventor
次郎 熊倉
研二 山元
Original Assignee
株式会社 デジタルデザイン
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 株式会社 デジタルデザイン filed Critical 株式会社 デジタルデザイン
Priority to JP2003434590A priority Critical patent/JP4564746B2/ja
Publication of JP2005192157A publication Critical patent/JP2005192157A/ja
Application granted granted Critical
Publication of JP4564746B2 publication Critical patent/JP4564746B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Description

本願発明は、通信回線を介して接続されたコンピュータ間で、データの送受信を行うデータ通信方法及びこの通信方法をクライアント・サーバシステムに適用した通信システムに関する。
たとえば、インターネット等のネットワーク上に設定したWEBサーバにHTML(HyperText Markup Language)等を用いてコンテンツを形成し、クライアント側に設けたブラウザソフトから上記ネットワークを介して上記WEBサーバに向けてリクエストを送信し、上記WEBサーバから上記リクエストに対応したコンテンツを上記クライアントに送信して表示等するWWW(World Wide Web)通信システムが一般に普及している。上記通信システムを実行するため、たとえば、HTTP(HyperText Transfer Protocol)等の通信プロトコルがアプリケーションソフトウエアである上記ブラウザソフトに組み込まれている。
通常、上記HTTP等の通信プロトコルは、上記ブラウザソフトを作動させるオペレーティングシテスムのストリーム型通信プロトコル(たとえば、TCP/IP)上にクライアント・サーバモデルのアプリケーションプロトコルとして構築されている。
上記アプリケーションプロトコルで生成されたリクエスト等の送信データは、上記オペレーティングシステムに引き渡され、所定情報量のパケットに分割されるとともに通信プロトコルによるヘッダが付加され、上記通信回線を介してサーバへ送信される。
上記従来の通信手法においては、各パケットで送信できる情報量が限られている。したがって、大きなデータは、多数のパケットに分割されるとともに、これら各パケットに上記通信プロトコルヘッダが付加されて送信される。このため、上記ブラウザやサーバで生成された情報量に比べて送信情報量が大きくなり、また、パケット数が増加して通信効率が低下することが多い。
また、実際のデータの送受信では、複数のパケットごとに受信側コンピュータから受信応答がなされる。このため、送受信の回数が増加してさらに通信効率が低下する。
一方、上記HTTPプロトコルが、オペレーティングシステムや物理媒体等の通信環境に最適な状態で送信データを生成し、上記オペレーティングシステムに引き渡すとは限らない。すなわち、上記パケットサイズや上記受信応答なしに送信できる送信窓サイズに満たない送信データが生成されることも多い。この問題を解決するため、種々の手法が提案されている。
特開2000−124950 特開2002−84289 特開2002−84312
特許文献1には、送信側アプリケーションソフトウエアにおいて、物理媒体に最適なデータ長でデータの転送ができるとともに、TCP/IPプロトコルスタックのバッファ管理を効率的に行える送受信パラメータ設定方法が記載されている。
特許文献2には、端末本体に通信ボードを設け、この通信ボードによってパケットを通信に最適な形態に分割し、あるいは組み立てるように構成したTCP通信方法が記載されている。
特許文献3には、ブロック内での未使用領域の発生を抑制し、パケット長をブロック長で最適化することにより、実効伝送速度を向上できるパケット伝送方法が記載されている。
上記特許文献1に記載された送受信パラメータ設定方法は、データを生成するアプリケーションソフトウエアが、MTU通知手段から通信に最適なMTUを知り、TCP等のオペレーティングシステム上の通信プロトコルのパラメータを設定するとともに、設定したパラメータに最適な情報量のデータを生成して、上記TCP等に引き渡すように構成されている。
しかしながら、上記方法によると、各端末にMTU通知手段をそれぞれ設けるとともに、送信データを生成する各アプリケーションソフトウエアごとにデータサイズ通知手段やこれに応じたデータの生成等するためのプログラムを設けなければならない。
また、特許文献1に記載されている方法では、オペレーティングシステムにおける送受信バッファを最適化することにより、送受信の効率を高めようとしている。しかしながら、アプリケーションソフトウエアやオペレーティングシステムにおいて生成される情報量自体を減少させるものではない。
上記特許文献2に記載されているTCP通信方法では、端末装置に通信ボードを設ける必要がある。したがって、すべての端末装置適用するのは困難である。また、ハードウエアによって通信効率を高めるものであるため、装置に要するコストも大きくなる。
上記特許文献3に記載されているパケット伝送方法は、上記特許文献1と同様に、各端末にMTU通知手段をそれぞれ設けるとともに、送信データを生成する各アプリケーションソフトウエアごとに上記方法を実行するためのプログラムを搭載する必要が生じる。また、特許文献1と同様にアプリケーションソフトウエアで生成される情報量自体を減少させるものではない。
本願発明は、データを生成するアプリケーションソフトウエアやこれを作動させるオペレーティングシステムの機能等を変更することなく、通信速度を飛躍的に向上させることができる。また、一つのオペレーティングシステム上で作動する複数のアプリケーションソフトウエアに対しても共通して適用することができるデータ通信方法及びデータ通信システムを提供するものである。
本願の請求項1に記載した発明は、送信側及び受信側コンピュータに、通信回線を介してデータ交換を行うアプリケーションソフトウエアを設けるとともに、これらコンピュータに通信代理ソフトウエアを設け、上記各コンピュータのオペレーティングシステム、上記通信代理ソフトウエア及び通信回線を介して、上記アプリケーションソフトウエアで生成されたデータの送受信を行うデータ通信方法である。
上記通信データの種類は特に限定されることはない。コンテンツデータのみならず、通信に要するアプリケーションプロトコル、検索コマンド等のデータも含まれる。また、上記通信代理ソフトウエアは、上記アプリケーションソフトウエアを設けたコンピュータと同一のコンピュータにインストールして共通のオペレーティングシステム上で作動させることができる
本願発明に係るデータ通信方法は、送信側アプリケーションソフトウエアないしオペレーティングシステムが生成した送信データパケットを、送信側通信代理ソフトウエアが疑似受信するとともに、上記送信データパケットに応じて疑似受信応答を発行する疑似受信行程と、疑似受信した所定量の送信データパケットを蓄積するバッファ行程と、蓄積した上記送信データパケットを一体化するとともに、送信データの形態及び/又は通信環境に応じた最適な再編データを生成する再編データ生成行程と、上記再編データを上記オペレーティングシステム及び上記通信回線を介して受信側コンピュータに送信するデータ送信行程と、受信側通信代理ソフトウエアが、上記オペレーティングシステムを介して上記再編データを受信するデータ受信行程と、上記受信側通信代理ソフトウエアが、受信した上記再編データから上記送信データパケットを再生する送信データパケット再生行程と、上記送信データパケットを上記オペレーティングシステムを介して受信側アプリケーションソフトウエアに転送する送信データパケット転送行程とを含んで構成される。
本願発明では、送信データを生成するアプリケーションソフトウエアとは別途に、上記送信データを通信に最適な形態に再編する通信代理ソフトウエアを設ける。上記通信代理ソフトウエアは、上記アプリケーションソフトウエアと同一のコンピュータにインストールされる。このため、上記アプリケーションソフトウエア、オペレーティングシステム及びハードウエアの構成を変更したり、機能を調節する必要はない。
送信側アプリケーションソフトウエアで生成された送信データは、オペレーティングシステムに引き渡されてデータパケットに分割され、通信プロトコルが付加される。本願発明では、上記データパケットを、上記送信側通信代理ソフトウエアに疑似受信させる。すなわち、上記アプリケーションソフトウエア及び上記オペレーティングシステムは、送信先のコンピュータへ送信するのと全く同じ手順で送信データを上記通信代理ソフトウエアに送信するとともに、上記通信代理ソフトウエアが送信先コンピュータが受信したのと同様の手順で疑似受信する。
上記疑似受信行程においては、通常のデータ送受信手順と全く同様に、上記送信データパケットに応じた疑似受信応答が、上記オペレーティングシステムないし上記アプリケーションソフトウエアに向けて発行される。なお、送信側及び受信側のオペレーティングシステム等の設定により、複数のデータパケットから構成されるパケット群に対して上記受信応答が発行される場合もある。上記疑似受信行程は、同一のコンピュータ内のオペレーティングシステム上で作動するコンピュータで行われるため、通信回線の混雑等の影響は全く受けることはない。したがって、高速でデータを転送することができる。
上記データを受信した通信代理ソフトウエアでは、疑似受信した所定量の送信データパケットを蓄積するバッファ行程が行われる。上記バッファ行程においては、受信した各送信データパケットから上記オペレーティングシステムで付与されたプロトコルを削除した状態でデータの蓄積が行われる。
上記バッファ行程は、請求項5に記載した発明のように、蓄積される上記送信データパケットの情報量を計数する情報量計数行程と、上記送信データパケットの内容を解析する情報解析行程と、上記計数された蓄積情報量及び/又は解析された情報内容によって上記バッファを解除し、蓄積データを上記再編データ生成行程に引き渡すバッファ解除行程とを含んで構成される。
上記バッファ行程におけるデータ蓄積量は、あらかじめ設定され、あるいは、通信状況等に応じて動的に調節することができる。また、データパケットの内容を解析することにより、疑似受信応答の要否やデータ送信の要否を判断することが可能となる。したがって、アプリケーションソフトウエアからの送信データを円滑に受信することが可能となる。
次に、蓄積した上記送信データパケットを一体化するとともに、一体化したデータから、送信形態及び/又は通信環境に応じた最適な再編データを生成する再編データ生成行程が行われる。
上記再編データ生成行程においては、請求項2に記載した発明のように、一体化された上記送信データパケットに、送信側と受信側の通信代理ソフトウエア間で適用される独自プロトコル処理を行うとともに圧縮処理を行って、上記再編データが生成される。
上記独自のプロトコルとして、受信側の通信代理ソフトウエアにおいて、アプリケーションソフトウエアないしオペレーティングシステムにおいて生成された送信データパケットを再生するとともに、転送効率をたかめるための種々のプロトコルを採用できる。また、蓄積された情報及び情報量に応じて最適なプロトコルを選択して適用することも可能となる。たとえば、上記アプリケーションソフトウエアで採用される通信プロトコルより通信効率の良いプロトコルに変更して送信データを生成することもできる。
さらに、上記独自プロトコル処理を施したデータに圧縮操作を施すことにより、送信データ量自体を格段に減少させることができる。また、圧縮方法を、送信されるデータ量やデータの種類に応じて選択できるように構成することにより、さらに送信効率を高めることが可能となる。これにより、種々のデータに最適な編成データを生成することが可能となる。
本願の請求項3に記載した発明は、上記オペレーティングシステムが通信に最適なパケットサイズないし受信窓サイズの送信データを生成できるように、上記バッファ行程におけるデータを蓄積量を設定するとともに、上記再編データ生成行程におけるデータの圧縮率を設定するものである。
本願発明は、オペレーティングシステムにおける通信プロトコルやパラメータを変更するものではないが、TCP/IP等における最大転送単位に対応した送信データを生成することにより、送信効率を高めることが可能となる。本願発明では、上記送信単位に対応した情報量の送信データが、上記オペレーティングシステムにおいて生成されるように、上記バッファ行程におけるバッファ量と、上記再編データ生成行程における圧縮率を調整する。
上記通信に最適なパケットサイズないし受信窓サイズは、通信代理ソフトウエアをインストールする際に、オペレーティングシステムや送信先の情報に基づいて設定することができる。また、請求項6に記載した発明のように、上記通信回線におけるデータの通信速度及び/又は通信形態を検出する通信状態検出行程を含ませ、上記通信状態検出行程において検出されたデータの通信速度及び/又は通信形態に基づいて、上記バッファ行程におけるデータ蓄積量及び/又は上記再編データ生成行程における上記データ圧縮率を調整することができる。
上記バッファ量及び上記データ圧縮率を、通信に最適なデータが生成されるように調整することにより、アプリケーションソフトウエアにおいて生成されたデータの種類やデータ量に最適な通信を行うことができる。また、オペレーティングシステム、送信先のコンピュータ及びアプリケーションソフトウエアに対応したデータ通信を行うことも可能となる。特に、受信窓は、データを送受信するコンピュータ間での特性であるため、上記通信状態検出行程を行うのが好ましい。たとえば、送信側通信代理ソフトウエアから受信側通信代理ソフトウエアにダミーデータを送信して、上記情報を得ることができる。
さらに、本願の請求項4に記載した発明のように、上記バッファ行程及び/又は上記再編データ生成行程に、疑似受信した送信データパケット及び/又はこれらを一体化した送信データの形態を変更するデータ加工行程を含ませることができる。
たとえば、請求項7に記載した発明のように、上記データ加工行程において、一体化された上記送信データにスクランブル処理を施すことにより、通信の安全生が格段に向上する。
また、請求項8に記載した発明のように、上記データ加工行程において、受信側コンピュータ及び/又は受信側アプリケーションソフトウエアに応じて上記データの形態を変更することができる。すなわち、画像データ等を送信する場合、送信先の端末の種類等に応じてデータを間引きしたり、データの形態やフォーマットを変更して、送信速度を高めることも可能となる。たとえば、送信先がモバイル機器や携帯電話等の機能が低い機器に、サーバ等から注出した大きな画像データを送信する場合には、データサイズを小さく加工するとともに、サーバにおいて付加されアプリケーションプロトコルのサイズ情報を変更して、再編データを生成することができる。また、送信側アプリケーションで生成されたサイズの大きなデータの形式を変更してサイズを縮小するとともに、アプリケーションプロトコルのデータ種別情報を変更して再編データを生成することもできる。
本願の請求項9から請求項19に記載した発明は、本願発明をサーバ・クライアントシステムに適用したものである。本願発明が適用されるシステムの種類は特に限定されることはなく、インターネットで採用されるWWW通信システムのみならず、専用回線を利用したデータの送受信にも適用することができる。
本願の請求項9に記載した発明は、各々のオペレーティングシステム上で作動するクライアントとサーバとを通信回線を介して接続し、上記クライアントにおいて生成されるリクエストを上記サーバに送信するとともに、上記サーバにおいて上記エクエストに応じたレスポンスを生成して上記クライアントに送信するデータ通信システムであって、上記クライアント側に仮想サーバを設けるとともに上記サーバ側に仮想クライアントを設けて構成される。
上記仮想サーバは、上記サーバ側に向けてデータを送信するための手段として、上記クライアントないしクライアント側オペレーティングシステムで生成されたリクエストパケットを上記オペレーティングシステムから疑似受信するとともに、上記リクエストパケットに応じて疑似受信応答を発行するリクエスト疑似受信手段と、所定情報量のリクエストパケットを蓄積できるバッファ手段と、蓄積した上記リクエストパケットを一体化するとともに、情報形態及び/又は通信環境に最適な再編リクエストデータを生成する再編リクエストデータ生成手段と、上記再編リクエストデータを上記オペレーティングシステム及び上記通信回線を介して上記仮想クライアントに向けて送信する再編リクエストデータ送信手段とを備える。
また、上記仮想サーバは、サーバ側からのデータを受信するための手段として、上記仮想クライアントによって生成される再編レスポンスデータをクライアント側オペレーティングシステムを介して受信する再編レスポンスデータ受信手段と、受信した上記再編レスポンスデータから上記サーバないしサーバ側オペレーティングシステムで生成されたレスポンスパケットを再生するレスポンスパケット再生手段と、再生した上記レスポンスパケットを上記オペレーティングシステムを介して上記クライアントに転送するレスポンスパケット転送手段とを備える。
一方、上記仮想クライアントは、上記クライアント側からのデータを受信するための手段として、上記仮想サーバから送信された上記再編リクエストデータをサーバ側オペレーティングシステムを介して受信する再編リクエストデータ受信手段と、上記再編リクエストデータから上記リクエストパケットを再生するリクエストパケット再生手段と、再生した上記リクエストパケットをサーバ側オペレーティングシテステムを介して上記サーバに転送するリクエストパケット転送手段とを備える。
また、上記仮想クライアントは、上記サーバで生成されたデータを上記クライアント側に向けて送信するための手段として、上記レスポンスパケットをサーバ側オペレーティングシステムを介して疑似受信するとともに、上記レスポンスパケットに応じて疑似受信応答を発行するレスポンス疑似受信手段と、所定情報量の上記レスポンスパケットを蓄積できるバッファ手段と、蓄積した上記レスポンスパケットを一体化するとともに、情報形態及び/又は通信環境に最適な上記再編レスポンスデータを生成する再編レスポンスデータ生成手段と、上記再編レスポンスデータを、サーバ側オペレーティングシステム及び上記通信回線を介して上記仮想サーバに向けて送信する再編レスポンスデータ送信手段とを備える。
上記仮想サーバ及び上記仮想クライアントは、上記クライアント及び上記サーバを設けたコンピュータにそれぞれのソフトウエアをインストールして、上記リクエストあるいは上記レスポンスを生成するクライアントソフトウエアあるいはサーバソフトウエアと同一のオペレーションシステムで作動させることができる。
上記リクエスト及び上記レスポンスはブラウザ等のクライアントソフトウエアやウエブサーバ等のサーバソフトウエアによって生成される。
一つのリクエストやレスポンスの情報量は、採用されるソフトウエアや送信するコンテンツによって大きく異なる。たとえば、データベースコマンドのようなリクエストは、情報量が小さい。一方、画像等のコンテンツ情報量は非常に大きい。
たとえば、クライアントソフトウエアあるいはデータベースソフトウエアによって生成されたリクエストあるいはレスポンスは、HTTP等のアプリケーション層における通信プロトコル処理がなされて、オペレーティングシステムに引き渡される。この場合、引き渡された情報量が、一つのパケットに収容できる大きさより大きい場合には複数のパケットに分割され、これら各パケットについて、TCP/IP等の通信プロトコルに応じたヘッダがそれぞれ付加されて、各々送信手続きが実行される。
本願発明に係る通信システムにおいては、上記リクエストを上記サーバに送信するのではなく、まず仮想サーバに向けて送信する。そして、上記仮想サーバは、疑似受信手段によって、あたかも真のサーバのように上記リクエストを疑似受信する。真のサーバを装うため、上記リクエストパケットに応じて疑似受信応答を発行するリクエスト疑似受信手段が設けられている。上記疑似受信応答は、オペレーションシステムの設定等により、各パケットに対して発行される場合もあるし、複数のパケット群に対して発行される場合もある。
上記仮想サーバ及び仮想クライアントにおけるバッファ手段は、1又は2以上のリクエストパケットあるいはレスポンスパケットを蓄積することができる。上記バッファ手段は、請求項13に記載した発明のように、蓄積される上記リクエストパケット又は上記レスポンスパケットの情報量を計数する計数手段と、蓄積される上記リクエストパケット及び上記レスポンスパケットの内容を解析する情報解析手段と、上記計数手段によって計数された蓄積情報量及び/又は上記解析手段によって解析された情報内容によって、それまでに蓄積した上記リクエストパケット又は上記レスポンスパケットを、上記再編リクエストデータ生成手段又は上記再編レスポンスデータ生成手段に引き渡すバッファ解除手段とを備えて構成することができる。
本願の請求項10に記載した発明のように、上記再編リクエストデータ生成手段及び上記再編レスポンスデータ生成手段を、一体化された上記リクエストパケット又は上記レスポンスパケットに上記仮想サーバと上記仮想クライアント間で適用される独自プロトコル処理を行う独自プロトコル処理手段と、上記独自プロトコル処理されたデータを圧縮処理するデータ圧縮手段とを備えて構成することができる。
また、請求項11に記載した発明のように、上記再編リクエストデータ生成手段及び上記再編レスポンスデータ生成手段は、各オペレーティングシステムにおいて通信に最適なパケットサイズないし受信窓サイズの送信データが生成されるように、上記各バッファ手段におけるデータ蓄積量及び/又は上記各圧縮手段における圧縮率を調節するデータ最適化手段を備えて構成することができる。
上記データ最適化手段を、請求項14に記載した発明のように、上記通信回線におけるデータ通信速度及び/又は通信データ形態を検出する通信状態検出手段を備えて構成し、上記通信状態検出手段によって検出された通信状態に基づいて、上記バッファ手段におけるデータ蓄積量及び/又は上記各圧縮手段における圧縮率を最適化するように構成することができる。
オペレーティングシステムにおける通信プロトコルは、通信の確実性を確保するため、送信先からの受信応答があった後に次のパケットあるいはパケット群を送信するように設定されている。上記受信窓サイズは、受信応答なしに送信あるいは受信できるデータ量である。したがって、パケットの場合と同様に、クライアントからオペレーティングシステムに引き渡される一つのリクエストをパケットに分割したとき、上記受信窓サイズより大きい場合には、受信応答の数が増加して通信効率が低下することになる。
本願発明は、仮想サーバ及び仮想クライアントにおいて、各オペレーティングシステムに引き渡される情報量を調節し、オペレーティングシステムによって最適な情報量のパケット、あるいは受信窓に対応した情報量のパケット群が形成されるように構成したものである。
たとえば、圧縮処理を施した後に、送信パケットサイズあるいは受信窓のサイズに近い情報量の送信データが生成されるように、複数のリクエストパケットを蓄積するのである。これにより、パケットの数及び送受信の回数を格段に減少させて、送受信効率を高めることができる。すなわち、仮想サーバあるいは仮想クライアントによって上記オペレーティングシステムに引き渡される情報量を最適化することにより、通信速度を大幅に向上させることが可能となる。なお、上記送信パケットサイズあるいは受信窓サイズの送信データが複数生成されるようにデータを蓄積して最適化することもできる。
本願の請求項12に記載した発明は、上記再編リクエストデータ生成手段及び上記再編レスポンスデータ生成手段が、上記リクエストパケット又は上記レスポンスパケット、及び/又は各パケットを一体化したデータの形態を変更するデータ加工手段を備えるものである。
上記データ加工手段を、請求項15に記載した発明のように、一体化された上記パケットデータにスクランブル処理を行うスクランブル処理手段を含んで構成することができる。これにより、通信の安全性が向上する。
また、請求項16に記載した発明のように、上記データ加工手段を、受信側コンピュータ及び/又は受信側アプリケーションソフトウエアに応じて、データの形態を変更するデータ形態変更手段を含で構成することができる。すなわち、サーバで生成されたデータをクライアント機の性能等に応じた形態に変更して送信することも可能となる。たとえば、モバイルコンピュータ等からのリクエストに対しては、通常のコンピュータからのリクエストである場合に比べて小さな情報量のデータに加工して送信することも可能となる。また、上記データの変更は、データのサイズを小さく加工するとともに、上記解析手段によってアプリケーションヘッダにおけるデータサイズ情報を検出し、これを送信データのサイズに書き換えることにより行うことができる。
上記仮想クライアントは、上記再編リクエストデータ受信手段によって上記仮想サーバから送信された再編リクエストデータを受信する。この場合、通常のデータ通信と全く同様の手順で通信が行われる。上記リクエストパケット再生手段は、クライアント側アプリケーションソフトウエアないしオペレーティングシステムによって生成されたリクエストパケットを再生する。そして、上記リクエストパケット転送手段によってこれをサーバに転送する。上記サーバは、従来と同様の手続きにより上記リクエストを処理し、これに応じたレスポンスを生成する。
上記レスポンスは、上記リクエストと同様に上記サーバに適用されるアプリケーションプロトコルによって通信データに処理されるしたがって、そのままクライアントに向けて送信すると、クライアント機側において上記サーバに向けた通信と同様の問題が生じる。
本願発明では、サーバ側でも上記クライアント側でしたのと同様の手法によりデータ処理して送信し、クランアント側で受信させることにより送受信効率を高めている。
本願の請求項17に記載した発明においては、上記計数手段が4Kバイト〜4Mバイトの蓄積情報量を検出した場合又は上記解析手段がエスケープシーケンスあるいはデータ送信終了シグナル等を検出した場合に上記バッファの解除を行って、上記蓄積情報を上記再編リクエストデータ生成手段又は上記再編レスポンスデータ生成手段に引き渡す一方、上記再編リクエストデータ生成手段及び上記再編レスポンスデータ生成手段は、上記圧縮手段及び上記データ加工手段によって、1.5Kバイト〜1.5Mバイトの情報量を有する再編リクエストデータ又は再編レスポンスデータを生成するように構成したものである。
通常、一つのデータパケットにおけるデータ量(MTU)は、1.5Kバイトである。したがって、小さな送信データにおいては、TCP/IPプロトコルヘッダを含んだ情報量が1.5Kバイトになるように、上記再編データを生成するのが好ましい。また、本実施の形態では、圧縮率を約3分の1に設定しているため、通信に最適なデータパケットを生成するために、上記バッファには、独自プロトコルヘッダが付加されることを考慮して4Kバイト以上の情報を蓄積するのが好ましい。4Kバイト以下のデータを蓄積量では、最大パケットサイズに満たない送信パケットが生成される。
一方、最大受信窓サイズは、通信回線の状況等によって変更されるが、効率的なデータ送信を行うには、1.5Mバイト以下に設定するのが好ましい。これ以上のデータを一回の手順で送信すると通信回線を専有する時間が大きくなり、他の通信に影響を与えることになる。圧縮率を3分の1に設定すると、上記最大受信窓サイズのパケット群を生成するため、4Mバイト程度の情報量を蓄積するのが好ましい。
なお、上記情報蓄積量及び圧縮率は、上記最大パケットサイズの送信データが複数生成され、あるいは最大受信窓サイズのパケット群が整数倍生成されるように設定することもできる。また、上記最大順窓サイズ、通信回線等によって変更されるため、これに合わせて情報蓄積量及び圧縮率を設定するのが好ましい。
本願の請求項18に記載した発明は、上記仮想サーバ及び/又は上記仮想クライアントは、上記クライアント又は上記サーバを格納したクライアント機又はサーバ機に、それぞれのオペレーティングシステム上で作動するアプリケーションソフトウエアとして設けたものである。
本願発明は、送信データを生成するアプリケーションソフトウエア、オペレーティングシステム及びハードウエアを全く変更することなく構成することができる。本願発明は、以下に述べるプログラムを記載した種々の記録媒体によって提供され、コンピュータにインストールされる。
本願の請求項19に記載した発明は、通信回線を介して接続される2以上のコンピュータにそれぞれ格納されたアプリケーションソフトウエア間でデータを送受信するデータ通信システムにおいて、上記各コンピュータに格納されてそれぞれのオペレーティングシステムで作動させられるとともに、上記アプリケーションソフトウエア間のデータ通信を媒介する通信代理ソフトウエアプログラムを記録したコンピュータ読み取り可能な記録媒体であって、送信側のアプリケーションソフトウエアないしオペレーティングシステムで生成されたデータパケットを上記オペレーティングシステムから疑似受信するとともに、上記データパケットに応じて疑似受信応答を発行する疑似受信手段と、所定情報量の上記データパケットを蓄積できるバッファ手段と、蓄積した上記データパケットを一体化するとともに、情報形態及び/又は通信環境に最適な再編データを生成する再編データ生成手段と、上記再編データを上記オペレーティングシステム及び上記通信回線を介して受信側コンピュータに向けて送信する再編データ送信手段と、他のコンピュータにおける上記各手段によって生成された再編データを、上記通信回線及び上記オペレーティングシステムを介して受信する再編データ受信手段と、受信した上記再編データから、上記他のコンピュータにおいて生成されたデータパケットを再生するデータパケット再生手段と、再生した上記データパケットを上記オペレーティングシステムを介して上記アプリケーションソフトウエアに転送するデータパケット転送手段とを含む、通信代理ソフトウエアプログラムを記録してあることを特徴とする。
本願の請求項20に記載した発明は、上記再編データ生成手段が、一体化された上記データパケットに、送信側と受信側の上記通信代理ソフトウエア間で適用される独自プロトコル処理を行う独自プロトコル処理手段と、上記独自プロトコル処理されたデータを圧縮するデータ圧縮手段とを含む通信代理ソフトウエアプログラムを記録してあることを特徴とするものである。
本願の請求項21に記載した発明は、各オペレーティングシステムにおいて、通信に最適なパケットサイズないし受信窓サイズの送信データが生成されるように、上記各バッファ手段におけるデータ蓄積量及び/又は上記各圧縮手段における圧縮率を調節するデータ最適化手段をを含む送信代理ソフトウエアプログラムを記録してあることを特徴とするものである。
本願の請求項22に記載した発明は、上記再編データ生成手段及が、データの形態を変更するデータ加工手段を含む送信代理ソフトウエアプログラムを記録してあることを特徴とするものである。
本願の請求項23に記載した発明は、上記バッファ手段が、蓄積される上記データパケットの情報量を計数する計数手段と、蓄積される上記データパケットの内容を解析する情報解析手段と、上記計数手段によって計数された蓄積情報量及び/又は上記解析手段によって解析された情報内容によって、それまでに蓄積した上記データパケットを、上記再編データ生成手段に引き渡すバッファ解除手段とを含む送信代理ソフトウエアプログラムを記録してあることを特徴とするものである。
本願の請求項24に記載した発明は、上記データ最適化手段が、上記通信回線におけるデータ通信速度及び/又は通信データ形態を検出する通信状態検出手段を含み、上記通信状態検出手段によって検出された上記データ通信速度及び/又は上記通信データ形態に基づいて、上記バッファ手段におけるデータ蓄積量及び/又は再編データ送信手段におけるデータ圧縮率を最適化して再編データを生成する送信代理ソフトウエアプログラムを記録してあることを特徴とするものである。
以下、本願発明を実施する最良の形態を図に基づいて具体的に説明する。
なお、本実施の形態は、本願発明を、クライアント機1とサーバ機2とをインターネット3を介して接続したクランアント・サーバシステムに適用したものである。
図1及び図2に、本願発明に係る通信システムの概要を示す。これらの図に示すように、各々のオペレーティングシステムOS1 ,OS2 上で作動するクライアントアプリケーションソフトウエアC(以下、クライアントCという)とサーバアプリケーションソフトウエアS(以下、サーバSという)を設けたクライアント機1とサーバ機2とを上記インターネット3を介して接続し、上記クライアントCにおいて生成されるリクエストが上記サーバSに向けて送信される。
一方、図2に示すように、上記サーバSにおいて上記リクエストに応じたレスポンスが生成されて、上記インターネット3を介して上記クライアントCに送信される。なお、上記クライアントCとして一般的なブラウザソフウエアを、上記サーバSとして一般的なウエブサーバが採用されている。
本実施の形態では、上記クライアント機1に通信代理ソフトウエアとして仮想サーバVSをインストールする一方、上記サーバ機2に仮想クライアントVCをインストールして、これら仮想サーバVSと仮想クライアントVCと間で、インターネット3を介した実質的なデータの送受信を行う。
図3に示すように、上記仮想サーバVSには、上記クライアントCないしオペレーティングシステムOS1 で生成されたリクエストパケットを上記オペレーティングシステムOS1 から疑似受信するとともに、上記リクエストパケットに応じて疑似受信応答を発行するリクエスト疑似受信手段10と、所定情報量のリクエストパケットを蓄積できるバッファ手段11と、蓄積した上記リクエストパケットを一体化するとともに、情報形態及び/又は通信環境に最適な再編リクエストデータを生成する再編リクエストデータ生成手段12と、上記再編リクエストデータを上記オペレーティングシステムOS1 及び上記インターネット3を介して上記仮想クライアントVSに向けて送信する再編リクエストデータ送信手段13がプログラムとして設けられている。
また、上記仮想サーバ4には、上記サーバ機2からのデータを受信するために、上記仮想クライアントVCによって生成される再編レスポンスデータを上記オペレーティングシステムOS2 を介して受信する再編レスポンスデータ受信手段15と、受信した上記再編レスポンスデータから上記サーバSないし上記オペレーティングシステムOS2 で生成されたレスポンスパケットを再生するレスポンスパケット再生手段16と、再生した上記レスポンスパケットを上記オペレーティングシステムOS1 を介して上記クライアントCに転送するレスポンスパケット転送手段17がプログラムとして設けられている。
一方、図4に示すように、上記仮想クライアントVCには、上記仮想サーバVSとの通信を行うために、上記仮想サーバVSから送信された上記再編リクエストデータを上記オペレーティングシステムOS2 を介して受信する再編リクエストデータ受信手段20と、上記再編リクエストデータから上記リクエストパケットを再生するリクエストパケット再生手段21と、再生した上記リクエストパケットを上記オペレーティングシテステムOS2 を介して上記サーバSに転送するリクエストパケット転送手段22とがプログラムとして設けられている。
また、上記仮想クライアントVCには、上記サーバSないし上記オペレーティングシテステムOS2 において生成された上記レスポンスパケットを疑似受信するとともに、上記レスポンスパケットに応じて疑似受信応答を発行するレスポンス疑似受信手段23と、所定情報量の上記レスポンスパケットを蓄積できるバッファ手段24と、蓄積した上記レスポンスパケットを一体化するとともに、情報形態及び/又は通信環境に最適な上記再編レスポンスデータを生成する再編レスポンスデータ生成手段25と、上記再編レスポンスデータを、上記オペレーティングシステムOS2 及び上記通信回線を介して上記クライアント機1に向けて送信する再編レスポンスデータ送信手段26とが、プログラムとして設けられている。
上記リクエスト疑似受信手段10及び上記レスポンス疑似受信手段23には、上記疑似受信応答を発行するための疑似受信応答手段45,46がそれぞれ設けられている。また、上記バッフア手段11,24には、蓄積される上記リクエストパケット又は上記レスポンスパケットの情報量を計数する計数手段27,28と、蓄積される上記リクエストパケット及び上記レスポンスパケットの内容を解析する情報解析手段29,30と、上記計数手段27,28によって計数されたバッファ情報量及び/又は上記解析手段29,30によって解析された情報内容によって、それまでに蓄積した上記リクエストパケット又は上記レスポンスパケットを、上記再編リクエストデータ生成手段12又は上記再編レスポンスデータ生成手段25に引き渡すバッファ解除手段31,32とが設けられている。また、本実施の形態では、各オペレーティングシステムOS1 ,OS2 において付加された通信プロトコルを削除するためのプロトコル削除手段43,44が設けられている。
また、上記再編リクエストデータ生成手段12及び上記再編レスポンスデータ生成手段25には、一体化された上記リクエストパケット又は上記レスポンスパケットに、上記仮想サーバVSと上記仮想クライアントVC間で適用される独自プロトコル処理を行う独自プロトコル処理手段33,34と、上記独自プロトコル処理されたデータを圧縮するデータ圧縮手段35,36と、データにスクランブル処理を行うスクランブル手段37,38とが設けられている。
一方、受信した上記再編データの処理を行うために、上記レスポンスパケット再生手段16及び上記リクエストパケット再生手段21には、圧縮解凍手段39,40と、スクランブル解除手段41,42とが設けられている。
さらに、本実施の形態では、各オペレーティングシステムOS1 ,OS2 において、通信に最適なパケットサイズないし受信窓サイズの送信データが生成されるように、上記各バッファ手段11,24におけるデータ蓄積量及び/又は上記各圧縮手段35,36における圧縮率を調節するデータ最適化手段47,48を備えて構成されている。上記データ最適化手段47,48には、ダミーデータを送信してクランアント機1とサーバ機2との間の通信状態等を検出する通信状態検出手段が設けられている。
上記構成の通信システムにおけるデータ通信の手順を、図5から図11に示すフローチャート及び図12から図25に示すデータ形態に基づいて説明する。なお、以下に説明する形態では、TCP/IPプロトコルを採用して通信が行われるとともに、クライアントCからリクエストをサーバSに向けて送信する場合にはパケットサイズに基づいて処理が行われる場合を示す一方、サーバSからレスポンをクライアントCへ返送する場合には、受信窓の送信単位で処理が行われる場合を示す。実際には、送信するデータ量等に基づいてどららかの転送手法が自動的に選択される。
クライアントCにおいては、図12に示すように、データ量が不規則なリクエストデータD1 〜D4 が順次生成されて(S101)、HTTP等のアプリケーションプロトコルにしたがって処理され(S102)、オペレーティングシテムOS1 に引き渡される(S103)。
上記各データD1 〜D4 のデータサイズは、一回のパケット通信で送信できる送信パケットサイズより少ないものD2 ,D3 もあれば、上記送信パケットサイズを越えているものD1 ,D4 もある。上記データは、オペレーティングシステムOS1 においては、図13に示すように、上記パケットサイズの大きいものD1 ,D4 が送信パケットサイズ以下のデータパケットD1a〜D1bに分割されて、TCP/IPヘッダが付加された6つのリクエストパケットが生成される(S104)。そして、これらリクエストパケットが上記仮想サーバVSに向けて送信される(S106)。上記各データパケットの送信は、後に述べる仮想サーバVSからの疑似受信応答に呼応して行われる(S105)。
送信された上記リクエストパケットは、仮想サーバVSの疑似受信手段10によって疑似受信される(S107)。上記リクエストパケットは、上記情報解析手段29によって内容が解析されるとともに(S108)、必要に応じて疑似受信応答が発行される(S109)。上記疑似受信応答に応じて、各リクエストパケットが順次疑似受信される。
上記各リクエストパケットは、上記TCP/IPヘッダが除去され(S110)、計数手段27によって情報量が計数されるとともに(S111)、図14に示すような形態で、上記バッファ手段11に蓄積される(S112)。上記バッファへ手段11へのリクエストパケットの蓄積量は、上記データ最適化手段47によって上記バッファ解除手段31及び/又は疑似受信応答手段45を制御することにより行われる。
上記情報解析手段29によってエスケープシーケンスが検出された場合(S113でY)、又は蓄積した情報量が所定の量に達した場合(S114でY)に、上記バッファが解除されて、蓄積データが再編リクエストデータ生成手段12に引き渡される(S115)。
上記再編リクエストデータ生成手段12において、上記蓄積されたデータに対して独自のプロトコル処理がなされて(S116)、図15に示す独自プロトコルの付加されたデータが生成される。上記独自プロトコル処理は、上記仮想クライアントVCにおいて各リクエストパケットD1a〜D4bを再生するためのもののみならず、種々の目的のプロトコル処理を行うことができる。
プロトコル処理が施されたデータに対して、上記スクランブル手段37によるスクランブル処理が行われて、図17に示すように、データにスクランブル情報が付加される(S117)。これにより、セキュリティ性能の高い送信データを生成することが可能となる。
さらに、上記スクランブル処理が施されたデータに対して、上記圧縮手段35による圧縮処理が行われ、図17に示すように、圧縮されたスクランブル圧縮データに圧縮情報が付加された形態のデータが生成される(S118)。
本実施の形態では、データ最適化手段47によって、上記バッファ手段11によるデータ蓄積量と、上記圧縮手段35における圧縮率を調節するように構成される。上記調節は、オペレーティングシステムOS1 に引き渡された後に(S119)、図18に示すような、送信パケットサイズに対応し、あるいは、これに近いサイズの複数のデータパケットD1A,D2Aが生成されるように設定される。上記送信パケットサイズのデータパケットを生成することにより、送信手順の無駄をなくして、送信効率を高めることが可能となる。上記各データパケットD1A,D2Aは、オペレーティングシステムOS1 によってTCP/IPヘッダが付加されて、通常の送信手順と同様にインターネット3を介してサーバ機2に向けて送信される(S122)。なお、データの送信は、従来の送信手順と同様に、サーバ機2からの受信応答に応じて上記データパケットD1A,D2Aが送信されることにより行われる。
図18のデータパケットD1A,D2Aと、図13のデータパケットD1a〜D4bの送信形態を比較すると明らかなように、上記仮想サーバVSによって処理を行うことにより、情報量を格段に減少させることができるとともに、送信手順を減少させることができる。このため、データの送信効率が高まる。なお、上述した実施の形態では、理解を容易にするため、クライアントで生成される限られたデータに対する処理を例として上げたが、実際には、複数のデータ処理が、連続的にあるいは並列的に行われる。
インターネット3を介して送信された上記データパケットD1A,D2Aは、サーバ機2のオペレーティングシステムOS2 によって受信される(S201)。上記データパケットD1A,D2Aの受信に応じて、通常の通信手順と同様に、上記クライアント機1にむけて受信応答が発行される(S202)。
受信されたデータパケットD1A,D2Aは、従来と同様に上記オペレーティングシステムOS2 によって通信プロトコル等が削除されて、仮想クライアントVCへ転送される(S203)。すなわち、上記仮想クライアントVSには、図17に示す形態のデータが引き渡される。
上記仮想クライアントVSにおいて、上記圧縮データが上記圧縮解凍手段40によって解凍されるとともに(S204)、上記スクランブル解除手段42によってスクランブル処理が解除されて、図15に示す独自プロトコル処理されたデータが生成される(S205)。そして、このデータから、図12に示す、クライアントCが生成したのと全く同一の各データD1 〜D4 が分離生成される(S206)。上記データD1 〜D4 は、上記オペレーティングシステムOS2 に引き渡され、再度TCP/IP処理がなされてヘッダが付加されて、図13に示すデータ形態に処理され(S207)、上記クライアントCから送信されたと全く同一の手順で上記サーバSに転送される(S208)。
サーバSは、上記データをリクエストとして受信した後(S209)、上記リクエストに基づいて検索処理等が行われ、レスポンスが生成される(S210)。これにより、クライアントCからサーバSへのリクエストデータの送信及び処理が完了する。
次に、上記レスポンスデータを、上記サーバSからクライアントCへ送信する手順を、図8〜図11のフローチャート及び図19から図25のデータ形態を表す図面に基づいて説明する。
本願発明は、上述したパケットサイズに近い送信データの通信効率を高めるだけでなく、送信される情報形態によって、送信窓サイズに対応したデータの送受信効率を高めることができるように構成されている。すなわち、検索コマンドのような非常に小さいデータを送信する場合には、これまでに説明したパケットレベルでの通信効率を向上させることができるとともに、画像データのような多量のデータを送信する場合には、受信窓サイズでの通信効率を高めることができるように構成している。なお、以下の実施の形態は、理解を容易にするために単純化して説明してある。
図19に示すように、上記サーバSにおいて生成された各レスポンスデータd1 〜レスポンスデータd4 のうち、d1 とd4 のデータが受信窓サイズを越えたサイズを有している。なお、図19には、パケット数を比較できるように、パケットを破線で表示している。
図19示すデータがオペレーティングシステムOS2 に引き渡されると(S212)、TCP/IPプロトコル処理が行われて(S213)、レスポンスデータd1 〜レスポンスデータd4 が順次パケット化される。そして、図20に示すように、受信応答なしに複数のパケットを送信できる単位、すなわち受信窓サイズに分割された各パケット群d1a〜d4bが仮想クライアントVSに向けて順次送信される(S215)。
上記仮想クライアントVCは、上記レスポンス疑似受信手段23によって上記レスポンスパケット群d1a〜d4bを順次受信する(S216)。各パケット群は、上記情報解析手段30によって内容が解析されるとともに(S217)、上記疑似受信応答手段46によって疑似順応答が発行され(S218)、この疑似受信応答に応じて、上記各パケット群がサーバSから順次送信される(S214)。
受信された各パケット群を構成するパケットのヘッダが、上記プロトコル削除手段44によって削除され(S219)、上記情報量計数手段28によって情報量が計数されるとともに(S220)、上記バッファ手段24に蓄積される(S221)。
上記バッファ手段24へのリクエストパケットの蓄積量は、上記データ最適化手段48及によって上記バッファ解除手段32及び/又は圧縮手段36を制御することにより行われる。上記バッファ手段における情報蓄積形態は、図14と同様に連続したデータであるが、理解を容易にするため、図21には破線で示すパケット数で蓄積量を表している。
上記情報解析手段が、エスケープシーケンスを検出し(S222でY)、あるいは蓄積情報量が所定量に達した場合に(S223でY)、上記バッフアが解除され、蓄積情報が再編レスポンスデータ生成手段25に引き渡される(S224)。
上記再編レスポンスデータ生成手段25においては、上記独自プロトコル手段34によって上記バッファデータに独自のプロトコル処理がなされて(S225)、図22に示すように、独自プロトコルヘッダが付加されたデータが生成される。次に、上記スクランブル手段38によってスクランブル処理が施されて(S226)、図23に示すように、スクランブル情報が付加されたデータが形成される。さらに、上記圧縮手段36によって、図23に示すデータの全体が圧縮処理されて(S227)、図24に示す、圧縮情報が付加された再編レスポンスデータが生成される。なお、本実施の形態では、2つの受信窓サイズに対応するデータが生成されるように構成している。
上記仮想クライアントVCには、上記仮想サーバVSと同様に、データ最適化手段48が設けられている。データ最適化手段48は、上記オペレーティングシステムOS2 に引き渡された上記再編レスポンスデータが、図25に示すような、二つの受信窓サイズに対応する複数のデータパケット群に分割されるように、上記バッファ手段24におけるデータ蓄積量と、上記圧縮手段36における圧縮率を調節するように構成されている。
上記調節は、上記データ最適化手段48の通信状態検出手段50によって得られる情報に基づいて行われる。上記通信状態検出手段50は、ダミーデータをクライアント機1に送信して、送信に最適な上記受信窓サイズを検出し、上記データ最適化手段に反映させることができる。
したがって、図24に示すデータが上記OS2 に引き渡されると(S228)、上述した仮想サーバVSと同様に、TCP/IPプロトコル処理されて(S229)、パケットが生成される。上記パケットは、最大受信窓サイズに対応した二つのパケット群が生成されるように構成されており、最小の受信応答によって、上記クライアント機1に向けてデータが送信される。上記各パケット群は、通常の送信手順と同様に、各受信窓に対応した受信応答に応じて送信される(S230)。
図25の送信データの形態と、図20に示す送信データの形態を比較すると明らかなように、情報量自体を格段に減少させることができるばかりでなく、受信応答の数を大幅に減少させて送信を行うことが可能となる。
上記クライアント機1のオペレーティングシステムOS1 は、上記パケット群を順次受信するとともに(S301)、通常の受信手順と同様に、上記仮想クライアントVCに向けて受信応答を発行する(S302)。
また、上記オペレーティングシステムOS1 においては、通常の受信手順と同様に、上記受信したパケット群の各パケットのTCP/IPヘッダが除去された状態の情報が、上記仮想サーバVSへ転送される(S303)。
上記仮想サーバVSは、上記再編レスポンスデータ受信手段15によって、上記再編レスポンスパケットデータを受信し、上記レスポンスパケット再生手段16の圧縮解凍手段40によって圧縮データの解凍を行い(S304)、また、上記スクランブル解除手段42によってスクランブルが解除される(S305)。そして、独自プロトコル処理手段33によって、図19に示すデータと同様の複数のデータが再生される(S306)。上記複数のデータは、上記データを上記オペレーティングシステムOS1 に引き渡して(307)、上記クライアントへ転送する(S308)。
上記クライアントCは、上記オペレーティングシステムOS1 から上記データを受信し(S309)、これを出力する(S310)。
上述した実施の形態では、各オペレーティングシステムOS1 ,OS2 と仮想サーバVS又は仮想クライアントVCとのデータ交換があるため、通信効率が低下するかのように見える。しかしながら、上記データの交換は、同じオペレーティングシステム上で行われるデータの交換であるため、通信回線を介して行われるデータの交換と比べてデータ交換効速度が極めて高い。このため、上記仮想サーバ及び仮想クライアントを設けた通信システムにおける、データの通信効率を大幅に向上させることが可能となる。
実施の形態に係るクライアント側システム構成の概要を示す図である。 実施の形態に係るサーバ側システム構成の概要を示す図である。 仮想サーバの構成の概要を示す図である。 仮想クライアントの構成の概要を示す図である。 クライアントにおけるリクエストデータの処理手順を示すフローチャートである。 仮想サーバにおけるリクエストデータの処理手順を示すフローチャートである。 仮想クライアントにおけるリクエストデータの処理手順を示すフローチャートである。 サーバにおける処理手順を示すフローチャートである。 仮想クライアントにおけるレスポンスデータの処理手順を示すフローチャートである。 仮想サーバにおけるレスポンスデータの処理手順を示すフローチャートである。 クライアントにおけるレスポンスデータの処理を示すフローチャートである。 クライアントにおいて生成されるリクエストデータの形態を示す図である。 クライアント側オペレーティングシステムにおいて生成されるリクエストデータの形態を示す図である。 仮想サーバにおいて生成されるリクエストデータの形態を示す図である。 仮想サーバにおいて生成されるリクエストデータの形態を示す図である。 仮想サーバにおいて生成されるリクエストデータの形態を示す図である。 仮想サーバにおいて生成されるリクエストデータの形態を示す図である。 クライアント側オペレーティングシステムにおいて生成されるリクエストデータの形態を示す図である。 サーバにおいて生成されるレスポンスの形態を示す図である。 サーバ側オペレーティングシステムにおいて生成されるレスポンスデータの形態を示す図である。 仮想クライアントおいて生成されるレスポンスデータの形態を示す図である。 仮想クライアントおいて生成されるレスポンスデータの形態を示す図である。 仮想クライアントおいて生成されるレスポンスデータの形態を示す図である。 仮想クライアントおいて生成されるレスポンスデータの形態を示す図である。 サーバ側オペレーティングシステムにおいて生成されるレスポンスデータの形態を示す図である。
1 クライアント機(コンピュータ)
2 サーバ機(コンピュータ)
3 インターネット(通信回線)
C クライアント(アプリケーションソフトウエア)
S サーバ(アプリケーションソフトウエア)
OS1 オペレーティングシステム
OS2 オペレーティングシステム
VS 仮想サーバ(通信代理ソフトウエア)
VC 仮想クライアント(通信代理ソフトウエア)

Claims (24)

  1. 送信側及び受信側コンピュータに、これらコンピュータに設けられるオペレーションシステム及び通信回線を介してデータ交換を行うアプリケーションソフトウエアを設けるとともに、上記オペレーションシステムによって作動する通信代理ソフトウエアをそれぞれ設け、上記各コンピュータのオペレーティングシステム、上記通信代理ソフトウエア及び通信回線を介して、上記アプリケーションソフトウエアで生成されたデータの送受信を行うデータ通信方法であって、
    送信側アプリケーションソフトウエアないしオペレーティングシステムが生成した送信データパケットを、送信側通信代理ソフトウエアが疑似受信するとともに、上記送信データパケットに応じて疑似受信応答を発行する疑似受信行程と、
    疑似受信した所定量の送信データパケットを蓄積するバッファ行程と、
    蓄積した上記送信データパケットを一体化するとともに、送信データの形態及び/又は通信環境に応じた最適な再編データを生成する再編データ生成行程と、
    上記再編データを上記オペレーティングシステム及び上記通信回線を介して受信側コンピュータに送信するデータ送信行程と、
    受信側通信代理ソフトウエアが、上記オペレーティングシステムを介して上記再編データを受信するデータ受信行程と、
    上記受信側通信代理ソフトウエアが、受信した上記再編データから上記送信データパケットを再生する送信データパケット再生行程と、
    上記送信データパケットを上記オペレーティングシステムを介して受信側アプリケーションソフトウエアに転送する送信データパケット転送行程とを含む、データ通信方法。
  2. 上記再編データ生成行程において、
    一体化された上記送信データパケットに、送信側と受信側の通信代理ソフトウエア間で適用される独自プロトコル処理を行うとともに圧縮処理を行って、上記再編データを生成する、請求項1に記載のデータ通信方法。
  3. 上記オペレーティングシステムが通信に最適なパケットサイズないし受信窓サイズの送信データを生成できるように、上記バッファ行程におけるデータの蓄積量を設定するとともに、上記再編データ生成行程におけるデータの圧縮率を設定する、請求項1又は請求項2のいずれかに記載のデータ通信方法。
  4. 上記バッファ行程及び/又は上記再編データ生成行程は、疑似受信した送信データパケット及び/又はこれらを一体化したデータの形態を変更するデータ加工行程を含む、請求項1から請求項3のいずれかに記載のデータ通信方法。
  5. 上記バッファ行程は、
    蓄積される上記送信データパケットの情報量を計数する情報量計数行程と、
    上記送信データパケットの内容を解析する情報解析行程と、
    上記計数された蓄積情報量及び/又は解析された情報内容によって上記バッファを解除し、蓄積データを上記再編データ生成行程に引き渡すバッファ解除行程とを含む、請求項1から請求項4のいずれかに記載のデータ通信方法。
  6. 上記通信回線におけるデータの通信速度及び/又は通信形態を検出する通信状態検出行程を含み、
    上記通信状態検出行程において検出されたデータの通信速度及び/又は通信形態に基づいて、上記バッファ行程におけるデータ蓄積量及び/又は上記再編データ生成行程における上記データ圧縮率を調整する、請求項1から請求項5のいずれかに記載のデータ通信方法。
  7. 上記データ加工行程において、一体化された上記データにスクランブル処理を施す、請求項1から請求項6のいずれかに記載のデータ通信方法。
  8. 上記データ加工行程において、受信側コンピュータ及び/又は受信側アプリケーションソフトウエアに応じて上記データの形態を変更する、請求項1から請求項7のいずれかに記載のデータ通信方法。
  9. 各々のオペレーティングシステム上で作動するクライアントとサーバとを通信回線を介して接続し、上記クライアントにおいて生成されるリクエストを上記サーバに送信するとともに、上記サーバにおいて上記リクエストに応じたレスポンスを生成して上記クライアントに送信するデータ通信システムであって、
    上記クライアント側にこのクライアントのオペレーションシステムで作動する仮想サーバを設けるとともに、上記サーバ側にこのサーバのオペレーションシステムで作動する仮想クライアントを設け、
    上記仮想サーバは、
    上記クライアントないしクライアント側オペレーティングシステムで生成されたリクエストパケットを上記オペレーティングシステムから疑似受信するとともに、上記リクエストパケットに応じて疑似受信応答を発行するリクエスト疑似受信手段と、
    所定情報量のリクエストパケットを蓄積できるバッファ手段と、
    蓄積した上記リクエストパケットを一体化するとともに、情報形態及び/又は通信環境に最適な再編リクエストデータを生成する再編リクエストデータ生成手段と、
    上記再編リクエストデータを上記オペレーティングシステム及び上記通信回線を介して上記仮想クライアントに向けて送信する再編リクエストデータ送信手段と、
    上記仮想クライアントによって生成される再編レスポンスデータを上記オペレーティングシステムを介して受信する再編レスポンスデータ受信手段と、
    受信した上記再編レスポンスデータから上記サーバないしサーバ側オペレーティングシステムで生成されたレスポンスパケットを再生するレスポンスパケット再生手段と、
    再生した上記レスポンスパケットを上記オペレーティングシステムを介して上記クライアントに転送するレスポンスパケット転送手段とを備える一方、
    上記仮想クライアントは、
    上記仮想サーバから送信された上記再編リクエストデータを上記オペレーティングシステムを介して受信する再編リクエストデータ受信手段と、
    上記再編リクエストデータから上記リクエストパケットを再生するリクエストパケット再生手段と、
    再生した上記リクエストパケットを上記オペレーティングシステムを介して上記サーバに転送するリクエストパケット転送手段と、
    上記レスポンスパケットを上記オペレーティングシステムを介して疑似受信するとともに、上記レスポンスパケットに応じて疑似受信応答を発行するレスポンス疑似受信手段と、
    所定情報量の上記レスポンスパケットを蓄積できるバッファ手段と、
    蓄積した上記レスポンスパケットを一体化するとともに、情報形態及び/又は通信環境に最適な上記再編レスポンスデータを生成する再編レスポンスデータ生成手段と、
    上記再編レスポンスデータを、上記オペレーティングシステム及び上記通信回線を介して上記仮想サーバに向けて送信する再編レスポンスデータ送信手段とを備える、データ通信システム。
  10. 上記再編リクエストデータ生成手段及び上記再編レスポンスデータ生成手段は、
    一体化された上記リクエストパケット又は上記レスポンスパケットに、上記仮想サーバと上記仮想クライアント間で適用される独自プロトコル処理を行う独自プロトコル処理手段と、
    上記独自プロトコル処理されたデータを圧縮処理するデータ圧縮手段とを備える、請求項9に記載のデータ通信システム。
  11. 各オペレーティングシステムにおいて通信に最適なパケットサイズないし受信窓サイズの送信データが生成されるように、上記各バッファ手段におけるデータ蓄積量及び/又は上記各圧縮手段における圧縮率を調節するデータ最適化手段を備える、請求項9又は請求項10のいずれかに記載のデータ通信システム。
  12. 上記再編リクエストデータ生成手段及び上記再編レスポンスデータ生成手段は、上記リクエストパケット又は上記レスポンスパケット、及び/又は各パケットを一体化したデータの形態を変更するデータ加工手段を備える、請求項9から請求項11のいずれかに記載のデータ通信システム。
  13. 上記仮想サーバ及び上記仮想クライアントにおける上記バッファ手段は、
    蓄積される上記リクエストパケット又は上記レスポンスパケットの情報量を計数する計数手段と、
    蓄積される上記リクエストパケット及び上記レスポンスパケットの内容を解析する情報解析手段と、
    上記計数手段によって計数された蓄積情報量及び/又は上記解析手段によって解析された情報内容によって、それまでに蓄積した上記リクエストパケット又は上記レスポンスパケットを、上記再編リクエストデータ生成手段又は上記再編レスポンスデータ生成手段に引き渡すバッファ解除手段とを備える、請求項9から請求項12のいずれかに記載のデータ通信システム。
  14. 上記データ最適化手段は、
    上記通信回線におけるデータ通信速度及び/又は通信データ形態を検出する通信状態検出手段を備えるとともに、
    上記通信状態検出手段によって検出された通信状態に基づいて、上記バッファ手段におけるデータ蓄積量及び/又は上記各圧縮手段における圧縮率を最適化する、請求項9から請求項13のいずれかに記載のデータ通信システム。
  15. 上記データ加工手段は、一体化された上記パケットデータにスクランブル処理を行うスクランブル処理手段を含む、請求項9から請求項14のいずれかに記載のデータ通信システム。
  16. 上記データ加工手段は、受信側コンピュータ及び/又は受信側アプリケーションソフトウエアに応じて、データの形態を変更するデータ形態変更手段を含む、請求項9から請求項15のいずれかに記載のデータ通信システム。
  17. 上記バッファ解除手段は、上記計数手段が4Kバイト〜4Mバイトの蓄積情報量を検出した場合又は上記解析手段がエスケープシーケンスを検出した場合に上記バッファの解除を行って、上記蓄積情報を上記再編リクエストデータ生成手段又は上記再編レスポンスデータ生成手段に引き渡す一方、
    上記再編リクエストデータ生成手段及び上記再編レスポンスデータ生成手段は、上記圧縮手段及び上記データ加工手段によって、1.5Kバイト〜1.5Mバイトの情報量を有する再編リクエストデータ又は再編レスポンスデータを生成する、請求項9から請求項16のいずれかに記載のデータ通信システム。
  18. 上記仮想サーバ及び上記仮想クライアントは、上記クライアント又は上記サーバを格納したクライアント機又はサーバ機に、それぞれのオペレーティングシステム上で作動するアプリケーションソフトウエアとして設けられる、請求項9から請求項17のいずれかに記載のデータ通信システム。
  19. 通信回線を介して接続される2以上のコンピュータにそれぞれ格納されたアプリケーションソフトウエア間でデータを送受信するデータ通信システムにおいて、上記各コンピュータに格納されてそれぞれのオペレーティングシステムで作動させられるとともに、上記アプリケーションソフトウエア間のデータ通信を媒介する通信代理ソフトウエアプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    送信側のアプリケーションソフトウエアないしオペレーティングシステムで生成されたデータパケットを上記オペレーティングシステムから疑似受信するとともに、上記データパケットに応じて疑似受信応答を発行する疑似受信手段と、
    所定情報量の上記データパケットを蓄積できるバッファ手段と、
    蓄積した上記データパケットを一体化するとともに、情報形態及び/又は通信環境に最適な再編データを生成する再編データ生成手段と、
    上記再編データを上記オペレーティングシステム及び上記通信回線を介して受信側コンピュータに向けて送信する再編データ送信手段と、
    他のコンピュータにおける上記各手段によって生成された再編データを、上記通信回線及び上記オペレーティングシステムを介して受信する再編データ受信手段と、
    受信した上記再編データから、上記他のコンピュータにおいて生成されたデータパケットを再生するデータパケット再生手段と、
    再生した上記データパケットを上記オペレーティングシステムを介して上記アプリケーションソフトウエアに転送するデータパケット転送手段とを含む、通信代理ソフトウエアプログラムを記録してあることを特徴とする、コンピュータ読み取り可能な記録媒体。
  20. 上記再編データ生成手段は、
    一体化された上記データパケットに、送信側と受信側の上記通信代理ソフトウエア間で適用される独自プロトコル処理を行う独自プロトコル処理手段と、
    上記独自プロトコル処理されたデータを圧縮するデータ圧縮手段とを含む通信代理ソフトウエアプログラムを記録してあることを特徴とする、請求項19に記載のコンピュータ読み取り可能な記録媒体。
  21. 各オペレーティングシステムにおいて、通信に最適なパケットサイズないし受信窓サイズの送信データが生成されるように、上記各バッファ手段におけるデータ蓄積量及び/又は上記各圧縮手段における圧縮率を調節するデータ最適化手段を含む送信代理ソフトウエアプログラムを記録してあることを特徴とする、請求項19又は請求項20のいずれかに記載のコンピュータ読み取り可能な記録媒体。
  22. 上記再編データ生成手段は、データの形態を変更するデータ加工手段を含む送信代理ソフトウエアプログラムを記録してあることを特徴とする、請求項19から請求項21のいずれかに記載のコンピュータ読み取り可能な記録媒体。
  23. 上記バッファ手段は、
    蓄積される上記データパケットの情報量を計数する計数手段と、
    蓄積される上記データパケットの内容を解析する情報解析手段と、
    上記計数手段によって計数された蓄積情報量及び/又は上記解析手段によって解析された情報内容によって、それまでに蓄積した上記データパケットを、上記再編データ生成手段に引き渡すバッファ解除手段とを含む送信代理ソフトウエアプログラムを記録してあることを特徴とする、請求項19から請求項22のいずれかに記載のコンピュータ読み取り可能な記録媒体。
  24. 上記データ最適化手段は、上記通信回線におけるデータ通信速度及び/又は通信データ形態を検出する通信状態検出手段を含み、
    上記通信状態検出手段によって検出された上記データ通信速度及び/又は上記通信データ形態に基づいて、上記バッファ手段におけるデータ蓄積量及び/又は再編データ送信手段におけるデータ圧縮率を最適化して再編データを生成する送信代理ソフトウエアプログラムを記録してあることを特徴とする、請求項19から請求項23のいずれかに記載のコンピュータ読み取り可能な記録媒体。
JP2003434590A 2003-12-26 2003-12-26 データ通信方法及びデータ通信システム Expired - Fee Related JP4564746B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003434590A JP4564746B2 (ja) 2003-12-26 2003-12-26 データ通信方法及びデータ通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003434590A JP4564746B2 (ja) 2003-12-26 2003-12-26 データ通信方法及びデータ通信システム

Publications (2)

Publication Number Publication Date
JP2005192157A JP2005192157A (ja) 2005-07-14
JP4564746B2 true JP4564746B2 (ja) 2010-10-20

Family

ID=34791611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003434590A Expired - Fee Related JP4564746B2 (ja) 2003-12-26 2003-12-26 データ通信方法及びデータ通信システム

Country Status (1)

Country Link
JP (1) JP4564746B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7719482B2 (en) * 2004-11-03 2010-05-18 Sony Corporation Method and system for processing wireless digital multimedia
CA2579955C (en) * 2004-11-03 2013-09-03 Sony Electronics Inc. Method and system for wireless transmission
JP4700473B2 (ja) * 2005-11-04 2011-06-15 株式会社 デジタルデザイン データ通信方法
US9635028B2 (en) * 2011-08-31 2017-04-25 Facebook, Inc. Proxy authentication

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001061068A (ja) * 1999-08-23 2001-03-06 Sharp Corp 画像読取通信装置および画像読取通信方法
JP2001359073A (ja) * 2000-06-15 2001-12-26 Nec Corp 動画配信サービスシステム
JP2003092755A (ja) * 2001-09-18 2003-03-28 Kddi Corp 動画像データを転送する通信システム及びプログラム
JP2003140846A (ja) * 2001-11-06 2003-05-16 Canon Inc ネットワークプリントシステム及びデータ入力装置とその制御方法
JP2003228550A (ja) * 2002-02-05 2003-08-15 Nippon Telegr & Teleph Corp <Ntt> 違法コンテンツの配信制限方法およびエッジルータ

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07250100A (ja) * 1994-03-09 1995-09-26 Kokusai Denshin Denwa Co Ltd <Kdd> 広域網を用いたlan間の相互通信方式及びこれに用いる相互接続装置
JP2800886B2 (ja) * 1996-03-13 1998-09-21 日本電気株式会社 Lan制御方式
JPH10336192A (ja) * 1997-05-29 1998-12-18 Nec Field Service Ltd Lan機密保護装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001061068A (ja) * 1999-08-23 2001-03-06 Sharp Corp 画像読取通信装置および画像読取通信方法
JP2001359073A (ja) * 2000-06-15 2001-12-26 Nec Corp 動画配信サービスシステム
JP2003092755A (ja) * 2001-09-18 2003-03-28 Kddi Corp 動画像データを転送する通信システム及びプログラム
JP2003140846A (ja) * 2001-11-06 2003-05-16 Canon Inc ネットワークプリントシステム及びデータ入力装置とその制御方法
JP2003228550A (ja) * 2002-02-05 2003-08-15 Nippon Telegr & Teleph Corp <Ntt> 違法コンテンツの配信制限方法およびエッジルータ

Also Published As

Publication number Publication date
JP2005192157A (ja) 2005-07-14

Similar Documents

Publication Publication Date Title
CA2353348C (en) Network management of a performance enhancing proxy architecture
Dunigan et al. A TCP tuning daemon
KR100289520B1 (ko) 웹브라우저애플리케이션의성능향상방법및장치,클라이언트/서버시스템의성능향상방법및장치
Touch et al. Analysis of HTTP performance
US6321269B1 (en) Optimized performance for transaction-oriented communications using stream-based network protocols
JP2004356922A (ja) コンテンツ配信サーバ、及び端末装置
US20040103215A1 (en) Selective compression of web-based data transmissions
WO2008049434A1 (en) Method and system for firewall friendly mobile real-time communication
US8424024B2 (en) Application-specific serial port redirector
US7991905B1 (en) Adaptively selecting timeouts for streaming media
GB2394382A (en) Monitoring the propagation of viruses through an Information Technology network
CA2368513C (en) Performance enhancing proxy and method for enhancing performance
JP4958951B2 (ja) コンテンツ収集
US8490173B2 (en) Unauthorized communication detection method
JP2006270303A (ja) 通信制御方法、通信制御装置および通信制御プログラムを記録した記憶媒体
US20120151087A1 (en) System and method for providing a network proxy data tunnel
US11956300B2 (en) Message switching
JP4564746B2 (ja) データ通信方法及びデータ通信システム
EP2400389B1 (en) A method, a system, a server, a device, a computer program and a computer program product for transmitting data in a computer network
US8578040B2 (en) Method, system and article for client application control of network transmission loss tolerance
EP1569408B1 (en) Communication-processing apparatus and its method
CN106789878A (zh) 一种面向大流量环境的文件还原系统以及方法
Liu Characterizing web response time
CN106506572A (zh) 路由器及路由器推送本地信息的方法
EP1716670B1 (fr) Passerelle et systeme de transmission de donnees pour reseau de diagnostic de vehicule automobile

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20061222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090924

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100215

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100512

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: 20100706

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100802

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

Free format text: PAYMENT UNTIL: 20130806

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4564746

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees