JP2005217989A - Communication system, router, communication terminal, receiving terminal and communication method - Google Patents

Communication system, router, communication terminal, receiving terminal and communication method Download PDF

Info

Publication number
JP2005217989A
JP2005217989A JP2004024871A JP2004024871A JP2005217989A JP 2005217989 A JP2005217989 A JP 2005217989A JP 2004024871 A JP2004024871 A JP 2004024871A JP 2004024871 A JP2004024871 A JP 2004024871A JP 2005217989 A JP2005217989 A JP 2005217989A
Authority
JP
Japan
Prior art keywords
router
terminal
address
message
transfer destination
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.)
Granted
Application number
JP2004024871A
Other languages
Japanese (ja)
Other versions
JP4481666B2 (en
Inventor
Takeshi Igarashi
健 五十嵐
So Ishida
創 石田
Harunobu Fukazawa
晴信 深澤
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.)
NTT Docomo Inc
NTT Comware Corp
Original Assignee
NTT Docomo Inc
NTT Comware Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc, NTT Comware Corp filed Critical NTT Docomo Inc
Priority to JP2004024871A priority Critical patent/JP4481666B2/en
Priority to EP04747132A priority patent/EP1667381A4/en
Priority to PCT/JP2004/009663 priority patent/WO2005004419A1/en
Priority to CN2004800195413A priority patent/CN1820467B/en
Priority to US10/563,751 priority patent/US7620045B2/en
Publication of JP2005217989A publication Critical patent/JP2005217989A/en
Application granted granted Critical
Publication of JP4481666B2 publication Critical patent/JP4481666B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To realize multicast communication by setting an appropriate multicast tree without increasing communication system load even if a router unsupported by multicast protocol exists in a communication system. <P>SOLUTION: Only when UR 20a to 20c have been judged to act as branch routers, the UR 20a to 20c become duplicate points while preserving forwarding addresses of a plurality of routers. Further, when the UR 20a to 20c have became the branch routers, addresses of the UR 20a to 20c are added to a forwarding address to a terminal. Then, a Redirect message for requesting elimination of forwarding addresses of the branch routers from the forwarding address to the terminal is transmitted to the address of the transmitted terminal. Upstream URs and the transmitted terminal 10 eliminates the forwarding addresses of the branch routers from the forwarding addresses of the routers and the forwarding address to the terminal while preserving the branch router addresses as the forwarding addresses of the routers and the forwarding address to the terminal. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、通信システム、ルータ、送信端末、受信端末及び通信方法に関する。   The present invention relates to a communication system, a router, a transmission terminal, a reception terminal, and a communication method.

従来、複数の受信端末にパケットを送信するマルチキャストが行われている(例えば、非特許文献1参照)。通信システムでは、IETF(Internet Engineering Task Force)において標準化が進められているSSM(Source-Specific Multicast)(例えば、非特許文献2、非特許文献3参照)、IGMPv3(Internet Management Protocol Version 3)(例えば、非特許文献4参照)、HBH(Hop by Hop Multicast Routing Protocol)(例えば、非特許文献5参照)等のプロトコルを用いてマルチキャストを行っている。   Conventionally, multicast for transmitting packets to a plurality of receiving terminals has been performed (see, for example, Non-Patent Document 1). In communication systems, SSM (Source-Specific Multicast) (for example, see Non-Patent Document 2 and Non-Patent Document 3) standardized in IETF (Internet Engineering Task Force), IGMPv3 (Internet Management Protocol Version 3) (for example, Multi-casting is performed using protocols such as HBH (Hop by Hop Multicast Routing Protocol) (see Non-Patent Document 5, for example).

又、マルチキャストパケットを送信する送信端末が移動し、そのアドレスが変わった場合でも通信を継続するために、MIP−BT(Mobile IP Bi−Directional Tunneling)が提案されている。MIP−BTでは、フォーリンネットワーク(Foreign Network)に移動した送信端末から送信されたマルチキャストパケットを、ホームエージェント(Home Agent)経由で転送することにより、通信の継続を図っている。
Thomas A. Maufer著,楠本博之訳,「IPマルチキャスト入門」 Internet Draft,「draft−ietf−ssm−overviw−xx.txt」 「電気情報通信学会和文論文誌B」,Vol.J85−B,No.8,pp.1207−1214 RFC3376,「Internet Management Protocol Version 3」 L.HMK Costa, S.Fidia and O CMB Duarte,「HOP by HOP Multicast Routing Protocol」, ACM SIGCOM 2001, Aug. 2001
Also, MIP-BT (Mobile IP Bi-Directional Tunneling) has been proposed in order to continue communication even when a transmitting terminal that transmits a multicast packet moves and its address changes. In MIP-BT, communication is continued by transferring a multicast packet transmitted from a transmitting terminal moved to a foreign network via a home agent.
By Thomas A. Maufer, translated by Hiroyuki Enomoto, “Introduction to IP Multicast” Internet Draft, "draft-ietf-ssm-overviw-xx.txt" “The Institute of Electrical, Information and Communication Engineers Japanese Journal B”, Vol. J85-B, No.8, pp.1207-1214 RFC3376, "Internet Management Protocol Version 3" L.HMK Costa, S.Fidia and O CMB Duarte, `` HOP by HOP Multicast Routing Protocol '', ACM SIGCOM 2001, Aug. 2001

しかしながら、従来の通信システムでは、全てのルータがマルチキャストプロトコルに対応したルータでなければ、マルチキャストパケットを転送できなかった。例えば、HBHを用いる場合には、全てのルータがマルチキャストツリーを設定するための情報をテーブル(MCT:Multicast Control Table)に保持する必要はないものの、マルチキャストパケットの複製を行うルータ以外のルータもMCTを保持する必要があった。そのため、通信システム全体の負荷が増大していた。又、MIP−BTでは、送信端末が移動しても通信が継続できるものの、マルチキャストパケットがホームエージェントを経由するため、転送経路が冗長になってしまう問題があった。   However, in the conventional communication system, multicast packets cannot be transferred unless all the routers are compatible with the multicast protocol. For example, when using HBH, it is not necessary for all routers to store information for setting a multicast tree in a table (MCT: Multicast Control Table), but routers other than routers that perform multicast packet replication also use MCT. Needed to hold. For this reason, the load on the entire communication system has increased. In addition, in MIP-BT, although communication can be continued even if the transmission terminal moves, there is a problem that the transfer path becomes redundant because the multicast packet passes through the home agent.

そこで、本発明は、通信システムにマルチキャストプロトコルに対応していないルータが存在しても、通信システムの負荷を増大させることなく、適切なマルチキャストツリーを設定してマルチキャストを実現することを目的とする。   Therefore, an object of the present invention is to implement multicast by setting an appropriate multicast tree without increasing the load on the communication system even when a router that does not support the multicast protocol exists in the communication system. .

本発明に係る通信システムは、マルチキャストパケットを端末転送先アドレスに転送する送信端末と、マルチキャストパケットをルータ転送先アドレスに転送するルータとを備える。端末転送先アドレスは、送信端末がマルチキャストパケットを転送するアドレスをいい、ルータ転送先アドレスは、ルータがマルチキャストパケットを転送するアドレスをいう。   The communication system according to the present invention includes a transmission terminal that transfers a multicast packet to a terminal transfer destination address, and a router that transfers the multicast packet to a router transfer destination address. The terminal transfer destination address is an address to which the transmission terminal transfers the multicast packet, and the router transfer destination address is an address to which the router transfers the multicast packet.

ルータは、ルータ転送先アドレスを保持するルータ保持手段と、送信端末のアドレス(以下「送信端末アドレス」という)をマルチキャストツリーの上流としたときに、ルータが、マルチキャストパケットを複数のルータ転送先アドレスに転送する分岐ルータになるかを判断する判断手段と、分岐ルータになると判断した場合、ルータ保持手段に送信端末アドレスに対応付けて複数のルータ転送先アドレスを登録するルータ登録手段と、分岐ルータになると判断した場合、ルータのアドレスを端末転送先アドレスに追加し、ルータ転送先アドレスを端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを送信端末のアドレス宛に送信するルータ送信手段とを備える。送信端末は、端末転送先アドレスを保持する送信端末保持手段と、参加/離脱要求メッセージに基づいて、ルータ転送先アドレスを送信端末保持手段から削除し、分岐ルータのアドレスを送信端末保持手段に登録する送信端末登録手段とを備える。   When a router has a router holding means for holding a router transfer destination address and an address of a transmission terminal (hereinafter referred to as “transmission terminal address”) upstream of the multicast tree, the router sends a multicast packet to a plurality of router transfer destination addresses. Determining means for determining whether to become a branch router for forwarding to the router, router registration means for registering a plurality of router transfer destination addresses in association with the transmission terminal address in the router holding means, if determined to be a branch router, and a branch router If the router address is determined to be, the router address is added to the terminal transfer destination address, and the router transmission that sends a join / leave request message to the address of the sending terminal requesting that the router transfer destination address be deleted from the terminal transfer destination address Means. The transmission terminal deletes the router transfer destination address from the transmission terminal holding means based on the participation / leaving request message, and registers the branch router address in the transmission terminal holding means based on the transmission / reception request message. Transmitting terminal registration means.

このような通信システムによれば、ルータは、送信端末が転送するマルチキャストパケットを複数のルータ転送先アドレスに転送する分岐ルータになると判断した場合にだけ、複数のルータ転送先アドレスを保持して、複製ポイントになる。更に、ルータは、分岐ルータとなった場合に、そのルータのアドレスを端末転送先アドレスに追加し、ルータ転送先アドレスを端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを送信端末のアドレス宛に送信することにより、送信端末に分岐ルータのアドレスの端末転送先アドレスへの追加と、ルータ転送先アドレスの端末転送先アドレスからの削除を要求できる。そして、送信端末は、分岐ルータのアドレスを端末転送先アドレスとして保持し、ルータ転送先アドレスを端末転送先アドレスから削除できる。   According to such a communication system, the router holds a plurality of router transfer destination addresses only when it is determined that the router becomes a branch router that transfers a multicast packet transferred by the transmission terminal to a plurality of router transfer destination addresses. It becomes a replication point. Furthermore, when the router becomes a branch router, the router adds the address of the router to the terminal transfer destination address and sends a join / leave request message requesting to delete the router transfer destination address from the terminal transfer destination address. Can be requested to add to the terminal transfer destination address of the branch router address and to delete the router transfer destination address from the terminal transfer destination address. Then, the transmitting terminal can hold the branch router address as the terminal transfer destination address and delete the router transfer destination address from the terminal transfer destination address.

これにより、本発明のマルチキャストプロトコルに対応しているルータが、適宜、分岐ルータになることができる。そして、送信端末から分岐ルータを経由して受信端末にマルチキャストパケットが転送される適切なマルチキャストツリーが設定される。しかも、ルータのうち、分岐ルータのみがルータ転送先アドレスを保持し、マルチキャストパケットを複数の転送先にカプセル化して転送する。よって、送信端末と分岐ルータとの間に存在するルータは、マルチキャストパケットをユニキャストで転送するだけでよい。そのため、分岐ルータ以外のルータの負荷は軽減され、分岐ルータ以外のルータがマルチキャストプロトコルに対応していなくても、通信システム全体としてはマルチキャストが実現できる。よって、通信システムは、通信システムの負荷を増大させず、更に、送信端末と分岐ルータとの間にマルチキャストプロトコルに対応しないルータが存在していても、適切なマルチキャストツリーを設定してマルキャストを実現できる。   Thereby, the router corresponding to the multicast protocol of this invention can turn into a branch router suitably. Then, an appropriate multicast tree is set in which multicast packets are transferred from the transmission terminal to the reception terminal via the branch router. In addition, among the routers, only the branch router holds the router transfer destination address, and encapsulates and transfers the multicast packet to a plurality of transfer destinations. Therefore, the router existing between the transmitting terminal and the branch router need only forward the multicast packet by unicast. Therefore, the load on routers other than the branch router is reduced, and multicast can be realized as the entire communication system even if the router other than the branch router does not support the multicast protocol. Therefore, the communication system does not increase the load on the communication system, and even if there is a router that does not support the multicast protocol between the transmitting terminal and the branch router, an appropriate multicast tree is set to perform multicasting. realizable.

尚、このように本発明では、一部のルータがユニキャストによりマルチキャストパケットを転送できる。そのため、以下、本発明によるマルチキャストを通常のマルチキャストプロトコルと区別するために、特に、「ユニキャスト拡張マルチキャストプロトコル(Unicast Extension Multicast Protocol、以下「UMP」と表す)」と呼ぶ。更に、UMPに対応しているルータを「UMPルータ」、UMPに対応していないルータを「非UMPルータ」と呼ぶ。   In this way, in the present invention, some routers can transfer multicast packets by unicast. Therefore, hereinafter, in order to distinguish the multicast according to the present invention from the normal multicast protocol, it is particularly called “Unicast Extension Multicast Protocol (hereinafter referred to as“ UMP ”)”. Furthermore, a router that supports UMP is called a “UMP router”, and a router that does not support UMP is called a “non-UMP router”.

ルータ登録手段は、自身よりも下流の分岐ルータからの参加/離脱要求メッセージに基づいて、下流の分岐ルータのルータ転送先アドレスをルータ保持手段から削除し、下流の分岐ルータのアドレスをルータ保持手段に登録することが好ましい。これにより、送信端末から複数の分岐ルータを経由して受信端末にマルチキャストパケットが転送される適切なマルチキャストツリーが設定される。   The router registration means deletes the router transfer destination address of the downstream branch router from the router holding means based on the join / leave request message from the branch router downstream from itself, and the address of the downstream branch router is the router holding means. It is preferable to register with. As a result, an appropriate multicast tree in which multicast packets are transferred from the transmitting terminal to the receiving terminal via a plurality of branch routers is set.

又、ルータ登録手段は、マルチキャストパケットの受信端末と接続する末端ルータとなる場合、ルータ保持手段に送信端末アドレスに対応付けてルータ転送先アドレスを登録することが好ましい。これにより、送信端末から分岐ルータ、末端ルータを経由して受信端末にマルチキャストパケットが転送される適切なマルチキャストツリーが設定される。   In addition, when the router registration means is a terminal router connected to the multicast packet receiving terminal, it is preferable that the router transfer destination address is registered in the router holding means in association with the transmission terminal address. As a result, an appropriate multicast tree in which multicast packets are transferred from the transmitting terminal to the receiving terminal via the branch router and the terminal router is set.

送信端末は、その送信端末アドレスが変更された場合に、マルチキャストパケットの受信端末に、変更後の送信端末アドレスを通知する位置更新メッセージを送信する送信端末送信手段を備え、受信端末は、位置更新メッセージに基づいて、マルチキャストパケットの送信を要求する参加要求メッセージを変更後の送信端末アドレス宛に送信する受信端末送信手段を備えることが好ましい。これによれば、例えば、送信端末の移動等により送信端末アドレスが変更された場合に、送信端末は、位置更新メッセージにより受信端末に送信端末アドレスの変更を通知できる。そして、受信端末は、位置更新メッセージにより送信端末アドレスの変更を把握して、参加要求メッセージを変更後の送信端末アドレスに送信できる。そのため、変更後の送信端末アドレス宛の参加要求メッセージを契機として、変更後の送信端末アドレスにおいて適切なマルチキャストツリーが新たに設定される。よって、通信システムは、送信端末アドレスが変化しても、適切なマルチキャストツリーを用いたマルチキャストを実現できる。   When the transmission terminal address is changed, the transmission terminal is provided with transmission terminal transmission means for transmitting a location update message for notifying the transmission terminal address after the change to the multicast packet reception terminal. It is preferable to provide a receiving terminal transmitting means for transmitting a participation request message for requesting transmission of a multicast packet to the changed transmitting terminal address based on the message. According to this, for example, when the transmission terminal address is changed due to movement of the transmission terminal or the like, the transmission terminal can notify the reception terminal of the change of the transmission terminal address by the position update message. Then, the receiving terminal can grasp the change of the transmission terminal address by the location update message and can transmit the participation request message to the changed transmission terminal address. Therefore, an appropriate multicast tree is newly set at the changed transmission terminal address, triggered by the participation request message addressed to the changed transmission terminal address. Therefore, the communication system can realize multicast using an appropriate multicast tree even if the transmission terminal address changes.

更に、受信端末送信手段は、受信端末がマルチキャストプロトコルに対応していないルータに接続する場合には、参加要求メッセージを破棄しないよう指示するデータが付加された参加要求メッセージを送信することが好ましい。これによれば、受信端末がマルチキャストプロトコルに対応していないルータに接続する場合であっても、参加要求メッセージが破棄されず、マルチキャストプロトコルに対応しているルータや送信端末が参加要求メッセージを受信できる。   Furthermore, when the receiving terminal connects to a router that does not support the multicast protocol, the receiving terminal transmitting means preferably transmits a participation request message to which data instructing not to discard the participation request message is added. According to this, even when the receiving terminal connects to a router that does not support the multicast protocol, the participation request message is not discarded, and the router or transmitting terminal that supports the multicast protocol receives the participation request message. it can.

ルータ登録手段は、ルータ転送先アドレスの保持時間が満了した場合にはルータ保持手段からルータ転送先アドレスを削除し、ルータ転送先アドレスを送信元アドレスとするマルチキャストツリーを維持するための維持要求メッセージを保持時間内にルータが受信した場合には保持時間を延長し、送信端末登録手段は、端末転送先アドレスの保持時間が満了した場合には送信端末保持手段から端末転送先アドレスを削除し、端末転送先アドレスを送信元アドレスとする維持要求メッセージを保持時間内に送信端末が受信した場合には保持時間を延長することが好ましい。保持時間は、ルータ保持手段や送信端末保持手段がルータ転送先アドレスや端末転送先アドレスを保持しておく時間である。これによれば、通信システムは、保持時間だけマルチキャストツリーを維持することにより、ネットワークトポロジが変化した場合にも、常に適切なマルチキャストツリーを用いることができる。しかも、通信システムは、維持要求メッセージにより必要な間はマルチキャストツリーを維持できる。   The router registration unit deletes the router transfer destination address from the router holding unit when the router transfer destination address holding time expires, and maintains a multicast tree with the router transfer destination address as the source address. If the router receives the message within the holding time, the holding time is extended, and the sending terminal registration means deletes the terminal forwarding address from the sending terminal holding means when the holding time of the terminal forwarding address expires, When the transmission terminal receives the maintenance request message with the terminal transfer destination address as the transmission source address within the retention time, it is preferable to extend the retention time. The holding time is a time during which the router holding unit and the transmission terminal holding unit hold the router transfer destination address and the terminal transfer destination address. According to this, the communication system can always use an appropriate multicast tree even when the network topology changes by maintaining the multicast tree for the holding time. In addition, the communication system can maintain the multicast tree for as long as necessary by the maintenance request message.

又、ルータ登録手段は、送信端末アドレスを指定したマルチキャストツリーからの離脱を要求する離脱要求メッセージに基づいて、送信端末アドレスに対応付けられているルータ転送先アドレスをルータ保持手段から削除し、送信端末登録手段は、離脱要求メッセージに基づいて、送信端末アドレスに対応付けられている端末転送先アドレスを送信端末保持手段から削除するが好ましい。   Also, the router registration means deletes the router transfer destination address associated with the transmission terminal address from the router holding means based on the leave request message for requesting leave from the multicast tree in which the transmission terminal address is specified, and transmits The terminal registration means preferably deletes the terminal transfer destination address associated with the transmission terminal address from the transmission terminal holding means based on the leave request message.

これによれば、通信システムは、離脱要求メッセージにより指定された送信端末アドレスを用いて形成されたマルチキャストツリーを削除できる。そのため、受信端末は、保持時間の満了を待たずにマルチキャストツリーから明示的に離脱できる。よって、例えば、変更前の送信端末アドレスを用いたマルチキャストツリーと、変更後の送信端末アドレスを用いたマルチキャストツリーが併存することによるマルチキャストパケットの重複した転送を抑制できる。   According to this, the communication system can delete the multicast tree formed using the transmission terminal address specified by the leave request message. Therefore, the receiving terminal can explicitly leave the multicast tree without waiting for the hold time to expire. Therefore, for example, it is possible to suppress duplicate forwarding of multicast packets due to the coexistence of the multicast tree using the transmission terminal address before the change and the multicast tree using the transmission terminal address after the change.

本発明に係るルータは、マルチキャストパケットのルータ転送先アドレスを保持するルータ保持手段と、送信端末アドレスをマルチキャストツリーの上流としたときに、マルチキャストパケットを複数のルータ転送先アドレスに転送する分岐ルータになるかを判断する判断手段と、分岐ルータになると判断した場合、ルータ保持手段に送信端末アドレスに対応付けて複数のルータ転送先アドレスを登録するルータ登録手段と、分岐ルータになると判断した場合、ルータのアドレスを端末転送先アドレスに追加し、ルータ転送先アドレスを端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを送信端末アドレス宛に送信するルータ送信手段とを備えることを特徴とする。   The router according to the present invention includes a router holding unit that holds a router transfer destination address of a multicast packet, and a branch router that transfers the multicast packet to a plurality of router transfer destination addresses when the transmission terminal address is upstream of the multicast tree. If it is determined that it becomes a branching router, if it is determined that it becomes a branching router, if it is determined that it becomes a branching router, a router registration unit that registers a plurality of router forwarding destination addresses in association with the transmission terminal address in the router holding unit, Router transmitting means for adding a router address to the terminal transfer destination address and transmitting a join / leave request message for requesting deletion of the router transfer destination address from the terminal transfer destination address to the transmission terminal address And

本発明に係る送信端末は、端末転送先アドレスを保持する送信端末保持手段と、分岐ルータのアドレスを端末転送先アドレスに追加し、分岐ルータのルータ転送先アドレスを端末転送先アドレスから削除することを要求する参加/離脱要求メッセージに基づいて、ルータ転送先アドレスを送信端末保持手段から削除し、分岐ルータのアドレスを送信端末保持手段に登録する送信端末登録手段とを備えることを特徴とする。更に、送信端末は、送信端末アドレスが変更された場合に、受信端末に変更後の送信端末のアドレスを通知する位置更新メッセージを送信する送信端末送信手段を備えることが好ましい。   The transmitting terminal according to the present invention includes transmitting terminal holding means for holding the terminal transfer destination address, adding the branch router address to the terminal transfer destination address, and deleting the router transfer destination address of the branch router from the terminal transfer destination address. And a transmission terminal registration unit that deletes the router transfer destination address from the transmission terminal holding unit and registers the branch router address in the transmission terminal holding unit. Furthermore, it is preferable that the transmitting terminal includes a transmitting terminal transmitting unit that transmits a location update message for notifying the receiving terminal of the changed address of the transmitting terminal when the transmitting terminal address is changed.

本発明に係る受信端末は、マルチキャストパケットを転送する送信端末アドレスが変更された場合に、変更後の送信端末アドレスを通知する位置更新メッセージに基づいて、マルチキャストパケットの送信を要求する参加要求メッセージを変更後の送信端末のアドレス宛に送信する受信端末送信手段を備えることを特徴とする。   The receiving terminal according to the present invention sends a participation request message for requesting transmission of a multicast packet based on a location update message notifying the changed transmitting terminal address when the transmitting terminal address for transferring the multicast packet is changed. Receiving terminal transmitting means for transmitting to the address of the changed transmitting terminal is provided.

本発明に係る通信方法は、ルータが、送信端末アドレスをマルチキャストツリーの上流としたときに、マルチキャストパケットを複数のルータ転送先アドレスに転送する分岐ルータになるかを判断し、分岐ルータになると判断した場合、ルータ転送先アドレスを保持するルータ保持手段に、送信端末アドレスに対応付けて複数のルータ転送先アドレスを登録し、ルータのアドレスを端末転送先アドレスに追加し、ルータ転送先アドレスを端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを送信端末アドレス宛に送信し、送信端末が、参加/離脱要求メッセージに基づいて、ルータ転送先アドレスを、端末転送先アドレスを保持する送信端末保持手段から削除し、分岐ルータのアドレスを前記送信端末保持手段に登録することを特徴とする。   The communication method according to the present invention determines whether a router becomes a branch router when a transmission terminal address is upstream of a multicast tree, and determines whether the router becomes a branch router that forwards multicast packets to a plurality of router transfer destination addresses. In this case, a plurality of router transfer destination addresses are registered in the router holding means for holding the router transfer destination address in association with the transmission terminal address, the router address is added to the terminal transfer destination address, and the router transfer destination address is set to the terminal. A joining / leaving request message requesting deletion from the forwarding address is transmitted to the sending terminal address, and the sending terminal holds the router forwarding address and the terminal forwarding address based on the joining / leaving request message. Delete from the sending terminal holding means and register the branch router address in the sending terminal holding means And wherein the Rukoto.

更に、通信方法は、送信端末が、その送信端末のアドレスが変更された場合に、マルチキャストパケットの受信端末に、変更後の送信端末のアドレスを通知する位置更新メッセージを送信し、受信端末が、位置更新メッセージに基づいて、マルチキャストパケットの送信を要求する参加要求メッセージを変更後の送信端末のアドレス宛に送信することを特徴とする。   Furthermore, when the address of the transmitting terminal is changed, the communication method transmits a location update message for notifying the address of the changed transmitting terminal to the receiving terminal of the multicast packet. Based on the location update message, a participation request message for requesting transmission of a multicast packet is transmitted to the address of the transmission terminal after the change.

以上説明したように、本発明によれば、通信システムにマルチキャストプロトコルに対応していないルータが存在しても、通信システムの負荷を増大させることなく、適切なマルチキャストツリーを設定して、マルチキャストを実現できる。   As described above, according to the present invention, even if there is a router that does not support the multicast protocol in the communication system, an appropriate multicast tree is set without increasing the load on the communication system, and realizable.

[第1の実施の形態]
〔通信システム〕
図1に示すように、通信システム1は、送信端末10と、複数のUMPルータ(UMP Router、以下「UR」と表す)20a〜20cと、複数の非UMPルータ(Non−UMP Router、以下「NR」と表す)30a〜30cと、複数の受信端末40a〜40cとを備える。送信端末10には送信端末アドレス「S」が付与されている。受信端末40a,40b,40cにはそれぞれアドレス「R1」、「R2」、「R3」が付与されている。UR20a,20b,20cにはそれぞれアドレス「UR2」、「UR3」、「UR4」が付与されている。NR30a,30b,30cにはそれぞれアドレス「NR1」、「NR5」、「NR6」が付与されている。尚、通信システム1では、IPv6を用いるが、IPv4を用いてもよい。
[First Embodiment]
〔Communications system〕
As illustrated in FIG. 1, the communication system 1 includes a transmission terminal 10, a plurality of UMP routers (UMP Router, hereinafter referred to as “UR”) 20 a to 20 c, and a plurality of non-UMP routers (Non-UMP Router, hereinafter “ NR ”) 30a-30c and a plurality of receiving terminals 40a-40c. The transmission terminal address “S” is given to the transmission terminal 10. Addresses “R1”, “R2”, and “R3” are assigned to the receiving terminals 40a, 40b, and 40c, respectively. The addresses “UR2”, “UR3”, and “UR4” are assigned to the URs 20a, 20b, and 20c, respectively. Addresses “NR1”, “NR5”, and “NR6” are assigned to NR30a, 30b, and 30c, respectively. In the communication system 1, IPv6 is used, but IPv4 may be used.

送信端末10は、端末転送先アドレスにマルチキャストパケットを転送する。受信端末40a〜40cは、マルチキャストパケットを受信する。UR20a〜20c及びNR30a〜30cは、送信端末10と受信端末40a〜40cとの間に設定されたマルチキャストパケットの転送経路(以下、「マルチキャストツリー」という)に従って、ルータ転送先アドレスにマルチキャストパケットを転送する。受信端末40a〜40cとUR20c、NR30b、NR30cは無線通信を行う。送信端末10、UR20a〜20c、受信端末40a〜40cは、マルチキャストツリーを設定する。UR20a〜20cは、複数のルータ転送先アドレスにマルチキャストパケットを転送する分岐ルータになることができる。   The transmission terminal 10 transfers the multicast packet to the terminal transfer destination address. The receiving terminals 40a to 40c receive the multicast packet. The URs 20a to 20c and the NRs 30a to 30c transfer the multicast packet to the router transfer destination address according to the multicast packet transfer path (hereinafter referred to as “multicast tree”) set between the transmitting terminal 10 and the receiving terminals 40a to 40c. To do. The receiving terminals 40a to 40c and the UR 20c, NR30b, and NR30c perform wireless communication. The transmission terminal 10, the URs 20a to 20c, and the reception terminals 40a to 40c set a multicast tree. The URs 20a to 20c can be branch routers that transfer multicast packets to a plurality of router transfer destination addresses.

(URの構成)
まず、URの構成についてUR20aを例にとって説明する。図2(a)に示すように、UR20aは、エントリ保持部21aと、受信部22と、転送部23と、データ処理部24と、メッセージ処理部25と、メッセージ生成部26とを備える。尚、UR20b,20cもUR20aと同様の構成を備える。
(Configuration of UR)
First, the configuration of the UR will be described using the UR 20a as an example. As shown in FIG. 2A, the UR 20a includes an entry holding unit 21a, a receiving unit 22, a transfer unit 23, a data processing unit 24, a message processing unit 25, and a message generation unit 26. The URs 20b and 20c have the same configuration as the UR 20a.

受信部22は、送信端末10、他のURやNR、受信端末40a〜40cから、マルチキャストパケットや、制御メッセージを受信する。マルチキャストパケットには送信端末10からのデータが含まれる。又、マルチキャストパケットは、送信端末と分岐ルータとの間、分岐ルータ間はカプセル化されて転送される。制御メッセージは、マルチキャストツリーの設定や維持、変更等、マルチキャストツリーの制御に関するメッセージである。制御メッセージには、Joinメッセージ、Membership Report、Stableオプションが設定されたJoinメッセージ(以下「Stable Joinメッセージ」という)、Stableオプションが設定されたMembership Report(以下「Stable Membership Report」という)、Pruneメッセージ、Leave Groupメッセージ、Redirectメッセージ、Binding Updateメッセージ(以下「BUメッセージ」と表す)、Location Updateメッセージ(以下「LUメッセージ」と表す)等がある。Joinメッセージ、Stable Joinメッセージ、Pruneメッセージ、Redirectメッセージのヘッダには、制御メッセージであることを示す特別なオプションが設定される。   The receiving unit 22 receives multicast packets and control messages from the transmission terminal 10, other URs and NRs, and the reception terminals 40a to 40c. The multicast packet includes data from the transmission terminal 10. The multicast packet is encapsulated and transferred between the transmitting terminal and the branch router and between the branch routers. The control message is a message related to control of the multicast tree, such as setting, maintaining, and changing the multicast tree. The control message includes a Join message, a Membership Report, a Join message in which the Stable option is set (hereinafter referred to as “Stable Join message”), a Membership Report in which the Stable option is set (hereinafter referred to as “Stable Member Report”, hereinafter). There are a Leave Group message, a Redirect message, a Binding Update message (hereinafter referred to as “BU message”), a Location Update message (hereinafter referred to as “LU message”), and the like. A special option indicating a control message is set in the headers of the Join message, the stable join message, the prune message, and the redirect message.

JoinメッセージやMembership Reportは、マルチキャストパケットの送信を要求する参加要求メッセージである。マルチキャストツリーには、初期状態と安定状態がある。既にそのマルチキャストパケットについてマルチキャストツリーが設定されている場合には、JoinメッセージやMembership Reportは、マルチキャストツリーの初期状態において送信されるマルチキャストツリーを維持するための維持要求メッセージとなる。Stable JoinメッセージやStable Membership Reportは、マルチキャストツリーが安定状態に移行した後に送信されるマルチキャストツリーを維持するための維持要求メッセージである。PruneメッセージやLeave Groupメッセージは、マルチキャストツリーからの離脱を要求する離脱要求メッセージである。Joinメッセージ、Pruneメッセージは、UR20a〜20cや受信端末40a〜40cが送信する。Membership Report、Leave Groupメッセージは、受信端末40a〜40cが送信する。   The Join message and Membership Report are participation request messages for requesting transmission of multicast packets. A multicast tree has an initial state and a stable state. If a multicast tree has already been set for the multicast packet, the Join message and Membership Report are maintenance request messages for maintaining the multicast tree transmitted in the initial state of the multicast tree. The Stable Join message and the Stable Membership Report are maintenance request messages for maintaining the multicast tree transmitted after the multicast tree has transitioned to a stable state. The Prune message and Leave Group message are leave request messages for requesting leave from the multicast tree. The Join message and the Prune message are transmitted by the URs 20a to 20c and the receiving terminals 40a to 40c. The receiving terminals 40a to 40c transmit the Membership Report and the Leave Group message.

Redirectメッセージは、JoinメッセージとPruneメッセージを含む参加/離脱要求メッセージである。具体的には、Ridirectメッセージは、ルータ転送先アドレスや端末転送先アドレスへの追加を要求するアドレスと、ルータ転送先アドレスや端末転送先アドレスからの削除を要求するアドレスを含む。   The Redirect message is a join / leave request message including a Join message and a Prune message. Specifically, the Rdirect message includes an address requesting addition to the router transfer destination address and the terminal transfer destination address, and an address requesting deletion from the router transfer destination address and the terminal transfer destination address.

BUメッセージは、送信端末アドレスが変更された場合に、端末転送先アドレスに送信端末アドレスの変更を通知する転送先更新メッセージである。LUメッセージは、送信端末アドレスが変更された場合に、受信端末に変更後の送信端末アドレスを通知する位置更新メッセージである。例えば、LUメッセージは、送信端末10の移動等により送信端末アドレスが変更された場合に、変更前の送信端末アドレスと変更後の送信端末アドレスとを対応付けて通知し、受信端末に対して移動を通知する。送信端末は、LUメッセージを、LUメッセージ単独で送信してもよく、マルチキャストパケットに付加して転送してもよい。   The BU message is a transfer destination update message that notifies the terminal transfer destination address of the change of the transmission terminal address when the transmission terminal address is changed. The LU message is a location update message that notifies the receiving terminal of the changed transmission terminal address when the transmission terminal address is changed. For example, when the transmission terminal address is changed due to movement of the transmission terminal 10 or the like, the LU message notifies the transmission terminal address before the change and the transmission terminal address after the change in association and moves to the reception terminal. To be notified. The transmitting terminal may transmit the LU message as an LU message alone, or may forward the LU message by adding it to a multicast packet.

受信部22は、ヘッダのオプションに基づいてマルチキャストパケットであるか制御メッセージであるかを判断する。更に、受信部22は、カプセル化されたマルチキャストパケットの宛先アドレスが、UR20a自身のアドレスと一致するか否かを判断する。受信部22は、一致するときは、UR20aが分岐ルータである場合であるため、マルチキャストパケットをデータ処理部24に入力する。受信部22は、これらの条件に一致しない場合には転送部23に入力する。受信部22は、制御メッセージを受信した場合には、その制御メッセージをメッセージ処理部25に入力する。   The receiving unit 22 determines whether the packet is a multicast packet or a control message based on the header option. Further, the receiving unit 22 determines whether or not the destination address of the encapsulated multicast packet matches the address of the UR 20a itself. When they match, the receiving unit 22 inputs the multicast packet to the data processing unit 24 because the UR 20a is a branch router. The receiving unit 22 inputs the data to the transfer unit 23 when these conditions are not met. When receiving the control message, the receiving unit 22 inputs the control message to the message processing unit 25.

転送部23は、送信端末10、他のURやNR、受信端末40a〜40cに制御メッセージを送信する。転送部23は、他のURやNR、受信端末40a〜40cにマルチキャストパケットを転送する。転送部23は、受信部22やデータ処理部24からマルチキャストパケットを取得する。転送部23は、メッセージ処理部25やメッセージ生成部26から制御メッセージを取得する。   The transfer unit 23 transmits a control message to the transmission terminal 10, other URs and NRs, and the reception terminals 40a to 40c. The transfer unit 23 transfers multicast packets to other URs, NRs, and receiving terminals 40a to 40c. The transfer unit 23 acquires a multicast packet from the reception unit 22 or the data processing unit 24. The transfer unit 23 acquires a control message from the message processing unit 25 and the message generation unit 26.

エントリ保持部21aは、ルータ転送先アドレスを保持するルータ保持手段である。図2(b)に示すように、エントリ保持部21aは、テーブル種別、送信端末アドレス、マルチキャストグループアドレス、トンネル元アドレス、前トンネル元アドレスに対応付けて、ルータ転送先アドレス、KAT(Keep Alive Timer)、JT(Join Timer)を保持する。   The entry holding unit 21a is a router holding unit that holds a router transfer destination address. As shown in FIG. 2B, the entry holding unit 21a associates a router transfer destination address, KAT (Keep Alive Timer) with a table type, a transmission terminal address, a multicast group address, a tunnel source address, and a previous tunnel source address. ), JT (Join Timer) is held.

テーブル種別には、マルチキャスト制御テーブル(Multicast Control Table、以下「MCT」と表す)と、マルチキャスト送信テーブル(Multicast Forwarding Table、以下「MFT」と表す)がある。MCTは、マルチキャストツリーを設定するために用いる情報を保持する。MFTは、マルチキャストツリーの設定及びマルチキャストパケットの転送に用いる情報を保持する。   Table types include a multicast control table (hereinafter referred to as “MCT”) and a multicast transmission table (hereinafter referred to as “MFT”). The MCT holds information used for setting a multicast tree. The MFT holds information used for multicast tree setting and multicast packet transfer.

送信端末アドレスは、送信端末10の移動等により変更される場合がある。そのため、エントリ保持部21aは、送信端末10の現在位置における現在の送信端末アドレスのMCTエントリやMFTエントリと、変更前の送信端末アドレスのMCTエントリやMFTエントリを保持できる。   The transmission terminal address may be changed due to movement of the transmission terminal 10 or the like. Therefore, the entry holding unit 21a can hold the MCT entry and MFT entry of the current transmission terminal address at the current position of the transmission terminal 10 and the MCT entry and MFT entry of the transmission terminal address before the change.

マルチキャストグループアドレスは、マルチキャストグループを示すアドレスである。マルチキャストツリーや、マルチキャストパケットは、送信端末アドレスとマルチキャストグループアドレスとの組み合わせによって、どの送信端末10からのどのマルチキャストグループに関するものであるかを特定できる。送信端末10がマルチキャストパケットを転送するマルチキャストグループには、マルチキャストグループアドレス「G」が付与されている。   The multicast group address is an address indicating a multicast group. A multicast tree or a multicast packet can specify which multicast group from which transmission terminal 10 is associated with a combination of a transmission terminal address and a multicast group address. A multicast group address “G” is assigned to the multicast group to which the transmission terminal 10 forwards the multicast packet.

ルータ転送先アドレスは、URのマルチキャストパケットの転送先を示すアドレスである。トンネル元アドレスは、URが受信したマルチキャストパケットのカプセル化に用いられている送信元アドレスである。そのため、例えば、図1においてUR20aが分岐ルータの場合、UR20aのエントリ保持部21aに登録されるトンネル元アドレスは、送信端末アドレス「S」となる。前トンネル元アドレスは、トンネル元アドレスが変更した場合の変更前のトンネル元アドレスである。   The router transfer destination address is an address indicating the transfer destination of the UR multicast packet. The tunnel source address is a source address used for encapsulation of a multicast packet received by the UR. Therefore, for example, in FIG. 1, when the UR 20a is a branch router, the tunnel source address registered in the entry holding unit 21a of the UR 20a is the transmission terminal address “S”. The previous tunnel source address is the tunnel source address before the change when the tunnel source address is changed.

KATは、ルータ転送先アドレスや端末転送先アドレスの保持時間を計測するタイマ値である。KATは、ルータ転送先アドレスと対応付けて保持する。図2(b)において、KAT(UR3)は、ルータ転送先アドレス「UR3」のKAT、KAT(R3)は、ルータ転送先アドレス「R3」のKATを示す。KATが満了したルータ転送先アドレスは、エントリ保持部21aから削除される。JTは、Joinメッセージの送信開始までの時間を計測するタイマ値である。JTの満了によりJoinメッセージが送信される。JTは、送信端末アドレス、マルチキャストグループアドレスに対応付けて保持する。テーブル種別がMCTの場合、トンネル元アドレス、前トンネル元アドレス、JTを保持する必要はない。   KAT is a timer value for measuring the holding time of the router transfer destination address and the terminal transfer destination address. The KAT is held in association with the router transfer destination address. In FIG. 2B, KAT (UR3) indicates the KAT of the router transfer destination address “UR3”, and KAT (R3) indicates the KAT of the router transfer destination address “R3”. The router forwarding address whose KAT has expired is deleted from the entry holding unit 21a. JT is a timer value that measures the time until transmission of a Join message starts. A Join message is sent when JT expires. JT is stored in association with the transmission terminal address and the multicast group address. When the table type is MCT, it is not necessary to hold the tunnel source address, the previous tunnel source address, and JT.

データ処理部24は、マルチキャストパケットを処理する。具体的には、データ処理部24は、受信部22からカプセル化されたマルチキャストパケットを取得し、ディカプセル化してマルチキャストパケットを取り出す。データ処理部24は、エントリ保持部21aから、マルチキャストパケットに含まれる送信端末アドレスとマルチキャストグループアドレスに対応付けられているルータ転送先アドレスを取得する。   The data processing unit 24 processes multicast packets. Specifically, the data processing unit 24 acquires the encapsulated multicast packet from the receiving unit 22, decapsulates it, and extracts the multicast packet. The data processing unit 24 acquires the router transfer destination address associated with the transmission terminal address and the multicast group address included in the multicast packet from the entry holding unit 21a.

データ処理部24は、エントリ保持部21aを参照し、マルチキャストパケットがルータ転送先アドレスの数になるように、マルチキャストパケットを複製する。データ処理部24は、取得したルータ転送先アドレスを宛先アドレスに設定し、UR20a自身のアドレスを送信元アドレスに設定して、マルチキャストパケットをカプセル化する。データ処理部24は、カプセル化したマルチキャストパケットを転送部23に入力する。データ処理部24は、例えば、「IP in IP Tunneling」(RFC1853)や、「Generic Packet Tunneling in Ipv6 Specification」(RFC2473)に示されているカプセル化技術を用いてカプセル化を行うことができる。   The data processing unit 24 refers to the entry holding unit 21a, and duplicates the multicast packet so that the multicast packet becomes the number of router transfer destination addresses. The data processing unit 24 sets the acquired router transfer destination address as the destination address, sets the address of the UR 20a itself as the source address, and encapsulates the multicast packet. The data processing unit 24 inputs the encapsulated multicast packet to the transfer unit 23. The data processing unit 24 can perform encapsulation using, for example, an encapsulation technique shown in “IP in IP Tunneling” (RFC1853) or “Generic Packet Tunneling in Ipv6 Specification” (RFC2473).

メッセージ処理部25は、制御メッセージを処理する。メッセージ処理部25は、受信部22からUR20aが受信した制御メッセージを取得する。メッセージ処理部25は、制御メッセージの種類、制御メッセージの宛先アドレスや送信元アドレス、エントリ保持部21aが保持する情報に基づいて、エントリ保持部21aへの情報の登録、エントリ保持部21aが保持する情報の更新や削除を行う。メッセージ処理部25は、新たなルータ転送先アドレスを登録する場合、MFTエントリ又はMCTエントリを作成する。具体的には、メッセージ処理部25は、エントリ保持部21aのテーブル種別にMFT又はMCTを設定し、送信端末アドレス、マルチキャストグループアドレス毎にMFTエントリ又はMCTエントリを作成する。例えば、メッセージ処理部25は、UR20aが新たに受信したJoinメッセージにより指定されている送信端末アドレス、マルチキャストグループアドレス毎にMFTエントリ又はMCTエントリを作成する。このように作成されたMFTエントリやMCTエントリは、MFTやMCTとして機能する。   The message processing unit 25 processes the control message. The message processing unit 25 acquires the control message received by the UR 20a from the receiving unit 22. The message processing unit 25 registers information in the entry holding unit 21a and holds the entry holding unit 21a based on the type of the control message, the destination address and transmission source address of the control message, and the information held in the entry holding unit 21a. Update or delete information. The message processing unit 25 creates an MFT entry or an MCT entry when registering a new router transfer destination address. Specifically, the message processing unit 25 sets MFT or MCT as the table type of the entry holding unit 21a, and creates an MFT entry or MCT entry for each transmission terminal address and multicast group address. For example, the message processing unit 25 creates an MFT entry or an MCT entry for each transmission terminal address and multicast group address specified by the Join message newly received by the UR 20a. The MFT entry and MCT entry created in this way function as MFT and MCT.

メッセージ処理部25は、作成したMFTエントリに、送信端末アドレス、マルチキャストグループアドレス、トンネル元アドレス、前トンネル元アドレス、ルータ転送先アドレス、KAT、JTを対応付けて登録する。メッセージ処理部25は、作成したMCTエントリに、送信端末アドレス、マルチキャストグループアドレス、ルータ転送先アドレス、KATを対応付けて登録する。   The message processing unit 25 registers the created MFT entry in association with the transmission terminal address, multicast group address, tunnel source address, previous tunnel source address, router transfer destination address, KAT, and JT. The message processing unit 25 registers the created MCT entry in association with the transmission terminal address, multicast group address, router transfer destination address, and KAT.

又、メッセージ処理部25は、送信端末アドレスをマルチキャストツリーの上流としたときに、ルータが分岐ルータになるかを判断する判断手段として機能する。メッセージ処理部25は、制御メッセージ及びエントリ保持部21aが保持するルータ転送先アドレスに基づいて判断を行う。更に、メッセージ処理部25は、分岐ルータになると判断した場合、ルータ保持手段に送信端末アドレスに対応付けて、複数のルータ転送先アドレスを登録するルータ登録手段としても機能する。具体的には、メッセージ処理部25は、UR20aが分岐ルータになると判断した場合、エントリ保持部21aにMFTエントリを作成して、ルータ転送先アドレスを登録する。   The message processing unit 25 functions as a determination unit that determines whether the router becomes a branch router when the transmission terminal address is upstream of the multicast tree. The message processing unit 25 makes a determination based on the control message and the router transfer destination address held by the entry holding unit 21a. Further, when it is determined that the message processing unit 25 is a branch router, the message processing unit 25 also functions as a router registration unit that registers a plurality of router transfer destination addresses in association with the transmission terminal address in the router holding unit. Specifically, when the message processing unit 25 determines that the UR 20a becomes a branch router, the message processing unit 25 creates an MFT entry in the entry holding unit 21a and registers the router transfer destination address.

又、メッセージ処理部25は、ルータ20aよりも下流の分岐ルータからの参加/離脱メッセージであるRedirectメッセージに基づいて、下流の分岐ルータのルータ転送先アドレスをエントリ保持部21aから削除し、下流の分岐ルータのアドレスをエントリ保持部21aに登録する。尚、メッセージ処理部25は、UR20aが分岐ルータになると判断した場合に加えて、UR20aが受信端末40a〜40cと接続する末端ルータとなる場合にも、MFTエントリを作成してルータ転送先アドレスを登録する。メッセージ処理部25は、UR20aが分岐ルータ又は末端ルータとなる場合以外は、MCTエントリを作成してルータ転送先アドレスを登録する。   Further, the message processing unit 25 deletes the router forwarding destination address of the downstream branch router from the entry holding unit 21a based on the Redirect message that is a join / leave message from the branch router downstream from the router 20a, and The branch router address is registered in the entry holding unit 21a. Note that the message processing unit 25 creates an MFT entry and sets a router transfer destination address when the UR 20a becomes a terminal router connected to the receiving terminals 40a to 40c in addition to the case where the UR 20a is determined to be a branch router. register. The message processing unit 25 creates an MCT entry and registers the router transfer destination address except when the UR 20a is a branch router or a terminal router.

又、メッセージ処理部25は、UR20aが分岐ルータになるか否かに基づいて、受信した制御メッセージをそのまま送信するか、受信した制御メッセージに基づいて新たに制御メッセージを生成して送信するかを判断する。メッセージ処理部25は、分岐ルータにならない場合にはそのまま送信すると判断し、受信した制御メッセージを転送部23に入力する。メッセージ処理部25は、分岐ルータになる場合には新たに生成すると判断し、受信した制御メッセージをメッセージ生成部26に入力する。   Further, the message processing unit 25 determines whether to transmit the received control message as it is based on whether or not the UR 20a becomes a branch router, or to generate and transmit a new control message based on the received control message. to decide. If the message processing unit 25 does not become a branch router, the message processing unit 25 determines to transmit the message as it is, and inputs the received control message to the transfer unit 23. When the message processing unit 25 becomes a branch router, the message processing unit 25 determines that it is newly generated, and inputs the received control message to the message generation unit 26.

メッセージ生成部26は、制御メッセージを生成する。メッセージ生成部26は、メッセージ処理部25から取得するUR20aが受信した制御メッセージ、エントリ保持部21aが保持する情報に基づいて、制御メッセージを生成する。メッセージ生成部26は、生成した制御メッセージを転送部23に入力する。   The message generator 26 generates a control message. The message generating unit 26 generates a control message based on the control message received by the UR 20a acquired from the message processing unit 25 and the information held by the entry holding unit 21a. The message generation unit 26 inputs the generated control message to the transfer unit 23.

(送信端末の構成)
次に、送信端末10の構成について説明する。図3(a)に示すように、送信端末10は、エントリ保持部11と、受信部12と、送信部13と、メッセージ処理部14と、パケット生成部15とを備える。
(Configuration of sending terminal)
Next, the configuration of the transmission terminal 10 will be described. As illustrated in FIG. 3A, the transmission terminal 10 includes an entry holding unit 11, a reception unit 12, a transmission unit 13, a message processing unit 14, and a packet generation unit 15.

受信部12は、UR20a〜20cやNR30a〜30c、受信端末40a〜40cから、制御メッセージを受信する。受信部12は、受信した制御メッセージをメッセージ処理部14に入力する。   The receiving unit 12 receives control messages from the URs 20a to 20c, the NRs 30a to 30c, and the receiving terminals 40a to 40c. The receiving unit 12 inputs the received control message to the message processing unit 14.

エントリ保持部11は、端末転送先アドレスを保持する送信端末保持手段である。図3(b)に示すように、エントリ保持部11は、テーブル種別、送信端末アドレス、マルチキャストグループアドレスに対応付けて、端末転送先アドレス、KATを保持する。送信端末10は、MFT以外用いないため、テーブル種別には「MFT」が設定される。端末転送先アドレスは、送信端末10がマルチキャストパケットを転送する転送先アドレスである。送信端末10が保持する端末転送先アドレスは、分岐ルータ、末端ルータ、受信端末のいずれかのアドレスである。図2(b)と同様に、KAT(UR2)は、端末転送先アドレス「UR2」のKATを示す。送信端末アドレスは、送信端末10の移動等により変更される場合がある。そのため、エントリ保持部11は、送信端末10の現在位置における現在の送信端末アドレスのMFTエントリと、変更前の送信端末アドレスのMFTエントリを保持できる。   The entry holding unit 11 is a transmission terminal holding unit that holds a terminal transfer destination address. As shown in FIG. 3B, the entry holding unit 11 holds the terminal transfer destination address and the KAT in association with the table type, the transmission terminal address, and the multicast group address. Since the transmitting terminal 10 uses only MFT, “MFT” is set as the table type. The terminal transfer destination address is a transfer destination address to which the transmission terminal 10 transfers a multicast packet. The terminal transfer destination address held by the transmission terminal 10 is any one of a branch router, a terminal router, and a reception terminal. Similarly to FIG. 2B, KAT (UR2) indicates the KAT of the terminal transfer destination address “UR2”. The transmission terminal address may be changed due to movement of the transmission terminal 10 or the like. Therefore, the entry holding unit 11 can hold the MFT entry of the current transmission terminal address at the current position of the transmission terminal 10 and the MFT entry of the transmission terminal address before the change.

メッセージ処理部14は、制御メッセージを処理する。メッセージ処理部14は、受信部12から送信端末10が受信した制御メッセージを取得する。メッセージ処理部14は、制御メッセージの種類、制御メッセージの送信元アドレス、エントリ保持部11が保持する情報に基づいて、エントリ保持部11への情報の登録、エントリ保持部11が保持する情報の更新や削除を行う。特に、メッセージ処理部14は、参加/離脱メッセージであるRedirectメッセージに基づいて、分岐ルータのルータ転送先アドレスを送信端末保持手段から削除し、分岐ルータのアドレスを送信端末保持手段に登録する送信端末登録手段として機能する。   The message processing unit 14 processes the control message. The message processing unit 14 acquires the control message received by the transmitting terminal 10 from the receiving unit 12. The message processing unit 14 registers information in the entry holding unit 11 and updates information held in the entry holding unit 11 based on the type of control message, the transmission source address of the control message, and information held in the entry holding unit 11. Or delete. In particular, the message processing unit 14 deletes the router transfer destination address of the branch router from the transmission terminal holding unit based on the Redirect message that is a join / leave message, and transmits the branch router address to the transmission terminal holding unit. Functions as a registration means.

メッセージ処理部14は、エントリ保持部11のテーブル種別にMFTを設定し、送信端末アドレス、マルチキャストグループアドレス毎にMFTエントリを作成する。例えば、メッセージ処理部14は、送信端末10が新たに受信したJoinメッセージやRedirectメッセージにより指定されている送信端末アドレス、マルチキャストグループアドレス毎にMFTエントリを作成する。メッセージ処理部14は、作成したMFTエントリに、送信端末アドレス、マルチキャストグループアドレス、端末転送先アドレス、KATを対応付けて登録する。   The message processing unit 14 sets MFT as the table type of the entry holding unit 11 and creates an MFT entry for each transmission terminal address and multicast group address. For example, the message processing unit 14 creates an MFT entry for each transmission terminal address and multicast group address specified by the Join message or Redirect message newly received by the transmission terminal 10. The message processing unit 14 registers the created MFT entry in association with the transmission terminal address, multicast group address, terminal transfer destination address, and KAT.

パケット生成部15は、データを含むマルチキャストパケットを生成する。パケット生成部15は、必要に応じて、BUメッセージやLUメッセージのような制御メッセージや、LUメッセージを付加したマルチキャストパケットを生成する。パケット生成部15は、エントリ保持部11から、端末転送先アドレスを取得する。又、パケット生成部15は、アプリケーション部からの入力や外部入力によって、データを取得する。   The packet generator 15 generates a multicast packet including data. The packet generation unit 15 generates a multicast packet to which a control message such as a BU message or an LU message or an LU message is added as necessary. The packet generation unit 15 acquires the terminal transfer destination address from the entry holding unit 11. The packet generation unit 15 acquires data by input from the application unit or external input.

まず、パケット生成部15は、データに、送信元アドレスとして送信端末アドレス、宛先アドレスとしてマルチキャストグループアドレスを付加したマルチキャストパケットを生成する。パケット生成部15は、エントリ保持部11を参照し、マルチキャストパケットが端末転送先アドレスの数になるように、生成したマルチキャストパケットを複製する。パケット生成部15は、マルチキャストパケットをカプセル化し、送信元アドレスに送信端末アドレスを設定し、宛先アドレスに端末転送先アドレスを設定する。パケット生成部15は、カプセル化したマルチキャストパケットを送信部13に入力する。   First, the packet generation unit 15 generates a multicast packet in which a transmission terminal address is added to the data and a multicast group address is added as a destination address. The packet generation unit 15 refers to the entry holding unit 11 and duplicates the generated multicast packet so that the multicast packet has the number of terminal transfer destination addresses. The packet generation unit 15 encapsulates the multicast packet, sets the transmission terminal address as the transmission source address, and sets the terminal transfer destination address as the destination address. The packet generator 15 inputs the encapsulated multicast packet to the transmitter 13.

送信部13は、UR20a〜20cやNR30a〜30c、受信端末40a〜40cに、マルチキャストパケットや制御メッセージを送信する。送信部13は、パケット生成部15からカプセル化されたマルチキャストパケットを取得し、メッセージ処理部14から制御メッセージを取得する。   The transmission unit 13 transmits multicast packets and control messages to the URs 20a to 20c, the NRs 30a to 30c, and the reception terminals 40a to 40c. The transmission unit 13 acquires the encapsulated multicast packet from the packet generation unit 15 and acquires a control message from the message processing unit 14.

次に、通信システム1におけるマルチキャストツリーの設定について、図4〜7を用いて詳細に説明する。前述したようにマルチキャストツリーには、初期状態と安定状態がある。そのため、初期状態における処理と安定状態における処理に分けて説明する。図4〜図7の説明において、UR20a〜20cが備えるエントリ保持部21a〜21cと、送信端末10が備えるエントリ保持部11を併記する。尚、説明を簡単にするために、エントリ保持部11,21a〜21cが保持する情報のうち、テーブル種別、送信端末アドレス、マルチキャストグループアドレス、端末転送先アドレス又はルータ転送先アドレスのみを示す。具体的には、送信端末アドレス、マルチキャストグループアドレス、端末転送先アドレス又はルータ転送先アドレスを、(送信端末アドレス,マルチキャストグループアドレス):[端末転送先アドレス又はルータ転送先アドレス]のように表記する。(送信端末アドレス,マルチキャストグループアドレス)により、マルチキャストツリーやマルチキャストパケットが、どの送信端末からのどのマルチキャストグループに関するものであるかを特定できる。又、送信端末10を最上流として説明する。   Next, the setting of the multicast tree in the communication system 1 will be described in detail with reference to FIGS. As described above, the multicast tree has an initial state and a stable state. Therefore, the process in the initial state and the process in the stable state will be described separately. In the description of FIGS. 4 to 7, the entry holding units 21 a to 21 c included in the URs 20 a to 20 c and the entry holding unit 11 included in the transmission terminal 10 are written together. For simplicity of explanation, only the table type, transmission terminal address, multicast group address, terminal transfer destination address, or router transfer destination address among the information held by the entry holding units 11, 21a to 21c is shown. Specifically, the transmission terminal address, multicast group address, terminal transfer destination address or router transfer destination address is expressed as (transmission terminal address, multicast group address): [terminal transfer destination address or router transfer destination address]. . By (transmission terminal address, multicast group address), it is possible to specify which multicast group from which transmission terminal the multicast tree or multicast packet relates to. Further, the transmission terminal 10 will be described as the most upstream.

(初期状態)
初期状態では、エントリ保持部11,21a〜21cは端末転送先アドレス、ルータ転送先アドレスを保持していない。図4に示すように、受信端末40aが、送信端末10が送信するマルチキャストパケットの受信を開始したい場合、マルチキャストパケットの送信を要求する。受信端末40aは、受信端末40aが無線リンクを介して接続しているルータがURの場合、MLDv2(Multicast Listener Discovery Version 2、「draft−vida−mld−v2−xx.txt」参照)に従って送信を要求できる。具体的には、受信端末40aは、Membership Report2をUR20cに送信する。尚、受信端末40aは、IPv6を用いる場合にはMLDv2に従うが、IPv4を用いる場合にはIGMPv3に従ってMembership Report2を送信する。
(initial state)
In the initial state, the entry holding units 11, 21a to 21c do not hold the terminal transfer destination address and the router transfer destination address. As shown in FIG. 4, when the receiving terminal 40a wants to start receiving a multicast packet transmitted from the transmitting terminal 10, it requests transmission of the multicast packet. When the router to which the receiving terminal 40a is connected via the radio link is UR, the receiving terminal 40a performs transmission according to MLDv2 (see Multicast Listener Discovery Version 2, “draft-vida-mld-v2-xx.txt”). Can request. Specifically, the receiving terminal 40a transmits Membership Report 2 to the UR 20c. Note that the receiving terminal 40a follows MLDv2 when using IPv6, but transmits Membership Report2 according to IGMPv3 when using IPv4.

受信端末40aは、Membership Report2を用いて、送信端末アドレス「S」、マルチキャストグループアドレス「G」、即ち、(S,G)によって特定されるマルチキャストパケットの送信を要求する。Membership Report2は、宛先アドレスにマルチキャストグループアドレス「G」、送信元アドレスに受信端末40aのアドレス「R1」が設定され、マルチキャストグループアドレス「G」の指定を含む。   Using the Membership Report 2, the receiving terminal 40a requests transmission of a multicast packet specified by the transmitting terminal address “S” and the multicast group address “G”, that is, (S, G). In the Membership Report 2, the multicast group address “G” is set as the destination address, the address “R1” of the receiving terminal 40a is set as the transmission source address, and includes designation of the multicast group address “G”.

受信端末40aから送信端末10への経路の最下流に存在するUR20cが、Membership Report2を受信する。UR20cのメッセージ処理部25は、UR20cが受信端末40aと接続する末端ルータであることから、エントリ保持部21cにMFTエントリを作成する。メッセージ処理部25は、(S,G):[G]をMFTエントリに登録する。メッセージ処理部25は、ルータ転送先アドレス「G」のKAT及び(S,G)に関するJTを起動させる。ルータ転送先アドレスがマルチキャストグループアドレス「G」の場合、(S,G)により特定されるマルチキャストパケットの受信を希望する受信端末40aがUR20cに接続していることを示す。よって、UR20cの転送部23は、宛先アドレスがマルチキャストグループアドレス「G」の場合、データ処理部24によりディカプセル化されたマルチキャストパケットを、UR20c自身に接続している受信端末40aに送信すればよい。   The UR 20c existing on the most downstream side of the path from the receiving terminal 40a to the transmitting terminal 10 receives the Membership Report2. The message processing unit 25 of the UR 20c creates an MFT entry in the entry holding unit 21c because the UR 20c is a terminal router connected to the receiving terminal 40a. The message processing unit 25 registers (S, G): [G] in the MFT entry. The message processing unit 25 activates the JT relating to the KAT and (S, G) of the router transfer destination address “G”. When the router transfer destination address is the multicast group address “G”, it indicates that the receiving terminal 40a desiring to receive the multicast packet specified by (S, G) is connected to the UR 20c. Therefore, when the destination address is the multicast group address “G”, the transfer unit 23 of the UR 20c may transmit the multicast packet decapsulated by the data processing unit 24 to the receiving terminal 40a connected to the UR 20c itself. .

UR20cのメッセージ処理部25は、受信したMembership Report2をメッセージ生成部26に入力する。UR20cのメッセージ生成部26は、受信端末40aがMembership Report2を用いて要求したマルチキャストパケットの送信を、送信端末10に要求するJoinメッセージ3を生成する。具体的には、メッセージ生成部26は、宛先アドレスに送信端末アドレス「S」を設定し、送信元アドレスにUR20cのアドレス「UR4」を設定し、マルチキャストグループアドレス「G」を指定したJoinメッセージ3を生成する。   The message processing unit 25 of the UR 20 c inputs the received Membership Report 2 to the message generation unit 26. The message generation unit 26 of the UR 20c generates a Join message 3 for requesting the transmission terminal 10 to transmit a multicast packet requested by the reception terminal 40a using the Membership Report 2. Specifically, the message generator 26 sets the sending terminal address “S” as the destination address, the address “UR4” of the UR 20 c as the source address, and the Join message 3 specifying the multicast group address “G”. Is generated.

このとき、UR20cのメッセージ生成部26は、Joinメッセージ3のヘッダに特別なオプションを設定する。特別なオプションとしては、例えば、IPv6を用いる場合にはRFC2460で規定されているHop−by−Hopオプションを設定でき、IPv4を用いる場合にはRFC2113で規定されているRouter Alert オプションを設定できる。これにより、UR20cは、他のUR20a,20bや送信端末10にJoinメッセージ3が特別な制御メッセージであることを通知できる。更に、メッセージ生成部26は、特別なオプションとして、オプションを解釈できない場合であってもそのメッセージを破棄しないよう指示するデータ、例えば、Hop−by−Hopオプションの場合、オプションタイプの先頭を「00」から開始するオプションを付加する。これにより、UR20cから送信端末10までの経路にオプションを解釈できないルータ、例えば、NRが存在しても破棄されず、UR20a,20bや送信端末10がJoinメッセージ3を受信できる。   At this time, the message generation unit 26 of the UR 20 c sets a special option in the header of the Join message 3. As a special option, for example, when IPv6 is used, a Hop-by-Hop option specified by RFC2460 can be set, and when IPv4 is used, a Router Alert option specified by RFC2113 can be set. Thereby, the UR 20c can notify the other URs 20a and 20b and the transmission terminal 10 that the Join message 3 is a special control message. Furthermore, as a special option, the message generation unit 26 sets the top of the option type to “00” in the case of data instructing not to discard the message even when the option cannot be interpreted, for example, in the case of a Hop-by-Hop option. Add an option starting with As a result, a router that cannot interpret an option on the route from the UR 20c to the transmission terminal 10, for example, NR, is not discarded even if NR exists, and the UR 20a, 20b and the transmission terminal 10 can receive the Join message 3.

そして、UR20cのメッセージ生成部26は、生成したJoinメッセージ3を転送部23に入力し、UR20cの転送部23が送信端末10宛にJoinメッセージ3を送信する。これにより、UR20cは、より上流のUR20b,20aにもJoinメッセージ3を転送できる。   Then, the message generation unit 26 of the UR 20 c inputs the generated Join message 3 to the transfer unit 23, and the transfer unit 23 of the UR 20 c transmits the Join message 3 to the transmission terminal 10. Thereby, the UR 20c can transfer the Join message 3 to the upstream URs 20b and 20a.

UR20cから送信端末10までの経路に存在するUR20bが、Joinメッセージ3を受信する。UR20bのメッセージ処理部25は、エントリ保持部21bを参照する。メッセージ処理部25は、エントリ保持部21bがルータ転送先アドレスを保持していないことから、UR20bがマルチキャストパケットを転送するルータ転送先アドレスは、受信したJoinメッセージ3により決まる1つであると判断する。よって、メッセージ処理部25は、UR20bは分岐ルータにはならないと判断する。   The UR 20b existing on the route from the UR 20c to the transmitting terminal 10 receives the Join message 3. The message processing unit 25 of the UR 20b refers to the entry holding unit 21b. The message processing unit 25 determines that the router transfer destination address to which the UR 20b transfers the multicast packet is one determined by the received Join message 3 because the entry holding unit 21b does not hold the router transfer destination address. . Therefore, the message processing unit 25 determines that the UR 20b does not become a branch router.

そのため、UR20bのメッセージ処理部25は、エントリ保持部21bにMCTエントリを作成する。メッセージ処理部25は、Joinメッセージ3の送信元アドレスに設定されている「UR4」をルータ転送先アドレスと判断し、(S,G):[UR4]をMCTエントリに登録する。メッセージ処理部25は、ルータ転送先アドレス「UR4」のKATを起動させる。このように初期状態では、分岐ルータではないURもMCTを保持することになる。更に、メッセージ処理部25は、受信したJoinメッセージ3をそのまま転送部23に入力する。UR20bの転送部23が送信端末10宛にJoinメッセージ3を送信し、より上流のUR20aにJoinメッセージを転送する。   Therefore, the message processing unit 25 of the UR 20b creates an MCT entry in the entry holding unit 21b. The message processing unit 25 determines that “UR4” set as the transmission source address of the Join message 3 is the router transfer destination address, and registers (S, G): [UR4] in the MCT entry. The message processing unit 25 activates the KAT of the router transfer destination address “UR4”. Thus, in the initial state, the UR that is not the branch router also holds the MCT. Further, the message processing unit 25 inputs the received Join message 3 to the transfer unit 23 as it is. The transfer unit 23 of the UR 20b transmits the Join message 3 to the transmission terminal 10, and transfers the Join message to the upstream UR 20a.

そして、UR20cから送信端末10までの経路のより上流に存在するUR20aが、Joinメッセージ3を受信する。UR20aのメッセージ処理部25も、UR20bと同様にして、エントリ保持部21aにMCTエントリを作成して、(S,G):[UR4]をMCTエントリに登録し、ルータ転送先アドレス「UR4」のKATを起動させる。NR30aは、特別なオプションを解釈できないため、Joinメッセージ3を通常のユニキャストパケットとして送信端末10に転送する。   Then, the UR 20a existing upstream of the path from the UR 20c to the transmission terminal 10 receives the Join message 3. Similarly to the UR 20b, the message processing unit 25 of the UR 20a creates an MCT entry in the entry holding unit 21a, registers (S, G): [UR4] in the MCT entry, and stores the router transfer destination address “UR4”. Start KAT. Since the NR 30a cannot interpret a special option, the NR 30a transfers the Join message 3 to the transmitting terminal 10 as a normal unicast packet.

最後に、送信端末10が、Joinメッセージ3を受信する。メッセージ処理部14は、エントリ保持部11にMFTエントリを作成する。メッセージ処理部14は、Joinメッセージ3の送信元アドレスに設定されている「UR4」を端末転送先アドレスと判断し、(S,G):[UR4]をMFTエントリに登録する。メッセージ処理部25は、端末転送先アドレス「UR4」のKATを起動させる。   Finally, the transmission terminal 10 receives the Join message 3. The message processing unit 14 creates an MFT entry in the entry holding unit 11. The message processing unit 14 determines that “UR4” set as the transmission source address of the Join message 3 is the terminal transfer destination address, and registers (S, G): [UR4] in the MFT entry. The message processing unit 25 activates the KAT of the terminal transfer destination address “UR4”.

以上の処理により、最上流の送信端末10から、末端ルータであるUR20cを経由して受信端末40aにマルチキャストパケットが転送されるマルチキャストツリーが設定される。この(S,G)により特定されるマルチキャストツリーに受信端末40aが参加している図4に示す状態において、受信端末40bが、送信端末10が送信するマルチキャストパケットの受信を開始したい場合、図5に示すようにしてマルチキャストツリーに参加する。尚、エントリ保持部11,21a,21bについて、受信端末40aだけが参加している図4における状態と、受信端末40bが参加した図5における状態とを区別するために、図4におけるエントリ保持部11,21a,21bの状態を、図5では、変更前エントリ保持部111,211a,211bとして図示する。   Through the above processing, a multicast tree is set in which multicast packets are transferred from the most upstream transmitting terminal 10 to the receiving terminal 40a via the UR 20c as a terminal router. In the state shown in FIG. 4 in which the receiving terminal 40a participates in the multicast tree specified by (S, G), when the receiving terminal 40b wants to start receiving a multicast packet transmitted by the transmitting terminal 10, FIG. Join the multicast tree as shown in For the entry holding units 11, 21a, and 21b, in order to distinguish the state in FIG. 4 in which only the receiving terminal 40a is participating from the state in FIG. 5 in which the receiving terminal 40b has participated, the entry holding unit in FIG. The states of 11, 21a, and 21b are illustrated as pre-change entry holding units 111, 211a, and 211b in FIG.

まず、受信端末40bはNR30bに接続しているため、受信端末40bが無線リンクを介して接続しているルータがNRであることを検出する。受信端末40bは、Membership Queryの受信の有無により検出できる。例えば、受信端末40bは、規定時間以上、Membership Queryを受信できない場合には、Membership Queryを送信するURが存在しないと判断でき、NRに接続していることを検出できる。あるいは、受信端末40bは、Membership Reportを送信後、規定時間を経過してもマルチキャストパケットを受信できない場合にも、Membership Reportを処理できるURが存在しないと判断でき、NRに接続していることを検出できる。   First, since the receiving terminal 40b is connected to the NR 30b, it is detected that the router to which the receiving terminal 40b is connected via the wireless link is NR. The receiving terminal 40b can detect the presence / absence of reception of the Membership Query. For example, if the receiving terminal 40b cannot receive the Membership Query for a predetermined time or longer, the receiving terminal 40b can determine that there is no UR that transmits the Membership Query, and can detect that it is connected to the NR. Alternatively, the receiving terminal 40b can determine that there is no UR capable of processing the Membership Report even if the multicast packet cannot be received after the lapse of the specified time after transmitting the Membership Report, and confirms that it is connected to the NR. It can be detected.

受信端末40bは、NRに接続している場合には、(S,G)により特定されるマルチキャストツリーへの参加を要求する、特別なオプションを設定したJoinメッセージ3を送信する。受信端末40bが、特別なオプションを設定したJoinメッセージ3を送信することにより、NR30bがJoinメッセージ3を破棄しないため、受信端末40bから送信端末10までの経路に存在するUR20bがJoinメッセージ3を受信できる。受信端末40bは、宛先アドレスに送信端末アドレス「S」を設定し、送信元アドレスに受信端末40bのアドレス「R2」を設定し、マルチキャストグループアドレス「G」を指定したJoinメッセージ3を送信する。   When the receiving terminal 40b is connected to the NR, the receiving terminal 40b transmits a Join message 3 in which a special option is set to request participation in the multicast tree specified by (S, G). Since the receiving terminal 40b transmits the Join message 3 in which the special option is set, the NR 30b does not discard the Join message 3, so the UR 20b existing in the path from the receiving terminal 40b to the transmitting terminal 10 receives the Join message 3. it can. The reception terminal 40b sets the transmission terminal address “S” as the destination address, sets the address “R2” of the reception terminal 40b as the transmission source address, and transmits the Join message 3 specifying the multicast group address “G”.

URの中で、受信端末40bから送信端末10への経路の最下流に存在するUR20bが、Joinメッセージ3を受信する。UR20bのメッセージ処理部25は、UR20bの変更前エントリ保持部211bを参照する。メッセージ処理部25は、MCTエントリを保持する変更前エントリ保持部211bが、既に(S,G)に対応するルータ転送先アドレスとして保持している「UR4」と、受信した(S,G)に関するJoinメッセージ3の送信元アドレス「R2」とが異なることから、UR20bが(S,G)により特定されるマルチキャストパケットを転送するルータ転送先アドレスは、「UR4」と「R2」の複数あると判断する。よって、メッセージ処理部25は、UR20bは分岐ルータになると判断する。このように初期状態では、MCTエントリは分岐ルータになるかを判断するために用いられる。   Among the URs, the UR 20b existing on the most downstream side of the path from the receiving terminal 40b to the transmitting terminal 10 receives the Join message 3. The message processing unit 25 of the UR 20b refers to the pre-change entry holding unit 211b of the UR 20b. The message processing unit 25 receives “UR4” that the pre-change entry holding unit 211b that holds the MCT entry already holds as the router transfer destination address corresponding to (S, G) and the received (S, G). Since the source address “R2” of the Join message 3 is different, it is determined that there are a plurality of router transfer destination addresses “UR4” and “R2” to which the UR 20b transfers the multicast packet specified by (S, G). To do. Therefore, the message processing unit 25 determines that the UR 20b is a branch router. Thus, in the initial state, the MCT entry is used to determine whether to become a branch router.

分岐ルータになると判断したUR20bのメッセージ処理部25は、変更前エントリ保持部211bからMCTエントリを削除し、新たにMFTエントリを作成する。メッセージ処理部25は、変更前エントリ保持部211bが保持していた情報と、受信したJoinメッセージ3に基づいて、(S,G):[UR4,R2]を、エントリ保持部21bのMFTエントリに登録し、MCTエントリで使われていたルータ転送先アドレス「UR4」のKATをコピーする。又、メッセージ処理部25は、ルータ転送先アドレス「R2」のKAT及び(S,G)に関するJTを起動させる。更に、メッセージ処理部25は、受信したJoinメッセージ3を、UR20bのメッセージ生成部26に入力する。   The message processing unit 25 of the UR 20b that has been determined to be a branch router deletes the MCT entry from the pre-change entry holding unit 211b and creates a new MFT entry. The message processing unit 25 sets (S, G): [UR4, R2] to the MFT entry of the entry holding unit 21b based on the information held by the entry holding unit 211b before the change and the received Join message 3. Register and copy the KAT of the router transfer destination address “UR4” used in the MCT entry. In addition, the message processing unit 25 activates the JT relating to the KAT and (S, G) of the router transfer destination address “R2”. Further, the message processing unit 25 inputs the received Join message 3 to the message generation unit 26 of the UR 20b.

UR20bのメッセージ生成部26は、エントリ保持部21bが保持するルータ転送先アドレスと、受信したJoinメッセージ3に基づいて、Redirectメッセージ4を生成する。メッセージ生成部26は、Redirectメッセージ4を生成後、受信したJoinメッセージ3は破棄する。UR20bのメッセージ生成部26は、分岐ルータとなるUR20bのアドレス「UR3」を端末転送先アドレスに追加することを要求するJoinメッセージと、端末転送先アドレスから分岐ルータであるUR20bのルータ転送先アドレス「UR4」と「R2」を削除することを要求するPruneメッセージとを含むRedirectメッセージ4を生成する。   The message generation unit 26 of the UR 20b generates the Redirect message 4 based on the router transfer destination address held by the entry holding unit 21b and the received Join message 3. After generating the redirect message 4, the message generator 26 discards the received join message 3. The message generation unit 26 of the UR 20b adds a Join message requesting to add the address “UR3” of the UR 20b serving as a branch router to the terminal transfer destination address, and the router transfer destination address “UR 20b serving as the branch router from the terminal transfer destination address. A Redirect message 4 including a Prune message requesting to delete “UR4” and “R2” is generated.

又、メッセージ生成部26は、宛先アドレスに送信端末アドレス「S」を、送信元アドレスにUR20bのアドレス「UR3」を設定し、マルチキャストグループアドレス「G」を指定したRedirectメッセージ4とする。更に、メッセージ生成部26は、Redirectメッセージ4のヘッダに特別なオプションを設定する。そして、UR20bのメッセージ生成部26は、生成したRedirectメッセージ4を転送部23に入力し、UR20bの転送部23が送信端末10宛にRedirectメッセージ4を送信する。これにより、UR20bは、より上流のUR20aにもRedirectメッセージ4を転送できる。このようにして、転送部23は、分岐ルータのアドレスを端末転送先アドレスに追加し、分岐ルータのルータ転送先アドレスを端末転送先アドレスから削除することを要求する参加/離脱メッセージを送信アドレス宛に送信するルータ送信手段として機能する。   The message generator 26 sets the transmission terminal address “S” as the destination address, the address “UR3” of the UR 20 b as the transmission source address, and sets the redirect message 4 as the multicast group address “G”. Further, the message generator 26 sets a special option in the header of the Redirect message 4. Then, the message generation unit 26 of the UR 20 b inputs the generated redirect message 4 to the transfer unit 23, and the transfer unit 23 of the UR 20 b transmits the redirect message 4 to the transmission terminal 10. As a result, the UR 20b can transfer the redirect message 4 to the upstream UR 20a. In this way, the transfer unit 23 adds the address of the branch router to the terminal transfer destination address and sends a join / leave message requesting to delete the router transfer destination address of the branch router from the terminal transfer destination address to the transmission address. It functions as a router transmission means for transmitting to.

そして、UR20bから送信端末10までの経路に存在するUR20aが、Redirectメッセージ4を受信する。UR20aのメッセージ処理部25は、Reidirectメッセージ4に従って、エントリ保持部21aを更新する。具体的には、メッセージ処理部25は、変更前エントリ保持部211aのMCTエントリから、削除の指示を受けている「UR4」、「R2」のうち、ルータ転送先アドレスとして保持している「UR4」及びそのKATを削除し、追加の指示を受けている「UR3」をMCTエントリにルータ転送先アドレスとして登録する。メッセージ処理部25は、ルータ転送先アドレス「UR3」のKATを起動させる。これにより、エントリ保持部21aのMCTエントリは、(S,G):[UR3]に更新される。このように分岐ルータよりも上流に位置するURも、Redirectメッセージ4に含まれる分岐ルータのアドレスをルータ転送先アドレスに追加し、分岐ルータのルータ転送先アドレスをルータ転送先アドレスから削除する。   Then, the UR 20a existing on the route from the UR 20b to the transmission terminal 10 receives the Redirect message 4. The message processing unit 25 of the UR 20a updates the entry holding unit 21a according to the Redirect message 4. Specifically, the message processing unit 25 retains “UR4” held as the router transfer destination address among “UR4” and “R2” that have received the deletion instruction from the MCT entry of the pre-change entry holding unit 211a. "And its KAT are deleted, and" UR3 "for which an additional instruction has been received is registered in the MCT entry as a router transfer destination address. The message processing unit 25 activates the KAT of the router transfer destination address “UR3”. As a result, the MCT entry in the entry holding unit 21a is updated to (S, G): [UR3]. In this way, the UR located upstream from the branch router also adds the branch router address included in the Redirect message 4 to the router transfer destination address and deletes the router transfer destination address of the branch router from the router transfer destination address.

更に、メッセージ処理部25は、受信したRedirectメッセージ4をそのまま転送部23に入力する。そして、UR20aの転送部23が送信端末10宛にRedirectメッセージ4を送信し、NR30aが、Redirectメッセージ4をユニキャストパケットとして送信端末10に転送する。   Further, the message processing unit 25 inputs the received Redirect message 4 to the transfer unit 23 as it is. Then, the transfer unit 23 of the UR 20a transmits the Redirect message 4 to the transmission terminal 10, and the NR 30a transfers the Redirect message 4 to the transmission terminal 10 as a unicast packet.

最後に、送信端末10が、Redirectメッセージ4を受信する。メッセージ処理部14は、Reidirectメッセージ4に従って、エントリ保持部11を更新する。具体的には、メッセージ処理部14は、変更前エントリ保持部111のMFTエントリから、削除の指示を受けている「UR4」、「R2」のうち、端末転送先アドレスとして保持している「UR4」及びそのKATを削除し、追加の指示を受けている分岐ルータのアドレス「UR3」をMFTエントリに端末転送先アドレスとして登録する。メッセージ処理部14は、端末転送先アドレス「UR3」のKATを起動させる。これにより、エントリ保持部11のMFTエントリは、(S,G):[UR3]に更新される。このようにして、メッセージ処理部14は、参加/離脱メッセージに基づいて、分岐ルータのルータ転送先アドレスを送信端末保持手段から削除し、分岐ルータのアドレスを送信端末保持手段に登録する送信端末登録手段として機能する。   Finally, the transmission terminal 10 receives the redirect message 4. The message processing unit 14 updates the entry holding unit 11 according to the Redirect message 4. Specifically, the message processing unit 14 stores “UR4” held as the terminal transfer destination address among “UR4” and “R2” that have received an instruction to delete from the MFT entry of the pre-change entry holding unit 111. ”And its KAT are deleted, and the address“ UR3 ”of the branch router receiving the addition instruction is registered in the MFT entry as the terminal transfer destination address. The message processing unit 14 activates the KAT of the terminal transfer destination address “UR3”. Thereby, the MFT entry of the entry holding unit 11 is updated to (S, G): [UR3]. In this manner, the message processing unit 14 deletes the router transfer destination address of the branch router from the transmission terminal holding unit based on the join / leave message, and registers the transmission terminal for registering the branch router address in the transmission terminal holding unit. Acts as a means.

以上の処理により、最上流の送信端末10から、分岐ルータとなったUR20b、末端ルータであるUR20cを経由して受信端末40aにマルチキャストパケットが転送され、UR20bを経由して受信端末40bにマルチキャストパケットが転送されるマルチキャストツリーが設定される。このように、マルチキャストツリーの初期状態では、新たな受信端末がマルチキャストツリーに次々と参加する。そして、新たな参加があるたびにマルチキャストツリーが変更され、設定されていく。   By the above processing, the multicast packet is transferred from the most upstream transmitting terminal 10 to the receiving terminal 40a via the UR 20b that is the branch router and the UR 20c that is the terminal router, and is transmitted to the receiving terminal 40b via the UR 20b. A multicast tree to which is transferred is set. Thus, in the initial state of the multicast tree, new receiving terminals participate in the multicast tree one after another. Each time there is a new participation, the multicast tree is changed and set.

受信端末40b及び末端ルータとなったUR20c、分岐ルータとなったUR20bはそれぞれ、分岐ルータであるUR20b、送信端末10に定期的にJoinメッセージを送信する。又、受信端末40aは、末端ルータであるUR20cに定期的にMembership Report2を送信する。送信端末10、UR20bは、Joinメッセージを受信することにより、UR20cは、Membership Reportを受信することにより、エントリ保持部11,21a〜21cの端末転送先アドレスやルータ転送先アドレスを維持する。   The receiving terminal 40b, the UR 20c serving as a terminal router, and the UR 20b serving as a branch router periodically transmit a Join message to the UR 20b serving as a branch router and the transmitting terminal 10, respectively. In addition, the receiving terminal 40a periodically transmits Membership Report 2 to the UR 20c which is a terminal router. The transmission terminal 10 and the UR 20b receive the Join message, and the UR 20c receives the Membership Report, thereby maintaining the terminal transfer destination addresses and the router transfer destination addresses of the entry holding units 11, 21a to 21c.

具体的には、分岐ルータとなったUR20bのメッセージ生成部26は、エントリ保持部21bを参照し、JTが満了したときに、宛先アドレスが送信端末アドレス「S」、送信元アドレスが「UR3」のJoinメッセージを生成する。そして、UR20bの転送部23が、生成したJoinメッセージを送信する。送信端末10のメッセージ処理部14は、エントリ保持部11を参照し、端末転送先アドレス「UR3」のKATが満了した場合、エントリ保持部11から(S,G)に対応する端末転送先アドレス「UR3」を削除する。一方、メッセージ処理部14は、端末転送先アドレス「UR3」のKATが満了する保持時間内に、受信部12が、分岐ルータであるUR20bから、送信元アドレスが「UR3」のJoinメッセージを受信した場合、端末転送先アドレス「UR3」のKATを再起動して、保持時間を延長する。   Specifically, the message generation unit 26 of the UR 20b that has become the branch router refers to the entry holding unit 21b, and when the JT expires, the destination address is “S” and the transmission source address is “UR3”. The Join message is generated. Then, the transfer unit 23 of the UR 20b transmits the generated Join message. The message processing unit 14 of the transmission terminal 10 refers to the entry holding unit 11, and when the KAT of the terminal transfer destination address “UR3” expires, the terminal transfer destination address “S, G” corresponding to (S, G) is transmitted from the entry holding unit 11. UR3 "is deleted. On the other hand, the message processing unit 14 receives the Join message with the source address “UR3” from the branch router UR20b within the holding time when the KAT of the terminal transfer destination address “UR3” expires. In this case, the KAT of the terminal transfer destination address “UR3” is restarted to extend the holding time.

又、末端ルータとなったUR20cもUR20bと同様にして、JTが満了したときにKATが満了していないルータ転送先アドレスが1つでもある場合は、宛先アドレスが送信端末アドレス「S」、送信元アドレスが「UR4」のJoinメッセージを送信する。受信端末40bも、宛先アドレスが送信端末アドレス「S」、送信元アドレスが「R2」のJoinメッセージを送信する。   Similarly to UR 20b, UR 20c that became the end router also has a destination address of “S” as the destination address when there is at least one router transfer destination address for which KAT has not expired when JT expires. A Join message whose original address is “UR4” is transmitted. The receiving terminal 40b also transmits a Join message whose destination address is the transmission terminal address “S” and whose transmission source address is “R2”.

分岐ルータとなったUR20bのメッセージ処理部25は、エントリ保持部21bを参照し、ルータ転送先アドレス「UR4」のKATが満了した場合には、エントリ保持部21bのMFTエントリを削除してMCTエントリを作成し、ルータ転送先アドレス「R2」を登録する。メッセージ処理部25は、ルータ転送先アドレスが「R2」1つになったことから、UR20bが分岐ルータから、分岐ルータではないルータ(以下「非分岐ルータ」という)になったと判断する。そして、メッセージ処理部25は、メッセージ生成部26に、Redirectメッセージの生成を指示する。そして、メッセージ生成部26が、非分岐ルータとなったUR20bのルータ転送先アドレス「R2」を端末転送先アドレスに追加し、非分岐ルータとなったUR20bのアドレス「UR3」を端末転送先アドレスから削除することを要求するRedirectメッセージを生成する。そして、転送部23が、そのRedirectメッセージを送信端末アドレス「S」宛に送信する。   The message processing unit 25 of the UR 20b that has become the branch router refers to the entry holding unit 21b, and when the KAT of the router transfer destination address “UR4” has expired, deletes the MFT entry in the entry holding unit 21b and deletes the MCT entry. And the router transfer destination address “R2” is registered. The message processing unit 25 determines that the UR 20b has changed from a branch router to a router that is not a branch router (hereinafter referred to as “non-branch router”) because the router transfer destination address has become one “R2”. Then, the message processing unit 25 instructs the message generation unit 26 to generate a redirect message. Then, the message generator 26 adds the router transfer destination address “R2” of the UR 20b that has become the non-branching router to the terminal transfer destination address, and the address “UR3” of the UR 20b that has become the non-branching router from the terminal transfer destination address. A Redirect message requesting deletion is generated. Then, the transfer unit 23 transmits the Redirect message to the transmission terminal address “S”.

このようにして、メッセージ処理部25は、URが分岐ルータから非分岐ルータになるかを判断する。そして、転送部23は、メッセージ処理部25が非分岐ルータになると判断した場合に、非分岐ルータのルータ転送先アドレスを端末転送先アドレスに追加し、非分岐ルータのアドレスを端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを送信端末アドレス宛に送信する。これにより、通信システム1では、一度分岐ルータになったURが非分岐ルータに変化した場合にも、適切なマルチキャストツリーに変更できる。次に、UR20bのメッセージ処理部25は、ルータ転送先アドレス「R2」のKATが満了した場合、エントリ保持部21bからルータ転送先アドレス「R2」が登録されたMCTエントリを削除する。   In this way, the message processing unit 25 determines whether the UR changes from a branch router to a non-branch router. Then, when the message processor 25 determines that the message processing unit 25 becomes a non-branching router, the transfer unit 23 adds the router transfer destination address of the non-branching router to the terminal transfer destination address, and adds the address of the non-branching router from the terminal transfer destination address. A join / leave request message requesting deletion is transmitted to the transmission terminal address. Thereby, in the communication system 1, even when the UR that has once become a branch router is changed to a non-branch router, it can be changed to an appropriate multicast tree. Next, when the KAT of the router transfer destination address “R2” expires, the message processing unit 25 of the UR 20b deletes the MCT entry in which the router transfer destination address “R2” is registered from the entry holding unit 21b.

一方、UR20bのメッセージ処理部25は、ルータ転送先アドレス「UR4」、「R2」のKATが満了する前に、UR20bの受信部22が、末端ルータであるUR20c、受信端末40bから、送信元アドレスが「UR4」、「R2」のJoinメッセージを受信した場合、ルータ転送先アドレス「UR4」、「R2」のKATを再起動し、保持時間を延長する。尚、末端ルータであるUR20cのメッセージ処理部25もUR20bと同様に、エントリ保持部21cを参照し、ルータ転送先アドレス「G」のKATが満了した場合、エントリ保持部21cのMFTエントリから、(S,G)に対応するルータ転送先アドレス「G」を削除する。又、UR20cのメッセージ処理部25は、UR20cの受信部22が受信端末40aから、Membership Reportを受信した場合、ルータ転送先アドレス「G」のKATを再起動する。このようにして初期状態ではマルチキャストツリーが維持される。又、Joinメッセージや、Membership Reportは、マルチキャストツリーを維持するための維持要求メッセージとしても機能できる。   On the other hand, before the KAT of the router transfer destination addresses “UR4” and “R2” expires, the message processing unit 25 of the UR 20b receives the source address from the UR 20c, which is the terminal router, and the receiving terminal 40b. Receives the “UR4” and “R2” Join messages, the router forwarding destination addresses “UR4” and “R2” KAT are restarted to extend the holding time. Note that the message processing unit 25 of the UR 20c, which is the terminal router, also refers to the entry holding unit 21c in the same manner as the UR 20b, and when the KAT of the router transfer destination address “G” expires, from the MFT entry of the entry holding unit 21c, ( The router forwarding address “G” corresponding to S, G) is deleted. In addition, when the receiving unit 22 of the UR 20c receives the Membership Report from the receiving terminal 40a, the message processing unit 25 of the UR 20c restarts the KAT of the router transfer destination address “G”. In this way, the multicast tree is maintained in the initial state. Also, the Join message and Membership Report can function as a maintenance request message for maintaining the multicast tree.

(安定状態)
マルチキャストツリーは、初期状態から安定状態に移行する。マルチキャストツリーは、例えば、新たに参加する受信端末の減少により安定状態に移行する。例えば、生放送の開始後は、新たに参加する受信端末が減少する。送信端末10は、新たに参加する受信端末が減少してきたと判断できた場合に、安定状態に移行したと判断できる。
(Stable state)
The multicast tree moves from the initial state to the stable state. For example, the multicast tree shifts to a stable state due to a decrease in newly participating receiving terminals. For example, after the start of live broadcasting, the number of receiving terminals that newly participate decreases. The transmitting terminal 10 can determine that it has shifted to the stable state when it can be determined that the number of newly receiving receiving terminals has decreased.

安定状態移行後の処理について、図5に示したマルチキャストツリーの状態で安定状態に移行した場合を例にとって、図6を用いて説明する。尚、エントリ保持部21aについて、図5における状態と、安定状態移行後における状態とを区別するために、図5におけるエントリ保持部21aの状態を、図6では、変更前エントリ保持部211aとして図示する。   The process after the transition to the stable state will be described with reference to FIG. 6 by taking as an example the case of shifting to the stable state in the state of the multicast tree shown in FIG. For the entry holding unit 21a, the state of the entry holding unit 21a in FIG. 5 is illustrated as the pre-change entry holding unit 211a in FIG. 6 in order to distinguish the state in FIG. To do.

マルチキャストツリーが安定状態に移行すると、送信端末10のパケット生成部15は、安定状態に移行したことを示すStableオプションを設定したマルチキャストパケットを生成し、送信部13が送信する。これにより、送信端末10は、参加している受信端末40a,40bに、マルチキャストツリーが安定状態に移行したことを通知する。受信端末40a,40bは、Stableオプションが設定されたマルチキャストパケットを受信した後は、受信端末40aの場合、Stable Membership Report、受信端末40bの場合、Stable Joinメッセージ3aを送信する。例えば、受信端末40bは、Stableオプションが設定されたマルチキャストパケットの受信後は、宛先アドレスが送信端末アドレス「S」、送信元アドレスが「R2」であるStable Joinメッセージ3aを送信する。   When the multicast tree shifts to the stable state, the packet generation unit 15 of the transmission terminal 10 generates a multicast packet in which the Stable option indicating the shift to the stable state is set, and the transmission unit 13 transmits the multicast packet. Thereby, the transmitting terminal 10 notifies the participating receiving terminals 40a and 40b that the multicast tree has shifted to a stable state. After receiving the multicast packet in which the Stable option is set, the receiving terminals 40a and 40b transmit the Stable Membership Report in the case of the receiving terminal 40a and the Stable Join message 3a in the case of the receiving terminal 40b. For example, after receiving the multicast packet in which the Stable option is set, the receiving terminal 40b transmits the Stable Join message 3a whose destination address is “S” and whose transmission source address is “R2”.

そして、UR20b,20cは、受信端末40a,40b又は下流のURから、Stable Joinメッセージ3aを受信した後は、Stable Joinメッセージ3aを送信する。例えば、末端ルータであるUR20cのメッセージ生成部26は、JTが満了したときにKATが満了していないルータ転送先アドレスが1つでもある場合は、宛先アドレスが送信端末アドレス「S」、送信元アドレスが「UR4」、マルチキャストグループアドレスとして「G」を指定したStable Joinメッセージ3aを生成する。UR20cの転送部23が、生成されたStable Joinメッセージ3aを送信する。   Then, after receiving the Stable Join message 3a from the receiving terminals 40a and 40b or the downstream UR, the URs 20b and 20c transmit the Stable Join message 3a. For example, the message generation unit 26 of the UR 20c, which is a terminal router, determines that the destination address is the transmission terminal address “S” and the transmission source address when there is even one router transfer destination address for which the KAT has not expired when the JT has expired. A stable join message 3a in which the address is “UR4” and “G” is specified as the multicast group address is generated. The transfer unit 23 of the UR 20c transmits the generated stable join message 3a.

そして、UR20cから送信端末10までの経路に存在するUR20bが、UR20cからのStable Joinメッセージ3aを受信する。UR20bのメッセージ処理部25は、エントリ保持部21bを参照し、受信したStable Joinメッセージ3aの送信元アドレスをルータ転送先アドレスとして保持するエントリが、MFTエントリ又はMCTエントリのいずれであるかを判断する。メッセージ処理部25は、MFTエントリが、Stable Joinメッセージ3aの送信元アドレスをルータ転送先アドレスとして保持している場合には、ルータ転送先アドレスの保持時間を延長する。メッセージ処理部25は、MCTエントリが、Stable Joinメッセージ3aの送信元アドレスを、ルータ転送先アドレスとして保持している場合には保持時間を延長しない。尚、MFTエントリが、Stable Joinメッセージ3aの送信元アドレスをルータ転送先アドレスとして保持している場合は、当然、そのルータ転送先アドレスのKATが満了する前、即ち、保持時間内にUR20bは、Stable Joinメッセージ3aを受信していることになる。   And UR20b which exists in the path | route from UR20c to the transmission terminal 10 receives the Stable Join message 3a from UR20c. The message processing unit 25 of the UR 20b refers to the entry holding unit 21b, and determines whether the entry holding the source address of the received stable join message 3a as the router transfer destination address is an MFT entry or an MCT entry. . When the MFT entry holds the source address of the stable join message 3a as the router transfer destination address, the message processing unit 25 extends the holding time of the router transfer destination address. The message processing unit 25 does not extend the holding time when the MCT entry holds the source address of the stable join message 3a as the router transfer destination address. When the MFT entry holds the source address of the stable join message 3a as the router transfer destination address, naturally, before the KAT of the router transfer destination address expires, that is, within the holding time, the UR 20b The table join message 3a is received.

UR20bのメッセージ処理部25は、エントリ保持部21bのMFTエントリが、受信したStable Joinメッセージ3aの送信元アドレス「UR4」をルータ転送先アドレスとして保持しているため、ルータ転送先アドレス「UR4」のKATを再起動し、保持時間を延長する。同様に、受信端末40bから送信端末10までの経路に存在するUR20bが、受信端末40bからのStable Joinメッセージ3aを受信する。そして、UR20bのメッセージ処理部25は、エントリ保持部21bのMFTエントリが、受信したStable Joinメッセージ3aの送信元アドレス「R2」をルータ転送先アドレスとして保持しているため、ルータ転送先アドレス「R2」のKATを再起動し、保持時間を延長する。   Since the MFT entry in the entry holding unit 21b holds the source address “UR4” of the received stable join message 3a as the router transfer destination address, the message processing unit 25 of the UR 20b stores the router transfer destination address “UR4”. Restart KAT and extend retention time. Similarly, the UR 20b existing on the path from the receiving terminal 40b to the transmitting terminal 10 receives the Stable Join message 3a from the receiving terminal 40b. Then, since the message processing unit 25 of the UR 20b holds the source address “R2” of the received stable join message 3a as the router transfer destination address in the MFT entry of the entry holding unit 21b, the router transfer destination address “R2” Reboot the KAT to extend the holding time.

更に、UR20bのメッセージ処理部25は、今後生成するJoinメッセージには、Stableオプションを設定するようメッセージ生成部26に指示する。そして、UR20bのメッセージ生成部26は、JTが満了したときにKATが満了していないルータ転送先アドレスが1つでもある場合は、宛先アドレスが送信端末アドレス「S」、送信元アドレスが「UR3」、マルチキャストグループアドレスとして「G」を指定したStable Join3aメッセージを生成する。そして、UR20bの転送部23が、生成されたStable Joinメッセージ3aを送信する。このように、分岐ルータは、Stable Joinメッセージ3aの受信後は、自身もStable Joinメッセージ3aを送信する。   Further, the message processing unit 25 of the UR 20b instructs the message generation unit 26 to set the Stable option for a Join message to be generated in the future. Then, the message generator 26 of the UR 20b determines that the destination address is “S” and the source address is “UR3” if there is at least one router transfer destination address for which the KAT has not expired when the JT expires. ”, A Stable Join3a message specifying“ G ”as the multicast group address is generated. Then, the transfer unit 23 of the UR 20b transmits the generated stable join message 3a. In this way, the branch router itself transmits the stable join message 3a after receiving the stable join message 3a.

そして、UR20bから送信端末10までの経路に存在するUR20aが、Stable Joinメッセージ3aを受信する。UR20aのメッセージ処理部25は、変更前エントリ保持部211aを参照する。メッセージ処理部25は、変更前エントリ保持部211aがMCTエントリしか保持しておらず、しかも、MCTエントリに登録されているルータ転送先アドレスが、受信したStable Joinメッセージ3aの送信元アドレス「UR3」と同一であるため、そのルータ転送先アドレス「UR3」のKATを再起動せず、保持時間を延長しない。このように、Stable Joinメッセージ3aは、MCTエントリが保持するルータ転送先アドレスのKATの再起動には用いられない。更に、UR20aのメッセージ処理部25は、Stable Joinメッセージ3aをそのまま転送部23に入力する。UR20aの転送部23が送信端末10宛にStable Joinメッセージ3aを送信し、NR30aが、Stable Joinメッセージ3aをユニキャストパケットとして送信端末10に転送する。   And UR20a which exists in the path | route from UR20b to the transmission terminal 10 receives the Stable Join message 3a. The message processing unit 25 of the UR 20a refers to the pre-change entry holding unit 211a. In the message processing unit 25, the pre-change entry holding unit 211a holds only the MCT entry, and the router transfer destination address registered in the MCT entry is the transmission source address “UR3” of the received stable join message 3a. Therefore, the KAT of the router transfer destination address “UR3” is not restarted and the holding time is not extended. Thus, the Stable Join message 3a is not used for restarting the KAT of the router transfer destination address held by the MCT entry. Further, the message processing unit 25 of the UR 20a inputs the Stable Join message 3a to the transfer unit 23 as it is. The transfer unit 23 of the UR 20a transmits a stable join message 3a to the transmission terminal 10, and the NR 30a transfers the stable join message 3a to the transmission terminal 10 as a unicast packet.

変更前エントリ保持部211aが保持するルータ転送先アドレス「UR3」のKATは再起動されないため、満了する。UR20aのメッセージ処理部25は、KATが満了したルータ転送先アドレス「UR3」を、変更前エントリ保持部211aから削除する。その結果、エントリ保持部21aは、MCTエントリが破棄されて、ルータ転送先アドレスを保持しない状態に更新される。   The KAT of the router transfer destination address “UR3” held by the entry holding unit 211a before change expires because it is not restarted. The message processing unit 25 of the UR 20a deletes the router transfer destination address “UR3” whose KAT has expired from the pre-change entry holding unit 211a. As a result, the entry holding unit 21a is updated to a state in which the MCT entry is discarded and the router transfer destination address is not held.

最後に、送信端末10が、Stable Joinメッセージ3aを受信する。メッセージ処理部14は、エントリ保持部11が、受信したStable Joinメッセージ3aの送信元アドレス「UR3」を端末転送先アドレスとして保持しているため、端末転送先アドレス「UR3」のKATを再起動し、保持時間を延長する。尚、末端ルータであるUR20cのエントリ保持部21cが保持するルータ転送先アドレス「G」のKATは、初期状態におけるマルチキャストツリーの維持の場合と同様に、UR20cがMembership Reportを受信した場合に、UR20cのメッセージ処理部25が再起動する。   Finally, the transmission terminal 10 receives the Stable Join message 3a. The message processing unit 14 restarts the KAT of the terminal transfer destination address “UR3” because the entry holding unit 11 holds the transmission source address “UR3” of the received stable join message 3a as the terminal transfer destination address. , Extend the holding time. Note that the KAT of the router transfer destination address “G” held by the entry holding unit 21c of the UR 20c that is the terminal router is the UR 20c when the UR 20c receives the Membership Report, as in the case of maintaining the multicast tree in the initial state. Message processing unit 25 is restarted.

このように、通信システム1では、安定状態移行後は、エントリ保持部21a〜21cのMFTエントリが保持するルータ転送先アドレスの保持時間の延長にのみ利用するStable Joinメッセージ3aを用いることにより、エントリ保持部21a〜21cのMFTエントリが保持するルータ転送先アドレスだけが保持され、MCTエントリが保持するルータ転送先アドレスは削除される。これにより、UR20a〜20cは、エントリ保持部21a〜21cのMFTエントリがルータ転送先アドレスを保持する分岐ルータ又は末端ルータの場合にだけ、ルータ転送先アドレスを保持し続けることができ、安定状態のマルチキャストツリーを維持できる。   As described above, the communication system 1 uses the stable join message 3a used only for extending the holding time of the router transfer destination address held by the MFT entries of the entry holding units 21a to 21c after the transition to the stable state. Only the router transfer destination address held by the MFT entries of the holding units 21a to 21c is held, and the router transfer destination address held by the MCT entry is deleted. As a result, the URs 20a to 20c can continue to hold the router transfer destination address only when the MFT entry of the entry holding units 21a to 21c is a branch router or a terminal router that holds the router transfer destination address. A multicast tree can be maintained.

MCTは、マルチキャストツリーの設定のため、より具体的には、URが分岐ルータになるか否かを判断するために用いられる。そのため、受信端末の参加が頻繁に起こるマルチキャストツリーの初期状態では有用である。しかし、マルチキャストツリーが安定状態に移行した後は、新たにマルチキャストツリーに参加する受信端末の数が減少するため、URが分岐ルータになるか否かを判断する機会が減り、MCTエントリが利用される機会も減少する。よって、MCTエントリが保持するルータ転送先アドレスは初期状態においてのみ保持し、マルチキャストツリーが安定状態に移行した後は削除することにより、分岐ルータ及び末端ルータ以外のURの負荷を更に軽減できる。   The MCT is used for setting a multicast tree, and more specifically, for determining whether or not the UR becomes a branch router. Therefore, it is useful in the initial state of a multicast tree where reception terminals frequently participate. However, since the number of receiving terminals that newly join the multicast tree decreases after the multicast tree transitions to a stable state, the opportunity to determine whether or not the UR becomes a branch router is reduced, and the MCT entry is used. Opportunities are also reduced. Therefore, the router transfer destination address held by the MCT entry is held only in the initial state, and is deleted after the multicast tree has shifted to the stable state, thereby further reducing the load on URs other than the branch router and the end router.

安定状態に移行し、更に、MCTエントリが保持するルータ転送先アドレスが削除された図6に示す状態において、受信端末40cが、送信端末10が送信するマルチキャストパケットの受信を開始したい場合、図7に示すようにして安定状態のマルチキャストツリーに参加する。尚、エントリ保持部11,21aについて、受信端末40a,40bが参加している図6における状態と、受信端末40cが参加した図7における状態と、図6における状態から図7における状態への移行状態とを区別するために、図7では、図6におけるエントリ保持部11,21aの状態を、変更前エントリ保持部112,212aとして図示し、移行状態におけるエントリ保持部11,21aの状態を、移行中エントリ保持部111,211aとして図示する。   If the receiving terminal 40c wants to start receiving a multicast packet transmitted by the transmitting terminal 10 in the state shown in FIG. Join the stable multicast tree as shown in For the entry holding units 11 and 21a, the state in FIG. 6 in which the receiving terminals 40a and 40b participate, the state in FIG. 7 in which the receiving terminal 40c participates, and the transition from the state in FIG. 6 to the state in FIG. In FIG. 7, the state of the entry holding units 11 and 21a in FIG. 6 is illustrated as the pre-change entry holding units 112 and 212a, and the state of the entry holding units 11 and 21a in the transition state is illustrated in FIG. This is illustrated as the entry holding units 111 and 211a during migration.

まず、受信端末40cはNR30cに接続しているため、受信端末40bと同様にして、受信端末40cが無線リンクを介して接続しているルータがNRであることを検出し、Joinメッセージ3を送信する。このとき、受信端末40cは、マルチキャストツリーに参加していないため、Stableオプションが設定されたマルチキャストパケットを受信していない。よって、受信端末40cは、Stableオプションが設定されていない通常のJoinメッセージ3を送信する。受信端末40cは、宛先アドレスに送信端末アドレス「S」を設定し、送信元アドレスに受信端末40cのアドレス「R3」を設定し、マルチキャストグループアドレス「G」を指定したJoinメッセージ3を送信する。   First, since the receiving terminal 40c is connected to the NR 30c, in the same manner as the receiving terminal 40b, the router connected to the receiving terminal 40c via the wireless link is detected to be NR, and the Join message 3 is transmitted. To do. At this time, since the receiving terminal 40c does not participate in the multicast tree, the receiving terminal 40c has not received the multicast packet in which the Stable option is set. Therefore, the receiving terminal 40c transmits a normal Join message 3 in which the Stable option is not set. The reception terminal 40c sets the transmission terminal address “S” as the destination address, sets the address “R3” of the reception terminal 40c as the transmission source address, and transmits the Join message 3 specifying the multicast group address “G”.

URの中で、受信端末40cから送信端末10への経路の最下流に存在するUR20aが、Joinメッセージ3を受信する。UR20aのメッセージ処理部25は、UR20aの更新前エントリ保持部212aを参照する。メッセージ処理部25は、更新前エントリ保持部212aがルータ転送先アドレスを保持しておらず、かつ、安定状態のマルチキャストツリーの維持に用いるStable Joinメッセージ3aではない通常のJoinメッセージ3を受信したことから、受信したJoinメッセージ3の送信元アドレスに設定されている「R3」を、UR20aがマルチキャストパケットを転送するルータ転送先アドレスと判断する。しかも、ルータ転送先アドレスは1つであるため、メッセージ処理部25は、UR20aは分岐ルータにはならないと判断する。   Among the URs, the UR 20a existing on the most downstream side of the path from the receiving terminal 40c to the transmitting terminal 10 receives the Join message 3. The message processing unit 25 of the UR 20a refers to the pre-update entry holding unit 212a of the UR 20a. The message processing unit 25 has received the normal Join message 3 that is not the stable join tree 3a used for maintaining the stable multicast tree, and the pre-update entry holding unit 212a does not hold the router forwarding address. Therefore, “R3” set as the transmission source address of the received Join message 3 is determined as the router transfer destination address to which the UR 20a transfers the multicast packet. Moreover, since there is only one router transfer destination address, the message processing unit 25 determines that the UR 20a does not become a branch router.

そのため、UR20aのメッセージ処理部25は、更新前エントリ保持部212aにMCTエントリを作成して、(S,G):[R3]を登録し、移行中エントリ保持部211aの状態とする。更に、メッセージ処理部25は、受信したJoinメッセージ3をそのままUR20aの転送部23に入力し、転送部23が送信端末10宛にJoinメッセージ3を送信する。   Therefore, the message processing unit 25 of the UR 20a creates an MCT entry in the pre-update entry holding unit 212a, registers (S, G): [R3], and sets the in-migration entry holding unit 211a. Furthermore, the message processing unit 25 inputs the received Join message 3 as it is to the transfer unit 23 of the UR 20 a, and the transfer unit 23 transmits the Join message 3 to the transmission terminal 10.

送信端末10は、Joinメッセージ3を受信する。メッセージ処理部14は、更新前エントリ保持部112が、受信したJoinメッセージ3の送信元アドレスに設定されている「R3」を保持していないため、「R3」を新たなルータ転送先アドレスと判断する。メッセージ処理部14は、MFTエントリを作成してルータ転送先アドレス「R3」を追加し、更新前エントリ保持部112を、移行中エントリ保持部111の状態(S,G):[UR3,R3]に更新する。これにより、送信端末10から受信端末40cにマルチキャストパケットが直接転送されるマルチキャストツリーが、一旦構築される。   The transmission terminal 10 receives the Join message 3. The message processing unit 14 determines that “R3” is a new router transfer destination address because the pre-update entry holding unit 112 does not hold “R3” set as the transmission source address of the received Join message 3. To do. The message processing unit 14 creates an MFT entry, adds the router transfer destination address “R3”, and sets the pre-update entry holding unit 112 to the in-migration entry holding unit 111 state (S, G): [UR3, R3]. Update to Thereby, a multicast tree in which multicast packets are directly transferred from the transmission terminal 10 to the reception terminal 40c is once constructed.

その後、UR20bが、JTの満了により、宛先アドレスが送信端末アドレス「S」、送信元アドレスが「UR3」、マルチキャストグループアドレスとして「G」を指定したStable Joinメッセージ3aを送信する。そして、UR20bから送信端末10までの経路に存在するUR20aが、Stable Joinメッセージ3aを受信する。   Thereafter, the UR 20b transmits a stable join message 3a in which the destination address is “S”, the source address is “UR3”, and “G” is specified as the multicast group address when JT expires. And UR20a which exists in the path | route from UR20b to the transmission terminal 10 receives the Stable Join message 3a.

UR20aのメッセージ処理部25は、移行中エントリ保持部211aを参照する。メッセージ処理部25は、移行中エントリ保持部211aが既に(S,G)に対応するルータ転送先アドレスとして保持している「R3」と、受信した(S,G)に関するStable Joinメッセージ3aの送信元アドレス「UR3」とが異なるので、Stable Joinメッセージ3aは安定状態のマルチキャストツリーの維持に用いるものではないと判断する。更に、メッセージ処理部25は、UR20aが(S,G)により特定されるマルチキャストパケットを転送するルータ転送先アドレスは「UR3」と「R3」の複数あるため、UR20aは分岐ルータになると判断する。そのため、UR20aのメッセージ処理部25は、移行中エントリ保持部211aからMCTエントリを削除し、新たにMFTエントリを作成する。メッセージ処理部25は、(S,G):[UR3,R3]をエントリ保持部21aのMFTエントリに登録する。   The message processing unit 25 of the UR 20a refers to the migration entry holding unit 211a. The message processing unit 25 transmits “R3” already held as the router transfer destination address corresponding to (S, G) by the migration entry holding unit 211a, and transmission of the received Stable Join message 3a regarding (S, G). Since the original address “UR3” is different, it is determined that the stable join message 3a is not used for maintaining the multicast tree in the stable state. Further, the message processing unit 25 determines that the UR 20a becomes a branch router because there are a plurality of router transfer destination addresses “UR3” and “R3” to which the UR 20a transfers the multicast packet specified by (S, G). Therefore, the message processing unit 25 of the UR 20a deletes the MCT entry from the migration entry holding unit 211a, and newly creates an MFT entry. The message processing unit 25 registers (S, G): [UR3, R3] in the MFT entry of the entry holding unit 21a.

更に、UR20aのメッセージ生成部26は、新たに分岐ルータとなるUR20aのアドレス「UR2」を端末転送先アドレスに追加することを要求するJoinメッセージと、端末転送先アドレスから分岐ルータであるUR20aのルータ転送先アドレス「UR3」と「R3」を削除することを要求するPruneメッセージとを含むRedirectメッセージ4を生成する。又、メッセージ生成部26は、宛先アドレスに送信端末アドレス「S」を、送信元アドレスにUR20aのアドレス「UR3」を設定し、マルチキャストグループアドレス「G」を指定したRedirectメッセージ4とする。そして。UR20aの転送部23が送信端末10宛にRedirectメッセージ4を送信する。   Further, the message generation unit 26 of the UR 20a adds a Join message requesting to add the address “UR2” of the UR 20a to be the new branch router to the terminal transfer destination address, and the router of the UR 20a that is the branch router from the terminal transfer destination address. A Redirect message 4 including a forwarding message “UR3” and a Prune message requesting to delete “R3” is generated. In addition, the message generator 26 sets the transmission terminal address “S” as the destination address, the address “UR3” of the UR 20a as the transmission source address, and sets the redirect message 4 as the multicast group address “G”. And then. The transfer unit 23 of the UR 20 a transmits the Redirect message 4 to the transmission terminal 10.

送信端末10は、Redirectメッセージ4を受信する。メッセージ処理部14は、Reidirectメッセージ4に従ってエントリ保持部11を更新する。具体的には、メッセージ処理部14は、移行中エントリ保持部111のMFTエントリから、削除の指示を受けている「UR3」、「R3」を削除し、追加の指示を受けている分岐ルータのアドレス「UR2」を、MFTエントリに端末転送先アドレスとして登録する。これにより、エントリ保持部11のMFTエントリは、(S,G):[UR2]に更新される。   The transmission terminal 10 receives the redirect message 4. The message processing unit 14 updates the entry holding unit 11 according to the Redirect message 4. Specifically, the message processing unit 14 deletes “UR3” and “R3” that have been instructed to be deleted from the MFT entry of the in-migration entry holding unit 111, and the branch router that has received the instruction for addition. The address “UR2” is registered in the MFT entry as the terminal transfer destination address. As a result, the MFT entry in the entry holding unit 11 is updated to (S, G): [UR2].

以上の処理により、最上流の送信端末10から、新たに上流の分岐ルータとなったUR20a、上流にあるUR20aが分岐ルータとなったことにより下流の分岐ルータとなったUR20b、末端ルータであるUR20cを経由して受信端末40aにマルチキャストパケットが転送され、UR20a、UR20bを経由して受信端末40bにマルチキャストパケットが転送され、UR20aを経由して受信端末40cにマルチキャストパケットが転送されるマルチキャストツリーが設定される。このようにして安定状態のマルチキャストツリーが設定される。   Through the above processing, from the most upstream transmitting terminal 10, the UR 20a that has newly become the upstream branch router, the UR 20b that has become the downstream branch router because the upstream UR 20a has become the branch router, and the UR 20c that is the terminal router A multicast tree is set in which multicast packets are transferred to the receiving terminal 40a via the UR, multicast packets are transferred to the receiving terminal 40b via the UR 20a and UR 20b, and multicast packets are transferred to the receiving terminal 40c via the UR 20a. Is done. In this way, a stable multicast tree is set.

〔通信方法〕
図1に示した通信システム1を用いた通信方法を説明する。まず、Joinメッセージを受信した時の処理手順を説明する。図8に示すように、UR20a〜20cの受信部22が、Joinメッセージを受信する(S101)。UR20a〜20cのメッセージ処理部25は、エントリ保持部21a〜21cがJoinメッセージの送信元アドレスを、ルータ転送先アドレスとして保持しているかを判断する(S102)。
〔Communication method〕
A communication method using the communication system 1 shown in FIG. 1 will be described. First, a processing procedure when a Join message is received will be described. As illustrated in FIG. 8, the receiving units 22 of the URs 20a to 20c receive the Join message (S101). The message processing unit 25 of the URs 20a to 20c determines whether the entry holding units 21a to 21c hold the source address of the Join message as a router transfer destination address (S102).

ステップ(S102)において、UR20a〜20のcメッセージ処理部25は、送信元アドレスを保持していないと判断した場合、受信したJoinメッセージが、Stableオプションが設定されたStable Joinメッセージであるか否かを判断する(S103)。UR20a〜20cのメッセージ処理部25は、Stable Joinメッセージであると判断した場合、UR20a〜20cの転送部23がStable Joinメッセージを上流に転送する(S106)。   In step (S102), if the c message processing unit 25 of the URs 20a to 20 determines that the source address is not held, whether or not the received Join message is a Stable Join message in which the Stable option is set. Is determined (S103). If the message processing unit 25 of the URs 20a to 20c determines that the message is a stable join message, the transfer unit 23 of the URs 20a to 20c transfers the stable join message upstream (S106).

一方、ステップ(S103)において、UR20a〜20cのメッセージ処理部25は、Stable Joinメッセージではなく、通常のJoinメッセージであると判断した場合、エントリ保持部21a〜21cにMCTエントリを作成する(S105)。更に、UR20a〜20cのメッセージ処理部25は、作成したMCTエントリに受信したJoinメッセージの送信元アドレスをルータ転送先アドレスとして登録し、そのKATを起動する(S107)。そして、UR20a〜20cの転送部23は、Joinメッセージを上流に転送する(S108)。   On the other hand, when the message processing unit 25 of the URs 20a to 20c determines that it is not a stable join message but a normal join message in step (S103), it creates an MCT entry in the entry holding units 21a to 21c (S105). . Further, the message processing unit 25 of the URs 20a to 20c registers the source address of the received Join message in the created MCT entry as a router transfer destination address, and activates the KAT (S107). Then, the transfer unit 23 of the URs 20a to 20c transfers the Join message upstream (S108).

又、ステップ(S102)において、UR20a〜20cのメッセージ処理部25は、送信元アドレスを保持していると判断した場合、エントリ保持部21a〜21cのMCTエントリ又はMFTエントリのいずれが保持しているかを判断する(S104)。MFTエントリが保持すると判断した場合、UR20a〜20cのメッセージ処理部25は、Joinメッセージが示す送信端末アドレスとマルチキャストグループアドレス、即ち、(S,G)に対応するMFTエントリが、ルータ転送先アドレスとして、Joinメッセージの送信元アドレスを保持しているかを判断する(S109)。UR20a〜20cのメッセージ処理部25は、(S,G)に対応するMFTエントリが保持していないと判断した場合には、Joinメッセージの送信元アドレスをルータ転送先アドレスとして、エントリ保持部21a〜21cの(S,G)に対応するMFTエントリに登録する(S114)。そして、UR20a〜20cのメッセージ処理部25は、受信したJoinメッセージを破棄する(S115)。更に、UR20a〜20cのメッセージ処理部25は、登録した(S,G)に対応するMFTエントリが保持するルータ転送先アドレスのKATを起動させる(S118)。   In step (S102), if the message processing unit 25 of the URs 20a to 20c determines that the source address is held, which of the MCT entry or the MFT entry of the entry holding unit 21a to 21c is held? Is determined (S104). If it is determined that the MFT entry is held, the message processing unit 25 of the URs 20a to 20c uses the transmission terminal address and the multicast group address indicated by the Join message, that is, the MFT entry corresponding to (S, G) as the router transfer destination address. , It is determined whether or not the source address of the Join message is held (S109). When the message processing unit 25 of the URs 20a to 20c determines that the MFT entry corresponding to (S, G) is not held, the entry holding unit 21a to It is registered in the MFT entry corresponding to (S, G) of 21c (S114). Then, the message processing unit 25 of the URs 20a to 20c discards the received Join message (S115). Further, the message processing unit 25 of the URs 20a to 20c activates the KAT of the router transfer destination address held by the MFT entry corresponding to the registered (S, G) (S118).

一方、ステップ(S109)において、UR20a〜20cのメッセージ処理部25は、(S,G)に対応するMFTエントリが保持していると判断した場合には、ステップ(S115)に進み、受信したJoinメッセージを破棄する。更に、UR20a〜20cのメッセージ処理部25は、ステップ(S118)に進み、(S,G)に対応するMFTエントリが保持するルータ転送先アドレスのKATを再起動させる。   On the other hand, when the message processing unit 25 of the URs 20a to 20c determines in step (S109) that the MFT entry corresponding to (S, G) is held, the process proceeds to step (S115) and the received Join is received. Discard the message. Further, the message processing unit 25 of the URs 20a to 20c proceeds to step (S118), and restarts the KAT of the router transfer destination address held by the MFT entry corresponding to (S, G).

ステップ(S104)において、MCTエントリが保持すると判断した場合、UR20a〜20cのメッセージ処理部25は、Joinメッセージが示す送信端末アドレスとマルチキャストグループアドレス、即ち、(S,G)に対応するMCTエントリが、ルータ転送先アドレスとしてJoinメッセージの送信元アドレスを保持しているかを判断する(S110)。UR20a〜20cのメッセージ処理部25は、(S,G)に対応するMCTエントリが保持していないと判断した場合には、(S,G)に対応するMFTエントリを作成する(S111)。   If it is determined in step (S104) that the MCT entry is held, the message processing unit 25 of the URs 20a to 20c has the transmission terminal address and multicast group address indicated by the Join message, that is, the MCT entry corresponding to (S, G). Then, it is determined whether or not the sender address of the Join message is held as the router transfer destination address (S110). When it is determined that the MCT entry corresponding to (S, G) is not held, the message processing unit 25 of the URs 20a to 20c creates an MFT entry corresponding to (S, G) (S111).

更に、UR20a〜20cのメッセージ生成部26は、(S,G)に対応するRedirectメッセージを生成し、UR20a〜20cの転送部23が「送信端末アドレス宛に送信する(S113)。そして、UR20a〜20cは、ステップ(S114)、(S115)に進み、作成した(S,G)に対応するMFTエントリに送信元アドレスをルータ転送先アドレスとして登録し、Joinメッセージを破棄する。更に、UR20a〜20cは、ステップ(S118)に進み、登録した(S,G)に対応するMFTエントリが保持するルータ転送先アドレスのKATを起動させる。尚、この場合には、UR20a〜20cはJTも起動させる。   Further, the message generation unit 26 of the URs 20a to 20c generates a redirect message corresponding to (S, G), and the transfer unit 23 of the URs 20a to 20c transmits “to the transmission terminal address (S113). 20c proceeds to steps (S114) and (S115), registers the transmission source address as the router transfer destination address in the MFT entry corresponding to the created (S, G), and discards the Join message. Proceeds to step (S118), and activates the KAT of the router transfer destination address held by the MFT entry corresponding to the registered (S, G) In this case, the URs 20a to 20c also activate JT.

一方、ステップ(S110)において、UR20a〜20cのメッセージ処理部25は、(S,G)に対応するMCTエントリが保持していると判断した場合は、受信したJoinメッセージが、Stableオプションが設定されたStable Joinメッセージであるか否かを判断する(S112)。UR20a〜20cのメッセージ処理部25が、Stable Joinメッセージであると判断した場合、UR20a〜20cの転送部23が、Stable Joinメッセージを上流に転送する(S116)。一方、ステップ(S112)において、UR20a〜20cのメッセージ処理部25が、Stable Joinメッセージではなく、通常のJoinメッセージであると判断した場合、UR20a〜20cの転送部23が、Joinメッセージを上流に転送した後(S117)、ステップ(S118)に進み、(S,G)に対応するMCTエントリが保持するルータ転送先アドレスのKATを再起動させる。このようにして、通信システム1は、マルチキャストツリーを設定する。   On the other hand, if the message processing unit 25 of the URs 20a to 20c determines in step (S110) that the MCT entry corresponding to (S, G) is held, the received Join message is set with the Stable option. It is then determined whether the message is a stable join message (S112). When the message processing unit 25 of the URs 20a to 20c determines that the message is a stable join message, the transfer unit 23 of the URs 20a to 20c transfers the stable join message upstream (S116). On the other hand, when the message processing unit 25 of the URs 20a to 20c determines that it is not a stable join message but a normal join message in step (S112), the transfer unit 23 of the URs 20a to 20c transfers the join message upstream. After that (S117), the process proceeds to step (S118), and the KAT of the router transfer destination address held by the MCT entry corresponding to (S, G) is restarted. In this way, the communication system 1 sets a multicast tree.

次に、Pruneメッセージを受信した時の処理手順を説明する。図9に示すように、まず、UR20a〜20cの受信部22が、Pruneメッセージを受信する(S201)。UR20a〜20cのメッセージ処理部25は、エントリ保持部21a〜21cがPruneメッセージの送信元アドレスを、ルータ転送先アドレスとして保持しているかを判断する(S202)。UR20a〜20cのメッセージ処理部25は、Pruneメッセージの送信元アドレスを保持していないと判断した場合、受信したPruneメッセージを上流に転送する(S208)。   Next, a processing procedure when a Prune message is received will be described. As shown in FIG. 9, first, the receiving units 22 of the URs 20a to 20c receive a Prune message (S201). The message processing unit 25 of the URs 20a to 20c determines whether the entry holding units 21a to 21c hold the source address of the Prune message as a router transfer destination address (S202). If the message processing unit 25 of the URs 20a to 20c determines that it does not hold the source address of the Prune message, it forwards the received Prune message upstream (S208).

一方、ステップ(S202)において、UR20a〜20cのメッセージ処理部25は、Pruneメッセージの送信元アドレスを保持していると判断した場合、エントリ保持部21a〜21cのMCTエントリ又はMFTエントリのいずれが保持しているかを判断する(S203)。MCTエントリが保持していると判断した場合、UR20a〜20cのメッセージ処理部25は、エントリ保持部21a〜21cから、MCTエントリを削除する(S205)。そして、UR20a〜20cは、ステップ(S208)に進む。   On the other hand, when the message processing unit 25 of the URs 20a to 20c determines in step (S202) that it holds the source address of the Prune message, either the MCT entry or the MFT entry of the entry holding unit 21a to 21c is held. It is determined whether or not (S203). If it is determined that the MCT entry is held, the message processing unit 25 of the URs 20a to 20c deletes the MCT entry from the entry holding units 21a to 21c (S205). Then, the URs 20a to 20c proceed to Step (S208).

一方、ステップ(S203)において、UR20a〜20cのメッセージ処理部25は、MFTエントリが保持していると判断した場合、Pruneメッセージの送信元アドレスをエントリ保持部21a〜21cのMFTエントリから削除する(S204)。UR20a〜20cのメッセージ処理部25は、ステップ(S204)において、MFTエントリからPruneメッセージの送信元アドレスを削除したことにより、MFTエントリがMCTエントリに変化するかを判断する(S206)。   On the other hand, when the message processing unit 25 of the URs 20a to 20c determines in step (S203) that the MFT entry is held, it deletes the source address of the Prune message from the MFT entry of the entry holding units 21a to 21c ( S204). In step (S204), the message processing unit 25 of the URs 20a to 20c determines whether the MFT entry is changed to the MCT entry by deleting the source address of the Prune message from the MFT entry (S206).

ステップ(S206)において、UR20a〜20cのメッセージ処理部25は、MCTエントリに変化すると判断した場合、メッセージ生成部26にRedirectメッセージの生成を指示する。UR20a〜20cのメッセージ生成部26は、特別なオプションを設定したRedirectメッセージを生成し、転送部23が送信端末10に送信する(S207)。そして、UR20a〜20cのメッセージ処理部25は、Pruneメッセージを破棄する(S209)。一方、ステップ(S206)において、UR20a〜20cのメッセージ処理部25は、MFTエントリが複数のルータ転送先アドレスを保持しており、MFTエントリから送信元アドレスを削除したとしてもMCTエントリに変化しないと判断した場合には、ステップ(S209)に進む。   In step (S206), when it is determined that the message processing unit 25 of the URs 20a to 20c is changed to the MCT entry, the message generation unit 26 is instructed to generate a redirect message. The message generation unit 26 of the URs 20a to 20c generates a Redirect message in which a special option is set, and the transfer unit 23 transmits the Redirect message to the transmission terminal 10 (S207). Then, the message processing unit 25 of the URs 20a to 20c discards the Prune message (S209). On the other hand, in step (S206), the message processing unit 25 of the URs 20a to 20c has the MFT entry holding a plurality of router forwarding addresses, and even if the source address is deleted from the MFT entry, the message processing unit 25 does not change to the MCT entry. If it is determined, the process proceeds to step (S209).

次に、設定したマルチキャストツリーを用いたマルチキャストパケットの転送方法を説明する。図10に、図5に示した初期状態のマルチキャストツリーを用いた転送方法を示す。   Next, a multicast packet transfer method using the set multicast tree will be described. FIG. 10 shows a transfer method using the multicast tree in the initial state shown in FIG.

まず、送信端末10が、データに送信元アドレスとして送信端末アドレス「S」、宛先アドレスとしてマルチキャストグループアドレス「G」を設定してマルチキャストパケットを生成する。そして、送信端末10が、生成したマルチキャストパケットに送信元アドレスとして送信端末アドレス「S」、宛先アドレスとして、エントリ保持部11が保持する端末転送先アドレス「UR3」を設定し、マルチキャストパケットをカプセル化する。そして、送信端末10は、カプセル化されたマルチキャストパケット5aをユニキャストにより、分岐ルータであるUR20bに転送する(S301)。これにより、送信端末10と分岐ルータであるUR20bとの経路上に存在するNR30a、UR20aは、マルチキャストパケット5aがマルチキャストパケットであることを意識することなく、通常のユニキャストの処理によって転送できる。   First, the transmission terminal 10 sets a transmission terminal address “S” as a transmission source address and a multicast group address “G” as a destination address in the data, and generates a multicast packet. Then, the transmission terminal 10 sets the transmission terminal address “S” as the transmission source address and the terminal transfer destination address “UR3” held by the entry holding unit 11 as the destination address in the generated multicast packet, and encapsulates the multicast packet To do. Then, the transmitting terminal 10 transfers the encapsulated multicast packet 5a to the UR 20b, which is a branch router, by unicast (S301). As a result, the NR 30a and UR 20a existing on the route between the transmitting terminal 10 and the UR 20b which is the branch router can be transferred by a normal unicast process without being aware that the multicast packet 5a is a multicast packet.

UR20bは、エントリ保持部21bのトンネル元アドレスに、カプセル化されたマルチキャストパケット5aの送信元アドレス「S」を設定し、カプセル化されたマルチキャストパケット5aをディカプセル化する。UR20bは、エントリ保持部21bが保持するルータ転送先アドレス「UR4」と「R2」に送信するために、データ処理部24を用いてマルチキャストパケットを複製する。そして、UR20bは、送信元アドレスとして、UR20b自身のアドレス「UR3」、宛先アドレスとして、ルータ転送先アドレス「UR4」を設定してカプセル化し、カプセル化したマルチキャストパケット5bを、末端ルータであるUR20cに転送する(S302)。UR20cは、カプセル化されたマルチキャストパケット5bをディカプセル化してマルチキャストパケット5cを取り出し、受信端末40aに転送する(S303)。   The UR 20b sets the transmission source address “S” of the encapsulated multicast packet 5a to the tunnel source address of the entry holding unit 21b, and decapsulates the encapsulated multicast packet 5a. The UR 20b duplicates the multicast packet using the data processing unit 24 in order to transmit to the router transfer destination addresses “UR4” and “R2” held by the entry holding unit 21b. Then, the UR 20b sets the UR 20b address “UR3” as the source address and encapsulates the router transfer destination address “UR4” as the destination address. The encapsulated multicast packet 5b is sent to the terminal router UR 20c. Transfer (S302). The UR 20c decapsulates the encapsulated multicast packet 5b, extracts the multicast packet 5c, and transfers it to the receiving terminal 40a (S303).

又、UR20bは、送信元アドレスとして、UR20b自身のアドレス「UR3」、宛先アドレスとして、もう一つのルータ転送先アドレス「R2」を設定してカプセル化し、カプセル化したマルチキャストパケット5dを、受信端末40bに転送する(S304)。このようにして、複数の送信先、受信端末40aと受信端末40bにデータをマルチキャスト配信できる。   The UR 20b encapsulates the UR 20b by setting the address “UR3” of the UR 20b itself and another router transfer destination address “R2” as the destination address. The encapsulated multicast packet 5d is received by the receiving terminal 40b. (S304). In this way, data can be multicast distributed to a plurality of transmission destinations, the receiving terminal 40a and the receiving terminal 40b.

〔効果〕
このような通信システム1、UR20a〜20c及び通信方法によれば、UR20a〜20cは、送信端末10が送信するマルチキャストパケットを複数のルータ転送先アドレスに転送する分岐ルータになると判断した場合にだけ、複数のルータ転送先アドレスを保持して、複製ポイントになる。更に、UR20a〜20cは、分岐ルータとなった場合に、そのUR20a〜20cのアドレスを端末転送先アドレスに追加し、分岐ルータのルータ転送先アドレスを端末転送先アドレスから削除することを要求するRedirectメッセージのような参加/離脱要求メッセージを、送信端末アドレス宛に送信することにより、自身よりも上流のURや送信端末10に、分岐ルータのアドレスのルータ転送先アドレスや端末転送先アドレスへの追加と、分岐ルータのルータ転送先アドレスのルータ転送先アドレスや端末転送先アドレスからの削除を要求できる。そして、上流のURや送信端末10が、下流の分岐ルータのアドレスをルータ転送先アドレスや端末転送先アドレスとして保持し、下流の分岐ルータのルータ転送先アドレスを、ルータ転送先アドレスや端末転送先アドレスから削除できる。
〔effect〕
According to the communication system 1, the URs 20a to 20c, and the communication method, only when the URs 20a to 20c are determined to be branch routers that transfer multicast packets transmitted by the transmission terminal 10 to a plurality of router transfer destination addresses. Holds multiple router forwarding addresses and becomes a replication point. Further, when the URs 20a to 20c become branch routers, a redirect request is made to add the addresses of the URs 20a to 20c to the terminal transfer destination address and to delete the router transfer destination address of the branch router from the terminal transfer destination address. By adding a join / leave request message such as a message to the sending terminal address, add the branch router address to the router transfer destination address or terminal transfer destination address to the UR or sending terminal 10 upstream from itself. Then, it is possible to request deletion of the router transfer destination address of the branch router from the router transfer destination address or the terminal transfer destination address. The upstream UR and the transmission terminal 10 hold the downstream branch router address as the router transfer destination address and the terminal transfer destination address, and the downstream branch router router transfer destination address and the router transfer destination address. Can be deleted from the address.

これにより、UR20a〜20cが、適宜、分岐ルータになることができる。即ち、通信システム1では、分岐ルータが動的に決定される。そして、送信端末10から分岐ルータを経由して受信端末40a〜40cにマルチキャストパケットが転送される適切なマルチキャストツリーが設定される。しかも、UR20a〜20c、NR30a〜30cのうち、分岐ルータのみがルータ転送先アドレスを保持し、マルチキャストパケットを複数の転送先に転送する。よって、送信端末10と分岐ルータとの間に存在するURやNRは、カプセル化されたマルチキャストパケットをユニキャストで転送するだけでよい。そのため、分岐ルータ以外のURの負荷は軽減され、分岐ルータ以外のルータがNRであっても、通信システム1全体としてはマルチキャストを実現できる。よって、通信システム1は、通信システム1の負荷を増大させず、更に、送信端末と分岐ルータとの間や、分岐ルータ間にNRが存在していても、適切なマルチキャストツリーを設定してマルキャストを実現できる。   Thereby, UR20a-20c can become a branch router suitably. That is, in the communication system 1, the branch router is dynamically determined. Then, an appropriate multicast tree in which multicast packets are transferred from the transmission terminal 10 to the reception terminals 40a to 40c via the branch router is set. Moreover, among the URs 20a to 20c and NRs 30a to 30c, only the branch router holds the router transfer destination address and transfers the multicast packet to a plurality of transfer destinations. Therefore, the UR and NR existing between the transmitting terminal 10 and the branch router need only transfer the encapsulated multicast packet by unicast. For this reason, the load on the UR other than the branch router is reduced, and even if the router other than the branch router is NR, the entire communication system 1 can realize multicast. Therefore, the communication system 1 does not increase the load of the communication system 1, and even if there is an NR between the transmission terminal and the branch router or between the branch routers, an appropriate multicast tree is set to Cast can be realized.

又、メッセージ処理部14,25は、端末転送先アドレスやルータ転送先アドレスのKAT、即ち、保持時間が満了した場合にはエントリ保持部11,21a〜21cから端末転送先アドレスやルータ転送先アドレスを削除し、ルータ転送先アドレスや端末転送先アドレスを送信元アドレスとするJoinメッセージ3やStable Joinメッセージ3aを、保持時間内に送信端末10やUR20a〜20cが受信した場合には保持時間を延長する。そのため、通信システム1は、保持時間だけマルチキャストツリーを維持することにより、ネットワークトポロジが変化した場合にも、常に適切なマルチキャストツリーを用いることができる。しかも、通信システム1は、Joinメッセージ3やStable Joinメッセージ3aにより、必要な間はマルチキャストツリーを維持できる。   Further, the message processing units 14 and 25 send the terminal transfer destination address and the router transfer destination address KAT, that is, the terminal transfer destination address and the router transfer destination address from the entry holding units 11 and 21a to 21c when the holding time has expired. Is deleted and the holding time is extended if the sending terminal 10 or the stable join message 3a having the router forwarding destination address or the terminal forwarding destination address as the source address is received by the sending terminal 10 or the URs 20a to 20c within the holding time. To do. Therefore, the communication system 1 can always use an appropriate multicast tree even when the network topology changes by maintaining the multicast tree for the holding time. Moreover, the communication system 1 can maintain the multicast tree as long as necessary by the Join message 3 or the stable join message 3a.

[第2の実施の形態]
〔通信システム〕
次に、送信端末10の移動等により、送信端末アドレスが変更される場合について、図11に示す通信システム201を用いて説明する。通信システム201は、送信端末10と、複数のUR20a〜20fと、複数のNR30a,30bと、複数の受信端末40a〜40cとを備える。通信システム201は、図1に示した通信システム1と比較し、UR20d〜20fが増え、送信端末10と、UR20a〜20fと、NR30a,30bと、受信端末40a〜40cとの接続関係が変化した以外は実質的に同様である。UR20d〜20fも、図2(a)に示したUR20aと同様の構成を備える。
[Second Embodiment]
〔Communications system〕
Next, a case where the transmission terminal address is changed due to movement of the transmission terminal 10 or the like will be described using the communication system 201 shown in FIG. The communication system 201 includes a transmission terminal 10, a plurality of URs 20a to 20f, a plurality of NRs 30a and 30b, and a plurality of reception terminals 40a to 40c. Compared with the communication system 1 shown in FIG. 1, the communication system 201 has increased URs 20d to 20f, and the connection relationship between the transmission terminal 10, the URs 20a to 20f, the NRs 30a and 30b, and the reception terminals 40a to 40c has changed. The others are substantially the same. UR20d-20f is also equipped with the structure similar to UR20a shown to Fig.2 (a).

送信端末10が、ネットワークを移動し、送信端末アドレスが、「S」から「S’」に変化した場合を考える。以下、変更後の送信端末アドレス、即ち、送信端末10の現在位置のアドレスを「ISA(Instantaneous Source Address)」という。変更前の送信端末アドレスを「oISA(old ISA)」という。又、UR20d,20e,20fにはそれぞれアドレス「UR6」、「UR7」、「UR8」が付与されている。   Consider a case where the transmission terminal 10 moves through the network and the transmission terminal address changes from “S” to “S ′”. Hereinafter, the changed transmission terminal address, that is, the address of the current position of the transmission terminal 10 is referred to as “ISA (Instantaneous Source Address)”. The transmission terminal address before the change is referred to as “oISA (old ISA)”. Further, the addresses “UR6”, “UR7”, and “UR8” are assigned to the URs 20d, 20e, and 20f, respectively.

(受信端末の構成)
次に、受信端末40a〜40cの構成について説明する。図12(a)に示すように、受信端末40aは、エントリ保持部41と、受信部42と、送信部43と、パケット処理部44と、メッセージ生成部45とを備える。尚、受信端末40b,40cも、受信端末40aと同様の構成を備える。
(Configuration of receiving terminal)
Next, the configuration of the receiving terminals 40a to 40c will be described. As illustrated in FIG. 12A, the receiving terminal 40a includes an entry holding unit 41, a receiving unit 42, a transmitting unit 43, a packet processing unit 44, and a message generating unit 45. The receiving terminals 40b and 40c also have the same configuration as the receiving terminal 40a.

受信部42は、UR20a〜20cやNR30a〜30c、送信端末10から、制御メッセージ、マルチキャストパケットを受信する。受信部42は、受信した制御メッセージ及びマルチキャストパケットをパケット処理部44に入力する。   The receiving unit 42 receives control messages and multicast packets from the URs 20a to 20c, the NRs 30a to 30c, and the transmission terminal 10. The receiving unit 42 inputs the received control message and multicast packet to the packet processing unit 44.

エントリ保持部41は、ISA、即ち、送信端末アドレス及びマルチキャストグループアドレスを保持するアドレス保持手段である。図12(b)に示すように、エントリ保持部41は、ISA、マルチキャストグループアドレス、oISA、MPT(Message Pending Timer)、ST(Stale Timer)を保持する。エントリ保持部41は、ISAとoISAを対応付けて保持する。MPTは、Pruneメッセージ又はLeave Groupメッセージの送信を抑制するメッセージ抑制時間を計測するタイマ値である。MPTが満了し、オフとなっている間は、Pruneメッセージ又はLeave Groupメッセージが送信される。MPTがオンになっている間は、PruneメッセージやLeave Groupメッセージは送信されない。STは、oISAの保持時間を計測するタイマ値である。STは、oISAと対応付けて保持される。STが満了すると、対応するoISAはエントリ保持部41から削除される。   The entry holding unit 41 is an address holding unit that holds an ISA, that is, a transmission terminal address and a multicast group address. As shown in FIG. 12B, the entry holding unit 41 holds an ISA, a multicast group address, an oISA, an MPT (Message Pending Timer), and an ST (Stale Timer). The entry holding unit 41 holds ISA and oISA in association with each other. MPT is a timer value that measures a message suppression time for suppressing transmission of a Prune message or a Leave Group message. While the MPT expires and is off, a Prune message or a Leave Group message is sent. While MPT is on, no Prune message or Leave Group message is sent. ST is a timer value for measuring the retention time of oISA. The ST is held in association with the oISA. When the ST expires, the corresponding oISA is deleted from the entry holding unit 41.

パケット処理部44は、制御メッセージ及びマルチキャストパケットを処理する。パケット処理部44は、受信部42から受信端末40aが受信した制御メッセージ及びマルチキャストパケットを取得する。パケット処理部44は、LUメッセージ又はLUメッセージが付加されたマルチキャストパケットを受信した場合には、エントリ保持部41が現在保持しているISA「S」を、エントリ保持部41のoISAに設定し、そのSTを起動させる。更に、パケット処理部44は、LUメッセージに含まれるISA「S’」を、エントリ保持部41のISAに設定する。   The packet processing unit 44 processes the control message and the multicast packet. The packet processing unit 44 acquires the control message and multicast packet received by the receiving terminal 40a from the receiving unit 42. When receiving the LU message or the multicast packet to which the LU message is added, the packet processing unit 44 sets the ISA “S” currently held by the entry holding unit 41 to the oISA of the entry holding unit 41, The ST is activated. Further, the packet processing unit 44 sets the ISA “S ′” included in the LU message to the ISA of the entry holding unit 41.

更に、パケット処理部44は、エントリ保持部41を参照し、マルチキャストパケットの送信元アドレスがoISAであるか否かを判断する。パケット処理部44は、送信元アドレスがoISAの場合には、エントリ保持部41を参照し、MPTがオンかオフかを判断する。パケット処理部44は、MPTがオフの場合には、メッセージ生成部45に、oISAを指定したPruneメッセージ又はLeave Groupメッセージを生成するよう指示する。更に、パケット処理部44は、エントリ保持部41のMPTを起動させる。更に、パケット処理部44は、エントリ保持部41からSTが満了したoISAを削除する。   Further, the packet processing unit 44 refers to the entry holding unit 41 and determines whether or not the transmission source address of the multicast packet is oISA. When the transmission source address is oISA, the packet processing unit 44 refers to the entry holding unit 41 and determines whether MPT is on or off. When the MPT is off, the packet processing unit 44 instructs the message generation unit 45 to generate a Prune message or a Leave Group message specifying oISA. Further, the packet processing unit 44 activates the MPT of the entry holding unit 41. Further, the packet processing unit 44 deletes the oISA whose ST has expired from the entry holding unit 41.

メッセージ生成部45は、制御メッセージを生成する。メッセージ生成部45は、エントリ保持部41から、ISA、マルチキャストグループアドレスを取得する。メッセージ生成部45は、取得したISA、マルチキャストグループアドレスを用いて、Joinメッセージ、Membership Report、Stable Joinメッセージ等を生成する。メッセージ生成部45は、パケット処理部44からのoISAを指定したPruneメッセージ又はLeave Groupメッセージの生成の指示に従って、Pruneメッセージ又はLeave Groupメッセージを生成する。メッセージ生成部45は、生成した制御メッセージを送信部43に入力する。   The message generation unit 45 generates a control message. The message generation unit 45 acquires the ISA and multicast group address from the entry holding unit 41. The message generation unit 45 generates a Join message, a Membership Report, a Stable Join message, and the like using the acquired ISA and multicast group address. The message generation unit 45 generates a Prune message or a Leave Group message in accordance with an instruction for generating a Prune message or a Leave Group message specifying the oISA from the packet processing unit 44. The message generation unit 45 inputs the generated control message to the transmission unit 43.

送信部43は、UR20a〜20cやNR30a〜30c、送信端末10に、制御メッセージを送信する。送信部43は、メッセージ生成部45から制御メッセージを取得して、送信する。特に、送信部43は、位置更新メッセージであるLUメッセージに基づいて更新されたエントリ保持部41が保持するISAを用いて、JoinメッセージやMembership Reportのような参加要求メッセージを変更後の送信端末アドレスであるISA宛に送信する受信端末送信手段として機能する。更に、送信部43は、受信端末40aがNRに接続する場合には、参加要求メッセージを破棄しないように指示するデータが付加された参加要求メッセージを送信する。具体的には、送信部43は、特別なオプションを設定したJoinメッセージを送信する。これにより、NRがJoinメッセージを破棄しないため、受信端末40aから送信端末10までの経路に存在するURがJoinメッセージを受信できる。   The transmission unit 43 transmits a control message to the URs 20a to 20c, the NRs 30a to 30c, and the transmission terminal 10. The transmission unit 43 acquires a control message from the message generation unit 45 and transmits it. In particular, the transmission unit 43 uses the ISA held by the entry holding unit 41 that is updated based on the LU message that is the location update message, and changes the sending terminal address after changing the join request message such as the Join message or Membership Report. It functions as a receiving terminal transmitting means for transmitting to ISA. Furthermore, when the receiving terminal 40a connects to the NR, the transmission unit 43 transmits a participation request message to which data instructing not to discard the participation request message is added. Specifically, the transmission unit 43 transmits a Join message in which a special option is set. Accordingly, since the NR does not discard the Join message, the UR existing on the path from the receiving terminal 40a to the transmitting terminal 10 can receive the Join message.

次に、送信端末アドレスが変更された場合の通信システム201における処理について、図11、13、14を用いて説明する。図11、13、14の説明において、送信端末10、UR20a〜20fが備えるエントリ保持部11,21a〜21fを併記する。尚、説明を簡単にするために、エントリ保持部11,21a〜21fが保持する情報のうち、テーブル種別、送信端末アドレス、マルチキャストグループアドレス、端末転送先アドレス又はルータ転送先アドレスのみを示す。   Next, processing in the communication system 201 when the transmission terminal address is changed will be described with reference to FIGS. In the description of FIGS. 11, 13, and 14, the entry holding units 11 and 21 a to 21 f included in the transmission terminal 10 and the URs 20 a to 20 f are also shown. For the sake of simplicity, only the table type, transmission terminal address, multicast group address, terminal transfer destination address, or router transfer destination address among the information held by the entry holding units 11, 21a to 21f is shown.

図11は、送信端末10がoISA「S」からISA「S’」に移動した直後の状態を示す。そのため、図11では、エントリ保持部21a〜21fは、oISA「S」を用いた(S,G)によって特定されるマルチキャストツリーにおけるルータ転送先アドレスを保持している。送信端末10がoISA「S」に存在するときは、oISA「S」をマルチキャストツリーの上流としたときに最適となるように、マルチキャストツリーが設定されている。又、受信端末40a〜40c全てがマルチキャストツリーに参加している。よって、送信端末10のエントリ保持部11が、(S,G):[UR2]、UR20aのエントリ保持部21aが、(S,G):[UR4,UR8]をMFTエントリとして保持し、UR20cのエントリ保持部21cが、(S,G):[UR6,UR7]をMFTエントリとして保持し、分岐ルータとなっている。又、UR20d〜20fのエントリ保持部21d〜21fが、(S,G):[G]をMFTエントリとして保持し、末端ルータとなっている。   FIG. 11 shows a state immediately after the transmitting terminal 10 has moved from oISA “S” to ISA “S ′”. Therefore, in FIG. 11, the entry holding units 21 a to 21 f hold the router forwarding destination address in the multicast tree specified by (S, G) using oISA “S”. When the transmitting terminal 10 exists in the oISA “S”, the multicast tree is set so as to be optimal when the oISA “S” is set upstream of the multicast tree. All of the receiving terminals 40a to 40c participate in the multicast tree. Therefore, the entry holding unit 11 of the transmission terminal 10 holds (S, G): [UR2], the entry holding unit 21a of the UR 20a holds (S, G): [UR4, UR8] as an MFT entry, and the UR 20c The entry holding unit 21c holds (S, G): [UR6, UR7] as an MFT entry and serves as a branch router. Further, the entry holding units 21d to 21f of the URs 20d to 20f hold (S, G): [G] as MFT entries and serve as terminal routers.

送信端末10がoISA「S」からISA「S’」に移動すると、パケット生成部13が、oISA「S」とISA「S’」とを対応付けたBUメッセージ6を生成する。そして、送信部13は、エントリ保持部11に従って、BUメッセージ6をUR20aのアドレス「UR2」宛に送信する。UR20aのメッセージ処理部25は、受信部22が受信したBUメッセージ6に基づいて、ISA「S’」とoISA「S」を対応付けて保持する。そして、UR20aのメッセージ処理部25は、受信部22が受信したoISA「S」宛の制御メッセージを、転送部23にISA「S’」に転送させる。このようにして、UR20aは、送信端末10との間にトンネル(Bi-Directional Tunneling)9を構築し、ホームエージェントとして機能する。   When the transmission terminal 10 moves from oISA “S” to ISA “S ′”, the packet generator 13 generates a BU message 6 in which oISA “S” and ISA “S ′” are associated with each other. Then, the transmission unit 13 transmits the BU message 6 to the address “UR2” of the UR 20a according to the entry holding unit 11. The message processing unit 25 of the UR 20 a holds the ISA “S ′” and the oISA “S” in association with each other based on the BU message 6 received by the receiving unit 22. Then, the message processing unit 25 of the UR 20a causes the transfer unit 23 to transfer the control message addressed to the oISA “S” received by the receiving unit 22 to the ISA “S ′”. In this way, the UR 20a establishes a tunnel (Bi-Directional Tunneling) 9 with the transmitting terminal 10 and functions as a home agent.

更に、送信端末10の送信部13は、マルチキャストパケット5をエントリ保持部11に基づいてUR20aに送信し、(S,G)によって特定されるマルチキャストツリーを用いて送信する。(S,G)によって特定されるマルチキャストツリーは、oISA「S」をマルチキャストツリーの上流としたときに最適となるように設定されているため、冗長経路を含む。よって、通信システム201は、ISA「S’」に基づいて、(S’,G)によって特定されるマルチキャストツリーを再設定する必要がある。そのため、パケット生成部15は、Stableオプションを設定せずに、マルチキャストパケット5を生成する。   Furthermore, the transmission unit 13 of the transmission terminal 10 transmits the multicast packet 5 to the UR 20a based on the entry holding unit 11, and transmits using the multicast tree specified by (S, G). The multicast tree specified by (S, G) is set to be optimal when oISA “S” is set upstream of the multicast tree, and thus includes a redundant path. Therefore, the communication system 201 needs to reset the multicast tree specified by (S ′, G) based on ISA “S ′”. Therefore, the packet generator 15 generates the multicast packet 5 without setting the Stable option.

更に、パケット生成部15は、oISA「S」とISA「S’」とを対応付けたISAを通知するLUメッセージをマルチキャストパケット5に付加する。このようなマルチキャストパケット5を送信部13が送信し、受信端末40a〜40cに送信端末10がoISA「S」からISA「S’」へ移動したことを通知する。このように、送信部13は、送信端末アドレスが変更された場合に、まず、端末転送先アドレスに、送信端末アドレスの変更を通知する転送先更新メッセージ(BUメッセージ)を送信する。更に、送信部13は、マルチキャストパケットを受信する受信端末に、変更後の送信端末アドレスを通知する位置更新メッセージ(LUメッセージ)を送信し、送信端末送信手段として機能する。   Further, the packet generator 15 adds an LU message for notifying the ISA in which the oISA “S” and the ISA “S ′” are associated with each other to the multicast packet 5. The transmission unit 13 transmits such a multicast packet 5 to notify the receiving terminals 40a to 40c that the transmitting terminal 10 has moved from the oISA “S” to the ISA “S ′”. Thus, when the transmission terminal address is changed, the transmission unit 13 first transmits a transfer destination update message (BU message) for notifying the change of the transmission terminal address to the terminal transfer destination address. Furthermore, the transmission unit 13 transmits a location update message (LU message) for notifying the changed transmission terminal address to the reception terminal that receives the multicast packet, and functions as a transmission terminal transmission unit.

受信端末40a〜40cは、図13に示すように、受信したマルチキャストパケット5に付加されているLUメッセージに基づいて、宛先アドレスにISA「S’」を設定したMembership Report2を送信する。具体的には、パケット処理部44がLUメッセージに基づいてエントリ保持部41を更新する。そして、メッセージ生成部45が、更新後のエントリ保持部41に保持されたISA「S’」を用いて、Membership Report2を生成し、送信部43が送信する。尚、一つの末端ルータに複数の受信端末が接続している場合には、受信端末は、MLDにおいて規定されている輻輳回避制御に従って、Membership Report2を送信する。これによれば、全ての受信端末が、新たに設定される(S’,G)によって特定されるマルチキャストツリーに参加しようとすることによって引き起こされる輻輳を回避できる。   As illustrated in FIG. 13, the receiving terminals 40 a to 40 c transmit Membership Report 2 in which the destination address is set to ISA “S ′” based on the LU message added to the received multicast packet 5. Specifically, the packet processing unit 44 updates the entry holding unit 41 based on the LU message. Then, the message generation unit 45 generates Membership Report 2 using the ISA “S ′” held in the updated entry holding unit 41, and the transmission unit 43 transmits it. When a plurality of receiving terminals are connected to one terminal router, the receiving terminal transmits Membership Report 2 in accordance with the congestion avoidance control defined in the MLD. According to this, it is possible to avoid congestion caused by all the receiving terminals trying to participate in the multicast tree specified by the newly set (S ′, G).

末端ルータであるUR20d〜20fの受信部22が、ISA「S’」を宛先アドレスに設定したMembership Report2を受信すると、UR20d〜20fのメッセージ処理部25は、受信したMembership Report2をメッセージ生成部26に入力する。UR20d〜20fのメッセージ生成部26は、Membership Report2を取得すると、特別なオプションを設定し、宛先アドレスをISA「S’」に設定したJoinメッセージ3を生成する。そして、UR20d〜20fの転送部23が、ISA「S’」宛のJoinメッセージ3を送信する。   When the receiving unit 22 of the UR 20d to 20f, which is the terminal router, receives the Membership Report 2 with the ISA “S ′” set as the destination address, the message processing unit 25 of the UR 20d to 20f sends the received Membership Report 2 to the message generating unit 26. input. Upon obtaining the Membership Report 2, the message generation unit 26 of the URs 20d to 20f generates a Join message 3 in which special options are set and the destination address is set to ISA “S ′”. Then, the transfer unit 23 of the URs 20d to 20f transmits the Join message 3 addressed to the ISA “S ′”.

このISA「S’」宛のMembership Report2及びJoinメッセージ3を契機に、送信端末10及びUR20a〜20fは、図4、5に示した通信システム1における初期状態のマルチキャストツリーを設定する場合の処理と同様にして、ISA「S’」をマルチキャストツリーの上流としたときに最適になるように、(S’,G)に対応したルータ転送先アドレスを、エントリ保持部11,21a〜21fに登録していく。   In response to the Membership Report 2 and the Join message 3 addressed to the ISA “S ′”, the transmitting terminal 10 and the URs 20a to 20f perform processing when the initial state multicast tree in the communication system 1 illustrated in FIGS. Similarly, the router transfer destination address corresponding to (S ′, G) is registered in the entry holding units 11, 21 a to 21 f so as to be optimal when ISA “S ′” is set upstream of the multicast tree. To go.

具体的には、UR20a〜20fのメッセージ処理部25は、変更後の送信端末アドレスであるISA「S’」をマルチキャストツリーの上流としたときに、UR20a〜20fが分岐ルータになるかを判断する。分岐ルータになると判断したUR20a〜20fのメッセージ処理部25は、エントリ保持部21a〜21fに、ISA「S’」を用いた(S’,G)に対応付けて複数のルータ転送先アドレスを登録する。そして、分岐ルータになると判断したUR20a〜20fのメッセージ生成部26が、宛先アドレスをISA「S’」に設定したRedirectメッセージを生成し、転送部23が送信する。   Specifically, the message processing unit 25 of the URs 20a to 20f determines whether the URs 20a to 20f become branch routers when the changed transmission terminal address ISA “S ′” is set upstream of the multicast tree. . The message processing units 25 of the URs 20a to 20f determined to be branch routers register a plurality of router forwarding destination addresses in the entry holding units 21a to 21f in association with (S ′, G) using the ISA “S ′”. To do. Then, the message generation unit 26 of the URs 20a to 20f determined to be a branch router generates a redirect message in which the destination address is set to ISA “S ′”, and the transfer unit 23 transmits it.

この結果、図13に示すように、ルータ転送先アドレスを保持していなかったUR20bのエントリ保持部21bが、(S’,G):[UR4,UR6]をMFTエントリとして保持し、(S’,G)により特定されるマルチキャストツリーにおける分岐ルータとなる。又、UR20cのエントリ保持部21cが、MFTエントリとして保持していた(S,G):[UR6,UR7]に加えて、(S’,G):[UR7,UR8]をMFTエントリとして保持し、(S’,G)により特定されるマルチキャストツリーにおいても分岐ルータとなる。更に、UR20aのエントリ保持部21aが、MFTエントリとして保持していた(S,G):[UR4,UR8]に加えて、(S’,G):[UR8]をMCTエントリとして保持する。   As a result, as shown in FIG. 13, the entry holding unit 21b of the UR 20b that did not hold the router transfer destination address holds (S ′, G): [UR4, UR6] as an MFT entry, and (S ′ , G) becomes a branch router in the multicast tree specified by The entry holding unit 21c of the UR 20c holds (S ', G): [UR7, UR8] as an MFT entry in addition to (S, G): [UR6, UR7] held as an MFT entry. , (S ′, G) also becomes a branch router in the multicast tree specified. Further, the entry holding unit 21a of the UR 20a holds (S ', G): [UR8] as an MCT entry in addition to (S, G): [UR4, UR8] held as an MFT entry.

又、UR20d〜20fのエントリ保持部21d〜21fが、MFTエントリとして保持していた(S,G):[G]に加えて、(S’,G):[G]をMCTエントリとして保持し、(S’,G)により特定されるマルチキャストツリーにおいても末端ルータとなる。そして、送信端末10のエントリ保持部11が保持していた(S,G):UR2]に加えて、(S’,G):[UR3]を保持する。   The entry holding units 21d to 21f of the URs 20d to 20f hold (S ′, G): [G] as MCT entries in addition to (S, G): [G] held as MFT entries. , (S ′, G), it is also a terminal router in the multicast tree specified. Then, in addition to (S, G): UR2] held by the entry holding unit 11 of the transmission terminal 10, (S ', G): [UR3] is held.

このようにして、ISA「S’」に対して最適なマルチキャストツリーを設定した直後は、通信システム201は、図13に示すように、oISA「S」に対して最適な(S,G)により特定されるマルチキャストツリーと、ISA「S’」に対して最適な(S’,G)により特定されるマルチキャストツリーが併存した状態になる。そのため、通信システム201では、2つのマルチキャストツリーにより、マルチキャストパケットが重複して転送されてしまい、受信端末40a〜40cはマルチキャストパケットを重複して受信してしまう。   Immediately after setting the optimum multicast tree for the ISA “S ′” in this way, the communication system 201 performs (S, G) optimum for the oISA “S” as shown in FIG. The specified multicast tree and the multicast tree specified by (S ′, G) optimum for ISA “S ′” coexist. Therefore, in the communication system 201, the multicast packets are transferred redundantly by the two multicast trees, and the receiving terminals 40a to 40c receive the multicast packets redundantly.

そのため、送信端末10、UR20a〜20fのメッセージ処理部14,24は、Leave GroupメッセージやPruneメッセージ、又は、端末転送先アドレスやルータ転送先アドレスの保持時間の少なくとも1つに基づいて、oISA「S」に対応付けられている端末転送先アドレスやルータ転送先アドレスを、エントリ保持部11,21a〜21fから削除することが好ましい。   For this reason, the message processing units 14 and 24 of the transmission terminal 10 and the URs 20a to 20f perform the oISA “S” based on at least one of the Leave Group message and the Prune message, or the retention time of the terminal transfer destination address and the router transfer destination address. It is preferable to delete the terminal transfer destination address and the router transfer destination address associated with "" from the entry holding units 11, 21a to 21f.

LUメッセージを受信した受信端末40a〜40cは、(S,G)を指定したStable Joinメッセージの送信を停止する。具体的には、受信端末40a〜40cのメッセージ生成部45は、エントリ保持部41のISA「S’」を用いてStable Joinメッセージを生成する。そのため、LUメッセージによりエントリ保持部41のISAが更新された後は、メッセージ生成部45は、oISAとなってしまった「S」を用いたStable Joinメッセージを生成しなくなる。   Receiving terminals 40a to 40c that have received the LU message stop transmitting the Stable Join message specifying (S, G). Specifically, the message generation unit 45 of the reception terminals 40 a to 40 c generates a stable join message using the ISA “S ′” of the entry holding unit 41. For this reason, after the ISA of the entry holding unit 41 is updated by the LU message, the message generation unit 45 does not generate a stable join message using “S” that has become oISA.

その結果、受信端末40a〜40cは、(S’,G)を指定したStable Joinメッセージのみ送信する。これにより、メッセージ処理部14,25は、(S’,G)に対応する端末転送先アドレスやルータ転送先アドレスのKATだけを再起動し、保持時間を延長する。そのため、エントリ保持部11,21a〜21fの(S’,G)に対応するMFTエントリだけが保持され、(S,G)に対応するMFTエントリが保持する端末転送先アドレスやルータ転送先アドレスが削除される。よって、送信端末10、UR20a〜20fは、(S,G)に対応するマルチキャストツリーを削除し、(S’,G)に対応するMFTエントリだけを保持し続けることができる。そのため、送信端末10、UR20a〜20fは、(S’,G)に対応するマルチキャストツリーだけを維持できる。   As a result, the receiving terminals 40a to 40c transmit only the stable join message specifying (S ', G). As a result, the message processing units 14 and 25 restart only the KAT of the terminal transfer destination address and the router transfer destination address corresponding to (S ′, G), and extend the holding time. Therefore, only the MFT entry corresponding to (S ′, G) of the entry holding units 11, 21a to 21f is held, and the terminal transfer destination address and the router transfer destination address held by the MFT entry corresponding to (S, G) are Deleted. Therefore, the transmission terminal 10 and the URs 20a to 20f can delete the multicast tree corresponding to (S, G) and keep only the MFT entry corresponding to (S ′, G). Therefore, the transmission terminal 10 and the URs 20a to 20f can maintain only the multicast tree corresponding to (S ′, G).

又、図14に示すように、受信端末40a〜40cは、KATの満了を待たずに、Leave GroupメッセージやPruneメッセージを用いることにより、oISA「S」を用いたマルチキャストツリーから明示的に離脱できる。受信端末40a〜40cは、(S’,G)により特定されるマルチキャストツリーから、マルチキャストパケットを受信した後に、(S,G)により特定されるマルチキャストツリーからの離脱を要求するLeave Groupメッセージ7を、末端ルータであるUR20d〜20fに送信する。具体的には、受信端末40a〜40cのメッセージ生成部45が、oISA「S」を指定したLeave Groupメッセージ7を生成し、送信部43が送信する。   Also, as shown in FIG. 14, the receiving terminals 40a to 40c can explicitly leave the multicast tree using the oISA “S” by using the Leave Group message or the Prune message without waiting for the KAT to expire. . After receiving the multicast packet from the multicast tree specified by (S ′, G), the receiving terminals 40a to 40c send a Leave Group message 7 requesting the departure from the multicast tree specified by (S, G). , It is transmitted to the URs 20d to 20f which are end routers. Specifically, the message generation unit 45 of the reception terminals 40a to 40c generates a Leave Group message 7 designating oISA “S”, and the transmission unit 43 transmits the message.

UR20d〜20fのメッセージ処理部25は、(S,G)により特定されるマルチキャストツリーからの離脱を要求するLeave Groupメッセージ7に基づいて、エントリ保持部21d〜21fが保持する(S,G)に対応するMFTエントリを削除する。更に、メッセージ処理部25は、受信したLeave Groupメッセージ7を、メッセージ生成部26に入力する。   The message processing units 25 of the URs 20d to 20f are stored in (S, G) by the entry holding units 21d to 21f based on the Leave Group message 7 requesting the departure from the multicast tree specified by (S, G). Delete the corresponding MFT entry. Further, the message processing unit 25 inputs the received Leave Group message 7 to the message generation unit 26.

UR20d〜20fのメッセージ生成部26は、Leave Groupメッセージ7に基づいて、宛先アドレスにoISA「S」を設定し、(S,G)に対応するMFTエントリの削除を要求するPruneメッセージ8を生成する。そして、UR20d〜20fの転送部23がPruneメッセージ8を送信する。UR20aは、Pruneメッセージ8を受信すると、ISA「S’」とoISA「S」の対応付けに従って、トンネル9によりPruneメッセージ8を、ISA「S’」に転送する。このようにして、Pruneメッセージ8は、UR20a〜20cや、ISA「S’」に位置する送信端末10に到達する。   Based on the Leave Group message 7, the message generation unit 26 of the URs 20d to 20f sets the oISA “S” to the destination address, and generates the Prune message 8 that requests deletion of the MFT entry corresponding to (S, G). . Then, the transfer unit 23 of the URs 20d to 20f transmits the Prune message 8. When receiving the Prune message 8, the UR 20a transfers the Prune message 8 to the ISA “S ′” through the tunnel 9 in accordance with the association between the ISA “S ′” and the oISA “S”. In this way, the Prune message 8 reaches the transmitting terminals 10 located in the URs 20a to 20c and the ISA “S ′”.

送信端末10のメッセージ処理部14やUR20a〜20cのメッセージ処理部25は、Pruneメッセージ8に基づいて、エントリ保持部11,21a〜21cから、(S,G)に対応するMFTエントリを削除する。その結果、図14に示すように、送信端末10やUR20a〜20fのエントリ保持部11,21a〜21fは、(S’,G)に対応するMFTエントリのみを保持できる。   The message processing unit 14 of the transmission terminal 10 and the message processing unit 25 of the URs 20a to 20c delete the MFT entry corresponding to (S, G) from the entry holding units 11, 21a to 21c based on the Prune message 8. As a result, as illustrated in FIG. 14, the entry holding units 11 and 21a to 21f of the transmission terminal 10 and the URs 20a to 20f can hold only the MFT entry corresponding to (S ′, G).

〔通信方法〕
図11に示した通信システム201を用いた通信方法の手順を説明する。まず、UR20a〜20fの動作について説明する。UR20a〜20fの受信部22が、マルチキャストパケットを受信する(S401)。UR20a〜20fのデータ処理部24は、マルチキャストパケットからトンネル元アドレスを取得し、一時的に記憶する(S402)。UR20a〜20fは、マルチキャストパケットをディカプセル化する(S403)。UR20a〜20fは、マルチキャストパケットに設定されている送信端末アドレスやマルチキャストグループアドレスに基づいて、エントリ保持部21a〜21fが、対応するMFTエントリ又はMCTエントリを保持しているかを判断する(S404)。UR20a〜20fは、保持していないと判断した場合には、マルチキャストパケットを破棄する(S406)。
〔Communication method〕
A procedure of a communication method using the communication system 201 shown in FIG. 11 will be described. First, the operation of the URs 20a to 20f will be described. The receiving units 22 of the URs 20a to 20f receive the multicast packet (S401). The data processing unit 24 of the URs 20a to 20f acquires the tunnel source address from the multicast packet and temporarily stores it (S402). The URs 20a to 20f decapsulate the multicast packet (S403). The URs 20a to 20f determine whether the entry holding units 21a to 21f hold the corresponding MFT entry or MCT entry based on the transmission terminal address and multicast group address set in the multicast packet (S404). If the URs 20a to 20f determine that they are not held, the URs 20a to 20f discard the multicast packet (S406).

一方、ステップ(S404)において、UR20a〜20fのメッセージ処理部25は、保持していると判断した場合には、MCTエントリ又はMFTエントリのいずれが保持しているかを判断する(S405)。MCTエントリが保持していると判断した場合には、UR20a〜20fのメッセージ生成部26は、UR20a〜20fのルータ転送先アドレスを端末転送先アドレスに追加し、UR20a〜20f自身のアドレスを端末転送先アドレスから削除することを要求する、Hop-by-Hopオプションを設定した送信端末アドレス宛のRedirectメッセージを生成する。そして、転送部23がRedirectメッセージを送信する(S412)。   On the other hand, if it is determined in step (S404) that the message processing unit 25 of the URs 20a to 20f holds, it determines whether the MCT entry or the MFT entry is held (S405). If it is determined that the MCT entry is held, the message generation unit 26 of the URs 20a to 20f adds the router transfer destination address of the URs 20a to 20f to the terminal transfer destination address, and transfers the address of the UR 20a to 20f itself to the terminal. A Redirect message addressed to the transmission terminal address in which the Hop-by-Hop option is set is generated to request deletion from the destination address. Then, the transfer unit 23 transmits a Redirect message (S412).

一方、ステップ(S405)において、MFTエントリが保持していると判断した場合には、UR20a〜20fのデータ処理部24は、受信したマルチキャストパケットのトンネル元アドレスが、エントリ保持部21a〜21fが保持するトンネル元アドレスと一致するかを判断する(S407)。   On the other hand, if it is determined in step (S405) that the MFT entry is held, the data processing unit 24 of the URs 20a to 20f holds the tunnel source address of the received multicast packet in the entry holding units 21a to 21f. It is determined whether or not it matches the tunnel source address to be executed (S407).

ステップ(S407)において、トンネル元アドレスが一致しない場合には、UR20a〜20fのデータ処理部24は、受信したマルチキャストパケットのトンネル元アドレスが、エントリ保持部21a〜21fが保持する前トンネル元アドレスと一致するかを判断する(S408)。前トンネル元アドレスと一致する場合には、UR20a〜20fのメッセージ生成部26は、Hop-by-Hopオプションを設定しないPruneメッセージを生成し、転送部23が前トンネル元アドレス宛に送信する(S409)。   If the tunnel source address does not match in step (S407), the data processing unit 24 of the URs 20a to 20f determines that the tunnel source address of the received multicast packet is the same as the previous tunnel source address held by the entry holding units 21a to 21f. It is determined whether they match (S408). If it matches the previous tunnel source address, the message generation unit 26 of the URs 20a to 20f generates a Prune message in which the Hop-by-Hop option is not set, and the transfer unit 23 transmits to the previous tunnel source address (S409). ).

一方、ステップ(S408)において、前トンネル元アドレスと一致しない場合には、UR20a〜20fのデータ処理部24は、エントリ保持部21a〜21fが現在保持しているトンネル元アドレスを、エントリ保持部21a〜21fの前トンネル元アドレスに設定する(S410)。このとき、データ処理部24は、エントリ保持部21a〜21fのKATをSTとして利用し、STの満了により前トンネル元アドレスが削除されるように設定してもよい。その後、UR20a〜20fのデータ処理部24は、ステップ(S402)において記憶したトンネル元アドレスを、エントリ保持部21a〜21fに登録する(S411)。UR20a〜20fは、ステップ(S409)、(S411)の後、ステップ(S413)に進む。   On the other hand, if it does not match the previous tunnel source address in step (S408), the data processing unit 24 of the URs 20a to 20f uses the tunnel source address currently held by the entry holding units 21a to 21f as the entry holding unit 21a. It is set to the previous tunnel source address of ˜21f (S410). At this time, the data processing unit 24 may use the KAT of the entry holding units 21a to 21f as the ST, and may be set so that the previous tunnel source address is deleted when the ST expires. Thereafter, the data processing unit 24 of the URs 20a to 20f registers the tunnel source address stored in step (S402) in the entry holding units 21a to 21f (S411). The URs 20a to 20f proceed to step (S413) after steps (S409) and (S411).

ステップ(S407)において、トンネル元アドレスが一致する場合、ステップ(S409)、(S411)が終了した場合には、UR20a〜20fのデータ処理部24は、ステップ(S402)において記憶したトンネル元アドレスを、MFTエントリが保持するかを判断する(S413)。MFTエントリが保持すると判断した場合、UR20a〜20fのデータ処理部24は、そのトンネル元アドレスを除いたMFTエントリが保持するルータ転送先アドレスに対して、マルチキャストパケットをカプセル化し、転送部23が送信する(S414)。一方、ステップ(S413)において、MFTエントリが保持しないと判断した場合、UR20a〜20fのデータ処理部24は、MFTエントリが保持するルータ転送先アドレスに対してマルチキャストパケットをカプセル化し、転送部23が送信する(S415)。尚、ステップ(S407)〜(S411)は、省略できる。   If the tunnel source addresses match in step (S407), or if steps (S409) and (S411) are completed, the data processing unit 24 of the URs 20a to 20f uses the tunnel source address stored in step (S402). Then, it is determined whether the MFT entry is held (S413). When it is determined that the MFT entry is held, the data processing unit 24 of the URs 20a to 20f encapsulates the multicast packet with respect to the router transfer destination address held by the MFT entry excluding the tunnel source address, and the transfer unit 23 transmits the packet. (S414). On the other hand, if it is determined in step (S413) that the MFT entry is not held, the data processing unit 24 of the URs 20a to 20f encapsulates the multicast packet with respect to the router transfer destination address held by the MFT entry, and the transfer unit 23 Transmit (S415). Note that steps (S407) to (S411) can be omitted.

次に、受信端末40a〜40cの動作について説明する。受信端末40a〜40cの受信部42は、マルチキャストパケットを受信する(S501)。受信端末40a〜40cのパケット処理部44は、エントリ保持部41を参照し、受信したマルチキャストパケットの送信元アドレスがISAであるか否かを判断する(S502)。   Next, the operation of the receiving terminals 40a to 40c will be described. The receiving unit 42 of the receiving terminals 40a to 40c receives the multicast packet (S501). The packet processing unit 44 of the receiving terminals 40a to 40c refers to the entry holding unit 41 and determines whether or not the source address of the received multicast packet is ISA (S502).

マルチキャストパケットの送信元アドレスがISAである場合には、受信端末40a〜40cのパケット処理部44は、エントリ保持部41がoISAを保持するか否かを判断する(S503)。エントリ保持部41がoISAを保持する場合には、パケット処理部44は、そのMPTがオンかオフか判断する(S504)。MPTがオフの状態の場合には、受信端末40a〜40cのメッセージ生成部45は、Hop-by-Hopオプションを設定した、oISA宛のPruneメッセージを生成し、送信部43が送信する。あるいは、メッセージ生成部45は、oISA宛のLeave Groupメッセージを生成し、送信部43が送信する(S505)。更に、パケット処理部44は、エントリ保持部41のMPTを起動させる(S506)。   When the source address of the multicast packet is ISA, the packet processing unit 44 of the receiving terminals 40a to 40c determines whether or not the entry holding unit 41 holds oISA (S503). When the entry holding unit 41 holds the oISA, the packet processing unit 44 determines whether the MPT is on or off (S504). When the MPT is in an off state, the message generator 45 of the receiving terminals 40a to 40c generates a Prune message addressed to the oISA in which the Hop-by-Hop option is set, and the transmitter 43 transmits the message. Alternatively, the message generation unit 45 generates a Leave Group message addressed to the oISA, and the transmission unit 43 transmits the message (S505). Further, the packet processing unit 44 activates the MPT of the entry holding unit 41 (S506).

尚、ステップ(S502)において、マルチキャストパケットの送信元アドレスがISAではない場合、ステップ(S503)においてエントリ保持部41がoISAを保持しない場合、ステップ(S504)においてMPTがオンの場合には、受信端末40a〜40cは特別な処理はせずに、パケット処理部44がマルチキャストパケットに含まれるデータを処理する。   In step (S502), if the source address of the multicast packet is not ISA, if entry holding unit 41 does not hold oISA in step (S503), if MPT is on in step (S504), receive The terminals 40a to 40c do not perform special processing, and the packet processing unit 44 processes data included in the multicast packet.

〔効果〕
このような通信システム201、UR20a〜20f、受信端末40a〜40c及び通信方法によれば、送信端末10は、その送信端末アドレスが変更された場合に、端末転送先アドレスに、送信端末アドレスの変更を通知するBUメッセージを送信し、受信端末40a〜40cに、ISA「S’」を通知するLUメッセージを送信する送信部13を備える。又、受信端末40a〜40cは、LUメッセージに基づいて、Joinメッセージ又はMembership ReportをISA宛に送信する送信部43を備える。
〔effect〕
According to the communication system 201, the URs 20a to 20f, the reception terminals 40a to 40c, and the communication method, the transmission terminal 10 changes the transmission terminal address to the terminal transfer destination address when the transmission terminal address is changed. Is transmitted, and the transmission unit 13 is configured to transmit the LU message notifying the ISA “S ′” to the receiving terminals 40a to 40c. The receiving terminals 40a to 40c include a transmitting unit 43 that transmits a Join message or a Membership Report to the ISA based on the LU message.

そのため、送信端末10の移動等により送信端末アドレス変更された場合に、送信端末10が端末転送先アドレスにBUメッセージを送信することにより、送信端末とその端末転送先アドレスのURとの間にトンネルを構築することができる。よって、oISA宛の制御メッセージは送信端末10に転送される。   For this reason, when the transmission terminal address is changed due to movement of the transmission terminal 10 or the like, the transmission terminal 10 transmits a BU message to the terminal transfer destination address, so that a tunnel is established between the transmission terminal and the UR of the terminal transfer destination address. Can be built. Therefore, the control message addressed to the oISA is transferred to the transmission terminal 10.

更に、送信端末10は、LUメッセージにより受信端末40a〜40cに送信端末アドレスの変更を通知できる。そして、受信端末40a〜40cは、LUメッセージにより送信端末アドレスの変更を把握して、Joinメッセージ又はMembership ReportをISA「S’」に送信できる。そのため、ISA「S’」宛のJoinメッセージ又はMembership Reportを契機として、ISA「S’」において適切なマルチキャストツリーが新たに設定される。よって、通信システム201は、送信端末アドレスが変化しても、適切なマルチキャストツリーを用いたマルチキャストを実現できる。   Further, the transmission terminal 10 can notify the reception terminals 40a to 40c of the change of the transmission terminal address by the LU message. Then, the receiving terminals 40a to 40c can grasp the change of the transmitting terminal address by the LU message, and can transmit the Join message or the Membership Report to the ISA “S ′”. Therefore, an appropriate multicast tree is newly set in ISA “S ′” triggered by a Join message addressed to ISA “S ′” or Membership Report. Therefore, the communication system 201 can realize multicast using an appropriate multicast tree even if the transmission terminal address changes.

しかも、分岐ルータは、ISA「S’」に対応付けて複数のルータ転送先アドレスを保持する。よって、UR20a〜20fは、oISA「S」、即ち、(S,G)に対応するマルチキャストツリーと、ISA「S’」、即ち、(S’,G)に対応するマルチキャストツリーとを明確に区別できる。   Moreover, the branch router holds a plurality of router transfer destination addresses in association with ISA “S ′”. Therefore, the URs 20a to 20f clearly distinguish between a multicast tree corresponding to oISA “S”, that is, (S, G), and a multicast tree corresponding to ISA “S ′”, that is, (S ′, G). it can.

又、受信端末40a〜40cの送信部43は、変更前の送信端末のアドレスを指定したLeave GroupメッセージやPruneメッセージを送信する。そして、送信端末10、UR20a〜20fのメッセージ処理部14,25は、Leave GroupメッセージやPruneメッセージ、端末転送先アドレスやルータ転送先アドレスの保持時間に基づいて、oISA「S」、即ち、(S,G)に対応付けられている端末転送先アドレスやルータ転送先アドレスを、エントリ保持部11,21a〜21fから削除する。   In addition, the transmission unit 43 of the reception terminals 40a to 40c transmits a Leave Group message or a Prune message that specifies the address of the transmission terminal before the change. Then, the message processing units 14 and 25 of the transmitting terminal 10 and the URs 20a to 20f perform the oISA “S”, that is, (S), based on the retention group message, the Prune message, the terminal transfer destination address and the router transfer destination address retention time. , G) is deleted from the entry holding units 11, 21a to 21f.

そのため、通信システム201は、oISA「S」を用いて形成されたマルチキャストツリーを、Leave GroupメッセージやPruneメッセージ、端末転送先アドレスやルータ転送先アドレスの保持時間を用いて削除できる。よって、oISA「S」を用いたマルチキャストツリーと、ISA「S’」を用いたマルチキャストツリーが併存することによるマルチキャストパケットの重複した転送を抑制できる。特に、Leave GroupメッセージやPruneメッセージによれば、受信端末40a〜40cは、保持時間の満了を待たずに、Leave GroupメッセージやPruneメッセージにより指定されたoISA「S」を用いて形成されたマルチキャストツリーから明示的に離脱できる。よって、通信システム201では、重複した転送をより軽減できる。   Therefore, the communication system 201 can delete the multicast tree formed using the oISA “S” by using the Leave Group message, the Prune message, the terminal transfer destination address, and the router transfer destination address holding time. Therefore, it is possible to suppress the redundant transfer of multicast packets due to the coexistence of the multicast tree using oISA “S” and the multicast tree using ISA “S ′”. In particular, according to the Leave Group message and the Prune message, the receiving terminals 40a to 40c do not wait for the hold time to expire, and the multicast tree formed using the oISA “S” specified by the Leave Group message or the Prune message. You can leave explicitly. Therefore, the communication system 201 can further reduce duplicate transfers.

本発明の第1の実施形態に係る通信システムの構成を示す図である。It is a figure which shows the structure of the communication system which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るURの構成を示すブロック図である。It is a block diagram which shows the structure of UR which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係る送信端末の構成を示すブロック図である。It is a block diagram which shows the structure of the transmission terminal which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るマルチキャストツリーの初期状態における処理を示す図である。It is a figure which shows the process in the initial state of the multicast tree which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るマルチキャストツリーの初期状態における受信端末の参加を示す図である。It is a figure which shows the participation of the receiving terminal in the initial state of the multicast tree which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るマルチキャストツリーの安定状態における処理を示す図である。It is a figure which shows the process in the stable state of the multicast tree which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るマルチキャストツリーの安定状態における受信端末の参加を示す図である。It is a figure which shows the participation of the receiving terminal in the stable state of the multicast tree which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るJoinメッセージ受信時の処理手順を示すフロー図である。It is a flowchart which shows the process sequence at the time of Join message reception which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るPruneメッセージ受信時の処理手順を示すフロー図である。It is a flowchart which shows the process sequence at the time of the Prune message reception which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るマルチキャストパケットの転送手順を示すシーケンス図である。It is a sequence diagram which shows the transfer procedure of the multicast packet which concerns on the 1st Embodiment of this invention. 本発明の第2の実施形態に係る通信システムの送信端末が移動した直後の状態を示す図である。It is a figure which shows the state immediately after the transmission terminal of the communication system which concerns on the 2nd Embodiment of this invention moves. 本発明の第2の実施形態に係る受信端末の構成を示すブロック図である。It is a block diagram which shows the structure of the receiving terminal which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係る送信端末アドレス変更前後のマルチキャストツリーが併存する状態を示す図である。It is a figure which shows the state where the multicast tree before and behind the transmission terminal address change which concerns on the 2nd Embodiment of this invention coexists. 本発明の第2の実施形態に係る送信端末アドレス変更後のマルチキャストツリーのみが維持された状態を示す図である。It is a figure which shows the state by which only the multicast tree after the transmission terminal address change which concerns on the 2nd Embodiment of this invention was maintained. 本発明の第2の実施形態に係るURの動作手順を示すフロー図である。It is a flowchart which shows the operation | movement procedure of UR which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係る受信端末の動作手順を示すフロー図である。It is a flowchart which shows the operation | movement procedure of the receiving terminal which concerns on the 2nd Embodiment of this invention.

符号の説明Explanation of symbols

1,201 通信システム
10 送信端末
11 エントリ保持部
12 受信部
13 送信部
14 メッセージ処理部
15 パケット生成部
20a,20b,20c,20d,20e,20f UR
21a,21b,21c,21d,21e,21f エントリ保持部
22 受信部
23 転送部
24 データ処理部
25 メッセージ処理部
26 メッセージ生成部
30a,30b,30c NR
40a,40b,40c 受信端末
41 エントリ保持部
42 受信部
43 送信部
44 パケット処理部
45 メッセージ生成部
1,201 communication system 10 transmitting terminal 11 entry holding unit 12 receiving unit 13 transmitting unit 14 message processing unit 15 packet generating unit 20a, 20b, 20c, 20d, 20e, 20f UR
21a, 21b, 21c, 21d, 21e, 21f Entry holding unit 22 Receiving unit 23 Transfer unit 24 Data processing unit 25 Message processing unit 26 Message generation unit 30a, 30b, 30c NR
40a, 40b, 40c receiving terminal 41 entry holding unit 42 receiving unit 43 transmitting unit 44 packet processing unit 45 message generating unit

Claims (13)

マルチキャストパケットを端末転送先アドレスに転送する送信端末と、前記マルチキャストパケットをルータ転送先アドレスに転送するルータとを備える通信システムであって、
前記ルータは、
前記ルータ転送先アドレスを保持するルータ保持手段と、
前記送信端末のアドレスをマルチキャストツリーの上流としたときに、前記マルチキャストパケットを複数の前記ルータ転送先アドレスに転送する分岐ルータになるかを判断する判断手段と、
前記分岐ルータになると判断した場合、前記ルータ保持手段に前記送信端末のアドレスに対応付けて前記複数のルータ転送先アドレスを登録するルータ登録手段と、
前記分岐ルータになると判断した場合、前記ルータのアドレスを前記端末転送先アドレスに追加し、前記ルータ転送先アドレスを前記端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを前記送信端末のアドレス宛に送信するルータ送信手段とを備え、
前記送信端末は、
前記端末転送先アドレスを保持する送信端末保持手段と、
前記参加/離脱要求メッセージに基づいて、前記ルータ転送先アドレスを前記送信端末保持手段から削除し、前記分岐ルータのアドレスを前記送信端末保持手段に登録する送信端末登録手段とを備えることを特徴とする通信システム。
A communication system comprising: a transmission terminal that transfers a multicast packet to a terminal transfer destination address; and a router that transfers the multicast packet to a router transfer destination address,
The router
Router holding means for holding the router forwarding address;
Judgment means for judging whether to become a branch router that forwards the multicast packet to a plurality of router forwarding destination addresses when the address of the transmitting terminal is set upstream of the multicast tree;
If it is determined to be the branch router, the router registration means for registering the plurality of router transfer destination addresses in association with the address of the transmission terminal in the router holding means,
If it is determined that the router becomes the branch router, a join / leave request message requesting to add the router address to the terminal forwarding address and to delete the router forwarding address from the terminal forwarding address is sent to the sending terminal. Router transmission means for transmitting to the address of
The transmitting terminal is
Transmitting terminal holding means for holding the terminal transfer destination address;
Transmission terminal registration means for deleting the router transfer destination address from the transmission terminal holding means based on the join / leave request message and registering the address of the branch router in the transmission terminal holding means. Communication system.
前記ルータ登録手段は、下流の前記分岐ルータからの前記参加/離脱要求メッセージに基づいて、前記下流の分岐ルータのルータ転送先アドレスを前記ルータ保持手段から削除し、前記下流の分岐ルータのアドレスを前記ルータ保持手段に登録することを特徴とする請求項1に記載の通信システム。   The router registration means deletes the router transfer destination address of the downstream branch router from the router holding means based on the join / leave request message from the downstream branch router, and sets the address of the downstream branch router. The communication system according to claim 1, wherein the communication system is registered in the router holding unit. 前記ルータ登録手段は、前記マルチキャストパケットの受信端末と接続する末端ルータとなる場合、前記ルータ保持手段に前記送信端末のアドレスに対応付けて前記ルータ転送先アドレスを登録することを特徴とする請求項1又は2に記載の通信システム。   The router registration unit registers the router forwarding destination address in association with the address of the transmission terminal in the router holding unit when it becomes a terminal router connected to the reception terminal of the multicast packet. The communication system according to 1 or 2. 前記送信端末は、該送信端末のアドレスが変更された場合に、前記マルチキャストパケットの受信端末に、変更後の送信端末のアドレスを通知する位置更新メッセージを送信する送信端末送信手段を備え、
前記受信端末は、前記位置更新メッセージに基づいて、前記マルチキャストパケットの送信を要求する参加要求メッセージを前記変更後の送信端末のアドレス宛に送信する受信端末送信手段を備えることを特徴とする請求項1乃至3のいずれか1項に記載の通信システム。
The transmission terminal comprises a transmission terminal transmission means for transmitting a location update message notifying the address of the transmission terminal after the change to the reception terminal of the multicast packet when the address of the transmission terminal is changed,
The receiving terminal comprises receiving terminal transmitting means for transmitting a participation request message for requesting transmission of the multicast packet to the address of the changed transmitting terminal based on the location update message. The communication system according to any one of 1 to 3.
前記受信端末送信手段は、前記受信端末がマルチキャストプロトコルに対応していないルータに接続する場合には、前記参加要求メッセージを破棄しないよう指示するデータが付加された前記参加要求メッセージを送信することを特徴とする請求項4に記載の通信システム。   The receiving terminal transmitting means transmits the participation request message to which data instructing not to discard the participation request message is added when the receiving terminal is connected to a router that does not support the multicast protocol. The communication system according to claim 4, characterized in that: 前記ルータ登録手段は、前記ルータ転送先アドレスの保持時間が満了した場合には前記ルータ保持手段から前記ルータ転送先アドレスを削除し、前記ルータ転送先アドレスを送信元アドレスとする前記マルチキャストツリーを維持するための維持要求メッセージを前記保持時間内に前記ルータが受信した場合には前記保持時間を延長し、
前記送信端末登録手段は、前記端末転送先アドレスの保持時間が満了した場合には前記送信端末保持手段から前記端末転送先アドレスを削除し、前記端末転送先アドレスを送信元アドレスとする前記維持要求メッセージを前記保持時間内に前記送信端末が受信した場合には前記保持時間を延長することを特徴とする請求項1乃至5のいずれか1項に記載の通信システム。
The router registration unit deletes the router transfer destination address from the router holding unit when the holding time of the router transfer destination address expires, and maintains the multicast tree with the router transfer destination address as a source address If the router receives a maintenance request message for holding within the holding time, the holding time is extended,
The transmission terminal registration means deletes the terminal transfer destination address from the transmission terminal holding means when the holding time of the terminal transfer destination address has expired, and the maintenance request with the terminal transfer destination address as the source address The communication system according to any one of claims 1 to 5, wherein when the transmitting terminal receives a message within the holding time, the holding time is extended.
前記ルータ登録手段は、前記送信端末のアドレスを指定した前記マルチキャストツリーからの離脱を要求する離脱要求メッセージに基づいて、前記送信端末のアドレスに対応付けられているルータ転送先アドレスを前記ルータ保持手段から削除し、
前記送信端末登録手段は、前記離脱要求メッセージに基づいて、前記送信端末のアドレスに対応付けられている端末転送先アドレスを前記送信端末保持手段から削除することを特徴とする請求項1乃至6のいずれか1項に記載の通信システム。
The router registering means, based on a leaving request message for requesting leaving from the multicast tree designating the address of the transmitting terminal, a router transfer destination address associated with the address of the transmitting terminal; Removed from
The transmission terminal registration unit deletes a terminal transfer destination address associated with the address of the transmission terminal from the transmission terminal holding unit based on the leaving request message. The communication system according to any one of the above.
マルチキャストパケットのルータ転送先アドレスを保持するルータ保持手段と、
前記マルチキャストパケットを転送する送信端末のアドレスをマルチキャストツリーの上流としたときに、前記マルチキャストパケットを複数の前記ルータ転送先アドレスに転送する分岐ルータになるかを判断する判断手段と、
前記分岐ルータになると判断した場合、前記ルータ保持手段に前記送信端末のアドレスに対応付けて前記複数のルータ転送先アドレスを登録するルータ登録手段と、
前記分岐ルータになると判断した場合、ルータのアドレスを前記送信端末が前記マルチキャストパケットを転送する端末転送先アドレスに追加し、前記ルータ転送先アドレスを前記端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを前記送信端末のアドレス宛に送信するルータ送信手段とを備えることを特徴とするルータ。
Router holding means for holding the router forwarding destination address of the multicast packet;
Judgment means for judging whether or not to become a branch router that forwards the multicast packet to a plurality of router forwarding destination addresses when an address of a transmission terminal that forwards the multicast packet is set upstream of a multicast tree;
If it is determined to be the branch router, the router registration means for registering the plurality of router transfer destination addresses in association with the address of the transmission terminal in the router holding means,
Participation requesting that the address of the router is added to the terminal forwarding destination address to which the sending terminal forwards the multicast packet and the router forwarding destination address is deleted from the terminal forwarding destination address when it is determined that the router becomes the branch router A router transmitting means for transmitting a leave request message to the address of the transmitting terminal.
マルチキャストパケットの端末転送先アドレスを保持する送信端末保持手段と、
前記マルチキャストパケットを複数のルータ転送先アドレスに転送する分岐ルータのアドレスを前記端末転送先アドレスに追加し、前記分岐ルータのルータ転送先アドレスを前記端末転送先アドレスから削除することを要求する参加/離脱要求メッセージに基づいて、前記ルータ転送先アドレスを前記送信端末保持手段から削除し、前記分岐ルータのアドレスを前記送信端末保持手段に登録する送信端末登録手段とを備えることを特徴とする送信端末。
Transmitting terminal holding means for holding the terminal transfer destination address of the multicast packet;
A request for adding a branch router address for forwarding the multicast packet to a plurality of router transfer destination addresses to the terminal transfer destination address and deleting the router transfer destination address of the branch router from the terminal transfer destination address. A transmission terminal comprising: a transmission terminal registration unit that deletes the router transfer destination address from the transmission terminal holding unit based on a leave request message and registers the branch router address in the transmission terminal holding unit .
前記送信端末のアドレスが変更された場合に、前記マルチキャストパケットの受信端末に、変更後の送信端末のアドレスを通知する位置更新メッセージを送信する送信端末送信手段を備えることを特徴とする請求項9に記載の送信端末。   The transmission terminal transmitting means for transmitting a location update message notifying the address of the transmission terminal after the change to the reception terminal of the multicast packet when the address of the transmission terminal is changed. The transmitting terminal described in. マルチキャストパケットを転送する送信端末のアドレスが変更された場合に、変更後の送信端末のアドレスを通知する位置更新メッセージに基づいて、前記マルチキャストパケットの送信を要求する参加要求メッセージを前記変更後の送信端末のアドレス宛に送信する受信端末送信手段を備えることを特徴とする受信端末。   When the address of the transmitting terminal that forwards the multicast packet is changed, based on the location update message that notifies the address of the changed transmitting terminal, the participation request message that requests transmission of the multicast packet is transmitted after the change. A receiving terminal comprising receiving terminal transmitting means for transmitting to the address of the terminal. ルータが、マルチキャストパケットを転送する送信端末のアドレスをマルチキャストツリーの上流としたときに、前記マルチキャストパケットを複数のルータ転送先アドレスに転送する分岐ルータになるかを判断し、
前記分岐ルータになると判断した場合、前記ルータ転送先アドレスを保持するルータ保持手段に、前記送信端末のアドレスに対応付けて前記複数のルータ転送先アドレスを登録し、
前記ルータのアドレスを前記送信端末がマルチキャストパケットを転送する端末転送先アドレスに追加し、前記ルータ転送先アドレスを前記端末転送先アドレスから削除することを要求する参加/離脱要求メッセージを前記送信端末のアドレス宛に送信し、
前記送信端末が、前記参加/離脱要求メッセージに基づいて、前記ルータ転送先アドレスを、前記端末転送先アドレスを保持する送信端末保持手段から削除し、前記分岐ルータのアドレスを前記送信端末保持手段に登録することを特徴とする通信方法。
A router determines whether it becomes a branch router that forwards the multicast packet to a plurality of router transfer destination addresses when the address of the transmission terminal that forwards the multicast packet is upstream of the multicast tree;
If it is determined to be the branch router, the router holding means holding the router transfer destination address is registered with the plurality of router transfer destination addresses in association with the address of the transmitting terminal,
A joining / leaving request message for requesting that the address of the router be added to a terminal forwarding address to which the sending terminal forwards a multicast packet and to delete the router forwarding address from the terminal forwarding address is sent to the sending terminal. Send to address,
Based on the join / leave request message, the transmitting terminal deletes the router transfer destination address from the transmitting terminal holding means that holds the terminal transfer destination address, and sends the branch router address to the transmitting terminal holding means. A communication method characterized by registering.
前記送信端末が、該送信端末のアドレスが変更された場合に、前記マルチキャストパケットの受信端末に、変更後の送信端末のアドレスを通知する位置更新メッセージを送信し、
前記受信端末が、前記位置更新メッセージに基づいて、前記マルチキャストパケットの送信を要求する参加要求メッセージを前記変更後の送信端末のアドレス宛に送信することを特徴とする請求項12に記載の通信方法。

When the address of the transmitting terminal is changed, the transmitting terminal transmits a location update message notifying the address of the changed transmitting terminal to the receiving terminal of the multicast packet;
The communication method according to claim 12, wherein the receiving terminal transmits a participation request message for requesting transmission of the multicast packet to the address of the changed transmitting terminal based on the location update message. .

JP2004024871A 2003-07-07 2004-01-30 Communication system, router, transmission terminal, reception terminal, and communication method Expired - Fee Related JP4481666B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004024871A JP4481666B2 (en) 2004-01-30 2004-01-30 Communication system, router, transmission terminal, reception terminal, and communication method
EP04747132A EP1667381A4 (en) 2003-07-07 2004-07-07 Communication system, multicast-capable router, transmitter terminal, receiver terminal, and communication method
PCT/JP2004/009663 WO2005004419A1 (en) 2003-07-07 2004-07-07 Communication system, multicast-capable router, transmitter terminal, receiver terminal, and communication method
CN2004800195413A CN1820467B (en) 2003-07-07 2004-07-07 Communication system, multicast-capable router, transmitter terminal, receiver terminal, and communication method
US10/563,751 US7620045B2 (en) 2003-07-07 2004-07-07 Communication system, multicast-capable router, transmitter terminal, receiver terminal, and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004024871A JP4481666B2 (en) 2004-01-30 2004-01-30 Communication system, router, transmission terminal, reception terminal, and communication method

Publications (2)

Publication Number Publication Date
JP2005217989A true JP2005217989A (en) 2005-08-11
JP4481666B2 JP4481666B2 (en) 2010-06-16

Family

ID=34907423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004024871A Expired - Fee Related JP4481666B2 (en) 2003-07-07 2004-01-30 Communication system, router, transmission terminal, reception terminal, and communication method

Country Status (1)

Country Link
JP (1) JP4481666B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009111746A (en) * 2007-10-30 2009-05-21 Sony Corp Communication system and method, relay device, terminal device and program
JP2010161499A (en) * 2009-01-06 2010-07-22 Fujitsu Ltd Packet transmitting system, transmitting terminal, receiving terminal, transmitting program, and receiving program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009111746A (en) * 2007-10-30 2009-05-21 Sony Corp Communication system and method, relay device, terminal device and program
JP2010161499A (en) * 2009-01-06 2010-07-22 Fujitsu Ltd Packet transmitting system, transmitting terminal, receiving terminal, transmitting program, and receiving program

Also Published As

Publication number Publication date
JP4481666B2 (en) 2010-06-16

Similar Documents

Publication Publication Date Title
EP3070890B1 (en) Multicast flow overlay using registration over a reliable transport
JP4745387B2 (en) Multicast routing protocol in mesh networks
US6636895B1 (en) System, device, and method for distributing multicast routing information in a protocol independent multicast network
TWI357242B (en) Route selection in wireless networks
EP2115971B1 (en) Multicast support by mobile routers in a mobile ad hoc network
US7450580B2 (en) Application layer multicast system and intermediate node therefor
JP5462360B2 (en) Method and apparatus at multiple rendezvous points for co-processing multicast traffic from mobile multicast sources
JP5448211B2 (en) Wireless communication apparatus, wireless network system, data transfer method, and program
US20040190542A1 (en) Mobile node, packet relay device and packet forwarding method
US9838303B2 (en) PIM source discovery by last hop router
JP2015520959A (en) Name-based neighbor discovery and multi-hop service discovery in information-centric networks
US7620045B2 (en) Communication system, multicast-capable router, transmitter terminal, receiver terminal, and communication method
JP2002335281A (en) Multicast packet distribution method and system, address structure of packet, and mobile unit
JPWO2006103719A1 (en) Multicast communication method
JP2006074132A (en) Multicast communication method and gateway device
JP2006324981A (en) Multicast packet transfer system
JP4481666B2 (en) Communication system, router, transmission terminal, reception terminal, and communication method
JP4951695B2 (en) Route selection in wireless networks
JP2005286681A (en) Relay equipment
JP6196564B2 (en) Relay device, control method therefor, and program
JP2013118537A (en) Multicast distribution system, router, and multicast distribution method
JP2010147600A (en) Multicast communication method, communication system, and communication device
JP5572848B2 (en) Communication apparatus and communication method
JP6301215B2 (en) Relay device, control method therefor, and program
JP2006128795A (en) Muticast receiving method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090803

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100302

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100318

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140326

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees