JP5962210B2 - Multiprocessor system and interprocessor communication method - Google Patents
Multiprocessor system and interprocessor communication method Download PDFInfo
- Publication number
- JP5962210B2 JP5962210B2 JP2012119878A JP2012119878A JP5962210B2 JP 5962210 B2 JP5962210 B2 JP 5962210B2 JP 2012119878 A JP2012119878 A JP 2012119878A JP 2012119878 A JP2012119878 A JP 2012119878A JP 5962210 B2 JP5962210 B2 JP 5962210B2
- Authority
- JP
- Japan
- Prior art keywords
- processor
- failure
- data
- unit
- recovery
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本件は、マルチプロセッサシステム、及び、プロセッサ間通信方法に関する。 The present invention relates to a multiprocessor system and an interprocessor communication method.
ルータ装置などの通信装置において、複雑な処理を負荷分散して行うために、複数のプロセッサを備えるマルチプロセッサシステムが用いられる。複数のプロセッサは、各々の機能を実行し、互いにデータを送受信する。このプロセッサ間通信は、通信装置に限られず、他種の装置においても用いられる。 In a communication device such as a router device, a multiprocessor system including a plurality of processors is used in order to perform load balancing for complicated processing. The plurality of processors execute their functions and transmit / receive data to / from each other. This inter-processor communication is not limited to a communication device, and is also used in other types of devices.
プロセッサ間通信に関し、例えば特許文献1には、CPU(Central Processing Unit)からエラー解析情報を取得する技術が開示されている。また、特許文献2には、サブプロセッサの障害をメインプロセッサに通知する技術が開示されている。
Regarding inter-processor communication, for example, Patent Document 1 discloses a technique for acquiring error analysis information from a CPU (Central Processing Unit).
プロセッサ間通信において、一方のプロセッサに障害が発生した場合、該プロセッサは、障害内容の記録動作、及び、リセットなどの復旧動作を行う。このとき、該プロセッサは、他方のプロセッサから送信されたデータを受信することができないため、データの損失が生ずる。このデータ損失は、例えば通信装置の場合、通話やデータ通信が一時的に途絶するなどの障害を引き起こす。 In the inter-processor communication, when a failure occurs in one of the processors, the processor performs a failure content recording operation and a recovery operation such as a reset. At this time, since the processor cannot receive data transmitted from the other processor, data loss occurs. For example, in the case of a communication device, this data loss causes a failure such as a temporary interruption of a call or data communication.
そこで本件は上記の課題に鑑みてなされたものであり、プロセッサ間通信におけるデータの損失を抑制するマルチプロセッサシステム、及びプロセッサ間通信方法を提供することを目的とする。 Accordingly, the present invention has been made in view of the above problems, and an object thereof is to provide a multiprocessor system and an interprocessor communication method that suppress data loss in interprocessor communication.
本明細書に記載のマルチプロセッサシステムは、データを送信する第1のプロセッサと、前記第1のプロセッサからデータを受信する第2のプロセッサと、データが蓄積される蓄積部とを有し、前記第2のプロセッサは、障害の発生通知を前記第1のプロセッサに送信し、該障害の復旧処理を行った後、復旧通知を前記第1のプロセッサに送信し、前記第1のプロセッサは、前記障害の発生通知を受信したとき、データの送信を停止して、送信するデータのトラフィック量に応じ送信待ちのデータを選択し、該選択したデータを前記蓄積部に蓄積し、前記復旧通知を受信した後、前記蓄積部に蓄積されたデータを前記第2のプロセッサに送信する。 The multiprocessor system described in the present specification includes a first processor that transmits data, a second processor that receives data from the first processor, and a storage unit that stores data. The second processor transmits a failure occurrence notification to the first processor, performs recovery processing of the failure, and then transmits a recovery notification to the first processor. The first processor When a failure notification is received, data transmission is stopped, data waiting for transmission is selected according to the traffic volume of data to be transmitted, the selected data is stored in the storage unit, and the recovery notification is received Then, the data stored in the storage unit is transmitted to the second processor.
本明細書に記載のプロセッサ間通信方法は、第1のプロセッサから送信されたデータを受信する第2のプロセッサが、障害の発生通知を前記第1のプロセッサに送信する工程と、前記第1のプロセッサが、前記障害の発生通知を受信したとき、データの送信を停止して、送信するデータのトラフィック量に応じ送信待ちのデータを選択する工程と、該選択したデータを蓄積部に蓄積する工程と、前記第2のプロセッサが、該障害の復旧処理を行う工程と、前記第2のプロセッサが、前記復旧処理を行った後、復旧通知を前記第1のプロセッサに送信する工程と、前記第1のプロセッサが、前記復旧通知を受信した後、前記蓄積部に蓄積されたデータを前記第2のプロセッサに送信する工程とを含む。 In the inter-processor communication method described in the present specification, a step in which a second processor that receives data transmitted from a first processor transmits a failure notification to the first processor; When the processor receives the failure occurrence notification, the processor stops transmitting data, selects data waiting for transmission according to the traffic volume of the data to be transmitted, and stores the selected data in the storage unit The second processor performing a recovery process of the failure; the second processor transmitting a recovery notification to the first processor after performing the recovery process; The first processor receives the recovery notification, and then transmits the data stored in the storage unit to the second processor.
本明細書に記載のマルチプロセッサシステム、及びプロセッサ間通信方法は、プロセッサ間通信におけるデータの損失を抑制することができるという効果を奏する。 The multiprocessor system and the interprocessor communication method described in the present specification have an effect that data loss in interprocessor communication can be suppressed.
図1は、無線通信ネットワークの構成を示す構成図である。無線通信ネットワークは、複数の無線ネットワーク制御装置(RNC:Radio Network Controller)1と、複数の無線基地局装置(BTS:Base Transceiver Station)2と、複数の端末装置3とを含む。さらに、無線ネットワークは、オペレーションシステム(OPS:Operation System)5と、IP/ATM変換器(IWU:InterWorking Unit)6と、移動マルチメディア交換システム(MMS:Mobile Multimedia Switching System)4とを含む。無線通信ネットワークは、例えばW−CDMA(Wideband−Code Division Multiple Access)システムを構成する。 FIG. 1 is a configuration diagram showing a configuration of a wireless communication network. The radio communication network includes a plurality of radio network controllers (RNC: Radio Network Controller) 1, a plurality of radio base station apparatuses (BTS: Base Transceiver Station) 2, and a plurality of terminal devices 3. Further, the wireless network includes an operation system (OPS) 5, an IP / ATM converter (IWU) 6, and a mobile multimedia switching system (MMS) 4. The wireless communication network forms, for example, a W-CDMA (Wideband-Code Division Multiple Access) system.
端末装置3は、例えば、携帯電話機やスマートフォンなどの無線通信機能を備えた移動体通信装置である。無線基地局装置2は、無線基地局に設置され、端末装置3の通信を中継処理する。
The terminal device 3 is a mobile communication device having a wireless communication function such as a mobile phone or a smartphone. The radio
無線ネットワーク制御装置1は、IP/ATM変換器6を介し、光ファイバなどにより複数の無線基地局装置2と、それぞれ通信可能に接続されている。IP/ATM変換器6は、無線ネットワーク制御装置1が送受信可能なイーサネット(登録商標、以下同様)フレームと、無線基地局装置2が送受信可能なATM(ATM:Asynchronous Transfer Mode)セルとを、互いにフォーマット変換する。
The wireless network control device 1 is communicably connected to a plurality of wireless
また、オペレーションシステム5は、無線ネットワーク制御装置1の管理制御を行うための装置である。移動マルチメディア交換システム4は、IPネットワーク(IP:Internet Protocol)NWを介して、複数の無線ネットワーク制御装置1と接続され、データ交換網を構成する。 The operation system 5 is a device for performing management control of the wireless network control device 1. The mobile multimedia switching system 4 is connected to a plurality of radio network control devices 1 via an IP network (IP: Internet Protocol) NW to form a data switching network.
無線ネットワーク制御装置1は、複数の無線基地局装置2を制御することによって、発着信接続制御、終話制御、及びダイバーシチハンドオーバ制御などを行う。ダイバーシチハンドオーバ制御は、同一の端末装置3から、複数の無線基地局装置2を経由して送信された信号の選択合成処理、及び、複数の無線基地局装置2への複製分配処理などを含む。
The wireless network control device 1 controls the plurality of wireless
図2は、無線ネットワーク制御装置1の構成を示す構成図である。無線ネットワーク制御装置1は、クロックインターフェース部1aと、装置間インターフェース部1bと、制御信号終端部1cと、装置制御部1dと、信号処理部1eと、スイッチ部1fとを有する。
FIG. 2 is a configuration diagram showing the configuration of the wireless network control device 1. The wireless network control device 1 includes a
クロックインターフェース部1aは、外部からDCS(Digital Clock Supply)クロックを受信して、無線ネットワーク装置1の動作基準クロック信号を生成し、スイッチ部1fを介して各部1b,1c,1d,1eに分配する。スイッチ部1fは、各部1b〜1eの間において送受信されるメッセージデータをスイッチングするレイヤ2スイッチである。
The
装置間インターフェース部1bは、他の無線ネットワーク制御装置1、無線基地局装置2、及び移動マルチメディア交換システム4との通信などを処理する。通信は、例えばギガビットイーサネット(GbE)技術により行われる。制御信号終端部1cは、他の無線ネットワーク制御装置1、無線基地局装置2、及び移動マルチメディア交換システム4などから受信した制御信号を終端処理する。
The inter-device interface unit 1b processes communication with other radio network control device 1, radio
装置制御部1dは、オペレーションシステム5からの制御信号の終端処理、及びOAM(Operation Administration and Maintenance)制御などを行う。信号処理部1eは、上記のダイバーシチハンドオーバ制御に加えて、無線回線のMAC(Media Access Control)層多重分離処理、及び、呼処理などの制御信号の終端処理を行う。
The
無線ネットワーク制御装置1は、高速で信頼性が高い処理を行うために、マルチプロセッサシステムを備えている。図3は、マルチプロセッサシステムの構成を示す構成図である。 The wireless network control device 1 includes a multiprocessor system in order to perform high-speed and highly reliable processing. FIG. 3 is a configuration diagram showing the configuration of the multiprocessor system.
本実施例に係るマルチプロセッサシステムは、信号処理部1eにおいて呼処理機能が備えられた基板ユニットに設けられているものとするが、これに限定されず、他の機能部1b〜1dに設けられてもよい。マルチプロセッサシステムは、メインプロセッサ11と、サブプロセッサ12と、割り込み処理部13と、PCI(Peripheral Component Interconnect)バス14と、インターフェース部101,102とを含む。マルチプロセッサシステムは、さらに、ROM(Read Only Memory)171,172と、RAM(Random Access Memory)161,162と、バッファ15と、障害情報記録部18とを含む。
The multiprocessor system according to the present embodiment is provided in a board unit provided with a call processing function in the signal processing unit 1e, but is not limited thereto, and is provided in other functional units 1b to 1d. May be. The multiprocessor system includes a
メインプロセッサ11、及びサブプロセッサ12は、CPUやネットワークプロセッサなどの演算処理回路である。メインプロセッサ11は、ROM171、RAM161、及び蓄積部15と接続されている。サブプロセッサ12は、ROM172、RAM162、及び障害情報記録部18と接続されている。ROM171,172は、メインプロセッサ11、及びサブプロセッサ12の動作させるプログラムをそれぞれ記憶している。RAM161,162は、それぞれ、メインプロセッサ11、及びサブプロセッサ12のワーキングメモリとして機能する。
The
メインプロセッサ11は、無線ネットワーク装置1内の他の機能部1b〜1dからインターフェース部101を介して、通話の音声、及びデータ通信の情報などを含むメッセージデータを受信し、所定のプロトコルに基づいて処理する。また、メインプロセッサ11は、メッセージデータの統計情報を収集することによってネットワーク状況の監視なども行う。なお、以降の説明では、このメッセージデータを、「呼処理データ」と表記する。
The
図4には、呼処理データの一例が示されている。呼処理データは、送信元ID70、宛先ID71、メッセージID72、優先度情報73、及びメッセージ74などを含む。送信元ID70、及び宛先ID71は、送信元、及び宛先となるデバイス、またはソフトウェアのタスクなどをそれぞれ示す。メッセージID72はメッセージ種別を示し、優先度情報73はメッセージの優先度を示す。また、メッセージ74は、データ本体である。
FIG. 4 shows an example of call processing data. The call processing data includes a
メインプロセッサ11は、処理済みの呼処理データを、PCIバス14を介してサブプロセッサ12に送信する。サブプロセッサ12は、メインプロセッサ11から受信した呼処理データについて、メインプロセッサ11において行われない他の処理を行う。なお、呼処理データは、PCIバス14に限定されず、例えばDMA(Direct Memory Access)、I2C(Inter−Integrated Circuit)、イーサネット、またはSPI(Serial Pheripheral Interface)などの他の通信手段により送受信されてもよい。
The
また、メインプロセッサ11、及びサブプロセッサ12は、割り込み処理部13を介して、各種の通知を送受信する。割り込み処理部13は、プロセッサ11,12がアクセス可能なメモリ空間を有し、各通知に対応するマスクレジスタ、及びステータスレジスタを有する。メインプロセッサ11、及びサブプロセッサ12は、マスクレジスタのマスク状態を解除し、ステータスレジスタをアクティブ状態とすることによって、他方のプロセッサ12,11に、該当するステータスレジスタに応じた割り込み処理を発生させる。マスクレジスタは、該当する割り込み処理の発生後、再びマスク状態とされる。このように、割り込み処理を用いて通知の送受信を行うことにより、メインプロセッサ11、及びサブプロセッサ12は、各通知を契機とする処理を即時に実行することが可能となる。なお、通知は、上述した他の通信手段により行われてもよい。
The
上述した呼処理データに関する処理などは、メインプロセッサ11、及びサブプロセッサ12に形成された各機能により行われる。図5は、メインプロセッサ11、及びサブプロセッサ12の機能構成を示す構成図である。
The processing related to the call processing data described above is performed by each function formed in the
メインプロセッサ11は、読出処理部110と、送信処理部111と、トラフィック監視部112と、第1障害監視部113と、第2障害管理部114と、通信処理部115とを含む。サブプロセッサ12は、受信処理部121と、障害検出部122と、障害処理部123と、プロセッサコア124と、通信処理部125とを含む。なお、各部110〜115、121〜125は、プログラムに組み込まれたオペレーティングシステムに基づいて動作する。
The
通信処理部115,125は、通信ドライバ、及び割り込みドライバとして機能し、PCIバス14を介した呼処理データの送受信、及び、割り込み処理部13を介した各通知の送受信をそれぞれ処理する。メインプロセッサ11の送信処理部111は、インターフェース部101から受信した呼処理データを、通信処理部115、及びPCIバス14を介してサブプロセッサ12に送信する。サブプロセッサ12の受信処理部121は、通信処理部125を介して呼処理データを受信する。
The
障害検出部122は、サブプロセッサ12に生じた障害を検出する。障害としては、例えばウォッチドッグタイムアウトが挙げられる。ウォッチドッグタイムアウトは、サブプロセッサ12が、何らかの要因によりウォッチドッグタイマのクリア命令を発行できないときに生ずる。なお、障害は、ウォッチドッグタイムアウトに限定されず、他のエラーであってもよい。
The
障害検出部122は、障害を検出したとき、復旧処理に先立って障害の発生通知、及び障害情報の記録を行うため、プロセッサコア124に対して、自律的なリセットの禁止設定を行う。障害検出部122は、障害処理部123を、割り込み処理として起動する。
When a failure is detected, the
障害処理部123は、障害情報記録部18に該障害に関する情報を記録する。障害がウォッチドッグタイムアウトの場合、情報としては、ダンプ処理により収集したサブプロセッサ12の障害要因レジスタの内容などが挙げられる。なお、障害情報記録部18は、RAMやROMなどの記録手段であり、障害処理部123からメモリドライバを介してアクセスされる。なお、障害情報記録部18は、RAM162、及びROM172の少なくとも一方に含まれてもよい。
The
また、障害処理部123は、障害の発生通知を、通信処理部115を介してメインプロセッサ11に送信する。このとき、通信処理部115は、割り込み処理部13のマスクレジスタ、及びステータスレジスタにアクセスすることによって、メインプロセッサ11に対して割り込み処理を発生させる。
Further, the
メインプロセッサ11の通信処理部125は、障害の発生通知がなされたとき、第1障害管理部113を、割り込み処理として起動させる。第1障害管理部113は、RAM161に記憶された障害管理情報161bを、「障害有」の状態に更新する。
The
送信処理部111は、障害管理情報161bを参照し、障害管理情報161bが「障害有」を示す場合、呼処理データの送信を停止して、送信待ちの呼処理データを蓄積部15に蓄積する。このため、送信処理部111は、障害が発生しているサブプロセッサ12に呼処理データを送信することがない。
The transmission processing unit 111 refers to the
蓄積部15は、例えばRAMであり、呼処理データが蓄積されるバッファとして機能する。なお、蓄積部15は、RAM161とは別に構成されているように記載されているが、RAM161の内部に含まれてもよいし、例えばハードディスクドライブなどの他のデータ蓄積手段であってもよい。
The
また、第1障害管理部113は、トラフィック監視部112から、呼処理データのトラフィック量を示す情報を取得し、この情報に基づいて、RAM161に記憶されたトラフィック情報161aを更新する。トラフィック情報161aは、例えば、呼処理データのトラフィック量が所定の閾値より多い場合に「多い」を示し、少ない場合に「少ない」を示すように更新される。つまり、トラフィック情報161aは、障害が発生した時点における呼処理データのトラフィック量を示す。
In addition, the first
送信処理部111は、トラフィック情報161aを参照し、トラフィック情報161aが「多い」を示す場合、優先度情報73が高優先を示す呼処理データのみを、蓄積部15に蓄積する。一方、トラフィック情報161aが「少ない」を示す場合、送信処理部111は、優先度情報73に依らずに、全ての呼処理データを蓄積部15に蓄積する。このように、メインプロセッサ11は、送信する呼処理データのトラフィック量に応じて、蓄積部15に蓄積する呼処理データを選択するから、効率的に蓄積部15を利用することができる。なお、上記の選択手法は、一例であり、他の手法を用いてもよい。
The transmission processing unit 111 refers to the traffic information 161 a, and stores only the call processing data in which the
トラフィック監視部112は、時間間隔をおいて、インターフェース部101に入力される呼処理データのトラフィックを監視する。トラフィック監視部112は、第1障害管理部113からの要求に応じて、トラフィック量を統計的に算出し、トラフィック量を示す情報を第1障害管理部113に出力する。
The
第1障害管理部113は、障害の発生通知を受信した後、復旧指示を、通信処理部115、及び割り込み処理部13を介してサブプロセッサ12に送信する。サブプロセッサ12において、障害処理部123は、復旧指示を、通信処理部125を介して受信する。障害処理部123は、復旧指示を受信した後、障害の復旧処理を行う。より具体的には、障害処理部123は、復旧指示に従い、プロセッサコア124に対してリセット命令を発行する。
After receiving the failure occurrence notification, the first
プロセッサコア124は、リセット命令を受けたとき、リセットベクタを起動し、ROM172に記憶されているBOOTプログラム172aを読み出して実行する。プロセッサコア124は、BOOTプログラム172aの実行によりプロセッサ12の初期化などの処理を行う。このため、BOOTプログラム172aが実行されている間、プロセッサ12は、呼処理データを受信することができない。プロセッサコア124は、復旧処理、つまりリセットを行った後、復旧通知を、通信処理部125、及び割り込み処理部13を介してメインプロセッサ11に送信する。
When receiving the reset instruction, the
このように、メインプロセッサ11は、障害の発生通知を受信した後、復旧指示をサブプロセッサ12に送信する。また、サブプロセッサ12は、メインプロセッサ11から復旧指示を受信した後、復旧処理を行う。したがって、障害発生時のプロセッサ11,12間の処理のタイミング整合が、効果的に行われる。
As described above, the
メインプロセッサ11の通信処理部125は、復旧通知がなされたとき、第2障害管理部114を、割り込み処理として起動させる。第2障害管理部114は、RAM161に記憶された障害管理情報161bを、「障害無」の状態に更新する。送信処理部111は、障害管理情報161bを参照し、障害管理情報161bが「障害無」を示す場合、呼処理データを、蓄積部15に蓄積せずに、サブプロセッサ12に送信する。
The
また、第2障害管理部114は、読出処理部110を起動する。読出処理部110は、蓄積部15に蓄積された呼処理データを、通信処理部115、及びPCIバス14を介してサブプロセッサ12に送信する。送信は、蓄積部15に蓄積された呼処理データがなくなるまで行われる。送信された呼処理データは、サブプロセッサ12において、通信処理部125を介して受信処理部121により受信される。
Further, the second
このように、メインプロセッサ11は、障害の発生通知を受信したとき、呼処理データの送信を停止して、送信待ちのデータを蓄積部15に蓄積し、復旧通知を受信した後、蓄積部15に蓄積された呼処理データをサブプロセッサ12に送信する。したがって、メインプロセッサ11は、障害発生中、または復旧処理(リセット)中、サブプロセッサ12に呼処理データを送信せず、蓄積された呼処理データは、障害復旧後に送信されるから、プロセッサ間通信における呼処理データの損失が抑制される。
As described above, when the
次に、図6〜図10を参照して、メインプロセッサ11、及びサブプロセッサ12の障害発生時の動作を説明する。図6には、サブプロセッサ12の動作が示されている。なお、以降の説明において、図10に示されたラダーチャートを適宜に参照する。
Next, operations when a failure occurs in the
障害検出部122は、障害の発生を検出すると(ステップSt1のYES)、プロセッサコア124に対して自律的なリセットの禁止設定を行う(ステップSt2)。リセットの禁止設定は、例示したウォッチドッグタイムアウトのように、自律的なリセットを伴う場合に行われ、そうでない場合、行われなくてもよい。
When the
次に、障害処理部123が、割り込み処理として起動し、障害に関する情報を収集して、障害情報記録部18に記録する(ステップSt3)。ここで、障害処理部123は、自プロセッサ12のファイルシステムを用いて障害情報記録部18に記録してもよいが、これに限定されない。
Next, the
例えば、障害処理部123は、該情報を、通信処理部125を介してメインプロセッサ11に送信し、メインプロセッサ11のファイルシステムを用いて、RAMなどの記録手段に記録してもよい。また、障害処理部123は、ネットワークを経由して、外部のファイルサーバにアクセスすることにより当該記録処理を行ってもよい。さらに、障害処理部123は、自プロセッサ12のファイルシステム、メインプロセッサ11のファイルシステム、及び外部のファイルサーバの各容量値を取得しておき、該情報の情報量と比較することによって、情報を格納可能なものを選択してもよい。
For example, the
次に、障害処理部123は、図10の符号C3に示されるように、メインプロセッサ11に障害の発生通知を送信する(ステップSt4)。障害の発生通知は、例えば障害の種別、障害要因、及び発生時刻などの情報を含んでもよい。なお、障害の発生通知は、上記のステップSt3の処理に先立って行われてもよい。
Next, the
障害処理部123は、障害の発生通知を送信した後、待機処理を行う。障害処理部123は、図10の符号C4に示されるように、メインプロセッサ11から復旧指示を受信すると(ステップSt5のYES)、処理を再開する。
The
障害処理部123は、図10の符号C7に示されるように、プロセッサコア124に対してリセット命令を発行する(ステップSt6)。そして、プロセッサコア124は、リセット命令に従い、リセットベクタを起動する(ステップSt7)。これにより、BOOTプログラム172aが実行される。
The
次に、プロセッサコア124は、図10の符号C8に示されるように、メインプロセッサ11に復旧通知を送信して(ステップSt6)、自プロセッサ12の初期化処理を行って(ステップSt9)、処理を終了する。このようにして、サブプロセッサ12の処理は実行される。
Next, the
図7は、第1障害管理部113の動作を示すフローチャートである。第1障害管理部113は、図10の符号C3に示されるように、サブプロセッサ12から障害の発生通知を受信すると(ステップSt11のYES)、割り込み処理として起動され、障害管理情報161bを「障害有」の状態に更新する(ステップSt12)。これにより、送信処理部111は、図10の符号C1,C2に示される呼処理データの送信を停止し、符号C4,C5に示されるように、呼処理データを蓄積部15に蓄積する。
FIG. 7 is a flowchart showing the operation of the first
次に、第1障害管理部113は、トラフィック監視部112に要求して取得した呼処理データのトラフィック量に基づいて、トラフィック情報161aを「多い」、または「少ない」の状態に更新する。送信処理部111は、トラフィック情報161aに応じて、蓄積部15に蓄積する呼処理データを選択する。
Next, the first
次に、第1障害管理部113は、図10の符号C6に示されるように、復旧指示をサブプロセッサ12に送信し(ステップSt14)、処理を終了する。このようにして、第1障害管理部113の処理は実行される。
Next, as indicated by reference numeral C6 in FIG. 10, the first
図8は、第2障害管理部114の動作を示すフローチャートである。第2障害管理部114は、図10の符号C8に示されるように、サブプロセッサ12から復旧通知を受信すると(ステップSt15のYES)、割り込み処理として起動され、障害管理情報161bを「障害無」の状態に更新する(ステップSt16)。これにより、送信処理部111は、図10の符号C4,C5に示される呼処理データの蓄積処理を停止し、符号C12,C13に示されるように、呼処理データのサブプロセッサ12への送信を再開する。
FIG. 8 is a flowchart showing the operation of the second
次に、第2障害管理部114は、図10の符号C9に示される読み出し指示を、読出処理部110に出力する(ステップSt17)。これにより、読出処理部110は、図10の符号C10,C11に示されるように、蓄積部15から呼処理データを読み出して、サブプロセッサ12に送信する(ステップSt18)。第2障害管理部114は、蓄積部15に蓄積された全ての呼処理データが送信されると、処理を終了する。このようにして、第2障害管理部114の処理は実行される。
Next, the second
図9は、送信処理部111の動作を示すフローチャートである。送信処理部111は、図10の符号C1,C4,C12に示されるように、インターフェース部を介して呼処理データが入力されると(ステップSt21のYES)、起動される。送信処理部111は、障害管理情報161bを参照し、障害管理情報161bが「障害無」を示す場合(ステップSt22のYES)、図10の符号C2,C13に示されるように、送信待ちの呼処理データをサブプロセッサ12に送信して(ステップSt23)、処理を終了する。
FIG. 9 is a flowchart showing the operation of the transmission processing unit 111. The transmission processing unit 111 is activated when call processing data is input through the interface unit (YES in step St21), as indicated by reference numerals C1, C4, and C12 in FIG. The transmission processing unit 111 refers to the
一方、障害管理情報161bが「障害有」を示す場合(ステップSt22のNO)、送信処理部111は、トラフィック情報161aを参照する(ステップSt24)。トラフィック情報161aが「多い」を示す場合(ステップSt24のYES)、送信処理部111は、呼処理データの優先度情報73を判別する(ステップSt25)。
On the other hand, when the
送信処理部111は、優先度情報73が高優先を示す場合(ステップSt25のYES)、図10の符号C5に示されるように、送信待ちの呼処理データを蓄積部15に蓄積して(ステップSt26)、処理を終了する。他方、優先度情報73が高優先を示さない(低優先など)場合(ステップSt25のNO)、送信処理部111は、呼処理データを蓄積することなく処理を終了する。
If the
また、トラフィック情報161aが「少ない」を示す場合(ステップSt24のNO)、送信処理部111は、呼処理データの優先度に依らず、呼処理データを蓄積部15に蓄積して(ステップSt26)、処理を終了する。このようにして、第2障害管理部114の処理は実行される。
When the traffic information 161a indicates “low” (NO in step St24), the transmission processing unit 111 stores the call processing data in the
これまで述べたように、実施例に係るマルチプロセッサシステムは、呼処理データを送信するメインプロセッサ11と、メインプロセッサ11から呼処理データを受信するサブプロセッサ12と、呼処理データが蓄積される蓄積部15とを有する。サブプロセッサ12は、障害の発生通知をメインプロセッサ11に送信し、該障害の復旧処理を行った後、復旧通知をメインプロセッサ11に送信する。一方、メインプロセッサ11は、障害の発生通知を受信したとき、呼処理データの送信を停止して、送信待ちの呼処理データを蓄積部15に蓄積し、復旧通知を受信した後、蓄積部15に蓄積された呼処理データをサブプロセッサ12に送信する。
As described above, the multiprocessor system according to the embodiment includes a
したがって、メインプロセッサ11は、サブプロセッサ12に障害が発生したことを認識して、送信待ちの呼処理データを、サブプロセッサ12に送信することなく、蓄積部15に退避させることができる。さらに、メインプロセッサ11は、サブプロセッサ12が障害の復旧処理を行ったことを認識して、蓄積部15に退避させた呼処理データをサブプロセッサ12に送信することができる。したがって、障害発生中、または復旧処理中(リセット中)のサブプロセッサ12に呼処理データが送信されることがなく、呼処理データの損失が抑制される。
Therefore, the
また、メインプロセッサ11、及びサブプロセッサ12によるプロセッサ間通信方法には、上述した以下の工程(1)〜(6)が含まれる。
(1)メインプロセッサ11から送信された呼処理データを受信するサブプロセッサ12が、障害の発生通知をメインプロセッサ11に送信する工程(図6のステップSt4)
(2)メインプロセッサ11が、障害の発生通知を受信したとき、データの送信を停止して、送信待ちの呼処理データを蓄積部15に蓄積する工程(図9のステップSt26)
(3)メインプロセッサ11が、障害の発生通知を受信した後、復旧指示をサブプロセッサ12に送信する工程(図7のステップSt14)
(4)サブプロセッサ12が、復旧指示を受信した後、障害の復旧処理を行う工程(図6のステップSt6)
(5)サブプロセッサ12が、復旧処理を行った後、復旧通知をメインプロセッサ11に送信する工程(図6のステップSt8)
(6)メインプロセッサ11が、復旧通知を受信した後、蓄積部15に蓄積されたデータをサブプロセッサ12に送信する工程(図8のステップSt18)
The inter-processor communication method using the
(1) The sub-processor 12 that receives the call processing data transmitted from the
(2) When the
(3) The
(4) Step of the failure recovery processing after the
(5) The sub-processor 12 performs a recovery process and then transmits a recovery notification to the main processor 11 (step St8 in FIG. 6).
(6) Step of transmitting the data stored in the
したがって、このプロセッサ間通信方法によっても、上述した作用効果が得られる。なお、本実施例において、データの一例として呼処理データを挙げたが、これに限定されることはなく、他のデータであってもよい。 Therefore, the above-described effects can be obtained by this inter-processor communication method. In the present embodiment, call processing data is given as an example of data, but the present invention is not limited to this, and other data may be used.
また、本実施例において、呼処理データは、メインプロセッサ11からサブプロセッサ12に送信され、障害発生時、メインプロセッサ11により蓄積部15に蓄積されるが、これに限定されず、メインプロセッサ11、及びサブプロセッサ12の役割を互いに入れ替えてもよい。
In the present embodiment, the call processing data is transmitted from the
すなわち、サブプロセッサ12からメインプロセッサ11に送信されるデータが、メインプロセッサ11において障害が発生したとき、サブプロセッサ12によって蓄積部に蓄積されてもよい。この場合、サブプロセッサ12は、メインプロセッサ11が障害の復旧処理を行った後、蓄積部からデータを読み出してメインプロセッサ11に送信する。この場合も、上述した作用効果が得られる。
That is, data transmitted from the
以上、好ましい実施例を参照して本発明の内容を具体的に説明したが、本発明の基本的技術思想及び教示に基づいて、当業者であれば、種々の変形態様を採り得ることは自明である。 Although the contents of the present invention have been specifically described above with reference to the preferred embodiments, it is obvious that those skilled in the art can take various modifications based on the basic technical idea and teachings of the present invention. It is.
なお、以上の説明に関して更に以下の付記を開示する。
(付記1) データを送信する第1のプロセッサと、
前記第1のプロセッサからデータを受信する第2のプロセッサと、
データが蓄積される蓄積部とを有し、
前記第2のプロセッサは、障害の発生通知を前記第1のプロセッサに送信し、前記障害の復旧処理を行った後、復旧通知を前記第1のプロセッサに送信し、
前記第1のプロセッサは、前記障害の発生通知を受信したとき、データの送信を停止して送信待ちのデータを前記蓄積部に蓄積し、前記復旧通知を受信した後、前記蓄積部に蓄積されたデータを前記第2のプロセッサに送信することを特徴とするマルチプロセッサシステム。
(付記2) 前記第1のプロセッサは、前記障害の発生通知を受信した後、復旧指示を前記第2のプロセッサに送信し、
前記第2のプロセッサは、前記復旧指示を受信した後、前記障害の復旧処理を行うことを特徴とする付記1に記載のマルチプロセッサシステム。
(付記3) 前記第1のプロセッサは、送信するデータのトラフィック量に応じて、前記蓄積部に蓄積するデータを選択することを特徴とする付記1または2に記載のマルチプロセッサシステム。
(付記4) 第1のプロセッサから送信されたデータを受信する第2のプロセッサが、障害の発生通知を前記第1のプロセッサに送信する工程と、
前記第1のプロセッサが、前記障害の発生通知を受信したとき、データの送信を停止して、送信待ちのデータを蓄積部に蓄積する工程と、
前記第2のプロセッサが、前記障害の復旧処理を行う工程と、
前記第2のプロセッサが、前記復旧処理を行った後、復旧通知を前記第1のプロセッサに送信する工程と、
前記第1のプロセッサが、前記復旧通知を受信した後、前記蓄積部に蓄積されたデータを前記第2のプロセッサに送信する工程とを含むことを特徴とするプロセッサ間通信方法。
(付記5) 前記第1のプロセッサが、前記障害の発生通知を受信した後、復旧指示を前記第2のプロセッサに送信する工程を含み、
前記第2のプロセッサは、前記復旧指示を受信した後、前記障害の復旧処理を行うことを特徴とする付記4に記載のプロセッサ間通信方法。
(付記6) 前記第1のプロセッサは、送信するデータのトラフィック量に応じて、前記蓄積部に蓄積するデータを選択することを特徴とする付記4または5に記載のプロセッサ間通信方法。
In addition, the following additional notes are disclosed regarding the above description.
(Supplementary note 1) a first processor for transmitting data;
A second processor for receiving data from the first processor;
A storage unit for storing data;
The second processor transmits a failure occurrence notification to the first processor, performs the failure recovery process, and then transmits a recovery notification to the first processor.
When the first processor receives the failure occurrence notification, the first processor stops data transmission, accumulates data waiting to be transmitted in the storage unit, receives the recovery notification, and then accumulates the data in the storage unit. A multiprocessor system, wherein the data is transmitted to the second processor.
(Supplementary Note 2) After receiving the failure occurrence notification, the first processor sends a recovery instruction to the second processor,
The multiprocessor system according to appendix 1, wherein the second processor performs the recovery process of the failure after receiving the recovery instruction.
(Supplementary note 3) The multiprocessor system according to
(Supplementary note 4) a second processor that receives data transmitted from the first processor transmits a failure occurrence notification to the first processor;
When the first processor receives the failure notification, stops transmitting data and accumulates data waiting to be transmitted in an accumulation unit;
The second processor performing the failure recovery process;
The second processor, after performing the recovery process, sending a recovery notification to the first processor;
And a step of transmitting the data stored in the storage unit to the second processor after the first processor receives the recovery notification.
(Supplementary Note 5) The first processor includes a step of transmitting a recovery instruction to the second processor after receiving the failure occurrence notification,
The interprocessor communication method according to appendix 4, wherein the second processor performs the failure recovery process after receiving the recovery instruction.
(Additional remark 6) The said 1st processor selects the data accumulate | stored in the said accumulation | storage part according to the traffic amount of the data to transmit, The interprocessor communication method of Additional remark 4 or 5 characterized by the above-mentioned.
1 無線ネットワーク制御装置
11 メインプロセッサ(第1のプロセッサ)
12 サブプロセッサ(第2のプロセッサ)
15 蓄積部
1 wireless
12 Sub-processor (second processor)
15 Accumulator
Claims (3)
前記第1のプロセッサからデータを受信する第2のプロセッサと、
データが蓄積される蓄積部とを有し、
前記第2のプロセッサは、障害の発生通知を前記第1のプロセッサに送信し、前記障害の復旧処理を行った後、復旧通知を前記第1のプロセッサに送信し、
前記第1のプロセッサは、
前記障害の発生通知を受信したとき、データの送信を停止して、送信するデータのトラフィック量に応じ送信待ちのデータを選択し、該選択したデータを前記蓄積部に蓄積し、
前記復旧通知を受信した後、前記蓄積部に蓄積されたデータを前記第2のプロセッサに送信することを特徴とするマルチプロセッサシステム。 A first processor for transmitting data;
A second processor for receiving data from the first processor;
A storage unit for storing data;
The second processor transmits a failure occurrence notification to the first processor, performs the failure recovery process, and then transmits a recovery notification to the first processor.
Said first processor,
When receiving notification of the occurrence of pre-Symbol failure, it stops the transmission of data, select the data waiting for transmission according to the traffic volume of the data to be transmitted, stores the selected data in the storage unit,
After receiving the pre-Symbol recovery notification, a multi-processor system and transmitting the data stored in the storage unit to the second processor.
前記第2のプロセッサは、前記復旧指示を受信した後、前記障害の復旧処理を行うことを特徴とする請求項1に記載のマルチプロセッサシステム。 The first processor, after receiving the failure occurrence notification, transmits a recovery instruction to the second processor;
2. The multiprocessor system according to claim 1, wherein the second processor performs the failure recovery processing after receiving the recovery instruction. 3.
前記第1のプロセッサが、前記障害の発生通知を受信したとき、データの送信を停止して、送信するデータのトラフィック量に応じ送信待ちのデータを選択する工程と、
該選択したデータを蓄積部に蓄積する工程と、
前記第2のプロセッサが、前記障害の復旧処理を行う工程と、
前記第2のプロセッサが、前記復旧処理を行った後、復旧通知を前記第1のプロセッサに送信する工程と、
前記第1のプロセッサが、前記復旧通知を受信した後、前記蓄積部に蓄積されたデータを前記第2のプロセッサに送信する工程とを含むことを特徴とするプロセッサ間通信方法。 A second processor that receives data transmitted from the first processor, and transmits a failure occurrence notification to the first processor;
When the first processor receives the failure occurrence notification, stops transmitting data and selects data waiting for transmission according to the traffic volume of the data to be transmitted;
Storing the selected data in a storage unit;
The second processor performing the failure recovery process;
The second processor, after performing the recovery process, sending a recovery notification to the first processor;
And a step of transmitting the data stored in the storage unit to the second processor after the first processor receives the recovery notification.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012119878A JP5962210B2 (en) | 2012-05-25 | 2012-05-25 | Multiprocessor system and interprocessor communication method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012119878A JP5962210B2 (en) | 2012-05-25 | 2012-05-25 | Multiprocessor system and interprocessor communication method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013246642A JP2013246642A (en) | 2013-12-09 |
JP5962210B2 true JP5962210B2 (en) | 2016-08-03 |
Family
ID=49846353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012119878A Expired - Fee Related JP5962210B2 (en) | 2012-05-25 | 2012-05-25 | Multiprocessor system and interprocessor communication method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5962210B2 (en) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9892084B2 (en) | 2013-12-10 | 2018-02-13 | Apple Inc. | Methods and apparatus for virtual channel allocation via a high speed bus interface |
US10459674B2 (en) | 2013-12-10 | 2019-10-29 | Apple Inc. | Apparatus and methods for packing and transporting raw data |
US9830289B2 (en) | 2014-09-16 | 2017-11-28 | Apple Inc. | Methods and apparatus for aggregating packet transfer over a virtual bus interface |
US9971397B2 (en) | 2014-10-08 | 2018-05-15 | Apple Inc. | Methods and apparatus for managing power with an inter-processor communication link between independently operable processors |
JP6447047B2 (en) * | 2014-11-20 | 2019-01-09 | 日本電気株式会社 | Transmission / reception control device and transmission / reception control method, node device, multi-node system, and computer program |
US9842036B2 (en) * | 2015-02-04 | 2017-12-12 | Apple Inc. | Methods and apparatus for controlled recovery of error information between independently operable processors |
US10042794B2 (en) | 2015-06-12 | 2018-08-07 | Apple Inc. | Methods and apparatus for synchronizing uplink and downlink transactions on an inter-device communication link |
US10085214B2 (en) | 2016-01-27 | 2018-09-25 | Apple Inc. | Apparatus and methods for wake-limiting with an inter-device communication link |
US10191852B2 (en) | 2016-02-29 | 2019-01-29 | Apple Inc. | Methods and apparatus for locking at least a portion of a shared memory resource |
US10198364B2 (en) | 2016-03-31 | 2019-02-05 | Apple Inc. | Memory access protection apparatus and methods for memory mapped access between independently operable processors |
US10523867B2 (en) | 2016-06-10 | 2019-12-31 | Apple Inc. | Methods and apparatus for multi-lane mapping, link training and lower power modes for a high speed bus interface |
US10775871B2 (en) | 2016-11-10 | 2020-09-15 | Apple Inc. | Methods and apparatus for providing individualized power control for peripheral sub-systems |
US10591976B2 (en) | 2016-11-10 | 2020-03-17 | Apple Inc. | Methods and apparatus for providing peripheral sub-system stability |
US10346226B2 (en) | 2017-08-07 | 2019-07-09 | Time Warner Cable Enterprises Llc | Methods and apparatus for transmitting time sensitive data over a tunneled bus interface |
US10331612B1 (en) | 2018-01-09 | 2019-06-25 | Apple Inc. | Methods and apparatus for reduced-latency data transmission with an inter-processor communication link between independently operable processors |
US11792307B2 (en) | 2018-03-28 | 2023-10-17 | Apple Inc. | Methods and apparatus for single entity buffer pool management |
US11381514B2 (en) | 2018-05-07 | 2022-07-05 | Apple Inc. | Methods and apparatus for early delivery of data link layer packets |
US10430352B1 (en) | 2018-05-18 | 2019-10-01 | Apple Inc. | Methods and apparatus for reduced overhead data transfer with a shared ring buffer |
US10585699B2 (en) | 2018-07-30 | 2020-03-10 | Apple Inc. | Methods and apparatus for verifying completion of groups of data transactions between processors |
US10846224B2 (en) | 2018-08-24 | 2020-11-24 | Apple Inc. | Methods and apparatus for control of a jointly shared memory-mapped region |
US10719376B2 (en) | 2018-08-24 | 2020-07-21 | Apple Inc. | Methods and apparatus for multiplexing data flows via a single data structure |
US11558348B2 (en) | 2019-09-26 | 2023-01-17 | Apple Inc. | Methods and apparatus for emerging use case support in user space networking |
US11829303B2 (en) | 2019-09-26 | 2023-11-28 | Apple Inc. | Methods and apparatus for device driver operation in non-kernel space |
US11606302B2 (en) | 2020-06-12 | 2023-03-14 | Apple Inc. | Methods and apparatus for flow-based batching and processing |
US11775359B2 (en) | 2020-09-11 | 2023-10-03 | Apple Inc. | Methods and apparatuses for cross-layer processing |
US11954540B2 (en) | 2020-09-14 | 2024-04-09 | Apple Inc. | Methods and apparatus for thread-level execution in non-kernel space |
US11799986B2 (en) | 2020-09-22 | 2023-10-24 | Apple Inc. | Methods and apparatus for thread level execution in non-kernel space |
US11876719B2 (en) | 2021-07-26 | 2024-01-16 | Apple Inc. | Systems and methods for managing transmission control protocol (TCP) acknowledgements |
US11882051B2 (en) | 2021-07-26 | 2024-01-23 | Apple Inc. | Systems and methods for managing transmission control protocol (TCP) acknowledgements |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05265989A (en) * | 1992-03-16 | 1993-10-15 | Mitsubishi Electric Corp | Multiprocessor system |
JPH0651935U (en) * | 1992-12-18 | 1994-07-15 | マックス株式会社 | Failure management device in multi-CPU system |
-
2012
- 2012-05-25 JP JP2012119878A patent/JP5962210B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013246642A (en) | 2013-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5962210B2 (en) | Multiprocessor system and interprocessor communication method | |
CN107391276B (en) | Distributed monitor method, interception control device and system | |
CN106980582B (en) | Data processing method and device | |
JP6724998B2 (en) | Server device, cluster system, cluster control method and program | |
US20120102482A1 (en) | Method for Communication System Service Upgrade and Upgrade Container Device Thereof | |
JPWO2007029297A1 (en) | Network interface control program and network interface control device | |
CN101437175B (en) | Method, apparatus and system for processing disaster-tolerating switch | |
US9706440B2 (en) | Mobile communication system, call processing node, and communication control method | |
CN107317731A (en) | A kind of detection method of client and server connection state | |
US20090201816A1 (en) | Communication device, and flow control method and program product for use in the same | |
CN112383414B (en) | Dual-machine hot backup quick switching method and device | |
JP5408620B2 (en) | Data distribution management system and data distribution management method | |
CN102917068A (en) | Self-adaptive large-scale cluster communication system and self-adaptive large-scale cluster communication method | |
JP2009278297A (en) | Gateway device, communication system including the same, and communication method | |
CN112217718A (en) | Service processing method, device, equipment and storage medium | |
JP4344333B2 (en) | Packet transfer apparatus, packet transfer network system, and packet transfer method | |
KR20150104435A (en) | Method of performing transition of operation mode for a routing processor | |
CN109413180B (en) | Data acquisition method, system and equipment and storage medium | |
CN109428821B (en) | Server, method for managing routing of mutual backup device and storage medium | |
JP6091333B2 (en) | Network management apparatus and network management method | |
JP2008197885A (en) | Application abnormal end processing system method therefor and program | |
JP5691248B2 (en) | Task takeover program, processing device, and computer system | |
CN115002020B (en) | OSPF-based data processing method and device | |
CN111654434B (en) | Flow switching method and device and forwarding equipment | |
CN113286321B (en) | Backup management method, device, equipment and machine readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150319 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160119 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160225 |
|
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: 20160531 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160613 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5962210 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |