(57)【要約】  【課題】ストリーム情報を従来の方式でパケット化すると、バースト状になり、伝送品質を確保することが困難である。  【解決手段】所定の周期ごとにイベント信号を発生するタイマー手段１０７と、連続的に発生するストリーム情報を運ぶパケットの情報を記述した第２のディスクリプタをイベント信号の発生するタイミングに応じて処理し、ストリーム情報以外の情報を運ぶパケットの情報を記述した第１のディスクリプタを随時処理する、ディスクリプタ処理手段１０４、１０６とを備えた。【選択図】図１
2005184440.tif 000002
【特許請求の範囲】
【請求項１】
所定の周期ごとにイベント信号を発生するタイマー手段と、
連続的に発生するストリーム情報を運ぶパケットの情報を記述した第２のディスクリプタを前記イベント信号の発生するタイミングに応じて処理し、ストリーム情報以外の情報を運ぶパケットの情報を記述した第１のディスクリプタを随時処理する、ディスクリプタ処理手段とを備えた、ストリームパケット送信装置。
【請求項２】
前記ディスクリプタ処理手段は、前記イベント信号の発生するタイミングに応じて前記第２のディスクリプタの処理を開始する際に、前記第１のディスクリプタの処理を行なっている場合には、前記第１のディスクリプタの処理が終わった後に続けて、前記イベント信号の発生するタイミングに関係なく前記第２のディスクリプタの処理をする、請求項１に記載のストリームパケット送信装置。
【請求項３】
さらに、前記ストリーム情報の単位時間あたりのデータ量と、１つのパケットに含まれるデータ量とに基づいてパケット送信間隔を算出し、前記タイマー手段に前記所定の周期として前記パケット送信間隔を設定するタイマー設定手段を備えた、請求項１または２に記載のストリームパケット送信装置。
【請求項４】
さらに、あらかじめ設定された所定の数の前記第２のディスクリプタの処理の完了によって割り込み信号を発生する割り込み発生手段を備えた、請求項１乃至３のいずれかに記載のストリームパケット送信装置。
【請求項５】
前記ディスクリプタ処理手段は、同一の単位時間あたりのデータ量を有する複数の前記ストリーム情報を同一の時間帯に送信する場合には、前記タイマー手段からの前記イベント信号毎に、前記同一の時間帯に送信する複数の前記ストリーム情報の数の前記第２のディスクリプタを処理する、請求項１乃至４のいずれかに記載のストリームパケット送信装置。
【請求項６】
所定の周期ごとにイベント信号を発生するステップと、
ストリーム情報を運ぶパケットの情報を記述した第２のディスクリプタを前記イベント信号の発生するタイミングに応じて処理するステップと、
ストリーム情報以外の情報を運ぶパケットの情報を記述した第１のディスクリプタを随時処理するステップとを備えた、ストリームパケット送信制御方法。
【請求項７】
請求項１乃至５のいずれかに記載のストリームパケット送信装置の、前記第１のディスクリプタ及び前記第２のディスクリプタを処理する前記ディスクリプタ処理手段としてコンピュータを機能させるためのプログラム。
【請求項８】
請求項７に記載のプログラムを担持した記録媒体であって、コンピュータで利用可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にストリーム情報と呼ばれる、音声や動画映像などの時間的に連続性をもった情報をネットワークを通じて伝送する装置の送信側の、ストリームパケット送信装置およびストリームパケット送信制御方法に関する。
【背景技術】
【０００２】
ネットワークの送受信装置において、装置内で送受信すべき情報を取り扱うＣＰＵ（中央処理装置）と、ネットワークを構成するデータリンクに対してパケットを送受信するコントローラの間のデータの受渡しには、一般にＤＭＡ（ダイレクトメモリアクセス）が使われている。
【０００３】
そしてデータ受渡しの効率を向上させるため、一つ一つのデータ、例えばパケット毎に都度ＤＭＡを行うのではなく、ＤＭＡを行うために必要な情報を記述したディスクリプタを用意し、さらにディスクリプタを連鎖させることで、一連のデータに関してＣＰＵの介在なしに連続的にＤＭＡを行うことができるように構成されている（例えば、特許文献１参照）。
【０００４】
図３は、従来の技術におけるパケットの送信装置の構成を示すブロック図である。ＣＰＵ３０１は、まずバス３０２を通じてメインメモリ３０３に、送信すべきデータを書き込む。図３には４個のデータが図示されている。
【０００５】
つぎにＣＰＵ３０１は、データのメインメモリ３０３上での開始アドレス、およびその長さの情報を含むディスクリプタを、同じくメインメモリ３０３に書き込む。ディスクリプタもデータと同じく４個、メインメモリ３０３に書き込まれている。
【０００６】
この状態で、ＣＰＵ３０１は、ディスクリプタ処理器３０４に対して動作の指示を与える。より詳細には、メインメモリ３０３上の先頭のディスクリプタの書き込みアドレスを与え、そのディスクリプタ情報の読み出しを指示する。
【０００７】
ディスクリプタ処理器３０４は、読み出したディスクリプタ情報から、データの書き込みアドレスとその長さの情報を読み出し、ＤＭＡコントローラ３０５に与える。ＤＭＡコントローラ３０５は、バス３０２を通じてメインメモリ３０３からデータを読み出し、送信キュー３０６に転送する。
【０００８】
データリンクコントローラ３０７は、ネットワークの状態を調べ、ネットワークへの送信が可能となった時、送信キュー３０６からデータを読み取り、ネットワークへのデータの送信を行う。
【０００９】
ディスクリプタの処理が１つ完了すると、割り込み発生器３０８が、ＣＰＵ３０１への割り込み信号を発生する。
【００１０】
ディスクリプタ処理器３０４は、メインメモリ３０３上に書き込まれたディスクリプタがすべて処理されるまで上記の動作を繰り返す。これにより、最初にＣＰＵ３０１がメインメモリ３０３に書き込んだデータは、すべてネットワークから送信されることになる。
【００１１】
このように、ＣＰＵ３０１は、一度、送信すべきデータとそれに対応するディスクリプタを用意し、ディスクリプタ処理器３０４の動作を開始させることで、データの送信を行うことができる。
【特許文献１】特開平６−２４４９０２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、一般にストリーム情報と呼ばれる、音声や動画映像などの時間的に連続性をもった情報をネットワーク送信する場合、図３に示したような送信装置を用いると、送信されるパケットが、連続して処理されるディスクリプタの単位でバースト状になる現象が発生する。
【００１３】
すなわち、一度に用意されたディスクリプタおよびデータの処理は連続的に行われるため、それらのパケットの送出間隔は短く、次にディスクリプタとデータが用意されるまでは送信が行われないので、この間の送出間隔は長くなる。
【００１４】
図４は、図３に示す送信装置による送信パケットおよび割り込み信号を示すタイムチャートである。上述の現象によって送出されるパケットは、図４（ａ）のようにバースト状になる。このような時間軸のある一部にパケットが偏ると、瞬時的にネットワーク負荷が高まり、他のネットワークを流れるパケットとの干渉を起こし易くなる。その結果、パケットの伝送時間にばらつきが発生したり、干渉が甚だしい場合には、パケットの破棄が起こる。
【００１５】
ストリーム情報は、ビットレートなどで表現される、時間あたりの情報量が決まっている。したがって、ストリーム情報の本来のビットレートに応じてパケット間隔が伸縮し、相互のパケット間隔が広がることで、パケットが時間軸上でできるだけ分散化することが、ネットワークでの伝送品質を確保する上で望ましい。
【００１６】
図３に示す従来の送信装置においても、データリンクコントローラ３０７の処理速度を制限し、ストリーム情報のビットレートに近付けると、ネットワークに送出されるパケットの間隔は広がり、図４（ｂ）のようになる。
【００１７】
ところが、ネットワークの送信装置として機能するためには、ストリーム情報以外のパケットもまた送信する必要がある。例えば、ネットワークのアドレス情報を交換したり、さまざまな他のネットワーク上の装置からの問い合わせに応答する必要がある。また、ストリーム情報のやりとりに付随しても、ストリーム情報の制御情報、管理情報などを送ることが必要な場合も出てくる。
【００１８】
このようにストリーム情報以外のパケットの送信が行われるとき、上述のようにデータリンクコントローラ３０７の処理速度を制限することでパケット間隔を広げていると、図４（ｃ）のようにストリーム情報以外のパケット４０１が途中に割り込み、ストリーム情報を運ぶパケットは本来の送出タイミングからずれてしまう。
【００１９】
すなわち、ストリーム情報の送信の完了時刻が、ストリーム情報の送信が継続している間に発生した、ストリーム情報以外のパケットの数によって変化してしまうことになり、場合によっては、音声や動画映像が途切れたりする可能性がある。
【００２０】
また、データリンクコントローラ３０７の処理速度を制限することは、他のネットワーク上の装置からの問い合わせに対する応答速度も同時に制限することになる。
【００２１】
このように、従来のパケットの送信装置においては、ストリーム情報を運ぶパケットの分散化と、ストリーム情報以外のパケットの処理の高速化を両立させることは困難であった。
【００２２】
本発明は、上記従来の技術における課題を解決するもので、ストリーム情報のパケットの分散化とストリーム情報以外のパケットの処理の高速化を両立させる、ストリームパケット送信装置およびストリームパケット送信制御方法等を提供することを目的とする。
【課題を解決するための手段】
【００２３】
上述した課題を解決するために、第１の本発明は、
所定の周期ごとにイベント信号を発生するタイマー手段と、
連続的に発生するストリーム情報を運ぶパケットの情報を記述した第２のディスクリプタを前記イベント信号の発生するタイミングに応じて処理し、ストリーム情報以外の情報を運ぶパケットの情報を記述した第１のディスクリプタを随時処理する、ディスクリプタ処理手段とを備えた、ストリームパケット送信装置である。
【００２４】
第２の本発明は、
前記ディスクリプタ処理手段は、前記イベント信号の発生するタイミングに応じて前記第２のディスクリプタの処理を開始する際に、前記第１のディスクリプタの処理を行なっている場合には、前記第１のディスクリプタの処理が終わった後に続けて、前記イベント信号の発生するタイミングに関係なく前記第２のディスクリプタの処理をする、第１の本発明のストリームパケット送信装置である。
【００２５】
第３の本発明は、
さらに、前記ストリーム情報の単位時間あたりのデータ量と、１つのパケットに含まれるデータ量とに基づいてパケット送信間隔を算出し、前記タイマー手段に前記所定の周期として前記パケット送信間隔を設定するタイマー設定手段を備えた、第１または第２の本発明のストリームパケット送信装置である。
【００２６】
第４の本発明は、
さらに、あらかじめ設定された所定の数の前記第２のディスクリプタの処理の完了によって割り込み信号を発生する割り込み発生手段を備えた、第１乃至第３のいずれかの本発明のストリームパケット送信装置である。
【００２７】
第５の本発明は、
前記ディスクリプタ処理手段は、同一の単位時間あたりのデータ量を有する複数の前記ストリーム情報を同一の時間帯に送信する場合には、前記タイマー手段からの前記イベント信号毎に、前記同一の時間帯に送信する複数の前記ストリーム情報の数の前記第２のディスクリプタを処理する、第１乃至第４のいずれかの本発明のストリームパケット送信装置である。
【００２８】
第６の本発明は、
所定の周期ごとにイベント信号を発生するステップと、
ストリーム情報を運ぶパケットの情報を記述した第２のディスクリプタを前記イベント信号の発生するタイミングに応じて処理するステップと、
ストリーム情報以外の情報を運ぶパケットの情報を記述した第１のディスクリプタを随時処理するステップとを備えた、ストリームパケット送信制御方法である。
【００２９】
第７の本発明は、
第１乃至第５のいずれかの本発明のストリームパケット送信装置の、前記第１のディスクリプタ及び前記第２のディスクリプタを処理する前記ディスクリプタ処理手段としてコンピュータを機能させるためのプログラムである。
【００３０】
第８の本発明は、
第７の本発明のプログラムを担持した記録媒体であって、コンピュータで利用可能な記録媒体である。
【発明の効果】
【００３１】
本発明により、ストリーム情報のパケットの分散化とストリーム情報以外のパケットの処理の高速化を両立させる、ストリームパケット送信装置およびストリームパケット送信制御方法等を提供することができる。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照しながら、本発明の実施の形態にかかるストリームパケット送信装置について説明する。
【００３３】
（実施の形態１）
図１は、本発明の実施の形態１にかかるストリームパケット送信装置のブロック図である。図１を用いて、本実施の形態１のストリームパケット送信装置の構成を、その動作とともに説明する。
【００３４】
ＣＰＵ１０１は、バス１０２を通じて、送信すべきデータ、およびそのデータに対するディスクリプタをメインメモリ１０３に書き込む。
【００３５】
ただし、ストリーム情報以外のデータと、ストリーム情報のデータを分離し、図１に示すように、ストリーム情報以外のデータのみからなるデータ１と、データ１の開始アドレスと長さの情報を含むディスクリプタ１、および、ストリーム情報のみからなるデータ２と、データ２の開始アドレスと長さの情報を含むディスクリプタ２を、メインメモリ１０３に書き込む。
【００３６】
なお、図１では、データ１、データ２ともに４つのデータで構成されているが、これらの個々のデータは、いずれもネットワークに送信する１パケットで送信できるサイズである。つまり、１つのデータが、１つの送信パケットに対応するようになっている。また、データ１およびデータ２を４つのデータで構成しているとしたのは例示であって、いずれも、１以上のいくつのデータで構成されていてもよい。
【００３７】
第１のディスクリプタ処理器１０４は、ストリーム情報以外のデータに対するディスクリプタの処理を行う。すなわち、第１のディスクリプタ処理器１０４はＣＰＵ１０１からの動作開始の指示を受けると直ちにメインメモリ１０３上のディスクリプタ１を読み取り、データ１の開始アドレスとデータ１の長さの情報を、ＤＭＡコントローラ１０５に与える。
【００３８】
第２のディスクリプタ処理器１０６は、ストリーム情報のデータに対するディスクリプタの処理を行う。第２のディスクリプタ処理器１０６は、メインメモリ１０３上のディスクリプタ２を読み取り、データ２の開始アドレスとデータ２の長さの情報を、ＤＭＡコントローラ１０５に与える。
【００３９】
ただし、第２のディスクリプタ処理器１０６は、ＣＰＵ１０１から動作開始の指示があってもすぐにはディスクリプタ２の処理には取り掛からず、所定の周期ごとに発生するタイマー１０７からのイベント信号の到着を待ってディスクリプタ２の処理を開始する。さらに、第２のディスクリプタ処理器１０６の動作開始にあたってはＤＭＡコントローラ１０５の処理状況を問い合わせ、ＤＭＡコントローラ１０５が第１のディスクリプタ処理器１０４から与えられた情報を処理中の場合は、その処理の終了を待つ。
【００４０】
そして、その第１のディスクリプタ処理器１０４から与えられた情報に対するＤＭＡコントローラ１０５の処理が終了した後に続けて、タイマー１０７からのイベント信号のタイミングとは関係なく、待たせていた第２のディスクリプタ処理器１０６の処理を開始する。
【００４１】
なお、第１のディスクリプタ処理器１０４と第２のディスクリプタ処理器１０６を合わせた構成が、本発明のディスクリプタ処理部の一例である。また、ディスクリプタ１およびディスクリプタ２は、それぞれ、本発明の第１のディスクリプタおよび第２のディスクリプタの一例である。また、タイマー１０７は、本発明のタイマー手段の一例である。
【００４２】
ＤＭＡコントローラ１０５は、第１のディスクリプタ処理器１０４および第２のディスクリプタ処理器１０６から与えられたディスクリプタ１または２の情報を基に、バス１０２を通じて、メインメモリ１０３からデータ１あるいはデータ２を読み出し、送信キュー１０８に転送する。
【００４３】
データリンクコントローラ１０９は、ネットワークの状態を調べ、ネットワークへの送信が可能になった時、送信キュー１０８からデータを読み取り、ネットワークへのデータの送信を行う。
【００４４】
ストリーム数レジスタ１１０は、タイマー１０７が発生するイベント信号ごとに、第２のディスクリプタ処理器１０６が処理すべきディスクリプタの数を保持する。第２のディスクリプタ処理器１０６はイベント信号を受け取った時、ストリーム数レジスタ１１０を参照し、一度に処理すべきディスクリプタの数を決定する。ストリーム数レジスタ１１０の設定は、ＣＰＵ１０１によって行われる。
【００４５】
周期レジスタ１１１は、タイマー１０７が発生するイベント信号の発生周期の情報を保持する。タイマー１０７は、動作開始時に周期レジスタ１１１の値を読み取り、その値に対応する時間後にイベント信号を発生する。また同時に、ふたたび周期レジスタ１１１の値を読み取る。これにより、タイマー１０７が発生するイベント信号の周期は、周期レジスタ１１１の設定値に対応したものとなる。周期レジスタ１１１の設定は、ＣＰＵ１０１によって行われる。なお、周期レジスタ１１１は、本発明のタイマー設定手段の一例である。
【００４６】
割り込み単位レジスタ１１２は、第２のディスクリプタ処理器１０６が処理したディスクリプタの数の何個おきに割り込み信号を発生させるかという情報を保持する。第２のディスクリプタ処理器１０６が１つのディスクリプタの処理を終えると、処理数カウンタ１１３は、それをカウントしていく。なお、ここで割り込み単位レジスタ１１２に保持させる、ディスクリプタの数の何個おきに割り込み信号を発生させるかという情報が、本発明の、あらかじめ設定された所定の数の一例である。
【００４７】
割り込み発生器１１４では、割り込み単位レジスタ１１２に保持された値と、処理数カウンタ１１３のカウント値を比較し、一致した場合には割り込み信号をＣＰＵ１０１に対して発生する。なお、割り込み発生器１１４は、本発明の割り込み発生手段の一例である。
【００４８】
また、割り込み信号を発生すると同時に、処理数カウンタ１１３のカウント値を０とする。これにより、割り込み発生器１１４の発生する割り込み信号は、第２のディスクリプタ処理器１０６が処理したディスクリプタの数が、割り込み単位レジスタ１１２に設定された値に達するごとに発生する。なお、割り込み単位レジスタ１１２の設定は、ＣＰＵ１０１によって行われる。
【００４９】
図２は、本実施の形態１のストリームパケット送信装置によって得られる送信パケットおよび割り込み信号の様子を示すタイムチャートである。
【００５０】
まず、図２（ａ）は、図３に示す従来例と同じく、ストリーム情報を第１のディスクリプタ処理器１０４によって送信した場合のパケットの様子である。パケットが偏って存在するタイミングと、パケットが存在しないタイミングがあり、他のパケットと干渉しやすい状態である。
【００５１】
図２（ｂ）は、第２のディスクリプタ処理器１０６を用い、ストリーム数レジスタには１を、周期レジスタには周期Ｔを設定した場合のパケットの様子である。パケット間隔が広がり、パケットの位置が分散化される。周期レジスタに設定する周期Ｔは、ストリーム情報の単位時間あたりのデータの量、すなわちビットレートをＢ、一つのパケットによって運ばれるストリーム情報のデータの量をＬとするとき、Ｔ＝Ｌ／Ｂで算出することができる。この算出はＣＰＵ１０１によって行うことができる。なお、周期Ｔが、本発明のパケット送信間隔の一例である。
【００５２】
図２（ｃ）は、割り込み単位レジスタ１１２に、値として３を設定した場合の割り込み信号を示している。ストリーム情報のネットワークへの送信にあたっては、第２のディスクリプタ処理器１０６が３つのディスクリプタの処理を終えるごとに、連続的に割り込み信号が発生する。
【００５３】
従来例においては、一つ一つのディスクリプタの処理、すなわち、一つ一つのパケットの送信に対して割り込み信号が発生する。図４（ｄ）は、従来例における割り込み信号の発生タイミングを示しているが、これと図２（ｃ）を比較すると、割り込み信号の発生頻度が１／３に緩和されていることがわかる。
【００５４】
図２（ｄ）は、上記のように各レジスタが設定され、ストリーム情報が間隔を保ち送信されている状態で、ストリーム情報以外のパケットの送信が行われた場合の送信パケットの様子である。
【００５５】
ストリーム以外のパケットについては、前述のように、データ１としてメインメモリ１０３上に書き込まれ、そのディスクリプタは、ストリーム情報のデータであるデータ２に対するディスクリプタ２とは独立したディスクリプタ１となっている。
【００５６】
さらに、ディスクリプタ１の処理は、ディスクリプタ２を処理する第２のディスクリプタ処理器１０６より優先度の高い、第１のディスクリプタ処理器１０４が行う。このため本来ｔ１のタイミングで処理されるはずのストリーム情報を運ぶパケット２０２は遅延させられ、先にストリーム情報以外のデータを運ぶパケット２０１が送信される。
【００５７】
このようにストリーム情報以外のデータを運ぶパケットは、ストリーム情報を運ぶパケットの有無にかかわらず優先的に送信されるため、例えば他の装置からの問い合わせに対する応答などにおいて、その応答速度を落とすことはない。
【００５８】
また、従来例の図４（ｃ）と比較して、その送信が遅れさせられたパケット２０２に続くパケット２０３は、本来のタイミングに送信されていることがわかる。これは、パケットの送信タイミングが、直前に送信されたパケットとの相対的な時間差で決まる従来例とは異なり、送信タイミングがタイマー１０７の発生するイベント信号によって決まるためである。
【００５９】
図２（ｅ）は、複数のストリーム情報を送信した場合のパケットの様子である。ここでは、２つのストリーム情報を送信した場合の例を示している。個々のストリームのビットレートが同じであれば、周期レジスタ１１１に設定する値は、前述の計算式、Ｔ＝Ｌ／Ｂで算出される値でよく、変更する必要はない。その代わり、ストリーム数が２の場合であれば、ストリーム数レジスタにその値として２を設定する。ここで、２つのストリーム情報のパケットが同じタイミングで送信されている時間帯が、本発明の同一の時間帯の一例である。
【００６０】
データ２、ディスクリプタ２については、ストリーム分用意する必要がある。ただし、同じデータを異なる送信先に送る場合には、データ２については共用することもできる。
【００６１】
前述の設定により、第２のディスクリプタ処理器１０６は、タイマー１０７からのイベント信号の到来ごとに２つのディスクリプタを処理するので、図２（ｅ）のような送信間隔でストリームパケットが送出されることになる。
【００６２】
なお、本実施の形態１では、割り込み単位レジスタ１１２に３を設定することにより、３つのパケットの送信処理ごとに割り込み信号を発生させることとしたが、周期的に割り込み信号を発生させるのに限らず、全データのパケットの送信終了後に１回だけ割り込み信号を発生させるようにしてもよい。割り込み単位レジスタ１１２に設定する値に、メインメモリ１０３に書き込んだディスクリプタ２の個数、即ちデータ２の個数を設定することにより、全データのパケット終了時に１度だけ割り込み信号を発生させるようにできる。
【００６３】
但し、連続するストリーム情報の送信時間が長い場合には、パケット送信中の送信状態を定期的に確認するために、定期的に割り込み信号を発生させるようにすることが好ましい。送信するストリーム情報に応じて、割り込み単位レジスタ１１２に設定する値を調整すればよい。
【００６４】
また、処理数カウンタ１１３に、第２のディスクリプタ処理器１０６が処理したディスクリプタの数を加算していき、割り込み発生器１１４が、その値と割り込み単位レジスタ１１２に保持されている値とを比較して割り込み信号を発生させることとしたが、最初に処理数カウンタ１１３に割り込み単位レジスタ１１２に保持されている値を設定しておき、第２のディスクリプタ処理器１０６がディスクリプタを処理するごとに処理数カウンタ１１３の値を減算し、処理数カウンタ１１３の値が０になったときに割り込み信号を発生させるようにしてもよい。この場合、処理数カウンタ１１３がカウントされるごとに、割り込み単位レジスタ１１２に保持されている値と比較する必要がなくなる。
【００６５】
また、本実施の形態１では、ディスクリプタ処理手段を、ストリーム情報以外の情報のディスクリプタ１を処理する第１のディスクリプタ処理器１０４と、ストリーム情報のディスクリプタ２を処理する第２のディスクリプタ処理器１０６の２つのディスクリプタ処理器の構成としたが、ストリーム情報とストリーム情報以外の情報の両方のディスクリプタを取り扱う１つのディスクリプタ処理器で構成してもよい。
【００６６】
以上に説明したように、本発明のストリームパケット送信装置では、タイマー１０７の発生するイベント信号に応じてストリーム情報のディスクリプタ２を処理するため、送信するストリーム情報のパケットの送信間隔を、タイマー１０７によって所望の間隔に調節することが可能となる。
【００６７】
また、ストリーム情報のパケット間隔を広げた状態においてもストリーム情報以外のパケットについては優先的にそのディスクリプタ１を取り扱うので、問い合わせに対する応答処理などを、処理速度を低下させることなく行うことができる。
【００６８】
また、複数のストリームを扱う場合であっても、単独のストリームのビットレートが同じであれば、タイマー１０７が発生すべきイベント信号の周期は同じであり、ストリーム数の増減のつど設定内容を変更する手順を省くことができる。
【００６９】
また、従来のパケットの送信装置に比べて、割り込み信号の発生頻度を下げることができ、割り込み信号を受け付け、その処理を行うＣＰＵ１０１の処理負荷を低減させることができる。
【００７０】
なお、本発明のプログラムは、上述した本発明のストリームパケット送信装置のタイマー手段、ディスクリプタ処理手段、タイマー設定手段、割り込み発生手段の機能をコンピュータにより実行させるためのプログラムであって、コンピュータと協働して動作するプログラムである。
【００７１】
また、本発明の記録媒体は、上述した本発明のストリームパケット送信装置のタイマー手段、ディスクリプタ処理手段、タイマー設定手段、割り込み発生手段の全部又は一部の機能をコンピュータにより実行させるためのプログラムを担持した記録媒体であり、コンピュータにより読み取り可能かつ、読み取られた前記プログラムが前記コンピュータと協働して利用される記録媒体である。
【００７２】
また、本発明のプログラムの一利用形態は、コンピュータにより読み取り可能な記録媒体に記録され、コンピュータと協働して動作する態様であっても良い。
【００７３】
また、記録媒体としては、ＲＯＭ等が含まれ、伝送媒体としては、インターネット等の伝送媒体、光・電波・音波等が含まれる。
【００７４】
また、上述した本発明のコンピュータは、ＣＰＵ等の純然たるハードウェアに限らず、ファームウェアや、ＯＳ、更に周辺機器を含むものであっても良い。
【００７５】
なお、以上説明した様に、本発明の構成は、ソフトウェア的に実現しても良いし、ハードウェア的に実現しても良い。
【産業上の利用可能性】
【００７６】
本発明にかかる、ストリームパケット送信装置およびストリームパケット送信制御方法は、ストリーム情報のパケットの分散化とストリーム情報以外のパケットの処理の高速化を両立させる効果を有し、音声や動画映像などの時間的に連続性をもったストリーム情報をネットワークを通じて伝送する装置の送信側の、ストリームパケット送信装置およびストリームパケット送信制御方法等として有用である。
【図面の簡単な説明】
【００７７】
【図１】本発明の実施の形態１にかかるストリームパケット送信装置のブロック図
【図２】本発明の実施の形態１にかかるストリームパケット送信装置における、（ａ）第１のディスクリプタ処理器で送信した場合のパケットの様子を示す図、（ｂ）第２のディスクリプタ処理器で送信した場合のパケットの様子を示す図、（ｃ）割り込み信号の発生タイミングを示す図、（ｄ）ストリーム情報送信中にストリーム情報以外のパケットが送信される場合のパケットの様子を示す図、（ｅ）複数のストリーム情報を送信した場合のパケットの様子を示す図
【図３】従来例におけるパケットの送信装置のブロック図
【図４】従来例におけるパケットの送信装置における、（ａ）送信パケットの様子を示す図、（ｂ）データリンクコントローラの処理速度を制限した場合の送信パケットの様子を示す図、（ｃ）ストリーム情報送信中にストリーム情報以外のパケットが送信される場合のパケットの様子を示す図、（ｄ）割り込み信号の発生タイミングを示す図
【符号の説明】
【００７８】
１０１  ＣＰＵ
１０２  バス
１０３  メインメモリ
１０４  第１のディスクリプタ処理器
１０５  ＤＭＡコントローラ
１０６  第２のディスクリプタ処理器
１０７  タイマー
１０８  送信キュー
１０９  データリンクコントローラ
１１０  ストリーム数レジスタ
１１１  周期レジスタ
１１２  割り込み単位レジスタ
１１３  処理数カウンタ
１１４  割り込み発生器
【図１】
2005184440.tif 000003
【図２】
2005184440.tif 000004
【図３】
2005184440.tif 000005
【図４】
2005184440.tif 000006