JP5044380B2 - 配信装置及びコーデック変換装置、通信システム - Google Patents

配信装置及びコーデック変換装置、通信システム Download PDF

Info

Publication number
JP5044380B2
JP5044380B2 JP2007313510A JP2007313510A JP5044380B2 JP 5044380 B2 JP5044380 B2 JP 5044380B2 JP 2007313510 A JP2007313510 A JP 2007313510A JP 2007313510 A JP2007313510 A JP 2007313510A JP 5044380 B2 JP5044380 B2 JP 5044380B2
Authority
JP
Japan
Prior art keywords
packet
codec
information
received
transmission right
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007313510A
Other languages
English (en)
Other versions
JP2009141481A (ja
Inventor
謙尚 松本
和 三村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Kokusai Electric Inc
Original Assignee
Hitachi Kokusai Electric Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Kokusai Electric Inc filed Critical Hitachi Kokusai Electric Inc
Priority to JP2007313510A priority Critical patent/JP5044380B2/ja
Priority to US12/328,132 priority patent/US7991419B2/en
Priority to CN2008101795693A priority patent/CN101453793B/zh
Publication of JP2009141481A publication Critical patent/JP2009141481A/ja
Application granted granted Critical
Publication of JP5044380B2 publication Critical patent/JP5044380B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/10Push-to-Talk [PTT] or Push-On-Call services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/4061Push-to services, e.g. push-to-talk or push-to-video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/40Connection management for selective distribution or broadcast
    • H04W76/45Connection management for selective distribution or broadcast for Push-to-Talk [PTT] or Push-to-Talk over cellular [PoC] services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • H04W88/181Transcoding devices; Rate adaptation devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は、複数の移動端末が半2重多対多通信を行う通信システムと、そのような通信システムにおける配信装置及びコーデック変換装置に係り、特に、自営無線システムのように、1通話に参加する複数の移動端末のコーデックが複数種類の場合の通信システムと、コーデック変換装置及び配信装置に関するものである。
公共分野等の自営無線システムは、Press−Talk通信と呼ぶ半2重多対多の通話(グループ通信)を提供する。以下にグループ通信の概要を説明する。
ある移動端末が、グループ番号で識別されるあるグループに発呼すると、配信装置がグループのメンバである複数の移動端末に呼接続する。ひとつの呼に参加する複数の移動端末は、自分以外のグループメンバが送信した音声をすべて聞くことができる。ただし、音声を送信するには、移動端末の使用者が移動端末に付いているボタンを押して音声送信権を配信装置に要求し、認可される必要がある。配信装置は、送信権を持つ移動端末が、グループ内で同時にひとつだけになるよう、送信権の排他制御をする。送信権を要求した使用者は、ブザーやランプ点灯で送信権が認可されたことを知り、送話する。送信された音声を配信装置が他のグループメンバに配信する。送話が終わった使用者は押していたボタンを離し、送信権を解放する。送信権解放通知は配信装置に届き、配信装置は次の送信権要求を待つ。発呼者が呼切断を要求した場合、呼が終了する。
一般に、移動端末のコーデックはシステム毎に統一されている。そのため移動端末同士の通信ではコーデック変換が必要ない。しかし、指令台など、配信装置に有線で接続する端末は、移動端末のコーデックとは異なるITU−T G.711コーデックを使用する。そのため移動端末−有線端末の通信では、コーデック変換が必要である。また、移動端末−移動端末間であっても、システムが異なり、使用されるコーデックが異なる場合、コーデック変換が必要である。
ちなみに、移動端末と有線端末とのコーデックが異なる理由は、前者は狭い無線帯域でも音声情報が伝送できるよう低ビットレートのコーデックを使用するのに対し、有線端末は複数のグループ呼の音声をミキシングして同時に出力する機能が求められ、その場合、ミキシング後の音声信号であるPCM(Pulse−Code Modulation)を音質劣化なく再生できるよう、PCM系のコーデックを使用するからである。
移動端末−有線端末間の通信で必要となるコーデック変換は、配信装置に収納する基地局回線インタフェースカード上で行う。基地局回線インタフェースカードには、基地局回線で通信している移動端末対応にコーデック回路が存在する。移動端末からの音声は、移動端末に対応したコーデック回路でコーデック変換され、有線端末に伝送される。また有線端末からの音声は、コーデック回路でコーデック変換され、対応するチャネルを通って基地局を介し移動端末に伝送される。
別の類似技術としては、第3世代携帯電話のPoC(Push−to−talk over Cellular)がある。PoCは同一のコーデックを使用する携帯電話端末同士のグループ通信をIPで実現する。通常、コーデックの異なる端末同士ではグループ通信できないし、また、その必要がない。その理由は、第3世代携帯電話の標準化団体3GPP(The 3rd Generation Partnership Project)、3GPP2が端末のコーデックをそれぞれ統一しており、かつPoCは通信事業者に閉じたサービスであること、自営無線システムの有線端末のようなミキシングサービスが必要ないことによる。
別の類似技術としては、IP電話の会議通話用メディアサーバがある。電話の会議通話は全2重多対多通話である。ひとつの会議通話呼が発生すると、メディアサーバは呼に参加する全ての端末からの音声パケットを同時に受信し、端末ごとのジッタ吸収バッファ(以下ジッタバッファと呼ぶ)に音声パケットを分類する。そして、ジッタバッファ毎に割り当てたコーデック回路でそれぞれの端末の音声をPCMに変換し、ミキシングする。ミキシングした音声を、再度端末のコーデックに変換し、端末に送信する。ジッタバッファに割り当てるコーデック回路は呼毎に決定する。
「PushTalkサービスのシステム開発」NTTDoCoMoテクニカル・ジャーナル Vol.13 No.4
システム毎にコーデックが異なる従来の自営無線システム向けの移動端末を、コーデックの違いに関係なく共通の配信装置に収容してグループ通信を可能にする場合に、配信装置が必要とするコーデック回路を少なくしたいという課題がある。
ここで従来の自営無線システムと同様、基地局で通信している端末数分のコーデック回路を設ける方法では、コーデックの異なる端末が混在するグループ呼が少ない場合、コーデック回路が数の割りに使用されず効率的でない。これは従来の自営無線システムにもいえることである。
一方、IP電話の会議通話用メディアサーバと同様、グループ呼に参加する端末数分のコーデック回路を設ける方法では、基地局で通信している端末数に関係なく、同時に存在するグループ呼でかつコーデック変換が必要なグループ呼の参加端末数の総数だけコーデック回路を設ければよい。しかし、ひとつのグループ呼の中では、送信権を有する端末に対応するジッタバッファにくくりつけられたコーデック回路しか実際には使用しておらず、他の端末に対応するジッタバッファのコーデック回路は無音データを処理している。
本発明は、以上の点に鑑み、自営無線システム、プッシュトーク、プレストーク等と呼ばれる半2重多対多の通信(グループ通信)において、ひとつの通話内(通話セッション内)で、送信権を取得しているひとつの無線端末が変わるまで、コーデック変換装置の切換えをする必要がない通信システム及びその通信システムにおける配信装置及びコーデック変換装置を提供することを目的とする。
本発明では、ひとつのグループ呼の中で、コーデックが同じ複数の端末でひとつのコーデック回路を共用する。そのために、本発明では、コーデック変換装置に、受信した複数の音声情報の送信端末が同一か否かを識別し、音声情報を連続して符号化変換する対象として、1通話内で同時に1送信端末だけ選択し、選択した送信端末の音声情報の符号化方式を識別するし、識別した符号化方式の符号化変換を行う符号化変換手段(コーデック)を選択し、符号化方式が異なる複数の前記符号化変換手段とを設けること、を主要な特徴の一つとする。
コーデック変換装置は、
受信した複数の音声情報の送信端末が同一か否かを識別し、
音声情報を連続して符号化変換する対象として、1通話内で同時に1送信端末だけ選択し、
選択した送信端末の音声情報の符号化方式を識別し、
識別した符号化方式の符号化変換を行う符号化変換手段を選択し、
符号化方式が異なる複数の前記符号化変換手段とを備え、
1通話内で、同一の符号化方式の複数の無線端末からの音声情報の符号化変換を、ひとつの符号化変換手段で行うことができる。
前記配信装置が、無線端末からの音声情報を前記コーデック変換装置に転送する場合に、前記配信装置が1通話内で連続したシーケンス番号を付与し、
前記コーデック変換装置は、
選択した送信端末の識別子と、1通話内で受信した音声情報の最新の前記シーケンス番号とを記憶し、
新しく受信した音声情報の前記シーケンス番号が、記憶している前記最新のシーケンス番号よりも大きく、かつ音声情報に付属する送信端末の識別子が、記憶している前記送信端末の識別子と異なっている場合に、
音声情報を連続して符号化変換する対象として、前記新しく受信した音声情報の送信端末を選択することができる。
本発明の第1の解決手段によると、
送信権を要求した無線端末である送信端末が送信した音声情報を、配信装置がコーデック変換装置を介して又は介さないで、ゲートウエイ及び基地局を経て他の複数の無線端末に配信することで、複数の無線端末による半2重多対多の通話を実現する通信システムにおける配信装置であって、
前記配信装置は、
パケットを受信すると、グループ呼の識別子である通話グループ識別情報と、通話グループの呼で受信しうるパケットのソケット情報を示す受信パケット情報と、符号化方式と、現在送信権を取得している無線端末の音声情報を運ぶパケットのソケット情報を示す送信パケット情報とを対応づけて記憶した配信テーブルを検索し、受信したパケットのソケット情報と一致するエントリが前記受信パケット情報に存在するかチェックし、
エントリが存在する場合、前記受信パケットの送信元アドレスがゲートウエイのアドレスか、コーデック変換装置のアドレスかを判定し、
前記受信パケットがゲートウエイからのパケットである場合、通話グループ識別情報に対して、パケットのソケット情報と、現在送信権を取得している無線端末を識別するための送信権要求識別子とを対応つけて記憶した送信権テーブルを参照し、
前記受信パケットのソケット情報および前記受信パケットに含まれる送信権要求識別子が、前記送信権テーブルのエントリと一致する場合は、前記受信パケットは他のグループメンバに配信すべきパケットであると判断し、
前記配信テーブルを参照し、前記受信パケットの前記受信パケット情報に対応して登録されている送信パケット情報に従い、また、前記送信パケット情報のソケット情報が複数の場合は前記受信パケットを複製して、該当するゲートウエイ宛及び/又は前記コーデック変換装置宛の送信パケットを生成し、
さらに、生成した送信パケットが前記コーデック変換装置宛の場合には、通話グループ識別情報に対応して、コーデック変換装置に転送する場合にパケットに付加するシーケンス番号を記憶したシーケンス番号テーブルを参照し、前記シーケンス番号を前記送信パケットに挿入し、前記シーケンス番号テーブルのシーケンス番号をインクリメントし、
完成した送信パケットを送信する
前記配信装置が提供される。
本発明の第2の解決手段によると、
送信権を要求した無線端末である送信端末が送信した音声情報を、配信装置がコーデック変換装置を介して又は介さないで、ゲートウエイ及び基地局を経て他の複数の無線端末に配信することで、複数の無線端末による半2重多対多の通話を実現する通信システムにおけるコーデック変換装置であって、
前記コーデック変換装置は、
前記配信装置から受信したパケットに基づき、通話グループ識別情報に対して、配信装置のポート番号と、受信シーケンス番号と、現時点で送信権を有していると予想される無線端末を識別するための送信権要求識別子とを記憶したジッタバッファを参照し、

(a)前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、受信パケットの配信装置のポート番号及び送信権要求識別子が一致しなかった場合は、
i) 前記ジッタバッファの受信シーケンス番号の方が前記受信パケットのシーケンス番号よりも新しい場合、送信権を獲得した無線端末が切り替わった後、切替前の古いパケットが到着したものと判定して、パケットを廃棄し、
一方、
ii) 前記ジッタバッファの受信シーケンス番号が0又は空白の場合、グループ呼設定後初めてのパケットであると判断し、または、前記受信パケットのシーケンス番号の方が前記ジッタバッファの受信シーケンス番号と比べ新しい場合、前記受信パケットは送信権を獲得した無線端末が切り替わった最初のパケットと判定して、前記受信パケットのシーケンス番号の値を前記ジッタバッファの受信シーケンス番号にコピーし、前記受信パケットの送信権要求識別子を前記ジッタバッファの送信権要求識別子にコピーすることで前記ジッタバッファのバッファを新しく構築し、

(b) 前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、前記受信パケットの配信装置のポート番号及び送信権要求識別子が一致した場合は、前記受信パケットのシーケンス番号と前記ジッタバッファの受信シーケンス番号を比較し、前記受信パケットのシーケンス番号の方が大きければ、その値を前記ジッタバッファの受信シーケンス番号に設定し、前記受信パケットを、符号化変換手段への入力バッファの入力待ちキューに、キューの先頭からタイムスタンプが小さい順に並ぶように挿入し、前記符号化変換手段により、第1の符号化方式から第2の符号化方式に前記受信パケットを変換する
前記コーデック変換装置が提供される。
本発明の第3の解決手段によると、
送信権を要求した無線端末である送信端末が送信した音声情報を、配信装置がコーデック変換装置を介して又は介さないで、ゲートウエイ及び基地局を経て他の複数の無線端末に配信することで、複数の無線端末による半2重多対多の通話を実現する通信システムであって、

前記配信装置は、
パケットを受信すると、グループ呼の識別子である通話グループ識別情報と、通話グループの呼で受信しうるパケットのソケット情報を示す受信パケット情報と、符号化方式と、現在送信権を取得している無線端末の音声情報を運ぶパケットのソケット情報を示す送信パケット情報とを対応づけて記憶した配信テーブルを検索し、受信したパケットのソケット情報と一致するエントリが前記受信パケット情報に存在するかチェックし、
エントリが存在する場合、前記受信パケットの送信元アドレスがゲートウエイのアドレスか、コーデック変換装置のアドレスかを判定し、
前記受信パケットがゲートウエイからのパケットである場合、通話グループ識別情報に対して、パケットのソケット情報と、現在送信権を取得している無線端末を識別するための送信権要求識別子とを対応つけて記憶した送信権テーブルを参照し、
前記受信パケットのソケット情報および前記受信パケットに含まれる送信権要求識別子が、前記送信権テーブルのエントリと一致する場合は、前記受信パケットは他のグループメンバに配信すべきパケットであると判断し、
前記配信テーブルを参照し、前記受信パケットの前記受信パケット情報に対応して登録されている送信パケット情報に従い、また、前記送信パケット情報のソケット情報が複数の場合は前記受信パケットを複製して、該当するゲートウエイ宛及び/又は前記コーデック変換装置宛の送信パケットを生成し、
さらに、生成した送信パケットが前記コーデック変換装置宛の場合には、通話グループ識別情報に対応して、コーデック変換装置に転送する場合にパケットに付加するシーケンス番号を記憶したシーケンス番号テーブルを参照し、前記シーケンス番号を前記送信パケットに挿入し、前記シーケンス番号テーブルのシーケンス番号をインクリメントし、
完成した送信パケットを送信し、

及び、

前記コーデック変換装置は、
前記配信装置から受信したパケットに基づき、通話グループ識別情報に対して、配信装置のポート番号と、受信シーケンス番号と、現時点で送信権を有していると予想される無線端末を識別するための送信権要求識別子とを記憶したジッタバッファを参照し、

(a)前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、受信パケットの配信装置のポート番号及び送信権要求識別子が一致しなかった場合は、
i) 前記ジッタバッファの受信シーケンス番号の方が前記受信パケットのシーケンス番号よりも新しい場合、送信権を獲得した無線端末が切り替わった後、切替前の古いパケットが到着したものと判定して、パケットを廃棄し、
一方、
ii) 前記ジッタバッファの受信シーケンス番号が0又は空白の場合、グループ呼設定後初めてのパケットであると判断し、または、前記受信パケットのシーケンス番号の方が前記ジッタバッファの受信シーケンス番号と比べ新しい場合、前記受信パケットは送信権を獲得した無線端末が切り替わった最初のパケットと判定して、前記受信パケットのシーケンス番号の値を前記ジッタバッファの受信シーケンス番号にコピーし、前記受信パケットの送信権要求識別子を前記ジッタバッファの送信権要求識別子にコピーすることで前記ジッタバッファのバッファを新しく構築し、

(b) 前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、前記受信パケットの配信装置のポート番号及び送信権要求識別子が一致した場合は、前記受信パケットのシーケンス番号と前記ジッタバッファの受信シーケンス番号を比較し、前記受信パケットのシーケンス番号の方が大きければ、その値を前記ジッタバッファの受信シーケンス番号に設定し、前記受信パケットを、符号化変換手段への入力バッファの入力待ちキューに、キューの先頭からタイムスタンプが小さい順に並ぶように挿入し、前記符号化変換手段により、第1の符号化方式から第2の符号化方式に前記受信パケットを変換する
前記通信システムが提供される。
本発明によれば、ひとつのグループ呼の中で、コーデックが同じ複数の端末でひとつのコーデック回路を共用するので、ひとつのグループ呼で使用するコーデック回路数が、使用するコーデックの種類の数だけになり、コーデック回路を従来より大幅に減らすことが可能になる。
本発明によると、自営無線システム、プッシュトーク、プレストーク等と呼ばれる半2重多対多の通信(グループ通信)において、ひとつの通話内(通話セッション内)で、送信権を取得しているひとつの無線端末が変わるまで、コーデック変換装置の切換えをする必要がない通信システム及びその通信システムにおける配信装置及びコーデック変換装置を提供することができる。
最初に、ネットワーク構成、装置構成、メッセージシーケンスを説明する。次に音声パケットのコーデック変換処理をフローチャートとテーブルを用いて説明する。最後に、前記テーブルの初期化処理(主に呼設定時に実施)をフローチャートとテーブルを用いて説明する。
1.システム構成
図1は、本実施の形態が対象とする自営無線システムのネットワーク構成図を示す。
移動端末100aは無線方式1を使用し、基地局101aと通信する。同様に移動端末100b、100cは無線方式2を使用して基地局101bと通信する。基地局101a、101b、101cはアクセス網102に接続する。アクセス網102はゲートウエイ104a、104bに接続する。ゲートウエイ104a、104bは有線通信網103のゲートウエイ装置である。ゲートウエイ104a、104bはアクセス網で使用するISDNプロトコル(ただし下位レイヤにIPを使用)を、有線通信網103で使用するSIPプロトコルに変換する。したがって、ゲートウエイ104a、104bは配下の移動端末のそれぞれに対応する仮想的なSIP端末機能を有する。有線通信網103には、呼制御装置105、配信装置106、コーデック変換装置107が存在する。呼制御装置105は、ゲートウエイ104a、104b、配信装置106の間のSIPメッセージをルーティングする。配信装置106は、グループ通信の呼設定、呼解放、送信権制御、音声フローの複製配信を行う。コーデック変換装置107は、配信装置106から受信した音声フローをコーデック変換し、再び配信装置106に送信する。配信装置106とコーデック変換装置107が、本実施の形態の主要部分である。基地局101aは論理的にゲートウエイ104a配下にあるものとする。つまり、基地局101aはゲートウエイ104aと通信するが、ゲートウエイ104bとは通信しない。一方、基地局101b、101cは論理的にゲートウエイ104b配下にあるものとする。
図2に、配信装置106の構成図を示す。
配信装置106は、CPU200、メモリ201、ハードディスク202、通信インタフェース203を備える。CPU200はメモリ201内のプログラムを実行する中央演算装置である。メモリ201はプログラム領域204とデータ領域207を有する。配信制御モジュール205、呼接続プロトコルモジュール206は、CPU200にロードされ、適宜実行される。データ領域207の各テーブルは、CPU200によりアクセスされ、データの読出し及び/又は書込みが適宜行われる。
ハードディスク202は、装置の電源ON/OFFにかかわらず保持したいデータを有する。通信インタフェース203は、ゲートウエイ104a、104b、呼制御装置105、コーデック変換装置107と通信するためのインタフェース回路である。
プログラム領域204には配信制御モジュール205と呼接続プロトコルモジュール206を有する。配信制御モジュール205は、グループ通信の呼設定、呼解放、送信権制御、音声フローの複製配信を行う。呼接続プロトコルモジュール206は、SIP(Session Initiation Protocol)プロトコルの制御を行う。データ領域207には、コーデックテーブル208、RTCP(Realtime Transport Control Protocol)フローテーブル209、送信権テーブル210、配信テーブル211、シーケンス番号テーブル212を有する。
図3に、コーデックテーブル208を示す。
コーデックテーブル208は、コーデック変換装置107がサポートするコーデックの種類を登録したものである(図3参照)。コーデックテーブル208には、コーデック変換装置300毎に、コーデック種別301、及び、RTPクロックレート302を、予め記憶する。コーデック変換装置300はコーデック変換装置107のアドレスを格納する。コーデック種別301はコーデック変換装置107がサポートするコーデック種別を格納する。RTPクロックレート302は、コーデック種別毎の、音声パケットに設定するタイムスタンプの1秒当たりの増加量(8000Hzなら8000)を格納する。本テーブルは保守者が自営無線システム構築時に配信装置106に設定する。
図4(上図)は、RTCPフローテーブルの図である。
RTCPフローテーブル209は、配信装置106とゲートウエイ104a、104bとの間に設定する、音声のRTP(Realtime Transport Protocol)フロー401と送信権制御のRTCPフロー406とを対応付ける。RTCPフローテーブル209は、通話グループ400に対して、RTP401について、ゲートウエイのIPアドレス402及びUDP(User Datagram Protocol)ポート403、配信装置のIPアドレス404及びUDPポート405が記憶され、また、RTCP406について、ゲートウエイのIPアドレス407及びUDPポート408、配信装置のIPアドレス409及びUDPポート410が記憶される。RTCPフローテーブル209は、例えば、グループ通信開始要求の処理の際に記憶することができる。
図4(下図)は、送信権テーブルの図である。
送信権テーブル210は、送信権を与えた端末のRTPフローを管理する。送信権テーブル210には、通話グループ420に対して、ソケット情報(送信元IPアドレス421、送信元UDPポート422、宛先IPアドレス423、宛先UDPポート424)と、送信権の要求名を識別するための識別情報であるSSRC(送信権要求識別子)(Synchronization Source)425が記憶される。SSRCの選択方法としては乱数を使用したり、端末アドレスから算出したりする方法がある。なお、本実施の形態では、必ずしもSSRCのみから端末アドレスを特定できる必要はなく、グループメンバが互いに異なるSSRCを使ってさえすれば良い。送信権テーブル210は、例えば、送信権要求の処理の際に記憶することができる。
通話グループ420はグループ呼の識別子である。送信元IPアドレス421、送信元UDPポート422、宛先IPアドレス423、宛先UDPポート424は、現在送信権を取得している移動端末の音声情報を運ぶRTPパケットのソケット情報を示す。SSRC425は、現在送信権を取得している移動端末のSSRCである。
図5(上図)は、配信テーブルの図である。
配信テーブル211は、ゲートウエイ104a、104b、コーデック変換装置107から受信したRTPフローを、どこへ配信するかを管理する(図5参照)。配信テーブル211には、通話グループ500に対して、受信パケット情報502、コーデック506、MS数507、送信パケット情報509が記憶される。なお、MS数は、例えば、発信端末の台数である。配信テーブル211は、例えば、グループ通信開始要求処理の際に設定される。
通話グループ500はグループ呼の識別子である。受信パケット情報502は、通話グループ500の呼で受信しうる全てのRTPパケットのソケット情報を示す。すなわち、受信パケット情報502には、送信元IPアドレス501、送信元UDPポート503、宛先IPアドレス504、宛先UDPポート505の組が登録されている。送信パケット情報509は、通話グループ500の各受信パケット情報の呼に対して送信すべき全てのRTPパケットのソケット情報を示す。すなわち、送信パケット情報509には、送信元IPアドレス508、送信元UDPポート510、宛先IPアドレス511、宛先UDPポート512の組が登録されている。
図5(下図)は、シーケンス番号テーブルの図である。
シーケンス番号テーブル212は、配信装置106がコーデック変換装置107にRTPパケットを転送する際、同一グループ通信内で連続したシーケンス番号を付与するために使用する。シーケンス番号テーブル212は、通話グループ520に対するシーケンス番号521が記憶される。図5において、シーケンス番号テーブル212の通話グループ520はグループ呼の識別子である。シーケンス番号521は、通話グループ520のRTPパケットをコーデック変換装置107に転送する場合に、パケットに付加するシーケンス番号を表す。
次に、図6に、コーデック変換装置107の構成図を示す。
コーデック変換装置107は、CPU600、メモリ601、通信インタフェース602、デコーダ603、エンコーダ604を備える。CPU600はメモリ601内のプログラムを実行する中央演算装置である。通信インタフェース602は、配信装置106と通信するためのインタフェース回路である。
デコーダ603は、配信装置106から受信した音声データを、PCMに変換する回路である。本図においてデコーダA001とデコーダA002はコーデック種別がAのデコーダであることを示す。同様にデコーダB001、デコーダB002はコーデック種別がBのデコーダであることを示す。エンコーダ604は、デコーダ603でPCM化した音声データを、移動端末用のコーデックにエンコードするための回路である。本図においてエンコーダA101とA102はコーデック種別がAのエンコーダであることを示す。同様にエンコーダB101、B102はコーデック種別がBのエンコーダであることを示す。本図からも判るように、コーデック変換装置107はコーデック種別毎に複数のデコーダ及びエンコーダを有する。そのため、コーデック変換制御モジュール702はグループ呼が発生した場合に、使用するデコーダ、エンコーダを動的に割り当て、呼の終了と共に解放する。デコーダ、エンコーダ各回路毎の割り当て済みあるいは空きの状態を表すのが、コーデック使用中マップ706である。例えば、コーデックAの移動端末10台とコーデックBの移動端末5台が参加するグループ呼が発生した場合、デコーダAから1回路、エンコーダAから1回路、デコーダBから1回路、エンコーダBから1回路を割り当てるというのが、本実施の形態の主要部分のひとつである。(デコーダA、エンコーダAを10回路ずつ、デコーダB、エンコーダBを5回路ずつ割り当てる、ということはしない。)
図7は、コーデック変換装置のメモリ内の構成を示す図である。
メモリ601はプログラム領域701とデータ領域704を有する。コーデック変換制御モジュール702、呼接続プロトコルモジュール703は、CPU600にロードされ、適宜実行される。データ領域704の各テーブル及びバッファは、CPU600によりアクセスされ、データの読出し/書込みが適宜行われる。
プログラム領域701には、コーデック変換制御モジュール702と呼接続プロトコルモジュール703を有する。コーデック変換制御モジュール702は、グループ通信の呼設定に伴うコーデック変換パターンの設定、コーデック回路の割当、ジッタバッファ制御を行う。呼接続プロトコルモジュール703は、SIPプロトコルの制御を行う。データ領域704には、コーデックリソース管理テーブル705、コーデック使用中マップ706、RTPフローテーブル707、コーデック変換テーブル708、RTPジッタバッファ709、デコードデータジッタバッファ710を有する。
図8(上図)は、コーデックリソース管理テーブルの図である。
コーデックリソース管理テーブル705は、コーデック変換装置107が有するコーデック回路の回路数、コーデック種別を管理する。コーデックリソース管理テーブル705には、コーデック種別800に対して、フレームレート808、RTPクロックレート801、リソース量803(エンコーダ802、デコーダ803)、使用量805(エンコーダ806、デコーダ807)が記憶される。
図8(下図)は、コーデック使用中マップの図である。
コーデック使用中マップ706は、コーデック回路毎の使用中あるいは未使用を表すビットマップである。コーデック使用中マップ706には、デコーダA001、A002、・・・、及び、デコーダB001、B002、・・・、の使用状況(例、ON又はOFF、1又は0等)が記憶される。
図9(上図)は、RTPフローテーブルの図である。
RTPフローテーブル707は、コーデック変換装置107と配信装置106との間に設定したRTPフローのコーデック種別を管理する。RTPフローテーブル707には、通話グループ900に対して、コーデック変換装置902についてIPアドレス901及びUDPポート903、配信装置904についてIPアドレス905及びUDPポート906、コーデック907が記憶される。通話グループ900はグループ呼の識別子である。コーデック変換装置902と配信装置904には、コーデック907毎に設定したRTPフローのソケット情報が設定されている。すなわちIPアドレス901とUDPポート903にはコーデック変換装置107の使用するIPアドレスとUDPポート番号が、IPアドレス905とUDPポート906には配信装置106の使用するIPアドレスとUDPポート番号が設定されている。
図9(下図)は、コーデック変換テーブルの図である。
コーデック変換テーブル708は、配信装置106から受信したRTPフローをどのコーデック回路に入力し、出力をどのUDPポートから配信装置106に返送したらよいかを管理する。コーデック変換テーブル708には、通話グループ910に対して、配信装置UDPポート911、デコーダID912、エンコーダID913、コーデック変換装置UDPポート914が記憶される。
通話グループ910はグループ呼の識別子である。配信装置UDPポート911はRTPフローテーブル707のUDPポート906と同じである。デコーダID912は、配信装置UDPポート911の受信RTPフローを入力すべきデコーダを示す。エンコーダID913は、デコーダID912が示すデコーダが出力したPCMの音声情報を入力すべきエンコーダを示す。コーデック変換装置UDPポート914は、エンコーダID913が示すエンコーダが出力した音声情報を送出すべきRTPフローを示す。
図10(上図)は、RTPジッタバッファの図である。
RTPジッタバッファ709は、送信権を有する端末からの音声パケットをある時間格納し、ジッタの吸収およびパケット順序の並べ替えを行う。RTPジッタバッファ709は、通話グループ1000に対して、配信装置UDPポート1001、受信シーケンス番号1002、SSRC1003、次回入力時刻1004、次回入力タイムスタンプ1005、先頭ポインタ1006、末尾ポインタ1007が記憶される。通話グループ1000はグループ呼の識別子である。配信装置UDPポート1001はRTPフローテーブル707のUDPポート906と同じである。
図10(下図)は、デコードデータジッタバッファの図である。
デコードデータジッタバッファ710は、コーデック変換の前半処理であるデコード処理が終わったデータをある時間格納し、デコード処理のジッタの吸収を行う。デコードデータジッタバッファ710には、エンコーダID1010に対して、次回入力時刻1011、先頭ポインタ1012、末尾ポインタ1013が記憶される。
エンコーダID1010は、PCM音声情報を入力すべきエンコーダを示す。次回入力時刻1011は、エンコーダに音声情報を次回入力すべき時刻を示す。先頭ポインタ1012は、エンコーダID1010が示すエンコーダに入力すべきPCM音声情報をデコーダ出力順に並べたキューの先頭へのポインタである。末尾ポインタ1013は、キューの最後尾の音声情報へのポインタである。
図11に、呼制御装置が有する端末コーデックテーブルの図を示す。
端末コーデックテーブル1100は、端末アドレス1111に対して、コーデック種別1112、RTPクロックレート1113を含む。コーデック種別1112は端末が使用するコーデックの種類を表す。RTPクロックレート1113は、音声パケットに設定するタイムスタンプの1秒当たりの増加量(8000Hzなら8000)を表す。端末コーデックテーブル1100は、端末の位置登録の処理等の際に、または、予め設定することができる。
2.シーケンス図
2−1.位置登録
次にメッセージシーケンスを説明する。
図12に、移動端末がグループ通信を行う前に必要な、位置登録のシーケンス図を示す。
移動端末100aの電源がONになると(ステップ1200)、端末番号を含む位置登録要求メッセージ1201を基地局101aに送信する。基地局101aは位置登録要求メッセージ1202をゲートウエイ104aに送信する。ゲートウエイ104aは、移動端末100aの端末番号と基地局101aを対応付けて記憶する(ステップ1203)。そして端末番号に対応した仮想SIP端末機能を起動し、端末番号から端末アドレスを作成し、端末アドレスを含むREGISTERメッセージ1204を呼制御装置105に送信する。端末アドレスとして、例えば“端末番号@ドメイン名”を使う。呼制御装置105は、REGISTERメッセージ1204の送信元であるゲートウエイ104aと端末アドレスを対応付けて記憶する(ステップ1205)。さらに端末アドレスから端末固有情報を検索する(ステップ1206)。ここで、端末のコーデックに関しては、端末コーデックテーブル1100(図11参照)を検索する。
図11において、移動端末100aはms1@netAとすると、コーデックAを使用し、RTPクロックレートが8000Hzであることがわかる。このコーデック種別1112及びRTPクロックレート1113を含む情報を、呼制御装置105はPUBLISHメッセージ1207に設定してゲートウエイ104aに送信する。
ゲートウエイ104aはステップ1208において、呼制御装置105が有する端末コーデックテーブル1100と同様のテーブルを有し、そのテーブルを移動端末100aについて作成する。そしてPUBLISHメッセージ1207に対するOK応答1209を呼制御装置105に送信する。呼制御装置105はREGISTERメッセージ1204に対するOK応答1210をゲートウエイ104aに送信する。さらに、NOTIFYメッセージ1213を配信装置106に送信し、移動端末100aがゲートウエイ104a配下で位置登録したことを通知する。配信装置106は移動端末100aの端末アドレスとゲートウエイ104aを、所定のテーブルに対応付けて記憶する(ステップ1214)。そしてNOTIFYメッセージ1213に対するOK応答1215を呼制御装置105に送信する。一方、OK応答1210を受信したゲートウエイ104aは、基地局101aに位置登録受付メッセージ1211を送信する。基地局101aは移動端末100aに位置登録受付メッセージ1212を送信する。以上で位置登録処理が完了する。
2−2.開始要求
図13(a)および(b)に、移動端末がグループ通信を開始する場合の前半のシーケンス図、後半のシーケンス図を示す。
まず、基地局101aが移動端末100aから、グループ番号を含むグループ通信の開始要求を受信する(ステップ1300)と、グループ番号を含むグループ呼要求メッセージ1301をゲートウエイ104aに送信する。ゲートウエイ104aはグループ呼要求メッセージ1301に含まれる呼び出すべきグループ番号をINVITEメッセージ1302に設定して、次のような情報を含むINVITEメッセージを作成し、呼制御装置105に送信する。
図17に、INVITEメッセージ1302のメッセージフォーマットを示す。INVITE1700はメッセージ種別を示す。Fromヘッダ1701は発信端末のアドレスを設定する。Toヘッダ1702は呼び出すべきグループ番号を含む宛先アドレスを設定する。ここで“0003”は移動端末101aが呼び出しを要求したグループの番号、“ptserver.netA”は、配信装置106のアドレスである。セッション情報1703は、移動端末100aのコーデック種別(本図ではコーデックA)、およびRTPクロックレート(本図では8000Hz)、移動端末100aからの/への音声フローをゲートウエイ104aと配信装置106が送受信する際に使用するゲートウエイ104aのUDPポート(本図では10000)、そして送信権制御メッセージ(RTCPパケット)をゲートウエイ104aと配信装置106が送受信する際に使用するゲートウエイ104aのUDPポート(本図では10010)を含む。コーデック種別とRTPクロックレートは、移動端末100aが位置登録したときにゲートウエイ104aが作成した端末コーデックテーブル(図11)を参照して値を設定する。UDPポートはその時点で空いている番号を割り当てる。
次に、呼制御装置105はINVITEメッセージ1302のToヘッダ1702のドメイン名が“ptserver.netA”であることから、INVITEメッセージを配信装置106にルーティングする。配信装置106は、次のような情報を含むSession Progressメッセージ1304を作成し、呼制御装置105に送信する。
図17に、Session Progressメッセージ1304のメッセージフォーマットを示す。Session Progress1710はメッセージ種別である。Fromヘッダ1711およびToヘッダ1712は、INVITEメッセージ1302と同じ値を設定する。セッション情報1713は、移動端末100aのコーデック種別(本図ではコーデックA)、およびRTPクロックレート(本図では8000Hz)、移動端末100aからの/への音声フローをゲートウエイ104aと配信装置106が送受信する際に使用する配信装置106のUDPポート(本図では30001)、そして送信権制御メッセージ(RTCPパケット)をゲートウエイ104aと配信装置106が送受信する際に使用する配信装置106のUDPポート(本図では30011)を含む。UDPポートはその時点で空いている番号を割り当てる。
次に、呼制御装置105は発信元のゲートウエイ104aにSession Progressメッセージをルーティングする。ゲートウエイ104aがSession Progressメッセージ1305を受信すると、移動端末100aが送受信するコーデックAの音声フローに関し、ゲートウエイ104aと配信装置106の間のRTPセッションのネゴシエーションが完了する。
ゲートウエイ104aは発信元移動端末の基地局を特定して(ステップ1306)、グループ呼設定メッセージ1307を送信する。基地局101aは通話用無線チャネルを設定する(ステップ1308)。そしてグループ呼設定メッセージ1307に対する呼設定受付メッセージ1309をゲートウエイ104aに送信する。ゲートウエイ104aは、Session Progressメッセージ1305を受信したことを意味するPRACK(Pre−acknowledgement)メッセージ1310を呼制御装置105に送信する。呼制御装置105はPRACKメッセージを配信装置106にルーティングする。配信装置106は、グループメンバの呼び出しを開始する(ステップ1312)。ここで、グループメンバは移動端末100b(ms2@netA)および移動端末100c(ms3@netA)とする。
図13(b)に進む。配信装置106は、移動端末100b、100cの位置登録時に受信したNOTIFYメッセージで、どちらの端末もゲートウエイ104bの配下にいることを知っている。そこで、配信装置106は、INVITEメッセージ1320に移動端末100b、100cの両方に着信するための情報を設定して、次のような情報を含むINVITEメッセージ1320を作成し、呼制御装置105に送信する。
図18にINVITEメッセージ1320のフォーマットを示す。INVITE1800はメッセージ種別である。Fromヘッダ1801は呼び出し対象のグループ番号を設定する。Toヘッダ1802は、着信対象の移動端末のひとつである移動端末100bの端末アドレスを設定する。セッション情報1803a、1803b、1803c、1803dは、コーデック変換装置107がサポートする全てのコーデック種別毎にひとつずつ設定する。コーデック種別とRTPクロックレートは、図3に示すコーデックテーブル208を参照して設定する。セッション情報1803a、1803b、1803c、1803dのUDPポートは、移動端末100bまたは100cからの/への音声フローをゲートウエイ104aと配信装置106が送受信する場合に使用する配信装置106のUDPポートである。またRTCPは送信権制御メッセージをゲートウエイ104aと配信装置106が送受信する際に使用する配信装置106のUDPポートである。これらのポートはその時点で空いている番号を割り当てる。宛先アドレスリスト1804は、Toヘッダ1802に設定した移動端末と同じゲートウエイに位置する、呼び出し対象の全ての端末のアドレスを設定する。
図13(b)に戻る。INVITEメッセージ1320を受信した呼制御装置105は、メッセージ中のToヘッダ1802のms2@netAがゲートウエイ104b配下にいることを知っているので、ゲートウエイ104bにINVITEメッセージ1321を送信する。ゲートウエイ104bは移動端末100bおよび100cが位置する基地局101bを特定する(ステップ1322)。ステップ1323において、基地局101bへのグループ呼をまだ設定していないことから、基地局101bにグループ呼設定メッセージ1324を送信する。基地局101bは無線チャネルを設定し(ステップ1325)、呼設定受付メッセージ1326をゲートウエイ104bに送信する。ゲートウエイ104bは、INVITEメッセージ1321に対するOK応答1327を作成し、呼制御装置105に送信する。
図18に、OK応答1327のフォーマットを示す。OK応答1810はメッセージ種別である。Fromヘッダ1811とToヘッダ1812は、INVITEメッセージ1320のFromヘッダ1801、Toヘッダ1802と同じである。セッション情報1813a、1813bは、INVITEメッセージ1320に設定されていたセッション情報1803a、1803b、1803c、1803dのうち、移動端末100b、100cが使用するコーデック種別についてのみ設定する。具体的には、ゲートウエイ104bは、図11の端末コーデックテーブルとして移動端末100b(ms2@netA)と移動端末100c(ms3@netA)のレコードを有している。これを参照し、コーデックA用のセッション情報1813aとコーデックB用のセッション情報1813bを設定する。セッション情報中のUDPポートは、それぞれのコーデックのRTPフローに使用するゲートウエイ104bのUDPポートを表す。またRTCPは送信権制御メッセージをゲートウエイ104aと配信装置106が送受信する際に使用するゲートウエイ104aのUDPポートを表す。これらUDPポートはその時点で空いている番号を割り当てる。宛先アドレスリスト1814は、コーデック種別毎に移動端末を分類したものを設定する。
図13(b)に戻る。OK応答1327を呼制御装置105が受信すると、それをINVITEメッセージ1320の送信元である配信装置106にルーティングする。配信装置106がOK応答1328を受信すると、移動端末100cが送受信するコーデックAの音声フローと移動端末100bが送受信するコーデックBの音声フローに関し、ゲートウエイ104bと配信装置106の間のRTPセッションのネゴシエーションが完了する。
配信装置106は、グループ呼で使用するコーデックがAとBの2つであることを認識して、コーデック変換装置107にコーデック変換の設定のためのINVITEメッセージ1329を送信する。
図19に、INVITEメッセージ1329のフォーマットを示す。INVITE1900はメッセージ種別を表す。Fromヘッダ1901は、グループ番号(本図では0003)と配信装置106のアドレス(本図ではptserver.netA)を設定する。Toヘッダにはグループ番号とコーデック変換装置のアドレス(本図ではtranscoder.netA)を設定する。セッション情報1903a、1903bは、グループ呼が使用するコーデックの種類ごとに設定する。グループ呼が使用するコーデック種別、RTPクロックレート、および配信装置106がRTPパケットをコーデック変換装置107と送受信する場合に使用するUDPポートを設定する。
図13(b)に戻る。コーデック変換装置107は、コーデック回路の設定をした後、OK応答1330を配信装置106に送信する。
図19に、OK応答1330のフォーマットを示す。OK応答1910はメッセージ種別である。Fromヘッダ1911、Toヘッダ1912はINVITEメッセージ1329のFromヘッダ1901、Toヘッダ1902と同じである。セッション情報1913a、1913bは、INVITEメッセージ1329のセッション情報1903a、1903bに対応して(すなわちコーデックの種類毎に)ひとつずつ設定する。グループ呼が使用するコーデック種別、RTPクロックレート、およびコーデック変換装置107がRTPパケットを配信装置106と送受信する場合に使用するUDPポートを設定する。
OK応答1330を配信装置106が受信すると、コーデックAの音声フローとコーデックBの音声フローに関し、配信装置106とコーデック変換装置107の間のネゴシエーションが完了する。
配信装置106はグループ呼設定開始時のINVITEメッセージ1303に対するOK応答1331を呼制御装置105に送信する。呼制御装置105はゲートウエイ104aに送信する。ゲートウエイ104aはグループ呼要求メッセージ1301に対する呼設定完了メッセージ1333を基地局101aに送信する。基地局101aは移動端末100aに呼設定完了を通知する(ステップ1334)。以上で移動端末100a、100b、100cによるグループ通話が可能になる。
2−3.終了要求
図14は、グループ通信の呼解放のシーケンス図である。
次に図14を用いてグループ通信を終了する場合のシーケンスを説明する。
基地局101aがグループ通信の開始端末である移動端末100aからグループ通信の終了要求を受信すると(ステップ1400)、解放完了メッセージ1401をゲートウエイ104aに送信する。さらに無線チャネルを解放する(ステップ1402)。解放完了メッセージ1401を受信したゲートウエイ104aは、BYEメッセージ1403を呼制御装置105に送信する。呼制御装置105はBYEメッセージ1404を配信装置106に送信する。配信装置106はBYEメッセージ1404に対するOK応答1405を呼制御装置105に送信する。呼制御装置105はOK応答1406をゲートウエイ104aに送信する。一方、配信装置106は、コーデック変換装置107にもBYEメッセージ1407を送信する。コーデック変換装置107は、コーデック回路の解放を行い、OK応答1408を配信装置106に送信する。配信装置106は移動端末100b、100cへの呼解放を開始する(ステップ1409)。配信装置106はBYEメッセージ1410を呼制御装置105に送信する。呼制御装置105はBYEメッセージ1411をゲートウエイ104bに送信する。ゲートウエイ104bは移動端末100b、100cの位置する基地局101bを特定し(ステップ1412)、基地局101bに対してグループ呼の解放を行っていないことを判定して(ステップ1413)、基地局101bに解放完了メッセージ1414を送信する。解放完了メッセージ1414を受信した基地局101bは、無線チャネルを解放する(ステップ1415)。ゲートウエイ104bはさらにBYEメッセージ1411に対するOK応答1416を呼制御装置105に送信する。呼制御装置105はOK応答を配信装置106にルーティングする。以上でグループ通話が終了する。
2−4.送信権要求
図15は、移動端末100aが送信権を獲得し、音声情報を送信するシーケンス図を示す。
次に、グループ通話が可能な状態、すなわち図13(a)(b)のシーケンスが完了した状態で、音声を送信する手順を図15を用いて説明する。なお、以下で登場するTalk Burst Requestメッセージ、Talk Burst Takenメッセージ、Talk Burst Grantedメッセージ、Talk Burst Releaseメッセージ、Talk Burst Ildeメッセージは、例えばPoC規格と同じフォーマットを使用し、RTCPパケットで送受信する。これらのパケットと音声情報を運ぶRTPパケットは、呼制御装置105を通らない(スルーする)。
基地局101aが移動端末からの送信権要求を受信する(ステップ1500)。基地局101aは送信権要求メッセージ1501をゲートウエイ104aに送信する。ゲートウエイ104aは、Talk Burst Requestメッセージ1502を配信装置106に送信する。本メッセージには送信権の要求者の識別子としてRTPプロトコルで規定されるSSRC(Synchronization source)を含む。SSRCの選択方法としては乱数を使用したり、端末アドレスから算出したりする方法がある。なお、本実施の形態では、必ずしもSSRCのみから端末アドレスを特定できる必要はなく、グループメンバが互いに異なるSSRCを使ってさえすれば良い。Talk Burst Requestメッセージ1502を受信した配信装置106は、送信権をグループ内のメンバの誰にも与えていないことを確認する(ステップ1503)。そして移動端末100b、100cに、移動端末100aが送信権を獲得したことを通知するため、Talk Burst Takenメッセージ1504をゲートウエイ104bに送信する。ゲートウエイ104bは移動端末100b、100cの位置する基地局101bに送信権使用中メッセージ1505を送信する。基地局101bは送信権が使用中であることを移動端末100b、100cに報知する(ステップ1506)。一方、配信装置106はTalk Burst Grantedメッセージ1507をゲートウエイ104aに送信する。ゲートウエイ104aは送信権承認メッセージ1508を基地局101aに送信する。基地局101aは移動端末100aに送信権承認を通知する(ステップ1509)。すると、移動端末100aは基地局101aを介してコーデックAでエンコードした音声情報1510をゲートウエイ104aに送信する。ゲートウエイ104aは、グループ呼設定時に配信装置106とネゴシエーションしたコーデックA用のUDPポートで音声情報1510を配信装置106に送信する。配信装置106は、コーデックBでエンコードした音声情報を生成するため、ゲートウエイ104aから受信した音声情報1510をコーデック変換装置107に送信する。
図27に、このときの音声情報1511のIPパケットフォーマットを示す。
音声情報1511のIPパケット2700は、IPヘッダ2701、UDPヘッダ2702、シーケンス番号2703、RTPパケット2704を含む。IPヘッダ2701には、送信元アドレスとして配信装置106のIPアドレスを設定し、宛先アドレスとしてコーデック変換装置107のIPアドレスを設定する。UDPヘッダ2702には、グループ呼設定時に配信装置106とコーデック変換装置107との間でネゴシエーションした、コーデックAのフロー用のUDPポート番号を設定する。シーケンス番号2703は、ひとつのグループ呼の中で配信装置106がコーデック変換装置107に送信した音声情報のIPパケット2700にシーケンシャルに設定する番号である。シーケンス番号2703の使用目的は後述する。RTPパケット2704は、配信装置106がゲートウエイ104aから受信したRTPパケットであり、この中にはゲートウエイ104aがTalk Burst Requestメッセージ1502に設定したSSRCが含まれている。
図15に戻る。配信装置106は、コーデックAの音声情報1511をコーデック変換装置107に送信すると同時に、同じ情報をゲートウエイ104bに送信する。これは、コーデックAを使用する移動端末100c用の音声情報であり、コーデックA用のUDPポートで送受信される。ゲートウエイ104bは、受信したコーデックAの音声情報1512を基地局101bに送信する。基地局101bは移動端末100cに送信する。一方、コーデック変換装置107はコーデックAの音声情報1511を受信すると、コーデックBに変換して、コーデックBの音声情報1513を配信装置106に返送する。このとき使用するUDPポートは、グループ呼設定時に配信装置106とコーデック変換装置107との間でネゴシエーションした、コーデックBのフロー用のUDPポートである。配信装置106は、コーデックBの音声情報1514をゲートウエイ104bに送信する。これは、コーデックBを使用する移動端末100b用の音声情報であり、コーデックB用のUDPポートで送受信される。ゲートウエイ104bは、受信したコーデックBの音声情報1514を基地局101bに送信する。基地局101bは移動端末100bに送信する。
2−5.解放要求
図16は、送信権解放のシーケンス図である。
次に、音声情報を送信していた移動端末が送信権を解放するシーケンスを図16を用いて説明する。本図では移動端末100aが送信権を解放する。基地局101aが移動端末100aから送信権解放要求を受信する(ステップ1600)。基地局101aは送信権解放要求メッセージ1601をゲートウエイ104aに送信する。ゲートウエイ104aはTalk Burst Releaseメッセージ1602を配信装置106に送信する。配信装置106は送信権の移動端末100aへの割当を解除し(ステップ1603)、Talk Burst Ildeメッセージ1604をゲートウエイ104bに送信する。ゲートウエイ104bは送信権解放通知メッセージ1605を基地局101bに送信し、基地局101bは移動端末100b、100cに送信権解放を報知する(ステップ1606)。さらに、配信装置106はゲートウエイ104aにもTalk Burst Idleメッセージ1607を送信する。ゲートウエイ104aは送信権解放通知メッセージ1608を基地局101aに送信し、基地局101aは移動端末100aに送信権解放を通知する(ステップ1609)。
3.詳細フローチャート
3−1.送信権要求
次に、フローチャートとテーブルによる詳細な処理内容を説明する。
まずは、グループ呼設定完了後、送信権を獲得した移動端末100aからの音声パケットがどのように転送され、コーデック変換されるかを説明する。
(1)配信装置
図23は、配信装置106がゲートウエイ104a、104b、コーデック変換装置107からRTPパケットを受信した場合のフローチャートである。図15のシーケンスでは、ゲートウエイ104aからコーデックAの音声情報1510を受信した場合、またはコーデック変換装置107からコーデックBの音声情報1513を受信した場合にあたる。
以下ではまずゲートウエイ104aからRTPパケットを受信した場合を説明する。
図23において、配信装置106がRTPパケットを受信すると、ステップ2301にて図5に示す配信テーブル211を検索する。
図5の配信テーブル211において、ステップ2301では、受信したRTPパケットのソケットと一致する組が受信パケット情報502に存在するかチェックする。全ての通話グループ500に関し、一致する受信パケット情報502がなければ、不正パケットとしてパケットを廃棄し(ステップ2307)、終了する。
ステップ2301に戻り、受信パケットが移動端末100aが送信した音声情報を運ぶRTPパケットの場合、図5の配信テーブル211の1段目の情報に一致する。そこでステップ2302に移行する。ステップ2302では、送信元IPアドレス501がゲートウエイ104aまたは104bのIPアドレスか、コーデック変換装置107のIPアドレスかを判定する。受信パケットはゲートウエイ104a、すなわちゲートウエイaからのパケットであるのでステップ2303に移行する。ステップ2303では、図4に示す送信権テーブル210に登録されている、所定の通話グループについて、送信権獲得端末に関する情報と、受信パケットが一致しているか判定する。
図4の送信権テーブル210において、受信パケットのソケット情報およびSSRCが、送信権テーブル210の各エントリと一致する場合は、受信パケットは他のグループメンバに配信すべきパケットである。したがって、ステップ2304に移行し送信パケットを作成する。ステップ2303にて受信パケットが送信権テーブル210の内容と一致しない場合は、パケットを廃棄する(ステップ2307)。
ステップ2304では、配信テーブル211の送信パケット情報509で送信パケットのIPヘッダとUDPヘッダを生成する。受信RTPパケットの受信パケット情報502に対応して登録されている送信パケット情報509が、生成すべき送信パケットのソケット情報である。受信RTPパケットの受信パケット情報502は1段目であったので、そのパケットを送信する場合のソケット情報は、(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(配信装置、30001、ゲートウエイb、40001)、(配信装置、33001、コーデック変換装置、44001)の2つである。つまり、受信したRTPパケットを複製して、ゲートウエイ104b宛とコーデック変換装置107宛のパケットを生成する。次にステップ2305にて、生成した送信パケットがコーデック変換装置107宛の場合には、シーケンス番号テーブル212(図5参照)に格納しているシーケンス番号521を、UDPヘッダとRTPパケットの間に挿入し、シーケンス番号テーブル212のシーケンス番号521をインクリメントする。図27のIPパケット2700が、完成したコーデック変換装置宛パケットのフォーマットである。
図23のステップ2305で完成したパケットは、ステップ2306で装置外に送信する。以上が図15のシーケンスにおける、音声情報1510の受信から音声情報1511および1512の送信までの処理である。
次に、図23のフローチャートで、コーデック変換装置からRTPパケットを受信した場合を説明する。図15のシーケンスでは、コーデックBの音声情報1513を受信した場合にあたる。
図23のステップ2301で、受信RTPパケットのソケット情報が配信テーブル211の受信パケット情報502の最下段に一致したとする。ステップ2302の判定では、受信RTPパケットの送信元IPアドレス501がコーデック変換装置なので、ステップ2308でパケットを作成する。作成手順はステップ2304と同じであり、受信パケット情報502に対応して登録されている送信パケット情報509が、生成すべき送信パケットのソケット情報である。つまり(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(配信装置、30002、ゲートウエイb、40002)のパケットを生成する。そしてパケットを送信する(ステップ2306)。
なお、配信テーブル211において、コーデック506とMS数507は使用しなかったが、これは、グループ呼設定時に配信テーブル211を設定する段階で使用するものであり、詳細は後述する。
(2)コーデック変換装置
次に、コーデック変換装置107での音声情報の処理を説明する。図15のシーケンスでは、配信装置106からコーデックAの音声情報1511を受信してから、コーデックBの音声情報1513を送信するまでに相当する。音声情報1511のIPパケットは図27のIPパケット2700の形をしている。
図24は、コーデック変換装置107が配信装置106から音声情報1511を受信した場合のフローチャートである。まず、装置外部からUDPパケットを受信すると、ステップ2401にて図9に示すRTPフローテーブル707を検索する。
今、配信装置106から受信したコーデックAのRTPパケットのソケット情報は、前述のとおり(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(配信装置、33001、コーデック変換装置、44001)であるので、図9のRTPフローテーブル707における通話グループ900の1段目に一致する。したがって図24のステップ2402に移行するが、もし全ての通話グループ900に関し一致するものがなければ、パケットを廃棄し(ステップ2409)、終了する。
ステップ2402では、図10に示すRTPジッタバッファ709に、通話グループ、配信装置UDPポート及びSSRCに基づき、受信RTPパケットに対応するバッファがあるかを調べる。
今、受信したRTPパケットの配信装置のUDP番号は33001であるので、RTPジッタバッファ709において、1段目に注目する。SSRC1003は、現時点で送信権を有していると予想される移動端末のSSRCを表す。
もし、グループ呼設定後の初めてのRTPパケットだった場合、SSRC1003はNULLであり、その場合、ステップ2402の判定で“No”となる。また、もし送信権を別の端末が獲得した後の初めてのRTPパケットだった場合、SSRC1003はNULLではないが、受信RTPパケットのSSRCと一致せず、その場合もステップ2402の判定で“No”となる。“No”となった場合、ステップ2403にて、受信シーケンス番号1002と受信パケットのシーケンス番号2703をチェックする。まず、受信シーケンス番号1002がNULLの場合、グループ呼設定後初めてのRTPパケットであるので、バッファを新しく構築する対象としてステップ2404に進む。また、受信シーケンス番号1002がNULLではない場合、受信パケットのシーケンス番号2703とどちらが最新か比較し、受信パケットのシーケンス番号2703の方が最新だった場合、送信権獲得端末が切り替わった最初のRTPパケットとして、バッファを新しく構築する対象としてステップ2404に進む。一方、受信シーケンス番号1002の方が受信パケットのシーケンス番号2703よりも最新だった場合、送信権獲得端末が切り替わった後、切替前の古いRTPパケットが到着したものと判定し、ステップ2409にてパケットを廃棄する。
ステップ2404では、受信パケットのシーケンス番号2703の値を受信シーケンス番号1002にコピーする。ステップ2405では、先頭ポインタ1006がNULLでない場合、送信権獲得端末が切り替わる前の古いRTPパケットがキューを構成しているので、これを全て解放(廃棄)する。先頭ポインタ1006は、デコーダに次に入力すべき音声情報のUDPパケットに付随した後方ポインタ2711のメモリアドレスを格納している(図27参照)。後方ポインタ2711は、その次にデコーダに入力すべき音声情報のUDPパケットに付随した後方ポインタのメモリアドレスを格納している。この繰り返しで、SSRCが同一のRTPパケットがデコーダへの入力順にキューを構成しており、最後のパケットに付随する後方ポインタにはNULLが設定されている。従って、これらを解放する場合は、先頭ポインタ1006から順にパケットを手繰ってはメモリ解放する手続きを、後方ポインタ2711がNULLになるまで続ければよい。解放完了したあと、先頭ポインタはNULLに初期化する。
ステップ2406では、受信RTPパケットのSSRCをSSRC1003にコピーする。さらに次回入力時刻1004、次回入力タイムスタンプをNULLに初期化する。
ステップ2407では、受信RTPパケットに含まれるタイムスタンプに基いて、先頭ポインタ1006から始まるキューにパケットを挿入する。ここで、次回入力タイムスタンプ1005がNULLの場合は、送信権獲得端末から受信した最初のパケットであるので、キューの先頭に設定する。すなわち、IPパケット2700に追加した後方ポインタ2711のアドレスを先頭ポインタ1006に設定する。また、前方ポインタ2710、後方ポインタ2711の値をNULLに設定する。末尾ポインタ1007に前方ポインタ2710のアドレスを設定する。また、次回入力タイムスタンプ1005に、受信RTPパケットに含まれるタイムスタンプ値を設定する。さらに、次回入力時刻1004に、受信RTPパケットの音声情報をデコーダに入力する時刻を設定する。例えば現在時刻に、パケット到着のジッタ量を加味した値を使用する。
なお、ステップ2402にて、RTPジッタバッファ709を参照して、通話グループ1000及び配信装置UDPポート1001が、受信IPパケットのそれらと一致するバッファにおいて、SSRC1003と受信RTPパケットのSSRCが一致した場合は、ステップ2408でSSRC削除タイマを停止する。SSRC削除タイマとは、配信装置106からRTPパケットを全く受信せず、デコーダ入力待ちの音声情報がなくなった時点で開始するタイマである。SSRC削除タイマがタイムアウトした場合にはSSRC1003、次回入力時刻1004、次回入力タイムスタンプ1005をNULLに初期化する。
ステップ2410に移行し、受信パケットのシーケンス番号2703と受信シーケンス番号1002を比較し、シーケンス番号2703の方が大きければ、その値を受信シーケンス番号1002に設定する。
ステップ2407に移行して、受信パケットをデコーダへの入力待ちキューに挿入する。まず、次回入力タイムスタンプ1005と受信RTPパケットに含まれるタイムスタンプを比較する。受信RTPパケットの方が小さければ、キューの先頭に挿入し、受信RTPパケットのタイムスタンプを次回入力タイムスタンプ1005にコピーする。受信RTPパケットの方が大きければ、先頭ポインタ1006を辿って、先頭のRTPパケットのタイムスタンプと比較する。受信RTPパケットの方が小さければ、キューの先頭に挿入する。受信RTPパケットの方が大きければ、2番目のパケットのタイムスタンプと比較し、受信RTPパケットの方が小さければ、2番目のパケットの前に受信RTPパケットを挿入する。このようにキューの先頭からタイムスタンプが小さい順に並ぶよう、受信RTPパケットを挿入する。キューの最後尾に挿入することになった場合は、末尾ポインタ1007を更新する。
図25は、コーデック変換装置のデコード処理フローを示す図である。
次に、RTPジッタバッファ709から音声情報をデコーダに入力する処理を図25を用いて説明する。これもコーデック変換制御モジュール702で実行する。デコーダ入力処理2500は周期的に起動する。まず、RTPジッタバッファ709の次回入力時刻1004を現在時刻と比較し(ステップ2501)、まだである場合、および次回入力時刻1004がNULLの場合、処理を終了する。現在時刻が次回入力時刻1004を過ぎていた場合は、先頭ポインタ1006を参照し、先頭パケットのタイムスタンプと次回入力タイムスタンプ1005を比較する(ステップ2502)。先頭パケットのタイムスタンプの方が大きければ、先頭パケットの入力時刻ではまだないので、本来入力すべきRTPパケットの代わりにダミーデータをデコーダに入力する(ステップ2507)。これは、配信装置106とコーデック変換装置107の間でパケットロスが生じた場合に起こる。
ステップ2502において、先頭パケットのタイムスタンプが次回入力タイムスタンプ1005以下であれば、先頭パケットをキューから取り出し、音声情報をデコーダに入力する(ステップ2503)。入力先のデコーダは、図9に示すコーデック変換テーブル708を用いて決定する。
図9のコーデック変換テーブル708において、テーブルの1段目を見ると、該当する通話グループの配信装置UDPポート911が33001のRTPフロー(RTPフローテーブル707からコーデックAのフローであることがわかる)は、コーデックAのデコーダであるA001でデコードした後、コーデックBのエンコーダであるB103でエンコードし、コーデック変換装置UDPポート914が44002のRTPフローとして配信装置106に送信することがわかる(RTPフローテーブル707からコーデックBのフローであることがわかる)。
図25のステップ2504に移行し、バッファが空になったか、すなわちデコーダへの入力まちパケットがなくなったかを判定する。パケットがなくなった場合は、SSRC削除タイマを起動する(ステップ2505)。そしてステップ2506において、次回入力時刻1004、次回入力タイムスタンプ1005を更新する。次回入力時刻1004は、図8のコーデックリソース管理テーブル705の、コーデック種別800に対応したフレームレート808を参照し、1フレームあたりの時間(本図では40ms)を加算した時刻に更新する。次回入力タイムスタンプ1005は、コーデックリソース管理テーブル705の、コーデック種別800に対応したRTPクロックレート801を参照し、1フレームあたりのクロック数(本図では8000×0.04s=320)を加算した値に更新する。
次にデコーダが出力したPCM音声情報をデコードデータジッタバッファ710にキューイングする処理を説明する。図25のデコーダ出力処理2510において、コーデック変換制御モジュール702がデコーダからの出力を検出すると、コーデック変換テーブル708のデコーダID912を検索する(ステップ2511)。出力元のデコーダIDが見つからなかった場合は出力データを廃棄する(ステップ2515)。見つかった場合は、ステップ2512に移行する。ステップ2512では、デコーダID912に対応する配信装置UDPポート911を求め、RTPジッタバッファ1000の配信装置UDPポート1001からSSRC1003を参照する。SSRC1003がNULLの場合は、デコーダからの出力は不要になったと判断し、廃棄する(ステップ2515)。SSRC1003がNULLでなかった場合は、ステップ2513にて、コーデック変換テーブル708のデコーダID912に対応するエンコーダID913を求め、PCM音声情報を入力すべきエンコーダを特定する。ステップ2514にて、デコードデータジッタバッファ710(図10参照)の、エンコーダID1010に対応する入力待ちキューにPCM音声情報をキューイングする。
送信権を獲得した移動端末が初めて送信した音声情報の場合は、次回入力時刻1011がNULLになっているので、これを現在時刻+αの値に設定する。αは、例えばデコーダからのPCM音声情報の出力ジッタを加味した値を使う。
図26は、コーデック変換装置のエンコード処理フローを示す図である。
次に、デコードデータジッタバッファ710から音声情報をエンコーダに入力する処理を図26を用いて説明する。これもコーデック変換制御モジュール702で実行する。エンコーダ入力処理2600は周期的に起動する。まず、デコードデータジッタバッファ710の次回入力時刻1011を現在時刻と比較し、まだである場合、および次回入力時刻1011がNULLの場合、処理を終了する(ステップ2601)。現在時刻が次回入力時刻1011を過ぎていた場合は、先頭ポインタ1012を参照し、先頭のPCM音声情報をキューから取り出し、エンコーダID1010が示すエンコーダに入力する(ステップ2602)。ステップ2603にて、次回入力時刻1011を更新する。図8のコーデックリソース管理テーブル705の、コーデック種別800に対応したRTPクロックレート801の逆数(すなわち1クロックあたりの時間)を現在時刻に加算し、設定する。ただし、エンコーダの独自仕様として入力頻度を下げてもよく、この場合はRTPクロックレート801とは無関係の固有パラメータで加算値を記憶しておく。一方、エンコーダへの入力待ち音声情報がなくなった場合は、次回入力時刻1011にNULLを設定する。
次に、エンコーダから出力された音声情報を配信装置106に送信する処理を説明する。図26のエンコーダ出力処理2610において、コーデック変換制御モジュール702がエンコーダからの出力を検出すると、コーデック変換テーブル708のエンコーダID913を検索する(ステップ2611)。出力元のエンコーダIDが見つからなかった場合は出力データを廃棄する(ステップ2616)。見つかった場合は、ステップ2612に移行する。ステップ2612では、エンコーダID913に対応する配信装置UDPポート911を求め、RTPジッタバッファ1000の配信装置UDPポート1001からSSRC1003を求める。SSRC1003がNULLの場合は、エンコーダからの出力は不要になったと判断し、廃棄する(ステップ2616)。SSRC1003がNULLでなかった場合は、ステップ2613にて、コーデック変換テーブル708のエンコーダID913に対応するコーデック変換装置UDPポート914を求め、RTPフローテーブル707のUDPポート903を参照して、エンコード結果を送出すべきRTPフローを特定する。ステップ2614でRTP/UDP/IPパケットを生成し、ステップ2615でIPネットワークに送出する。
以上で、グループ呼設定後、送信権を獲得した移動端末100aからの音声パケットがどのように転送され、コーデック変換されるかの説明を終わる。
3−2.開始要求
次に、グループ呼設定および送信権獲得のシグナリング処理において、前述した音声パケット処理に必要な各種テーブルを初期化する手順について、フローチャートを用いて説明する。
(1)配信装置
図20は、配信装置106が、呼制御装置105からグループ通信の発呼を受けた場合の配信制御モジュール205のフローチャートを示す。INVITE受信処理2000は、図13(a)のシーケンスにおいて、配信装置106がINVITEメッセージ1303を受信した場合に行う。
ステップ2001では、図17のメッセージ内容に基いて、図5に示す配信テーブル211の受信パケット情報502に発信端末用のRTPフロー情報を設定する。まず、通話グループ500に、INVITEメッセージ1302のToヘッダ1702の内容をコピーする。送信元IPアドレス501に、INVITEメッセージ1302のFromヘッダ1701が示すアドレス(ms1@netA)のIPアドレスを設定する。ms1@netAは、ゲートウエイ104a上の仮想SIP端末であるので、ゲートウエイ104aのアドレスを設定する。送信元UDPポート503には、セッション情報1703のUDPポート“10000”を設定する。宛先IPアドレス504には配信装置106のIPアドレスを設定する。宛先UDPポート505には、配信装置106の未使用UDPポート番号を設定する。さらに、コーデック506には、セッション情報1703のコーデック“A”を設定する。MS数507には1を設定する。これは、上記RTPフローはコーデックAでエンコードされており、また、それを使用するMSは1台(=発信端末)であることを意味している。
ステップ2002では、図4に示すRTCPフローテーブル209を設定する。通話グループ400にはINVITEメッセージ1302のToヘッダ1702の内容をコピーする。RTP401には、ステップ2001で設定した受信パケット情報を設定する。すなわちIPアドレス402、UDPポート403、IPアドレス404、UDPポート405には、それぞれ送信元IPアドレス501、送信元UDPポート503、宛先IPアドレス504、宛先UDPポート505を設定する。RTCP406には、RTP401に対する送信権制御用のフロー情報を設定する。すなわち、IPアドレス407、IPアドレス409には、それぞれIPアドレス402、IPアドレス404の値をコピーする。UDPポート408は、INVITEメッセージ1302のセッション情報1703が示すRTCPのUDPポート番号“10010”を設定する。UDPポート番号410には、配信装置106の未使用UDPポート番号を設定する。
ステップ2003では、呼接続装置105に対しSession Progressメッセージ1304を送信する。メッセージ中のセッション情報1713には、配信装置106がRTPフローに割り当てたUDPポート番号として、UDPポート405の値(本例では30001)を、RTCPフローに割り当てたUDPポート番号として、UDPポート410の値(本例では30011)を設定する。
ステップ2004では、グループメンバを呼び出すためのINVITEメッセージ1320に、図3に示すコーデックテーブル208に登録されている全てのコーデックそれぞれのセッション情報を設定する。このうち、セッション情報1803aは、発信端末も使用するコーデックに関する情報なので、ステップ2001、ステップ2002で確保したUDPポート番号(本例では、RTPフロー用に30001、RTCPフロー用に30011)を設定する。その他のセッション情報1803b、1803c、1803dについては、RTPフロー用とRTCPフロー用のUDPポート番号を新規に確保して、INVITEメッセージ1320に設定する。
ステップ2005では、同一ゲートウエイ配下に位置するグループメンバの宛先アドレスリスト1804をINVITEメッセージの最後に追加し、リスト中の先頭のメンバを、Toヘッダ1802にコピーする。本例では、グループ番号0003のグループメンバは移動端末100a(ms1@netAに対応)、移動端末100b(ms2@netAに対応)、移動端末100c(ms3@netAに対応)であり、移動端末100b、移動端末100cはともにゲートウエイ104b配下に位置するので、ゲートウエイ104bにのみ、グループメンバ宛のINVITEメッセージを送信する(ステップ2006)。
次に呼制御装置105から、図13(b)において、INVITEメッセージ1320に対するOK応答1328を受信した場合の処理を、INVITE OK受信処理2010を用いて説明する。ステップ2011で、Toヘッダ1812を判定し、送信済みのINVITEメッセージ1320のToヘッダ1802と同じなのでステップ2012に移行する。ステップ2012では、図5に示す配信テーブル211の受信パケット情報502に、OK応答1328のセッション情報1813aを設定する。すなわち、送信元IPアドレス501に、OK応答1327のToヘッダ1812が示すアドレス(ms2@netA)のIPアドレスを設定する。ms2@netAは、ゲートウエイ104b上の仮想SIP端末であるので、ゲートウエイ104bのアドレスを設定する。送信元UDPポート503には、セッション情報1813aのUDPポート“40001”を設定する。宛先IPアドレス504には配信装置106のIPアドレスを設定する。宛先UDPポート505には、INVITEメッセージ1320に設定したコーデックAに関するセッション情報1803aのUDPポート“30001”を設定する。さらに、コーデック506には、セッション情報1813aのコーデック“A”を設定する。MS数507の設定には、宛先アドレスリスト1814を参照する。ここに、ゲートウエイ104bに関し、コーデックの種類毎に移動端末が分類されている。コーデックAに関してはms3のみであることがわかるので、MS数507に1を設定する。セッション情報1813aに関する設定は以上である。セッション情報1813bについても同様の手順で配信テーブル211の受信パケット情報502、コーデック506、MS数507を設定する。
ステップ2013では、セッション情報1813a、1813bに基いて図4に示すRTCPフローテーブル209を設定する。まずセッション情報1813aについて説明する。RTP401のIPアドレス402、UDPポート403、IPアドレス404、UDPポート405は、上記で設定した配信テーブル211の送信元IPアドレス501、送信元UDPポート503、宛先IPアドレス504、宛先UDPポート505の値をそれぞれ設定する。RTCP406のIPアドレス407、IPアドレス409は、それぞれIPアドレス402、IPアドレス404の値をコピーする。UDPポート408は、セッション情報1813aのRTCPのUDPポート番号(本図では40011)を設定する。UDPポート410は、INVITEメッセージ1320に設定したコーデックAに関するセッション情報1803aに設定したRTCPのUDP番号(本図では30011)を設定する。セッション情報1813aに関する設定は以上である。セッション情報1813bについても同様の手順でRTCPフローテーブル209を設定する。
ステップ2014では、グループ通信で使用するコーデックが複数あるので、コーデック変換装置107にINVITEメッセージ1329を送信する。コーデックの種類ごとに配信装置106がコーデック変換装置107と送受信するRTPフローのUDP番号を確保して、INVITEメッセージ1329のセッション情報1903a、1903bを設定する。
以上が、配信装置106が呼制御装置105からのOK応答1328を受信した場合の処理である。
次に、図13(b)において、配信装置106がコーデック変換装置107からのOK応答1330を受信した場合の処理をINVITE OK受信処理2010を用いて説明する。ステップ2011において、Toヘッダ1912がコーデック変換装置107のアドレスであるのでステップ2015に移行する。ステップ2015では、図5に示す配信テーブル211の受信パケット情報502に、OK応答1330のセッション情報1913a、1913bを設定する。まずセッション情報1913aについて説明する。送信元IPアドレス501に、OK応答1330のToヘッダ1912が示すアドレス(transcoder.netA)のIPアドレスを設定する。送信元UDPポート503には、セッション情報1913aのUDPポート“44001”を設定する。宛先IPアドレス504には配信装置106のIPアドレスを設定する。宛先UDPポート505には、INVITEメッセージ1329に設定したコーデックAに関するセッション情報1903aのUDPポート“33001”を設定する。さらに、コーデック506には、セッション情報1913aのコーデック“A”を設定する。MS数507には、便宜上常に1を設定する。以上がセッション情報1913aに関する設定である。セッション情報1913bについても同様の手順で設定する。
ステップ2016では、図5の配信テーブル211の受信パケット情報502に対応して、送信パケット情報509を設定する。まず、受信パケット情報502が(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(ゲートウエイa、10000、配信装置、30001)について、送信パケット情報509を設定する。具体的には、このRTPフローのコーデック506は“A”であるので、コーデック506がAである受信パケット情報502を全て送信パケット情報509にコピーする。本図では、コーデックAのRTPフローが対象となるので、受信パケット情報502が(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(ゲートウエイb、40001、配信装置、30001)、(コーデック変換装置、44001、配信装置、33001)の2つを送信パケット情報509に設定する。ここで、自分自身(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(ゲートウエイa、10000、配信装置、30001)については、もし、ゲートウエイa配下にコーデックAを使用する端末が複数いた場合は、コーデックAのRTPフローを送信した端末以外に同じフローを配信する必要があるが、本図ではMS数507が1であるので、自分自身を送信パケット情報509に設定する必要はない。もし、MS数507が2以上の場合は、(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(ゲートウエイa、10000、配信装置、30001)も送信パケット情報509に設定する。以上で、受信パケット情報502が(送信元IPアドレス、送信元UDPポート、宛先IPアドレス、宛先UDPポート)=(ゲートウエイa、10000、配信装置、30001)の場合の送信パケット情報509の設定が完了する。同様の手順で、全ての受信パケット情報502についての送信パケット情報509を設定する。
ステップ2017では、図4に示す送信権テーブル210を初期化する。通話グループ420には、INVITEメッセージ1302のToヘッダ1702の内容を設定する。送信元IPアドレス421、送信元UDPポート422、宛先IPアドレス423、宛先UDPポート424、SSRC425をNULLに設定する。
ステップ2018では、シーケンス番号テーブル212を初期化する。通話グループ520にはINVITEメッセージ1302のToヘッダ1702の内容を設定する。シーケンス番号521には、例えば乱数で生成した値を設定する。
ステップ2019では、INVITEメッセージ1303に対応したOK応答1331を呼制御装置105に送信する。以上が、配信装置106がコーデック変換装置107からのOK応答1330を受信した場合の処理である。
(2)コーデック変換装置
図21は、コーデック変換装置の呼設定処理フローを示す図である。
次に、図13(b)において、コーデック変換装置107が配信装置106からINVITEメッセージ1329を受信した場合のコーデック変換制御モジュール702の処理を図21を用いて説明する。
ステップ2101では、INVITEメッセージ1329(図13(b)参照)に含まれるセッション情報1903a、1903bに基いて図9に示すRTPフローテーブル707を設定する。通話グループ900には、INVITEメッセージ1329のFromヘッダ1901の内容を設定する。次にセッション情報毎の設定として、セッション情報1903aに関する情報を設定する。IPアドレス905には配信装置106のIPアドレスを、UDPポート906にはセッション情報1903aのUDPポートの番号(本例では33001)を、コーデック907にはセッション情報1903aのコーデック(本例ではA)を設定する。IPアドレス901にはコーデック変換装置107のIPアドレスを、UDPポート903には、コーデック変換装置107で空いているUDPポート番号を設定する(本例では44001)。以上でセッション情報1903aの設定が終わる。セッション情報1903bについても同様の手順で設定する。
ステップ2102では、必要なコーデック回路を全て確保可能か判定する。図9に示すRTPフローテーブル707のコーデック907にある全てのコーデック(本例ではAとB)が対象である。まず、コーデックAに関し、図8に示すコーデックリソース管理テーブル705のコーデック種別800でコーデックAを検索し、コーデックAのエンコーダ、デコーダそれぞれについて使用量805がリソース量803に達していないか調べる。一方でも達していた場合は、コーデック変換に必要な空きリソースがないことになり、ステップ2110に移行する。ステップ2110では、RTPフローテーブル707を解放し、INVITEメッセージ1329に対しNGの応答を配信装置106に送信する。ステップ2102では、コーデックBについても同様に調べ、A、Bともに、エンコーダ、デコーダに空きがあった場合のみステップ2103に移行する。2103では、コーデックA、Bそれぞれについて、使用量805のエンコーダ806及びデコーダ807をインクリメントする。ステップ2104では、コーデック使用中マップ706を検索し、コーデックAのデコーダ、エンコーダ、コーデックBのデコーダ、エンコーダで空いている回路をひとつずつ選択し、使用中ビットを立てる。ステップ2105では、図9に示すコーデック変換テーブル708に、確保したデコーダを登録する。通話グループ910には、図9に示すRTPフローテーブル707の通話グループ900をコピーする。配信装置UDPポート911にはRTPフローテーブル707のUDPポート906をコピーする。本例では、UDPポート906は、33001と33002である。UDPポート33001はコーデックAのRTPフローなので、コーデックAのデコーダをデコーダID912に設定する(本例ではA001)。同様に、UDPポート33002はコーデックBのRTPフローなので、コーデックBのデコーダをデコーダID912に設定する(本例ではB003)。ステップ2106ではエンコーダID913を設定する。まず配信装置UDPポート911が33001のRTPフローについての設定を説明する。RTPフローテーブル707のUDPポート906が33001のRTPフローは、コーデック907がAである。そのため、コーデック変換装置107は同じ通話グループ900の中で、コーデックがA以外のコーデックに、音声情報を変換してやる必要がある。本例では、コーデックA以外にはBしかないことがコーデック907を参照するとわかる。そこで、エンコーダID913には、ステップ2104で確保したコーデックBのエンコーダの識別子を設定する。かりに、同一のグループでコーデックA、コーデックB、コーデックCを使用していた場合は、コーデックAのフローである33001に対し、コーデックBのエンコーダとコーデックCのエンコーダの2つをエンコーダID913に設定することになる。
配信装置UDPポート911が33002のRTPフローについても、同様の手順で、コーデックAのエンコーダを設定する。
ステップ2107では、ステップ2106で設定した個々のエンコーダID913について、コーデックの種類に対応したコーデック変換装置107のUDPポート番号を設定する。例えば、エンコーダID913がB103のフローについては、B103がコーデックBであるので、RTPフローテーブル707のコーデック907がBのRTPフローを検索し、コーデック変換装置902のUDPポート903をコーデック変換装置UDPポート914に設定する。同様に、エンコーダID913に登録した個々のエンコーダについて、エンコード結果を送出すべきRTPフローのUDP番号を全て登録する。
ステップ2108では、図10に示すRTPジッタバッファ709を初期化する。通話グループ1000、配信装置UDPポート1001は、図9に示すコーデック変換テーブル708の通話グループ910、配信装置UDPポート911をコピーする。受信シーケンス番号1002、SSRC1003、次回入力時刻1004、次回入力タイムスタンプ1005、先頭ポインタ1006、末尾ポインタ1007はNULLに設定する。
ステップ2109では、図10に示すデコードデータジッタバッファ710を初期化する。エンコーダID1010は、図9に示すコーデック変換テーブル708のエンコーダID913に登録されている全てのエンコーダについて、ここでは重複なく設定する。次回入力時刻1011、先頭ポインタ1012、末尾ポインタ1013はNULLに設定する。
ステップ2112では、INVITEメッセージ1329に対するOK応答1330を送信する。セッション情報1913a、1913bには、コーデックの種類ごとにRTPフローテーブル707のUDPポート903と、コーデックリソース管理テーブル705のRTPクロックレート801を設定する。
以上が、コーデック変換装置107が配信装置106からINVITEメッセージ1329を受信した場合の処理である。
3−3.送信権要求
図22は、配信装置の送信権制御フローを示す図である。
最後に、図15に示されるように、グループ呼設定完了後、配信装置106がゲートウエイ104aからTalk Burst Requestメッセージ1502を受信した場合の処理を図22を用いて説明する。
まず、ステップ2201にて、受信したTalk Burst Requestメッセージ1502の送信元IPアドレス、送信元UDPポート番号、宛先IPアドレス、宛先UDPポート番号の組が、図4に示すRTCPフローテーブル209のRTCP406に登録されているか調べる。未登録の場合は処理を終了する。登録済みの場合は、ステップ2202で、図4に示す送信権テーブル210のSSRC425がNULLか判定する。NULLでなければ移動端末のどれかが送信権を持っている状態であるので、承認不可メッセージを要求元に送信する(ステップ2203)。送信権テーブル210のSSRC425がNULLであれば、まだ誰も送信権を要求していないということなので、ステップ2204に移行する。ステップ2204では、RTCPフローテーブル209のRTCP406がTalk Burst Requestメッセージ1502に一致するフローの、RTP401を送信権テーブル210にコピーする。つまり、IPアドレス402、UDPポート403、IPアドレス404、UDPポート405を送信元IPアドレス421、送信元UDPポート422、宛先IPアドレス423、宛先UDPポート424にそれぞれコピーする。さらに受信したTalk Burst Requestメッセージ1502に含まれるSSRCをSSRC425に設定する。
ステップ2205では、Talk Burst Takenメッセージ1504を送信権要求元以外に送信し、ステップ2206ではTalk Burst Grantedメッセージ1507を送信権要求元に送信する。以上が、配信装置106がゲートウエイ104aからTalk Burst Requestメッセージ1502を受信した場合の処理である。
このようにして、シグナリング時のメッセージ処理において、各種テーブルの設定を行うことで、端末が音声情報を送信したとき、適切にコーデック変換することが可能になる。
本発明は、移動端末に限らず、様々な無線端末に適用することができる。また、コーデック変換装置について説明したが、これに限らず、プロトコル変換装置やメディア変換装置等の各種変換装置に適用することができる。
自営無線システムのネットワーク構成を示す図である。 配信装置の構成を示す図である。 コーデックテーブルの図である。 RTCPフローテーブルと送信権テーブルの図である。 配信テーブルとシーケンス番号テーブルの図である。 コーデック変換装置のハード構成を示す図である。 コーデック変換装置のメモリ内の構成を示す図である。 コーデックリソース管理テーブルとコーデック使用中マップの図である。 RTPフローテーブルとコーデック変換テーブルの図である。 RTPジッタバッファとデコードデータジッタバッファの図である。 呼制御装置が有する端末コーデックテーブルの図である。 位置登録のシーケンス図である。 グループ通信の呼接続の前半のシーケンス図である。 グループ通信の呼接続の後半のシーケンス図である。 グループ通信の呼解放のシーケンス図である。 送信権獲得のシーケンス図である。 送信権解放のシーケンス図である。 ゲートウエイと配信装置が送受信する発信メッセージと応答メッセージのフォーマットを示す図である。 配信装置とゲートウエイが送受信する着信メッセージと応答メッセージのフォーマットを示す図である。 配信装置とコーデック変換装置が送受信する呼接続メッセージのフォーマットを示す図である。 配信装置の呼設定処理フローを示す図である。 コーデック変換装置の呼設定処理フローを示す図である。 配信装置の送信権制御フローを示す図である。 配信装置の音声パケットの転送処理フローを示す図である。 コーデック変換装置の音声パケット受信処理フローを示す図である。 コーデック変換装置のデコード処理フローを示す図である。 コーデック変換装置のエンコード処理フローを示す図である。 コーデック変換装置が配信装置から受信する音声パケットのフォーマットとジッタバッファでのキュー構成を示す図である。
符号の説明
100a、b、c 移動端末
101a、b 基地局
104a、b ゲートウエイ
106 配信装置
107 コーデック変換装置
205 配信制御モジュール
208 コーデックテーブル
209 RTCPフローテーブル
210 送信権テーブル
211 配信テーブル
212 シーケンス番号テーブル
425 SSRC
521 シーケンス番号
603 デコード回路
604 エンコード回路
702 コーデック変換制御モジュール
705 コーデックリソース管理テーブル
706 コーデック使用中マップ
707 RTPフローテーブル
708 コーデック変換テーブル
709 RTPジッタバッファ
710 デコードデータジッタバッファ
1002 受信シーケンス番号
1003 SSRC
1327 着信INVITEメッセージに対するOK応答
1329 コーデック変換設定INVITEメッセージ
1330 コーデック変換設定INVITEメッセージに対するOK応答
1814 宛先アドレスリスト
2703 シーケンス番号

Claims (17)

  1. 送信権を要求した無線端末である送信端末が送信した音声情報を、配信装置がコーデック変換装置を介して又は介さないで、ゲートウエイ及び基地局を経て他の複数の無線端末に配信することで、複数の無線端末による半2重多対多の通話を実現する通信システムにおける配信装置であって、
    前記配信装置は、
    パケットを受信すると、グループ呼の識別子である通話グループ識別情報と、通話グループの呼で受信しうるパケットのソケット情報を示す受信パケット情報と、符号化方式と、現在送信権を取得している無線端末の音声情報を運ぶパケットのソケット情報を示す送信パケット情報とを対応づけて記憶した配信テーブルを検索し、受信したパケットのソケット情報と一致するエントリが前記受信パケット情報に存在するかチェックし、
    エントリが存在する場合、前記受信パケットの送信元アドレスがゲートウエイのアドレスか、コーデック変換装置のアドレスかを判定し、
    前記受信パケットがゲートウエイからのパケットである場合、通話グループ識別情報に対して、パケットのソケット情報と、現在送信権を取得している無線端末を識別するための送信権要求識別子とを対応つけて記憶した送信権テーブルを参照し、
    前記受信パケットのソケット情報および前記受信パケットに含まれる送信権要求識別子が、前記送信権テーブルのエントリと一致する場合は、前記受信パケットは他のグループメンバに配信すべきパケットであると判断し、
    前記配信テーブルを参照し、前記受信パケットの前記受信パケット情報に対応して登録されている送信パケット情報に従い、また、前記送信パケット情報のソケット情報が複数の場合は前記受信パケットを複製して、該当するゲートウエイ宛及び/又は前記コーデック変換装置宛の送信パケットを生成し、
    さらに、生成した送信パケットが前記コーデック変換装置宛の場合には、通話グループ識別情報に対応して、コーデック変換装置に転送する場合にパケットに付加するシーケンス番号を記憶したシーケンス番号テーブルを参照し、前記シーケンス番号を前記送信パケットに挿入し、前記シーケンス番号テーブルのシーケンス番号をインクリメントし、
    完成した送信パケットを送信する
    前記配信装置。
  2. 請求項1に記載の配信装置において、
    前記受信パケットの送信元アドレスがゲートウエイのアドレスか、コーデック変換装置のアドレスかを判定した結果、前記受信パケットの送信元アドレスがコーデック変換装置である場合、
    前記配信テーブルを参照し、受信パケット情報に対応して登録されている送信パケット情報に従い、パケットを生成し、該当するゲートウエイへパケットを送信するようにした配信装置。
  3. 請求項1に記載の配信装置であって、
    前記コーデック変換装置が有する符号化変換手段の全ての符号化方式を、無線端末への着信メッセージに記述することを特徴とする配信装置。
  4. 送信権を要求した無線端末である送信端末が送信した音声情報を、配信装置がコーデック変換装置を介して又は介さないで、ゲートウエイ及び基地局を経て他の複数の無線端末に配信することで、複数の無線端末による半2重多対多の通話を実現する通信システムにおけるコーデック変換装置であって、
    前記コーデック変換装置は、
    前記配信装置から受信したパケットに基づき、通話グループ識別情報に対して、配信装置のポート番号と、受信シーケンス番号と、現時点で送信権を有していると予想される無線端末を識別するための送信権要求識別子とを記憶したジッタバッファを参照し、

    (a)前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、受信パケットの配信装置のポート番号及び送信権要求識別子が一致しなかった場合は、
    i) 前記ジッタバッファの受信シーケンス番号の方が前記受信パケットのシーケンス番号よりも新しい場合、送信権を獲得した無線端末が切り替わった後、切替前の古いパケットが到着したものと判定して、パケットを廃棄し、
    一方、
    ii) 前記ジッタバッファの受信シーケンス番号が0又は空白の場合、グループ呼設定後初めてのパケットであると判断し、または、前記受信パケットのシーケンス番号の方が前記ジッタバッファの受信シーケンス番号と比べ新しい場合、前記受信パケットは送信権を獲得した無線端末が切り替わった最初のパケットと判定して、前記受信パケットのシーケンス番号の値を前記ジッタバッファの受信シーケンス番号にコピーし、前記受信パケットの送信権要求識別子を前記ジッタバッファの送信権要求識別子にコピーすることで前記ジッタバッファのバッファを新しく構築し、

    (b) 前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、前記受信パケットの配信装置のポート番号及び送信権要求識別子が一致した場合は、前記受信パケットのシーケンス番号と前記ジッタバッファの受信シーケンス番号を比較し、前記受信パケットのシーケンス番号の方が大きければ、その値を前記ジッタバッファの受信シーケンス番号に設定し、前記受信パケットを、符号化変換手段への入力バッファの入力待ちキューに、キューの先頭からタイムスタンプが小さい順に並ぶように挿入し、前記符号化変換手段により、第1の符号化方式から第2の符号化方式に前記受信パケットを変換する
    前記コーデック変換装置。
  5. 請求項4に記載のコーデック変換装置において、
    前記配信装置からパケットを受信すると、通話グループ識別情報に対して、前記コーデック変換装置の使用するアドレスとポート番号と、前記配信装置の使用するアドレスと、符号化方式とが記憶されたフローテーブルを検索し、
    前記配信装置から受信した第1の符号化方式のパケットのポート番号のエントリが前記フローテーブルにあるか否か判断し、エントリが前記フローテーブルにない場合、前記受信パケットを廃棄すること
    を特徴とするコーデック変換装置。
  6. 請求項4に記載のコーデック変換装置において、
    通話グループ識別情報に対して、配信装置ポート番号、前記配信装置UDPポート番号が示す配信装置の受信フローを入力すべきデコーダを示すデコーダID、前記デコーダIDが示すデコーダが出力した音声情報を入力すべきエンコーダを示すエンコーダID、前記エンコーダIDが示すエンコーダが出力した音声情報を送出すべきフローを示すコーデック変換装置ポート番号を記憶したにコーデック変換テーブルを参照して、前記通話グループ識別情報及び配信装置ポート番号に基づき、前記入力バッファからの前記受信パケットを前記デコーダIDのデコーダでデコードし、さらに前記エンコーダIDのエンコーダでエンコードして、送信パケットを生成し、ネットワークに送出すること
    を特徴とするコーデック変換装置。
  7. 請求項4に記載のコーデック変換装置であって、
    送信権を承認された前記無線端末が他の無線端末に切り替わった場合は、切替前の前記無線端末の音声情報を廃棄することを特徴とするコーデック変換装置。
  8. 請求項4に記載のコーデック変換装置であって、
    音声情報を前記符号化変換手段で変換した後、現時点で選択した送信端末の音声情報の符号化方式を識別し、
    前記符号化方式が前記符号化変換手段の符号化方式と異なる場合は、変換済みの音声情報を廃棄することを特徴とするコーデック変換装置。
  9. 請求項4に記載のコーデック変換装置であって、
    無線端末からの音声情報が受信できず、以後、前記符号化変換手段に入力する音声情報がない場合に、前記符号化変換手段にダミーデータを入力することを特徴とする、コーデック変換装置。
  10. 送信権を要求した無線端末である送信端末が送信した音声情報を、配信装置がコーデック変換装置を介して又は介さないで、ゲートウエイ及び基地局を経て他の複数の無線端末に配信することで、複数の無線端末による半2重多対多の通話を実現する通信システムであって、

    前記配信装置は、
    パケットを受信すると、グループ呼の識別子である通話グループ識別情報と、通話グループの呼で受信しうるパケットのソケット情報を示す受信パケット情報と、符号化方式と、現在送信権を取得している無線端末の音声情報を運ぶパケットのソケット情報を示す送信パケット情報とを対応づけて記憶した配信テーブルを検索し、受信したパケットのソケット情報と一致するエントリが前記受信パケット情報に存在するかチェックし、
    エントリが存在する場合、前記受信パケットの送信元アドレスがゲートウエイのアドレスか、コーデック変換装置のアドレスかを判定し、
    前記受信パケットがゲートウエイからのパケットである場合、通話グループ識別情報に対して、パケットのソケット情報と、現在送信権を取得している無線端末を識別するための送信権要求識別子とを対応つけて記憶した送信権テーブルを参照し、
    前記受信パケットのソケット情報および前記受信パケットに含まれる送信権要求識別子が、前記送信権テーブルのエントリと一致する場合は、前記受信パケットは他のグループメンバに配信すべきパケットであると判断し、
    前記配信テーブルを参照し、前記受信パケットの前記受信パケット情報に対応して登録されている送信パケット情報に従い、また、前記送信パケット情報のソケット情報が複数の場合は前記受信パケットを複製して、該当するゲートウエイ宛及び/又は前記コーデック変換装置宛の送信パケットを生成し、
    さらに、生成した送信パケットが前記コーデック変換装置宛の場合には、通話グループ識別情報に対応して、コーデック変換装置に転送する場合にパケットに付加するシーケンス番号を記憶したシーケンス番号テーブルを参照し、前記シーケンス番号を前記送信パケットに挿入し、前記シーケンス番号テーブルのシーケンス番号をインクリメントし、
    完成した送信パケットを送信し、

    及び、

    前記コーデック変換装置は、
    前記配信装置から受信したパケットに基づき、通話グループ識別情報に対して、配信装置のポート番号と、受信シーケンス番号と、現時点で送信権を有していると予想される無線端末を識別するための送信権要求識別子とを記憶したジッタバッファを参照し、

    (a)前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、受信パケットの配信装置のポート番号及び送信権要求識別子が一致しなかった場合は、
    i) 前記ジッタバッファの受信シーケンス番号の方が前記受信パケットのシーケンス番号よりも新しい場合、送信権を獲得した無線端末が切り替わった後、切替前の古いパケットが到着したものと判定して、パケットを廃棄し、
    一方、
    ii) 前記ジッタバッファの受信シーケンス番号が0又は空白の場合、グループ呼設定後初めてのパケットであると判断し、または、前記受信パケットのシーケンス番号の方が前記ジッタバッファの受信シーケンス番号と比べ新しい場合、前記受信パケットは送信権を獲得した無線端末が切り替わった最初のパケットと判定して、前記受信パケットのシーケンス番号の値を前記ジッタバッファの受信シーケンス番号にコピーし、前記受信パケットの送信権要求識別子を前記ジッタバッファの送信権要求識別子にコピーすることで前記ジッタバッファのバッファを新しく構築し、

    (b) 前記ジッタバッファの配信装置のポート番号及び送信権要求識別子と、前記受信パケットの配信装置のポート番号及び送信権要求識別子が一致した場合は、前記受信パケットのシーケンス番号と前記ジッタバッファの受信シーケンス番号を比較し、前記受信パケットのシーケンス番号の方が大きければ、その値を前記ジッタバッファの受信シーケンス番号に設定し、前記受信パケットを、符号化変換手段への入力バッファの入力待ちキューに、キューの先頭からタイムスタンプが小さい順に並ぶように挿入し、前記符号化変換手段により、第1の符号化方式から第2の符号化方式に前記受信パケットを変換する
    前記通信システム。
  11. 請求項10に記載の通信システムにおいて、
    前記配信装置は、
    前記受信パケットの送信元アドレスがゲートウエイのアドレスか、コーデック変換装置のアドレスかを判定した結果、前記受信パケットの送信元アドレスがコーデック変換装置である場合、
    前記配信テーブルを参照し、受信パケット情報に対応して登録されている送信パケット情報に従い、パケットを生成し、該当するゲートウエイへパケットを送信するようにした通信システム。
  12. 請求項10に記載の通信システムであって、
    前記配信装置は、
    前記コーデック変換装置が有する符号化変換手段の全ての符号化方式を、無線端末への着信メッセージに記述することを特徴とする通信システム。
  13. 請求項10に記載の通信システムにおいて、
    前記コーデック変換装置は、
    前記配信装置からパケットを受信すると、通話グループ識別情報に対して、前記コーデック変換装置の使用するアドレスとポート番号と、前記配信装置の使用するアドレスと、符号化方式とが記憶されたフローテーブルを検索し、
    前記配信装置から受信した第1の符号化方式のパケットのポート番号のエントリが前記フローテーブルにあるか否か判断し、エントリが前記フローテーブルにない場合、前記受信パケットを廃棄すること
    を特徴とする通信システム。
  14. 請求項10に記載の通信システムにおいて、
    前記コーデック変換装置は、
    通話グループ識別情報に対して、配信装置ポート番号、前記配信装置UDPポート番号が示す配信装置の受信フローを入力すべきデコーダを示すデコーダID、前記デコーダIDが示すデコーダが出力した音声情報を入力すべきエンコーダを示すエンコーダID、前記エンコーダIDが示すエンコーダが出力した音声情報を送出すべきフローを示すコーデック変換装置ポート番号を記憶したにコーデック変換テーブルを参照して、前記通話グループ識別情報及び配信装置ポート番号に基づき、前記入力バッファからの前記受信パケットを前記デコーダIDのデコーダでデコードし、さらに前記エンコーダIDのエンコーダでエンコードして、送信パケットを生成し、ネットワークに送出すること
    を特徴とする通信システム。
  15. 請求項10に記載の通信システムであって、
    前記コーデック変換装置は、
    送信権を承認された前記無線端末が他の無線端末に切り替わった場合は、切替前の前記無線端末の音声情報を廃棄することを特徴とする通信システム。
  16. 請求項10に記載の通信システムであって、
    前記コーデック変換装置は、
    音声情報を前記符号化変換手段で変換した後、現時点で選択した送信端末の音声情報の符号化方式を識別し、
    前記符号化方式が前記符号化変換手段の符号化方式と異なる場合は、変換済みの音声情報を廃棄することを特徴とする通信システム。
  17. 請求項10に記載の通信システムであって、
    前記コーデック変換装置は、
    無線端末からの音声情報が受信できず、以後、前記符号化変換手段に入力する音声情報がない場合に、前記符号化変換手段にダミーデータを入力することを特徴とする通信システム。
JP2007313510A 2007-12-04 2007-12-04 配信装置及びコーデック変換装置、通信システム Expired - Fee Related JP5044380B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007313510A JP5044380B2 (ja) 2007-12-04 2007-12-04 配信装置及びコーデック変換装置、通信システム
US12/328,132 US7991419B2 (en) 2007-12-04 2008-12-04 Press-talk server, transcoder, and communication system
CN2008101795693A CN101453793B (zh) 2007-12-04 2008-12-04 分配装置及编解码器变换装置、通信系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007313510A JP5044380B2 (ja) 2007-12-04 2007-12-04 配信装置及びコーデック変換装置、通信システム

Publications (2)

Publication Number Publication Date
JP2009141481A JP2009141481A (ja) 2009-06-25
JP5044380B2 true JP5044380B2 (ja) 2012-10-10

Family

ID=40676233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007313510A Expired - Fee Related JP5044380B2 (ja) 2007-12-04 2007-12-04 配信装置及びコーデック変換装置、通信システム

Country Status (3)

Country Link
US (1) US7991419B2 (ja)
JP (1) JP5044380B2 (ja)
CN (1) CN101453793B (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0500483D0 (en) * 2005-01-11 2005-02-16 Nokia Corp Multi-party sessions in a communication system
EP1781053B1 (en) * 2005-10-28 2012-05-02 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Methods and apparatus for push to talk type service
JP5025440B2 (ja) * 2007-12-04 2012-09-12 株式会社日立国際電気 通信システム及びゲートウェイ
US8401582B2 (en) 2008-04-11 2013-03-19 Voxer Ip Llc Time-shifting for push to talk voice communication systems
CN101369880B (zh) * 2008-09-28 2012-09-19 华为技术有限公司 一种时间标签跳变的检测处理方法和装置
JP2010288155A (ja) 2009-06-12 2010-12-24 Ntt Docomo Inc 受信局及び移動通信方法
US8898317B1 (en) * 2009-12-02 2014-11-25 Adtran, Inc. Communications system and related method of distributing media
JP4861491B2 (ja) 2010-03-17 2012-01-25 株式会社東芝 電話システム及び電話交換装置及び電話交換装置で用いられる接続制御方法
JP2012029183A (ja) * 2010-07-27 2012-02-09 Brother Ind Ltd 通信装置、通信システム、通信方法、及び通信プログラム
US9374193B2 (en) 2010-09-29 2016-06-21 Qualcomm Incorporated Systems and methods for communication of channel state information
US9806848B2 (en) 2010-09-29 2017-10-31 Qualcomm Incorporated Systems, methods and apparatus for determining control field and modulation coding scheme information
US9813135B2 (en) * 2010-09-29 2017-11-07 Qualcomm, Incorporated Systems and methods for communication of channel state information
US9882624B2 (en) 2010-09-29 2018-01-30 Qualcomm, Incorporated Systems and methods for communication of channel state information
US9831983B2 (en) 2010-09-29 2017-11-28 Qualcomm Incorporated Systems, methods and apparatus for determining control field and modulation coding scheme information
US9602298B2 (en) 2010-09-29 2017-03-21 Qualcomm Incorporated Methods and apparatuses for determining a type of control field
US9077498B2 (en) 2010-09-29 2015-07-07 Qualcomm Incorporated Systems and methods for communication of channel state information
US10090982B2 (en) 2010-09-29 2018-10-02 Qualcomm Incorporated Systems and methods for communication of channel state information
CN102130773B (zh) * 2011-02-25 2012-12-19 华为技术有限公司 群组通信的方法和用于群组通信的装置
CN103893967A (zh) * 2012-12-27 2014-07-02 昆山科技大学 无线游戏装置的多重操作输入与音乐输出控制系统及方法
JP6449568B2 (ja) * 2014-06-24 2019-01-09 京セラ株式会社 携帯端末及び制御方法
CN105743728A (zh) * 2014-12-11 2016-07-06 杭州迪普科技有限公司 一种保证数据块顺序的方法及装置
CN106464691B (zh) * 2015-03-12 2020-01-10 华为技术有限公司 一种实时传输协议rtp包传输方法和装置
US9462426B1 (en) * 2015-04-03 2016-10-04 Cisco Technology, Inc. System and method for identifying talk burst sources
WO2018055742A1 (ja) * 2016-09-23 2018-03-29 三菱電機株式会社 マスタ機器およびトークン巡回方法
US10862932B2 (en) * 2018-03-06 2020-12-08 Mutualink, Inc. Implementing push-to-talk in a multimedia conferencing system
US11653334B2 (en) * 2020-11-24 2023-05-16 Verizon Patent And Licensing Inc. Systems and methods for reducing transcoding resource allocation during call setup to multiple terminations
CN116599565A (zh) * 2023-05-17 2023-08-15 湖南迈克森伟电子科技有限公司 应用于激光雷达的信号处理方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7801953B1 (en) * 2001-02-12 2010-09-21 Nortel Networks Limited Push-to-talk wireless telecommunications system utilizing an voice-over-IP network
US7170863B1 (en) * 2001-02-12 2007-01-30 Nortel Networks Limited Push-to-talk wireless telecommunications system utilizing a voice-over-IP network
US6665283B2 (en) * 2001-08-10 2003-12-16 Motorola, Inc. Method and apparatus for transmitting data in a packet data communication system
US7415282B2 (en) * 2004-07-31 2008-08-19 Nextel Communications Inc. Wireless communication system providing seamless switching between full-duplex and half-duplex modes
JP4628798B2 (ja) * 2005-01-13 2011-02-09 Kddi株式会社 通信端末装置
KR101061373B1 (ko) * 2005-04-11 2011-09-02 삼성전자주식회사 푸쉬투토크 오버 셀룰러 망의 미디어 저장 서비스 수행 방법과 PoC 서버 및 PoC 클라이언트
DE102005037569B4 (de) * 2005-08-09 2011-03-03 Infineon Technologies Ag Verfahren zum Vergeben eines Kommunikationsrechts, Kommunikationskonferenz-Sitzung-Server und Kommunikationskonferenz-Sitzung-Server-Anordnung
US8908577B2 (en) * 2005-12-02 2014-12-09 Qualcomm Incorporated Solving IP buffering delays in mobile multimedia applications with translayer optimization
KR101307021B1 (ko) * 2005-12-28 2013-09-11 밴트릭스 코오퍼레이션 멀티미디어 세션을 위한 멀티-유저 실시간 트랜스코딩시스템 및 방법
GB2438913A (en) * 2006-06-09 2007-12-12 Matsushita Electric Ind Co Ltd Reducing delays in Push to Talk over cellular systems
US8005497B2 (en) * 2007-08-20 2011-08-23 Cisco Technology, Inc. Floor control over high latency networks in an interoperability and collaboration system
US8032169B2 (en) * 2007-11-28 2011-10-04 Motorola Solutions, Inc. System and method for providing low overhead floor control in a distributed peer-to-peer communications network
US8112078B2 (en) * 2008-03-14 2012-02-07 Critical Rf, Inc. System, method and program for configuring a mobile terminal to function as a two-way radio
US8023982B2 (en) * 2008-05-12 2011-09-20 Qualcomm Incorporated Wireless communication device having dynamically escalated media transmission handling
US8316091B2 (en) * 2008-12-01 2012-11-20 At&T Mobility Ii Llc Content management for wireless digital media frames
US20100137006A1 (en) * 2008-12-02 2010-06-03 Broadcom Corporation Communications device with vehicle interface and methods for use therewith
US8170596B2 (en) * 2009-01-23 2012-05-01 Qualcomm Incorporated Secondary data transmission in a group communication transmission data stream

Also Published As

Publication number Publication date
CN101453793A (zh) 2009-06-10
US7991419B2 (en) 2011-08-02
CN101453793B (zh) 2011-09-07
JP2009141481A (ja) 2009-06-25
US20090143029A1 (en) 2009-06-04

Similar Documents

Publication Publication Date Title
JP5044380B2 (ja) 配信装置及びコーデック変換装置、通信システム
CN1934796B (zh) 模式转换通信系统和方法
KR101486607B1 (ko) 적극적인 화자 식별
CN110012366B (zh) 一种用于公专网ip互联下的宽窄带融合通信系统及方法
JP4699456B2 (ja) 待ち時間を低減するグループ通信要求のために持続値を利用した無線通信システム
JP4938086B2 (ja) 端末に発言権を付与する方法、システム、およびプッシュ・トゥー・トーク・オーバー・セルラー・サーバ
KR100652646B1 (ko) 사용자 서비스 품질 향상을 위한 피티티 서비스 시스템 및방법
EP1848189A1 (en) A method for implementing a multi-media ringback and a system thereof
US7983199B1 (en) Voice over internet protocol push-to-talk communication system
KR20070118667A (ko) 무선 원격통신 장치들 간의 그룹 통신들에 있어서 voip데이터 패킷들을 분배하기 위한 시스템 및 방법
US20060178160A1 (en) System and method for management of communication rights
US20090299735A1 (en) Method for Transferring an Audio Stream Between a Plurality of Terminals
CN101132554B (zh) 通信终端设备、会议服务器装置以及相关方法
CN101860547A (zh) 组呼或广播呼叫接续的控制方法、装置及系统
CN100407817C (zh) 一种PoC会话中的发言权控制方法
WO2020062530A1 (zh) 一种基于无中心应用软件的通信方法及装置
RU2347328C2 (ru) Способ и устройство для поискового вызова с коротким интервалом периодического прослушивания канала поискового вызова
JP4650626B2 (ja) 発言権管理システム、発言権管理方法、及びプログラム
CN101848283A (zh) 呼叫拒接转移的方法、装置及系统和终端
WO2020066105A1 (ja) 中継装置および音声通信のモニタ方法
WO2006116944A1 (fr) Procédé et système de transmission des données de supports d’un service de communication à parties multiples
CN100372399C (zh) 一种实现集群业务的方法
CN101111035A (zh) 在ptt终端中实现语音缓冲的装置和方法
WO2007128190A1 (fr) Procédé servant à rendre incidents un contexte de pont de conférence et un contexte de branche d'appel, passerelle multimédia et système associés
CN106302073A (zh) 一种实现呼叫的方法和装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120615

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120703

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120713

R150 Certificate of patent or registration of utility model

Ref document number: 5044380

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150720

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees