JP2007096564A - 通信サーバ装置、及びプログラム - Google Patents

通信サーバ装置、及びプログラム Download PDF

Info

Publication number
JP2007096564A
JP2007096564A JP2005281106A JP2005281106A JP2007096564A JP 2007096564 A JP2007096564 A JP 2007096564A JP 2005281106 A JP2005281106 A JP 2005281106A JP 2005281106 A JP2005281106 A JP 2005281106A JP 2007096564 A JP2007096564 A JP 2007096564A
Authority
JP
Japan
Prior art keywords
call processing
processing
call
key information
message
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.)
Pending
Application number
JP2005281106A
Other languages
English (en)
Inventor
Kenichi Sakurai
健一 櫻井
Tatsushi Fukuhara
龍志 福原
Masahiko Kagawa
将彦 賀川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005281106A priority Critical patent/JP2007096564A/ja
Priority to US11/329,700 priority patent/US7711096B2/en
Publication of JP2007096564A publication Critical patent/JP2007096564A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54541Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
    • H04Q3/54566Intelligent peripherals, adjunct processors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13103Memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13106Microprocessor, CPU

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Telephonic Communication Services (AREA)
  • Exchange Systems With Centralized Control (AREA)

Abstract

【課題】 テレコムサーバでの単位時間当たりの呼処理の処理数を増加させる。
【解決手段】 格納手段1は、受信した呼処理メッセージを格納して受信順を管理する。保持手段2は、当該呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持しておく。呼処理手段3は、保持手段2で保持されているキー情報及び要素情報に基づいて、格納手段1に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して実行する。
【選択図】図1

Description

本発明は、データ交換技術に関し、特に、通信交換機能を提供するコンピュータサーバシステムであるテレコムサーバの処理性能を向上させる技術に関する。
本発明に関連する技術として、例えば特許文献1には、並列計算機でデータを共有する際の同期オーバーヘッドを軽減するために、並列処理の結果の情報を各計算機の記憶装置における同一アドレスに対して一度に書き込むという演算処理技術が開示されている。
特開平2−132575号公報
いわゆるIP電話サービスを提供する従来のテレコムサーバでは、SIP(Session Initiation Protocol )等の呼制御プロトコルに従い、呼処理メッセージを受信する度に逐次的に対応する処理を行っていたため、ユーザ端末からの呼処理メッセージを短時間に過大に受信すると処理が追いつかなくなり、通話に支障が生じることがある。
テレコムサーバでは、図12には「HA」として示されているメッセージ送受信のための制御処理等のような高レベルの処理が、低レベルの処理である呼処理よりも優先的に実行される。従って、テレコムサーバに対する処理負荷が低い場合には、同図(a)に例示するように、1CPUのコンピュータシステムからなるテレコムサーバにおいて、呼処理メッセージの受信から当該メッセージに対する応答までに3msで完了していた呼処理の所要時間が、処理負荷が高くなると、同図(b)に例示するように、4msへと延びてしまう。このような処理時間の延伸の程度は使用するコンピュータシステムの構成や処理の内容により異なるが、図13に示す実測例では、概ね70%のCPU使用率を超えるような処理負荷を与えると、処理時間の延伸(単位時間当たりに処理可能な呼の数の頭打ち)が顕著に観測されている。なお、図13において、BHCAは、処理可能な最繁時呼数(Busy Hour Call Attempts )である。
ここで、テレコムサーバとして利用するコンピュータシステムとして、マルチCPUのシステムを使用することで、このような高い処理負荷に対処するという手法がある。ところが、呼処理のひとつである、メモリやデータベース等の記憶装置上に格納されている各種の情報の更新処理は、データの矛盾の発生の防止のために、排他的な実行、すなわち、呼処理としてテレコムサーバ上で並行して実行中の他の処理を一時的に停止した上で単独で実行をさせなければならない。そのため、マルチCPUのシステムとしてコンピュータシステムの処理能力を向上させたとしても、テレコムサーバとしての処理能力向上の効果は限定的なものとなってしまう。
図14について説明する。同図は、テレコムサーバで行われる制御処理のおおよその流れをフローチャートで示したものである。なお、同図において、S1002、S1003、及びS1007の処理は、このS1002及びS1003は、図12において「HA」と示されていた送受信制御処理に相当し、S1004からS1006にかけての処理が呼処理に相当する。
まず、S1001において、コンピュータシステムのOS(オペレーティング・システム)により、送られてきた信号(呼処理メッセージ)を受信して受信キューへ入れる処理が行われている。ここで、送受信制御処理として、S1002において、所定の間隔で受信キューのチェックを行ってその受信キューに存在する受信信号を1つずつ取り込む処理が行われ、続くS1003において、受信信号を取り込めたことによって信号の受信が確認されたときには、その受信信号を呼処理へ渡す処理が行われる。
呼処理では、まず、S1004において信号分析処理が行われる。すなわち、受け取った受信信号の内容の分析、例えば、ログイン要求や通話開始要求等といった受信メッセージの種別を識別する等の処理を行う。この分析処理において、当該受信信号が有効なものであれば、その受信信号の内容、例えば受信信号の発信元を示す情報や、その発信元の状態を示す情報など、をメモリやデータベース等の記憶装置へ書き込む処理が行われる。
S1005ではルーティング処理が行われる。すなわち、記憶装置上のルーティングデータを参照して、受け取った受信信号に示されている宛先へ当該受信信号の内容を届けるために適切な送信先を決定する処理が行われる。
S1006では送信処理が行われる。すなわち、記憶装置に書き込まれている受信信号の内容に基づいて送信信号(受信信号に対応する応答の信号)を作成し、作成した送信信号を送受信制御処理へ渡して送信を依頼する処理が行われる。
送受信制御処理では、S1007において、受け取った送信信号を送信キューへ入れる処理が行われる。
S1008では、コンピュータシステムのOSにより、送信キューに存在する送信信号を、上述のルーティング処理によって決定された送信先へ送信する処理が行われる。
テレコムサーバでは以上のような制御処理が行われる。
この制御処理のうち、S1004からS1006にかけての呼処理は、複数のスレッドに分割できるので、マルチCPUのコンピュータシステムによるマルチスレッド処理が可能である。しかし、S1004の信号分析処理は、受け取った受信信号の内容を記憶装置へ書き込む処理を含むため、排他制御を行わなければならない。
図15は、テレコムサーバで行われる上述した制御処理をCPU個数の異なるコンピュータシステムにおいて実行させた場合における、処理の進行の様子を模式的に示しており、(a)は1CPUの場合を、(b)は2CPUの場合を、それぞれ表している。この(a)と(b)とを対比すると分かるように、CPU個数を2倍にしても、第一CPUで書き込み処理が実行される期間においては第二CPUに対し排他制御が行われ、本来の処理の実行を停止させてしまう等の理由により、上述の制御処理の処理能力は単純に2倍とはならず、呼処理の一部処理の処理時間が延伸してしまっている。
図16は、テレコムサーバとして使用するコンピュータシステムのCPU個数と呼処理の処理数との関係の実測例である。同図の例では、CPUの個数を増やしても、30万BHCA程度で処理数の増加が頭打ちとなってしまっており、CPUを4個としたときには、排他制御による他処理の実行停止の影響が大きくなるために、3個の場合よりもむしろ処理数が減少してしまっている。
本発明は上述した問題に鑑みてなされたものであり、その解決しようとする課題は、テレコムサーバでの単位時間当たりの呼処理の処理数を増加させることである。
図1について説明する。同図は、本発明に係る通信サーバ装置の基本構成を示している。この通信サーバ装置は、通信交換機能を提供するものである。
図1において、格納手段1は、受信した呼処理メッセージを格納して受信順を管理する。保持手段2は、当該呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持しておく。
呼処理手段3は、保持手段2で保持されているキー情報及び要素情報に基づいて、格納手段1に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して実行する。
上述した構成によれば、呼処理において排他制御が必要となるキー情及び要素情報の書き込みの処理の実行回数が、呼処理メッセージの受信の度に行っていた従来の場合に比べて少なくなるので、単位時間当たりの呼処理の処理数が増加する。
なお、上述した通信サーバ装置において、キー情報は例えば当該キー情報が含まれていた呼処理メッセージの発信元を示す情報であり、要素情報は例えば当該発信元の状態を表す情報である。
また、上述した通信サーバ装置において、当該通信サーバ装置による通信交換機能の提供のための処理の負荷の高低を判定する判定手段を更に有し、呼処理手段3は、当該処理の負荷が高いとの判定結果を当該判定手段が下したときには、当該呼処理の所定時間間隔毎の一括実行を行い、当該負荷が低いとの判定結果を当該判定手段が下したときには、当該呼処理メッセージを受信する度に直ちに当該呼処理メッセージに対する呼処理を実行するように構成してもよい。
なお、このとき、判定手段は、たとえば、呼処理手段として機能する演算装置の利用率に基づいて前述の処理の負荷の高低を判定するようにしてもよい。
この構成によれば、処理の負荷が低い場合には、即時処理を重視して従来と同様の処理が行われる一方で、高負荷時には高い処理能力を提供することができる。
なお、通信交換機能をコンピュータで提供させるためのプログラムであって、受信した呼処理メッセージを格納部に格納して受信順を管理する処理と、当該呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持部で保持しておく処理と、当該保持部で保持されている当該キー情報及び当該要素情報に基づいて、当該格納部に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して行う処理と、をコンピュータに行わせるためのプログラムも本発明に係るものであり、当該プログラムを当該コンピュータによって実行させることにより、上述した本発明に係る通信サーバ装置と同様の作用・効果を奏するので、前述した課題が解決される。
本発明によれば、以上のようにすることにより、テレコムサーバでの単位時間当たりの呼処理の処理数が増加するという効果を奏する。
以下、本発明の実施の形態を図面に基づいて説明する。
まず、本発明を実施するテレコムサーバの動作原理について、図2を参照しながら説明する。
このテレコムサーバ10では、自身で行う呼処理における処理負荷の高低の判定を行い、この判断結果に応じて処理の手法を切り替える。ここで、処理負荷が低いと判定した場合には、テレコムサーバ10は、同図上側の処理の流れに示されているように、上り伝送路から信号(呼処理メッセージ)を受信する度に呼処理11を直ちに実行して受信信号に対応する応答の信号を下り伝送路へ送信する。一方、処理負荷が低いと判断した場合には、テレコムサーバ10は、同図下側の処理の流れに示されているように、上り伝送路から受信した信号に対し新規処理12を行い、受信信号を一旦バッファリングと、その信号の内容に応じた当該信号のマージ(統合)とを行った上で一括して呼処理11を実行するようにする。
次に図3について説明する。同図は、本発明を実施するテレコムサーバの機能ブロック図である。テレコムサーバとして機能するコンピュータシステムのCPUでは、OS20、HAミドルウェア30、及び呼処理APL(アプリケーションプログラム)40が実行される。
まず、OS20の実行により、送られてきた信号(呼処理メッセージ)を受信して受信キュー21へ入れる処理が行われている。ここで、所定の間隔で受信キュー21のチェックを行い、受信キュー21に存在する受信信号を1つずつ取り出して呼処理APL40へと渡す処理である、受信キュー取り出し処理31がHAミドルウェア30の実行により行われる。
呼処理APL40が実行されると、まず、コンピュータシステムのCPUの使用率を分析してその高低を判定する処理41が行われる。この分析処理41において、CPU使用率が低い(例えば70%以下)場合には、直ちに呼処理44を実行する。一方、CPU使用率が高い(例えば70%以上)場合には、バッファリング処理42及びマージ処理43を実行してから呼処理44を実行する。なお、バッファリング処理42及びマージ処理43を実行するか否かの判断を、CPUの使用率に基づいて行う代わりに、単位時間当たりの受信信号の受付数に基づいて行うようにしても良い。
呼処理44では、信号分析処理44a、ルーティング処理44b、及び送信処理44cが行われる。これらの処理は図14に示したS1004からS1006にかけての処理と同様であり、送信信号が作成される。
送信信号が作成されると、送信キュー繋ぎ込み処理32、すなわち、その送信信号は送信キュー22へ入れる処理がHAミドルウェア30の実行により行われる。
その後、OS20の実行により、送信キュー22に存在する送信信号が、ルーティング処理44bによって決定された送信先へ送信する処理が行われる。
次に図4について説明する。同図は、本発明を実施するテレコムサーバとして機能するコンピュータシステムのハードウェア構成を示している。
図4に示すシステムはCPU部51、ROM52、RAM53、記憶部54、入力部55、表示部56、出力部57、及び外部インタフェース58がバス50を介して相互に接続されて構成されており、CPU部51による管理の下で相互にデータ授受を行うことができる。
CPU(Central Processing Unit )部51はこのコンピュータシステム全体の動作制御を司り、呼処理を含む各種の処理を実行する1個若しくは複数の中央処理装置である。
ROM(Read Only Memory)52は、CPU部51によって実行される基本制御プログラムが予め格納されているメモリであり、この装置の起動時にCPU部51がこの基本制御プログラムを実行することによってこの装置全体の動作の基本的な制御がCPU部51によって行なわれる。
RAM(Random Access Memory)53は、各種制御プログラムをCPU部51が実行するときにワークメモリとして使用され、また各種のデータの一時的な格納領域として必要に応じて用いられるメインメモリとしても機能するメモリである。
記憶部54は例えばHDD(Hard Disk Drive )を備えて構成されており、このシステムで実行される各種の制御処理をCPU部51に行わせるための制御プログラムが予め格納されている。
入力部55は外部からの入力を受け取ってその入力の内容をCPU部51に渡すものであり、例えばキーボードやマウスなどといったこの装置を操作する操作者からの指示を受け取る入力装置を備えている。また、入力部55は、FD(Flexible Disk)、CD−ROM(Compact Disc-ROM)、DVD−ROM(Digital Versatile Disc-ROM)、MO(Magneto-Optics)ディスクなどといった可搬型の記録媒体の読出装置を必要に応じて備えて構成される。
表示部56はCPU部51からの指示に応じた各種の情報の表示を行うものであり、例えばCRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)を備えて構成される。
出力部57はCPU部51からの指示に応じた各種の情報の出力を行うものであり、例えば表示部56での表示内容をそのまま用紙に印刷するためのプリンタ装置などである。
外部インタフェース58は、このシステムを伝送路に接続して他の機器との間での信号の授受を行う際の通信管理を行う。
以上のように、図4に示したシステムは標準的なハードウェア構成を有するコンピュータシステムであれば通常有しているものである。
次に図5について説明する。同図は、本発明を実施するテレコムサーバで行われる制御処理の流れをフローチャートで示したものである。なお、図4に示したコンピュータシステムでは、図4のシステムの記憶部54に予め格納されている各種プログラムをCPU部51が読み出して実行することによってこの処理が実現される。
図5において、S101及びS115の処理は、図3におけるOS20の実行によって行われる処理であり、S102からS103及びS114の処理は、図3におけるHAミドルウェア30の実行によって行われる処理である。また、S104からS106及びS110からS113にかけての処理は、図3における呼処理APL40の実行によって行われる処理である。
まず、S101において、送られてきた信号(呼処理メッセージ)を受信して受信キューへ入れる処理が行われている。ここで、S102において、所定の間隔で受信キューのチェックを行ってその受信キューに存在する受信信号をまとめて取り込む処理が行われ、続くS103において、受信信号を取り込めたことによって信号の受信が確認されたときには、その受信信号を呼処理APL40へ渡す処理が行われる。
呼処理APL40では、まず、S104において、CPU使用率を分析してこの高低を判定する処理が行われる。ここで、CPU使用率が低い(図5においては70%以下)と判定された場合には、図3における呼処理44に相当する処理である、S111の信号分析処理と、S112のルーティング処理と、S113の送信処理とが行われる。そして、送信信号が作成されると、S114において送信キュー繋ぎ込み処理、すなわち、その送信信号を送信キューへ入れる処理が行われ、その後、S115において、送信キューに存在する送信信号が、上述したS112のルーティング処理によって決定された送信先へ送信する処理が行われる。
これに対し、S104において、CPU使用率が高い(図5においては70%以上)と判定された場合には、S105のバッファリング処理、及びS106のパラメータのマージ処理を実行し、ここで一旦処理を終了する。その一方で、所定の時間間隔毎、例えばS102の受信信号の取り込み処理の実行周期と同一の周期でS110の周期処理を実行し、呼処理の最初の処理であるS111の信号分析処理を起動し、バッファリング及びマージがされた受信信号に対する信号分析を一括して行う。そしてその後は、S112からS115にかけての処理を行う。
次に、S105のバッファリング処理とS106のパラメータマージ処理の詳細について、図6を用いて説明する。
図6は、受信信号αの履歴データと状態情報との作成の様子を示している。ここで、受信信号αは、例えば発信元を示すキー情報Pと、キー情報Pについて対応付けられている情報(例えばキー情報Pで表される発信元の状態を表す情報)として、E1、E2、及びE3の3要素からなる要素情報(パラメータ)とを有しているものとする。
今、信号αを新規に受信したとし、その信号の内容が、同図(1)に示すように、キー情報Pについては「X」であり、また、要素情報E1、E2、及びE3については、それぞれ「A」、「D」、及び「E」であったとする。
この信号αを新規に受信した時点において、他の種類の信号(信号β、γ、…)の受信数も含めて、既に計9個の信号をテレコムサーバが受信していたとすると、テレコムサーバは、受信順の管理のために、この新規に受信した信号αに対してシーケンス番号Sとして番号「10」を付与した上で、同図(2)に示すように、新規受信信号αの内容(キー情報及び要素情報)を、信号αについての受信履歴情報テーブルに追加する。この処理がS105(図5)のバッファリングである。なお、受信履歴情報テーブルは、テレコムサーバの有する記憶装置(メモリ等)に格納される。
更に、テレコムサーバは、信号αを新規に受信すると、その直近に受信していた信号αにおけるキー情報Pが「X」であるものの要素情報E1、E2、及びE3を、図6(3)に示すように、最新の内容へと更新して記憶装置(メモリ等)で保持しておく。この処理がS106(図5)のマージ処理である。
図5のS110の周期処理により、呼処理の最初の処理であるS111の信号分析処理が起動されると、上述したようにして更新されて保持されているキー情報毎の要素情報を記憶装置へ書き込む処理が行われる。前述したように、この書き込みの処理は排他制御を伴いながら実行する必要がある。しかし、図5の処理によれば、CPU利用率が高い場合にはマージ処理が実行され、そのマージ処理によって更新された最新の状態情報のみについて書き込みの処理を行うので、全ての受信信号の状態情報について書き込みの処理を実行する場合に比べ、書き込みの処理の回数、すなわち排他制御の回数が減少する。従って、その減少分だけ他のスレッド処理が実行できるので、単位時間当たりの呼処理の処理数が増加するのである。
次に、上述した本発明の実施による、テレコムサーバの処理能力向上の効果を説明する。
図7は、テレコムサーバとして使用するコンピュータシステムのCPUが1個の場合における呼処理能力の試算例を模式的に表したものである。なお、同図の説明では、処理対象の呼処理メッセージを2.5ms間隔で受信する場合を想定する。また、HAミドルウェアによる送受信制御処理は1メッセージ当たり0.5msの処理時間を要し、また、呼処理には2msの処理時間を要するものとする。
図7において、(a)は従来のテレコムサーバの場合を表している。この場合、処理対象の呼処理メッセージに対する本来の処理時間は、受信制御処理の処理時間(0.5ms)と、呼処理の処理時間(2ms)と、送信制御処理の処理時間(0.5ms)との総和、すなわち3msである。ところが、この呼処理メッセージに対応する送信信号の送信よりも後続する呼処理メッセージが受信されるため、これに対する受信制御処理(0.5ms)と呼処理(2ms)とが優先される。これは、呼処理の処理結果として作成される送信信号を取り込む送信キューの容量が一杯になるまで続く。例えばこの送信キューの容量が40メッセージ分用意されているとすると、処理対象の呼処理メッセージを受信してから対応する送信信号を送信するまでの所要時間は、3ms+(0.5ms+2ms)×40=103msとなる。この場合、100ms当たりで処理可能な呼処理メッセージ数は38個に留まり、BHCAで単位換算すれば19万BHCAに相当する。なお、この数値は、呼処理の処理量が呼処理メッセージの受信量(100ms当たりで40個)に追いついていないことを表している。
一方、図7において、(b)は上述した本発明の実施例に係るテレコムサーバの場合を表しており、この場合には、呼処理メッセージに対して新規処理であるバッファリング処理とマージ処理とが実行される。なお、ここでは、この場合において、40個の呼処理メッセージが新規処理によって一括して処理されるものとし、この新規処理に要する処理時間は0.5msであるとする。
この場合、40個の呼処理メッセージに対し、受信制御処理(0.5ms)と、上述した新規処理(0.5ms)と、送信制御処理(0.5ms)とについては個々に実行され、呼処理(2ms)についてはまとめて1回だけ実行される。従って、処理対象の呼処理メッセージを受信してから対応する送信信号を送信するまでの所要時間は、0.5ms×3×40+2ms=62msとなる。この数値を、100ms当たりで処理可能な呼処理メッセージ数に換算すると64個となり、BHCAで単位換算すれば33万BHCAに相当する。
この図7での試算例を図13に示した実測例に反映させたものが図8である。このように、本実施例に係るテレコムサーバにより、CPUに対する負荷が高い場合に60%程度の処理能力の向上の効果が期待できる。
次に、テレコムサーバとして使用するコンピュータシステムのCPUの個数を増やした場合における呼処理能力の試算例を、図9を用いて説明する。同図は、テレコムサーバとして使用するCPU2個構成のコンピュータシステムのCPU1個当たりの呼処理能力の試算例を模式的に表したものである。なお、同図の説明では、HAミドルウェアによる送受信制御処理は1メッセージ当たり0.5msの処理時間を要し、呼処理には2msの処理時間を要するものとする。また、呼処理において排他制御が行われる場合の制御時間は1回当たり0.1msであるとし、1個のCPUが呼処理を1回実行する度に、2度の排他制御が必要であるとする。
図9において、(a)は従来のテレコムサーバの場合を表している。この場合において、1個の呼処理メッセージに対する処理のうち、排他制御が行われている時間は0.1ms×2=0.2msである。従って、並行して呼処理が実行されるCPU2個構成のコンピュータシステムでは、1個の呼処理メッセージに対する処理期間のうち0.2ms×2=0.4msの期間、排他制御が行われることとなる。ここで、従来のテレコムサーバの処理能力例として、例えば1個のCPU当たりで40個の呼処理メッセージを100msの処理時間で処理する(BHCA単位換算で20万BHCAの処理能力)とすれば、排他制御に起因する処理待ちの時間の割合は、0.4ms×40÷100ms=16%となる。
一方、図9において、(b)は上述した本発明の実施例に係るテレコムサーバの場合を表しており、この場合には、呼処理メッセージに対して新規処理であるバッファリング処理とマージ処理とが実行される。なお、ここでも、図7(b)の場合と同様、この場合においては、40個の呼処理メッセージが新規処理によって一括して処理されるものとし、この新規処理に要する処理時間は0.5msであるとする。
この場合、図7(b)において説明したように、1個のCPUが40個の呼処理メッセージをまとめて処理するときに要する時間は62msである。この処理の期間中において、排他制御が行われる時間は0.1ms×2=0.2msのみである。従って、並行して呼処理が実行されるCPU2個構成のコンピュータシステムでは、これらの呼処理メッセージに対する処理期間のうち0.2ms×2=0.4msの期間、排他制御が行われることとなる。この排他制御の時間を、100ms当たりの処理時間に換算、すなわち、図7(b)において説明した1個のCPU当たり33万BHCAの処理能力として換算すれば、0.4ms÷64ms×100ms≒0.6msとなり、排他制御に起因する処理待ちの時間の割合は、0.6ms÷100ms=0.6%となる。
以上のように、本実施例によれば、排他制御による処理待ちの時間が大幅に減少するので、マルチCPUのコンピュータシステムを使用してテレコムサーバを構成した場合におけるCPUの個数増加による処理能力の向上が効果的に反映される。この図9での試算例を図16に示した実測例に反映させたものが図10である。このように、本実施例により、排他制御による他処理の実行停止の影響が低減される結果、システムのCPU個数を増加させたときに従来技術では見られていた処理数の増加の頭打ちが解消され、システムのCPU個数に応じた処理性能の向上が期待できるようになる。
なお、上述した実施形態において、図5に示した制御処理を図4に示したコンピュータシステムで実現させるためには、図4のシステムの記憶部54に予め格納されている各種プログラムをCPU部51が読み出して実行させる代わりに、当該プログラムをコンピュータで読み取り可能な記録媒体に記録させておき、そのプログラムを記録媒体からCPU部51に読み出させて実行させるようにしてもよい。
記録させたプログラムをコンピュータで読み取ることの可能な記録媒体の例を図11に示す。同図に示すように、記録媒体としては、例えば、コンピュータ61に内蔵若しくは外付けの付属装置として備えられるRAM若しくはROM又はハードディスク装置などのメモリ62の他に、フレキシブルディスク、MO、CD−ROM、DVD−ROMなどといった可搬型記録媒体63等が利用できる。
また、記録媒体は通信回線64を介してコンピュータ61と接続される、プログラムサーバ65として機能するコンピュータが備えている記憶装置66であってもよい。この場合には、プログラムを表現するデータ信号で搬送波を変調して得られる伝送信号を、プログラムサーバ65から伝送媒体である通信回線64を通じて伝送するようにし、コンピュータ61では受信した伝送信号を復調してプログラムを再生することで当該プログラムを実行できるようになる。
その他、本発明は、上述した実施形態に限定されることなく、本発明の要旨を逸脱しない範囲内で種々の改良・変更が可能である。
なお、上記した実施の形態から次のような構成の技術的思想が導かれる。
(付記1) 通信交換機能を提供する通信サーバ装置であって、
受信した呼処理メッセージを格納して受信順を管理する格納手段と、
前記呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持しておく保持手段と、
前記保持手段で保持されている前記キー情報及び前記要素情報に基づいて、前記格納手段に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して実行する呼処理手段と、
を有することを特徴とする通信サーバ装置。
(付記2) 前記キー情報は当該キー情報が含まれていた呼処理メッセージの発信元を示す情報であり、前期要素情報は当該発信元の状態を表す情報であることを特徴とする請求項1に記載の通信サーバ装置。
(付記3) 前記通信サーバ装置による通信交換機能の提供のための処理の負荷の高低を判定する判定手段を更に有し、
前記呼処理手段は、前記処理の負荷が高いとの判定結果を前記判定手段が下したときには、前記呼処理の所定時間間隔毎の一括実行を行い、当該負荷が低いとの判定結果を前記判定手段が下したときには、前記呼処理メッセージを受信する度に直ちに当該呼処理メッセージに対する呼処理を実行する、
ことを特徴とする請求項1に記載の通信サーバ装置。
(付記4) 前記判定手段は、前記呼処理手段として機能する演算装置の利用率に基づいて前記処理の負荷の高低を判定することを特徴とする請求項2に記載の通信サーバ装置。
(付記5) 通信交換の方法であって、
受信した呼処理メッセージを格納部に格納して受信順を管理し、
前記呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持部で保持しておき、
前記保持部で保持されている前記キー情報及び前記要素情報に基づいて、前記格納部に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して行う、
ことを特徴とする通信交換方法。
(付記6) 通信交換機能をコンピュータで提供させるためのプログラムであって、
受信した呼処理メッセージを格納部に格納して受信順を管理する処理と、
前記呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持部で保持しておく処理と、
前記保持部で保持されている前記キー情報及び前記要素情報に基づいて、前記格納部に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して行う処理と、
をコンピュータに行わせるためのプログラム。
本発明に係る通信サーバ装置の基本構成を示す図である。 本発明を実施するテレコムサーバの動作原理を示す図である。 本発明を実施するテレコムサーバの機能ブロック図である。 本発明を実施するテレコムサーバとして機能するコンピュータシステムのハードウェア構成を示す図である。 本発明を実施するテレコムサーバで行われる制御処理の流れをフローチャートで示した図である。 受信信号の履歴データと状態情報との作成の様子を示す図である。 テレコムサーバとして使用するコンピュータシステムのCPUが1個の場合における呼処理能力の試算例を模式的に表した図である。 図7での試算例を実測例に反映させた図である。 テレコムサーバとして使用するCPU2個構成のコンピュータシステムのCPU1個当たりの呼処理能力の試算例を模式的に表した図である。 図9での試算例を実測例に反映させた図である。 記録させたプログラムをコンピュータで読み取ることの可能な記録媒体の例を示す図である。 処理負荷が高い場合における呼処理の処理時間の延伸を説明する図である。 処理負荷が高い場合における呼処理の処理時間の延伸の実測例を示す図である。 テレコムサーバで行われる制御処理のおおよその流れをフローチャートで示した図である。 テレコムサーバで行われる制御処理をCPU個数の異なるコンピュータシステムにおいて実行させた場合における、処理の進行の様子を模式的に示した図である。 テレコムサーバとして使用するコンピュータシステムのCPU個数と呼処理の処理数との関係の実測例を示す図である。
符号の説明
1 格納手段
2 保持手段
3 呼処理手段
10 テレコムサーバ
11 呼処理
12 新規処理
20 OS
21 受信キュー
22 送信キュー
30 HAミドルウェア
31 受信キュー取り出し処理
32 送信キュー繋ぎ込み処理
40 呼処理APL
41 CPU使用率分析処理
42 バッファリング処理
43 マージ処理
44 呼処理
44a 信号分析処理
44b ルーティング処理
44c 送信処理
50 バス
51 CPU部
52 ROM
53 RAM
54 記憶部
55 入力部
56 表示部
57 出力部
58 外部インタフェース
61 コンピュータ
62 メモリ
63 可搬型記録媒体
64 通信回線
65 プログラムサーバ
66 記憶装置

Claims (5)

  1. 通信交換機能を提供する通信サーバ装置であって、
    受信した呼処理メッセージを格納して受信順を管理する格納手段と、
    前記呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持しておく保持手段と、
    前記保持手段で保持されている前記キー情報及び前記要素情報に基づいて、前記格納手段に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して実行する呼処理手段と、
    を有することを特徴とする通信サーバ装置。
  2. 前記キー情報は当該キー情報が含まれていた呼処理メッセージの発信元を示す情報であり、前記要素情報は当該発信元の状態を表す情報であることを特徴とする請求項1に記載の通信サーバ装置。
  3. 前記通信サーバ装置による通信交換機能の提供のための処理の負荷の高低を判定する判定手段を更に有し、
    前記呼処理手段は、前記処理の負荷が高いとの判定結果を前記判定手段が下したときには、前記呼処理の所定時間間隔毎の一括実行を行い、当該負荷が低いとの判定結果を前記判定手段が下したときには、前記呼処理メッセージを受信する度に直ちに当該呼処理メッセージに対する呼処理を実行する、
    ことを特徴とする請求項1に記載の通信サーバ装置。
  4. 前記判定手段は、前記呼処理手段として機能する演算装置の利用率に基づいて前記処理の負荷の高低を判定することを特徴とする請求項2に記載の通信サーバ装置。
  5. 通信交換機能をコンピュータで提供させるためのプログラムであって、
    受信した呼処理メッセージを格納部に格納して受信順を管理する処理と、
    前記呼処理メッセージに含まれているキー情報と当該キー情報に対応付けられており当該呼処理メッセージに含まれている要素情報とを、当該呼処理メッセージの受信の度に当該キー情報毎に最新のものへと更新して保持部で保持しておく処理と、
    前記保持部で保持されている前記キー情報及び前記要素情報に基づいて、前記格納部に格納されている呼処理メッセージの各々に対する呼処理を、所定の時間間隔毎に一括して行う処理と、
    をコンピュータに行わせるためのプログラム。
JP2005281106A 2005-09-28 2005-09-28 通信サーバ装置、及びプログラム Pending JP2007096564A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005281106A JP2007096564A (ja) 2005-09-28 2005-09-28 通信サーバ装置、及びプログラム
US11/329,700 US7711096B2 (en) 2005-09-28 2006-01-11 Telecommunication server apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005281106A JP2007096564A (ja) 2005-09-28 2005-09-28 通信サーバ装置、及びプログラム

Publications (1)

Publication Number Publication Date
JP2007096564A true JP2007096564A (ja) 2007-04-12

Family

ID=37911080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005281106A Pending JP2007096564A (ja) 2005-09-28 2005-09-28 通信サーバ装置、及びプログラム

Country Status (2)

Country Link
US (1) US7711096B2 (ja)
JP (1) JP2007096564A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011191901A (ja) * 2010-03-12 2011-09-29 Oki Networks Co Ltd 信号処理装置及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2765882B2 (ja) 1988-11-14 1998-06-18 株式会社日立製作所 並列計算機,ベクトルレジスタ間データフロー同期装置およびネットワークプリセット装置
KR0155313B1 (ko) * 1995-08-21 1998-11-16 정선종 Cms에서 호처리 프로세스 부하율을 이용한 과부하 제어방법
US6160875A (en) * 1997-12-30 2000-12-12 Lg Information & Communications, Ltd. Method of managing overload of message in the communication system
US7227927B1 (en) * 2000-09-08 2007-06-05 Tekelec Scalable call processing node
JP2002094660A (ja) 2000-09-14 2002-03-29 Nec Eng Ltd 呼処理方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011191901A (ja) * 2010-03-12 2011-09-29 Oki Networks Co Ltd 信号処理装置及びプログラム

Also Published As

Publication number Publication date
US7711096B2 (en) 2010-05-04
US20070081656A1 (en) 2007-04-12

Similar Documents

Publication Publication Date Title
US20050268308A1 (en) System and method for implementing a general application program interface
US10873623B2 (en) Dynamically modifying a cluster of computing nodes used for distributed execution of a program
US9201693B2 (en) Quota-based resource management
US8321558B1 (en) Dynamically monitoring and modifying distributed execution of programs
US20110041131A1 (en) Migrating tasks across processors
US7870257B2 (en) Enhancing real-time performance for java application serving
CN110191182B (zh) 分布式文件批处理方法、装置、设备与可读存储介质
JP2007257163A (ja) 分散型プログラム実行環境における稼動品質管理方法
JP2010152838A (ja) 画像形成装置、制御方法、およびプログラム
JP2005346573A (ja) Webサービス提供方法、Webサービスシステムにおけるサーバ装置およびクライアント端末、Webサービスシステム、ならびに、Webサービスプログラムおよび記録媒体
US8938593B2 (en) Tracking ownership of memory in a data processing system through use of a memory monitor
JP3245500B2 (ja) マルチプログラミングにおける事象管理方式
JP2007096564A (ja) 通信サーバ装置、及びプログラム
JP2009157786A (ja) メッセージ送信制御方法、メッセージ送信制御装置、及びメッセージ送信制御プログラム
CN114490270A (zh) 数据采集方法和装置
CN114443248A (zh) 对象的生命周期管理方法、装置、电子设备及存储介质
JP2018170715A (ja) クラウド管理装置、クラウド管理方法、及びプログラム
JP6555908B2 (ja) 情報処理装置及びその制御方法、プログラム
US20070186213A1 (en) Task execution system
JPH09190359A (ja) アプリケーション共有システム及び該システム制御方法及び情報処理装置及びその方法
JP2014085826A (ja) キャッシュ領域管理プログラム及び方法、並びに情報処理装置
JP2021149293A (ja) 情報処理装置、方法及びプログラム
US20020032022A1 (en) Mobile telephone device and a method for rewriting software used therein
JP2020170331A (ja) 情報処理装置及びプログラム
JP2007226437A (ja) 電子交換機のプログラム入替方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100608