JP2008059577A - ネットワークチップ及びネットワーク送受信装置 - Google Patents

ネットワークチップ及びネットワーク送受信装置 Download PDF

Info

Publication number
JP2008059577A
JP2008059577A JP2007201690A JP2007201690A JP2008059577A JP 2008059577 A JP2008059577 A JP 2008059577A JP 2007201690 A JP2007201690 A JP 2007201690A JP 2007201690 A JP2007201690 A JP 2007201690A JP 2008059577 A JP2008059577 A JP 2008059577A
Authority
JP
Japan
Prior art keywords
packet
data packet
time
network
received
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.)
Withdrawn
Application number
JP2007201690A
Other languages
English (en)
Inventor
Takeshi Hatakeyama
武士 畠山
Masataka Irie
誠隆 入江
Akifumi Nagao
彰文 長尾
Takeshi Yoshida
武史 吉田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2007201690A priority Critical patent/JP2008059577A/ja
Publication of JP2008059577A publication Critical patent/JP2008059577A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

【課題】受信したパケットに応じて割り込みを制御することができるネットワークチップを提供する。
【解決手段】ネットワークチップは、遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別を含むデータパケットを受信し、受信したデータパケットを解析して、受信したパケットがデータパケットに含まれる種別を取得し、取得した種別がリアルタイムパケットであることを示す場合に、受信したデータパケットをリアルタイム受信パケットバッファに格納し、即時にCPUに対して割込発行を行う。また、取得した種別が非リアルタイムパケットであることを示す場合には、ネットワークチップは、受信したポケットを非リアルタイム受信パケットバッファに蓄積し、一定期間の経過後、若しくは蓄積されたパケットの数が一定数以上となった場合に、CPUに対して割込発行を行う。
【選択図】図1

Description

本発明は、ネットワークチップがCPU(Central Processing Unit:中央処理ユニット)に対して割り込みを制御する技術に関する。
従来、ネットワークチップからCPUへの割り込みを低減し、CPUのスリープ期間を長くすることにより、装置としての低消費電力を実現するネットワークチップおよびネットワーク送受信装置がある。
例えば、特許文献1にて以下に示す技術が開示されている。
ネットワークチップは、データパケット(以下、単に「パケット」という。)を受信し、受信したパケットをバッファに格納する。ネットワークチップは、パケットの受信から一定時間経過後、またはバッファに格納されたパケット数が予め定められた一定数以上になった場合に、CPUに対して割り込みを行う。
上記に示すネットワークチップは、パケットを1つ受信する毎にCPUに対して割り込みを発行する場合と比べて、割り込み回数を低減することができる。これにより、CPUがスリープする期間を長くすることができ、結果として低消費電力を実現するネットワーク送信受信装置を実現できる。
特開2005−267294号公報
しかしながら、上記にて示すネットワークチップでは、受信したパケットの内容に基づいて、割り込みを制御することができない。
例えば、受信したパケットのデータが即座に処理されるべきデータである場合でも、従来のネットワークチップは、パケットの受信から一定時間経過するまで、またはバッファに格納されたパケット数が予め定められた一定数以上になるまでバッファに格納して処理するので、受信したパケットのデータが即座に処理されることがない。
そこで、本発明は、上記課題に鑑み、受信したパケットに応じて割り込みを制御することができるネットワークチップ、ネットワーク送受信装置、及び割込制御方法を提供することを目的とする。
上記目的を達成するために、本発明は、ネットワークにより接続された外部装置に対してデータパケットを送受信するネットワークチップであって、前記外部装置から受信したデータパケットの解析を行う解析手段と、解析して得られた結果に基づいて、受信したデータパケットが、当該ネットワークチップを含む装置に具備される中央処理ユニットに対して受信したデータパケットの処理を依頼する割込の発行が即時にされるべきものか否かを判断する判断手段と、即時に発行されるべきものでないと判断される場合に、時間計時を開始し、開始から所定の時間を経過すると、割り込み発行の通知を行うタイマ部と、前記判断手段による判断結果、若しくは前記タイマ部の通知に応じて前記中央処理ユニットに対して割込の発行を行う制御手段とを備えることを特徴とする。
上記にて示す構成によると、ネットワークチップは、受信したデータパケットを解析し、解析して得られた結果、即時に割込発行、若しくは設定時間経過後に割込発行を行うことができる。
ここで、前記データパケットは、当該データパケットの重要の程度を示す属性を含み、前記解析手段は、前記外部装置から受信したデータパケットの属性を解析し、前記判断手段は、属性を解析して得られた結果に基づいて、受信したデータパケットが重要なデータパケットであるか否かを判断し、前記制御手段は、前記判断手段が受信したデータパケットが重要なデータパケットであると判断する場合に即時に前記中央処理ユニットに対して割込の発行を行うとしてもよい。
この構成によると、ネットワークチップは、受信したデータパケットの属性に基づいて、受信したデータパケットが重要なデータパケットであるか否かを判定するので、受信したデータパケットの属性に応じて、中央処理ユニットに対する割込発行を制御することができる。
ここで、前記属性は、当該データパケットが遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別であり、前記解析手段は、受信したデータパケットの種別を取得し、前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワークチップは、受信したデータパケットがリアルタイムパケットである場合に中央処理ユニットに対して割込発行を行うので、従来のネットワークチップのようにパケットの受信から一定時間経過するまで、またはバッファに格納されたパケット数が予め定められた一定数以上になるまで割り込みの発行を待つ必要がない。つまり、本発明のネットワークチップは、受信したデータパケットがリアルタイムパケットである場合には、中央処理ユニットに対して割込発行を行うので、リアルタイムパケットに対する遅延時間を従来よりも短くすることができる。
ここで、前記属性は、当該データパケットが処理されるべきアプリケーションを示すアプリケーション情報であり、前記ネットワークチップは、ネットワーク接続はされているが、アプリケーションレベルでの接続はされていない状態であり、前記中央処理ユニットから指定されたアプリケーションに係る指定情報を予め記憶しており、前記解析手段は、受信したデータパケットがアプリケーションに係るデータパケットであるかを解析し、前記判断手段は、解析して得られた結果により受信したデータパケットがアプリケーションに係るデータパケットである場合には、受信したデータパケットに含まれる前記アプリケーション情報に基づいて、受信したデータパケットが前記指定情報に対するデータパケットであるか否かを判定し、前記指定情報に対するデータパケットであると判定する場合に、受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワークチップは、受信したデータパケットが中央処理ユニットから指定された指定情報に対するアプリケーションに係るデータパケットである場合に中央処理ユニットに対して割込発行を行うので、中央処理ユニットは指定したアプリケーションに係るデータパケット以外のデータパケット対する処理を行う必要が無くなり、中央処理ユニットにおける処理を軽減することができる。
ここで、前記アプリケーション情報は、当該データパケットが処理されるべきアプリケーションを識別する第1ポート番号であり、前記指定情報は、前記中央処理ユニットから指定されたアプリケーションを識別する第2ポート番号であり、前記判断手段は、受信したデータパケットに含まれる前記第1ポート番号が、前記第2ポート番号と一致する場合に、受信したデータパケットが前記指定情報に対するデータパケットであると判定するとしてもよい。
この構成によると、ネットワークチップは、受信したデータパケットに含まれる第1ポート番号と、予め記憶している第2ポート番号とを用いて、受信したデータパケットが中央処理ユニットから指定された指定情報に対するアプリケーションに係るデータパケットであるか否かを判定することができる。
ここで、前記属性は、ネットワークを識別するネットワーク識別子であり、前記ネットワークチップは、ネットワークと非接続の状態にあり、複数のネットワークのうち前記中央処理ユニットから指定された1のネットワークを識別する指定識別子を予め記憶しており、前記解析手段は、受信したデータパケットを解析することにより、受信したデータパケットに含まれるネットワーク識別子を取得し、前記判断手段は、受信したデータパケットから取得したネットワーク識別子が予め記憶している指定識別子と一致するか否かを判定し、一致すると判定する場合に受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワークチップは、受信したデータパケットが中央処理ユニットから指定されたネットワークにおけるデータパケットである場合に中央処理ユニットに対して割込発行を行うので、中央処理ユニットは指定したネットワークにおけるデータパケット以外のデータパケット対する処理を行う必要が無くなり、中央処理ユニットにおける処理を軽減することができる。
ここで、ネットワーク識別子を含むデータパケットは、ビーコンパケットであり、前記解析手段は、受信したビーコンパケットを解析することにより、受信したビーコンパケットに含まれるネットワーク識別子を取得し、前記判断手段は、取得した前記ネットワーク識別子が前記指定識別子と一致するか否かを判定するとしてもよい。
この構成によると、ネットワークチップは、ビーコンパケットに含まれるネットワーク識別子を用いて、受信したビーコンパケットが中央処理ユニットから指定されたネットワークにおけるビーコンパケットであるか否かを判定することができる。
ここで、前記属性は、データパケットの送信先の宛先を示す宛先情報であり、前記解析手段は、受信したデータパケットを解析することにより、前記宛先情報を取得し、前記判断手段は、前記宛先情報が示す送信先の宛先が当該ネットワークチップを含む装置宛であるか否かを判定し、前記装置宛であると判定する場合に受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワークチップは、受信したデータパケットが当該ネットワークチップを含む装置宛である場合に中央処理ユニットに対して割込発行を行うので、中央処理ユニットは自装置宛のデータパケット以外のデータパケット対する処理を行う必要が無くなり、中央処理ユニットにおける処理を軽減することができる。
ここで、宛先情報は、送信先の装置を識別する宛先IPアドレスであり、前記ネットワークチップは、当該ネットワークチップを含む装置に割り当てられた装置IPアドレスを予め記憶しており、前記判断手段は、前記装置IPアドレスが、前記宛先IPアドレスと一致する場合に前記装置宛であると判定するとしてもよい。
この構成によると、ネットワークチップは、受信したデータパケットに含まれる宛先IPアドレスと、装置に割り当てられた装置IPアドレスを用いて、受信したデータパケットが自装置宛のデータパケットであるか否かを判断することができる。
ここで、前記ネットワークチップが受信するデータパケットは、遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別を含み、前記中央処理ユニットは、前記外部装置へデータパケットを送信する送信処理時に、所定のパケット記憶領域に格納された1つ以上のリアルタイムパケットに対する処理を施し、前記ネットワークチップは、前記送信処理においてデータパケットを送信する時間を管理しており、前記解析手段は、受信したデータパケットの種別を取得し、取得した種別がリアルタイムパケットであることを示す場合に、受信したリアルタイムパケットを前記所定のパケット記憶領域に蓄積し、前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、次にデータパケットの送信を行うまでの時間が遅延時間として許容される所定の一定時間以上であるか否かを判断し、前記制御手段は、前記判断手段による判断結果が肯定的である場合に、前記中央処理ユニットに対して即時に割り込みを発行するとしてもよい。
この構成によると、受信したリアルタイムパケットは、次にデータパケットの送信を行うまでの時間が所定の一定時間以上である場合にはネットワークチップによる割込発行時に処理がなされ、所定時間以上でない場合には中央処理ユニットの送信処理時に処理がなされるので、遅延時間として許容される時間が経過した後に受信したリアルタイムパケットに対する処理がなされることはない。
また、本発明によるネットワークチップは、次にデータパケットの送信を行うまでの時間が所定の一定時間以上である場合に割込発行を行うので、リアルタイムパケットを1つ受信する毎に割込発行を行う場合と比べて、割り込み回数を低減することができる。
ここで、前記ネットワークチップは、データパケットの送信時間間隔を予め記憶している時間記憶領域を有し、前記送信時間間隔に基づいて、データパケットを送信する時間を管理するとしてもよい。
この構成によると、ネットワークチップは、送信時間間隔に基づいて、次にデータパケットの送信を行うまでの時間を管理することができる。
ここで、前記ネットワークチップは、過去に送信された複数のデータパケットそれぞれに対する送信時間の履歴情報を予め記憶しており、前記判断手段は、前記複数の履歴情報に基づいて次に送信するデータパケットの送信時間を検出し、検出した送信時間が所定の一定時間内であるか否かを判断するとしてもよい。
この構成によると、ネットワークチップは、複数の履歴情報に基づいて、次にデータパケットの送信を行うまでの時間を管理することができる。
ここで、前記外部装置から送信されるデータパケットには複数の種別があり、前記外部装置は、前記複数の種別それぞれに対応するバースト転送期間の時間に基づいて、バースト転送によりバースト転送期間中は同一種別のデータパケットを前記ネットワークチップに送信し、前記ネットワークチップは、前記複数の種別それぞれに対応するバースト転送期間の時間を予め記憶しており、バースト転送期間中は同一種別のデータパケットを受信し、前記解析手段は、バースト転送開始時に受信したデータパケットを解析することにより、受信したデータパケットの種別に対応するバースト転送期間の時間を取得し、前記判断手段は、取得したバースト転送期間の時間に基づいてバースト転送の期間中であるかを判断し、前記制御手段は、前記判断手段がバースト転送の期間中であると判断する場合に前記中央処理ユニットに対する割込発行を即時には行わないとしてもよい。
この構成によると、ネットワークチップは、バースト転送期間中である場合には割込発行を抑止するので、データパケットを1つ受信する毎に割り込みを発行する必要がない。これにより、割り込み回数を低減することができる。
ここで、前記ネットワークチップは、割込処理が終了するまでの間、受信した1個以上のデータパケットを、所定のパケット記憶領域に格納し、前記判断手段は、バースト転送が終了したと判定する場合に、さらに、前記パケット記憶領域に格納された先頭データパケットの受信時刻から一定時間以上経過した、または前記パケット記憶領域に格納されているデータパケットの数が一定数以上であるの何れかの条件を満たすか否かを判断し、前記制御手段は、さらに、前記何れかの条件を満たすと判断する場合に前記中央処理ユニットに対して即時に割込発行を行うとしてもよい。
この構成によると、ネットワークチップは、バースト転送終了時に、パケット記憶領域の先頭データパケットの受信時刻から予め記憶している一定時間以上経過した、またはパケット記憶領域に格納されているデータパケット数が予め定められた一定数以上であるの何れかの条件を満たす場合に、割込発行を行うと判断するので、割り込み回数を低減することができる。
ここで、前記判断手段は、さらに、バースト転送が終了したと判定する場合に、即時に割り込みを行うと判断し、前記制御手段は、さらに、前記判断手段が即時に割り込みを行うと判断する場合に、即時に前記中央処理ユニットに対する割込発行を行うとしてもよい。
この構成によると、ネットワークチップは、バースト転送終了時に割込発行を行うと判断するので、割り込み回数を低減することができる。
また、本発明は、中央処理ユニットと、ネットワークにより接続された外部装置に対してデータパケットを送受信するネットワークチップとを含むネットワーク送受信装置であって、前記ネットワークチップは、前記外部装置から受信したデータパケットの解析を行う解析手段と、解析して得られた結果に基づいて、受信したデータパケットが、当該ネットワークチップを含む装置に具備される中央処理ユニットに対して受信したデータパケットの処理を依頼する割込の発行が即時にされるべきものか否かを判断する判断手段と、即時に発行されるべきものでないと判断される場合に、時間計時を開始し、開始から所定の時間を経過すると、割り込み発行の通知を行うタイマ部と、前記判断手段による判断結果、若しくは前記タイマ部の通知に応じて前記中央処理ユニットに対して割込の発行を行う制御手段とを備え、前記中央処理ユニットは、前記ネットワークチップより割込の発行があった場合に、受信したデータパケットの処理を行うことを特徴とする。
この構成によると、ネットワーク送受信装置は、受信したデータパケットを解析し、解析して得られた結果、即時に割込発行、若しくは設定時間経過後に割込発行を行うことができる。
ここで、前記データパケットは、当該データパケットの重要の程度を示す属性を含み、前記解析手段は、前記外部装置から受信したデータパケットの属性を解析し、前記判断手段は、属性を解析して得られた結果に基づいて、受信したデータパケットが重要なデータパケットであるか否かを判断し、前記制御手段は、前記判断手段が受信したデータパケットが重要なデータパケットであると判断する場合に即時に前記中央処理ユニットに対して割込の発行を行うとしてもよい。
この構成によると、ネットワーク送受信装置は、受信したデータパケットの属性に基づいて、受信したデータパケットが重要なデータパケットであるか否かを判定するので、受信したデータパケットの属性に応じて、中央処理ユニットに対する割込発行を制御することができる。
ここで、前記属性は、当該データパケットが遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別であり、前記解析手段は、受信したデータパケットの種別を取得し、前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワーク送受信装置は、受信したデータパケットがリアルタイムパケットである場合に中央処理ユニットに対して割込発行を行うので、従来のネットワークチップのようにパケットの受信から一定時間経過するまで、またはバッファに格納されたパケット数が予め定められた一定数以上になるまで割り込みの発行を待つ必要がない。つまり、本発明のネットワークチップは、受信したデータパケットがリアルタイムパケットである場合には、中央処理ユニットに対して割込発行を行うので、リアルタイムパケットに対する遅延時間を従来よりも短くすることができる。
ここで、前記属性は、当該データパケットが処理されるべきアプリケーションを示すアプリケーション情報であり、前記ネットワークチップは、ネットワーク接続はされているが、アプリケーションレベルでの接続はされていない状態であり、前記中央処理ユニットから指定されたアプリケーションに係る指定情報を予め記憶しており、前記解析手段は、受信したデータパケットがアプリケーションに係るデータパケットであるかを解析し、前記判断手段は、解析して得られた結果により受信したデータパケットがアプリケーションに係るデータパケットである場合には、受信したデータパケットに含まれる前記アプリケーション情報に基づいて、受信したデータパケットが前記指定情報に対するデータパケットであるか否かを判定し、前記指定情報に対するデータパケットであると判定する場合に、受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワーク送受信装置のネットワークチップは、受信したデータパケットが中央処理ユニットから指定された指定情報に対するアプリケーションに係るデータパケットである場合に中央処理ユニットに対して割込発行を行うので、中央処理ユニットは指定したアプリケーションに係るデータパケット以外のデータパケット対する処理を行う必要が無くなり、中央処理ユニットにおける処理を軽減することができる。
ここで、前記アプリケーション情報は、当該データパケットが処理されるべきアプリケーションを識別する第1ポート番号であり、前記指定情報は、前記中央処理ユニットから指定されたアプリケーションを識別する第2ポート番号であり、前記判断手段は、受信したデータパケットに含まれる前記第1ポート番号が、前記第2ポート番号と一致する場合に、受信したデータパケットが前記指定情報に対するデータパケットであると判定するとしてもよい。
この構成によると、ネットワーク送受信装置のネットワークチップは、受信したデータパケットに含まれる第1ポート番号と、予め記憶している第2ポート番号とを用いて、受信したデータパケットが中央処理ユニットから指定された指定情報に対するアプリケーションに係るデータパケットであるか否かを判定することができる。
ここで、前記属性は、ネットワークを識別するネットワーク識別子であり、前記ネットワークチップは、ネットワークと非接続の状態にあり、複数のネットワークのうち前記中央処理ユニットから指定された1のネットワークを識別する指定識別子を予め記憶しており、前記解析手段は、受信したデータパケットを解析することにより、受信したデータパケットに含まれるネットワーク識別子を取得し、前記判断手段は、受信したデータパケットから取得したネットワーク識別子が予め記憶している指定識別子と一致するか否かを判定し、一致すると判定する場合に受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワーク送受信装置のネットワークチップは、受信したデータパケットが中央処理ユニットから指定されたネットワークにおけるデータパケットである場合に中央処理ユニットに対して割込発行を行うので、中央処理ユニットは指定したネットワークにおけるデータパケット以外のデータパケット対する処理を行う必要が無くなり、中央処理ユニットにおける処理を軽減することができる。
ここで、ネットワークの識別子を含むデータパケットは、ビーコンパケットであり、前記解析手段は、受信したビーコンパケットを解析することにより、受信したビーコンパケットに含まれるネットワーク識別子を取得し、前記判断手段は、取得した前記ネットワーク識別子が前記指定識別子と一致するか否かを判定するとしてもよい。
この構成によると、ネットワーク送受信装置のネットワークチップは、ビーコンパケットに含まれるネットワーク識別子を用いて、受信したビーコンパケットが中央処理ユニットから指定されたネットワークにおけるビーコンパケットであるか否かを判定することができる。
ここで、前記属性は、データパケットの送信先の宛先を示す宛先情報であり、前記解析手段は、受信したデータパケットを解析することにより、前記宛先情報を取得し、前記判断手段は、前記宛先情報が示す送信先の宛先が当該ネットワークチップを含む装置宛であるか否かを判定し、前記装置宛であると判定する場合に受信したデータパケットは重要なデータパケットであると判定するとしてもよい。
この構成によると、ネットワーク送受信装置は、受信したデータパケットが当該ネットワークチップを含む装置宛である場合に中央処理ユニットに対して割込発行を行うので、中央処理ユニットは自装置宛のデータパケット以外のデータパケット対する処理を行う必要が無くなり、中央処理ユニットにおける処理を軽減することができる。
ここで、宛先情報は、送信先の装置を識別する宛先IPアドレスであり、前記ネットワークチップは、当該ネットワークチップを含む装置に割り当てられた装置IPアドレスを予め記憶しており、前記判断手段は、前記装置IPアドレスが、前記宛先IPアドレスと一致する場合に前記装置宛であると判定するとしてもよい。
この構成によると、ネットワーク送受信装置は、受信したデータパケットに含まれる宛先IPアドレスと、装置に割り当てられた装置IPアドレスを用いて、受信したデータパケットが自装置宛のデータパケットであるか否かを判断することができる。
ここで、前記ネットワークチップが受信するデータパケットは、遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別を含み、前記中央処理ユニットは、前記外部装置へデータパケットを送信する送信処理時に、所定のパケット記憶領域に格納された1つ以上のリアルタイムパケットに対する処理を施し、前記ネットワークチップは、前記送信処理においてデータパケットを送信する時間を管理しており、前記解析手段は、受信したデータパケットの種別を取得し、取得した種別がリアルタイムパケットであることを示す場合に、受信したリアルタイムパケットを前記所定のパケット記憶領域に蓄積し、前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、次にデータパケットの送信を行うまでの時間が遅延時間として許容される所定の一定時間以上であるか否かを判断し、前記制御手段は、前記判断手段による判断結果が肯定的である場合に、前記中央処理ユニットに対して即時に割り込みを発行するとしてもよい。
この構成によると、受信したリアルタイムパケットは、次にデータパケットの送信を行うまでの時間が所定の一定時間以上である場合にはネットワークチップによる割込発行時に処理がなされ、所定時間以上でない場合には中央処理ユニットの送信処理時に処理がなされるので、遅延時間として許容される時間が経過した後に受信したリアルタイムパケットに対する処理がなされることはない。
また、本発明によるネットワーク送受信装置は、次にデータパケットの送信を行うまでの時間が所定の一定時間以上である場合に割込発行を行うので、リアルタイムパケットを1つ受信する毎に割込発行を行う場合と比べて、割り込み回数を低減することができる。
ここで、前記ネットワークチップは、データパケットの送信時間間隔を予め記憶している時間記憶領域を有し、前記送信時間間隔に基づいて、データパケットを送信する時間を管理するとしてもよい。
この構成によると、ネットワーク送受信装置は、送信時間間隔に基づいて、次にデータパケットの送信を行うまでの時間を管理することができる。
ここで、前記ネットワークチップは、過去に送信された複数のデータパケットそれぞれに対する送信時間の履歴情報を予め記憶しており、前記判断手段は、前記複数の履歴情報に基づいて次に送信するデータパケットの送信時間を検出し、検出した送信時間が所定の一定時間内であるか否かを判断するとしてもよい。
この構成によると、ネットワーク送受信装置は、複数の履歴情報に基づいて、次にデータパケットの送信を行うまでの時間を管理することができる。
ここで、前記外部装置から送信されるデータパケットには複数の種別があり、前記外部装置は、前記複数の種別それぞれに対応するバースト転送期間の時間に基づいて、バースト転送によりバースト転送期間中は同一種別のデータパケットを前記ネットワークチップに送信し、前記ネットワークチップは、複数の種別それぞれに対応するバースト転送期間の時間を予め記憶しており、バースト転送期間中は同一種別のデータパケットを受信し、前記解析手段は、バースト転送開始時に受信したデータパケットを解析することにより、受信したデータパケットの種別に対応するバースト転送期間の時間を取得し、前記判断手段は、取得したバースト転送期間の時間に基づいてバースト転送の期間中であるかを判断し、前記制御手段は、前記判断手段がバースト転送の期間中であると判断する場合に前記中央処理ユニットに対する割込発行を即時には行わないとしてもよい。
この構成によると、ネットワーク送受信装置は、バースト転送期間中である場合には割込発行を抑止するので、データパケットを1つ受信する毎に割り込みを発行する必要がない。これにより、割り込み回数を低減することができる。
ここで、前記ネットワークチップは、割込処理が終了するまでの間、受信した1個以上のデータパケットを、所定のパケット記憶領域に格納し、前記判断手段は、バースト転送が終了したと判定する場合に、さらに、前記パケット記憶領域に格納された先頭データパケットの受信時刻から一定時間以上経過した、または前記パケット記憶領域に格納されているデータパケットの数が一定数以上であるの何れかの条件を満たすか否かを判断し、前記制御手段は、さらに、前記何れかの条件を満たすと判断する場合に前記中央処理ユニットに対して即時に割込発行を行うとしてもよい。
この構成によると、ネットワーク送受信装置は、バースト転送終了時に、パケット記憶領域の先頭データパケットの受信時刻から予め記憶している一定時間以上経過した、またはパケット記憶領域に格納されているデータパケット数が予め定められた一定数以上であるの何れかの条件を満たす場合に、割込発行を行うと判断するので、割り込み回数を低減することができる。
ここで、前記判断手段は、さらに、バースト転送が終了したと判定する場合に、割り込みを行うと判断し、前記制御手段は、さらに、前記判断手段が割り込みを行うと判断する場合に即時に前記中央処理ユニットに対する割込発行を行うとしてもよい。
この構成によると、ネットワーク送受信装置は、バースト転送終了時に割込発行を行うと判断するので、割り込み回数を低減することができる。
1.第1の実施の形態
本発明に係る第1の実施の形態としての送受信システム1について説明する。
送受信システム1は、図1に示すように、ネットワーク送受信装置10と基地局20とから構成されている。
ネットワーク送受信装置10と基地局20とは、無線伝送路を用いてパケットを互いに送受信することによりネットワーク通信を行う。
ネットワーク送受信装置10は、基地局20から受信するパケットとして、遅延時間に対して制約のあるパケット(以下、リアルタイムパケットという。)と、遅延時間に対して制約のないパケット(以下、非リアルタイムパケットという。)とを受信する。つまり、基地局20は、ネットワーク送受信装置10へ上記にて示す遅延時間に対して制約のあるパケット、及び遅延時間に対して制約のないパケットを送信する。
ここで、ネットワーク送受信装置10が基地局20から受信するパケットについて説明する。
図2は、ネットワーク送受信装置10が基地局20から受信するパケットのデータ構造を示すパケットフォーマット200を示す図である。
パケットフォーマット200は、無線LAN規格である“IEEE 802.11e Media Access Control(MAC)Quality Of Service Enhancement”で規定されているQoS(Quality Of Service)をサポートする802.11パケットのフォーマットである。
パケットフォーマット200は、802.11Packet Header201、TID(Traffic Identifiers)202、及びData203を含んでいる。なお、802.11Packet Header201、TID202、及びData203は、“IEEE 802.11e Media Access Control(MAC)Quality Of Service Enhancement”で規定されているので、ここでの詳細な説明は省略し、TID202について簡単に説明する。
TID202は、4Bitのデータからなり、このデータはQoSのクラスを規定する値である。TID=1、2の場合にはBackgroundパケット、TID=0、3の場合にはBest Effortパケット、TID=4、5の場合にはVideoパケット、TID=6、7の場合にはVoiceパケットであることを示す。すなわち、TID=0、1、2、3は遅延時間を考慮する必要のないデータ系の非リアルタイムパケットであることを示し、TID=4、5、6、7の場合には遅延時間を考慮する必要のあるオーディオ、ビデオなどのリアルタイムパケットであることを示す。
なお、各パケットの種別は公知であるので、ここでの説明は省略する。
以下において、ネットワーク送受信装置10の構成、及び動作について説明する。
1.1 ネットワーク送受信装置10の構成
ネットワーク送受信装置10は、図1に示すように、ネットワークチップ100、リアルタイム受信パケットバッファ101、非リアルタイム受信パケットバッファ102、送信パケットバッファ103、CPU104、マイク105、スピーカ106、ディスプレイ107、入力部108、及びアンテナ109から構成されている。
なお、マイク105、スピーカ106、ディスプレイ107、及び入力部108と、CPU104との間におけるデータの入出力は、バス(図示せず)によって行われるものとする。
(1)リアルタイム受信パケットバッファ101
リアルタイム受信パケットバッファ101は、受信したリアルタイムパケットを格納するための領域を有している。
なお、リアルタイム受信パケットバッファ101が有する領域のサイズは、受信したパケットのサイズよりも大きいものとする。
(2)非リアルタイム受信パケットバッファ102
非リアルタイム受信パケットバッファ102は、受信した1個以上の非リアルタイムパケットを格納するための領域を有している。
なお、非リアルタイム受信パケットバッファ102が有する領域のサイズは、受信したパケットを複数個以上格納することのできる大きさとする。例えば、領域のサイズは、受信したパケットを5個以上格納することのできる大きさである。
(3)送信パケットバッファ103
送信パケットバッファ103は、基地局20へ送信するパケットを1個以上格納するための領域を有している。
(4)ネットワークチップ100
ネットワークチップ100は、図1に示すように、パケット受信部150、割込発行部151、及びパケット送信部152を備えている。
ネットワークチップ100は、アンテナ109を介して、基地局20からパケットを受信し、受信したパケットの種別の解析を行う。ネットワークチップ100は、受信したパケットの解析結果に応じて、CPU104に対して割り込みを発行するか否かを制御する。
また、ネットワークチップ100は、アンテナ109を介して基地局20へパケットを送信する。
(4−1)パケット受信部150
パケット受信部150は、アンテナ109を介して基地局20からパケットを受信すると、受信したパケットを割込発行部151へ出力する。
(4−2)割込発行部151
割込発行部151は、予め定められた一定時間(例えば、50ms)及び一定数(例えば、5)を予め記憶している。
割込発行部151は、パケット受信部150からパケットを受信すると、受信したパケットの種別を解析し、受信したパケットがリアルタイムパケット及び非リアルタイムパケットの何れかであるかを判断する。
(リアルタイムパケットである場合)
受信したパケットがリアルタイムパケットであると判断する場合には、割込発行部151は、受信したパケットをリアルタイム受信パケットバッファ101へ格納し、CPU104に対して、信号線160を介して割込信号を送信し、割り込みを発行する。
(非リアルタイムパケットである場合)
受信したパケットが非リアルタイムパケットであると判断する場合には、割込発行部151は、受信したパケットを非リアルタイム受信パケットバッファ102へ格納する。割込発行部151は、非リアルタイム受信パケットバッファ102の先頭パケットの受信時刻から予め記憶している一定時間(例えば、50ms)以上経過した後、または非リアルタイム受信パケットバッファ102に格納されているパケット数が予め記憶している一定数(例えば、5)以上になった場合に、CPU104に対して、信号線160を介して割込信号を送信し、割り込みを発行する。
ここで、割込発行部151の動作について、さらに具体的に説明する。
割込発行部151は、割り込み発行の制御を行う割込制御部と時間を計時するタイマ部とを有している。
割込制御部は、受信したパケットがリアルタイムパケットであると判断する場合、つまり即時に割込を発行すると判断する場合には、受信したパケットをリアルタイム受信パケットバッファ101へ格納し、CPU104に対して、信号線160を介して割込信号を送信し、割り込みを発行する。
割込制御部は、受信したパケットが非リアルタイムパケットであると判断する場合、つまり即時に割込を発行しないと判断する場合には、受信したパケットを非リアルタイム受信パケットバッファ102へ格納し、タイマ部を起動する。タイマ部は、一定時間(例えば、50ms)以上経過するまで時間の計時を行う。このとき、割込制御部は、既にタイマ部が起動されている場合には、タイマ部の起動は行わず、受信したパケットを非リアルタイム受信パケットバッファ102への格納のみを行う。
タイマ部は、時間計時が一定時間(例えば、50ms)以上経過すると、割込制御部に対して割り込み発行を行う旨を示す割込発行通知を出力し、その後、時間計時を停止する。割込制御部は、タイマ部から割込発行通知を受け取ると、CPU104に対して、信号線160を介して割込信号を送信し、割り込みを発行する。
(解析方法の一例)
ここで、受信したパケットの種別を解析方法の一例を、以下に示す。
割込発行部151は、受信したパケットに含まれるTIDを取得し、取得したTIDが示す値が0〜7の何れの値であるかを判別することにより、受信したパケットの種別を解析する。割込発行部151は、受信したパケットに含まれるTIDが0〜3の何れかである場合には、受信したパケットは非リアルタイムパケットであると判断し、受信したパケットに含まれるTIDが4〜7の何れかである場合には、受信したパケットはリアルタイムパケットであると判断する。
(4−3)パケット送信部152
パケット送信部152は、CPU104から送信要求信号を受信することにより、CPU104から送信要求を受け付ける。
パケット送信部152は、CPU104から送信要求を受け付けると、送信パケットバッファ103から1個のパケットを取得し、アンテナ109を介して取得したパケットを送信する。
パケット送信部152は、この動作を送信パケットバッファ103に格納されている全てのパケットに対して行う。
(5)CPU104
CPU104は、ネットワーク送受信装置10の全体の動作を制御する。
CPU104は、割込発行部151から割込信号を受け取ると、リアルタイム受信パケットバッファ101に格納されているリアルタイムパケットを取得する。CPU104は、取得したリアルタイムパケットに含まれるデータに対して、取得したリアルタイムパケットの種別に応じた処理を施す。次に、CPU104は、非リアルタイム受信パケットバッファ102に格納されている1個以上の非リアルタイムパケットを順次取得する。CPU104は、取得した各非リアルタイムパケットに含まれるデータに対して、取得した非リアルタイムパケットの種別に応じた処理を施す。
CPU104は、処理を施した後、処理の対象となったパケットを消去する。つまり、バッファに格納されている全てのパケットに対して処理が施されると、バッファ内は何も格納されていない状態となる。
なお、CPU104は、上記に示すように、リアルタイム受信パケットバッファ101に格納されているパケットの処理を行い、次に非リアルタイム受信パケットバッファ102に格納されているパケットの処理を行っているが、リアルタイム受信パケットバッファ101にパケットが格納されていない場合には、非リアルタイム受信パケットバッファ102に格納されているパケットの処理のみを行う。また、非リアルタイム受信パケットバッファ102にパケットが格納されていない場合には、リアルタイム受信パケットバッファ101に格納されているパケットの処理のみを行う。
ここで、受信したパケットに対する処理は従来と同様であるため、ここでは詳細な説明は省略する。以下において、具体例を用いて簡単に説明する。CPU104は、例えば、取得したリアルタイムパケットの種別がオーディオを示すパケットである場合には、取得したパケットに含まれるデータに音声処理を施して、音声処理が施されたデータをスピーカ106へ出力する。また、取得したリアルタイムパケットの種別がビデオを示すパケットである場合には、取得したパケットに含まれるデータに映像処理を施して、映像処理が施されたデータをディスプレイ107へ出力する。また、取得した非リアルタイムパケットである場合にも同様に、非リアルタイムパケットに含まれるデータに対して非リアルタイムパケットの種別に応じた処理を施す。
また、CPU104は、マイク105から音声データを受け取ると、受け取った音声データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103に格納する。
また、CPU104は、入力部108から基地局20へ送信する送信データ(例えば、文字データ)を受け取ると、受け取った送信データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103に格納する。
CPU104は、送信パケットの送信開始時に、送信要求信号をパケット送信部152へ送信する。
なお、各データのパケット化の技術については公知であるため、ここでの説明は省略する。
また、CPU104は、入力部108からネットワーク送受信装置10の動作に係る命令を受け取ると、受け取った命令に基づいてネットワーク送受信装置10の動作を制御する。
(6)マイク105
マイク105は、ネットワーク送受信装置10の利用者から音声を受け付け、受け付けた音声から音声データを生成し、生成した音声データをCPU104へ出力する。
(7)スピーカ106
スピーカ106は、CPU104から音声データを受け取ると、受け取った音声データに基づいた音声を出力する。
(8)ディスプレイ107
ディスプレイ107は、CPU104から映像データを受け取ると、受け取った映像データに基づいた映像を出力する。
(9)入力部108
入力部108は、ネットワーク送受信装置10の利用者から送信データ(例えば、文字データ)を受け取ると、受け取った送信データをCPU104へ出力する。
また、入力部108は、ネットワーク送受信装置10の利用者から、ネットワーク送受信装置10の動作に係る命令を受け取ると、受け取った命令をCPU104へ出力する。
1.2 ネットワーク送受信装置10の動作
ここでは、割込発行部151の動作について、図3にて示す流れ図を用いて説明する。
割込発行部151は、非リアルタイム受信パケットバッファ102の先頭パケットの受信から一定時間が経過したか否かを判断する(ステップS5)。
一定時間が経過していないと判断する場合には(ステップS5における「NO」)、割込発行部151は、パケット受信部150を介して基地局20からパケットを受信したか否かを判断する(ステップS10)。
パケットを受信していないと判断する場合には(ステップS10における「NO」)、割込発行部151は、ステップS5に戻る。
パケットを受信したと判断する場合には(ステップS10における「YES」)、割込発行部151は、受信したパケットを解析し(ステップS15)、解析結果により、受信したパケットの種別を判定する(ステップS20)。
受信したパケットの種別が非リアルタイムパケットであると判定する場合には(ステップS20における「非リアルタイムパケット」)、割込発行部151は、受信したパケットを非リアルタイム受信パケットバッファ102へ格納する(ステップS25)。割込発行部151は、非リアルタイム受信パケットバッファ102内のパケット数が一定数以上であるか否かを判断する(ステップS30)。一定数以上でないと判断する場合(ステップS30における「NO」)、割込発行部151は、ステップS5に戻る。一定数以上であると判断する場合には(ステップS30における「YES」)、割込発行部151は、CPU104へ割込信号を送信し、割り込みを発行する(ステップS40)。割込発行部151は、割り込み発行後、ステップS5に戻る。
受信したパケットがリアルタイムパケットであると判定する場合には(ステップS20における「リアルタイムパケット」)、割込発行部151は、受信したパケットをリアルタイム受信パケットバッファ101へ格納し(ステップS35)、CPU104へ割込信号を送信し、割り込みを発行する(ステップS40)。割込発行部151は、割り込み発行後、ステップS5に戻る。
非リアルタイム受信パケットバッファ102の先頭パケットの受信から一定時間が経過したと判断する場合には(ステップS5における「YES」)、割込発行部151は、CPU104へ割込信号を送信し、割り込みを発行する(ステップS40)。割込発行部151は、割り込み発行後、ステップS5に戻る。
1.3 割り込み発行の変形例
上記第1の実施の形態では、割込発行部151が割り込みを発行したタイミングで、リアルタイム受信パケットバッファ101に格納されたパケット対する割込処理と非リアルタイム受信パケットバッファ102に格納された1個以上のパケットに対する割込処理とが順次行われたが、これに限定されない。
これらの割込処理は異なるタイミングで個別に行われてもよい。
この場合のネットワーク送受信装置10aの構成を図4に示す。ここでは、割込発行部151a及びCPU104aの動作について説明する。
なお、他の構成要素は、ネットワーク送受信装置10の構成要素と同一の動作を行うので、同一符号を付加している。
(1)割込発行部151a
割込発行部151aは、予め定められた一定時間(例えば、50ms)及び一定数(例えば、5)を予め記憶している。
割込発行部151aは、パケット受信部150からパケットを受信すると、受信したパケットの種別を解析し、受信したパケットがリアルタイムパケット及び非リアルタイムパケットの何れかであるかを判断する。
受信したパケットがリアルタイムパケットであると判断する場合には、割込発行部151aは、受信したパケットをリアルタイム受信パケットバッファ101へ格納し、CPU104aに対して、信号線160aを介して割込信号を送信し、割り込みを発行する。
受信したパケットが非リアルタイムパケットであると判断する場合には、割込発行部151aは、受信したパケットを非リアルタイム受信パケットバッファ102へ格納する。割込発行部151aは、非リアルタイム受信パケットバッファ102の先頭パケットの受信時刻から予め記憶している一定時間(例えば、50ms)以上経過した後、または非リアルタイム受信パケットバッファ102に格納されているパケット数が予め記憶している一定数(例えば、5)以上になった場合に、CPU104aに対して、信号線161aを介して割込信号を送信し、割り込みを発行する。
なお、割込発行部151aのさらなる具体的な動作については、割込発行部151が有する割込制御部及びタイマ部のそれぞれと同様の割込制御部とタイマ部とを有することで実現できるので、ここでの説明は省略する。
なお、受信したパケットの種別を解析方法の一例は、上記にて示すTIDを用いてパケットの種別を判別することにより、受信したパケットの種別を解析する。
(2)CPU104a
CPU104aは、ネットワーク送受信装置10aの全体の動作を制御する。
CPU104aは、割込発行部151aから信号線160aを介して、割込信号を受け取ると、リアルタイム受信パケットバッファ101に格納されているリアルタイムパケットを取得する。CPU104aは、取得したリアルタイムパケットに含まれるデータに対して、取得したリアルタイムパケットの種別に応じた処理を施す。CPU104aは、処理を施した後、処理の対象となったパケットを消去する。
CPU104aは、割込発行部151aから信号線161aを介して、割込信号を受け取ると、非リアルタイム受信パケットバッファ102に格納されている1個以上の非リアルタイムパケットを順次取得する。CPU104aは、取得した各非リアルタイムパケットに含まれるデータに対して、取得した非リアルタイムパケットの種別に応じた処理を施す。CPU104aは、処理を施した後、処理の対象となったパケットを消去する。
ここで、受信したパケットに対する処理は従来と同様であるため、ここでは詳細な説明は省略する。
また、マイク105から音声データを受け取った場合、入力部108から基地局20へ送信する送信データ(例えば、文字データ)を受け取った場合、及び入力部108からネットワーク送受信装置10aの動作に係る命令を受け取った場合におけるCPU104aの動作は、CPU104と同様であるので、ここでの説明は省略する。
(3)まとめ
これにより、リアルタイム受信パケットバッファ101に格納されたパケット対する割込処理と非リアルタイム受信パケットバッファ102に格納された1個以上のパケットに対する割込処理とは、異なるタイミングで行われることができる。
ここでは、2本の信号線を用いて、これらの割込処理を異なるタイミングで行うようにしたが、これに限定されない。1本の信号線を用いて異なる割込信号をCPUに出力することにより、それぞれの割込処理を行うようにしてもよい。
この場合の動作を以下に説明する。
割込発行部は、リアルタイムパケットを受信した場合には、第1割込信号をCPUに出力し、非リアルタイム受信パケットバッファの先頭パケットの受信時刻から一定時間以上経過した後、または非リアルタイム受信パケットバッファに格納されているパケット数が一定数以上になった場合には、第2割込信号をCPUに出力する。
CPUは、割込発行部から第1割込信号を受け取ると、リアルタイム受信パケットバッファに格納されているリアルタイムパケットを取得する。CPUは、取得したリアルタイムパケットに含まれるデータに対して、取得したリアルタイムパケットの種別に応じた処理を施す。CPUは、処理を施した後、処理の対象となったパケットを消去する。
CPUは、割込発行部から第2割込信号を受け取ると、非リアルタイム受信パケットバッファに格納されている1個以上の非リアルタイムパケットを順次取得する。CPUは、取得した各非リアルタイムパケットに含まれるデータに対して、取得した非リアルタイムパケットの種別に応じた処理を施す。CPUは、処理を施した後、処理の対象となったパケットを消去する。
1.4 その他の変形例
なお、本発明を上記の第1の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下の場合も本発明に含まれる。
(1)上記第1の実施の形態では、パケットを送受信する伝送路として無線を使用する場合について説明を行ったが、伝送路が有線であってもよい。
(2)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
1.5 まとめ
以上のような動作によれば、遅延時間に対する制約のあるリアルタイムパケットを受信した場合には、即時に割り込みを行い、遅延時間に対する制約のない非リアルタイムパケットを受信した場合には、一定以上のパケットが溜まった場合、または一定時間経過後にCPUに割り込みを行うネットワーク送受信装置を実現することができる。これにより、リアルタイムパケット及び非リアルタイムパケットを受信するネットワーク送受信装置において、従来例と同様に割り込み回数を削減し、CPUのスリープ時間を長くすることにより、低消費電力のネットワーク送受信装置を実現することができる。
2.第2の実施の形態
本発明に係る第2の実施の形態としての送受信システム1bについて説明する。
送受信システム1bは、図5に示すように、ネットワーク送受信装置10bと基地局20bとから構成されている。
ネットワーク送受信装置10bと基地局20bとは、無線伝送路を用いてパケットを互いに送受信することによりネットワーク通信を行う。
ネットワーク送受信装置10bは、第1の実施の形態と同様に、基地局20bから受信するパケットとして、リアルタイムパケットと、非リアルタイムパケットとを受信する。つまり、基地局20bは、ネットワーク送受信装置10bへ遅延時間に対して制約のあるパケット、及び遅延時間に対して制約のないパケットとを送信する。
ネットワーク送受信装置10bによるパケットの送信は、ネットワーク送受信装置10によるパケットの送信とは異なり、特定の送信時間間隔(例えば、20ms)で行われる。例えば、インターネットを用いて音声パケットを周期的に送信および受信を行うVOIP(Voice Over IP)である。
ここで、ネットワーク送受信装置10bが基地局20bから受信するパケットのデータ構造は、第1の実施の形態と同様であるため、ここでの説明は省略する。なお、以下の説明において必要であれば、図2にて示すパケットフォーマット200を用いて説明する。
以下において、ネットワーク送受信装置10bの構成、及び動作について説明する。
2.1 ネットワーク送受信装置10bの構成
ネットワーク送受信装置10bは、図5に示すように、ネットワークチップ100b、リアルタイム受信パケットバッファ101b、非リアルタイム受信パケットバッファ102b、送信パケットバッファ103b、CPU104b、マイク105b、スピーカ106b、ディスプレイ107b、入力部108b、及びアンテナ109bから構成されている。
なお、マイク105b、スピーカ106b、ディスプレイ107b、及び入力部108bと、CPU104bとの間におけるデータの入出力は、バス(図示せず)によって行われるものとする。
(1)リアルタイム受信パケットバッファ101b
リアルタイム受信パケットバッファ101bは、受信した1個以上のリアルタイムパケットを格納するための領域を有している。
(2)非リアルタイム受信パケットバッファ102b
非リアルタイム受信パケットバッファ102bは、第1の実施の形態にて示す非リアルタイム受信パケットバッファ102と同様であるので、ここでの説明は省略する。
(3)送信パケットバッファ103b
送信パケットバッファ103bは、第1の実施の形態にて示す送信パケットバッファ103と同様であるため、ここでの説明は省略する。
(4)ネットワークチップ100b
ネットワークチップ100bは、図5に示すように、パケット受信部150b、割込発行部151b、及びパケット送信部152bを備えている。
ネットワークチップ100bは、アンテナ109bを介して、基地局20bからパケットを受信し、受信したパケットの種別の解析を行う。ネットワークチップ100bは、受信したパケットの解析結果に応じて、CPU104bに対して割り込みを発行するか否かを制御する。
また、ネットワークチップ100bは、アンテナ109bを介して基地局20bへパケットを周期的(例えば、20ms)に送信する。
(4−1)パケット受信部150b
パケット受信部150bは、アンテナ109bを介して基地局20bからパケットを受信すると、受信したパケットを割込発行部151bへ出力する。
(4−2)割込発行部151b
割込発行部151bは、予め定められた一定時間(例えば、50ms)、一定数(例えば、5)及び予め定められた許容時間(例えば、10ms)を予め記憶している。
割込発行部151bは、パケットの送信時間間隔(例えば、20ms)を記憶するための記憶領域を有している。
割込発行部151bは、CPU104bからパケットの送信時間間隔を受け取り、受け取った送信時間間隔を記憶領域に記憶する。パケットの送信時間間隔を予め記憶することにより、割込発行部151bは、送信予定時間を管理することができる。これにより、割込発行部151bは、次の送信予定時間までの時間を取得することができる。
割込発行部151bは、パケット受信部150bからパケットを受信すると、受信したパケットの種別を解析し、受信したパケットがリアルタイムパケット及び非リアルタイムパケットの何れかであるかを判断する。
受信したパケットがリアルタイムパケットであると判断する場合には、割込発行部151bは、受信したパケットをリアルタイム受信パケットバッファ101bへ格納し、送信予定時間までの時間が許容時間以上であるか否かを判断する。
許容時間以上であると判断する場合には、割込発行部151bは、CPU104bに対して、信号線160bを介して割込信号を送信し、割り込みを発行する。許容時間以上でないと判断する場合には、割込発行部151bは、CPU104bに対して割り込みを発行しない。
受信したパケットが非リアルタイムパケットであると判断する場合には、割込発行部151bは、受信したパケットを非リアルタイム受信パケットバッファ102bへ格納する。割込発行部151bは、非リアルタイム受信パケットバッファ102bの先頭パケットの受信時刻から予め記憶している一定時間(例えば、50ms)以上経過した後、または非リアルタイム受信パケットバッファ102bに格納されているパケット数が予め記憶している一定数(例えば、5)以上になった場合に、CPU104bに対して、信号線160bを介して割込信号を送信し、割り込みを発行する。
なお、割込発行部151bのさらなる具体的な動作については、割込発行部151が有する割込制御部及びタイマ部のそれぞれと同様の割込制御部とタイマ部とを有することで実現できるので、ここでの説明は省略する。
ここで、受信したパケットの種別を解析方法の一例は、第1の実施の形態にて示す解析方法と同様であるので、ここでの説明は省略する。
(4−3)パケット送信部152b
パケット送信部152bは、パケットの送信時間間隔(例えば、20ms)に基づいて周期的にCPU104bから送信要求信号を受信することにより、CPU104bから送信要求を受け付ける。
パケット送信部152bは、CPU104bから送信要求を受け付けると、送信パケットバッファ103bから1個のパケットを取得し、アンテナ109bを介して取得したパケットを送信する。
パケット送信部152bは、この動作を送信パケットバッファ103bに格納されている全てのパケットに対して行う。
(5)CPU104b
CPU104bは、ネットワーク送受信装置10bの全体の動作を制御する。
CPU104bは、パケットの送信時間間隔を割込発行部151bへ出力する。
CPU104bは、割込発行部151bから割込信号を受け取ると、リアルタイム受信パケットバッファ101bに格納されているリアルタイムパケットを取得する。CPU104bは、取得したリアルタイムパケットに含まれるデータに対して、取得したリアルタイムパケットの種別に応じた処理を施す。次に、CPU104bは、非リアルタイム受信パケットバッファ102bに格納されている1個以上の非リアルタイムパケットを順次取得する。CPU104bは、取得した各非リアルタイムパケットに含まれるデータに対して、取得した非リアルタイムパケットの種別に応じた処理を施す。
CPU104bは、処理を施した後、処理の対象となったパケットを消去する。つまり、バッファに格納されている全てのパケットに対して処理が施されると、バッファ内は何も格納されていない状態となる。
なお、CPU104bは、上記に示すように、リアルタイム受信パケットバッファ101bに格納されているパケットの処理を行い、次に非リアルタイム受信パケットバッファ102bに格納されているパケットの処理を行っているが、リアルタイム受信パケットバッファ101bにパケットが格納されていない場合には、非リアルタイム受信パケットバッファ102bに格納されているパケットの処理のみを行う。また、非リアルタイム受信パケットバッファ102bにパケットが格納されていない場合には、リアルタイム受信パケットバッファ101bに格納されているパケットの処理のみを行う。
ここで、受信したパケットに対する処理は従来と同様であるため、ここでは詳細な説明は省略する。
また、CPU104bは、マイク105bから音声データを受け取ると、受け取った音声データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103bに格納する。
また、CPU104bは、入力部108bから基地局20bへ送信する送信データ(例えば、文字データ)を受け取ると、受け取った送信データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103bに格納する。
なお、各データのパケット化の技術については公知であるため、ここでの説明は省略する。
また、CPU104bは、パケットの送信時間間隔(例えば、20ms)に基づいて周期的に送信処理を行う。ここでは、例えば、CPU104bは、周期的に送信要求信号をネットワークチップ100bのパケット送信部152bへ出力する。CPU104bは、送信要求信号をパケット送信部152bへ出力した後、リアルタイム受信パケットバッファ101bにリアルタイムパケットが格納されているか否かをチェックする。リアルタイムパケットが格納されていると判断する場合には、CPU104bは、リアルタイムパケットを取得し、処理を施す。CPU104bは、この動作をリアルタイム受信パケットバッファ101bに格納されている全てのリアルタイムパケットに対して行う。
また、CPU104bは、入力部108bからネットワーク送受信装置10の動作に係る命令を受け取ると、受け取った命令に基づいてネットワーク送受信装置10の動作を制御する。
(6)マイク105b
マイク105bは、第1の実施の形態にて示すマイク105と同様であるため、ここでの説明は省略する。
(7)スピーカ106b
スピーカ106bは、第1の実施の形態にて示すスピーカ106と同様であるため、ここでの説明は省略する。
(8)ディスプレイ107b
ディスプレイ107bは、第1の実施の形態にて示すディスプレイ107と同様であるため、ここでの説明は省略する。
(9)入力部108b
入力部108bは、第1の実施の形態にて示す入力部108と同様であるため、ここでの説明は省略する。
2.2 ネットワーク送受信装置10bの動作
(1)割込発行部151bの動作
ここでは、割込発行部151bの動作について、図6にて示す流れ図を用いて説明する。
割込発行部151bは、CPU104bから通知されたパケットの送信時間間隔を、予め記憶領域に記憶しており、送信予定時間を管理しているものとする。
割込発行部151bは、非リアルタイム受信パケットバッファ102bの先頭パケットの受信から一定時間が経過したか否かを判断する(ステップS100)。
一定時間が経過していないと判断する場合には(ステップS100における「NO」)、割込発行部151bは、パケット受信部150bを介して基地局20bからパケットを受信したか否かを判断する(ステップS105)。
パケットを受信していないと判断する場合には(ステップS105における「NO」)、割込発行部151bは、ステップS100に戻る。
パケットを受信したと判断する場合には(ステップS105における「YES」)、割込発行部151bは、受信したパケットを解析し(ステップS110)、解析結果により、受信したパケットの種別を判定する(ステップS115)。
受信したパケットの種別が非リアルタイムパケットであると判定する場合には(ステップS115における「非リアルタイムパケット」)、割込発行部151bは、受信したパケットを非リアルタイム受信パケットバッファ102bへ格納する(ステップS120)。割込発行部151bは、非リアルタイム受信パケットバッファ102b内のパケット数が一定数以上であるか否かを判断する(ステップS125)。一定数以上でないと判断する場合(ステップS125における「NO」)、割込発行部151bは、ステップS100に戻る。一定数以上であると判断する場合には(ステップS125における「YES」)、割込発行部151bは、CPU104bへ割込信号を送信し、割り込みを発行する(ステップS140)。割込発行部151bは、割り込み発行後、ステップS100に戻る。
受信したパケットがリアルタイムパケットであると判定する場合には(ステップS115における「リアルタイムパケット」)、割込発行部151bは、受信したパケットをリアルタイム受信パケットバッファ101bへ格納し(ステップS130)、送信予定時間までの時間が許容時間以上であるか否かを判断する(ステップS135)。
許容時間以上であると判断する場合には(ステップS135における「YES」)、割込発行部151bは、CPU104bに対して、信号線160bを介して割込信号を送信し、割り込みを発行する(ステップS140)。割込発行部151bは、割り込み発行後、ステップS100に戻る。
許容時間以上でないと判断する場合には(ステップS135における「NO」)、割込発行部151bは、ステップS100に戻る。
非リアルタイム受信パケットバッファ102bの先頭パケットの受信から一定時間が経過したと判断する場合には(ステップS100における「YES」)、割込発行部151bは、CPU104bへ割込信号を送信し、割り込みを発行する(ステップS140)。割込発行部151bは、割り込み発行後、ステップS100に戻る。
(2)CPU104bの動作
ここでは、送信処理時にCPU104bがパケットを取得する処理について、図7にて示す流れ図を用いて説明する。なお、この動作は、パケットの送信時間間隔に基づいて周期的に行われる。
CPU104bは、送信要求信号をパケット送信部152bへ出力し(ステップS200)、リアルタイムパケットがリアルタイム受信パケットバッファ101bに存在するか否かをチェックする(ステップS205)。リアルタイムパケットが存在すると判断する場合には(ステップS205における「YES」)、CPU104bは、リアルタイムパケットをリアルタイム受信パケットバッファ101bから取得し(ステップS210)、取得したリアルタイムパケットに応じた処理を施す(ステップS215)。CPU104bは、未取得のリアルタイムパケットがリアルタイム受信パケットバッファ101bに存在するか否かを判断する(ステップS220)。
未取得のリアルタイムパケットが存在すると判断する場合には(ステップS220における「YES」)、CPU104bは、ステップS210に戻る。
リアルタイムパケットがリアルタイム受信パケットバッファ101bに存在しないと判断する場合(ステップS205における「NO」)、及び未取得のリアルタイムパケットが存在しないと判断する場合には(ステップS220における「NO」)、CPU104bは、処理を終了する。
2.3 割り込み発行の変形例
上記第2の実施の形態では、割込発行部151bが割り込みを発行したタイミングで、リアルタイム受信パケットバッファ101bに格納されたパケット対する割込処理と非リアルタイム受信パケットバッファ102bに格納された1個以上のパケットに対する割込処理とが順次行われたが、これに限定されない。
これらの割込処理は異なるタイミングで個別に行われてもよい。
例えば、上記第1の実施の形態の変形例と同様に、2本の信号線を用いてもよい。この場合の詳細な動作については、上記第1の実施の形態の変形例と同様であるので、ここでの説明は省略する。または、異なる2つの割込信号を用いてもよい。
2.4 送信時間間隔に対する管理の変形例
上記第2の実施の形態では、特定の送信時間パターンの情報を、CPU104bがネットワークチップ100bの割込発行部151bに予め出力し、割込発行部151bにて特定の送信時間パターンの情報を管理するとしたが、これに限定されない。
送信時間をネットワークチップに履歴情報のデータとして記憶することにより、ネットワークチップがCPUの送信予定時間を予測し、予測結果に基づき割り込みを行うか否かの判定してもよい。
この場合における割込発行部151Bの送信予定時間の管理について説明する。割込発行部151Bでは、CPUからの送信時間について履歴データを記憶している。例えば、図8に示すように、5つ分のパケットの送信時間を管理する管理テーブルT100を有している。管理テーブルT100は、直近に送信したパケットの送信時間から5回分の送信時間それぞれを履歴データとして格納している。
割込発行部151Bは、管理テーブルT100に格納されている各履歴データを用いて、パケットの送信時間の周期がほぼ20msであることを検出する。割込発行部151Bは、検出した周期(20ms)を用いて、次の送信予定時間は「1h 23m 25s 51ms」であると予測する。
リアルタイムパケットを受信した場合には、割込発行部151Bは、予測した送信予定時間までの時間が許容時間以上であるか否かを判断する。
許容時間以上であると判断する場合には、割込発行部151Bは、CPUへ割込信号を送信し、割り込みを発行する。許容時間以上でないと判断する場合には、割込発行部151Bは、CPUに対して割り込みを発行しない。
これにより、割り込み回数を低減することが可能となる。
2.5 その他の変形例
なお、本発明を上記の第2の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下の場合も本発明に含まれる。
(1)上記第2の実施の形態では、パケットを送受信する伝送路として無線を使用する場合について説明を行ったが、伝送路が有線であってもよい。
(2)上記第2の実施の形態にて示す許容時間は、ネットワーク送受信装置においてリアルタイムパケットに対して許容することのできる遅延時間以下の時間であればよい。
(3)上記第2の実施の形態において、ネットワーク送受信装置は、リアルタイムパケット及び非リアルタイムパケットを受信するとしたが、これに限定されない。
ネットワーク送受信装置は、リアルタイムパケットのみを受信するとしてもよい。
上記第2の実施の形態で説明したようにネットワーク送受信装置が周期的に送信を行う場合に、リアルタイムパケットを受信した際には周期的な送信予定時間までの時間が予め定められた一定時間より短い場合には、割り込みを発行せず、CPUからの送信の際にCPUがリアルタイムパケットの受信パケットバッファをチェックし取り込みを行う方法は、CPUへの割り込み回数の低減に対して有効である。
(4)上記第2の実施の形態では、特定の送信時間パターンとして、周期的な送信時間パターンを例にとって説明を行ったが、その他のいかなる送信時間パターンであってもよい。
(5)上記第2の実施の形態において、CPUが送信処理を行う場合に、リアルタイム受信パケットバッファをチェックし、リアルタイムパケットが存在する場合には、リアルタイムパケットを取得し、処理するとしたが、これに限定されない。
以下に、一例を示す。
CPUが送信処理を行う場合に、リアルタイム受信パケットバッファ及び非リアルタイム受信パケットバッファの双方をチェックしてもよい。
この場合、CPUは、先ず、リアルタイム受信パケットバッファをチェックし、リアルタイムパケットが存在する場合には、リアルタイムパケットを取得し、処理する。CPUは、リアルタイムパケットが存在しない場合、または全てのリアルタイムパケットに対する処理を行った後、非リアルタイム受信パケットバッファをチェックし、非リアルタイムパケットが存在する場合には、非リアルタイムパケットを取得し、処理する。
上記第2の実施の形態では、非リアルタイムパケットはパケットバッファでのパケット格納数が一定数以上または先頭パケットの受信からの経過時間が一定時間以上になるまで割り込みを行わないが、割り込みが発生するまでの間にCPUにて送信処理が実行されたときに、非リアルタイム受信パケットバッファからの受信パケットの取り込みを行えば、それまでに取り込んだ非リアルタイムパケットに対する割り込みは不要となる。
また、別の例を以下に示す。
非リアルタイムパケットのみを受信するネットワーク送受信装置に適用してもよい。
この場合、CPUは、送信処理を行う場合に、非リアルタイム受信パケットバッファをチェックし、非リアルタイムパケットが存在する場合には、非リアルタイムパケットを取得し、処理する。
(6)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
2.6 まとめ
以上、第2の実施の形態によると、一定時間をリアルタイムパケットのネットワークチップにおける遅延許容時間とすることにより、リアルタイムパケットに対する遅延の制約を守りつつ、割り込みの回数を低減することができる。
また、遅延時間に対する制約のあるリアルタイムパケットを受信し、かつ特定の送信時間パターンを持つ送信がある場合には、リアルタイムパケットを受信した際に送信予定時間までの時間が予め定められた一定時間より短い場合には、割り込みを発行せず、CPUからの送信の際にCPUがリアルタイムパケットの受信パケットバッファをチェックし取り込みを行うことができ、リアルタイムパケットの受信に伴う割り込み回数を低減することができる。
3.第3の実施の形態
本発明に係る第3の実施の形態としての送受信システム1cについて説明する。
送受信システム1cは、図9に示すように、ネットワーク送受信装置10cと基地局20cとから構成されている。
ネットワーク送受信装置10cと基地局20cとは、無線伝送路を用いてパケットを互いに送受信することによりネットワーク通信を行う。
ネットワーク送受信装置10cは、基地局20cから受信するパケットとして、非リアルタイムパケットを受信する。
本実施の形態では、ネットワーク送受信装置10cが基地局20cとネットワーク接続されているが、アプリケーションレベルでの接続が行われていない状態の場合に(例えば、携帯電話機における待ち受け状態)、割り込みを低減する技術について開示する。
ここで、ネットワーク接続されている状態とは、MACレベルにおいて、すなわち802.11無線LANにおいてネットワーク送受信装置(STA)10cが基地局(AP)20cと接続されている状態のことをいうものとする。この際、STAはAPから周期的に送信されるビーコン(Beacon)を受信する。ビーコンは、様々な現在のネットワークに関する情報を含み、非リアルタイムパケットの一種である。以下において、ビーコンをビーコンパケットともいう。
図10は、ビーコンパケットのデータ構造を示すビーコンパケットフォーマット300を示す図である。ネットワーク送受信装置10cは、基地局20cにネットワーク接続されている時、ビーコンパケットフォーマット300に示されるビーコンパケットを周期的に受信する。
ビーコンパケットフォーマット300は、802.11Packet Header301、SSID302、及びFCS(Flame Check Sequence)303を含んでいる。なお、802.11Packet Header301、SSID(Service Set IDentifier)302、及びFCS(Flame Check Sequence)303におけるデータの定義は、公知であるため、ここでの詳細な説明は省略し、SSID302について簡単に説明する。
SSID302は、図10に示すように、Element ID304と、Length305と、SSID306とから構成されている。Element ID304、及びLength305は1バイトからなるデータであり、SSID306は、32バイトまでのデータにより示されるネットワーク識別子である。
802.11ネットワークでは、ネットワーク送受信装置10cが基地局20cとがネットワーク接続のみなされている場合、アプリケーションパケットとしてTCP/UDPパケット(Transmission Control Protocol/User Datagram Protocol Packet)を802.11パケットでカプセリングしたパケットが基地局20cからネットワーク送受信装置10cへ送信される。
図11は、アプリケーションパケットのデータ構造を示すアプリケーションパケットフォーマット400である。
アプリケーションパケットフォーマット400は、802.11Packet Header401、802.3Ethernet(登録商標) packet Header402、IP Header403、TCP/UDP Header404、及びData405から構成されている。
IP Header403は、IPパケットであり、Source IP Address410、及びDestination IP Address411を含み、Source IP Address410、及びDestination IP Address411はそれぞれ4バイトからなるデータである。
TCP/UDP Header404は、TCP/UDPパケットであり、Source Port420、及びDestination Port421を含み、Source Port420、及びDestination Port421はそれぞれ2バイトからなるデータである。Destination Port421に格納されるデータは、アプリケーションレベルにおけるアプリケーションの種類を示すポート番号である。
上述したように、アプリケーションパケットフォーマット400は、TCP/UDPパケット Header404(TCP/UDPパケット)がIP Header403(IPパケット)によりカプセリングされ、更に802.11パケットによりカプセリングされたパケットである。また、アプリケーションレベルにおけるアプリケーションの種類は、TCP/UDPパケットレベルにおけるポート番号(Destination Port)により識別することができる。
以下において、ネットワーク送受信装置10cの構成、及び動作について説明する。
3.1 ネットワーク送受信装置10cの構成
ネットワーク送受信装置10cは、図9に示すように、ネットワークチップ100c、受信パケットバッファ120c、送信パケットバッファ103c、CPU104c、マイク105c、スピーカ106c、ディスプレイ107c、入力部108c、及びアンテナ109cから構成されている。
なお、マイク105c、スピーカ106c、ディスプレイ107c、及び入力部108cと、CPU104cとの間におけるデータの入出力は、バス(図示せず)によって行われるものとする。
(1)受信パケットバッファ120c
受信パケットバッファ120cは、受信した1個以上の非リアルタイムパケットを格納するための領域を有している。
なお、受信パケットバッファ120cが有する領域のサイズは、受信したパケットを1個以上格納することのできる大きさとする。
(2)送信パケットバッファ103c
送信パケットバッファ103cは、第1の実施の形態にて示す送信パケットバッファ103と同様であるため、ここでの説明は省略する。
(3)ネットワークチップ100c
ネットワークチップ100cは、図9に示すように、パケット受信部150c、割込発行部151c、及びパケット送信部152cを備えている。
ネットワークチップ100cは、アンテナ109cを介して、基地局20cからパケットを受信し、受信したパケットの解析を行う。ネットワークチップ100cは、受信したパケットの解析結果に応じて、CPU104cに対して割り込みを発行するか否かを制御する。
また、ネットワークチップ100cは、アンテナ109cを介して基地局20cへパケットを送信する。
(3−1)パケット受信部150c
パケット受信部150cは、アンテナ109cを介して基地局20cからパケットを受信すると、受信したパケットを割込発行部151cへ出力する。
(3−2)割込発行部151c
割込発行部151cは、CPU104cから指定されたアプリケーションを示すポート番号を格納する記憶領域を有している。
割込発行部151cは、CPU104cがスリープする際にCPU104cにより指定されたアプリケーションを示すポート番号をCPU104cから受け取ると、受け取ったポート番号を記憶領域に格納する。例えば、CPU104cにより指定されるアプリケーションとして、音声通話の呼制御を示すポート番号をCPU104cから受け取り、記憶領域へ格納する。これにより、ネットワーク送受信装置10cは、待ち受け状態となる。
割込発行部151cは、パケット受信部150cからパケットを受信すると、受信したパケットの解析を行う。
割込発行部151cは、解析結果により受信したパケットがビーコンパケット及びアプリケーションパケットであるかを判断する。
受信パケットがアプリケーションパケットであると判断する場合、割込発行部151cは、さらに、受信したパケットがCPU104cにより指定されたアプリケーションのパケットであるか否かを判断する。ここでは、記憶領域に格納されているポート番号と、受信したアプリケーションパケットに含まれるDestination Port421が示すポート番号とが一致するか否かにより判断する。
受信したパケットがCPU104cにより指定されたアプリケーションのパケットである、つまり、記憶領域に格納されているポート番号と、受信したアプリケーションパケットに含まれるDestination Port421が示すポート番号とが一致すると判断する場合、割込発行部151cは、受信したパケットを受信パケットバッファ120cに格納し、CPU104cに対して、信号線160cを介して割込信号を送信し、割り込みを発行する。
受信したパケットがビーコンパケットであると判断する場合、及び受信したアプリケーションパケットがCPU104cにより指定されたアプリケーションのパケットでないと判断する場合、割込発行部151cは、受信したパケットを破棄する。
例えば、割込発行部151cは、アプリケーションパケットに含まれるDestination Port421が示すポート番号が、音声通話の呼制御を示すポート番号である場合、すわなち、呼制御関連のアプリケーションパケットを受信した場合にのみCPU104cに対して割り込みを行う。
(3−3)パケット送信部152c
パケット送信部152cは、第1の実施の形態にて示すパケット送信部152と同様であるので、ここでの説明は省略する。
(4)CPU104c
CPU104cは、ネットワーク送受信装置10cの全体の動作を制御する。
CPU104cは、動作状態をスリープに移行する際に、割込発行の契機となるアプリケーションのポート番号(例えば、音声通話の呼制御を示すポート番号)を割込発行部151cに出力し、スリープ状態に移行する。
CPU104cは、割込発行部151cから割込信号を受け取ると、受信パケットバッファ120cに格納されているパケット(CPU104cが指定したアプリケーションのアプリケーションパケット)を取得する。CPU104cは、取得したパケットに含まれるデータに対して、処理を施す。
CPU104cは、処理を施した後、処理の対象となったパケットを消去する。つまり、バッファに格納されている全てのパケットに対して処理が施されると、バッファ内は何も格納されていない状態となる。
ここで、受信したパケットに対する処理は従来と同様であるため、ここでは詳細な説明は省略する。
また、CPU104cは、マイク105cから音声データを受け取ると、受け取った音声データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103cに格納する。
また、CPU104cは、入力部108cから基地局20cへ送信する送信データ(例えば、文字データ)を受け取ると、受け取った送信データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103cに格納する。
CPU104cは、送信パケットの送信開始時に、送信要求信号をパケット送信部152cへ送信する。
なお、各データのパケット化の技術については公知であるため、ここでの説明は省略する。
また、CPU104cは、入力部108cからネットワーク送受信装置10cの動作に係る命令を受け取ると、受け取った命令に基づいてネットワーク送受信装置10cの動作を制御する。
(5)マイク105c
マイク105cは、第1の実施の形態にて示すマイク105と同様であるため、ここでの説明は省略する。
(6)スピーカ106c
スピーカ106cは、第1の実施の形態にて示すスピーカ106と同様であるため、ここでの説明は省略する。
(7)ディスプレイ107c
ディスプレイ107cは、第1の実施の形態にて示すディスプレイ107と同様であるため、ここでの説明は省略する。
(8)入力部108c
入力部108cは、第1の実施の形態にて示す入力部108と同様であるため、ここでの説明は省略する。
3.2 ネットワーク送受信装置10cの動作
(1)割込発行部151cの動作
ここでは、割込発行部151cの動作について、図12にて示す流れ図を用いて説明する。
なお、割込発行部151cは、CPU104cにて指定されたアプリケーションのポート番号を予め記憶領域に格納しているものとする。
割込発行部151cは、パケット受信部150cを介して基地局20cからパケットを受信したか否かを判断する(ステップS300)。
パケットを受信していないと判断する場合には(ステップS300における「NO」)、割込発行部151cは、ステップS300に戻る。
パケットを受信したと判断する場合には(ステップS300における「YES」)、割込発行部151cは、受信したパケットを解析し(ステップS305)、解析結果により、受信したパケットがアプリケーションパケットであるか否かを判定する(ステップS310)。
受信したパケットがアプリケーションパケットであると判定する場合には(ステップS310における「YES」)、割込発行部151cは、受信したアプリケーションパケットがCPU104cにより指定されたアプリケーションのパケットであるか否かを判断する(ステップS315)。
受信したパケットがCPU104cにより指定されたアプリケーションのパケットであると判断する場合(ステップS315における「YES」)、割込発行部151cは、受信したパケットを受信パケットバッファ120cに格納する(ステップS320)。割込発行部151cは、CPU104cへ割込信号を送信し、割り込みを発行する(ステップS325)。割込発行部151cは、割り込み発行後、ステップS300に戻る。
受信したパケットがアプリケーションパケットでない、つまりビーコンパケットであると判断する場合(ステップS310における「NO」)、及び受信したアプリケーションパケットがCPU104cにより指定されたアプリケーションのパケットでないと判断する場合(ステップS315における「NO」)、割込発行部151cは、受信したパケットを破棄し(ステップS330)、ステップS300へ戻る。
3.3 変形例
なお、本発明を上記の第3の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下の場合も本発明に含まれる。
(1)上記第3の実施の形態では、パケットを送受信する伝送路として無線を使用する場合について説明を行ったが、伝送路が有線であってもよい。
(2)上記第3の実施の形態では、ビーコンパケットを受信した場合、及びCPU104cにて指定されていないアプリケーションパケットを受信した場合、割込発行部151cは、受信したパケットを破棄したが、これに限定されない。
ビーコンパケットを受信した場合、及びCPU104cにて指定されていないアプリケーションパケットを受信した場合、割込発行部151cは、受信したパケットを受信パケットバッファ120cに格納してもよい。
このとき、割り込みの発行は、CPU104cにて指定されたアプリケーションパケットを受信し、格納したときに行われる。
(3)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
3.4 まとめ
以上、第3の実施の形態によると、ネットワーク接続されているがアプリケーションレベルでの接続が行われていない場合に、ネットワークチップは、受信したパケットに対してアプリケーションレベルのパケットの解析・識別を行い、受信したパケットがCPUから指定されたアプリケーションのパケットである場合にのみ、CPUに対して割り込みを行うことにより、割り込み回数を削減し省電力のネットワーク送受信装置を実現することができる。
4.第4の実施の形態
本発明に係る第4の実施の形態としての送受信システム1dについて説明する。
送受信システム1dは、図13に示すように、ネットワーク送受信装置10dと基地局20dとから構成されている。
ネットワーク送受信装置10dと基地局20dとは、無線伝送路を用いてパケットを互いに送受信することによりネットワーク通信を行う。
ネットワーク送受信装置10dは、基地局20dから受信するパケットとして、非リアルタイムパケットを受信する。
本実施の形態では、ネットワーク非接続時における割り込みの低減方法について説明する。
基地局20dは、複数のネットワークのうち特定のネットワークに対するビーコンパケットを送信する。なお、ビーコンパケットのデータ構造は、図10と同様であるので、ここでの説明は省略し、以降の説明において必要であれば、ビーコンパケットフォーマット300を用いて説明する。
ネットワーク非接続には、ネットワーク送受信装置10dは、基地局20dから送信されるビーコンパケットを受信しない。この状態は、例えば、携帯電話機における電波受信の圏外に相当する。
以下において、ネットワーク送受信装置10dの構成、及び動作について説明する。
4.1 ネットワーク送受信装置10dの構成
ネットワーク送受信装置10dは、図13に示すように、ネットワークチップ100d、受信パケットバッファ120d、送信パケットバッファ103d、CPU104d、マイク105d、スピーカ106d、ディスプレイ107d、入力部108d、及びアンテナ109dから構成されている。
なお、マイク105d、スピーカ106d、ディスプレイ107d、及び入力部108dと、CPU104dとの間におけるデータの入出力は、バス(図示せず)によって行われるものとする。
(1)受信パケットバッファ120d
受信パケットバッファ120dは、第3の実施の形態にて示す受信パケットバッファ120cと同様であるため、ここでの説明は省略する。
(2)送信パケットバッファ103d
送信パケットバッファ103dは、第1の実施の形態にて示す送信パケットバッファ103と同様であるため、ここでの説明は省略する。
(3)ネットワークチップ100d
ネットワークチップ100dは、図13に示すように、パケット受信部150d、割込発行部151d、及びパケット送信部152dを備えている。
ネットワークチップ100dは、アンテナ109dを介して、基地局20dからパケットを受信し、受信したパケットの解析を行う。ネットワークチップ100dは、受信したパケットの解析結果に応じて、CPU104dに対して割り込みを発行するか否かを制御する。
また、ネットワークチップ100dは、アンテナ109dを介して基地局20dへパケットを送信する。
(3−1)パケット受信部150d
パケット受信部150dは、アンテナ109dを介して基地局20dからパケットを受信すると、受信したパケットを割込発行部151dへ出力する。
(3−2)割込発行部151d
割込発行部151dは、CPU104dから指定されたネットワークを示す識別子を格納する記憶領域を有している。ここで、ネットワークを示す識別子は、ビーコンパケットフォーマット300に含まれるSSID306に用いられるデータである。
割込発行部151dは、CPU104dがスリープする際にCPU104dにより指定されたネットワークの識別子をCPU104dから受け取ると、受け取ったネットワークの識別子を記憶領域に格納する。
割込発行部151dは、パケット受信部150dからパケットを受信すると、受信したパケットの解析を行う。ここでは、割込発行部151dは、受信したパケットに含まれるSSIDを取得する。
割込発行部151dは、解析結果により受信したパケットがCPU104dにより指定されたネットワークのビーコンパケットであるか否かを判断する。ここでは、記憶領域に格納されている識別子と、受信したビーコンパケットに含まれるSSID306が示す識別子とが一致するか否かにより判断する。
受信したパケットがCPU104dにより指定されたネットワークのビーコンパケットである、つまり、記憶領域に格納されている識別子と、受信したビーコンパケットに含まれるSSID306が示す識別子とが一致すると判断する場合、割込発行部151dは、受信したパケットを受信パケットバッファ120dに格納し、CPU104dに対して、信号線160dを介して割込信号を送信し、割り込みを発行する。
受信したパケットがCPU104dにより指定されたネットワークのビーコンパケットでないと判断する場合、割込発行部151dは、受信したビーコンパケットを破棄する。
(3−3)パケット送信部152d
パケット送信部152dは、第1の実施の形態にて示すパケット送信部152と同様であるので、ここでの説明は省略する。
(4)CPU104d
CPU104dは、ネットワーク送受信装置10dの全体の動作を制御する。
CPU104dは、動作状態をスリープに移行する際に、割込発行の契機となるネットワークの識別子を割込発行部151dに出力し、スリープ状態に移行する。
CPU104dは、割込発行部151dから割込信号を受け取ると、受信パケットバッファ120dに格納されているパケット(CPU104dが指定したネットワークのビーコンパケット)を取得する。CPU104dは、取得したパケットに対する処理を施す。
CPU104dは、処理を施した後、処理の対象となったパケットを消去する。つまり、バッファに格納されている全てのパケットに対して処理が施されると、バッファ内は何も格納されていない状態となる。
ここで、受信したパケットに対する処理は従来と同様であるため、ここでは詳細な説明は省略する。
また、CPU104dは、マイク105dから音声データを受け取ると、受け取った音声データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103dに格納する。
また、CPU104dは、入力部108dから基地局20dへ送信する送信データ(例えば、文字データ)を受け取ると、受け取った送信データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103dに格納する。
CPU104dは、送信パケットの送信開始時に、送信要求信号をパケット送信部152dへ送信する。
なお、各データのパケット化の技術については公知であるため、ここでの説明は省略する。
また、CPU104dは、入力部108dからネットワーク送受信装置10dの動作に係る命令を受け取ると、受け取った命令に基づいてネットワーク送受信装置10dの動作を制御する。
(5)マイク105d
マイク105dは、第1の実施の形態にて示すマイク105と同様であるため、ここでの説明は省略する。
(6)スピーカ106d
スピーカ106dは、第1の実施の形態にて示すスピーカ106と同様であるため、ここでの説明は省略する。
(7)ディスプレイ107d
ディスプレイ107dは、第1の実施の形態にて示すディスプレイ107と同様であるため、ここでの説明は省略する。
(8)入力部108d
入力部108dは、第1の実施の形態にて示す入力部108と同様であるため、ここでの説明は省略する。
4.2 ネットワーク送受信装置10dの動作
(1)割込発行部151dの動作
ここでは、割込発行部151dの動作について、図14にて示す流れ図を用いて説明する。
なお、割込発行部151dは、CPU104dにて指定されたネットワークの識別子を予め記憶領域に格納しているものとする。
割込発行部151dは、パケット受信部150dを介して基地局20dからパケットを受信したか否かを判断する(ステップS400)。
パケットを受信していないと判断する場合には(ステップS400における「NO」)、割込発行部151dは、ステップS400に戻る。
パケットを受信したと判断する場合には(ステップS400における「YES」)、割込発行部151dは、受信したパケットを解析し(ステップS405)、解析結果により、受信したパケットがCPU104dにて指定されたネットワークのビーコンパケットであるか否かを判定する(ステップS410)。
受信したパケットが指定されたビーコンパケットであると判定する場合には(ステップS410における「YES」)、割込発行部151dは、受信したビーコンパケットを受信パケットバッファ120dに格納する(ステップS415)。割込発行部151dは、CPU104dへ割込信号を送信し、割り込みを発行する(ステップS420)。割込発行部151dは、割り込み発行後、ステップS400に戻る。
受信したパケットが指定されたビーコンパケットでないと判断する場合(ステップS410における「NO」)、割込発行部151dは、受信したパケットを破棄し(ステップS420)、ステップS400へ戻る。
4.3 変形例
なお、本発明を上記の第4の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下の場合も本発明に含まれる。
(1)上記第4の実施の形態では、パケットを送受信する伝送路として無線を使用する場合について説明を行ったが、伝送路が有線であってもよい。
(2)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
4.4 まとめ
以上、第4の実施の形態によると、ネットワーク非接続時に、CPUへの割り込みを低減することにより省電力を実現することが可能なネットワーク送受信装置を実現できる。
5.第5の実施の形態
本発明に係る第5の実施の形態としての送受信システム1eについて説明する。
送受信システム1eは、図15に示すように、ネットワーク送受信装置10eと基地局20eとから構成されている。
ネットワーク送受信装置10eと基地局20eとは、無線伝送路を用いてパケットを互いに送受信することによりネットワーク通信を行う。
ネットワーク送受信装置10eは、基地局20eから受信するパケットとして、非リアルタイムパケットを受信する。
本実施の形態では、通常動作時にネットワーク送受信装置において、ネットワークチップが、受信パケットが自装置宛のパケットであるかをチェックし、自装置宛てであると判断する場合にのみに割り込みを行うことにより、CPUへの割り込み回数の低減を行う。
送受信を行うパケットは、アプリケーションパケットフォーマット400のTCP/UDPパケットやARPパケットであるものとする。
TCP/UDPパケットは、図11にて示すIP Header403、TCP/UDP Header404、及びData405から構成されている。
以下、ARPパケットについて図16を用いて説明する。
図16は、ARPパケットのデータ構造を示すARPパケットフォーマット500を示す図である。
ARPパケットフォーマット500は、802.11 Packet Header501、Operation Code502、Source MAC Address503、Source IP Address504、Destination MAC Address505、及びDestination IP Address506を含んでいる。なお、802.11 Packet Header501、Operation Code502、Source MAC Address503、Source IP Address504、Destination MAC Address505、及びDestination IP Address506におけるデータの定義は、公知であるため、ここでの詳細な説明は省略する。
Operation Code502は2バイトからなるデータであり、Source MAC Address503及びDestination MAC Address505は6バイトからなるデータであり、Source IP Address504及びDestination IP Address506は4バイトからなるデータである。
ARPパケットフォーマット500に示されるARPパケットは、IPアドレスからMACアドレスを入手するためのパケットである。例えば、基地局20eがあるネットワーク送受信装置のMACアドレスを入手したい場合には、下記のような内容を示すデータをもつARP要求パケットを送信する。
Operation Code:「要求」
Source MAC Address:「自端末のMACアドレス」
Source IP Address:「自端末のIPアドレス」
Destination MAC Address:「ブロードキャストアドレス」
Destination IP Address:「MACアドレスを知りたい端末のIPアドレス」
このARP要求パケットを受信したネットワーク送受信装置は、自装置のIPアドレスがARP要求パケットで指定されたDestination IP Addressと一致する場合には、以下のような内容を示すデータをもつARP応答パケットを送信する。
Operation Code:「応答」
Source MAC Address:「自端末のMACアドレス」
Source IP Address:「自端末のIPアドレス」
Destination MAC Address:「相手端末のMACアドレス」
Destination IP Address:「相手端末のIPアドレス」
基地局20eは、以上のようなARP要求パケットを送信し、ARP応答パケットを受信することにより、あるIPアドレスを持つネットワーク送受信装置のMACアドレスを入手でき、MACアドレスを使用する802.11やEthernet(登録商標)による通信が可能となる。
以下において、ネットワーク送受信装置10eの構成、及び動作について説明する。
なお、上述したように、本実施の形態では、ネットワーク送受信装置10eが受信するパケットは、TCP/UDPパケットやARPパケットであるものとする。
5.1 ネットワーク送受信装置10eの構成
ネットワーク送受信装置10eは、図15に示すように、ネットワークチップ100e、受信パケットバッファ120e、送信パケットバッファ103e、CPU104e、マイク105e、スピーカ106e、ディスプレイ107e、入力部108e、及びアンテナ109eから構成されている。
なお、マイク105e、スピーカ106e、ディスプレイ107e、及び入力部108eと、CPU104eとの間におけるデータの入出力は、バス(図示せず)によって行われるものとする。
(1)受信パケットバッファ120e
受信パケットバッファ120eは、第3の実施の形態にて示す受信パケットバッファ120cと同様であるため、ここでの説明は省略する。
(2)送信パケットバッファ103e
送信パケットバッファ103eは、第1の実施の形態にて示す送信パケットバッファ103と同様であるため、ここでの説明は省略する。
(3)ネットワークチップ100e
ネットワークチップ100eは、図15に示すように、パケット受信部150e、割込発行部151e、及びパケット送信部152eを備えている。
ネットワークチップ100eは、アンテナ109eを介して、基地局20eからパケット(TCP/UDPパケットやARPパケット)を受信し、受信したパケットの解析を行う。ネットワークチップ100eは、受信したパケットの解析結果に応じて、CPU104eに対して割り込みを発行するか否かを制御する。
また、ネットワークチップ100eは、アンテナ109eを介して基地局20eへパケットを送信する。
(3−1)パケット受信部150e
パケット受信部150eは、アンテナ109eを介して基地局20eからパケット(TCP/UDPパケットやARPパケット)を受信すると、受信したパケットを割込発行部151eへ出力する。
(3−2)割込発行部151e
割込発行部151eは、自装置のIPアドレス識別子を格納する記憶領域を有している。
割込発行部151eは、CPU104eから自装置のIPアドレスを受け取り、受け取ったIPアドレスを記憶領域に記憶する。
割込発行部151eは、パケット受信部150eからパケットを受信すると、受信したパケットの解析を行う。ここでは、割込発行部151eは、受信したパケットに含まれるIPアドレスを取得する。
割込発行部151eは、解析結果により受信したパケットが自装置宛のパケットであるか否かを判断する。ここでは、記憶領域に格納されているIPアドレスと、受信したパケット(TCP/UDPパケットやARPパケット)に含まれるDestination IP Addressが示すIPアドレスとが一致するか否かにより判断する。
受信したパケットが自装置宛のパケットである、つまり、記憶領域に格納されているIPアドレスと、受信したパケットに含まれるDestination IP Addressが示すIPアドレスとが一致すると判断する場合、割込発行部151eは、受信したパケットを受信パケットバッファ120eに格納し、CPU104eに対して、信号線160eを介して割込信号を送信し、割り込みを発行する。
受信したパケットが自装置宛のパケットでないと判断する場合、割込発行部151eは、受信したパケットを破棄する。
(3−3)パケット送信部152e
パケット送信部152eは、第1の実施の形態にて示すパケット送信部152と同様であるので、ここでの説明は省略する。
(4)CPU104e
CPU104eは、ネットワーク送受信装置10eの全体の動作を制御する。
CPU104eは、自装置のIPアドレスを割込発行部151eに出力する。
CPU104eは、割込発行部151eから割込信号を受け取ると、受信パケットバッファ120eに格納されているパケットを取得する。CPU104eは、取得したパケットに対する処理を施す。
CPU104eは、処理を施した後、処理の対象となったパケットを消去する。つまり、バッファに格納されている全てのパケットに対して処理が施されると、バッファ内は何も格納されていない状態となる。
ここで、受信したパケットに対する処理は従来と同様であるため、ここでは詳細な説明は省略する。
また、CPU104eは、マイク105eから音声データを受け取ると、受け取った音声データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103eに格納する。
また、CPU104eは、入力部108eから基地局20eへ送信する送信データ(例えば、文字データ)を受け取ると、受け取った送信データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103eに格納する。
CPU104eは、送信パケットの送信開始時に、送信要求信号をパケット送信部152eへ送信する。
なお、各データのパケット化の技術については公知であるため、ここでの説明は省略する。
また、CPU104eは、入力部108eからネットワーク送受信装置10eの動作に係る命令を受け取ると、受け取った命令に基づいてネットワーク送受信装置10eの動作を制御する。
(5)マイク105e
マイク105eは、第1の実施の形態にて示すマイク105と同様であるため、ここでの説明は省略する。
(6)スピーカ106e
スピーカ106eは、第1の実施の形態にて示すスピーカ106と同様であるため、ここでの説明は省略する。
(7)ディスプレイ107e
ディスプレイ107eは、第1の実施の形態にて示すディスプレイ107と同様であるため、ここでの説明は省略する。
(8)入力部108e
入力部108eは、第1の実施の形態にて示す入力部108と同様であるため、ここでの説明は省略する。
5.2 ネットワーク送受信装置10eの動作
(1)割込発行部151eの動作
ここでは、割込発行部151eの動作について、図17にて示す流れ図を用いて説明する。
なお、割込発行部151eは、CPU104eから通知されたIPアドレスを予め記憶領域に格納しているものとする。
割込発行部151eは、パケット受信部150eを介して基地局20eからパケットを受信したか否かを判断する(ステップS500)。
パケットを受信していないと判断する場合には(ステップS500における「NO」)、割込発行部151eは、ステップS500に戻る。
パケットを受信したと判断する場合には(ステップS500における「YES」)、割込発行部151eは、受信したパケットを解析し(ステップS505)、解析結果により、受信したパケットが自装置宛のパケットであるか否かを判定する(ステップS510)。
受信したパケットが自装置宛のパケットであると判定する場合には(ステップS510における「YES」)、割込発行部151eは、受信したパケットを受信パケットバッファ120eに格納する(ステップS515)。割込発行部151eは、CPU104eへ割込信号を送信し、割り込みを発行する(ステップS520)。割込発行部151eは、割り込み発行後、ステップS500に戻る。
受信したパケットが自装置宛のパケットでないと判断する場合(ステップS510における「NO」)、割込発行部151eは、受信したパケットを破棄し(ステップS525)、ステップS500へ戻る。
5.3 変形例
なお、本発明を上記の第5の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下の場合も本発明に含まれる。
(1)上記第5の実施の形態では、パケットを送受信する伝送路として無線を使用する場合について説明を行ったが、伝送路が有線であってもよい。
(2)上記第5の実施の形態では、デスティネーションアドレスとしてネットワーク層にあたるIPアドレスを指定して受信パケットをチェックする場合を例にとって説明を行ったが、これに限定されない。その他のいかなるOSI参照モデルにおけるプロトコル層の自端末のアドレスを指定し、指定アドレスを使用してパケットのチェックを行い、受信パケットが自装置宛のパケットである場合に割り込みを発行してもよい。
(3)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
5.4 まとめ
以上、第5の実施の形態によると、ネットワーク送受信装置におけるネットワークチップが自端末のアドレスがデスティネーションアドレスと同一である場合にのみCPUに対して割り込みを行うことにより、省電力を実現できる。
6.第6の実施の形態
本発明に係る第6の実施の形態としての送受信システム1fについて説明する。
送受信システム1fは、図18に示すように、ネットワーク送受信装置10fと基地局20fとから構成されている。
ネットワーク送受信装置10fと基地局20fとは、無線伝送路を用いてパケットを互いに送受信することによりネットワーク通信を行う。
ネットワーク送受信装置10fは、基地局20fから受信するパケットとして、リアルタイムパケット及び非リアルタイムパケットを受信する。しなしながら、第1及び第2の実施の形態とは異なり、ネットワーク送受信装置10fは、リアルタイムパケットと非リアルタイムパケットとの区別は行わない。
本実施の形態では、“IEEE 802.11e”で規定されるTXOP Limit(Transmission Opportunity Limit)によるバースト転送がサポートされるものとする。
以下、TXOP Limitによるバースト転送について説明する。802.11eのTXOP Limitによるバースト転送は、基地局(AP)からネットワーク送受信装置(STA)に対して一定のバースト転送期間が与えられ、その時間内において連続してパケットの送受信を行うことが機構である。
バースト転送期間は、図2にて示すパケットフォーマット200で示されるTID毎に決まっており、ビーコンパケットにより示される。
図19は、TXOP Limitによるバースト転送期間を示すデータを含むビーコンパケットのデータ構造を示すビーコンパケットフォーマット600を示す図である。
ビーコンパケットフォーマット600は、802.11Packet Header601、EDCA Parameter Set Element602、及びFCS603を含んでいる。
なお、図19には図示していないが、図10にて示すビーコンパケットフォーマット300と同様に、SSIDを含んでいる。また、802.11Packet Header601、EDCA Parameter Set Element602、及びFCS603におけるデータの定義は、公知であるため、ここでの詳細な説明は省略し、EDCA Parameter Set Element602について簡単に説明する。
EDCA Parameter Set Element602は、図19に示すように、AC_BE Paremeter Set610、AC_BK Paremeter Set611、AC_VI Paremeter Set612、及びAC_VO Paremeter Set613から構成され、これらParameter Setは、各TIDにて示されるAC(アクセスカテゴリ)のパラメータが格納されている。
AC_BE Paremeter Set610は、Best Effortパケット、つまりTID=0、3のパケットに対するパラメータが格納され、図19にて示すように、Best Effortパケットに対するバースト転送期間を示すTXOP Limit620を含んでいる。
AC_BK Paremeter Set611は、Backgroudパケット、つまりTID=1、2のパケットに対するパラメータが格納され、Backgroudパケットに対するバースト転送期間を示すTXOP Limit(図示せず)を含んでいる。
AC_VI Paremeter Set612は、Videoパケット、つまりTID=4、5のパケットに対するパラメータが格納され、Videoパケットに対するバースト転送期間を示すTXOP Limit(図示せず)を含んでいる。
AC_VO Paremeter Set613は、Voiceパケット、つまりTID=6、7のパケットに対するパラメータが格納され、Voiceパケットに対するバースト転送期間を示すTXOP Limit(図示せず)を含んでいる。
TXOP Limit(バースト転送期間)を使用したパケットのバースト転送について説明する。
図20は、Best Effortパケットに対するバースト転送を示す図である。
Best Effortパケットに対するバースト転送期間(TXOP Limit for AC_BE)700において、図20にて示すように、AC_BEに属するTID=0、3のパケット710、711、・・・、712が、ある基地局(AP)からネットワーク送受信装置(STA)へ送信される。これにより、ビーコンのAC_BEのTXOP Limitにより示されたバースト転送期間中、連続してパケットを送受信することができる。従来の802.11ネットワークの場合には、1パケット毎にバックオフといわれる仕組みにより送信機会を獲得する必要があるが、上述したように802.11eにおけるTXOP Limitにおけるバースト転送では、ある基地局(AP)とネットワーク送受信装置(STA)との間で連続してパケットの送受信を行うことができる。
なお、本実施の形態におけるバースト転送期間の時間は、リアルタイムパケットに対して許容することのできる遅延時間よりも短いものとする。
以下において、ネットワーク送受信装置10eの構成、及び動作について説明する。
6.1 ネットワーク送受信装置10fの構成
ネットワーク送受信装置10fは、図18に示すように、ネットワークチップ100f、受信パケットバッファ120f、送信パケットバッファ103f、CPU104f、マイク105f、スピーカ106f、ディスプレイ107f、入力部108f、及びアンテナ109fから構成されている。
なお、マイク105f、スピーカ106f、ディスプレイ107f、及び入力部108fと、CPU104fとの間におけるデータの入出力は、バス(図示せず)によって行われるものとする。
(1)受信パケットバッファ120f
受信パケットバッファ120fは、受信した1個以上のパケットを格納するための領域を有している。
なお、受信パケットバッファ120fが有する領域のサイズは、受信したパケットを1個以上格納することのできる大きさとする。
(2)送信パケットバッファ103f
送信パケットバッファ103fは、第1の実施の形態にて示す送信パケットバッファ103と同様であるため、ここでの説明は省略する。
(3)ネットワークチップ100f
ネットワークチップ100fは、図18に示すように、パケット受信部150f、割込発行部151f、及びパケット送信部152fを備えている。
ネットワークチップ100fは、アンテナ109fを介して、基地局20fからパケットを受信し、受信したパケットの解析を行う。ネットワークチップ100fは、受信したパケットの解析結果に応じて、CPU104fに対して割り込みを発行するか否かを制御する。
また、ネットワークチップ100fは、アンテナ109fを介して基地局20fへパケットを送信する。
(3−1)パケット受信部150f
パケット受信部150fは、アンテナ109fを介して基地局20fからパケットを受信すると、受信したパケットを割込発行部151fへ出力する。
(3−2)割込発行部151f
割込発行部151fは、予め定められた一定時間(例えば、50ms)及び一定数(例えば、10)を予め記憶している。
割込発行部151fは、各AC(アクセスカテゴリ)に対するTXOP Limitを格納する記憶領域を有している。
割込発行部151fは、CPU104fから各ACに対するTXOP Limitを受け取り、受け取った各TXOP Limitを記憶領域に記憶する。
(ビーコンパケットを受信した場合)
割込発行部151fが、ビーコンパケットを受信した場合の動作は、第4の実施の形態にて示す動作と同様であるため、ここでの説明は省略する。
なお、割込発行部151fが、ビーコンパケットを受信した場合の動作は、従来と同様の動作であってもよい。
(リアルタイムパケット、非リアルタイムパケットを受信した場合)
以下の説明において、割込発行部151fは、記憶領域に各ACに対するTXOP Limitをそれぞれ記憶しているものとする。
割込発行部151fは、パケット受信部150fから新規のパケット(リアルタイムパケット、非リアルタイムパケット)を受信すると、受信した新規のパケットの解析を行う。ここでは、割込発行部151fは、受信した新規のパケットに含まれるTIDを取得する。
割込発行部151fは、解析結果により受信したパケットに対応するTXOP Limit(バースト転送時間)を記憶領域から取得する。ここでは、割込発行部151fは、受信した新規のパケットに含まれるTIDに対応するバースト転送時間を取得する。割込発行部151fは、受信した新規のパケットを受信パケットバッファ120fに格納する。
割込発行部151fは、取得したバースト転送時間の間、受信した新規のパケットと同一の種別であるバケットを受信し、受信したパケットを受信パケットバッファ120fに格納する。
割込発行部151fは、受信パケットバッファ120fの先頭パケットの受信時刻から予め記憶している一定時間以上経過した後、または受信パケットバッファ120fに格納されているパケット数が予め記憶している一定数以上になった場合に、CPU104fに対して、信号線160fを介して割込信号を送信し、割り込みを発行する。
ここで、リアルタイムパケット及び非リアルタイムパケットの何れかを受信した場合における割込発行部151の動作について、さらに具体的に説明する。
割込発行部151は、割り込み発行の制御を行う割込制御部と時間を計時するタイマ部とを有している。
割込制御部は、受信したパケットがリアルタイムパケット及び非リアルタイムパケットの何れかであると判断する場合、受信したパケットを受信パケットバッファ120fへ格納し、タイマ部を起動する。タイマ部は、一定時間以上経過するまで時間の計時を行う。このとき、割込制御部は、既にタイマ部が起動されている場合には、タイマ部の起動は行わず、受信したパケットを受信パケットバッファ120fへの格納のみを行う。
タイマ部は、時間計時が一定時間以上経過すると、割込制御部に対して割り込み発行を行う旨を示す割込発行通知を出力し、その後、時間計時を停止する。割込制御部は、タイマ部から割込発行通知を受け取ると、CPU104fに対して、信号線160fを介して割込信号を送信し、割り込みを発行する。
(3−3)パケット送信部152f
パケット送信部152fは、第1の実施の形態にて示すパケット送信部152と同様であるので、ここでの説明は省略する。
(4)CPU104f
CPU104fは、ネットワーク送受信装置10fの全体の動作を制御する。
CPU104fは、自装置のIPアドレスを割込発行部151fに出力する。
CPU104fは、割込発行部151fから割込信号を受け取ると、受信パケットバッファ120fに格納されているパケットを取得する。
取得したパケットがビーコンパケットである場合には、CPU104fは、取得したビーコンパケットから各ACに対するTXOP Limitそれぞれを取得し、取得した各ACに対するTXOP Limitそれぞれを割込発行部151fへ送信する。
取得したパケットがリアルタイムパケット及び非リアルタイムパケットの何れかである場合には、CPU104fは、取得したパケットに対する処理を施す。
CPU104fは、処理を施した後、処理の対象となったパケットを消去する。つまり、バッファに格納されている全てのパケットに対して処理が施されると、バッファ内は何も格納されていない状態となる。
ここで、受信したパケットに対する処理は従来と同様であるため、ここでは詳細な説明は省略する。
また、CPU104fは、マイク105fから音声データを受け取ると、受け取った音声データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103fに格納する。
また、CPU104fは、入力部108fから基地局20fへ送信する送信データ(例えば、文字データ)を受け取ると、受け取った送信データをパケット化して、1個以上の送信パケットを生成し、生成した1個以上の送信パケットを送信パケットバッファ103fに格納する。
CPU104fは、送信パケットの送信開始時に、送信要求信号をパケット送信部152fへ送信する。
なお、各データのパケット化の技術については公知であるため、ここでの説明は省略する。
また、CPU104fは、入力部108fからネットワーク送受信装置10fの動作に係る命令を受け取ると、受け取った命令に基づいてネットワーク送受信装置10fの動作を制御する。
(5)マイク105f
マイク105fは、第1の実施の形態にて示すマイク105と同様であるため、ここでの説明は省略する。
(6)スピーカ106f
スピーカ106fは、第1の実施の形態にて示すスピーカ106と同様であるため、ここでの説明は省略する。
(7)ディスプレイ107f
ディスプレイ107fは、第1の実施の形態にて示すディスプレイ107と同様であるため、ここでの説明は省略する。
(8)入力部108f
入力部108fは、第1の実施の形態にて示す入力部108と同様であるため、ここでの説明は省略する。
6.2 ネットワーク送受信装置10fの動作
(1)割込発行部151fの動作
ここでは、割込発行部151fの動作について、図21にて示す流れ図を用いて説明する。
なお、割込発行部151fは、各TIDに対するTXOP Limitを記憶領域に予め記憶しているものとする。
割込発行部151fは、受信パケットバッファ120fの先頭パケットの受信から一定時間が経過したか否かを判断する(ステップS600)。
一定時間が経過していないと判断する場合には(ステップS600における「NO」)、割込発行部151fは、パケット受信部150fを介して基地局20fから新規のパケットを受信したか否かを判断する(ステップS605)。
パケットを受信していないと判断する場合には(ステップS605における「NO」)、割込発行部151fは、ステップS600に戻る。
パケットを受信したと判断する場合には(ステップS605における「YES」)、割込発行部151fは、受信した新規のパケットを解析し(ステップS610)、解析結果により、受信したパケットに対応するTXOP Limit(バースト転送時間)を記憶領域から取得する(ステップS615)。割込発行部151fは、受信した新規のパケットを受信パケットバッファ120fに格納する(ステップS620)。
割込発行部151fは、パケット受信部150fを介して基地局20fからパケットを受信したか否かを判断する(ステップS625)。
パケットを受信していないと判断する場合には(ステップS625における「NO」)、割込発行部151fは、ステップS625に戻る。
パケットを受信したと判断する場合には(ステップS625における「YES」)、割込発行部151fは、受信したパケットを受信パケットバッファ120fに格納する(ステップS620)。
割込発行部151fは、取得したバースト転送時間が終了したか否かを判断する(ステップS635)。
終了していないと判断する場合には(ステップS635における「NO」)、割込発行部151fは、ステップS625に戻る。
終了したと判断する場合には(ステップS635における「YES」)、割込発行部151fは、受信パケットバッファ120f内のパケット数が一定数以上であるか否かを判断する(ステップS640)。一定数以上でないと判断する場合(ステップS640における「NO」)、割込発行部151fは、ステップS600に戻る。一定数以上であると判断する場合には(ステップS640における「YES」)、割込発行部151fは、CPU104fへ割込信号を送信し、割り込みを発行する(ステップS645)。割込発行部151fは、割り込み発行後、ステップS600に戻る。
受信パケットバッファ120fの先頭パケットの受信から一定時間が経過したと判断する場合には(ステップS600における「YES」、割込発行部151fは、ステップS645以降の動作を行う。
6.3 変形例
なお、本発明を上記の第6の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下の場合も本発明に含まれる。
(1)上記第6の実施の形態では、パケットを送受信する伝送路として無線を使用する場合について説明を行ったが、伝送路が有線であってもよい。
(2)上記第6の実施の形態では、バースト転送として802.11eにおけるTXOP Limitによるバースト転送を使用する場合について説明を行ったが、これに限定されない。他のいかなるバースト転送を使用するネットワーク送受信装置についても本発明は有効である。
また、パケットの種類によらず、バースト期間が一定の場合には、CPUからネットワークチップに対して、バースト期間の情報を伝える必要はない。
(3)上記第6の実施の形態において、割り込み発行のタイミングを、受信パケットバッファ120fの先頭パケットの受信時刻から予め記憶している一定時間以上経過した後、または受信パケットバッファ120fに格納されているパケット数が予め記憶している一定数以上になった場合としたが、これに限定されない。
割込発行部は、バースト転送終了直後に、割り込みを発行してもよい。
つまり、割込発行部151fは、最初のパケットの受信開始から、バースト転送期間が終了するまでは、受信パケットを受信パケットバッファ120fに格納するのみで、CPU104fに対しては割り込みを行わず、バースト転送期間が終了した後に、割込発行部151fがCPU104fに対して割り込みを行う。
この場合の割込発行部151fの動作は、図21に示すステップS605からステップS635及びステップS645を行う。このとき、処理の開始は、ステップS605である。割込発行部151fは、新規パケットを受信していないと判断する場合には(ステップS605における「NO」)、ステップS605に戻る。また、バースト転送が終了したと判断する場合(ステップS635における「YES」)、割込発行部151fは、ステップS645を実行し、その後、ステップS605に戻る。
(4)上記第6の実施の形態において、CPU104fが、ビーコンパケットから各ACに対するTXOP Limitそれぞれを取得したが、これに限定されない。
割込発行部151fにてビーコンパケットから各ACに対するTXOP Limitそれぞれを取得してもよい。この場合、割込発行部151fは、ビーコンパケットから各ACに対するTXOP Limitそれぞれを取得すると、取得した各TXOP Limitを記憶領域に格納する。
(5)上記第6の実施の形態では、バースト転送期間の時間は、リアルタイムパケットに対して許容することのできる遅延時間よりも短いものとして説明したが、これに限定されない。
バースト転送期間の時間が、リアルタイムパケットに対して許容することのできる遅延時間よりも長い場合では、ネットワーク送受信装置は、リアルタイムパケットのバースト転送の期間において、受信パケットバッファの先頭パケット(リアルタイムパケット)の受信から経過した時間が遅延時間を越えないように制御すればよい。
例えば、ネットワーク送受信装置は、リアルタイムパケットのバースト転送期間においては、第1の実施の形態にて示すように、リアルタイムパケットを受信する度に、割り込みを発行する。ネットワーク送受信装置は、非リアルタイムパケットのバースト転送期間においては、第6の実施の形態と同様の動作を行う。
(6)上記第6の実施の形態では、バースト転送時における動作を、リアルタイムパケット及び非リアルタイムパケットの双方に対して適用したが、これに限定されない。
バースト転送時における動作を、非リアルタイムパケットのみに適用してもよい。
または、バースト転送時における動作を、リアルタイムパケットのみに適用してもよい。
(7)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
6.4 まとめ
以上、第6の実施の形態によると、バースト転送をサポートするネットワークシステムにおけるネットワーク送受信装置はバースト転送期間が終了するまでネットワークチップからCPUに対して割り込みを発行しないことにより、割り込み回数を低減することができる。
7.変形例
本発明を上記の各実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下の場合も本発明に含まれる。
(1)本発明におけるネットワーク送受信装置は、ネットワークに接続された他の装置とパケット通信によるデータの送受信を行う装置であればよい。
例えば、ネットワーク送受信装置は、携帯電話機である。
(2)本発明におけるCPUは、マイクロプロセッサ(Micro Processing Unit:MPU)の概念を含むものとする。
(3)上記のネットワークチップは、具体的には、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、ネットワークチップは、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
(4)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。また、これらの記録媒体に記録されている前記コンピュータプログラム又は前記デジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリとを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしてもよい。
また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(5)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
本発明は、データパケットを送受信する装置を製造及び販売する産業において、経営的、つまり反復的かつ継続的に利用されうる。
送受信システム1におけるネットワーク送受信装置10の構成を示す図である。 パケットのデータ構造を示す図である。 割込発行部151の動作を示す流れ図である。 ネットワーク送受信装置10aの構成を示す図である。 送受信システム1bにおけるネットワーク送受信装置10bの構成を示す図である。 割込発行部151bの動作を示す流れ図である。 送信処理時においてCPU104bがパケット取得処理を行う動作を示す流れ図である。 管理テーブルT100のデータ構造の一例を示す図である。 送受信システム1cにおけるネットワーク送受信装置10cの構成を示す図である。 ビーコンパケットのデータ構造を示す図である。 アプリケーションパケットのデータ構造を示す図である。 割込発行部151cの動作を示す流れ図である。 送受信システム1dにおけるネットワーク送受信装置10dの構成を示す図である。 割込発行部151dの動作を示す流れ図である。 送受信システム1eにおけるネットワーク送受信装置10eの構成を示す図である。 ARPパケットのデータ構造を示す図である。 割込発行部151eの動作を示す流れ図である。 送受信システム1fにおけるネットワーク送受信装置10fの構成を示す図である。 バースト転送をサポートするビーコンパケットのデータ構造を示す図である。 Best Effortパケットに対するバースト転送の一例を示す図である。 割込発行部151fの動作を示す流れ図である。
符号の説明
1 送受信システム
10 ネットワーク送受信装置
20 基地局
100 ネットワークチップ
101 リアルタイム受信パケットバッファ
102 非リアルタイム受信パケットバッファ
103 送信パケットバッファ
104 CPU
105 マイク
106 スピーカ
107 ディスプレイ
108 入力部
109 アンテナ
150 パケット受信部
151 割込発行部
152 パケット送信部

Claims (30)

  1. ネットワークにより接続された外部装置に対してデータパケットを送受信するネットワークチップであって、
    前記外部装置から受信したデータパケットの解析を行う解析手段と、
    解析して得られた結果に基づいて、受信したデータパケットが、当該ネットワークチップを含む装置に具備される中央処理ユニットに対して受信したデータパケットの処理を依頼する割込の発行が即時にされるべきものか否かを判断する判断手段と、
    即時に発行されるべきものでないと判断される場合に、時間計時を開始し、開始から所定の時間を経過すると、割り込み発行の通知を行うタイマ部と、
    前記判断手段による判断結果、若しくは前記タイマ部の通知に応じて前記中央処理ユニットに対して割込の発行を行う制御手段と
    を備えることを特徴とするネットワークチップ。
  2. 前記データパケットは、当該データパケットの重要の程度を示す属性を含み、
    前記解析手段は、前記外部装置から受信したデータパケットの属性を解析し、
    前記判断手段は、属性を解析して得られた結果に基づいて、受信したデータパケットが重要なデータパケットであるか否かを判断し、
    前記制御手段は、前記判断手段が受信したデータパケットが重要なデータパケットであると判断する場合に即時に前記中央処理ユニットに対して割込の発行を行う
    ことを特徴とする請求項1に記載のネットワークチップ。
  3. 前記属性は、当該データパケットが遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別であり、
    前記解析手段は、受信したデータパケットの種別を取得し、
    前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項2に記載のネットワークチップ。
  4. 前記属性は、当該データパケットが処理されるべきアプリケーションを示すアプリケーション情報であり、
    前記ネットワークチップは、ネットワーク接続はされているが、アプリケーションレベルでの接続はされていない状態であり、前記中央処理ユニットから指定されたアプリケーションに係る指定情報を予め記憶しており、
    前記解析手段は、受信したデータパケットがアプリケーションに係るデータパケットであるかを解析し、
    前記判断手段は、解析して得られた結果により受信したデータパケットがアプリケーションに係るデータパケットである場合には、受信したデータパケットに含まれる前記アプリケーション情報に基づいて、受信したデータパケットが前記指定情報に対するデータパケットであるか否かを判定し、前記指定情報に対するデータパケットであると判定する場合に、受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項2に記載のネットワークチップ。
  5. 前記アプリケーション情報は、当該データパケットが処理されるべきアプリケーションを識別する第1ポート番号であり、
    前記指定情報は、前記中央処理ユニットから指定されたアプリケーションを識別する第2ポート番号であり、
    前記判断手段は、受信したデータパケットに含まれる前記第1ポート番号が、前記第2ポート番号と一致する場合に、受信したデータパケットが前記指定情報に対するデータパケットであると判定する
    ことを特徴とする請求項4に記載のネットワークチップ。
  6. 前記属性は、ネットワークを識別するネットワーク識別子であり、
    前記ネットワークチップは、ネットワークと非接続の状態にあり、複数のネットワークのうち前記中央処理ユニットから指定された1のネットワークを識別する指定識別子を予め記憶しており、
    前記解析手段は、受信したデータパケットを解析することにより、受信したデータパケットに含まれるネットワーク識別子を取得し、
    前記判断手段は、受信したデータパケットから取得したネットワーク識別子が予め記憶している指定識別子と一致するか否かを判定し、一致すると判定する場合に受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項2に記載のネットワークチップ。
  7. ネットワーク識別子を含むデータパケットは、ビーコンパケットであり、
    前記解析手段は、受信したビーコンパケットを解析することにより、受信したビーコンパケットに含まれるネットワーク識別子を取得し、
    前記判断手段は、取得した前記ネットワーク識別子が前記指定識別子と一致するか否かを判定する
    ことを特徴とする請求項6に記載のネットワークチップ。
  8. 前記属性は、データパケットの送信先の宛先を示す宛先情報であり、
    前記解析手段は、受信したデータパケットを解析することにより、前記宛先情報を取得し、
    前記判断手段は、前記宛先情報が示す送信先の宛先が当該ネットワークチップを含む装置宛であるか否かを判定し、前記装置宛であると判定する場合に受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項2に記載のネットワークチップ。
  9. 宛先情報は、送信先の装置を識別する宛先IPアドレスであり、
    前記ネットワークチップは、当該ネットワークチップを含む装置に割り当てられた装置IPアドレスを予め記憶しており、
    前記判断手段は、
    前記装置IPアドレスが、前記宛先IPアドレスと一致する場合に前記装置宛であると判定する
    ことを特徴とする請求項8に記載のネットワークチップ。
  10. 前記ネットワークチップが受信するデータパケットは、遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別を含み、
    前記中央処理ユニットは、前記外部装置へデータパケットを送信する送信処理時に、所定のパケット記憶領域に格納された1つ以上のリアルタイムパケットに対する処理を施し、
    前記ネットワークチップは、前記送信処理においてデータパケットを送信する時間を管理しており、
    前記解析手段は、受信したデータパケットの種別を取得し、取得した種別がリアルタイムパケットであることを示す場合に、受信したリアルタイムパケットを前記所定のパケット記憶領域に蓄積し、
    前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、次にデータパケットの送信を行うまでの時間が遅延時間として許容される所定の一定時間以上であるか否かを判断し、
    前記制御手段は、前記判断手段による判断結果が肯定的である場合に、前記中央処理ユニットに対して即時に割り込みを発行する
    ことを特徴とする請求項1に記載のネットワークチップ。
  11. 前記ネットワークチップは、データパケットの送信時間間隔を予め記憶している時間記憶領域を有し、前記送信時間間隔に基づいて、データパケットを送信する時間を管理する
    ことを特徴とする請求項10に記載のネットワークチップ。
  12. 前記ネットワークチップは、過去に送信された複数のデータパケットそれぞれに対する送信時間の履歴情報を予め記憶しており、
    前記判断手段は、前記複数の履歴情報に基づいて次に送信するデータパケットの送信時間を検出し、検出した送信時間が所定の一定時間内であるか否かを判断する
    ことを特徴とする請求項10に記載のネットワークチップ。
  13. 前記外部装置から送信されるデータパケットには複数の種別があり、
    前記外部装置は、前記複数の種別それぞれに対応するバースト転送期間の時間に基づいて、バースト転送によりバースト転送期間中は同一種別のデータパケットを前記ネットワークチップに送信し、
    前記ネットワークチップは、前記複数の種別それぞれに対応するバースト転送期間の時間を予め記憶しており、バースト転送期間中は同一種別のデータパケットを受信し、
    前記解析手段は、バースト転送開始時に受信したデータパケットを解析することにより、受信したデータパケットの種別に対応するバースト転送期間の時間を取得し、
    前記判断手段は、取得したバースト転送期間の時間に基づいてバースト転送の期間中であるかを判断し、
    前記制御手段は、前記判断手段がバースト転送の期間中であると判断する場合に前記中央処理ユニットに対する割込発行を即時には行わない
    ことを特徴とする請求項1に記載のネットワークチップ。
  14. 前記ネットワークチップは、割込処理が終了するまでの間、受信した1個以上のデータパケットを、所定のパケット記憶領域に格納し、
    前記判断手段は、バースト転送が終了したと判定する場合に、さらに、前記パケット記憶領域に格納された先頭データパケットの受信時刻から一定時間以上経過した、または前記パケット記憶領域に格納されているデータパケットの数が一定数以上であるの何れかの条件を満たすか否かを判断し、
    前記制御手段は、さらに、前記何れかの条件を満たすと判断する場合に前記中央処理ユニットに対して即時に割込発行を行う
    ことを特徴とする請求項13に記載のネットワークチップ。
  15. 前記判断手段は、さらに、バースト転送が終了したと判定する場合に、即時に割り込みを行うと判断し、
    前記制御手段は、さらに、前記判断手段が即時に割り込みを行うと判断する場合に、即時に前記中央処理ユニットに対する割込発行を行う
    ことを特徴とする請求項13に記載のネットワークチップ。
  16. 中央処理ユニットと、ネットワークにより接続された外部装置に対してデータパケットを送受信するネットワークチップとを含むネットワーク送受信装置であって、
    前記ネットワークチップは、
    前記外部装置から受信したデータパケットの解析を行う解析手段と、
    解析して得られた結果に基づいて、受信したデータパケットが、当該ネットワークチップを含む装置に具備される中央処理ユニットに対して受信したデータパケットの処理を依頼する割込の発行が即時にされるべきものか否かを判断する判断手段と、
    即時に発行されるべきものでないと判断される場合に、時間計時を開始し、開始から所定の時間を経過すると、割り込み発行の通知を行うタイマ部と、
    前記判断手段による判断結果、若しくは前記タイマ部の通知に応じて前記中央処理ユニットに対して割込の発行を行う制御手段とを備え、
    前記中央処理ユニットは、前記ネットワークチップより割込の発行があった場合に、受信したデータパケットの処理を行う
    ことを特徴とするネットワーク送受信装置。
  17. 前記データパケットは、当該データパケットの重要の程度を示す属性を含み、
    前記解析手段は、前記外部装置から受信したデータパケットの属性を解析し、
    前記判断手段は、属性を解析して得られた結果に基づいて、受信したデータパケットが重要なデータパケットであるか否かを判断し、
    前記制御手段は、前記判断手段が受信したデータパケットが重要なデータパケットであると判断する場合に即時に前記中央処理ユニットに対して割込の発行を行う
    ことを特徴とする請求項16に記載のネットワーク送受信装置。
  18. 前記属性は、当該データパケットが遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別であり、
    前記解析手段は、受信したデータパケットの種別を取得し、
    前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項17に記載のネットワーク送受信装置。
  19. 前記属性は、当該データパケットが処理されるべきアプリケーションを示すアプリケーション情報であり、
    前記ネットワークチップは、ネットワーク接続はされているが、アプリケーションレベルでの接続はされていない状態であり、前記中央処理ユニットから指定されたアプリケーションに係る指定情報を予め記憶しており、
    前記解析手段は、受信したデータパケットがアプリケーションに係るデータパケットであるかを解析し、
    前記判断手段は、解析して得られた結果により受信したデータパケットがアプリケーションに係るデータパケットである場合には、受信したデータパケットに含まれる前記アプリケーション情報に基づいて、受信したデータパケットが前記指定情報に対するデータパケットであるか否かを判定し、前記指定情報に対するデータパケットであると判定する場合に、受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項17に記載のネットワーク送受信装置。
  20. 前記アプリケーション情報は、当該データパケットが処理されるべきアプリケーションを識別する第1ポート番号であり、
    前記指定情報は、前記中央処理ユニットから指定されたアプリケーションを識別する第2ポート番号であり、
    前記判断手段は、受信したデータパケットに含まれる前記第1ポート番号が、前記第2ポート番号と一致する場合に、受信したデータパケットが前記指定情報に対するデータパケットであると判定する
    ことを特徴とする請求項19に記載のネットワーク送受信装置。
  21. 前記属性は、ネットワークを識別するネットワーク識別子であり、
    前記ネットワークチップは、ネットワークと非接続の状態にあり、複数のネットワークのうち前記中央処理ユニットから指定された1のネットワークを識別する指定識別子を予め記憶しており、
    前記解析手段は、受信したデータパケットを解析することにより、受信したデータパケットに含まれるネットワーク識別子を取得し、
    前記判断手段は、受信したデータパケットから取得したネットワーク識別子が予め記憶している指定識別子と一致するか否かを判定し、一致すると判定する場合に受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項17に記載のネットワーク送受信装置。
  22. ネットワークの識別子を含むデータパケットは、ビーコンパケットであり、
    前記解析手段は、受信したビーコンパケットを解析することにより、受信したビーコンパケットに含まれるネットワーク識別子を取得し、
    前記判断手段は、取得した前記ネットワーク識別子が前記指定識別子と一致するか否かを判定する
    ことを特徴とする請求項21に記載のネットワーク送受信装置。
  23. 前記属性は、データパケットの送信先の宛先を示す宛先情報であり、
    前記解析手段は、受信したデータパケットを解析することにより、前記宛先情報を取得し、
    前記判断手段は、前記宛先情報が示す送信先の宛先が当該ネットワークチップを含む装置宛であるか否かを判定し、前記装置宛であると判定する場合に受信したデータパケットは重要なデータパケットであると判定する
    ことを特徴とする請求項17に記載のネットワーク送受信装置。
  24. 宛先情報は、送信先の装置を識別する宛先IPアドレスであり、
    前記ネットワークチップは、当該ネットワークチップを含む装置に割り当てられた装置IPアドレスを予め記憶しており、
    前記判断手段は、
    前記装置IPアドレスが、前記宛先IPアドレスと一致する場合に前記装置宛であると判定する
    ことを特徴とする請求項23に記載のネットワーク送受信装置。
  25. 前記ネットワークチップが受信するデータパケットは、遅延時間を考慮するリアルタイムパケット、及び遅延時間を考慮しない非リアルタイムパケットの何れかを示す種別を含み、
    前記中央処理ユニットは、前記外部装置へデータパケットを送信する送信処理時に、所定のパケット記憶領域に格納された1つ以上のリアルタイムパケットに対する処理を施し、
    前記ネットワークチップは、前記送信処理においてデータパケットを送信する時間を管理しており、
    前記解析手段は、受信したデータパケットの種別を取得し、取得した種別がリアルタイムパケットであることを示す場合に、受信したリアルタイムパケットを前記所定のパケット記憶領域に蓄積し、
    前記判断手段は、取得した種別がリアルタイムパケットであることを示す場合に、次にデータパケットの送信を行うまでの時間が遅延時間として許容される所定の一定時間以上であるか否かを判断し、
    前記制御手段は、前記判断手段による判断結果が肯定的である場合に、前記中央処理ユニットに対して即時に割り込みを発行する
    ことを特徴とする請求項16に記載のネットワーク送受信装置。
  26. 前記ネットワークチップは、データパケットの送信時間間隔を予め記憶している時間記憶領域を有し、前記送信時間間隔に基づいて、データパケットを送信する時間を管理する
    ことを特徴とする請求項25に記載のネットワーク送受信装置。
  27. 前記ネットワークチップは、過去に送信された複数のデータパケットそれぞれに対する送信時間の履歴情報を予め記憶しており、
    前記判断手段は、前記複数の履歴情報に基づいて次に送信するデータパケットの送信時間を検出し、検出した送信時間が所定の一定時間内であるか否かを判断する
    ことを特徴とする請求項25に記載のネットワーク送受信装置。
  28. 前記外部装置から送信されるデータパケットには複数の種別があり、
    前記外部装置は、前記複数の種別それぞれに対応するバースト転送期間の時間に基づいて、バースト転送によりバースト転送期間中は同一種別のデータパケットを前記ネットワークチップに送信し、
    前記ネットワークチップは、複数の種別それぞれに対応するバースト転送期間の時間を予め記憶しており、バースト転送期間中は同一種別のデータパケットを受信し、
    前記解析手段は、バースト転送開始時に受信したデータパケットを解析することにより、受信したデータパケットの種別に対応するバースト転送期間の時間を取得し、
    前記判断手段は、取得したバースト転送期間の時間に基づいてバースト転送の期間中であるかを判断し、
    前記制御手段は、前記判断手段がバースト転送の期間中であると判断する場合に前記中央処理ユニットに対する割込発行を即時には行わない
    ことを特徴とする請求項16に記載のネットワーク送受信装置。
  29. 前記ネットワークチップは、割込処理が終了するまでの間、受信した1個以上のデータパケットを、所定のパケット記憶領域に格納し、
    前記判断手段は、バースト転送が終了したと判定する場合に、さらに、前記パケット記憶領域に格納された先頭データパケットの受信時刻から一定時間以上経過した、または前記パケット記憶領域に格納されているデータパケットの数が一定数以上であるの何れかの条件を満たすか否かを判断し、
    前記制御手段は、さらに、前記何れかの条件を満たすと判断する場合に前記中央処理ユニットに対して即時に割込発行を行う
    ことを特徴とする請求項28に記載のネットワーク送受信装置。
  30. 前記判断手段は、さらに、バースト転送が終了したと判定する場合に、割り込みを行うと判断し、
    前記制御手段は、さらに、前記判断手段が割り込みを行うと判断する場合に即時に前記中央処理ユニットに対する割込発行を行う
    ことを特徴とする請求項28に記載のネットワーク送受信装置。
JP2007201690A 2006-08-03 2007-08-02 ネットワークチップ及びネットワーク送受信装置 Withdrawn JP2008059577A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007201690A JP2008059577A (ja) 2006-08-03 2007-08-02 ネットワークチップ及びネットワーク送受信装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006212342 2006-08-03
JP2007201690A JP2008059577A (ja) 2006-08-03 2007-08-02 ネットワークチップ及びネットワーク送受信装置

Publications (1)

Publication Number Publication Date
JP2008059577A true JP2008059577A (ja) 2008-03-13

Family

ID=39242172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007201690A Withdrawn JP2008059577A (ja) 2006-08-03 2007-08-02 ネットワークチップ及びネットワーク送受信装置

Country Status (1)

Country Link
JP (1) JP2008059577A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009141992A1 (ja) * 2008-05-19 2009-11-26 パナソニック株式会社 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器
WO2010079538A1 (ja) * 2009-01-08 2010-07-15 三菱電機株式会社 データ伝送装置
CN101964724A (zh) * 2010-08-30 2011-02-02 华为技术有限公司 通信单板的节能方法和一种通信单板
JP2012502594A (ja) * 2008-09-12 2012-01-26 インテル・コーポレーション 少なくとも1つの要求を少なくとも部分的に生成すること、および/または少なくとも部分的に受信すること
US8839015B2 (en) 2007-11-07 2014-09-16 Intel Corporation Systems and methods for reducing power consumption of a communication device
US8898497B2 (en) 2009-03-17 2014-11-25 Aviad Wertheimer Negotiating a transmit wake time
USRE45600E1 (en) 2007-09-17 2015-07-07 Intel Corporation Techniques for collaborative power management for heterogeneous networks
US9329891B2 (en) 2013-03-18 2016-05-03 Fujitsu Limited Communication apparatus and communication method
JP2020198607A (ja) * 2019-06-03 2020-12-10 オープン スタック, インコーポレイテッド タイマ割り込みサービスルーチンを利用したパケット送信装置
US11962455B2 (en) 2021-11-29 2024-04-16 T-Mobile Usa, Inc. Prioritizing multiple issues associated with a wireless telecommunication network

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE45600E1 (en) 2007-09-17 2015-07-07 Intel Corporation Techniques for collaborative power management for heterogeneous networks
US8839015B2 (en) 2007-11-07 2014-09-16 Intel Corporation Systems and methods for reducing power consumption of a communication device
US8438323B2 (en) 2008-05-19 2013-05-07 Panasonic Corporation Communication processing apparatus, communication processing method, control method and communication device of communication processing apparatus
JP5205454B2 (ja) * 2008-05-19 2013-06-05 パナソニック株式会社 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器
WO2009141992A1 (ja) * 2008-05-19 2009-11-26 パナソニック株式会社 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器
US10291542B2 (en) 2008-09-12 2019-05-14 Intel Corporation Generating, at least in part, and/or receiving, at least in part, at least one request
US11570123B2 (en) 2008-09-12 2023-01-31 Intel Corporation Generating, at least in part, and/or receiving, at least in part, at least one request
JP2012502594A (ja) * 2008-09-12 2012-01-26 インテル・コーポレーション 少なくとも1つの要求を少なくとも部分的に生成すること、および/または少なくとも部分的に受信すること
WO2010079538A1 (ja) * 2009-01-08 2010-07-15 三菱電機株式会社 データ伝送装置
JPWO2010079538A1 (ja) * 2009-01-08 2012-06-21 三菱電機株式会社 データ伝送装置
US8638658B2 (en) 2009-01-08 2014-01-28 Mitsubishi Electric Corporation Data transmission device
CN102273144B (zh) * 2009-01-08 2014-03-12 三菱电机株式会社 数据传输装置
US8898497B2 (en) 2009-03-17 2014-11-25 Aviad Wertheimer Negotiating a transmit wake time
US10386908B2 (en) 2009-03-17 2019-08-20 Intel Corporation Negotiating a transmit wake time
US10860079B2 (en) 2009-03-17 2020-12-08 Intel Corporation Negotiating a transmit wake time
US11340681B2 (en) 2009-03-17 2022-05-24 Intel Corporation Negotiating a transmit wake time
US11656671B2 (en) 2009-03-17 2023-05-23 Intel Corporation Negotiating a transmit wake time
CN101964724A (zh) * 2010-08-30 2011-02-02 华为技术有限公司 通信单板的节能方法和一种通信单板
US9329891B2 (en) 2013-03-18 2016-05-03 Fujitsu Limited Communication apparatus and communication method
JP2020198607A (ja) * 2019-06-03 2020-12-10 オープン スタック, インコーポレイテッド タイマ割り込みサービスルーチンを利用したパケット送信装置
US11962455B2 (en) 2021-11-29 2024-04-16 T-Mobile Usa, Inc. Prioritizing multiple issues associated with a wireless telecommunication network

Similar Documents

Publication Publication Date Title
JP2008059577A (ja) ネットワークチップ及びネットワーク送受信装置
US20080031279A1 (en) Network chip and network transmission/reception device
US11044670B2 (en) Unscheduled peer power save mode
JP6271470B2 (ja) データフェッチ時間と、データ終了指示と、モアデータ肯定応答とを用いた省電力
US9036527B2 (en) System, method and computer readable medium for re-connecting to a zigbee network
JP4921558B2 (ja) 無線lan用のdlsメカニズム
JP5010553B2 (ja) 無線装置
JP3644503B2 (ja) 無線端末およびそのエンド間遅延制御方法とプログラム
JP6138825B2 (ja) アクセスポイントと局との間で構成変更メッセージを送信するシステムおよび方法
US20070202835A1 (en) Power saving method for a wireless communication apparatus
US9485728B1 (en) Power saving with WNM-sleep mode
US20110243002A1 (en) Apparatus, module and method used for wireless communication
JP2015505192A (ja) アクセス・ポイント省電力のためのシステムおよび方法
JP2002300175A (ja) 無線通信システム
JP4336817B2 (ja) 無線通信端末装置、無線通信システムおよび無線通信方法
JP4881791B2 (ja) 通信方法、通信システム、通信端末装置及び基地局装置
JP5344557B2 (ja) 無線通信システム及びその省電力方法並びにそれに用いる無線基地局及び無線端末
US8396017B2 (en) Apparatus and method for filtering broadcast message
JP2009038659A (ja) 情報通信端末、無線通信装置、および、無線通信ネットワーク
JP2013258625A (ja) 無線アクセスポイント装置および無線通信制御方法
US11166213B2 (en) Optimizing the consumption and coverage of a local area network
US20090016307A1 (en) Information Communication Terminal, Radio Communication Apparatus, Radio Communication Network System and Program Product Capable of Performing Communication Corresponding to Purpose

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100301

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20110415