JP2000101613A - サーバ・システムおよびクライアント・サーバ間の通信方法 - Google Patents

サーバ・システムおよびクライアント・サーバ間の通信方法

Info

Publication number
JP2000101613A
JP2000101613A JP27281998A JP27281998A JP2000101613A JP 2000101613 A JP2000101613 A JP 2000101613A JP 27281998 A JP27281998 A JP 27281998A JP 27281998 A JP27281998 A JP 27281998A JP 2000101613 A JP2000101613 A JP 2000101613A
Authority
JP
Japan
Prior art keywords
packet
server
client
network
bus
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
JP27281998A
Other languages
English (en)
Other versions
JP3490000B2 (ja
Inventor
Shihoko Taguchi
しほ子 田口
Masaaki Iwasaki
正明 岩嵜
Osamu Takeuchi
理 竹内
Takahiro Nakano
隆裕 中野
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP27281998A priority Critical patent/JP3490000B2/ja
Publication of JP2000101613A publication Critical patent/JP2000101613A/ja
Application granted granted Critical
Publication of JP3490000B2 publication Critical patent/JP3490000B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】高スループットネットワークへ対応したクライ
アント・サーバ・システムを実現する。 【解決手段】通信サーバ20は、ネットワーク40を介
してクライアント10より受信したIPパケット、ある
いは当該IPパケットをリアセンブルしたIPパケット
をバッファリングし、バッファリングしたデータを高速
バス50にて送信可能なサイズでカプセル化して、高速
バスパケットとして高速バス50上に送出する。また、
高速バス50を介してアプリケーションサーバ30より
受信した高速バスパケットからIPパケットを取り出
し、ネットワーク40にて送信可能なサイズにフラグメ
ント化して、ネットワーク40上に送出する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、クライアント・サ
ーバ間をネットワークで接続したクライアント・サーバ
・システムに関し、特に、クライアント・サーバ間の通
信技術に関する。
【0002】
【従来の技術】クライアント・サーバ・システムにおい
て、クライアント・サーバ間を繋ぐネットワークとし
て、イーサネットが広く普及している。イーサネットを
用いてデータ転送を行う場合、送信側では、送信データ
をイーサネットの送信規格である64Byte以上、
1.5KByte以下にフラグメント化して送信し、受
信側では、フラグメント化されたデータをリアセンブル
して、元データを取得する。
【0003】すなわち、送信側の装置において、プロト
コル・スタックは、送信を行うアプリケーションからの
システムコールにより、送信データをフラグメント化し
てパケットを作成するとともに、通信経路のルーティン
グなどを行い、作成したパケットを送信バッファにコピ
ーしてシステムコールを終了する。
【0004】ここで、イーサネットデバイスは、1つの
パケット送信が終了するとパケット送信通知割り込みを
発行する。上述したように、プロトコル・スタックは、
送信データを64Byte以上、1.5KByte以下
にフラグメント化して送信する。したがって、送信デー
タが1.5KByteより大きかった場合、およそ、送
信データの長さを1.5KByteで割った数のパケッ
トを作成していることになる。この場合、プロトコル・
スタックは、通常、パケット送信通知割り込みが発生す
る度にプロセスが中断され、該割り込み処理終了後、残
りのパケットを送信する。
【0005】上述した一連の送信処理において、実行中
のプロセスから他のプロセスへと処理を移行するため
に、コンテキスト・スイッチにより、レジスタの待避や
ロード、各種テーブルやリストなどの更新などが行われ
る。1回のシステムコールでは、アプリケーションのプ
ロセスからプロトコル・スタックのプロセスへ、および
プロトコル・スタックのプロセスからアプリケーション
のプロセスへと、2回のコンテキスト・スイッチが行わ
れる。さらに、パケット送信後の送信通知割り込みによ
り、実行中のプロセスから割り込み処理へ移行し、その
後、元のプロセスへ処理を戻すために、2回のコンテキ
スト・スイッチが行われる。なお、割り込み処理中にパ
ケット送信処理を行う場合は、割り込み処理中にプロト
コル・スタックの処理が加わるため、3回のコンテキス
ト・スイッチが行われることになる。
【0006】一方、受信側の装置において、イーサネッ
トデバイスは、受信バッファにパケットが到着する度
に、パケット到着通知割り込みを発行する。これによ
り、実行中のプロセスが中断され、割り込み処理が実行
される。また、プロトコル・スタックは、この割り込み
処理を契機として、到着したパケットをシステムメモリ
にコピーし、リアセンブルするといった受信処理を行
う。受信処理が終了すると、割り込み発生前の処理に戻
る。
【0007】上述した一連の受信処理では、実行中のプ
ロセスから割り込み処理へ、割り込み処理からプロトコ
ル・スタックのプロセスへ、およびプロトコル・スタッ
クのプロセスから割り込み処理前に実行していたプロセ
スへと、3回のコンテキスト・スイッチが行われる。
【0008】
【発明が解決しようとする課題】ところで、近年のネッ
トワーク・スループットの向上により、ネットワーク上
の単位時間あたりのデータ転送量が増加している。一
方、イーサネットでは、規格により、パケットサイズの
最大値が1.5KByte以下に設定されている。この
ため、サーバにおいて、パケット到着の時間間隔が縮小
して単位時間あたりの割り込み発生回数が増加し、これ
により、プロセッサの処理能力が不足するといった問題
が生じてきている。
【0009】たとえば、一般的な汎用プロセッサ(たと
えば、インテル社製のペンティアムプロセッサ)を搭載
したコンピュータにおいて、コンテキスト・スイッチの
実行には約500〜1,500マシンサイクルを要す
る。この時間は、200MHzの動作周波数を持つプロ
セッサを搭載したコンピュータでは、約2.5μsec
〜7.5μsecとなる。したがって、上述したよう
に、1回のパケット到着通知割り込みに対して、3回の
コンテキスト・スイッチが行われるので、パケットが到
着する度に、コンテキスト・スイッチのために約7.5
μsec〜22.5μsecの時間が費やされることに
なる。一方、100Mbpsのイーサネットでサイズ6
4Byte(512bit)のパケットが最大スループ
ットで到着した場合、パケット到着の時間間隔は約5μ
secとなる。この場合、パケット到着による割り込み
処理時間よりもパケット到着の時間間隔が短くなるた
め、プロセッサは、パケット到着通知割り込み発行に追
従して処理を行うことができなくなる。
【0010】また、送信処理においても、同様に、シス
テムコール発行毎、あるいはパケット送信通知割り込み
発行毎に、コンテキスト・スイッチが数回発生するた
め、プロセッサは、システムコール発行あるいはパケッ
ト送信通知割り込み発行に追従して処理を行うことがで
きなくなる。
【0011】さらに、送信処理でのフラグメント化処理
やルーティング処理、あるいは、受信処理でのリアセン
ブル処理などによっても、プロセッサの負荷が増加して
おり、高スループットネットワークへ対応したクライア
ント・サーバ・システムの構築が一層困難となってい
る。
【0012】本発明は、上記事情に基づいてなされたも
のであり、本発明の目的は、高スループットネットワー
クへ対応したクライアント・サーバ・システムを実現す
ることにある。特に、既存のネットワークやソフトウエ
ア資産を活用しつつ、サーバにおいて、ネットワーク通
信処理にかかるオーバヘッドを低減することにある。
【0013】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、クライアントからの要求にしたがい処理
を実行するサーバ・システムであって、ネットワークを
介して少なくとも1つのクライアントに接続された第1
のサーバと、前記ネットワークで送信可能な最大パケッ
トサイズよりも大きなサイズのパケットを送信可能なバ
スを介して前記第1のサーバに接続された、前記第1の
サーバを介して受け取った前記クライアントからの要求
にしたがい処理を実行する第2のサーバと、を有し、前
記第1のサーバは、前記ネットワークを介して前記クラ
イアントより受信したパケットについて、当該パケット
がフラグメント化されている場合はリアセンブルしてか
ら前記バス上に送出し、フラグメント化されていない場
合はそのまま前記バス上に送出するとともに、前記バス
を介して前記第2のサーバより受信したパケットについ
て、前記ネットワークにて送信可能なサイズのパケット
にフラグメント化して、前記ネットワーク上に送出する
パケットサイズ変換手段を備え、前記第2のサーバは、
前記バスを介して前記第1のサーバより受信したパケッ
トを処理して前記クライアントの要求を復元するととも
に、送信すべきデータを前記バスにて送信可能なサイズ
のパケットにパケット化し、前記バス上に送出するパケ
ット化手段を備えることを特徴とする。
【0014】本発明によれば、ネットワークを介してク
ライアントから送られてきたパケットについて、フラグ
メント化されているものは、第1のサーバにおいてリア
センブルされた後、第2のサーバに送信される。したが
って、第2のサーバが受信するパケットの数を、クライ
アントが送信したパケット数より減らすことができるの
で、パケット到着による割り込み発生回数が減少し、ク
ライアントの要求に応じた処理を行う第2のサーバのプ
ロセッサにかかる負荷を低減することができる。
【0015】また、第2のサーバが送信したパケット
は、第1のサーバにおいて、ネットワークで使用するサ
イズのパケット(バスにて送信可能なパケットのサイズ
よりも小さいサイズのパケット)にフラグメント化され
た後、ネットワーク上に送出される。したがって、第2
のサーバが直接ネットワーク上にパケットを送信する場
合に比べて、パケットの送信回数を減らすことができる
ので、パケット送信による割り込み発生回数が減少し、
クライアントの要求に応じた処理を行う第2のサーバの
プロセッサにかかる負荷を低減することができる。
【0016】すなわち、本発明によれば、第2のサーバ
での通信処理の負担を低減することができ、これによ
り、高スループットネットワークへ対応したクライアン
ト・サーバ・システムを実現することができる。
【0017】また、本発明によれば、クライアントで使
用するアプリケーション(クライアント・プログラム)
や第2のサーバで使用するアプリケーション(サーバ・
プログラム)、あるいは、ネットワークなどについて、
従来のものに対して修正を加える必要がない。このた
め、既存のソフトウエア資産や既に構築されてあるネッ
トワークを活用しつつ実現することが可能である。
【0018】なお、本発明において、前記パケットサイ
ズ変換手段は、前記ネットワークを介して前記クライア
ントより受信した1以上のパケットを、当該パケットが
フラグメント化されている場合はリアセンブルしてか
ら、フラグメント化されていない場合はそのまま、前記
バスで送信可能な最大パケットサイズの範囲内で1つの
パケットにカプセル化し、前記バス上に送出するもので
もよい。この場合、前記パケット化手段は、前記バスを
介して受け取った前記カプセル化されたパケットから前
記クライアントよりのパケットおよび/または前記クラ
イアントよりのパケットをリアセンブルすることで得ら
れたパケット各々を取り出し、取り出したパケット各々
について処理することで前記クライアントの要求を復元
するようにする。
【0019】このようにすることで、ネットワークを介
してクライアントから送られてきたパケット、あるいは
当該パケットをリアセンブルすることで得られたパケッ
トは、第1のサーバにおいて、複数まとめて1つのパケ
ットとして前記バス上に送出される。たとえば、ネット
ワークにてイーサネットが用いられている場合、第1の
サーバは、ネットワークを介してクライアントから送ら
れてきたパケットあるいは当該パケットをリアセンブル
することで得られたパケットを、複数まとめて、イーサ
ネットの送信規格で規定されたパケットの最大サイズで
ある1.5KByteよりも大きなサイズの1つのパケ
ットとして、第2のサーバに送信する。
【0020】したがって、第2のサーバが受信するパケ
ットの数を、クライアントが送信したパケット数より更
に減らすことができるので、パケット到着による割り込
み発生回数が減少し、クライアントの要求に応じた処理
を行う第2のサーバのプロセッサにかかる負荷を更に低
減することができる。
【0021】
【発明の実施の形態】以下に、本発明の一実施形態につ
いて説明する。
【0022】図1は、本発明の一実施形態が適用された
クライアント・サーバ・システムの概略図である。
【0023】図示するように、クライアント10は、イ
ーサネットなどのネットワーク40を介して、通信サー
バ20に接続されている。また、通信サーバ20は、高
速バス50を介して、アプリケーションサーバ30と接
続されている。ここで、クライアント10、通信サーバ
20およびアプリケーションサーバ30は、4つの階層
(ftp、HTTPなどのアプリケーション層、TC
P、UDPなどのトランスポート層、IPのインターネ
ット層、イーサネット、トークンリングなどのネットワ
ークインターフェース層)に階層化されたプロトコルの
集まりであるTCP/IP(Transmission Control Prot
ocol/Internet Protocol)にしたがい通信を行う。た
だし、ネットワークインターフェース層については、ネ
ットワーク40で用いるプロトコルで規定されたパケッ
トの最大サイズよりも大きなサイズのパケットを扱うこ
とができ、かつ複数のIPパケットを内部データに含め
ることが可能なプロトコルが、高速バス50にて用いら
れている。本実施形態では、ネットワーク40にイーサ
ネットを用いているので、高速バス50では、イーサネ
ットの送信規格で規定されたパケットの最大サイズであ
る1.5KByteよりも大きなパケットを扱うことが
できるプロトコル(たとえば、(株)日立製作所のハイ
パークロスバーネットワーク、Fibre Chann
el、MyriNet、Tandem社のServer
Netなど)が用いられる。
【0024】なお、図1では、1つのクライアント10
と1つの通信サーバ20と1つのアプリケーションサー
バ30を示しているが、当然のことながら、これらは複
数あってもよい。
【0025】クライアント10は、ネットワーク40と
接続するためのイーサネットデバイス101を備えたコ
ンピュータにより実現される。すなわち、イーサネット
デバイス101を制御するためのイーサネットデバイス
ドライバ102や、イーサネットデバイス101を介し
て送受するパケットをTCP/IPにしたがって処理す
るプロトコル・スタック103や、アプリケーションサ
ーバ30に対して処理を要求するクライアントプログラ
ム(たとえば、Webブラウザプログラムなどのアプリ
ケーションプログラム)104が、ハードディスクドラ
イブなどの記憶装置、あるいは、読取り装置を介してC
D−ROM、FDなどの可搬性のある記憶媒体から、メ
モリ上にロードされ、プロセッサにより実行されること
で実現される。
【0026】通信サーバ20は、ネットワーク40と接
続するためのイーサネットデバイス201および高速バ
ス50と接続するための高速バスデバイス202を備え
たコンピュータにより実現される。すなわち、イーサネ
ットデバイス201を制御するためのイーサネットデバ
イスドライバ203や、高速バスデバイス202を制御
するための高速バスデバイスドライバ204や、ネット
ワーク40で扱うことができるパケットおよび高速バス
50で扱うことができるパケット間の変換処理を行うプ
ロトコル・スタック205が、ハードディスクドライブ
などの記憶装置、あるいは、読取り装置を介してCD−
ROM、FDなどの可搬性のある記憶媒体から、メモリ
上にロードされ、プロセッサにより実行されることで実
現される。
【0027】アプリケーションサーバ30は、高速バス
50と接続するための高速バスデバイス301を備えた
コンピュータにより実現される。すなわち、高速バスデ
バイス301を制御するための高速バスデバイスドライ
バ302や、高速バスデバイス301を介して送受する
パケットをTCP/IPにしたがって処理するプロトコ
ル・スタック303や、クライアント10の要求を処理
するサーバプログラム(たとえば、WWWサーバプログ
ラムなどのアプリケーションプログラム)304が、ハ
ードディスクドライブなどの記憶装置、あるいは、読取
り装置を介してCD−ROM、FDなどの可搬性のある
記憶媒体から、メモリ上にロードされ、プロセッサによ
り実行されることで実現される。
【0028】さて、上記構成のクライアント・サーバ・
システムにおいて、クライアント10およびアプリケー
ションサーバ30間の通信は、以下のようにして行われ
る。
【0029】まず、クライアント10からアプリケーシ
ョンサーバ30へデータを送信する場合について説明す
る。
【0030】図2はクライアント10からアプリケーシ
ョンサーバ30へデータを送信する場合のパケットの流
れを示した図である。
【0031】図示するように、クライアント10におい
て、プロトコル・スタック103は、クライアントプロ
グラム104からのシステムコールにより、クライアン
トプログラム104が作成した送信データ110をTC
P/IPにしたがって処理し、イーサネットの送信規格
に適合したサイズのIPパケットを作成する。そして、
作成したIPパケットをイーサネットデバイス101の
送信バッファ(図示せず)にコピーしてシステムコール
を終了する。イーサネットデバイス101は、送信バッ
ファにコピーされたIPパケットを、イーサネットに対
応したパケット111としてネットワーク40上に送出
する。
【0032】次に、通信サーバ20において、イーサネ
ットデバイス201は、ネットワーク40を介してパケ
ット111を受け取ると、当該パケット111からIP
パケットを取り出し、プロトコル・スタック205に渡
す。プロトコル・スタック205は、イーサネットデバ
イス201から受け取ったIPパケットに付されたIP
ヘッダの情報に基づいて、当該IPパケットがフラグメ
ント化されているか否かを調べる。フラグメント化され
ている場合はリアセンブルしてからバッファリングし、
フラグメント化されていない場合はそのままバッファリ
ングする。上記のバッファリング処理を、バッファリン
グされたデータサイズが、高速バス50で扱うことがで
きるサイズであって、少なくともイーサネットの送信規
格で規定されたパケットの最大サイズである1.5KB
yteよりも大きくなサイズになるまで続け、それか
ら、バッファリングしたデータを、高速バスデバイス2
02の送信バッファ(図示せず)にコピーする。高速バ
スデバイス202は、送信バッファにコピーされたデー
タをカプセル化し、高速バスパケット210として、高
速バス50上に送出する。
【0033】次に、アプリケーションサーバ30におい
て、高速バスデバイス301は、高速バス50を介して
高速バスパケット210を受け取ると、当該パケット2
10に含まれる各IPパケット(ネットワーク40を介
して通信サーバ20が受け取ったIPパケット、あるい
は、当該IPパケットをリアセンブルすることで得られ
たIPパケット)を取り出し、プロトコル・スタック3
02に渡す。プロトコル・スタック303は、IPパケ
ットをTCP/IPにしたがって処理し、クライアント
10のクライアントプログラム104が作成したデータ
110を復元する。サーバプログラム304は、復元し
たデータ110にしたがいクライアント10の要求に応
じた処理を行う。
【0034】ここで、クライアント10からアプリケー
ションサーバ30へデータを送信する場合における通信
サーバ20の動作をより詳細に説明する。
【0035】図3はクライアント10からアプリケーシ
ョンサーバ30へデータを送信する場合における通信サ
ーバ20の動作を説明するためのフロー図である。
【0036】まず、イーサネットデバイス201は、ネ
ットワーク40を介してパケットを受信し、イーサネッ
トデバイス201の受信バッファ(図示せず)に格納す
るとともに、パケット到着通知割り込みを発行する(ス
テップ1001)。これにより、実行中のプロセスが中
断され、割り込み処理が実行される。
【0037】次に、プロトコル・スタック205は、イ
ーサネットデバイス201の受信バッファからIPパケ
ットを通信サーバ20が備えるシステムメモリ(図示せ
ず)にコピーする(ステップ1002)。それから、プ
ロトコル・スタック205は、システムメモリにコピー
されているIPパケットのIPヘッダを調べ、当該パケ
ットがフラグメント化されているか否かを判断する(ス
テップ1003)。そして、フラグメント化されている
場合は、フラグメント化された全てのIPパケットが揃
っているか否かを調べ(ステップ1003a)、揃って
いない場合はステップ1001に戻り、揃っている場合
は、フラグメント化されたIPパケットをリアセンブル
(ステップ1004)してからシステムメモリにバッフ
ァリングする(ステップ1005)。一方、ステップ1
003において、フラグメント化されていない場合は、
当該IPパケットをそのままシステムメモリにバッファ
リングする(ステップ1005)。
【0038】次に、プロトコル・スタック205は、シ
ステムメモリにバッファリングされているデータが、高
速バス50で扱うことができるパケットのサイズであっ
て、少なくともイーサネットの送信規格で規定されたパ
ケットの最大サイズである1.5KByteよりも大き
なサイズに達しているか否かを判断し(ステップ100
6)、達している場合はステップ1007に移行し、達
していない場合は、ステップ1001に戻って、イーサ
ネットデバイス201に次のIPパケットが到着するの
を待つ。
【0039】次に、プロトコル・スタック205は、シ
ステムメモリにバッファリングされているデータが、前
記パケットのサイズに達している場合、当該データを高
速バスデバイス202の送信バッファにコピーする(ス
テップ1007)。これを受けて、高速バスデバイス2
02は、送信バッファにコピーされたデータをカプセル
化し、高速バスパケットとして、高速バス50上に送出
する(ステップ1008)。
【0040】これにより、クライアント10が送信した
データは、イーサネットの規格に適合したサイズのパケ
ットでネットワーク40上を伝送され、通信サーバ20
において、イーサネットの規格サイズよりも大きなサイ
ズに変換されて、高速バス50を経てアプリケーション
サーバ30に伝送される。
【0041】次に、アプリケーションサーバ30からク
ライアント10へデータを送信する場合について説明す
る。
【0042】図4はアプリケーションサーバ30からク
ライアント10へデータを送信する場合のパケットの流
れを示した図である。
【0043】図示するように、アプリケーションサーバ
30において、プロトコル・スタック303は、サーバ
プログラム304からのシステムコールにより、サーバ
プログラム304が作成した送信データ310をTCP
/IPにしたがって処理し、高速バス50で扱うことが
できるサイズのIPパケットを作成する。そして、作成
したIPパケットを高速バスデバイス301の送信バッ
ファ(図示せず)にコピーしてシステムコールを終了す
る。高速バスデバイス301は、送信バッファにコピー
されたIPパケットをカプセル化し、高速バスパケット
311として、高速バス50上に送出する。
【0044】次に、通信サーバ20において、高速バス
デバイス202は、高速バス50を介して高速バスパケ
ット311を受け取ると、当該パケット311からIP
パケットを取り出し、プロトコル・スタック205に渡
す。プロトコル・スタック205は、受け取ったIPパ
ケットを、ネットワーク40で扱うことができるサイズ
(ネットワーク40で用いるイーサネットの送信規格で
規定されたパケットの最大サイズである1.5KByt
eよりも小さなサイズ)にフラグメント化し、IPパケ
ットを作成する。そして、作成したIPパケットをイー
サネットデバイス201の送信バッファ(図示せず)に
コピーする。イーサネットデバイス201は、送信バッ
ファにコピーされたパケットを、イーサネットに対応し
たパケット211にして、順次、ネットワーク40上に
送出する。
【0045】次に、クライアント10において、イーサ
ネットデバイス101は、ネットワーク40を介して受
け取ったパケット211からIPパケットを取り出し、
プロトコル・スタック103に渡す。プロトコル・スタ
ック103は、IPパケットをTCP/IPにしたがっ
て処理し、アプリケーションサーバ30のサーバプログ
ラム304が作成したデータ310を復元する。クライ
アントプログラム104は、復元したデータ310にし
たがい処理を行う。
【0046】ここで、アプリケーションサーバ30から
クライアント10へデータを送信する場合における通信
サーバ20の動作をより詳細に説明する。
【0047】図5はアプリケーションサーバ30からク
ライアント10へデータを送信する場合における通信サ
ーバ20の動作を説明するためのフロー図である。
【0048】まず、高速バスデバイス301は、高速バ
ス50を介して高速バスパケットを受信し、高速バスデ
バイス301の受信バッファ(図示せず)に格納すると
ともに、パケット到着通知割り込みを発行する(ステッ
プ2001)。これにより、実行中のプロセスが中断さ
れ、割り込み処理が実行される。
【0049】次に、プロトコル・スタック205は、高
速バスデバイス301の受信バッファからIPパケット
を通信サーバ20が備えるシステムメモリ(図示せず)
にコピーする(ステップ2002)。次に、プロトコル
・スタック205は、システムメモリにコピーされてい
るIPパケットを、ネットワーク40で扱うことができ
るパケットサイズ(イーサネットの送信規格で規定され
たパケットの最大サイズである1.5KByteよりも
小さなサイズ)にフラグメント化し、IPパケットを作
成する(ステップ2003)。次に、プロトコル・スタ
ック205は、作成したIPパケットをイーサネットデ
バイス201の送信バッファにコピーする。イーサネッ
トデバイス201は、送信バッファにコピーされたIP
パケットを、イーサネットに対応したパケットにしてネ
ットワーク40上に送出する(ステップ2004)。こ
こで、イーサネットデバイス40は、パケットを1つ送
出する毎に送信通知割り込み通知を発行する(ステップ
2005)。
【0050】プロトコル・スタック205は、イーサネ
ットデバイス201から送信通知割り込み通知を受け取
ると、送信バッファに未送信のIPパケットが残ってい
るか否かを調べ(ステップ2006)、残っている場合
は、ステップ2004に戻って残りのパケットをネット
ワーク40上に送出する。
【0051】これにより、アプリケーションサーバ30
が送信したデータは、高速バス50の規格に適合したサ
イズのパケットにフラグメント化されて高速バス50上
を伝送され、通信サーバ20において、イーサネットの
規格サイズよりも小さなサイズに変換されて、ネットワ
ーク40を経てクライアント10に伝送される。
【0052】以上、本発明の一実施形態について説明し
た。
【0053】本実施形態によれば、ネットワーク40を
介してクライアント10から送られてきたパケットは、
通信サーバ20において、前記パケットよりも大きなサ
イズのパケットに変換されて、アプリケーションサーバ
30に送信される。したがって、アプリケーションサー
バ30が受信するパケットの数を、クライアント10が
送信したパケット数より減らすことができるので、パケ
ット到着による割り込み発生回数が減少し、アプリケー
ションサーバ30のプロセッサにかかる負荷を低減する
ことができる。
【0054】また、アプリケーションサーバ30が送信
したパケットは、通信サーバ20において、ネットワー
ク40で使用する、前記パケットよりも小さなサイズの
パケットに変換されて、ネットワーク40上に送出され
る。したがって、アプリケーションサーバ30が直接ネ
ットワーク40上にパケットを送信する場合に比べて、
パケットの送信回数を減らすことができるので、パケッ
ト送信による割り込み発生回数が減少し、アプリケーシ
ョンサーバ30のプロセッサにかかる負荷を低減するこ
とができる。
【0055】すなわち、アプリケーションサーバ30で
の通信処理の負担を低減することができ、これにより、
高スループットネットワークへ対応したクライアント・
サーバ・システムを実現することができる。
【0056】また、本発明によれば、クライアント10
で使用するクライアントプログラム104やアプリケー
ションサーバ30で使用するサーバプログラム304、
クライアント10およびアプリケーションサーバ30で
使用するプロトコル・スタック103、303、あるい
は、ネットワーク40などについて、従来のものに対し
て修正を加える必要がない。このため、既存のソフトウ
エア資産や既に構築されてあるネットワークを活用しつ
つ実現することが可能である。
【0057】なお、本発明は上記の実施形態に限定され
るものではなく、その要旨の範囲内で数々の変形が可能
である。
【0058】たとえば、上記の実施形態では、通信サー
バ20において、ネットワーク40を介して受け取った
IPパケット、あるいは当該IPパケットをリアセンブ
ルしたIPパケットをシステムメモリにバッファリング
し、バッファリングしたデータが高速バス50で扱うこ
とができるサイズ(イーサネットの送信規格で規定され
たパケットの最大サイズである1.5KByteよりも
大きなサイズ)に達したときに、当該バッファリングし
たデータをカプセル化し、高速バスパケットとして、高
速バス40上に送出するようにしている。
【0059】しかしながら、本発明はこれに限定される
ものではない。たとえば、通信サーバ20に、所定時間
毎に信号を発生するタイマを設け、IPパケットをタイ
マより信号が出力されるまでシステムメモリにバッファ
リングし、タイマより信号が出力されたときに、バッフ
ァリングしたデータを、高速バス50で扱うことができ
るパケットサイズでカプセル化し、高速バスパケットと
して、高速バス40上に送出するようにしてもよい。な
お、タイマが信号を発生する時間間隔は、使用するネッ
トワーク40のスループットや、アプリケーションサー
バや、クレーム10上のアプリケーションの要求スルー
プットなどに基づいて求めることができる。たとえば、
システムメモリにバッファリングしたデータが高速バス
50で扱うことができるパケットサイズに達するのに要
する時間よりも長くなるように設定する。この時間は、
使用するネットワーク40のスループットに基づいて求
めることができる。
【0060】図6は、上記のように修正した本発明の一
実施形態における、クライアント10からアプリケーシ
ョンサーバ30へデータを送信する場合における通信サ
ーバ20の動作を説明するためのフロー図である。
【0061】まず、イーサネットデバイス201は、ネ
ットワーク40を介してパケットを受信し、イーサネッ
トデバイス201の受信バッファに格納するとともに、
パケット到着通知割り込みを発行する(ステップ300
1)。これにより、実行中のプロセスが中断され、割り
込み処理が実行される。
【0062】次に、プロトコル・スタック205は、イ
ーサネットデバイス201の受信バッファからIPパケ
ットを通信サーバ20が備えるシステムメモリ(図示せ
ず)にコピーする(ステップ3002)。それから、プ
ロトコル・スタック205は、システムメモリにコピー
されているIPパケットのIPヘッダを調べ、当該パケ
ットがフラグメント化されているか否かを判断する(ス
テップ3003)。そして、フラグメント化されている
場合は、フラグメント化された全てのIPパケットが揃
っているか否かを調べ(ステップ3003a)、揃って
いない場合はステップ3001に戻り、揃っている場合
は、フラグメント化されたIPパケットをリアセンブル
(ステップ3004)してからシステムメモリにバッフ
ァリングする(ステップ3005)。一方、ステップ3
003において、フラグメント化されていない場合は、
当該IPパケットをそのままシステムメモリにバッファ
リングする(ステップ3005)。
【0063】次に、プロトコル・スタック205は、通
信サーバに設けられたタイマ(図示せず)より信号が出
力されたか否かを判断し(ステップ3006)、出力さ
れた場合はステップ3007に移行し、出力されていな
い場合はステップ3001に戻って、イーサネットデバ
イス201に次のパケットが到着するのを待つ。
【0064】次に、プロトコル・スタック205は、タ
イマより信号が出力された場合、バッファリングされて
いるデータのうち、高速バス50で扱うことができるサ
イズであって、少なくとも、イーサネットの送信規格で
規定されたパケットの最大サイズである1.5KByt
eよりも大きなサイズ分のデータを高速バスデバイス2
02の送信バッファにコピーする(ステップ300
7)。これを受けて、高速バスデバイス202は、送信
バッファにコピーされたデータをカプセル化し、高速バ
スパケットとして、高速バス50上に送出する(ステッ
プ3008)。ここで、高速バスデバイス202は、高
速バスパケットを1つ送出する毎に送信通知割り込み通
知を発行する(ステップ3009)。
【0065】プロトコル・スタック205は、高速バス
デバイス202から送信通知割り込み通知を受け取る
と、システムメモリに未送信のデータが残っているか否
かを調べ(ステップ3010)、残っている場合は、ス
テップ3007に戻って残りのデータを高速バスパケッ
トとしてネットワーク40上に送出する。
【0066】これにより、クライアント10が送信した
データは、イーサネットの規格に適合したサイズにパケ
ット化されてネットワーク40上を伝送され、通信サー
バ20において、高速バス50の規格に適合した、イー
サネットの規格サイズよりも大きなサイズのパケットに
変換されて、高速バス50を経てアプリケーションサー
バ30に伝送される。
【0067】さらに、本実施形態において、通信サーバ
20に、所定時間毎に信号を発生するタイマと、ネット
ワーク40上を伝送するパケットのイーサネットデバイ
ス201への到着時間間隔を計測するパケット到着間隔
計測部を設け、パケット到着間隔計測部で監視した時間
間隔が所定値以下の場合は、上記説明した図6に示すフ
ローにしたがい、タイマより信号が出力されたときにシ
ステムメモリにバッファリングされたデータをパケット
化して高速バス40上に送出し、所定値を越えている場
合は、図7に示すフローにしたがい、イーサネットデバ
イス201からパケット到着通知割り込みが発行される
毎に、システムメモリにバッファリングされたデータを
パケット化して高速バス40上に送出するようにしても
よい。
【0068】なお、パケット到着間隔計測部は、イーサ
ネットデバイス201から通知されるパケット到着割り
込みの通知間隔を計測することで実現できる。また、前
記所定値は、システムメモリに割り当てられた、データ
をバッファリングするバッファのサイズ、ネットワーク
40上を伝送するパケットのイーサネットデバイス20
1への到着時間間隔とバッファリングされるデータのサ
イズの変化との関係などを考慮して、設定すればよい。
【0069】ここで、図7に示すフローについて説明す
る。
【0070】まず、イーサネットデバイス201は、ネ
ットワーク40を介してパケットを受信し、イーサネッ
トデバイス201の受信バッファに格納するとともに、
パケット到着通知割り込みを発行する(ステップ500
1)。これにより、実行中のプロセスが中断され、割り
込み処理が実行される。
【0071】次に、プロトコル・スタック205は、イ
ーサネットデバイス201の受信バッファからIPパケ
ットを通信サーバ20が備えるシステムメモリにコピー
する(ステップ5002)。それから、プロトコル・ス
タック205は、システムメモリにコピーされているI
PパケットのIPヘッダを調べ、当該パケットがフラグ
メント化されているか否かを判断する(ステップ500
3)。そして、フラグメント化されている場合は、フラ
グメント化された全てのIPパケットが揃っているか否
かを調べ(ステップ5003a)、揃っていない場合は
ステップ1001に戻り、揃っている場合は、フラグメ
ント化されたIPパケットをリアセンブル(ステップ5
004)してから高速バスデバイス202の送信バッフ
ァにコピーする(ステップ5005)。一方、ステップ
5003において、フラグメント化されていない場合
は、当該IPパケットをそのまま高速バスデバイス20
2の送信バッファにコピーする(ステップ5005)。
これを受けて、高速バスデバイス202は、送信バッフ
ァにコピーされたデータをカプセル化し、高速バスパケ
ットとして、高速バス50上に送出する(ステップ50
06)。
【0072】これにより、クライアント10が送信した
データは、イーサネットの規格に適合したサイズのパケ
ットでネットワーク40上を伝送され、通信サーバ20
において、フラグメント化されているIPパケットにつ
いてはリアセンブルされてから、高速バス50を経てア
プリケーションサーバ30に伝送される。
【0073】また、上記の実施形態では、ネットワーク
40に接続されている通信サーバ20が1つの場合につ
いて説明したが、当然のことながら、複数の通信サーバ
20がネットワーク40に接続されるように構成しても
よい。
【0074】さらに、上記の実施形態では、高速バス5
0に接続されているアプリケーションサーバ30が1つ
の場合について説明したが、当然のことながら、複数の
アプリケーションサーバ30が高速バス50に接続され
るように構成してもよい。また、各アプリケーションサ
ーバ30で稼働するサーバプログラム304は複数のポ
ートを使用するものであってもよい。
【0075】この場合、通信サーバ20において、イー
サネットデバイス201を介して受け取ったIPパケッ
ト、あるいは当該IPパケットをリアセンブルすること
で得られたIPパケットをシステムメモリにバッファリ
ングするに際し、前記IPパケットをIPヘッダの情報
により特定される送信先(アプリケーションサーバ30
単位、あるいはサーバプログラム304のポート単位)
毎にバッファリングするようにしてもよい。そして、送
信先毎にバッファリングされたデータのサイズをモニタ
し、当該サイズが高速バス50で扱えるパケットサイズ
に達したものをカプセル化し、高速バスパケットとし
て、高速バス50に送出するようにしてもよい。
【0076】図8は、上記のように修正した本発明の一
実施形態における、クライアント10からアプリケーシ
ョンサーバ30へデータを送信する場合における通信サ
ーバ20の動作を説明するためのフロー図である。
【0077】まず、イーサネットデバイス201は、ネ
ットワーク40を介してパケットを受信し、イーサネッ
トデバイスの受信バッファに格納するとともに、パケッ
ト到着通知割り込みを発行する(ステップ4001)。
これにより、実行中のプロセスが中断され、割り込み処
理が実行される。
【0078】次に、プロトコル・スタック205は、イ
ーサネットデバイス201の受信バッファからIPパケ
ットを通信サーバ20が備えるシステムメモリ(図示せ
ず)にコピーする(ステップ4002)。それから、プ
ロトコル・スタック205は、システムメモリにコピー
されているIPパケットのIPヘッダを調べ、当該パケ
ットがフラグメント化されているか否かを判断する(ス
テップ4003)。そして、フラグメント化されている
場合は、フラグメント化された全てのIPパケットが揃
っているか否かを調べ(ステップ4003a)、揃って
いない場合はステップ4001に戻り、揃っている場合
は、フラグメント化されたIPパケットをリアセンブル
(ステップ4004)してからステップ4005に移行
する。一方、ステップ4003において、フラグメント
化されていない場合は、直ちにステップ4005に移行
する。
【0079】ステップ4005において、プロトコル・
スタック205は、ネットワーク40を介して受け取っ
たIPパケット、あるいは、当該IPパケットをリアセ
ンブルすることで得られたIPパケットのIPヘッダを
調べ、送信先のサーバプログラム304のポートを取得
する(ステップ4005)。そして、IPパケットを、
システムメモリに、前記取得した送信先のサーバプログ
ラム304のポート毎にバッファリングする(ステップ
4006)。
【0080】次に、プロトコル・スタック205は、サ
ーバプログラム304のポート毎にバッファリングされ
たデータのうち、データサイズが高速バス50で扱うこ
とができるパケットのサイズに達しているものがあるか
否かを判断する(ステップ4007)。達しているもの
がある場合はステップ4008に移行し、達しているも
のがない場合はステップ4001に戻って、イーサネッ
トデバイス201に次のパケットが到着するのを待つ。
【0081】プロトコル・スタック205は、サーバプ
ログラム304のポート毎にバッファリングされたデー
タのうち、データサイズが高速バス50で扱うことがで
きるパケットサイズであって、少なくともイーサネット
の送信規格で規定されたパケットの最大サイズである
1.5KByteよりも大きなサイズに達しているもの
がある場合、当該データを高速バスデバイス202の送
信バッファにコピーする(ステップ4008)。これを
受けて、高速バスデバイス202は、送信バッファにコ
ピーされたデータをカプセル化し、高速バスパケットと
して、高速バス50上に送出する(ステップ400
9)。ここで、高速バスデバイス202は、高速バスパ
ケットを送出すると送信通知割り込み通知を発行する。
【0082】プロトコル・スタック205は、高速バス
デバイス202から送信通知割り込み通知を受け取る
と、システムメモリにバッファリング・データが残って
いるか否かを調べ(ステップ4008)、残っている場
合は、ステップ4001に戻って、イーサネットデバイ
ス201に次のパケットが到着するのを待つ。
【0083】このようにすることで、ネットワーク40
を介してクライアント10から受け取ったIPパケット
は、IPヘッダの情報により特定される送信先単位でま
とめられて、アプリケーションサーバ30へ送信され
る。
【0084】なお、図8に示すフローでは、イーサネッ
トデバイス201を介して受け取ったIPパケット、あ
るいは、当該IPパケットをリアセンブルすることで得
られたIPパケットをシステムメモリにバッファリング
するに際し、IPヘッダの情報により特定される送信先
毎にバッファリングするものについて説明しているが、
IPヘッダの情報により特定される送信元(クライアン
ト10単位、あるいはクライアントプログラム104の
ポート単位)毎にバッファリングするように修正するこ
とも可能である。
【0085】また、上記の実施形態では、イーサネット
デバイス201を介して受け取ったIPパケットを一旦
システムメモリにコピーし、それから、IPパケット
を、フラグメント化されているものはリアセンブルして
から、フラグメント化されていないものはそのまま、シ
ステムメモリにバッファリングし、バッファリングされ
たIPパケットのデータサイズが所定のサイズに達した
ときに、あるいはタイマから信号が出力されたときに、
前記バッファリングされたIPパケットを1つのパケッ
トにカプセル化して高速バスパケットとし、高速バス5
0上に送出するものについて説明した。しかしながら、
本発明はこれに限定されるものではない。
【0086】たとえば、イーサネットデバイス201を
介して受け取ったIPパケットをシステムメモリにコピ
ーし、コピーしたIPパケットのデータサイズが所定の
サイズに達したときに、あるいはタイマから信号が出力
されたときに、前記コピーしたIPパケットを、フラグ
メント化されているものはリアセンブルしてから、フラ
グメント化されていないものはそのまま、1つのパケッ
トにカプセル化して高速バスパケットとし、高速バス5
0上に送出するようにしてもよい。
【0087】あるいは、イーサネットデバイス201か
らパケット到着通知割り込みが発行される毎に、イーサ
ネットデバイス201を介して受け取ったIPパケット
を、フラグメント化されているものはリアセンブルして
から、フラグメント化されていないものはそのまま、カ
プセル化して高速バスパケットとし、高速バス50上に
送出するようにしてもよい。この場合でも、ネットワー
ク40上でフラグメント化されているIPパケットがリ
アセンブルされて高速バス50上に送出されることにな
るので、アプリケーションサーバ30が受信するパケッ
ト数を減らすことができる。
【0088】また、本実施形態では、ネットワークイン
ターフェース層として、ネットワーク40にイーサネッ
トを用いた場合について説明したが、その他のプロトコ
ル、たとえばトークリングを用いた場合でも、高速バス
で用いるパケットのサイズをトークリングで規定するパ
ケットサイズよりも大きくすることで、本発明は同様に
実現できる。
【0089】
【発明の効果】以上説明したように、本発明によれば、
通信処理にかかるサーバの負担を分散させることがで
き、これにより、高スループットネットワークへ対応し
たクライアント・サーバ・システムを実現することがで
きる。
【図面の簡単な説明】
【図1】本発明の一実施形態が適用されたクライアント
・サーバ・システムの概略図である。
【図2】クライアント10からアプリケーションサーバ
30へデータを送信する場合のパケットの流れを示した
図である。
【図3】クライアント10からアプリケーションサーバ
30へデータを送信する場合における通信サーバ20の
動作を説明するためのフロー図である。
【図4】アプリケーションサーバ30からクライアント
10へデータを送信する場合のパケットの流れを示した
図である。
【図5】アプリケーションサーバ30からクライアント
10へデータを送信する場合における通信サーバ20の
動作を説明するためのフロー図である。
【図6】本発明の一実施形態の変形例における、クライ
アント10からアプリケーションサーバ30へデータを
送信する場合における通信サーバ20の動作を説明する
ためのフロー図である。
【図7】本発明の一実施形態の変形例における、クライ
アント10からアプリケーションサーバ30へデータを
送信する場合における通信サーバ20の動作を説明する
ためのフロー図である。
【図8】本発明の一実施形態の変形例における、クライ
アント10からアプリケーションサーバ30へデータを
送信する場合における通信サーバ20の動作を説明する
ためのフロー図である。
【符号の説明】
10 クライアント 20 通信サーバ 30 アプリケーションサーバ 40 ネットワーク 50 高速バス 101、201 イーサネットデバイス 102、203 イーサネットデバイスドライバ 103、205、303 プロトコル・スタック 104 クライアントプログラム 111、211 パケット 202、301 高速バスデバイス 210、311 高速バスパケット 304 サーバプログラム
フロントページの続き (72)発明者 竹内 理 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 中野 隆裕 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】クライアントからの要求にしたがい処理を
    実行するサーバ・システムであって、 ネットワークを介して少なくとも1つのクライアントに
    接続された第1のサーバと、前記ネットワークで送信可
    能な最大パケットサイズよりも大きなサイズのパケット
    を送信可能なバスを介して前記第1のサーバに接続され
    た、前記第1のサーバを介して受け取った前記クライア
    ントからの要求にしたがい処理を実行する第2のサーバ
    と、を有し、 前記第1のサーバは、前記ネットワークを介して前記ク
    ライアントより受信したパケットを、当該パケットがフ
    ラグメント化されている場合はリアセンブルしてから前
    記バス上に送出し、フラグメント化されていない場合は
    そのまま前記バス上に送出するとともに、前記バスを介
    して前記第2のサーバより受信したパケットについて、
    前記ネットワークにて送信可能なサイズのパケットにフ
    ラグメント化して、前記ネットワーク上に送出するパケ
    ットサイズ変換手段を備え、 前記第2のサーバは、前記バスを介して前記第1のサー
    バより受信したパケットを処理して前記クライアントの
    要求を復元するとともに、送信すべきデータを前記バス
    にて送信可能なサイズのパケットにパケット化し、前記
    バス上に送出するパケット化手段を備えることを特徴と
    するサーバ・システム。
  2. 【請求項2】請求項1記載のサーバ・システムであっ
    て、 前記パケットサイズ変換手段は、前記ネットワークを介
    して前記クライアントより受信した1つ以上のパケット
    を、当該パケットがフラグメント化されている場合はリ
    アセンブルしてから、フラグメント化されていない場合
    はそのまま、前記バスで送信可能な最大パケットサイズ
    の範囲内で1つのパケットにカプセル化し、前記バス上
    に送出するものであり、 前記パケット化手段は、前記バスを介して受け取った前
    記カプセル化されたパケットから前記クライアントより
    のパケットおよび/または前記クライアントよりのパケ
    ットをリアセンブルすることで得られたパケット各々を
    取り出し、取り出したパケット各々について処理するこ
    とで前記クライアントの要求を復元することを特徴とす
    るサーバ・システム。
  3. 【請求項3】請求項2記載のサーバ・システムであっ
    て、 前記パケットサイズ変換手段は、前記受信した1つ以上
    のパケットのデータサイズが所定のサイズに達したとき
    に、前記受信した1つ以上のパケットを、当該パケット
    がフラグメント化されている場合はリアセンブルしてか
    ら、フラグメント化されていない場合はそのまま、1つ
    のパケットにカプセル化して前記バス上に送出すること
    を特徴とするサーバ・システム。
  4. 【請求項4】請求項2記載のサーバ・システムであっ
    て、 前記パケットサイズ変換手段は、所定時間毎に信号を発
    生するタイマを備え、前記タイマより信号が出力された
    ときに、それまでに前記ネットワークを介して前記クラ
    イアントより受信した1つ以上のパケットを、当該パケ
    ットがフラグメント化されている場合はリアセンブルし
    てから、フラグメント化されていない場合はそのまま、
    1つのパケットにカプセル化して前記バス上に送出する
    ことを特徴とするサーバ・システム。
  5. 【請求項5】請求項2記載のサーバ・システムであっ
    て、 前記パケットサイズ変換手段は、所定時間毎に信号を発
    生するタイマと前記ネットワークを介して受信したパケ
    ットの受信間隔を監視する監視手段とを備え、前記監視
    手段で監視した受信間隔が所定値を越えていない場合
    は、前記タイマより信号が出力されたときに、それまで
    に前記ネットワークを介して前記クライアントより受信
    した1つ以上のパケットを、当該パケットがフラグメン
    ト化されているときはリアセンブルしてから、フラグメ
    ント化されていないときはそのまま、1つのパケットに
    カプセル化して前記バス上に送出するとともに、前記監
    視手段で監視した受信間隔が前記所定値を越えている場
    合は、前記ネットワークを介して前記クライアントより
    パケットを受信する毎に、当該パケットを、フラグメン
    ト化されているときはリアセンブルしてから、フラグメ
    ント化されていないときはそのまま、1つのパケットに
    カプセル化して前記バス上に送出することを特徴とする
    サーバ・システム。
  6. 【請求項6】請求項2記載のサーバ・システムであっ
    て、 前記パケットサイズ変換手段は、前記ネットワークを介
    して前記クライアントより受信した1つ以上のパケット
    を、パケットの送信先あるいは送信元毎に管理し、デー
    タサイズが所定のサイズに達したものから順に、当該パ
    ケットがフラグメント化されているときはリアセンブル
    してから、フラグメント化されていないときはそのま
    ま、1つのパケットにカプセル化して前記バス上に送出
    することを特徴とするサーバ・システム。
  7. 【請求項7】請求項1、2、3、4、5または6記載の
    サーバ・システムを備えることを特徴とするクライアン
    ト・サーバ・システム。
  8. 【請求項8】ネットワークを介して少なくとも1つのク
    ライアントに接続されるとともに、前記ネットワークで
    送信可能な最大パケットサイズよりも大きなサイズのパ
    ケットを送信可能なバスを介して、前記クライアントか
    らの要求にしたがい処理を実行するサーバに接続された
    通信サーバであって、 前記ネットワークを介して前記クライアントより受信し
    たパケットについて、当該パケットがフラグメント化さ
    れている場合はリアセンブルしてから前記バス上に送出
    し、フラグメント化されていない場合はそのまま前記バ
    ス上に送出するとともに、前記バスを介して前記第2の
    サーバより受信したパケットについて、前記ネットワー
    クにて送信可能なサイズのパケットにフラグメント化し
    て、前記ネットワーク上に送出するパケットサイズ変換
    手段を備えることを特徴とする通信サーバ。
  9. 【請求項9】少なくとも1つのクライアントと、ネット
    ワークを介して前記クライアントに接続された第1のサ
    ーバと、前記ネットワークで送信可能な最大パケットサ
    イズよりも大きなサイズのパケットを送信可能なバスを
    介して前記第1のサーバに接続された、前記第1のサー
    バを介して受け取った前記クライアントからの要求にし
    たがい処理を実行する第2のサーバと、を有するクライ
    アント・サーバ・システムにおけるクライアント・サー
    バ間の通信方法であって、 前記第1のサーバにおいて、前記ネットワークを介して
    前記クライアントより受信したパケットを、当該パケッ
    トがフラグメント化されている場合はリアセンブルして
    から前記バス上に送出し、フラグメント化されていない
    場合はそのまま前記バス上に送出するステップを備え、 前記第2のサーバにおいて、前記バスを介して前記第1
    のサーバより受信したパケットを処理して前記クライア
    ントの要求を取得するステップを備えることを特徴とす
    るクライアント・サーバ間の通信方法。
JP27281998A 1998-09-28 1998-09-28 サーバ・システムおよびクライアント・サーバ間の通信方法 Expired - Fee Related JP3490000B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27281998A JP3490000B2 (ja) 1998-09-28 1998-09-28 サーバ・システムおよびクライアント・サーバ間の通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27281998A JP3490000B2 (ja) 1998-09-28 1998-09-28 サーバ・システムおよびクライアント・サーバ間の通信方法

Publications (2)

Publication Number Publication Date
JP2000101613A true JP2000101613A (ja) 2000-04-07
JP3490000B2 JP3490000B2 (ja) 2004-01-26

Family

ID=17519207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27281998A Expired - Fee Related JP3490000B2 (ja) 1998-09-28 1998-09-28 サーバ・システムおよびクライアント・サーバ間の通信方法

Country Status (1)

Country Link
JP (1) JP3490000B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934288B2 (en) 2000-04-28 2005-08-23 Nec Corporation Fragmentation processing device and fragmentation processing apparatus using thereof
JP2006074726A (ja) * 2004-08-03 2006-03-16 Fujitsu Ltd 断片パケット処理方法及びこれを用いるパケット転送装置
JP2007036910A (ja) * 2005-07-29 2007-02-08 Fujitsu Ltd パケット処理装置及びパケット処理プログラム
JP2008009482A (ja) * 2006-06-27 2008-01-17 Fujitsu Ltd リード/ライト監視制御方法及びシステム
US7903689B2 (en) 2004-06-21 2011-03-08 Fujitsu Limited Method and system for packet reassembly based on a reassembly header
JP2012514388A (ja) * 2008-12-24 2012-06-21 エントロピック・コミュニケーションズ・インコーポレイテッド マネージド・ネットワークでのレイヤ2のパケット集約及び断片化

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934288B2 (en) 2000-04-28 2005-08-23 Nec Corporation Fragmentation processing device and fragmentation processing apparatus using thereof
US7903689B2 (en) 2004-06-21 2011-03-08 Fujitsu Limited Method and system for packet reassembly based on a reassembly header
JP2006074726A (ja) * 2004-08-03 2006-03-16 Fujitsu Ltd 断片パケット処理方法及びこれを用いるパケット転送装置
JP4490331B2 (ja) * 2004-08-03 2010-06-23 富士通株式会社 断片パケット処理方法及びこれを用いるパケット転送装置
JP2007036910A (ja) * 2005-07-29 2007-02-08 Fujitsu Ltd パケット処理装置及びパケット処理プログラム
JP4526458B2 (ja) * 2005-07-29 2010-08-18 富士通株式会社 パケット処理装置及びパケット処理プログラム
JP2008009482A (ja) * 2006-06-27 2008-01-17 Fujitsu Ltd リード/ライト監視制御方法及びシステム
JP2012514388A (ja) * 2008-12-24 2012-06-21 エントロピック・コミュニケーションズ・インコーポレイテッド マネージド・ネットワークでのレイヤ2のパケット集約及び断片化

Also Published As

Publication number Publication date
JP3490000B2 (ja) 2004-01-26

Similar Documents

Publication Publication Date Title
US8649395B2 (en) Protocol stack using shared memory
US6477143B1 (en) Method and apparatus for packet network congestion avoidance and control
US7414975B2 (en) Protocol stack
EP1494426B1 (en) Secure network processing
TWI411279B (zh) 封包聚合的方法與系統
US7526577B2 (en) Multiple offload of network state objects with support for failover events
US7355971B2 (en) Determining packet size in networking
US7640364B2 (en) Port aggregation for network connections that are offloaded to network interface devices
US7124198B2 (en) Apparatus and method for scaling TCP off load buffer requirements by segment size
CN100552626C (zh) 用网络栈同步和上载已卸载网络栈连接的方法
US6321269B1 (en) Optimized performance for transaction-oriented communications using stream-based network protocols
US7027450B2 (en) Frame batching and compression for IP transmission
JP2000332817A (ja) パケット処理装置
JP2002094569A (ja) 再構成バッファの作動方法
US20070291782A1 (en) Acknowledgement filtering
US20110270976A1 (en) Network protocol processing system and network protocol processing method
EP1515511B1 (en) Multiple offload of network state objects with support for failover events
JP3490000B2 (ja) サーバ・システムおよびクライアント・サーバ間の通信方法
JP3711156B2 (ja) ファイル転送方法
US8228919B2 (en) Communication device, and communication method and program thereof
US20050198007A1 (en) Method, system and algorithm for dynamically managing a connection context database
US7672299B2 (en) Network interface card virtualization based on hardware resources and software rings
US20050086390A1 (en) Efficient packet desegmentation on a network adapter
US20080095192A1 (en) Batching and Compression for Ip Transmission
Chu et al. Modeling and analysis of the Unix communication subsystems

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071107

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081107

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081107

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091107

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101107

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101107

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20131107

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees