JP6040183B2 - Load distribution processing apparatus and load distribution processing method - Google Patents

Load distribution processing apparatus and load distribution processing method Download PDF

Info

Publication number
JP6040183B2
JP6040183B2 JP2014027732A JP2014027732A JP6040183B2 JP 6040183 B2 JP6040183 B2 JP 6040183B2 JP 2014027732 A JP2014027732 A JP 2014027732A JP 2014027732 A JP2014027732 A JP 2014027732A JP 6040183 B2 JP6040183 B2 JP 6040183B2
Authority
JP
Japan
Prior art keywords
message
destination
transfer destination
score
distribution
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
Application number
JP2014027732A
Other languages
Japanese (ja)
Other versions
JP2015153250A (en
Inventor
泰文 小川
泰文 小川
白戸 宏佳
宏佳 白戸
紀貴 堀米
紀貴 堀米
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2014027732A priority Critical patent/JP6040183B2/en
Publication of JP2015153250A publication Critical patent/JP2015153250A/en
Application granted granted Critical
Publication of JP6040183B2 publication Critical patent/JP6040183B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、負荷分散処理技術に関し、特に、ユーザのセッション管理を行うアプリケーションサーバを有する通信システムにおける負荷分散処理装置及び負荷分散処理方法に関する。   The present invention relates to a load distribution processing technique, and more particularly to a load distribution processing apparatus and a load distribution processing method in a communication system having an application server for managing user sessions.

ユーザのセッション管理を行うアプリケーションサーバを有する通信システムにおいて、負荷分散処理装置をさらに備えて、複数のアプリケーションサーバに負荷を分散させる場合がある。この場合、負荷分散処理装置は、特定のユーザ端末(クライアント)同士の通信を特定のアプリケーションサーバへ転送させる。その際には、負荷分散処理装置には、ユーザ端末からの信号メッセージを、セッションを受け持つアプリケーションサーバへ割り振るための機能が必要となっている。従来、負荷分散処理装置がユーザ端末から受信した信号メッセージを転送する転送先サーバを決定するための方法として、信号メッセージを予め定められたルールに基づいて解析する手法が用いられている。   A communication system having an application server for managing user sessions may further include a load distribution processing device to distribute the load to a plurality of application servers. In this case, the load distribution processing device transfers communication between specific user terminals (clients) to a specific application server. In that case, the load distribution processing device needs a function for allocating the signal message from the user terminal to the application server that handles the session. Conventionally, a method of analyzing a signal message based on a predetermined rule has been used as a method for determining a transfer destination server to which the load distribution processing apparatus transfers a signal message received from a user terminal.

従来の信号メッセージの解析手法(以下、第1手法という)として、例えばSIP(Session Initiation Protocol)アプリケーションにおいてSIPヘッダのMethodやFrom、Toなどそれぞれのパラメータに対して予め判定条件を定義しておき、判定結果に応じて異なるアクションを実行させる手法がある(非特許文献1参照)。この第1手法によれば、判定条件を柔軟に定義できることから様々な状況に対応させることが可能である。   As a conventional signal message analysis method (hereinafter referred to as a first method), for example, in SIP (Session Initiation Protocol) application, determination conditions are defined in advance for each parameter such as Method, From, and To of the SIP header, There is a method of executing different actions depending on the determination result (see Non-Patent Document 1). According to the first method, the determination condition can be flexibly defined, so that it is possible to cope with various situations.

また、別の信号メッセージの解析手法(以下、第2手法という)として、サポートベクターマシン(以下、SVM)などの機械学習を利用してSIPメッセージの判定を行う手法がある(非特許文献2参照)。この第2手法は、事前に学習データを与えておくことで、詳細な判定条件を設定することなくメッセージ内容を適切に判定することができるものである。第2手法では、例えば学習データとして正常なメッセージと不正なメッセージとを与えておき、不正な信号メッセージをフィルタリングするといった用途が提案されている。また、第2手法は、別の用途として、機械学習の手法や判定条件を変えることで、信号メッセージの転送先を決定するといった用途にも利用可能である。   As another signal message analysis method (hereinafter referred to as a second method), there is a method of determining a SIP message using machine learning such as a support vector machine (hereinafter referred to as SVM) (see Non-Patent Document 2). ). In this second method, by giving learning data in advance, the message content can be appropriately determined without setting detailed determination conditions. In the second method, for example, a normal message and an illegal message are given as learning data, and an application of filtering an illegal signal message is proposed. In addition, the second method can be used for another purpose such as determining a transfer destination of a signal message by changing a machine learning method or a determination condition.

Arup Acharya et al, “A Programmable Message Classification Engine for Session Initiation Protocol (SIP)”, Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems - ANCS, 2007, P.185-194Arup Acharya et al, “A Programmable Message Classification Engine for Session Initiation Protocol (SIP)”, Proceedings of the 3rd ACM / IEEE Symposium on Architecture for networking and communications systems-ANCS, 2007, P.185-194 Raihana Ferdous et al, “CLASSIFICATION OF SIP MESSAGES BY A SYNTAX FILTER AND SVMs ( Extended Version)”, USA, IEEE, [Globecom 2012]Raihana Ferdous et al, “CLASSIFICATION OF SIP MESSAGES BY A SYNTAX FILTER AND SVMs (Extended Version)”, USA, IEEE, [Globecom 2012]

しかしながら、第1手法では、ユーザ数の多いシステムに対しては、判定条件の定義が非常に複雑となってしまう問題がある。加えて、第1手法では、アプリケーションサーバの負荷分散において、トラフィックの変動により生じる分散の偏りに対する追従も困難となる。   However, the first method has a problem that the definition of the determination condition becomes very complicated for a system having a large number of users. In addition, in the first method, it is difficult to follow the uneven distribution caused by the traffic fluctuation in the load distribution of the application server.

一方、第2手法では、複雑な判定条件の定義は不要となる利点があるものの、事前にアクションが決まっていることから、やはりアプリケーションサーバの負荷分散において、トラフィックの変動により生じる分散の偏りに対する追従を行うことができない。   On the other hand, the second method has the advantage that it is not necessary to define complicated judgment conditions, but since the actions are determined in advance, the load balancing of the application server also follows the dispersion bias caused by traffic fluctuations. Can not do.

本発明は、以上のような問題点に鑑みてなされたものであり、複雑な判定条件を設定せずに転送先を決定する計算を行うことができ、且つ、トラフィック変動により生じる振り分け先の偏りに対して追従して偏りを低減することができる負荷分散処理装置及び負荷分散処理方法を提供することを課題とする。   The present invention has been made in view of the above-described problems, and can perform calculation for determining a transfer destination without setting complicated determination conditions, and can distribute distribution destinations caused by traffic fluctuations. It is an object of the present invention to provide a load distribution processing device and a load distribution processing method capable of following the above and reducing the bias.

前記した課題を解決するため、本発明に係る負荷分散処理装置は、複数のユーザ端末と、各グループが少なくとも1つのアプリケーションサーバからなる複数のサーバグループと、前記ユーザ端末から受信するメッセージの転送先を前記複数のサーバグループのいずれかに決定して前記メッセージを振り分ける負荷分散処理装置と、を備える通信システムにおける前記負荷分散処理装置であって、学習データを用いて事前に学習したメッセージに含まれる語彙及びその転送先の組み合わせルールを規定する条件付確率式から、入力したメッセージの振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコア最上位のサーバグループを転送先として求めて転送先リストに登録すると共に、当該メッセージに含まれ前記スコアの算出に用いたパラメータである語彙及び前記候補の中から決定した振分け先をログ情報としてログ情報記憶手段に登録する転送先分類計算手段と、前記転送先分類計算手段で振分けられたメッセージを前記転送先リストに記載された対応する転送先へ送信する送信手段と、前記ログ情報記憶手段に記憶されたログ情報を定期的に振分け先別に集計し、振分け先の偏りが所定の第1閾値より大きい場合、最も多く振り分けられたサーバグループを振分け先とするメッセージのうち所定条件を満たすメッセージの振分け先を他のサーバグループに変更させると共に当該振分け先の変更を反映して前記学習データを再生成して更新するフィードバック手段と、を備えることを特徴とする。   In order to solve the above-described problem, a load distribution processing apparatus according to the present invention includes a plurality of user terminals, a plurality of server groups each of which includes at least one application server, and a transfer destination of a message received from the user terminals. And a load distribution processing device that distributes the message by determining to one of the plurality of server groups, the load distribution processing device in a communication system, and included in a message learned in advance using learning data From the conditional probability formula that prescribes the combination rule of the vocabulary and its forwarding destination, a score indicating the feature quantity as a candidate for the destination of the input message is calculated for each server group, and the server group with the highest score is used as the forwarding destination Request and register it in the forwarding list and before it is included in the message. Transfer destination classification calculation means for registering in log information storage means as log information the vocabulary that is a parameter used for calculating the score and the distribution destination determined from the candidates, and messages distributed by the transfer destination classification calculation means Transmission means for transmitting to a corresponding transfer destination described in the transfer destination list, and log information stored in the log information storage means are periodically tabulated for each distribution destination, and the distribution destination bias is a predetermined first threshold value. If it is larger, the distribution destination of the message satisfying the predetermined condition among the messages to which the most frequently distributed server group is the distribution destination is changed to another server group, and the learning data is reproduced by reflecting the change of the distribution destination And feedback means for updating.

かかる構成によれば、負荷分散処理装置は、事前に学習したメッセージに含まれる語彙及びその転送先の組み合わせルールを規定する条件付確率式を用いて、入力メッセージの振分け先を求める。したがって、メッセージのパラメータごとに条件を設定するような複雑な振分ルールを定義することなく、ユーザ端末からのメッセージを所定のアプリケーションサーバに振り分けるように宛先(転送先)解決を行い、セッションを維持させることができる。また、負荷分散処理装置は、メッセージを振り分ける計算に用いたパラメータ及び計算結果を示すログ情報に基づいて、振分け先の偏りが大きいことを検出した場合、偏って振り分けられたメッセージの振分け先を他のサーバグループに変更させると共に当該振分け先の変更を反映して学習データを再生成して更新する。これにより、トラフィック変動への追従により生じる負荷分散の偏りを平準化させ、トラフィックの分散を均一にすることができる。   According to such a configuration, the load distribution processing apparatus obtains the distribution destination of the input message using the conditional probability formula that defines the vocabulary included in the previously learned message and the combination rule of the transfer destination. Therefore, without defining complicated distribution rules that set conditions for each message parameter, address (forwarding destination) resolution is performed so that messages from user terminals are distributed to a predetermined application server, and the session is maintained. Can be made. In addition, when the load distribution processing device detects that the distribution destination is largely biased based on the parameters used for the calculation of the message distribution and the log information indicating the calculation result, the load distribution processing device can change the distribution destination of the unevenly distributed message. And the learning data is regenerated and updated to reflect the change of the distribution destination. As a result, it is possible to equalize the load distribution unevenness caused by following the traffic fluctuation and to make the traffic distribution uniform.

また、本発明に係る電負荷分散処理装置は、前記フィードバック手段が、前記ログ情報を記憶したログ情報記憶手段から、最も多く振り分けられたサーバグループを振分け先とするメッセージに関するログ情報を抽出して、抽出したログ情報に含まれる前記語彙を用いて前記振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコアが次点のサーバグループを求めて当該次点のスコアが所定の第2閾値よりも大きい場合に、当該次点のスコアに対応したサーバグループを当該メッセージの新たな振分け先にさせる処理をメッセージ毎に行うことで、前記メッセージの振分け先を変更させることが好ましい。   Further, in the electric load distribution processing device according to the present invention, the feedback means extracts log information related to a message having a server group distributed most frequently as a distribution destination from the log information storage means storing the log information. A score indicating a feature amount as a candidate for the distribution destination is calculated for each server group using the vocabulary included in the extracted log information, and a server group with the next score is obtained, and the score of the next score is predetermined. It is preferable to change the distribution destination of the message by performing, for each message, a process for causing the server group corresponding to the score of the next point to be a new distribution destination of the message when the second threshold is greater than .

かかる構成によれば、負荷分散処理装置は、最も多く振り分けられたサーバグループを振分け先とするメッセージについて前記条件付確率式からスコアを再計算し、求めたスコアを基に、次点のサーバグループのスコアが基準を満たせば、振分けルールに則った現在の振分け先に最も類似した転送先であるものとして、振分け先を変更して負荷を分散させる。したがって、負荷分散処理装置は、振分け先候補が例えば3つ以上存在していても次点を振分け先の変更候補としており、次点のスコアが基準を満たす場合にその振分け先を変更するので、メッセージの宛先解決(転送先解決)を優先した上で負荷分散を行うことができる。   According to such a configuration, the load distribution processing device recalculates the score from the conditional probability formula for a message having the most frequently distributed server group as a distribution destination, and based on the obtained score, the next server group If the score satisfies the criteria, the distribution destination is changed and the load is distributed as the transfer destination most similar to the current distribution destination according to the distribution rule. Therefore, the load distribution processing apparatus sets the next point as a change destination change candidate even if there are three or more distribution destination candidates, and changes the distribution destination when the score of the next point satisfies the criteria. Load distribution can be performed with priority given to message address resolution (forward address resolution).

また、本発明に係る電負荷分散処理装置は、前記入力したメッセージを前記転送先分類計算手段にて振り分けるための前処理として、当該メッセージから構文解析には不要な予め定められたパラメータを削除して構文解析の対象となるパラメータを前記スコアの算出に用いる語彙として抽出するフィルタリング手段をさらに備えることが好ましい。   In addition, the electric load distribution processing device according to the present invention deletes a predetermined parameter unnecessary for syntax analysis from the message as a pre-process for distributing the input message by the transfer destination classification calculation means. It is preferable to further include a filtering means for extracting a parameter to be parsed as a vocabulary used for calculating the score.

かかる構成によれば、負荷分散処理装置は、入力したメッセージから構文解析には不要な予め定められたパラメータを削除した上で、このフィルタリングされたメッセージに含まれる語彙を用いて前記条件付確率式からスコアを計算するので、この振分け先の演算処理を高速化することができる。   According to such a configuration, the load distribution processing device deletes a predetermined parameter unnecessary for syntax analysis from the input message, and then uses the vocabulary included in the filtered message to generate the conditional probability formula. Since the score is calculated from this, it is possible to speed up the calculation processing of the distribution destination.

また、本発明に係る電負荷分散処理装置は、前記ユーザ端末から受信するメッセージの転送先が前記転送先リストに既登録であることを示すパス条件を満たすか否かを判別し、前記パス条件を満たさないと判別した新規メッセージを前記フィルタリング手段に送り、前記パス条件を満たすと判別した継続メッセージを前記送信手段に送るパス条件判別手段をさらに備えることが好ましい。   Further, the electric load distribution processing device according to the present invention determines whether or not a path condition indicating that a transfer destination of a message received from the user terminal is already registered in the transfer destination list, and the path condition Preferably, the apparatus further comprises path condition determining means for sending a new message determined not to satisfy the condition to the filtering means and sending a continuation message determined to satisfy the path condition to the transmitting means.

かかる構成によれば、負荷分散処理装置は、入力したメッセージの転送先が転送先リストに既登録である場合、振分け先を計算することなく転送先にメッセージを転送するので、入力メッセージを効率よく振り分けることができる。   According to this configuration, when the transfer destination of the input message is already registered in the transfer destination list, the load distribution processing device transfers the message to the transfer destination without calculating the distribution destination. Can be sorted.

また、前記した課題を解決するため、本発明に係る負荷分散処理方法は、複数のユーザ端末と、各グループが少なくとも1つのアプリケーションサーバからなる複数のサーバグループと、前記ユーザ端末から受信するメッセージの転送先を前記複数のサーバグループのいずれかに決定して前記メッセージを振り分ける負荷分散処理装置と、を備える通信システムにおける負荷分散処理方法であって、前記負荷分散処理装置が、学習データを用いて事前に学習したメッセージに含まれる語彙及びその転送先の組み合わせルールを規定する条件付確率式から、入力したメッセージの振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコア最上位のサーバグループを転送先として求めて転送先リストに登録すると共に、当該メッセージに含まれ前記スコアの算出に用いたパラメータである語彙及び前記候補の中から決定した振分け先をログ情報としてログ情報記憶手段に登録する転送先分類計算ステップと、前記転送先分類計算ステップで振分けられたメッセージを前記転送先リストに記載された対応する転送先へ送信する送信ステップと、前記ログ情報記憶手段に記憶されたログ情報を定期的に振分け先別に集計し、振分け先の偏りが所定の第1閾値より大きい場合、最も多く振り分けられたサーバグループを振分け先とするメッセージのうち所定条件を満たすメッセージの振分け先を他のサーバグループに変更させると共に当該振分け先の変更を反映して前記学習データを再生成して更新するフィードバックステップと、を実行することを特徴とする。   In order to solve the above-described problem, a load distribution processing method according to the present invention includes a plurality of user terminals, a plurality of server groups each of which includes at least one application server, and messages received from the user terminals. A load distribution processing method in a communication system comprising: a load distribution processing device that determines a transfer destination to any of the plurality of server groups and distributes the message, wherein the load distribution processing device uses learning data From the conditional probability formulas that prescribe the vocabulary contained in the message learned in advance and the combination rule of the transfer destination, a score indicating the feature quantity as a candidate for the distribution destination of the input message is calculated for each server group, and the highest score is obtained. Find the upper server group as a forwarding destination and register it in the forwarding destination list A transfer destination classification calculation step of registering in the log information storage means as log information the vocabulary that is included in the message and used as a parameter for calculating the score and the distribution destination determined from the candidates; and the transfer destination classification calculation step A transmission step of transmitting the messages distributed in the transfer destination list to the corresponding transfer destination, and the log information stored in the log information storage means is periodically tabulated by distribution destination, Is greater than a predetermined first threshold, the message that satisfies the predetermined condition among the messages that have the most distributed server group as the distribution destination is changed to another server group and the change of the distribution destination is reflected. A feedback step of regenerating and updating the learning data.

かかる手順によれば、負荷分散処理方法は、転送先分類計算ステップにおいて、事前に学習したメッセージに含まれる語彙及びその転送先の組み合わせルールを規定する条件付確率式を用いて、入力メッセージの振分け先を求めることができる。また、フィードバックステップにおいて、メッセージを振り分ける計算に用いたパラメータ及び計算結果を示すログ情報に基づいて、振分け先の偏りが大きい場合、偏って振り分けられたメッセージの振分け先を他のサーバグループに変更させると共に当該振分け先の変更を反映して学習データを再生成して更新することができる。   According to such a procedure, the load distribution processing method distributes the input message using the conditional probability formula that defines the vocabulary included in the previously learned message and the combination rule of the transfer destination in the transfer destination classification calculation step. You can ask for the future. Also, in the feedback step, if the distribution destination is largely biased based on the parameters used for the calculation for distributing the message and the log information indicating the calculation result, the distribution destination of the distributed message is changed to another server group. In addition, the learning data can be regenerated and updated by reflecting the change of the distribution destination.

本発明に係る負荷分散処理方法は、前記フィードバックステップが、前記ログ情報記憶手段から、最も多く振り分けられたサーバグループを振分け先とするメッセージに関するログ情報を抽出して、抽出したログ情報に含まれる前記語彙を用いて前記振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコアが次点のサーバグループを求めて当該次点のスコアが所定の第2閾値よりも大きい場合に、当該次点のスコアに対応したサーバグループを当該メッセージの新たな振分け先にさせる処理をメッセージ毎に行うことで、メッセージの振分け先を変更させることが好ましい。   In the load distribution processing method according to the present invention, the feedback step extracts, from the log information storage means, log information related to a message having a server group distributed most frequently as a distribution destination, and is included in the extracted log information When a score indicating a feature quantity as a candidate for the distribution destination is calculated for each server group using the vocabulary, and the score of the next point is obtained and the score of the next point is greater than a predetermined second threshold In addition, it is preferable to change the message distribution destination by performing, for each message, a process for setting a server group corresponding to the score of the next point as a new distribution destination of the message.

かかる手順によれば、負荷分散処理方法は、フィードバックステップにおいて、最も多く振り分けられたサーバグループを振分け先とするメッセージについて前記条件付確率式からスコアを再計算し、求めたスコアを基に、次点のサーバグループのスコアが基準を満たせば、振分けルールに則った現在の振分け先に最も類似した転送先であるものとして、振分け先を変更して負荷を分散させることができる。   According to such a procedure, the load distribution processing method recalculates the score from the conditional probability formula for the message having the most distributed server group as a distribution destination in the feedback step, and based on the obtained score, If the score of the point server group satisfies the standard, it is possible to distribute the load by changing the distribution destination, assuming that the transfer destination is the most similar to the current distribution destination according to the distribution rule.

本発明に係る負荷分散処理方法は、前記負荷分散処理装置が、前記転送先分類計算ステップの前に、前記入力したメッセージから構文解析には不要な予め定められたパラメータを削除して所定の語彙を構文解析の対象となるパラメータとして抽出するフィルタリングステップを実行することが好ましい。   In the load distribution processing method according to the present invention, the load distribution processing device deletes a predetermined parameter that is unnecessary for syntax analysis from the input message before the transfer destination classification calculation step. It is preferable to execute a filtering step of extracting as a parameter to be parsed.

かかる手順によれば、負荷分散処理方法は、メッセージの振分け先を計算する前に、フィルタリングステップにおいて、当該メッセージから構文解析には不要な予め定められたパラメータを削除するので、転送先分類計算ステップにおける演算処理を高速化することができる。   According to such a procedure, the load distribution processing method deletes a predetermined parameter unnecessary for parsing from the message in the filtering step before calculating the message distribution destination. It is possible to speed up the arithmetic processing in.

本発明に係る負荷分散処理方法は、前記負荷分散処理装置が、前記フィルタリングステップの前に、前記ユーザ端末から受信するメッセージの転送先が前記転送先リストに既登録であることを示すパス条件を満たすか否かを判別するパス条件判別ステップを実行し、前記パス条件を満たさない場合、前記フィルタリングステップを実行し、前記パス条件を満たす場合、前記フィルタリングステップ及び前記転送先分類計算ステップをスキップして前記送信ステップを実行することが好ましい。   In the load distribution processing method according to the present invention, the load distribution processing device has a path condition indicating that a transfer destination of a message received from the user terminal is already registered in the transfer destination list before the filtering step. A path condition determination step is performed to determine whether or not the path condition is satisfied. If the path condition is not satisfied, the filtering step is performed. If the path condition is satisfied, the filtering step and the forwarding destination classification calculation step are skipped. It is preferable to execute the transmission step.

かかる手順によれば、負荷分散処理方法は、パス条件判別ステップにおいて、入力したメッセージの転送先が転送先リストに既登録であると判別した場合、振分け先を計算することなく転送先にメッセージを転送するので、入力メッセージを効率よく振り分けることができる。   According to such a procedure, in the load distribution processing method, in the path condition determination step, when it is determined that the forwarding destination of the input message is already registered in the forwarding destination list, the message is sent to the forwarding destination without calculating the sorting destination. Since it is forwarded, it is possible to efficiently sort input messages.

本発明によれば、複雑な判定条件を設定せずに転送先を決定する計算を行うことができ、且つ、トラフィック変動により生じる振り分け先の偏りに対して追従して偏りを低減することができる。   According to the present invention, it is possible to perform calculation for determining a transfer destination without setting complicated determination conditions, and it is possible to follow the distribution destination bias caused by traffic fluctuation and reduce the bias. .

本発明の実施形態に係る負荷分散処理装置を含む通信システムの全体構成を示すブロック図である。1 is a block diagram showing an overall configuration of a communication system including a load distribution processing device according to an embodiment of the present invention. 図2(a)及び図2(b)は図1のフィルタリング手段による処理の前後のメッセージの一例を模式的に示す図である。2A and 2B are diagrams schematically showing an example of messages before and after processing by the filtering means of FIG. 図1の転送先分類計算手段の内部構成例を模式的に示すブロック図である。It is a block diagram which shows typically the example of an internal structure of the transfer destination classification | category calculation means of FIG. 図1の転送先分類計算手段によるメッセージの振分けを模式的に示す説明図である。It is explanatory drawing which shows typically the distribution of the message by the transfer destination classification | category calculation means of FIG. 学習データの具体例を示す図である。It is a figure which shows the specific example of learning data. 図6(a)及び図6(b)はログ情報の一例を示す模式図であり、図6(c)はスコア算出結果の一例を示す模式図である。6A and 6B are schematic diagrams illustrating an example of log information, and FIG. 6C is a schematic diagram illustrating an example of a score calculation result. 図1の通信システムにおいて新規メッセージに対する処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the process with respect to a new message in the communication system of FIG. 図1の通信システムにおいて継続メッセージに対する処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the process with respect to a continuation message in the communication system of FIG. 図1のフィードバック手段の処理の一例を示すフローチャートである。It is a flowchart which shows an example of a process of the feedback means of FIG.

以下、本発明の負荷分散処理装置及び負荷分散処理方法について図面を参照して詳細に説明する。
[通信システム]
図1に示す通信システム100は、例えば、IP(Internet Protocol)電話サービスなどに適用される。通信システム100は、複数のユーザ端末10と、負荷分散処理装置20と、複数のサーバグループ30と、を備えている。
サーバグループ30は、ユーザからのメッセージの振分け先のグループであって、少なくとも1つのアプリケーションサーバ40からなるグループを示す。ここでは、一例として、各グループは1つのアプリケーションサーバ40からなるものとする。
Hereinafter, a load distribution processing apparatus and a load distribution processing method of the present invention will be described in detail with reference to the drawings.
[Communications system]
A communication system 100 shown in FIG. 1 is applied to, for example, an IP (Internet Protocol) telephone service. The communication system 100 includes a plurality of user terminals 10, a load distribution processing device 20, and a plurality of server groups 30.
The server group 30 is a group to which a message from a user is distributed, and is a group including at least one application server 40. Here, as an example, it is assumed that each group includes one application server 40.

以下、SIPアプリケーションに関して説明する。アプリケーションサーバ40は、セッション管理を行うものであり、SIPを用いて呼制御を行うことにより、通信ネットワークNに接続されるユーザ端末10間の通信サービスを提供する。なお、以下では、メッセージについて、その本文についてはメッセージのボディと呼び、そのヘッダについてはヘッダ情報又は単にメッセージと呼称する場合がある。   Hereinafter, the SIP application will be described. The application server 40 performs session management, and provides a communication service between user terminals 10 connected to the communication network N by performing call control using SIP. In the following description, the message may be referred to as the body of the message, and the header may be referred to as header information or simply as a message.

[負荷分散処理装置]
負荷分散処理装置20は、セッション管理を行うものであり、ユーザ端末10から送信された通信メッセージに対して宛先解決(転送先解決)の計算を行い、アプリケーションサーバ40を決定する。負荷分散処理装置20は、ユーザ端末10から受信するメッセージの転送先を複数のサーバグループ30のいずれかに決定してメッセージを振り分ける。負荷分散処理装置20は、図1に示すように、パス条件判別手段21と、フィルタリング手段22と、転送先分類計算手段23と、ログ情報記憶手段25と、送信手段26と、フィードバック手段27と、を備えている。
[Load distribution processing device]
The load distribution processing device 20 performs session management, calculates destination resolution (transfer destination resolution) for the communication message transmitted from the user terminal 10, and determines the application server 40. The load distribution processing device 20 determines a transfer destination of a message received from the user terminal 10 as one of the plurality of server groups 30 and distributes the message. As shown in FIG. 1, the load distribution processing device 20 includes a path condition determination unit 21, a filtering unit 22, a transfer destination classification calculation unit 23, a log information storage unit 25, a transmission unit 26, and a feedback unit 27. It is equipped with.

<パス条件判別手段>
パス条件判別手段21は、SIPメッセージが新規メッセージ(新規呼)であるのかそれとも継続メッセージ(既存呼)であるかを判定するものである。新規メッセージであれば新たに転送先を決定する必要があり、継続メッセージであればすでに転送先が決定しているため以降の宛先解決処理をスキップする。
<Pass condition discriminating means>
The path condition determination means 21 determines whether the SIP message is a new message (new call) or a continuation message (existing call). If the message is a new message, it is necessary to newly determine the transfer destination. If the message is a continuation message, the transfer destination has already been determined, and the subsequent address resolution processing is skipped.

パス条件判別手段21は、ユーザ端末10から受信するメッセージの転送先が転送先リストに既登録であることを示すパス条件を満たすか否かを判別し、パス条件を満たさないと判別した新規メッセージをフィルタリング手段22に送り、パス条件を満たすと判別した継続メッセージを送信手段26に送る。   The path condition determination unit 21 determines whether or not a path condition indicating that the transfer destination of the message received from the user terminal 10 is already registered in the transfer destination list is satisfied, and determines that the path condition is not satisfied. Is sent to the filtering means 22, and a continuation message determined to satisfy the path condition is sent to the sending means 26.

本実施形態では、パス条件判別手段21は、入力したSIPメッセージについて、転送先リストにCall−ID(呼識別情報)が登録されているかどうかをチェックし、登録済みであれば転送先リストに記載された転送先に送信し、登録済みでなければフィルタリング手段22に送ることとした。   In the present embodiment, the path condition determination unit 21 checks whether a Call-ID (call identification information) is registered in the transfer destination list for the input SIP message, and if it is registered, describes it in the transfer destination list. If it is not registered, it is sent to the filtering means 22.

<フィルタリング手段>
フィルタリング手段22は、入力したメッセージを転送先分類計算手段23にて振分けるための前処理として、当該新規メッセージから構文解析には不要な予め定められたパラメータを削除して構文解析の対象となるパラメータをスコアの算出に用いる語彙として抽出するものである。SIPメッセージ解析において不要なパラメータとは、例えば、INVITE信号中のCall−ID(呼識別情報)、シーケンスIDを表すCSeq、メッセージ中のデータのタイプを指定するContent−Type、メッセージのボディのサイズを表すContent−Length等を挙げることができる。
<Filtering means>
Filtering means 22 removes a predetermined parameter unnecessary for syntax analysis from the new message as a preprocessing for distributing the input message by transfer destination classification calculation means 23, and is subject to syntax analysis. The parameter is extracted as a vocabulary used for score calculation. Parameters unnecessary for SIP message analysis include, for example, Call-ID (call identification information) in the INVITE signal, CSeq indicating the sequence ID, Content-Type specifying the type of data in the message, and the size of the body of the message. Content-Length and the like can be exemplified.

また、メッセージ中の語彙のうち、FromやToに記載のアドレスについては、ある程度短縮しても振分け可能となる。そのため、解析を簡単にするために、本実施形態では、フィルタリング手段22は、アドレスを短縮化することでメッセージを簡略化することとした。このようにフィルタリング手段22がSIPメッセージから解析に不要な情報を取り除き、解析対象となるパラメータを抽出し、簡略化することを、以下、フィルタリングを実施する、あるいは、フィルタリング処理を行うという。   Further, of the vocabulary in the message, the addresses described in From and To can be distributed even if they are shortened to some extent. Therefore, in order to simplify the analysis, in this embodiment, the filtering unit 22 simplifies the message by shortening the address. The filtering means 22 removing information unnecessary for analysis from the SIP message and extracting and simplifying parameters to be analyzed is hereinafter referred to as performing filtering or filtering processing.

図2(a)及び図2(b)は、フィルタリング実施前後のSIPヘッダ情報の具体例を示す図である。フィルタリング実施前において、図2(a)に示すSIPヘッダ情報には、説明のため、1〜10の行番号を付与している。フィルタリング実施後において、図2(b)から明らかなように、行番号3,6,7,9,10のパラメータが削除されている。また、行番号4,5に記載のアドレスが短縮化されている。   FIGS. 2A and 2B are diagrams illustrating specific examples of SIP header information before and after filtering. Prior to filtering, line numbers 1 to 10 are assigned to the SIP header information shown in FIG. After the filtering, as is clear from FIG. 2B, the parameters of the line numbers 3, 6, 7, 9, and 10 are deleted. Also, the addresses described in line numbers 4 and 5 are shortened.

<転送先分類計算手段>
転送先分類計算手段23は、事前に与えられた学習データに基づいて転送先のSIPサーバを決定するための分類を行うものである。
転送先分類計算手段23は、事前に学習したメッセージに含まれる語彙及びその転送先の組み合わせルールを規定する条件付確率式から、入力したメッセージの振分け先の候補としての特徴量を示すスコアをグループ別(アプリケーションサーバ別)に算出する。
転送先分類計算手段23は、受信したSIPメッセージがどのグループに分類されるべきかを計算し、このグループに対応した送信手段26へメッセージを渡すことにより転送先を決定する。計算方法としては、与えられた入力がどのグループに分類されるかを算出するために例えばナイーブベイズ分類を用いる。また、計算結果について、ログ情報記憶手段25及び転送先リストへの登録を行う。
<Destination calculation method>
The transfer destination classification calculation means 23 performs classification for determining a transfer destination SIP server based on learning data given in advance.
The forwarding destination category calculating means 23 groups a score indicating the feature quantity as a candidate for the destination of the input message from a conditional probability formula that prescribes the vocabulary included in the message learned in advance and the combination rule of the forwarding destination. Calculate separately (by application server).
The transfer destination classification calculation means 23 calculates which group the received SIP message should be classified into, and determines the transfer destination by passing the message to the transmission means 26 corresponding to this group. As a calculation method, for example, naive Bayes classification is used to calculate to which group a given input is classified. Also, the calculation result is registered in the log information storage means 25 and the transfer destination list.

≪転送先分類計算手段の構成例≫
図3は、図1の転送先分類計算手段の内部構成例を模式的に示すブロック図である。
転送先分類計算手段23は、図3に示すように、学習データ記憶手段231と、ルール学習手段232と、ルール記憶手段233と、分類手段234と、ログ登録手段235と、転送先リスト登録手段236と、通信制御手段237と、を備える。
≪Example of configuration of transfer destination classification calculation means≫
FIG. 3 is a block diagram schematically showing an example of the internal configuration of the transfer destination classification calculation means of FIG.
As shown in FIG. 3, the transfer destination classification calculation unit 23 includes a learning data storage unit 231, a rule learning unit 232, a rule storage unit 233, a classification unit 234, a log registration unit 235, and a transfer destination list registration unit. 236 and communication control means 237.

学習データ記憶手段231は、SIPメッセージに含まれる語彙と転送先の組み合わせデータである学習データを記憶するものであり、一般的なメモリやハードディスク等から構成される。なお、学習データは、後記するログ情報として記載している表形式のデータとは異なっている。   The learning data storage unit 231 stores learning data that is a combination data of a vocabulary and a transfer destination included in the SIP message, and includes a general memory, a hard disk, and the like. The learning data is different from tabular data described as log information described later.

ルール学習手段232は、学習データによりSIPメッセージ及び転送先の組み合わせルールを学習するものである。
ルール記憶手段233は、ルール学習手段232が学習したルールを規定する条件付確率式を記憶するものであり、一般的なメモリやハードディスク等から構成される。
The rule learning unit 232 learns a combination rule of a SIP message and a transfer destination from learning data.
The rule storage unit 233 stores a conditional probability formula that defines the rules learned by the rule learning unit 232, and includes a general memory, a hard disk, and the like.

分類手段234は、入力したメッセージに含まれる語彙を用いて条件付確率式からスコアを算出することで、受信したSIPメッセージがどのグループに分類されるべきかを計算する。分類手段234は、ナイーブベイズ分類器であって、ラプラススムージングにより、SIPメッセージのデータの中に事前の学習データに含まれていない情報がある場合でも、内容が似ているグループに分類することができる。   The classification unit 234 calculates a group to which the received SIP message should be classified by calculating a score from the conditional probability formula using the vocabulary included in the input message. The classification means 234 is a naive Bayes classifier, and can classify into groups having similar contents even when there is information that is not included in the previous learning data in the data of the SIP message by Laplace smoothing. it can.

ログ登録手段235は、入力したメッセージからフィルタリング手段22で抽出されて構文解析の対象となった語彙と、分類手段234によって決定した振分け先とをログ情報としてログ情報記憶手段25に登録するものである。   The log registration unit 235 registers the vocabulary extracted from the input message by the filtering unit 22 and subjected to syntax analysis and the distribution destination determined by the classification unit 234 in the log information storage unit 25 as log information. is there.

転送先リスト登録手段236は、分類手段234にて分類した新規メッセージの転送先をパス条件判別手段21に渡すことで、転送先リストに登録するものである。転送先リスト登録手段236は、分類手段234によって求めたスコア最上位のグループ(アプリケーションサーバ40)を転送先としてパス条件判別手段21に渡す。   The transfer destination list registration unit 236 registers the transfer destination of the new message classified by the classification unit 234 in the transfer destination list by passing it to the path condition determination unit 21. The transfer destination list registration unit 236 passes the highest score group (application server 40) obtained by the classification unit 234 to the path condition determination unit 21 as the transfer destination.

通信制御手段237は、分類手段234にて分類した新規メッセージの転送先を示すグループ(アプリケーションサーバ40)に対応した送信手段26へSIPメッセージを渡すものである。本実施形態では、通信制御手段237は、フィードバック手段27が、振分け先の変更を指示した場合、変更された転送先を示すグループ(アプリケーションサーバ40)に対応した送信手段26へSIPメッセージを渡す。   The communication control unit 237 delivers the SIP message to the transmission unit 26 corresponding to the group (application server 40) indicating the transfer destination of the new message classified by the classification unit 234. In the present embodiment, when the feedback unit 27 instructs to change the distribution destination, the communication control unit 237 passes the SIP message to the transmission unit 26 corresponding to the group (application server 40) indicating the changed transfer destination.

図4は、転送先分類計算手段23が、事前に学習データ401を用いて学習した振分けルールによってメッセージを振り分ける処理を表す概念図である。ここでは、ユーザaaa、ユーザaab、…からのメッセージをグループAに振り分け、ユーザbba、ユーザbbb、…からのメッセージをグループBに振り分け、ユーザccc…からのメッセージをグループCに振り分けるような振分けルールを学習したことを概念的に示している。なお、学習データは、実際には、図4に示すようなユーザと振分け先とをテーブル形式に表したものではなく、例えば図5に示すようなデータ構造を有している。   FIG. 4 is a conceptual diagram showing processing in which the transfer destination classification calculating unit 23 distributes messages according to the distribution rule learned in advance using the learning data 401. Here, a distribution rule that distributes messages from user aaa, user aab,... To group A, distributes messages from user bba, user bbb,... To group B, and distributes messages from user ccc. It shows conceptually that you learned. In practice, the learning data does not represent the user and the distribution destination as shown in FIG. 4 in a table format, but has a data structure as shown in FIG. 5, for example.

図5は、学習データを生成するためにSIPヘッダ情報からなるサンプルデータを用いて学習させた結果のデータ例を示す図である。ここでは、hash構造データをJSON形式にて表現したが、JSON以外であってもよい。また、この例では、分類先は2つのグループC1,C2とした。
符号510で示す行は、学習データの元になる30個のサンプルデータを用いたことを示し、符号520で示す行は、これらサンプルデータについての分類先ごとの内訳(個数)を示す。
符号530で示す行は、ナイーブベイズ分類に用いる条件付確率式の演算を高速化するために便宜的に計算に用いられるテンポラリデータを示す。
符号540で示す行は、SIPヘッダのパラメータを分解したものであってSIPヘッダに含まれる全語彙を示す。
符号550で示す行は、全サンプルデータ中に、各語彙がそれぞれ何回出現するかを分類先毎にカウントしたカウント値を示している。これらのうち、符号551で示す行は、分類先がグループC1であるものに関し、符号552で示す行は、分類先がグループC2であるものに関する。
FIG. 5 is a diagram illustrating a data example of a result of learning using sample data including SIP header information in order to generate learning data. Here, the hash structure data is expressed in the JSON format, but it may be other than JSON. In this example, the classification destination is two groups C1 and C2.
A line denoted by reference numeral 510 indicates that 30 sample data used as the basis of the learning data is used, and a line denoted by reference numeral 520 indicates a breakdown (number) for each classification destination of the sample data.
A row denoted by reference numeral 530 indicates temporary data used for calculation for the sake of convenience in order to speed up the computation of the conditional probability formula used for naive Bayes classification.
A line indicated by reference numeral 540 is a decomposition of the SIP header parameters and indicates all vocabularies included in the SIP header.
A row indicated by reference numeral 550 indicates a count value obtained by counting, for each classification destination, how many times each vocabulary appears in all sample data. Among these, the line indicated by reference numeral 551 relates to the classification destination group C1, and the line indicated by reference numeral 552 relates to the classification destination group C2.

図1に戻って、負荷分散処理装置20の構成の説明を続ける。
<ログ情報記憶手段>
ログ情報記憶手段25は、SIPメッセージの内容及び決定された転送先を記録するものであり、一般的なメモリやハードディスク等から構成される。このログ情報記憶手段25がメッセージ内容及びロードバランス先を蓄積することで、フィードバック手段27を介して転送先分類計算手段23へフィードバックを与えることができる。
Returning to FIG. 1, the description of the configuration of the load distribution processing device 20 will be continued.
<Log information storage means>
The log information storage unit 25 records the content of the SIP message and the determined transfer destination, and is configured from a general memory, hard disk, or the like. The log information storage unit 25 accumulates the message contents and the load balance destination, so that feedback can be given to the transfer destination classification calculation unit 23 via the feedback unit 27.

ログ情報記憶手段25に蓄積されるログ情報の一例を図6(a)に示す。図6(a)に示すように、ログ情報601は、表形式のデータであって、ここでは、テーブルの項目として、例えば、SIPヘッダ情報のうち解析に用いた語彙としてFromやToに記載のアドレス等を格納している。また、テーブルの項目として、転送先分類計算手段23で振分けられた振分け先を格納している。この例では、振分け先の情報をグループ(アプリケーションサーバ40)の識別子とした。以下では、振分け先を、グループA、グループCのように表記する。ログ情報は、呼毎(コネクション毎)に蓄積される。   An example of log information accumulated in the log information storage means 25 is shown in FIG. As shown in FIG. 6A, the log information 601 is tabular data. Here, as the table item, for example, the vocabulary used for analysis in the SIP header information is described in From and To. Stores addresses, etc. In addition, as a table item, a distribution destination distributed by the transfer destination classification calculation unit 23 is stored. In this example, the distribution destination information is the identifier of the group (application server 40). In the following, the distribution destinations are expressed as group A and group C. Log information is accumulated for each call (for each connection).

図1に戻って、負荷分散処理装置20の構成の説明を続ける。
転送先分類計算手段23は、複数のユーザ端末10からのメッセージを並列処理することが可能であり、図1ではその一例として3つの転送先分類計算手段23を図示している。同様に、フィルタリング手段22は、複数のユーザ端末10からのメッセージを並列処理することが可能であり、図1ではその一例として3つのフィルタリング手段22を図示している。
Returning to FIG. 1, the description of the configuration of the load distribution processing device 20 will be continued.
The transfer destination classification calculation means 23 can process messages from a plurality of user terminals 10 in parallel. FIG. 1 shows three transfer destination classification calculation means 23 as an example. Similarly, the filtering unit 22 can process messages from a plurality of user terminals 10 in parallel, and FIG. 1 shows three filtering units 22 as an example.

<送信手段>
送信手段26は、転送先分類計算手段23で振分けられたメッセージを転送先リストに記載された対応する転送先へ送信するものである。送信手段26は、一般的な通信インタフェースで構成される。図1では、送信手段26に複数のキューを示して、転送先分類計算手段23にて振り分けたメッセージの転送先を示すグループ(アプリケーションサーバ40)にそれぞれ対応した複数のキューから、SIPメッセージが送信されることを模式的に表している。
<Transmission means>
The transmission unit 26 transmits the message distributed by the transfer destination classification calculation unit 23 to the corresponding transfer destination described in the transfer destination list. The transmission means 26 is configured by a general communication interface. In FIG. 1, SIP messages are transmitted from a plurality of queues corresponding to groups (application servers 40) respectively indicating the transfer destinations of messages distributed by the transfer destination classification calculation means 23 by indicating a plurality of queues to the transmission means 26. Is schematically represented.

<フィードバック手段>
フィードバック手段27は、トラフィックの変動により生じる振り分け先の偏りを平準化するために、定期的にログ情報によって偏りを計算し、振り分け先が均等になるよう学習データの再生成を行い、学習データを更新するものである。フィードバック手段27は、学習データをフィードバックとして転送先分類計算手段23へ与える。ここで、再生成とは、定期的に検出される偏りの大きさに応じて学習データを生成する処理を繰り返すことと、新たな学習データで旧学習データ全体を上書可能に更新させることとを意味する。
<Feedback means>
The feedback unit 27 periodically calculates the bias based on the log information in order to level the distribution destination bias caused by the fluctuation of traffic, regenerates the learning data so that the distribution destination is equalized, It is to be updated. The feedback unit 27 gives the learning data to the transfer destination classification calculation unit 23 as feedback. Here, regeneration refers to repeating the process of generating learning data according to the magnitude of the bias detected periodically, and updating the entire old learning data with new learning data so that it can be overwritten. Means.

フィードバック手段27は、ログ情報記憶手段25に記憶されたログ情報を定期的に振分け先別に集計する。フィードバック手段27は振分け先をカウントすることにより偏りを計算する。計算で求める偏り(値)は、例えば、平均、分散、偏差値等の所望の統計量を用いて定義することができる。例えば、最も多く振り分けられた第1位のグループと第2位のグループとのカウント数の差分値等で定義してもよい。また、メッセージを振り分けるグループの数や、メッセージの振分けルールに応じて定めてもよい。   The feedback unit 27 periodically aggregates the log information stored in the log information storage unit 25 by distribution destination. The feedback means 27 calculates the bias by counting the distribution destinations. The bias (value) obtained by calculation can be defined using a desired statistic such as an average, variance, or deviation value. For example, you may define by the difference value etc. of the count number of the 1st group and the 2nd group which were most distributed. Further, it may be determined according to the number of groups to which the message is distributed and the message distribution rule.

フィードバック手段27がログ情報を集計する間隔は、特に限定されず、また、等間隔でなくともよい。この集計間隔は、計算で求める偏り(値)の定義、振分けルール、目標とする負荷分散処理性能等に応じて所望の値を適宜設定することができる。   The interval at which the feedback means 27 aggregates the log information is not particularly limited, and may not be equal. This aggregation interval can be set to a desired value as appropriate according to the definition of bias (value) obtained by calculation, a distribution rule, target load distribution processing performance, and the like.

フィードバック手段27は、振分け先の偏りが所定の第1閾値より大きい場合、最も多く振り分けられたサーバグループ30を振分け先とするメッセージのうち所定条件を満たすメッセージの振分け先を他のサーバグループ30に変更させる。ここで、第1閾値は、計算で求める偏り(値)の定義、振分けルール、目標とする負荷分散処理性能等に応じて所望の値を適宜設定することができる。また、所定条件とは、最も多く振り分けられた振分け先を転送先とする多数のメッセージのうち、振分け先を変更しないメッセージを残して、振分け先を変更させるメッセージを抽出する基準となる条件である。   When the bias of the distribution destination is larger than a predetermined first threshold, the feedback unit 27 assigns a distribution destination of a message satisfying a predetermined condition to the other server group 30 among messages having the most distributed server group 30 as a distribution destination. Change it. Here, as the first threshold value, a desired value can be appropriately set according to the definition of bias (value) obtained by calculation, a distribution rule, target load distribution processing performance, and the like. Also, the predetermined condition is a condition that serves as a reference for extracting a message that changes the distribution destination while leaving a message that does not change the distribution destination among a large number of messages that have the distribution destination assigned the most as a transfer destination. .

フィードバック手段27は、ログ情報記憶手段25から、最も多く振り分けられたサーバグループ30を振分け先とするメッセージに関するログ情報を抽出して、抽出したログ情報に含まれる語彙を用いて振分け先の候補としての特徴量を示すスコアをサーバグループ30別に算出する。スコアの算出方法は、転送先分類計算手段23と同様の方法を用いる。   The feedback unit 27 extracts log information related to a message having the most frequently distributed server group 30 as a distribution destination from the log information storage unit 25, and uses the vocabulary included in the extracted log information as a distribution destination candidate. A score indicating the feature amount is calculated for each server group 30. As the score calculation method, the same method as the transfer destination classification calculation unit 23 is used.

本実施形態では、フィードバック手段27は、前記振分け先を変更させるメッセージを抽出する基準となる所定条件として、算出したスコアが次点となるグループを求めて当該次点のスコアが所定の第2閾値よりも大きい場合に、当該次点のスコアに対応したグループ(アプリケーションサーバ40)を当該メッセージの新たな振分け先にさせる処理をメッセージ毎に行うことで、メッセージの振分け先を変更させることとした。ここで、第2閾値は、スコア、振分けルール、目標とする負荷分散処理性能等に応じて所望の値を適宜設定することができる。フィードバック手段27は、メッセージの振分け先を変更させたときに当該振分け先の変更を反映して学習データを再生成して更新する。   In this embodiment, the feedback means 27 obtains a group in which the calculated score is the next point as a predetermined condition as a criterion for extracting the message for changing the distribution destination, and the score of the next point is a predetermined second threshold value. If it is larger than the message, the message distribution destination is changed by performing, for each message, a process for making the group (application server 40) corresponding to the score of the next point a new distribution destination of the message. Here, the second threshold value can be appropriately set according to a score, a distribution rule, a target load distribution processing performance, and the like. The feedback unit 27 regenerates and updates the learning data by reflecting the change of the distribution destination when the distribution destination of the message is changed.

例えば、振分け先がグループAに偏っている場合、フィードバック手段27は、振分け先がグループAとなっているメッセージ(コネクション)に関してグループ毎にスコアの再計算を行う。スコア第1位のグループは当然にグループAである。そして、グループ毎のスコアの次点が例えばグループBであってそのグループBのスコアが第2閾値を上回る場合、フィードバック手段27は、振分け先をグループBへ変更させる。そして、新たな振分け先に振り分けられるように学習データを再生成し、転送先分類計算手段23の学習データを更新することにより、グループAへの振分けの偏りを解消する。   For example, when the distribution destination is biased to group A, the feedback unit 27 recalculates the score for each group regarding a message (connection) in which the distribution destination is group A. The group with the highest score is of course group A. Then, when the next score of each group is, for example, the group B and the score of the group B exceeds the second threshold value, the feedback unit 27 changes the distribution destination to the group B. Then, the learning data is regenerated so that it can be distributed to a new distribution destination, and the learning data of the transfer destination classification calculation means 23 is updated, thereby eliminating the distribution bias to group A.

具体的には、図6(b)に示すログ情報602では、No.1のコネクションの振分け先がグループAとなっており、No.2のコネクションの振分け先もグループAとなっているものとする。そして、図6(b)に示すログ情報602から計算されたスコア情報603は、図6(c)に示すように、ログ情報602のNo.1のコネクションについて、グループAを振分け先候補とする場合のスコアが92、グループBを振分け先候補とする場合のスコアが87、グループCを振分け先候補とする場合のスコアが40、…のように算出されことを示している。また、図6(c)に示すスコア情報603は、ログ情報602のNo.2のコネクションについて、グループAを振分け先候補とする場合のスコアが88、グループBを振分け先候補とする場合のスコアが12、グループCを振分け先候補とする場合のスコアが22、…のように算出されことを示している。   Specifically, in the log information 602 shown in FIG. No. 1 is assigned to group A. Assume that the distribution destination of connection 2 is also group A. Then, the score information 603 calculated from the log information 602 shown in FIG. 6B has the group A as the distribution destination candidate for the No. 1 connection of the log information 602 as shown in FIG. 6C. In this case, the score is 92, the score when the group B is a distribution destination candidate is 87, the score when the group C is a distribution destination candidate is 40, and so on. Further, the score information 603 shown in FIG. As for the connection of 2, the score when the group A is the distribution destination candidate is 88, the score when the group B is the distribution destination candidate is 12, the score when the group C is the distribution destination candidate is 22, and so on. Is calculated.

そして、第2閾値を例えば60とした場合、ログ情報602のNo.1のコネクションについて、次点であるグループBのスコア(=87)が第2閾値(=60)よりも大きいので、No.1のコネクションの振分け先は、グループAからグループBに変更されることとなる。また、このとき、ログ情報602のNo.2のコネクションについては、次点であるグループCのスコア(=22)が第2閾値(=60)以下なので、No.2のメッセージの振分け先は、グループAから変更されることはない。   When the second threshold is set to 60, for example, the log information 602 No. For the connection of No. 1, the score (= 87) of the next group B is larger than the second threshold (= 60). The distribution destination of connection 1 is changed from group A to group B. At this time, the log information 602 No. For the connection of No. 2, the score (= 22) of the next group C is equal to or less than the second threshold (= 60). The distribution destination of the message of 2 is not changed from the group A.

よって、フィードバック手段27によれば、メッセージの宛先解決を優先した上で効率よく負荷分散を行うことができる。また、例えば学習データとして正常なメッセージと不正なメッセージとを与えておき、不正な信号メッセージをフィルタリングするといった用途として用いた場合、負荷分散を優先させてメッセージの宛先解決を疎かにするといった事態を回避することができる。   Therefore, according to the feedback means 27, load distribution can be performed efficiently while giving priority to message destination resolution. Also, for example, when a normal message and an illegal message are given as learning data and used as an application for filtering an illegal signal message, a situation in which load distribution is prioritized and message destination resolution is neglected. It can be avoided.

[負荷分散処理装置の動作]
<基本動作>
図1に示す通信システム100の中における負荷分散処理装置20の基本動作について図7及び図8を参照して説明する。図7はSIPメッセージが新規メッセージであると判定された場合の動作を示すシーケンス図であり、図8はSIPメッセージが継続メッセージであると判定された場合の動作を示すシーケンス図である。
[Operation of load balancing processor]
<Basic operation>
The basic operation of the load distribution processing device 20 in the communication system 100 shown in FIG. 1 will be described with reference to FIGS. FIG. 7 is a sequence diagram showing an operation when it is determined that the SIP message is a new message, and FIG. 8 is a sequence diagram showing an operation when it is determined that the SIP message is a continuation message.

負荷分散処理装置20は、ユーザ端末10から、転送先のサーバが未定のSIPメッセージを受信すると(ステップS701)、パス条件判別手段21が、転送先リストのCall−IDによって新規メッセージであると判定する(ステップS702)。このような新規メッセージであれば新たに転送先を決定する必要がある。そして、SIPメッセージがフィルタリング手段22へ渡される(ステップS703)。フィルタリング手段22は、SIPメッセージのフィルタリング処理を行う(ステップS704)。そして、フィルタリングされたSIPメッセージが転送先分類計算手段23へ渡される(ステップS705)。   When the transfer destination server receives an undetermined SIP message from the user terminal 10 (step S701), the load distribution processing device 20 determines that the path condition determination unit 21 is a new message based on the Call-ID in the transfer destination list. (Step S702). For such a new message, it is necessary to newly determine a transfer destination. Then, the SIP message is passed to the filtering means 22 (step S703). The filtering means 22 performs SIP message filtering processing (step S704). Then, the filtered SIP message is transferred to the transfer destination classification calculating means 23 (step S705).

転送先分類計算手段23は、事前に学習データとして与えられたSIPメッセージ及び転送先の組み合わせルールに従って、受信したSIPメッセージがどのグループに分類されるべきかを表す転送先(振分け先)を計算する(ステップS706)。そして、振分け先が決定されたSIPメッセージが、このグループに対応した送信手段26へ渡される(ステップS707)。送信手段26は、該当のアプリケーションサーバ40へSIPメッセージを転送する(ステップS708)。   The transfer destination classification calculating unit 23 calculates a transfer destination (distribution destination) indicating to which group the received SIP message should be classified according to the combination rule of the SIP message and the transfer destination given as learning data in advance. (Step S706). Then, the SIP message for which the distribution destination is determined is transferred to the transmission means 26 corresponding to this group (step S707). The transmission means 26 transfers the SIP message to the corresponding application server 40 (step S708).

また、転送先分類計算手段23は、ログ情報をパス条件判別手段21に渡し(ステップS709)、パス条件判別手段21が、転送先リストへの登録を行う(ステップS710)。さらに、転送先分類計算手段23は、ログ情報をログ情報記憶手段25に渡し(ステップS711)、ログ情報記憶手段25がログ情報を登録する(ステップS712)。   Further, the transfer destination classification calculation unit 23 passes the log information to the path condition determination unit 21 (step S709), and the path condition determination unit 21 registers in the transfer destination list (step S710). Further, the transfer destination classification calculation unit 23 passes the log information to the log information storage unit 25 (step S711), and the log information storage unit 25 registers the log information (step S712).

一方、図8に示すように、負荷分散処理装置20が、ユーザ端末10から、転送先のサーバが既知のSIPメッセージを受信すると(ステップS801)、パス条件判別手段21が、転送先リストのCall−IDによって継続メッセージであると判定する(ステップS802)。このような継続メッセージであれば既に転送先が決定しているため、宛先を解決するための処理をスキップする。そして、SIPメッセージが転送先リストに記載された対応する送信手段26へ渡され(ステップS803)、送信手段26は、該当のアプリケーションサーバ40へSIPメッセージを転送する(ステップS804)。   On the other hand, as shown in FIG. 8, when the load distribution processing device 20 receives a SIP message whose transfer destination server is known from the user terminal 10 (step S801), the path condition determination unit 21 calls the call in the transfer destination list. -It determines with it being a continuation message by ID (step S802). If it is such a continuation message, the transfer destination has already been determined, so the processing for resolving the destination is skipped. Then, the SIP message is transferred to the corresponding transmission means 26 described in the transfer destination list (step S803), and the transmission means 26 transfers the SIP message to the corresponding application server 40 (step S804).

<フィードバック手段の動作の概要>
図3を参照してフィードバック手段27の動作の概要について説明する。フィードバック手段27の動作の前提として、まず、転送先分類計算手段23は、入力パラメータ及び計算結果をログ情報記憶手段25へ蓄積する(ステップS301:ログ蓄積)。ログ情報記憶手段25は、メッセージに含まれる語彙(メッセージ内容)と振分け先(ロードバランス先)とを蓄積する。
<Outline of operation of feedback means>
The outline of the operation of the feedback means 27 will be described with reference to FIG. As a premise of the operation of the feedback means 27, first, the transfer destination classification calculation means 23 accumulates input parameters and calculation results in the log information storage means 25 (step S301: log accumulation). The log information storage unit 25 accumulates the vocabulary (message contents) included in the message and the distribution destination (load balance destination).

そして、フィードバック手段27は定期的にログ情報記憶手段25からログ情報を取得し(ステップS302:ログ取得)、振分け先の偏りがないかどうかを計算し確認する。そして、偏りが大きい場合、フィードバック手段27は、これを平準化させるようスコアを計算してロードバランス先を決定し、学習データを再生成し(ステップS303:学習データ再生成)、転送先分類計算手段23に新たな学習データを付与する(ステップS304:フィードバック)。   Then, the feedback unit 27 periodically acquires log information from the log information storage unit 25 (step S302: log acquisition), and calculates and confirms whether there is any distribution destination bias. If the bias is large, the feedback unit 27 calculates a score so as to equalize it, determines a load balance destination, regenerates learning data (step S303: regeneration of learning data), and calculates a transfer destination classification. New learning data is given to the means 23 (step S304: feedback).

<フィードバック手段の動作の詳細>
図9は、フィードバック手段27における、ログ情報に基づくスコア計算、学習データの再生成及び転送先分類計算手段23へのフィードバックに関するフローチャートである。
<Details of operation of feedback means>
FIG. 9 is a flowchart relating to score calculation based on log information, regeneration of learning data, and feedback to the transfer destination classification calculation unit 23 in the feedback unit 27.

フィードバック手段27は、定期的にログ情報記憶手段25から振分け先別にログ情報を取得し(ステップS901)、振分け先の偏りを計算する(ステップS902)。そして、フィードバック手段27は、偏り(値)が第1閾値を超えているか否かを判別する(ステップS903)。振分け先の偏り(値)が第1閾値を超えている場合(ステップS903:Yes)、フィードバック手段27は、メッセージ毎にスコアを計算する(ステップS904)。   The feedback unit 27 periodically acquires log information for each distribution destination from the log information storage unit 25 (step S901), and calculates the distribution destination bias (step S902). Then, the feedback unit 27 determines whether or not the bias (value) exceeds the first threshold (step S903). When the distribution destination bias (value) exceeds the first threshold (step S903: Yes), the feedback unit 27 calculates a score for each message (step S904).

フィードバック手段27は、次点の振分け先候補のスコアが第2閾値を超えているか否かを判別する(ステップS905)。スコアが第2閾値を超えている場合(ステップS905:Yes)、フィードバック手段27は、振分け先を更新して(ステップS906)、ステップS907に進む。一方、前記ステップS905において、スコアが第2閾値以下である場合(ステップS905:No)、フィードバック手段27は、振分け先を更新することなくステップS907に進む。   The feedback unit 27 determines whether or not the score of the next-point assignment destination candidate exceeds the second threshold (step S905). If the score exceeds the second threshold (step S905: Yes), the feedback unit 27 updates the distribution destination (step S906), and proceeds to step S907. On the other hand, when the score is equal to or smaller than the second threshold value in step S905 (step S905: No), the feedback unit 27 proceeds to step S907 without updating the distribution destination.

ステップS907において、フィードバック手段27は、スコアの判定をすべきログ情報が残っているか否かを判別する。残っていれば(ステップS907:Yes)、ステップS904に戻り、残っていなければ(ステップS907:No)、振り分け先の更新があるか否かを判別する(ステップS908)。振り分け先の更新がある場合(ステップS908:Yes)、フィードバック手段27は、学習データを新たに生成し(ステップS909)、転送先分類計算手段23の学習データを更新させ(ステップS910)、処理を終了する。一方、前記ステップS908において、振り分け先の更新がない場合(ステップS908:No)、そのまま処理を終了する。なお、前記ステップS903において、振分け先の偏り(値)が第1閾値を超えていなければ(ステップS903:No)、ステップS908において、振り分け先の更新がないと判別され(ステップS908:No)、そのまま処理を終了する。   In step S907, the feedback unit 27 determines whether there is log information for which a score should be determined. If it remains (Step S907: Yes), the process returns to Step S904, and if it does not remain (Step S907: No), it is determined whether or not the distribution destination is updated (Step S908). When there is an update of the distribution destination (step S908: Yes), the feedback unit 27 newly generates learning data (step S909), updates the learning data of the transfer destination classification calculation unit 23 (step S910), and performs processing. finish. On the other hand, if the distribution destination is not updated in step S908 (step S908: No), the process is terminated as it is. In step S903, if the distribution destination bias (value) does not exceed the first threshold value (step S903: No), it is determined in step S908 that the distribution destination has not been updated (step S908: No). The process is terminated as it is.

以上説明したように、本実施形態に係る負荷分散処理装置20は、トラフィック変動への追従により生じる負荷分散の偏りを平準化させ、トラフィックの分散を均一にすることができる。また、負荷分散処理装置20は、従来の前記第1手法の如くパラメータごとに条件を設定するような複雑な振分ルールを定義することなく、特定ユーザのリクエストを特定サーバに送信する(振り分ける)ように宛先解決を行い、セッションを維持させることができる。   As described above, the load distribution processing device 20 according to the present embodiment can equalize the load distribution bias caused by tracking traffic fluctuations and make the traffic distribution uniform. Further, the load distribution processing device 20 transmits (distributes) a request of a specific user to a specific server without defining a complicated distribution rule that sets conditions for each parameter as in the conventional first method. Thus, the destination can be resolved and the session can be maintained.

以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲で実施することができる。例えば、本実施形態では、SIPアプリケーションに関して説明したが、通信プロトコルとして、SIP以外のその他のプロトコルを利用する場合にも、本発明を同様に適用することができる。   As mentioned above, although embodiment of this invention was described, this invention is not limited to this, It can implement in the range which does not change the meaning. For example, in the present embodiment, the SIP application has been described. However, the present invention can be similarly applied to a case where a protocol other than SIP is used as a communication protocol.

また、機械学習による分類としてナイーブベイズ分類を用いるものとして説明したが、これに限らず例えばSVM等の機械学習を用いても本発明を同様に適用することができる。   In addition, the naive Bayes classification is used as the classification by machine learning. However, the present invention is not limited thereto, and the present invention can be similarly applied even when machine learning such as SVM is used.

また、転送先リスト記憶手段24をパス条件判別手段21の内部に備えることとしたが、これに限定されず、パス条件判別手段21から書込み及び読出しが可能であれば転送先リスト記憶手段24をパス条件判別手段21の外部に設けてもよい。その場合、転送先リスト登録手段236が、メッセージの転送先を転送先リスト記憶手段24に書き込むこととする。   In addition, the transfer destination list storage unit 24 is provided in the path condition determination unit 21. However, the present invention is not limited to this, and the transfer destination list storage unit 24 may be provided if writing and reading can be performed from the path condition determination unit 21. You may provide outside the path condition determination means 21. FIG. In this case, the transfer destination list registration unit 236 writes the message transfer destination in the transfer destination list storage unit 24.

また、学習データ記憶手段231を転送先分類計算手段23の内部に備えることとしたが、これに限定されず、転送先分類計算手段23から書込み及び読出しが可能であれば学習データ記憶手段231を転送先分類計算手段23の外部に設けてもよい。なお、転送先分類計算手段23が並列処理を行う場合、フィードバック手段27は、学習データ更新の際にローリングアップデートを行うので、転送先分類計算手段23の内部に学習データ記憶手段を備えることが好ましい。   In addition, the learning data storage unit 231 is provided in the transfer destination category calculation unit 23. However, the learning data storage unit 231 is not limited to this. You may provide outside the transfer destination classification | category calculation means 23. FIG. When the transfer destination classification calculation unit 23 performs parallel processing, the feedback unit 27 performs a rolling update when updating the learning data. Therefore, it is preferable that the transfer destination classification calculation unit 23 includes a learning data storage unit. .

10 ユーザ端末
20 負荷分散処理装置
21 パス条件判別手段
22 フィルタリング手段
23 転送先分類計算手段
24 転送先リスト記憶手段
25 ログ情報記憶手段
26 送信手段
27 フィードバック手段
30 サーバグループ
40 アプリケーションサーバ
100 通信システム
231 学習データ記憶手段
232 ルール学習手段
233 ルール記憶手段
234 分類手段
235 ログ登録手段
236 転送先リスト登録手段
237 通信制御手段
N 通信ネットワーク
DESCRIPTION OF SYMBOLS 10 User terminal 20 Load distribution processing apparatus 21 Path condition determination means 22 Filtering means 23 Transfer destination classification calculation means 24 Transfer destination list storage means 25 Log information storage means 26 Transmission means 27 Feedback means 30 Server group 40 Application server 100 Communication system 231 Learning Data storage means 232 Rule learning means 233 Rule storage means 234 Classification means 235 Log registration means 236 Transfer destination list registration means 237 Communication control means N Communication network

Claims (8)

複数のユーザ端末と、各グループが少なくとも1つのアプリケーションサーバからなる複数のサーバグループと、前記ユーザ端末から受信するメッセージの転送先を前記複数のサーバグループのいずれかに決定して前記メッセージを振り分ける負荷分散処理装置と、を備える通信システムにおける前記負荷分散処理装置であって、
学習データを用いて事前に学習したメッセージに含まれる語彙及びその転送先の組み合わせルールを規定する条件付確率式から、入力したメッセージの振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコア最上位のサーバグループを転送先として求めて転送先リストに登録すると共に、当該メッセージに含まれ前記スコアの算出に用いたパラメータである語彙及び前記候補の中から決定した振分け先をログ情報としてログ情報記憶手段に登録する転送先分類計算手段と、
前記転送先分類計算手段で振分けられたメッセージを前記転送先リストに記載された対応する転送先へ送信する送信手段と、
前記ログ情報記憶手段に記憶されたログ情報を定期的に振分け先別に集計し、振分け先の偏りが所定の第1閾値より大きい場合、最も多く振り分けられたサーバグループを振分け先とするメッセージのうち所定条件を満たすメッセージの振分け先を他のサーバグループに変更させると共に当該振分け先の変更を反映して前記学習データを再生成して更新するフィードバック手段と、
を備えることを特徴とする負荷分散処理装置。
A load that distributes the messages by determining a plurality of user terminals, a plurality of server groups each of which includes at least one application server, and a destination of a message received from the user terminals as one of the plurality of server groups A load distribution processing device in a communication system comprising:
From the conditional probability formulas that prescribe the vocabulary included in the message learned in advance using the learning data and the rules for combining the forwarding destination, a score indicating the feature quantity as a candidate for the destination of the input message is classified for each server group Calculating and registering the server group with the highest score as the transfer destination and registering it in the transfer destination list, and the vocabulary that is included in the message and used for the calculation of the score and the distribution destination determined from the candidates Transfer destination classification calculation means for registering in the log information storage means as log information;
Transmitting means for transmitting the message distributed by the transfer destination classification calculating means to the corresponding transfer destination described in the transfer destination list;
The log information stored in the log information storage means is periodically aggregated by distribution destination, and when the distribution destination bias is larger than a predetermined first threshold, among the messages having the most distributed server group as the distribution destination A feedback means for regenerating and updating the learning data reflecting the change of the distribution destination and changing the distribution destination of the message satisfying the predetermined condition to another server group;
A load distribution processing apparatus comprising:
前記フィードバック手段は、
前記ログ情報を記憶したログ情報記憶手段から、最も多く振り分けられたサーバグループを振分け先とするメッセージに関するログ情報を抽出して、抽出したログ情報に含まれる前記語彙を用いて前記振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコアが次点のサーバグループを求めて当該次点のスコアが所定の第2閾値よりも大きい場合に、当該次点のスコアに対応したサーバグループを当該メッセージの新たな振分け先にさせる処理をメッセージ毎に行うことで、前記メッセージの振分け先を変更させることを特徴とする請求項1に記載の負荷分散処理装置。
The feedback means includes
The log information storage means storing the log information is used to extract log information regarding a message to which the most frequently distributed server group is a distribution destination, and using the vocabulary included in the extracted log information, the distribution destination candidates A score indicating the feature amount is calculated for each server group, and when the score of the next server is obtained and the score of the next run is larger than a predetermined second threshold, the score of the next run is supported. The load distribution processing apparatus according to claim 1, wherein the distribution destination of the message is changed by performing a process of setting a server group as a new distribution destination of the message for each message.
前記入力したメッセージを前記転送先分類計算手段にて振り分けるための前処理として、当該メッセージから構文解析には不要な予め定められたパラメータを削除して構文解析の対象となるパラメータを前記スコアの算出に用いる語彙として抽出するフィルタリング手段をさらに備えることを特徴とする請求項1又は請求項2に記載の負荷分散処理装置。   As pre-processing for distributing the input message by the transfer destination classification calculation means, a predetermined parameter unnecessary for syntax analysis is deleted from the message, and a parameter to be analyzed is calculated as the score. The load balancing processing apparatus according to claim 1, further comprising filtering means for extracting as a vocabulary used in the processing. 前記ユーザ端末から受信するメッセージの転送先が前記転送先リストに既登録であることを示すパス条件を満たすか否かを判別し、前記パス条件を満たさないと判別した新規メッセージを前記フィルタリング手段に送り、前記パス条件を満たすと判別した継続メッセージを前記送信手段に送るパス条件判別手段をさらに備えることを特徴とする請求項3に記載の負荷分散処理装置。   It is determined whether or not a path condition indicating that a transfer destination of a message received from the user terminal is already registered in the transfer destination list is satisfied, and a new message determined not to satisfy the path condition is sent to the filtering unit. 4. The load distribution processing device according to claim 3, further comprising a path condition determination unit that sends a continuation message determined to satisfy the path condition to the transmission unit. 複数のユーザ端末と、各グループが少なくとも1つのアプリケーションサーバからなる複数のサーバグループと、前記ユーザ端末から受信するメッセージの転送先を前記複数のサーバグループのいずれかに決定して前記メッセージを振り分ける負荷分散処理装置と、を備える通信システムにおける負荷分散処理方法であって、
前記負荷分散処理装置は、
学習データを用いて事前に学習したメッセージに含まれる語彙及びその転送先の組み合わせルールを規定する条件付確率式から、入力したメッセージの振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコア最上位のサーバグループを転送先として求めて転送先リストに登録すると共に、当該メッセージに含まれ前記スコアの算出に用いたパラメータである語彙及び前記候補の中から決定した振分け先をログ情報としてログ情報記憶手段に登録する転送先分類計算ステップと、
前記転送先分類計算ステップで振分けられたメッセージを前記転送先リストに記載された対応する転送先へ送信する送信ステップと、
前記ログ情報記憶手段に記憶されたログ情報を定期的に振分け先別に集計し、振分け先の偏りが所定の第1閾値より大きい場合、最も多く振り分けられたサーバグループを振分け先とするメッセージのうち所定条件を満たすメッセージの振分け先を他のサーバグループに変更させると共に当該振分け先の変更を反映して前記学習データを再生成して更新するフィードバックステップと、
を実行することを特徴とする負荷分散処理方法。
A load that distributes the messages by determining a plurality of user terminals, a plurality of server groups each of which includes at least one application server, and a destination of a message received from the user terminals as one of the plurality of server groups A load distribution processing method in a communication system comprising a distributed processing device,
The load distribution processing device includes:
From the conditional probability formulas that prescribe the vocabulary included in the message learned in advance using the learning data and the rules for combining the forwarding destination, a score indicating the feature quantity as a candidate for the destination of the input message is classified for each server group Calculating and registering the server group with the highest score as the transfer destination and registering it in the transfer destination list, and the vocabulary that is included in the message and used for the calculation of the score and the distribution destination determined from the candidates A transfer destination classification calculation step to be registered in the log information storage means as log information;
A transmission step of transmitting the message distributed in the transfer destination classification calculation step to a corresponding transfer destination described in the transfer destination list;
The log information stored in the log information storage means is periodically aggregated by distribution destination, and when the distribution destination bias is larger than a predetermined first threshold, among the messages having the most distributed server group as the distribution destination A feedback step of changing a distribution destination of a message satisfying a predetermined condition to another server group and regenerating and updating the learning data reflecting the change of the distribution destination;
The load distribution processing method characterized by performing this.
前記フィードバックステップは、
前記ログ情報記憶手段から、最も多く振り分けられたサーバグループを振分け先とするメッセージに関するログ情報を抽出して、抽出したログ情報に含まれる前記語彙を用いて前記振分け先の候補としての特徴量を示すスコアを前記サーバグループ別に算出し、スコアが次点のサーバグループを求めて当該次点のスコアが所定の第2閾値よりも大きい場合に、当該次点のスコアに対応したサーバグループを当該メッセージの新たな振分け先にさせる処理をメッセージ毎に行うことで、メッセージの振分け先を変更させることを特徴とする請求項5に記載の負荷分散処理方法。
The feedback step includes
From the log information storage means, log information relating to a message having a server group distributed most frequently as a distribution destination is extracted, and using the vocabulary included in the extracted log information, a feature amount as a candidate for the distribution destination is extracted. And calculating the server score corresponding to the score of the next point when the score of the next point is obtained and the score of the next point is greater than a predetermined second threshold. The load distribution processing method according to claim 5, wherein the message distribution destination is changed by performing processing for each new message for each message.
前記負荷分散処理装置は、
前記転送先分類計算ステップの前に、前記入力したメッセージから構文解析には不要な予め定められたパラメータを削除して所定の語彙を構文解析の対象となるパラメータとして抽出するフィルタリングステップを実行することを特徴とする請求項5又は請求項6に記載の負荷分散処理方法。
The load distribution processing device includes:
Before the transfer destination classification calculation step, a filtering step is performed to delete a predetermined parameter unnecessary for syntax analysis from the input message and extract a predetermined vocabulary as a parameter to be analyzed The load distribution processing method according to claim 5, wherein:
前記負荷分散処理装置は、
前記フィルタリングステップの前に、前記ユーザ端末から受信するメッセージの転送先が前記転送先リストに既登録であることを示すパス条件を満たすか否かを判別するパス条件判別ステップを実行し、
前記パス条件を満たさない場合、前記フィルタリングステップを実行し、
前記パス条件を満たす場合、前記フィルタリングステップ及び前記転送先分類計算ステップをスキップして前記送信ステップを実行することを特徴とする請求項7に記載の負荷分散処理方法。
The load distribution processing device includes:
Before the filtering step, a path condition determination step is performed to determine whether a transfer destination of a message received from the user terminal satisfies a path condition indicating that it is already registered in the transfer destination list,
If the path condition is not met, the filtering step is performed;
8. The load distribution processing method according to claim 7, wherein when the path condition is satisfied, the filtering step and the transfer destination classification calculation step are skipped and the transmission step is executed.
JP2014027732A 2014-02-17 2014-02-17 Load distribution processing apparatus and load distribution processing method Active JP6040183B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014027732A JP6040183B2 (en) 2014-02-17 2014-02-17 Load distribution processing apparatus and load distribution processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014027732A JP6040183B2 (en) 2014-02-17 2014-02-17 Load distribution processing apparatus and load distribution processing method

Publications (2)

Publication Number Publication Date
JP2015153250A JP2015153250A (en) 2015-08-24
JP6040183B2 true JP6040183B2 (en) 2016-12-07

Family

ID=53895397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014027732A Active JP6040183B2 (en) 2014-02-17 2014-02-17 Load distribution processing apparatus and load distribution processing method

Country Status (1)

Country Link
JP (1) JP6040183B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6668456B2 (en) * 2016-03-28 2020-03-18 株式会社日立製作所 Processing system and processing method
JP6729232B2 (en) 2016-09-20 2020-07-22 富士通株式会社 Message distribution program, message distribution device, and message distribution method
JP7224188B2 (en) * 2019-01-10 2023-02-17 株式会社三菱Ufj銀行 Message delivery method and program

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05274261A (en) * 1991-11-18 1993-10-22 Nec Corp Load distribution management system by repeater processor
JP2004133839A (en) * 2002-10-15 2004-04-30 Fujitsu Ltd Device and program for distributing server
US8095935B2 (en) * 2008-06-26 2012-01-10 Microsoft Corporation Adapting message delivery assignments with hashing and mapping techniques
JP2010061622A (en) * 2008-09-08 2010-03-18 Kddi R & D Laboratories Inc Transaction load distribution device and program
CN102656563A (en) * 2009-12-09 2012-09-05 日本电气株式会社 Information processing system, control method, and non-transitory computer readable medium storing program
US20110252127A1 (en) * 2010-04-13 2011-10-13 International Business Machines Corporation Method and system for load balancing with affinity

Also Published As

Publication number Publication date
JP2015153250A (en) 2015-08-24

Similar Documents

Publication Publication Date Title
JP6592595B2 (en) Method and system for managing data traffic in a computing network
US9578050B1 (en) Service delivery controller for learning network security services
CN109936512B (en) Flow analysis method, public service flow attribution method and corresponding computer system
CN109240830B (en) Application intelligent request management based on server health and client information
US11729278B2 (en) Systems and methods for data routing management
KR101736425B1 (en) Cloud computing enhanced gateway for communication networks
JP6162337B2 (en) Application-aware network management
CN106972985B (en) Method for accelerating data processing and forwarding of DPI (deep packet inspection) equipment and DPI equipment
US20170201629A1 (en) Policy and charging control method and apparatus for an application service chain based on an sdn network
WO2016209275A1 (en) Server load balancing
CN105429879B (en) Flow entry querying method, equipment and system
US20130294449A1 (en) Efficient application recognition in network traffic
US11467922B2 (en) Intelligent snapshot generation and recovery in a distributed system
US20170005962A1 (en) Method and Apparatus for Predicting Unwanted Electronic Messages for A User
JP6040183B2 (en) Load distribution processing apparatus and load distribution processing method
CN103051497A (en) Business flow-mirroring method and mirroring device
WO2019179473A1 (en) Methods and devices for chunk based iot service inspection
JP2016111703A (en) Content arrangement in information centric network
JP5154313B2 (en) SIP message distribution method and SIP message distribution apparatus
US20230038310A1 (en) Devices, Methods, and System for Heterogeneous Data-Adaptive Federated Learning
US20170005889A1 (en) Self-localizing data distribution network
CN108228752B (en) Data total export method, data export task allocation device and data export node device
JP2007228217A (en) Traffic decision device, traffic decision method, and program therefor
JP2016152453A (en) Communication control system, communication method, and gateway device
US10701135B1 (en) Intelligent hub for protocol-agnostic file transfer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160909

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: 20161101

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161107

R150 Certificate of patent or registration of utility model

Ref document number: 6040183

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150