JP2024003368A - router - Google Patents

router Download PDF

Info

Publication number
JP2024003368A
JP2024003368A JP2022102457A JP2022102457A JP2024003368A JP 2024003368 A JP2024003368 A JP 2024003368A JP 2022102457 A JP2022102457 A JP 2022102457A JP 2022102457 A JP2022102457 A JP 2022102457A JP 2024003368 A JP2024003368 A JP 2024003368A
Authority
JP
Japan
Prior art keywords
node
multicast
group
group message
igmp
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
JP2022102457A
Other languages
Japanese (ja)
Inventor
智史 小山
Satoshi Koyama
卓也 倉掛
Takuya Kurakake
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.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Hoso Kyokai NHK filed Critical Nippon Hoso Kyokai NHK
Priority to JP2022102457A priority Critical patent/JP2024003368A/en
Publication of JP2024003368A publication Critical patent/JP2024003368A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To implement a function for automatically preventing unnecessary transfer of multicast traffic with a little memory quantity.
SOLUTION: A router 10 comprises: a plurality of transmission/reception sections 11; a router processing section 12; an IGMP monitoring section 14 for monitoring a group message with a participation request in a multicast group or an exit request defined as a content and storing information of a node, which receives a multicast flow, in a management table 15 in accordance with a received message; and an IGMP processing section 13 for processing the group message. The IGMP monitoring section 14 stores in the management table 15 an identifier of a node which first transmits a group message with the participation request defined as a content and a multiple reception node presence flag indicating whether a plurality of reception nodes is present in the multicast group for each multicast group and for each transmission/reception section 11 and outputs to the IGMP processing section 13 a message or a transfer stop instruction in accordance with the multiple reception node presence flag in a case where the group message is received.
SELECTED DRAWING: Figure 1
COPYRIGHT: (C)2024,JPO&INPIT

Description

本発明は、ルータに係り、特に、IP(Internet Protocol)ネットワークのルータに関する。 The present invention relates to routers, and particularly to routers for IP (Internet Protocol) networks.

IPマルチキャストは、ノード(送信装置)から送信された1つのIPフローをネットワークスイッチの内部で複製し、受信を要求するノード(受信装置)に効率よく配信する技術である。あるマルチキャストフローの受信を行うノード(受信装置)は、IPv4システムではIGMP(非特許文献1、2参照)を用いて、また、IPv6システムではMLD(非特許文献3、4参照)を用いて、ルータに受信要求および受信停止を伝える。
IGMPv2(IGMP Version 2)とMLDv1(MLD:MLD Version 1)、IGMPv3(IGMP Version 3)とMLDv2(MLD Version 2)は、それぞれ動作するプロトコルがIPv4(Internet Protocol version 4)とIPv6(Internet Protocol version 6)であるという違いの他は、ほぼ同一のため、以下ではIGMPを用いて、従来のルータによる処理の概略を説明する。
IP multicast is a technology that copies a single IP flow sent from a node (sending device) inside a network switch and efficiently distributes it to the node (receiving device) that requests reception. A node (receiving device) that receives a certain multicast flow uses IGMP (see non-patent documents 1 and 2) in an IPv4 system, and MLD (see non-patent documents 3 and 4) in an IPv6 system. Informs the router of a reception request and reception stop.
IGMPv2 (IGMP Version 2) and MLDv1 (MLD: MLD Version 1), IGMPv3 (IGMP Version 3) and MLDv2 (MLD Version 2) operate on IPv4 (Internet Protocol version 4) and IPv6 (Internet Protocol version 6), respectively. ) are almost the same, so below we will use IGMP to outline the processing by a conventional router.

マルチキャストフローを受信しようとする受信装置は、受信を開始するときに、IGMPメンバーシップレポート(JOINメッセージ)を受信装置からルータに向けて送信する。JOINメッセージを受信したルータは、要求されたマルチキャストフローを、JOINメッセージを受信したL2(layer 2)ネットワークへ転送する。 When a receiving device that wants to receive a multicast flow starts receiving, it sends an IGMP membership report (JOIN message) to the router. The router that receives the JOIN message forwards the requested multicast flow to the L2 (layer 2) network that received the JOIN message.

ルータは、転送処理中のマルチキャストフローを受信する受信装置が存在しているか確認するため、定期的にIGMPメンバーシップクエリを送信する。このメンバーシップクエリを受信したノード(受信装置)は、メンバーシップレポートを送信して、ルータにマルチキャストフローの受信装置が存在していることを通知する。メンバーシップクエリがネットワークの帯域を圧迫することを抑制するため、他の受信装置がメンバーシップレポートを送信したことを検知した受信装置はメンバーシップレポートを送信しない。 The router periodically sends an IGMP membership query to check whether there is a receiving device that can receive the multicast flow that is being forwarded. A node (receiving device) that receives this membership query transmits a membership report to notify the router of the existence of a multicast flow receiving device. In order to prevent membership queries from compressing the network bandwidth, a receiving device that detects that another receiving device has sent a membership report does not send a membership report.

受信装置は、マルチキャストフローの受信を停止する際にはIGMPリーブグループメッセージを送信し、ルータに受信の停止を伝える。リーブグループメッセージを受信したルータは、他にマルチキャストフローの受信装置が存在するかチェックするため、IGMPメンバーシップクエリを送信し、IGMPメンバーシップレポートを受信できなかった場合、マルチキャストフローの転送を停止する。 When a receiving device stops receiving multicast flows, it sends an IGMP leave group message to notify the router of the stop of receiving. A router that receives a leave group message sends an IGMP membership query to check if there are any other multicast flow receivers, and if it cannot receive an IGMP membership report, it stops forwarding multicast flows. .

特許第4775716号公報Patent No. 4775716

W. Fenner、「Internet Group Management Protocol, Version 2」、[online]、IETF RFC 2236, Nov. 1997、[2022年5月19日検索]、インターネット〈URL:https://datatracker.ietf.org/doc/html/rfc2236〉W. Fenner, "Internet Group Management Protocol, Version 2", [online], IETF RFC 2236, Nov. 1997, [Retrieved May 19, 2022], Internet <URL: https://datatracker.ietf.org/ doc/html/rfc2236〉 B. Cain、他、「Internet Group management Protocol, Version 3」、[online]、IETF RFC 3376, Oct. 2002、[2022年5月19日検索]、インターネット〈https://datatracker.ietf.org/doc/html/rfc3376〉B. Cain, et al., "Internet Group management Protocol, Version 3", [online], IETF RFC 3376, Oct. 2002, [retrieved May 19, 2022], Internet <https://datatracker.ietf.org/ doc/html/rfc3376〉 S. Deering、他、「Multicast Listener Discovery (MLD) for IPv6」、[online]、IETF RFC 2710, Oct. 1999、[2022年5月19日検索]、インターネット〈https://datatracker.ietf.org/doc/html/rfc2710〉S. Deering, et al., "Multicast Listener Discovery (MLD) for IPv6", [online], IETF RFC 2710, Oct. 1999, [Retrieved May 19, 2022], Internet <https://datatracker.ietf.org /doc/html/rfc2710〉 R. Vida、他、「Multicast Listener Discovery Version 2 (MLDv2) for IPv6」、[online]、IETF RFC 3810, Jun. 2004、[2022年5月19日検索]、インターネット〈https://datatracker.ietf.org/doc/html/rfc3810〉R. Vida, et al., "Multicast Listener Discovery Version 2 (MLDv2) for IPv6", [online], IETF RFC 3810, Jun. 2004, [Retrieved May 19, 2022], Internet <https://datatracker.ietf .org/doc/html/rfc3810〉

受信装置がマルチキャストフローの受信停止を要求してから、つまり、IGMPリーブグループメッセージを送信してから、ルータによりメンバーシップレポートの受信確認が完了するまでの間、他にマルチキャストフローの受信装置がない場合でもマルチキャストフローは転送され続ける。例えば、テレビ番組制作で、複数の映像を切り替えるビデオスイッチャ(ノード)が受信する映像を切り替える場合には、あるマルチキャストフローの受信停止と次のマルチキャストフローの受信開始(受信要求)とを連続して行う。そのため、停止したマルチキャストフローが実際には転送されるとネットワークに負荷がかかり、余裕を持った帯域設計が必要となる。 There is no other receiver of the multicast flow after the receiver requests to stop receiving the multicast flow, that is, after it sends the IGMP leave group message and until the membership report is acknowledged by the router. Multicast flows will continue to be forwarded even if For example, in TV program production, when a video switcher (node) that switches multiple videos switches the video it receives, it is possible to stop receiving one multicast flow and start receiving the next multicast flow (receiving request) in succession. conduct. Therefore, when a stopped multicast flow is actually forwarded, it puts a load on the network, and it is necessary to design a bandwidth with sufficient margin.

予めルータに設定を行うことで、IGMPリーブグループメッセージを受信すると即座に、マルチキャストフローの転送を停止することができるルータも存在する。しかし、そのような設定を行うと、他にマルチキャストフローの受信装置が存在する場合にもマルチキャストフローの転送が停止されてしまう。予め設定するのではなく、その時の状況に応じて、マルチキャストフローの転送が即座に、または、他にマルチキャストフローの受信装置がないことを確認した上で停止されることが望ましい。 Some routers can be configured in advance to stop forwarding multicast flows as soon as they receive an IGMP leave group message. However, if such settings are made, the forwarding of the multicast flow will be stopped even if there are other multicast flow receiving devices. It is preferable that multicast flow transfer be stopped immediately or after confirming that there are no other multicast flow receiving devices, depending on the situation at that time, rather than setting it in advance.

特許文献1に記載された従来の中継装置は、IGMPメンバーシップレポートを受信すると、レポート送信元のMACアドレスと、受信を要求しているマルチキャストグループとを紐づけて記録を行う。また、この中継装置は、IGMPリーブグループメッセージを受信した場合には、受信停止を要求しているマルチキャストグループに紐づいたレポート送信元のMACアドレスが1つである場合には、転送を即座に停止する。 When the conventional relay device described in Patent Document 1 receives an IGMP membership report, it associates and records the MAC address of the report source and the multicast group requesting reception. Additionally, when this relay device receives an IGMP leave group message, if there is only one MAC address of the report source associated with the multicast group requesting stop reception, it will immediately forward the message. Stop.

しかしながら、この従来の中継装置は、IGMPメンバーシップレポートを送信してくるMACアドレスを全て記録する。この従来技術では、多くの受信装置が1つの同じマルチキャストグループでマルチキャストフローを受信することがあるため、多くのメモリが必要である。そのため、マルチキャストトラフィックの無駄な転送をより少ないメモリ量で実現することが望まれている。 However, this conventional relay device records all MAC addresses that send IGMP membership reports. This prior art requires a lot of memory because many receiving devices may receive a multicast flow in one and the same multicast group. Therefore, it is desired to realize unnecessary forwarding of multicast traffic with a smaller amount of memory.

本発明は、以上のような問題点に鑑みてなされたものであり、マルチキャストトラフィックの無駄な転送を自動的に防ぐ機能を少ないメモリ量で実現するルータを提供することを課題とする。 The present invention has been made in view of the above-mentioned problems, and an object of the present invention is to provide a router that implements a function of automatically preventing unnecessary transfer of multicast traffic with a small amount of memory.

前記課題を解決するために、本発明に係るルータは、ネットワークの所定のノードとの間でIPパケットを送受信する複数の送受信部と、前記送受信部によって受信したマルチキャストフローをマルチキャストルーティングテーブルに応じて宛先の受信ノードに転送する処理を行うルータ処理部と、前記送受信部によって受信したメッセージであってマルチキャストグループへの参加要求またはマルチキャストグループからの離脱要求を内容とするグループメッセージを監視し、受信したグループメッセージに応じて、マルチキャストフローを受信するノードの情報を管理テーブルに保存するグループメッセージ監視部と、前記グループメッセージを処理するグループメッセージ処理部と、を備え、前記グループメッセージ監視部は、マルチキャストグループ毎に、且つ、前記送受信部毎に、最初に参加要求を内容とするグループメッセージを送信したノードの識別子と、マルチキャストグループ内に複数の受信ノードが存在するか否かを示す複数受信ノード存在フラグを前記管理テーブルに保存し、前記グループメッセージの受信時に前記複数受信ノード存在フラグに応じて、前記グループメッセージまたはマルチキャストフローの転送停止指示を前記グループメッセージ処理部に出力することとした。 In order to solve the above problems, a router according to the present invention includes a plurality of transmitting/receiving units that transmit and receive IP packets to and from predetermined nodes of a network, and a router that transmits multicast flows received by the transmitting/receiving units according to a multicast routing table. A router processing unit that performs processing for forwarding to a destination receiving node, and a group message received by the transmitting/receiving unit and containing a request to join a multicast group or a request to leave a multicast group are monitored and received. A group message monitoring unit that stores information on nodes that receive multicast flows in a management table in response to a group message; and a group message processing unit that processes the group message; and for each transmitting/receiving unit, the identifier of the node that first transmitted the group message containing the participation request, and the multiple receiving node presence flag indicating whether or not there are multiple receiving nodes in the multicast group. is stored in the management table, and an instruction to stop transfer of the group message or multicast flow is output to the group message processing unit according to the multiple receiving node presence flag when receiving the group message.

本発明は、以下に示す優れた効果を奏するものである。
本発明に係るルータは、マルチキャストグループに2回目以降に参加要求を内容とするグループメッセージを送信したノードについて管理テーブルに個別の情報を記録せずに、フラグで管理することができる。したがって、ルータは、マルチキャストトラフィックの無駄な転送を自動的に防ぐ機能を少ないメモリ量で実現することができる。
The present invention has the following excellent effects.
The router according to the present invention can manage nodes that have sent a group message containing a participation request to a multicast group for the second time or later using flags without recording individual information in the management table. Therefore, the router can implement the function of automatically preventing unnecessary forwarding of multicast traffic with a small amount of memory.

本発明の実施形態に係るルータの構成を示すブロック図である。FIG. 1 is a block diagram showing the configuration of a router according to an embodiment of the present invention. 図1のルータに保存される管理テーブルの一例である。2 is an example of a management table stored in the router of FIG. 1; IGMP監視部の処理の流れを示すフローチャートである(IGMPメンバーシップレポート受信時)。3 is a flowchart showing the process flow of the IGMP monitoring unit (when receiving an IGMP membership report). IGMP監視部の処理の流れを示すフローチャートである(IGMPリーブグループメッセージ受信時)。3 is a flowchart showing the process flow of the IGMP monitoring unit (when receiving an IGMP leave group message). ルータ内の各部で行う処理の流れを示すシーケンス図である(IGMPリーブグループメッセージ受信時)。FIG. 2 is a sequence diagram showing the flow of processing performed by each part within the router (when receiving an IGMP leave group message). 本発明の実施形態に係るルータを含むシステムの構成例である。1 is a configuration example of a system including a router according to an embodiment of the present invention.

本発明の実施形態に係るルータについて図面を参照して説明する。本実施形態では、ルータが送受信するグループメッセージは、IGMP(Internet Group Management Protocol)に従ったメッセージであるものとして説明する。図1に示すように、ルータ10は、複数の送受信部11と、ルータ処理部12と、IGMP処理部(グループメッセージ処理部)13と、IGMP監視部(グループメッセージ監視部)14と、を備えている。
送受信部11は、ネットワークの所定のノードとの間でIPパケットを送受信する。
ルータ処理部12は、送受信部11によって受信したマルチキャストフローをマルチキャストルーティングテーブルに応じて宛先の受信ノードに転送する処理を行う。
IGMP監視部14は、グループメッセージを監視し、受信したグループメッセージに応じて、マルチキャストフローを受信するノードの情報を管理テーブル15に保存する。IGMP処理部13は、受信したグループメッセージを処理する。グループメッセージは、送受信部11によって受信したメッセージであってマルチキャストグループへの参加要求またはマルチキャストグループからの離脱要求を内容とするものである。
IGMP監視部14は、マルチキャストグループ毎に、且つ、送受信部11毎に、最初に参加要求を内容とするグループメッセージを送信したノードの識別子と、マルチキャストグループ内に複数の受信ノードが存在するか否かを示す複数受信ノード存在フラグを管理テーブル15に保存する。IGMP監視部14は、グループメッセージの受信時に複数受信ノード存在フラグに応じて、当該グループメッセージまたはマルチキャストフローの転送停止指示をIGMP処理部13に出力する。
A router according to an embodiment of the present invention will be described with reference to the drawings. In this embodiment, the group messages transmitted and received by the router will be described as messages in accordance with IGMP (Internet Group Management Protocol). As shown in FIG. 1, the router 10 includes a plurality of transmitting/receiving units 11, a router processing unit 12, an IGMP processing unit (group message processing unit) 13, and an IGMP monitoring unit (group message monitoring unit) 14. ing.
The transmitting/receiving unit 11 transmits and receives IP packets to and from predetermined nodes of the network.
The router processing unit 12 performs a process of transferring the multicast flow received by the transmitting/receiving unit 11 to the destination receiving node according to the multicast routing table.
The IGMP monitoring unit 14 monitors group messages, and stores information on nodes that receive multicast flows in the management table 15 according to the received group messages. The IGMP processing unit 13 processes the received group message. The group message is a message received by the transmitting/receiving unit 11, and contains a request to join a multicast group or a request to leave a multicast group.
The IGMP monitoring unit 14 checks, for each multicast group and for each transmitter/receiver 11, the identifier of the node that first sent the group message containing a participation request, and whether or not there are multiple receiving nodes in the multicast group. A multiple receiving node existence flag indicating whether the receiving node exists is stored in the management table 15. When receiving a group message, the IGMP monitoring unit 14 outputs an instruction to stop transferring the group message or multicast flow to the IGMP processing unit 13 according to the multiple receiving node presence flag.

本実施形態では、グループメッセージとは、IGMPメンバーシップレポートやIGMPリーブグループメッセージを指す。IGMPメンバーシップレポートやIGMPリーブグループメッセージをIGMPメッセージとも呼ぶ。複数受信ノード存在フラグを単にフラグと呼称する場合もある。マルチキャストルーティングテーブルを単にルーティングテーブルと呼称する場合もある。以下、ルータ10の各部の構成を説明する。 In this embodiment, group messages refer to IGMP membership reports and IGMP leave group messages. IGMP membership reports and IGMP leave group messages are also called IGMP messages. The multiple receiving node presence flag may also be simply referred to as a flag. A multicast routing table is sometimes simply called a routing table. The configuration of each part of the router 10 will be explained below.

送受信部11は、ルータのポートである。各送受信部11は、ルータ処理部12およびIGMP監視部14にそれぞれ接続されている。ルータ10は、例えばN個の送受信部11を備え、それぞれ、1,2,…,N-1,Nの番号で識別される。送受信部<1>にはノード20aが接続され、送受信部<2>にはL2スイッチ21を介してノード20bおよびノード20cが接続される。送受信部<N-1>にはノードが接続されておらず、送受信部<N>にはノード20Nが接続されている。ノードを区別しない場合、ノード20と表記する。 The transmitting/receiving unit 11 is a port of a router. Each transmitting/receiving section 11 is connected to a router processing section 12 and an IGMP monitoring section 14, respectively. The router 10 includes, for example, N transmitting/receiving units 11, each of which is identified by a number 1, 2, . . . , N-1, N. A node 20a is connected to the transmitter/receiver <1>, and a node 20b and a node 20c are connected to the transmitter/receiver <2> via the L2 switch 21. No node is connected to the transmitting/receiving section <N-1>, and a node 20N is connected to the transmitting/receiving section <N>. If the node is not distinguished, it will be referred to as node 20.

所定の送受信部11は、ネットワークの所定のノード20からマルチキャストフローを受信する。ルータ10内部で複製されたマルチキャストフローは、複数の他の送受信部11から、ネットワークの他のノード20に送信される。例えばノード20aがIPフローの送信装置となり、ノード20b、ノード20cおよびノード20Nがマルチキャストフローの受信装置となる場合、送受信部<1>は、受信ポートとなり、送受信部<2>や送受信部<N>は送信ポートとなる。 A predetermined transmitter/receiver 11 receives a multicast flow from a predetermined node 20 of the network. The multicast flow replicated within the router 10 is transmitted from a plurality of other transmitting/receiving units 11 to other nodes 20 in the network. For example, if the node 20a becomes an IP flow transmitter and the nodes 20b, 20c, and 20N become multicast flow receivers, the transmitter/receiver <1> becomes a receiving port, and the transmitter/receiver <2> or the transmitter/receiver <N > is the sending port.

また、送受信部11は、ネットワークの所定のノード20から各種メッセージを受信する。各種メッセージは、IGMPメンバーシップレポートやIGMPリーブグループメッセージの他、クエリメッセージ等を含む。また、送受信部11は、IGMPメッセージを受信すると、IGMPメッセージをIGMP監視部14に出力する。送受信部11は、IGMPメッセージ以外のパケットを受信すると、これらのパケットをルータ処理部12に出力する。ルータ処理部12は、一般的なマルチキャスト対応ルータの機能を提供するものである。 The transmitting/receiving unit 11 also receives various messages from a predetermined node 20 of the network. Various messages include IGMP membership reports, IGMP leave group messages, and query messages. Furthermore, upon receiving the IGMP message, the transmitter/receiver 11 outputs the IGMP message to the IGMP monitor 14 . When receiving packets other than IGMP messages, the transmitter/receiver 11 outputs these packets to the router processor 12 . The router processing unit 12 provides the functions of a general multicast compatible router.

IGMP処理部13は、IGMPの処理とマルチキャストルーティングテーブルの更新制御を行う。IGMP処理部13は、IGMP監視部14からIGMPメンバーシップレポートメッセージを受信すると、IGMPメンバーシップレポートを処理する。このとき、IGMP処理部13は、必要に応じて、マルチキャストルーティングテーブルの更新制御を行う。
IGMP処理部13は、IGMP監視部14からIGMPリーブグループメッセージを受信すると、IGMPリーブグループメッセージを処理する。このとき、IGMP処理部13は、該当マルチキャストグループにIGMPメンバーシップクエリを送信し、一定時間内にIGMPメンバーシップレポートを受信できない場合にマルチキャストフローの転送を停止する。
IGMP処理部13は、IGMP監視部14から即時転送停止指示を受信すると、即座にマルチキャストフローの転送を停止する。
IGMP処理部13は、マルチキャストフローの転送を停止するとき、ルータ処理部12に対してマルチキャストルーティングテーブルの該当エントリの削除更新を指示する。
The IGMP processing unit 13 performs IGMP processing and multicast routing table update control. Upon receiving the IGMP membership report message from the IGMP monitoring unit 14, the IGMP processing unit 13 processes the IGMP membership report. At this time, the IGMP processing unit 13 performs update control of the multicast routing table as necessary.
Upon receiving the IGMP leave group message from the IGMP monitoring unit 14, the IGMP processing unit 13 processes the IGMP leave group message. At this time, the IGMP processing unit 13 transmits an IGMP membership query to the corresponding multicast group, and stops forwarding the multicast flow if an IGMP membership report cannot be received within a certain period of time.
When the IGMP processing unit 13 receives the immediate transfer stop instruction from the IGMP monitoring unit 14, it immediately stops transferring the multicast flow.
When stopping multicast flow transfer, IGMP processing unit 13 instructs router processing unit 12 to delete and update the corresponding entry in the multicast routing table.

IGMP処理部13は、IGMP監視部14から、マルチキャストの即時転送停止指示を受信すると、停止対象のマルチキャストグループに関する処理を中止する。IGMP処理部13は、この転送停止指示で指定されたマルチキャストグループのエントリをルーティングテーブルから削除する更新指示をルータ処理部12に出力する。ルータ処理部12がマルチキャストルーティングテーブルからエントリの削除を行った場合、すなわち、マルチキャストの転送を停止する更新を行った場合、IGMP処理部13は、その内容をIGMP監視部14に出力する。IGMP監視部14は、IGMP処理部13から、ルーティングテーブルの更新通知を受領した後に、管理テーブル15から、当該マルチキャストグループのエントリを削除する。 When the IGMP processing unit 13 receives the immediate multicast transfer stop instruction from the IGMP monitoring unit 14, it stops processing regarding the multicast group to be stopped. The IGMP processing unit 13 outputs an update instruction to the router processing unit 12 to delete the entry of the multicast group specified by this transfer stop instruction from the routing table. When the router processing unit 12 deletes an entry from the multicast routing table, that is, when it updates to stop multicast transfer, the IGMP processing unit 13 outputs the contents to the IGMP monitoring unit 14. After receiving the routing table update notification from the IGMP processing unit 13, the IGMP monitoring unit 14 deletes the entry for the multicast group from the management table 15.

IGMP監視部14は、IGMPメンバーシップレポートの受信やIGMPリーブグループメッセージの受信に応じて、管理テーブル15を更新する。図2に示す管理テーブル15は、マルチキャスト受信ノード管理テーブルである。管理テーブル15は、項目として、例えば、送受信部番号151と、マルチキャストグループ152と、送信元IPアドレス153と、ノード識別子154と、複数受信ノード存在フラグ155と、を備えている。 The IGMP monitoring unit 14 updates the management table 15 in response to receiving an IGMP membership report or receiving an IGMP leave group message. The management table 15 shown in FIG. 2 is a multicast receiving node management table. The management table 15 includes, for example, a transmitter/receiver number 151, a multicast group 152, a source IP address 153, a node identifier 154, and a multiple receiving node existence flag 155 as items.

送受信部番号151は、ルータ10の複数の送受信部11を識別する識別子である。ここでは、送受信部11の個数に対応した番号で識別しているが、これに限定されるものではない。マルチキャストグループ152は、グループ固有の識別子であり、IPマルチキャストグループアドレスを示す。送信元IPアドレス153は、IPパケット(マルチキャストフロー)の送信装置の識別子であり、送信装置のIPアドレスである。ノード識別子154は、IGMPメッセージを送信したノードの識別子である。ノード識別子として、例えば、IGMPメンバーシップレポートの送信元MACアドレス、または、送信元IPアドレスが利用できる。管理テーブル15においてノード識別子154の項目については、送受信部毎に、かつ、マルチキャストグループ毎に、最初にJOINメッセージを送信してきたノードの識別子が記録される。 The transmitter/receiver number 151 is an identifier that identifies the plurality of transmitter/receivers 11 of the router 10. Here, the number corresponding to the number of transmitting/receiving units 11 is used for identification, but the number is not limited to this. Multicast group 152 is a group-specific identifier and indicates an IP multicast group address. The source IP address 153 is the identifier of the transmitting device of the IP packet (multicast flow), and is the IP address of the transmitting device. Node identifier 154 is the identifier of the node that sent the IGMP message. For example, the source MAC address or source IP address of the IGMP membership report can be used as the node identifier. Regarding the node identifier 154 item in the management table 15, the identifier of the node that first transmitted the JOIN message is recorded for each transmitter/receiver and for each multicast group.

複数受信ノード存在フラグ155は、同じ送受信部11に接続されたノードを含むマルチキャストグループに、複数の受信ノードが存在していれば真であり、そうでなければ偽となる。例えば、送受信部番号が「1」であり、かつ、マルチキャストグループが「232.0.0.1」である第1のエントリにおいて、複数受信ノード存在フラグ155は「真」である。また、送受信部番号が「2」であり、かつ、マルチキャストグループが「232.0.0.1」である第2のエントリにおいて、複数受信ノード存在フラグ155は「偽」である。これら第1のエントリと第2のエントリとは、マルチキャストグループ152のレコードは同一であるが、送信元IPアドレス153およびノード識別子154のレコードが相違する。
なお、図2に示す管理テーブル15のレコードは、ある時点における一例である。
The multiple receiving node presence flag 155 is true if a plurality of receiving nodes exist in a multicast group that includes nodes connected to the same transmitter/receiver 11, and is false otherwise. For example, in the first entry where the transmitter/receiver number is "1" and the multicast group is "232.0.0.1", the multiple receiving node existence flag 155 is "true". Furthermore, in the second entry where the transmitter/receiver number is "2" and the multicast group is "232.0.0.1", the multiple receiving node existence flag 155 is "false". These first and second entries have the same multicast group 152 record, but different source IP address 153 and node identifier 154 records.
Note that the records of the management table 15 shown in FIG. 2 are an example at a certain point in time.

IGMP監視部14は、IGMPメンバーシップレポートを送信したノードの情報に一致するエントリが管理テーブル15に存在しない場合、管理テーブル15において、当該IGMPメンバーシップレポートを送信したノードの識別子とフラグを偽とした値を有する新しいエントリを追加する。
IGMP監視部14は、IGMPメンバーシップレポートを送信したノードの情報に一致し、かつ、フラグが偽であるエントリが管理テーブル15に保存され、かつ保存されたエントリにおけるノードの識別子がIGMPメンバーシップレポートを送信したノードの識別子と異なる場合、フラグを真とする。IGMP監視部14は、フラグのレコードが偽であった場合、真に置き換え、また、フラグのレコードが真であった場合、その値を維持する。
If there is no entry in the management table 15 that matches the information of the node that sent the IGMP membership report, the IGMP monitoring unit 14 sets the identifier and flag of the node that sent the IGMP membership report to false in the management table 15. Add a new entry with the value.
The IGMP monitoring unit 14 saves an entry in the management table 15 that matches the information of the node that sent the IGMP membership report and whose flag is false, and that the node identifier in the saved entry matches the information of the node that sent the IGMP membership report. If the identifier is different from the identifier of the node that sent it, the flag is set to true. If the flag record is false, the IGMP monitoring unit 14 replaces it with true, and if the flag record is true, it maintains the value.

IGMP監視部14は、IGMPリーブグループメッセージを送信したノードの情報に一致するエントリが管理テーブル15に存在しない場合、IGMPリーブグループメッセージで指定されたマルチキャストグループの転送停止指示をIGMP処理部13に出力する。 If there is no entry in the management table 15 that matches the information of the node that sent the IGMP leave group message, the IGMP monitoring unit 14 outputs an instruction to stop transferring the multicast group specified in the IGMP leave group message to the IGMP processing unit 13. do.

IGMP監視部14は、IGMPリーブグループメッセージを送信したノードの情報に一致し、かつ、フラグが偽であるエントリが管理テーブル15に保存され、かつ保存されたエントリにおけるノードの識別子がIGMPリーブグループメッセージを送信したノードの識別子に一致する場合、IGMPリーブグループメッセージで指定されたマルチキャストグループの転送停止指示をIGMP処理部13に出力する。 The IGMP monitoring unit 14 saves an entry in the management table 15 that matches the information of the node that sent the IGMP leave group message and whose flag is false, and that the node identifier in the saved entry matches the information of the node that sent the IGMP leave group message. If the identifier matches the identifier of the node that sent the IGMP leave group message, an instruction to stop transfer of the multicast group specified in the IGMP leave group message is output to the IGMP processing unit 13.

上記した構成により、ルータ10は、予め設定を行うことなく、ネットワークの状態に合わせて、あるマルチキャストフローの受信ノードが1つの場合に、受信ノードが受信を停止する際に即座に当該ルータからの転送を停止し無駄な帯域を消費することを防ぐことができる。また、ルータ10は、ポート(送受信部11)ごとに、各マルチキャストグループについて、最初にJOINメッセージ(IGMPメンバーシップレポート)を送信してきたデバイスの情報と、そのデバイス以外の受信装置からのJOINメッセージを受信したかどうかを表すフラグ(複数受信装置存在フラグ)を記録する管理テーブル15を有している。これにより、多くの受信装置が1つの同じマルチキャストグループでマルチキャストフローを受信することがあったとしても、従来技術のように多くのメモリを必要とすることはない。そのため、ルータ10は、マルチキャストトラフィックの無駄な転送をより少ないメモリ量で実現することができる。 With the above-described configuration, the router 10 can immediately respond to the network status without any prior settings, and when the receiving node stops receiving data from the router, when there is only one receiving node for a certain multicast flow. Transfer can be stopped and unnecessary bandwidth consumption can be prevented. In addition, for each port (transmission/reception unit 11), the router 10 receives information about the device that originally sent the JOIN message (IGMP membership report) and JOIN messages from receiving devices other than that device for each multicast group. It has a management table 15 that records a flag (multiple receiving device existence flag) indicating whether or not reception has been received. Thereby, even if many receiving devices receive multicast flows in one and the same multicast group, a large amount of memory is not required as in the prior art. Therefore, the router 10 can realize unnecessary forwarding of multicast traffic with a smaller amount of memory.

[ルータの動作]
次に、ルータ10の動作について説明する。
<IGMPメンバーシップレポート受信時の処理>
まず、IGMPメンバーシップレポートを受信したときにIGMP監視部14が行う処理の流れについて図3を参照して説明する。この場合、IGMP監視部14は、送受信部番号と、IGMPメンバーシップレポート内のマルチキャストグループアドレスおよびマルチキャスト送信元IPアドレスと、に一致するエントリが、管理テーブル15に存在するかどうかを確認する(ステップS31)。ここで、IGMPメンバーシップレポートに、マルチキャスト送信元IPアドレスが指定されていない場合、マルチキャスト送信元IPアドレスが指定されていないことを示す値(例えば0)を用いる。
[Router operation]
Next, the operation of the router 10 will be explained.
<Processing when receiving an IGMP membership report>
First, the flow of processing performed by the IGMP monitoring unit 14 when receiving an IGMP membership report will be described with reference to FIG. 3. In this case, the IGMP monitoring unit 14 checks whether there is an entry in the management table 15 that matches the transmitting/receiving unit number and the multicast group address and multicast source IP address in the IGMP membership report (step S31). Here, if the multicast source IP address is not specified in the IGMP membership report, a value (for example, 0) indicating that the multicast source IP address is not specified is used.

前記ステップS31において、IGMPメンバーシップレポートの情報に一致するエントリが管理テーブル15に存在しない場合(ステップS31:No)、IGMP監視部14は、新しいエントリを管理テーブル15に追加する(ステップS32)。新しいエントリは、確認に用いた送受信部番号、マルチキャストグループアドレス、マルチキャスト送信元IPアドレス、IGMPメンバーシップレポートを送信したノードのノード識別子、複数受信ノード存在フラグを偽とした値によるエントリである。 In step S31, if there is no entry in the management table 15 that matches the information in the IGMP membership report (step S31: No), the IGMP monitoring unit 14 adds a new entry to the management table 15 (step S32). The new entry includes the transmitter/receiver number used for confirmation, the multicast group address, the multicast source IP address, the node identifier of the node that sent the IGMP membership report, and the value with the multiple receiving node existence flag set to false.

具体的には、図2の管理テーブル15において、送受信部番号=1、マルチキャストグループアドレス=239.1.1.1、マルチキャスト送信元IPアドレス=0(なし)、IGMPメンバーシップレポートを送信したノードのノード識別子=00:00:5e:00:53:ff、複数受信ノード存在フラグ=偽、とした値によるエントリは、ステップS32で追加された例である。 Specifically, in the management table 15 of FIG. 2, transmitter/receiver number = 1, multicast group address = 239.1.1.1, multicast source IP address = 0 (none), and node identifier of the node that sent the IGMP membership report = An entry with a value of 00:00:5e:00:53:ff and multiple receiving node existence flag=false is an example added in step S32.

ステップS32に続いて、IGMP監視部14は、受信したIGMPメンバーシップレポートをIGMP処理部13に出力し(ステップS33)、IGMPメンバーシップレポート受信時の処理を終了する。なお、IGMP処理部13は、受け取ったIGMPメンバーシップレポートを処理する。 Following step S32, the IGMP monitoring unit 14 outputs the received IGMP membership report to the IGMP processing unit 13 (step S33), and ends the process when receiving the IGMP membership report. Note that the IGMP processing unit 13 processes the received IGMP membership report.

一方、前記ステップS31において、一致するエントリが存在し(ステップS31:Yes)かつ、複数受信ノード存在フラグが偽である場合(ステップS34:Yes)、IGMP監視部14は、対象エントリのノード識別子がIGMPメンバーシップレポートの送信ノードのノード識別子と異なるか否か判別する(ステップS35)。ここで、対象エントリのノード識別子とは、当該送受信部番号かつ当該マルチキャストグループに最初にJOINメッセージを送信してきたデバイスのノード識別子である。ノード識別子が互いに異なる場合(ステップS35:Yes)、IGMP監視部14は、対象エントリの複数受信ノード存在フラグを真として(ステップS36)、ステップS33に進む。なお、ステップS36では、IGMP監視部14は、対象エントリの複数受信ノード存在フラグのレコードを偽から真に置き換える。 On the other hand, in step S31, if a matching entry exists (step S31: Yes) and the multiple receiving node existence flag is false (step S34: Yes), the IGMP monitoring unit 14 determines that the node identifier of the target entry is It is determined whether the node identifier is different from the node identifier of the sending node of the IGMP membership report (step S35). Here, the node identifier of the target entry is the node identifier of the device that has the transmitter/receiver number and first transmitted the JOIN message to the multicast group. If the node identifiers are different from each other (step S35: Yes), the IGMP monitoring unit 14 sets the multiple receiving node existence flag of the target entry to true (step S36), and proceeds to step S33. In addition, in step S36, the IGMP monitoring unit 14 replaces the record of the multiple receiving node existence flag of the target entry from false to true.

前記ステップS35の判別処理においてNoである場合、すなわち、対象エントリのノード識別子がIGMPメンバーシップレポートの送信ノードのノード識別子に一致する場合、IGMP監視部14は、ステップS33に進む。なお、この場合、IGMP監視部14は、対象エントリの複数受信ノード存在フラグのレコードが偽であるので、その値を維持する。
前記ステップS34の判別処理においてNoである場合、すなわち、IGMPメンバーシップレポートの情報に一致するエントリが管理テーブル15に存在し、その複数受信ノード存在フラグが真である場合、IGMP監視部14は、ステップS33に進む。なお、この場合、IGMP監視部14は、対象エントリの複数受信ノード存在フラグのレコードが真であるので、その値を維持する。
If the determination in step S35 is No, that is, if the node identifier of the target entry matches the node identifier of the sending node of the IGMP membership report, the IGMP monitoring unit 14 proceeds to step S33. In this case, the IGMP monitoring unit 14 maintains the record of the multiple receiving node existence flag of the target entry since it is false.
If No in the determination process of step S34, that is, if an entry matching the information in the IGMP membership report exists in the management table 15 and its multiple receiving node presence flag is true, the IGMP monitoring unit 14: The process advances to step S33. Note that in this case, the IGMP monitoring unit 14 maintains the record of the multiple receiving node existence flag of the target entry because it is true.

<IGMPリーブグループメッセージ受信時の処理>
次に、IGMPリーブグループメッセージを受信したときにIGMP監視部14が行う処理の流れについて図4を参照して説明する。この場合、IGMP監視部14は、送受信部番号と、IGMPリーブグループメッセージ内のマルチキャストグループアドレスおよびマルチキャスト送信元IPアドレスと、に一致するエントリが、管理テーブル15に存在するかどうかを確認する(ステップS41)。IGMPリーブグループメッセージの情報に一致するエントリが管理テーブル15に存在しない場合(ステップS41:No)、IGMP監視部14は、マルチキャストグループアドレスで指定されたマルチキャストグループの即時転送停止指示をIGMP処理部13に出力し(ステップS42)、IGMPリーブグループメッセージ受信時の処理を終了する。なお、即時転送停止指示を受けたIGMP処理部13の処理については後記する。
<Processing when receiving an IGMP leave group message>
Next, the flow of processing performed by the IGMP monitoring unit 14 when receiving an IGMP leave group message will be described with reference to FIG. 4. In this case, the IGMP monitoring unit 14 checks whether there is an entry in the management table 15 that matches the transmitting/receiving unit number and the multicast group address and multicast source IP address in the IGMP leave group message (step S41). If there is no entry in the management table 15 that matches the information in the IGMP leave group message (step S41: No), the IGMP monitoring unit 14 sends an immediate transfer stop instruction for the multicast group specified by the multicast group address to the IGMP processing unit 13. (step S42), and the process when receiving an IGMP leave group message ends. Note that the processing of the IGMP processing unit 13 that receives the immediate transfer stop instruction will be described later.

前記ステップS41において、IGMPリーブグループメッセージの情報に一致するエントリが管理テーブル15に存在する場合(ステップS41:Yes)、IGMP監視部14は、対象エントリの複数受信ノード存在フラグが偽であるか否かを判別する(ステップS43)。複数受信ノード存在フラグが偽である場合(ステップS43:Yes)、IGMP監視部14は、対象エントリのノード識別子がIGMPリーブグループメッセージの送信ノードのノード識別子と異なるか否か判別する(ステップS44)。ここで、対象エントリのノード識別子とは、当該送受信部番号かつ当該マルチキャストグループに最初にJOINメッセージを送信してきたデバイスのノード識別子である。 In step S41, if an entry matching the information of the IGMP leave group message exists in the management table 15 (step S41: Yes), the IGMP monitoring unit 14 determines whether the multiple receiving node presence flag of the target entry is false. (Step S43). If the multiple receiving node existence flag is false (step S43: Yes), the IGMP monitoring unit 14 determines whether the node identifier of the target entry is different from the node identifier of the sending node of the IGMP leave group message (step S44). . Here, the node identifier of the target entry is the node identifier of the device that has the transmitter/receiver number and that first transmitted the JOIN message to the multicast group.

前記ステップS44において、ノード識別子が一致した場合(ステップS44:No)、IGMP監視部14は、ステップS42に進み、マルチキャストグループアドレスで指定されたマルチキャストグループの即時転送停止指示をIGMP処理部13に出力する。
一方、前記ステップS44において、ノード識別子が互いに異なる場合(ステップS44:Yes)、IGMP監視部14は、IGMPリーブグループメッセージをIGMP処理部13に出力し(ステップS45)、IGMPリーブグループメッセージの処理をIGMP処理部13に任せる。IGMP処理部13は、IGMPリーブグループメッセージを従来と同様に処理する。
また、前記ステップS43の判別処理においてNoである場合、すなわち、IGMPリーブグループメッセージの情報に一致するエントリが管理テーブル15に存在し、かつ、その複数受信ノード存在フラグが真である場合、IGMP監視部14は、IGMPリーブグループメッセージをIGMP処理部13に出力し(ステップS45)、IGMPリーブグループメッセージの処理をIGMP処理部13に任せる。なお、このように対象エントリの複数受信ノード存在フラグのレコードが真である場合、IGMP処理部13は、IGMPリーブグループメッセージを従来と同様に処理する。
In step S44, if the node identifiers match (step S44: No), the IGMP monitoring unit 14 proceeds to step S42, and outputs an immediate transfer stop instruction for the multicast group specified by the multicast group address to the IGMP processing unit 13. do.
On the other hand, in step S44, if the node identifiers are different from each other (step S44: Yes), the IGMP monitoring unit 14 outputs the IGMP leave group message to the IGMP processing unit 13 (step S45), and processes the IGMP leave group message. It is left to the IGMP processing unit 13. The IGMP processing unit 13 processes the IGMP leave group message in the same manner as before.
Further, if No in the determination process of step S43, that is, if an entry matching the information of the IGMP leave group message exists in the management table 15 and its multiple receiving node existence flag is true, the IGMP monitoring The unit 14 outputs the IGMP leave group message to the IGMP processing unit 13 (step S45), and entrusts the processing of the IGMP leave group message to the IGMP processing unit 13. Note that when the record of the multiple receiving node existence flag of the target entry is true in this manner, the IGMP processing unit 13 processes the IGMP leave group message in the same manner as before.

<即時転送停止の処理>
次に、即時転送停止を行うときにルータ10内の各部で行う処理の流れについて図5を参照(適宜図4参照)して説明する。この場合、まず、IGMP監視部14が、マルチキャストの即時転送停止指示をIGMP処理部13に出力する(ステップS42:図4)。そして、IGMP処理部13は、マルチキャストの即時転送停止指示を受信すると(ステップS421)、停止対象のマルチキャストグループに関する処理を中止する(ステップS422)。そして、IGMP処理部13は、ルータ処理部12に対して、ルーティングテーブルから該当のエントリを削除する更新指示を出力する(ステップS423)。
<Immediate transfer stop processing>
Next, the flow of processing performed by each unit in the router 10 when immediate transfer is stopped will be described with reference to FIG. 5 (see FIG. 4 as appropriate). In this case, first, the IGMP monitoring unit 14 outputs a multicast immediate transfer stop instruction to the IGMP processing unit 13 (step S42: FIG. 4). When the IGMP processing unit 13 receives the immediate multicast transfer stop instruction (step S421), it stops processing regarding the multicast group to be stopped (step S422). The IGMP processing unit 13 then outputs an update instruction to the router processing unit 12 to delete the corresponding entry from the routing table (step S423).

ルータ処理部12は、ルーティングテーブルからエントリを削除する更新指示を受信すると(ステップS424)、ルーティングテーブルから、該当のエントリを削除する(ステップS425)。一方、IGMP処理部13は、IGMP監視部14に対して、ルーティングテーブルの更新通知を出力する(ステップS426)。そして、IGMP監視部14は、ルーティングテーブルの更新通知を受信すると(ステップS427)、管理テーブル15からマルチキャストグループのエントリを削除する(ステップS428)。このように、ルータ10では、ルータ処理部12がルーティングテーブルにおいてマルチキャストの即時転送停止の対象エントリを削除するのにあわせて、IGMP監視部14は、管理テーブル15においてマルチキャストの即時転送停止の対象エントリを削除する。 When the router processing unit 12 receives an update instruction to delete an entry from the routing table (step S424), it deletes the corresponding entry from the routing table (step S425). On the other hand, the IGMP processing unit 13 outputs a routing table update notification to the IGMP monitoring unit 14 (step S426). Then, upon receiving the routing table update notification (step S427), the IGMP monitoring unit 14 deletes the multicast group entry from the management table 15 (step S428). In this way, in the router 10, at the same time as the router processing unit 12 deletes the target entry for immediate multicast transfer stop in the routing table, the IGMP monitoring unit 14 deletes the target entry for multicast immediate transfer stop in the management table 15. Delete.

[システムの構成例]
次に、ルータを含むシステムの構成例について図6を参照して説明する。図6に示すように、システム100は、IPマルチキャストを用いる番組制作システムであって、例えば放送局のスタジオ内に、2台のルータ10a,10bと、10台のノード20と、を備えている。ルータ10aは、ルータ1であり、ルータ10bは、ルータ2である。
[System configuration example]
Next, a configuration example of a system including a router will be described with reference to FIG. 6. As shown in FIG. 6, the system 100 is a program production system using IP multicast, and includes, for example, two routers 10a and 10b and ten nodes 20 in a studio of a broadcasting station. . Router 10a is router 1, and router 10b is router 2.

ルータ10aは、例えば3個の送受信部(ポート)を備えている。このうち、1個の送受信部には、L2スイッチ21aを介して3つのノード(ノード20a、ノード20cおよびノード20eが通信可能に接続されている。また、ルータ10aの他の送受信部には、L2スイッチ21bを介して3つのノード(ノード20b、ノード20dおよびノード20f)が通信可能に接続されている。ノード20aは、カメラ1であり、ノード20bは、カメラ2である。ノード20cは、マイク1であり、ノード20dは、マイク2である。ノード20eは、モニタ1であり、ノード20fは、モニタ2である。 The router 10a includes, for example, three transmitting/receiving units (ports). Three nodes (node 20a, node 20c, and node 20e) are communicably connected to one transmitting/receiving section of the router 10a via the L2 switch 21a. Three nodes (node 20b, node 20d, and node 20f) are communicably connected via the L2 switch 21b.The node 20a is the camera 1, and the node 20b is the camera 2.The node 20c is The microphone 1 is the microphone 1, the node 20d is the microphone 2, the node 20e is the monitor 1, and the node 20f is the monitor 2.

ルータ10bは、例えば5個の送受信部(ポート)を備えている。このうち、4個の送受信部には、それぞれ、1つのノード(ノード20g、ノード20h、ノード20kおよびノード20m)が通信可能に接続されている。ノード20gは、ビデオスイッチャであり、ノード20hは、オーディオミキサである。ノード20kは、モニタ3であり、ノード20mは、モニタ4である。ルータ10aのもう1つの送受信部と、ルータ10bのもう1つの送受信部とは、通信可能に接続されている。 The router 10b includes, for example, five transmitting/receiving units (ports). Of these, one node (node 20g, node 20h, node 20k, and node 20m) is communicably connected to each of the four transmitting/receiving units. Node 20g is a video switcher, and node 20h is an audio mixer. The node 20k is the third monitor, and the node 20m is the fourth monitor. Another transmitter/receiver of the router 10a and another transmitter/receiver of the router 10b are communicably connected.

システム100において、例えば、ノード20a(送信装置)から送信された1つのIPフローを、5台の受信ノード(ノード20e,20f,20g,20k,20m)に配信する場合について説明する。この例では、カメラ1で撮影した映像を、ビデオスイッチャと、モニタ1~モニタ4に配信する。比較として、ユニキャストにより映像を伝送するには、受信装置それぞれに対し、カメラ1で映像信号を複製して伝送する必要があるため、5本分の映像信号がカメラ1から出力されることになる。 In the system 100, a case will be described in which, for example, one IP flow transmitted from the node 20a (transmission device) is distributed to five receiving nodes (nodes 20e, 20f, 20g, 20k, and 20m). In this example, the video shot by camera 1 is distributed to the video switcher and monitors 1 to 4. For comparison, to transmit video by unicast, it is necessary to duplicate the video signal from camera 1 and transmit it to each receiving device, so 5 video signals are output from camera 1. Become.

一方、IPマルチキャストを用いる場合、映像信号はルータ10で複製される。具体的には、カメラ1から、1本分の映像信号が出力され、ルータ1では、モニタ1、モニタ2、ルータ2に伝送するために映像信号が複製される。ルータ1は、第1の送受信部から映像信号をL2スイッチ21aを介してモニタ1に伝送し、また、第2の送受信部から映像信号をL2スイッチ21bを介してモニタ2に伝送する。また、ルータ1の第3の送受信部から、1本分の映像信号が出力され、ルータ2に伝送される。
さらに、ルータ2では、モニタ3、モニタ4、ビデオスイッチャに伝送するために再び映像信号が複製される。番組制作システムでは、多数のモニタが、同じ信号を受信することがよくあるため、マルチキャストを利用することが一般的である。
On the other hand, when using IP multicast, the video signal is duplicated at the router 10. Specifically, the camera 1 outputs one video signal, and the router 1 copies the video signal for transmission to the monitor 1, monitor 2, and router 2. The router 1 transmits the video signal from the first transmitting/receiving section to the monitor 1 via the L2 switch 21a, and transmits the video signal from the second transmitting/receiving section to the monitor 2 via the L2 switch 21b. Further, one video signal is output from the third transmitting/receiving section of the router 1 and transmitted to the router 2.
Furthermore, in the router 2, the video signal is duplicated again for transmission to the monitor 3, monitor 4, and video switcher. In program production systems, multicasting is commonly used because many monitors often receive the same signal.

本実施形態のルータ10は、この例ではノード20a(カメラ1)のIPアドレスを、図2の管理テーブル15の送信元IPアドレス153の項目に記録する。また、ルータ10は、5台の受信ノード(ノード20e,20f,20g,20k,20m)のうち、最初にJOINメッセージ(IGMPメンバーシップレポート)を送信してきたデバイスの情報を、管理テーブル15のノード識別子154の項目に記録する。ルータ10は、この記録時点では、複数受信ノード存在フラグ155の項目を、「偽」とする。ルータ10は、次にJOINメッセージを送信してきたデバイスの情報を、管理テーブル15の新たなエントリにすることなく、複数受信ノード存在フラグ155の項目を、「真」とする。ルータ10は、3番目にJOINメッセージを送信してきたデバイスの情報を、管理テーブル15の新たなエントリにすることなく、複数受信ノード存在フラグ155の項目を、「真」のまま維持する。ルータ10は、4番目および5番目にJOINメッセージを送信してきたデバイスについては、3番目のデバイスのときと同様の処理をする。
なお、各デバイス(ノード)がマルチキャストグループから離脱する順番は任意である。グループ離脱時、ルータ10は、管理テーブル15のエントリにおいて複数受信ノード存在フラグが真となった段階で、そのエントリで示すマルチキャストグループについて、通常の処理を実行するようになる。ここで、通常の処理とは、IGMPリーブグループメッセージを受け取ると、受信確認を行ってから転送を終了する処理である。
In this example, the router 10 of this embodiment records the IP address of the node 20a (camera 1) in the source IP address 153 item of the management table 15 in FIG. The router 10 also stores information about the device that first sent the JOIN message (IGMP membership report) among the five receiving nodes (nodes 20e, 20f, 20g, 20k, and 20m) to the nodes in the management table 15. It is recorded in the field of identifier 154. At the time of this recording, the router 10 sets the item of the multiple receiving node presence flag 155 to "false". The router 10 sets the item of the multiple receiving node existence flag 155 to "true" without creating a new entry in the management table 15 for the information of the device that next transmitted the JOIN message. The router 10 does not create a new entry in the management table 15 for the information of the device that transmitted the JOIN message third, and maintains the item of the multiple receiving node existence flag 155 as "true". The router 10 performs the same processing as for the third device for the fourth and fifth devices that have transmitted the JOIN message.
Note that the order in which each device (node) leaves the multicast group is arbitrary. When leaving a group, the router 10 begins to perform normal processing for the multicast group indicated by the entry when the multiple receiving node presence flag becomes true in the entry in the management table 15. Here, the normal process is a process in which when an IGMP leave group message is received, the reception is confirmed and the transfer is ended.

従来技術の中継装置を用いた場合、メモリには、5台の受信ノードのために例えば5行のエントリデータが記録されるが、本実施形態のルータ10の場合、メモリには、5台の受信ノードのために例えば1行のエントリデータが記録される。そのため、ルータ10は、マルチキャストトラフィックの無駄な転送をより少ないメモリ量で実現することができる。 When a relay device of the prior art is used, for example, five lines of entry data are recorded for five receiving nodes in the memory, but in the case of the router 10 of the present embodiment, the memory records five lines of entry data for five receiving nodes. For example, one line of entry data is recorded for the receiving node. Therefore, the router 10 can realize unnecessary forwarding of multicast traffic with a smaller amount of memory.

以上、本発明の実施形態に係るルータについて説明したが、本発明の趣旨はこれらの記載に限定されるものではなく、特許請求の範囲の記載に基づいて広く解釈されなければならない。また、これらの記載に基づいて種々変更、改変などしたものも本発明の趣旨に含まれることはいうまでもない。
例えば、ルータ10を含むシステム100のネットワークは、放送局のスタジオ内のネットワークに限らず、放送局内のネットワークや、放送局を超えたより広範なネットワークであってもよい。
Although the router according to the embodiment of the present invention has been described above, the gist of the present invention is not limited to these descriptions, and should be broadly interpreted based on the description of the claims. Furthermore, it goes without saying that various changes and modifications based on these descriptions are also included within the spirit of the present invention.
For example, the network of the system 100 including the router 10 is not limited to a network within a studio of a broadcasting station, but may be a network within the broadcasting station or a wider network beyond the broadcasting station.

また、グループメッセージは、IGMPに従うとして説明したが、MLD(Multicast Listener Discovery)プロトコルに従ったメッセージであってもよい。 Furthermore, although the group message has been described as being based on IGMP, it may also be a message based on the MLD (Multicast Listener Discovery) protocol.

10,10a,10b ルータ
11 送受信部
12 ルータ処理部
13 IGMP処理部(グループメッセージ処理部)
14 IGMP監視部(グループメッセージ監視部)
15 管理テーブル
20,20a,20b,20c,20d,20e,20f ノード
20g,20h,20k,20m ノード
21,21a,21b L2スイッチ
100 システム
10, 10a, 10b router 11 transmitting/receiving section 12 router processing section 13 IGMP processing section (group message processing section)
14 IGMP monitoring unit (group message monitoring unit)
15 Management table 20, 20a, 20b, 20c, 20d, 20e, 20f Node 20g, 20h, 20k, 20m Node 21, 21a, 21b L2 switch 100 System

Claims (6)

ネットワークの所定のノードとの間でIPパケットを送受信する複数の送受信部と、
前記送受信部によって受信したマルチキャストフローをマルチキャストルーティングテーブルに応じて宛先の受信ノードに転送する処理を行うルータ処理部と、
前記送受信部によって受信したメッセージであってマルチキャストグループへの参加要求またはマルチキャストグループからの離脱要求を内容とするグループメッセージを監視し、受信したグループメッセージに応じて、マルチキャストフローを受信するノードの情報を管理テーブルに保存するグループメッセージ監視部と、
前記グループメッセージを処理するグループメッセージ処理部と、を備え、
前記グループメッセージ監視部は、マルチキャストグループ毎に、且つ、前記送受信部毎に、最初に参加要求を内容とするグループメッセージを送信したノードの識別子と、マルチキャストグループ内に複数の受信ノードが存在するか否かを示す複数受信ノード存在フラグを前記管理テーブルに保存し、前記グループメッセージの受信時に前記複数受信ノード存在フラグに応じて、前記グループメッセージまたはマルチキャストフローの転送停止指示を前記グループメッセージ処理部に出力することを特徴とするルータ。
a plurality of transmitting and receiving units that transmit and receive IP packets to and from predetermined nodes of the network;
a router processing unit that performs a process of forwarding the multicast flow received by the transmitting/receiving unit to a destination receiving node according to a multicast routing table;
Monitors a group message that is a message received by the transmitting/receiving unit and contains a request to join a multicast group or a request to leave a multicast group, and transmits information on a node that receives a multicast flow according to the received group message. A group message monitoring unit that saves in a management table,
a group message processing unit that processes the group message,
The group message monitoring unit detects, for each multicast group and for each transmitter/receiver, the identifier of the node that first sent the group message containing a participation request, and whether there are multiple receiving nodes in the multicast group. A multiple receiving node presence flag indicating whether the group message is received or not is stored in the management table, and an instruction to stop transfer of the group message or multicast flow is sent to the group message processing unit according to the multiple receiving node presence flag when the group message is received. A router characterized by output.
前記グループメッセージ監視部は、
前記送受信部によってマルチキャストグループへの参加要求を内容とするグループメッセージを受信したときに、
当該グループメッセージを送信したノードの情報に一致するエントリが前記管理テーブルに存在しない場合、前記管理テーブルにおいて、当該グループメッセージを送信したノードの識別子および前記複数受信ノード存在フラグを偽とした値を有する新しいエントリを追加し、
当該グループメッセージを送信したノードの情報に一致し、かつ、前記複数受信ノード存在フラグが偽であるエントリが前記管理テーブルに保存され、かつ保存されたエントリにおけるノードの識別子が当該グループメッセージを送信したノードの識別子と異なる場合、前記複数受信ノード存在フラグを真とすることを特徴とする請求項1に記載のルータ。
The group message monitoring unit includes:
When the transmitter/receiver receives a group message containing a request to join a multicast group,
If there is no entry in the management table that matches the information of the node that sent the group message, the management table has a value with the identifier of the node that sent the group message and the multiple receiving node existence flag set to false. add a new entry,
An entry that matches the information of the node that sent the group message and in which the multiple receiving node existence flag is false is saved in the management table, and the identifier of the node in the saved entry is the one that sent the group message. 2. The router according to claim 1, wherein if the identifier is different from the node identifier, the multiple receiving node existence flag is set to true.
前記グループメッセージ監視部は、
前記送受信部によってマルチキャストグループからの離脱要求を内容とするグループメッセージを受信したときに、
当該グループメッセージを送信したノードの情報に一致し、かつ、前記複数受信ノード存在フラグが偽であるエントリが前記管理テーブルに保存され、かつ保存されたエントリにおけるノードの識別子が当該グループメッセージを送信したノードの識別子に一致する場合、当該グループメッセージで指定されたマルチキャストグループの転送停止指示を前記グループメッセージ処理部に出力する、ことを特徴とする請求項2に記載のルータ。
The group message monitoring unit includes:
When the transmitter/receiver receives a group message containing a request to leave the multicast group,
An entry that matches the information of the node that sent the group message and in which the multiple receiving node existence flag is false is saved in the management table, and the identifier of the node in the saved entry is the one that sent the group message. 3. The router according to claim 2, wherein if the router matches the node identifier, the router outputs a transfer stop instruction for the multicast group specified in the group message to the group message processing unit.
前記グループメッセージ処理部は、前記転送停止指示で指定されたマルチキャストグループのエントリを前記マルチキャストルーティングテーブルから削除する更新指示を前記ルータ処理部に出力し、
前記グループメッセージ監視部は、前記グループメッセージ処理部から、前記マルチキャストルーティングテーブルの更新通知を受領した後に、前記管理テーブルから、当該マルチキャストグループのエントリを削除する、ことを特徴とする請求項3に記載のルータ。
The group message processing unit outputs an update instruction to the router processing unit to delete an entry for the multicast group specified by the transfer stop instruction from the multicast routing table,
4. The group message monitoring section deletes the entry of the multicast group from the management table after receiving an update notification of the multicast routing table from the group message processing section. router.
前記グループメッセージは、IGMP(Internet Group Management Protocol)に従ったメッセージであることを特徴とする請求項1から請求項4のいずれか一項に記載のルータ。 5. The router according to claim 1, wherein the group message is a message based on IGMP (Internet Group Management Protocol). 前記グループメッセージは、MLD (Multicast Listener Discovery)プロトコルに従ったメッセージであることを特徴とする請求項1から請求項4のいずれか一項に記載のルータ。 5. The router according to claim 1, wherein the group message is a message according to an MLD (Multicast Listener Discovery) protocol.
JP2022102457A 2022-06-27 2022-06-27 router Pending JP2024003368A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022102457A JP2024003368A (en) 2022-06-27 2022-06-27 router

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022102457A JP2024003368A (en) 2022-06-27 2022-06-27 router

Publications (1)

Publication Number Publication Date
JP2024003368A true JP2024003368A (en) 2024-01-15

Family

ID=89534092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022102457A Pending JP2024003368A (en) 2022-06-27 2022-06-27 router

Country Status (1)

Country Link
JP (1) JP2024003368A (en)

Similar Documents

Publication Publication Date Title
US7627690B2 (en) Data generating device
US8094602B2 (en) Methods and apparatus for managing multicast groups
JP4297875B2 (en) Network relay method and apparatus
JP2004208302A (en) System and method for converting request between different multicast protocols in communication network
US20050111474A1 (en) IP multicast communication system
US20100046516A1 (en) Methods and Devices for Managing Multicast Traffic
KR101604810B1 (en) Methods for obtaining terminal multicast status
CN109981308B (en) Message transmission method and device
US20050041680A1 (en) L2 switch and control method therof
JP2013543687A (en) Multicast branch, protocol independent multicast router, and pruning method for layer 2 switch
US8724993B2 (en) Station side device and optical communication system
JP2003309601A (en) Multicast communication device and system
US8238337B1 (en) Hybrid multicast switch employing network-layer routing
JP2009246845A (en) Multicast packet transfer device, transfer method, and transfer control program
US11695686B2 (en) Source-initiated distribution of spine node identifiers of preferred spine nodes for use in multicast path selection
JP2007180960A (en) Multicast controller
JP2024003368A (en) router
JP4687611B2 (en) Multicast system and control method of multicast system
US20100135298A1 (en) Method and system for providing source specific multicast service on ethernet network
JP6690291B2 (en) Information distribution system, information distribution device, information distribution program, and information distribution method
JP2011015321A (en) Packet relay apparatus and multicast packet relay method
EP2066073A1 (en) Access system and method for multicast management
JP2006101259A (en) Method and system for transmitting data and network repeater
JP2008512931A (en) Method and device for demultiplexing multicast transmission
JP2009021940A (en) Bridge apparatus