以下、この発明を実施するための実施の形態について説明する。
実施の形態1.
図1はこの発明の実施の形態1によるパケット伝送装置の構成を示すブロック図である。この図において、101は、連続して送信された複数のパケットを受信するパケット受信手段であり、ここでは、VoIP(Voice over Internet Protocol)端末から送信されたIPパケットを受信するIPパケット受信部である。102は、上記パケット受信手段が受信したパケットに含まれるデータのデータ種別を判定するデータ種別判定手段であり、ここでは、IPパケット受信部101が受信したIPパケットに含まれるデータの種別を判定するデータ種別判定部である。103は、上記データ種別判定手段の判定結果に基づいて、データ種別に対応してそれぞれ異なるパケットフォーマットで上記受信したパケットの冗長データの冗長パケットを組み立てる冗長パケット組立手段であり、ここでは、データ種別判定部102の判定結果に応じて、パケット長、ヘッダ情報等がそれぞれ異なるパケットフォーマットの冗長パケットを組み立てる冗長パケット組立部である。104は、上記冗長パケット組立手段に組み立てられた冗長パケットを蓄積する冗長パケット蓄積手段であり、ここでは、冗長パケット組立部103が組み立てた冗長パケットを一時的に格納する冗長パケット蓄積バッファである。105は、上記冗長パケット蓄積手段に蓄積された冗長パケットを用いて、上記パケット受信手段が受信したパケットの伝送路パケットを組み立てる伝送路パケット組立手段であり、ここでは、データ種別判定部102から入力されたIPパケットと冗長パケット蓄積バッファ104に蓄積されている冗長パケットから伝送路に送出される伝送路パケットを組み立てる伝送路パケット組立部である。106は、上記伝送路パケット組立手段が組み立てた伝送路パケットを伝送路に送信する伝送路パケット送信手段であり、伝送路パケット組立部105が組み立てた伝送路パケットを相手先のパケット伝送装置へ送出する伝送路パケット送信部である。
また、107は、送信先の端末装置へ送信されるパケットの冗長データからデータ種別に対応してそれぞれ異なるパケットフォーマットで冗長パケットが組み立てられ、当該組み立てられた冗長パケットを用いて組み立てられた伝送路パケットを受信する伝送路パケット受信手段であり、ここでは、相手先のパケット伝送装置から送信された伝送路パケットを受信する伝送路パケット受信部であり、伝送路パケットは、データ種別に対応してそれぞれパケット長、ヘッダ情報当のパケットフォーマットの異なる伝送路パケットを受信する。108は、上記伝送路パケット受信手段が受信した伝送路パケットを送信先の端末装置へ送信されるパケットと冗長パケットとに分割し、当該冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットから元の送信先の端末装置へ送信されるパケットを復元する冗長パケット置換手段であり、ここでは、伝送路パケット受信部107が受信した伝送路パケットをIPパケットと冗長パケットに分割し、冗長パケットからVoIP端末へ送出するIPパケットを復元する冗長パケット置換部である。109は、上記冗長パケット置換手段で得られた送信先の端末装置へ送信されるパケットを蓄積する端末パケット蓄積手段であり、ここでは、冗長パケット置換部108によって分割して得たIPパケットと冗長パケット置換部108が復元したIPパケットを一時的に蓄積するIPパケット蓄積バッファである。110は、上記端末パケット蓄積手段に蓄積されているパケットを上記送信先の端末装置へ送信するパケット送信手段であり、ここでは、IPパケット蓄積バッファ109に蓄積されているIPパケットを取り出してVoIP端末へ送出するIPパケット送信部である。
111は、上記伝送路パケット組立手段に対して、上記パケット受信手段が受信したパケット数が所定数に達するまでは、上記伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御する冗長パケット制御手段であり、ここでは、IPパケット受信部101が受信したIPパケットの数を呼毎に計測し、同一呼のIPパケットが所定数受信されるまでは、伝送路パケット組立部105に対して冗長パケットとして伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御する冗長パケット制御部である。
なお、本構成のパケット伝送装置において、VoIP端末から送信されたIPパケットを受信し、冗長パケットを組み立て、さらに上記IPパケット及び冗長パケットを用いて伝送路に送出される伝送路パケットを組み立てて、当該伝送路パケットを伝送路に送出するパケット送信装置は、上記IPパケット受信部101、データ種別判定部102、冗長パケット組立部103、冗長パケット蓄積バッファ104、伝送路パケット組立部105、伝送路パケット送信部106及び冗長パケット制御部111で形成されている。
また、相手先のパケット伝送装置から送信された伝送路パケットを受信し、当該受信した伝送路パケットをIPパケットと冗長パケットに分割し、さらに当該冗長パケットを用いてIPパケットを復元し、上記伝送路パケットから分割又は冗長パケットから復元して
得られたIPパケットを受信側のVoIP端末へ送信するパケット受信装置は、上記伝送路パケット受信部107、冗長パケット置換部108、IPパケット蓄積バッファ109及びIPパケット送信部110で形成されている。
図1に示したパケット伝送装置は、パケット送信装置及びパケット受信装置を備えている。上記パケット送信装置は、VoIP端末からパケットを送信する際に、VoIP端末と別のパケット伝送装置に備えられたパケット受信装置との間でパケットの送受を行い、上記パケット受信装置は、上記VoIP端末とは別のVoIP端末から送信されたパケットを受信する際に、上記別のVoIP端末から送信されたパケットを送信する別のパケット伝送装置に備えられたパケット送信装置と受信側のVoIP端末との間でパケットの送受を行う。
次に動作について説明する。
最初に、送信側のVoIP端末からIPパケットが送信された際に、この発明の実施の形態1によるパケット伝送装置が上記VoIP端末からIPパケットを受信した場合の動作について述べる。この場合、まずパケット伝送装置はIPパケット受信部101がVoIP端末からのIPパケットを受信し、データ種別判定部102および冗長パケット制御部111へ出力する。そして、データ種別判定部102は、IPパケット受信部101から入力されたIPパケットを検査して、IPパケットに含まれるデータの種別を判定する。
図2は、IPパケット受信部101がVoIP端末から受信するIPパケットのパケットフォーマットを示す説明図である。図3は、RTPヘッダのデータフォーマットを示す説明図である。図4は、RTPヘッダの各項目の概要を示す説明図である。
例えば、パケット伝送装置にITU−T勧告G.729準拠の8kbit/s CS−ACELP方式で符号化された音声データと、RFC2833で規定されたDTMFアウトバンド伝送方式で伝送されるDTMF信号の2種類のデータがIP/UDP/RTPパケットとしてパケット伝送装置に混在して入力される場合、データ種別判定部102は、入力されたIPパケットに含まれるRTPヘッダのペイロードタイプ(PT)のフィールドに格納されている値から、入力されたIPパケットに含まれるデータの種別を判定する。具体的には、G.729方式で符号化された音声データをRTPパケットとして伝送する場合、RTPヘッダのPTフィールドに“18”が格納されるため、入力されたIPパケットのRTPヘッダのPT値が“18”であれば音声データ、それ以外であれば制御信号(DTMF信号)であると判定する。そして、データ種別判定部102は、入力されたIPパケットの判定結果とIPパケットを冗長パケット組立部103へ出力する。
そして、冗長パケット組立部103は、データ種別判定部102から入力された判定結果に基づいて、受信したIPパケットの情報から冗長パケットを組み立てる。ここで、冗長パケット組立部103が組み立てる冗長パケットのフォーマットは、各データ種別に対応したものである。また、パケット受信部101が受信したIPパケットに含まれる情報のうち、伝送路パケットの受信側で復元できる情報は格納されず、正確に復元できない情報は格納されるように構成されたものである。本実施の形態では、例えば、冗長パケットのヘッダ情報は、各データ種別に対応して、IPパケットと冗長パケットで組み立てられた伝送路パケットから、受信側のパケット伝送装置で復元できるヘッダ情報を冗長パケットのヘッダ情報とせず、正確に復元できないヘッダ情報を冗長パケットのヘッダ情報に格納するものとする。また、例えば、冗長パケットのパケット長をデータ種別毎に異なるパケット長とする。
このように、各データ種別に対応して、受信側のパケット伝送装置で復元できる情報を冗長パケットへ格納せず、正確に復元できないヘッダ情報を冗長パケットに格納することにより、受信側のパケット伝送装置で、冗長パケットから元のRTPパケットを正確に復元できると共に、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができる。また、冗長パケットのパケット長をデータ種別毎に異なるパケット長とすることにより、受信側のパケット伝送装置で、冗長パケットのパケット長からデータ種別を判定することができるので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がないため、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができる。
本実施の形態においては、冗長パケットとして、音声データ又は制御信号の冗長データと、伝送遅延情報を伝送するものとする。音声データの冗長パケットは、ヘッダ情報をなしとし、パケット長を20byteとする。図5は、制御信号の冗長パケットのパケットフォーマットを示す説明図である。図5に示すように、制御信号を含む冗長パケットのヘッダ情報は、m(マーカー)、TimeStamp(タイムスタンプ)のフィールドによって構成され、それぞれ図2に示すRTPヘッダのmおよびTimeStampフィールドの値が格納される。パケット長は9byteとする。また、上記伝送遅延情報とは、冗長データの伝送遅延を示す情報であり、冗長データを何パケット後のIPパケットに追加して伝送するか、即ち冗長データを何パケット遅延して伝送するかを示すものである。例えば、冗長データを1パケット後のIPパケットに追加して伝送する場合は、伝送遅延情報は“1”となり、冗長データを2パケット後のIPパケットに追加して伝送する場合は、伝送遅延情報は“2”となる。ここでは、伝送遅延情報の冗長パケットのパケット長は1byteとする。
冗長パケット組立部103が冗長パケットを作成するときに、例えば、データ種別判定部102から入力された判定結果が音声データであった場合、冗長パケット組立部103は、データ種別判定部102から入力されたIPパケットからRTPパケットのペイロードを取り出して、これを20byteの冗長パケットとして組み立てる。この冗長パケットは冗長パケット蓄積バッファ104に蓄積される。
また、データ種別判定部102から入力された判定結果が制御信号であった場合、冗長パケット組立部103は、データ種別判定部102から入力されたIPパケットからRTPパケットのペイロードを取り出し、図5に示すようにヘッダ情報を格納して冗長パケットを組み立てる。この組み立てられた9byteの冗長パケットは冗長パケット蓄積バッファ104に蓄積される。
一方、冗長パケット制御部111は、IPパケット受信部101から入力されたIPパケットが対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新する。そして、同一呼のIPパケット受信数に応じて、音声データもしくは制御信号の冗長データ、又は伝送遅延情報のいずれの冗長パケットを追加するかを示す信号を出力する。同一呼のIPパケット受信数があらかじめ定めた所定数よりも少ない場合は、伝送路パケット組立部105に対して伝送遅延情報の冗長パケットを用いて伝送路パケットを組み立てるように制御する信号を出力し、同一呼のIPパケット受信数があらかじめ定めた所定数以上となった場合は、伝送路パケット組立部105に対して音声データ又は制御信号の冗長データの冗長パケットを用いて伝送路パケットを組み立てるように制御する信号を出力する。これにより、例えば、冗長データの冗長パケットが伝送されるまでは、伝送遅延情報の冗長パケットが伝送されるようにすることができ、受信側のパケット伝送装置では、伝送遅延情報を取得してから冗長データを受信するので、冗長パケットから元のRTPパケット(IPパケット)を正確に復元できる。また、冗長データの伝送には伝送遅延があるため、その伝送遅延の間に伝送遅延情報の冗長パケットを伝送することにより、冗長伝送時の伝送路負荷のピーク値を抑制することができる。
次に、伝送路パケット組立部105は、冗長パケット制御部111から入力された信号にしたがって、データ種別判定部102から入力されたIPパケットの末尾に冗長パケットを追加して伝送路パケットを組み立てる。図6に、伝送路パケットのパケットフォーマットを示す。冗長パケット制御部111から伝送遅延情報の冗長パケットを追加する信号が入力された場合、伝送路パケット組立部105は、データ種別判定部102から入力されたIPパケットの末尾に冗長パケットとして1byteの伝送遅延情報を追加して伝送路パケットを組み立てる。例えば、冗長パケットを1パケット後のIPパケットに追加して伝送する場合は、IPパケットの末尾に“1”を示す1byteの伝送遅延情報を追加する。
また、冗長パケット制御部111から、音声データ又は制御信号の冗長データの冗長パケットを追加する信号が入力された場合、伝送路パケット組立部105は、冗長パケット蓄積バッファ104に格納されている冗長パケットを取り出し、データ種別判定部102から入力されたIPパケットの末尾に追加する。例えば、冗長パケットを1パケット後のIPパケットに追加して送信する場合、1つ前のIPパケットに対応する冗長データの冗長パケットを冗長パケット蓄積バッファ104から取り出し、IPパケットの末尾に追加する。
そして、伝送路パケット組立部105は、作成した伝送路パケットを伝送路パケット送信部106に出力し、伝送路パケット送信部106は、入力された伝送路パケットを相手先のパケット伝送装置へ送出する。
以上が、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作である。次に、相手先のパケット伝送装置から伝送路パケットを受信した場合のパケット伝送装置の動作について述べる。この場合、まずパケット伝送装置は伝送路パケット受信部107によって相手先のパケット伝送装置から送信された伝送路パケットを受信し、伝送路パケットを冗長パケット置換部108へ出力する。
次に、冗長パケット置換部108は、伝送路パケットを送信先の端末装置へ送信されるIPパケットと冗長パケットとに分割してIPパケットを得ると共に、上記分割して得られた冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットから元のIPパケットを復元する。
まず、冗長パケット置換部108は、伝送路パケット受信部107から入力された伝送路パケットのヘッダ情報を検査して、VoIP端末へ送信するIPパケットと冗長パケットのデータ長を算出する。例えば、伝送路パケットのRTPヘッダのPTフィールドの値から、VoIP端末へ送信するIPパケットのヘッダ長とペイロード長が一意に決定できるようにテーブルを用意しておく。そして、冗長パケット置換部108は、VoIP端末へ送信するIPパケットをIPパケット蓄積バッファ109に格納する。更に、冗長パケット置換部108は、冗長パケットのデータ長から冗長パケットの内容を判定する。
本実施の形態においては、音声データの冗長データ、制御信号の冗長データ及び伝送遅延情報の各データ種別に応じて冗長パケットのパケット長が異なる固定値として、それぞれ20byte、9byte、1byteに設定してあるため、冗長パケットのパケット長が1byteの場合は、冗長パケット置換部108は、冗長パケットを伝送遅延情報と判定し、この伝送遅延情報を保存する。
また、冗長パケットが20byteの場合は、冗長パケット置換部108は、冗長パケットを音声データの冗長データであると判定し、伝送路パケットのヘッダ情報と既に保存されている伝送遅延情報を利用して、この音声データの冗長データに対応するRTPヘッダを生成する。
例えば、伝送遅延情報として“1”を保存している場合、図2に示すRTPヘッダのSNフィールドの値として、伝送路パケットのRTPヘッダのSNフィールドの値に1を加算した値を設定する。更に、設定したSN値と、過去に受信したVoIP端末へ送信する音声データのIPパケットに含まれるRTPヘッダのSN値との差分を求め、求めた差分からRTPヘッダのTimeStampの差分を以下の式によって算出する。
TimeStampの差分=SN値の差分×パケット化周期[msec]×サンプル数
次に、算出したTimeStampの差分と過去に受信したVoIP端末へ送信する音声データのIPパケットに含まれるRTPヘッダのTimeStamp値を加算した値を、冗長パケットのRTPヘッダのTimeStamp値として設定する。そして、図2に示すRTPヘッダのv、p、x、cc、SSRCフィールドの値は、伝送路パケットのRTPヘッダのフィールド値を格納し、mフィールドの値に関しては、過去に受信したVoIP端末へ送信する音声データのIPパケットに含まれるRTPヘッダのmフィールドの値を格納し、あらかじめ定義した音声データに対応する値をPTフィールドに格納することによって、冗長パケットのRTPヘッダを完成させる。そして、生成したRTPヘッダを用いて音声データをペイロードとしたIPパケットを組み立てた後、組み立てたIPパケットをIPパケット蓄積バッファ109に格納する。
また、冗長パケットが9byteの場合は、冗長パケットを冗長ヘッダと制御信号の組み合わせであると判定し、伝送路パケットのヘッダ情報と冗長ヘッダの情報を利用して制御信号に対応するRTPヘッダ情報を生成する。
例えば、伝送遅延情報として“1”を保存している場合、図2に示すRTPヘッダのSNフィールドの値として、伝送路パケットのRTPヘッダのSNフィールドの値に1を加算した値を設定する。更に、図2に示すRTPヘッダのm、TimeStampフィールドの値は、図3に示す冗長ヘッダのm、TimeStampフィールドの値を格納し、RTPヘッダのv、p、x、cc、SSRCフィールドの値に関しては、伝送路パケットのRTPヘッダのフィールド値を格納し、あらかじめ設定した制御信号に対応する値をPTフィールドに格納することによって、冗長パケットのRTPヘッダを完成させる。そして、生成したRTPヘッダを用いて制御信号をペイロードとしたIPパケットを組み立てる。そして、冗長パケット置換部108は、組み立てたIPパケットをIPパケット蓄積バッファ109に格納する。
このように、各データ種別に対応して、受信側のパケット伝送装置で受信した伝送路パケットから復元できるヘッダ情報を復元し、正確に復元できないヘッダ情報を冗長パケットのヘッダ情報から取得することにより、受信側のパケット伝送装置で、冗長パケットから元のRTPパケット、IPパケットを正確に復元することができる。例えば、伝送路パケットの冗長パケットとして送信された伝送遅延情報、IPパケットのRTPヘッダ、VoIP端末間であらかじめ定められたパケット化周期[msec]、サンプル数等の値を用いることによって、受信側のパケット伝送装置で受信した伝送路パケットから冗長パケットのデータに対応したヘッダ情報を復元することができる。
なお、冗長パケット置換部108は、冗長パケットから組み立てたIPパケットをIPパケット蓄積バッファ109に蓄積する場合、IPパケット蓄積バッファ109に蓄積されているIPパケットのRTPヘッダに含まれるSNフィールドを検査して、SNフィールドの値が連続する場所に、組み立てたIPパケットを蓄積する。その際、同一のSN値を持つIPパケットが既に格納されている場合は、組み立てたIPパケットを廃棄する。
次に、IPパケット送信部110は、IPパケット蓄積バッファ109に蓄積されているIPパケットを取り出してVoIP端末へ送出する。
以上のように、この発明の実施の形態1によれば、受信したパケットに含まれるデータのデータ種別に対応してそれぞれ異なるパケットフォーマットで冗長データの冗長パケットを組み立てることにより、冗長パケットの受信側で冗長パケットのパケットフォーマットからデータ種別を判定できる上、データ種別に対応して必要な情報のみで冗長パケットを形成できるので、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。例えば、IPパケットに含まれる音声データと制御信号とで互いに異なるパケットフォーマットで冗長パケットを組み立てることにより、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、冗長パケットのパケットフォーマットは、受信したパケットに含まれる情報のうち、伝送路パケットの受信側で復元できる情報は格納されず、正確に復元できない情報は格納されるように構成することにより、パケットを正確に復元できるために必要な情報のみで冗長パケットを形成できるので、受信側のパケット伝送装置においてパケットを正確に復元できる上、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
例えば、冗長パケット組立部103が、音声データに対しては、ヘッダ情報を追加せずに音声データのみを冗長パケットとして伝送し、冗長パケット置換部108において、冗長パケットのデータ長から冗長パケットの種類を特定することにより、音声データの冗長伝送時に最も冗長パケットのオーバヘッドが大きくなる伝送路において、音声データと制御信号が混在する場合の冗長伝送を実現しつつ、伝送路負荷のピーク値を低減するという効果が得られる。例えば、RFC2198に規定されている従来のパケット冗長伝送方式をパケット伝送装置に適用した場合、音声データに1byte、音声データの冗長パケットに4byteのヘッダ情報が追加される。そのため、伝送路パケットのデータ長は、VoIP端末がG.729方式で符号化された音声データを20msec周期でIPパケット化して送信する場合、IP/UDP/RTPヘッダ長を40byteとすると、40+1+20+4+20=85byteとなる。これに対し、この発明の実施の形態1では、音声データの冗長パケットにヘッダ情報が追加されないため、伝送路パケットのデータ長は40+20+20=80byteとなる。したがって、この発明の実施の形態1では、伝送路パケットのデータ長を約6%削減することが可能となる。
また、冗長パケットがデータ種別に対応してそれぞれ異なるパケット長となるように構成されたことにより、受信側のパケット伝送装置で、冗長パケットのパケット長からデータ種別を判定することができるので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がないため、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、冗長データの伝送遅延を示す伝送遅延情報でなり、冗長データの冗長パケットと異なるパケット長のパケットフォーマットで構成された冗長パケットを用いて伝送路パケットを組み立てることにより、冗長データの伝送遅延を示す伝送遅延情報を、冗長データでなる冗長パケットのヘッダ情報として送付する必要がない上、パケット長から伝送遅延情報でなる冗長パケットであることが受信側で判定することができるので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がない。したがって、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、IPパケット受信部が受信したパケット数が所定数に達するまでは、伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御することにより、冗長データの冗長パケットが伝送されるまでは、伝送遅延情報の冗長パケットが伝送されるようにすることができ、受信側のパケット伝送装置では、伝送遅延情報を取得してから冗長データを受信するので、冗長パケットから元のRTPパケット(IPパケット)を正確に復元できる。また、冗長データの伝送には伝送遅延があるため、その伝送遅延の間に伝送遅延情報の冗長パケットを伝送することにより、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、伝送路パケットを送信先の端末装置へ送信されるパケット(IPパケット)と冗長パケットとに分割すると共に、当該冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットから元の送信先の端末装置へ送信されるパケット(IPパケット)を復元することにより、データ種別に対応して必要な情報のみで形成された冗長パケットで冗長データを伝送できるので、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、この発明の実施の形態1では、冗長パケット制御部111が、IPパケット受信部101から入力されたIPパケットと対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新しているが、冗長パケット制御部111がVoIP端末の呼接続を管理する外部のサーバとのI/Fを備え、VoIP端末から送信されるIPパケットと呼の対応付けに関する情報を外部のサーバから取得するようにしてもよい。また、VoIP端末の呼接続を管理する外部のサーバからVoIP端末の呼接続の開始・停止に関する情報を取得し、呼接続の開始情報を取得した場合に、呼毎に用意したIPパケット受信数を計測するためのカウンタをリセットするようにしてもよい。
また、この発明の実施の形態1では、冗長パケット制御部111が、IPパケット受信部101から入力されたIPパケットと対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新しているが、一定時間同一呼のIPパケットを受信しなかった場合にカウンタをリセットするようにしてもよい。
また、この発明の実施の形態1では、冗長パケット制御部111が、IPパケット受信部101から入力されたIPパケットと対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新しているが、受信したIPパケット毎のRTPヘッダのSNとTimeStampフィールドの値の変化を検査し、パケットの連続性が失われた場合にカウンタをリセットするようにしてもよい。例えば、VoIP端末がG.729方式で符号化された音声データを20msec周期でIPパケット化して送信する場合、通常はIPパケット毎にRTPヘッダのSNが+1増加し、TimeStampが+160増加する。したがって、直前に受信したIPパケットと比較して、SNの変化量に対するTimeStampの変化量が一致しないIPパケットを一定個数以上受信した場合に、パケットの連続性が失われたと判定するようにしてもよい。
また、この発明の実施の形態1では、ITU−T勧告G.729準拠の8kbit/s CS−ACELP方式で符号化されたデータを音声データとしているが、例えば3GPP標準のAMR方式のような、G.729以外の方式で符号化されたデータを音声データとして使用してもよい。
また、この発明の実施の形態1では、RFC2833で規定されたDTMFアウトバンド伝送方式で伝送されるDTMF信号を制御信号としているが、例えば、テレタイプのコード情報や、FAX信号もしくはモデム信号の復調信号のような、DTMF信号以外の情報を制御信号として使用してもよい。
実施の形態2.
上記実施の形態1では、冗長データの伝送遅延を示す情報である伝送遅延情報を、冗長パケットとして、パケット伝送装置が所定数のIPパケットを受信するまでの間、伝送する場合について説明したが、この実施の形態2は、VoIP端末の呼接続動作を監視して、上記伝送遅延情報を、呼接続動作の情報の一部として伝送する場合について説明する。
図7はこの発明の実施の形態2によるパケット伝送装置の構成を示すブロック図である。この図において、前述の図と同一又は相当部分に同一符号を付し、説明を省略する。なお、この図において、201は、連続して送信された複数のパケットを受信するパケット受信手段であり、ここでは、VoIP端末から送信されるIPパケットを受信するIPパケット受信部である。202は、データ種別に対応してそれぞれ異なるパケットフォーマットで上記受信したパケットの冗長データの冗長パケットを組み立てる冗長パケット組立手段であり、ここでは、データ種別判定部102から入力されたIPパケットと冗長パケット蓄積バッファ104に格納されている冗長パケットから伝送路に送出する伝送路パケット(IPパケット)を作成する伝送路パケット組立部である。203は、組み立てた伝送路パケットを伝送路に送信する伝送路パケット送信手段であり、ここでは、伝送路パケット組立部202が作成した伝送路パケット(IPパケット)を相手先のパケット伝送装置へ送出する伝送路パケット送信部である。
また、204は送信先の端末装置へ送信されるパケットのデータの冗長データからデータ種別に対応してそれぞれ異なるパケットフォーマットで冗長パケットが組み立てられ、当該組み立てられた冗長パケットを用いて組み立てられた伝送路パケットを受信する伝送路パケット受信手段であり、ここでは、相手先のパケット伝送装置から送信された伝送路パケットを受信する伝送路パケット受信部である。205は、上記伝送路パケット受信手段が受信した伝送路パケットを送信先の端末装置へ送信されるパケットと冗長パケットとに分割し、当該冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットから元の送信先の端末装置へ送信されるパケットを復元する冗長パケット置換手段であり、ここでは、伝送路パケット受信部204が受信した伝送路パケットをIPパケットと冗長パケットに分割し、通信相手のパケット伝送装置から受信した伝送遅延情報を用いてVoIP端末へ送出するIPパケットを組立てる冗長パケット置換部である。206は上記冗長パケット置換手段で得られた送信先の端末装置へ送信されるパケットを蓄積する端末パケット蓄積手段であり、ここでは、IPパケット蓄積バッファ109に蓄積されているIPパケットを取り出してVoIP端末へ送信するIPパケット送信部である。
207は、端末装置間の呼接続を監視して、端末装置間の呼接続を制御するパケットに上記冗長データの伝送遅延を示す伝送遅延情報を付加するコネクション制御手段であり、ここでは、さらに、伝送路パケット受信部204で受信した伝送路パケット(IPパケット)を解析して伝送遅延情報を取得するように構成されている。ここでは、受信したIPパケット又は伝送路パケットが呼接続動作の情報を含むか否かを判定し、接続動作を検出することによって、VoIP端末同士の呼接続動作を監視して、新たに呼が接続されたVoIP端末から送信される音声データの冗長パケットを伝送する際の伝送遅延情報を相手先のパケット伝送装置との間で交換するコネクション制御部である。
次に動作について説明する。
コネクション制御部207が監視するVoIP端末間の呼接続の状態は、呼接続未検出、呼接続開始および呼接続開始完了の3つの状態がある。コネクション制御部207は、呼接続未検出の状態では呼接続の開始を検出し、呼接続開始の状態では呼接続の開始完了を検出する。そして、コネクション制御部207は、呼接続が開始されてから開始完了が検出されるまで端末装置間の呼接続を制御するパケットに上記冗長データの伝送遅延を示す伝送遅延情報を付加する。また、受信側では、呼接続が開始されてから開始完了が検出されるまでの間で上記伝送遅延情報を取得する。以下、呼接続の各状態について動作を説明する。
最初に、コネクション制御部207がVoIP端末の呼接続動作を検出していない状態におけるパケット伝送装置の動作について述べる。まず、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作について述べる。この場合、まずパケット伝送装置はIPパケット受信部201によってVoIP端末からのIPパケットを受信し、受信したIPパケットをコネクション制御部207へ出力する。
次に、コネクション制御部207は、IPパケット受信部201から入力されたIPパケットを解析して当該IPパケットが呼接続動作の情報か否かを判定する。IPパケットが呼接続動作の情報でない場合は、入力されたIPパケットをIPパケット受信部201に出力する。一方、IPパケットが呼接続動作の情報である場合は、IPパケット受信部201から入力されたIPパケットに含まれる呼接続動作の情報を解析して、VoIP端末の呼接続動作の開始を検出する。更に、IPパケットに含まれる呼接続動作の情報から、相手先VoIP端末に対応するパケット伝送装置を特定し、呼接続動作の情報を含むIPパケットの送信先を特定したパケット伝送装置に設定した後、伝送路パケット送信部203へ出力する。そして、伝送路パケット送信部203は、コネクション制御部207から入力されたIPパケットを相手先のパケット伝送装置に出力する。
次に、コネクション制御部207がVoIP端末の呼接続動作を検出していない状態において、相手先のパケット伝送装置から伝送路パケット(IPパケット)を受信した場合の動作について述べる。この場合、まずパケット伝送装置は、伝送路パケット受信部204によって相手先のパケット伝送装置から受信した伝送路パケット(IPパケット)をコネクション制御部207へ出力する。コネクション制御部207は、伝送路パケット受信部204から入力された伝送路パケット(IPパケット)を解析して当該伝送路パケット(IPパケット)が呼接続動作の情報か否かを判定する。伝送路パケットが呼接続動作の情報でない場合は、入力された伝送路パケット(IPパケット)を伝送路パケット受信部204に出力する。一方、IPパケットが呼接続動作の情報である場合は、コネクション制御部207は、伝送路パケット受信部204から受信した伝送路パケット(IPパケット)に含まれる呼接続動作の情報を解析して、呼接続動作の情報を送信する相手先のVoIP端末を特定し、呼接続動作の情報を含む伝送路パケット(IPパケット)をIPパケット送信部206へ出力する。そして、IPパケット送信部206は、コネクション制御部207から入力された伝送路パケット(IPパケット)をVoIP端末へ送信する。
以上が、コネクション制御部207がVoIP端末の呼接続動作を検出していない状態におけるパケット伝送装置の動作である。次に、コネクション制御部207がVoIP端末の呼接続の開始を検出した状態におけるパケット伝送装置の動作について述べる。まず、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作について述べる。この場合、パケット伝送装置はIPパケット受信部201によってVoIP端末からのIPパケットを受信し、受信したIPパケットをコネクション制御部207へ出力する。次に、コネクション制御部207は、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報か否かを判定する。IPパケットが呼接続動作の情報でない場合は、入力されたIPパケットをIPパケット受信部201に出力する。一方、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報であると判定した場合、コネクション制御部207は、呼接続動作の情報に冗長データの伝送遅延情報を追加して図8に示すIPパケットを組み立てた後、組み立てたIPパケットを伝送路パケット送信部203へ出力する。図8は、呼接続動作の情報に冗長データの伝送遅延情報を追加したIPパケットを示す説明図である。更に、コネクション制御部207は、出力するIPパケットに含まれる呼接続動作の情報を解析して、呼接続の開始完了を検出する。そして、伝送路パケット送信部203は、コネクション制御部207から入力された呼接続動作と冗長データの伝送遅延情報を含むIPパケットを相手先のパケット伝送装置に出力する。
次に、コネクション制御部207がVoIP端末の呼接続の開始を検出した状態で、相手先のパケット伝送装置からIPパケットを受信した場合の動作について述べる。この場合、パケット伝送装置は、伝送路パケット受信部204によって相手先のパケット伝送装置から受信した伝送路パケット(IPパケット)をコネクション制御部207へ出力する。コネクション制御部207は、伝送路パケット受信部204から入力された伝送路パケット(IPパケット)を解析して当該伝送路パケット(IPパケット)が呼接続動作の情報か否かを判定する。伝送路パケット(IPパケット)が呼接続動作の情報でない場合は、入力された伝送路パケット(IPパケット)を伝送路パケット受信部204に出力する。一方、伝送路パケット(IPパケット)が呼接続動作の情報である場合は、コネクション制御部207は、伝送路パケット受信部204から受信した伝送路パケット(IPパケット)を解析して、冗長データの伝送遅延情報を取得する。そして、コネクション制御部207は、取得した伝送遅延情報を冗長パケット置換部205へ出力する。更に、伝送路パケット(IPパケット)に含まれる呼接続動作の情報から、呼接続の相手先であるVoIP端末を特定し、伝送路パケット(IPパケット)から伝送遅延情報を削除してIPパケット送信部206へ出力する。そして、IPパケット送信部206は、コネクション制御部207から入力された伝送路パケット(IPパケット)をVoIP端末へ送信する。
以上が、コネクション制御部207がVoIP端末の呼接続の開始を検出した状態におけるパケット伝送装置の動作である。次に、コネクション制御部207がVoIP端末の呼接続の開始完了を検出した状態におけるパケット伝送装置の動作について述べる。
まず、パケット伝送装置がVoIP端末から音声データのIPパケットを受信した場合の動作について述べる。この場合、パケット伝送装置はIPパケット受信部201によってVoIP端末からのIPパケットを受信し、受信したIPパケットをコネクション制御部207へ出力する。
次に、コネクション制御部207は、IPパケット受信部201から入力されたIPパケットを解析して当該IPパケットが呼接続動作の情報か否かを判定する。ここでは、音声データのIPパケットを受信しているのでIPパケットが呼接続動作の情報でないと判定し、入力されたIPパケットをIPパケット受信部201に出力する。そして、IPパケット受信部201は、入力されたIPパケットをデータ種別判定部102へ出力する。なお、これ以降のデータ種別判定部102、冗長パケット組立部103、冗長パケット蓄積バッファ104の動作は、実施の形態1と同一であるため説明を省略する。
次に、伝送路パケット組立部202は、冗長パケット蓄積バッファ104に格納されている冗長パケットを取り出し、データ種別判定部102から入力されたIPパケットの末尾に追加する。例えば、冗長パケットを1パケット後のIPパケットに追加して送信する場合、1つ前のIPパケットに対応する冗長パケットを冗長パケット蓄積バッファ104から取り出し、IPパケットの末尾に追加する。
そして、伝送路パケット組立部202は、作成した伝送路パケットを伝送路パケット送信部203に出力し、伝送路パケット送信部203は、入力された伝送路パケットを相手先のパケット伝送装置へ送出する。
次に、コネクション制御部207がVoIP端末の呼接続の開始完了を検出した状態で、相手先のパケット伝送装置から伝送路パケットを受信した場合の動作について述べる。この場合、まずパケット伝送装置は伝送路パケット受信部204によって相手先のパケット伝送装置から送信された伝送路パケット(IPパケット)を受信する。伝送路パケット受信部204は受信した伝送路パケット(IPパケット)をコネクション制御部207へ出力する。コネクション制御部207は、伝送路パケット受信部204から入力された伝送路パケット(IPパケット)を解析して当該伝送路パケット(IPパケット)が呼接続動作の情報か否かを判定する。ここでは、呼接続動作の情報ではないので、入力された伝送路パケット(IPパケット)を伝送路パケット受信部204に出力する。伝送路パケット204は、入力された伝送路パケット(IPパケット)を冗長パケット置換部205へ出力する。
次に、冗長パケット置換部205は、伝送路パケット受信部204から入力された伝送路パケット(IPパケット)のヘッダ情報を検査して、VoIP端末へ送信するIPパケットと冗長パケットのデータ長を算出する。例えば、伝送路パケットのRTPヘッダのPTフィールドの値から、VoIP端末へ送信するIPパケットのヘッダ長とペイロード長が一意に決定できるようにテーブルを用意しておく。そして、冗長パケット置換部205は、VoIP端末へ送信するIPパケットをIPパケット蓄積バッファ109に格納する。更に、冗長パケット置換部205は、冗長パケットのデータ長から冗長パケットの内容を判定する。例えば、パケット伝送装置が冗長パケットとして伝送するデータ長の種類を、音声データの場合は20byte、冗長ヘッダと制御信号の場合は9byteのようにあらかじめ固定値として設定しておき、冗長パケットが20byteの場合は、冗長パケットを音声データであると判定し、伝送路パケットのヘッダ情報と既に保存されている伝送遅延情報を利用して、この音声データに対応するRTPヘッダを生成し、音声データをペイロードとしたIPパケットを組み立て、IPパケット蓄積バッファ109に格納する。また、冗長パケットが9byteの場合は、冗長パケットを冗長ヘッダと制御信号の組み合わせであると判定し、伝送路パケットのヘッダ情報と冗長ヘッダの情報を利用して制御信号に対応するRTPヘッダ情報を生成し、制御信号をペイロードとしたIPパケットを組み立てる。そして、冗長パケット置換部205は、組み立てたIPパケットをIPパケット蓄積バッファ109に格納する。
なお、IPパケット蓄積バッファ109の動作は実施の形態1と同一であるため説明を省略する。次に、IPパケット送信部206は、IPパケット蓄積バッファ109に格納されているIPパケットを取り出した後、IPパケットをVoIP端末へ送出する。
以上のように、この発明の実施の形態2によれば、コネクション制御部207が、入力されたパケットが呼接続動作の情報か否かを判定し、接続動作を検出することによって、VoIP端末間の呼接続動作を監視して、冗長データの伝送遅延を示す伝送遅延情報を、呼接続動作の情報(呼接続を制御するパケット)の一部として相手先のパケット伝送装置に通知することにより、相手先のパケット伝送装置において、冗長パケットに対応するRTPヘッダを正確に復元することができる。また、冗長データの伝送遅延を示す伝送遅延情報を、冗長データでなる冗長パケットのヘッダ情報として送付する必要がないので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がない上、呼接続を制御するパケットとして伝送遅延情報を伝送できるので、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、コネクション制御部207が、VoIP端末の呼接続動作を監視して、冗長データの伝送遅延を示す伝送遅延情報を呼接続動作の情報(呼接続を制御するパケット)の一部として相手先のパケット伝送装置に通知することにより、冗長パケットとして常に音声データ又は制御信号を伝送路パケットに追加することが可能となり、伝送路でのパケット損失耐性が向上するという効果が得られる。
実施の形態3.
上記実施の形態2では、VoIP端末の呼接続動作の情報を監視して、冗長データの伝送遅延を示す伝送遅延情報を呼接続動作の情報(呼接続を制御するパケット)の一部として相手先のパケット伝送装置へ通知する場合について説明したが、この実施の形態3は、VoIP端末の呼接続動作を監視して、新規に呼の接続が完了した直後にのみ、音声データや制御信号の冗長パケットの代わりに伝送遅延情報を冗長パケットとして伝送する場合について説明する。
図9はこの発明の実施の形態3によるパケット伝送装置の構成を示すブロック図である。この図において、前述の図と同一又は相当部分に同一符号を付し、説明を省略する。なお、この図において、301は、端末装置間の呼接続を監視して、呼の接続開始直後にのみ、伝送路パケット組立部105に対して、上記伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御するコネクション/冗長パケット制御手段であり、ここでは、VoIP端末同士の呼の接続動作を検出し、新規に呼の接続が完了した直後にのみ、冗長パケットとして冗長データの伝送遅延情報を出力するように制御するコネクション/冗長パケット制御部である。
次にコネクション/冗長パケット制御部301の動作について説明する。
まず、コネクション/冗長パケット制御部301がVoIP端末の呼の接続動作を検出していない状態での動作に関しては、実施の形態2で示したコネクション制御部207がVoIP端末の呼接続動作を検出していない状態の動作と同一の動作となるため、説明を省略する。
次に、コネクション/冗長パケット制御部301がVoIP端末の呼接続の開始を検出した状態において、IPパケット受信部201からIPパケットが入力された場合の動作を説明する。この場合、コネクション/冗長パケット制御部301は、まず、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報か否かを判定する。そして、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報であると判定した場合、コネクション/冗長パケット制御部301は、呼接続動作の情報から相手先VoIP端末に対応するパケット伝送装置を特定し、呼接続動作の情報を含むIPパケットの宛先を、特定したパケット伝送装置に設定して伝送路パケット送信部203へ出力する。更に、コネクション/冗長パケット制御部301は、呼接続動作の情報を解析して呼の接続完了を検出する。そして、呼の接続完了を検出した場合、その呼に対応するIPパケット受信数を保存するためのカウンタを新規に用意し、カウンタを初期化する。
そして、コネクション/冗長パケット制御部301がVoIP端末の呼の接続完了を検出した後、IPパケット受信部201がIPパケットを受信し、上記用意したカウンタが1回になるまで、すなわち、新規に呼の接続が完了した直後にのみ、コネクション/冗長パケット制御部301は、伝送路パケット組立部105に対して、上記伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御する。
なお、コネクション/冗長パケット制御部301がVoIP端末の呼の接続完了を検出した状態におけるパケット伝送装置の動作に関しては、実施の形態1で示したパケット伝送装置の動作において、冗長パケット制御部111が伝送路パケット組立部105を制御する際の所定数を1(カウンタの初期値+1)とした場合と同様であるため、説明を省略する。
また、コネクション/冗長パケット制御部301がVoIP端末の呼接続の開始を検出した状態において、伝送路パケット受信部204からIPパケットを入力された場合の動作については、実施の形態2で示したコネクション制御部207がVoIP端末の呼接続の開始を検出した状態の動作と同一の動作となるため、説明を省略する。
また、コネクション/冗長パケット制御部301がVoIP端末の呼の接続完了を検出した状態におけるパケット伝送装置の動作に関しては、実施の形態1で示したパケット伝送装置の動作と同様であるため、説明を省略する。
以上のように、この発明の実施の形態3によれば、コネクション/冗長パケット制御部301が、入力されたパケットが呼接続動作の情報か否かを判定し、接続動作を検出することによって、VoIP端末の呼接続動作を監視して、呼の接続が完了した直後にのみ、音声データや制御信号の冗長パケットの代わりに冗長データの伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てて送信するように制御することにより、相手先のパケット伝送装置において、冗長パケットに対応するRTPヘッダを正確に復元することができる。また、冗長データの伝送遅延を示す伝送遅延情報を、冗長データでなる冗長パケットのヘッダ情報として送付する必要がないので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がない上、冗長パケットとして送信する冗長データが存在しない先頭のIPパケットの冗長パケットとして伝送遅延情報を伝送できるので、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、コネクション/冗長パケット制御部301が、VoIP端末の呼接続動作を監視して、呼の接続が完了した直後にのみ、音声データや制御信号の冗長パケットの代わりに冗長データの伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てて送信するように制御することにより、冗長パケットとして送信する冗長データが存在しない先頭のIPパケットを伝送する場合にのみ、冗長パケットとして冗長データの伝送遅延情報を送信することが可能になるため、冗長パケットとして伝送可能な音声データもしくは制御信号が存在する場合は、常に冗長パケットとして伝送路パケットに追加することが可能となり、伝送路でのパケット損失耐性が向上するという効果が得られる。
実施の形態4.
上記実施の形態3では、呼接続が完了した直後にのみ、音声データや制御信号の代わりに冗長データの伝送遅延情報を冗長パケットとして伝送する場合について説明したが、この実施の形態4は、VoIP端末から入力される音声データの有音・無音を検出し、無音の音声データの冗長パケットの代わりに冗長データの伝送遅延情報を伝送する場合について説明する。
図10はこの発明の実施の形態4によるパケット伝送装置の構成を示すブロック図である。この図において、前述の図と同一又は相当部分に同一符号を付し、説明を省略する。なお、この図において、401は、VoIP端末から送信されたIPパケットの音声データが無音か否かを判定する無音検出部である。402は、伝送路パケット組立手段に対して、パケット受信手段が受信したパケットに含まれるデータが無音の音声データである場合に、伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御する冗長パケット制御手段であり、ここでは、伝送路パケット組立部105に対して、パケット受信部101が受信したIPパケットに含まれるデータが無音の音声データである場合に、当該無音の音声データの冗長パケットの代わりに、伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御するものであり、IPパケット受信部101が受信したIPパケットの数を呼毎に計測し、同一呼のIPパケットが所定数受信されるまでは、伝送路パケット組立部105に対して伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御し、同一呼のIPパケットが所定数受信された後も、無音検出部401が無音と判定したIPパケットの冗長パケットの代わりに伝送遅延情報の冗長パケットを用いて伝送路パケットを組み立てるように制御する冗長パケット制御部である。
次に動作について説明する。
最初に、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作について述べる。この場合、まずパケット伝送装置はIPパケット受信部101によってVoIP端末からのIPパケットを受信し、データ種別判定部102および冗長パケット制御部402へ出力する。そして、データ種別判定部102は、入力されたIPパケットのデータ種別を判定し、入力されたIPパケットおよびIPパケットの判定結果を冗長パケット組立部103へ出力する。なお、データ種別判定部102がIPパケットに含まれるデータの種類を判定する動作は、実施の形態1と同様であるため説明は省略する。また、データ種別判定部102は、IPパケットのデータが制御信号でないと判定した場合、IPパケットを音声データと見なして無音検出部401に出力する。なお、冗長パケット組立部103および冗長パケット蓄積バッファ104の動作に関しては、実施の形態1と同様であるため説明は省略する。
次に、無音検出部401は、入力されたIPパケットに含まれる音声データが無音か否かを判定する。例えば、入力されたIPパケットに含まれる音声データの信号レベルを算出し、信号レベルがあらかじめ設定したしきい値以上であった場合は、音声データを有音と判定する。そして、無音検出部401は、判定結果に応じて音声データの有音・無音を示す信号を冗長パケット制御部402へ出力する。
そして、冗長パケット制御部402は、IPパケット受信部101から入力されたIPパケットが対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新する。そして、同一呼のIPパケット受信数があらかじめ定めた所定数よりも少ない場合は、伝送路パケット組立部105に対して冗長パケットとして伝送遅延情報を追加する信号を出力する。また、同一呼のIPパケット受信数があらかじめ定めた所定数値以上となった場合、無音検出部401から入力された信号に応じて出力信号を決定する。例えば、無音検出部401から音声データの有音を示す信号を受信した場合、有音を示す信号に対応する冗長パケットが伝送路パケットに追加されるタイミングに合わせて、通常の冗長パケットを追加する信号を伝送路パケット組立部105に出力する。また、無音検出部401から音声データの無音を示す信号を受信した場合、無音を示す信号に対応する冗長パケットが伝送路パケットに追加されるタイミングに合わせて、冗長パケットとして伝送遅延情報を追加する信号を伝送路パケット組立部105に出力する。なお、伝送路パケット組立部105および伝送路パケット送信部106の動作は、実施の形態1と同様であるため説明は省略する。
以上が、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作である。なお、相手先のパケット伝送装置から伝送路パケットを受信した場合の動作については、実施の形態1と同様であるため説明は省略する。
以上のように、この発明の実施の形態4によれば、無音検出部401が、VoIP端末から入力された音声データが無音か否かを判定し、当該音声データが無音の音声データである場合に、冗長パケット制御部402が、伝送路パケット組立部105に対して、無音と判定された音声データの冗長パケットの代わりに伝送遅延情報でなる冗長パケットを用いて伝送路パケットを組み立てるように制御することによって、伝送路でバーストロスが発生した場合においても、伝送遅延情報を相手先のパケット伝送装置へ伝送することを可能とし、相手先のパケット伝送装置において、冗長パケットからIPパケットを作成する際に、RTPヘッダを正確に復元することができるという効果が得られる。
実施の形態5.
この実施の形態5は、上記実施の形態1で示した冗長パケット制御を、1又は複数のVoIP端末から受信したIPパケットを多重化して伝送するパケット伝送装置に適用したものである。
図11はこの発明の実施の形態5によるパケット伝送装置の構成を示すブロック図である。この図において、前述の図と同一又は相当部分に同一符号を付し、説明を省略する。なお、この図において、501は、冗長パケット蓄積手段に蓄積された冗長パケットを用いて、パケット受信手段が受信したパケットのショートパケットを組み立てるショートパケット組立手段であり、ここでは、パケット受信部101によって受信され、データ種別判定部102から入力されたIPパケットと冗長パケット蓄積バッファ104に格納されている冗長パケットからショートパケットを作成するショートパケット組立部である。502は、ショートパケット組立手段に組み立てられたショートパケットを蓄積するショートパケット蓄積手段であり、ここでは、ショートパケット組立部501が作成したショートパケットを一時的に格納するためのショートパケット蓄積バッファである。503は、ショートパケット蓄積手段に蓄積されたショートパケットを多重化し、多重化したショートパケットを1つの多重化パケットとして伝送路へ送出する多重化パケット組立・送信手段であり、ここでは、ショートパケット蓄積バッファ502に格納されているショートパケットを多重化して作成した多重化パケットを相手先のパケット伝送装置へ送出する多重化パケット組立・送信部である。
また、504は、送信先の端末装置へ送信されるパケットのデータの冗長データからデータ種別に対応してそれぞれ異なるパケットフォーマットで冗長パケットが組み立てられ、当該組み立てられた冗長パケットを用いて組み立てられたショートパケットが多重化された多重化パケットを受信し、当該受信した多重化パケットを個々のショートパケットに分解する多重化パケット受信・分解手段であり、ここでは、相手先のパケット伝送装置から送信された多重化パケットを受信して個々のショートパケットに分解する多重化パケット受信・分解部である。505は、多重化パケット受信・分解手段が分解したショートパケットを冗長パケットとそれ以外の情報とに分割すると共に、上記分割された冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットから元の送信先の端末装置へ送信されるパケットを復元する冗長パケット置換手段であり、ここでは、多重化パケット受信・分解部504から入力されたショートパケットを冗長パケットとそれ以外の情報に分割し、分割して得た冗長パケットのパケットフォーマットに基づいて判定した結果、上記冗長パケットがRTPヘッダでない場合は、上記冗長パケットの情報からRTPパケットを復元する冗長パケット置換部である。
506は、冗長パケット置換手段が冗長パケット以外の情報として分割したショートパケットの情報から元の送信先の端末装置へ送信されるパケットを組み立てるパケット組立手段であり、ここでは、冗長パケット置換部505が冗長パケット以外の情報として出力したショートパケットの情報からRTPパケットを組立てるRTPパケット組立部である。507は、冗長パケット置換手段およびパケット組立手段で得られた送信先の端末装置へ送信されるパケットを蓄積する端末パケット蓄積手段であり、ここでは、RTPパケット組立部506または冗長パケット置換部505が組み立てたRTPパケットを一時的に格納するRTPパケット蓄積バッファである。508は、端末パケット蓄積手段に蓄積されているパケットを上記送信先の端末装置へ送信するパケット送信手段であり、ここでは、RTPパケット蓄積バッファ507に格納されているRTPパケットを取り出してIPパケットを組み立てた後、IPパケットをVoIP端末へ送信するIPパケット組立・送信部である。
509は、ショートパケット組立手段に対して、上記パケット受信手段が受信したパケット数が所定数に達するまでは、上記パケット受信手段が受信したパケットのヘッダの情報でなる冗長パケットを用いてショートパケットを組み立てるように制御する冗長パケット制御手段であり、ここでは、IPパケット受信部101が受信したIPパケットの数を呼毎に計測し、同一呼のIPパケットが所定数受信されるまでは、ショートパケット組立部501に対してRTPヘッダを冗長パケットとして用いてショートパケットを組み立てるように指示する冗長パケット制御部である。
次に動作について説明する。
最初に、この発明の実施の形態5によるパケット伝送装置がVoIP端末からIPパケットを受信した場合の動作について述べる。この場合、まずパケット伝送装置はIPパケット受信部101によってVoIP端末からのIPパケットを受信し、データ種別判定部102および冗長パケット制御部106へ出力する。そして、データ種別判定部102は、IPパケット受信部101から入力されたIPパケットを検査して、IPパケットに含まれるデータの種別を判定する。なお、IPパケット受信部101、データ種別判定部102、冗長パケット組立部103、冗長パケット蓄積バッファ104の動作は実施の形態1と同一であるため説明を省略する。
なお、本実施の形態においては、冗長パケットとして、音声データ又は制御信号の冗長データと、RTPヘッダを伝送するものとする。また、これらのパケットのパケット長は、互いに異なるパケット長となるようにあらかじめ設定されたものであり、ここでは、音声データの冗長パケットのパケット長は20byte、制御信号の冗長パケットのパケット長は9byte、RTPヘッダの冗長パケットのパケット長は12byteに設定されているものとする。
このように、冗長パケットのパケット長をデータ種別毎に異なるパケット長とすることにより、受信側のパケット伝送装置で、冗長パケットのパケット長からデータ種別を判定することができるので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がないため、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができる。
一方、冗長パケット制御部509は、IPパケット受信部101から入力されたIPパケットが対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新する。そして、同一呼のIPパケット受信数に応じて、音声データもしくは制御信号の冗長データ、又はRTPヘッダのいずれの冗長パケットを追加するかを示す信号を出力する。同一呼のIPパケット受信数があらかじめ定めた所定数よりも少ない場合は、ショートパケット組立部501に対してRTPヘッダでなる冗長パケットを用いてショートパケットを組み立てるように制御する信号を出力し、同一呼のIPパケット受信数があらかじめ定めた所定数以上となった場合は、ショートパケット組立部501に対して通常の冗長パケット、例えば、音声データ又は制御信号の冗長データの冗長パケットを用いてショートパケットを組み立てるように制御する信号を出力する。
これにより、例えば、冗長データの冗長パケットが伝送されるまでは、RTPヘッダでなる冗長パケットが伝送されるようにすることができ、受信側のパケット伝送装置では、RTPヘッダを取得してから冗長データを受信するので、冗長パケットから元のRTPパケット(IPパケット)を正確に復元できる。また、冗長データの伝送には伝送遅延があるため、その伝送遅延の間にRTPヘッダでなる冗長パケットを伝送することにより、冗長伝送時の伝送路負荷のピーク値を抑制することができる。
次に、ショートパケット組立部501は、冗長パケット制御部509から入力された信号にしたがって、ショートパケットを作成する。図12に、判定結果が音声データの場合に作成するショートパケットのパケットフォーマットを示す。また、図13に、判定結果が制御信号の場合に作成するショートパケットのパケットフォーマットを示す。
まず、ショートパケット組立部501は、データ種別判定部102から入力された判定結果および受信したIPパケットのIP/UDP/RTPヘッダの情報から必要な情報のみを抽出してショートパケットのヘッダ情報を作成する。ここで、ショートパケットのヘッダ情報は、IPパケット受信部101が受信したIPパケットに含まれる情報のうち、多重化パケットの受信側で復元できる情報は格納されず、正確に復元できない情報は格納されるように構成されている。
このように、受信側のパケット伝送装置で受信した多重化パケットから復元できる情報をショートパケットのヘッダ情報へ格納せず、正確に復元できない情報をショートパケットのヘッダ情報に格納することにより、受信側のパケット伝送装置で、ショートパケットから元のRTPパケットを正確に復元できると共に、ショートパケットのヘッダ情報のオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができる。
図12、図13に示すように、ショートパケットのヘッダ情報は、例えば、宛先VoIP端末アドレス、シーケンス番号、符号化タイプ、ショートパケット長およびTimeStampのフィールドによって構成される。宛先VoIP端末アドレスは、IPパケットを送信するVoIP端末のIPアドレスであり、シーケンス番号は、RTPヘッダのSNフィールドの値を基準にして同じ転送先のショートパケットに対して1ずつ増加する数値を格納する。符号化タイプは音声データの符号化方式の種別をコード化したものである。ショートパケット長はショートパケットのヘッダと冗長パケットを含めたショートパケットのペイロードのデータ長の合計値を格納する。TimeStampにはRTPヘッダのTimeStamp値を格納する。
そして、ショートパケット組立部501は、データ種別判定部102から入力された受信したIPパケットからRTPパケットのペイロードを抽出して、ショートパケットのペイロードとして格納する。
更に、ショートパケット組立部501は、冗長パケット制御部509から入力された信号にしたがって、ショートパケットのペイロードの末尾に冗長パケットを追加する。例えば、冗長パケット制御部509から冗長パケットとしてRTPヘッダを追加する信号が入力された場合、ショートパケット組立部501は、データ種別判定部102から入力されたIPパケットのRTPヘッダを取り出してショートパケットのペイロードの末尾に12byteの冗長パケットとして追加する。
また、冗長パケット制御部509から、通常の冗長パケット、例えば、音声データ又は制御信号の冗長データの冗長パケットを追加する信号が入力された場合、ショートパケット組立部501は、冗長パケット蓄積バッファ104に格納されている冗長パケットを取り出してショートパケットのペイロードの末尾に追加する。例えば、冗長パケットを1パケット遅らせて送信する場合、1つ前のショートパケットに対応する冗長パケットを冗長パケット蓄積バッファ104から取り出してショートパケットのペイロードの末尾に追加する。この時、音声データの冗長パケットであれば20byte、制御信号の冗長パケットであれば9byteの冗長パケットが追加される。
そして、ショートパケット組立部501は、作成したショートパケットをショートパケット蓄積バッファ502に格納する。
次に、多重化パケット組立・送信部503は、ショートパケット蓄積バッファ502に格納されているショートパケットの合計長を算出し、求めた合計長があらかじめ設定したしきい値を越えた場合に、ショートパケット蓄積バッファ502に格納されているショートパケットを多重化して図14に示す多重化パケットを作成する。図14は、多重化パケットのパケットフォーマットを示す説明図である。そして、多重化パケット組立・送信部503は、作成した多重化パケットを相手先のパケット伝送装置へ送出する。
以上が、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作である。次に、相手先のパケット伝送装置から多重化パケットを受信した場合のパケット伝送装置の動作について述べる。この場合、まずパケット伝送装置は多重化パケット受信・分解部504によって相手先のパケット伝送装置から送信された多重化パケットを受信し、多重化パケットを個々のショートパケットに分解した後、ショートパケット毎に冗長パケット置換部505へ出力する。
次に、冗長パケット置換部505は、多重化パケット受信・分解部504が分解したショートパケットを冗長パケットとそれ以外の情報とに分割すると共に、分割された冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットから元のRTPパケットを復元する。
まず、冗長パケット置換部505は、多重化パケット受信・分解部504から入力されたショートパケットのヘッダ情報を検査して、ショートパケットのヘッダとペイロードおよび冗長パケットのデータ長を算出する。例えば、ショートパケットヘッダの符号化タイプの値からショートパケットのヘッダ長とペイロード長が一意に決定できるようにあらかじめテーブルを用意しておく。そして、冗長パケット置換部505は、ショートパケットのヘッダとペイロードをRTPパケット組立部506へ出力する。
更に、冗長パケット置換部505は、冗長パケットのデータ長から冗長パケットの内容を判定する。ここでは、パケット伝送装置が冗長パケットとして伝送するデータの種類によって、RTPヘッダの場合は12byte、音声データの場合は20byte、冗長ヘッダと制御信号の場合は9byteのようにあらかじめ固定値としてパケット長が設定されているので、冗長パケットが12byteの場合は、冗長パケットをRTPヘッダと判定する。そして、RTPヘッダの情報を保存し、更にRTPヘッダの情報をRTPパケット組立部506へ出力する。また、冗長パケットが20byteの場合は、冗長パケットを音声データであると判定し、ショートパケットのヘッダ情報と既に保存されているRTPヘッダの情報を利用して、この音声データに対応するRTPヘッダ情報を生成し、音声データをペイロードとしたRTPパケットを組み立てた後、組み立てたRTPパケットをRTPパケット蓄積バッファ507に格納する。また、冗長パケットが9byteの場合は、冗長パケットを冗長ヘッダと制御信号の組み合わせであると判定し、ショートパケットのヘッダ情報と冗長ヘッダの情報を利用して制御信号に対応するRTPヘッダ情報を生成し、制御信号をペイロードとしたRTPパケットを組み立てる。そして、冗長パケット置換部505は、組み立てたRTPパケットをRTPパケット蓄積バッファ507に格納する。
なお、冗長パケット置換部505は、組み立てたRTPパケットをRTPパケット蓄積バッファ507に格納する場合、RTPパケット蓄積バッファ507に格納されているRTPパケットのヘッダに含まれるSNフィールドを検査して、SNフィールドの値が連続する場所に組み立てたRTPパケットを格納する。その際、同一のSN値を持つRTPパケットが既に格納されている場合は、組み立てたRTPパケットを廃棄する。
次に、RTPパケット組立部506は、冗長パケット置換部505から入力されたRTPヘッダの情報と、冗長パケット置換部505から入力されたショートパケットのヘッダ情報を利用して、冗長パケット置換部505から入力されたショートパケットのペイロードに対応するRTPヘッダ情報を生成し、ショートパケットのペイロードと合わせてRTPパケットを組み立てる。そして、RTPパケット組立部506は、組み立てたRTPパケットをRTPパケット蓄積バッファ507に格納する。
次に、IPパケット組立・送信部508は、RTPパケット蓄積バッファ507に格納されているRTPパケットを取り出してIP/UDPヘッダを付与し、IPパケットを組み立てた後、IPパケットをVoIP端末へ送出する。
以上のように、この発明の実施の形態5によれば、受信したパケットに含まれるデータのデータ種別に対応してそれぞれ異なるパケットフォーマットで冗長データの冗長パケットを組み立てることにより、冗長パケットの受信側で冗長パケットのパケットフォーマットからデータ種別を判定できる上、データ種別に対応して必要な情報のみで冗長パケットを形成できるので、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。例えば、IPパケットに含まれる音声データと制御信号とで互いに異なるパケットフォーマットで冗長パケットを組み立てることにより、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、冗長パケットのパケットフォーマットは、受信したパケットに含まれる情報のうち、伝送路パケットの受信側で復元できる情報は格納されず、正確に復元できない情報は格納されるように構成することにより、パケットを正確に復元できるために必要な情報のみで冗長パケットを形成できるので、受信側のパケット伝送装置においてパケットを正確に復元できる上、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
例えば、音声データと制御信号が混在して送信される伝送路において冗長伝送を行う場合に、冗長パケット組立部103が、ヘッダ情報を追加せずに音声データのみを冗長パケットとして伝送し、冗長パケット置換部505において、冗長パケットのデータ長から冗長パケットの種類を特定することにより、音声データの冗長伝送時に最も負荷が高くなる伝送路において、音声と制御信号が混在する場合の冗長伝送を実現しつつ、冗長パケットのオーバヘッドの増大を抑制し、伝送路負荷のピーク値を低減するという効果が得られる。例えば、RFC2198に規定されている従来の冗長伝送方式をパケット伝送装置に適用した場合、音声データに1byte、音声データの冗長パケットに4byteのヘッダ情報が追加される。そのため、ショートパケットのデータ長は、VoIP端末がG.729方式で符号化された音声データを20msec周期でIPパケット化して送信する場合、ショートパケットヘッダのデータ長を7byte(宛先VoIP端末アドレス:4byte,シーケンス番号:1byte、符号化タイプ:1byte,ショートパケット長:1byte)とすると、7+1+20+4+20=52byteとなる。これに対し、この発明の実施の形態1では、音声データの冗長パケットにヘッダ情報が追加されないため、ショートパケットのデータ長は7+20+20=47byteとなる。したがって、この発明の実施の形態1では、ショートパケットのデータ長を約10%削減することが可能となる。
また、ショートパケットのヘッダ情報は、パケット受信部101が受信したパケットに含まれる情報のうち、多重化パケットの受信側で復元できる情報は格納されず、正確に復元できない情報は格納されるように
構成することにより、RTPパケットを正確に復元できるために必要な情報のみでショートパケットを形成できるので、受信側のパケット伝送装置においてパケットを正確に復元できる上、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、冗長パケットがデータ種別に対応してそれぞれ異なるパケット長となるように構成されたことにより、受信側のパケット伝送装置で、冗長パケットのパケット長からデータ種別を判定することができるので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がないため、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、RTPヘッダでなり、冗長データの冗長パケットと異なるパケット長のパケットフォーマットで構成された冗長パケットを用いてショートパケットを組み立てることにより、RTPヘッダの情報を、冗長データでなる冗長パケットのヘッダ情報として送付する必要がない上、パケット長からRTPヘッダでなる冗長パケットであることが受信側で判定することができるので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がない。したがって、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、IPパケット受信部が受信したパケット数が所定数に達するまでは、RTPヘッダでなる冗長パケットを用いて伝送路パケットを組み立てるように制御することにより、冗長データの冗長パケットが伝送されるまでは、RTPヘッダの冗長パケットが伝送されるようにすることができ、受信側のパケット伝送装置では、RTPヘッダを取得してから冗長データを受信するので、冗長パケットから元のRTPパケット(IPパケット)を正確に復元できる。また、冗長データの伝送には伝送遅延があるため、その伝送遅延の間にRTPヘッダの冗長パケットを伝送することにより、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、受信した多重化パケットを個々のショートパケットに分解し、分解したショートパケットを冗長パケットとそれ以外の情報とに分割すると共に、上記分割された冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットからRTPパケット(IPパケット)を復元することにより、データ種別に対応して必要な情報のみで形成された冗長パケットで冗長データを伝送できるので、冗長データのオーバヘッドを抑制でき、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、この発明の実施の形態5では、冗長パケット制御部509が、IPパケット受信部101から入力されたIPパケットが対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新しているが、冗長パケット制御部509がVoIP端末の呼接続を管理する外部のサーバとのI/Fを備え、VoIP端末の呼の開始・停止に関する情報を外部のサーバから取得するようにしてもよい。また、外部のサーバから取得する情報に応じて、呼毎に用意したIPパケット受信数を計測するためのカウンタをリセットするようにしてもよい。
また、この発明の実施の形態5では、冗長パケット制御部509が、IPパケット受信部101から入力されたIPパケットが対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新しているが、一定時間同一呼のパケットを受信しなかった場合にカウンタをリセットするようにしてもよい。
また、この発明の実施の形態5では、冗長パケット制御部509が、IPパケット受信部101から入力されたIPパケットが対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新しているが、受信したIPパケットのRTPヘッダのSNとTimeStampの変化を検査し、パケットの連続性が失われた場合にカウンタをリセットするようにしてもよい。例えば、VoIP端末がG.729方式で符号化された音声データを20msec周期でIPパケット化して送信する場合、通常はIPパケット毎にRTPヘッダのSNが+1され、TimeStampが+160される。したがって、直前に受信したIPパケットと比較して、SNの変化量に対するTimeStampの変化量が一致しないIPパケットを一定個数以上受信した場合に、パケットの連続性が失われたと判定するようにしてもよい。
また、この発明の実施の形態5では、ITU−T勧告G.729準拠の8kbit/s CS−ACELP方式で符号化されたデータを音声データとしているが、例えば3GPP標準のAMR方式のような、G.729以外の方式で符号化されたデータを音声データとして使用してもよい。
また、この発明の実施の形態5では、RFC2833で規定されたDTMFアウトバンド伝送方式で伝送されるDTMF信号を制御信号としているが、例えば、テレタイプのコード情報や、FAX信号もしくはモデム信号の復調信号のような、DTMF信号以外の情報を制御信号として使用してもよい。
実施の形態6.
この実施の形態6は、上記実施の形態2で示したコネクション制御を、1又は複数のVoIP端末から受信したIPパケットを多重化して伝送するパケット伝送装置に適用したものである。
図15はこの発明の実施の形態6によるパケット伝送装置の構成を示すブロック図である。この図において、前述の図と同一又は相当部分に同一符号を付し、説明を省略する。なお、この図において、601は、冗長パケット蓄積手段に蓄積された冗長パケットを用いて、パケット受信手段が受信したパケットのショートパケットを組み立てるショートパケット組立手段であり、ここでは、データ種別判定部102から入力されたIPパケットと冗長パケット蓄積バッファ104に格納されている冗長パケットからショートパケットを作成するショートパケット組立部である。602は、ショートパケット蓄積手段に蓄積されたショートパケットを多重化し、多重化したショートパケットを1つの多重化パケットとして伝送路へ送出する多重化パケット組立・送信手段であり、ここでは、ショートパケット蓄積バッファ502に格納されているショートパケットを多重化して作成した多重化パケットを相手先のパケット伝送装置へ送出する多重化パケット組立・送信部である。
603は、送信先の端末装置へ送信されるパケットの冗長データからデータ種別に対応してそれぞれ異なるパケットフォーマットで冗長パケットが組み立てられ、当該組み立てられた冗長パケットを用いて組み立てられたショートパケットが多重化された多重化パケットを受信し、当該受信した多重化パケットを個々のショートパケットに分解する多重化パケット受信・分解手段であり、ここでは、相手先のパケット伝送装置から送信された多重化パケットを受信して個々のショートパケットに分解する多重化パケット受信・分解部である。604は、多重化パケット受信・分解手段が分解したショートパケットを冗長パケットとそれ以外の情報とに分割すると共に、上記分割された冗長パケットのパケットフォーマットに基づいてデータ種別を判定し、当該判定結果に基づいて上記冗長パケットから元の送信先の端末装置へ送信されるパケットを復元する冗長パケット置換手段であり、ここでは、多重化パケット受信・分解部603から入力されたショートパケットをヘッダ、ペイロード、冗長パケットに分割し、分割した冗長パケットがRTPヘッダでない場合は冗長パケットの情報からRTPパケットを組立てる冗長パケット置換部である。605は、端末パケット蓄積手段に蓄積されているパケットを上記送信先の端末装置へ送信するパケット送信手段であり、ここでは、RTPパケット蓄積バッファ507に蓄積されているRTPパケットを取り出してIP/UDPヘッダを付与し、IPパケットを組み立ててVoIP端末へ送信するIPパケット組立・送信部である。
606は、端末装置間の呼接続を監視して、端末装置間の呼接続を制御するパケットにパケット受信手段が受信したパケットのヘッダの情報を付加するコネクション制御手段であり、ここでは、さらに、多重化パケット受信・分解部603で受信した多重化パケット(IPパケット)を解析してパケットのヘッダの情報(RTPヘッダの情報)を取得するように構成されている。ここでは、VoIP端末同士の呼接続動作を監視して、新たに呼が接続されたVoIP端末から送信される音声データのRTPヘッダの情報を相手先のパケット伝送装置との間で交換するコネクション制御部である。
次に動作について説明する。
コネクション制御部606が監視するVoIP端末間の呼接続の状態は、呼接続未検出、呼接続開始および呼接続開始完了の3つの状態がある。コネクション制御部606は、呼接続未検出の状態では呼接続の開始を検出し、呼接続開始の状態では呼接続の開始完了を検出する。そして、コネクション制御部606は、呼接続が開始されてから開始完了が検出されるまで端末装置間の呼接続を制御するパケットに上記パケット受信手段が受信したパケットのヘッダ情報を付加する。また、受信側では、呼接続が開始されてから開始完了が検出されるまでの間で上記ヘッダ情報を取得する。以下、呼接続の各状態について動作を説明する。
まず、コネクション制御部606がVoIP端末の呼接続動作を検出していない状態におけるパケット伝送装置の動作に関しては、実施の形態2で示したコネクション制御部207がVoIP端末の呼接続動作を検出していない状態の動作と同様の動作となるため、説明を省略する。
次に、コネクション制御部606がVoIP端末の呼接続の開始を検出した状態におけるパケット伝送装置の動作について述べる。
まず、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作について述べる。この場合、パケット伝送装置はIPパケット受信部201によってVoIP端末からのIPパケットを受信し、受信したIPパケットをコネクション制御部606へ出力する。次に、コネクション制御部606は、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報か否かを判定する。そして、入力されたIPパケットが呼接続動作の情報でないと判定した場合、コネクション制御部606は、IPパケットが音声データか否かを判定する。例えば、図2に示すように、入力されたIPパケットのRTPヘッダに含まれるPTフィールドの値を検査し、呼接続の開始を検出したSIPメッセージに記述された音声符号化方式の値と一致する場合、入力されたIPパケットを音声データであると判定する。そして、入力されたIPパケットが音声データであると判定した場合、コネクション制御部606は、IPパケットからRTPヘッダの情報を取り出して一時的に保存する。
一方、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報であると判定した場合、コネクション制御部606は、既にRTPヘッダの情報を保存しているか否かを判定する。そして、コネクション制御部606がRTPヘッダの情報を保存していない場合は、入力されたIPパケットの情報を一時的に保存する。これに対し、コネクション制御部606が既にRTPヘッダの情報を保存している場合は、呼接続動作の情報にRTPヘッダの情報を加えたIPパケットを組み立て、組み立てたIPパケットを多重化パケット組立・送信部602へ出力する。その際、コネクション制御部606は、出力するIPパケットに含まれる呼接続動作の情報を解析して、呼接続の開始完了を検出する。図16に、呼接続動作の情報にRTPヘッダの情報を加えたIPパケットの一例を示す。
そして、多重化パケット組立・送信部602は、コネクション制御部606から入力された、呼接続動作とRTPヘッダの情報を含む多重化パケット(IPパケット)を相手先のパケット伝送装置に出力する。
次に、コネクション制御部606がVoIP端末の呼接続の開始を検出した状態で、相手先のパケット伝送装置から、呼接続動作の情報を含む多重化パケット(IPパケット)を受信した場合の動作について述べる。この場合、パケット伝送装置は、多重化パケット受信・分解部603によって相手先のパケット伝送装置から受信した多重化パケット(IPパケット)をコネクション制御部606へ出力する。そして、コネクション制御部606は、多重化パケット受信・分解部603から受信したIPパケットを解析して、IPパケットのRTPパケットのヘッダ情報、例えば、音声データのRTPヘッダの情報を取得する。そして、コネクション制御部606は、取得した音声データのRTPヘッダの情報を冗長パケット置換部604へ出力する。更に、受信したIPパケットに含まれる呼接続動作の情報から、呼接続の相手先であるVoIP端末を特定し、入力されたIPパケットからRTPヘッダの情報を削除してIPパケット組立・送信部605へ出力する。そして、IPパケット組立・送信部605は、コネクション制御部606から入力されたIPパケットをVoIP端末へ送信する。また、冗長パケット置換部604は、コネクション制御部606から入力されたRTPヘッダの情報をRTPパケット組立部506へ出力する。
以上が、コネクション制御部606がVoIP端末の呼接続の開始を検出した状態におけるパケット伝送装置の動作である。次に、コネクション制御部606がVoIP端末の呼接続の開始完了を検出した状態におけるパケット伝送装置の動作について述べる。
まず、パケット伝送装置がVoIP端末から音声データのIPパケットを受信した場合の動作について述べる。この場合、パケット伝送装置はIPパケット受信部201によってVoIP端末からのIPパケットを受信し、受信したIPパケットが呼接続動作の情報であるか否かを判定する。そして、IPパケット受信部201は、受信したIPパケットが呼接続動作の情報でないと判定した場合、受信したIPパケットをデータ種別判定部102へ出力する。なお、これ以降のデータ種別判定部102、冗長パケット組立部103、冗長パケット蓄積バッファ104の動作は、実施の形態1と同一であるため説明を省略する。
次に、ショートパケット組立部601は、データ種別判定部102から入力された判定結果および受信したIPパケットのIP/UDP/RTPヘッダの情報から必要な情報のみを抽出してショートパケットのヘッダ情報を作成する。そして、ショートパケット組立部601は、受信したIPパケットに含まれるRTPパケットのペイロードをショートパケットのペイロードとして格納する。なお、これ以降のショートパケット蓄積バッファ502、多重化パケット組立・送信部602の動作は、実施の形態5と同様であるため説明を省略する。
次に、コネクション制御部606がVoIP端末の呼接続の開始完了を検出した状態で、相手先のパケット伝送装置から多重化パケットを受信した場合の動作について述べる。この場合、パケット伝送装置は、多重化パケット受信・分解部603によって相手先のパケット伝送装置から送信された多重化パケットを受信し、多重化パケットを個々のショートパケットに分解した後、ショートパケット毎に冗長パケット置換部604へ出力する。
次に、冗長パケット置換部604は、多重化パケット受信・分解部203から入力されたショートパケットのヘッダ情報を利用して、ショートパケットのヘッダとペイロードおよび冗長パケットのデータ長を算出する。そして、冗長パケット置換部604は、ショートパケットのヘッダとペイロードをRTPパケット組立部506へ出力する。更に、冗長パケット置換部604は、冗長パケットのデータ長から冗長パケットの内容を判定する。例えば、冗長パケットとして伝送するデータ長を、音声データの場合は20byte、冗長ヘッダと制御信号の場合は9byteのようにあらかじめ固定値として設定しているときに、冗長パケットが20byteの場合は、冗長パケットを音声データと判定し、ショートパケットのヘッダ情報と既に保存されているRTPヘッダの情報を利用して、この音声データに対応するRTPヘッダ情報を生成し、音声データをペイロードとしたRTPパケットを組み立てた後、組み立てたRTPパケットをRTPパケット蓄積バッファ507に格納する。また、冗長パケットが9byteの場合は、冗長パケットを冗長ヘッダと制御信号の組み合わせであると判定し、ショートパケットのヘッダ情報と既に保存されているRTPヘッダの情報および冗長ヘッダの情報を利用して制御信号に対応するRTPヘッダ情報を生成し、制御信号をペイロードとしたRTPパケットを組み立てる。そして、冗長パケット置換部604は、組み立てたRTPパケットをRTPパケット蓄積バッファ507に格納する。
なお、RTPパケット組立部506およびRTPパケット蓄積バッファ507の動作は実施の形態5と同一であるため説明を省略する。次に、IPパケット組立・送信部605は、RTPパケット蓄積バッファ507に格納されているRTPパケットを取り出してIP/UDPヘッダを付与し、IPパケットを組み立てた後、IPパケットをVoIP端末へ送出する。
以上のように、この発明の実施の形態6によれば、コネクション制御部606が、入力されたパケットが呼接続動作の情報か否かを判定し、接続動作を検出することによって、VoIP端末の呼接続動作を監視して、VoIP端末から受信した音声データのIPパケットに含まれるRTPヘッダの情報を呼接続動作の情報の一部として相手先のパケット伝送装置に通知することにより、相手先のパケット伝送装置において、冗長パケットに対応するRTPヘッダを正確に復元することができる。また、VoIP端末から受信した音声データのIPパケットに含まれるRTPヘッダの情報を、冗長データでなる冗長パケットのヘッダ情報として送付する必要がないので、上記VoIP端末から受信した音声データのIPパケットに含まれるRTPヘッダの情報を冗長パケットのヘッダ情報等に組み込む必要がない上、呼接続を制御するパケットとして上記VoIP端末から受信した音声データのIPパケットに含まれるRTPヘッダの情報を伝送できるので、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、コネクション制御部606が、VoIP端末の呼接続動作を監視して、VoIP端末から受信した音声データのIPパケットに含まれるRTPヘッダの情報を呼接続動作の情報(呼接続を制御するパケット)の一部として相手先のパケット伝送装置に通知することにより、冗長パケットとして常に音声データ又は制御信号を伝送路パケットに追加することが可能となり、伝送路でのパケット損失耐性が向上するという効果が得られる。
実施の形態7.
この実施の形態7は、上記実施の形態3で示したコネクション/冗長パケット制御を、1又は複数のVoIP端末から受信したIPパケットを多重化して伝送するパケット伝送装置に適用したものである。
図17はこの発明の実施の形態7によるパケット伝送装置の構成を示すブロック図である。この図において、前述の図と同一又は相当部分に同一符号を付し、説明を省略する。なお、この図において、701は、端末装置間の呼接続を監視して、呼の接続開始直後にのみ、ショートパケット組立手段に対して、パケット受信手段が受信したパケットのヘッダの情報でなる冗長パケットを用いてショートパケットを組み立てるように制御するコネクション/冗長パケット制御手段であり、ここでは、VoIP端末同士の呼の接続動作を検出し、新規に呼の接続が完了した直後にのみ、冗長パケットとして音声データおよび制御信号の代わりにRTPヘッダをショートパケットに追加するように制御するコネクション/冗長パケット制御部である。
次に動作について説明する。
まず、コネクション/冗長パケット制御部701がVoIP端末の呼の接続動作を検出していない状態におけるパケット伝送装置の動作に関しては、実施の形態6で示したコネクション制御部606がVoIP端末の呼接続動作を検出していない状態におけるパケット伝送装置の動作と同様であるため、説明を省略する。
次に、コネクション/冗長パケット制御部701がVoIP端末の呼接続の開始を検出した状態におけるパケット伝送装置の動作について説明する。
まず、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作について説明する。この場合、パケット伝送装置はIPパケット受信部201によってVoIP端末からのIPパケットを受信し、IPパケットをコネクション/冗長パケット制御部701へ出力する。そして、コネクション/冗長パケット制御部701は、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報か否かを判定する。そして、IPパケット受信部201から入力されたIPパケットが呼接続動作の情報であると判定した場合、コネクション/冗長パケット制御部701は、呼接続動作の情報から相手先VoIP端末に対応するパケット伝送装置を特定し、呼接続動作の情報を含むIPパケットの宛先を、特定したパケット伝送装置に設定して多重化パケット組立・送信部602へ出力する。更に、コネクション/冗長パケット制御部701は、呼接続動作の情報を解析して呼の接続完了を検出する。そして、呼の接続完了を検出した場合、その呼に対応するIPパケット受信数を保存するためのカウンタを新規に用意し、カウンタを初期化する。
そして、多重化パケット組立・送信部602は、コネクション/冗長パケット制御部701から入力されたIPパケットを相手先のパケット伝送装置に出力する。
そして、コネクション/冗長パケット制御部701がVoIP端末の呼の接続完了を検出した後、IPパケット受信部201がIPパケットを受信し、上記用意したカウンタが1回になるまで、すなわち、新規に呼の接続が完了した直後にのみ、コネクション/冗長パケット制御部701は、ショートパケット組立部501に対して、RTPヘッダでなる冗長パケットを用いて伝送路パケットを組み立てるように制御する。
なお、コネクション/冗長パケット制御部701がVoIP端末の呼の接続完了を検出した状態におけるパケット伝送装置の動作に関しては、実施の形態5で示したパケット伝送装置の動作において、冗長パケット制御部509がショートパケット組立部501を制御する際の所定数を1(カウンタの初期値+1)とした場合と同様であるため、説明を省略する。
次に、コネクション/冗長パケット制御部701がVoIP端末の呼接続の開始を検出した状態で、相手先のパケット伝送装置から呼接続動作の情報を含むIPパケットを受信した場合の動作について説明する。この場合、パケット伝送装置は、多重化パケット受信・分解部603によって相手先のパケット伝送装置から受信したIPパケットをコネクション/冗長パケット制御部701へ出力する。そして、コネクション/冗長パケット制御部701は、多重化パケット受信・分解部603から入力されたIPパケットが呼接続動作の情報であると判定した場合、呼接続動作の情報を解析して呼接続の相手先であるVoIP端末を特定し、入力されたIPパケットをIPパケット組立・送信部605へ出力する。そして、IPパケット組立・送信部605は、コネクション/冗長パケット制御部701から入力されたIPパケットをVoIP端末へ送信する。
以上が、コネクション/冗長パケット制御部701がVoIP端末の呼接続の開始を検出した状態におけるパケット伝送装置の動作である。
なお、コネクション/冗長パケット制御部701がVoIP端末の呼の接続完了を検出した状態におけるパケット伝送装置の動作に関しては、実施の形態5で示したパケット伝送装置の動作と同様であるため、説明を省略する。
以上のように、この発明の実施の形態7によれば、コネクション/冗長パケット制御部701が、入力されたパケットが呼接続動作の情報か否かを判定し、接続動作を検出することによって、VoIP端末の呼接続動作を監視して、呼の接続が完了した直後にのみ、音声データや制御信号の冗長パケットの代わりにRTPヘッダの情報でなる冗長パケットを用いてショートパケットを組み立てて送信するように制御することにより、相手先のパケット伝送装置において、冗長パケットに対応するRTPヘッダを正確に復元することができる。また、RTPヘッダの情報を、冗長データでなる冗長パケットのヘッダ情報として送付する必要がないので、冗長パケットのパケット種別を示す情報をヘッダ情報等に組み込む必要がない上、冗長パケットとして送信する冗長データが存在しない先頭のIPパケットの冗長パケットとしてRTPヘッダの情報を伝送できるので、冗長データのオーバヘッドを抑制することができ、冗長伝送時の伝送路負荷のピーク値を抑制することができるという効果が得られる。
また、コネクション/冗長パケット制御部701が、VoIP端末の呼接続動作を監視して、呼の接続が完了した直後にのみ、音声データや制御信号の冗長パケットの代わりにRTPヘッダの情報でなる冗長パケットを用いてショートパケットを組み立てて送信するように制御することにより、冗長パケットとして送信する直前の音声データや制御信号が存在しない先頭のIPパケットを伝送する場合にのみ、冗長パケットとして音声データや制御信号の変わりにRTPヘッダの情報を送信することが可能となり、伝送路でのパケット損失耐性が向上するという効果が得られる。
実施の形態8.
この実施の形態8は、上記実施の形態4で示した冗長パケット制御を、1又は複数のVoIP端末から受信したIPパケットを多重化して伝送するパケット伝送装置に適用したものである。
図18はこの発明の実施の形態8によるパケット伝送装置の構成を示すブロック図である。この図において、前述の図と同一又は相当部分に同一符号を付し、説明を省略する。なお、この図において、801は、ショートパケット組立手段に対して、パケット受信手段が受信したパケットに含まれるデータが無音の音声データである場合に、上記パケット受信手段が受信したパケットのヘッダの情報でなる冗長パケットを用いてショートパケットを組み立てるように制御する冗長パケット制御手段であり、ここでは、ショートパケット組立部501に対してパケット受信部101が受信したIPパケットに含まれるデータが無音の音声データである場合に、当該無音の音声データの冗長パケットの代わりに、上記パケット受信部101が受信したIPパケットのRTPヘッダの情報でなる冗長パケットを用いてショートパケットを組み立てるように制御するものであり、IPパケット受信部101が受信したIPパケットの数を呼毎に計測し、同一呼のIPパケットが所定数受信されるまでは、ショートパケット組立部105に対して冗長パケットとしてRTPヘッダを出力するように指示し、同一呼のIPパケットが所定数受信された後も、無音検出部401が無音と判定したIPパケットの冗長パケットの代わりにRTPヘッダの冗長パケットを用いてショートパケットを組み立てるように制御する冗長パケット制御部である。
次に動作について説明する。
最初に、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作について述べる。この場合、まずパケット伝送装置はIPパケット受信部101によってVoIP端末からのIPパケットを受信し、データ種別判定部102および冗長パケット制御部801へ出力する。そして、データ種別判定部102は、入力されたIPパケットのデータ種別を判定し、入力されたIPパケットおよびIPパケットの判定結果を冗長パケット組立部103へ出力する。なお、データ種別判定部102がIPパケットに含まれるデータの種類を判定する動作は、実施の形態1と同様であるため説明は省略する。また、データ種別判定部102は、IPパケットのデータが制御信号でないと判定した場合、IPパケットを音声データと見なして無音検出部401に出力する。なお、冗長パケット組立部103および冗長パケット蓄積バッファ104の動作に関しては、実施の形態1と同様であるため説明は省略する。
次に、無音検出部401は、実施の形態4と同様にして、入力されたIPパケットに含まれる音声データが無音か否かを判定し、判定結果に応じて音声データの有音・無音を示す信号を冗長パケット制御部801へ出力する。
そして、冗長パケット制御部801は、IPパケット受信部101から入力されたIPパケットが対応する呼を特定し、呼毎に用意したIPパケット受信数を計測するためのカウンタを更新する。そして、同一呼のIPパケット受信数があらかじめ定めた所定数よりも少ない場合は、ショートパケット組立部105に対して冗長パケットとしてRTPヘッダを追加する信号を出力する。また、同一呼のIPパケット受信数があらかじめ定めた所定数以上となった場合、無音検出部401から入力された信号に応じて出力信号を決定する。例えば、無音検出部401から音声データの有音を示す信号を受信した場合、有音を示す信号に対応する冗長パケットがショートパケットに追加されるタイミングに合わせて、通常の冗長パケットを追加する信号をショートパケット組立部501に出力する。また、無音検出部401から音声データの無音を示す信号を受信した場合、無音を示す信号に対応する冗長パケットがショートパケットに追加されるタイミングに合わせて、冗長パケットとしてRTPヘッダを追加する信号をショートパケット組立部501に出力する。
なお、ショートパケット組立部501、ショートパケット蓄積バッファ502および多重化パケット組立・送信部503の動作に関しては、実施の形態5と同様であるため説明は省略する。
以上が、パケット伝送装置がVoIP端末からIPパケットを受信した場合の動作である。なお、相手先のパケット伝送装置から多重化パケットを受信した場合の動作については、実施の形態5と同様であるため説明は省略する。
以上のように、この発明の実施の形態8によれば、無音検出部401が、VoIP端末から入力された音声データが無音か否かを判定し、当該音声データが無音の音声データである場合に、冗長パケット制御部801が、ショートパケット組立部501に対して、無音と判定された音声データの冗長パケットの代わりにRTPヘッダの情報でなる冗長パケットを用いてショートパケットを組み立てるように制御することによって、伝送路でバーストロスが発生した場合においても、VoIP端末から受信したIPパケットに含まれるRTPヘッダを相手先のパケット伝送装置へ伝送することを可能とし、相手先のパケット伝送装置において、冗長パケットからIPパケットを作成する際に、冗長パケットに対応するRTPヘッダを正確に復元することができるという効果が得られる。
101 IPパケット受信部、102 データ種別判定部、103 冗長パケット組立部、104 冗長パケット蓄積バッファ、105 伝送路パケット組立部、106 伝送路パケット送信部、107 伝送路パケット受信部、108 冗長パケット置換部、109 IPパケット蓄積バッファ、110 IPパケット送信部、111 冗長パケット制御部、201 IPパケット受信部、202 伝送路パケット組立部、203 伝送路パケット送信部、204 伝送路パケット受信部、205 冗長パケット置換部、206 IPパケット送信部、207 コネクション制御部、301 コネクション/冗長パケット制御部、401 無音検出部、402 冗長パケット制御部、501 ショートパケット組立部、502 ショートパケット蓄積バッファ、503 多重化パケット組立・送信部、504 多重化パケット受信・分解部、505 冗長パケット置換部、506 RTPパケット組立部、507 RTPパケット蓄積バッファ、508 IPパケット組立・送信部、601 ショートパケット蓄積バッファ、602 多重化パケット組立・送信部、603 多重化パケット受信・分解部、604 冗長パケット置換部、605 IPパケット組立・送信部、701 コネクション/冗長パケット制御部、801 冗長パケット制御部。