JP4969421B2 - Receiving apparatus and communication system - Google Patents
Receiving apparatus and communication system Download PDFInfo
- Publication number
- JP4969421B2 JP4969421B2 JP2007299969A JP2007299969A JP4969421B2 JP 4969421 B2 JP4969421 B2 JP 4969421B2 JP 2007299969 A JP2007299969 A JP 2007299969A JP 2007299969 A JP2007299969 A JP 2007299969A JP 4969421 B2 JP4969421 B2 JP 4969421B2
- Authority
- JP
- Japan
- Prior art keywords
- network interface
- receiving
- transmission
- side network
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims description 53
- 230000005540 biological transmission Effects 0.000 claims description 190
- 230000004044 response Effects 0.000 claims description 53
- 238000012545 processing Methods 0.000 claims description 33
- 238000000605 extraction Methods 0.000 claims description 6
- 102100036409 Activated CDC42 kinase 1 Human genes 0.000 description 123
- 238000000034 method Methods 0.000 description 22
- 238000007726 management method Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 13
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 description 9
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000005259 measurement Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 239000000872 buffer Substances 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Description
本発明は、データパケット及びデータパケットに対する応答パケットを送受信する通信システムに関する。 The present invention relates to a communication system that transmits and receives a data packet and a response packet to the data packet.
UDP/IP(User Datagram Protocol/Internet Protocol)によるマルチキャストは複数の装置に同報通信を行うことができるが、TCP/IP(Transmission Control Protocol/Internet Protocol)によるユニキャスト通信と違い、データが確実に届くようにする仕組みは備えていない。
そこで、従来のグループ通信方式では、UDP/IPによるマルチキャスト送信で複数の装置に同報通信を行い、送信元の装置にTCP/IPのユニキャスト通信でデータを受信した事(ACK(ACKnowledge:受信応答))あるいは、受信していない事(NACK(Negative ACKnowledge:受信否定応答))を報告し、前記報告によって再送制御を行う方法が提案されている(例えば、特許文献1)。
また、前記のようにTCP/IPのユニキャスト通信でACK/NACKを送信する方式では、データの送信に用いるNIC(Network Interface Card)に障害が発生し使用不可になった時に通信を継続できないため、装置に複数のNICを装備し、あるNICが障害を検出した場合に、同一ネットワークに接続している別のNICが、使用不可になったNICのアドレスを引き継ぎ、使用不可になったNICの機能を代行する方法が提案されている(例えば、特許文献2)。
そして、これらを組み合わせることにより、複数のNICを同一ネットワークに接続している環境であれば、NICにおける障害が発生しても高信頼にデータを同報通信する通信方式を実現することができる。
Therefore, in the conventional group communication system, broadcast transmission to a plurality of devices is performed by multicast transmission using UDP / IP, and data is received by a transmission source device by TCP / IP unicast communication (ACK (ACKnowledge: reception)). (Response))) or a method of reporting retransmission (NACK (Negative ACKnowledge)) and performing retransmission control based on the report (for example, Patent Document 1).
In addition, in the method of transmitting ACK / NACK by unicast communication of TCP / IP as described above, communication cannot be continued when a failure occurs in a NIC (Network Interface Card) used for data transmission and becomes unusable. When a NIC detects a failure when another NIC is installed in the device, another NIC connected to the same network takes over the address of the NIC that has become unavailable, and the NIC that has become unavailable A method of acting a function has been proposed (for example, Patent Document 2).
By combining these, if there is an environment where a plurality of NICs are connected to the same network, it is possible to realize a communication system that broadcasts data with high reliability even if a failure occurs in the NIC.
従来技術の組み合わせでは、NICを同一ネットワークに接続しなければならず、ネットワークスイッチに障害が発生して一部のネットワークが不通になった場合に、一部の装置にマルチキャストパケットが到達しない事や、ACK/NACKパケットを送信装置に届けることができず、高信頼なグループ通信を実施することはできない。
また、NICが障害を検出したときに別のNICが機能を代行する仕組みであるため、NICが障害を検出できない場所に障害が発生した場合は前記の代行処理を実施する事ができない。例えばネットワークスイッチと別の装置(通信相手の装置)の間に障害が発生した場合、障害を検出する事はできないため、現在使用中のNICの機能を別のNICに代行させる事はできない。
また、各NICを異なるスイッチに接続することでネットワークを冗長化したとしても、TCP/IPのユニキャストによるACK/NACKの送信では、装置におけるルーティングの設定でACK/NACKを送信するNICが自動的に設定されてしまうため、受信装置はACK/NACKを、障害の発生しているNICと同じネットワークスイッチに繋がっているNICから送信してしまい、ACK/NACKを送信装置に届けることができない。従来技術ではACK/NACKが送信装置に届かなければ何度も同一パケットをネットワークに送信する事になる。
In the combination of the prior art, the NIC must be connected to the same network, and when a failure occurs in the network switch and some networks are disconnected, multicast packets do not reach some devices. Therefore, the ACK / NACK packet cannot be delivered to the transmitter, and highly reliable group communication cannot be performed.
In addition, when the NIC detects a failure, another NIC substitutes the function. Therefore, when a failure occurs in a place where the NIC cannot detect the failure, the above substitution process cannot be performed. For example, when a failure occurs between the network switch and another device (communication partner device), the failure cannot be detected, so that the function of the NIC currently in use cannot be delegated to another NIC.
Even if each NIC is connected to a different switch to make the network redundant, the ACK / NACK transmission by the TCP / IP unicast is automatically performed by the NIC that transmits the ACK / NACK according to the routing setting in the device. Therefore, the receiving apparatus transmits the ACK / NACK from the NIC connected to the same network switch as that of the faulty NIC, and cannot receive the ACK / NACK to the transmitting apparatus. In the prior art, if the ACK / NACK does not reach the transmitting device, the same packet is transmitted to the network many times.
この発明は上記のような課題を解決することを主な目的の一つとしており、ネットワークスイッチの障害やネットワークケーブルの障害が生じた場合でも、データの確実な配送が可能な通信システムを実現することを目的とする。 One of the main objects of the present invention is to solve the above-described problems, and a communication system capable of reliably delivering data even when a network switch failure or a network cable failure occurs is realized. For the purpose.
本発明に係る受信装置は、
各々が相互に異なるネットワークスイッチに接続されている複数の送信側ネットワークインタフェース装置を有する送信装置から送信されたデータパケットを受信する受信装置であって、
各々が、相互に異なるネットワークスイッチを介して異なる送信側ネットワークインタフェース装置に接続され、送信側ネットワークインタフェース装置から送信されたデータパケットを受信する複数の受信側ネットワークインタフェース装置と、
受信したデータパケットに対する応答として、前記複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成する応答パケット作成部と、
前記応答パケット作成部により作成された応答パケットを各受信側ネットワークインタフェース装置から各受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置に向けて送信する応答パケット送信部とを有することを特徴とする。
The receiving apparatus according to the present invention is
A receiving device for receiving a data packet transmitted from a transmitting device having a plurality of transmitting side network interface devices each connected to a different network switch;
A plurality of receiving-side network interface devices, each of which is connected to a different transmitting-side network interface device via different network switches and receives data packets transmitted from the transmitting-side network interface device;
As a response to the received data packet, a response packet creating unit that creates a response packet including a transmission device multicast address to which all of the plurality of transmission side network interface devices are destinations;
A response packet transmitter configured to transmit the response packet generated by the response packet generator from each receiving network interface device to a transmitting network interface device connected to each receiving network interface device. And
本発明によれば、複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成し、当該応答パケットを複数の受信側ネットワークインタフェース装置の各々から送信装置の各送信側ネットワークインタフェース装置に向けて送信するため、ネットワークスイッチの障害やネットワークケーブルの障害が生じた場合でも、応答パケットの確実な配送が可能である。 According to the present invention, a response packet including a transmission device multicast address destined for all of the plurality of transmission side network interface devices is created, and the response packet is transmitted from each of the plurality of reception side network interface devices to each of the transmission devices. Since the transmission is performed toward the transmission-side network interface device, the response packet can be reliably delivered even when a network switch failure or a network cable failure occurs.
実施の形態1.
本実施の形態に係る通信システムは、ネットワークスイッチの障害やネットワークケーブルの障害に備えて、複数のネットワークスイッチで装置間を冗長に接続した環境において、パケットを冗長に送受信する事でデータの確実な配送を可能とすることを目的とする。
The communication system according to the present embodiment provides reliable data transmission by transmitting and receiving packets redundantly in an environment in which devices are connected redundantly by a plurality of network switches in preparation for a failure of a network switch or a failure of a network cable. The purpose is to enable delivery.
図1は、本実施の形態に係る通信システムのシステム構成図である。
以下、図1の構成要素を以下に説明する。
FIG. 1 is a system configuration diagram of a communication system according to the present embodiment.
Hereinafter, the components of FIG. 1 will be described.
送信装置101は、少なくとも2枚以上のネットワークインタフェース装置114(以下、NIC114ともいう)を有する。図1の例では、NIC114−1とNIC114−2の2枚のNICとしている。各NIC114は、異なるネットワークスイッチ300に接続されている。なお、各NIC114は、送信側ネットワークインタフェース装置の例である。
また、データパケット作成部111は、送信するデータに対し、本実施の形態の通信方式に必要な通信ヘッダを付け、データパケットを作成する。
データパケット送信部112は、各NIC114からデータパケットを送信する。
再送部113は、データパケットに対する応答であるACKパケットをNIC114を介して受信し、ACKパケットが未到着の受信装置がある場合にデータパケットを再送する。
The
Further, the data
The data
The
受信装置201、202は、少なくとも2枚以上のネットワークインタフェース装置214(以下、NIC214ともいう)を有する。図1の例では、NIC214−1とNIC214−2の2枚のNICとしている。各NIC214は、異なるネットワークスイッチ300に接続されている。なお、各NIC214は、受信側ネットワークインタフェース装置の例である。なお、以下、特に注記しない限り、受信装置201についての説明は、受信装置202にもあてはまるものとする。
順序管理部213は、NIC214を介して送信装置101からのデータパケットを受信し、受信したデータパケットの整列を行う。
ACKパケット作成部211は、データパケットに対する応答パケットであるACKパケットを作成する。ACKパケット作成部211は、応答パケット作成部の例である。なお、本実施の形態及び以降の実施の形態では、ACKパケットを送信する例を主に説明するが、NACKパケットを送信する場合も同様の手順となる。NACKパケットも応答パケットの例である。
ACKパケット送信部212は、NIC214からACKパケットを送信する。ACKパケット送信部212は、応答パケット送信部の例である。
なお、図1では、受信装置201として、受信装置201及び受信装置202が配置されている。
The
The
The ACK
The ACK
In FIG. 1, a
また、送信装置101及び受信装置201の間には少なくとも2つ以上のネットワークスイッチ300を設置し、送信装置101及び受信装置201の各NICをそれぞれ異なるネットワークスイッチ300に接続することで、装置間に複数の通信路を構築している。
図1では、ネットワークスイッチ300−1及びネットワークスイッチ300−2を配置している。
Further, at least two or
In FIG. 1, a network switch 300-1 and a network switch 300-2 are arranged.
図2は、本実施の形態で用いられるネットワークアドレスの例を示す。
図2の構成を以下に説明する。
FIG. 2 shows an example of a network address used in this embodiment.
The configuration of FIG. 2 will be described below.
送信装置101は送信装置マルチキャストアドレスA101を持つ。
従来技術では、送信装置はACKパケットをNICのユニキャストアドレスA114−1等で受信するが、本実施の形態では送信装置101はACKパケットをマルチキャストアドレスA101で受信する。
送信装置マルチキャストアドレスA101は、送信装置101に含まれる複数のNIC114の全てを包含するアドレスであり、後述するように、受信装置201においてACKパケットに送信装置マルチキャストアドレスA101を含ませると送信装置101に含まれる複数のNIC114の全てをACKパケットの宛先とすることができる。
The
In the prior art, the transmission apparatus receives an ACK packet at the NIC unicast address A 114-1 or the like. In this embodiment, the
The transmission device multicast address A101 is an address that includes all of the plurality of NICs 114 included in the
送信装置101から同一データパケットを受信する受信装置201と受信装置202は受信グループ200を構成する。
受信グループ200は、受信グループのマルチキャストアドレスA200を持つ。
また送信装置101と同様に、受信装置201はマルチキャストアドレスA201を持ち、受信装置202はマルチキャストアドレスA202を持つ。
マルチキャストアドレスA201は受信装置201に含まれる全てのNIC214を包含するアドレスであり、マルチキャストアドレスA202は受信装置202に含まれる全てのNIC214を包含するアドレスである。
本実施の形態の通信方式では、受信グループが1台の受信装置201だけで構成される場合、前記受信グループのマルチキャストアドレスA200は受信装置201のマルチキャストアドレスA201と同じ値であっても良い。
The
The
Similarly to the
The
In the communication method according to the present embodiment, when the reception group is composed of only one
図3、図4は本実施の形態における通信パケットのヘッダ構成例である。
図3は送信装置101が送るデータパケットP501の構成例を示し、図4は受信装置201が送るACKパケットP502の構成例を示す。
パケットは次に述べる各値をパケットのヘッダに持つ。
当該パケットの送信元の装置を示すパケット送信元アドレス401、パケットがデータパケットであるかACKパケットであるか示すパケットタイプ402、データパケット送信元の装置を示すデータ送信元アドレス403、データパケットの宛先を示すデータ宛先グループ404、データの順序を示すシーケンス番号405である。
パケットのヘッダにはその他のヘッダ406としてデータのサイズ等が存在していてもよい。
パケットは送信元アドレス401により、どの装置から送信されたかを特定できる。
また、データ送信元アドレス403、データ宛先グループ404、シーケンス番号405の組み合わせにより、データを送信した装置、宛先、データの順序が特定できるため、データの内容やACKがどのデータパケットに対するACKであるかを一意に特定できる。
つまり、ACKパケットP502の場合、データ送信元アドレス403にはACKパケットP502の応答の対象となるデータパケットの送信元のアドレスが示されており、データ送信元アドレス403によりACKパケットP502の宛先を特定することが可能である。
FIG. 3 and FIG. 4 are header configuration examples of communication packets in the present embodiment.
FIG. 3 shows a configuration example of the data packet P501 sent from the
The packet has the following values in the packet header.
A packet
In the header of the packet, the data size or the like may exist as the
It is possible to specify from which device the packet is transmitted by the
In addition, the combination of the data
That is, in the case of the ACK packet P502, the data
図3において、パケット送信元アドレス401には、データパケットの送信元である送信装置101の送信装置マルチキャストアドレスA101が示され、図4において、パケット送信元アドレス401には、ACKパケットの送信元である受信装置201の受信装置マルチキャストアドレスA201、A202が示される。
また、図3及び図4において、データ送信元アドレス403には、データパケットの送信元である送信装置101の送信装置マルチキャストアドレスA101が示される。
また、図3及び図4において、データ宛先グループ404には、データパケットの宛先グループである受信グループ200の受信グループマルチキャストアドレスA200が示される。
また、ACKパケットP502は、受信装置201が受信したデータパケットP501のヘッダにおけるパケット送信元アドレス401とパケットタイプを変更したものである。つまり、データ送信元アドレス403、データ宛先グループ404、シーケンス番号405、その他のヘッダ406はデータパケットのものと変わらない。
受信装置201では、ACKパケット作成部211が、図3に示すデータパケットP501のヘッダをコピーし、パケット送信元アドレス401とパケットタイプを変更して、ACKパケットP502のヘッダを作成することができる。
また、後述するように、データ伝送にIP(Internet)プロトコルを用いる場合は、データパケットに付加されたIPヘッダに含まれる送信装置マルチキャストアドレスA101又は図3に示すデータパケットP501のデータ送信元アドレス403に示される送信装置マルチキャストアドレスA101をIPヘッダに設定して、ACKパケットP502を作成する。
In FIG. 3, the packet
3 and 4, the data
3 and 4, the
The ACK packet P502 is obtained by changing the packet
In the receiving
As will be described later, when the IP (Internet) protocol is used for data transmission, the transmission device multicast address A101 included in the IP header added to the data packet or the data
図5、図6は、本実施の形態に係る通信の流れを示したものである。 5 and 6 show a flow of communication according to the present embodiment.
図5のように各装置が2枚のNICを持つシステムにおいて、送信装置101はデータパケット501を、受信グループ200のマルチキャストアドレスA200宛てに、NIC114−1及びNIC114−2の両方から同時にマルチキャスト送信する。
なお、データパケット501−1に含まれる通信アドレス等の内容を601に、データパケット501−2に含まれる通信アドレス等の内容を602に示す。
601、602は同一の内容であり、パケット送信元アドレス(Packet from)及びデータ送信元アドレス(Data from)が送信装置マルチキャストアドレスA101であり、データ宛先グループ(Data to)が受信グループマルチキャストアドレスA200であり、シーケンス番号(Seq)が1000である。
In a system in which each device has two NICs as shown in FIG. 5, the
The contents such as the communication address included in the data packet 501-1 are indicated by 601 and the contents such as the communication address included in the data packet 501-2 are indicated by 602.
601 and 602 have the same contents, the packet transmission source address (Packet from) and the data transmission source address (Data from) are the transmission device multicast address A101, and the data destination group (Data to) is the reception group multicast address A200. Yes, the sequence number (Seq) is 1000.
各NIC114から送信されたデータパケット501−1及び501−2はそれぞれネットワークスイッチ300−1、300−2で複製され、受信装置201及び受信装置202に到着する。
図6は、受信装置201がACKパケットを送信装置101に送信する際の状態を表したものである。
受信装置201はデータパケット501に対する応答として、ACKパケット502を作成する。受信装置201はACKパケット502を、送信装置101のマルチキャストアドレスA101宛てに、受信装置201の持つNIC214−1及びNIC214−2から同時に送信する。送信されたACKパケットはそれぞれネットワークスイッチ300−1、300−2を経由して送信装置101に到着する。ACKパケット502−1に含まれる通信アドレス等の内容を701に、ACKパケット502−2に含まれる通信アドレス等の内容を702に示すが、両者は同じ内容である。
データ伝送にIPプロトコルが用いられる場合は、受信装置201のACKパケット作成部211は、図4に示すヘッダに加え、宛先アドレスとして送信装置マルチキャストアドレスA101が示されるIPヘッダを含むACKパケットを作成する。
また、利用する通信プロトコルによっては、ACKパケット作成部211は図4に示すヘッダのみが含まれるACKパケットを作成するようにしてもよい。
いずれの通信プロトコルの場合も、ACKパケット作成部211は、受信したデータパケットに対する応答として、複数の送信側のNIC114の全てが宛先となる送信装置マルチキャストアドレスA101が含まれるACKパケットを作成し、複数のネットワークスイッチ300を介して複数の送信側のNIC114の全てにACKパケットが到達するようにする。
各ネットワークスイッチ300では、ACKパケットに含まれる送信装置マルチキャストアドレスA101により各々に接続されている送信側のNIC114にACKパケットを送信する。
The data packets 501-1 and 501-2 transmitted from each NIC 114 are duplicated by the network switches 300-1 and 300-2, respectively, and arrive at the receiving
FIG. 6 illustrates a state when the receiving
The receiving
When the IP protocol is used for data transmission, the ACK
Further, depending on the communication protocol to be used, the ACK
In any communication protocol, the ACK
Each
次に、動作について説明する。
図7は本実施の形態における送信装置101の処理フローの例を示す。送信装置101は次のステップで動作する。
ステップS110において、データパケット作成部111でデータパケットを作成する。この際、受信グループ200のマルチキャストアドレスである受信グループマルチキャストアドレスA200をデータパケットに含ませる。
次に、ステップS120において、データパケット送信部112でデータパケットをマルチキャスト送信する。具体的には、複数のNIC114の各々から各ネットワークスイッチに向けてデータパケットを送信する。
次に、ステップS130において、再送部113でACK受信の完了を判定し、完了しない場合はステップS120に戻る。
Next, the operation will be described.
FIG. 7 shows an example of the processing flow of the
In step S110, the data
Next, in step S120, the data
Next, in step S130, the
図8はデータパケット送信部112の処理フローの例を示す。データパケット送信部112は次のステップを、装置の持つNICの数だけ繰り返す。
ステップS121において、データパケット送信部112は送信に用いるNICを選択する。
次に、ステップS122において、データパケット送信部112はデータパケットをステップS121で選択したNICからマルチキャスト送信する。
FIG. 8 shows an example of the processing flow of the data
In step S121, the data
Next, in step S122, the data
図9は再送部113の処理フロー例を示す。再送部113は送信装置101のマルチキャストアドレスA101宛てパケットを待ち受け、再送の要否を判定する。
ステップS131において、再送部113はACKパケットを待ち受ける。パケットを受信するか、受信タイムアウトが発生したら次のステップS132に進む。
次に、ステップS132において、再送部113は全ての受信装置からACKが到着しているか否か判定を行う。到着していればデータパケットの送信の成功とする。到着していない装置があればステップS133に進む。
次に、ステップS133において、データパケット送信(ステップS122実行)から一定時間以内であればステップS131に戻る。一定時間を超過していたらステップS134に進む。
次に、ステップS134において、再送部113は再送を一定回数以上行っていた場合はデータパケットの送信に失敗とする。再送が一定回数以内であればステップS120に戻る。
FIG. 9 shows a processing flow example of the
In step S131, the
Next, in step S132, the
Next, in step S133, if it is within a predetermined time from data packet transmission (execution of step S122), the process returns to step S131. If the predetermined time is exceeded, the process proceeds to step S134.
Next, in step S134, the
図10は受信装置201の処理フロー例を示す。受信装置201は次のステップで動作する。
ステップS210において、順序管理部213が、受信したデータパケットを整列し、データを送信された順に重複無く結合または加工する。
次に、ステップS220において、ACKパケット作成部211が、受信したデータパケットに対するACKパケットを作成する。前述したように、ACKパケットには、図4に示すように送信装置マルチキャストアドレスA101が含まれ、データ伝送にIPプロトコルを用いる場合は、IPヘッダの宛先アドレスにも送信装置マルチキャストアドレスA101が含まれる。
次に、ステップS230において、ACKパケット送信部212が、ACKパケットをマルチキャスト送信する。具体的には、複数のNIC214の各々から各ネットワークスイッチに向けてACKパケットを送信する。
また、受信装置201はデータパケットを受信する都度ACKパケットを送信する。
FIG. 10 shows a processing flow example of the receiving
In step S210, the
Next, in step S220, the ACK
Next, in step S230, the ACK
Further, the receiving
図11は順序管理部213の処理フローである。
ステップS211において、順序管理部213は、受信グループのアドレスA200宛てのデータパケットP501を受信する。
次に、ステップS212において、受信したデータパケットP501のシーケンス番号が処理済であるか判定する。未処理のデータであればS213を実行する。
ステップS213において、順序管理部213は、システムの用途に応じて受信した一連のデータを保存する処理や、データを加工する処理を行う。
FIG. 11 is a processing flow of the
In step S211, the
Next, in step S212, it is determined whether the sequence number of the received data packet P501 has been processed. If it is unprocessed data, S213 is executed.
In step S213, the
図12はACKパケット送信部212の処理フローである。ACKパケット送信部212は次のステップを、装置の持つNIC214の数だけ繰り返す。
ステップS231において、ACKパケット送信部212は、送信に用いるNICを選択する。
ステップS232において、ACKパケット送信部212は、ACKパケットをステップS231で選択したNICからマルチキャスト送信する。
FIG. 12 is a processing flow of the ACK
In step S231, the ACK
In step S232, the ACK
以下に、この実施の形態に係る通信システムの効果を説明する。
本実施の形態では、装置全てが複数のNICを持ち、装置全てにマルチキャストアドレスを割り当て、NICの持つユニキャストアドレスではなくマルチキャストアドレスにマルチキャスト送信を行う。このときパケットを装置の持つ複数のNICから同時に送信することと、1台の装置宛であっても複数の装置から成るグループ宛であっても全ての通信をマルチキャストで送信することを主な特徴としている。
そのため、特徴の一つである複数のNICから同時に送信することにより、装置間のネットワークに障害が発生しても、装置間の通信路の内一つでも正常に機能していれば、データの配信が確実に実施できるという効果を得ることができる。
さらに、特徴の一つである全ての通信をマルチキャスト送信することにより、発明が解決しようとする課題の欄で述べたようなユニキャスト通信のルーティング情報に影響されること無くACKパケットを確実に送信元に届けることができ、一対多のグループ通信を高信頼に実現するという効果を得ることができる。
The effects of the communication system according to this embodiment will be described below.
In this embodiment, all devices have a plurality of NICs, multicast addresses are assigned to all devices, and multicast transmission is performed to multicast addresses instead of unicast addresses possessed by NICs. At this time, the main feature is that packets are transmitted simultaneously from a plurality of NICs of the device, and all communication is transmitted by multicast regardless of whether it is addressed to one device or a group consisting of a plurality of devices. It is said.
For this reason, by simultaneously transmitting from a plurality of NICs, which is one of the features, even if a failure occurs in the network between devices, if one of the communication paths between devices functions normally, the data The effect that delivery can be implemented reliably can be acquired.
Furthermore, by multicast transmission of all communications, which is one of the features, the ACK packet is reliably transmitted without being affected by the unicast communication routing information as described in the section of the problem to be solved by the invention. It is possible to obtain the effect of realizing one-to-many group communication with high reliability.
例えば、図13の構成において、F600の位置にあるネットワークケーブルに障害が発生していた場合、従来技術では送信装置101はNIC114−1の機能をNIC114−2に代行させるように設定できないため、受信装置202はデータを受信することができない。しかし、本実施の形態によると、このようなケースでも送信装置はNIC114−2からパケットを送信できるので確実にデータを配信することができる。
また、図14の構成においてF601の位置に障害が発生した場合、従来技術ではNIC114−2がNIC114−1の機能を代行しパケットの送信を行うが、各受信装置はNIC114−1のユニキャストアドレスA114−1にACKを送信するため、ネットワークスイッチ300−1側にパケットを送信してしまい、ACKが送信装置101に届かない。しかし、本実施の形態によると、このような場合でも各受信装置はネットワークスイッチ300−2側のNICから送信装置101のマルチキャストアドレスにマルチキャスト送信するため、ACKを送信装置に届けることができる。
For example, in the configuration of FIG. 13, if a failure occurs in the network cable at the position of F600, the
In the configuration of FIG. 14, when a failure occurs at the position of F601, the NIC 114-2 substitutes the function of the NIC 114-1 and transmits a packet in the related art. However, each receiving apparatus transmits a unicast address of the NIC 114-1. Since ACK is transmitted to A 114-1, the packet is transmitted to the network switch 300-1 side, and the ACK does not reach the transmitting
以上、本実施の形態では、複数のネットワークインタフェース装置(NIC)を備えた装置を、ネットワークスイッチで結合してローカルエリアネットワーク(LAN)を構築した分散システムで、装置間に複数のネットワークスイッチを設置し、装置の各NICをそれぞれ異なるネットワークスイッチに接続することで冗長化した環境において、装置の組み合わせをグループとしてグループに対する同報通信をマルチキャスト通信で行う仕組みであって、以下の特徴を持つ事で、任意のネットワークスイッチ、ネットワークケーブル、NICに障害が発生しても、グループの全装置に確実にデータが届くようにした冗長化高信頼グループ通信方式について説明した。
1)全てのグループにマルチキャストアドレスを割り当てる。
2)全ての装置にマルチキャストアドレスを割り当てる。
3)データを送信する側の装置(送信装置)は、データ送信時に、データの送信順序を示すシーケンス番号と、送信装置のマルチキャストアドレスを付加したデータパケットを作成するデータパケット作成部を備える。
4)送信装置は前記データパケットを送信する手段として、グループのマルチキャストアドレスに向けて、複数のNICから同時にデータパケットの送信を行い、装置間の複数の通信経路を冗長に用いる事を特徴としたデータパケット送信部を備える。
5)データを受信する側の装置(受信装置)は、受信したデータパケットのシーケンス番号を記憶し、データを送信された順に重複が無いように整列する順序管理部を備える。
6)受信装置はデータパケットに対する応答として、シーケンス番号と受信装置のマルチキャストアドレスを付加したACK(ACKnowledge:受信肯定応答)パケットを作成するACKパケット作成部を備える。
7)受信装置は前記ACKパケットを送信する手段として、データパケットに記載された送信装置のマルチキャストアドレスに向けて、複数のNICから同時にACKパケットの送信を行う事で、複数の通信経路を冗長に用いる事を特徴としたACKパケット送信部を備える。
8)送信装置は受信装置からのACKパケット到着の有無を記憶し、ACKが到着していない受信装置がある場合に同一データパケットを再度送信する事でデータパケットの到達可能性を高める再送部を備える。
As described above, in this embodiment, in a distributed system in which a device having a plurality of network interface devices (NICs) is connected by a network switch to construct a local area network (LAN), a plurality of network switches are installed between the devices. However, in a redundant environment by connecting each NIC of a device to a different network switch, it is a mechanism for performing broadcast communication to the group as a group with a combination of devices, and has the following characteristics. The redundant high-reliability group communication system has been described in which data can be surely delivered to all the devices in the group even if a failure occurs in any network switch, network cable, or NIC.
1) Assign a multicast address to all groups.
2) Assign a multicast address to all devices.
3) A device (transmitting device) that transmits data includes a data packet creating unit that creates a data packet to which a sequence number indicating the data transmission order and a multicast address of the transmitting device are added at the time of data transmission.
4) As a means for transmitting the data packet, the transmitting apparatus transmits data packets simultaneously from a plurality of NICs toward a group multicast address, and redundantly uses a plurality of communication paths between the apparatuses. A data packet transmission unit is provided.
5) A device (receiving device) that receives data includes a sequence management unit that stores the sequence numbers of received data packets and arranges the data so that there is no duplication in the order of transmission.
6) The reception device includes an ACK packet creation unit that creates an ACK (ACKnowledge: reception acknowledgment) packet to which the sequence number and the multicast address of the reception device are added as a response to the data packet.
7) As a means for transmitting the ACK packet, the receiving device transmits ACK packets simultaneously from a plurality of NICs toward the multicast address of the transmitting device described in the data packet, thereby making a plurality of communication paths redundant. An ACK packet transmitter characterized by being used is provided.
8) The transmission device stores the presence / absence of arrival of an ACK packet from the reception device, and when there is a reception device to which ACK has not arrived, a retransmission unit that increases the reachability of the data packet by transmitting the same data packet again Prepare.
実施の形態2.
以上の実施の形態1では、受信装置201はデータパケットP501を受信する都度ACKパケットP502を送信するものであった。
次に、ACKパケット送信処理の処理回数を削減する実施の形態について述べる。
In the first embodiment described above, the receiving
Next, an embodiment for reducing the number of ACK packet transmission processes will be described.
図15は、本実施の形態のシステム構成図である。
本実施の形態では、実施の形態1の構成に対して、送信装置101に再送回数計測部115を加え、受信装置201に後着判定部215を加える。
再送回数計測部115は、送信装置101において同一データの再送回数を数える。
後着判定部215は、受信装置201において、受信したパケットに応答が必要か判定する。
FIG. 15 is a system configuration diagram of the present embodiment.
In the present embodiment, a retransmission
The retransmission
The late
図16、図17は本実施の形態におけるパケットフォーマットの例である。
本実施の形態では実施の形態1のパケットフォーマット(図3、図4)に、前記再送回数計測部115で計測した再送回数を記載する再送回数フィールド407を付け加える。
16 and 17 show examples of packet formats in the present embodiment.
In the present embodiment, a
次に本実施の形態の動作について述べる。
送信装置101は前述のように、データパケットに実施の形態1のヘッダに再送回数407を加えたデータパケットP511を作成し、実施の形態1と同じくデータパケット送信部112で複数のNIC114からデータパケットP511を同時にマルチキャスト送信する。
図18は本実施の形態で各受信装置の後着判定部215が行う、データパケットの分類を示したものである。
送信装置101が複数のNICから同時に送信したデータパケットP511には同じ値のシーケンス番号405と再送回数407が記載されている。後着判定部215はこの2つの値により、受信したデータパケットP511を次のように分類する。
(1)シーケンス番号が過去に受信していない値であればデータパケット511を新規パケット511−1に分類する。
(2)シーケンス番号が過去に受信した値であり、再送回数も過去に受信した値かそれ以下であれば、データパケット511を後着パケット511−2に分類する。
(3)シーケンス番号が過去に受信した値であり、再送回数が過去に受信した値よりも大きい場合は、データパケット511を再送パケット511−3に分類する。
Next, the operation of this embodiment will be described.
As described above, transmitting
FIG. 18 shows the classification of data packets performed by the
In the data packet P511 transmitted from the plurality of NICs simultaneously by the
(1) If the sequence number is a value that has not been received in the past, the
(2) If the sequence number is a value received in the past and the number of retransmissions is also a value received in the past or less, the
(3) If the sequence number is a value received in the past and the number of retransmissions is larger than the value received in the past, the
次に上記のデータパケット分類処理後の動作について述べる。
(1)新規パケット511−1の場合は、受信したデータの処理とACKパケット送信を行う。
つまり、ACKパケット作成部211が、送信装置マルチキャストアドレスA101を含むACKパケットを生成し、ACKパケット送信部212が各NIC214からACKパケットを送信する。ACKパケットの作成、ACKパケットの送信手順は、実施の形態1で示したものと同様である。
(2)後着パケット511−2の場合は、受信装置201は、何もしない。
(3)再送パケット511−3の場合は、ACKパケットの送信を行う。
つまり、ACKパケット作成部211が、送信装置マルチキャストアドレスA101を含むACKパケットを生成し、ACKパケット送信部212が各NIC214からACKパケットを送信する。ACKパケットの作成、ACKパケットの送信手順は、実施の形態1で示したものと同様である。
Next, the operation after the data packet classification process will be described.
(1) In the case of a new packet 511-1, the received data is processed and an ACK packet is transmitted.
That is, the ACK
(2) In the case of the late arrival packet 511-2, the receiving
(3) In the case of the retransmission packet 511-3, an ACK packet is transmitted.
That is, the ACK
以上のように、本実施の形態によれば、シーケンス番号405及び再送回数407によって受信したパケットを分類し、データパケットが後着パケット511−2である場合にACKパケットの送信を行わない事により、ACKパケットの送信回数を削減する効果を得ることができる。
この効果は装置のNICが増加するほど大きく現れる。
As described above, according to the present embodiment, the received packets are classified by the
This effect becomes more significant as the NIC of the device increases.
本実施の形態では装置間の複数の通信経路を同時に用いてパケットの送信を行うため、同時に送信されたパケットが受信装置に到着する。同時に送信されたパケットに対して1回だけACKパケットの送信処理を行う事が本実施の形態の特徴の一つである。
また、ACKパケットが送信装置に到着しなかった場合は、送信装置が再送を行うため、再送されたパケットに対するACKパケットの送信は必要である。再送されたことにより重複して受信したデータパケットと、多重経路により重複して受信したデータパケットを区別することで、ACKパケット送信回数を削除すると同時に、ACKパケット送信が必要なときに送信するようにすることも本実施の形態の特徴の一つである。
このように、本実施の形態は、ACKパケット送信処理回数の削減という効果を得ることができる。
In this embodiment, since packets are transmitted using a plurality of communication paths between devices at the same time, the simultaneously transmitted packets arrive at the receiving device. One of the features of this embodiment is that the transmission process of the ACK packet is performed only once for the packets transmitted simultaneously.
Further, when the ACK packet does not arrive at the transmission device, the transmission device performs retransmission, and therefore transmission of the ACK packet to the retransmitted packet is necessary. By distinguishing between data packets that have been retransmitted due to being retransmitted and data packets that have been received redundantly through multiple paths, the number of times of ACK packet transmission is deleted, and at the same time, transmission of ACK packets is necessary. It is also one of the features of this embodiment.
Thus, this embodiment can obtain the effect of reducing the number of ACK packet transmission processes.
以上、本実施の形態では、以下の各部を備える事で、受信装置におけるACKパケット作成処理及びACKパケット送信処理の処理回数を削減する冗長化高信頼グループ通信方式について説明した。
1)送信装置に、同一データの再送回数を記録する再送回数計測部を備える。
2)送信装置のデータパケット作成部がデータパケットを作成する際に、前記再送回数計測部で記録した再送回数をデータパケットに記載するステップを持つ。
3)受信装置に、データパケットに記載されている再送回数を記憶するステップと、データパケットに記載されている再送回数が記憶している再送回数以下の場合にだけACKの送信を行うようにするステップを持った後着判定部を備える。
As described above, in the present embodiment, the redundant highly reliable group communication method has been described in which the following units are provided to reduce the number of times of ACK packet creation processing and ACK packet transmission processing in the reception apparatus.
1) The transmission apparatus includes a retransmission number measurement unit that records the number of retransmissions of the same data.
2) When the data packet creation unit of the transmission apparatus creates the data packet, the data packet creation unit includes a step of recording the number of retransmissions recorded by the retransmission number measurement unit in the data packet.
3) The step of storing the number of retransmissions described in the data packet in the receiving device and the transmission of the ACK only when the number of retransmissions described in the data packet is less than or equal to the stored number of retransmissions A late arrival determination unit having steps is provided.
実施の形態3.
以上の実施の形態は各装置が全てのNICからパケットを送信するようにしたものであるが、次に、パケットを送信するときに使用するNICの数を限定し、マルチキャスト送信処理の処理回数を削減する実施の形態について述べる。
In the above embodiment, each device transmits packets from all NICs. Next, the number of NICs used when transmitting packets is limited, and the number of times of multicast transmission processing is set. An embodiment to reduce will be described.
図19は、本実施の形態のシステム構成図である。
本実施の形態では実施の形態1または実施の形態2の構成に、各装置に経路管理部116(216)と経路切り替え部117(217)を追加している。
経路管理部116(216)は、各装置において、他の各装置とそれぞれどのNICを用いて通信できるか管理する。
経路切り替え部117(217)は、パケット送信時に使用するNICを、パケットを受信する装置に応じて切り替える。
なお、後述するように、経路管理部116(216)は接続先情報記憶部の例であり、経路切り替え部117は送信側ネットワークインタフェース装置抽出部の例であり、経路切り替え部217は受信側ネットワークインタフェース装置抽出部の例である。
FIG. 19 is a system configuration diagram of the present embodiment.
In the present embodiment, a path management unit 116 (216) and a path switching unit 117 (217) are added to each device in the configuration of the first or second embodiment.
The path management unit 116 (216) manages which NIC can be used to communicate with each other device in each device.
The path switching unit 117 (217) switches the NIC used at the time of packet transmission according to the device that receives the packet.
As will be described later, the route management unit 116 (216) is an example of a connection destination information storage unit, the
本実施の形態に係る通信システムでは、複数の受信装置201が存在し、各々の受信装置201は複数のNIC214を備え、各NIC214は異なるネットワークスイッチ300を介して送信装置101の異なるNIC114に接続され、複数の受信装置201は、2つ以上の受信グループに分類される。
また、送信装置101では、各NIC114は、相互に異なるネットワークスイッチ300を介していずれかの受信装置201のいずれかのNIC214に接続されている。
つまり、本実施の形態では、送信装置101の各NIC114がネットワークスイッチ300を介して接続されている受信側のNIC214は共通の受信装置201のものとは限らない。
例えば、送信装置101の複数の送信側NIC114のうち、あるNIC114は受信グループ1に属する受信装置201の受信側NIC214に接続され、別の送信側NIC114は受信グループ2に属する受信装置201の受信側NIC214に接続される場合がある。
In the communication system according to the present embodiment, there are a plurality of receiving
In the
That is, in the present embodiment, the receiving-side NIC 214 to which the NICs 114 of the transmitting
For example, among the plurality of transmission side NICs 114 of the
また、本実施の形態では、送信装置101が複数存在する場合も想定している。
そして、受信装置201の各NIC214は、相互に異なるネットワークスイッチ300を介していずれかの送信装置101のいずれかの送信側NIC114ネットワークインタフェース装置に接続されている。
つまり、本実施の形態では、受信装置201の各NIC214がネットワークスイッチ300を介して接続されている送信側のNIC114は共通の送信装置101のものとは限らない。
例えば、受信装置201の複数の受信側NIC214のうち、あるNIC214はある送信装置101の送信側NIC114に接続され、別の受信側NIC214は別の送信装置101の送信側NIC114に接続される場合がある。
In this embodiment, it is assumed that there are a plurality of
Each NIC 214 of the receiving
In other words, in this embodiment, the NICs on the transmitting side to which the NICs 214 of the receiving
For example, among a plurality of reception-side NICs 214 of the
そして、本実施の形態では、各装置の経路管理部116(117)で、装置の持つNICと他の装置への到達可能性を示す到達可能性情報を記憶する。
到達可能性情報は、接続先情報の例である。
送信装置101の経路管理部116で記憶されている到達可能性情報には、送信側のNIC114ごとに、ネットワークスイッチ300を介して接続されている受信側のNIC214が含まれている受信装置201が属する受信グループが示される。
また、受信装置201の経路管理部216で記憶されている到達可能性情報には、受信側のNIC214ごとに、ネットワークスイッチ300を介して接続されている送信側のNIC114が含まれている送信装置101が示される。
In the present embodiment, the path management unit 116 (117) of each device stores the NIC possessed by the device and reachability information indicating the reachability to other devices.
The reachability information is an example of connection destination information.
The reachability information stored in the
In addition, the reachability information stored in the
そして、送信装置214の経路切り替え部117はデータパケットを送信する際に、グループを構成する各受信装置をどのNIC114を用いて通信できるか経路管理部116に問い合わせ、マルチキャスト送信を行う際に、前記で問い合わせたNIC114だけを用いてパケットの送信を行うようにデータパケット送信部112の動作を変更する。
つまり、経路切り替え部117は、特定の受信グループに対してデータパケットを送信する場合に、経路管理部116の到達可能性情報に基づき、特定の受信グループに属する受信装置201の受信側NIC214に接続されている送信側NIC114を抽出し、データパケット送信部112は経路切り替え部117により抽出された送信側NIC114から特定の受信グループに対するデータパケットを送信する。
Then, when transmitting a data packet, the
That is, when transmitting a data packet to a specific reception group, the
また、受信装置201も同様に、送信装置101にACKパケットを送信する際に使用するNIC214の問い合わせを行い、必要最低限のNIC214だけを用いてACKパケットの送信を行う。
つまり、経路切り替え部217は、いずれかの送信装置101から受信したデータパケットに対するACKパケットを送信する場合に、経路管理部216の到達可能性情報に基づき、ACKパケットの送信先の送信装置101の送信側NIC114に接続されている受信側NIC214を抽出し、ACKパケット送信部212は、経路切り替え部217により抽出された受信側NIC214から応答パケットを送信する。
Similarly, the receiving
That is, when transmitting an ACK packet for a data packet received from any of the
以上のように、パケット送信の際に使用するNICを限定することで、パケットを受信する装置の存在しないネットワークにマルチキャストパケットを送信しないようにし、パケット送信処理回数の削減とネットワーク負荷の軽減を行うことができる。 As described above, by limiting the NIC used for packet transmission, multicast packets are not transmitted to a network that does not have a device that receives the packets, and the number of packet transmission processes is reduced and the network load is reduced. be able to.
以上、本実施の形態では、以下の手段を備えることで、データパケットまたはACKパケットを送信する際に使用するNICを削減し、パケット送信の処理回数を削減する冗長化高信頼グループ通信方式について説明した。
1)送信装置及び受信装置に、各NICがどの装置と通信可能か記録する経路管理部を備える。
2)送信装置がデータパケットを送信する際に、グループを構成する装置と通信可能なNICのみを使用するように選択する経路選択部を備える。
3)受信装置はACKパケットを送信する際に、送信装置と通信可能なNICのみを使用するように選択する経路選択部を備える。
As described above, in this embodiment, the redundant high-reliability group communication method that reduces the NIC used when transmitting a data packet or an ACK packet and reduces the number of packet transmission processes by providing the following means is described. did.
1) The transmission device and the reception device include a path management unit that records which device can communicate with each NIC.
2) When the transmission device transmits a data packet, the transmission device includes a route selection unit that selects only the NIC that can communicate with the devices constituting the group.
3) When receiving the ACK packet, the receiving device includes a route selection unit that selects only the NIC that can communicate with the transmitting device.
実施の形態4.
以上の実施の形態では、送信装置101は再送が必要な場合に受信グループ200のマルチキャストアドレスA200に向けてマルチキャスト送信を行うものであった。
次に、ACKが戻らないため再送が必要と認識した受信装置が1台だけである場合に、該当する1台のみに再送を行う事で、既にデータパケットが到着した受信装置が受信処理を行わなくて良いようにする形態について述べる。
Embodiment 4 FIG.
In the above embodiment, the
Next, when only one receiving apparatus recognizes that retransmission is necessary because ACK does not return, the receiving apparatus that has already received the data packet performs reception processing by retransmitting only one corresponding receiving apparatus. A form to make it unnecessary is described.
図20は本実施の形態の構成図である。
本実施の形態では実施の形態1から実施の形態3のいずれかの送信装置101の構成に、再送先変更部118を追加している。
本実施の形態では、再送部113及び再送先変更部118が再送処理部の例に相当する。
FIG. 20 is a configuration diagram of the present embodiment.
In the present embodiment, retransmission
In the present embodiment,
次に、本実施の形態の動作について述べる。
本実施の形態では、再送部113におけるACK完了判定で再送を決定する際に、ACKが未到着の受信装置が1台である事を認識したときに再送先変更部118が動作する。
再送先変更部118は、再送の時にパケットを送るマルチキャストアドレスを、前記ACKが未到着の受信装置に割り当てられたマルチキャストアドレスに変更する。
つまり、本実施の形態では、再送部113は、データパケット送信部112により特定の受信グループに属する受信装置にデータパケットが送信された後、特定の受信グループに属する受信装置からACKパケットを受信するとともに、特定の受信グループに属する全ての受信装置から応答パケットを受信したか否かを確認する。
そして、応答パケットを受信しなかった受信装置が2台以上である場合は、再送部113は、特定の受信グループに属する全ての受信装置の複数の受信側NIC214の全てが宛先となる受信グループマルチキャストアドレスA200(図2参照)を設定して再送データパケットを作成する。
一方、ACKパケットを受信しなかった受信装置が1台である場合に、再送先変更部118が、ACKパケットを受信しなかった1台の受信装置の複数の受信側NIC214の全てが宛先となる受信装置マルチキャストアドレスA201等(単一マルチキャストアドレス)(図2参照)を設定して再送データパケットを作成する。
その後、再送データパケットが、データパケット送信部112により各送信側NIC114から送信される。
Next, the operation of this embodiment will be described.
In the present embodiment, when determining retransmission by ACK completion determination in
The retransmission
That is, in the present embodiment,
If there are two or more receiving devices that have not received the response packet, the
On the other hand, when there is one receiving apparatus that has not received the ACK packet, the retransmission
Thereafter, a retransmission data packet is transmitted from each transmission side NIC 114 by the data
これにより、再送されたデータパケットは前記ACKが未到着の受信装置にのみ配送されるようになり、既にデータを受信してACKが送信装置に届いている他の受信装置はパケットの受信や応答を行わなくて良いという効果を得ることができる。 As a result, the retransmitted data packet is delivered only to the receiving device to which the ACK has not arrived, and the other receiving device that has already received the data and has received the ACK has received the packet or received a response. The effect that it is not necessary to carry out can be obtained.
以上、本実施の形態では、送信装置に以下の手段を備えることで、再送が必要な受信装置が1台だけの場合に、その他の受信装置にデータパケットが届かないようにし、受信処理や応答処理を削減する冗長化グループ通信方式について説明した。
1)ACKが未到着の受信装置が1台だけであるか判定するステップと、1台だけである場合にデータパケットを再送する際のパケットの送り先を、前記ACKが未到着の受信装置のマルチキャストアドレスに書き換えるステップを持つ再送先変更部を備える。
As described above, in the present embodiment, by providing the following means in the transmitting apparatus, when only one receiving apparatus needs to be retransmitted, the data packet does not reach other receiving apparatuses, and reception processing and response A redundant group communication method for reducing processing has been described.
1) A step of determining whether there is only one receiving device that has not yet received an ACK, and, when there is only one, the destination of the packet when retransmitting the data packet, the multicast of the receiving device that has not received the ACK A retransmission destination changing unit having a step of rewriting to an address is provided.
最後に、実施の形態1〜4に示した送信装置101及び受信装置201のハードウェア構成例について説明する。
図21は、実施の形態1〜4に示す送信装置101及び受信装置201のハードウェア資源の一例を示す図である。
なお、図21の構成は、あくまでも送信装置101及び受信装置201のハードウェア構成の一例を示すものであり、送信装置101及び受信装置201のハードウェア構成は図21に記載の構成に限らず、他の構成であってもよい。
Finally, a hardware configuration example of the
FIG. 21 is a diagram illustrating an example of hardware resources of the
The configuration of FIG. 21 is merely an example of the hardware configuration of the
図21において、送信装置101及び受信装置201は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
In FIG. 21, the
The
Further, the
The
A
The
通信ボード915は、図1に示すように、ネットワークスイッチを介して相手方の装置(送信装置101又は受信装置201、202)に接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)などに接続されていても構わない。
As shown in FIG. 1, the
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The
The programs in the
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The
The
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
送信装置101及び受信装置201の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The
When the
上記プログラム群923には、実施の形態1〜4の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
The
ファイル群924には、実施の形態1〜4の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の評価」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜4で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the
The “˜file” and “˜database” are stored in a recording medium such as a disk or a memory. Information, data, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the
Information, data, signal values, variable values, and parameters are stored in the main memory, registers, cache memory, and buffers during the CPU operations of extraction, search, reference, comparison, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
In addition, arrows in the flowcharts described in the first to fourth embodiments mainly indicate input / output of data and signals, and the data and signal values are the
また、実施の形態1〜4の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜4の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜4の「〜部」の手順や方法をコンピュータに実行させるものである。
In addition, what is described as “to part” in the description of the first to fourth embodiments may be “to circuit”, “to device”, “to device”, and “to step”, It may be “˜procedure” or “˜processing”. That is, what is described as “˜unit” may be realized by firmware stored in the
このように、実施の形態1〜4に示す送信装置101及び受信装置201は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
As described above, the
101 送信装置、111 データパケット作成部、112 データパケット送信部、113 再送部、114 ネットワークインタフェース装置、115 再送回数計測部、116 経路管理部、117 経路切り替え部、118 再送先変更部、201 受信装置、202 受信装置、211 ACKパケット作成部、212 ACKパケット送信部、213 順序管理部、214 ネットワークインタフェース装置、215 後着判定部、216 経路管理部、217 経路切り替え部、300 ネットワークスイッチ。
DESCRIPTION OF
Claims (8)
各々が、相互に異なるネットワークスイッチを介して異なる送信側ネットワークインタフェース装置に接続され、送信側ネットワークインタフェース装置から送信されたデータパケットを受信する複数の受信側ネットワークインタフェース装置と、
受信したデータパケットに対する応答として、前記複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成する応答パケット作成部と、
前記応答パケット作成部により作成された応答パケットを各受信側ネットワークインタフェース装置から各受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置に向けて送信する応答パケット送信部とを有することを特徴とする受信装置。 A receiving device for receiving a data packet transmitted from a transmitting device having a plurality of transmitting side network interface devices each connected to a different network switch;
A plurality of receiving-side network interface devices, each of which is connected to a different transmitting-side network interface device via different network switches and receives data packets transmitted from the transmitting-side network interface device;
As a response to the received data packet, a response packet creating unit that creates a response packet including a transmission device multicast address to which all of the plurality of transmission side network interface devices are destinations;
A response packet transmitter configured to transmit the response packet generated by the response packet generator from each receiving network interface device to a transmitting network interface device connected to each receiving network interface device. A receiving device.
送信側ネットワークインタフェース装置から送信された、前記送信装置マルチキャストアドレスが含まれるデータパケットを受信し、
前記応答パケット作成部は、
いずれかの受信側ネットワークインタフェース装置が受信したデータパケットに含まれる前記送信装置マルチキャストアドレスを用いて前記応答パケットを作成することを特徴とする請求項1に記載の受信装置。 Each of the plurality of receiving side network interface devices includes:
Receiving a data packet including the transmission device multicast address transmitted from the transmission-side network interface device;
The response packet creation unit
The receiving apparatus according to claim 1, wherein the response packet is created using the transmitting apparatus multicast address included in the data packet received by any one of the receiving-side network interface apparatuses.
送信側ネットワークインタフェース装置から送信された、シーケンス番号が示されるデータパケットを受信し、
前記応答パケット作成部は、
同一のシーケンス番号が示される複数のデータパケットが前記複数の受信側ネットワークインタフェース装置により受信された場合でも、前記複数のデータパケットに対して一つの応答パケットを作成することを特徴とする請求項1又は2に記載の受信装置。 Each of the plurality of receiving side network interface devices includes:
Receiving a data packet transmitted from the transmission side network interface device indicating the sequence number;
The response packet creation unit
2. A response packet is created for the plurality of data packets even when a plurality of data packets having the same sequence number are received by the plurality of network interfaces on the receiving side. Or the receiving apparatus of 2.
送信側ネットワークインタフェース装置から再送された、シーケンス番号と再送回数が示される再送データパケットを受信し、
前記応答パケット作成部は、
同一のシーケンス番号と同一の再送回数が示される複数の再送データパケットが前記複数の受信側ネットワークインタフェース装置により受信された場合でも、前記複数の再送データパケットに対して一つの応答パケットを作成することを特徴とする請求項1〜3のいずれかに記載の受信装置。 Each of the plurality of receiving side network interface devices includes:
Receiving a retransmission data packet retransmitted from the network interface device on the transmission side and indicating the sequence number and the number of retransmissions;
The response packet creation unit
Even when a plurality of retransmission data packets indicating the same sequence number and the same number of retransmissions are received by the plurality of receiving side network interface devices, one response packet is created for the plurality of retransmission data packets. The receiving device according to any one of claims 1 to 3.
前記複数の送信側ネットワークインタフェース装置の各々からデータパケットを送信するデータパケット送信部とを有する送信装置と、
各々が、相互に異なるネットワークスイッチを介して異なる送信側ネットワークインタフェース装置に接続され、送信側ネットワークインタフェース装置から送信されたデータパケットを受信する複数の受信側ネットワークインタフェース装置と、
受信したデータパケットに対する応答として、前記複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成する応答パケット作成部と、
前記応答パケット作成部により作成された応答パケットを各受信側ネットワークインタフェース装置から各受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置に向けて送信する応答パケット送信部とを有する受信装置とを備えることを特徴とする通信システム。 A plurality of transmitting network interface devices each connected to a different network switch;
A transmission device having a data packet transmission unit for transmitting a data packet from each of the plurality of transmission-side network interface devices;
A plurality of receiving-side network interface devices, each of which is connected to a different transmitting-side network interface device via different network switches and receives data packets transmitted from the transmitting-side network interface device;
As a response to the received data packet, a response packet creating unit that creates a response packet including a transmission device multicast address to which all of the plurality of transmission side network interface devices are destinations;
A receiving device having a response packet transmitting unit configured to transmit the response packet generated by the response packet generating unit from each receiving-side network interface device to a transmitting-side network interface device connected to each receiving-side network interface device; A communication system comprising:
各々が複数の受信側ネットワークインタフェース装置を有し、2つ以上の受信グループに分類される複数の受信装置を備え、
前記送信装置において、
前記複数の送信側ネットワークインタフェース装置の各々は、
相互に異なるネットワークスイッチを介していずれかの受信装置のいずれかの受信側ネットワークインタフェース装置に接続されており、
前記送信装置は、更に、
送信側ネットワークインタフェース装置ごとに、ネットワークスイッチを介して接続されている受信側ネットワークインタフェース装置が含まれている受信装置が属する受信グループが示される接続先情報を記憶する接続先情報記憶部と、
特定の受信グループに対してデータパケットを送信する場合に、前記接続先情報に基づき、前記特定の受信グループに属する受信装置の受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置を抽出する送信側ネットワークインタフェース装置抽出部とを有し、
前記データパケット送信部は、
前記送信側ネットワークインタフェース装置抽出部により抽出された送信側ネットワークインタフェース装置から前記特定の受信グループに対するデータパケットを送信することを特徴とする請求項5に記載の通信システム。 The communication system is:
Each having a plurality of receiving-side network interface devices, comprising a plurality of receiving devices classified into two or more receiving groups;
In the transmitter,
Each of the plurality of transmission side network interface devices includes:
Connected to any receiving network interface device of any receiving device through different network switches,
The transmitting device further includes:
A connection destination information storage unit for storing connection destination information indicating a reception group to which a reception device including a reception side network interface device connected via a network switch belongs for each transmission side network interface device;
When transmitting a data packet to a specific reception group, a transmission side network interface device connected to the reception side network interface device of the reception device belonging to the specific reception group is extracted based on the connection destination information. A transmission-side network interface device extraction unit;
The data packet transmitter is
6. The communication system according to claim 5, wherein a data packet for the specific reception group is transmitted from the transmission side network interface device extracted by the transmission side network interface device extraction unit.
前記データパケット送信部により特定の受信グループに属する受信装置にデータパケットが送信された後、前記特定の受信グループに属する受信装置から応答パケットを受信するとともに、前記特定の受信グループに属する全ての受信装置から応答パケットを受信したか否かを確認し、応答パケットを受信しなかった受信装置が2台以上である場合に、前記特定の受信グループに属する全ての受信装置の複数の受信側ネットワークインタフェース装置の全てが宛先となる受信グループマルチキャストアドレスを設定して再送データパケットを作成し、応答パケットを受信しなかった受信装置が1台である場合に、応答パケットを受信しなかった前記1台の受信装置の複数の受信側ネットワークインタフェース装置の全てが宛先となる単一マルチキャストアドレスを設定して再送データパケットを作成する再送処理部を有することを特徴とする請求項6に記載の通信システム。 The transmission device further receives a response packet from the reception device belonging to the specific reception group after the data packet is transmitted to the reception device belonging to the specific reception group by the data packet transmission unit, and the specific reception It is confirmed whether or not response packets have been received from all receiving devices belonging to the group, and when there are two or more receiving devices that have not received response packets, all of the receiving devices belonging to the specific receiving group A receiving packet is created by setting a receiving group multicast address to which all of a plurality of receiving side network interface devices are set as destinations, and a response packet is received when one receiving device has not received a response packet. All of the plurality of receiving side network interface devices of the one receiving device that did not exist The communication system according to claim 6, further comprising: a retransmission processing unit that sets a single multicast address as a destination and creates a retransmission data packet.
各々が複数の送信側ネットワークインタフェース装置を有する複数の送信装置を備え、
前記受信装置において、
前記複数の受信側ネットワークインタフェース装置の各々は、
相互に異なるネットワークスイッチを介していずれかの送信装置のいずれかの送信側ネットワークインタフェース装置に接続されており、
前記受信装置は、更に、
受信側ネットワークインタフェース装置ごとに、ネットワークスイッチを介して接続されている送信側ネットワークインタフェース装置が含まれている送信装置が示される接続先情報を記憶する接続先情報記憶部と、
いずれかの送信装置から受信したデータパケットに対する応答パケットを送信する場合に、前記接続先情報に基づき、応答パケットの送信先の送信装置の送信側ネットワークインタフェース装置に接続されている受信側ネットワークインタフェース装置を抽出する受信側ネットワークインタフェース装置抽出部とを有し、
前記応答パケット送信部は、
前記受信側ネットワークインタフェース装置抽出部により抽出された受信側ネットワークインタフェース装置から応答パケットを送信することを特徴とする請求項5〜7のいずれかに記載の通信システム。 The communication system is:
A plurality of transmission devices each having a plurality of transmission side network interface devices;
In the receiving device,
Each of the plurality of receiving side network interface devices includes:
It is connected to one of the transmission side network interface devices of one of the transmission devices via mutually different network switches,
The receiving device further includes:
A connection destination information storage unit for storing connection destination information indicating a transmission device including a transmission side network interface device connected via a network switch for each reception side network interface device;
When transmitting a response packet to a data packet received from any of the transmission apparatuses, the reception-side network interface apparatus connected to the transmission-side network interface apparatus of the transmission apparatus that is the transmission destination of the response packet based on the connection destination information A receiving-side network interface device extracting unit for extracting
The response packet transmitter
8. The communication system according to claim 5, wherein a response packet is transmitted from the reception side network interface device extracted by the reception side network interface device extraction unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007299969A JP4969421B2 (en) | 2007-11-20 | 2007-11-20 | Receiving apparatus and communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007299969A JP4969421B2 (en) | 2007-11-20 | 2007-11-20 | Receiving apparatus and communication system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009130405A JP2009130405A (en) | 2009-06-11 |
JP4969421B2 true JP4969421B2 (en) | 2012-07-04 |
Family
ID=40820941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007299969A Active JP4969421B2 (en) | 2007-11-20 | 2007-11-20 | Receiving apparatus and communication system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4969421B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2482567B1 (en) | 2009-09-27 | 2016-05-04 | ZTE Corporation | Method and apparatus for status transition |
JP2012227778A (en) * | 2011-04-20 | 2012-11-15 | Nec Corp | Relay device, communication system, communication method, and program |
EP2839384B1 (en) | 2012-04-18 | 2018-10-24 | Acme Packet, Inc. | Redundancy for real time communications |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10336201A (en) * | 1997-06-02 | 1998-12-18 | Kofu Nippon Denki Kk | Network system |
JP2002314628A (en) * | 2001-04-12 | 2002-10-25 | Mitsubishi Electric Corp | Method and system for communication |
-
2007
- 2007-11-20 JP JP2007299969A patent/JP4969421B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009130405A (en) | 2009-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6545981B1 (en) | System and method for implementing error detection and recovery in a system area network | |
JP4851585B2 (en) | COMMUNICATION METHOD FOR SYSTEM COMPRISING CLIENT DEVICE AND MULTIPLE SERVER DEVICE, ITS COMMUNICATION PROGRAM, CLIENT DEVICE, AND SERVER DEVICE | |
US9385842B2 (en) | Systems and methods for switching data at nodes of wireless networks | |
JP4794629B2 (en) | Fault tolerant communication in routed networks | |
US7991877B2 (en) | Rogue router hunter | |
US7876751B2 (en) | Reliable link layer packet retry | |
US7929422B2 (en) | Method of moving a transport connection among network hosts | |
US6760766B1 (en) | Data transmission method and device | |
US11799738B2 (en) | Communication of a message using a network interface controller on a subnet | |
JP5250767B2 (en) | Redundant 3-wire communication system and method | |
JP4969421B2 (en) | Receiving apparatus and communication system | |
US20060176904A1 (en) | Method for sharing a transport connection across a multi-processor platform with limited inter-processor communications | |
JP6182779B1 (en) | Transfer device, transfer method, and program | |
KR100844999B1 (en) | Method and system for data transmitting between local servers connected to each other via local network and outside server | |
JP6207710B1 (en) | Transfer control device, transfer control method, and program | |
WO2023222235A1 (en) | Switch controller, sending controller and methods for use in switch controller and sending controller in reliable multicast communication | |
CN116073962A (en) | Early retransmission for hardware reliable transmissions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100916 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111220 |
|
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: 20120306 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120403 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150413 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4969421 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |