JP3696995B2 - 通信方法及びその装置と該装置を備えた通信システム - Google Patents

通信方法及びその装置と該装置を備えた通信システム Download PDF

Info

Publication number
JP3696995B2
JP3696995B2 JP31989596A JP31989596A JP3696995B2 JP 3696995 B2 JP3696995 B2 JP 3696995B2 JP 31989596 A JP31989596 A JP 31989596A JP 31989596 A JP31989596 A JP 31989596A JP 3696995 B2 JP3696995 B2 JP 3696995B2
Authority
JP
Japan
Prior art keywords
data
delivery
request
information source
client
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
JP31989596A
Other languages
English (en)
Other versions
JPH10164081A (ja
Inventor
宏明 佐藤
茂夫 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP31989596A priority Critical patent/JP3696995B2/ja
Priority to US08/979,252 priority patent/US6748446B2/en
Publication of JPH10164081A publication Critical patent/JPH10164081A/ja
Application granted granted Critical
Publication of JP3696995B2 publication Critical patent/JP3696995B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、インターネットなどをネットワークを介して映像信号等の伝送サービスを行うために情報源からクライアントへの送信データを中継して配送する通信方法及びその装置と該装置を備えた通信システムに関するものである。
【0002】
【従来の技術】
近年、World Wide Web(以降WWW)として知られる情報システムが急速に広く一般に使用されるようになってきている。このWWWでは、WWWサーバと呼ばれるデータサーバからインターネットなどのネットワークを介して多数のクライアントにクライアント・データを配送している。また、ローカルネットなどに多くのクライアントがあり、同じデータを複数のクライアントが参照した場合に、そのクライアントデータを保持することによりWWWサーバへのアクセスを減少させることができる機能を持つプロキシ・サーバ(以下、プロキシ)をネットワーク上に配置することが行われていた。
【0003】
しかしながら、このように用いられるプロキシーは、WWW等で用いるテキストデータなど1バイトの間違いもゆるされず、かつ、完結したデータが対象であった。これに対し、最近増えてきている映像や音声などのマルチメディアデータの場合は、そのデータそのものは完結しておらず、またデータの伝送時に多少のデータの誤りが発生しても、それが致命的な誤りとならないという特性がある。また、その場で撮像あるいは採音したライブ映像もしくはライブ音声をネットワーク等を介して伝送して放送する場合には、その様な映像や音声データは次々と更新され続けるため、完結したデータの形式で保持するとことは不可能であり、またそれ程意味の無いものである。
【0004】
このような状況に鑑みると、これまで用いられてきたプロキシーは、マルチメディアライブ放送のような用途に用いるには不適当であることがわかる。ここで不適当とされる要因は主にデータの蓄積に係るもので、このデータの蓄積に関する機能をなくし、その時点で得られるデータを複数のクライアントに配送する配送サーバもしくは中継サーバと呼ばれるシステムを構築すれば、マルチメディアライブ放送においても利用可能である。
【0005】
最近、映像や音声などマルチメディアデータの放送をインターネットなどを介して行うシステムが出現し始めているが、上述した状況から、これらのうち、いくつかは、情報源から得られたその時点のデータを、より多数のクライアントに分配・配送する配送サーバを介在させることで同時視聴可能な人数を増やしいる。
【0006】
一方、このようなインターネットなどを介したマルチメディア配送サービスを行う場合、各クライアントはどのような情報源(発信局)にアクセス可能であるかを知るサービスを必要とする。現在のところ、このようなサービスの情報は、WWWサーバ内のホームページを構成するファイルに静的に記述され、各クライアントはそれを参照することにより、所望の情報源を選択できる。
【0007】
このように配送サーバを配した場合は、配送サーバが既に中継・配送しているデータをアクセスしたいクライアントが発生しても、そのために情報源から新たにデータを提供しなくてもその配送サーバよりデータが供給できるため、情報源よりネットワークに供給されるデータ量を増やす必要がない。このため、情報のサービスに迅速に対応でき、配送されるデータの質が良い等の利点がある。またクライアントから見て配送サーバよりも上流に位置している情報源からのデータを、より近傍でアクセス状況の良い、即ち良好な映像・音声の得られるサイトでデータを獲得したいというのも自然な欲求である。
【0008】
【発明が解決しようとする課題】
しかしながら、従来のWWWのホームページによるディレクトリサービスだけでは、このようなクライアントに近い配送サーバの状況を加味した情報を得ることができなかった。また、その情報源から得られる映像や音声がライブである場合には、その情報源より提供される映像・音声は刻々と変化するものであり、一般的な静的データのように、単に記述されたファイルを参照するよう場合とはその操作を異ならせるのが望ましい。
【0009】
本発明は上記従来例に鑑みてなされたもので、情報源からのデータの一部を蓄積しておき、その蓄積データをクライアントからの指示に応じて、そのクライアントに送信する通信方法及びその装置と該装置を備えた通信システムを提供することを目的とする。
【0010】
また本発明の目的は、クライアントからの要求に応じて、その要求された情報源にデータを要請し、その要請に応じて送信される情報源よりのデータの少なくとも一部を蓄積し、その蓄積されているデータを所定量送信できる通信方法及びその装置と該装置を備えた通信システムを提供することにある。
【0011】
また本発明の目的は、予め設定された間隔をおいて定期的に情報源にデータを要求して、そのデータの一部を蓄積しておき、その蓄積したデータの適宜の送信を可能にした通信方法及びその装置と該装置を備えた通信システムを提供することにある。
【0012】
【課題を解決するための手段】
上記目的を達成するために本発明の通信装置は以下のような構成を備える。即ち、
情報源とクライアントとの間にネットワークを介して介在する通信装置であって、
少なくとも情報源、データの取り込み間隔及び取り込み長さに関する情報を含む設定情報に応じて、当該設定情報で指定された情報源から連続して提供されるデータの一部を蓄積する蓄積手段と、
前記クライアントからの配送要求に応じて前記蓄積手段により蓄積したデータを前記クライアントに配送する配送手段と、
を有することを特徴とする。
【0013】
上記目的を達成するために本発明の通信方法は以下のような工程を備える。即ち、
情報源とクライアントとの間にネットワークを介して介在する通信装置における通信方法であって、
少なくとも情報源、データの取り込み間隔及び取り込み長さに関する情報を含む設定情報に応じて、当該設定情報で指定された情報源から連続して提供されるデータの一部を蓄積する蓄積工程と、
前記クライアントからの配送要求に応じて前記蓄積工程で蓄積したデータを前記クライアントに配送する配送工程と、
を有することを特徴とする。
【0014】
上記目的を達成するために本発明の通信システムは以下のような構成を備える。即ち、
ネットワークを介して情報源とクライアントとの間に中継サーバを備える通信システムであって、
前記中継サーバは、
少なくとも情報源、データの取り込み間隔及び取り込み長さに関する情報を含む設定情報に応じて、当該設定情報で指定された情報源から連続して提供されるデータの一部を蓄積する蓄積手段と、
前記クライアントからの配送要求に応じて前記蓄積手段により蓄積したデータを前記クライアントに配送する配送手段とを有し、
前記クライアントは前記中継サーバに前記情報源との接続を要求し、前記中継サーバは前記クライアントよりの指示に応じて前記情報源と接続して前記情報源よりのデータの一部を前記蓄積手段に蓄積し、前記蓄積手段により蓄積したデータを前記クライアントに送信することを特徴とする。
【0015】
【発明の実施の形態】
以下、添付図面を参照して本発明の好適な実施の形態を詳細に説明する。
【0016】
(実施の形態1)
図1は、本発明の実施の形態の配送サーバ(中継サーバ)100の機能構成を示すブロック図である。尚、これらの各部は、ハードウェアで構成されてもソフトウェアにより実現されても良いが、本実施の形態ではソフトウェアにより実現された場合で説明する。
【0017】
図1において、101はネットワーク通信部で、ネットワーク110を介して情報源である送信元からのデータを受けつける入力処理部102と、ネットワーク(ネットワーク110と同じでも別でも良いが、ここでは説明上別のネットワークとする)111を介してクライアント側マシンへデータを送信する出力処理部103とを含んでいる。104は配送処理部で、ネットワーク通信部101を制御している。105は要求受付け部で、下流に位置しているクライアント側マシンからの各種要求を受け付けている。106はデータ蓄積部で、配送処理部104を介して配送されるデータの一部を蓄積している。107は配送管理部で、どのデータを受付けて、どこへ配送するかを管理している。108は蓄積管理部で、ネットワーク110を介して受信したデータの内、データのどの部分をデータ蓄積部106に蓄積するかを管理している。109は要求発信部で、ネットワーク110を介して上流(情報元)のマシンへ各種の要求を発行する。
【0018】
以上の構成において、要求受付け部105は、ネットワーク111を介して下流側のクライアントマシンからの要求(配送開始要求、配送終了要求など)を受け付けると、これを配送管理部107へ通達する。これにより配送管理部107は、自身の内部管理情報を更新すると共に、新たなデータが必要ならば要求発信部109に情報元へのデータ要求を要請し、更に、蓄積データの追加・変更などが必要な場合には蓄積管理部108へ変更を通達する。また、配送管理部107は、必要な配送情報を配送処理部104に設定する。
【0019】
一方、要求発信部109から情報元に発行された要求が上流側に位置している情報源サーバもしくは配送サーバに受け入れられると、これらの上流側のサーバは、この配送サーバ100へのデータ送信を開始する。これにより入力処理部102は、ネットワーク110を介して送られてきたデータを受け取って、配送処理部104にその受信データを供給する。配送処理部104は、配送管理部107よりの指示設定に従って、出力処理部103へ下流側へのデータ配送を指示すると共に、蓄積管理部108から配送管理部107に設定される情報に従って、データ蓄積部106に受け取ったデータを出力して蓄積を指示する。ここで、蓄積管理部108の設定には、間欠的な蓄積動作および短期間のサンプリングによる蓄積などがあり、これにより、データ蓄積部106は配送サーバ100が中継・配送する各情報源からのデータストリームの一部を取り出して蓄積することができる。
【0020】
要求受け付け部105は、下流マシン(クライアント)からの要求として、「ダイジェスト配送」を受け取ると、これを配送管理部107へ通達する。これにより配送管理部107は、配送管理部107自身の内部管理情報を更新すると共に、必要な配送情報を配送処理部104に設定する。即ち、ダイジェスト配送の設定が行われている場合は、配送処理部104は上流からデータを受け取り下流へ配送する処理に加えて、データ蓄積部106に蓄積されているデータを読み出し、「ダイジェスト配送」を要求を発した下流マシンへ配送する。
【0021】
図2は、本発明の実施の形態の配送サーバを含む映像送信システムの構成を示す図で、前述の図1と共通する部分は同じ番号で示している。
【0022】
100−1,100−2のそれぞれは図1に示す配送サーバ、202−1〜200−3のそれぞれはカメラサーバを示し、撮像するためのビデオカメラや音収集用のマイクロフォン等を備え、そのビデオカメラやマイクロフォンにより撮像及び採音した映像・音データ(以下、単に映像データ)をネットワーク110に発信している。203−1〜203−3のそれぞれはビューワ(クライアント)を示し、ネットワーク110に発信され、配送サーバ100−2を介して受信した映像データを観察している。この映像データは、カメラサーバ202から発信され、インターネット110を介して配送サーバ100に伝達され、配送サーバ100は更にネットワーク111を介してこれを1つ或は複数のビューワ203へ分配・再配送する。
【0023】
図3は、本発明の実施の他の形態の映像送信システムの構成を示す概念図で、前述の図面と共通する部分は同じ番号で示し、その説明を省略する。
【0024】
図3の構成によれば、カメラサーバ202より発信された映像データは、インターネット110を介して配送サーバ100−3,100−4に伝達され、更に配送サーバ100−4はこれを配送サーバ100−1,100−2を含む1つあるいは複数の配送サーバ、もしくは直接ビューワ203に分配・再配送する。ここで配送サーバ100−2は、これを更に1つあるいは複数のビューワへ分配・再配送する。本実施の形態によれば、このような複数の配送サーバをカスケード接続した形態を含む構成が可能である。尚、以上の構成において、ネットワーク110に接続される配送サーバ、カメラサーバ及びビューワの数、及び配送サーバに接続されるビューワの数は本実施の形態に限定されるものでない。
【0025】
図4は本実施の形態の配送サーバ100の構成を示すブロック図である。
【0026】
図4において、301は配送サーバ全体の動作を制御するCPU、302は主記憶で、CPU301により実行されるプログラムを記憶するプログラムエリア310(二次記憶装置303よりダウンロードしたプログラムを記憶しても良い)や後述する各種テーブル311〜316等を備えている。303はハードディスク等の二次記憶装置で、映像蓄積部321を有し、前述のデータ蓄積部106としても機能するとともに、後述する蓄積管理部設定ファイル320、更にはCPU301により実行される制御プログラムなどをも記憶している。304はインターネット110との間での通信を制御するネットワーク・インターフェース(I/F)、305はビューワ203と接続しているネットワークとの間の通信を制御するネットワーク・インターフェースである。306はタイマで、CPU301の指示に応じて計時を行い、所定時間が経過するとCPU301にタイマイベントを発生させる。
【0027】
図5は、本実施の形態の配送サーバ100における起動時の初期化処理を示すフローチャートで、この処理を実行する制御プログラムは主記憶302に記憶されてCPU301の制御の下に実行される。
【0028】
まずステップS1で、二次記憶装置303に記憶された蓄積管理部設定ファイル320というデータ蓄積操作に関する設定情報を含むファイルを読み込む。次にステップS2に進み、そのファイル情報を主記憶302の蓄積設定テーブル311に書き込み。次にステップS3で、配送管理テーブル312を初期化し、ステップS4では、蓄積管理テーブル313を初期化し、そしてステップS5で、自律蓄積のためのタイマ306の設定を行う。
【0029】
図6は、蓄積設定テーブル311の内容を説明するための図である。
【0030】
601は、蓄積するデータストリームの情報源を指定するエリアで、その情報源の(アドレス、ポート番号、ストリーム番号)がセットされている。602は、間欠的に蓄積動作を行う場合のアクセス(サンプリング)間隔(単位はフレーム数又は秒)がセットされている。603は、各取り込み時の取り込み長さ(フレーム数又は秒)を示す。604は、下流(ビューワ)からの要求がなくても自律的に上流(情報源)へのデータ配送要求を出力するか否かを表すフラグなどの情報を示し、「True」は、自律的に上流(情報源)へのデータ配送要求を出力することを示し、「False」はその逆を示す。ここで、蓄積ストリーム601の値が“0”であれば、初期設定時には情報源が特定されておらず、下流(ビューワ)からの要求に応じて初めて情報源が設定されることを示している。
【0031】
図7は、配送管理テーブル312の内容を説明するための図である。
【0032】
701は、情報源から配送される入力データストリーム(配送ストリーム)の番号(ID)を示し、702は、その配送先(配送サーバ或はビューワ等のクライアント)のIDを示す。703は、情報源との接続開始からの経過時間(フレーム数又は秒)を示す接続時間カウンタ、704は、配送先からのダイジェスト配送要求の有無を示すフラグで、「True」はダイジェスト配送要求があることを示している。705は、ダイジェストの配送開始からの経過データ数のカウンタ(以下、ダイジェストカウンタで、数字に単位はフレーム数又は秒)である。ここで、配送ストリームIDが“−1”である場合は、配送ストリームが指定されていない、即ち、蓄積データを出力するダイジェスト要求のみであることを示す。
【0033】
図8は、蓄積管理テーブル313の内容を説明するための図である。
【0034】
801は蓄積するストリーム番号、802は蓄積する周期(フレーム数又は秒)、803は取り込み長さ(フレーム数又は秒)、804は蓄積開始からの経過データ数カウンタ(以下、蓄積カウンタで、数字の単位はフレーム数又は秒)を示す。805は、取り込み中か否かを示すフラグで、「True」は取り込み中を示し、「False」は取り込み中でないことを示す。806は、自律蓄積モードで起動されたか否かを示し、「True」は自律モードによる起動を示し、「False」はそうでないモードを示す。尚、二次記憶装置303に記憶されている蓄積設定ファイル320が動作中に変更されない固定的な設定ファイルであるのに対して、この蓄積管理テーブル313は動的に変更される蓄積指示状態を記憶するものである。
【0035】
図9は、ストリーム管理テーブル314の内容を説明するための図である。
【0036】
901はストリームID番号、902は通信先のアドレス、903はポート番号、904はその指定ストリーム番号を示している。
【0037】
再び図5のフローチャートを参照して初期化処理を説明する。まずステップS1で、二次記憶装置303に記憶されている蓄積管理部設定ファイル320を読み込む。この蓄積管理部設定ファイル320には、蓄積するデータストリームの情報源を指定するための蓄積ストリーム601(アドレス、ポート番号、ストリーム番号)と、間欠動作する場合のアクセス間隔602、個々の取り込みの長さ603、下流からの要求がなくても自律的に上流へのデータ配送要求を出すか否かを示した自律蓄積フラグ604などの情報が記述されている。次いでステップS2で、その情報を主記憶302の蓄積設定テーブル311に書き込む。次にステップS3に進み、配送管理テーブル312及びストリーム管理テーブル314をクリアし、ステップS4で蓄積管理テーブル313をクリアする。そして最後にステップS5で、蓄積設定ファイル320の内容を参照し、自律蓄積フラグ604が「True」となっている蓄積ストリームに対して、順に適当な時間間隔(例えば60秒)でタイマ306を設定し、タイマ起動キューリストに(時刻、蓄積設定テーブルの番号(No)で示される蓄積ナンバ)を追加する。
【0038】
図10は、本実施の形態の配送サーバ100におけるメイン処理を示すフローチャートで、この処理を実行するプログラムはプログラムメモリ310に記憶されている。
【0039】
本実施の形態の配送サーバ100は、起動時に前述の初期化処理を実施後、このメインループを繰り返し、ステップS11での要求判定、ステップS13でのデータ到着判定、ステップS15での自律蓄積タイマー判定、ステップS17でのダイジェスト送信タイマー判定の4種類のイベントに対して、それぞれ対応する処理、ステップS12の受け付け処理、ステップS14の配送処理、ステップS16の自律蓄積処理、ステップS18でダイジェスト送信処理を行う。
【0040】
まずステップS11で、要求受け付け部105により下流からの要求があるかを判定し、要求があればステップS12に進み、その要求に対する受け付け処理を行う。一方、ステップS11で下流側よりの要求がないときはステップS13に進み、ネットワーク110を介して入力処理部102にデータが到着したかを判定する。データが到着した時はステップS14に進み、その到着したデータを配送処理部104の制御の下に下流側のクライアントに配送するとともに、必要に応じてデータ蓄積部106に蓄積する。一方、ステップS13でデータが到着していない時はステップS15に進み、自律蓄積タイマによるイベントが発生したかを判定し、タイマイベントが発生した時はステップS16に進み、自律蓄積処理を行う。またステップS15でタイマイベントが発生していない時はステップS17に進み、ダイジェスト配送タイマイベントが発生したかを判定し、そのタイマイベントが発生していればステップS18に進み、ダイジェスト送信処理を実行する。
【0041】
尚、上述の各処理ステップS12,S14,S16及びS18は、以下、フローチャートを参照して詳しく説明する。
【0042】
図11は、図10のステップS12の受付け処理を示すフローチャートである。
【0043】
まずステップS21で、要求受付け部105により下流側のクライアントよりの要求があるかどうかを判断し、要求があればステップS22に進み、その要求が接続要求であるか否かを判断する。接続要求であればステップS23に進み、配送管理部107、配送処理部104及びネットワーク通信部101の処理により、情報源のカメラサーバとの接続処理を実行する。この接続処理は、図12のフローチャートを参照して詳しく後述する。
【0044】
またステップS22で接続要求でない時はステップS24に進み、終了要求かどうかをみる。終了要求であればステップS25に進み、同じく配送管理部107、配送処理部104及びネットワーク通信部101の処理により、ネットワーク110を介してのカメラサーバとの通信の切断処理を実行する。尚、この処理は図14のフローチャートを参照して詳しく後述する。
【0045】
またステップS24で終了要求でない時はステップS26に進み、ダイジェスト要求かどうかを判断し、ダイジェスト要求の時はステップS27に進み、データ蓄積部106に蓄積されている映像信号を送出するダイジェスト処理を実行する。この処理の詳細は図15のフローチャートを参照して後述する。またステップS26によりいずれの要求でもない時はステップS28に進み、エラー処理を実行する。尚、ステップS21で、要求受付け部105が受け取る要求内容としては以下のようなものがある。
【0046】
<接続要求>
▲1▼<Connect camera1.canon.co.jp:60001:1 #1 150.64.33.44:8901>
<終了(切断)要求>
▲2▼<Disconnect #1 150.64.33.44:8901>
<ダイジェスト要求>
▲3▼<Directory 0 150.64.33.44:8901>
それぞれ、▲1▼は情報源[camera1.canon.co.jp:60001:1]からのデータを配送先アドレス[150.64.33.44:8901]へ「#1」として配送するための接続要求を示し、▲2▼は配送先[150.64.33.44:8901]の「#1」接続の終了要求、▲3▼はダイジェスト(“0”は0番目を示す)の配送先[150.64.33.44:8901]への配送要求を示している。
【0047】
図12は、図11のステップS23の接続処理の内容を示したフローチャートである。
【0048】
ステップS31で、配送管理部107は、要求受け付け部105が受け取った要求、例えば、前述の<Connect 150.31.11.09:65011:1 #1150.64.33.44:8901>に対して、指定された接続先情報源(この場合は[150.31.11.09:65011:1](これはアドレス150.31.11.09、ポート番号65011、ストリーム番号1を示すとする))に対応する配送ストリームがあるかを、図9のストリーム管理テーブル314を参照して判定する。既に接続している場合はステップS35に進み、接続していない場合にはステップS32に進む。ステップS32では、接続先である情報源への接続要求を出すように要求発信部109に指示する。これにより上流のカメラサーバ或は配送サーバへの接続要求が発行される。そしてステップS33に進み、配送管理部107は、ストリーム管理テーブル314に、新規に接続されたストリームの情報を設定し、図7の配送管理テーブル312に、このストリームに対応する新しいエントリを作成する。更にステップS34に進み、図8の蓄積管理テーブル313に新しいストリームに対する蓄積状況を設定する。そしてステップS35に進み、配送先IDを割り当て、配送先テーブル315に配送先情報(この場合、配送先ID, アドレス 150.64.33.44、ポート番号 8901、配送管理ID #1)を設定する。そして配送管理テーブル312の配送ストリームの(150.31.11.09:65011:1)に対する配送ストリームIDの項701に、この配送先IDに対するエントリを作成し、接続時間カウンタ703をデフォルト値に、ダイジェスト704を「False」、ダイジェストカウンタ705を“0”に設定する。
【0049】
図13は、図12のステップS34の蓄積管理情報設定処理の内容を示すフローチャートである。
【0050】
まずステップS41で、蓄積管理部108は、配送管理部107から伝達された新規ストリームの情報と自身の持つ蓄積設定テーブル311を参照して、蓄積管理テーブル313への設定内容を決定する。この新規ストリーム情報には、それが自律蓄積処理(後述)で起動されたか、或は下流からの要求で起動されたかを示す情報が付随する。そして蓄積管理部108は、新しいエントリを蓄積管理テーブル313に作成し、ストリーム番号801として配送ストリームIDを設定する。次に、ストリームが自律モードで起動されている場合(自律蓄積604が「True」)には、このストリームの情報源に対応する蓄積設定情報を蓄積設定テーブル311から読み出し、自律モードで起動されていない場合(自律蓄積604が「False」)には、蓄積設定テーブル311の蓄積ストリーム(=0)であるデフォルト値を読み出す。次にステップS42に進み、蓄積設定テーブル311のアクセス間隔602から、蓄積管理テーブル313の蓄積周期802の項を設定し、ステップS43で、取り込み長さの項803を設定する。そしてステップS44に進み、蓄積カウンタの項804を“0”にし、ステップS45では、取り込み中フラグ805を「False」に設定し、ステップS46では、自律モードでストリームが起動されている場合には自律モードフラグ806を「True」に、そうでない場合には「False」に設定する。
【0051】
図14は、図11のステップS25の切断処理の内容を示すフローチャートである。
【0052】
まずステップS51で、配送管理部107は、この切断処理を実施するにおいて、配送管理テーブル312の中の配送先ID702に対応するエントリを削除する。次にステップS52に進み、削除したエントリに対する配送ストリームID701の中に配送先IDがもう残っていないか否かを判定する。まだ残っている場合には、この切断処理を終了する。もう残っていない(空)場合にはステップS53に進み、要求発信部109に配送ストリームID701に対応する通信の終了要求を発するように指示する。続いてステップS54に進み、配送管理テーブル312の配送ストリームID701に対応するエントリを削除し、ストリーム管理テーブル314の対応するエントリも削除する。そしてステップS55に進み、配送ストリームID701に対応する蓄積管理テーブル313のエントリを削除する。また、この際、元の配送ストリームが、蓄積設定テーブル311の自律蓄積604が「True」であるストリームと一致している場合には、タイマ起動キューリストに当該ストリームの再起動が入っているかをチェックし、入っていない場合には、適当な時間間隔(例えば60秒)をタイマに設定し、タイマ起動キューリストに(その設定時刻、蓄積設定テーブル311のNoで示される蓄積番号)を追加する。
【0053】
図15は、図11のステップS27のダイジェスト処理の内容を示すフローチャートである。
【0054】
要求受け付け部105から配送管理部107へ伝達された要求がダイジェスト要求の場合にはステップS27のダイジェスト処理が起動される。まずステップS61で、配送管理部107は、そのダイジェスト要求を発した配送先に対して既に配送中であるか否かを配送管理テーブル312を参照して判断する。配送中でない(即ち、配送管理テーブル312にエントリがない)ならばステップS62に進み、その配送管理テーブル312に新規な配送先のためのエントリを作成する。一方、配送中ならばそのままステップS63に進む。ステップS63では、配送管理部107は配送管理テーブル312の、前記配送先に対するエントリのダイジェストの項704を「True」に設定し、それ以外に配送管理テーブル312にダイジェストの要求がなければ、ダイジェスト送信タイマを設定する。次にステップS64に進み、配送管理テーブル312のダイジェストカウンタの項705に、データ蓄積部106に蓄積されたダイジェストの長さを設定する。以上の処理が図11のフローチャートで示された受け付け処理の内容である。
【0055】
図16は、図10のフローチャートにおいてステップS13のデータ受信に引き続き起動されるステップS14の配送処理の内容を示したフローチャートである。
【0056】
この処理は、受信データの読み出しステップS71、配送管理テーブル312の受信ストリームに対する項から配送リストを読み出し作業リスト316に代入するステップS72、作業リスト316が空か否か判定するステップS73、作業リスト316が空のときにダイジェストデータを蓄積するデータ蓄積処理ステップS74、作業リスト316が空でないときに作業リスト316から次の配送先を1つ読み出すステップS75、その読み出した配送先が受信データを送信する必要がないダイジェストモードあるいは蓄積のためのみに上流から得ている場合、即ち配送先がダミーデータ(配送先IDが負の値)の場合を判定するステップS76、ステップS76の判定が否のときに受信データを配送先へ送信するステップS77、配送に伴い配送管理テーブル312を更新するステップS78、更新により配送管理テーブル312の接続時間カウンタが“0”になったか否かを判定するステップS79、接続時間カウンタ12の値が(“0”の場合)にその配送先との接続を切る切断処理ステップS80、読み出した配送先を作業リスト316から削除して作業リスト316を短くするステップS81とを備えている。
【0057】
具体的には、配送処理部104は、入力処理部102がデータを受信したイベントがある場合に配送処理を開始する。配送処理部104は、まずステップS71で受信データを読み出し、配送管理テーブル312を参照して、その中の受信データを与えるストリーム701に対する配送先IDの項702から配送先を読み出して作業リスト316に代入する(ステップS72)。続いてステップS73に進み、作業リスト316が空になるまで以降の処理を行う。
【0058】
作業リスト316が空でないときはステップS75に進み、その作業リスト316から配送先を1つ読み出す。次にステップS76に進み、この配送先IDがマイナスの値か、あるいは配送管理テーブル312の、対応する配送先のダイジェスト704が「True」であるかを判定し、そうであればダイジェスト送信が設定されているため送信の要無しとしてステップS81に進み、それ以外の場合にはステップS77に進む。ステップS77では、配送処理部104は、受信データを出力処理部103を介して配送先へ送信し、配送管理テーブル312の同じ配送先に対応する項の接続時間カウンタ703を“1”だけ減算する(ステップS78)。こうして接続時間カウンタ703の値が“0”以下になったかどうかを調べ、そうであればステップS80に進み、接続時間(フレーム数)の制限を越えたものとして、その配送先との間の切断処理を行う。このステップS80の後、或はステップS79でカウンタ703の値が“0”以下でない時はステップS81に進み、その処理し終わった配送先を作業リスト316から削除して、次の配送先の処理へ戻る。
【0059】
また、ステップS73で作業リスト316が空になった場合はステップS74に進み、配送処理部104はデータ蓄積処理に制御を移す。
【0060】
図17は、図16のステップS74のデータ蓄積処理の内容を示したフローチャートである。
【0061】
この処理は、蓄積すべきストリームであるか否かを判定するストリーム判定ステップS91、現時点あるいは現フレームが書き込み期間内であるか否かを判定する書き込み期間内判定ステップS92、受信データをデータ蓄積部106に実際に書き込む書き込みステップS93、及び蓄積管理情報を更新する更新ステップS94を備えている。
【0062】
配送処理部104は、まずステップS91で、蓄積管理テーブル313を参照し、処理対象の受信データを含むストリームの番号が蓄積管理テーブル313にあるかどうかを判定する。ない場合にはステップS94に進み、ある場合にはステップS92に進み、更に蓄積管理テーブル313の取り込み中フラグの項805を参照し、取り込み中であるか否かを判定する。取り込み中フラグの項805が「False」の場合には書込み期間内でないためステップS94に進むが、このフラグ805が「True」の場合にはステップS93に進み、受信データをデータ蓄積部106に書き込んでステップS94に進む。このステップS94では、蓄積管理テーブル313に記述されている蓄積管理情報の更新を行う。
【0063】
図18は、図17のステップS94の蓄積管理情報の更新処理を示すフローチャートで、この処理は、蓄積管理テーブル313が対象とするエントリの蓄積カウンタの項804の値を1つ減算する減算ステップS101、前記蓄積カウンタ804の値が“0”以下になったか否かを判定する0判定ステップS102、取り込み中フラグの項805が「True」であるか否かを判定する取り込み判定ステップS103、取り込み中フラグの項805に「True」を代入する代入ステップS104、蓄積カウンタの項804に取り込み長さの項803にある値を代入する代入ステップS105、自律モードであるか否かを判定する判定ステップS106、取り込み中フラグの項805に「False」を代入する代入ステップS107、蓄積カウンタの項804に周期の項802の値を代入する代入ステップS108、自律蓄積のための再起動タイマを設定する設定ステップS109、そして切断処理ステップS110を備えている。
【0064】
まずステップS101で、配送処理部104は蓄積管理テーブル313の当該ストリームに対するエントリにアクセスし、まず蓄積カウンタの項804を“1”だけデクリメント(−1)する。次にステップS102に進み、この蓄積カウンタ804の値を“0”と比較し、“0”より大きければ変更なしで、この処理を終了する。一方、“0”以下であればステップS103に進み、取り込み中フラグの項805の値をテストする。ここでその項805の値が「True」でなければステップS104に進み、取り込み中フラグ805に「True」を代入し、ステップS105で、蓄積カウンタの項804に取り込み長さの項803の値を代入して処理を終了する。
【0065】
一方、ステップS103で、取り込み中フラグ805が「True」ならばステップS106に進み、自律モードの値806をテストする。ここで自律モードが「True」でないならばステップS107に進み、取り込み中フラグ805に「False」を代入し、ステップS108で、蓄積カウンタの項804に周期の項802の値を代入して処理を終了する。またステップS106で、自律モード806が「True」ならばステップS109に進み、図6の蓄積設定テーブル311の当該ストリームに対応するエントリのアクセス間隔602の値を参照して、自律蓄積処理を再起動するためにタイマに時間を設定し、次にステップS110で、当該ストリームの切断処理を行う。尚、この切断処理の内容は図14のフローチャートを参照して説明したのと同様である。
【0066】
以上の動作により、自律蓄積モードの場合には、データの蓄積が完了した時点で一旦ストリームは切断され、また指定された時間間隔の後に再接続して、データの受信と再蓄積が行われる。一方、自律蓄積モードでないストリームの場合には、データ蓄積を蓄積管理テーブル313の取り込み長さの項803の値に相当する量だけ続けて、周期802で指示される時間だけ間を空けて、またデータ蓄積を行うという動作を繰り返す。これによりデータ蓄積部106のデータが定期的に更新され、常に新しいデータが蓄積されていることになる。
【0067】
図19は、図10のステップS16の自律蓄積処理の内容を示すフローチャートで、この処理は図11のステップS23の接続処理と同じ接続処理により実行される。
【0068】
図20は図10のステップS18のダイジェスト送信処理の内容を示すフローチャートで、ダイジェストに対応する配送テーブル315を読み出し作業リスト316にするステップS121、作業リスト316が空か否かを判定するステップS122、配送先を1つ読み出すステップS123、データ蓄積部106に蓄えられている受信データ(ダイジェストデータ)を配送先に送信するステップS124、配送管理テーブル312の更新ステップS125、ステップS125で更新されたダイジェストカウンタ705の値が“0”になったかを否かを判定するステップS126、配送ストリームがダミーであるかを判定するステップS127、配送先を削除するステップS128、配送先を復元するステップS129、作業リスト316から配送先を削除するステップS130、作業リスト316が空のときにダイジェスト要求があるか否かを判定するステップS131、そしてダイジェスト送信のためのタイマを設定するステップS132を備えている。
【0069】
まずステップS121で、配送処理部104は、配送管理テーブル312を参照し、ダイジェストの項704が「True」の配送先を選び出し、あれば作業リスト316に代入する。次いでステップS122で、その作業リスト316が空であるかを判定し、空ならばステップS131に進み、空でなければステップS123に進む。ステップS123では、作業リスト316から1つ配送先を読み出して、それを対象配送先とし、ステップS124で、データ蓄積部106から蓄積データを読み出し対象配送先へ送信する。続いてステップS125に進み、配送管理テーブル312のダイジェストカウンタ705の値を“1”だけデクリメント(−1)し、ステップS126で、ダイジェストカウンタ705の値が“0”かどうか判定する。ダイジェストカウンタ705の値が“0”でなければステップS130に進み、作業リスト316から対象配送先を削除してステップS122に戻る。
【0070】
またステップS126で、ダイジェストカウンタ705の値が“0”であればステップS127に進み、配送管理テーブル312の配送ストリームID701がマイナスの値である場合にはダミーであるとしてステップS128の配送先削除処理に進む。一方、ダミーでない場合はステップS129に進み、配送先復元処理を実行する。即ち、ステップS128では、配送管理テーブル312から対象配送先のエントリを削除し、ステップS130で作業リスト316からその対象配送先を削除してステップS122に戻る。またステップS129では、配送管理テーブル312の対象配送先のエントリのダイジェストの項704を「False」にしてステップS130に進み、作業リスト316から対象配送先を削除してステップS122へ戻る。これらステップS122からステップS130までの処理を、作業リスト316が空になるまで繰り返す。こうしてステップS122で作業リスト316が空になるとステップS131に進み、配送管理テーブル312を参照してダイジェストの項704が「True」のエントリがあるかを判定する。このダイジェストの項704が「True」のエントリがあればステップS132に進み、ダイジェスト送信処理を再起動するためのタイマ306を設定する。一方、ステップS131で「True」のエントリがなければそのまま処理を終了する。
【0071】
このように図20のフローチャートで示す動作がタイマ306の再設定により繰り返し行われることにより、データ蓄積部106に記憶されている蓄積データがダイジェスト要求を発した配送先に送信される。尚、ここでダイジェストカウンタ705の設定は、ダイジェストを流す長さ(フレーム数)を設定することになる。また、データ蓄積部106に蓄積されている蓄積データの読み出し順は、ダイジェスト送信処理が呼び出される度に1つづつ進み、全ての蓄積データが読み出された時に起点に戻るようにする。
【0072】
尚、このダイジェストデータの送信に付随して、データパケット内のヘッダに情報源のアドレスやポート番号、ストリーム番号などの付属情報を書き込み、これを下流に位置している受信側に伝達することができる。また、別の方法として、データパケットとは別のコントロールパケットを作成し、これをもって上記の情報を伝送することも可能であり、このような手法は例えばInternet Engineering Task Forceによる標準化文書の1つ、RFC1889(A Realtime Transport Protocol)に述べられているRTCP(RTP Control Protocol)を利用することにより実現でき、コントロールパケットの比率を調整することでデータ流量面での負荷を制御することができる。
【0073】
また、蓄積データの配送先端末では、これらのデータおよび付属情報を表示し、クライアントに接続する情報源を選択させ、再度、接続要求を本実施の形態の配送サーバに発することができることは言うまでもない。
【0074】
図21は、データの蓄積に用いるデータ蓄積部106のバッファメモリの構成の一例を示した図である。ここでは、それぞれのストリームに対して2つのバッファ領域(A1,A2など)が割り当てられている。
【0075】
図22は、図8と同様に蓄積管理テーブル313の一部を示した図である。
【0076】
図8の構成に加えて、ストリーム番号801に対して読み出しポインタ811、書き込みポインタ812という2つのポインタと、読み出しバッファおよび書き込みバッファの2つのバッファの位置813,814、読み出し完了待ちフラグ815が格納されている。この読み出し完了待ちフラグ815は、後述するように読み出しバッファと書き込みバッファの切り替えの際に、読み出し操作により読み出しバッファを読み出し中である場合、その読み出し処理の完了待ちを示すためにセットするフラグである。
【0077】
このようなバッファメモリの構成は、バッファの内容更新とダイジェストの送信を並行して行うためのものである。即ち、書き込み動作の行われているバッファは読み出しには用いず、読み出し時には読み出しバッファに当てられているバッファのみを蓄積管理テーブル313の読み出しバッファの値813および読み出しポインタ811の値を参照しながら、蓄積管理テーブル313の上から下へ順に読み出しが行われる。この読み出しに伴って読み出しポインタ811を1だけ増加させ、この読み出しポインタ811が取り込み長さ803と同じになった時に、そのバッファの読み出しが完了する。この時、読み出し完了待ちフラグが「True」に設定されている場合には、読み出しバッファと書き込みバッファを切り替え、読み出し完了待ちフラグ815を「False」に、読み出しポインタ811および書き込みポインタ812を共に“0”に設定する。
【0078】
尚、図22の2行目(ストリーム番号“123”のエントリ)に示したように、読み出しバッファが準備完了になっていない場合には、読み出しバッファの指定は正常値である“1”以上にはならずに“0”となるので、このようなストリームは読み飛ばすようにする。
【0079】
図23は、図17のステップS93の蓄積データの書き込み動作を示すフローチャートで、読み出し待ちフラグ815が「False」であるか否かを判定する判定ステップS141、蓄積管理テーブル313より書き込みポインタ812および書き込みバッファ814を読み込むステップS142、受信データを書き込みポインタ812および書き込みバッファ814で指定された場所に書き込むステップS143、書き込みポインタ812を“1”だけ増加させるステップS144、書き込みポインタ812の値が取り込み長さ803に達したか否かを判定するステップS145、読み出しポインタ811が“0”あるいは取り込み長さ803に等しいか否かを判定するステップS146、読み出し完了待ちフラグ815をセットするステップS147、及びバッファ切り替え操作を行うステップS148を有している。
【0080】
データ蓄積部106は、受信データの蓄積のための書き込み動作に際して、まずステップS141で、蓄積管理テーブル313の受信ストリームのエントリを参照し、読み出し待ちフラグ815が設定されているか否かを判定する。これが「False」でない(フラグセット)場合には、読み出し完了まで書き込み不可であると判断して処理を終了する。一方、読出し待ちフラグ815がセットされていない「False」の場合にはステップS142に進み、書き込みポインタ812と書き込みバッファ814の項を読み出す。次いでステップS143に進み、入力処理部102を介してネットワーク110より受信した受信データを、書き込みポインタ812と書き込みバッファ814で指示されたメモリエリアに書き込み、その書き込みポインタ812を“1”だけ増加させる。
【0081】
続いてステップS144に進み、書き込みポインタ812が取り込み長さ803に達した(即ち、書き込みが完了した)か否かを判定する。書き込みポインタ812が取り込み長さ803と等しくない(書込みが終了でない)場合にはそのまま処理を終了し、等しい場合(終了した場合)にはステップS146に進む。ステップS146では、読み出しポインタ811が“0”(即ち、全く読み出されていない)、或は取り込み長さ803と等しい(即ち、読み出しが終わっている)かそうでないかを判定する。“0”か取り込み長さでない場合にはステップS147に進み、読み出し待ちフラグ815を「True」にセットして処理を終了する。またステップS146で、“0”か或は取り込み長さ803と等しい場合にはステップS148に進み、バッファ切り替え処理として、読み出しバッファと書き込みバッファを切り替え、その読み出しポインタおよび書き込みポインタを“0”に設定する。
【0082】
以上のように構成することにより、情報源より送られてくるデータの一部を蓄積し、下流側の配送先にダイジェストとして配送することが可能となった。
【0083】
またこの際、下流側にあるクライアントからの要請がなくとも、予め設定された内容に従い自律的に上流側の情報源と定期的に接続して、そこから受信したデータを蓄積することができる。
【0084】
本実施の形態に示される図2の構成での利用形態に対応させれば、ビューワ203からの要求に応じてカメラサーバ202からのデータをビューワ203に配送できると共に、ビューワ203ではダイジェスト機能を利用して、配送サーバ100がどのカメラサーバ202からのデータを中継しているかを認識できるようになる。
【0085】
また、配送サーバにおいて自律蓄積モードが設定できるようにすることにより、指定したいくつかのカメラサーバ202の最近の映像を定期的に更新しながら配送サーバ100からのダイジェストとして下流側に流すことが可能となる。
【0086】
(その他の実施の形態)
前述の実施の形態において、中継配送機能をなくした場合、本発明の実施の形態は、いくつかのカメラからの最近データをまとめて流す、いわゆるディレクトリ・サービスサーバとして利用可能である。
【0087】
また、図3の構成を考えた場合、下位の配送サーバより上位の配送サーバにダイジェストを要求して、このダイジェスト要求に基づいて送られてくるデータを下位側の配送サーバにおけるダイジェストデータの一部として蓄積することにより、カメラなどの情報源に関する情報を、より多くのクライアントにダイジェストとして配送することができる。
【0088】
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0089】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。
【0090】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0091】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0092】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0093】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0094】
以上説明したように本実施の形態によれば、複数の情報源からのデータのそれぞれの一部を蓄積し、配送先端末であるクライアントからの要求に応じて、それらの蓄積データをまとめてクライアントへ配送し、中継用サーバを介して、どのようなデータを利用できるかを示す情報をクライアントに示すことが可能となった。
【0095】
また、情報源よりのデータの主たる対象を映像・画像、サウンドなどの連続データとすることにより、データの一部蓄積、その取り出しが容易になった。
【0096】
また、設定情報に応じて、配送するデータの蓄積方法を設定可能にし、その設定情報に応じて情報源からのデータの一部を蓄積するように構成することにより、配送サーバの置かれた状況に応じて適切にデータを蓄積することが可能となった。
【0097】
また、本実施の形態の配送サーバによれば、データの蓄積方法を、そのデータの取り込み先、取り込み長さ、取り込み間隔の少なくとも3項目を用いて設定することにより、指定した間隔で、指定した期間の長さのデータを、指定した情報源(取り込み先)から入手することができる。また、これらの情報源(取り込み先)を複数設定することが可能となった。
【0098】
また、配送先(クライアント)からの中継配送要求を受付け、その要求に対して情報源にデータ配送を要請することができ、情報源からのデータの蓄積方法を配送先からの要求に対応する配送データの一部を蓄積できるようにすることにより、配送サーバを介して、配送先からの要請に基づくデータ配送と配送データからのダイジェストデータの作成が同時に可能となった。
【0099】
また、予め設定された間隔をおいて定期的に情報源にデータを要求して、そのデータの一部を蓄積するように構成したことにより、情報源の最新の情報に自動的にアクセスし、このアクセスしたデータのダイジェスト送信を提供可能となった。
【0100】
また、情報源からのデータの一部を蓄積する際、ダブルバッファでデータを蓄積することにより、データの蓄積のための書き込み動作と、クライアントへのダイジェスト配送のための読み出し動作が同時に可能となった。
【0101】
【発明の効果】
以上説明したように本発明によれば、情報源からのデータの一部を蓄積しておき、その蓄積データをクライアントからの指示に応じて、そのクライアントに送信することができるという効果がある。
【0102】
また本発明によれば、クライアントからの要求に応じて、その要求された情報源にデータを要請し、その要請に応じて送信される情報源からのデータの少なくとも一部を蓄積し、その蓄積されているデータを所定量送信できるという効果がある。
【0103】
また本発明によれば、予め設定された間隔をおいて定期的に情報源にデータを要求して、そのデータの一部を蓄積しておき、その蓄積したデータの適宜の送信できるという効果がある。
【0104】
【図面の簡単な説明】
【図1】本発明の実施の形態の配送サーバの機能構成を示す機能ブロック図である。
【図2】本発明の実施の形態のネットワークシステムの構成を示す概念図である。
【図3】本発明の他の実施の形態のネットワークシステムの構成を示す概念図である。
【図4】本実施の形態の配送サーバの構成を示すブロック図である。
【図5】本実施の形態の配送サーバにおける起動処理を示すフローチャートである。
【図6】本実施の形態の蓄積設定テーブルの内容例を示した図である。
【図7】本実施の形態の配送管理テーブルの内容例を示した図である。
【図8】本実施の形態の蓄積管理テーブルの一部の内容例を示した図である。
【図9】本実施の形態のストリーム管理テーブルの内容例を示した図である。
【図10】本実施の形態の配送サーバのメイン処理を示すフローチャートである。
【図11】図10の受け付け処理(S12)の詳細を示すフローチャートである。
【図12】図11の接続処理(S23)の詳細を示すフローチャートである。
【図13】図12の蓄積管理情報設定(S34)の詳細を示すフローチャートである。
【図14】図11の切断処理(S25)の詳細を示すフローチャートである。
【図15】図11のダイジェスト処理(S27)の詳細を示すフローチャートである。
【図16】図10の配送処理(S14)の詳細を示すフローチャートである。
【図17】図16のデータ蓄積処理(S74)の詳細を示すフローチャートである。
【図18】図17の蓄積管理情報更新処理(S94)の詳細を示すフローチャートである。
【図19】図10の自律蓄積処理(S16)の詳細を示すフローチャートである。
【図20】図10のダイジェスト送信処理(S18)の詳細を示すフローチャートである。
【図21】データ蓄積部におけるバッファメモリの構成の一例を示した図である。
【図22】本実施の形態の蓄積管理テーブルの内容の一部の一例を示した図である。
【図23】図17の蓄積データの書き込み動作(S93)の詳細を示すフローチャートである。
【符号の説明】
100 配送サーバ
104 配送処理部
105 要求受付け部
106 データ蓄積部
107 配送管理部
108 蓄積管理部
109 要求発信部
311 蓄積設定テーブル
312 配送管理テーブル
313 蓄積管理テーブル
314 ストリーム管理テーブル
315 配送テーブル

Claims (19)

  1. 情報源とクライアントとの間にネットワークを介して介在する通信装置であって、
    少なくとも情報源、データの取り込み間隔及び取り込み長さに関する情報を含む設定情報に応じて、当該設定情報で指定された情報源から連続して提供されるデータの一部を蓄積する蓄積手段と、
    前記クライアントからの配送要求に応じて前記蓄積手段により蓄積したデータを前記クライアントに配送する配送手段と、
    を有することを特徴とする通信装置。
  2. 前記情報源からのデータは、少なくとも動的に変化する映像・画像、サウンドを含むことを特徴とする請求項1に記載の通信装置。
  3. 前記配送手段は、前記クライアントからの配送要求を受付ける受付け手段を有し、前記配送要求に応じて前記情報源にデータ配送を要求する要求手段を更に有することを特徴とする請求項1に記載の通信装置。
  4. 前記蓄積手段は、前記受付け手段により受け付けた要求に応じて、前記情報源からのデータの一部を蓄積することを特徴とする請求項に記載の通信装置。
  5. 前記配送手段は、前記蓄積手段に記憶されたデータを前記クライアントからの要求に応じたフレーム数或は時間だけ前記クライアントに配送することを特徴とする請求項1に記載の通信装置。
  6. 前記蓄積手段は、読出し用バッファと書込み用バッファを有するダブルバッファを備えていることを特徴とする請求項1に記載の通信装置。
  7. 前記蓄積手段は、前記設定情報に従って前記情報源に自発的にデータを要求する要求発行手段を有し、前記要求発行手段による要求に応じて前記情報源から送られてくるデータの少なくとも一部を蓄積することを特徴とする請求項1に記載の通信装置。
  8. 情報源とクライアントとの間にネットワークを介して介在する通信装置における通信方法であって、
    少なくとも情報源、データの取り込み間隔及び取り込み長さに関する情報を含む設定情報に応じて、当該設定情報で指定された情報源から連続して提供されるデータの一部を蓄積する蓄積工程と、
    前記クライアントからの配送要求に応じて前記蓄積工程で蓄積したデータを前記クライアントに配送する配送工程と、
    を有することを特徴とする通信方法。
  9. 前記情報源からのデータは、少なくとも動的に変化する映像・画像、サウンドを含むことを特徴とする請求項に記載の通信方法。
  10. 前記クライアントからの配送要求を受付ける工程と、受け付けた配送要求に応じて前記情報源にデータ配送を要求する工程を更に有することを特徴とする請求項に記載の通信方法。
  11. 前記蓄積工程は、前記受付ける工程で受け付けた要求に応じて、前記情報源からのデータの一部を蓄積することを特徴とする請求項1に記載の通信方法。
  12. 前記配送工程では、前記蓄積工程で記憶されたデータを前記クライアントからの要求に応じたフレーム数或は時間だけ前記クライアントに配送することを特徴とする請求項に記載の通信方法。
  13. 前記蓄積工程は、読出し用バッファと書込み用バッファを有するダブルバッファを備えていることを特徴とする請求項に記載の通信方法。
  14. 前記蓄積工程では、前記設定情報に従って前記情報源に自発的にデータを要求し、その要求に応じて前記情報源から送られてくるデータの少なくとも一部を蓄積することを特徴とする請求項に記載の通信方法。
  15. ネットワークを介して情報源とクライアントとの間に中継サーバを備える通信システムであって、
    前記中継サーバは、
    少なくとも情報源、データの取り込み間隔及び取り込み長さに関する情報を含む設定情報に応じて、当該設定情報で指定された情報源から連続して提供されるデータの一部を蓄積する蓄積手段と、
    前記クライアントからの配送要求に応じて前記蓄積手段により蓄積したデータを前記クライアントに配送する配送手段とを有し、
    前記クライアントは前記中継サーバに前記情報源との接続を要求し、前記中継サーバは前記クライアントよりの指示に応じて前記情報源と接続して前記情報源よりのデータの一部を前記蓄積手段に蓄積し、前記蓄積手段により蓄積したデータを前記クライアントに送信することを特徴とする通信システム。
  16. 前記情報源からのデータは、少なくとも動的に変化する映像・画像、サウンドを含むことを特徴とする請求項1に記載の通信システム。
  17. 前記配送手段は、前記蓄積手段に記憶されたデータを前記クライアントからの要求に応じたフレーム数或は時間だけ前記クライアントに配送することを特徴とする請求項1に記載の通信システム。
  18. 前記蓄積手段は、読出し用バッファと書込み用バッファを有するダブルバッファを備えていることを特徴とする請求項1に記載の通信システム。
  19. 前記蓄積手段は、前記設定情報に従って前記情報源に自発的にデータを要求する要求発行手段を有し、前記要求発行手段による要求に応じて前記情報源から送られてくるデータの少なくとも一部を蓄積することを特徴とする請求項1に記載の通信システム。
JP31989596A 1996-11-29 1996-11-29 通信方法及びその装置と該装置を備えた通信システム Expired - Fee Related JP3696995B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP31989596A JP3696995B2 (ja) 1996-11-29 1996-11-29 通信方法及びその装置と該装置を備えた通信システム
US08/979,252 US6748446B2 (en) 1996-11-29 1997-11-26 Communication method and apparatus with modification of routing path by intermediate relay apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31989596A JP3696995B2 (ja) 1996-11-29 1996-11-29 通信方法及びその装置と該装置を備えた通信システム

Publications (2)

Publication Number Publication Date
JPH10164081A JPH10164081A (ja) 1998-06-19
JP3696995B2 true JP3696995B2 (ja) 2005-09-21

Family

ID=18115437

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31989596A Expired - Fee Related JP3696995B2 (ja) 1996-11-29 1996-11-29 通信方法及びその装置と該装置を備えた通信システム

Country Status (1)

Country Link
JP (1) JP3696995B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5342124B2 (ja) * 2007-10-03 2013-11-13 パナソニックEsネットワークス株式会社 通信装置及び通信制御プログラム

Also Published As

Publication number Publication date
JPH10164081A (ja) 1998-06-19

Similar Documents

Publication Publication Date Title
US6748446B2 (en) Communication method and apparatus with modification of routing path by intermediate relay apparatus
JP4884460B2 (ja) 瞬時のメディア・オン・デマンド
US10848816B2 (en) Updating content libraries by transmitting release data
US8219635B2 (en) Continuous data feeding in a distributed environment
US8539536B2 (en) Fragmentation of a file for instant access
US8108312B2 (en) Content providing method, content providing facility, and user equipment
US7627888B2 (en) Method and system for keeping a library of titles updated
US7797440B2 (en) Method and system for managing objects distributed in a network
US20060218220A1 (en) Method and system for updating contents in newly-installed devices
US8099511B1 (en) Instantaneous media-on-demand
JP2001306437A (ja) ライブおよびストリーミングメディア内容を、追加のソフトウェアまたはプラグインを用いずにウェブクライアントのブラウザを通じてオンデマンドに再生するための適応メディアストリーミングサーバ
JPH11317937A (ja) 放送蓄積視聴装置
US7698304B2 (en) Caching data in a distributed system
JP4337150B2 (ja) 受信装置および受信方法
US20020147827A1 (en) Method, system and computer program product for streaming of data
JP2009089019A (ja) マルチキャスト配信制御装置、コンピュータプログラム、マルチキャスト配信制御システム及びマルチキャスト配信制御方法
JP2003029996A (ja) サーバ・システム、クライアント・システム、ソフトウェアストリーミング方法及びプログラム
JP3696995B2 (ja) 通信方法及びその装置と該装置を備えた通信システム
JP4190946B2 (ja) 複合コンテンツ同期配信方法、サーバ及びプログラム
JP2002261800A (ja) サービス品質動的制御装置および制御方法
JP2000172599A (ja) マルチキャストストリームデータ転送方法およびシステム
JP2001168861A (ja) マルチキャストシステム、マルチキャストグループ管理装置、マルチキャストグループ管理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2005085146A (ja) コンテンツ再生装置、コンテンツ配信システム、コンテンツ再生プログラム、コンテンツ再生方法
JP3544486B2 (ja) マルチメディア通信制御方法およびそのプログラムを記録した記録媒体
JP2002185948A (ja) ストリーム配信方法及び装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050527

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050701

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080708

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100708

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100708

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130708

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees