JP6514165B2 - Communication apparatus and communication method - Google Patents

Communication apparatus and communication method Download PDF

Info

Publication number
JP6514165B2
JP6514165B2 JP2016182050A JP2016182050A JP6514165B2 JP 6514165 B2 JP6514165 B2 JP 6514165B2 JP 2016182050 A JP2016182050 A JP 2016182050A JP 2016182050 A JP2016182050 A JP 2016182050A JP 6514165 B2 JP6514165 B2 JP 6514165B2
Authority
JP
Japan
Prior art keywords
node
data
received
communication device
communication
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
JP2016182050A
Other languages
Japanese (ja)
Other versions
JP2018046516A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2016182050A priority Critical patent/JP6514165B2/en
Publication of JP2018046516A publication Critical patent/JP2018046516A/en
Application granted granted Critical
Publication of JP6514165B2 publication Critical patent/JP6514165B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明の実施形態は、通信装置および通信方法に関する。   Embodiments of the present invention relate to a communication apparatus and a communication method.

IoT((Internet of Things))ビジネスが盛んになると、多くの機器が相互接続され、多量のデータを格納する必要がある。
この結果、分散システム化が進むので、分散システムを構成する通信装置であるノードの死活管理が問題となる。
When IoT ((Internet of Things)) business becomes popular, many devices are interconnected and it is necessary to store a large amount of data.
As a result, decentralized systematization advances, and the alive management of the node which is a communication apparatus which constitutes a distributed system becomes a problem.

ノード間の通信のための従来技術としてゴシッププロトコル(Gossip Protocol)がある。
このゴシッププロトコルでは、各ノードは通信先のノードをΔ時間ごとにランダムに選択し、この選択したノードに自身が持っているデータを送信する。
The Gossip Protocol is a prior art for communication between nodes.
In this gossip protocol, each node randomly selects a node to communicate with at every Δt time, and transmits data it has to this selected node.

選択されたノードは、送信元のノードから受信したデータと自身が持っているデータとを比較し、自身が、より新しい情報を持っている場合には、この新しい情報を、差分データとして送信元のノードに返却する。
このゴシッププロトコルは、噂話や伝染病の広がり具合と同様で、ノード数が増加しても情報伝達が早いプロトコルである。
The selected node compares the data received from the source node with the data it has, and if it has more recent information, it sends this new information as difference data Return to the node of
This gossip protocol is similar to the spread of rumor and epidemics, and is a protocol that can transmit information quickly even if the number of nodes increases.

また、ノードの故障検出のための従来技術として、アクノーアル故障検出器がある。このアクノーアル故障検出器は、各ノードのハートビートを故障検出器でサンプリングウインドウ分だけサンプリングし、ハートビート受信時間間隔をもとに正規分布を作って故障確率φを計算する。このアクノーアル故障検出器は、故障確率φの値に従って各ノードが故障の疑いを数段階で管理する。   In addition, there is an acknowledge failure detector as a prior art for detecting a failure of a node. The acknowledge fault detector samples the heartbeat of each node by the fault detector for the sampling window, and creates a normal distribution based on the heartbeat reception time interval to calculate the fault probability φ. The acknowledgment failure detector manages several nodes in each of the nodes in accordance with the value of the failure probability φ in accordance with the value of the failure probability φ.

The ψ Accrual Failure Detector, Naohiro Hayashibara1, Xavier Defago1,2, Rami Yared1,and Takuya Katayama1,May 10, 2004,2016年8月25日検索、インターネット<http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.80.7427&rep=rep1&type=pdf>The ualAcrual Failure Detector, Naohiro Hayashibara1, Xavier Defago1,2, Rami Yared1, and Takuya Katayama1, May 10, 2004, August 25, 2016 Search, Internet <http://citeseerx.ist.psu.edu/viewdoc/ download? doi = 10.1.1.80.7427 & rep = rep1 & type = pdf> 林原尚浩, “アクノーアル故障検出器ACCMOSの実装と評価”, 情報処理学会論文誌, Vol.51, No.12, pp.2310-2318, Dec. 2010.Naohiro Hayashibara, "Implementation and Evaluation of Axonor Failure Detector ACCMOS," Transactions of Information Processing Society of Japan, Vol. 51, No. 12, pp. 2310-2318, Dec. 2010. 林原尚浩, "アクルーアル故障検出器を用いた故障検出精度の制御," 第141回マルチメディア通信と分散処理(DPS)研究会, 2009-DPS-141, 情報処理学会, 2009年11月.Naohiro Hayashibara, "Control of Fault Detection Accuracy Using Acreual Fault Detector," The 141st Multimedia Communication and Distributed Processing (DPS) Workshop, 2009-DPS-141, IPSJ, November 2009.

上記のアクノーアル故障検出器は、故障検出器自体がノード(プロセス)の外側に存在するので、故障検出器自体が故障点になってしまい、ノードごとに故障確率を管理することができない。
また、アクノーアル故障検出器は、ある程度のサンプリング数が得られないとノードの死活管理ができない。
In the above-mentioned positive fault detector, since the fault detector itself exists outside the node (process), the fault detector itself becomes a failure point, and the failure probability can not be managed for each node.
In addition, the acknowledgment failure detector can not manage the alive of nodes unless a certain sampling number is obtained.

また、上記のゴシッププロトコルにおいて、メッセージを収受したノードは、ネットワーク上での遅延や自身の負荷の変化によって、最新の死活情報を有することができない可能性がある。   Also, in the above-described gossip protocol, a node receiving a message may not be able to have the latest alive information due to delay on the network and changes in its load.

本発明の目的は、ノードの死活管理を適切に行なうことが可能な通信装置および通信方法を提供することである。   An object of the present invention is to provide a communication device and communication method capable of appropriately managing the alive of nodes.

実施形態における通信装置は、他の通信装置の名称、この通信装置から受信したデータに付与される最新のシーケンス番号、およびこの通信装置から最新のデータを受信した時刻である受信時刻をノード情報として管理する第1の管理手段と、複数の通信装置の名称、および、他の通信装置が管理する、前記複数の通信装置の前記最新のシーケンス番号を含むデータを前記他の通信装置から受信する受信手段と、前記データを受信したときの現在時刻と、前記ノード情報で示される、前記受信したデータの送信元である通信装置についての前記受信時刻との差分に基づいて、前記受信したデータで示される前記シーケンス番号の標本平均の第1の補正値を計算する第1の計算手段と、前記ノード情報における前記送信元である通信装置についての前記受信時刻を、前記現在時刻に更新し、前記ノード情報における前記送信元である通信装置についての前記シーケンス番号を、前記送信元である通信装置からの前記データに含まれる前記シーケンス番号に更新する更新手段と、他の通信装置の名称、この通信装置から受信した各データの総数、前記他の通信装置から受信した各データに付与される前記シーケンス番号の平均値、およびこの通信装置の死活確率をノード死活情報として管理する第2の管理手段と、前記第1の補正値、前記ノード死活情報における前記送信元である通信装置から受信した各データの総数、および、前記送信元である通信装置から受信したデータに含まれる前記シーケンス番号に基づいて、前記シーケンス番号の標本平均の第2の補正値を計算する第2の計算手段と、前記第2の補正値、および、前記受信したデータに含まれる前記シーケンス番号の平均値に基づいて、前記受信したデータに付与される前記シーケンス番号が前記平均値として受信される確率を計算する第3の計算手段とを有する。   The communication apparatus in the embodiment uses the name of another communication apparatus, the latest sequence number assigned to the data received from this communication apparatus, and the reception time, which is the time when the latest data was received from this communication apparatus, as node information. Receiving, from the other communication device, data including the first management means to manage, names of a plurality of communication devices, and the latest sequence numbers of the plurality of communication devices managed by another communication device The received data based on the difference between the means, the current time when the data is received, and the reception time for the communication apparatus that is the transmission source of the received data, which is indicated by the node information Calculation means for calculating a first correction value of the sample average of the sequence number to be transmitted, and the communication apparatus as the transmission source in the node information The reception time of the communication device is updated to the current time, and the sequence number for the source communication device in the node information is updated to the sequence number included in the data from the source communication device Updating means, the name of another communication device, the total number of each data received from this communication device, the average value of the sequence numbers given to each data received from the other communication device, and the life and death of this communication device Second management means for managing the probability as node life and death information, the first correction value, the total number of each data received from the communication device as the transmission source in the node life and death information, and the communication as the transmission source Calculating a second correction value of the sample mean of the sequence number based on the sequence number included in the data received from the device; A probability that the sequence number given to the received data is received as the average value based on an arithmetic means, the second correction value, and an average value of the sequence numbers included in the received data And third calculation means for calculating

本発明によれば、ノードの死活管理を適切に行なうことができる。   According to the present invention, alive management of nodes can be appropriately performed.

第1の実施形態における通信システムの構成例を示す図。BRIEF DESCRIPTION OF THE DRAWINGS The figure which shows the structural example of the communication system in 1st Embodiment. 第1の実施形態における通信システムのノードが管理するノード情報の構成例を表形式で示す図。The figure which shows the structural example of the node information which the node of the communication system in 1st Embodiment manages in a table form. 第1の実施形態における通信システムのノードが管理するノード死活情報の構成例を表形式で示す図。FIG. 5 is a table showing a configuration example of node life and death information managed by a node of the communication system in the first embodiment. 第1の実施形態における通信システムのノードによるノード死活管理のための手順の一例を示すフローチャート。6 is a flowchart showing an example of a procedure for managing node alive by a node of the communication system in the first embodiment. 第1の実施形態における通信システムのノードによるノード死活管理のための手順の一例を示すフローチャート。6 is a flowchart showing an example of a procedure for managing node alive by a node of the communication system in the first embodiment. 第1の実施形態における通信システムのノードによる管理情報の変更の一例を示す図。The figure which shows an example of a change of the management information by the node of the communication system in 1st Embodiment. 第1の実施形態における通信システムのノードの死活確率の分布の一例を示す図。The figure which shows an example of distribution of the alive probability of the node of the communication system in 1st Embodiment. 第2の実施形態における通信システムのノードによるノード死活管理のための手順の一例を示すフローチャート。The flowchart which shows an example of the procedure for node alive management by the node of the communication system in 2nd Embodiment. 第2の実施形態における通信システムのノードによるメッセージ送信の一例を示す図。The figure which shows an example of the message transmission by the node of the communication system in 2nd Embodiment.

以下、実施形態について図面を用いて説明する。
(第1の実施形態)
まず、第1の実施形態について説明する。図1は、第1の実施形態における通信システムの構成例を示す図である。
図1に示すように、第1の実施形態における通信システムは、複数のノード10がネットワーク20により通信可能に接続されてなる。図1では2つのノードを示すが、数は特に限られない。
Hereinafter, embodiments will be described using the drawings.
First Embodiment
First, the first embodiment will be described. FIG. 1 is a diagram showing an example of a configuration of a communication system in the first embodiment.
As shown in FIG. 1, in the communication system in the first embodiment, a plurality of nodes 10 are communicably connected by a network 20. Although two nodes are shown in FIG. 1, the number is not particularly limited.

ノード10は、クロック生成部11、ノード情報DB(データベース)12(第1の管理手段)、ノード死活情報DB13(第2の管理手段)、ノード死活判定部14(第1の計算手段、第2の計算手段、第3の計算手段)、メッセージ受信部15およびメッセージ送信部16を有する。   The node 10 includes a clock generation unit 11, a node information DB (database) 12 (first management means), a node life and death information DB 13 (second management means), and a node life and death judgment unit 14 (first calculation means, second Calculation means, third calculation means), a message receiving unit 15, and a message transmitting unit 16.

ノード10は、ゴシッププロトコルで通信を行う主体である。すべてのノード10は同じ機能を有するとする。
クロック生成部11は、現在時刻を計時する。ノード情報DB12と、ノード死活情報DB13は、例えば不揮発性メモリなどの記憶装置により実現される。
The node 10 is an entity that communicates according to the gossip protocol. It is assumed that all nodes 10 have the same function.
The clock generation unit 11 clocks the current time. The node information DB 12 and the node alive information DB 13 are realized by, for example, a storage device such as a non-volatile memory.

図2は、第1の実施形態における通信システムのノードが管理するノード情報の構成例を表形式で示す図である。
ノード情報DB12は、図2に示すノード情報を記憶する。このノード情報は、各ノード10に固有のノード名称、各ノードから送信されたパケットデータであるメッセージデータ(以下、メッセージと称することがある)のそれぞれに付与された通し番号である、最新のシーケンス番号、各ノードからのデータの最新メッセージの受信時刻を各ノードについて関連付けて管理するための情報である。
FIG. 2 is a diagram showing a configuration example of node information managed by a node of the communication system in the first embodiment in a table form.
The node information DB 12 stores node information shown in FIG. This node information is the latest sequence number, which is a node name unique to each node 10 and a serial number assigned to each of message data (hereinafter may be referred to as a message) which is packet data transmitted from each node. These are information for managing the reception time of the latest message of data from each node in association with each node.

図3は、第1の実施形態における通信システムのノードが管理するノード死活情報の構成例を表形式で示す図である。
ノード死活情報DB13は、図3に示すノード死活情報を記憶する。このノード死活情報は、各ノード10に固有のノード名称、各ノードのそれぞれから受信したメッセージの総数、各ノード10それぞれから逐次受信したメッセージに含まれるシーケンス番号の平均値、各ノード10の死活確率を関連付けて管理する。
FIG. 3 is a diagram showing a configuration example of node life and death information managed by a node of the communication system in the first embodiment in the form of a table.
The node life and death information DB 13 stores node life and death information shown in FIG. This node life and death information is the node name unique to each node 10, the total number of messages received from each node, the average value of the sequence numbers included in the messages sequentially received from each node 10, the life and death probability of each node 10 Associate and manage.

図4は、第1の実施形態における通信システムのノードによるノード死活管理のための手順の一例を示すフローチャートである。
この第1の実施形態では、メッセージとして受信した各ノードのシーケンス番号に基づいて、各ノードの死活確率をベイズ統計で推定し、更新処理も併せて行う。
FIG. 4 is a flowchart showing an example of a procedure for managing node alive by the nodes of the communication system in the first embodiment.
In the first embodiment, based on the sequence number of each node received as a message, the alive probability of each node is estimated by Bayesian statistics, and update processing is also performed.

ノード10のメッセージ受信部15が、他のノードからメッセージ(各ノードのノード名称、シーケンス番号を含む)を受信すると、クロック生成部11は、ノードの現時刻(現在時刻)tnowを取得する(A1)。 When the message reception unit 15 of the node 10 receives a message (including the node name of each node and a sequence number) from another node, the clock generation unit 11 acquires the current time (current time) t now of the node ( A1).

次に、ノード死活判定部14は、ノード情報DB12からノード情報を取得する(A2)。
ノード死活判定部14は、受信メッセージにおけるi=0,…,n個のエントリ数(送信元のノードの数)だけ繰り返すループを開始し、上記のように受信したメッセージにおける現在のエントリのノード名称をノード名称nodeとする。
Next, the node life and death judgment unit 14 acquires node information from the node information DB 12 (A2).
The node life and death judgment unit 14 starts a loop that repeats by i = 0,..., N (number of source nodes) in the received message, and the node name of the current entry in the received message as described above As a node name node.

次に、ノード死活判定部14は、ノード情報におけるノード名称nodeに対応する最新メッセージ受信時刻tlastを取得する。
また、他のノードから受信したメッセージに含まれる、各ノードのシーケンス番号を、平均値μおよび分散σの正規分布
Next, the node life and death judgment unit 14 acquires the latest message reception time t last corresponding to the node name node in the node information.
In addition, the sequence number of each node included in the message received from another node is a normal distribution of average value μ and variance σ 2

に従う母集団から取得した標本であると仮定したとき、n個のメッセージに含まれるシーケンス番号をそれぞれ取得している間に時間が経過して、各ノードが送信するシーケンス番号がインクリメントされる。 Assuming that it is a sample obtained from a population according to, the sequence numbers transmitted by each node are incremented as time passes while obtaining the sequence numbers included in the n messages.

そこで、ノード死活判定部14は、上記の受信したn個のメッセージに含まれるシーケンス番号の標本平均   Therefore, the node life and death judgment unit 14 calculates the sample average of the sequence numbers included in the n received messages.

を以下の式(1)にしたがって補正する(A3(第1の計算手段としての処理))。 Are corrected in accordance with the following equation (1) (A3 (processing as first calculation means)).

現在のエントリにおける受信メッセージに含まれるシーケンス番号が、ノード情報に含まれるシーケンス番号以上であれば(A4のYES)、ノード死活判定部14は、現在のエントリにおける受信メッセージに記録されたノード名称nodeに対応するノードからの最新メッセージ受信時刻である、A1で取得した現時刻を、ノード情報におけるノード名称nodeに記録された最新メッセージ受信時刻に反映する。
また、ノード死活判定部14は、現在のエントリにおける受信メッセージに記録されたノード名称nodeのシーケンス番号を、ノード情報におけるノード名称nodeのシーケンス番号に反映する(A5)。
If the sequence number included in the received message in the current entry is equal to or greater than the sequence number included in the node information (YES in A4), the node life and death judgment unit 14 determines the node name node recorded in the received message in the current entry. The current time acquired in A1, which is the latest message reception time from the node corresponding to, is reflected in the latest message reception time recorded in the node name node in the node information.
The node life and death judgment unit 14 reflects the sequence number of the node name node recorded in the received message in the current entry in the sequence number of the node name node in the node information (A5).

次に、ノード死活判定部14は、ノード死活情報での死活確率φを計算する(A6)。この計算の詳細については後述する。
そして、受信メッセージにおけるi=0,…,n個のエントリ数だけ繰り返すループが終了すると、メッセージ送信部は、メッセージを送信してきたノード向けにノード情報を送信する(A7)。
Next, the node life and death judgment unit 14 calculates the life and death probability φ in the node life and death information (A6). Details of this calculation will be described later.
Then, when the loop repeating the number of entries of i = 0,..., N in the received message is ended, the message transmission unit transmits node information to the node that has transmitted the message (A7).

次に、A6の処理の詳細について説明する。図5は、第1の実施形態における通信システムのノードによるノード死活管理のための手順の一例を示すフローチャートである。A6の処理として、ノード死活判定部14は、ノード死活情報で対応する、現在のエントリの受信メッセージ総数をnとする(B1)。   Next, the details of the process of A6 will be described. FIG. 5 is a flow chart showing an example of a procedure for managing node alive by the nodes of the communication system in the first embodiment. As the process of A6, the node life and death judgment unit 14 sets the total number of received messages of the current entry corresponding to the node life and death information to n (B1).

ノード死活判定部14は、A3で求めた標本平均   The node life and death judgment unit 14 calculates the sample average obtained in A3.

を以下の式(2)に応じて補正する(B2(第2の計算手段としての処理))。 Is corrected according to the following equation (2) (B2 (processing as second calculation means)).

このとき、ノードが、n個だけシーケンス番号を他のノードから受信できた場合、事後分布(平均値μの確率密度関数)は   At this time, if a node can receive n sequence numbers from other nodes, the posterior distribution (probability density function of average value μ) is

となる。
ノード死活判定部14は、ノード死活情報における、現在のエントリの受信メッセージの平均シーケンス番号を上記の事後分布のμに代入することで、受信した最新のメッセージに含まれるシーケンス番号が平均値μとして観測される確率である死活確率φを求める(B3(第3の計算手段としての処理))。
It becomes.
The node life and death judgment unit 14 substitutes the average sequence number of the received message of the current entry in the node life and death information into μ of the above posterior distribution, and the sequence number included in the latest received message becomes the average value μ. The life and death probability φ, which is the observed probability, is determined (B3 (processing as the third calculation means)).

B3で計算した確率φが一定値未満であれば(B4のNo)、ノード死活判定部14は、ノード死活情報における、該当ノードのノード死活確率φを、B3で計算した確率φに更新する(B5)。   If the probability φ calculated in B3 is less than the fixed value (No in B4), the node life and death judgment unit 14 updates the node life and death probability φ of the corresponding node in the node life and death information to the probability φ calculated in B3 ( B5).

一方、B3で計算した確率φが一定値以上であれば(B4のYes)、ノード死活判定部14は、ノード死活情報における、該当ノードの受信メッセージ総数をクリアし、ノード情報における最新のシーケンス番号をクリアする(B6)。
B5またはB6の処理がなされることで、A6の処理が終了する。
On the other hand, if the probability φ calculated in B3 is equal to or more than a predetermined value (Yes in B4), the node life and death judgment unit 14 clears the total number of received messages of the corresponding node in the node life and death information, and the latest sequence number in the node information To clear (B6).
The process of A6 is completed by performing the process of B5 or B6.

図6は、第1の実施形態における通信システムのノードによる管理情報の変更の一例を示す図である。
図6に示すように、ノードBがノードAからメッセージを受信したと仮定すると、このノードBによる上記のA1からA7までの処理を行なうことで、ノードBが管理するノード情報における、ノードA,Dのシーケンス番号、最新メッセージ受信時刻が、ノードAから受信したメッセージにおける、ノードA,Dのシーケンス番号、およびこれらの受信したメッセージの受信時刻に更新される。
FIG. 6 is a diagram showing an example of change of management information by a node of the communication system in the first embodiment.
As shown in FIG. 6, assuming that the node B receives a message from the node A, the above-described processing from A1 to A7 by this node B allows the node A, in the node information managed by the node B, The sequence number D and the latest message reception time are updated to the sequence numbers of the nodes A and D in the message received from the node A and the reception time of these received messages.

また、ノードBが管理するノード死活情報における、ノードAの死活確率は、更新前と比較して現状維持(高いまま)となり、ノードCの死活確率は更新前と比較して大きく下げられ、ノードDの死活確率は前回の受信で一旦大きく下げられるが、今回の受信で上げられる。   Further, the alive probability of the node A in the node alive information managed by the node B becomes the current state maintenance (remaining high) as compared with that before the update, and the alive characteristic of the node C is greatly lowered compared with before the update The alive and dead probability of D is greatly lowered once in the previous reception, but it is raised in the current reception.

具体的には、ノードAについて、前回のメッセージ受信時刻(時刻172)における死活確率の計算結果が比較的高く、今回のメッセージ受信時刻(時刻195)における死活確率の計算結果も、今回受信したシーケンス番号について観測される可能性が高い確率である。   Specifically, for node A, the calculation result of the alive probability at the previous message reception time (time 172) is relatively high, and the calculation result of the alive probability at the current message reception time (time 195) is also the sequence received this time There is a high probability of being observed for the number.

ノードCについて、前回のメッセージ受信時刻(時刻172)における死活確率の計算結果が比較的高いとする。今回のメッセージ受信時刻(時刻195)において、シーケンス番号が200から更新されなかったために、最新メッセージ受信時刻が170から更新されなかった。これにより、今回送信されたシーケンス番号について観測される可能性が低い確率であるために、ノードCの死活確率が低くなる。   It is assumed that, for the node C, the calculation result of the alive probability at the previous message reception time (time 172) is relatively high. Since the sequence number was not updated from 200 at the current message reception time (time 195), the latest message reception time was not updated from 170. As a result, the alive probability of the node C becomes low because the probability of being observed for the sequence number transmitted this time is low.

ノードDについて、前々回のメッセージ受信時刻(時刻152)における死活確率の計算結果が比較的高いとし、前回のメッセージ受信時刻(時刻172)における死活確率の計算結果で比較的低いとする。ここで、今回のメッセージ受信時刻(時刻195)においてシーケンス番号が122から126に更新されたことで、今回受信したシーケンス番号について観測される可能性が高い確率であるために、ノードDの死活確率は上昇する。   For node D, it is assumed that the calculation result of the alive probability at the last two message reception times (time 152) is relatively high, and the calculation result of the alive probability at the previous message reception time (time 172) is relatively low. Here, since the sequence number is updated from 122 to 126 at the current message reception time (time 195), there is a high probability that the sequence number received this time is likely to be observed. Will rise.

図7は、第1の実施形態における通信システムのノードによるノードの死活確率の分布の一例を示す図である。
図7に示すように、死活確率φに応じて、各ノードの信用度合いを表現することができる。今まで受信できていたデータのシーケンス番号から外れたシーケンス番号を受信するほど該当のノードの信用度合いは下がる。
FIG. 7 is a diagram showing an example of the distribution of the alive probability of the nodes by the nodes of the communication system in the first embodiment.
As shown in FIG. 7, the degree of trust of each node can be expressed according to the alive and dead probability φ. As the sequence number deviates from the sequence number of the data that could be received up to now, the trust degree of the corresponding node decreases.

図7に示したように、初期状態では、シーケンス番号の平均値μを横軸とした場合のノードAの死活確率φ、ノードCの死活確率φ、ノードnの死活確率φの、分布は一律(低い確率)と仮定した場合で、他のノードからメッセージを受信するたびに、確率分布を更新した場合、新たに受信した、あるシーケンス番号に応じた確率が高い時は、ノードの信用度合いが高いとし、確率が低い時は、ノードの信用度合いが低いとして、ノードが機能しておらず、初期状態に戻す必要があると判断できる。 As shown in FIG. 7, in the initial state, with the alive-and-death probability φ 1 of node A, the alive-and-death probability φ 2 of node C, and the alive-and-death probability φ n of node n when average value μ of the sequence number is taken along Assuming that the distribution is uniform (low probability), if the probability distribution is updated each time a message is received from another node, if the probability according to a certain sequence number newly received is high, the node If the degree of trust is high and the probability is low, it can be determined that the node is not functioning and it is necessary to return to the initial state, because the degree of trust of the node is low.

以上のように、第1の実施形態では、複数のサンプルデータが必要な従来のアクルーアル故障検知と比べて、各ノードの情報が十分集まらない状況下でも、ベイズ推定を用いる事で、少ない情報しかない状況でも、ある確率を仮定してノードの死活管理を行なうことができる。   As described above, according to the first embodiment, compared with the conventional detection of a complete failure requiring a plurality of sample data, even when the information of each node is not collected enough, using the Bayesian estimation provides less information. Even if there is no situation, it is possible to perform alive management of nodes assuming a certain probability.

また、各ノードが他ノードの死活確率を自律的に計算するため、他のノードから送信されてくるメッセージをそのまま信用せずに、それぞれが一番信用できるノードを利用することができるようになる。   Also, since each node autonomously calculates the alive-and-death probability of other nodes, it is possible to use the most reliable node without trusting the messages sent from other nodes as it is. .

(第2の実施形態)
次に、第2の実施形態について説明する。なお、この第2の実施形態について、第1の実施形態で説明した内容と同一の内容については説明を省略する。
図8は、第2の実施形態における通信システムのノードによるノード死活管理のための手順の一例を示すフローチャートである。
第2の実施形態では、各ノードは、自身が管理しているノード情報におけるノード名称およびシーケンス番号を、Δ時間ごとに他の1つのノードに向けて送信する。Δは各ノードで一律とする。
Second Embodiment
Next, a second embodiment will be described. In the second embodiment, the same contents as the contents described in the first embodiment will not be described.
FIG. 8 is a flow chart showing an example of a procedure for node alive management by a node of the communication system in the second embodiment.
In the second embodiment, each node transmits a node name and a sequence number in node information managed by itself toward another node every Δt time. Δt is uniform at each node.

従来のゴシッププロトコルでは、各ノードは、送信先としての1つのノードをランダムに選択するが、本実施形態では、各ノードからの最新のメッセージの受信時刻を、ノード情報における最新メッセージ受信時刻に記録しておき、各ノードのうち、ノード情報における最新メッセージ受信時刻が一番古いノードを、送信先のノードとして優先的に選択する。つまり、できる限り、他のノードと交わりの少ないノードと交わるようにする。   In the conventional gossip protocol, each node randomly selects one node as a transmission destination, but in the present embodiment, the reception time of the latest message from each node is recorded in the latest message reception time in the node information Among the nodes, the node with the oldest reception time of the latest message in the node information is preferentially selected as a transmission destination node. In other words, as much as possible, try to intersect with nodes that do not intersect with other nodes.

ノード10のメッセージ送信部16は、Δごとにノード情報DB12に格納されているノード情報を取得する(C1)。
メッセージ送信部16は、クロック生成部11にて取得した現在時刻と、ノード情報で示される各ノードの最新メッセージ受信時刻とを比較し、一番時間が経過しているノード、つまり最新メッセージ受信時刻が最も古いノードを選択する(C2)。
メッセージ送信部16は、C2で選択したノードに向けて、直近に送信したシーケンス番号を1インクリメントしたしシーケンス番号を含むメッセージを送信する(C3)。
The message transmission unit 16 of the node 10 acquires node information stored in the node information DB 12 every Δt (C1).
The message transmission unit 16 compares the current time acquired by the clock generation unit 11 with the latest message reception time of each node indicated by the node information, and the node for which the longest time has elapsed, that is, the latest message reception time Selects the oldest node (C2).
The message transmission unit 16 transmits, to the node selected in C2, a message including the sequence number obtained by incrementing the sequence number transmitted most recently by one (C3).

図9は、第2の実施形態における通信システムのノードによるメッセージ送信の一例を示す図である。
図9に示したように、ノードAが、ノードB、C、Dの中からメッセージの送信先のノードを選択する際に、ノードAは、ノード情報で示されるノードB、C、Dの最新メッセージ受信のうち、最も古い時刻に対応する、ここでは時刻「100」がノード情報で管理されるノードB(図9に示した例では「10」→「11」)を、新たなメッセージの送信先として選択する。
ノードAは、ノード情報で管理されるノードAにおけるシーケンス番号を1インクリメント(図9に示した例では「10」→「11」)した番号を含むメッセージを、このノードBに送信する。
FIG. 9 is a diagram illustrating an example of message transmission by a node of the communication system in the second embodiment.
As shown in FIG. 9, when the node A selects a node to which a message is to be sent from the nodes B, C, D, the node A updates the nodes B, C, D indicated by the node information. Among messages received, node B ("10" → "11" in the example shown in FIG. 9) corresponding to the oldest time, where time "100" is managed by node information, is a new message transmission Select as destination.
The node A transmits, to the node B, a message including a number obtained by incrementing the sequence number in the node A managed by the node information by one (in the example shown in FIG. 9, “10” → “11”).

以上のように、第2の実施形態では、従来のゴシッププロトコルと比べて、通信相手のノードをランダムに選ばないので、メッセージ収受の早い段階で、すべてのノード情報がネットワーク全体に拡散することを実現できる。   As described above, in the second embodiment, as compared with the conventional gossip protocol, since the communication partner node is not randomly selected, all node information is spread throughout the network at an early stage of message reception. realizable.

なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   While certain embodiments of the present invention have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and the gist of the invention, and are included in the invention described in the claims and the equivalent scope thereof.

10…ノード、11…クロック生成部、12…ノード情報DB、13…ノード死活情報DB、14…ノード死活判定部、15…メッセージ受信部、16…メッセージ送信部、20…ネットワーク。   DESCRIPTION OF SYMBOLS 10 ... Node 11 Clock generation part 12 Node information DB 13 Node life-and-death information DB 14 Node life-and-death judgment part 15 Message reception part 16 Message transmission part 20 Network.

Claims (3)

他の通信装置の名称、この通信装置から受信したデータに付与される最新のシーケンス番号、およびこの通信装置から最新のデータを受信した時刻である受信時刻をノード情報として管理する第1の管理手段と、
複数の通信装置の名称、および、他の通信装置が管理する、前記複数の通信装置の前記最新のシーケンス番号を含むデータを前記他の通信装置から受信する受信手段と、
前記データを受信したときの現在時刻と、前記ノード情報で示される、前記受信したデータの送信元である通信装置についての前記受信時刻との差分に基づいて、前記受信したデータで示される前記シーケンス番号の標本平均の第1の補正値を計算する第1の計算手段と、
前記ノード情報における前記送信元である通信装置についての前記受信時刻を、前記現在時刻に更新し、前記ノード情報における前記送信元である通信装置についての前記シーケンス番号を、前記送信元である通信装置からの前記データに含まれる前記シーケンス番号に更新する更新手段と、
他の通信装置の名称、この通信装置から受信した各データの総数、前記他の通信装置から受信した各データに付与される前記シーケンス番号の平均値、およびこの通信装置の死活確率をノード死活情報として管理する第2の管理手段と、
前記第1の補正値、前記ノード死活情報における前記送信元である通信装置から受信した各データの総数、および、前記送信元である通信装置から受信したデータに含まれる前記シーケンス番号に基づいて、前記シーケンス番号の標本平均の第2の補正値を計算する第2の計算手段と、
前記第2の補正値、および、前記受信したデータに含まれる前記シーケンス番号の平均値に基づいて、前記受信したデータに付与される前記シーケンス番号が前記平均値として受信される確率を計算する第3の計算手段と
を備えたことを特徴とする通信装置。
First management means for managing, as node information, the name of another communication device, the latest sequence number given to data received from this communication device, and the reception time that is the time when the latest data was received from this communication device When,
Receiving means for receiving, from the other communication device, data including names of the plurality of communication devices and the latest sequence numbers of the plurality of communication devices managed by the other communication devices;
The sequence indicated by the received data based on the difference between the current time when the data is received and the reception time of the communication apparatus that is the transmission source of the received data, which is indicated by the node information First calculation means for calculating a first correction value of the sample average of the numbers;
The reception time of the communication apparatus as the transmission source in the node information is updated to the current time, and the sequence number of the communication apparatus as the transmission source in the node information is the communication apparatus as the transmission source Updating means for updating to the sequence number included in the data from
The name of another communication device, the total number of each data received from this communication device, the average value of the sequence numbers given to each data received from the other communication device, and the alive probability of this communication device A second management means to manage as
Based on the first correction value, the total number of each data received from the source communication device in the node life and death information, and the sequence number included in the data received from the source communication device. Second calculation means for calculating a second correction value of the sample average of the sequence number;
Calculating a probability that the sequence number given to the received data is received as the average value based on the second correction value and the average value of the sequence numbers included in the received data A communication apparatus comprising: 3 calculation means.
前記現在時刻と、前記ノード情報における各通信装置の前記受信時刻とを比較して、前記現在時刻との差分が最も大きい前記受信時刻について前記ノード情報で対応する通信装置を新たなデータの送信先として選択して、この選択した通信装置に前記新たなデータを送信する送信手段をさらに備えた
ことを特徴とする請求項1に記載の通信装置。
The current time is compared with the reception time of each communication device in the node information, and the communication device corresponding to the node information for the reception time with the largest difference from the current time is the transmission destination of new data The communication apparatus according to claim 1, further comprising transmission means for selecting the data and transmitting the new data to the selected communication apparatus.
通信装置に適用される方法であって、
他の通信装置の名称、この通信装置から受信したデータに付与される最新のシーケンス番号、およびこの通信装置から最新のデータを受信した時刻である受信時刻をノード情報として管理し、
複数の通信装置の名称、および、他の通信装置が管理する、前記複数の通信装置の前記最新のシーケンス番号を含むデータを前記他の通信装置から受信し、
前記データを受信したときの現在時刻と、前記ノード情報で示される、前記受信したデータの送信元である通信装置についての前記受信時刻との差分に基づいて、前記受信したデータで示される前記シーケンス番号の標本平均の第1の補正値を計算し、
前記ノード情報における前記送信元である通信装置についての前記受信時刻を、前記現在時刻に更新し、前記ノード情報における前記送信元である通信装置についての前記シーケンス番号を、前記送信元である通信装置からの前記データに含まれる前記シーケンス番号に更新し、
他の通信装置の名称、この通信装置から受信した各データの総数、前記他の通信装置から受信した各データに付与される前記シーケンス番号の平均値、およびこの通信装置の死活確率をノード死活情報として管理し、
前記第1の補正値、前記ノード死活情報における前記送信元である通信装置から受信した各データの総数、および、前記送信元である通信装置から受信したデータに含まれる前記シーケンス番号に基づいて、前記シーケンス番号の標本平均の第2の補正値を計算し、
前記第2の補正値、および、前記受信したデータに含まれる前記シーケンス番号の平均値に基づいて、前記受信したデータに付与される前記シーケンス番号が前記平均値として受信される確率を計算する
ことを特徴とする通信方法。
A method applied to a communication device,
Managing, as node information, names of other communication devices, latest sequence numbers given to data received from the communication devices, and reception times at which the latest data were received from the communication devices;
Receiving from the other communication device data including names of the plurality of communication devices and the latest sequence numbers of the plurality of communication devices managed by the other communication devices;
The sequence indicated by the received data based on the difference between the current time when the data is received and the reception time of the communication apparatus that is the transmission source of the received data, which is indicated by the node information Calculate the first correction value of the sample mean of the numbers,
The reception time of the communication apparatus as the transmission source in the node information is updated to the current time, and the sequence number of the communication apparatus as the transmission source in the node information is the communication apparatus as the transmission source Update to the sequence number included in the data from
The name of another communication device, the total number of each data received from this communication device, the average value of the sequence numbers given to each data received from the other communication device, and the alive probability of this communication device Manage as
Based on the first correction value, the total number of each data received from the source communication device in the node life and death information, and the sequence number included in the data received from the source communication device. Calculating a second correction value of the sample mean of the sequence number;
Calculating a probability that the sequence number given to the received data is received as the average value based on the second correction value and an average value of the sequence numbers included in the received data A communication method characterized by
JP2016182050A 2016-09-16 2016-09-16 Communication apparatus and communication method Active JP6514165B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016182050A JP6514165B2 (en) 2016-09-16 2016-09-16 Communication apparatus and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016182050A JP6514165B2 (en) 2016-09-16 2016-09-16 Communication apparatus and communication method

Publications (2)

Publication Number Publication Date
JP2018046516A JP2018046516A (en) 2018-03-22
JP6514165B2 true JP6514165B2 (en) 2019-05-15

Family

ID=61695263

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016182050A Active JP6514165B2 (en) 2016-09-16 2016-09-16 Communication apparatus and communication method

Country Status (1)

Country Link
JP (1) JP6514165B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5056464B2 (en) * 2008-02-20 2012-10-24 日本電気株式会社 Process monitoring method, information processing apparatus, and program
US8745157B2 (en) * 2011-09-02 2014-06-03 Trading Technologies International, Inc. Order feed message stream integrity

Also Published As

Publication number Publication date
JP2018046516A (en) 2018-03-22

Similar Documents

Publication Publication Date Title
US9754002B2 (en) Method and system for providing a synchronization service
US20060179137A1 (en) Method and apparatus for reducing spam on a peer-to-peer network
US11316868B2 (en) Information verification system, information verification device, method and program
EP3176994B1 (en) Explicit content deletion commands in a content centric network
EP2978174B1 (en) Interest return control message
JP2016517551A (en) Method, computer system and computer program for performing integrity check and selective deduplication based on network parameters
KR20150116392A (en) Service discovery using collection synchronization with exact names
EP3070910B1 (en) Pending interest table behavior
JP2017097807A (en) Learning method, learning program, and information processing device
US20180097731A1 (en) Communication apparatus and method of communication
CN106797330B (en) Method, Traffic Monitor (TM), Request Router (RR) and system for monitoring a Content Delivery Network (CDN)
GB2572537A (en) Generating or obtaining an updated neural network
CN109120669B (en) Method, medium, and system for building block chain based on P2P internet
US20160164952A1 (en) Systems and Methods For Information Centric Networking
WO2009120345A4 (en) Updating routing and outage information in a communications network
JP6514165B2 (en) Communication apparatus and communication method
US20170006088A1 (en) Connection method and communication device
US9729428B2 (en) Peer-to-peer connection system with capability of peer-to-peer connection path routing, path routing method of peer-to-peer connection and computer application program thereof
US9559814B2 (en) Communication method, communication apparatus, and communication system
US8755397B2 (en) Asynchronous communication in an unstable network
CN107547620B (en) Response time obtaining method and device
CN110677683A (en) Video storage and video access method and distributed storage and video access system
US20220382605A1 (en) Classical management of qubit requests
EP3051919B1 (en) Device and method for wireless communication used in wireless ad hoc network
CN111061682B (en) Data caching method, reading method, electronic equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190213

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190411

R151 Written notification of patent or utility model registration

Ref document number: 6514165

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151