(57)【要約】【課題】単体の電子機器装置内において、仮想的なネットワークにより通信可能なＣＰＵ間でのコマンド送受信の応答性を向上させる。【解決手段】仮想ネットワークドライバに、それぞれポート番号に対応付けられた複数の送信バッファと、ＩＰスタックから送信パケットを受け取り、この送信パケットに付加されているポート番号に基づいて、各パケットを複数の送信バッファに振り分けて書き込むＴＣＰ／ＩＰインターフェースモジュールと、優先度とポート番号との対応関係が登録された表を参照しつつ優先度の高いポート番号に対応する送信バッファから先にパケットを読み出して仮想的なネットワークに送信するＤＭＡ転送モジュールとを備える。【選択図】図６
2006049975.tif 000002
【特許請求の範囲】
【請求項１】
バスを伝送媒体とする仮想的なネットワークを通じて通信可能な２つのＣＰＵを有する電子機器装置であって、
それぞれポート番号に対応付けられた複数の送信バッファと、
送信すべきパケットに付加されているポート番号に基づいて、各パケットを前記複数の送信バッファに振り分ける手段と、
あらかじめ定義されたポート番号と優先度との関係に従って、優先度の高い前記送信バッファから先にパケットを読み出して前記ネットワークに送信する手段と
を具備することを特徴とする電子機器装置。
【請求項２】
バスを伝送媒体とする仮想的なネットワークを通じて通信可能な２つのＣＰＵを有する電子機器装置であって、
それぞれパケットサイズの分類に対応付けられた複数の送信バッファと、
送信すべきパケットのサイズに基づいて、各パケットを前記複数の送信バッファに振り分ける手段と、
小さいパケットサイズに対応付けられた前記送信バッファから先にパケットを読み出して前記ネットワークに送信する手段と
を具備することを特徴とする電子機器装置。
【請求項３】
バスを伝送媒体とする仮想的なネットワークを通じて２つのＣＰＵ間でパケットを通信する方法であって、
送信すべきパケットに付加されているポート番号に基づいて、各パケットを複数の送信バッファに振り分けて書き込み、あらかじめ定義されたポート番号と優先度との関係に従って、優先度の高い前記送信バッファから先にパケットを読み出して前記ネットワークに送信することを特徴とするパケット通信方法。
【請求項４】
バスを伝送媒体とする仮想的なネットワークを通じて２つのＣＰＵ間でパケットを通信する方法であって、
送信すべきパケットのサイズに基づいて各パケットを複数の送信バッファに振り分けて書き込み、小さいパケットサイズに対応付けられた前記送信バッファから先にパケットを読み出して前記ネットワークに送信することを特徴とするパケット通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２つのＣＰＵを内蔵し、各ＣＰＵ間が仮想的なＴＣＰ／ＩＰネットワークにより通信可能に接続された電子機器装置とこの電子機器装置内で仮想的なＴＣＰ／ＩＰネットワークを通じてパケットを通信する方法に関する。
【背景技術】
【０００２】
ハードディスクレコーダなどの電子機器装置において、システム全体の制御を行うＣＰＵと、ＭＰＥＧ２ストリームのエンコードなどの特定の処理を制御するＣＰＵの２つのＣＰＵを搭載し、これら２つのＣＰＵをバスを伝送媒体とする仮想的なＴＣＰ／ＩＰネットワークにより通信可能に接続した構成が検討されている。
【０００３】
このような構成においては、２つのＣＰＵ間で通信されるコマンドやデータなどのすべての情報がパケット化されて仮想的なＴＣＰ／ＩＰネットワーク上を転送される。通常、発信元のＣＰＵ側は、要求が発生した順に、コマンドやデータのパケットを作成し、送信先のＣＰＵへこれらのパケットを送信する。
【０００４】
しかしながら、画像データなどサイズの大きいデータを転送している途中で、システム全体の制御を行うＣＰＵから、ＭＰＥＧ２ストリームの処理を制御するＣＰＵに対して、たとえば録画開始、再生開始、停止などの指令を与えようとした場合、そのコマンドのパケット転送は、既に実行されているデータ転送の終了を待って開始されることになり、指令に対する応答性が著しく劣化するおそれがある。
【０００５】
引用文献１には、一般的なＴＣＰ／ＩＰネットワークを用いた無線ＬＡＮ基地局と無線端末との通信システムにおいて、ポート番号の範囲に対して優先度を割り当てておき、送信すべきパケットに付与されているポート番号の優先度に従って各パケットを２つのキューに振り分けて入れ、優先度の高いキューから先にパケットを送信する技術が開示されている。
【特許文献１】特開２００３−２９８５９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
バスを伝送媒体とする仮想的なＴＣＰ／ＩＰネットワークにより通信可能な２つのＣＰＵが搭載された電子機器装置においては、たとえば録画開始、再生開始、停止などのコマンドの通信が、既に実行されているサイズの大きいデータの転送が終了するまで待たされるおそれがあり、コマンド送受信の応答性が低下するおそれがあった。
【０００７】
本発明は、このような課題を解決するためのものであり、仮想的なネットワークにより通信可能なＣＰＵ間でのコマンド送受信の応答性を向上させることのできる電子機器装置およびパケット通信方法を提供しようとするものである。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、この発明の電子機器装置は、バスを伝送媒体とする仮想的なネットワークを通じて通信可能な２つのＣＰＵを有する電子機器装置であって、それぞれポート番号に対応付けられた複数の送信バッファと、送信すべきパケットに付加されているポート番号に基づいて、各パケットを複数の送信バッファに振り分ける手段と、あらかじめ定義されたポート番号と優先度との関係に従って、優先度の高い送信バッファから先にパケットを読み出してネットワークに送信する手段とを具備する。
【０００９】
また、本発明の他の形態の電子機器装置は、バスを伝送媒体とする仮想的なネットワークを通じて通信可能な２つのＣＰＵを有する電子機器装置であって、それぞれパケットサイズの分類に対応付けられた複数の送信バッファと、送信すべきパケットのサイズに基づいて、各パケットを複数の送信バッファに振り分ける手段と、小さいパケットサイズに対応付けられた送信バッファから先にパケットを読み出してネットワークに送信する手段とを具備することを特徴とする。
【発明の効果】
【００１０】
本発明の電子機器装置およびパケット通信方法によれば、仮想的なネットワークにより通信可能なＣＰＵ間でのコマンド送受信の応答性が向上する。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態を図面に基づき説明する。
【００１２】
図１は、本発明の一実施形態にかかる録画再生装置の構成を示すブロック図である。
【００１３】
同図に示すように、この録画再生装置は２つのＣＰＵ(Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ)１、２１を搭載している。
【００１４】
第１ＣＰＵ１にはノースブリッジ２が接続されている。ノースブリッジ２にはメインメモリであるメモリ３との通信用のインターフェースのほか、フレームバッファ４を有するグラフィックス機能が組み込まれている。第１ＣＰＵ１は、このノースブリッジ２内のグラフィックス機能を制御してメニュー画面などの画像をフレームバッファ４に描画する。フレームバッファ４から出力された映像信号５は、第２ＣＰＵ２１によって制御されるストリーム処理モジュール３２に送信される。
【００１５】
ノースブリッジ２にはサウスブリッジ６が接続されている。サウスブリッジ６には、ＩＤＥ（Ｉｎｔｅｇｒａｔｅｄ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ）コントローラ９、ＬＰＣ（Ｌｏｗ  Ｐｉｎ  Ｃｏｕｎｔ）コントローラ８、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス７とのインターフェース用のモジュール（図示せず）などが組み込まれている。
【００１６】
ＩＤＥコントローラ９にはＤＶＤ−ＲＯＭドライブ１０が接続されている。ＬＰＣコントローラ８には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）を記憶したＢＩＯＳ  ＲＯＭ１１と、システム全体の電源制御などを行うシステムコントローラ１２が接続されている。
【００１７】
ＰＣＩバス７には、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）コネクタ１４を介して外部のネットワークとの接続制御を行うＬＡＮコントローラ１３、およびストリーム処理モジュール３２が接続されている。
【００１８】
ストリーム処理モジュール３２は、ＭＰＥＧ２（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ  ｐｈａｓｅ  ２）ストリームの処理を行うモジュールである。ストリーム処理モジュール３２は、当該モジュール内部の各ブロック間での信号の入出力を制御する第２ＣＰＵ２１と、ノースブリッジ２からの映像信号５の入力を処理する映像信号入力回路１９と、ローカルバス２４と、ストリームプロセッサ２３と、ＭＰＥＧ２ストリームをデコードするＭＰＥＧ２デコーダ２０と、ローカルバス２４とＰＣＩバス７との接続を処理する内部バス・ＰＣＩブリッジ２２と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２８との接続を制御するＩＤＥコントローラ２５と、映像・音声信号出力回路１８とを有している。
【００１９】
映像・音声信号出力回路１８は、映像信号入力回路１９より入力した映像信号とＭＰＥＧ２デコーダ２０より出力された映像・音声信号とを合成して、モニター用およびスピーカ用の映像・音声出力１５を生成する回路である。
【００２０】
ストリーム処理モジュール３２の外部には、ストリーム処理モジュール３２を起動させるために第２ＣＰＵ２１によって実行されるブート用のプログラムなどが記憶されたブートＲＯＭ１６と、第２ＣＰＵ２１の作業領域であるメモリ１７が接続されている。
【００２１】
さらに、ストリーム処理モジュール３２のストリームプロセッサ２３は、ＭＰＥＧ２−ＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）バス２６よりＭＰＥＧ２−ＴＳを取り込み内部のローカルバス２４に供給する制御を行うものである。
【００２２】
ＴＶチューナ３１は、図示しないアンテナを通じてテレビ放送信号を受信する。ＮＴＳＣ（Ｎａｔｉｏｎａｌ  ＴＶ  Ｓｔａｎｄａｒｄｓ  Ｃｏｍｍｉｔｔｅｅ）デコーダ３０は、ＴＶチューナ３１により受信したテレビ放送信号をデジタルの映像・音声信号に変換する。ＭＰＥＧ２エンコーダ２９は、ＮＴＳＣデコーダ３０の出力からＭＰＥＧ２−ＴＳを生成する。
【００２３】
テレビ放送を録画するとき、ＭＰＥＧ２エンコーダ２９によって生成されたＭＰＥＧ２−ＴＳは、ＭＰＥＧ２−ＴＳバス２６を通じてストリーム処理モジュール３２のストリームプロセッサ２３によって取り込まれ、ローカルバス２４へ供給される。このとき、ストリーム処理モジュール３２の第２ＣＰＵ２１は、ＩＤＥコントローラ２５を制御してローカルバス２４からＨＤＤ２８にＭＰＥＧ２−ＴＳを記録する。
【００２４】
テレビ放送を再生するときは、第１ＣＰＵ１はＰＣＩバス７を通じてストリーム処理モジュール３２に再生開始のコマンドを送る。ストリーム処理モジュール３２の第２ＣＰＵ２１は再生開始のコマンドを受けると、ＩＤＥコントローラ２５を制御し、ＨＤＤ２８からＭＰＥＧ２−ＴＳを読み出し、ローカルバス２４を通じてＭＰＥＧ２デコーダ２０に送る。ＭＰＥＧ２デコーダ２０の出力は映像・音声信号出力回路１８にて、表示装置用およびスピーカ用の映像・音声信号となって出力される。
【００２５】
図２に示すように、第１ＣＰＵ１と第２ＣＰＵ２１とは、それぞれのＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）に組み込まれている仮想ネットワークドライバ３３、３４により、ＰＣＩバス７を伝送媒体とする仮想的なネットワークを通じて通信可能とされている。ここで、第１ＣＰＵ１と第２ＣＰＵ２１との間で仮想的なネットワークを通じて通信される情報には、第１ＣＰＵ１から第２ＣＰＵ２１に対して録画再生の開始や停止などを指示するコマンド、第２ＣＰＵ２１から第１ＣＰＵ１に対する録画再生の終了やエラー発生などのイベントの通知、さらには画像や音声などのデータなどがある。
【００２６】
図３に示すように、ＨＤＤ２８には、第１ＣＰＵ用ＯＳ領域４１、第２ＣＰＵ用ＯＳ領域４２、第１ＣＰＵ用スワップ領域４３、第２ＣＰＵ用スワップ領域４４、第１ＣＰＵ用データ領域４５、および第２ＣＰＵ用データ領域４６が設けられている。
【００２７】
第１ＣＰＵ用ＯＳ領域４１、第１ＣＰＵ用スワップ領域４３、第１ＣＰＵ用データ領域４５は、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）によるネットワーク経由のファイルサービスであるＮＦＳ（Ｎｅｔｗｏｒｋ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）でマウントされている。これにより第１ＣＰＵ１からＨＤＤ２８は、あたかも自分のドライブのようにアクセスすることが可能である。
【００２８】
次に、図３および図４を参照して、ＨＤＤ２８に記録されたデータをＮＦＳ径由で仮想的なネットワークを通じて第１ＣＰＵ１に転送する場合の動作を説明する。
【００２９】
第２ＣＰＵ２１のＮＦＳサーバ５１は、第１ＣＰＵ１のＮＦＳクライアント５４からのデータの読み出しコマンドに応じて、ＨＤＤ２８の第２ＣＰＵ用データ領域４６から該当するデータを読み出す。第２ＣＰＵ２１は、ＨＤＤ２８から読み出されたデータを送信すべき実データ６１として、ＴＣＰ通信のプロトコルに関するプログラムであるＴＣＰスタック５２にわたす。また、ＴＣＰスタック５２へは、ＮＦＳのポート番号である”２０４９”が発信元ポート番号および送信先ポート番号として与えられる。
【００３０】
ＴＣＰスタック５２は、取得した発信元ポート番号および送信先ポート番号を含むＴＣＰヘッダ６２を生成し、このＴＣＰヘッダ６２を実データ６１の前に付加してＴＣＰパケット６３を生成し、これをＩＰスタック５３にわたす。
【００３１】
ＩＰスタック５３は、ＩＰ通信のプロトコルに関するプログラムであり、ＴＣＰスタック５２よりわたされたＴＣＰパケット６３の前に発信元ＩＰアドレスおよび送信先ＩＰアドレスを含むＩＰヘッダ６４を付加してＩＰパケット６５を生成し、仮想ネットワークドライバ３４にわたす。
【００３２】
仮想ネットワークドライバ３４は、ＩＰスタック５３よりわたされたＩＰパケット６５の前に、発信元ＭＡＣアドレスおよび送信先ＭＡＣアドレスを含むＭＡＣヘッダ６６を付加してＭＡＣパケットを生成し、これを仮想ネットワークであるＰＣＩバス７に送出する。
【００３３】
一方、第１ＣＰＵ側では、仮想ネットワークドライバ３３は、ＰＣＩバス７から自分宛ての送信先ＭＡＣアドレスを含むＭＡＣパケットを受信し、このＭＡＣパケットからＭＡＣヘッダ６６を取り除いた部分（ＩＰパケット６５）をＩＰスタック５６へわたす。ＩＰスタック５６は、自分宛ての送信先ＩＰアドレスをＩＰヘッダ６４に含むＩＰパケット６５を取得すると、このＩＰパケット６５からＩＰヘッダ６４を除いた部分（ＴＣＰパケット６３）６３をＴＣＰスタック５５にわたす。ＴＣＰスタック５５は、受信したＴＣＰパケット６３のＴＣＰヘッダ６２に含まれる送信元ポート番号を取得する。この例は、ＮＦＳ径由でのデータ転送であるため、ポート番号には発信元、送信先ともに”２０４９”が用いられている。したがって、この送信元ポート番号に対応するアプリケーションであるＮＦＳクライアント５４に、ＴＣＰパケット６３からＴＣＰヘッダ６２を除いた部分であるデータ６１をわたす。以上により、ＨＤＤ２８に記録されたデータがＮＦＳ経由で第１ＣＰＵ１に転送され、第１ＣＰＵ１は、このデータをたとえばＤＶＤ−ＲＯＭドライブ１０によって書き込み可能な光ディスクに記録する。
【００３４】
また、第１ＣＰＵ１が、ＤＶＤ−ＲＯＭドライブ１０によって光ディスクから読み出したデータを、ＮＦＳ経由でＨＤＤ２８に記録する場合のデータ転送も、上記と同様に行われる。
【００３５】
第１ＣＰＵ１と第２ＣＰＵ２１との間で仮想的なネットワークを通じて通信される情報には、上記のデータのほか、たとえば、第１ＣＰＵ１から第２ＣＰＵ２１への録画再生の開始、停止といったコマンドや、第２ＣＰＵ２１から第１ＣＰＵ１への録画再生の終了やエラーなどのイベントの通知などがある。
【００３６】
以下、図５を参照して、第１ＣＰＵ１から第２ＣＰＵ２１に対して仮想的なネットワークを通じてコマンドを送信する場合の動作を説明する。
【００３７】
第１ＣＰＵ１のシステム制御プログラム７１によって生成された、第２ＣＰＵ２１のＭＰＥＧ映像制御プログラム７２に対するコマンドは、送信すべきパケット内の実データとしてＴＣＰスタック５５に与えられる。また、ＴＣＰスタック５５へは、システム制御プログラム７１およびＭＰＥＧ映像制御プログラム７２のポート番号（＝５０００）が発信元ポート番号および送信先ポート番号として与えられる。
【００３８】
ＴＣＰスタック５５は、取得した発信元ポート番号および送信先ポート番号を含むＴＣＰヘッダ６２を生成し、このＴＣＰヘッダ６２を実データ（コマンド）６１の前に付加してＴＣＰパケット６３を生成し、これをＩＰスタック５６にわたす。
【００３９】
ＩＰスタック５６は、ＴＣＰスタック５５よりわたされたＴＣＰパケット６３の前に発信元ＩＰアドレスおよび送信先ＩＰアドレスを含むＩＰヘッダ６４を付加してＩＰパケット６５を生成し、仮想ネットワークドライバ３３にわたす。
【００４０】
仮想ネットワークドライバ３３は、ＩＰスタック５６よりわたされたＩＰパケット６５の前に、発信元ＭＡＣアドレスおよび送信先ＭＡＣアドレスを含むＭＡＣヘッダ６６を付加してＭＡＣパケットを生成し、これを仮想ネットワークであるＰＣＩバス７に送出する。
【００４１】
一方、第２ＣＰＵ側では、仮想ネットワークドライバ３４は、ＰＣＩバス７から自分宛ての送信先ＭＡＣアドレスを含むＭＡＣパケットを受信し、このＭＡＣパケットからＭＡＣヘッダ６６を取り除いた部分（ＩＰパケット６５）をＩＰスタック５３へわたす。ＩＰスタック５３は、自分宛ての送信先ＩＰアドレスをＩＰヘッダ６４に含むＩＰパケット６５を取得すると、このＩＰパケット６５のからＩＰヘッダ６４を除いた部分（ＴＣＰパケット６３）をＴＣＰスタック５２にわたす。ＴＣＰスタック５２は、受信したＴＣＰパケット６３のＴＣＰヘッダ６２に含まれる送信元ポート番号を取得する。この例は、システム制御プログラム７１およびＭＰＥＧ映像制御プログラム７２のポート番号（＝５０００）が発信元ポート番号および送信先ポート番号として取得されるので、ＭＰＥＧ映像制御プログラム７２に対して、ＴＣＰパケット６３からＴＣＰヘッダ６２を除いた部分である実データ（コマンド）６１がわたされる。
【００４２】
以上により、仮想的なネットワークを通じて第１ＣＰＵ１から第２ＣＰＵ２１へのコマンドの送信が行われる。
【００４３】
また、第２ＣＰＵ２１から第１ＣＰＵ１への、録画再生の終了や、エラーなどのイベントの通知も、その通知内容を実データとして上記と同様に行われる。
【００４４】
次に、上記の仮想的なネットワークを用いた２つのＣＰＵ１、２１間の通信において、ＮＦＳ径由のデータ転送よりも、システム制御プログラム７１、ＭＰＥＧ映像制御プログラム７２などのアプリケーション間でのコマンドの通信を優先させる機構について説明する。
【００４５】
図６は、ポート番号に基づいてコマンドの通信を優先させる機構を実装した仮想ネットワークドライバ３３、３４の構成を示している。
【００４６】
同図に示すように、仮想ネットワークドライバ３３、３４は、それぞれポート番号に対応付けられた複数の送信バッファ７４、７５、７６、７７と、ＩＰスタック５３、５６から送信パケットを受け取り、この送信パケットに付加されているポート番号に基づいて、各パケットを複数の送信バッファ７４、７５、７６、７７に振り分けて書き込むＴＣＰ／ＩＰインターフェースモジュール７３と、優先度とポート番号との対応関係が登録された表７８と、表７８を参照しつつ優先度の高いポート番号に対応する送信バッファから先にパケットを読み出して仮想的なネットワークに送信するＤＭＡ転送モジュール７９とを備えている。
【００４７】
かかる機構によれば、優先度が高く設定されたポート番号が付与されたパケットから先に仮想的なネットワークに送出することができる。すなわち、ＴＣＰ／ＩＰインターフェースモジュール７３は、ＩＰスタック５３、５６より順番にわたされたパケットに付与されているポート番号を読み取り、このポート番号に対応する送信バッファにパケットを書き込む。たとえば、図３に示したＮＦＳ径由で転送されるパケットの場合、ポート番号は”２０４９”であるため、ポート番号２０４９用の送信バッファ７５にパケットが書き込まれる。また、図５に示した第１のＣＰＵ１側のシステム制御プログラム７１と第２のＣＰＵ２１側のＭＰＥＧ映像制御プログラム７２との間で通信されるパケットの場合は、ポート番号は”５０００”であるため、ポート番号５０００用の送信バッファ７６にパケットが書き込まれる。
【００４８】
ＤＭＡ転送モジュール７９は、優先度とポート番号との表７８を参照して、優先度の高いポート番号の送信バッファから先にパケットの有無を調べ、パケットが存在すればそのパケットを取り出してネットワークに送出する。ここで、ポート番号５０００はポート番号２０４９より優先度が高いので、ポート番号５０００用の送信バッファ７６とポート番号２０４９用の送信バッファ７５とに共にパケットが保持されている場合であっても、各送信バッファ７５、７６へのパケットの書き込み順にかかわらず、ポート番号５０００用の送信バッファ７６からパケットを取り出し、ポート番号５０００用の送信バッファ７６にパケットが無くなってから以後に、ポート番号２０４９用の送信バッファ７５からパケットを取り出してネットワークに送信する。
【００４９】
このようにして第１ＣＰＵ側のシステム制御プログラム７１と第２ＣＰＵ側のＭＰＥＧ映像制御プログラム７２との間の通信のように、リアルタイム性が要求される通信を、ＮＦＳ径由のデータ転送などの他の通信よりも優先して実行することができる。
【００５０】
次に、本発明の第２の実施形態を説明する。
【００５１】
この実施形態は、パケットのサイズによりパケットの優先度付けを行うものである。
【００５２】
一般に、パケットのサイズは、ＭＴＵ（Ｍａｘｉｍｕｍ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｕｎｉｔ）によって制約される。ＭＴＵはインターネットで一度の転送で送信できるデータ分割ブロック（ＩＰパケット６５）の最大値である。たとえば、図７に示すように、４０００バイトの画像データ８０を転送する場合、ＭＴＵの値として１５００が設定されているならば、画像データ８０は、１５００バイトの２つのＩＰパケット８１、８２と１０００バイトの１つのＩＰパケット８３とで送信されることになる。これに対して、各ＣＰＵ１、２１のシステム制御プログラム７１とＭＰＥＧ映像制御プログラム７２との間でやりとりされるコマンドは、再生開始を例をすると、たとえば図８に示すように、４バイトのコマンドコード８４と、再生開始時間（時：分：秒）を示す１２バイトのパラメータ８５、８６、８７とで構成され、ＩＰパケットのサイズは１６バイトにすぎない。
【００５３】
図９は、パケットのサイズによりパケットの優先度付けを行う機構が実装された仮想ネットワークドライバ３３、３４の構成を示している。
【００５４】
同図に示すように、この実施形態の仮想ネットワークドライバ３３、３４は、ネットワークにデータを送信するための構成として、パケットが保持される複数の送信バッファ９１、９２、９３を備えている。それぞれの送信バッファ９１、９２、９３へは、ＩＰパケット６５のサイズによって各パケットが振り分けられる。ここでは３つの送信バッファ９１、９２、９３が設けられており、第１送信バッファ９１は、ＩＰパケットサイズが０以上でＭＴＵ／２未満のパケットを保持する送信バッファである。第２送信バッファ９２は、ＩＰパケットサイズがＭＴＵ／２以上でＭＴＵ未満のパケットを保持する送信バッファである。第３送信バッファ９３は、ＩＰパケットサイズがＭＴＵのパケットを保持する送信バッファである。 
ＴＣＰ／ＩＰインターフェースモジュール９４は、ＩＰスタック５３、５６より順番にわたされたパケットのＩＰパケットサイズを調べ、このＩＰパケットサイズに適合する送信バッファにパケットを書き込む。たとえば、図７に示した画像データのパケットのほとんどは、ＩＰパケットサイズがＭＴＵであるので、第３送信バッファ９３へ書き込む。図８に示したコマンドのパケットのほとんどはＩＰパケットサイズが０以上でＭＴＵ／２未満であるので、第１送信バッファ９２に書き込む。
【００５５】
ＤＭＡ転送モジュール９５は、保持するパケットのＩＰパケットサイズが小さい送信バッファほど優先度が高いものとして、優先度の高い送信バッファから先にパケットの有無を調べ、パケットが存在すればそのパケットを取り出してネットワークに送出する。したがって、たとえば、第１送信バッファ９１と第３送信バッファ９３とに共にパケットが保持されている場合、送信バッファへのパケットの書き込み順にかかわらず、第１送信バッファ９１からパケットを取り出し、この第１送信バッファ９１にパケットが無くなってから以後に、第３送信バッファ９３からパケットを取り出してネットワークに送信する。
【００５６】
前述したように、コマンドのＩＰパケットサイズは画像データのそれよりも小さいので、この実施形態の機構によれば、たとえば、第１ＣＰＵ側のシステム制御プログラム７１と第２ＣＰＵ側のＭＰＥＧ映像制御プログラム７２との間でのコマンドやイベントの通信のように、リアルタイム性が要求される通信を、ＮＦＳ径由のデータ転送などの他の通信よりも優先して実行することができる。
【００５７】
なお、本発明は、上述の実施形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【図面の簡単な説明】
【００５８】
【図１】本発明の一実施形態にかかる録画再生装置の構成を示すブロック図である。
【図２】仮想的なネットワークによる２つのＣＰＵ間の接続を示す図である。
【図３】仮想的なネットワークを通じて第２ＣＰＵ側のＨＤＤに記録されたデータを第１ＣＰＵ側に転送する場合のデータの流れを示す図である。
【図４】ＴＣＰ／ＩＰネットワークで用いられるパケットの構成とその作成の流れを示す図である。
【図５】仮想的なネットワークを通じて第１ＣＰＵから第２ＣＰＵに対してコマンドを送信する場合のコマンドの流れを示す図である。
【図６】ポート番号に基づいてコマンドの通信を優先させる機構を実装した仮想ネットワークドライバの構成を示す図である。
【図７】送信するデータのＭＴＵによる分割とそのデータサイズを説明する図である。
【図８】コマンドの構成とそのサイズの例を示す図である。
【図９】パケットのサイズによりパケットの優先度付けを行う機構が実装された仮想ネットワークドライバの構成を示す図である。
【符号の説明】
【００５９】
１…第１ＣＰＵ、２…第２ＣＰＵ、７…ＰＣＩバス、３３，３４…仮想ネットワークドライバ、７３…ＴＣＰ／ＩＰインターフェースモジュール、７４，７５，７６，７７…送信バッファ、７９…ＤＭＡ転送モジュール、９１…第１送信バッファ、９２…第２送信バッファ、９３…第３送信バッファ、９４…ＴＣＰ／ＩＰインターフェースモジュール、９５…ＤＭＡ転送モジュール。
【図１】
2006049975.tif 000003
【図２】
2006049975.tif 000004
【図３】
2006049975.tif 000005
【図４】
2006049975.tif 000006
【図５】
2006049975.tif 000007
【図６】
2006049975.tif 000008
【図７】
2006049975.tif 000009
【図８】
2006049975.tif 000010
【図９】
2006049975.tif 000011