JP2003110604A - クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法 - Google Patents

クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法

Info

Publication number
JP2003110604A
JP2003110604A JP2001306321A JP2001306321A JP2003110604A JP 2003110604 A JP2003110604 A JP 2003110604A JP 2001306321 A JP2001306321 A JP 2001306321A JP 2001306321 A JP2001306321 A JP 2001306321A JP 2003110604 A JP2003110604 A JP 2003110604A
Authority
JP
Japan
Prior art keywords
client
connection
server
data
server system
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.)
Granted
Application number
JP2001306321A
Other languages
English (en)
Other versions
JP3785343B2 (ja
Inventor
Tetsuya Onoda
哲也 小野田
Tetsuo Fujii
哲郎 藤井
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2001306321A priority Critical patent/JP3785343B2/ja
Publication of JP2003110604A publication Critical patent/JP2003110604A/ja
Application granted granted Critical
Publication of JP3785343B2 publication Critical patent/JP3785343B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】 高速アクセスリンクを持つクライアントサー
バシステムのスループットを向上させ、またネットワー
クの混雑時や障害時のスループット低下を改善するクラ
イアントサーバシステムを提供する。 【解決手段】 サーバ12・クライアント11間に複数
の異なる経路のコネクション18を確立し、該コネクシ
ョン18上でデータ通信を行う。また、サーバ12・ク
ライアント11間のデータ通信では、コネクション18
毎にプロキシ17によりサーバ12・クライアント11
間のデータ転送を中継する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、クライアントサー
バシステムに関するものである。
【0002】
【従来の技術】インターネットに代表されるTCP/I
Pプロトコルスイートを用いたネットワーク上のクライ
アントサーバシステムでは、サーバのアドレス、ポート
番号とクライアントのアドレス、ポート番号との間でコ
ネクションの確立が行われた後、これらの間のデータの
やりとりはIPデータグラムというパケットに分割され
て、インターネット上を転送させる。インターネットで
はルータがIPデータグラムに付与された宛先IPアド
レスを確認し、それぞれルータが持つ経路テーブルに基
づいてパケットが転送され、サーバ、クライアント間の
データのやりとりが行われる。現状、ルータは経路テー
ブルをOSPF(Open Shortest Pat
h Fast)等のルーティングプロトコルを用いてメ
ンテナンスしている。OSPFなどのルーティングプロ
トコルでは自分に隣接するルータまでのコスト(通常は
インタフェイス速度の逆数)をLSA(Link St
ate Advertisement)として自分に隣
接するルータに広告通知する。この広告通知されたLS
Aにより各ルータは経路テーブルを構築する。この経路
テーブルを用いることで宛先IPアドレスに対し、最小
コストの経路が選択され、ルータから転送される。した
がって障害などによる経路情報の変化がなければ、任意
のIPアドレス間のデータ転送経路は一意に定まり、常
にこの経路をパケットが通過することになる。
【0003】従来のクライアントサーバシステムにおけ
るファイルデータ転送について、以下に説明する。ま
ず、従来のルータ装置の構成について図6を参照して説
明する。
【0004】図6は、従来のクライアントサーバシステ
ムにおけるファイルデータ転送の例を示す図である。符
号1はクライアント、2はサーバ、3はルータ、4はア
クセスリンク、5はネームサーバ、6はインタネット上
のリンクである。
【0005】例として、クライアント1がftp(Fi
le Transfer Protcol)を用いてサ
ーバ2からファイルを転送する場合を取り上げる。クラ
イアント1は、まず、frpのためのTCPコネクショ
ンをサーバ2との間で確立する。次に、クライアント1
は、ネームサーバ5へサーバ2のアドレスを問い合わせ
る。そして、ネームサーバ5より回答されたサーバ2の
IPアドレスに対し、クライアント1はftpのための
TCPのコネクションを確立し、ftpのコマンド等を
サーバ2との間でやりとりする。確立されたTCPコネ
クション上のデータは、IPデータグラム(パケット)
に(必要があれば分割されて)格納され、アクセスリン
ク4,ルータ3,ルータ間を結ぶリンク6を介してクラ
イアントサーバ間をやりとりされる。この時、サーバ、
クライアント間のパケットが流れる経路は各ルータによ
って選択されるがOSPFなどのルーティングプロトコ
ルは最小コスト経路を常に選択するため、障害などでリ
ンクが不通となっている場合などを除いて常に同一経路
が選択されて転送される。
【0006】
【発明が解決しようとする課題】上記のように従来のク
ライアントサーバシステムでは、データのやりとりにイ
ンターネット上の一つの経路が利用される。画像などの
マルチメディアアプリケーションや大きなファイルの転
送のように高速でのデータのやり取りが必要なユーザは
ADSLやケーブルモデム、FTTHといった高速のア
クセスリンクを契約し、クライアントサーバ間で高速デ
ータ転送を試みる。しかし、アクセスリンクが高速であ
ってもインターネット上の経路は一定であり、他のパケ
ットとそれぞれのリンクでの使用可能帯域をシェアする
ことになる。このため、サーバ・クライアント間のスル
ープットは経路上のリンクの最小帯域に制限される。ま
た、経路上の何れかのリンクが混雑していれば、他のリ
ンクが空いていたとしても迂回することができず、他の
パケットと同様にスループットの低下を招いてしまう。
このように従来のクライアントサーバシステムではサー
バ・クライアント間に最小コスト経路が設定されてしま
うため、アクセスリンクに高速リンクを用意したとして
もサーバクライアント間に高スループットを期待するこ
とができず、また混雑時の迂回や障害を避けるために最
小コスト以外の経路による冗長な転送が不可能であっ
た。
【0007】本発明は、上記事情に鑑みてなされたもの
であり、その目的とするところは、高速アクセスリンク
を持つクライアントサーバシステムのスループットを向
上させ、またネットワークの混雑時や障害時のスループ
ット低下を改善するクライアントサーバシステムを提供
することを目的とする。
【0008】
【課題を解決するための手段】上記目的を達成するため
に、本発明では、サーバ・クライアント間に複数の異な
る経路のコネクションを確立し、該コネクション上でデ
ータ通信を行うものを提案する。また、サーバ・クライ
アント間のデータ通信は、両者間で直接データをやり取
りするのではなく、コネクション毎にプロキシによりサ
ーバ・クライアント間のデータ転送を中継する方法を提
案する。本発明によれば、一つのアプリケーションに対
し、複数のコネクションを同時に利用し、更にそれぞれ
の経路を変更することでサーバ・クライアント間のスル
ープット向上を図り、混雑や障害によるスループット低
下を改善する。
【0009】さらに、本発明では、中継するプロキシを
一段ではなく、多段接続するものを提案する。これは、
一端経路が分散された複数のコネクションが同一リンク
上を通過することを防ぐことを目的としており、経路分
散を確実にすることでスループット向上を図る。
【0010】さらに、本発明では、ネームサーバの変わ
りに負荷分散装置を用いて各コネクションを中継するプ
ロキシを選択するものを提案する。ネームサーバに特定
サーバのアドレスとして複数のプロキシのアドレスを登
録しておくのではなく、通常どおりのサーバのアドレス
を格納しておく。サーバ・クライアント間の経路上、例
えばクライアントの隣接する位置に負荷分散装置を設置
し、同一のサーバへの複数コネクション(クライアント
のポート番号が異なるため識別可能)によるアクセスを
それぞれ異なるプロキシへ振ることにより経路を分散さ
せる。
【0011】さらに、本発明では、サーバ・クライアン
ト間の経路分散化されたコネクションをデータ転送に信
頼性向上の目的で、データを誤り訂正符号化する方法を
提案する。サーバ側で誤り訂正符号化し、クライアント
側で復号化することにより、一部の経路上に障害が生じ
た場合でも、もとのデータを復元することができる。
【0012】
【発明の実施の形態】(第1の実施の形態)本発明の第
1の実施形態にかかるクライアントサーバシステムにつ
いて図面を参照して詳細に説明する。
【0013】図1は本発明の実施形態にかかるネットワ
ークの構成図である。図中、10はネットワーク、11
はクライアント、12はサーバ、13はルータ、14は
アクセスリンク、15はネームサーバ、16はネットワ
ーク上のリンク、17はプロキシ、18はコネクション
である。ここで、ネットワーク10としては、例えばイ
ンターネットなどのTCP/IPプロトコルスイートを
用いたネットワークを用いた。また、アクセスリンク1
4、リンク16はコネクション18の下位の層である。
本実施の形態ではネットワーク10としてTCP/IP
を用いてるので、IP層以下に相当するものでありOS
I参照モデルのネットワーク層以下にほぼ相当する。ま
た、本実施の形態では、コネクション18はTCP/U
DP層でありOSI参照モデルのトランスポート層にほ
ぼ相当する。
【0014】本実施の形態ではサーバからクライアント
へのファイル転送を例として説明する。また、ここで
は、並列経路を使ってファイルを転送するアプリケーシ
ョンを想定し、このアプリケーションのためのサーバ側
のポート番号xがクライアント側で既知であるとする。
【0015】クライアント11は、ftpと同様にサー
バ12のポート番号xへのコネクション18を確立する
ため、ネームサーバ15へサーバ12のIPアドレスを
問い合わせる。この時、ネームサーバ15には、実際の
サーバ12のIPアドレスではなく、サーバ・クライア
ント間のデータ転送を中継するプロキシ17のアドレス
が格納されており、ネームサーバ15はこれをサーバ1
2のIPアドレスへの問い合わせに対する回答として答
える。クライアント11は、サーバのポート番号xに対
して複数のTCPコネクション18を確立しようとし、
そのたびにネームサーバ15へIPアドレスを問い合わ
せる。
【0016】ネームサーバ15は複数登録されているプ
ロキシ17のアドレスを例えばラウンドロビンなどのル
ールで順次クライアント11へ回答する。具体的にはネ
ームサーバ15にはサーバ12のアドレス(例えばsss.
sss.sss.sss)の代わりに、以下のようにプロキシサー
バのIPアドレスがAレコードとして加えられている。
servername A xxx.xxx.xxx.xxx(第1のプロキシのI
Pアドレス) servername A yyy.yyy.yyy.yyy(第2のプロキシのIP
アドレス) servername A zzz.zzz.zzz.zzz(第3のプロキシのIP
アドレス) これにより、ネームサーバ15はクライアント11から
のIPアドレスの問い合わせに対して、サーバ12のI
Pアドレスではなく、プロキシ15のIPアドレスを問
い合わせ順にラウンドロビンで回答する。
【0017】ネームサーバ15からIPアドレスの返答
を受けたクライアント11はサーバへ12のTCPコネ
クション18の確立要求”SYN(Synchroni
zeの意)”をコネクション18ごとに異なるプロキシ
17のポート番号xへ送信する。
【0018】各プロキシ17は、ポート番号xへのアク
セスを並列転送であると認識し、サーバ12のIPアド
レス、ポート番号xへ中継する。すなわち、プロキシ1
7には、クライアント11からのアクセスをサーバ12
へ中継するために予めTCPデリゲイトが設定されてい
る。例えば、「delegated」というプロキシプ
ログラムを用いる場合、 delegated -P5000 SERVER=tcprelay://sss.sss.sss.ss
s:6000 という設定がなされている。ここで、sss.sss.sss.sss
はサーバ12のIPアドレス、6000はサーバ12におけ
る並列転送のためのポート番号であるとする。また、50
00はプロキシ17のポート番号xで、クライアント11
から5000番のTCPポートにアクセスされた場合、クラ
イアント11からのアクセスをサーバ12に中継すると
いう意味である。プロキシ17は、クライアント11か
らアクセスされたポート番号によって中継する先のサー
バ12を識別することができる。
【0019】なお、クライアント11とサーバ12間の
コネクション18においてプロキシ17による中継点は
2以上あってもよい。すなわち、図1に示すように、一
部のプロキシ17のポート番号xへのアクセスをサーバ
12へ中継するのではなく、多段接続のため、他のプロ
キシ17へ中継してもよい。この場合には、多段接続の
最終プロキシ17が最終的にサーバ12のIPアドレ
ス、ポート番号xへコネクション確立要求を転送する。
【0020】プロキシ17を介してクライアント11か
ら複数のコネクション確立要求”SYN”を受けたサー
バ12は、ポートxへのアクセスに対して、これらを並
列転送のアプリケーションと認識してそれぞれTCPコ
ネクション18を確立する。これらは並列転送のための
コネクション18であるため、同時に複数のTCPコネ
クション18の利用を想定して、同一ポートxに対する
複数のコネクション要求を受け付ける。プロキシ17を
経由しているため、この時バインドされるクライアント
側のアドレスはプロキシ17のIPアドレスとなる(プ
ロキシ17が多段接続されている場合は最終段のプロキ
シ17のIPアドレス)。TCPコネクション18の確
立要求に対して、サーバ12は、”ACK(Ackno
wledgeの意)”と同時にサーバ12からクライア
ント11側への逆方向のTCPコネクション要求”SY
N”を送信する。サーバ12からそれぞれのプロキシ1
7に対して送信されたACK、SYNはクライアント1
1からサーバ12への転送中継経路の逆を辿ってクライ
アント11へ到着する。
【0021】プロキシ17を介してサーバ12からのA
CK、SYNを受け取ったクライアント11は、ACK
によりプロキシ17への送信TCPコネクション18が
確立されたことを知り、またSYNにより、サーバ12
からクライアント11への逆方向へのTCPコネクショ
ン18の確立要求に対してACKを返す。これにより、
サーバ12・クライアント11間にプロキシ17を介し
た複数の双方向TCPコネクション18が確立されたこ
とにある。以上、TCPサーバ・クライアント間のコネ
クション確立にかかるハンドシェイク図を図2に示す。
また、図3に本発明による並列転送のプロトコルスタッ
クを示す。図3に示すように、ユーザプログラムがTC
Pコネクション18を利用する際のインタフェースを”
ソケット”と呼ぶ。
【0022】コネクション18が確立された後、クライ
アント11は確立されたTCPコネクション18の何れ
かを用いてアクセスするファイル名をサーバ12に送信
する。ファイル名の転送は、クライアント11側ではT
CPソケットへのライトであり、サーバ12側ではTC
Pソケットからのリードである。クライアント11は、
コネクション18が確立された後、ライト可能な、即ち
ソケットバッファに空きが存在するTCPソケットの何
れかを選択し、ファイル名をライトする。サーバ12側
では、リード可能な、即ちソケットバッファが空き状態
ではないTCPソケットを選択し、リードする。クライ
アント11側、サーバ12側のプログラムはそれぞれT
CPソケットの状態(バッファの空きの有無など)をポ
ーリングしており、ライト可能、リード可能なTCPソ
ケットを選択するようにする。TCPコネクション18
によるデータの転送中、これを中継するプロキシ17で
は転送にかかるIPパケットの送り元アドレスをプロキ
シ17自身へ、宛先アドレスをプロキシ17自身のアド
レスから中継経路上の次のアドレス(サーバ12、クラ
イアント11、あるいは次の中継プロキシ17のアドレ
ス)へ変更する。
【0023】TCPコネクション18の何れかによりフ
ァイル名を受信したサーバ12は、自身に格納するファ
イルにアクセスし、ファイルデータをTCPコネクショ
ン18を通じてクライアント11へ送信する。サーバ1
2のプログラム(以下サーバプログラムと言う。)は、
クライアント11側でファイルデータを再構築できるよ
うに、ファイルデータをTCPコネクション18に送信
する際(TCPソケットへライトする際)、データのフ
ァイル上における位置をシーケンス番号としてライトす
る。サーバプログラムは、ライト可能な(すなわち、ソ
ケットバッファに空きがある)TCPソケットをポーリ
ングにより識別し、順にファイルデータをシーケンス番
号を付与しながらライトしていく。プロキシ17により
中継されたファイルデータがクライアント11側のTC
Pソケットに到着するとソケットバッファのデータ量が
空き状態から変化する。クライアント11側のプログラ
ムはポーリングにより、ソケットバッファへのデータの
到着を認識し、空きでないソケットバッファから順次フ
ァイルデータを読み出す。データにはシーケンス番号が
付与されているため、複数のTCPコネクション18に
よる並列転送でファイルデータの到着順序が入れ替わっ
た場合でも、クライアント11側のプログラムはファイ
ルデータの再構築ができる。
【0024】本実施形態ではサーバ12・クライアント
11間のコネクション18にTCPを用いているため、
ネットワーク上でIPデータグラムのパケットロスやエ
ラーが発生した場合、再送要求・再送を行い、確実にデ
ータを転送する。転送の発生や、輻輳による遅延などに
より、TCPのスループットは、経路により異なる。サ
ーバ側のプログラムはバッファに空きが発生したTCP
ソケットをポーリングにより検知し、順次ファイルデー
タをライトする。パケットの到着を確認するACKがク
ライアントから返されなければ、再送の可能性があるた
めバッファはデータを捨てることができず、バッファは
空き状態とならない。すなわち、ライト可能なTCPソ
ケットを順次利用することでそれぞれTCPコネクショ
ン18のスループットに応じてサーバプログラムはファ
イルデータの転送量を変化させることができる。クライ
アント11側では各TCPコネクション18毎のスルー
プットを観測できる。そこで、各TCPコネクション1
8のスループットを観測し、更にその合計値が要求条件
(動画像ファイルをダウンロードしながら再生する疑似
ストリーミングの再生速度等)を満たさない場合、クラ
イアント11側からの上述の手順により更にTCPコネ
クション18の確立要求をサーバ12側に送信し、あら
たにコネクション18を追加することにより、全体のス
ループットを改善するという方法も取りうる。
【0025】サーバプログラムは全てのファイルデータ
の転送が終了した後、ライト可能となったTCPソケッ
トに対し、EOF(End of File)を転送す
る。クライアント11側でEOFを受信したTCPソケ
ットはファイルデータの終了と認識し、TCPコネクシ
ョン18をクローズする。全てのコネクション18がク
ローズされた場合、ファイルデータは全て受信されたこ
ととなり、クライアント11側のファイル転送プログラ
ムは終了する。
【0026】次に、クライアント・サーバ間の通信デー
タを複数のコネクション18に分散して送受信する際
の、元の通信データと各コネクション18を通るデータ
との関係について説明する。
【0027】本実施の形態では、データを誤り訂正符号
化により冗長な情報に符号化し、これを複数の経路に分
散して転送することにより、経路上のパケットロスやエ
ラーが存在しても、もとのデータを復元できるというも
のである。例えばサーバ12では誤り訂正符号としてリ
ードソロモン符号を用いて各々のファイルデータのバイ
ト列情報を符号化し、データDとチェックサムCを生成
する(チェックサムはVandermonde行列Fに
より算出するものとする)。このとき、上述の例とは異
なり、ソケットにTCPではなくUDPを使用すること
も考えられる。UDPはTCPと違い、再送メカニズム
を持たず、信頼性のある転送を行うことができないが、
フローコントロール等の複雑な転送メカニズムを持たな
いため、簡便で高速な転送が可能である(フローコント
ロールを行わないため、それぞれのコネクション18の
転送速度については上限を設けるなどして他のTCPフ
ローへの影響を考慮する必要がある)。クライアント1
1では各コネクション18から得られた情報をもとに復
号化を行い、もとの情報を復号する。復号化に使う行列
はサーバ12側と同様にVandermonde行列で
ある。
【0028】符号化・復号化の例を以下に示す。ここで
はデータ(バイト列)を表現する行列をD、チェックサ
ムを表現する行列をCとして表現する(例では3バイト
の情報{d1,d2,d3}=D、これに対するチェッ
クサム{c1,c2,c3}=Cとして表現する。した
がって転送経路は{d1,d2,d3,c1,c2,c
3}を転送するための6経路とする。Vandermo
nde行列をF、対角行列をIと表現する。符号化・復
号化は、それぞれ以下のように表される。この時、Fの
各要素はガロア体の乗算で求められる。
【0029】
【数1】
【0030】Dを3行の行列とすると、
【0031】
【数2】
【0032】である。
【0033】いま例として、d1=3、d2=1、d3
=9というデータ列を考える(図4参照)。上の式でチ
ェックサムを計算すると、c1=11,c2=9,c3
=12となる。すなわち、
【0034】
【数3】
【0035】これら合計6つのデータを別々の経路を通
じてクライアント11に送信する。送信途中で仮に3つ
の経路に障害があり、d2,d3,c3のデータが失わ
れたと仮定する。しかし、クライアント11側では正常
に受信され他3つデータからこれらを復元することがで
きる。具体的には、復号化では届かなかったd2,d
3,c3に対応する行を上の式から消去すればよく、
【0036】
【数4】
【0037】となる。これからガウスの消去法で逆行列
を計算すると、
【0038】
【数5】
【0039】となり、もとのデータd1=3,d2=
1,d3=9をクライアント12側で復元することがで
きるというものである。これにより、例え信頼性の低い
UDPコネクションを用いたとしても、誤り訂正符号を
用いて経路を分散して送信することで、信頼性を向上さ
せることができる。
【0040】(第2の実施の形態)本発明の第2の実施
形態にかかるクライアントサーバシステムについて図5
を参照して詳細に説明する。図5は第2の実施の形態に
かかるクライアントサーバシステムの全体構成図であ
る。なお、図中、第1の実施の形態と同様の構成には同
一の符号を付した。
【0041】本実施の形態にかかるクライアントサーバ
システムが第1の実施の形態と異なる点は、プロキシ1
7のアドレスを取得するために、ネームサーバの代わり
に負荷分散装置21を用いる点にある。ネームサーバ2
5は通常どおり、サーバ12の実際のアドレスをクライ
アント11に回答する。クライアント11からの複数の
TCPコネクション確立要求は全てサーバ12のアドレ
スに向けて送信されるが、この経路上(例えば図5のよ
うにクライアント11に隣接の位置)に存在する負荷分
散装置21がサーバ12のIPアドレス毎に複数のプロ
キシ17のIPアドレスを登録しておき、サーバ12の
IPアドレス、ポート番号x向けのTCPコネクション
要求を複数の異なるプロキシ17へ経路を分散し、送信
する。これにより、ネームサーバ25にプロキシのアド
レスを登録することなく、同一サーバ12へのTCPコ
ネクション18の経路を分散させることができる。その
他の構成・方法については第1の実施の形態と同様であ
る。
【0042】以上本発明の実施形態について説明したが
本発明はこれに限定されるものではない。本発明の範囲
は特許請求の範囲によって示されており、全ての変形例
は本発明に含まれるものである。
【0043】例えば、上記各実施の形態では、クライア
ント・サーバ間の全てのコネクションがプロキシを介し
て形成されているが、コネクションが異なる経路で複数
経路で形成できれば、プロキシを介さないコネクション
を含んでいてもよい。この場合、プロキシを介さないコ
ネクションについては、従来のルーティングルールによ
り形成すればよい。
【0044】また、上記第2の実施の形態では、負荷分
散装置をクライアントの近傍に設けたが他の場所であっ
てもよい。
【0045】さらに、上記各実施の形態では、ネットワ
ーク10としてインターネットを例示したが他のネット
ワークでもあってもよい。また、データ通信に用いるプ
ロトコルもTCP/IP以外のプロトコルであってもよ
い。
【0046】
【発明の効果】以上のように本発明では、サーバ・クラ
イアント間のデータ転送を異なる経路を持つ複数のコネ
クションにより実現する。このため、1)高速アクセス
リンクを用意した場合でもデータ転送経路が1つである
ためアクセスリンク速度に見合った高スループットが得
られない、2)経路上の一部のリンクが輻輳や障害があ
った場合に直接その影響を受ける、といった問題点を改
善することができる。また、経路を分散させることによ
り、個別のコネクションが低スループットであっても全
体で高スループットを実現でき、更に誤り訂正符号を用
いるなど冗長な情報を経路を分散させて転送させること
で、従来の1ルートのみによる転送に比べて信頼性を向
上させることができる。
【図面の簡単な説明】
【図1】第1の実施形態にかかるクライアントサーバシ
ステムの構成図
【図2】サーバ・クライアント間のコネクション確立に
かかるハンドシェイク図
【図3】並列転送のプロトコルスタックを説明する図
【図4】複数の経路における障害が発生した場合の処理
を説明する図
【図5】第2の実施形態にかかるクライアントサーバシ
ステムの構成図
【図6】従来のネットワークにおける通信経路を説明す
る図
【符号の説明】
10…ネットワーク、11…クライアント、12…サー
バ、13…ルータ、14…アクセスリンク、15、25
…ネームサーバ、16…リンク、17…プロキシ、18
…コネクション、21…負荷分散装置
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B089 GA11 GA19 GA21 GB09 HB02 JA32 KA07 KA12 KG04 MA07 5K030 GA03 HA08 JT03 JT06 LC08 LC11 LE03 MB03 5K034 AA01 AA03 EE07 EE10 FF02 HH01 HH02 HH12 HH18 LL01 MM25

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 ネットワーク上にクライアント・サーバ
    間のコネクションを確立し、このコネクションを用いて
    クライアント・サーバ間でデータ通信を行うクライアン
    トサーバシステムにおいて、 ネットワーク上に互いに異なる経路を有する複数のコネ
    クションを確立する手段と、 送信データを前記複数のコネクションに分散させて送信
    するとともに複数のコネクションを介して受信した分散
    データから元のデータを復元する分散化手段とを備え
    た、 ことを特徴とするクライアントサーバシステム。
  2. 【請求項2】 前記コネクション確立手段は、前記複数
    のコネクションのうち少なくとも1つ以上のコネクショ
    ンをプロキシを介して確立することを特徴とする請求項
    1記載のクライアントサーバシステム。
  3. 【請求項3】 コネクション確立手段に対してプロキシ
    のアドレスを提供する手段を備えたことを特徴とする請
    求項2記載のクライアントサーバシステム。
  4. 【請求項4】 前記コネクション確立手段により確立さ
    れた複数のコネクションのうち少なくとも1つ以上のコ
    ネクションは複数のプロキシを介することを特徴とする
    請求項2又は3何れか1項記載のクライアントサーバシ
    ステム。
  5. 【請求項5】 各コネクションのスループットを観測す
    る手段を備えるとともに、前記コネクション確立手段は
    前記スループット観測手段で観測された各スループット
    の合計が所定の要求条件を満たさない場合に新たなコネ
    クションを追加することを特徴とする請求項1乃至4何
    れか1項記載のクライアントサーバシステム。
  6. 【請求項6】 前記分散化手段は、データを誤り訂正符
    号化する手段と、誤り訂正符号化されたデータを復号化
    する手段とを備え、送信データを符号化手段で誤り訂正
    符号化し、この誤り訂正符号化された送信データを複数
    のコネクションに分散して送信するとともに、復元され
    たデータを復号化手段で復号化することを特徴とする請
    求項1乃至5何れか1項記載のクライアントサーバシス
    テム。
  7. 【請求項7】 前記ネットワークはTCP/IPプロト
    コルスイートを用いており、前記コネクションはTCP
    層に形成されていることを特徴とする請求項1乃至6何
    れか1項記載のクライアントサーバシステム。
  8. 【請求項8】 ネットワーク上にクライアント・サーバ
    間のコネクションを確立し、このコネクションを用いて
    クライアント・サーバ間でデータ通信を行うクライアン
    トサーバシステムにおいて、 データ通信に先立ちネットワーク上に互いに異なる経路
    を有する複数のコネクションを確立し、 データ通信時には、送信データを前記複数のコネクショ
    ンに分散させて送信するとともに複数のコネクションを
    介して受信した分散データから元のデータを復元するこ
    とを特徴とするクライアントサーバシステムにおけるデ
    ータ通信方法。
  9. 【請求項9】 前記コネクションの確立時には、前記複
    数のコネクションのうち少なくとも1つ以上のコネクシ
    ョンをプロキシを介して確立することを特徴とする請求
    項8記載のクライアントサーバシステムにおけるデータ
    通信方法。
  10. 【請求項10】 前記コネクションの確立時には、アド
    レス提供手段からプロキシのアドレスを取得し、取得し
    たアドレスを用いてコネクションを確立することを特徴
    とする請求項9記載のクライアントサーバシステム。
  11. 【請求項11】 前記コネクションの確立時には、少な
    くとも1つ以上のコネクションが複数のプロキシを介す
    るようにコネクションを確立することを特徴とする請求
    項9又は10何れか1項記載のクライアントサーバシス
    テムにおけるデータ通信方法。
  12. 【請求項12】 各コネクションのスループットを観測
    し、スループット観測手段で観測された各スループット
    の合計が所定の要求条件を満たさない場合に新たなコネ
    クションを追加することを特徴とする請求項8乃至11
    何れか1項記載のクライアントサーバシステムにおける
    データ通信方法。
  13. 【請求項13】 送信データを符号化手段で誤り訂正符
    号化し、この誤り訂正符号化された送信データを複数の
    コネクションに分散して送信するとともに、復元された
    データを復号化手段で復号化することを特徴とする請求
    項8乃至12何れか1項記載のクライアントサーバシス
    テムにおけるデータ通信方法。
  14. 【請求項14】 前記ネットワークはTCP/IPプロ
    トコルスイートを用いており、前記コネクションはTC
    P層に形成されていることを特徴とする請求項8乃至1
    3何れか1項記載のクライアントサーバシステム。
JP2001306321A 2001-10-02 2001-10-02 クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法 Expired - Lifetime JP3785343B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001306321A JP3785343B2 (ja) 2001-10-02 2001-10-02 クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001306321A JP3785343B2 (ja) 2001-10-02 2001-10-02 クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法

Publications (2)

Publication Number Publication Date
JP2003110604A true JP2003110604A (ja) 2003-04-11
JP3785343B2 JP3785343B2 (ja) 2006-06-14

Family

ID=19125975

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001306321A Expired - Lifetime JP3785343B2 (ja) 2001-10-02 2001-10-02 クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法

Country Status (1)

Country Link
JP (1) JP3785343B2 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2005039150A1 (ja) * 2003-10-22 2007-02-08 日本電気株式会社 通信装置およびその通信方法ならびにプログラム
JP2008536369A (ja) * 2005-03-18 2008-09-04 リバーベッド テクノロジー インコーポレーティッド 接続転送
JP2009211367A (ja) * 2008-03-04 2009-09-17 Nec Software Kyushu Ltd 通信システム、ゲートウェイ装置、クライアント装置、コンピュータ名変換方法およびプログラム
JP2011139303A (ja) * 2009-12-28 2011-07-14 Nec Corp 通信システム、制御装置、通信制御方法、およびプログラム
US8149704B2 (en) 2004-08-23 2012-04-03 Nec Corporation Communication apparatus and data communication method
US8233483B2 (en) 2007-08-28 2012-07-31 Nec Corporation Communication apparatus, communication system, absent packet detecting method and absent packet detecting program
US8484441B2 (en) 2004-03-31 2013-07-09 Icera Inc. Apparatus and method for separate asymmetric control processing and data path processing in a configurable dual path processor that supports instructions having different bit widths
US8484442B2 (en) 2004-03-31 2013-07-09 Icera Inc. Apparatus and method for control processing in dual path processor
US9009252B2 (en) 2003-08-12 2015-04-14 Riverbed Technology, Inc. Rules-based transactions prefetching using connection end-point proxies
US9292386B2 (en) 2013-04-18 2016-03-22 International Business Machines Corporation Apparatus and method for allocating processing requests
JP2016512904A (ja) * 2013-03-15 2016-05-09 ファースト プリンシプルズ インコーポレイテッド リアルタイムリモートデスクトップ
JP2016523497A (ja) * 2013-06-27 2016-08-08 徐 正 煥SEO, Jeong Hoan インターネットプロトコルを利用したサービスのための多重連結システム及びその方法
US9477475B2 (en) 2004-03-31 2016-10-25 Nvidia Technology Uk Limited Apparatus and method for asymmetric dual path processing

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9009252B2 (en) 2003-08-12 2015-04-14 Riverbed Technology, Inc. Rules-based transactions prefetching using connection end-point proxies
US8228919B2 (en) 2003-10-22 2012-07-24 Nec Corporation Communication device, and communication method and program thereof
JP4656415B2 (ja) * 2003-10-22 2011-03-23 日本電気株式会社 通信装置およびその通信方法ならびにプログラム
JPWO2005039150A1 (ja) * 2003-10-22 2007-02-08 日本電気株式会社 通信装置およびその通信方法ならびにプログラム
US9477475B2 (en) 2004-03-31 2016-10-25 Nvidia Technology Uk Limited Apparatus and method for asymmetric dual path processing
US8484442B2 (en) 2004-03-31 2013-07-09 Icera Inc. Apparatus and method for control processing in dual path processor
US8484441B2 (en) 2004-03-31 2013-07-09 Icera Inc. Apparatus and method for separate asymmetric control processing and data path processing in a configurable dual path processor that supports instructions having different bit widths
US8149704B2 (en) 2004-08-23 2012-04-03 Nec Corporation Communication apparatus and data communication method
US8386637B2 (en) 2005-03-18 2013-02-26 Riverbed Technology, Inc. Connection forwarding
JP4902635B2 (ja) * 2005-03-18 2012-03-21 リバーベッド テクノロジー インコーポレーティッド 接続転送
US8140690B2 (en) 2005-03-18 2012-03-20 Riverbed Technology, Inc. Connection forwarding
JP2008536369A (ja) * 2005-03-18 2008-09-04 リバーベッド テクノロジー インコーポレーティッド 接続転送
US8233483B2 (en) 2007-08-28 2012-07-31 Nec Corporation Communication apparatus, communication system, absent packet detecting method and absent packet detecting program
US9178665B2 (en) 2007-08-28 2015-11-03 Nec Corporation Communication apparatus, communication system, absent packet detecting method and absent packet detecting program
JP2009211367A (ja) * 2008-03-04 2009-09-17 Nec Software Kyushu Ltd 通信システム、ゲートウェイ装置、クライアント装置、コンピュータ名変換方法およびプログラム
JP2011139303A (ja) * 2009-12-28 2011-07-14 Nec Corp 通信システム、制御装置、通信制御方法、およびプログラム
JP2016512904A (ja) * 2013-03-15 2016-05-09 ファースト プリンシプルズ インコーポレイテッド リアルタイムリモートデスクトップ
US9292386B2 (en) 2013-04-18 2016-03-22 International Business Machines Corporation Apparatus and method for allocating processing requests
JP2016523497A (ja) * 2013-06-27 2016-08-08 徐 正 煥SEO, Jeong Hoan インターネットプロトコルを利用したサービスのための多重連結システム及びその方法
US9762546B2 (en) 2013-06-27 2017-09-12 Jeong Hoan Seo Multi-connection system and method for service using internet protocol

Also Published As

Publication number Publication date
JP3785343B2 (ja) 2006-06-14

Similar Documents

Publication Publication Date Title
EP1065844B1 (en) Connection selection method
US6934257B2 (en) Transferring transmission control protocol packets
US7143169B1 (en) Methods and apparatus for directing messages to computer systems based on inserted data
US6853617B2 (en) System and method for TCP connection protection switching
JP4099170B2 (ja) ネットワークにおけるデータ転送を管理するデータ処理システムおよび方法
DK1976202T3 (en) Indretning og fremgangsmåde til transmission af en datastrøm via bundtede netværksadgangsledninger, samt hjælpetransmissions- og modtageindretning og transmissions- og modtage fremgangsmåde derfor
JP3785343B2 (ja) クライアントサーバシステム及びクライアントサーバシステムにおけるデータ通信方法
US20050120140A1 (en) Method of and system for multi-patch communication
JP2001244957A (ja) Tcp終端機能付きipルータ装置および媒体
US20060029000A1 (en) Connection establishment in a proxy server environment
KR19980070104A (ko) 전송 제어 프로토콜 글루를 통한 세션 및 전송 계층 프록시 개선 방법
KR20000005914A (ko) 잉여보이스/미디어프레임의전송에의한인터넷실시간미디어전송의서비스품질개선
CN104539531A (zh) 数据传输方法及装置
Natarajan et al. SCTP: An innovative transport layer protocol for the web
CN109510690B (zh) 传输报文的方法、网络组件和计算机可读存储介质
US11895009B2 (en) Intelligently routing internet traffic
EP2173077A1 (en) Shared content addressing protocol
US6980551B2 (en) Full transmission control protocol off-load
JP2004510394A (ja) 仮想ipフレームワーク及びインターフェイス接続方法
US7668163B2 (en) Transparent network service enhancement
US20060239263A1 (en) Method for the establishing of connections in a communication system
JP2009055418A (ja) 通信システム、中継装置、端末、及び中継処理方法並びにそのプログラム
JP3614006B2 (ja) 非対称経路利用通信システム、および、非対称経路利用通信方法
US8451711B1 (en) Methods and apparatus for redirecting traffic in the presence of network address translation
JP2012099961A (ja) ゲートウェイ装置およびsip応答経路確立方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050524

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050722

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060317

R150 Certificate of patent or registration of utility model

Ref document number: 3785343

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090324

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100324

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120324

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130324

Year of fee payment: 7

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