JP6331799B2 - Load distribution apparatus, session management system, and load distribution method - Google Patents
Load distribution apparatus, session management system, and load distribution method Download PDFInfo
- Publication number
- JP6331799B2 JP6331799B2 JP2014144446A JP2014144446A JP6331799B2 JP 6331799 B2 JP6331799 B2 JP 6331799B2 JP 2014144446 A JP2014144446 A JP 2014144446A JP 2014144446 A JP2014144446 A JP 2014144446A JP 6331799 B2 JP6331799 B2 JP 6331799B2
- Authority
- JP
- Japan
- Prior art keywords
- session
- processing
- control unit
- unit
- load
- 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.)
- Active
Links
Images
Landscapes
- Exchange Systems With Centralized Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Description
本件は、負荷分散装置、セッション管理システム、及び負荷分散方法に関する。 The present case relates to a load distribution apparatus, a session management system, and a load distribution method.
通信の需要の増加に伴って、VoIP(Voice Over Internet Protocol)技術を利用した音声通話サービスが普及している。異なる通信キャリアのネットワークにわたって音声通話サービスが提供される場合、各ネットワーク間の境界には、セッションボーダーコントローラ(SBC:Session Border Controller)と呼ばれるセッション制御装置が設置される。 With an increase in communication demand, voice call services using VoIP (Voice Over Internet Protocol) technology have become widespread. When a voice call service is provided over networks of different communication carriers, a session control device called a session border controller (SBC) is installed at the boundary between the networks.
SBCは、SIP(Session Initiation Protocol)を用いた音声通話サービスのゲートウェイである。SBCは、ネットワーク間における呼制御機能、及び各種のファイヤーウォール機能を備える。SBCは、例えば、各通信セッションについて、IPパケットの検査及び遮断、IPアドレスの監視及び変換、プロトコルの変換、帯域の監視、及びIPパケットの流入出制御などの処理を行う。 SBC is a gateway for a voice call service using SIP (Session Initiation Protocol). The SBC has a call control function between networks and various firewall functions. For example, the SBC performs processing such as IP packet inspection and blocking, IP address monitoring and conversion, protocol conversion, bandwidth monitoring, and IP packet inflow / outflow control for each communication session.
SBCは、多数(例えば最大で2万)の通信セッションを複数のセッション処理装置(専用装置または汎用サーバ)に割り当てて処理する。複数のセッション処理装置は、低コストで高い信頼性を実現するために、例えばN−ACT型構成で動作する。すなわち、複数のセッション処理装置には、装置の障害に備えた予備系専用の装置が含まれず、各セッション処理装置は、自装置に対応する他のセッション処理装置に障害が発生した場合、該セッション処理装置の処理を引き継ぐ。 The SBC allocates and processes a large number (for example, a maximum of 20,000) communication sessions to a plurality of session processing devices (dedicated devices or general-purpose servers). The plurality of session processing apparatuses operate in, for example, an N-ACT type configuration in order to realize high reliability at a low cost. That is, the plurality of session processing devices do not include a device dedicated to the standby system in preparation for a failure of the device, and each session processing device has its session when a failure occurs in another session processing device corresponding to its own device. Take over the processing of the processing device.
SBCは、保留時間を伴う音声通話やビデオオンデマンドなどを制御する場合、複数のセッション処理装置に、ラウンドロビン方式に従って複数のセッション処理装置に順次に新規のセッションの処理を割り当てることができない。このため、SBCは、各セッション処理装置が実行中のセッションの処理の負荷に基づいて、セッション処理装置に新規のセッションの処理を割り当てる。これにより、複数のセッション処理装置に負荷が分散される。 When controlling a voice call or video on demand with a holding time, the SBC cannot sequentially assign new session processing to a plurality of session processing devices according to a round robin method. Therefore, the SBC allocates a new session process to the session processing apparatus based on the processing load of the session being executed by each session processing apparatus. As a result, the load is distributed to a plurality of session processing devices.
負荷の分散に関し、例えば特許文献1には、障害が発生した計算機の負荷を、業務単位で複数の計算機に均等に分散させる点が記載されている。
Regarding the load distribution, for example,
しかし、上記の割り当て手法によると、複数のセッション処理装置のうち、実行中の通信セッションの処理の負荷が低いセッション処理装置でも、他のセッション処理装置から引き継がれる処理の負荷によっては、過負荷となる場合がある。したがって、複数のセッション処理装置間において負荷が均等に分散されず、特定のセッション処理装置に負荷が集中するおそれがある。なお、この問題は、SBCに限定されず、他種の装置にも同様に存在する。 However, according to the above allocation method, even among session processing devices having a low processing load on a communication session that is being executed, depending on the processing load inherited from other session processing devices, There is a case. Therefore, the load is not evenly distributed among the plurality of session processing devices, and the load may be concentrated on a specific session processing device. Note that this problem is not limited to the SBC, and similarly exists in other types of apparatuses.
そこで本件は上記の課題に鑑みてなされたものであり、負荷を効果的に分散する負荷分散装置、セッション管理システム、及び負荷分散方法を提供することを目的とする。 Therefore, the present invention has been made in view of the above-described problems, and an object thereof is to provide a load distribution device, a session management system, and a load distribution method that effectively distribute loads.
本明細書に記載の負荷分散装置は、通信セッションを処理する複数のセッション処理装置から、前記複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示す第1負荷情報、及び各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す第2負荷情報を取得する取得部と、前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する割り当て部とを有する。 The load distribution device described in the present specification includes, from a plurality of session processing devices that process a communication session, first load information that indicates a processing load of a communication session that is being executed in each of the plurality of session processing devices, and each An acquisition unit for acquiring second load information indicating a processing load of a communication session taken over by another session processing device to the session processing device, and the first load information and the second load information from the plurality of session processing devices. And an allocating unit that determines a session processing device to be allocated for processing a new communication session.
本明細書に記載のセッション管理システムは、通信セッションを処理する複数のセッション処理装置と、前記複数のセッション処理装置に新規の通信セッションの処理を割り当てる負荷分散装置とを有し、前記負荷分散装置は、通信セッションを処理する複数のセッション処理装置から、前記複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示す第1負荷情報、及び各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す第2負荷情報を取得する取得部と、前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する割り当て部とを有する。 The session management system described in the present specification includes a plurality of session processing devices that process a communication session, and a load distribution device that assigns processing of a new communication session to the plurality of session processing devices. The first load information indicating the processing load of the communication session being executed in each of the plurality of session processing devices from the plurality of session processing devices that process the communication session, and other session processing devices in each session processing device An acquisition unit that acquires second load information indicating the processing load of the communication session taken over from the plurality of session processing devices, based on the first load information and the second load information; And an allocating unit that determines a session processing apparatus to be processed.
本明細書に記載の負荷分散方法は、通信セッションを処理する複数のセッション処理装置から、前記複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示す第1負荷情報、及び各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す第2負荷情報を取得し、前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する方法である。 The load distribution method described in the present specification includes, from a plurality of session processing devices that process a communication session, first load information that indicates a processing load of a communication session that is being executed in each of the plurality of session processing devices, and each The second load information indicating the processing load of the communication session taken over from the other session processing device is acquired by the session processing device, and based on the first load information and the second load information from the plurality of session processing devices. This is a method for determining a session processing device to be assigned for processing a new communication session.
負荷を効果的に分散できる。 The load can be distributed effectively.
図1は、通信システムの一例を示す構成図である。通信システムは、セッション制御装置(SBC)1と、呼制御ファンクションサーバ(CSCF: Call Signaling Control Function)21,22と、端末装置(TRM)40,41と、ルータ(RT)310〜312,300〜302とを有し、一例として音声通話サービスに用いられる。 FIG. 1 is a configuration diagram illustrating an example of a communication system. The communication system includes a session control device (SBC) 1, call control function servers (CSCF) 21 and 22, terminal devices (TRM) 40 and 41, and routers (RT) 310 to 312 and 300 to 300. 302 is used as an example for a voice call service.
通信システムは、2つのネットワークNW#1,NW#2を含む。ネットワークNW#1、#2は、例えば、互いに異なる通信キャリアにより運用される。
The communication system includes two
端末装置40,41は、ルータ310,300を介してネットワークNW#1,NW#2にそれぞれ接続されている。端末装置40,41としては、例えばIP電話機や携帯型端末装置が挙げられる。
呼制御ファンクションサーバ21,22は、ルータ311,301を介してネットワークNW#1,NW#2にそれぞれ接続されている。呼制御ファンクションサーバ21,22は、IP電話機や携帯型端末装置の呼信号を交換する交換機として機能する。
The call
セッション制御装置(セッション管理システム)1は、ネットワークNW#1,NW#2の境界に設置され、ルータ312,302を介してネットワークNW#1,NW#2にそれぞれ接続されている。セッション制御装置1は、例えばSIPを用いた音声通話サービスのゲートウェイであり、ネットワークNW#1,NW#2間における呼制御機能、及び各種のファイヤーウォール機能を備える。
A session control device (session management system) 1 is installed at the boundary between
例えば、一方のネットワークNW#1内の端末装置40から、他方のネットワークNW#2内の端末装置41に対して発呼された場合、ネットワークNW#1内の呼制御ファンクションサーバ21は、呼制御信号Scとして、端末装置40からセッション参加要求(INVITE信号)を受信する。呼制御ファンクションサーバ21は、呼制御信号Scに含まれる宛先電話番号に応じたIPアドレスの端末装置41をネットワークNW#1から検索する。呼制御ファンクションサーバ21は、ネットワークNW#1から端末装置41が検索されないので、呼制御信号Scをセッション制御装置1に転送する。
For example, when a call is made from the
セッション制御装置1は、呼制御信号ScをネットワークNW#2内の呼制御ファンクションサーバ22に転送する。呼制御ファンクションサーバ22は、呼制御信号Scを受信すると、ネットワークNW#2から端末装置41を検索し、呼制御信号Scを端末装置41に転送する。
The
このように、セッション制御装置1は、異なるネットワークNW#1,NW#2内の端末装置40,41間において呼制御信号Scを中継する。呼制御信号Scのシーケンスが完了すると、端末装置40,41間に通信セッションが確立される。
As described above, the
端末装置40,41は、通信セッションに基づき、セッション制御装置1を介して、互いに通話データ信号Suを送受信する。通話データ信号Suの形態としては、例えばIPパケットが挙げられるが、これに限定されない。なお、通話データ信号Suは、例えばRTP(Real-time Transport Protocol)及びRTCP(Real-time Transport Control Protocol)に基づいて送受信される。
The
セッション制御装置1は、例えば、各通信セッションについて、IPパケットの検査及び遮断、IPアドレスの監視及び変換、プロトコルの変換、帯域の監視、及びIPパケットの流入出制御などの処理を行う。また、セッション制御装置1は、ネットワークNW#1,NW#2間で呼制御信号Sc及び通話データ信号Suの形式が相違する場合、信号形式を変換するコーディック機能も有する。
For example, for each communication session, the
図2は、セッション制御装置1の一例を示す構成図である。セッション制御装置1は、呼制御ユニット(負荷分散装置)10と、複数のメディア制御ユニット(#1〜#N、N:正の整数)(セッション処理装置)11とを有する。
FIG. 2 is a configuration diagram illustrating an example of the
呼制御ユニット10及びメディア制御ユニット11は、例えば、箱状の筐体の前面に設けられた個別のスロットに、着脱自在に挿入された電子回路基板である。呼制御ユニット10及びメディア制御ユニット11は、筐体の背面に設けられた配線基板内の装置内バス12を介して互いに接続されて通信する。なお、呼制御ユニット10及びメディア制御ユニット11は、このような専用装置に限定されず、例えば汎用サーバにより構成されてもよい。
The
呼制御ユニット10は、上記の呼制御信号Scの処理を行い、各メディア制御ユニット11は、通信セッションごとに通話データ信号Suの処理を行う。すなわち、メディア制御ユニット11は、通信セッションを処理する。呼制御ユニット10は、新規の通信セッションが発生した場合、各メディア制御ユニット11の負荷に基づいて、新規の通信セッションの処理の割り当て対象のメディア制御ユニット11を決定する。
The
呼制御ユニット10は、装置内バス12を介して、割り当て対象として決定されたメディア制御ユニット11と制御信号Smを送受信することにより、メディア制御ユニット11に新規の通信セッションの処理を割り当てる。制御信号Smは、例えば、ITU−T(International Telecommunication Union Telecommunication Standardization Sector(国際電気通信連合))勧告H.248に規定されたMEGACO(Media Gateway Control Protocol)に基づく。
The
複数のメディア制御ユニット11は、低コストで高い信頼性を実現するために、例えばN−ACT構成で動作する。すなわち、複数のメディア制御ユニット11には、メディア制御ユニット11の障害に備えた予備系専用のユニットが含まれない。各メディア制御ユニット11は、自装置に対応する他のメディア制御ユニット11に障害が発生した場合、呼制御ユニット10の制御に従い、該メディア制御ユニット11の処理を引き継ぐ。
The plurality of
例えば、メディア制御ユニット(#n)11(n:正の整数)は、メディア制御ユニット(#m)11(m:正の整数)に障害(装置故障など)が発生した場合、メディア制御ユニット(#m)11が行っていた通信セッションの処理を引き継ぐ。この場合、メディア制御ユニット(#n)11は、例えば、ルータ312,302にGARP(Gratuitous Address Resolution Protocol)信号を送信する。
For example, when the media control unit (#n) 11 (n: positive integer) has a failure (such as a device failure) in the media control unit (#m) 11 (m: positive integer), the media control unit (# #M) Take over the communication session processing performed by 11. In this case, the media control unit (#n) 11 transmits a GARP (Gratuitous Address Resolution Protocol) signal to the
これにより、当該通信セッションの通話データ信号Suの転送先が、メディア制御ユニット(#m)11からメディア制御ユニット(#n)11に切り替えられる。したがって、メディア制御ユニット(#m)11の処理対象の通信セッションは、メディア制御ユニット(#n)11の処理対象に切り替えられる。なお、他のメディア制御ユニット11も、障害の発生時、同様に通信セッションの切り替え処理を行う。
Thereby, the transfer destination of the call data signal Su of the communication session is switched from the media control unit (#m) 11 to the media control unit (#n) 11. Therefore, the communication session to be processed by the media control unit (#m) 11 is switched to the processing target of the media control unit (#n) 11. The other
また、メディア制御ユニット(#m)11は、通信セッションの切り替え前に、自装置に割り当てられた通信セッションに関するセッションデータDTmを、装置内バス12を介してメディア制御ユニット(#n)11に送信する。メディア制御ユニット(#n)11は、メディア制御ユニット(#m)11から受信したセッションデータをメモリなどの記憶手段に保持する。
Further, the media control unit (#m) 11 transmits session data DTm related to the communication session assigned to the own device to the media control unit (#n) 11 via the in-
つまり、メディア制御ユニット(#m)11は、自装置のセッションデータをメディア制御ユニット(#n)11にバックアップする。バックアップ処理は、障害により装置内バス12を介したメディア制御ユニット11間の通信機能が故障する場合に備え、例えばセッションデータDTmが更新されるたびに行われるとよい。
That is, the media control unit (#m) 11 backs up its own session data to the media control unit (#n) 11. The backup process may be performed every time the session data DTm is updated, for example, in case the communication function between the
このように、各メディア制御ユニット11は、通常、呼制御ユニット10により自装置に割り当てられた通信セッションの処理を行う。しかし、各メディア制御ユニット11は、自装置に対応する他のメディア制御ユニット11に障害が発生した場合、他のメディア制御ユニット11から通信セッションの処理を引き継ぐ。つまり、各メディア制御ユニット11は、ACT系(現用系)として、自装置に割り当てられた通信セッションの処理を行い、SBY系(待機系または予備系)として、自装置に対応する他のメディア制御ユニット11の通信セッションの処理に備える。
As described above, each
図3は、新規の通信セッションの割り当て処理を示すラダーチャートである。まず、一方のネットワークNW#1の端末装置40は、セッションへの参加要求を示すSIP_INVITE信号を呼制御ユニット10に送信する。呼制御ユニット10は、「Trying」状態を示すSIP_100信号を端末装置40に送信する。
FIG. 3 is a ladder chart showing a process for assigning a new communication session. First, the
次に、呼制御ユニット10は、複数のメディア制御ユニット(#1〜#N)11から、新規の通信セッションの割り当て対象のメディア制御ユニット(#m)11を決定する(符号St1)。呼制御ユニット10は、決定したメディア制御ユニット(#m)11に、新規の通信セッションの通話データ信号Suを送受信するためのポート開通を要求するMEGACO_ADD_req信号を送信する。メディア制御ユニット(#m)11は、呼制御ユニット10に、応答を示すMEGACO_ADD_rep信号を送信する。なお、新規の通信セッションの割り当て対象のメディア制御ユニット(#m)11の決定手段については後述する。
Next, the
次に、呼制御ユニット10は、SIP_INVITE信号を、他方のネットワークNW#2の端末装置41に送信する。端末装置41は、SIP_100信号、呼び出し中の状態を示すSIP_180信号、及び、応答を示すSIP_200信号を、順次に呼制御ユニット10に送信する。呼制御ユニット10は、SIP_180信号を端末装置40に転送する。
Next, the
呼制御ユニット10は、SIP_200信号を受信すると、メディア制御ユニット(#m)11に、新規の通信セッションの通話データ信号Suを送受信するためのポート開通を要求するMEGACO_MOD_req信号を送信する。メディア制御ユニット(#m)11は、呼制御ユニット10に、応答を示すMEGACO_MOD_rep信号を送信する。
When the
次に、呼制御ユニット10は、端末装置40にSIP_200信号を転送する。次に、呼制御ユニット10は、通信セッションの確立を通知するSIP_ACK信号を端末装置41に送信する。
Next, the
通信セッションの確立後、端末装置40,41は、メディア制御ユニット(#m)11を介して、互いに通話データ信号Suを送受信する。このとき、ルータ312,302は、端末装置40,41及びメディア制御ユニット(#m)11の間において通話データ信号Suを転送する。このようにして、新規の通信セッションの割り当て処理は行われる。
After establishing the communication session, the
図4は、通信セッションの切り替え処理を示すラダーチャートである。端末装置40,41は、メディア制御ユニット(#m)11を介して、互いに通話データ信号Suを送受信する。メディア制御ユニット(#m)11に障害が発生すると(「障害発生」参照)、メディア制御ユニット(#m)11は、通話データ信号Suを転送不可能な状態となる。
FIG. 4 is a ladder chart showing communication session switching processing. The
呼制御ユニット10は、周期的にメディア制御ユニット(#m,#n)11に、障害を検出するためのCHK信号を送信する。メディア制御ユニット(#m,#n)11は、障害が発生していない正常な状態である場合、正常状態を通知するAck信号を呼制御ユニット10に送信する。
The
しかし、メディア制御ユニット(#m)11は、障害発生中であるため、CHK信号を受信しても、Ack信号を送信できない。呼制御ユニット10は、メディア制御ユニット(#m)11からのAck信号の受信がないため、メディア制御ユニット(#m)11の障害を検出する(符号St2参照)。
However, since the media control unit (#m) 11 is in failure, even if it receives the CHK signal, it cannot transmit the Ack signal. Since the
呼制御ユニット10は、障害を検出すると、障害が発生したメディア制御ユニット(#m)11に対応するメディア制御ユニット(#n)11に、当該通信セッションの通話データ信号Suの転送先の切り替えを指示する。メディア制御ユニット(#n)11は、切り替えの指示を受けると、ルータ312,302にGARP_req信号を送信し、ルータ312,302からGARP_ack信号を受信する。これにより、ルータ312,302は、障害が発生したメディア制御ユニット(#m)11が処理していた通信セッションの通話データ信号Suの転送先を、メディア制御ユニット(#m)11からメディア制御ユニット(#n)11に切り替える。
When detecting a failure, the
次に、呼制御ユニット10は、通信セッションの切り替え完了通知を呼制御ユニット10に送信する。これにより、端末装置40,41間の通話データ信号Suは、メディア制御ユニット(#n)11を介して、送受信される。このようにして、通信セッションの切り替え処理は行われる。
Next, the
図5は、呼制御ユニット10の一例を示す構成図である。呼制御ユニット10は、CPU(Central Processing Unit)100、ROM(Read Only Memory)101、RAM(Random Access Memory)102、及びDSP(Digital Signal Processor)103を有する。呼制御ユニット10は、さらに、格納メモリ104、I/O(Input Output)部105、ユニット間通信処理部106、及びネットワーク通信処理部107を有する。
FIG. 5 is a configuration diagram illustrating an example of the
CPU100は、互いに信号の入出力ができるように、ROM101、RAM102、DSP103、格納メモリ104、I/O部105、ユニット間通信処理部106、及びネットワーク通信処理部107と、データバス108を介して接続されている。ROM101は、CPU100を駆動するプログラムが格納されている。RAM102は、CPU100のワーキングメモリとして機能する。
The
DSP103は、ネットワークNW#1,#2の間で呼制御信号Scの形式が相違する場合、呼制御信号Scの形式を変換する。つまり、DSP103は、コーディックの機能を有する。
When the format of the call control signal Sc is different between the
格納メモリ104は、例えばフラッシュメモリであり、ユニット対応テーブル104a及び負荷監視テーブル104bを格納する。ユニット対応テーブル104aは、各メディア制御ユニット(#1〜#N)11と、該メディア制御ユニット(#1〜#N)11に通信セッションの処理を引き継ぐ他のメディア制御ユニット(#1〜#N)11の対応関係を示す。
The
図6(a)には、ユニット対応テーブル104aの一例が示されている。ユニット対応テーブル104aには、各メディア制御ユニット11のユニットID(#1〜#N)と、該メディア制御ユニット11の通信セッションの処理の引き継ぎ対象の他のメディア制御ユニット11のユニットIDとが対応付けられて登録されている。例えば、メディア制御ユニット(#n)11は、メディア制御ユニット(#m)11に障害が発生した場合、メディア制御ユニット(#m)11から通信セッションの処理を引き継ぐ。なお、図6(a)中のj,k,lは、正の整数である。
FIG. 6A shows an example of the unit correspondence table 104a. In the unit correspondence table 104a, the unit IDs (# 1 to #N) of the respective
また、図6(b)には、負荷監視テーブル104bの一例が示されている。負荷監視テーブル104bは、各メディア制御ユニット11のACT系のCPU使用率(第1負荷情報)及びSBY系のCPU使用率(第2負荷情報)を示す。ACT系のCPU使用率は、各メディア制御ユニット11において実行中の通信セッションの処理の負荷を示す。SBY系のCPU使用率は、各メディア制御ユニット11に他のメディア制御ユニット11(「引き継ぎ対象のユニットID」参照)から引き継がれる通信セッションの処理の負荷を示す。
FIG. 6B shows an example of the load monitoring table 104b. The load monitoring table 104b indicates the ACT system CPU usage rate (first load information) and the SBY system CPU usage rate (second load information) of each
例えば、メディア制御ユニット(#m)11について、ACT系のCPU使用率は20(%)であり、SBY系のCPU使用率(メディア制御ユニット(#l)11のACT系のCPU使用率)は5(%)である。また、メディア制御ユニット(#n)11について、ACT系のCPU使用率は10(%)であり、SBY系のCPU使用率(メディア制御ユニット(#m)11のACT系のCPU使用率)は20(%)である。 For example, for the media control unit (#m) 11, the ACT CPU usage rate is 20 (%), and the SBY CPU usage rate (ACT control CPU usage rate of the media control unit (# 1) 11) is 5 (%). Further, for the media control unit (#n) 11, the ACT CPU usage rate is 10 (%), and the SBY CPU usage rate (ACT control CPU usage rate of the media control unit (#m) 11) is 20 (%).
再び図5を参照すると、I/O部105は、キーボード及びマウスなどの入力装置と、ディスプレイなどの出力装置との間で入出力処理を行う。ユニット間通信処理部106は、装置内バス12を介してメディア制御ユニット(#1〜#N)11と通信を行う。ネットワーク通信処理部107は、例えばネットワークインターフェースカードであり、ルータ312,302を介してネットワークNW#1、#2との間でそれぞれ通信を行う。なお、通信の形態は、有線及び無線の何れでもよい。
Referring to FIG. 5 again, the I /
CPU100は、ROM101からプログラムを読み込むと、機能として、呼制御部100a、セッション割当部(割り当て部)100b、負荷監視部(取得部)100c、障害検出部100d、及びセッション切替部100eが形成される。呼制御部100aは、呼制御信号Scを処理する。より具体的には、呼制御部100aは、図3に示されたSIP_INVITE信号、SIP_100信号、SIP_180信号、SIP_200信号、及びSIP_ACK信号などを処理する。
When the
セッション割当部100bは、呼制御部100aからの要求に応じて、負荷監視テーブル104bに登録されたACT系及びSBY系の各CPU使用率に基づいて新規の通信セッションの処理の割り当て対象のメディア制御ユニット11を決定する。つまり、セッション割当部100bは、実行中の通信セッションの処理の負荷だけでなく、他のメディア制御ユニット11から引き継がれる通信セッションの処理の負荷にも基づいて、新規の通信セッションの処理をメディア制御ユニット11に割り当てる。
In response to a request from the
したがって、新規の通信セッションは、障害の発生のために他のメディア制御ユニット11から引き継がれる通信セッションの処理により増加する負荷を予め見込んで、メディア制御ユニット11に割り当てられる。このため、各メディア制御ユニット(#1〜#N)11に負荷が均等に分散され、特定のメディア制御ユニット11が過負荷となることが防止される。
Therefore, a new communication session is allocated to the
より具体的には、セッション割当部100bは、ACT系及びSBY系の各CPU使用率の合計が最小であるメディア制御ユニット11を、新規の通信セッションの処理の割り当て対象のメディア制御ユニット11として決定する。このため、各メディア制御ユニット(#1〜#N)11に、より効果的に負荷が分散される。
More specifically, the
セッション割当部100bは、装置内バス12を介して、当該メディア制御ユニット11と制御信号Sm(図2参照)を送受信することで、当該メディア制御ユニット11に新規の通信セッションの処理を割り当てる。
The
負荷監視部100cは、メディア制御ユニット(#1〜#N)11から、ACT系及びSBY系の各CPU使用率を取得する。より具体的には、負荷監視部100cは、各メディア制御ユニット(#1〜#N)11から、当該メディア制御ユニット11が実行中の通信セッションの処理の負荷を示すCPU使用率を受信する。負荷監視部100cは、受信したCPU使用率を、当該ユニットIDに対応するACT系のCPU使用率として負荷監視テーブル104bに登録する。
The
また、負荷監視部100cは、ユニット対応テーブル104aを参照し、当該ユニットIDに対応する引き継ぎ対象のユニットIDのメディア制御ユニット11のCPU使用率を特定する。負荷監視部100cは、特定したCPU使用率を、当該ユニットIDに対応するSBY系のCPU使用率として負荷監視テーブル104bに登録する。例えば、負荷監視部100cは、メディア制御ユニット(#n)11に対応する引き継ぎ対象のユニットIDのメディア制御ユニット(#m)11のCPU使用率を特定し、メディア制御ユニット(#n)11のSBY系のCPU使用率として負荷監視テーブル104bに登録する。
Further, the
障害検出部100dは、各メディア制御ユニット(#1〜#N)11にCHK信号を送信し、各メディア制御ユニット(#1〜#N)11からのAck信号の受信の有無に基づいて、各メディア制御ユニット(#1〜#N)11の障害を検出する(図4参照)。障害検出部100dは、障害を検出した場合、障害が発生したメディア制御ユニット11のユニットIDをセッション切替部100eに通知する。
The
セッション切替部100eは、障害検出部100dから通知されたユニットIDを引き継ぎ対象のユニットIDとして、引き継ぎ対象のユニットIDに対応するユニットIDを、ユニット対応テーブル104aから検索する。セッション切替部100eは、検索したユニットIDのメディア制御ユニット11に、当該通信セッションの通話データ信号Suの転送先の切り替えを指示する(図4参照)。
The
図7は、メディア制御ユニット11の一例を示す構成図である。メディア制御ユニット11は、CPU110、ROM111、RAM112、及びDSP113、格納メモリ114、I/O部115、ユニット間通信処理部116、及びネットワーク通信処理部117を有する。
FIG. 7 is a configuration diagram illustrating an example of the
CPU110は、互いに信号の入出力ができるように、ROM111、RAM112、DSP113、格納メモリ114、I/O部115、ユニット間通信処理部116、及びネットワーク通信処理部117と、データバス118を介して接続されている。ROM111は、CPU110を駆動するプログラムが格納されている。RAM112は、CPU110のワーキングメモリとして機能する。
The
DSP113は、ネットワークNW#1,#2の間で通話データ信号Suの形式が相違する場合、通話データ信号Suの形式を変換する。つまり、DSP113は、コーディックの機能を有する。
When the format of the call data signal Su is different between the
格納メモリ114は、例えばフラッシュメモリであり、セッションデータ114a、バックアップデータ114b、及びバックアップ先ユニットID114cを格納する。セッションデータ114aは、メディア制御ユニット11が実行中の通信セッションの処理に用いられるデータである。バックアップデータ114bは、引き継ぎ対象の他のメディア制御ユニット11からバックアップされたセッションデータ114a(図2のセッションデータDTm参照)である。バックアップ先ユニットID114cは、セッションデータ114aのバックアップ先(通信セッションの処理の引き継ぎ先)のメディア制御ユニット11のユニットIDである。
The
I/O部115は、キーボード及びマウスなどの入力装置と、ディスプレイなどの出力装置との間で入出力処理を行う。ユニット間通信処理部116は、装置内バス12を介して呼制御ユニット10及び他のメディア制御ユニット(#1〜#N)11と通信を行う。ネットワーク通信処理部117は、例えばネットワークインターフェースカードであり、ルータ312,302を介してネットワークNW#1、#2との間でそれぞれ通信を行う。なお、通信の形態は、有線及び無線の何れでもよい。
The I /
CPU110は、ROM111からプログラムを読み込むと、機能として、セッション受付部110a、セッション処理部110b、セッション切替部110c、負荷通知部110d、状態通知部110e、及びバックアップ処理部110fが形成される。セッション受付部110aは、呼制御ユニット10のセッション割当部100bから制御信号Smを受信し、呼制御ユニット10から割り当てられた通信セッションの通話データ信号Suを送受信するためのポートの開通を制御する(図3参照)。セッション受付部110aは、ポートの開通が完了すると、完了通知をセッション処理部110bに出力する。
When the
セッション処理部110bは、呼制御ユニット10から割り当てられた通信セッションの通話データ信号Suを、ネットワーク通信処理部117を介して受信して処理する。セッション切替部110cは、呼制御ユニット10のセッション切替部100eの切り替え指示に従って、引き継ぎ対象の他のメディア制御ユニット11の通信セッションの通話データ信号Suの転送先を自装置に切り替えるように、ルータ312,302を制御する。つまり、セッション切替部110cは、図4を参照して述べたように、GARP信号をルータ312,302に送信する。
The
負荷通知部110dは、呼制御ユニット10の負荷監視部100cの要求に応じて、セッション処理部110bの負荷を示すCPU使用率を、ユニット間通信処理部116を介して呼制御ユニット10に送信する。状態通知部110eは、呼制御ユニット10の障害検出部100dからユニット間通信処理部116を介してCHK信号を受信したとき、正常状態であればAck信号を呼制御ユニット10に送信する。
The
バックアップ処理部110fは、引き継ぎ対象の他のメディア制御ユニット11からユニット間通信処理部116を介してセッションデータ114aを受信し、バックアップデータ114bとして格納メモリ114に格納する。バックアップデータ114bは、他のメディア制御ユニット11から通信セッションの処理が引き継がれた場合、セッション処理部110bにより用いられる。
The
また、バックアップ処理部110fは、自装置のセッションデータ114aを、ユニット間通信処理部116を介してバックアップ先ユニットID114cのメディア制御ユニット11に送信する。送信されたセッションデータ114aは、バックアップ先のメディア制御ユニット11の格納メモリ114に、バックアップデータ114bとして格納される。
Further, the
次に、通信セッションの処理の割り当て処理を例を挙げて説明する。図8には、メディア制御ユニット11の負荷状態の一例が示されている。
Next, communication session processing allocation processing will be described by way of example. FIG. 8 shows an example of the load state of the
図8には、メディア制御ユニット(#1〜#4)11のACT系及びSBY系の各CPU使用率と、該CPU使用率が登録された負荷監視テーブル104bとが示されている。メディア制御ユニット(#1〜#4)11のACT系のCPU使用率は、それぞれ、10(%)、20(%)、15(%)、80(%)である。メディア制御ユニット(#1〜#4)11のSBY系のCPU使用率は、それぞれ、80(%)、10(%)、20(%)、15(%)である。 FIG. 8 shows the ACT and SBY CPU usage rates of the media control units (# 1 to # 4) 11, and the load monitoring table 104b in which the CPU usage rates are registered. The ACT CPU usage rates of the media control units (# 1 to # 4) 11 are 10 (%), 20 (%), 15 (%), and 80 (%), respectively. The SBY CPU usage rates of the media control units (# 1 to # 4) 11 are 80 (%), 10 (%), 20 (%), and 15 (%), respectively.
また、図8において、一点鎖線は、各メディア制御ユニット(#1〜#4)11(ACT系)の通信セッションの処理の引き継ぎ先の他のメディア制御ユニット11(SBY系)を示す。メディア制御ユニット(#1)11の処理は、メディア制御ユニット(#2)11に引き継がれ、メディア制御ユニット(#2)11の処理は、メディア制御ユニット(#3)11に引き継がれる。メディア制御ユニット(#3)11の処理は、メディア制御ユニット(#4)11に引き継がれ、メディア制御ユニット(#4)11の処理は、メディア制御ユニット(#1)11に引き継がれる。このため、メディア制御ユニット(#1〜#4)11のACT系のCPU使用率は、メディア制御ユニット(#2〜#4,#1)11のSBY系のCPU使用率にそれぞれ等しい。 In FIG. 8, the alternate long and short dash line indicates another media control unit 11 (SBY system) to which the communication session processing of each media control unit (# 1 to # 4) 11 (ACT system) is taken over. The processing of the media control unit (# 1) 11 is taken over by the media control unit (# 2) 11, and the processing of the media control unit (# 2) 11 is taken over by the media control unit (# 3) 11. The processing of the media control unit (# 3) 11 is taken over by the media control unit (# 4) 11, and the processing of the media control unit (# 4) 11 is taken over by the media control unit (# 1) 11. Therefore, the ACT CPU usage rate of the media control units (# 1 to # 4) 11 is equal to the SBY CPU usage rate of the media control units (# 2 to # 4, # 1) 11, respectively.
図9(a)及び図9(b)には、比較例における処理の引き継ぎ前後の負荷状態がそれぞれ示されている。図9(a)に示されるように、比較例では、メディア制御ユニット(#1〜#4)11のうち、ACT系のCPU使用率が最小であるメディア制御ユニット(#1)11に新規の通信セッションの処理が割り当てられる。新規の通信セッションの処理によるCPU使用率の増加分をα(%)とすると、メディア制御ユニット(#1)11のACT系のCPU使用率は、10+α(%)となる。 FIG. 9A and FIG. 9B respectively show the load states before and after taking over the process in the comparative example. As shown in FIG. 9A, in the comparative example, among the media control units (# 1 to # 4) 11, the media control unit (# 1) 11 having the smallest ACT CPU usage rate is newly added. Communication session processing is assigned. If the increase in the CPU usage rate due to the processing of the new communication session is α (%), the ACT CPU usage rate of the media control unit (# 1) 11 is 10 + α (%).
図9(b)に示されるように、メディア制御ユニット(#4)11に障害が発生した場合、メディア制御ユニット(#1)11が、メディア制御ユニット(#4)11の通信セッションの処理を引き継ぐ。このため、メディア制御ユニット(#1)11のACT系のCPU使用率は、SBY系のCPU使用率(メディア制御ユニット(#4)11のACT系のCPU使用率、)が加算され、90+α(%)(=10+80+α(%))となる。 As shown in FIG. 9B, when a failure occurs in the media control unit (# 4) 11, the media control unit (# 1) 11 performs communication session processing of the media control unit (# 4) 11. take over. Therefore, the ACT CPU usage rate of the media control unit (# 1) 11 is added to the SBY CPU usage rate (ACT CPU usage rate of the media control unit (# 4) 11), and 90 + α ( %) (= 10 + 80 + α (%)).
したがって、α>10(%)である場合、ACT系のCPU使用率は100(%)を上回るため、メディア制御ユニット(#1)11は、過負荷状態となり、通信セッションの処理に支障が生ずる。これに対し、実施例では、ACT系及びSBY系のCPU使用率の合計に基づいて、新規の通信セッションの処理の割り当て対象のメディア制御ユニット11が決定されるため、このような過負荷状態を防止することができる。
Accordingly, when α> 10 (%), the CPU usage rate of the ACT system exceeds 100 (%), so that the media control unit (# 1) 11 is overloaded, and processing of the communication session is hindered. . On the other hand, in the embodiment, since the
図10(a)及び図10(b)には、実施例における処理の引き継ぎ前後の負荷状態がそれぞれ示されている。図10(a)に示されるように、実施例では、メディア制御ユニット(#1〜#4)11のうち、ACT系及びSBY系のCPU使用率の合計が最小であるメディア制御ユニット(#2)11に新規の通信セッションの処理が割り当てられる。新規の通信セッションの処理によるCPU使用率の増加分をα(%)とすると、メディア制御ユニット(#2)11のACT系のCPU使用率は、20+α(%)となる。なお、メディア制御ユニット(#2)11の処理の引き継ぎ先であるメディア制御ユニット(#3)11のSBY系のCPU使用率も、20+α(%)となる。 FIG. 10A and FIG. 10B respectively show the load states before and after taking over the processing in the embodiment. As shown in FIG. 10A, in the embodiment, among the media control units (# 1 to # 4) 11, the media control unit (# 2) having the smallest total ACT and SBY CPU usage rates. ) 11 is assigned a new communication session process. If the increase in CPU usage rate due to processing of a new communication session is α (%), the ACT CPU usage rate of the media control unit (# 2) 11 is 20 + α (%). Note that the SBY CPU usage rate of the media control unit (# 3) 11 that is the takeover destination of the processing of the media control unit (# 2) 11 is also 20 + α (%).
図10(b)に示されるように、メディア制御ユニット(#4)11に障害が発生した場合、メディア制御ユニット(#1)11が、メディア制御ユニット(#4)11の通信セッションの処理を引き継ぐ。このため、メディア制御ユニット(#1)11のACT系のCPU使用率は、SBY系のCPU使用率(メディア制御ユニット(#4)11のACT系のCPU使用率、)が加算され、90(%)(=10+80(%))となる。したがって、メディア制御ユニット(#1)11は、過負荷状態にならない。 As shown in FIG. 10B, when a failure occurs in the media control unit (# 4) 11, the media control unit (# 1) 11 performs communication session processing of the media control unit (# 4) 11. take over. Therefore, the ACT system CPU usage rate of the media control unit (# 1) 11 is added to the SBY system CPU usage rate (ACT system CPU usage rate of the media control unit (# 4) 11). %) (= 10 + 80 (%)). Therefore, the media control unit (# 1) 11 is not overloaded.
また、上記とは異なり、メディア制御ユニット(#1)11に障害が発生した場合、メディア制御ユニット(#2)11が、メディア制御ユニット(#1)11の通信セッションの処理を引き継ぐ。このため、メディア制御ユニット(#2)11のACT系のCPU使用率は、SBY系のCPU使用率(メディア制御ユニット(#1)11のACT系のCPU使用率、)が加算され、30+α(%)(=20+10+α(%))となる。 Unlike the above, when a failure occurs in the media control unit (# 1) 11, the media control unit (# 2) 11 takes over the communication session processing of the media control unit (# 1) 11. Therefore, the ACT system CPU usage rate of the media control unit (# 2) 11 is added to the SBY system CPU usage rate (ACT system CPU usage rate of the media control unit (# 1) 11), and 30 + α ( %) (= 20 + 10 + α (%)).
したがって、α>70(%)とならない限り、ACT系のCPU使用率は100(%)を上回ることはないため、メディア制御ユニット(#2)11は、処理能力に余裕がある状態で、通信セッションの処理を行うことができる。このように、実施例によると、メディア制御ユニット(#1〜#4)11に新規の通信セッションの処理の負荷が効果的に分散され、メディア制御ユニット11の過負荷状態が防止される。
Therefore, unless α> 70 (%), the ACT CPU usage rate does not exceed 100 (%), so the media control unit (# 2) 11 can communicate with a margin in processing capacity. Session processing can be performed. Thus, according to the embodiment, the processing load of the new communication session is effectively distributed to the media control units (# 1 to # 4) 11, and the overload state of the
本実施例において、セッション割当部100bは、ACT系及びSBY系の各CPU使用率の合計が最小であるメディア制御ユニット11に、新規の通信セッションの処理を割り当てたが、これに限定されない。
In the present embodiment, the
例えば、セッション割当部100bは、各メディア制御ユニット11に割り当てられた通信セッション数と、各メディア制御ユニット11に他のメディア制御ユニット11から引き継がれる通信セッション数の合計に基づいて割り当てを行ってもよい。この場合、セッション割当部100bは、例えば通信セッション数が最小であるメディア制御ユニット11に、新規の通信セッションの処理を割り当てる。
For example, the
また、セッション割当部100bは、装置内バス12を介した通信の応答時間に基づいて各メディア制御ユニット11の負荷を推測し、ACT系及びSBY系の各負荷の合計が最小であるメディア制御ユニット11に、新規の通信セッションの処理を割り当ててもよい。さらに、セッション割当部100bは、装置内バス12を介した通信データ量に基づいて各メディア制御ユニット11の負荷を推測し、ACT系及びSBY系の各負荷の合計が最小であるメディア制御ユニット11に、新規の通信セッションの処理を割り当ててもよい。
Further, the
図11は、新規の通信セッションの割り当て処理を示すフローチャートである。呼制御ユニット10において、負荷監視部100cは、各メディア制御ユニット(#1〜#N)11に、実行中の通信セッションの処理のCPU使用率を要求する(ステップSt11)。
FIG. 11 is a flowchart showing a process for assigning a new communication session. In the
次に、負荷監視部100cは、各メディア制御ユニット(#1〜#N)11からCPU使用率を取得する(ステップSt12)。次に、負荷監視部100cは、取得したCPU使用率に基づいて負荷監視テーブル104bを更新する(ステップSt13)。
Next, the
次に、呼制御部100aは、呼制御信号Scの受信の有無により新規の通信セッションの有無を判定する(ステップSt14)。呼制御ユニット10は、新規の通信セッションがない場合(ステップSt14のNo)、処理を終了する。
Next, the
新規の通信セッションがある場合(ステップSt14のYes)、セッション割当部100bは、メディア制御ユニット(#i)11(i:正の整数)を選択する(ステップSt15)。なお、予め、初期値としてi=1にセットされている。
When there is a new communication session (Yes in step St14), the
次に、セッション割当部100bは、負荷監視テーブル104bから、メディア制御ユニット(#i)11のACT系及びSBY系のCPU使用率の合計LDを算出する(ステップSt16)。次に、セッション割当部100bは、CPU使用率の合計LDを所定値LDminと比較する(ステップSt17)。LDmin≦LDが成立する場合(ステップSt17のNo)、セッション割当部100bは、後述するステップSt20の処理を行う。
Next, the
また、LDmin>LDが成立する場合(ステップSt17のYes)、セッション割当部100bは、LDmin=LDにセットして(ステップSt18)、割り当て対象のユニットID=iとする(ステップSt19)。これにより、セッション割当部100bは、負荷の最小値LDminを更新する。
If LDmin> LD is satisfied (Yes in step St17), the
次に、セッション割当部100bは、i=N(N:メディア制御ユニット11の台数)の成否を判定する(ステップSt20)。セッション割当部100bは、i=Nが成立しない場合(ステップSt20のNo)、つまり全てのメディア制御ユニット11のCPU使用率の合計LDをLDminと比較していない場合、i=i+1とし(ステップSt22)、再びステップSt15の処理を行う。
Next, the
セッション割当部100bは、i=Nが成立する場合(ステップSt20のYes)、つまり全てのメディア制御ユニット11のCPU使用率の合計LDとLDminの比較が完了した場合、割り当て対象のユニットIDのメディア制御ユニット11に新規の通信セッションの処理を割り当てる(ステップSt21)。このようにして、新規の通信セッションの割り当て処理は行われる。
When i = N is established (Yes in step St20), that is, when the comparison of the total LD and LDmin of the CPU usage rates of all the
図12は、通信セッションの切り替え処理を示すフローチャートである。障害検出部100dは、CHK信号をメディア制御ユニット11に送信する(ステップSt31)。なお、CHK信号は、メディア制御ユニット11ごとに例えば一定の時間間隔をおいて送信される。
FIG. 12 is a flowchart showing a communication session switching process. The
次に、障害検出部100dは、メディア制御ユニット11からのAck信号の受信の有無を判定する(ステップSt32)。障害検出部100dは、Ack信号が受信された場合(ステップSt32のYes)、処理を終了する。
Next, the
障害検出部100dは、Ack信号の受信がない場合(ステップSt32のNo)、当該メディア制御ユニット11の障害を検出する(ステップSt33)。次に、障害検出部100dは、ユニット対応テーブル104aから、障害が発生したメディア制御ユニット11に対応する他のメディア制御ユニット11を検索する(ステップSt34)。例えばメディア制御ユニット(#m)11に障害が発生した場合、メディア制御ユニット(#n)11が検索される。
If there is no reception of the Ack signal (No in step St32), the
次に、セッション切替部100eは、検索されたメディア制御ユニット11に当該通信セッションの通話データ信号Suの転送先の切り替えを指示する(ステップSt35)。次に、セッション切替部100eは、該メディア制御ユニット11からの切り替え完了通知の受信の有無を判定する(ステップSt36)。切り替え完了通知の受信がない場合(ステップSt36のNo)、セッション切替部100eは、再びステップSt36の判定処理を行う。
Next, the
セッション切替部100eは、切り替え完了通知を受信した場合(ステップSt36のYes)、負荷監視テーブル104bを更新する(ステップSt37)。つまり、セッション切替部100eは、当該メディア制御ユニット11のACT系のCPU使用率に、SBY系のCPU使用率を加算する。このようにして、通信セッションの切り替え処理は行われる。
When the
図13は、メディア制御ユニット11の動作を示すフローチャートである。メディア制御ユニット11において、セッション処理部110bは、通信セッションの処理を実行する(ステップSt41)。すなわち、セッション処理部110bは、呼制御ユニット10かえ割り当てられた通信セッションの通話データ信号Suの処理を行う。
FIG. 13 is a flowchart showing the operation of the
次に、バックアップ処理部110fは、通信セッションの処理によりセッションデータ114aが変更されたか否かを判定する(ステップSt42)。変更の有無は、例えば、予めセッションデータ114aを格納メモリ114などにコピーしておき、処理後のセッションデータ114aと照合することにより判定される。セッションデータ114aに変更がない場合(ステップSt42のNo)、バックアップ処理部110fは、後述するステップSt44の処理を行う。
Next, the
セッションデータ114aに変更があった場合(ステップSt42のYes)、バックアップ処理部110fは、装置内バス12を介して、バックアップ先ユニットID114cのメディア制御ユニット11にセッションデータ114aをバックアップする(ステップSt43)。例えば、メディア制御ユニット(#m)11の場合、セッションデータ114aは、メディア制御ユニット(#n)11にバックアップされる。このように、変更が生ずるたびにセッションデータ114aをバックアップすることにより、障害により装置内バス12を介した通信が不可能となった場合でも、バックアップ先のメディア制御ユニット11は、通信セッションの処理を問題なく引き継ぐことができる。
When there is a change in the
次に、バックアップ処理部110fは、引き継ぎ対象のメディア制御ユニット11からセッションデータ114aを受信したか否かを判定する(ステップSt44)。例えば、メディア制御ユニット(#n)11の場合、バックアップ処理部110fは、メディア制御ユニット(#m)11からセッションデータ114aを受信したか否かを判定する。バックアップ処理部110fは、セッションデータ114aを受信していない場合(ステップSt44のNo)、後述するステップSt46の処理を行う。
Next, the
セッションデータ114aを受信した場合(ステップSt44のYes)、バックアップ処理部110fは、受信したセッションデータ114aを、バックアップデータ114bとして格納メモリ114に保存する(ステップSt45)。バックアップデータ114bは、上述したように、障害の発生により通信セッションの切り替えが行われた場合、障害が発生した他のメディア制御ユニット11から引き継いだ通信セッションの処理に用いられる。
When the
次に、負荷通知部110dは、呼制御ユニット10からCPU使用率の要求を受信したか否かを判定する(ステップSt46)。CPU使用率の要求を受信していない場合(ステップSt46のNo)、後述するステップSt48の処理が行われる。
Next, the
負荷通知部110dは、CPU使用率の要求を受信した場合(ステップSt46のYes)、セッション処理部110bの負荷に基づいてCPU使用率を算出し、装置内バス12を介して呼制御ユニット10に送信する(ステップSt47)。
When receiving the CPU usage rate request (Yes in step St46), the
次に、状態通知部110eは、呼制御ユニット10からCHK信号を受信したか否かを判定する(ステップSt48)。CHK信号を受信していない場合(ステップSt48のNo)、後述するステップSt51の処理が行われる。
Next, the
状態通知部110eは、CHK信号を受信した場合(ステップSt48のYes)、自装置が正常状態であるか否かを判定する(ステップSt49)。状態の判定は、例えば、受信した通話データ信号Suのエラーやロス、または装置故障の有無の検出結果に基づいて行われる。自装置が正常状態ではない場合(ステップSt49のNo)、メディア制御ユニット(#m)11は処理を終了する。
When the
状態通知部110eは、自装置が正常状態である場合(ステップSt49のYes)、装置内バス12を介して呼制御ユニット10にAck信号を送信する(ステップSt50)。
If the device itself is in a normal state (Yes in step St49), the
次に、セッション切替部110cは、呼制御ユニット10から通信セッションの切り替え指示を受信したか否かを判定する(ステップSt51)。通信セッションの切り替え指示を受信していない場合(ステップSt51のNo)、メディア制御ユニット(#m)11は処理を終了する。
Next, the
セッション切替部110cは、通信セッションの切り替え指示を受信した場合(ステップSt51のYes)、通信セッションの切り替え処理を実行する(ステップSt52)。このとき、セッション切替部110cは、ルータ312,302にGARP信号(図4参照)を送信することにより、他のメディア制御ユニット11が処理していた通話データ信号Suの転送先を自装置に切り替える。このようにして、メディア制御ユニット11は動作する。
When the
なお、図13に示された動作は、繰り返し実行される。また、図13において、ステップSt41〜St43の動作、ステップSt44,St45の動作、ステップSt46,St47の動作、ステップSt48〜St50の動作、及びステップSt51,St52の動作の実行順序は、限定されない。 The operation shown in FIG. 13 is repeatedly executed. In FIG. 13, the execution order of the operations of steps St41 to St43, the operations of steps St44 and St45, the operations of steps St46 and St47, the operations of steps St48 to St50, and the operations of steps St51 and St52 is not limited.
これまで述べたように、実施例に係る負荷分散装置(呼制御ユニット)10は、取得部(負荷監視部)100cと、割り当て部(セッション割り当て部)100bとを有する。取得部100cは、通信セッションを処理する複数のセッション処理装置(メディア制御ユニット)11から、第1負荷情報(ACT系のCPU使用率)及び第2負荷情報(SBY系のCPU使用率)を取得する。第1負荷情報は、複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示し、第2負荷情報は、各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す。
As described above, the load distribution apparatus (call control unit) 10 according to the embodiment includes the acquisition unit (load monitoring unit) 100c and the allocation unit (session allocation unit) 100b. The
割り当て部100bは、複数のセッション処理装置から、第1負荷情報及び第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する。
The allocating
上記の構成によると、新規の通信セッションの処理の割り当て対象のセッション処理装置は、実行中の通信セッションの処理の負荷だけでなく、他のセッション処理装置から引き継がれる通信セッションの処理の負荷にも基づいて決定される。したがって、実施例に係る負荷分散装置10によると、通信セッションの処理の引き継ぎが行われた場合の負荷の増加を考慮して、各セッション処理装置11に負荷を効果的に分散することができる。
According to the above configuration, a session processing device to which a new communication session process is assigned is not limited to the processing load of the communication session being executed, but also the processing load of the communication session inherited from another session processing device. To be determined. Therefore, according to the
また、実施例に係るセッション管理システム(セッション制御装置)1は、通信セッションを処理する複数のセッション処理装置(メディア制御ユニット)11と、複数のセッション処理装置に新規の通信セッションの処理を割り当てる負荷分散装置(呼制御ユニット)10とを有する。 In addition, the session management system (session control device) 1 according to the embodiment includes a plurality of session processing devices (media control units) 11 that process communication sessions, and a load that allocates processing of a new communication session to the plurality of session processing devices. And a distribution device (call control unit) 10.
負荷分散装置(呼制御ユニット)10は、取得部(負荷監視部)100cと、割り当て部(セッション割り当て部)100bとを有する。取得部100cは、通信セッションを処理する複数のセッション処理装置(メディア制御ユニット)11から、第1負荷情報(ACT系のCPU使用率)及び第2負荷情報(SBY系のCPU使用率)を取得する。第1負荷情報は、複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示し、第2負荷情報は、各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す。
The load distribution apparatus (call control unit) 10 includes an acquisition unit (load monitoring unit) 100c and an allocation unit (session allocation unit) 100b. The
割り当て部100bは、複数のセッション処理装置から、第1負荷情報及び第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する。
The allocating
実施例に係るセッション管理システム1は、実施例に係る負荷分散装置10と同様の構成を含むので、上述した内容と同様の作用効果を奏する。
Since the
また、実施例に係る負荷分散方法は、以下の工程を含む。
工程(1):通信セッションを処理する複数のセッション処理装置(メディア制御ユニット)11から、第1負荷情報(ACT系のCPU使用率)及び第2負荷情報(SBY系のCPU使用率)を取得する。第1負荷情報は、複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示し、第2負荷情報は、各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す。
工程(2):複数のセッション処理装置から、第1負荷情報及び第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する。
Moreover, the load distribution method according to the embodiment includes the following steps.
Step (1): Acquire first load information (ACT system CPU usage rate) and second load information (SBY system CPU usage rate) from a plurality of session processing devices (media control units) 11 that process communication sessions. To do. The first load information indicates the processing load of the communication session being executed in each of the plurality of session processing devices, and the second load information indicates the processing of the communication session that is taken over by each session processing device from another session processing device. Indicates the load.
Step (2): Based on the first load information and the second load information, a session processing device to be assigned for processing a new communication session is determined from a plurality of session processing devices.
実施例に係る負荷分散方法は、実施例に係る負荷分散装置10と同様の構成を含むので、上述した内容と同様の作用効果を奏する。
Since the load distribution method according to the embodiment includes the same configuration as that of the
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。 The above-described embodiment is an example of a preferred embodiment of the present invention. However, the present invention is not limited to this, and various modifications can be made without departing from the scope of the present invention.
なお、以上の説明に関して更に以下の付記を開示する。
(付記1) 通信セッションを処理する複数のセッション処理装置から、前記複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示す第1負荷情報、及び各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す第2負荷情報を取得する取得部と、
前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する割り当て部とを有することを特徴とする負荷分散装置。
(付記2) 前記割り当て部は、前記複数のセッション処理装置のうち、前記第1負荷情報及び前記第2負荷情報がそれぞれ示す負荷の合計が最小であるセッション処理装置を、前記新規の通信セッションの処理の割り当て対象のセッション処理装置として決定することを特徴とする付記1に記載の負荷分散装置。
(付記3) 通信セッションを処理する複数のセッション処理装置と、前記複数のセッション処理装置に新規の通信セッションの処理を割り当てる負荷分散装置とを有するセッション管理システムにおいて、
前記負荷分散装置は、
通信セッションを処理する複数のセッション処理装置から、前記複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示す第1負荷情報、及び各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す第2負荷情報を取得する取得部と、
前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する割り当て部とを有することを特徴とするセッション管理システム。
(付記4) 前記割り当て部は、前記複数のセッション処理装置のうち、前記第1負荷情報及び前記第2負荷情報がそれぞれ示す負荷の合計が最小であるセッション処理装置を、前記新規の通信セッションの処理の割り当て対象のセッション処理装置として決定することを特徴とする付記3に記載のセッション管理システム。
(付記5) 通信セッションを処理する複数のセッション処理装置から、前記複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示す第1負荷情報、及び各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す第2負荷情報を取得し、
前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定することを特徴とする負荷分散方法。
(付記6) 前記複数のセッション処理装置のうち、前記第1負荷情報及び前記第2負荷情報がそれぞれ示す負荷の合計が最小であるセッション処理装置を、前記新規の通信セッションの処理の割り当て対象のセッション処理装置として決定することを特徴とする付記5に記載の負荷分散方法。
In addition, the following additional notes are disclosed regarding the above description.
(Additional remark 1) From the several session processing apparatus which processes a communication session, the 1st load information which shows the processing load of the communication session in execution in each of the said several session processing apparatus, and another session to each session processing apparatus An acquisition unit for acquiring second load information indicating a processing load of a communication session taken over from the processing device;
A load unit comprising: an allocating unit configured to determine a session processing device to be allocated for processing a new communication session based on the first load information and the second load information from the plurality of session processing devices; Distributed device.
(Supplementary Note 2) The allocating unit assigns a session processing device having a minimum total load indicated by the first load information and the second load information among the plurality of session processing devices to the new communication session. The load distribution apparatus according to
(Additional remark 3) In the session management system which has a some session processing apparatus which processes a communication session, and the load distribution apparatus which allocates the process of a new communication session to the said some session processing apparatus,
The load balancer is:
The first load information indicating the processing load of the communication session being executed in each of the plurality of session processing devices, and each session processing device is inherited from another session processing device from the plurality of session processing devices that process the communication session. An acquisition unit for acquiring second load information indicating a processing load of a communication session to be performed;
An allocating unit that determines a session processing device to be allocated for processing of a new communication session based on the first load information and the second load information from the plurality of session processing devices. Management system.
(Supplementary Note 4) The allocating unit assigns a session processing device having a minimum total load indicated by the first load information and the second load information, among the plurality of session processing devices, to the new communication session. The session management system according to
(Supplementary Note 5) First load information indicating a processing load of a communication session being executed in each of the plurality of session processing devices from a plurality of session processing devices processing a communication session, and another session for each session processing device Obtaining second load information indicating the processing load of the communication session taken over from the processing device;
A load distribution method comprising: determining, from the plurality of session processing devices, a session processing device to be assigned for processing a new communication session based on the first load information and the second load information.
(Supplementary Note 6) Among the plurality of session processing devices, a session processing device having a minimum total load indicated by each of the first load information and the second load information is assigned as a target for allocation of processing of the new communication session. The load distribution method according to
1 セッション制御装置(セッション管理システム)
10 呼制御ユニット(負荷分散装置)
11 メディア制御ユニット(セッション処理装置)
100b セッション割当部(割り当て部)
100c 負荷監視部(取得部)
104a ユニット対応テーブル
104b 負荷監視テーブル
1 Session controller (session management system)
10 Call control unit (load balancer)
11 Media control unit (session processing device)
100b Session allocation unit (allocation unit)
100c Load monitoring unit (acquisition unit)
104a Unit correspondence table 104b Load monitoring table
Claims (4)
前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する割り当て部とを有することを特徴とする負荷分散装置。 The first load information indicating the processing load of the communication session being executed in each of the plurality of session processing devices, and each session processing device is inherited from another session processing device from the plurality of session processing devices that process the communication session. An acquisition unit for acquiring second load information indicating a processing load of a communication session to be performed;
A load unit comprising: an allocating unit configured to determine a session processing device to be allocated for processing a new communication session based on the first load information and the second load information from the plurality of session processing devices; Distributed device.
前記負荷分散装置は、
通信セッションを処理する複数のセッション処理装置から、前記複数のセッション処理装置の各々において実行中の通信セッションの処理の負荷を示す第1負荷情報、及び各セッション処理装置に他のセッション処理装置から引き継がれる通信セッションの処理の負荷を示す第2負荷情報を取得する取得部と、
前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定する割り当て部とを有することを特徴とするセッション管理システム。 In a session management system having a plurality of session processing devices for processing a communication session, and a load distribution device for assigning processing of a new communication session to the plurality of session processing devices,
The load balancer is:
The first load information indicating the processing load of the communication session being executed in each of the plurality of session processing devices, and each session processing device is inherited from another session processing device from the plurality of session processing devices that process the communication session. An acquisition unit for acquiring second load information indicating a processing load of a communication session to be performed;
An allocating unit that determines a session processing device to be allocated for processing of a new communication session based on the first load information and the second load information from the plurality of session processing devices. Management system.
前記複数のセッション処理装置から、前記第1負荷情報及び前記第2負荷情報に基づいて、新規の通信セッションの処理の割り当て対象のセッション処理装置を決定することを特徴とする負荷分散方法。 The first load information indicating the processing load of the communication session being executed in each of the plurality of session processing devices, and each session processing device is inherited from another session processing device from the plurality of session processing devices that process the communication session. Second load information indicating the processing load of the communication session to be acquired,
A load distribution method comprising: determining, from the plurality of session processing devices, a session processing device to be assigned for processing a new communication session based on the first load information and the second load information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014144446A JP6331799B2 (en) | 2014-07-14 | 2014-07-14 | Load distribution apparatus, session management system, and load distribution method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014144446A JP6331799B2 (en) | 2014-07-14 | 2014-07-14 | Load distribution apparatus, session management system, and load distribution method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016021656A JP2016021656A (en) | 2016-02-04 |
JP6331799B2 true JP6331799B2 (en) | 2018-05-30 |
Family
ID=55266246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014144446A Active JP6331799B2 (en) | 2014-07-14 | 2014-07-14 | Load distribution apparatus, session management system, and load distribution method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6331799B2 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005269434A (en) * | 2004-03-19 | 2005-09-29 | Nec Engineering Ltd | Voip voice communication system |
JP4559512B2 (en) * | 2008-08-11 | 2010-10-06 | 日本電信電話株式会社 | Packet transfer system and packet transfer method |
JP2010074310A (en) * | 2008-09-16 | 2010-04-02 | Fujitsu Ltd | Gateway system and load distribution program |
JP2013132021A (en) * | 2011-12-22 | 2013-07-04 | Fujitsu Ltd | Load distribution device, load distribution method, program, and system |
-
2014
- 2014-07-14 JP JP2014144446A patent/JP6331799B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016021656A (en) | 2016-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3883452B2 (en) | Communications system | |
JP5078357B2 (en) | Discovery of peer | |
US10038590B2 (en) | Reliability of a connection during a communication session on a network device | |
JP2007004361A (en) | Load distribution device | |
JP2007181079A (en) | Communication route control system | |
US20110216647A1 (en) | Telephone system, gateway for telephone system, and redundancy switching method | |
US7738362B2 (en) | System and method for address notification in a network | |
US8873374B2 (en) | Accelerated recovery during negotiation between a media gateway and a media gateway controller | |
JP6331799B2 (en) | Load distribution apparatus, session management system, and load distribution method | |
US20100027528A1 (en) | Notification of Impending Media Gateway Resource Exhaustion | |
KR20070079313A (en) | Network, media gateway device and internal resource management method used in same | |
JP6048573B2 (en) | Information processing system | |
US11063862B2 (en) | Media path engineering for multi-homed devices | |
KR20130085510A (en) | Ip-pbx cluster system and method of implementing thereof | |
JP2005167425A (en) | Network telephone system, main unit of network telephone system, and method for updating connection information utilizing network telephone system | |
JP2017011575A (en) | Pbx cooperation system and communication control method therefor | |
KR100990831B1 (en) | A softswitch of next generation network for fail over and a method thereof | |
JP2020188401A (en) | Clock synchronization program, clock synchronization method, communication device, and communication system | |
JP5717597B2 (en) | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, SERVER DEVICE, AND COMMUNICATION CONTROL METHOD | |
JP2009225171A (en) | Gateway device and its method | |
JP2016220182A (en) | Call control apparatus, call control system and call control method | |
JP5778827B1 (en) | Communications system | |
JP2007259312A (en) | Server device | |
JP2019016259A (en) | Communication service system and system switch-back method | |
CN116193385A (en) | Signaling transmission method, VRRP networking system, first network entity equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170406 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180322 |
|
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: 20180403 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180416 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6331799 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |