(57)【特許請求の範囲】
【請求項１】
ヘッダとデータを結合したパケットデータを送出するサーバシステムにおいて、
通信回線よりの受信処理をする受信用プロトコル処理部と、通信回線への送出処理をする送信用プロトコル処理部とを備え、
上記送信用プロトコル処理部にパケットデータのヘッダ部の雛型であるテンプレートを１つ以上備えており、
前記端末からの接続要求を受信すると、前記接続要求に基づいてヘッダ構成情報を算出し、
前記テンプレートを取得し、前記算出したヘッダ構成情報を前記テンプレートに嵌め込むことによってヘッダを生成し、
送信対象のデータを所定サイズ単位にフラグメント化し、
前記生成したヘッダと前記所定サイズのデータを結合してパケットデータを生成するサーバシステムのプロトコル処理方法。
【請求項２】
上記テンプレートが、データ伝送方式に対応した複数種のヘッダ形式に対応する数だけ備えられ、端末が採用するデータ伝送方式に対応したテンプレートを選択できる請求項１に記載のサーバシステムのプロトコル処理方法。
【請求項３】
階層構造を持つヘッダの生成において、上記テンプレートに書き込むべき階層数の選択ができる請求項１に記載のサーバシステムのプロトコル処理方法。
【請求項４】
ヘッダとデータを結合したパケットデータを送出するサーバシステムにおいて、
通信回線よりの受信処理をする受信用プロトコル処理部と、通信回線への送出を処理する送信用プロトコル処理部とを備え、
上記送信用プロトコル処理部に；
パケットデータのヘッダ部の雛型であるテンプレートを１つ以上格納するテンプレート記憶手段と、
前記端末からの接続要求に基づいて、ヘッダ構成情報を算出するヘッダ算出手段と、
前記テンプレート記憶手段に格納されているテンプレートを取得し、上記ヘッダ算出手段より得られるヘッダ構成情報を前記テンプレートに嵌め込むヘッダ生成手段と、
送信対象のデータを取得し、前記データを所定サイズ単位にフラグメント化するフラグメント処理手段と、
上記ヘッダ生成手段で生成されたヘッダとフラグメント処理手段で生成された所定単位のデータとを結合してパケットデータを生成し、前記パケットデータを送出する結合手段とを備えたことを特徴とするサーバシステム。
【請求項５】
上記ヘッダ算出手段が端末からの接続要求があった時点で必要とする全ヘッダ構成情報を出力する請求項４に記載のサーバシステム。
【請求項６】
端末が接続要求後に所定サイズ毎のデータ送出要求を順次送出する伝送方法を用い、上記ヘッダ算出手段が端末からの接続要求があった時点で必要とする全ヘッダ構成情報の一部を出力し、上記送出要求がある毎に残りのヘッダ構成情報を算出する請求項４に記載のサーバシステム。
【請求項７】
上記ヘッダ生成手段が、データ伝送方式に対応した複数種のヘッダ形式のテンプレートを備えるとともに、更に端末が採用するデータ伝送方式に対応したテンプレートを選択できるテンプレート選択手段を設けた請求項４に記載のサーバシステム。
【請求項８】
階層構造を持つヘッダの生成において、上記ヘッダ生成手段が書き込むべき階層数の選択ができる階層選択手段を備える請求項４に記載のサーバシステム。
【請求項９】
上記結合手段が、各パケットデータに対応して、先頭に上記生成されたヘッダを、その後にフラグメント化されたデータを格納した状態でヘッダとデータを結合するパケットバッファである請求項４に記載のサーバシステム。
【請求項１０】
各パケットデータに対応して、先頭に上記生成されたヘッダを、その後にフラグメント化されたデータを格納した状態でヘッダとデータを結合する上記結合手段としてのパケットバッファと、
上記パケットバッファに格納されたパケットデータを所定個数毎送出する上記送出制御手段とを備えた請求項５に記載のサーバシステム。
【請求項１１】
各パケットデータに対応して、先頭に上記生成されたヘッダを、その後にフラグメント化されたデータを格納した状態でヘッダとデータを結合する上記結合手段としてのパケットバッファと、
上記パケットバッファに格納されたパケットデータを順次送出する上記送出制御手段とを備えた請求項５に記載のサーバシステム。
【請求項１２】
各パケットデータに対応して、先頭に上記生成されたヘッダを、その後にフラグメント化されたデータを格納した状態でヘッダとデータを結合する上記結合手段としてのパケットバッファと、
端末よりの送出要求がある毎に上記パケットバッファに格納されたパケットデータを所定個数毎送出する上記送出制御手段とを備えた請求項６に記載のサーバシステム。
【請求項１３】
上記パケットバッファが、各端末に対応した領域を備え、各端末よりの送出要求に基づいて該領域を選択する機能を備えた請求項９〜１２のいずれかに記載のサーバシステム。
【請求項１４】
上記ヘッダ生成手段が、各端末に対応したヘッダを生成する請求項１３に記載のサーバシステム。
【請求項１５】
上記各端末が通信方式が異なる端末である請求項１３または１４に記載のサーバシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、サーバシステムとそのプロトコル処理方法に関し、特に、動画像や音声等の大サイズかつ連続性のあるデータを通信回線に送出する場合のサーバシステムとそのプロトコル処理に関するものである。
【０００２】
【従来の技術】
イーサネット等の通信回線を用いて、データの送受信を行なう場合には、通信プロトコルデータの生成や解析などの処理が必要であり、更に、動画データなどの大量データを高速に転送する場合にはプロトコル処理を高速化することが重要である。
【０００３】
図１１はサーバシステムにおける従来のプロトコル処理を示すものである。
サーバシステム６０８は通信回線交換機６０６を介して通信回線上の端末６０７と接続されており、通信データの送受信はプロトコル送受信部６０４が中央制御部６０５の指示を受けて、処理を行う。
【０００４】
端末よりの要求に基づいて端末にデータを送信する場合、まず中央制御部６０５は通信回線上での端末のアドレスなど通信に必要なヘッダ情報と通信するデータ本体を作成し、それぞれヘッダメモリ部６０２および、コンテンツメモリ部６０３に格納する。
【０００５】
次に中央制御部６０５から指示を与えられたプロトコル分離結合部６０１は、ヘッダメモリ部６０２とコンテンツメモリ部６０３からそれぞれヘッダとコンテンツを読み出し、該ヘッダとコンテンツを結合して、通信プロトコルの形式に適合したパケットデータを生成し、プロトコル送受信部６０４へ送る。次いで、中央制御部６０５はプロトコル送受信部６０４に対してデータ送信を指示することによって、端末６０７に対してデータを送信する。
【０００６】
上記のヘッダは通信方式（例えばインターネットで使用されるＴＣＰ／ＩＰ，ノベル社の規定するＩＰＸ等、あるいはＮＦＳプロトコルを用いた転送方式、たれ流し転送方式等）に応じた規格がある。通信方式の指定は端末の送信要求に含まれており、中央制御部６０５は上記端末の要求に応じたヘッダを作成できる能力を持っている。
【０００７】
一方、端末６０７からデータを受ける場合には、ネットワークを介してプロトコル送受信部６０４に受け取られたパケットデータはプロトコル分離結合部６０１に転送され、ここで、ヘッダとコンテンツに分離されて、ヘッダはヘッダメモリ部６０２に一時的に格納され、コンテンツはコンテンツメモリ部６０３に一時的に格納され、中央制御部６０５は上記ヘッダメモリ部に収納された情報（ファイル名、パケット番号、データサイズ等）を用いて、対応するコンテンツをハードディスクに記憶したり、あるいは表示処理に回付する等、必要な処理がなされるようになっている。
【０００８】
【発明が解決しようとする課題】
しかしながら、上記のような従来のプロトコル処理では送信の際に中央制御部６０５が端末への通信に必要なヘッダの生成とデータ結合の指示等の処理を行うことになり、上記したように、端末の要求は一元的ではなく多種の要求に応じたヘッダを作成する必要があるため、その処理量が多くて負荷が高くなり、処理時間がかかる。しかも、このシステムでは送信だけでなく、受信プロトコルも扱われ、中央制御装置６０５に掛かる負荷はますます大きくなる。
【０００９】
このため端末６０７よりの送信要求から該送信要求に対応するデータを送出するまでの応答時間が長くなり、端末への送信が後れることになり、特に、動画データのように時間的に連続したデータを送信する場合には１パケットの形成に対して、毎回同じサイズのデータをフラグメントし、略同じヘッダを形成し、更に、該ヘッダにデータを結合させて送出するというプロトコル処理を繰り返すためにオーバーヘッドが大きくなり、サーバからの送信が遅れて、端末側での動画再生が途切れる等の欠点があった。
【００１０】
本発明は上記従来の事情に鑑みて提案されたものであって、動画データのように時間的に連続したデータを送信する場合のヘッダ生成処理をテンプレートを用いることによって簡略化し、中央制御部の負担を軽減するとともに、動画等の時間的に連続したデータを時間的な遅れなく送出できるサーバシステムとそのプロトコル処理方法を提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明は、上記目的を達成するために以下の手段を採用している。
まず、本発明は、端末１１１、４１１よりの接続要求に基づいて、ヘッダ構成情報１０５、４０５を生成するとともに、該ヘッダ構成情報１０５、４０５を所定の形式に組み込んだヘッダと記憶装置１６０、４６０より読み出した所定サイズのデータを結合したパケットデータを送出するサーバシステムを前提としている。更に、本発明は動画データ、音声データ等の大サイズでかつ連続性を要求されるデータを迅速に送出することを目的とするものであり、そのために受信系と送出系が分離され、受信処理をする受信用プロトコル処理部１０１と、送出処理をする送信用プロトコル処理部１０２とを備えるようにしている。
【００１２】
更に、本発明が対象とするデータはパケットとして送出されるが、そのときのパケットヘッダは毎回ほぼ同じであるので、その雛型をテンプレート１２１、４２１として用意するようにする。
【００１３】
具体的には、上記送信用プロトコル処理部１０２に、パケットデータのヘッダ部のテンプレート１２１、４２１を１つ以上格納する。さらに、端末からの接続要求に基づいて、上記ヘッダ構成情報１０５、４０５を算出するヘッダ算出手段１１０を備えるとともに、格納されているテンプレート１２１、４２１を取得し、上記ヘッダ算出手段１１０より得られるヘッダ構成情報 １０５、４０５にテンプレート１２１、４２１を嵌め込むヘッダ生成手段１２０、４２０と、送信対象のデータを取得し、そのデータを上記所定サイズ単位にフラグメント化するフラグメント処理手段１３０、４３０と、上記ヘッダ生成手段１２０、４２０で生成されたヘッダとフラグメント処理手段１３０、４３０で生成された所定単位のデータとを結合してパケットデータを生成し、そのパケットデータを送出する結合手段１４０、４４０とを備えた構成としたものである。
【００１４】
上記のテンプレート１２１、４２１は通信方式によってその形式が変化するので、各通信方式に対応できるように、ヘッダ生成手段１２０、４２０は複数のテンプレート１２１、４２１を備えるようにする構成とすることができる。また、端末の処理能力によって要求されるヘッダ構成情報１０５、４０５の階層が異なるので、端末１１１、４１１に対応した階層の選択ができるようになっている。
【００１５】
更に、上記の結合手段１４０、４４０は、ヘッダとフラグメント化されたコンテンツを順次出力できようにタイミングを整えたゲート構成としてもよいが、先頭に上記生成されたヘッダを、その後にフラグメント化されたデータを格納できるパケットバッファを用いることができる。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態を図面を用いて説明する。
（実施の形態１）
図１は本発明の１実施形態を示すブロック図であり、図６はそのフロー図を示すものである。以下図１及び図６を用いて本実施形態の構成を動作とともに説明する。またこの例ではＮＦＳプロトコルを用いた通信方式を用いるものとし、以下に説明するように端末からの接続要求（所定時間以上の空白とそれに続く最初の送出要求で示される）があったとき、最初のヘッダ構成情報を生成し、その後に端末からの送出要求があるごとに変更部分を更新したヘッダ構成情報を生成するものとする。
【００１７】
また、本発明に係るサーバシステムでは、通信回線からの受信は受信用プロトコル処理部１０１で行なうとともに、送信は送信用プロトコル処理部１０２で行うようになっている。また、通信回線交換機１０８は端末１１１Χ（Χ：α，β・・）とサーバシステム間の送受信の経路切替えを行なうことができる。
【００１８】
上記の構成において、端末１１１αからサーバシステムに対して特定のファイルを指定して接続要求が出された場合、交換機１０８により、その要求は受信用プロトコル処理部１０１を介して中央制御部１００に転送される。中央制御部１００はヘッダ演算手段１１０を備えており、該ヘッダ演算手段１１０は上記接続要求に含まれるファイルを特定するデータより、パケットデータのヘッダ部分を生成するために必要なヘッダ構成情報１０５たとえば端末１１１αのネットワークアドレスａ、自機のアドレスｂ、コンテンツデータのサイズｘ等通常のパケットデータのヘッダに組み込む情報を生成し、このように生成されたヘッダ構成情報１０５を送信用プロトコル処理部１０２に転送する。
【００１９】
上記のように、ヘッダ構成情報１０５を受け取った送信用プロトコル処理部１０２は、該ヘッダ構成情報１０５をヘッダ生成手段１２０に転送する（図６、ステップＳ１１１）。このヘッダ生成手段１２０はヘッダの形式に対応したヘッダテンプレート１２１を備えており、上記のように転送されてきたヘッダ構成情報１０５の各構成要素を該ヘッダテンプレート１２１に嵌め込む（図６、ステップＳ１１２）。
【００２０】
ここにおいて、上記ヘッダ構成情報１０５が中央制御部１００より送信用プロトコル処理部１０２に転送されるときには、例えば、上記ヘッダ構成情報１０５の各構成要素は所定の順番に転送されるようにし、一方、上記ヘッダテンプレート１２１には、上記構成要素に対応するレジスタが備えられており、上記の順番に対応して各レジスタへの登録を行うようにする。
【００２１】
次いで、端末は上記の接続要求（上記したように所定時間以上の空白と最初の送出要求）によってセッションが確保できた状態で、順次最初のデータをフラグメント処理化する処理に移行する（図６、ステップＳ１２２Ｙ→Ｓ１１７）。
【００２２】
すなわち、上記処理と並行して、中央制御部１００は送出すべきコンテンツの所定量（例えば２５６キロバイト）をハードディスク１６０等の記憶手段から取り出し、ＤＭＡ(Direct Memory Acccss)転送機能等を用いて送信用プロトコル処理部１０２を構成するフラグメント処理手段１３０のコンテンツデータ保持部１３１に収納する。
【００２３】
上記フラグメント処理手段１３０は上記コンテンツデータ保持部１３１とフラグメント部１３２とよりなり、上記のようにコンテンツデータ保持部１３１に格納されたデータはフラグメント部１３２で順次フラグメント処理（パケット単位のサイズ例えば１キロバイト毎８キロバイト分のデータを切り分ける）される。このようにフラグメント処理された結果のヘッダ情報（上記８キロバイトの中の順序等）は上記ヘッダテンプレート１２１に嵌め込まれるとともに、ヘッダ生成手段１２０は該ヘッダ構成情報の嵌め込まれたヘッダに対してチェックサムを演算して、該チェックサムもヘッダテンプレート１２１に嵌め込むようにする（図６、ステップＳ１１７→Ｓ１１８）。
【００２４】
次いで、上記のようにして形成されたヘッダをヘッダとコンテンツデータの結合手段であるパケットバッファ１４０の各パケットデータ対応領域の先頭に収納するとともに、フラグメント化されたコンテンツデータをその後に収納して端末１１１αより要求されたサイズ（上記では８キロバイト分）のパケットデータを形成する（図６、ステップＳ１１９）。
【００２５】
上記端末１１１αよりの接続要求があったときに送信用プロトコル処理部１０２を構成する送出制御手段１５０にもその旨が伝達され、この伝達を受けた送出制御手段１５０は上記パケットバッファ１４０を監視する。そして、該パケットバッファ１４０に上記のように所定量のパケットデータが書き込まれると該送出手段１５０が該パケットデータをネットワークに送出し、該送出が完了した時点で中央制御部１００に送出完了通知が出され、この送出完了通知を受けた中央制御部１００は端末からの次の送出要求を待つことになる（図６、ステップＳ１２０→Ｓ１２１→Ｓ１２２Ｎ→Ｓ１１３）。
【００２６】
以降、端末が該所定サイズのデータを受信する毎に順次、次の送出要求を出すようになっており、この送出要求毎に端末の現在の状況を中央制御部１００に伝送するようになっている。このように端末からの送出要求がある毎に、端末に関する現在のヘッダ構成情報１０５をヘッダ演算手段（中央制御部）１１０で算出する。この現在のヘッダ構成情報１０５は、上記最初の接続要求時に得られたヘッダ構成情報１０５の一部が変更されたものであって、ここでは更新された部分を上記テンプレートに嵌め込むようになっている（図６、ステップＳ１１４Ｙ→Ｓ１１５→Ｓ１１６）。
【００２７】
上記のパケットバッファ１４０への書き込み過程においては８キロバイト分のパケットデータ（例えば８パケット）を同時にパケットバッファに書き込むようにしたが、時間的に十分な余裕がある場合は１パケットずつ順次パケットバッファ１４０に書き込み、所定個数のパケットデータがパケットバッファ１４０上に形成された時点で送出処理を行うようにしてもよい。
【００２８】
尚、上記においてはＮＦＳプロトコルを用いた転送方式のみについて説明したが、端末からの送出要求に従って所定サイズのデータ量（所定個数のパケット）を送出する同種のデータ伝送方式にこの実施態の形態を適用できることはもちろんである。
【００２９】
（実施の形態２）
通信のプロトコルには種々の方式があり、上記ヘッダテンプレート１２１の形式はプロトコルの種類によって異ならせる必要がある。また、端末の接続要求にはプロトコルの種類も含まれ、中央制御部１００は該プロトコルの種類を判別する機能を本来備えている。そこで、図２に示すように端末よりの接続要求があったときにヘッダテンプレート１２１の形式を選択出来るようにすることができる。
【００３０】
送信用プロトコル処理部１０２のヘッダ生成手段１２０に、伝送方式に応じた複数のプロトコルに対応するヘッダテンプレート群１２１ｙ（ｙ、ａ，ｂ・・）を収容する一方、上記の中央制御部１００で判別された端末の伝送形式は選択信号に変換されて、上記ヘッダテンプレート群１２１ｙの前後に配置されたテンプレート選択手段２０３に入力される。これによって、テンプレート選択手段２０３が、端末の指定する伝送形式に応じた上記テンプレートを選択できるようになっている。テンプレート選択手段２０３としては種々の構成を考えることができるが、図２では指定されたテンプレート１２１ｙに対応するビットを有効にするレジスタを用いた構成を示している。
【００３１】
これによって、上記テンプレート群１２１ｙより選択された特定のテンプレート１２１ａに対して、中央制御部１００より得られるヘッダ構成情報１０５を与えることによって、実施の形態１で説明した手順に従いヘッダ構成情報を生成することになる。
【００３２】
（実施の形態３）
一方、サーバシステムと端末との通信規約は通常“階層”と呼ばれる種々の次元でなされ、例えば物理層と称される回線の種類を規定する層、ネットワーク層と称される通信の相手を規定する層、ＴＣＰ／ＵＤＰ層と称される通信が確立したか否かを確認する層、更に、アプリケーション層と称されるファイル管理、ファイル転送処理等を規定する層等がある。
【００３３】
各階層の情報はヘッダに組み込まれてサーバシステム側から端末に送出されることになるが、端末の受信処理プログラムによってはテンプレート１２１に書き込み可能な階層に関するデータを全部必要としないことがある。
【００３４】
従って、上記実施の形態１に説明したテンプレート１２１の形式は同じであっても、どの階層までテンプレートに嵌め込む（残りの階層のデータはコンテンツデータに含めるか、あるいは上位の階層例えばアプリケーション層は使用しない）かは、あるいは端末の持つ処理プログラムによって異なる。
【００３５】
中央制御部１００は端末の要求に含まれる階層を端末よりの接続要求より認識して、指定された階層までのヘッダ構成情報を嵌め込むことができるヘッダテンプレートを選択するようになっている。
【００３６】
そこで、図３に示すようにヘッダ生成手段３０３を設け、この階層指定手段３０３に対して端末より指定された階層を指定できる階層選択信号３０２を入力することによってヘッダテンプレート１２１にどの階層までのパケットデータを書き込むかが決定される。
【００３７】
中央制御部１００のヘッダ演算手段１１０は端末よりの接続要求より得られる情報に基づいてヘッダ構成情報１０５の各要素を演算し、送信用プロトコル処理部１０２のヘッダ生成手段１２０に与えるとともに、上記階層選択信号３０２も与える。これによって、端末に対応した階層が選択され、選択された階層迄（例えば第１から第３階層迄、あるいは第１から第４階層迄等）に対応したヘッダ構成情報をテンプレート１２１に書き込むようにする。
【００３８】
図３においては階層３が指定されているので、階層１から階層３までのヘッダ構成情報１０５がテンプレート１２１に嵌め込まれることになり、実施の形態１で説明した手順に従いヘッダが生成される。図３に示す場合は階層３までが指定されているので、階層４以降のヘッダ情報はコンテンツデータ１０６の一部として扱われる。
【００３９】
また、図２に示すテンプレートの選択と当該図３に示す階層の選択とを組み合わせることができ、この場合は、上記テンプレート選択手段２０３のそれぞれの出力が、当該階層選択手段３０３を介してヘッダ生成手段１２０に入力されるように構成する。もちろんこの場合テンプレート選択信号２０２と階層選択信号３０２を組み合わせた信号を制御部１００より送付する必要がある。
【００４０】
（実施の形態４）
図４は、本発明の別の実施態様を示すブロック図であり、図７、図８はその動作手順を示すフロー図である。
【００４１】
以下図４、及び図７、図８を用いて本実施の形態の構成をその動作とともに説明する。尚、実施の形態１では端末からの要求があった時点でヘッダ演算手段１１０（中央制御部１００）で生成されるヘッダ構成情報１０５はテンプレートに嵌め込まれるヘッダ構成情報の一部であったが、ここでは端末からの接続要求があった時点で後述のヘッダ演算手段４１０がヘッダ構成情報４０５の全部を生成するものとする。
【００４２】
サーバシステムに、受信用プロトコル処理部１０１を設け、通信回線からの受信のみを担当させるようにし、また送信用プロトコル処理部１０２を設けて送信処理を担当させるようにした基本構成は図１に示す実施の形態と同じである。
【００４３】
通信回線交換機１０８は複数の端末４１１Χ（Χ：α，β…）とサーバシステム間の送受信経路の切替えを行うことができるものとし、またサーバシステムは、動画像や音声といった長大かつ連続性、定常性のあるデータを送出するための、マルチメディアサーバシステムであるとする。
【００４４】
ここにおいて、端末４１１αからサーバシステムに対してあるコンテンツの送信要求が出された場合、交換機１０８により、その要求は受信用プロトコル処理部１０１を介して中央制御部１００に伝達される。
【００４５】
中央制御部１００は、この送信要求を受けて端末４１１αに向けて送出すべきパケットデータを生成するための元情報（ヘッダ構成情報、実データ）を送る旨を送信用プロトコル処理部１０２に通知すると、該送信用プロトコル処理部１０２のヘッダ生成手段４２０とフラグメント処理手段４３０が起動する。
【００４６】
この状態で、中央制御部１００のヘッダ演算手段４１０がヘッダ構成情報４０５を演算して送信用プロトコル処理部１０２のヘッダ生成手段４２０に該ヘッダ構成情報４０５を渡すと、該ヘッダ生成手段４２０は所定のヘッダテンプレート４２１に上記ヘッダ構成情報４０５に嵌め込むことになる（図７、ステップＳ２１１→Ｓ２１２）。
【００４７】
この状態で送信用プロトコル処理部１０２の送出手段４５０は中央制御部１００からの送出要求を待つことになる（図７、ステップＳ２１３）。
後述するように、上記の処理と並行して、ハードディスク４６０からフラグメント処理手段４３０に所定サイズ（例えば２５６キロバイト）のコンテンツデータの先読みがなされ、該先読みされたコンテンツデータとヘッダが結合手段としてのパケットバッファ４４０の各１パケット相当領域に書き込まれる（図８、ステップＳ２２１→Ｓ２２２）。
【００４８】
上記コンテンツデータとヘッダのパケットバッファ４４０への書き込みが完了すると、中央制御部１００は送信プロトコル処理手段１０２の送出手段４５０に送出要求（送信トリガ）をだし、ネットワークにパケットデータを送出する（図７、ステップＳ２１３→Ｓ２１４Ｙ→Ｓ１２５）。ここで、中央制御部１００よりの送出要求は所定サイズ（例えば８キロバイト）ごとなされるので要求されたサイズの送出が完了すると、上記送出制御手段４５０は中央制御部１００に送出が完了した旨の通知をし、該中央制御部１００よりの新たな送出要求を待つ（図７、ステップＳ２１６Ｙ→Ｓ２１７→Ｓ２１３）。
【００４９】
一方、上記ヘッダテンプレート４２１へのヘッダ構成情報４０５の嵌め込みが完了すると、中央制御部１００の指示に基づいて、該ヘッダテンプレート４２１の内容をパケットバッファ４４０に確保された領域４４５Ψ（Ψ：α、β・・）にコピーをする（図８、ステップＳ２２１）。上記パケットバッファ４４０上の各領域４４５Ψは複数の端末４１１Χにそれぞれ対応しているが、ここではデータ送出を要求した端末４１１αが領域４４５αに対応しているものとし、また、中央制御部１００は上記端末４１１Χと領域４４５Ψとの関係を予め認識しているものとする。
【００５０】
このとき、該領域４４５αは更に１パケット相当の小領域Ａｓに分割され、各小領域Ａｓの先頭に上記のヘッダテンプレート４２１の内容がコピーされる。
このコピーが完了するとフラグメント処理手段４３０はハードディスク４６０からコンテンツデータを読み出し、１パケット相当サイズにフラグメントして、該フラグメント化されたデータｆを各小領域Ａｓの上記先に書き込まれたヘッダｈの後に書き込む（図８、ステップＳ２２２→Ｓ２２３）。
【００５１】
これによって、１パケット相当のサイズのデータが最初の小領域Ａｓに書き込まれると、次の小領域Ａｓの先頭部分に上記ヘッダテンプレート４２１の内容がコピーされ、該ヘッダの後に、次のフラグメント化されたデータが書き込まれる（図８、ステップＳ２２４→Ｓ２２１・・）。この手順を繰り返して該パケットバッファ４４０に書き込まれたデータ量が、上記所定の先読み量（例えば２５６キロバイト）になったとき、上記バッファ４４０への書き込み手順は一時中止され、次の先読み指示を待つことになる（図８、ステップＳ２２５）。
【００５２】
この場合、上記ステップＳ２１５に示すように、パケットバッファ４４０から端末４１１αへの送出も並行して行われており、この送出処理によるパケットバッファ４４０の空き容量の増加は送出手段４５０によって常に監視されており、この空き容量が所定値以上になると、次の先読み指示が出されることになる（図８、ステップＳ２２５）。
【００５３】
ここで、動画像や音声といった連続性、定常性のあるデータを扱う場合には上記送信プロトコル処理部１０２の上記ヘッダテンプレート４２１で生成されたヘッダはパケット番号を除いてほぼ同じと考えてよいので、上記のように各１パケットサイズのデータに対してヘッダを与える際に該ヘッダのパケット番号を順次インクリメントする他、若干の公知の処理をするだけで足りる。従って、一回のヘッダの生成で複数の送信プロトコル処理に使い回しが効くことになる。
【００５４】
上記したように中央制御部１００は、送信専用ポートからパケットデータを送出すべきタイミング（図７、ステップＳ２１４）を見図らって送出要求を送出制御手段４５０に与える。ここで、１個のコンテンツデータのサイズを１キロバイト、送出要求の発行回数を１００ミリ秒おきとすると、毎秒１メガバイトの速度でコンテンツデータを端末４１１αに配送することが可能である。従って、上記のようにパケットバッファ４４０に収納した２５６キロバイトのコンテンツデータを使い果たす前に、続きのコンテンツデータを用意（別のパケットバッファに先読みする）しておけば、端末４１１αに対し途切れなく毎秒１メガバイトの速度でコンテンツデータを配送することが可能となる。
【００５５】
上記の構成のプロトコル処理部１０２は複数の端末４１１Χ（Χ：α，β・・）に対応することが可能となっている。すなわち、上記のようにパケットバッファ４４０は端末毎に対応した領域４４５Ψ（Ψ：α、β・・）を備えており、一方、中央制御部１００は各端末４１１Χと各領域４４５Ψの関係を予め認識している。また、中央制御部１００は各端末４１１Χよりの接続要求を受けて該要求を出した端末４１１Χを認識する機能をも備えている。
【００５６】
上記において、ヘッダテンプレート４２１の内容をコピーする対象となる領域４４５Ψは上記ヘッダ構成情報４０５とともにヘッダ生成手段４２０に予め通知される。これによって、ヘッダ生成手段４２０は図５に示すように、該通知された領域４４５Ψに対応するヘッダテンプレート４２１Φ（Φ：α，β・・）を生成するとともに、その内容を対応する領域４４５Ψの小領域Ａｓにコピーすることになる。また、フラグメント化されたデータをコピーする対象となる領域４４５Ψも、上記ハードディスク４６０から渡されるデータとともにフラグメント処理手段４３０は予め通知され、フラグメント処理手段４３０は該通知された領域４４５Ψにフラグメント化されたデータを書き込むことになる。
【００５７】
更に、上記送出要求に端末４１１Χを識別する識別子を含ませると、上記パケットバッファ４４０の前段に設けた領域選択手段４４１が、送出されるべき領域４４５Ψを選択して、該領域４４５Ψのパケットデータを送出することになる。
【００５８】
（実施の形態５）
データの転送モードには上記実施の形態１のように端末の送出要求がある毎に所定サイズ（例えば８キロバイト毎）転送するモード、あるいは、実施の形態４のように、中央制御部１００より所定のタイミングごとに出される送出指示に基づいて所定サイズ毎のデータを送出するモード、更に、端末の接続要求があったときに、ハードディスク等から読み出されたデータを端末に対して順次垂れ流すモードとがある。
【００５９】
図９、図１０は上記垂れ流しモードのサーバシステム側での送出手順を示すフロー図である。サーバシステム自体の構成は図４に示した構成と同じであるので、図４と、図９、図１０を用いて以下その構成を動作とともに説明する。尚、この例でもヘッダ構成情報４０５は端末４１１Χからの接続要求があった時点で中央制御部１００のヘッダ演算手段４１０がヘッダ構成情報４０５の全部を生成するものとする。
【００６０】
サーバシステムに、受信用プロトコル処理部１０１を設け、通信回線からの受信のみを担当させるようにし、一方送信プロトコル処理部１０２を設けて送信処理を担当させるようにした基本構成は図１に示す実施の形態と同じである。
【００６１】
通信回線交換機１０８は複数の端末４１１Χとサーバシステム間の送受信経路の切替えを行うことができるものとし、またサーバシステムは、動画像や音声といった長大かつ連続性、定常性のあるデータを送出するためのマルチメディエサーバシステムであるとする。また、端末４１１ｃは垂れ流しデータをサーバシステム１１１に対して要求する端末であるとする。
【００６２】
中央制御部１００が、端末４１１ｃよりの接続要求を受けて該端末４１１ｃに向けて送出すべきパケットデータを生成するための元情報（ヘッダ構成情報、実データ）を送る旨を送信用プロトコル処理部１０２に通知すると、該送信用プロトコル処理部１０２のヘッダ生成手段４２０とフラグメント処理手段４３０及び送出制御手段５５０が起動する。
【００６３】
その後に中央制御部１００が、パケットデータのヘッダ構成情報４０５の全情報を送信用プロトコル処理部１０２に渡すと、該送信用プロトコル処理部１０２のヘッダ生成手段４２０は受け取ったヘッダ構成情報４０５をヘッダテンプレート４２１に嵌め込む（図９、ステップＳ３１１→Ｓ３１２）。この状態で送信用プロトコル処理部１０２の送出制御手段５５０は上記パケットバッファ４４０にデータが蓄積されているか否かを判断し（図９、ステップＳ３１４）、データが蓄積されている場合にネットワークにデータを送出する。
【００６４】
また、データが蓄積されていない場合にはネットワークには中央制御部１００より送出終了命令が出ない限りデータが蓄積されるまで待つことになる（図９、ステップＳ３１４Ｎ→Ｓ３１３Ｎの繰り返し）。すなわち、この場合はパケットバッファ４４０に所定量のデータが蓄積されている限り、端末の要求や中央制御部１００の指示を待つことなく自動的にデータを送出することになる。
【００６５】
ここで、パケットバッファ４４０の所定領域４４５γが上記端末４１１ｃに対応しているものとする。
実施の形態４で示した中央制御部１００よりの送信要求（トリガードモード）での動作と同様に、上記の処理と並行して上記のステップＳ３１２の手順でヘッダ生成手段４２０が生成したヘッダを、パケットバッファ４４０の１パケットサイズに対応する最初の小領域Ａｓの先頭に書き込む（図１０、ステップＳ３２１）。更に、ハードディスク４６０からコンテンツデータを読み出し、１パケットサイズにフラグメント化し、上記実施の形態４で説明したように最初の小領域Ａｓのヘッダｈの後に該フラグメント化されたコンテンツデータｆを書き込む（図１０、ステップＳ３２２→Ｓ３２３Ｎの繰り返し）。
【００６６】
この手順はハードディスク４６０からの読み出し量が一定のサイズ（例えば２５６キロバイト）になるまで継続され（図１０、ステップＳ３２４Ｎ→Ｓ３２１の繰り返し）、読み出し量が一定のサイズになったときに中央制御部１００よりの次の読み出し指示を待つことになる（図１０、ステップＳ３２５）。
【００６７】
尚、この実施の形態においても、複数の端末４１１Χよりの送出要求の同時処理が可能なことは勿論である。
すなわち、パケットデータ形成時に端末４１１Χとパケットバッファ４４０の各領域４４５Ψとの関係は中央制御部１００が予め認識しており、ヘッダテンプレートの内容をコピーする対象となる領域４４５Ψは上記ヘッダ構成情報４０５とともにヘッダ生成手段４２０に中央制御部１００より通知される。これによってヘッダ生成手段４２０は、図５に示すように端末４１１Χに対応したテンプレート４２１Φを生成するとともに、該テンプレート４２１Φの内容を対応する領域にコピーする。また、フラグメント化されたデータをコピーする対象となる領域４４５Ψも上記ハードディスク４６０から渡されるデータとともにフラグメント処理手段４３０に通知され、該フラグメント処理手段４３０は通知を受けた領域にフラグメント化されたデータを書き込むことになる。
【００６８】
また、パケットデータ読み出し時には送出制御手段５５０が上記中央制御部１００より読み出し指示があったときに該指示信号に含まれる識別子を用いて、読み出す領域を判別することになる。
【００６９】
（その他）
上記実施の態様１においても、実施の態様４、実施の態様５と同様、テンプレート生成手段１２０で生成されるテンプレート１２１、および、結合手段としてのパケットバッファ１４０は、複数の各端末１１１Χに対応できるようになっていることはもちろんである。
【００７０】
端末に対する送出モードは各端末の持つ処理アプリケーションとサーバシステム側の能力によって決定される。従って１のサーバシステムに対して異なる送出モードを要求する複数の端末からの要求がある場合がある。この場合各モードに対応するヘッダ生成手段１２０、４２０、フラグメント処理手段１３０、４３０、送出制御手段１５０、４５０、５５０を備えるとともに、パケットバッファ１４０、４４０に該複数端末分の領域を設けるようにする。
【００７１】
また、以上の各実施の形態において結合手段１４０、４４０にバッファを用いたが、ヘッダ形成手段１２０、４２０とフラグメント処理手段１３０、４３０の出力のタイミングを調整して出力するゲート回路を用いることも可能である。
【００７２】
【発明の効果】
以上のように本発明によれば、通信回線にパケットデータを送出する際に、そのパケットデータの生成に関わる処理の負荷を軽減してシステムの処理高速化することが可能となり、また、動画像や音声といった連続性を持たせる必要がありしかもリアルタイム性を要求されるデータの送出を行なう際に、その送出レートを簡易かつ高精度に制御することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態１におけるサーバシステムの構成図である。
【図２】本発明の実施の形態２におけるサーバシステムの構成図である。
【図３】本発明の実施の形態３におけるサーバシステムの構成図である。
【図４】本発明の実施の形態４におけるサーバシステムの構成図である。
【図５】本発明の別の実施の形態におけるテンプレート生成手段の構成図である。
【図６】実施の形態１の動作手順を示すフロー図である。
【図７】実施の形態４の動作手順を示すフロー図である。
【図８】実施の形態４の動作手順を示すフロー図である。
【図９】実施の形態５の動作手順を示すフロー図である。
【図１０】実施の形態５の動作手順を示すフロー図である。
【図１１】従来のサーバシステムを示す概念図である。
【符号の説明】
１０１          受信用プロトコル処理部
１０２          送信用プロトコル処理部
１０５、４０５  ヘッダ構成情報
１１０          ヘッダ算出手段
１２０、４２０  ヘッダ生成手段
１２１、４２１  テンプレート
１３０、４３０  フラグメント処理手段
１４０、４４０  結合手段（パケットバッファ）
１５０、４５０  送出制御手段
１６０、４６０  記憶装置
【図１】
0003714441.tif 000002
【図２】
0003714441.tif 000003
【図３】
0003714441.tif 000004
【図４】
0003714441.tif 000005
【図５】
0003714441.tif 000006
【図６】
0003714441.tif 000007
【図７】
0003714441.tif 000008
【図８】
0003714441.tif 000009
【図９】
0003714441.tif 000010
【図１０】
0003714441.tif 000011
【図１１】
0003714441.tif 000012