JP5375539B2 - Communication node, communication system, and packet communication method - Google Patents

Communication node, communication system, and packet communication method Download PDF

Info

Publication number
JP5375539B2
JP5375539B2 JP2009259853A JP2009259853A JP5375539B2 JP 5375539 B2 JP5375539 B2 JP 5375539B2 JP 2009259853 A JP2009259853 A JP 2009259853A JP 2009259853 A JP2009259853 A JP 2009259853A JP 5375539 B2 JP5375539 B2 JP 5375539B2
Authority
JP
Japan
Prior art keywords
packet
received
communication
recording
value
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
JP2009259853A
Other languages
Japanese (ja)
Other versions
JP2011109232A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2009259853A priority Critical patent/JP5375539B2/en
Publication of JP2011109232A publication Critical patent/JP2011109232A/en
Application granted granted Critical
Publication of JP5375539B2 publication Critical patent/JP5375539B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は通信ネットワークにおける通信ノード、通信システム並びにパケット通信方法に関するものである。   The present invention relates to a communication node, a communication system, and a packet communication method in a communication network.

通信ネットワークに接続された2つの通信ノード間に複数の中継経路が存在する場合、通常は、複数の通信ポートを持つ通信ノードにOSPF(Open Shortest Path First)やSTP(Spanning Tree Protocol)といったルーティングプロトコルを実装し、それらの機能により中継経路の1つを選択することで、宛先ノードに同一パケットが複数到着したり、同一パケットが通信ネットワーク内を永久に中継され続けるブロードキャストストームと呼ばれる現象を回避している。このような通信ネットワークで限定された中継経路上で障害が発生した場合、OSPFやSTPが新たな中継経路を選択することで通信が再開されるが、そのためには少なくとも数十秒程度が必要であった。つまり、迂回経路があるにもかかわらす、数十秒もの間、通信が断絶してしまう。このようなことから、障害発生時も通信を継続するための冗長通信方式が考えられた。   When there are multiple relay paths between two communication nodes connected to a communication network, a routing protocol such as OSPF (Open Shortest Path First) or STP (Spanning Tree Protocol) is usually connected to a communication node having multiple communication ports. By implementing one of these functions and selecting one of the relay routes, it is possible to avoid a phenomenon called a broadcast storm where the same packet arrives at the destination node or the same packet is continuously relayed in the communication network. ing. If a failure occurs on a limited relay route in such a communication network, OSPF and STP resume communication by selecting a new relay route, but this requires at least several tens of seconds. there were. In other words, communication is interrupted for several tens of seconds even though there is a detour route. For this reason, a redundant communication method for continuing communication even when a failure occurs was considered.

従来の冗長通信方式は、2つの通信ノード間の経路について、重ならない複数の中継経路を予め用意し、送信側の通信ノードは1つのパケットを複数にコピーしてそれぞれ別の中継経路に送信し、それぞれの中継経路に沿って受信側の通信ノードに到着する複数のパケットのうち、最初に到着したパケットのみ受信処理を行い、他のパケットは廃棄するようにしているので、通信ネットワークで障害が発生しても予め設定した複数の中継経路のうち1つでも中継可能であれば、障害発生中も通信を継続できるようになっていた(例えば、特許文献1)。   In the conventional redundant communication method, a plurality of non-overlapping relay routes are prepared in advance for the route between two communication nodes, and the communication node on the transmission side copies one packet into a plurality of pieces and transmits them to different relay routes. Since the reception process is performed only for the first packet that arrives at the communication node on the receiving side along each relay route, and the other packets are discarded, there is a failure in the communication network. If one of a plurality of preset relay paths can be relayed even if it occurs, communication can be continued even during the occurrence of a failure (for example, Patent Document 1).

特開2001−69171号公報JP 2001-69171 A

従来の冗長通信方式は、パケットは予め決められた複数の中継経路で中継されるため、それら全て中継経路上でそれぞれ障害が発生したとき、予め決められた経路以外の他の中継経路がある場合も、通信が断絶してしまうという問題点があった。   In the conventional redundant communication method, the packet is relayed through a plurality of predetermined relay routes, and when a failure occurs on each of the relay routes, there is a relay route other than the predetermined route. However, there was a problem that communication was interrupted.

この発明は上記のような問題点を解決するためになされたもので、2つの通信ノード間に予め中継経路を決めるのではなく、パケットを中継するその時々に中継可能な経路で中継することで、複数の障害発生時もパケットの中継を継続できる冗長通信方式を実現する通信ノード、通信システム並びにパケット通信方法を提供することを目的とする。   The present invention has been made to solve the above-described problems. Instead of deciding a relay route between two communication nodes in advance, the packet is relayed by a route that can be relayed from time to time. An object of the present invention is to provide a communication node, a communication system, and a packet communication method that realize a redundant communication method capable of continuing packet relay even when a plurality of failures occur.

本発明に係る通信ノードにおいては、送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、送信元ノードから受信したパケットのパケットIDを記録する記録手段と、受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、前記パケット判別手段で新しいパケットと判定されたパケット自分宛場合は受信する受信手段と、前記パケット判別手段で新しいパケットと判定されたパケット自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段とを備え、前記記録手段は、記録内容を更新する更新周期時間を有し、前記更新周期時間は、隣接する更新周期において受信するパケットのパケットID値が重複しないように設定されていることを特徴とする。
また、本発明に係る通信ノードにおいては、通信ネットワーク上の他の通信ノードと相互に接続された通信ノードであって、送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、送信元ノードから受信したパケットのパケットIDを記録する記録手段と、受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、前記パケット判別手段で新しいパケットと判定されたパケットが自分宛の場合は受信する受信手段と、前記パケット判別手段で新しいパケットと判定されたパケットが自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段とを備え、前記記録手段は、記録内容を更新する更新周期時間を有し、前記更新周期時間は通信ネットワーク内における2つの通信ノード間でパケットが中継されるために要する時間より長く、前記送信元ノードが前記更新周期時間内に送信可能な最大パケット数がパケットID値の最大値の1/2を超える時間より短く設定されていることを特徴とする。
また、本発明に係る通信ノードにおいては、通信ネットワーク上の他の通信ノードと相互に接続された通信ノードであって、送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、送信元ノードから受信したパケットのパケットIDを記録する記録手段と、受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、前記パケット判別手段で新しいパケットと判定されたパケットが自分宛の場合は受信する受信手段と、前記パケット判別手段で新しいパケットと判定されたパケットが自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段とを備え、前記パケット判別手段は、前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも大きい場合には、前記受信したパケットIDの値と前記記録手段に記録されたパケットIDの値との差が、更新周期時間内に同一の前記送信元ノードが送信可能な最大パケット数以下となる条件で、前記受信したパケットを前記新しいパケットと判定し、前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも小さい場合には、前記受信したパケットIDの値が、パケットIDとしてとり得る値の最大値と前記記録手段に記録されたパケットIDとの値の差を、更新周期時間内に同一の前記送信元ノードが送信可能な最大パケット数から減算した値以下となる条件で、前記受信したパケットを前記新しいパケットと判定することを特徴とする。
また、本発明に係る通信ノードにおいては、通信ネットワーク上の他の通信ノードと相互に接続された通信ノードであって、送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、送信元ノードから受信したパケットのパケットIDを記録する記録手段と、受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、前記パケット判別手段で新しいパケットと判定されたパケットが自分宛の場合は受信する受信手段と、前記パケット判別手段で新しいパケットと判定されたパケットが自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段と、前記記録手段に記録されたパケットIDと前記受信したパケットのパケットIDが連続していない場合にはパケットの追い越しが発生したと判断する追越検出手段と、追い越しが発生したパケットIDの範囲のパケットIDを記録する追越記録手段と、前記受信したパケットのパケットIDと前記追越記録手段によって記録されたパケットIDとを比較し、追い越されたパケットであるかを判定する追越パケット判別手段とを備え、前記受信手段は、前記追越パケット判別手段にて追い越されたパケットと判定されたパケットが自分宛の場合は受信し、前記中継手段は、前記追越パケット判別手段にて追い越されたパケットと判定されたパケットが自分宛ではない場合は1乃至複数の相互に接続された通信ノードに中継することを特徴とする。
また、本発明に係るパケット通信方法においては、通信ネットワーク上の相互に接続された通信ノード間のパケット通信方法であって、送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に付与して送信する送信ステップと、送信元ノードから受信したパケットのパケットIDを記録する記録ステップと、受信したパケットのパケットIDと、前記記録ステップにおいて記録されたパケットIDとを比較し、前記送信元ノードでのパケット送信順序を判定するパケット判別ステップとを有し、前記パケット判別ステップは、前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも大きい場合には、前記記録されたパケットIDの値と前記パケットIDの値の差が、更新周期時間内に同一の前記送信元ノードが送信可能なパケット数以下となる条件で、前記受信したパケットを新しいパケットと判定し、前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも小さい場合には、前記受信したパケットIDの値が、パケットIDの最大値と前記記録されたパケットIDとの値の差を、更新周期時間内に同一の前記送信元ノードが送信可能なパケット数から減算した値以下となる条件で、前記受信したパケットを新しいパケットとして判定を行うことを特徴とする。
In the communication node according to the present invention, the packet to be transmitted, and transmits the possible values as a packet ID and assigned as the packet ID in order cyclically to one or a plurality of communication nodes interconnected transmission Means, a recording means for recording the packet ID of the packet received from the transmission source node, a packet ID of the received packet and the packet ID recorded by the recording means, and the transmission order at the transmission source node and determining packet determining means, receiving means packet determined as a new packet in the packet discrimination means for receiving the case addressed to, packet said determined new packet in the packet discrimination means not name themselves addressed If the a relay section for relaying the one or a plurality of communication nodes interconnected, the recording means, the recording The has the update period time for updating, the update cycle time, characterized in that the packet ID value of a packet to be received in the update cycle adjacent is set so as not to overlap.
Further, in the communication node according to the present invention, the communication node is connected to other communication nodes on the communication network, and a value that can be taken as a packet ID is cyclically assigned to the packet to be transmitted. A transmission means for transmitting to one or a plurality of communication nodes connected to each other as an ID, a recording means for recording a packet ID of a packet received from a transmission source node, a packet ID of the received packet, Packet identification means for comparing the packet ID recorded by the recording means to determine the transmission order at the transmission source node, and reception for receiving a packet determined as a new packet by the packet identification means when addressed to itself And a packet determined to be a new packet by the packet discrimination means are not connected to each other. Relay means for relaying to one or a plurality of communication nodes, wherein the recording means has an update cycle time for updating recorded contents, and the update cycle time is a packet between two communication nodes in a communication network. Longer than the time required for the packet to be relayed, and the maximum number of packets that the transmission source node can transmit within the update cycle time is set to be shorter than the time that exceeds 1/2 of the maximum value of the packet ID value. Features.
Further, in the communication node according to the present invention, the communication node is connected to other communication nodes on the communication network, and a value that can be taken as a packet ID is cyclically assigned to the packet to be transmitted. A transmission means for transmitting to one or a plurality of communication nodes connected to each other as an ID, a recording means for recording a packet ID of a packet received from a transmission source node, a packet ID of the received packet, Packet identification means for comparing the packet ID recorded by the recording means to determine the transmission order at the transmission source node, and reception for receiving a packet determined as a new packet by the packet identification means when addressed to itself And a packet determined to be a new packet by the packet discrimination means are not connected to each other. Relay means for relaying to one or a plurality of communication nodes, wherein the packet discrimination means, when the value of the received packet ID is larger than the value of the packet ID recorded by the recording means, Under the condition that the difference between the received packet ID value and the packet ID value recorded in the recording means is less than or equal to the maximum number of packets that can be transmitted by the same source node within the update cycle time, When the packet is determined to be the new packet and the received packet ID value is smaller than the packet ID value recorded by the recording means, the received packet ID value is a value that can be taken as a packet ID. The difference between the maximum value of the packet and the packet ID recorded in the recording means is the maximum packet that can be transmitted by the same source node within the update cycle time. Under conditions such that less than a value obtained by subtracting from the betting amount, and judging the received packet and the new packet.
Further, in the communication node according to the present invention, the communication node is connected to other communication nodes on the communication network, and a value that can be taken as a packet ID is cyclically assigned to the packet to be transmitted. A transmission means for transmitting to one or a plurality of communication nodes connected to each other as an ID, a recording means for recording a packet ID of a packet received from a transmission source node, a packet ID of the received packet, Packet identification means for comparing the packet ID recorded by the recording means to determine the transmission order at the transmission source node, and reception for receiving a packet determined as a new packet by the packet identification means when addressed to itself And a packet determined to be a new packet by the packet discrimination means are not connected to each other. If the packet ID recorded in the recording means and the packet ID of the received packet are not consecutive, the relay means for relaying to one or a plurality of communication nodes is determined to determine that a packet overtaking has occurred. The overtaking detection means, the overtaking recording means for recording the packet ID in the range of the packet ID where overtaking occurred, the packet ID of the received packet and the packet ID recorded by the overtaking recording means are compared, and the overtaking And an overtaking packet determination means for determining whether the packet is a packet that has been overtaken by the overtaking packet determination means. The relay means, if the packet determined to be overtaken by the overtaking packet determination means is not addressed to itself, is one or more phases. Wherein the relaying the connected communication node.
The packet communication method according to the present invention is a packet communication method between mutually connected communication nodes on a communication network, and cyclically assigns a value that can be taken as a packet ID to a packet to be transmitted. The transmission step of transmitting the packet, the recording step of recording the packet ID of the packet received from the transmission source node, the packet ID of the received packet, and the packet ID recorded in the recording step are compared, and the transmission source A packet determination step for determining a packet transmission order at a node, wherein the packet determination step is performed when the received packet ID value is larger than the packet ID value recorded by the recording means. The difference between the recorded packet ID value and the packet ID value is within the update cycle time. The received packet is determined to be a new packet under a condition that the number of packets that can be transmitted by one source node is less than the value of the packet ID recorded by the recording unit. If the received packet ID value is smaller, the difference between the maximum packet ID value and the recorded packet ID is the number of packets that can be transmitted by the same source node within the update cycle time. The received packet is determined as a new packet under a condition that is less than or equal to the value subtracted from.

この発明によれば、通信ネットワークを構成する任意の経路で1乃至複数の障害が発生したとしても、任意の2つの通信ノード間に通信可能な通信経路が1つでも存在すれば通信継続可能となり、重複する内容のパケットの伝送を抑制し、通信ネットワークの負荷を低減した冗長通信方式を実現できる。   According to the present invention, even if one or more faults occur in any route that constitutes a communication network, communication can be continued if there is even one communication route that can be communicated between any two communication nodes. Therefore, it is possible to realize a redundant communication method that suppresses transmission of overlapping packets and reduces the load on the communication network.

この発明の実施の形態1を示す通信ノードの構成図である。It is a block diagram of the communication node which shows Embodiment 1 of this invention. この発明の実施の形態1を示す通信パケットのフォーマット図である。It is a format figure of the communication packet which shows Embodiment 1 of this invention. この発明の実施の形態1を示す制御パケットのフォーマット図である。It is a format figure of the control packet which shows Embodiment 1 of this invention. この発明の実施の形態1を示す中継テーブルの構成図である。It is a block diagram of the relay table which shows Embodiment 1 of this invention. この発明の実施の形態1を示す冗長通信部の送信処理のフローチャートである。It is a flowchart of the transmission process of the redundant communication part which shows Embodiment 1 of this invention. この発明の実施の形態1を示す冗長通信部の受信処理のフローチャートである。It is a flowchart of the reception process of the redundant communication part which shows Embodiment 1 of this invention. この発明の実施の形態1における図6に示すフローチャートの内、パケット判定ステップ(ステップ65)の詳細を示すフローチャートである。It is a flowchart which shows the detail of a packet determination step (step 65) among the flowcharts shown in FIG. 6 in Embodiment 1 of this invention. この発明の実施の形態1を示すパケットの遅延発生時に宛先ノードで受信したパケットのパケットIDが重複する場合の模式図である。It is a schematic diagram when the packet IDs of the packets received at the destination node at the time of occurrence of packet delay according to the first embodiment of the present invention overlap. パケット判定ステップ(ステップ65)の条件式を満たすパケットIDの領域を示す模式図である。It is a schematic diagram which shows the area | region of packet ID which satisfy | fills the conditional expression of a packet determination step (step 65). この発明の実施の形態1を示す中継管理周期タイマがタイムアウトした時の処理のフローチャートである。It is a flowchart of a process when the relay management period timer which shows Embodiment 1 of this invention times out. この発明の実施の形態1を示す通信ネットワーク障害発生時のパケットの中継を示す模式図である。It is a schematic diagram which shows the relay of the packet at the time of the communication network failure which shows Embodiment 1 of this invention. この発明の実施の形態1を示す通信ネットワーク例の構成図である。It is a block diagram of the example of a communication network which shows Embodiment 1 of this invention. この発明の実施の形態1を示す図12の通信ネットワーク例におけるパケットの中継を示すフロー図である。FIG. 13 is a flowchart showing packet relaying in the communication network example of FIG. 12 showing Embodiment 1 of the present invention; この発明の実施の形態1を示す図12の通信ネットワーク例において障害発生時のパケットの中継を示すフロー図である。FIG. 13 is a flowchart showing packet relaying when a failure occurs in the communication network example of FIG. 12 showing Embodiment 1 of the present invention; この発明の実施の形態1を示す図12の通信ネットワーク例において障害回復時のパケットの中継を示すフロー図である。FIG. 13 is a flowchart showing packet relaying at the time of failure recovery in the communication network example of FIG. 12 showing Embodiment 1 of the present invention; この発明の実施の形態1を示す図12の通信ネットワーク例において障害が複数発生した時のパケットの中継を示すフロー図である。FIG. 13 is a flowchart showing packet relaying when a plurality of failures occur in the communication network example of FIG. 12 showing Embodiment 1 of the present invention. この発明の実施の形態2を示す中継テーブルの構成図である。It is a block diagram of the relay table which shows Embodiment 2 of this invention. この発明の実施の形態2における図6に示すフローチャートの内、パケット判定ステップ(ステップ65)の詳細を示すフローチャートである。It is a flowchart which shows the detail of a packet determination step (step 65) among the flowcharts shown in FIG. 6 in Embodiment 2 of this invention. この発明の実施の形態2を示す中継管理周期タイマがタイムアウトした時の処理のフローチャートである。It is a flowchart of a process when the relay management period timer which shows Embodiment 2 of this invention times out. この発明の実施の形態2を示す図12の通信ネットワーク例におけるパケットの中継を示すフロー図である。It is a flowchart which shows the relay of the packet in the communication network example of FIG. 12 which shows Embodiment 2 of this invention.

実施の形態1. Embodiment 1 FIG.

以下、図面を参照することにより、本発明の実施の形態について説明する。なお、本発明は、以下の実施の形態に限定されるものではない。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. Note that the present invention is not limited to the following embodiments.

図1はこの発明の通信ノードを示すノード構成図である。図1は他の通信ノードと通信ネットワークを介してパケットの送受信を行うアプリケーション1、アプリケーション1に対して通信ネットワークを介したパケットの送受信機能を提供する冗長通信部2、パケットの同一性を判断する識別子となるパケットIDを生成するため、パケットIDとしてとり得る値をサイクリックにカウントする送信カウンタ21、受信したパケットについて送信元ノード毎にパケットIDを記録し、パケットの受信と中継を管理するための中継テーブル22、中継テーブル22の記録内容を定期的に更新するための中継管理周期タイマ23、通信ノードが通信ネットワークとパケットを送受信するための通信ポート31〜3nによって構成される。   FIG. 1 is a node configuration diagram showing a communication node of the present invention. FIG. 1 shows an application 1 that transmits / receives a packet to / from another communication node via a communication network, a redundant communication unit 2 that provides the application 1 with a packet transmission / reception function via the communication network, and determines the identity of the packet. In order to generate a packet ID that serves as an identifier, a transmission counter 21 that cyclically counts possible values for the packet ID, records a packet ID for each transmission source node for received packets, and manages packet reception and relaying Relay table 22, relay management cycle timer 23 for periodically updating the recorded contents of the relay table 22, and communication ports 31 to 3n for communication nodes to send and receive packets to and from the communication network.

また、図2はこの発明の通信ネットワークにおいて送受信される通信パケットのフォーマット図である。図2において、通信パケット200はアプリケーション1が通信するデータを通信ネットワーク上で運ぶための通信パケットである。宛先ノードID201はアプリケーション1がパケット送信要求時に指定するパケットを受信する通信ノードの識別子、送信元ノードID202はパケットを送信した通信ノードの識別子、パケットID203は送信側の通信ノードの冗長通信部2が送信カウンタ21の値を用いて生成したパケットの識別子、アプリケーション通信データ204はアプリケーション1が冗長通信部2に送信要求した通信データである。   FIG. 2 is a format diagram of communication packets transmitted and received in the communication network of the present invention. In FIG. 2, a communication packet 200 is a communication packet for carrying data communicated by the application 1 on the communication network. The destination node ID 201 is the identifier of the communication node that receives the packet specified by the application 1 when requesting packet transmission, the transmission source node ID 202 is the identifier of the communication node that transmitted the packet, and the packet ID 203 is the redundant communication unit 2 of the transmission side communication node. The identifier of the packet generated using the value of the transmission counter 21 and the application communication data 204 are communication data requested by the application 1 to be transmitted to the redundant communication unit 2.

また、図3はこの発明の通信ネットワークにおいて送受信される制御パケットのフォーマット図である。図3において、制御パケット300は冗長通信部2が通信ネットワーク上の他の通信ノードの中継テーブル22の記録内容を同期するためのパケットである。このパケットを受信した通信ノードでは、中継テーブル22の送信元ノードIDに対応する受信済みパケットID42と前回受信済みパケットID43が0に設定される。宛先ノードID301は図2の宛先ノードID201と同じくパケットを受信するノードの識別子であるが、制御パケット300ではID値は同報を示す値、例えば0に固定されている。送信元ノードID302は図2の送信元ノードID202と同じく、パケットを送信した通信ノードの識別子である。パケットID303は図2のパケットID203と同じくパケットの識別子であるが、ID値は制御パケットを示す値、例えば0に固定されている。   FIG. 3 is a format diagram of a control packet transmitted and received in the communication network of the present invention. In FIG. 3, a control packet 300 is a packet for the redundant communication unit 2 to synchronize the recorded contents of the relay table 22 of another communication node on the communication network. In the communication node that has received this packet, the received packet ID 42 and the previously received packet ID 43 corresponding to the transmission source node ID in the relay table 22 are set to zero. The destination node ID 301 is an identifier of a node that receives a packet, similar to the destination node ID 201 of FIG. 2, but in the control packet 300, the ID value is fixed to a value indicating broadcast, for example, 0. The transmission source node ID 302 is an identifier of the communication node that transmitted the packet, similar to the transmission source node ID 202 of FIG. The packet ID 303 is a packet identifier as with the packet ID 203 in FIG. 2, but the ID value is fixed to a value indicating a control packet, for example, 0.

また、図4はこの発明の中継テーブル22の構成図である。図4において、送信元ノードID41は受信したパケットの送信元ノードID202が格納される。受信済パケットID42は通信ポート31〜3nから受信したパケットのうち、送信元ノードID41毎に最新に送信元ノードが送信したパケットのパケットID203が逐次更新されて格納される。前回受信済パケットID43は、中継管理周期タイマ23が前回タイムアウトしたときの受信済パケットID42の値が格納される。尚、受信済パケットIDに格納されるパケットIDは最新のものだけでなく、複数のパケットIDを記録することも可能である。これによって、例えば、パケットの追い越しが発生した場合にも対応することが可能となる。また、図4のように送信元ノード毎に記録する構成は必須ではなく、送信元ノード毎に情報を取り出すことができればよい。   FIG. 4 is a block diagram of the relay table 22 of the present invention. In FIG. 4, the transmission source node ID 41 stores the transmission source node ID 202 of the received packet. Of the packets received from the communication ports 31 to 3n, the packet ID 203 of the latest packet transmitted by the transmission source node for each transmission source node ID 41 among the packets received from the communication ports 31 to 3n is sequentially updated and stored. The previously received packet ID 43 stores the value of the received packet ID 42 when the relay management cycle timer 23 timed out last time. The packet ID stored in the received packet ID is not limited to the latest packet ID, and a plurality of packet IDs can be recorded. As a result, for example, it is possible to cope with a case where packet overtaking occurs. Further, the configuration of recording for each transmission source node as shown in FIG. 4 is not essential, and it is sufficient that information can be extracted for each transmission source node.

また、図5はこの発明の冗長通信部2の送信処理のフローチャートである。図5において、ステップ51は制御パケット300によって自分の送信カウンタ21と通信ネットワーク上の他の通信ノードの中継テーブル22を同期させる初期化ステップ、ステップ52はアプリケーション1からの通信要求を待つ要求待ちステップ、ステップ53は通信パケット200を生成し通信ネットワークに送信する送信ステップ、ステップ54は送信カウンタ21の更新を行うカウンタ更新ステップである。   FIG. 5 is a flowchart of the transmission process of the redundant communication unit 2 of the present invention. In FIG. 5, step 51 is an initialization step for synchronizing the own transmission counter 21 with the relay table 22 of another communication node on the communication network by the control packet 300, and step 52 is a request waiting step for waiting for a communication request from the application 1. Step 53 is a transmission step for generating the communication packet 200 and transmitting it to the communication network, and Step 54 is a counter updating step for updating the transmission counter 21.

また、図6はこの発明の冗長通信部2の受信処理のフローチャートである。図6において、ステップ61は中継テーブル22を初期化し、中継管理周期タイマ23を起動する初期化ステップ、ステップ62は通信ポート31〜3nでパケットが通信ネットワークから受信されるのを待つ受信待ちステップ、ステップ63は受信した通信パケット200の送信元ノードID202と一致するエントリを中継テーブル22で検索する検索ステップ、ステップ64は中継テーブル22に新しいエントリを作成するエントリ作成ステップ、ステップ65は受信したパケットのパケットIDと中継テーブル22に記録されているパケットIDとを比較し、送信元の通信ノードでの送信順序を判定し、受信したパケットが送信元の通信ノードにおいて後から送信された新しいパケットであるかを判定するパケット判定ステップ、ステップ66はパケットの宛先ID201からアプリケーション1に渡すパケットかどうかを判定する宛先判定ステップ、ステップ67はパケットのアプリケーション通信データ204のコピーをアプリケーション1に渡すアプリケーション受信ステップ、ステップ68はパケットを通信ネットワークに送信する中継ステップである。   FIG. 6 is a flowchart of the reception process of the redundant communication unit 2 of the present invention. 6, step 61 is an initialization step for initializing the relay table 22 and starting the relay management cycle timer 23. Step 62 is a reception waiting step for waiting for a packet to be received from the communication network at the communication ports 31 to 3n. Step 63 is a search step for searching the relay table 22 for an entry that matches the transmission source node ID 202 of the received communication packet 200. Step 64 is an entry creation step for creating a new entry in the relay table 22. Step 65 is a step of searching for the received packet. The packet ID is compared with the packet ID recorded in the relay table 22 to determine the transmission order in the transmission source communication node, and the received packet is a new packet transmitted later in the transmission source communication node. Packet determination step for determining whether Step 66 is a destination determination step for determining whether or not the packet is to be passed from the packet destination ID 201 to the application 1. Step 67 is an application reception step for passing a copy of the application communication data 204 of the packet to the application 1. Step 68 is a step for sending the packet to the communication network. It is a relay step to transmit to.

また、図7はこの発明の図6のパケット判定ステップ(ステップ65)の詳細を示すフローチャートである。図7において、ステップ71はパケットが通信パケット200か制御パケット300かを判定する制御パケット判定ステップ、ステップ72は受信パケットがその送信元の通信ノードから受信した最初のパケットかを判定する先頭パケット判定ステップ、ステップ73は通信パケット200のパケットID203と中継テーブル22のエントリの受信済パケットID42の値を比較することで前回受信したパケットと今回受信したパケットが送信元の通信ノードにおいてどちらが先に送信されたのかを判断する送信順序判定ステップ、ステップ74は中継テーブル22の記録内容を受信パケットのパケットID203で更新する記録ステップである。ステップ75はステップ71で制御パケットと判定されたパケットについて、その送信元IDに対応する受信済パケットIDが0であるかを判断する制御パケット受信可否判定ステップである。   FIG. 7 is a flowchart showing details of the packet determination step (step 65) of FIG. 6 of the present invention. In FIG. 7, step 71 is a control packet determination step for determining whether a packet is a communication packet 200 or a control packet 300, and step 72 is a first packet determination for determining whether a received packet is the first packet received from the transmission source communication node. In step 73, the packet ID 203 of the communication packet 200 and the value of the received packet ID 42 in the entry of the relay table 22 are compared to determine which of the packets received last time and the packet received this time is transmitted first. Step 74 is a recording step for determining whether or not the packet is recorded, and step 74 is a recording step for updating the recorded contents of the relay table 22 with the packet ID 203 of the received packet. Step 75 is a control packet reception determination step for determining whether or not the received packet ID corresponding to the transmission source ID of the packet determined as the control packet in step 71 is 0.

また、図8はパケットの遅延発生時における宛先ノードで受信したパケットのパケットIDが重複した場合の模式図である。横軸は時間を表し、T1〜T4は中継テーブル22の更新周期時間である(更新周期時間T1からT4は一定である。)。送信元ノードと宛先ノード間をパケットID(X)を付与されたパケットと送信カウンタ21の値で1サイクル前の同一のパケットID(X)が付与されたパケットが伝送している状態を示す。   FIG. 8 is a schematic diagram when the packet IDs of the packets received at the destination node at the time of occurrence of packet delay overlap. The horizontal axis represents time, and T1 to T4 are update cycle times of the relay table 22 (update cycle times T1 to T4 are constant). This shows a state in which a packet with a packet ID (X) and a packet with the same packet ID (X) one cycle before the value of the transmission counter 21 are transmitted between the transmission source node and the destination node.

また、図9は前述のパケット判定ステップ(ステップ65)において新しいパケットと判定されるパケットIDの領域を表したものである。図において斜線で示された部分が新しいパケットと判定される領域である。   FIG. 9 shows a packet ID area determined as a new packet in the packet determination step (step 65). In the figure, the hatched portion is an area determined as a new packet.

また、図10はこの発明の中継管理周期タイマ23がタイムアウトしたときの処理を示すフローチャートである。図9において、ステップ81はその通信ノードからのパケットが一定期間受信されていないエントリを削除するエージングステップ、ステップ82は中継テーブル22の前回受信済パケットID43を更新する定期更新ステップである。   FIG. 10 is a flowchart showing the processing when the relay management cycle timer 23 of the present invention times out. In FIG. 9, step 81 is an aging step for deleting an entry for which a packet from the communication node has not been received for a certain period of time, and step 82 is a periodic update step for updating the previously received packet ID 43 in the relay table 22.

また、図11はこの発明の通信ネットワーク障害発生時のパケットの中継を示す模式図である。横軸は時間を表し、T1〜T4は中継テーブルの更新周期時間である。送信元ノードと宛先ノード間をパケットが伝送している状態を示す。ネットワーク障害が発生している間にパケットIDが最大値Mに達し、1に戻っている状態を示す。   FIG. 11 is a schematic diagram showing packet relay when a communication network failure occurs according to the present invention. The horizontal axis represents time, and T1 to T4 are relay table update cycle times. A state in which a packet is transmitted between the transmission source node and the destination node is shown. While the network failure occurs, the packet ID reaches the maximum value M and returns to 1.

また、図12はこの発明における通信ノードが複数相互に接続された通信ネットワークの例を示すネットワーク構成図である。図12において、Ns、Nr、N1〜N4は通信ノードであり、各通信ノード間をパケットが中継するために要する時間を時間の単位をtとして、1t、3tというように示している。   FIG. 12 is a network configuration diagram showing an example of a communication network in which a plurality of communication nodes according to the present invention are connected to each other. In FIG. 12, Ns, Nr, and N1 to N4 are communication nodes, and the time required for a packet to be relayed between the communication nodes is expressed as 1t and 3t, where the time unit is t.

また、図13はこの発明の図12の通信ネットワークにおけるパケットの中継を示すフロー図である。図13において、Ns、Nr、N1〜N4は図12の対応する通信ノードであり、Nsはパケットの送信元の通信ノード、Nrは宛先の通信ノードである。また、Sndは送信カウンタ21の値、Rcyは中継テーブル22に記録された送信元の通信ノードNsのエントリの受信済パケットID42の値である。0t〜17tは時間経過を示す。   FIG. 13 is a flowchart showing packet relaying in the communication network of FIG. 12 of the present invention. In FIG. 13, Ns, Nr, and N1 to N4 are the corresponding communication nodes in FIG. 12, Ns is the packet transmission source communication node, and Nr is the destination communication node. Further, Snd is the value of the transmission counter 21, and Rcy is the value of the received packet ID 42 of the entry of the transmission source communication node Ns recorded in the relay table 22. 0t to 17t indicate the passage of time.

また、図14はこの発明の通信ネットワークで障害が発生したときのパケットの中継を示すフロー図である。図中の各記号は図12と同等である。   FIG. 14 is a flowchart showing packet relaying when a failure occurs in the communication network of the present invention. Each symbol in the figure is equivalent to FIG.

また、図15はこの発明の通信ネットワークの障害が回復したときのパケットの中継を示すフロー図である。図中の各記号は図12と同等である。   FIG. 15 is a flowchart showing packet relaying when a failure of the communication network of the present invention is recovered. Each symbol in the figure is equivalent to FIG.

また、図16はこの発明の通信ネットワークで複数の障害が発生したときのパケットの中継を示すフロー図である。図中の各記号は図12と同等である。   FIG. 16 is a flowchart showing packet relay when a plurality of failures occur in the communication network of the present invention. Each symbol in the figure is equivalent to FIG.

次に通信ノードの起動時の動作について説明する。
通信ノードが起動すると、冗長通信部2は図5のステップ51において送信カウンタ21を1に初期化し、制御パケット300を生成して通信ポート31〜3nの全てから送信し、他の通信ノードの中継テーブル22における制御パケットの送信元ノードに対応するエントリに格納された受信済パケットID値を0にする同期が実行される。その後、ステップ52でアプリケーション1からの送信要求を待つ。また、図6のステップ61において中継テーブル22を初期化し、すなわち、中継テーブル22の記録内容がすべて削除された状態となり、中継管理周期タイマ23を起動する。
Next, the operation when the communication node is activated will be described.
When the communication node is activated, the redundant communication unit 2 initializes the transmission counter 21 to 1 in step 51 of FIG. 5, generates a control packet 300 and transmits it from all of the communication ports 31 to 3n, and relays it to other communication nodes. Synchronization is executed to set the received packet ID value stored in the entry corresponding to the transmission source node of the control packet in the table 22 to 0. Thereafter, in step 52, a transmission request from the application 1 is awaited. Also, in step 61 of FIG. 6, the relay table 22 is initialized, that is, all the recorded contents of the relay table 22 are deleted, and the relay management cycle timer 23 is started.

次にパケットの送信動作について説明する。
図5において送信側の通信ノードで、アプリケーション1が冗長通信部2にパケットの送信を要求すると、冗長通信部2は、ステップ53において通信パケット200を作成する。ここで、宛先ノードID201とアプリケーション通信データ204はアプリケーション1が指定する。送信元ノードID202は、冗長通信部2が自分のノードIDを設定する。パケットID203に送信カウンタ21の値が設定される。宛先ノードID201と送信元ノードID202とパケットID203が送信パケットのヘッダ部分に付与されて生成された通信パケット200は、全ての通信ポート31〜3nから通信ネットワークに送信される。尚、ここでは全ての通信ポートから送信されるとしているが、全ての通信ポートから送信することは必須ではない。例えば、パケットの中継のために使用しない通信ポートがある場合や、宛先ノードへの中継が不可能な経路にパケットを送信する通信ポートがある場合等にはそれらの通信ポートを除いて、送信元ノードに相互に接続された1乃至複数の通信ノードに対して送信を行う。
Next, the packet transmission operation will be described.
In FIG. 5, when the application 1 requests the redundant communication unit 2 to transmit a packet in the communication node on the transmission side, the redundant communication unit 2 creates a communication packet 200 in step 53. Here, the destination node ID 201 and the application communication data 204 are designated by the application 1. For the source node ID 202, the redundant communication unit 2 sets its own node ID. The value of the transmission counter 21 is set in the packet ID 203. The communication packet 200 generated by adding the destination node ID 201, the transmission source node ID 202, and the packet ID 203 to the header portion of the transmission packet is transmitted from all the communication ports 31 to 3n to the communication network. Here, it is assumed that transmission is performed from all communication ports, but transmission from all communication ports is not essential. For example, when there are communication ports that are not used for relaying packets, or when there are communication ports that transmit packets on a route that cannot be relayed to the destination node, the sender is excluded from those communication ports. Transmission is performed to one or more communication nodes mutually connected to the node.

次に、ステップ54にて送信カウンタ21の更新を行う。更新は送信カウンタ21の値を1つ進めることによりなされるが、カウンタ値は1から最大値の範囲でサイクリックに、すなわち、カウンタ値を循環させて用いるため、更新前のカウンタ値が最大値であった場合は1に戻す。   Next, at step 54, the transmission counter 21 is updated. The update is performed by advancing the value of the transmission counter 21 by one. However, the counter value is cyclically used in the range from 1 to the maximum value, that is, the counter value is circulated so that the counter value before the update is the maximum value. If it is, return to 1.

次に、パケットの受信動作について説明する。
図6においてステップ62で通信ポート31〜3nのいずれか1つからパケットを受信すると、ステップ63において、受信パケットの送信元ノードID202に該当する中継テーブル22のエントリを検索する。該当するエントリが見つからなかった場合は、ステップ64で新たにエントリを作成する。ここで、エントリの送信元ノードID41には、受信パケットの送信元ノードID202を設定する。受信済パケットID42と前回受信済パケットID43には受信したパケットのパケットID203を設定する。そして、受信パケットは新しいパケットとして、ステップ66に移行する。
Next, a packet receiving operation will be described.
In FIG. 6, when a packet is received from any one of the communication ports 31 to 3n at step 62, an entry of the relay table 22 corresponding to the transmission source node ID 202 of the received packet is searched at step 63. If no corresponding entry is found, a new entry is created in step 64. Here, the source node ID 202 of the received packet is set as the source node ID 41 of the entry. The packet ID 203 of the received packet is set in the received packet ID 42 and the previously received packet ID 43. Then, the received packet is a new packet and the process proceeds to step 66.

また、ステップ63にて該当するエントリが見つかった場合は、ステップ65に移行する。ステップ65で、受信パケットが、中継テーブル22に記録されている受信済パケットID42を付与されたパケットより送信側の通信ノードで後から送信された新しいパケットかどうかを判定する。   If a corresponding entry is found in step 63, the process proceeds to step 65. In step 65, it is determined whether or not the received packet is a new packet transmitted later in the communication node on the transmission side from the packet assigned the received packet ID 42 recorded in the relay table 22.

この詳細を図7で説明する。まず、ステップ71で受信パケットが制御パケット300かどうかを確認する。受信パケットのパケットID203が0の場合、パケットは制御パケット300であるので、ステップ75に進む。ここで、制御パケット300の送信元ID302に対応する受信済パケットIDが0の場合は、旧パケットと判定し、無視する。一方受信済パケットIDが0でない場合には送信側の通信ノードの送信カウンタ21と中継テーブル22を同期するため、エントリの受信済パケットID42にパケットID203、すなわち0を設定し(ステップ74)、新しいパケットと判定する。   This will be described in detail with reference to FIG. First, in step 71, it is confirmed whether the received packet is the control packet 300 or not. If the packet ID 203 of the received packet is 0, the packet is the control packet 300, and the process proceeds to step 75. If the received packet ID corresponding to the transmission source ID 302 of the control packet 300 is 0, it is determined as an old packet and ignored. On the other hand, when the received packet ID is not 0, in order to synchronize the transmission counter 21 and the relay table 22 of the communication node on the transmitting side, the packet ID 203, that is, 0 is set in the received packet ID 42 of the entry (step 74). Judged as a packet.

受信パケットが通信パケット200であった場合、ステップ72においてエントリの受信済パケットID42が0かどうかを確認する。受信済パケットID42が0であった場合、受信パケットより以前に、該当通信ノードからのパケットは受信していないと考えられるので、この場合も新しいパケットと判定し、ステップ74で受信パケットのパケットID203を受信済パケットID42に設定する。   If the received packet is the communication packet 200, it is checked in step 72 whether the received packet ID 42 of the entry is 0. If the received packet ID 42 is 0, it is considered that the packet from the communication node has not been received before the received packet. Therefore, in this case as well, it is determined that the packet is a new packet. Is set in the received packet ID 42.

パケットID203と受信済パケットID42のどちらも0でない場合は、ステップ73において、受信パケットがエントリに記録されている受信済パケットより後から送信側の通信ノードで送信されたかを判断する。   If neither the packet ID 203 nor the received packet ID 42 is 0, it is determined in step 73 whether the received packet has been transmitted from the communication node on the transmission side after the received packet recorded in the entry.

ステップ73では、受信パケットのパケットID203と受信済パケットID42を比較することで新しいパケットか否かを判定する。ここで、パケットID同士の比較によって送信元ノードでの送信順序の判定を可能とするために、中継管理周期タイマ23の1更新周期時間を、通信ネットワーク内の任意の2つの通信ノード間でパケットが中継されるために要する時間より長く、各通信ノードでの1更新周期時間内に送信可能な最大パケット数(以下、送信可能パケット数)が送信カウンタ21の最大値の1/2を超える時間より短く設定する。この設定の下では、パケットがどのような遅い通信経路を中継したとしても、あるパケットIDをもつパケットと、そのパケットID値と1サイクル以上ずれたパケットIDを付与されたパケットとが、宛先ノードに同一時刻に、または、1サイクル以上ずれたパケットIDを付与されたパケットが先行して到着しないことが保障される。   In step 73, it is determined whether the packet is a new packet by comparing the packet ID 203 of the received packet with the received packet ID. Here, in order to make it possible to determine the transmission order at the transmission source node by comparing the packet IDs, one update cycle time of the relay management cycle timer 23 is set between two arbitrary communication nodes in the communication network. Is longer than the time required to be relayed, and the maximum number of packets that can be transmitted within one update cycle time in each communication node (hereinafter, the number of packets that can be transmitted) exceeds 1/2 of the maximum value of the transmission counter 21 Set it shorter. Under this setting, no matter what slow communication route the packet relays, a packet having a certain packet ID and a packet given a packet ID that is shifted from the packet ID value by one cycle or more are It is guaranteed that a packet given a packet ID shifted by one cycle or more at the same time does not arrive in advance.

図8によってこれを説明する。簡単の為、以下の説明では送信元ノードと宛先ノードとの更新周期時間は同一であるとする。仮に送信元ノードが1更新周期時間内に送信するパケット数が送信カウンタ21の最大値の1/2を超え、ある周期T1と次の周期T2でそれぞれ送信可能な最大パケット数を送る場合、その超えた部分について周期T1で送信されるパケットのパケットIDと次の周期T2で送信されるパケットのパケットIDに1サイクルずれた重複するパケットIDが生じる。このときの任意の重複するパケットIDをXとしたとき、周期T1でパケット送信時に遅延が発生し、最大で1更新周期時間程度の時間をかけて宛先ノードに到達し、一方、次の周期T2のパケット送信時は遅延なく宛先ノードに到達した場合には、周期T2で送信されたパケットID(X)を持ったパケットと、周期T1で送信された1サイクル前の同一のパケットID(X)を持ったパケットが宛先ノードで同一時刻に、または、周期T2で送信されたパケットが周期T1で送信されたパケットを追い越してしまう可能性がある。従って、このような場合はパケットID値の比較のみでは送信元ノードでの送信順序が判定できなくなる。本発明においては、更新周期時間を上記の設定としているため、送信元ノードで隣接する更新周期において重複するパケットIDは生じない。すなわち、周期T1でパケットID(X)が付与されるパケットが生成されて、次に1サイクル後の同一のパケットID(X)を付与されたパケットが生成されるのは周期T3以降となる。周期T1でパケットID(X)を付与されて送信されたパケットはどんなに遅い通信経路を伝送したとしてもT2周期内には宛先ノードに到達するため、上記の問題は生じ得ない。   This will be described with reference to FIG. For simplicity, in the following description, it is assumed that the update cycle times of the transmission source node and the destination node are the same. If the number of packets transmitted by the transmission source node within one update cycle time exceeds 1/2 of the maximum value of the transmission counter 21 and the maximum number of packets that can be transmitted in a certain cycle T1 and the next cycle T2 is sent, An overlapped packet ID is generated that is shifted by one cycle between the packet ID of the packet transmitted in the cycle T1 and the packet ID of the packet transmitted in the next cycle T2 for the portion exceeding the limit. When an arbitrary overlapping packet ID at this time is X, a delay occurs at the time of packet transmission in the period T1, and the destination node is reached over a time of about one update period time, while the next period T2 When the packet arrives at the destination node without delay, the packet having the packet ID (X) transmitted in the period T2 and the same packet ID (X) one cycle before transmitted in the period T1 are transmitted. May be overtaken by the destination node at the same time, or the packet transmitted in the cycle T2 may pass the packet transmitted in the cycle T1. Accordingly, in such a case, the transmission order at the transmission source node cannot be determined only by comparing the packet ID values. In the present invention, since the update cycle time is set as described above, duplicate packet IDs do not occur in adjacent update cycles at the transmission source node. That is, a packet to which the packet ID (X) is assigned in the cycle T1 is generated, and then a packet to which the same packet ID (X) after one cycle is generated is generated after the cycle T3. Since the packet transmitted with the packet ID (X) assigned at the period T1 reaches the destination node within the period T2 no matter how slow the communication path is transmitted, the above problem cannot occur.

この場合、パケットID同士の比較で送信元ノードでの送信順序を判定できるため、以下の条件を満たす場合にパケット判定ステップ65にて送信元ノードから後に送信された新しいパケットと判定することができる。図9は以下の条件を満たすパケットIDの領域を示す模式図である。
受信済パケットID42<受信パケットID203の場合、
受信パケットID203−受信済パケットID42≦送信可能パケット数
受信済パケットID42>受信パケットID203の場合、
受信パケットID203≦送信可能パケット数−(送信カウンタ最大値−受信済パケットID42)
上式、および、図9において受信済パケットID42>受信パケットID203の場合となるのは送信元ノードの1更新周期時間中に送信カウンタが最大値に達してカウンタ値が1に戻った場合である。上式を満たさない場合、または、受信済パケットID42と受信パケットID203とが等しい場合には旧パケットと判定される。尚、送信元ノードと宛先ノードで更新周期時間を同一とした場合には、送信元ノードが1更新周期時間内に送信可能な最大パケット数は、宛先ノードが1更新周期時間内に同一の送信元ノードから受信可能な最大パケット数(以下、受信可能パケット数)と等しくなるはずであるので、上記条件式における送信可能パケット数を受信可能パケット数と置き換えても良い。
In this case, since the transmission order at the transmission source node can be determined by comparing the packet IDs, a new packet transmitted later from the transmission source node can be determined at the packet determination step 65 when the following conditions are satisfied. . FIG. 9 is a schematic diagram showing a packet ID area that satisfies the following conditions.
When the received packet ID 42 <the received packet ID 203,
When received packet ID 203−received packet ID 42 ≦ number of transmittable packets received packet ID 42> received packet ID 203,
Received packet ID 203 ≦ number of transmittable packets− (maximum value of transmission counter−received packet ID 42)
In the above equation and received packet ID 42> received packet ID 203 in FIG. 9, the transmission counter reaches the maximum value and the counter value returns to 1 during one update cycle time of the transmission source node. . When the above equation is not satisfied, or when the received packet ID 42 and the received packet ID 203 are equal, it is determined as an old packet. When the update cycle time is the same between the transmission source node and the destination node, the maximum number of packets that can be transmitted by the transmission source node within one update cycle time is the same as the number of packets that the destination node transmits within one update cycle time. Since it should be equal to the maximum number of packets that can be received from the source node (hereinafter, the number of receivable packets), the number of packets that can be transmitted in the above conditional expression may be replaced with the number of receivable packets.

受信パケットが新しいパケットと判断された場合、ステップ74で、受信済パケットID42をパケットID203の値に更新して記録する。   If it is determined that the received packet is a new packet, the received packet ID 42 is updated to the value of the packet ID 203 and recorded in step 74.

以上のように、ステップ65の処理が行われ、受信パケットが新しいパケットと判断された場合、ステップ66で、受信した通信ノードが宛先ノードID201を確認し、自分宛のID、もしくは同報を示すIDであれば受信処理をする。このとき、受信パケットが通信パケット200であれば、ステップ67にて受信パケットのアプリケーション通信データ204のコピーをアプリケーション1に渡す。また受信パケットが制御パケット300の場合は、宛先ノードID301は同報を示すIDとなっているが、アプリケーション通信データ204が存在しないので、アプリケーション1にコピーは渡されない。そして最後に、ステップ68で、通信ポート31〜3nのうちパケットを受信したポート以外の全通信ポートに、受信パケットを送信する中継処理をする。一方、フローチャートには記載していないがステップ65で旧パケットと判断された場合は、そのパケットを無視して廃棄する。尚、通信ポート31〜3nのうちパケットを受信したポート以外の全通信ポートにから送信されるとしているが、全ての通信ポートから送信することは必須ではない。例えば、パケットの中継のために使用しない通信ポートがある場合や、宛先ノードへの中継が不可能な経路にパケットを送信する通信ポートがある場合等にはそれらの通信ポートとパケットを受信した通信ポートを除いて、パケットを受信した通信ノードに相互に接続された1乃至複数の通信ノードに対して送信する中継処理を行う。尚、ここでの中継とは受信した通信ポートからパケットを送り返しても中継にはならないため、受信した通信ポート以外の通信ポートからパケットを送信することを示す。   As described above, when the processing in step 65 is performed and the received packet is determined to be a new packet, in step 66, the received communication node confirms the destination node ID 201 and indicates the ID addressed to itself or the broadcast. If it is ID, reception processing is performed. At this time, if the received packet is the communication packet 200, a copy of the application communication data 204 of the received packet is passed to the application 1 in step 67. When the received packet is the control packet 300, the destination node ID 301 is an ID indicating the broadcast, but since the application communication data 204 does not exist, no copy is passed to the application 1. Finally, in step 68, relay processing for transmitting the received packet to all communication ports other than the port that received the packet among the communication ports 31 to 3n is performed. On the other hand, although not shown in the flowchart, if it is determined in step 65 that the packet is an old packet, the packet is ignored and discarded. In addition, although it is supposed that it transmits from all communication ports other than the port which received the packet among communication ports 31-3n, it is not essential to transmit from all the communication ports. For example, when there are communication ports that are not used for relaying packets, or when there are communication ports that transmit packets on a route that cannot be relayed to the destination node, communication with those communication ports and packets received A relay process for transmitting to one or a plurality of communication nodes connected to the communication node that has received the packet is performed except for the port. Note that the relay here means that a packet is transmitted from a communication port other than the received communication port because the packet is not relayed even if the packet is sent back from the received communication port.

次に、図10において中継管理周期タイマ23がタイムアウトしたときの処理について説明する。タイムアウトが発生すると、ステップ81で中継テーブルのうち、受信済パケットID42と前回受信済パケットID43が等しいエントリを検索して全て削除する。次に、ステップ82で、残ったエントリ全てについて、受信済パケットID42を前回受信済パケットID43にコピーする。   Next, processing when the relay management cycle timer 23 times out in FIG. 10 will be described. When a time-out occurs, in step 81, an entry in the relay table where the received packet ID 42 and the previous received packet ID 43 are equal is searched and deleted. Next, in step 82, the received packet ID 42 is copied to the previously received packet ID 43 for all remaining entries.

上記処理はパケットIDを順番にサイクリックに付与していることにより、前述のパケット判定ステップにおいて必要なパケットが誤判定によって廃棄されることを防止することができる。図11は送信元ノードからパケットID(X)を付与されたパケットが宛先ノードに到達してから、送信元ノードから宛先ノード間にネットワーク障害が発生し、更新周期時間より長い期間、送信元ノードと宛先ノード間でパケットが送受信できない状態となった場合である。このとき、障害が復旧するまでの間に送信元ノードが宛先ノードに対してパケットを送信し、送信カウンタのロールアップ処理(送信カウンタの最大値Mに達し、再びカウンタ値が1に戻る処理)が行われたとする。障害復旧後に、送信元ノードからパケットIDとしてX−α(1≦α≦X−1)が付与されたパケットが宛先ノードに到達すると、パケット判定ステップでは障害発生前に最後に受信したパケットID(X)とパケットID(X−α)とを比較し、パケットID(X−α)からパケットID(X)までのパケットIDを付与されたパケットは新しいパケットであるにもかかわらず旧パケットであると誤判定される。これを防止するために、1更新周期期間内に送信元ノードからパケットの受信がない場合はエントリを削除して受信済パケットID42を初期化することで、障害復旧後にパケット到達したパケットを新しいパケットと判定するようにし、必要なパケットが誤判定により廃棄されることを防止している。尚、このように通信ネットワークの全経路が遮断された場合には、送信元ノードからの制御パケットによる同期もできないため、各通信ノードに中継テーブルの記録内容を初期化する手段を与えたものである。   Since the above process cyclically assigns packet IDs in order, it is possible to prevent a necessary packet from being discarded due to an erroneous determination in the packet determination step described above. FIG. 11 shows a case where a network failure occurs between the source node and the destination node after the packet given the packet ID (X) from the source node reaches the destination node, and the source node is longer than the update cycle time. And the packet cannot be transmitted and received between the destination nodes. At this time, the transmission source node transmits a packet to the destination node until the failure is recovered, and a transmission counter roll-up process (a process in which the maximum value M of the transmission counter is reached and the counter value returns to 1 again) Is done. After the failure recovery, when a packet with X-α (1 ≦ α ≦ X−1) as the packet ID from the transmission source node reaches the destination node, the packet determination step receives the packet ID ( X) and packet ID (X-α) are compared, and packets assigned packet IDs from packet ID (X-α) to packet ID (X) are old packets even though they are new packets. Is erroneously determined. In order to prevent this, if no packet is received from the transmission source node within one update cycle period, the entry is deleted and the received packet ID 42 is initialized, so that the packet that has arrived after failure recovery is replaced with a new packet. To prevent a necessary packet from being discarded due to an erroneous determination. In addition, when all the routes of the communication network are blocked in this way, since synchronization by the control packet from the transmission source node cannot be performed, each communication node is provided with a means for initializing the recorded contents of the relay table. is there.

以上のように、この発明による通信ノードは動作する。   As described above, the communication node according to the present invention operates.

次に、この発明によるパケットの中継フローを図12のネットワークを例に説明する。図12において、NsからNrにパケットを送信するときのパケットの中継動作を図13に示している。図13において、Nsが起動すると、制御パケット300をN1とN2に送信する。N1は、N2,N4,Nrに中継し、N2はN1,N3に制御パケット300を中継する。このとき、N1からN2に中継されたパケットは、N2において、中継テーブル22の受信済パケットID42が既に0なので、それ以上中継されずに無視される。同様にN2からN1に中継されたパケットも同様である。更に、N3はN4に、N4はNrとN3に、NrはN1とN4にパケット中継するが、これらのパケットは全て中継先の通信ノードの受信済パケットID42が既に0なので無視される。このようにして、Nsが送信したパケットは、通信ネットワーク内の全ての通信ノードに到達し、受信済パケットID42を0に同期する。   Next, a packet relay flow according to the present invention will be described by taking the network of FIG. 12 as an example. FIG. 13 shows a packet relay operation when a packet is transmitted from Ns to Nr in FIG. In FIG. 13, when Ns is activated, a control packet 300 is transmitted to N1 and N2. N1 relays to N2, N4, Nr, and N2 relays the control packet 300 to N1, N3. At this time, the packet relayed from N1 to N2 is ignored without being relayed any more since the received packet ID 42 in the relay table 22 is already 0 in N2. The same applies to packets relayed from N2 to N1. Further, N3 is relayed to N4, N4 is relayed to Nr and N3, and Nr is relayed to N1 and N4. All of these packets are ignored because the received packet ID 42 of the relay destination communication node is already 0. In this way, the packet transmitted by Ns reaches all the communication nodes in the communication network and synchronizes the received packet ID 42 to 0.

次に、Nsがアプリケーション1の通信データをパケットID203=1の通信パケット200として送信すると、先の制御パケットと同様の中継と無視が各通信ノードで行われる。またNrは最初にパケットID203=1の通信パケット200を受信したとき、つまり、{Ns→N1→Nr}の経路で中継された通信パケット200のアプリケーション通信データ204をアプリケーション1に渡す。   Next, when Ns transmits the communication data of the application 1 as the communication packet 200 with the packet ID 203 = 1, relaying and ignoring similar to the previous control packet are performed at each communication node. When Nr first receives the communication packet 200 with the packet ID 203 = 1, that is, the application communication data 204 of the communication packet 200 relayed through the route {Ns → N1 → Nr} is passed to the application 1.

次に、図14にてネットワークに障害が発生したときのパケットの中継動作を説明する。図12のN1に障害が発生した場合、それまでの{Ns→N1→Nr}の経路ではパケットはNrに到達できなくなる。しかし、図12に示すように、パケットは{Ns→N2→N3→N4→Nr}の経由でNrに到達し、アプリケーション1ではアプリケーション通信データ204が受信できる。   Next, a packet relay operation when a failure occurs in the network will be described with reference to FIG. When a failure occurs in N1 in FIG. 12, the packet cannot reach Nr on the route of {Ns → N1 → Nr} up to that point. However, as shown in FIG. 12, the packet reaches Nr via {Ns → N 2 → N 3 → N 4 → Nr}, and application 1 can receive application communication data 204.

次に、図15にて障害が回復したときのパケットの中継動作を説明する。N1の障害が回復後にNsが最初にパケットを送信したとき、N1の中継テーブル22のエントリは、障害時間が中継管理周期タイマ23の周期より長い場合もしくはN1が再起動した場合は削除されており、障害時間が中継管理周期タイマ23の周期以下の場合はパケットID203より古い値が設定されている。そのため、障害回復後のN1はどちらの場合も、Nsが送信したパケットを新しいパケットと判断して中継を再開する。従って、NsからNrへの通信は、障害発生以前の{Ns→N1→Nr}の経路で再び行われるようになる。   Next, the packet relay operation when the failure is recovered will be described with reference to FIG. When Ns first transmits a packet after the failure of N1 is recovered, the entry in the relay table 22 of N1 is deleted if the failure time is longer than the cycle of the relay management cycle timer 23 or if N1 is restarted When the failure time is less than or equal to the period of the relay management cycle timer 23, a value older than the packet ID 203 is set. Therefore, in both cases, N1 after failure recovery determines that the packet transmitted by Ns is a new packet and restarts relaying. Therefore, the communication from Ns to Nr is performed again through the path {Ns → N1 → Nr} before the failure occurs.

次に、図16で通信ネットワークに複数の障害が発生したときのパケットの中継動作を説明する。Ns−N1間で障害が発生した場合、パケットは{Ns→N1→Nr}の経路ではNrに到達できなくなり、{Ns→N2→N1→Nr}の経路で中継される。この状態で更にN1−Nrで障害が発生すると、パケットは{Ns→N2→N3→Nr}の経路で中継される。   Next, a packet relay operation when a plurality of failures occur in the communication network will be described with reference to FIG. When a failure occurs between Ns and N1, the packet cannot reach Nr on the route {Ns → N1 → Nr} and is relayed on the route {Ns → N2 → N1 → Nr}. In this state, when a failure further occurs in N1-Nr, the packet is relayed along a route of {Ns → N2 → N3 → Nr}.

以上のように、パケットは送信側の通信ノードで1乃至複数の通信ポートから送信され、また、通信ネットワーク内の他の通信ノードは、パケットを受信した通信ポートを除く1乃至複数の通信ポートに中継するようにしているので、通信ノードが通信ネットワーク内の障害発生や構成変更を通信ノードが検出して中継経路を変更するなど、中継経路に複雑な設定をする必要がなく、常にその時点での中継可能な経路でパケットは送信側の通信ノードから受信側の通信ノードに中継される。これにより通信ネットワークを構成する任意の経路で1乃至複数の障害が発生したとしても、任意の2つの通信ノード間に通信可能な通信経路が1つでも存在すれば通信継続可能となる冗長通信方式を実現することができる。   As described above, a packet is transmitted from one or more communication ports at a communication node on the transmission side, and other communication nodes in the communication network are connected to one or more communication ports excluding the communication port that received the packet. Since relaying is performed, there is no need to make complicated settings in the relay path, such as when the communication node detects a failure or configuration change in the communication network and the relay node is changed. The packet is relayed from the communication node on the transmission side to the communication node on the reception side through the relayable route. As a result, even if one or more failures occur in an arbitrary route that constitutes a communication network, a redundant communication method that enables communication to continue if there is at least one communication path that can communicate between any two communication nodes. Can be realized.

また、アプリケーション1の通信データ204に送信側の通信ノードが1乃至複数の通信ポートから送信し、受信側の通信ノードは、複数回受信されるパケットのうち、最初に受信したときにのみ中継およびアプリケーション1への受信処理を行うようにしているので、既に中継済みの旧パケットを再度中継することや、重複したアプリケーション通信データ204をアプリケーション1に渡すことを確実に防止し、通信ネットワークの負荷を低減した運用を可能とする。   Further, the communication node 204 of the transmission side transmits the communication data 204 of the application 1 from one or more communication ports, and the communication node of the reception side relays and transmits only when it is received first among the packets received a plurality of times. Since the reception process to the application 1 is performed, it is reliably prevented that the old packet that has already been relayed is relayed again or the duplicate application communication data 204 is passed to the application 1, thereby reducing the load on the communication network. Enables reduced operation.

また、通信ノードの送信カウンタ21が再起動等でリセットされた場合は制御パケット300を送信して他の通信ノードの中継テーブル22に格納された受信済パケットID42を同期すること、および、通信ネットワーク上の障害等でパケットの中継を行うべき通信ノードが更新周期時間内にパケットを受信できなかった場合は中継管理周期タイマ23で中継テーブル22のエントリを削除していることによって、障害復旧後に必要なパケットが誤って旧パケットと判定されて廃棄されることを回避できる。   In addition, when the transmission counter 21 of the communication node is reset by restart or the like, the control packet 300 is transmitted to synchronize the received packet ID 42 stored in the relay table 22 of the other communication node, and the communication network Necessary after recovery from failure by deleting the entry in the relay table 22 by the relay management cycle timer 23 when the communication node that should relay the packet due to the above failure or the like cannot receive the packet within the update cycle time It can be avoided that a wrong packet is erroneously determined as an old packet and discarded.

中継管理周期タイマの更新周期時間は通信ネットワーク内の任意の2つの通信ノード間でパケットが中継されるために要する時間より長く、通信ノードが更新周期時間内に送信可能なパケット数がパケットID値の最大値の1/2を超える時間より短く設定されている。そのため、受信したパケットのパケットIDの値と受信済パケットID42の値は送信カウンタ21の値で1サイクル以上のずれが生じることがない。前述の制御パケット300による中継テーブル22の同期手段と、更新周期経過後の中継テーブル22の未更新のエントリの削除手段と、更新周期時間の設定とによって、パケットID値を順番にサイクリックに付与したとしても、受信済パケットID42の値とパケットID203のパケットIDのみの比較から、送信側の通信ノードによる送信順序を確定することができる。これによって、パケットID以外の情報を含めて送信順序を判定している場合と比べて、例えば、パケットの受信時刻や受信間隔などを記録する手段が必要無くなり、送信順序の判別手段が簡易になる。また、例えば、パケットを中継する伝送速度が速い経路と遅い経路が通信経路上にある場合であっても、伝送速度および伝送経路に依存することなく各通信ノードで送信元ノードでのパケット送信順序を判定することができる。   The update cycle time of the relay management cycle timer is longer than the time required for the packet to be relayed between any two communication nodes in the communication network, and the number of packets that the communication node can transmit within the update cycle time is the packet ID value. It is set shorter than the time exceeding 1/2 of the maximum value. For this reason, the value of the packet ID of the received packet and the value of the received packet ID 42 do not deviate by more than one cycle between the values of the transmission counter 21. The packet ID value is cyclically assigned in order by the above-described synchronization means of the relay table 22 by the control packet 300, the deletion means of the unupdated entry of the relay table 22 after the update period has elapsed, and the setting of the update period time. Even so, the transmission order by the communication node on the transmission side can be determined from the comparison of only the value of the received packet ID 42 and the packet ID of the packet ID 203. This eliminates the need for means for recording packet reception times, reception intervals, and the like, for example, compared to the case where the transmission order is determined including information other than the packet ID, thereby simplifying the transmission order determination means. . In addition, for example, even when there are a high-speed path and a low-speed path for relaying packets on the communication path, the packet transmission order at the transmission source node at each communication node without depending on the transmission speed and the transmission path Can be determined.

実施の形態2.
以上の実施の形態1では、中継テーブル22には受信したパケットのうち、最新のパケットIDを記録するようにしたものであるが、次に、通信ネットワーク内でパケットの追い越しが発生した場合に、追い越されたパケットも中継テーブル22に記録して中継を行えるようにする実施形態を示す。
Embodiment 2. FIG.
In the first embodiment described above, the latest packet ID among the received packets is recorded in the relay table 22. Next, when a packet overtaking occurs in the communication network, An embodiment is shown in which overtaken packets are also recorded in the relay table 22 so that relaying can be performed.

図17はこのような場合の、中継テーブル22の構成図である。図17において、送信元ノードID41は受信したパケットの送信元ノードID202が格納される。受信済パケットID42は通信ポート31〜3nから受信したパケットのうち、送信元ノードID41毎に最も新しく送信元ノードが送信したパケットのパケットID203が格納される。前回受信済パケットID43は、中継管理周期タイマ23が前回タイムアウトしたときの受信済パケットID42の値が格納される。追越フラグ44は、受信したパケットが順序正しく受信されず、途中のパケットが抜けて新しいパケットが受信されたこと、すなわち追い越しが発生したことを検出して中継テーブル中に示すフラグである。追越先頭パケットID45は、連続して受信が完了したパケットの最後のパケットIDで、受信されていないパケットのパケットIDの1つ前のパケットIDである。追越末尾パケットID46は、追い越しにより受信されていない最後のパケットのパケットIDを記録する。前回追越パケットID47は、中継管理周期タイマ23が前回タイムアウトしたときの追越先頭パケットID45の値が記録される。   FIG. 17 is a configuration diagram of the relay table 22 in such a case. In FIG. 17, the transmission source node ID 41 stores the transmission source node ID 202 of the received packet. The received packet ID 42 stores the packet ID 203 of the packet transmitted from the latest transmission source node for each transmission source node ID 41 among the packets received from the communication ports 31 to 3n. The previously received packet ID 43 stores the value of the received packet ID 42 when the relay management cycle timer 23 timed out last time. The overtaking flag 44 is a flag that is shown in the relay table when it is detected that a received packet is not received in order, a midway packet is dropped and a new packet is received, that is, overtaking has occurred. The overtaking head packet ID 45 is the last packet ID of the packets that have been continuously received, and is the packet ID immediately before the packet ID of the packet that has not been received. The overtaking end packet ID 46 records the packet ID of the last packet not received due to overtaking. The previous overtaking packet ID 47 records the value of the overtaking leading packet ID 45 when the relay management cycle timer 23 timed out last time.

図18はこのような場合の、図6のパケット判定ステップ(ステップ65)の詳細を示すフローチャートである。図18において、ステップ151はパケットが通信パケット200か制御パケット300かを判定する制御パケット判定ステップ、ステップ152は受信パケットがその送信元の通信ノードから受信した最初のパケットかを判定する先頭パケット判定ステップ、ステップ153は通信パケット200のパケットID203と中継テーブル22のエントリの受信済パケットID42の値を比較することで前回受信したパケットと今回受信したパケットが送信元の通信ノードにおいてどちらが先に送信されたのかを判断する送信順序判定ステップ、ステップ154は追越検出時に追越情報を中継テーブル22に記録する、追越情報記録ステップ、ステップ155は中継テーブル22のデータを受信パケットのパケットID203で更新する中継テーブル更新ステップ、ステップ156は旧パケットが受信された場合に追い越し後に初めて受信されたパケットであるかを判断する追越パケット判定ステップ、ステップ157はパケットが追越された最後のパケットであるかどうかを判定する追越末尾判定ステップ、ステップ158は追越解消時に追越情報をクリアする追越情報クリアステップ、ステップ159は追越パケット受信時に追越情報を更新する追越情報更新ステップである。ステップ160はステップ151で制御パケットと判定されたパケットについて、その送信元IDに対応する受信済パケットIDが0であるかを判断する制御パケット受信可否判定ステップである。   FIG. 18 is a flowchart showing details of the packet determination step (step 65) of FIG. 6 in such a case. In FIG. 18, step 151 is a control packet determination step for determining whether a packet is a communication packet 200 or a control packet 300, and step 152 is a leading packet determination for determining whether a received packet is the first packet received from the transmission source communication node. In step 153, the packet ID 203 of the communication packet 200 and the value of the received packet ID 42 in the entry of the relay table 22 are compared, and the packet received last time and the packet received this time are transmitted first in the communication node. Step 154 records the overtaking information in the relay table 22 when detecting overtaking, and the overtaking information recording step, step 155 updates the data in the relay table 22 with the packet ID 203 of the received packet. Relay Step 156 is a packet update step, step 156 is an overtaking packet determination step for determining whether a packet is received for the first time after overtaking when an old packet is received, and step 157 is whether the packet is the last packet overtaken Step 158 is an overtaking information clear step for clearing overtaking information when overtaking is canceled, and step 159 is an overtaking information update step for updating overtaking information when overtaking packets are received. Step 160 is a control packet reception determination step for determining whether or not the received packet ID corresponding to the transmission source ID of the packet determined as the control packet in step 151 is 0.

図19はこのような場合の、中継管理周期タイマ23のタイムアウト時の処理を示すフローチャートである。図19において、ステップ161はその通信ノードからのパケットが一定期間受信されていないエントリを削除するエージングステップ、ステップ162は中継テーブル22の前回受信済パケットID43を更新する定期更新ステップ、ステップ163はその通信ノードからの追越パケットが一定期間受信されていない追越情報をクリアする追越情報エージングステップ、ステップ164は前回追越パケットID47を更新する前回追越情報更新ステップである。   FIG. 19 is a flowchart showing the processing when the relay management cycle timer 23 times out in such a case. In FIG. 19, step 161 is an aging step for deleting an entry in which a packet from the communication node has not been received for a certain period of time, step 162 is a periodic update step for updating the previously received packet ID 43 in the relay table 22, and step 163 is that step An overtaking information aging step for clearing overtaking information in which an overtaking packet from a communication node has not been received for a certain period of time, step 164 is a previous overtaking information update step for updating the previous overtaking packet ID 47.

図20はこのような場合の、図12の通信ネットワークにおける追越パケットの中継を示すパケットの中継を示すフロー図である。図中の各記号は図12と同等である。   FIG. 20 is a flowchart showing packet relaying in this case, which indicates relaying of overtaking packets in the communication network of FIG. Each symbol in the figure is equivalent to FIG.

次に動作について説明する。
実施例2の通信ノードは、実施例1の通信ノードと同様に、図5のフローチャートに従い、図2および図3のフォーマットの通信パケット200と制御パケット300を送信する。また、実施例2の通信ノードは、実施例1の通信ノードと同様に、図6のフローチャートに従って受信したパケットの処理を行うが、ステップ65により行われる、受信済パケットの新旧の判断とそれに伴う中継テーブル22の処理が異なる。
ステップ65で、受信パケットが、中継テーブル22に記録されている既に受信済のパケットより送信側の通信ノードで後から送信されたかどうかを判定するとき、まず、ステップ151で受信パケットが制御パケット300かどうかを確認する。受信パケットのパケットID203が0の場合、パケットは制御パケット300であるので、ステップ160に進む。ここで、制御パケット300の送信元ID302に対応する受信済パケットIDが0の場合は、旧パケットと判定し、無視する。一方受信済パケットIDが0でない場合には送信側の通信ノードの送信カウンタ21と中継テーブル22を同期するため、エントリの受信済パケットID42にパケットID203、すなわち0を設定し(ステップ155)、新しいパケットと判定する。
Next, the operation will be described.
Similar to the communication node of the first embodiment, the communication node of the second embodiment transmits the communication packet 200 and the control packet 300 in the format of FIGS. 2 and 3 according to the flowchart of FIG. The communication node according to the second embodiment processes the received packet in accordance with the flowchart of FIG. 6 in the same manner as the communication node according to the first embodiment. The processing of the relay table 22 is different.
When it is determined in step 65 whether or not the received packet has been transmitted later in the communication node on the transmission side from the already received packet recorded in the relay table 22, first, in step 151, the received packet is the control packet 300. Check whether or not. If the packet ID 203 of the received packet is 0, since the packet is the control packet 300, the process proceeds to step 160. If the received packet ID corresponding to the transmission source ID 302 of the control packet 300 is 0, it is determined as an old packet and ignored. On the other hand, when the received packet ID is not 0, in order to synchronize the transmission counter 21 and the relay table 22 of the transmission side communication node, the packet ID 203, that is, 0 is set in the received packet ID 42 of the entry (step 155). Judged as a packet.

受信パケットが通信パケット200であった場合、ステップ152においてエントリの受信済パケットID42が0かどうかを確認する。受信済パケットID42が0であった場合、受信パケットより以前に、該当通信ノードからのパケットは受信していないので、この場合も新しいパケットと判定し、ステップ155で受信パケットのパケットID203を受信済パケットID42に設定する。   If the received packet is the communication packet 200, it is checked in step 152 whether the received packet ID 42 of the entry is 0. If the received packet ID 42 is 0, the packet from the corresponding communication node has not been received before the received packet. Therefore, in this case, the packet is determined to be a new packet, and the packet ID 203 of the received packet has been received in step 155. Set to packet ID 42.

パケットID203と受信済パケットID42のどちらも0でない場合は、ステップ153において、パケットID203が受信済パケットID42の次のパケットIDと等しい、つまり、順序正しく受信されたパケットか、または新しい、つまり、受信パケットは1乃至それ以上のパケットを追い越して受信されたパケットか、または旧パケットであるかを判定する。尚、パケットID203と受信済パケットID42の値が異なる場合、そのパケットが新しいパケットは、実施例1と同様に、以下の条件式を満たす場合にパケット判定ステップ65にて新しいパケットと判定される。
受信済パケットID42<受信パケットID203の場合、
受信パケットID203−受信済パケットID42≦送信可能パケット数
受信済パケットID42>受信パケットID203の場合、
受信パケットID203≦送信可能パケット数−(送信カウンタ最大値−受信済パケットID42)
If neither the packet ID 203 nor the received packet ID 42 is 0, in step 153, the packet ID 203 is equal to the next packet ID of the received packet ID 42, that is, an orderly received packet, or a new, that is, received packet. It is determined whether the packet is a packet received overtaking one or more packets or an old packet. If the values of the packet ID 203 and the received packet ID 42 are different, a packet that is a new packet is determined as a new packet in the packet determination step 65 when the following conditional expression is satisfied, as in the first embodiment.
When the received packet ID 42 <the received packet ID 203,
When received packet ID 203−received packet ID 42 ≦ number of transmittable packets received packet ID 42> received packet ID 203,
Received packet ID 203 ≦ number of transmittable packets− (maximum value of transmission counter−received packet ID 42)

等しいパケットの場合、追い越しにより受信が抜け落ちているパケットは存在しないので、実施例1と同様にステップ155で受信済パケットID42にパケットID203を設定し、新しいパケットとする。   In the case of equal packets, there is no packet that has been missed due to overtaking. Therefore, in the same manner as in the first embodiment, the packet ID 203 is set in the received packet ID 42 in step 155 to obtain a new packet.

ステップ153にて新しいパケットと判定された場合、つまり、1乃至複数のパケットを追い越して受信されたパケットの場合、追越が発生したことを示す追越フラグに1が設定される。また、追越先頭パケットID45に受信済パケットID42の1つ次の値(受信済パケットID42<送信カウンタ21の最大値のときは受信済パケットID42+1、受信済パケットID42=送信カウンタ21の最大値のときは1)を設定し、追越末尾パケットID46にパケットID203の1つ前の値(パケットID203=1のときは送信カウンタ21の最大値、それ以外のときはパケットID203−1)を設定し、前回追越パケットID47には0を設定する。このように、パケットの追い越しによりまだ受信されていないパケットのパケットIDの情報を追越情報として中継テーブル22に記録した後、実施例1と同様にステップ155で受信済パケットID42にパケットID203を設定し、新しいパケットとする。   If it is determined in step 153 that the packet is a new packet, that is, a packet received by overtaking one or more packets, 1 is set in the overtaking flag indicating that overtaking has occurred. Further, in the overtaking head packet ID 45, the next value of the received packet ID 42 (if the received packet ID 42 <the maximum value of the transmission counter 21, the received packet ID 42 + 1, the received packet ID 42 = the maximum value of the transmission counter 21). 1) is set, and the value immediately before the packet ID 203 is set in the overtaking end packet ID 46 (the maximum value of the transmission counter 21 when the packet ID 203 = 1, and the packet ID 203-1 otherwise). The previous overtaking packet ID 47 is set to 0. As described above, after the packet ID information of the packet that has not been received due to the overtaking of the packet is recorded in the relay table 22 as the overtaking information, the packet ID 203 is set in the received packet ID 42 in step 155 as in the first embodiment. And a new packet.

旧パケットの場合、ステップ156でパケットID203と追越先頭パケットID45を比較し、既に受信済の旧パケットか、追い越しによりまだ受信されていないパケットかを判断する。パケットID203と追越先頭パケットID45が一致しない場合、受信パケットは受信済の旧パケットと判断する。このとき、中継テーブル22は実施例1と同様に更新されない。   In the case of an old packet, in step 156, the packet ID 203 and the overtaking head packet ID 45 are compared to determine whether the packet has already been received or has not yet been received due to overtaking. If the packet ID 203 and the overtaking head packet ID 45 do not match, it is determined that the received packet is a received old packet. At this time, the relay table 22 is not updated as in the first embodiment.

一方、パケットID203と追越先頭パケットID45が一致する場合、受信パケットはこれまでに受信されていない新しいパケットと判断する。このとき、ステップ157でパケットID203と追越末尾パケットID46を比較し、追越により受信が漏れていた最後のパケットかどうかを判断する。パケットID203と追越末尾パケットID46が一致する場合、追越によるパケットの受信漏れは解消されたため、ステップ158で追越フラグ44と追越先頭パケットID45に0を設定することで追越情報をクリアし、新しいパケットと判断する。パケットID203と追越末尾パケットID46が一致しない場合、追い越しによりパケットの受信漏れは解消されていないため、ステップ159で追越先頭パケットID45にパケットID203の次の値(パケットID203=送信カウンタ21の最大値のときは1、それ以外のときはパケットID203+1)を設定し、新しいパケットと判断する。尚、本実施の形態では追い越しが発生したパケットIDの範囲の内、その範囲の先頭と末尾のパケットIDを記録しているが、追い越されたパケットIDの範囲の全パケットIDを個別にそれぞれ記録することも可能である。その場合は、旧パケットと判定されたパケットのパケットIDと追越情報に記録された全パケットIDとを逐次照合し、一致するパケットIDが記録されていた場合は追い越されたパケットであると判断する。そして、そのパケットIDを追越情報の記録から削除し、新パケットと判定する。追い越されたパケットIDの全範囲のパケットを受信した場合には追い越しが解消したものと判断する。例えば、追い越されたパケットの範囲の数を中継テーブル22に記載し、追い越されたパケットの受信数に応じて、その数を減らして、それが0になれば追い越しが解消すると判断する。   On the other hand, when the packet ID 203 matches the overtaking head packet ID 45, the received packet is determined to be a new packet that has not been received so far. At this time, in step 157, the packet ID 203 is compared with the overtaking end packet ID 46, and it is determined whether or not it is the last packet whose reception has been leaked due to overtaking. If the packet ID 203 and the overtaking end packet ID 46 match, the packet omission due to overtaking has been eliminated, and in step 158, the overtaking information is cleared by setting the overtaking flag 44 and the overtaking head packet ID 45 to 0. And a new packet is determined. If the packet ID 203 and the overtaking end packet ID 46 do not match, the packet reception omission has not been eliminated by overtaking, so in step 159 the next value of the packet ID 203 (packet ID 203 = maximum of the transmission counter 21) If the value is 1, 1 is set, otherwise packet ID 203 + 1) is set, and the packet is determined to be a new packet. In the present embodiment, the packet IDs at the beginning and end of the range of packet IDs where overtaking occurred are recorded, but all packet IDs within the range of overtaken packet IDs are recorded individually. It is also possible to do. In that case, the packet ID of the packet determined to be an old packet is sequentially compared with all packet IDs recorded in the overtaking information, and if a matching packet ID is recorded, it is determined that the packet has been overtaken. To do. Then, the packet ID is deleted from the record of the overtaking information and determined as a new packet. When a packet in the entire range of the overtaken packet ID is received, it is determined that the overtaking has been resolved. For example, the number of overtaken packet ranges is entered in the relay table 22, and the number is reduced according to the number of overtaken packets received.

以上のようにステップ151からステップ160でパケットの新旧の判定が完了後は、実施例1と同様にステップ66からステップ68でアプリケーション1への受信処理と通信ネットワークへの中継処理が行われる。   As described above, after the determination of whether the packet is new or old is completed in steps 151 to 160, the reception processing to the application 1 and the relay processing to the communication network are performed in steps 66 to 68, as in the first embodiment.

また、中継管理周期タイマ23のタイムアウト時の処理を図19で説明する。中継管理周期タイマ23がタイムアウトすると、ステップ161で中継テーブルのうち、受信済パケットID42と前回受信済パケットID43が等しいエントリを検索して全て削除する。次に、ステップ162で、残ったエントリ全てについて、受信済パケットID42を前回受信済パケットID43にコピーする。更に、ステップ163で残りのエントリのうち、追越先頭パケットID45と前回追越パケットID47が等しいエントリは、中継管理周期タイマ23の周期内に追い越されたパケットが受信されなかった、つまり、今後も追い越されたパケットが受信されないと判断できるので、追越フラグ44、追越先頭パケットID45に0を設定することで、追越情報をクリアする。最後に、ステップ164で追越先頭パケットID45を前回追越パケットID47にコピーして、次の中継管理周期タイマ23のタイムアウトに備える。   Further, the processing when the relay management cycle timer 23 times out will be described with reference to FIG. When the relay management cycle timer 23 times out, in step 161, an entry having the same received packet ID 42 and the previous received packet ID 43 in the relay table is searched and deleted. Next, in step 162, the received packet ID 42 is copied to the previously received packet ID 43 for all remaining entries. Further, among the remaining entries in step 163, an entry in which the overtaking head packet ID 45 and the previous overtaking packet ID 47 are equal does not receive a packet overtaken within the period of the relay management period timer 23. Since it can be determined that the overtaken packet is not received, the overtaking information is cleared by setting the overtaking flag 44 and the overtaking head packet ID 45 to 0. Finally, in step 164, the overtaking head packet ID 45 is copied to the previous overtaking packet ID 47 to prepare for the next relay management period timer 23 to time out.

次に、このような場合のパケットの中継動作を図20で説明する。NsがパケットA〜Cを送信するとき、N1の障害が回復すると、送信と障害回復のタイミングにより、障害により迂回経路で中継されているパケットAより、障害回復により最短経路で中継されるパケットBのほうが先に通信ノードに到着する、パケットの追い越しが発生する。この図20の場合、N4においてパケットAが受信されたとき、先にパケットBが受信されているため、受信済パケットID42はパケットBを示す3となっているが、図18のフローチャートに示す処理により、無視されずに中継され、また、Nrでも同様に新しいパケットと判断されてアプリケーション1にアプリケーション通信データ204を送信する。   Next, the packet relay operation in such a case will be described with reference to FIG. When Ns transmits packets A to C, when the failure of N1 recovers, packet B relayed on the shortest path by failure recovery from packet A relayed on the detour path due to the failure by the timing of transmission and failure recovery The packet overtakes that arrives at the communication node first. In the case of FIG. 20, when the packet A is received at N4, since the packet B is received first, the received packet ID 42 is 3 indicating the packet B, but the processing shown in the flowchart of FIG. Thus, the packet is relayed without being ignored, and Nr is similarly determined as a new packet, and the application communication data 204 is transmitted to the application 1.

以上のように、通信ネットワークの状態により、中継されるパケットに追い越しが発生した場合、受信した通信ノードでパケットの追い越しを検出し、まだ受信されていないパケットのパケットID203の情報を中継テーブル22に記録しておき、該当するパケットID203の通信パケット200が受信された場合は、受信済パケットID42より古い場合でも中継処理とアプリケーション1へのアプリケーション通信データ204の送信処理を行うので、障害発生時のパケット落ちを回避できる。   As described above, when overtaking occurs in a packet to be relayed depending on the state of the communication network, the received communication node detects overtaking of the packet, and information on the packet ID 203 of the packet that has not yet been received is stored in the relay table 22. If the communication packet 200 with the corresponding packet ID 203 is received, the relay process and the transmission process of the application communication data 204 to the application 1 are performed even when the packet is older than the received packet ID 42. Packet dropping can be avoided.

なお、本発明は光ファイバにて相互に接続された通信ノードからなる光通信ネットワークに限定されて適用されるものではなく、無線通信などの他の伝送技術による通信ネットワークにも適用可能である。   The present invention is not limited to an optical communication network composed of communication nodes connected to each other via optical fibers, and can also be applied to communication networks using other transmission technologies such as wireless communication.

1 アプリケーション
2 冗長通信部
21 送信カウンタ
22 中継テーブル
23 中継管理周期タイマ
31〜3n 通信ポート
41 送信元ノードID
42 受信済パケットID
43 前回受信済パケットID
44 追越フラグ
45 追越先頭パケットID
46 追越末尾パケットID
47 前回追越パケットID
200 通信パケット
201 宛先ノードID
202 送信元ノードID
203 パケットID
204 アプリケーション通信データ
300 制御パケット
301 宛先ノードID
302 送信元ノードID
303 パケットID
DESCRIPTION OF SYMBOLS 1 Application 2 Redundant communication part 21 Transmission counter 22 Relay table 23 Relay management period timer 31-3n Communication port 41 Source node ID
42 Received packet ID
43 Last received packet ID
44 overtaking flag 45 overtaking first packet ID
46 Overtaking end packet ID
47 Last overtake packet ID
200 Communication packet 201 Destination node ID
202 Source node ID
203 Packet ID
204 Application communication data 300 Control packet 301 Destination node ID
302 Source node ID
303 Packet ID

Claims (9)

通信ネットワーク上の他の通信ノードと相互に接続された通信ノードであって、
送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、
送信元ノードから受信したパケットのパケットIDを記録する記録手段と、
受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、
前記パケット判別手段で新しいパケットと判定されたパケット自分宛場合は受信する受信手段と、
前記パケット判別手段で新しいパケットと判定されたパケット自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段とを備え
前記記録手段は、記録内容を更新する更新周期時間を有し、前記更新周期時間は、隣接する更新周期において受信するパケットのパケットID値が重複しないように設定されていることを特徴とする通信ノード。
A communication node interconnected with other communication nodes on a communication network,
The packet to be transmitted, and transmitting means for transmitting the possible values as a packet ID and assigned as the packet ID in order cyclically to one or a plurality of communication nodes interconnected,
Recording means for recording the packet ID of the packet received from the source node;
A packet discriminating unit that compares the packet ID of the received packet with the packet ID recorded by the recording unit and determines the transmission order at the transmission source node;
Receiving means for receiving in the case of packet determined as a new packet is addressed to by the packet determining means,
The have field if such a packet is determined and the new packets themselves addressed packet discriminating means comprises a relay means for relaying the one or a plurality of communication nodes interconnected,
The recording means has an update cycle time for updating recorded contents, and the update cycle time is set so that packet ID values of packets received in adjacent update cycles do not overlap. node.
前記記録手段は、前記更新周期時間内に、記録内容が更新されなかった前記送信元ノードの記録を削除する削除手段と、
前記受信したパケットに対応する前記送信元ノードの記録がない場合は、前記送信元ノードの記録を新たに作成し、前記受信したパケットのパケットIDを記録する作成手段と、
を備えることを特徴とする請求項1に記載の通信ノード。
It said recording means is in the update cycle time, and deleting means for deleting the record of the transmission source node which recorded content is not updated,
If there is no record of the source node that corresponds to the received packet includes creation means for the transmission creates a new record of the source node, recording the packet ID of the received packet,
The communication node according to claim 1, further comprising:
通信ネットワーク上の他の通信ノードと相互に接続された通信ノードであって、
送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、
送信元ノードから受信したパケットのパケットIDを記録する記録手段と、
受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、
前記パケット判別手段で新しいパケットと判定されたパケットが自分宛の場合は受信する受信手段と、
前記パケット判別手段で新しいパケットと判定されたパケットが自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段とを備え、
前記記録手段は、記録内容を更新する更新周期時間を有し、前記更新周期時間は通信ネットワーク内における2つの通信ノード間でパケットが中継されるために要する時間より長く、前記送信元ノードが前記更新周期時間内に送信可能な最大パケット数がパケットID値の最大値の1/2を超える時間より短く設定されていることを特徴とする通信ノード。
A communication node interconnected with other communication nodes on a communication network,
A transmission unit that cyclically assigns a packet ID to a packet to be transmitted as the packet ID, and transmits the packet ID to one or more communication nodes connected to each other;
Recording means for recording the packet ID of the packet received from the source node;
A packet discriminating unit that compares the packet ID of the received packet with the packet ID recorded by the recording unit and determines the transmission order at the transmission source node;
Receiving means for receiving if the packet determined by the packet determining means is a new packet,
A relay means for relaying to one or more communication nodes connected to each other when the packet determined by the packet determination means is not a new packet,
Said recording means includes an update cycle time for updating the recorded contents, the update cycle time is longer than the time required for the packet is relayed between two communication nodes in a communication network, the source node is the A communication node, wherein the maximum number of packets that can be transmitted within an update cycle time is set to be shorter than a time exceeding 1/2 of a maximum value of a packet ID value.
通信ネットワーク上の他の通信ノードと相互に接続された通信ノードであって、
送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、
送信元ノードから受信したパケットのパケットIDを記録する記録手段と、
受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、
前記パケット判別手段で新しいパケットと判定されたパケットが自分宛の場合は受信する受信手段と、
前記パケット判別手段で新しいパケットと判定されたパケットが自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段とを備え、
前記パケット判別手段は、前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも大きい場合には、前記受信したパケットIDの値と前記記録手段に記録されたパケットIDの値との差が、更新周期時間内に同一の前記送信元ノードが送信可能な最大パケット数以下となる条件で、前記受信したパケットを前記新しいパケットと判定し、
前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも小さい場合には、前記受信したパケットIDの値が、パケットIDとしてとり得る値の最大値と前記記録手段に記録されたパケットIDとの値の差を、更新周時間内に同一の前記送信元ノードが送信可能な最大パケット数から減算した値以下となる条件で、前記受信したパケットを前記新しいパケットと判定することを特徴とする通信ノード。
A communication node interconnected with other communication nodes on a communication network,
A transmission unit that cyclically assigns a packet ID to a packet to be transmitted as the packet ID, and transmits the packet ID to one or more communication nodes connected to each other;
Recording means for recording the packet ID of the packet received from the source node;
A packet discriminating unit that compares the packet ID of the received packet with the packet ID recorded by the recording unit and determines the transmission order at the transmission source node;
Receiving means for receiving if the packet determined by the packet determining means is a new packet,
A relay means for relaying to one or more communication nodes connected to each other when the packet determined by the packet determination means is not a new packet,
Said packet determining means, the value of the received packet ID is wherein when recording is larger than the value of the recorded packet ID by means of the recorded packet ID to the value and the recording unit of the received packet ID the difference between the value under the conditions update cycle time same the source node in is equal to or less than the maximum number of packets that can be transmitted, the received packet is determined that the new packet,
If the value of the received packet ID is less than the value of the recorded packet ID by said recording means, the value of the received packet ID is recorded in the recording means and the maximum value of the possible values as the packet ID the difference between the value of the packet ID, update at periodic same said source node during the time condition to be less than the value obtained by subtracting from the maximum number of packets that can be transmitted, the received packet and the new packet A communication node characterized by determining.
前記送信手段は通信ノードが起動したとき、各通信ノードの前記記録手段における記録内容を同期する制御パケットを送信することを特徴とする請求項1に記載の通信ノード。 2. The communication node according to claim 1, wherein when the communication node is activated , the transmission unit transmits a control packet that synchronizes the recording contents in the recording unit of each communication node. 通信ネットワーク上の他の通信ノードと相互に接続された通信ノードであって、
送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に該パケットIDとして付与して、相互に接続された1乃至複数の通信ノードに送信する送信手段と、
送信元ノードから受信したパケットのパケットIDを記録する記録手段と、
受信したパケットのパケットIDと、前記記録手段によって記録されたパケットIDとを比較し、前記送信元ノードでの送信順序を判定するパケット判別手段と、
前記パケット判別手段で新しいパケットと判定されたパケットが自分宛の場合は受信する受信手段と、
前記パケット判別手段で新しいパケットと判定されたパケットが自分宛ではない場合は相互に接続された1乃至複数の通信ノードに中継する中継手段と、
前記記録手段に記録されたパケットIDと前記受信したパケットのパケットIDが連続していない場合にはパケットの追い越しが発生したと判断する追越検出手段と、
追い越しが発生したパケットIDの範囲のパケットIDを記録する追越記録手段と、
前記受信したパケットのパケットIDと前記追越記録手段によって記録されたパケットIDとを比較し、追い越されたパケットであるかを判定する追越パケット判別手段とを備え
前記受信手段は、前記追越パケット判別手段にて追い越されたパケットと判定されたパケット自分宛場合は受信
前記中継手段は、前記追越パケット判別手段にて追い越されたパケットと判定されたパケット自分宛ではない場合は1乃至複数の相互に接続された通信ノードに中継することを特徴とする通信ノード。
A communication node interconnected with other communication nodes on a communication network,
A transmission unit that cyclically assigns a packet ID to a packet to be transmitted as the packet ID, and transmits the packet ID to one or more communication nodes connected to each other;
Recording means for recording the packet ID of the packet received from the source node;
A packet discriminating unit that compares the packet ID of the received packet with the packet ID recorded by the recording unit and determines the transmission order at the transmission source node;
Receiving means for receiving if the packet determined by the packet determining means is a new packet,
When the packet determined by the packet determination unit is not addressed to itself, the relay unit relays to one or more communication nodes connected to each other;
And overtaking detecting means for determining the overtaking of packet occurs when the packet ID of the received packet with the recorded packet ID in the recording means are not continuous,
An overtaking recording means for recording a packet ID in a range of packet IDs in which overtaking has occurred;
Comparing the packet ID recorded by the overtaking recording means and packet ID of the received packet, and a passing-packet determining means for determining whether the packet overtaken,
Said receiving means, said packet determined as additionally have scooped packets similar overtaking packet determining means receives when addressed to,
Said relay means, characterized in that the overtaking packet discrimination means Similar packet determined as additionally have scooped packet is to be relayed to the communication node have field if such a self-addressed connected one to a plurality of mutually A communication node.
前記記録手段は追い越しが発生したパケットIDの範囲について、その範囲の先頭と末尾のパケットIDを記録し、
前記追越パケット判定手段は、前記受信したパケットのパケットIDと前記先頭と末尾のパケットIDとを比較して、前記受信したパケットのパケットIDが前記先頭のパケットIDと一致すれば追い越されたパケットであると判定する手段と、
前記受信したパケットのパケットIDが前記末尾のパケットIDと一致すればパケットの追い越しが解消されたことを判定する手段を備えることを特徴とする請求項6に記載の通信ノード
The recording means records the packet ID at the beginning and end of the range of packet IDs where overtaking occurred,
Wherein the passing packet determining means compares the packet ID of the start and end with the packet ID of the received packet, the packet which the packet ID of the received packet is overtaken if consistent with the packet ID of the head Means for determining that
Communication node according to claim 6, characterized in that it comprises means for determining that the packet ID of the received packet overtaking packet is resolved if they match the packet ID of the last.
請求項1乃至7に記載の通信ノードが通信ネットワーク上で相互に複数接続されたことを特徴とする通信システム。 A communication system, wherein a plurality of communication nodes according to claim 1 are connected to each other on a communication network. 通信ネットワーク上の相互に接続された通信ノード間のパケット通信方法であって、
送信するパケットに、パケットIDとしてとり得る値をサイクリックに順番に付与して送信する送信ステップと、
送信元ノードから受信したパケットのパケットIDを記録する記録ステップと、
受信したパケットのパケットIDと、前記記録ステップおいて記録されたパケットIDとを比較し、前記送信元ノードでのパケット送信順序を判定するパケット判別ステップとを有し、
前記パケット判別ステップは、前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも大きい場合には、前記記録されたパケットIDの値と前記パケットIDの値の差が、更新周期時間内に同一の前記送信元ノードが送信可能なパケット数以下となる条件で、前記受信したパケットを新しいパケットと判定し、
前記受信したパケットIDの値が前記記録手段によって記録されたパケットIDの値よりも小さい場合には、前記受信したパケットIDの値が、パケットIDの最大値と前記記録されたパケットIDとの値の差を、更新周期時間内に同一の前記送信元ノードが送信可能なパケット数から減算した値以下となる条件で、前記受信したパケットを新しいパケットとして判定を行うことを特徴とするパケット通信方法。
A packet communication method between mutually connected communication nodes on a communication network,
A transmission step of cyclically assigning a value that can be taken as a packet ID to a packet to be transmitted in order;
A recording step of recording the packet ID of the packet received from the transmission source node ;
The packet ID of the received packet, the comparison between Oite recorded packet ID in the recording step, and a determining packet determination step the packet transmission order in the source node,
In the packet determination step, when the value of the received packet ID is larger than the value of the packet ID recorded by the recording unit, a difference between the value of the recorded packet ID and the value of the packet ID is: The received packet is determined as a new packet under the condition that the same source node within the update cycle time is less than or equal to the number of packets that can be transmitted,
When the value of the received packet ID is smaller than the value of the packet ID recorded by the recording means, the value of the received packet ID is a value between the maximum value of the packet ID and the recorded packet ID. The packet communication method is characterized in that the received packet is determined as a new packet under the condition that the difference is equal to or less than a value obtained by subtracting the difference between the number of packets that can be transmitted by the same transmission source node within the update cycle time. .
JP2009259853A 2009-11-13 2009-11-13 Communication node, communication system, and packet communication method Active JP5375539B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009259853A JP5375539B2 (en) 2009-11-13 2009-11-13 Communication node, communication system, and packet communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009259853A JP5375539B2 (en) 2009-11-13 2009-11-13 Communication node, communication system, and packet communication method

Publications (2)

Publication Number Publication Date
JP2011109232A JP2011109232A (en) 2011-06-02
JP5375539B2 true JP5375539B2 (en) 2013-12-25

Family

ID=44232278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009259853A Active JP5375539B2 (en) 2009-11-13 2009-11-13 Communication node, communication system, and packet communication method

Country Status (1)

Country Link
JP (1) JP5375539B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61224640A (en) * 1985-03-29 1986-10-06 Hitachi Ltd Data block transfer system
JPH09149078A (en) * 1995-11-20 1997-06-06 Sharp Corp Communication terminal equipment and communication method
JP3449541B2 (en) * 1999-12-22 2003-09-22 日本電気株式会社 Data packet transfer network and data packet transfer method
US20090010248A1 (en) * 2005-02-25 2009-01-08 Takeo Kanai Data Communication System and Data Communication Method
JP4748316B2 (en) * 2006-07-13 2011-08-17 日本電気株式会社 Packet transmission method and packet transmission system

Also Published As

Publication number Publication date
JP2011109232A (en) 2011-06-02

Similar Documents

Publication Publication Date Title
CN101340369B (en) Method and router for realizing virtual connection supported optimum restart
JP2008160385A (en) Network-path control system and device and method for controlling path
JP2005503055A (en) Method and system for implementing OSPF redundancy
JP5410546B2 (en) Clearing the port table in an Ethernet network
JP2006270169A (en) Packet repeating device
JP4748316B2 (en) Packet transmission method and packet transmission system
JP2006253927A (en) Data relaying apparatus and data relaying method
EP2103048A2 (en) Method and apparatus for network tree management
CN102325080B (en) Open shortest path first (OSPF) protocol graceful restarting method and device
KR20120062825A (en) Method and network node for message transfer
US20120140679A1 (en) Path setting method and transmission device
CN104639434B (en) A kind of OSPF smooth restarting method and device
US9553800B2 (en) Reducing flooding of link state information
EP2122925A1 (en) Method, bridge and computer network for calculating a spanning tree based on link state advertisements (lsa)
CN109495345B (en) BFD processing method and network equipment
WO2002006918A2 (en) A method, system, and product for preventing data loss and forwarding loops when conducting a scheduled change to the topology of a link-state routing protocol network
CN101207555B (en) Method for automatically clearing over loading bit in the course of avoiding path black hole
JP4068545B2 (en) Packet receiving method and apparatus
CA2572940A1 (en) System and method for preserving multicast data forwarding during control failures in a router
JP5375539B2 (en) Communication node, communication system, and packet communication method
JP6326907B2 (en) Transmission system, transmission apparatus, and clock synchronization method
CN107547337B (en) Tunnel switching method, leaf node automatic discovery route sending method and device
US7496644B2 (en) Method and apparatus for managing a network component change
WO2020105379A1 (en) Data transfer device and data transfer method
JP2012004925A (en) Communication apparatus and clock synchronizing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130612

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130909

R151 Written notification of patent or utility model registration

Ref document number: 5375539

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250