JP2015109532A - Communication system and communication device - Google Patents

Communication system and communication device Download PDF

Info

Publication number
JP2015109532A
JP2015109532A JP2013250707A JP2013250707A JP2015109532A JP 2015109532 A JP2015109532 A JP 2015109532A JP 2013250707 A JP2013250707 A JP 2013250707A JP 2013250707 A JP2013250707 A JP 2013250707A JP 2015109532 A JP2015109532 A JP 2015109532A
Authority
JP
Japan
Prior art keywords
packet
lifetime
service
calculated
multicast
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.)
Pending
Application number
JP2013250707A
Other languages
Japanese (ja)
Inventor
路 劉
Michi Ryu
路 劉
山本 信行
Nobuyuki Yamamoto
信行 山本
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013250707A priority Critical patent/JP2015109532A/en
Publication of JP2015109532A publication Critical patent/JP2015109532A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a method for effective use of a band in multicast communication.SOLUTION: Only a multicast transmission node holds a management table that holds topology information on nodes constituting a ring network, and information on which node a client requesting reception of a multicast packet belongs to. When the multicast transmission node transmits a multicast packet, if it detects presence of a node which it wants the multicast to reach on a network, the number of hops is calculated from a transmission source node to that node from the value of a TTL, and is given as a TTL of the multicast packet. The multicast packet reaches the node which the packet is desired to reach and after that the packet is discarded by the TTL value; whereby, a network band of a node beyond that node becomes vacant, and in the ring network, effective use of a network band can be achieved.

Description

本発明は、通信システム及び通信装置に関する。   The present invention relates to a communication system and a communication apparatus.

マルチキャスト通信では、一般的に、マルチキャストサービスを提供するサーバからサービスを要求するクライアントに対してマルチキャストパケットを送信するため、送信元のノードからネットワークに所属する全てのノードに対してマルチキャストパケットが送信されることになる。この場合、サービスを提供される必要のないノードにもマルチキャストパケットを送信するため、ネットワークの実効帯域が圧迫され、有効に活用することができない。複数のサービスが存在する場合、さらにネットワークの実効帯域が圧迫されることになる。   In multicast communication, in general, a multicast packet is transmitted from a server that provides a multicast service to a client that requests the service, so that the multicast packet is transmitted from the transmission source node to all nodes belonging to the network. Will be. In this case, since multicast packets are also transmitted to nodes that do not need to be provided with services, the effective bandwidth of the network is compressed and cannot be used effectively. When there are a plurality of services, the effective bandwidth of the network is further compressed.

この点、国際公開WO2004/064335号公報(特許文献1)には、「リング型ネットワークにおいて、マルチキャストで通信する送信ホスト及び受信ノードは、マルチキャスト通信に係るノードを示す、エントリ情報を共有する。また、この送信ノード及び受信ノードは、前記エントリ情報をリング型ネットワーク上でブロードキャストし、前記リング型ネットワーク上の位置関係に係る、トポロジ情報を各ノード間で共有する。また、前記送信ノードは、前記エントリ情報及び前記トポロジ情報を参照して、マルチキャスト送信する情報の送信方向を決定し、情報を当該送信方向にマルチキャスト送信する。さらに、前記受信ノードは、当該送信方向に前記情報を受信する他の受信ノードが存在しない場合に、前記情報を廃棄する」と記載されている(要約参照)。つまり、特許文献1では、リング型ネットワークに所属する全てのノードがネットワーク内全ての情報を収容した管理テーブルを保持し、且つマルチキャストサービスごとに管理テーブルを持つことで、個々のノードが互いのノードの状況を知ることができ、リング型ネットワークでのマルチキャスト通信における帯域有効利用を可能としている(特許文献1の「発明の開示」参照)。   In this regard, International Publication WO 2004/064335 (Patent Document 1) states that “in a ring network, a transmission host and a reception node that communicate by multicast share entry information indicating a node related to multicast communication. The transmitting node and the receiving node broadcast the entry information on the ring network and share topology information related to the positional relationship on the ring network between the nodes. Referring to the entry information and the topology information, the transmission direction of the information to be transmitted by multicast is determined, the information is multicast transmitted in the transmission direction, and the receiving node receives the information in the transmission direction. Discard the information when there is no receiving node It has been described (see Abstract). In other words, in Patent Document 1, all nodes belonging to a ring network hold a management table containing all information in the network, and each management node has a management table so that individual nodes can communicate with each other. Thus, it is possible to effectively use the bandwidth in the multicast communication in the ring network (see “Disclosure of the Invention” in Patent Document 1).

WO2004/064335号公報WO2004 / 064335

特許文献1では、各ノードがマルチキャストサービス毎に管理テーブルを持つ必要があるため、マルチキャストサービス数と管理テーブルのエントリ数が比例する。マルチキャストサービスが多数ある場合には、管理テーブルの領域が増え、全ノードの管理テーブルの更新処理を行う必要があるため、全ノードでの処理負荷が重くなり、ネットワーク全体の処理負荷が重くなることが予想される。   In Patent Document 1, since each node needs to have a management table for each multicast service, the number of multicast services is proportional to the number of entries in the management table. If there are many multicast services, the management table area will increase, and it will be necessary to update the management table on all nodes. This will increase the processing load on all nodes and increase the processing load on the entire network. Is expected.

したがって、特許文献1の技術では、マルチキャストサービスを提供するネットワークでのマルチキャスト通信において、ネットワークの実効帯域を圧迫することなく、実効帯域を有効に活用しつつ、ノードでの処理負荷およびネットワーク全体の処理負荷を軽減させることはできなかった。   Therefore, in the technique of Patent Document 1, in the multicast communication in the network that provides the multicast service, the processing load at the node and the processing of the entire network are performed while effectively using the effective bandwidth without reducing the effective bandwidth of the network. The load could not be reduced.

本発明はこのような従来の技術の問題点に鑑みてなされたものである。即ち、本発明の課題は、マルチキャストサービスを提供するネットワークでのマルチキャスト通信において、ネットワークの実効帯域を圧迫することなく、実効帯域を有効に活用しつつ、ノードでの処理負荷およびネットワーク全体の処理負荷を軽減させることにある   The present invention has been made in view of such problems of the conventional technology. That is, an object of the present invention is to provide a processing load at a node and a processing load of the entire network while effectively utilizing the effective bandwidth without reducing the effective bandwidth of the network in multicast communication in a network that provides a multicast service. Is to reduce

本発明は上記課題を解決するために、複数の通信装置間でパケットを送受信する通信システムにおいて、通信装置は、パケットを送信する第1の送信部と、マルチキャストパケットにて配信されるサービスを識別する識別子とパケットが他の通信装置にて転送される毎に値が減少する第1の生存時間とを対応づけて記憶する第1の記憶部と、各部を制御する第1の制御部とを備え、他の通信装置は、パケットを送信する第2の送信部と、第1の生存時間を記憶する第2の記憶部と、各部を制御する第2の制御部とを備え、第1の制御部は、第1の記憶部に記憶する第1の生存時間を付与した他の通信装置との間の制御に用いる制御用のマルチキャストパケットを第1の送信部に送信させ、第2の制御部は、制御用のマルチキャストパケットを受信すると、第2の記憶部に記憶する第1の生存時間を付与した通信装置との間の制御に用いる制御用のパケットを第2の送信部に送信させ、第1の制御部は、制御用のパケットを受信すると、受信した制御用のパケットから第1の生存時間を読み出し、読み出した第1の生存時間と第1の記憶部に記憶する第1の生存時間とに基づいて、制御用のパケットが他の通信装置にて転送された回数を算出し、算出した回数を、サービスを配信するマルチキャストパケットが他の通信装置にて転送される毎に値が減少する第2の生存時間として識別子と対応づけて第1の記憶部に記憶させ、第2の生存時間を付与したサービスを配信するマルチキャストパケットを第1の送信部から送信させることを特徴とする通信システムを有する。   In order to solve the above-described problem, in the communication system that transmits and receives a packet between a plurality of communication devices, the communication device identifies a first transmission unit that transmits the packet and a service distributed by the multicast packet. A first storage unit that stores an identifier to be associated with a first lifetime that decreases every time a packet is transferred by another communication device, and a first control unit that controls each unit The other communication device includes a second transmission unit that transmits the packet, a second storage unit that stores the first lifetime, and a second control unit that controls each unit, The control unit causes the first transmission unit to transmit a control multicast packet used for control with another communication device to which the first lifetime is stored, which is stored in the first storage unit. Control multicast packets for control The first transmission unit transmits a control packet used for control with the communication device to which the first lifetime is stored, stored in the second storage unit, to the second transmission unit. When the first packet is received, the first lifetime is read from the received control packet, and the first lifetime is stored in the first storage unit based on the read first lifetime and the first lifetime stored in the first storage unit. Is calculated as the second lifetime in which the value decreases every time a multicast packet for delivering a service is transferred by another communication device. There is provided a communication system characterized in that a multicast packet for distributing a service assigned with a second lifetime is transmitted from a first transmission unit in association with an identifier and stored in a first storage unit.

本発明によれば、一つのマルチキャストサービスに対して、送信元のノードが所望の送信範囲に対してマルチキャストパケットを送信することができる。そのため、マルチキャストサービスを提供するネットワークでのマルチキャスト通信において、ネットワークの実効帯域を圧迫することなく、実効帯域を有効に活用しつつ、ノードの処理負荷を軽減させ、ネットワーク全体の処理負荷を軽減させることができる。   ADVANTAGE OF THE INVENTION According to this invention, a transmission source node can transmit a multicast packet with respect to a desired transmission range with respect to one multicast service. Therefore, in multicast communication in a network that provides a multicast service, the effective bandwidth is effectively used without reducing the effective bandwidth of the network, and the processing load of the node is reduced while reducing the processing load of the entire network. Can do.

リング型MPLSネットワークの構成図の例である。It is an example of a block diagram of a ring type MPLS network. MPLSパケットヘッダフォーマットの図の例である。It is an example of the figure of a MPLS packet header format. 送信ノードのブロック構成図の例である。It is an example of the block block diagram of a transmission node. 受信ノードのブロック構成図の例である。It is an example of the block block diagram of a receiving node. 送受信ノードのブロック構成図の例である。It is an example of the block block diagram of a transmission / reception node. サービス配信におけるシーケンス図の例である。It is an example of the sequence diagram in service delivery. パケットを受信した送信ノードの動作フローチャート図の例である。It is an example of the operation | movement flowchart figure of the transmission node which received the packet. サービス配信における受信ノードの動作フローチャート図の例である。It is an example of the operation | movement flowchart figure of the receiving node in service delivery. 送信ノードが有する管理テーブルの構成例である。It is a structural example of the management table which a transmission node has. 複数のサービスがある場合のサービス送信範囲図の例である。It is an example of a service transmission range diagram when there are a plurality of services. 複数のサービスがある場合の各送信ノードが有する管理テーブルの構成例である。It is a structural example of the management table which each transmission node has when there are a plurality of services.

以下、図面を用いて本発明の実施形態を詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

本実施の形態における、ネットワークの概念の例を図1に示す。本実施の形態では、ネットワークとして、リング型MPLS(Multi Protocol Label Switching)ネットワークを例に説明する。なお、リング型ネットワーク以外のマルチキャストサービスを提供するネットワークにも本発明を適用することが可能である。   An example of the concept of a network in this embodiment is shown in FIG. In the present embodiment, a ring type MPLS (Multi Protocol Label Switching) network will be described as an example of the network. It should be noted that the present invention can also be applied to a network that provides a multicast service other than a ring network.

MPLSとは、例えば、レイヤ3の転送情報を基に識別されるパケットフローについて、固定長のラベルを割当てて、ラベルに基づいて転送することによって、パケット毎のIP(Internet Protocol)層の転送処理を省略する技術である。   MPLS refers to, for example, an IP (Internet Protocol) layer transfer process for each packet by assigning a fixed-length label to a packet flow identified based on layer 3 transfer information and transferring the packet based on the label. This is a technology that omits.

リング型MPLSネットワークは、パケットを送受信する通信装置であるノード101、102(ノード102、102−1〜102−3)と、サービス配信サーバ111、クライアント112で構成される。ノード101は、CPU(Central Processing Unit)、FPGA(Field−Programmable Gate Array)、メモリ、各種光モジュールなどから構成される。詳細は後述するが、CPUには、送信制御部、FPGAにはEoMPLS(Ethernet(登録商標。以下同じ。) over MPLS)変換部やTTL判定部、サービス判定部、メモリには、送信記憶部などが格納され、動作する。また、ノード102も同様に、CPUには、受信制御部、FPGAにはEoMPLS変換部やTTL判定部、パケット判定部、マルチキャスト部、メモリには、受信記憶部などが格納され、動作する。   The ring-type MPLS network includes nodes 101 and 102 (nodes 102 and 102-1 to 102-3), which are communication apparatuses that transmit and receive packets, a service distribution server 111, and a client 112. The node 101 includes a CPU (Central Processing Unit), an FPGA (Field-Programmable Gate Array), a memory, and various optical modules. Although details will be described later, the CPU includes a transmission control unit, the FPGA includes an EoMPLS (Ethernet (registered trademark), the same applies hereinafter) over MPLS conversion unit, a TTL determination unit, a service determination unit, a memory includes a transmission storage unit, and the like. Is stored and works. Similarly, the node 102 also stores and operates a reception control unit in the CPU, an EoMPLS conversion unit or TTL determination unit, a packet determination unit, a multicast unit, and a memory in the FPGA.

ここではリング型MPLSネットワークにおける右回り方向(時計回り方向)を0系、左回り方向(反時計回り)を1系とする。各ノードは、他のノードとMPLSヘッダが付与されたMPLSパケットを送受信する。 本実施例の基本的な考え方を説明する。サービス配信サーバ111が接続されるノード101(以下、「送信ノード101」という。)に、マルチキャストサービスのサービス名901及びマルチキャストサービス配信範囲である送信TTL(Time To Live)値902と初期TTL値903を対応づける管理テーブル900(図9)を持たせる。   Here, the clockwise direction (clockwise direction) in the ring-type MPLS network is 0 system, and the counterclockwise direction (counterclockwise direction) is 1 system. Each node transmits / receives an MPLS packet to which an MPLS header is added to / from another node. The basic concept of the present embodiment will be described. A service name 901 of a multicast service, a transmission TTL (Time To Live) value 902 that is a multicast service distribution range, and an initial TTL value 903 are transmitted to a node 101 (hereinafter referred to as “transmission node 101”) to which the service distribution server 111 is connected. Management table 900 (FIG. 9).

ここで、サービス名とは、各サービスを識別する任意の識別子である。本実施例では、マルチキャストサービスとして、ビデオ映像などのコンテンツ配信サービスや各種情報を配信する情報配信サービスなどを想定するが、これらに限られるものではない。   Here, the service name is an arbitrary identifier for identifying each service. In this embodiment, as a multicast service, a content distribution service such as a video image or an information distribution service that distributes various types of information is assumed. However, the present invention is not limited to these.

TTL値は、パケットの有効期間や生存時間を表す値であり、最大「255」までの整数値で表される。ノード101または102を1回経由されるたびに、すなわち、ノード101または102にてパケットを中継、転送するたびに値が1減少する生存値である。TTL値が0になったパケットはそのノード101または102で廃棄される。このように、TTL値は、転送の基準となる値である。なお、TTL値はIpv6のHop Limit値などであってもよい。   The TTL value is a value that represents the valid period or lifetime of the packet, and is represented by an integer value up to “255”. This is a survival value whose value decreases by 1 every time the node 101 or 102 is routed once, that is, every time a packet is relayed or transferred by the node 101 or 102. A packet whose TTL value is 0 is discarded at the node 101 or 102. Thus, the TTL value is a value serving as a reference for transfer. The TTL value may be the Hop Limit value of Ipv6.

マルチキャストサービス配信範囲とは、マルチキャストサービス配信に用いるマルチキャストパケットの送信範囲を意味する。送信TTL値902とは、マルチキャストパケットを送信する際の送信用のTTL値である。初期TTL値903とは、サービスの開始を通知するパケットであるクエリパケット(以下、「パケット(クエリー)」とする。)を送信する際のTTL値である。なお、詳細は後述するが、初期TTL値903と同じ値が、ノード102にシステムで予め定められたTTL値として記憶されており、ノード102がサービスを受信することを送信ノード101に応答するパケットである参加通知パケット(パケット(レポート))を送信する際のTTL値として使用される。   The multicast service distribution range means a transmission range of multicast packets used for multicast service distribution. The transmission TTL value 902 is a TTL value for transmission when a multicast packet is transmitted. The initial TTL value 903 is a TTL value at the time of transmitting a query packet (hereinafter referred to as “packet (query)”) that is a packet for notifying the start of the service. Although details will be described later, the same value as the initial TTL value 903 is stored in the node 102 as a TTL value predetermined in the system, and a packet that responds to the transmitting node 101 that the node 102 receives the service Is used as a TTL value when transmitting a participation notification packet (packet (report)).

マルチキャストパケットの送信範囲を制御する方法としては、マルチキャストサービス配信時のTTL値を制御する方法を用いる。本実施例では、TTL値をマルチキャストパケットの送信範囲を制御する方法として使用する。   As a method of controlling the transmission range of the multicast packet, a method of controlling the TTL value at the time of multicast service distribution is used. In this embodiment, the TTL value is used as a method for controlling the transmission range of the multicast packet.

ここで、MPLSパケットヘッダフォーマットの例を図2を用いて説明する。ラベル201は、20ビットの整数で、0〜1048575の間で付与されて、転送先を決定する識別子である。また、ラベル201でマルチキャストパケット、ユニットキャストパケット、パケット(クエリー)、パケット(レポート)などのパケットタイプを区別することができる。TC(Traffic Class)202は、トラフィッククラスを決定するフィールドである。Sはスタックビットで、MPLSのラベル201を1つのMPLSパケットに2つ以上おく場合に、最後のラベルを示すフィールドである。   Here, an example of the MPLS packet header format will be described with reference to FIG. A label 201 is a 20-bit integer and is an identifier that is given between 0 and 1048575 and determines a transfer destination. The label 201 can distinguish packet types such as a multicast packet, a unit cast packet, a packet (query), and a packet (report). A TC (Traffic Class) 202 is a field for determining a traffic class. S is a stack bit, and is a field indicating the last label when two or more MPLS labels 201 are placed in one MPLS packet.

TTL204はパケットの有効期間を表す値であり、上述のように、最大「255」までの整数値で表され、ノード101または102を1回経由されるたびに値が1減少する。TTL値が「0」になったパケットはそのノード101または102で廃棄される。パス設定の誤りや物理接続の誤りによるパケットの無限ループを防止する機能である。各ノード101または102がパケットにTTL値を付与する際には、MPLSヘッダのTTL204に付与される。   The TTL 204 is a value representing the valid period of the packet, and is represented by an integer value up to “255” as described above. The value is decreased by 1 each time the node 101 or 102 is passed through. A packet whose TTL value is “0” is discarded at the node 101 or 102. This function prevents an infinite loop of packets due to path setting errors or physical connection errors. When each node 101 or 102 assigns a TTL value to a packet, it is assigned to the TTL 204 of the MPLS header.

ノード間の動作の概要を説明すると、サービス配信サーバ111がサービスの配信時にサービスの開始を通知するパケット(クエリー)を各クライアント112に対して送信ノード101経由で0系方向に送信し、サービスのサービス名を送信ノード101の管理テーブル900(図9)のサービス名901に記憶する。このパケット(クエリー)は、マルチキャストサービスを受信するか否か、つまり、マルチキャストパケットを配信するグループに参加するか否かを問い合わせる制御用のマルチキャストパケットである。この際、パケット(クエリー)には、管理テーブル900の初期TTL値903に記憶されたTTL値を付与する。この初期TTL値903に記憶されたTTL値は、システムで予め定められたTTL値である。このシステムで予め定められたTTL値は、本実施例では、「255」を設定する。初期TTL値903は、ネットワークの構成によって適宜設定が可能である。   The outline of the operation between the nodes will be described. The service distribution server 111 transmits a packet (query) notifying the start of the service at the time of service distribution to each client 112 via the transmission node 101 in the 0-system direction. The service name is stored in the service name 901 of the management table 900 (FIG. 9) of the transmission node 101. This packet (query) is a multicast packet for control that inquires whether or not to receive a multicast service, that is, whether or not to join a group that distributes multicast packets. At this time, the TTL value stored in the initial TTL value 903 of the management table 900 is assigned to the packet (query). The TTL value stored in the initial TTL value 903 is a TTL value predetermined by the system. In this embodiment, “255” is set as the TTL value predetermined in this system. The initial TTL value 903 can be set as appropriate depending on the network configuration.

サービスの受信を希望する各クライアント112がパケット(クエリー)を受けると、サービス配信サーバ111に対して参加通知パケットであるレポートと呼ばれるパケットを各ノード102(以下、「受信ノード102」という。)経由で1系方向に送信する。このパケット(レポート)は、サービスを受信し、マルチキャストパケットを配信するグループに参加する旨を通知する制御用のパケットである。その時、サービス配信サーバ111に対して送信するパケット(レポート)に付与するTTL値は、パケット(クエリー)に付与された初期TTL値903と同じく、システムで予め定められたTTL値である「255」である。   When each client 112 that wishes to receive a service receives a packet (query), a packet called a report, which is a participation notification packet, is sent to each service delivery server 111 via each node 102 (hereinafter referred to as “receiving node 102”). To transmit in the 1 system direction. This packet (report) is a control packet for notifying that a service is received and a multicast packet is distributed. At this time, the TTL value assigned to the packet (report) transmitted to the service distribution server 111 is “255”, which is a TTL value predetermined in the system, similar to the initial TTL value 903 assigned to the packet (query). It is.

送信ノード101は1系方向からパケット(レポート)を受信し、その中に含まれるTTL値を読み出すことにより、送信時の初期TTL値903「255」から読み出したTTL値を引くことで、パケット(レポート)が、各受信ノード102で中継、転送された回数であり通過したノード数であるホップ数を算出する。つまり、「初期TTL値―読みだしたTTL値=通過したノード数(ホップ数)」であり、TTL値の減少量が、パケット(レポート)が通過したノード数(ホップ数)であることを算出可能である。この算出したホップ数に「1」を加えた値であるTTL値を送信TTL値902として管理テーブル900に記録し、記録した送信TTL値902をサービス配信時のTTL値として使用する。算出したホップ数に「1」を加えるのは、送信ノード101が、最も隣接する受信ノード102、つまり、ホップ数が「0」の受信ノード102に対して送信するパケットのTTL値は、少なくとも「1」である必要があるからである。上述したノード数(ホップ数)およびサービス配信時のTTL値の算出方法は例であって、ノード数(ホップ数)が算出でき、サービス配信時のTTL値が最も隣接するノードに送信可能なTTL値を算出することができる算出方法であればよい。   The transmission node 101 receives a packet (report) from the 1-system direction, and reads the TTL value included in the packet, thereby subtracting the read TTL value from the initial TTL value 903 “255” at the time of transmission. The report) calculates the number of hops, which is the number of relayed and transferred by each receiving node 102 and the number of nodes that have passed. That is, “initial TTL value−read TTL value = number of nodes passed (number of hops)”, and the amount of decrease in the TTL value is calculated as the number of nodes (number of hops) that the packet (report) has passed. Is possible. A TTL value obtained by adding “1” to the calculated number of hops is recorded as a transmission TTL value 902 in the management table 900, and the recorded transmission TTL value 902 is used as a TTL value at the time of service distribution. “1” is added to the calculated number of hops because the TTL value of the packet transmitted from the transmitting node 101 to the most adjacent receiving node 102, that is, the receiving node 102 having the hop number “0” is at least “ This is because it needs to be “1”. The above-described method for calculating the number of nodes (hops) and the TTL value at the time of service distribution is an example, and the number of nodes (number of hops) can be calculated, and the TTL value at the time of service distribution can be transmitted to the nearest node Any calculation method that can calculate a value may be used.

記録した送信TTL値902をサービス配信時のTTL値として送信ノード101が、サービスを提供するマルチキャストパケットに付与すると、サービスを受信したい受信ノード102まで配信でき、その先はTTL値が「0」となるため、マルチキャストパケットが廃棄され、即ち、その先の帯域を占有しなくなる。   When the transmission node 101 assigns the recorded transmission TTL value 902 as a TTL value at the time of service distribution to the multicast packet that provides the service, it can be distributed to the receiving node 102 that wants to receive the service, and the TTL value is “0” after that. Therefore, the multicast packet is discarded, that is, it does not occupy the band ahead.

本実施例では、送信ノード101が0系方向にパケット(クエリー)を送信し、1系方向からパケット(レポート)を受信する例で各ノードの動作および機能を説明するが、この逆、すなわち、1系方向にパケット(クエリー)を送信し、0系方向からパケット(レポート)を受信することも可能である。この場合、本実施例では説明しないが、各ノードには、これを実現するのに必要な機能部が備わっている。   In the present embodiment, the operation and function of each node will be described with an example in which the transmission node 101 transmits a packet (query) in the 0-system direction and receives a packet (report) from the 1-system direction. It is also possible to transmit a packet (query) in the 1-system direction and receive a packet (report) from the 0-system direction. In this case, although not described in the present embodiment, each node is provided with a functional unit necessary to realize this.

ノードの内部ブロック構成の例を図3及び図4に示す。なお、図3及び図4で同様の動作をする機能部には同じ符号を付し、図3にて説明し、図4では説明しない。   Examples of the internal block configuration of the node are shown in FIGS. In addition, the same code | symbol is attached | subjected to the function part which carries out the same operation | movement by FIG.3 and FIG.4, and it demonstrates in FIG.

図3は、サービス配信サーバ111が接続される送信ノード101の内部ブロック構成図の例である。送信ノード101は、リング型MPLSネットワークにおける右回り方向(0系)からのパケットを受信するパケット受信部301と、0系にパケットを送信するパケット送信部302と、左回り方向(1系)からのパケットを受信するパケット受信部303と、1系にパケットを送信するパケット送信部304と、受信したパケットからTTL値を検知し廃棄か転送かを決め、転送する場合はパケットのTTL値を1減じて転送するTTL判定部306と、サービス配信サーバ111から受信するEthernetパケットにMPLSヘッダを付与してMPLSパケットに変換し、サービス配信サーバ111に送信するMPLSパケットからMPLSヘッダを削除してEthernetパケットに変換するEoMPLS変換部305と、自ノードの提供するサービスか否かを判定するサービス判定部307と、装置全体の制御を行う送信制御部308と、管理テーブル900を記憶する送信記憶部309から構成されている。   FIG. 3 is an example of an internal block configuration diagram of the transmission node 101 to which the service distribution server 111 is connected. The transmission node 101 includes a packet receiving unit 301 that receives a packet from the clockwise direction (system 0) in the ring MPLS network, a packet transmission unit 302 that transmits a packet to the system 0, and a counterclockwise direction (system 1). A packet receiving unit 303 for receiving a packet of the packet, a packet transmitting unit 304 for transmitting a packet to the first system, a TTL value is detected from the received packet, and it is determined whether it is discarded or transferred. The TTL determination unit 306 that transmits the reduced packet and the Ethernet packet received from the service distribution server 111 adds an MPLS header to convert the packet into an MPLS packet, and deletes the MPLS header from the MPLS packet that is transmitted to the service distribution server 111. EoMPLS conversion unit 305 for converting to And determining the service determination unit 307 whether the service or not to provide the over-de, a transmission control unit 308 that controls the entire apparatus, and a transmission storage unit 309 for storing management table 900.

なお、レイヤ2のパケットを本実施例では、具体例として「Ethernetパケット」と呼ぶが、これに限定される趣旨ではない。   In this embodiment, the layer 2 packet is referred to as an “Ethernet packet” as a specific example, but the present invention is not limited to this.

送信制御部308は、受信したパケット(レポート)のTTL値によってパケット(レポート)を送信した受信ノード102との距離(ホップ数)を演算し、管理テーブル900を書き換えるTTL演算部310としても動作する。また、EoMPLS変換部305に対して、送信記憶部309に記憶される管理テーブル900の初期TTL値903に記憶されたTTL値をMPLSパケット(クエリー)に付与する指示を与える制御を行う。また、管理テーブル900にマルチキャストサービスグループのエントリを記録する制御を行う。   The transmission control unit 308 also operates as a TTL calculation unit 310 that rewrites the management table 900 by calculating the distance (number of hops) from the reception node 102 that transmitted the packet (report) based on the TTL value of the received packet (report). . Further, the EoMPLS conversion unit 305 is controlled to give an instruction to give the TTL value stored in the initial TTL value 903 of the management table 900 stored in the transmission storage unit 309 to the MPLS packet (query). Also, control is performed to record the entry of the multicast service group in the management table 900.

図4は、クライアント112が接続される受信ノード102の内部ブロック構成図の例である。受信ノード102は、0系受信部301から受信したパケットが、マルチキャストパケットか否かを判定するパケット判定部311と、マルチキャストパケットを処理するマルチキャスト部312と、サービスを受信するクライアント112に送信するMPLSパケットをEthernetパケットに変換し、クライアント112から受信するEthernetパケットをMPLSパケットに変換するEoMPLS変換部305、装置全体の制御を行う受信制御部313、システムで予め定められたTTL値を記憶する受信記憶部314から構成されている。   FIG. 4 is an example of an internal block configuration diagram of the receiving node 102 to which the client 112 is connected. The receiving node 102 determines whether or not the packet received from the 0-system receiving unit 301 is a multicast packet, a multicast determination unit 312 that processes the multicast packet, and an MPLS that is transmitted to the client 112 that receives the service. An EoMPLS conversion unit 305 that converts packets into Ethernet packets and converts Ethernet packets received from the client 112 into MPLS packets, a reception control unit 313 that controls the entire apparatus, and a reception memory that stores a TTL value predetermined by the system Part 314.

(実施例1)
サービス配信について、サービスの開始通知(クエリー)と、サービスの受信応答(レポート)、サービスの停止通知(レポート)が、送信される場合の詳細動作を説明する。
Example 1
With regard to service distribution, detailed operations when a service start notification (query), a service reception response (report), and a service stop notification (report) are transmitted will be described.

サービス配信について、送信ノード101と受信ノード102の間の一連の動作シーケンスを図6に示す。また、送信ノード101の内部動作は図7、受信ノード102の内部動作は図8に示す。   FIG. 6 shows a series of operation sequences between the transmission node 101 and the reception node 102 for service distribution. The internal operation of the transmission node 101 is shown in FIG. 7, and the internal operation of the reception node 102 is shown in FIG.

図6は、サービス配信の動作シーケンス図の例である。なお、各受信ノード102は、その一部として、受信ノード102−1および受信ノード102−2を図示している。   FIG. 6 is an example of an operation sequence diagram of service distribution. Each receiving node 102 shows a receiving node 102-1 and a receiving node 102-2 as a part thereof.

まず、サービス開始時の動作について、各受信ノード102のうち、受信ノード102−1のみがサービスの受信を開始する例を説明する。サービスの開始時に、送信ノード101が、パケット(クエリー)を各受信ノード102へ送信することによりサービスを配信する動作を行う。   First, regarding the operation at the time of starting the service, an example will be described in which only the receiving node 102-1 of each receiving node 102 starts receiving the service. At the start of the service, the transmitting node 101 performs an operation of distributing the service by transmitting a packet (query) to each receiving node 102.

サービス配信サーバ111が接続される送信ノード101は、サービス配信サーバ111よりマルチキャストサービスの開始を通知するパケット(クエリー)を受信すると、初期TTL値903に記憶されたTTL値「255」を付与してリング型MPLSネットワーク内の各受信ノード102へ0系方向に送信する(S001)。この際、送信ノード101は、管理テーブル900にマルチキャストサービスグループ(サービス名)のエントリを記録する。なお、管理テーブル900の送信TTL値902は、初期設定値を「0」とする。   When receiving the packet (query) for notifying the start of the multicast service from the service distribution server 111, the transmission node 101 to which the service distribution server 111 is connected gives the TTL value “255” stored in the initial TTL value 903. Transmission is performed in the 0-system direction to each receiving node 102 in the ring-type MPLS network (S001). At this time, the transmission node 101 records an entry of the multicast service group (service name) in the management table 900. The transmission TTL value 902 of the management table 900 has an initial setting value “0”.

パケット(クエリー)を受信した受信ノード102−1は、パケット(クエリー)をコピーして、一方のパケット(クエリー)のTTL値を「254」から「253」に書き換えて、次の受信ノード102−2へ転送し、一方のパケット(クエリー)をクライアント112―2〜112−4に送信する。クライアント112―2〜112−4がマルチキャストサービスを受ける受信ノード102−1は、サービス配信サーバ111へ1系方向にシステムで予め定められたTTL値「255」を付与したパケット(レポート)を送信する(S002)。   The receiving node 102-1 that has received the packet (query) copies the packet (query), rewrites the TTL value of one packet (query) from “254” to “253”, and then receives the next receiving node 102- 2 and transmits one packet (query) to the clients 112-2 to 112-4. Receiving node 102-1 where clients 112-2 to 112-4 receive the multicast service transmits a packet (report) with a TTL value “255” predetermined by the system in the 1-system direction to service distribution server 111. (S002).

パケット(クエリー)を受信した受信ノード102−2は、受信ノード102−1と同様にパケット(クエリー)を次の受信ノード102−3に転送し、クライアント112−5に送信するが、クライアント112−5がマルチキャストサービスを受けないため、パケット(レポート)は送信しない。   The receiving node 102-2 that has received the packet (query) transfers the packet (query) to the next receiving node 102-3 and transmits it to the client 112-5 in the same manner as the receiving node 102-1, but the client 112- Since 5 does not receive the multicast service, the packet (report) is not transmitted.

受信ノード102−1からパケット(レポート)を受信した送信ノード101は、受信したパケット(レポート)に含まれるTTL値「254」を用いて通過したノード数(ホップ数)を「255−254=1」により算出し、送信TTL値902「0」を算出したノード数(ホップ数)「1」に「1」を加えて算出した値「2」に書き換え、送信TTL値902「2」を付与したサービスを提供するマルチキャストパケットを0系方向に送信して、サービスの配信を開始する(S003)。つまり、ホップ数は、「255−254=1」より、「1」と算出され、この値に「1」を加えることから、送信TTL値902は、「0」から「2」に書き換えられる。   The transmission node 101 that has received the packet (report) from the reception node 102-1 sets the number of nodes (hops) that have passed using the TTL value “254” included in the received packet (report) to “255−254 = 1”. The transmission TTL value 902 “0” is calculated, and “1” is added to the calculated node number (hop count) “1” to rewrite the value “2”, and the transmission TTL value 902 “2” is given. A multicast packet that provides a service is transmitted in the 0-system direction, and distribution of the service is started (S003). That is, the number of hops is calculated as “1” from “255−254 = 1”, and “1” is added to this value, so that the transmission TTL value 902 is rewritten from “0” to “2”.

サービスを提供するマルチキャストパケットに付与されたTTL値「2」は、受信ノード102にてTTL値「2」から「1」に1減じられ、受信ノード102−1にはTTL値「1」のマルチキャストパケットが届く。そのため、受信ノード102−1はサービスを提供するマルチキャストパケットを受信することができ、受信ノード102−1に接続されるクライアント112―2〜112−4は、サービスを受けることができる。一方、受信ノード102−1は、サービスを提供するマルチキャストパケットに付与されたTTL値「1」を1減じ、TTL値が「0」となるためパケットを廃棄する。   The TTL value “2” assigned to the multicast packet that provides the service is decremented by 1 from the TTL value “2” to “1” at the receiving node 102, and the receiving node 102-1 has the TTL value “1”. A packet arrives. Therefore, the receiving node 102-1 can receive the multicast packet that provides the service, and the clients 112-2 to 112-4 connected to the receiving node 102-1 can receive the service. On the other hand, the receiving node 102-1 subtracts 1 from the TTL value “1” assigned to the multicast packet providing the service, and discards the packet because the TTL value becomes “0”.

その結果、サービスを受信しない受信ノード102−2には、サービスを提供するマルチキャストパケットは転送されない。   As a result, the multicast packet providing the service is not transferred to the receiving node 102-2 that does not receive the service.

次に、サービスに加入していない各受信ノード102が、サービスに加入する動作について、各受信ノード102のうち、受信ノード102−1のみがサービスに加入しており、受信ノード102−2がサービスの受信を開始する例を説明する。   Next, regarding the operation in which each receiving node 102 not subscribed to the service subscribes to the service, only the receiving node 102-1 has subscribed to the service among the receiving nodes 102, and the receiving node 102-2 has the service. An example of starting the reception of will be described.

サービスに加入していない受信ノード102−2は、サービス開始通知であるパケット(クエリー)を契機とせずに、クライアント112−5からのサービスを受信する要求を受信すると、マルチキャストパケットを配信するグループに参加を通知するパケットであるサービスの受信応答のパケット(レポート)にシステムで予め定められたTTL値「255」を付与して自ら送信ノード101へ送信する(S004)。   When the receiving node 102-2 not subscribed to the service receives a request for receiving the service from the client 112-5 without being triggered by a packet (query) that is a service start notification, the receiving node 102-2 is sent to the group that distributes the multicast packet. A TTL value “255” determined in advance by the system is assigned to a packet (report) of a service reception response, which is a packet notifying participation, and transmitted to the transmission node 101 itself (S004).

受信ノード102−1にて転送された受信ノード102−2からのパケット(レポート)を受信した送信ノード101は、受信したパケット(レポート)に含まれるTTL値「253」を用いて通過したノード数(ホップ数)を「255−253=2」より算出する。算出した値「2」に「1」を加えて算出した値「3」は、「2」である送信TTL値902よりも大きいため、送信TTL値902「2」を算出した値「3」に書き換え、送信TTL値902「3」を付与したサービスを提供するマルチキャストパケットを0系方向に送信して、受信ノード102−1および受信ノード102−2へのサービスの配信を開始する(S005)。   The transmitting node 101 that has received the packet (report) from the receiving node 102-2 transferred by the receiving node 102-1 has passed through the TTL value “253” included in the received packet (report). (The number of hops) is calculated from “255−253 = 2”. Since the value “3” calculated by adding “1” to the calculated value “2” is larger than the transmission TTL value 902 that is “2”, the transmission TTL value 902 “2” is calculated to the calculated value “3”. A multicast packet that provides a service to which rewriting and transmission TTL value 902 “3” is assigned is transmitted in the 0-system direction, and distribution of the service to the receiving node 102-1 and the receiving node 102-2 is started (S005).

既にサービスを受信している受信ノード102−1は、サービスを提供するマルチキャストパケットに含まれるTTL値「2」を1減じ、次の受信ノード102−2へ転送するので、受信ノード102−2は、サービスを提供するマルチキャストパケットを受信することができ、受信ノード102−2に接続されるクライアント112−5は、サービスを受けることができる。   The receiving node 102-1 that has already received the service decrements the TTL value “2” included in the multicast packet that provides the service by 1 and forwards it to the next receiving node 102-2. The client 112-5 connected to the receiving node 102-2 can receive the service.

次に、サービスに加入している各受信ノード102が、サービスの停止を希望しサービスから離脱する動作について、各受信ノード102のうち、受信ノード102−1および受信ノード102−2がサービスを受信しており、受信ノード102−2がサービスから離脱する例を説明する。   Next, regarding each receiving node 102 subscribing to the service who wants to stop the service and leaves the service, among the receiving nodes 102, the receiving node 102-1 and the receiving node 102-2 receive the service. An example in which the receiving node 102-2 leaves the service will be described.

サービスに加入している受信ノード102−2は、クライアント112−5からのサービスの受信を停止する要求を受信すると、マルチキャストパケットを配信するグループから離脱する旨を通知するパケットであるサービスの停止通知のパケット(レポート)にシステムで予め定められたTTL値「255」を付与して自ら送信ノード101へ送信する(S006)。   When the receiving node 102-2 that has subscribed to the service receives a request for stopping the reception of the service from the client 112-5, the stop notification of the service, which is a packet for notifying that the multicast packet is to be separated from the group. TTL value “255” determined in advance by the system is assigned to the packet (report) and transmitted to the transmission node 101 itself (S006).

なお、サービスの停止通知のパケット(レポート)とサービスの受信応答のパケット(レポート)とは、パケットに含まれるMPLSのラベルが異なるため、送信ノード101にて区別される。   The service stop notification packet (report) and the service reception response packet (report) are distinguished by the transmitting node 101 because the MPLS labels included in the packets are different.

受信ノード102−1にて転送された受信ノード102−2からのパケット(レポート)を受信した送信ノード101は、受信したパケット(レポート)に含まれるTTL値「253」を用いて通過したノード数(ホップ数)を「255−253=2」より算出する。算出した値「2」に「1」を加えて算出した値「3」は、「3」である送信TTL値902と同じであるため、再度サービスの開始を通知するパケット(クエリー)を送信して送信TTL値902の更新処理を開始する(S007)。   The transmitting node 101 that has received the packet (report) from the receiving node 102-2 transferred by the receiving node 102-1 has passed through the TTL value “253” included in the received packet (report). (The number of hops) is calculated from “255−253 = 2”. The value “3” calculated by adding “1” to the calculated value “2” is the same as the transmission TTL value 902 that is “3”, so that a packet (query) notifying the start of the service is transmitted again. The update processing of the transmission TTL value 902 is started (S007).

パケット(クエリー)を受信した受信ノード102−1は、サービスの開始時と同様に、パケット(クエリー)を次の受信ノード102−2に転送し、クライアント112―2〜112−4に送信する。クライアント112―2〜112−4が引き続きマルチキャストサービスを受ける受信ノード102−1は、サービス配信サーバ111へシステムで予め定められたTTL値「255」を付与したサービスの受信応答のパケット(レポート)を送信する(S008)。   The reception node 102-1 that has received the packet (query) transfers the packet (query) to the next reception node 102-2 and transmits it to the clients 112-2 to 112-4 in the same manner as when the service is started. The receiving node 102-1 on which the clients 112-2 to 112-4 continue to receive the multicast service receives a packet (report) of the service reception response to which the TTL value “255” predetermined by the system is given to the service distribution server 111. Transmit (S008).

パケット(クエリー)を受信した受信ノード102−2は、受信ノード102−1と同様にパケット(クエリー)を次の受信ノード102−3に転送し、クライアント112−5に送信するが、クライアント112−5は、サービスの停止を希望しており、マルチキャストサービスを受けないため、サービスの受信応答のパケット(レポート)は送信しない。なお、受信ノード102−2は、クライアント112−5がサービスの停止を希望している旨の通知を受け取り、受信記憶部314にその旨を記憶する場合は、受信ノード102−2が、パケット(クエリー)に対してサービスへの参加可否を判断し、パケット(クエリー)をクライアント112−5に送信しなくてもよい。   The receiving node 102-2 that has received the packet (query) transfers the packet (query) to the next receiving node 102-3 and transmits it to the client 112-5 in the same manner as the receiving node 102-1, but the client 112- No. 5 wants to stop the service and does not receive the multicast service, and therefore does not transmit a service reception response packet (report). When the receiving node 102-2 receives a notification that the client 112-5 wants to stop the service and stores the notification in the receiving storage unit 314, the receiving node 102-2 receives the packet ( It is not necessary to determine whether or not to participate in the service with respect to (query), and to transmit the packet (query) to the client 112-5.

受信ノード102−1からサービスの受信応答のパケット(レポート)を受信した送信ノード101は、受信したパケット(レポート)に含まれるTTL値「254」を用いて通過したノード数(ホップ数)「1」を算出し、送信TTL値902を算出した値「1」に「1」を加えて算出した値「2」に書き換えて送信TTL値902の更新を行い、送信TTL値902「2」を付与したサービスを提供するマルチキャストパケットを送信して、受信ノード102−1へのサービスの配信を開始する(S009)。   The transmission node 101 that has received the service reception response packet (report) from the reception node 102-1 uses the TTL value “254” included in the received packet (report), and the number of nodes (hop count) “1” passed. The transmission TTL value 902 is updated by updating the transmission TTL value 902 by rewriting the value “2” calculated by adding “1” to the calculated value “1”. The multicast packet providing the service is transmitted, and distribution of the service to the receiving node 102-1 is started (S009).

その結果、サービスの受信の継続を希望する受信ノード102−1には、マルチキャストパケットは転送されるが、サービスの停止を希望する受信ノード102−2には、マルチキャストパケットは転送されない。   As a result, the multicast packet is transferred to the receiving node 102-1 that wants to continue receiving the service, but the multicast packet is not transferred to the receiving node 102-2 that wants to stop the service.

サービス開始通知であるパケット(クエリー)を送信する際の送信ノード101の動作を説明する。   The operation of the transmission node 101 when transmitting a packet (query) that is a service start notification will be described.

サービス配信サーバ111が接続される送信ノード101のEoMPLS変換部305は、サービス配信サーバ111よりマルチキャストサービスの開始を通知するEthernetパケット(クエリー)を受信すると、MPLSパケット(クエリー)に変換する。この際、EoMPLS変換部305は、パケット(クエリー)に含まれる、マルチキャストサービスのサービス名を取得し、送信制御部308に通知し、取得したサービス名をMPLSヘッダのラベル201に付与する。送信制御部308は、通知されたサービス名を送信記憶部309に記憶される管理テーブル900のサービス名901に記録してマルチキャストサービスグループのエントリを作成する。このエントリは、送信TTL値902の初期設定値「0」、初期TTL値903の「255」からなる。また、送信TTL値902は、後述のようにその値が更新される。   When receiving the Ethernet packet (query) for notifying the start of the multicast service from the service distribution server 111, the EoMPLS conversion unit 305 of the transmission node 101 to which the service distribution server 111 is connected converts it to an MPLS packet (query). At this time, the EoMPLS conversion unit 305 acquires the service name of the multicast service included in the packet (query), notifies the transmission control unit 308, and assigns the acquired service name to the label 201 of the MPLS header. The transmission control unit 308 records the notified service name in the service name 901 of the management table 900 stored in the transmission storage unit 309 to create a multicast service group entry. This entry includes an initial set value “0” of the transmission TTL value 902 and an initial TTL value 903 “255”. Further, the transmission TTL value 902 is updated as will be described later.

送信制御部308は、初期TTL値903に記憶されたTTL値「255」をMPLSパケット(クエリー)に付与する指示をEoMPLS変換部305に出す。EoMPLS変換部305は、送信制御部308からの指示を受けて、MPLSパケット(クエリー)のMPLSヘッダのTTL204に指示されたTTL値「255」を付与し、0系パケット送信部302へ送信する。0系パケット送信部302は、TTL値「255」を付与したMPLSパケット(クエリー)をリング型MPLSネットワークへ送信する。   The transmission control unit 308 outputs to the EoMPLS conversion unit 305 an instruction to attach the TTL value “255” stored in the initial TTL value 903 to the MPLS packet (query). In response to the instruction from the transmission control unit 308, the EoMPLS conversion unit 305 adds the specified TTL value “255” to the TTL 204 of the MPLS header of the MPLS packet (query), and transmits it to the 0-system packet transmission unit 302. The 0-system packet transmission unit 302 transmits the MPLS packet (query) with the TTL value “255” to the ring-type MPLS network.

送信ノード101が、複数のマルチキャストサービスを提供する場合は、サービス名毎に管理テーブル900のエントリが作成されることになる。   When the transmission node 101 provides a plurality of multicast services, an entry in the management table 900 is created for each service name.

図7は、パケットを受信した送信ノード101の動作フローチャート図の例である。   FIG. 7 is an example of an operation flowchart of the transmission node 101 that has received a packet.

1系パケット受信部303でMPLSパケットを受信する(S100)と、サービス判定部307に転送される。サービス判定部307は、転送されたパケットが、パケット(レポート)か、通常のパケットかを判定し(S101)、通常のパケットの場合(S101のN)は、1系パケット送信部304へ転送し(S103)、パケット(レポート)の場合(S101のY)は、さらに自ノードが提供するサービスか否か、つまり、管理テーブル900のサービス名901と一致するサービス名を有するパケット(レポート)であるか否かをMPLSラベルで判定し(S102)、自ノードが提供するサービスではない場合(S102のN)は、1系パケット送信部304へ転送し(S103)、自ノードが提供するサービスの場合(S102のY)は、さらに、マルチキャストパケットを配信するグループから離脱する旨を通知するサービスの停止通知のパケット(レポート)であるか否かをMPLSラベルで判定し(S104)、サービス停止通知のパケット(レポート)ではない場合(S104のN)は、送信制御部308へ転送する(S105)。つまり、サービスを受信することを応答するパケットであるサービス受信応答のパケット(レポート)である場合は、送信制御部308へ転送する(S105)。   When the MPLS packet is received by the 1-system packet receiving unit 303 (S100), it is transferred to the service determining unit 307. The service determination unit 307 determines whether the transferred packet is a packet (report) or a normal packet (S101). If the packet is a normal packet (N in S101), the service determination unit 307 transfers the packet to the 1-system packet transmission unit 304. (S103) In the case of a packet (report) (Y in S101), it is a packet (report) having a service name that matches the service name 901 of the management table 900, that is, whether or not the service is provided by the own node. If the service is not a service provided by the own node (N in S102), the packet is transferred to the 1-system packet transmitter 304 (S103), and the service is provided by the own node. (Y in S102) indicates that the service stop notification of leaving from the group that distributes the multicast packet is stopped. Whether a packet (reports) determines an MPLS label (S104), if not a packet service stop notification (report) (S104: N), the transfer to the transmission control unit 308 (S105). That is, if the packet is a service reception response packet (report) that is a response to receive a service, the packet is transferred to the transmission control unit 308 (S105).

送信制御部308は、TTL演算部310として動作して、受信したパケット(レポート)のTTL値を読み出し、「初期TTL値−読み出したTTL値=通過したノード数(ホップ数)」より算出した値に「1」を加えて算出したTTL値を、パケット(レポート)が有するサービス名と対応づけられた管理テーブル900の送信TTL値902の設定値と比較し(S106)、管理テーブル900の送信TTL値902の設定値より小さい場合(S106のN)は終了し、送信TTL値902の設定値より大きい場合(S106のY)は、送信TTL値902の設定値を算出したTTL値に書き換えて、送信TTL値902を更新する(S107)。   The transmission control unit 308 operates as the TTL calculation unit 310, reads the TTL value of the received packet (report), and is calculated from “initial TTL value−read TTL value = number of nodes passed (hop count)” The TTL value calculated by adding “1” to is compared with the setting value of the transmission TTL value 902 of the management table 900 associated with the service name included in the packet (report) (S106), and the transmission TTL of the management table 900 is compared. When the value is smaller than the setting value of the value 902 (N in S106), the process ends. When the value is larger than the setting value of the transmission TTL value 902 (Y in S106), the setting value of the transmission TTL value 902 is rewritten to the calculated TTL value. The transmission TTL value 902 is updated (S107).

送信制御部308は、管理テーブル900の送信TTL値902に記憶されたTTL値をサービスを提供するサーバ111が送信するマルチキャストパケットに付与する指示をEoMPLS変換部305に出す。EoMPLS変換部305は、送信制御部308からの指示を受けて、サービスを提供するマルチキャストパケットにTTL値を含めたMPLSヘッダ付与してパケットを変換して、0系パケット送信部302へ送信する。0系パケット送信部302は、TTL値を付与したマルチキャストパケットをリング型MPLSネットワークへ送信する(S108)
よって、送信ノード101が各受信ノード102からのサービス受信応答のパケット(レポート)を受信し、TTL値を算出する処理によって管理テーブル900の送信TTL値902の設定値は、通過したノード数(ホップ数)が一番多い受信ノード102から受信したパケット(レポート)により算出した値となる。
The transmission control unit 308 issues an instruction to the EoMPLS conversion unit 305 to give the TTL value stored in the transmission TTL value 902 of the management table 900 to the multicast packet transmitted by the server 111 that provides the service. In response to an instruction from the transmission control unit 308, the EoMPLS conversion unit 305 adds a MPLS header including a TTL value to a multicast packet that provides a service, converts the packet, and transmits the packet to the 0-system packet transmission unit 302. The 0-system packet transmission unit 302 transmits the multicast packet to which the TTL value is added to the ring type MPLS network (S108).
Therefore, the transmission node 101 receives the packet (report) of the service reception response from each reception node 102, and the setting value of the transmission TTL value 902 in the management table 900 is obtained by the process of calculating the TTL value. It is a value calculated from the packet (report) received from the receiving node 102 having the largest number.

また、サービス停止通知のパケット(レポート)である場合(S104のY)は、パケットを送信制御部308へ転送する(S109)。   If the packet is a service stop notification packet (report) (Y in S104), the packet is transferred to the transmission control unit 308 (S109).

送信制御部308は、TTL演算部310として動作して受信したサービスの停止通知(レポート)のTTL値を読み出し、「初期TTL値−読み出したTTL値=通過したノード数(ホップ数)」より算出した値に「1」を加えて算出したTTL値を管理テーブル900の送信TTL値902の設定値と比較し(S110)、送信TTL値902の設定値と同じではない場合(S110のN)は終了し、送信TTL値902の設定値と同じ場合(S110のY)に、送信TTL値902を更新処理を実行する。つまり、算出したTTL値と送信TTL値902の設定値とが同じ場合は、サービスを受信している受信ノード102の中で最遠端の受信ノード102からサービスの停止通知のパケット(レポート)を受信したと判断して、送信TTL値902の更新を実行する。   The transmission control unit 308 operates as the TTL calculation unit 310 to read the TTL value of the received service stop notification (report), and calculates from “initial TTL value−read TTL value = number of passed nodes (hops)”. The TTL value calculated by adding “1” to the calculated value is compared with the set value of the transmission TTL value 902 of the management table 900 (S110), and when it is not the same as the set value of the transmission TTL value 902 (N of S110) When the transmission TTL value 902 is the same as the set value of the transmission TTL value 902 (Y in S110), the transmission TTL value 902 is updated. That is, when the calculated TTL value and the set value of the transmission TTL value 902 are the same, a service stop notification packet (report) is received from the farthest receiving node 102 among the receiving nodes 102 receiving the service. It is determined that the transmission has been received, and the transmission TTL value 902 is updated.

送信制御部308は、サービスの停止通知のパケット(レポート)を送信した最遠端の受信ノード102に配信できるTTL値の設定値である現状の送信TTL値902の設定値をMPLSパケット(クエリー)に付与する指示をEoMPLS変換部305に出す(S111)。EoMPLS変換部305は、送信制御部308からの指示を受けて、パケット(クエリー)に送信TTL値902の設定値を付与し、0系パケット送信部302へ送信する(S112)。0系パケット送信部302は、送信TTL値902の設定値を付与したMPLSパケット(クエリー)をリング型MPLSネットワークへ送信する(S113)。パケット(クエリー)の送信後、送信制御部308は、送信TTL値902を初期化して、初期値「0」を記録する(S114)。   The transmission control unit 308 sets the current transmission TTL value 902 setting value, which is a setting value of the TTL value that can be distributed to the farthest receiving node 102 that has transmitted the service stop notification packet (report), as an MPLS packet (query). Is given to the EoMPLS conversion unit 305 (S111). In response to the instruction from the transmission control unit 308, the EoMPLS conversion unit 305 assigns the set value of the transmission TTL value 902 to the packet (query) and transmits the packet to the 0-system packet transmission unit 302 (S112). The 0-system packet transmission unit 302 transmits the MPLS packet (query) to which the setting value of the transmission TTL value 902 is added to the ring-type MPLS network (S113). After transmitting the packet (query), the transmission control unit 308 initializes the transmission TTL value 902 and records the initial value “0” (S114).

なお、S111において、送信制御部308は、初期送信TTL値903「255」をMPLSパケット(クエリー)に付与する指示をEoMPLS変換部305に出してもよい。この場合、送信TTL値902の初期化は、初期送信TTL値903「255」を付与したMPLSパケット(クエリー)の送信前後いずれであってもよい。   In S111, the transmission control unit 308 may issue an instruction to add an initial transmission TTL value 903 “255” to the MPLS packet (query) to the EoMPLS conversion unit 305. In this case, the transmission TTL value 902 may be initialized before or after the transmission of the MPLS packet (query) to which the initial transmission TTL value 903 “255” is added.

そして、1系パケット受信部303でMPLSパケットを受信する(S100)と、MPLSパケット(レポート)であり(S101のY)、自ノードが提供するサービスであり(S102のY)、サービス受信応答のパケット(レポート)である場合(S104のN)に、TTL演算部310は、受信したパケット(レポート)のTTL値を読み出し、「初期TTL値−読み出したTTL値=通過したノード数(ホップ数)」より算出した値に「1」を加えて算出したTTL値を管理テーブル900の送信TTL値902の設定値と比較する(S106)。S114にて送信TTL値902を「0」に初期化したため、算出したTTL値は、管理テーブル900の送信TTL値902の設定値である初期値「0」より大きい(S106のY)。送信TTL値902の設定値を算出したTTL値に書き換えて、送信TTL値902を更新する(S107)。   When the system 1 packet receiving unit 303 receives the MPLS packet (S100), it is an MPLS packet (report) (Y in S101), a service provided by the own node (Y in S102), and a service reception response In the case of a packet (report) (N in S104), the TTL calculation unit 310 reads the TTL value of the received packet (report) and reads “initial TTL value−read TTL value = number of nodes passed (hop count). The TTL value calculated by adding “1” to the value calculated from “” is compared with the set value of the transmission TTL value 902 in the management table 900 (S106). Since the transmission TTL value 902 is initialized to “0” in S114, the calculated TTL value is larger than the initial value “0” that is the setting value of the transmission TTL value 902 in the management table 900 (Y in S106). The transmission TTL value 902 is updated by rewriting the set value of the transmission TTL value 902 with the calculated TTL value (S107).

送信制御部308は、MPLSヘッダ200内のTTL値204に、管理テーブル900の送信TTL値902に記憶されたTTL値を設定し、サービスを提供するマルチキャストパケットに付与する指示をEoMPLS変換部305に出し、EoMPLS変換部305は、送信制御部308からの指示を受けて、サービスを提供するマルチキャストパケットに送信TTL値902に記憶されたTTL値を設定したMPLSヘッダを付与し、0系パケット送信部302へ送信し、0系パケット送信部302は、TTL値を付与したマルチキャストパケットをリング型MPLSネットワークへ送信する(S108)。   The transmission control unit 308 sets the TTL value stored in the transmission TTL value 902 of the management table 900 in the TTL value 204 in the MPLS header 200 and instructs the EoMPLS conversion unit 305 to give it to a multicast packet that provides a service. In response to the instruction from the transmission control unit 308, the EoMPLS conversion unit 305 adds an MPLS header in which the TTL value stored in the transmission TTL value 902 is set to the multicast packet that provides the service, and the 0-system packet transmission unit The 0-system packet transmission unit 302 transmits the multicast packet with the TTL value to the ring-type MPLS network (S108).

よって、送信ノード101が、各受信ノード102からのサービス停止通知のパケット(レポート)の受信を契機に、送信TTL値902の設定値を初期化し、再度各受信ノード102からサービス受信応答のパケット(レポート)を受信し、TTL値を算出する処理によって、送信TTL値902の設定値は、サービスを受信したい受信ノード102の中で、通過したノード数(ホップ数)が一番多い受信ノード102から受信したパケット(レポート)より算出した値、すなわち、サービスの受信を希望するクライアント112を持つ最新の最遠端の受信ノード102までのノード数(ホップ数)に書き換わり、更新されることになる。   Accordingly, the transmission node 101 initializes the set value of the transmission TTL value 902 upon reception of a service stop notification packet (report) from each reception node 102, and again receives a service reception response packet ( In the process of calculating the TTL value, the setting value of the transmission TTL value 902 is obtained from the receiving node 102 having the largest number of nodes (hops) that have passed among the receiving nodes 102 that want to receive the service. The value calculated from the received packet (report), that is, the number of nodes (hop count) up to the latest farthest receiving node 102 having the client 112 desiring to receive the service is rewritten and updated. .

なお、S104において、サービス受信応答のパケット(レポート)であるか否かをMPLSラベルで判定することも可能である。この場合、サービス受信応答のパケット(レポート)であれば、S105へ進み、サービス受信応答のパケット(レポート)でなければ、S109へ進むことになる。   In S104, it is possible to determine whether or not the packet is a service reception response packet (report) based on the MPLS label. In this case, if the packet is a service reception response packet (report), the process proceeds to S105. If the packet is not a service reception response packet (report), the process proceeds to S109.

図8は、パケットを受信した受信ノード102の動作フローチャート図の例である。   FIG. 8 is an example of an operation flowchart of the receiving node 102 that has received a packet.

クライアント112が接続される受信ノード102は、0系パケット受信部301でMPLSパケット(クエリー)を受信する(S200)と、パケット判定部311に転送される。パケット判定部311は、転送されたパケットが、マルチキャストパケットかどうかを判定し(S201)、マルチキャストパケットである場合(S201のY)、マルチキャスト部312へ転送する(S202)。マルチキャスト部312は、パケット(クエリー)をコピーし、一方をEoMPLS変換部305経由でクライアント112に配信し、もう一方をTTL判定部306に転送する(S203)。TTL判定部306は、受信したパケット(クエリー)のTTL値を判定し(S206)、TTL値が「1」でない場合(S206のN)は、TTL値を1減じて0系パケット送信部302に転送し、0系パケット送信部302は、次の受信ノード102に転送する(S207)。TTL値が「1」である場合(S206のY)は、TTL値を「1」減じるとTTL値が「0」となるためマルチキャストパケットを廃棄する(S208)。EoMPLS変換部305は、MPLSパケットをEthernetパケットへ変換し、全クライアント112へパケット(クエリー)を転送する。   The receiving node 102 to which the client 112 is connected receives the MPLS packet (query) by the 0-system packet receiving unit 301 (S200), and is transferred to the packet determining unit 311. The packet determination unit 311 determines whether the transferred packet is a multicast packet (S201). If the packet is a multicast packet (Y in S201), the packet determination unit 311 transfers the packet to the multicast unit 312 (S202). The multicast unit 312 copies the packet (query), delivers one to the client 112 via the EoMPLS conversion unit 305, and transfers the other to the TTL determination unit 306 (S203). The TTL determination unit 306 determines the TTL value of the received packet (query) (S206). If the TTL value is not “1” (N in S206), the TTL value is decremented by 1 to the 0-system packet transmission unit 302. The 0-system packet transmitter 302 transfers the packet to the next receiving node 102 (S207). If the TTL value is “1” (Y in S206), the multicast packet is discarded because the TTL value becomes “0” when the TTL value is decremented by “1” (S208). The EoMPLS conversion unit 305 converts the MPLS packet into an Ethernet packet, and transfers the packet (query) to all the clients 112.

パケット判定部311が、マルチキャストパケットでないと判定した場合(S201のN)は、クライアント112宛のパケットであるかどうかを判定し(S209)、クライアント112宛のパケットの場合(S209のY)は、EoMPLS変換部305へ転送する(S211)。クライアント112宛のパケットではない場合(S209のN)は、0系パケット送信部302へ転送し0系パケット送信部302から次の受信ノード102へ転送する(S210)。 次に、クライアント112からマルチキャストサービスの受信を開始する指示であるパケット(レポート)を受信する受信ノード102の動作例について説明する。   If the packet determination unit 311 determines that the packet is not a multicast packet (N in S201), it determines whether the packet is addressed to the client 112 (S209). If the packet is addressed to the client 112 (Y in S209), The data is transferred to the EoMPLS conversion unit 305 (S211). If the packet is not addressed to the client 112 (N in S209), the packet is transferred to the 0-system packet transmitter 302 and transferred from the 0-system packet transmitter 302 to the next receiving node 102 (S210). Next, an operation example of the reception node 102 that receives a packet (report) that is an instruction to start reception of the multicast service from the client 112 will be described.

受信ノード102のEoMPLS変換部305は、クライアント112からマルチキャストサービスの受信を開始する指示であるパケット(レポート)を受信したか否か判断する。パケット(レポート)を受信した場合、つまり、クライアント112がマルチキャストサービスを受ける場合、受信制御部313は、MPLSヘッダ200内のTTL値204に、受信記憶部314に記憶されているシステムで予め定められたTTL値である「255」を設定する指示を出し、EoMPLS変換部305は、受信制御部313からの指示を受けて、クライアント112から受信したEthernetパケットのパケット(レポート)を、MPLSヘッダ200内のTTL値204にTTL値「255」を設定したMPLSパケットのパケット(レポート)へ変換し、1系パケット送信部304を経由してリング型MPLSネットワークへMPLSパケットであるパケット(レポート)を送信する。   The EoMPLS conversion unit 305 of the reception node 102 determines whether a packet (report) that is an instruction to start reception of the multicast service is received from the client 112. When the packet (report) is received, that is, when the client 112 receives the multicast service, the reception control unit 313 sets the TTL value 204 in the MPLS header 200 in advance in the system stored in the reception storage unit 314. In response to an instruction from the reception control unit 313, the EoMPLS conversion unit 305 receives the packet (report) of the Ethernet packet received from the client 112 in the MPLS header 200. Is converted to an MPLS packet packet (report) in which the TTL value “255” is set in the TTL value 204 of the packet, and the packet (report) that is an MPLS packet is transmitted to the ring-type MPLS network via the 1-system packet transmission unit 304. .

なお、図6のS002およびS004にて説明したように、クライアント112は、受信ノード102から受信したパケット(クエリー)に応答してパケット(レポート)を受信ノード102に送信する場合(S002)と、自発的にパケット(レポート)を受信ノード102に送信する場合(S004)とがある。   As described in S002 and S004 of FIG. 6, the client 112 transmits a packet (report) to the receiving node 102 in response to the packet (query) received from the receiving node 102 (S002). There is a case where a packet (report) is spontaneously transmitted to the receiving node 102 (S004).

次に、クライアント112からマルチキャストサービスの受信を停止する指示であるパケット(レポート)を受信する受信ノード102の動作例について説明する。   Next, an operation example of the receiving node 102 that receives a packet (report) that is an instruction to stop receiving the multicast service from the client 112 will be described.

受信ノード102のEoMPLS変換部305は、クライアント112からマルチキャストサービスの受信を停止する指示であるパケット(レポート)を受信したか否か判断する。パケット(レポート)を受信した場合、つまり、クライアント112がマルチキャストサービスの受信を停止し、マルチキャストサービスのグループから離脱する場合、受信制御部313は、MPLSヘッダ200内のTTL値204に、受信記憶部314に記憶されているシステムで予め定められたTTL値である「255」を設定する指示を出し、EoMPLS変換部305は、受信制御部313からの指示を受けて、クライアント112から受信したEthernetパケットのパケット(レポート)を、MPLSヘッダ200内のTTL値204にTTL値「255」を設定したMPLSパケットのパケット(レポート)へ変換し、1系パケット送信部304を経由してリング型MPLSネットワークへMPLSパケットであるパケット(レポート)を送信する。   The EoMPLS conversion unit 305 of the receiving node 102 determines whether a packet (report) that is an instruction to stop receiving the multicast service is received from the client 112. When the packet (report) is received, that is, when the client 112 stops receiving the multicast service and leaves the group of the multicast service, the reception control unit 313 stores the reception storage unit in the TTL value 204 in the MPLS header 200. The EoMPLS conversion unit 305 receives an instruction from the reception control unit 313 and receives the Ethernet packet received from the client 112 in response to an instruction to set “255” which is a predetermined TTL value in the system stored in 314. Packet (report) is converted to an MPLS packet packet (report) in which the TTL value 204 in the MPLS header 200 is set to the TTL value “255”, and the packet is sent to the ring MPLS network via the 1-system packet transmission unit 304. Packets that are MPLS packets To send door (the report).

なお、マルチキャストサービスの配信方向を0系方向として説明したが、当然に、1系方向をサービスの配信方向とすることも可能である。この場合、送信ノード101、受信ノード102ともに、必要な機能部を適宜有することになる。   Although the multicast service distribution direction has been described as the 0-system direction, it is naturally possible to use the 1-system direction as the service distribution direction. In this case, both the transmission node 101 and the reception node 102 have necessary functional units as appropriate.

前記一連の流れによると、サービスの新規配信やサービス受信ノードの追加と停止処理では、送信ノード101の管理テーブル900の送信TTL値902の設定値は、サービスを受信する最遠端の受信ノード102までマルチキャストパケットを配信できる値となり、最遠端の受信ノード102の先にはTTL=0によってマルチキャストパケットが廃棄されることになり、無駄な通信帯域使用が抑えられる。   According to the series of flows, in the new service distribution and the addition and stop processing of the service reception node, the setting value of the transmission TTL value 902 in the management table 900 of the transmission node 101 is the farthest receiving node 102 that receives the service. The multicast packet can be distributed until the farthest receiving node 102 is reached, and the multicast packet is discarded by TTL = 0 at the farthest end of the receiving node 102, so that useless communication bandwidth is suppressed.

また、受信ノード102には、管理テーブル900を保持する必要がなく、受信したパケットに含まれるTTL値によって中継、転送処理をすればよいので、中継、転送処理の際に管理テーブルを参照する処理が発生せず、管理テーブルの更新処理も発生しないので、受信ノード102の処理負荷を軽減させることができる。   In addition, the receiving node 102 does not need to hold the management table 900 and only needs to perform relay and transfer processing according to the TTL value included in the received packet. Therefore, the process of referring to the management table at the time of relay and transfer processing And the management table update process does not occur, the processing load on the receiving node 102 can be reduced.

また、送信ノード101が、転送ホップ数を基に算出した送信TTL値902を記憶する管理テーブル900を有することで、各ノード101、102は、個々のノードが互いのノードの状況(ネットワークにおける位置など)を把握していなくても、マルチキャスパケットを配信すべき範囲を適切に設定することが可能となる。そのため、ネットワークの実効帯域を圧迫することなく、実効帯域を有効に活用しつつ、ノードの処理負荷を軽減させ、ネットワーク全体の処理負荷を軽減させることができる。   In addition, since the transmission node 101 has the management table 900 that stores the transmission TTL value 902 calculated based on the number of transfer hops, each of the nodes 101 and 102 has the status of each node (position in the network). For example, it is possible to appropriately set a range in which multicast packets are to be distributed. Therefore, it is possible to reduce the processing load of the node and reduce the processing load of the entire network while effectively using the effective bandwidth without reducing the effective bandwidth of the network.

(実施例2)
図10を参照して実施例2を説明する。本実施例では、1つの送信ノードによるサービス提供だけではなく、複数のノードによるサービス提供を行う。この場合、ノードは同時に送信ノードと受信ノードの機能を持って、以下に本ノードを「送受信ノード103」とする。
(Example 2)
A second embodiment will be described with reference to FIG. In this embodiment, not only service provision by one transmission node but also service provision by a plurality of nodes is performed. In this case, the node has the functions of a transmission node and a reception node at the same time, and this node is hereinafter referred to as “transmission / reception node 103”.

図5はサービス配信サーバ111およびクライアント112が接続される送受信ノード103の内部ブロック構成図である。送信ノード101と受信ノード102の機能ブロックを持ち、装置全体の制御を行う送受信制御部315と、管理テーブル900を記憶する送受信記憶部316から構成されている。   FIG. 5 is an internal block configuration diagram of the transmission / reception node 103 to which the service distribution server 111 and the client 112 are connected. The transmission / reception control unit 315 has functional blocks of the transmission node 101 and the reception node 102 and controls the entire apparatus. The transmission / reception storage unit 316 stores the management table 900.

送受信制御部315は、受信したパケット(レポート)のTTL値によってパケット(レポート)を送信した受信ノードとの距離(ホップ数)を演算し、管理テーブル900を書き換えるTTL演算部310としても動作する。さらに、サービス配信サーバ111よりパケット(クエリー)またはサービスを配信するパケット送信の場合と、クライアント112より他の送受信ノード103へパケット(レポート)を送信する場合を区別し、EoMPLS変換部305に異なる指示を出す。   The transmission / reception controller 315 also operates as a TTL calculator 310 that rewrites the management table 900 by calculating a distance (number of hops) from the receiving node that transmitted the packet (report) based on the TTL value of the received packet (report). Further, it distinguishes between the case of packet transmission for distributing a packet (query) or service from the service distribution server 111 and the case of transmitting a packet (report) from the client 112 to another transmission / reception node 103, and different instructions to the EoMPLS conversion unit 305. Put out.

他の送受信ノード103がサービスに参加していない初期の状態でパケット(クエリー)を送信する場合には、初期TTL値903を付与する指示をEoMPLS変換部305に出す。サービス配信サーバ111からのサービス配信の場合には、送信TTL値902を付与する指示をEoMPLS変換部305に出す。   When the packet (query) is transmitted in an initial state where the other transmission / reception nodes 103 are not participating in the service, an instruction to add the initial TTL value 903 is issued to the EoMPLS conversion unit 305. In the case of service distribution from the service distribution server 111, an instruction to give a transmission TTL value 902 is issued to the EoMPLS conversion unit 305.

クライアント112がパケット(レポート)送信する場合は、初期TTL値903を付与する指示をEoMPLS変換部305に出す。   When the client 112 transmits a packet (report), the client 112 issues an instruction to add an initial TTL value 903 to the EoMPLS conversion unit 305.

前述の通り、送受信記憶部316は、送信記憶部309相当の機能を持ち、受信記憶部314相当の機能は初期TTL値903によって実現する。   As described above, the transmission / reception storage unit 316 has a function equivalent to the transmission storage unit 309, and the function equivalent to the reception storage unit 314 is realized by the initial TTL value 903.

各送受信ノード103の具体的な動作は、実施例1の送信ノード101および受信ノード102と同様である。   The specific operation of each transmission / reception node 103 is the same as that of the transmission node 101 and the reception node 102 of the first embodiment.

複数の送受信ノード103によるサービス提供の場合の管理テーブルの例を図11に示す。また、各サービスの配信範囲は図10に示す。   An example of a management table in the case of providing a service by a plurality of transmission / reception nodes 103 is shown in FIG. Also, the distribution range of each service is shown in FIG.

本実施例では、各サービスを提供する送信ノードごとに管理テーブルを持つことで、TTL値によって各サービスの送信範囲を制御することが可能である。   In this embodiment, by having a management table for each transmission node that provides each service, the transmission range of each service can be controlled by the TTL value.

最遠端の受信希望ノードまでマルチキャストパケットを送信し、その先にはマルチキャストパケットが廃棄されることによって、ネットワーク帯域の有効利用が可能となる。   A multicast packet is transmitted to the farthest receiving desired node, and the multicast packet is discarded at the destination, so that the network bandwidth can be effectively used.

また、各ノード103には、自らが提供するサービスの管理テーブルを持つため、他ノードのサービス数増加による管理テーブル更新などの処理負荷がなく、ネットワーク全体の処理負荷を軽減させることができる。 (実施例3)
図1を参照して実施例3を説明する。本実施例は、サービスの開始通知(クエリー)を周期的に送信する運用方法である。
Further, since each node 103 has a management table of services provided by itself, there is no processing load such as management table updating due to an increase in the number of services of other nodes, and the processing load of the entire network can be reduced. (Example 3)
Embodiment 3 will be described with reference to FIG. This embodiment is an operation method for periodically transmitting a service start notification (query).

サービス開始時及び提供中には、サービスの開始通知(クエリー)が送信ノード101から一定周期で送信される。送信ノード101によるパケット(クエリー)の送出動作は実施例1と同様である。クライアント112がパケット(クエリー)に応答してマルチキャストサービスを受ける場合、受信ノード102が、サービス配信サーバ111に対してパケット(レポート)を送信する動作も実施例1と同様である。   When the service starts and during service provision, a service start notification (query) is transmitted from the transmission node 101 at regular intervals. The sending operation of the packet (query) by the sending node 101 is the same as in the first embodiment. When the client 112 receives the multicast service in response to the packet (query), the operation in which the receiving node 102 transmits the packet (report) to the service distribution server 111 is the same as in the first embodiment.

一方、新たにサービスを受けるクライアント112がマルチキャストサービスのグループに加入する時は、実施例1と違い、クライアント112自らパケット(レポート)を送信するのではなく、周期的に受信するパケット(クエリー)に応答することである。   On the other hand, when a client 112 receiving a new service joins a multicast service group, unlike the first embodiment, the client 112 does not send a packet (report) by itself, but periodically receives a packet (query). To respond.

サービスの開始通知(クエリー)が周期的に送信されているため、サービスを受けるクライアント112は、サービス配信サーバ111からのパケット(クエリー)に応答してパケット(レポート)を周期的に送信する。サービスを受けない、あるいはサービス停止したいクライアント112は、周期的なパケット(クエリー)に応答せず、パケット(レポート)を送信しない。   Since the service start notification (query) is periodically transmitted, the client 112 receiving the service periodically transmits a packet (report) in response to the packet (query) from the service distribution server 111. A client 112 that does not receive a service or wants to stop a service does not respond to a periodic packet (query) and does not transmit a packet (report).

よって、サービス配信サーバ111がある送信ノード101の管理テーブル900の送信TTL値902は、周期的に設定値が更新され、サービスを受ける最遠端の受信ノード102までマルチキャストパケットを送信可能なTTL値で設定することが可能である。そのため、サービスを受ける最遠端の受信ノード102で、マルチキャストパケットが廃棄されることによって無駄な通信帯域使用が抑えられる。   Therefore, the transmission TTL value 902 of the management table 900 of the transmission node 101 in which the service distribution server 111 is located is a TTL value that can periodically transmit the multicast packet to the receiving node 102 at the farthest end that receives the service, with the setting value updated periodically. It is possible to set with. Therefore, wasteful use of the communication band can be suppressed by discarding the multicast packet at the farthest receiving node 102 receiving the service.

また、受信ノード102には、管理テーブルを保持する必要がなく、パケットに含まれるTTL値によって中継、転送処理をすればよいので処理負荷を軽減させることができる。   In addition, the receiving node 102 does not need to hold a management table, and it is only necessary to perform relay and transfer processing according to the TTL value included in the packet, so that the processing load can be reduced.

本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。   The present invention is not limited to the above-described embodiments, and includes various modifications. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment.

また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えばFPGAのような集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(SolidStateDrive)等の記録装置、または、IC(Integrated Circuit)カード、SDカード、DVD等の記録媒体に置くことができる。   Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment. Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit such as an FPGA. Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files for realizing each function may be placed in a recording device such as a memory, a hard disk, an SSD (Solid State Drive), or a recording medium such as an IC (Integrated Circuit) card, an SD card, or a DVD. it can.

また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。   Further, the control lines and information lines indicate what is considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. Actually, it may be considered that almost all the components are connected to each other.

また、本発明をリング型MPLSを例として説明したが、他のネットワーク形状(例えばツリー型)、他のネットワーク種類(例えばEthernet)などにも適用できる。TTLの考え方に関して、IPv6のHop Limitなどで、データの有効期間を表すフィールドを持つ通信方法に適用できる。   Although the present invention has been described by taking the ring type MPLS as an example, the present invention can also be applied to other network shapes (for example, tree type), other network types (for example, Ethernet), and the like. With regard to the TTL concept, it can be applied to a communication method having a field representing the valid period of data, such as IPv6 Hop Limit.

101 送信ノード
102 受信ノード
103 送受信ノード
111 サービス提供サーバ
112 クライアント
301 0系パケット受信部
302 0系パケット送信部
303 1系パケット受信部
304 1系パケット送信部
305 Ethernet over MPLS変換部
306 TTL判定部
307 サービス判定部
308 送信制御部
309 送信記憶部
310 TTL演算部
311 パケット判定部
312 マルチキャスト部
313 受信制御部
314 受信記憶部
315 送受信制御部
316 送受信記憶部
101 transmission node 102 reception node 103 transmission / reception node 111 service providing server 112 client 301 system 0 packet reception unit 302 system 0 packet transmission unit 303 system 1 packet reception unit 304 system 1 packet transmission unit 305 Ethernet over MPLS conversion unit 306 TTL determination unit 307 Service determination unit 308 Transmission control unit 309 Transmission storage unit 310 TTL calculation unit 311 Packet determination unit 312 Multicast unit 313 Reception control unit 314 Reception storage unit 315 Transmission / reception control unit 316 Transmission / reception storage unit

Claims (11)

複数の通信装置間でパケットを送受信する通信システムにおいて、
前記通信装置は、
前記パケットを送信する第1の送信部と、
各部を制御し、他の通信装置にて転送される毎に値が減少する生存時間を格納する領域である生存時間領域を有するパケットを前記第1の送信部に送信させる第1の制御部と、
サービスを配信するマルチキャストパケットにて配信されるサービスを識別する識別子と第1の生存時間とを対応づけて記憶する第1の記憶部と、
を備え、
前記他の通信装置は、
前記パケットを送信する第2の送信部と、
各部を制御し、前記生存時間領域を有するパケットを前記第2の送信部に送信させる第2の制御部と、
前記第1の生存時間の値と同じ値である第2の生存時間を記憶する第2の記憶部と、
を備え、
前記第1の制御部は、
前記第1の記憶部に記憶する前記第1の生存時間を前記生存時間領域に付与した前記他の通信装置との間の制御に用いる制御用のマルチキャストパケットを前記第1の送信部に送信させ、
前記第2の制御部は、
前記制御用のマルチキャストパケットを受信すると、前記第2の記憶部に記憶する前記第2の生存時間を前記生存時間領域に付与した前記通信装置との間の制御に用いる制御用のパケットを前記第2の送信部に送信させ、
前記第1の制御部は、
前記制御用のパケットを受信すると、受信した前記制御用のパケットから前記生存時間領域の値を読み出し、読み出した前記生存時間領域の値と前記第1の記憶部に記憶する前記第1の生存時間とに基づいて、前記サービスを配信するマルチキャストパケットが前記他の通信装置にて転送される毎に値が減少する第3の生存時間を算出し、算出した前記第3の生存時間と前記識別子とを対応づけて前記第1の記憶部に記憶させ、前記第3の生存時間を前記生存時間領域に付与した前記サービスを配信するマルチキャストパケットを前記第1の送信部から送信させる
ことを特徴とする通信システム。
In a communication system that transmits and receives packets between a plurality of communication devices,
The communication device
A first transmitter for transmitting the packet;
A first control unit that controls each unit and causes the first transmission unit to transmit a packet having a lifetime area that is an area for storing a lifetime that decreases every time the packet is transferred by another communication device; ,
A first storage unit for storing an identifier for identifying a service distributed in a multicast packet for distributing a service and a first lifetime,
With
The other communication device is:
A second transmitter for transmitting the packet;
A second control unit that controls each unit and causes the second transmission unit to transmit a packet having the lifetime region;
A second storage unit that stores a second survival time that is the same value as the first survival time;
With
The first controller is
Causing the first transmitter to transmit a control multicast packet used for control with the other communication device that has assigned the first lifetime stored in the first storage to the lifetime region. ,
The second controller is
When the control multicast packet is received, the control packet used for control with the communication device having the second lifetime stored in the second storage unit in the lifetime area is transmitted to the second packet. 2 to the transmission unit,
The first controller is
When the control packet is received, the value of the survival time area is read from the received control packet, and the read value of the survival time area and the first survival time stored in the first storage unit Based on the above, a third lifetime that decreases every time a multicast packet that distributes the service is transferred by the other communication device is calculated, and the calculated third lifetime and the identifier are calculated. Is stored in the first storage unit, and a multicast packet for distributing the service with the third lifetime is assigned to the lifetime region is transmitted from the first transmitter. Communications system.
請求項1に記載の通信システムであって、
前記第1の制御部は、
読み出した前記生存時間領域の値と前記第1の記憶部に記憶する前記第1の生存時間とに基づいて、前記制御用のパケットが前記他の通信装置にて転送された回数を算出し、算出した前記回数に基づいて、前記第3の生存時間を算出する
ことを特徴とする通信システム。
The communication system according to claim 1,
The first controller is
Based on the read lifetime value and the first lifetime stored in the first storage unit, the number of times the control packet is transferred by the other communication device is calculated, A communication system, wherein the third survival time is calculated based on the calculated number of times.
請求項2に記載の通信システムであって、
前記第1の制御部は、
前記制御用のパケットをさらに受信すると、受信した前記制御用のパケットから前記第3の生存時間を算出し、算出した前記第3の生存時間と前記第1の記憶部に記憶されている前記第3の生存時間との比較に応じて、前記第1の記憶部に記憶されている前記第3の生存時間を算出した前記第3の生存時間に更新する
ことを特徴とする通信システム。
A communication system according to claim 2,
The first controller is
When the control packet is further received, the third lifetime is calculated from the received control packet, and the calculated third lifetime and the first storage unit stored in the first storage unit are calculated. The communication system is characterized in that the third survival time stored in the first storage unit is updated to the calculated third survival time according to a comparison with the 3 survival time.
請求項3に記載の通信システムであって、
前記第1の制御部は、
さらに受信した前記制御用のパケットから算出した前記第3の生存時間と前記第1の記憶部に記憶されている前記第3の生存時間との比較の結果、前記第1の記憶部に記憶されている第3の生存時間よりも算出した前記第3の生存時間が大きい場合、前記第3の生存時間を算出した前記回数に更新する
ことを特徴とする通信システム。
A communication system according to claim 3,
The first controller is
Further, as a result of comparison between the third survival time calculated from the received control packet and the third survival time stored in the first storage unit, it is stored in the first storage unit. When the calculated third survival time is larger than the calculated third survival time, the third survival time is updated to the calculated number of times.
請求項4に記載の通信システムであって、
前記通信装置が送信する前記制御用のマルチキャストパケットは、
前記他の通信装置がマルチキャストパケットを配信するグループに参加するか否かを問い合わせるクエリパケットであり、
前記他の通信装置が送信する前記制御用のパケットは、
前記他の通信装置が前記マルチキャストパケットを配信するグループに参加する旨を通知する参加通知パケットであり、
前記第2の制御部は、
前記クエリパケットを受信すると、前記参加通知パケットを前記第2の送信部から送信させる
ことを特徴とする通信システム。
The communication system according to claim 4,
The control multicast packet transmitted by the communication device is:
A query packet inquiring whether or not the other communication device participates in a group that distributes multicast packets;
The control packet transmitted by the other communication device is:
A participation notification packet for notifying that the other communication device participates in the group that distributes the multicast packet;
The second controller is
When the query packet is received, the communication packet is transmitted from the second transmission unit.
請求項2に記載の通信システムであって、
前記通信装置が送信する前記制御用のマルチキャストパケットは、
前記他の通信装置がマルチキャストパケットを配信するグループに参加するか否かを問い合わせるクエリパケットであり、
前記他の通信装置のうち前記マルチキャストパケットを配信するグループに参加している他の通信装置の前記2の制御部は、
前記制御用のパケットとして、前記マルチキャストパケットを配信するグループから離脱する旨を通知する離脱通知パケットを前記第2の送信部から送信させ、
前記第1の制御部は、
前記離脱通知パケットをさらに受信すると、前記離脱通知パケットから算出した前記第3の生存時間と前記第1の記憶部に記憶されている前記第3の生存時間とを比較し、前記離脱通知パケットから算出した前記第3の生存時間と前記第1の記憶部に記憶されている前記第3の生存時間が同じ値の場合、前記離脱通知パケットから算出した前記第3の生存時間または前記第1の記憶部に記憶されている前記第3の生存時間のいずれかを付与した前記制御用のマルチキャストパケットを前記第1の送信部に送信させる
ことを特徴とする通信システム。
A communication system according to claim 2,
The control multicast packet transmitted by the communication device is:
A query packet inquiring whether or not the other communication device participates in a group that distributes multicast packets;
Among the other communication devices, the second control unit of the other communication device participating in the group that distributes the multicast packet,
As the control packet, the second transmission unit transmits a leave notification packet for notifying that the multicast packet is to be separated from the group that delivers the multicast packet,
The first controller is
When further receiving the leave notification packet, the third life time calculated from the leave notification packet is compared with the third life time stored in the first storage unit, and from the leave notification packet When the calculated third survival time and the third survival time stored in the first storage unit have the same value, the third survival time calculated from the withdrawal notification packet or the first A communication system, characterized by causing the first transmitter to transmit the control multicast packet to which any of the third lifetimes stored in a storage unit is assigned.
請求項6に記載の通信システムであって、
前記第1の制御部は、
前記第3の生存時間を付与した前記制御用のマルチキャストパケットを前記第1の送信部に送信させると、前記第1の記憶部に記憶する前記第3の生存時間を所定の値に更新する
ことを特徴とする通信システム。
The communication system according to claim 6,
The first controller is
When the control transmission packet to which the third lifetime is given is transmitted to the first transmitter, the third lifetime stored in the first storage is updated to a predetermined value. A communication system characterized by the above.
他の通信装置にて転送される毎に値が減少する生存時間を格納する領域である生存時間領域を有するパケットを送信する送信部と、
サービスを配信するマルチキャストパケットにて配信するサービスを識別する識別子と第1の生存時間とを対応づけて記憶する記憶部と、
前記第1の生存時間を前記生存時間領域に付与した前記他の通信装置との間の制御に用いる制御用のマルチキャストパケットを前記送信部に送信させ、前記生存時間領域を含む制御用のパケットを受信すると、受信した前記制御用のパケットから前記生存時間領域の値を読み出し、読み出した前記生存時間領域の値と前記記憶部に記憶する前記第1の生存時間とに基づいて、前記サービスを配信するマルチキャストパケットが前記他の通信装置にて転送される毎に値が減少する第2の生存時間を算出し、算出した前記第2の生存時間と前記識別子とを対応づけて前記記憶部に記憶させ、前記第2の生存時間を前記生存時間領域に付与した前記サービスを配信するマルチキャストパケットを前記送信部から送信させる制御部と、
を備えることを特徴とする通信装置。
A transmission unit that transmits a packet having a lifetime area that is an area for storing a lifetime that decreases every time it is transferred by another communication device;
A storage unit for storing an identifier for identifying a service to be distributed in a multicast packet for distributing the service and a first lifetime,
A control multicast packet used for control with the other communication device assigned the first survival time to the survival time region is transmitted to the transmission unit, and a control packet including the survival time region is transmitted. Upon receipt, the value of the lifetime field is read from the received control packet, and the service is distributed based on the read lifetime value and the first lifetime stored in the storage unit. A second lifetime that decreases every time a multicast packet to be transferred is transferred by the other communication device, and stores the calculated second lifetime and the identifier in association with each other. And a control unit that causes the transmission unit to transmit a multicast packet that distributes the service in which the second lifetime is assigned to the lifetime region,
A communication apparatus comprising:
請求項8に記載の通信装置であって、
前記制御部は、
前記制御用のパケットをさらに受信すると、受信した前記制御用のパケットに前記記憶部に記憶した前記識別子が含まれているか否か判定し、前記記憶部に記憶した前記識別子が含まれている場合、受信した前記制御用のパケットから前記第2の生存時間を算出し、算出した前記第2の生存時間と前記識別子に対応づけて前記記憶部に記憶されている前記第2の生存時間とを比較して、前記記憶部に記憶されている前記第2の生存時間よりも算出した前記第2の生存時間が大きい場合、前記記憶部に記憶されている前記第2の生存時間を算出した前記第2の生存時間に更新する
ことを特徴とする通信装置。
The communication device according to claim 8,
The controller is
When the control packet is further received, it is determined whether or not the identifier stored in the storage unit is included in the received control packet, and the identifier stored in the storage unit is included The second lifetime is calculated from the received control packet, and the calculated second lifetime and the second lifetime stored in the storage unit in association with the identifier are calculated. In comparison, when the second survival time calculated is larger than the second survival time stored in the storage unit, the second survival time stored in the storage unit is calculated. The communication apparatus is updated to the second lifetime.
請求項8に記載の通信装置であって、
前記制御部は、
前記制御用のパケットをさらに受信すると、受信した前記制御用のパケットに前記記憶部に記憶した前記識別子が含まれているか否か判定し、前記記憶部に記憶した前記識別子が含まれている場合、受信した前記制御用のパケットから前記第2の生存時間を算出し、算出した前記第2の生存時間と前記識別子に対応づけて前記記憶部に記憶されている前記第2の生存時間とを比較して、前記記憶部に記憶されている前記第2の生存時間と算出した前記第2の生存時間が同じ値の場合、前記記憶部に記憶されている前記第2の生存時間を付与した前記制御用のマルチキャストパケットを前記送信部に送信させる
ことを特徴とする通信装置。
The communication device according to claim 8,
The controller is
When the control packet is further received, it is determined whether or not the identifier stored in the storage unit is included in the received control packet, and the identifier stored in the storage unit is included The second lifetime is calculated from the received control packet, and the calculated second lifetime and the second lifetime stored in the storage unit in association with the identifier are calculated. In comparison, when the second survival time calculated and the second survival time calculated are the same value, the second survival time stored in the storage unit is given. A communication apparatus that causes the transmitting unit to transmit the multicast packet for control.
請求項8に記載の通信装置であって、
受信した前記制御用のパケットは、
前記他の通信装置が、前記第1の生存時間と同じ値の第2の生存時間を前記生存時間領域に付与して送信する
ことを特徴とする通信装置。
The communication device according to claim 8,
The received control packet is
The other communication device transmits a second survival time having the same value as the first survival time to the survival time region.
JP2013250707A 2013-12-04 2013-12-04 Communication system and communication device Pending JP2015109532A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013250707A JP2015109532A (en) 2013-12-04 2013-12-04 Communication system and communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013250707A JP2015109532A (en) 2013-12-04 2013-12-04 Communication system and communication device

Publications (1)

Publication Number Publication Date
JP2015109532A true JP2015109532A (en) 2015-06-11

Family

ID=53439600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013250707A Pending JP2015109532A (en) 2013-12-04 2013-12-04 Communication system and communication device

Country Status (1)

Country Link
JP (1) JP2015109532A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110912824A (en) * 2019-11-27 2020-03-24 美的集团股份有限公司 Method and device for determining survival time value of multi-hop network node
JP2020167589A (en) * 2019-03-29 2020-10-08 株式会社デンソー Relay device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020167589A (en) * 2019-03-29 2020-10-08 株式会社デンソー Relay device
JP7211213B2 (en) 2019-03-29 2023-01-24 株式会社デンソー Relay device and relay method
US11665030B2 (en) 2019-03-29 2023-05-30 Denso Corporation Relay device
CN110912824A (en) * 2019-11-27 2020-03-24 美的集团股份有限公司 Method and device for determining survival time value of multi-hop network node

Similar Documents

Publication Publication Date Title
WO2019033857A1 (en) Packet control method and network device
EP3208977A1 (en) Data forwarding method, device and system in software-defined networking
WO2018076765A1 (en) Content distribution method and device for cloud computing system, computing node and system
JP6241637B2 (en) Method and device for managing multicast group members
TWI600335B (en) Communication system and communication method
CN105940717A (en) Node device and communication method used in disruption/delay/disconnect tolerant network
WO2008138248A1 (en) A method, an interface board and a router for transmitting the message
CN111194543B (en) Flow control system for use in a network
WO2010109767A1 (en) Data synchronization system, data synchronization method, and synchronization control server
JP2015109532A (en) Communication system and communication device
RU2717909C2 (en) Environmentally friendly energy source for dense large networks (proxy table scaling)
JP7473025B2 (en) Content distribution system, unicast-multicast conversion device, content distribution method, and content distribution program
JP2007041899A (en) Content distribution apparatus, content distribution network and content distribution method
JP5732919B2 (en) Data distribution system, node, and data distribution method
JP6499625B2 (en) Communication apparatus and communication method
WO2021120764A1 (en) Method and apparatus for sending and receiving data
JP6196535B2 (en) Information processing apparatus, control method therefor, and program
JP3965201B1 (en) Communication program for network communication equipment and bidirectional ring network.
JP5886770B2 (en) Communication node, network system, and communication method
WO2023162130A1 (en) Data collection system, method, and program
JP2009260797A (en) Information distribution system
JP2008206028A (en) Function distributed communication equipment, constituent coupling control method and program
Gao et al. Design and implementation of SDN multicast for distributed shared memory
JP5592222B2 (en) Request relay method, request relay program, and relay device
KR100938003B1 (en) Method of routing information management in Multi-protocol Label Switching router and apparatus therefor