JP5572052B2 - Multicast distribution system, distribution router, and multicast distribution method - Google Patents

Multicast distribution system, distribution router, and multicast distribution method Download PDF

Info

Publication number
JP5572052B2
JP5572052B2 JP2010230321A JP2010230321A JP5572052B2 JP 5572052 B2 JP5572052 B2 JP 5572052B2 JP 2010230321 A JP2010230321 A JP 2010230321A JP 2010230321 A JP2010230321 A JP 2010230321A JP 5572052 B2 JP5572052 B2 JP 5572052B2
Authority
JP
Japan
Prior art keywords
distribution
router
flow
failure
routers
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.)
Expired - Fee Related
Application number
JP2010230321A
Other languages
Japanese (ja)
Other versions
JP2012085138A (en
Inventor
正和 宮本
清史 早瀬
裕昭 佐藤
康志 高木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2010230321A priority Critical patent/JP5572052B2/en
Publication of JP2012085138A publication Critical patent/JP2012085138A/en
Application granted granted Critical
Publication of JP5572052B2 publication Critical patent/JP5572052B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法に関する。   The present invention relates to a multicast distribution system, a distribution router, and a multicast distribution method.

IP(Internet Protocol)ルータとIPホスト区間のIPマルチキャストの配信制御を行うプロトコルとして、IPv4(Internet Protocol version 4)を利用する場合のIGMP(Internet Group Management Protocol)や、IPv6(Internet Protocol version 6)を利用する場合のMLD(Multicast Listener Discovery)が存在する。   IGMP (Internet Group Management Protocol) or IPv6 (Internet Protocol version 6) when using IPv4 (Internet Protocol version 4) as a protocol for controlling IP multicast distribution between an IP (Internet Protocol) router and an IP host section There is MLD (Multicast Listener Discovery) when using.

また、IPマルチキャストの配信制御の中でも、IPマルチキャストの配信フローの送信元IPアドレス(以下、Sourceを示す「Sアドレス」)と、宛先IPアドレス(以下、Groupを示す「Gアドレス」)と、の両方(以下、(S,G))を指定して制御を行うSSM(Source-Specific Multicast)方式に対応したプロトコルとして、非特許文献1が示すIGMPv3(IPv4)や、非特許文献2が示すMLDv2(IPv6)が存在する。   Also, in IP multicast distribution control, a source IP address (hereinafter referred to as “S address” indicating Source) of an IP multicast distribution flow and a destination IP address (hereinafter referred to as “G address” indicating Group) Non-Patent Document 1 IGMPv3 (IPv4) and Non-Patent Document 2 MLDv2 as protocols compatible with the SSM (Source-Specific Multicast) system that performs control by specifying both (hereinafter, (S, G)) (IPv6) exists.

IGMPv3/MLDv2では、ホストからフローの(S,G)アドレスと配信状態(join/leave)を示すレポートメッセージを送信し、ルータが本レポートメッセージを受信する度に当該フローの配信を開始(join)/停止(leave)するのが配信制御における基本的な動作となる。   In IGMPv3 / MLDv2, a report message indicating the flow (S, G) address and distribution status (join / leave) is transmitted from the host, and distribution of the flow is started (join) every time the router receives this report message. The basic operation in distribution control is to leave.

IPルータがIGMP/MLDプロトコルを用いてIPマルチキャストの配信制御を行うにあたり、同じ1つの共有セグメントに複数ルータが冗長接続されることもある。共有セグメントに複数のルータが存在する場合、全てのルータがレポートメッセージを受信することになるため、各ルータが独立して自律的に配信制御を行うと、同一フローを重複して配信する状況に陥る。これは、配信系の帯域利用効率を低下させ、一度に配信可能なフロー種別((S,G))の数が減少する点や、同一パケットを重複受信するホスト処理に悪影響を及ぼす可能性がある点が懸念される。   When an IP router performs IP multicast distribution control using the IGMP / MLD protocol, a plurality of routers may be redundantly connected to the same shared segment. When there are multiple routers in the shared segment, all routers will receive the report message. Therefore, if each router independently performs distribution control independently, the same flow will be duplicated. I fall. This can reduce the bandwidth utilization efficiency of the distribution system, reduce the number of flow types ((S, G)) that can be distributed at once, and possibly adversely affect host processing that receives duplicate packets. There are some concerns.

このような懸念を回避するため、IGMPv3/MLDv2には、クエリア選択メカニズム(Querier election mechanism)が備わっている。すなわち、共有セグメントに複数のルータが存在する場合、その中の1台を代表ルータ(以下、クエリアと呼ぶ)として選択し、クエリアだけがGQ(General Query、以下適宜クエリと略す)の送信制御やホストから受信するIGMP/MLDレポートの応答処理、マルチキャストフローの配信制御を行う。   In order to avoid such concerns, IGMPv3 / MLDv2 has a querier election mechanism. That is, when there are a plurality of routers in the shared segment, one of them is selected as a representative router (hereinafter referred to as a querier), and only the querier transmits GQ (General Query, hereinafter referred to as a query as appropriate) transmission control. Response processing of IGMP / MLD reports received from the host and multicast flow distribution control are performed.

クエリア選択方法としては、例えば、各ルータが他ルータから受信するクエリパケットの送信元IPアドレスと自IPアドレスを大小比較し、自アドレスの方が小さいルータは配信制御を継続する。逆に、自アドレスの方が大きいルータは配信制御を停止する。この判定動作を反復することにより、最終的にはアドレス最小となる1台のルータだけが配信制御を行う状態に収束する。   As a querier selection method, for example, each router compares the source IP address of the query packet received from another router with the own IP address, and the router with the smaller own address continues the distribution control. Conversely, a router with a larger address stops distribution control. By repeating this determination operation, finally, only one router having the smallest address converges to a state where distribution control is performed.

IETF、“Internet Group Management Protocol, Version 3”、[online]、[平成22年5月31日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc3376.txt)IETF, “Internet Group Management Protocol, Version 3”, [online], [searched on May 31, 2010], Internet (URL: http://www.rfc-editor.org/rfc/rfc3376.txt) IETF、“Multicast Listener Discovery Version 2 (MLDv2) for IPv6”、[online]、[平成22年5月31日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc3810.txt)IETF, “Multicast Listener Discovery Version 2 (MLDv2) for IPv6”, [online], [May 31, 2010 search], Internet (URL: http://www.rfc-editor.org/rfc/rfc3810. TXT)

しかし、共有セグメントに接続される複数のルータから、1台のクエリアを選択する手法では、そのクエリアに障害が発生したときに、マルチキャストのフロー配信が不安定になってしまう。
ここで、不安定とは、複数のルータから同一フローが二重配信されたり、フローの配信漏れが生じた状態を指す。
不安定の要因は、例えば、障害が発生したクエリアの代替となるクエリアが一時的に複数台決定されると、その複数台の代替クエリアからフローの重複配信が行われることである。
別の要因としては、例えば、障害が発生したクエリアの代替となるクエリアが選択されない期間には、フロー配信が途切れてしまうことである。
However, in the method of selecting one querier from a plurality of routers connected to the shared segment, multicast flow distribution becomes unstable when a failure occurs in the querier.
Here, unstable refers to a state in which the same flow is double-distributed from a plurality of routers, or a flow distribution omission has occurred.
The cause of instability is, for example, that when a plurality of queriers that can substitute for a querier in which a failure has occurred are temporarily determined, overlapping distribution of flows is performed from the plurality of alternative queriers.
Another factor is that, for example, flow distribution is interrupted during a period in which a querier that is a substitute for a querier in which a failure has occurred is not selected.

そこで、本発明は、共有セグメントに複数のマルチキャスト配信ルータが接続される構成において、クエリアの障害時にも安定したフロー配信を継続しつつ、障害フローの救済復旧を実現することを、主な目的とする。   In view of this, the main object of the present invention is to realize failure flow recovery and recovery while continuing stable flow distribution even in the case of a querier failure in a configuration in which a plurality of multicast distribution routers are connected to a shared segment. To do.

前記課題を解決するために、本発明は、配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムであって、複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットが、前記共有セグメントに接続される各装置が受信可能であり、前記配信ルータが、転送制御部と記憶手段とを有しており、前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、前記正常制御用データが、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、前記障害制御用データが、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、前記共有セグメントに接続される各前記配信ルータの転送制御部が、前記障害ルータとして他装置の前記配信ルータを検出した後、前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、取得した前記正常制御用データから検索される前記配信担当ルータまたは前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、取得した前記正常制御用データから検索される前記配信担当ルータおよび前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする。
さらに、本発明は、前記マルチキャスト配信システムに用いられる配信ルータ、および、前記マルチキャスト配信システムが実行するマルチキャスト配信方法である。
In order to solve the above problems, the present invention provides a multicast distribution system for distributing a multicast flow from a distribution server to a host via a distribution router, wherein a plurality of the distribution routers and one or more of the hosts are provided. Packets connected to the shared segment and transmitted to the shared segment can be received by each device connected to the shared segment, and the distribution router includes a transfer control unit and a storage unit, The storage means of the distribution router stores normal control data and failure control data, and the normal control data is distributed for each flow that is distributed via the shared segment. This is data that assigns a router as a router in charge of distribution, and the failure control data has the one or more distribution routers as a failure router. Data for allocating the distribution router different from the failure router as a distribution proxy router for the failure flow allocated to the failure router, and for each distribution router connected to the shared segment When the transfer control unit receives the distribution data of the flow from the distribution server after detecting the distribution router of the other device as the failed router, the normal control is performed using the specific information of the flow to which the received distribution data belongs as a search key. By searching for the distribution data and the failure control data, respectively, the distribution responsible router and the distribution proxy router of the searched flow are acquired, and the distribution responsible router searched from the acquired normal control data or the distribution proxy router for the fault flow the detected fault router has been delivered own When a location is a distribution data flow received through the shared segment is transferred to the host, the distribution charge router and the detected fault router is retrieved from the acquired normal control data has been delivered When the delivery proxy router for the failure flow is another device, the delivery data of the received flow is discarded.
Furthermore, the present invention is a distribution router used in the multicast distribution system and a multicast distribution method executed by the multicast distribution system.

これにより、配信担当ルータの障害時には、配信代行ルータがフローの配信を円滑に代行することで、共有セグメントに複数のマルチキャスト配信ルータが接続される構成において、配信担当ルータの障害時にも安定したフロー配信を実現することができる。   As a result, in the configuration where multiple multicast distribution routers are connected to the shared segment, the distribution proxy router smoothly performs flow distribution in the event of a failure of the distribution router, so that a stable flow can be achieved even when the distribution router fails. Distribution can be realized.

本発明は、前記共有セグメントに接続される各前記配信ルータの転送制御部が、前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする。   When the transfer control unit of each of the distribution routers connected to the shared segment stores the normal control data in the storage unit, the flow specifying information to which the received distribution data belongs, A predetermined function with the number of distribution routers connected to a segment as an argument is calculated, and the distribution router uniquely determined from the calculation result of the predetermined function is distributed to the flow used for the calculation of the predetermined function. A flow to which the received distribution data belongs for each combination of the one or more faulty routers selected from the one or more distribution routers when determining as a responsible router and storing the fault control data in the storage means Specific information and the number of routers obtained by subtracting the number of failed routers from the number of distribution routers connected to the shared segment It calculates a constant function, the distribution router that is uniquely determined from the calculation result of the predetermined function, and determining a delivery proxy router for the flow used in the calculation of the predetermined function.

これにより、障害ルータの組み合わせに応じて、配信担当ルータおよび配信代行ルータそれぞれが計算されるので、共有セグメントの配信ルータの構成を柔軟に設計することができる。   As a result, the distribution router and the distribution proxy router are calculated according to the combination of the failed routers, so that the configuration of the distribution router of the shared segment can be designed flexibly.

本発明によれば、共有セグメントに複数のマルチキャスト配信ルータが接続される構成において、クエリアの障害時にも安定したフロー配信を継続しつつ、障害フローの救済復旧を実現することができる。   According to the present invention, in a configuration in which a plurality of multicast distribution routers are connected to a shared segment, it is possible to realize recovery and restoration of a failure flow while continuing stable flow distribution even in the case of a querier failure.

本発明の一実施形態に関するマルチキャスト配信システムを示す構成図である。It is a block diagram which shows the multicast delivery system regarding one Embodiment of this invention. 本発明の一実施形態に関するマルチキャスト配信システムの処理概要(1台障害)を示す説明図である。It is explanatory drawing which shows the process outline | summary (1 unit failure) of the multicast delivery system regarding one Embodiment of this invention. 本発明の一実施形態に関するマルチキャスト配信システムの処理概要(2台障害)を示す説明図である。It is explanatory drawing which shows the process outline | summary (2 unit failure) of the multicast delivery system regarding one Embodiment of this invention. 本発明の一実施形態に関する配信ルータを示す構成図である。It is a block diagram which shows the delivery router regarding one Embodiment of this invention. 本発明の一実施形態に関するフロー配信処理を示すフローチャートである。It is a flowchart which shows the flow delivery process regarding one Embodiment of this invention. 本発明の一実施形態に関する障害制御テーブルの生成処理を示すフローチャートである。It is a flowchart which shows the production | generation process of the failure control table regarding one Embodiment of this invention. 本発明の一実施形態に関するルータ障害が発生した際における配信障害の復旧処理を示すフローチャートである。It is a flowchart which shows the restoration process of a delivery failure when the router failure generate | occur | produces regarding one Embodiment of this invention. 本発明の一実施形態に関するルータ障害からの配信切替え後に配信要求を受信した際において、配信制御テーブルの更新処理を示すフローチャートである。It is a flowchart which shows the update process of a delivery control table, when a delivery request | requirement is received after delivery switching from the router failure regarding one Embodiment of this invention. 本発明の一実施形態に関するルータ障害からの配信切替え後に配信要求を受信した際において、要求に対するフロー配信処理を示すフローチャートである。It is a flowchart which shows the flow delivery process with respect to a request | requirement when the delivery request | requirement is received after the delivery switch from the router failure regarding one Embodiment of this invention.

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

図1は、マルチキャスト配信システムを示す構成図である。マルチキャストフロー(以下、単にフローとする)は、配信サーバ1から送信されて、マルチキャスト配信網2、リンク3、各配信ルータ4(R1,R2,R3)、共有セグメント5を経由して、ホスト6に配信される。
これらのマルチキャスト配信システムの各装置は、CPUとメモリとハードディスク(記憶手段)とネットワークインタフェースを有するコンピュータとして構成され、このコンピュータは、CPUが、メモリ上に読み込んだプログラムを実行することにより、各処理部を動作させる。
FIG. 1 is a configuration diagram showing a multicast distribution system. A multicast flow (hereinafter simply referred to as a flow) is transmitted from the distribution server 1, and is sent to the host 6 via the multicast distribution network 2, the link 3, the distribution routers 4 (R 1, R 2, R 3), and the shared segment 5. Delivered to.
Each device of these multicast distribution systems is configured as a computer having a CPU, a memory, a hard disk (storage means), and a network interface. The computer executes each program by executing a program read on the memory. Operate the part.

マルチキャスト配信網2は、例えば、インターネット網であり、配信サーバ1から配信ルータ4への経路決定のためのプロトコルとして、DVMRP(Distance Vector Multicast Routing Protocol)や、PIM−SM(Protocol Independent Multicast - Sparse Mode)、PIM−SSM(Protocol Independent Multicast - Source Specific Mode)などが動作することを想定する。
共有セグメント5は、その共有セグメント5に接続される装置から送信されるパケットが、そのパケットの送信先だけでなく、同じ共有セグメント5に接続される他装置へも伝送される特性を有する。例えば、配信ルータ4(R1)からホスト6へ送信されるメッセージは、ホスト6だけでなく、他の各配信ルータ4(R2,R3)も受信することができる。共有セグメント5は、例えば、イーサネット(登録商標)のLAN(Local Area Network)やアクセス集線スイッチ内のVLAN(Virtual LAN)、スイッチ間を跨いだネットワークVLAN(IEEE802.1adやIEEE802.1ahによるタグVLAN)等により構成される。
The multicast distribution network 2 is, for example, the Internet network, and a protocol for determining a route from the distribution server 1 to the distribution router 4 is DVMRP (Distance Vector Multicast Routing Protocol) or PIM-SM (Protocol Independent Multicast-Sparse Mode). ), PIM-SSM (Protocol Independent Multicast-Source Specific Mode) and the like are assumed to operate.
The shared segment 5 has a characteristic that a packet transmitted from a device connected to the shared segment 5 is transmitted not only to the transmission destination of the packet but also to other devices connected to the same shared segment 5. For example, a message transmitted from the distribution router 4 (R1) to the host 6 can be received not only by the host 6 but also each other distribution router 4 (R2, R3). The shared segment 5 includes, for example, an Ethernet (registered trademark) LAN (Local Area Network), a VLAN (Virtual LAN) in an access concentrator switch, and a network VLAN (a tagged VLAN according to IEEE802.1ad or IEEE802.1ah) across the switches. Etc.

配信サーバ1は、フローの配信元となるサーバである。なお、フローの特定情報としては、フローのグループだけを特定情報とする(*,g)指定型であるASM(Any Source Multicast)と、フローのグループとフローの送信元の配信サーバ1のアドレスの組を特定情報とする(s,g)指定型であるSSMとが挙げられる。
以下、本実施形態では、フローの特定情報を(s,g)指定型として説明するが、(*,g)指定型にも本実施形態を応用することができる。ここで、(s,g)とは、(Source,Group)の略であり、最初のSourceが送信元の配信サーバ1のアドレスを示し、次のGroupがフローのグループを示す。
The distribution server 1 is a server that is a flow distribution source. The flow specific information includes (*, g) designation type ASM (Any Source Multicast) that uses only the flow group as specific information, the flow group and the address of the distribution server 1 that is the flow transmission source. SSM which is a (s, g) designation type that uses a set as specific information.
Hereinafter, in the present embodiment, the flow specific information will be described as the (s, g) designation type, but the present embodiment can also be applied to the (*, g) designation type. Here, (s, g) is an abbreviation for (Source, Group), where the first Source indicates the address of the distribution server 1 as the transmission source, and the next Group indicates the group of the flow.

配信ルータ4は、マルチキャストのグループ管理プロトコル(IGMPおよびMLDのプロトコルなど)が動作するルータであり、配信サーバ1からの配信データを、ホスト6に転送する。配信ルータ4は、リンク3を介して、マルチキャスト配信網2と接続されている。
ホスト6は、配信ルータ4から配信データを受信する端末であり、リスナ(listener)とも呼ばれる。ホスト6は、配信ルータ4からのクエリを受信すると、自装置が希望するフローの情報を含めたリポートを作成し、配信ルータ4に返信する。
The distribution router 4 is a router that operates a multicast group management protocol (such as IGMP and MLD protocols), and transfers distribution data from the distribution server 1 to the host 6. The distribution router 4 is connected to the multicast distribution network 2 via the link 3.
The host 6 is a terminal that receives distribution data from the distribution router 4 and is also called a listener. When the host 6 receives the query from the distribution router 4, the host 6 creates a report including information on the flow desired by the own device and sends it back to the distribution router 4.

以下、図2,図3を参照して、図1のマルチキャスト配信システムの処理概要を説明する。なお、各処理や各処理で使用されるデータ構造の詳細は、図4以降で説明する。図2,図3では、ルータ障害時における障害フローの救済方法を説明している。
・図2(a)は、3台の配信ルータ4(R1,R2,R3)が全て正常動作している状態である。
・図2(b)は、2台の配信ルータ4(R2,R3)が正常動作し、1台の配信ルータ4(R1)に障害が発生している状態である。
・図3は、1台の配信ルータ4(R2)が正常動作し、2台の配信ルータ4(R1,R3)に障害が発生している状態(二重障害)である。
Hereinafter, with reference to FIG. 2 and FIG. 3, an outline of processing of the multicast distribution system of FIG. 1 will be described. The details of each process and the data structure used in each process will be described with reference to FIG. 2 and 3 describe a method for relieving a failure flow when a router fails.
FIG. 2A shows a state where all three distribution routers 4 (R1, R2, R3) are operating normally.
FIG. 2B shows a state in which two distribution routers 4 (R2, R3) are operating normally and a failure has occurred in one distribution router 4 (R1).
FIG. 3 shows a state where one distribution router 4 (R2) is operating normally and a failure has occurred in two distribution routers 4 (R1, R3) (double failure).

図2(a)では、共有セグメント5内に3台の配信ルータ4が、4つのフロー(F1〜F4)をそれぞれ配信している。ここで、各配信ルータ4内の記憶手段には、4つのフローそれぞれについて、自ルータが配信担当か否かを特定する情報が格納されており、その特定情報をもとに、それぞれ配信するフローを重複や漏れがないように、分担して配信する。例えば、配信ルータ4(R1)は、2つのフロー(F1,F4)の配信を担当する。
これにより、共有セグメント5内の配信ルータ4のうち、1台の配信ルータ4だけをクエリアとして用いる従来のIGMP/MLD方式に比べ、フロー単位での負荷分散が実現でき、スループットを向上させることができる。
In FIG. 2A, three distribution routers 4 distribute four flows (F1 to F4) in the shared segment 5, respectively. Here, the storage means in each distribution router 4 stores information for specifying whether or not the own router is in charge of distribution for each of the four flows, and each distribution flow is based on the specific information. Are distributed and distributed so that there is no duplication or leakage. For example, the distribution router 4 (R1) is responsible for distribution of two flows (F1, F4).
As a result, load distribution in units of flows can be realized and throughput can be improved as compared with the conventional IGMP / MLD method using only one distribution router 4 as a querier among the distribution routers 4 in the shared segment 5. it can.

図2(b)は、配信ルータ4(R1)に障害が発生したときの障害フローの救済方法を示す。配信ルータ4(R1)の障害により、配信ルータ4(R1)が担当していた障害フローF1,F4を、配信ルータ4(R1)が配信することが困難な状況にある。
このとき、他の配信ルータ4(R2,R3)は、図2(a)で自ルータが配信担当であるフローF3,F2の配信を継続しつつ、障害フローF1,F4の配信を配信ルータ4(R1)からそれぞれ代行して配信する。
ここで、各配信ルータ4内の記憶手段には、共有セグメント5内の各配信ルータ4のうちの障害が発生した配信ルータ4の組み合わせに応じて、その障害が発生した配信ルータ4が配信担当であったフローの代行担当を特定する情報が格納されており、その特定情報をもとに、それぞれ代行配信するフローを重複や漏れがないように、分担して配信する。
これにより、障害が発生したときでも、各配信ルータ4が代行配信を分担することで、フロー単位での負荷分散が実現でき、スループットを向上させることができる。
さらに、正常な配信ルータ4(R2,R3)がフローF1,F4を代行配信する契機を、配信ルータ4(R1)の障害を検知したこととすることで、フローF1,F4の通信切断を抑制することができる。
FIG. 2B shows a method for relieving a failure flow when a failure occurs in the distribution router 4 (R1). Due to the failure of the distribution router 4 (R1), it is difficult for the distribution router 4 (R1) to distribute the failure flows F1 and F4 that the distribution router 4 (R1) was in charge of.
At this time, the other distribution routers 4 (R2, R3) continue to distribute the flows F3, F2 for which the own router is responsible for distribution in FIG. Deliver on behalf of (R1).
Here, in the storage means in each distribution router 4, the distribution router 4 in which the failure has occurred is in charge of distribution according to the combination of the distribution routers 4 in which the failure has occurred among the distribution routers 4 in the shared segment 5. The information for specifying the agent in charge of the flow was stored, and based on the specified information, the flows to be distributed on behalf of each other are distributed and distributed so that there is no duplication or omission.
As a result, even when a failure occurs, each distribution router 4 shares the proxy distribution, whereby load distribution can be realized in units of flows and throughput can be improved.
Furthermore, the communication distribution of the flows F1 and F4 is suppressed by detecting the failure of the distribution router 4 (R1) as an opportunity for the normal distribution router 4 (R2, R3) to distribute the flows F1 and F4 on behalf of can do.

図3は、二重障害の例として、配信ルータ4(R1、R3)が故障した場合を示す。この場合は、唯一正常である配信ルータ4(R2)が、4つのフロー(F1〜F4)の配信を担当する。
ここで、配信ルータ4(R2)内の記憶手段には、2台の配信ルータ4(R1,R3)に障害が発生したときに、その障害が発生した配信ルータ4が配信担当であったフローの代行担当を特定する情報が格納されており、その特定情報をもとに、フローF1,F2,F4を代行配信する。
FIG. 3 shows a case where the distribution router 4 (R1, R3) has failed as an example of a double failure. In this case, the only normal distribution router 4 (R2) is in charge of distributing the four flows (F1 to F4).
Here, in the storage means in the distribution router 4 (R2), when a failure occurs in the two distribution routers 4 (R1, R3), the flow in which the distribution router 4 in which the failure occurred was responsible for distribution. Is stored, and the flows F1, F2, and F4 are distributed on the basis of the specified information.

図4は、配信ルータ4を示す構成図である。
配信ルータ4は、フローの上流側(マルチキャスト配信網2の側)から順に、MC配信網接続インタフェース41、MC配信網フレーム転送部42、転送制御回路43、共有セグメントフレーム転送部44、共有セグメント接続インタフェース45が接続されて構成される。
FIG. 4 is a configuration diagram showing the distribution router 4.
The distribution router 4 includes, in order from the upstream side of the flow (the multicast distribution network 2 side), an MC distribution network connection interface 41, an MC distribution network frame transfer unit 42, a transfer control circuit 43, a shared segment frame transfer unit 44, and a shared segment connection. An interface 45 is connected.

インタフェース(MC配信網接続インタフェース41、共有セグメント接続インタフェース45)は、ネットワークが接続される端点となる箇所であり、外部の網からデータを受信するインタフェース(受信IF部411,452)と、外部の網にデータを送信するインタフェース(送信IF部451,412)とから構成される。
フレーム転送部(MC配信網フレーム転送部42、共有セグメントフレーム転送部44)は、インタフェースが送受信するデータの信号をフレーム単位に変換する処理部であり、受信インタフェースからの通信信号からフレームを構築する受信部(フレーム受信部442,421)と、構築されたフレームから送信インタフェースを介して送信する通信信号へとデコードする送信部(フレーム送信部441,422)とから構成される。
The interfaces (MC distribution network connection interface 41 and shared segment connection interface 45) are the end points to which the network is connected, and interfaces (reception IF units 411 and 452) that receive data from an external network, and external interfaces And interfaces (transmission IF units 451 and 412) for transmitting data to the network.
The frame transfer unit (MC distribution network frame transfer unit 42, shared segment frame transfer unit 44) is a processing unit that converts a data signal transmitted and received by the interface into a frame unit, and constructs a frame from a communication signal from the reception interface. It comprises a receiver (frame receivers 442 and 421) and a transmitter (frame transmitters 441 and 422) that decodes the constructed frame into a communication signal that is transmitted via the transmission interface.

上流(配信サーバ1)から下流(ホスト6)に流れる下りのパケット(マルチキャストフローなど)は、受信IF部411→フレーム受信部421→配信フィルタ部431→フレーム送信部441→送信IF部451の順に、配信ルータ4内を通過する。
下流(ホスト6)から上流(配信サーバ1)に流れる上りのパケット(配信要求(join/leave)など)は、受信IF部452→フレーム受信部442→配信管理部437→上位連携部439→フレーム送信部422→送信IF部412の順に、配信ルータ4内を通過する。
Downstream packets (multicast flow, etc.) flowing from upstream (distribution server 1) to downstream (host 6) are received in the order of reception IF unit 411 → frame reception unit 421 → distribution filter unit 431 → frame transmission unit 441 → transmission IF unit 451. , Passing through the distribution router 4.
An upstream packet (distribution request (join / leave) etc.) flowing from the downstream (host 6) to the upstream (distribution server 1) is received IF unit 452 → frame reception unit 442 → distribution management unit 437 → upper link unit 439 → frame. It passes through the distribution router 4 in the order of the transmission unit 422 → the transmission IF unit 412.

転送制御回路43は、受信部からのフレームを受信して、そのフレーム内容に応じて転送制御を行い、その結果を送信部に出力する。
例えば、転送制御回路43は、フレーム受信部421を介してマルチキャストパケットを受信すると、自ルータが配信制御を行うフローかを判定し、自ルータが配信するフローの場合、フレーム送信部441に当該マルチキャストフローを転送する。一方、転送制御回路43は、共有セグメント内の他の配信ルータ4が配信制御を行うフローの場合、当該マルチキャストパケットを廃棄する。
なお、転送制御回路43は、自ルータが配信するストリームの配信契機を、フレーム受信部442を介してホストから配信要求(join/leaveレポート)を受信したときとする。
The transfer control circuit 43 receives a frame from the receiving unit, performs transfer control according to the content of the frame, and outputs the result to the transmitting unit.
For example, when receiving the multicast packet via the frame receiving unit 421, the transfer control circuit 43 determines whether the own router performs the flow for distribution control. If the flow is distributed by the own router, the transfer control circuit 43 sends the multicast to the frame transmitting unit 441. Transfer the flow. On the other hand, the transfer control circuit 43 discards the multicast packet in the case of a flow in which another distribution router 4 in the shared segment performs distribution control.
It is assumed that the transfer control circuit 43 receives a distribution request (join / leave report) from the host via the frame reception unit 442 as a distribution trigger for the stream distributed by the router.

転送制御回路43は、配信フィルタ部431、フロー判定部432、配信制御テーブル433(正常制御テーブル433a、障害制御テーブル433b)、ルータ管理部434、ルータ管理テーブル435、配信障害検出部436、配信管理部437、配信フィルタリスト438、上位連携部439から構成される。以下、転送制御回路43の各構成要素について、詳細に説明する。   The transfer control circuit 43 includes a distribution filter unit 431, a flow determination unit 432, a distribution control table 433 (normal control table 433a, failure control table 433b), a router management unit 434, a router management table 435, a distribution failure detection unit 436, and distribution management. A unit 437, a distribution filter list 438, and a higher-level cooperation unit 439. Hereinafter, each component of the transfer control circuit 43 will be described in detail.

配信フィルタ部431は、マルチキャストパケットの透過/廃棄を実行する。つまり、配信フィルタ部431がパケットを受信すると、フロー判定部432に対してパケットの透過/廃棄の判定結果を問い合わせ、他のルータが配信制御を行うパケットであれば廃棄する。
一方、自ルータが配信制御を行うパケットであれば、当該フローが配信中の状態かを配信管理部437に問い合わせ、配信中状態であれば、パケットを透過処理して共有セグメントフレーム転送部44のフレーム送信部441へ転送する。
The distribution filter unit 431 executes transmission / discard of the multicast packet. That is, when the distribution filter unit 431 receives a packet, the flow determination unit 432 is inquired about the determination result of the transmission / discard of the packet, and if the packet is subjected to distribution control by another router, the packet is discarded.
On the other hand, if the packet is subject to distribution control by its own router, the distribution management unit 437 is inquired as to whether the flow is being distributed. If the flow is being distributed, the packet is transparently processed and the shared segment frame transfer unit 44 Transfer to the frame transmission unit 441.

フロー判定部432は、フレーム受信部421から受信したマルチキャストパケットについて、配信制御テーブル433を参照することにより、パケットの転送(透過)または廃棄を決定する。
例えば、フロー判定部432は、配信制御テーブル433内の正常制御テーブル433aを参照して、共有セグメント5内の全配信ルータ4が正常な状態におけるフローの配信制御を実行するか否かを判定する。
フロー判定部432は、ルータ管理部434から共有セグメント5におけるルータ総数およびルータ順位を情報取得し、受信パケットの情報((S,G)アドレス)との組み合わせにより、自ルータが制御するフローを識別し、共有セグメント5内の配信ルータ4間における同一フローの二重配信およびルータ間の配信漏れを抑止する。
The flow determination unit 432 determines transfer (transmission) or discard of the packet by referring to the distribution control table 433 for the multicast packet received from the frame reception unit 421.
For example, the flow determination unit 432 refers to the normal control table 433a in the distribution control table 433, and determines whether or not all distribution routers 4 in the shared segment 5 execute flow distribution control in a normal state. .
The flow determination unit 432 acquires information on the total number of routers and the router rank in the shared segment 5 from the router management unit 434, and identifies the flow controlled by the own router based on the combination with the received packet information ((S, G) address). Then, double distribution of the same flow between distribution routers 4 in the shared segment 5 and distribution omission between routers are suppressed.

配信障害検出部436は、共有セグメント5内の他の配信ルータ4の状態を管理する。例えば、共有セグメント5などの外部から障害発生および障害ルータの情報の通知を受信し、これを配信管理部437へと通知するとともに、これらの障害情報を内部管理する。また、障害回復時の切戻し制御に備えて、ルータ障害の回復情報も併せて管理する。   The delivery failure detection unit 436 manages the status of other delivery routers 4 in the shared segment 5. For example, a notification of failure occurrence and failure router information is received from the outside, such as the shared segment 5, and this is notified to the distribution management unit 437, and the failure information is internally managed. It also manages router failure recovery information in preparation for switchback control during failure recovery.

配信管理部437は、IGMP/MLDを実行することにより、自ルータをIGMP/MLDルータとして動作させ、ホスト6側から送信される配信要求(join/leaveレポート)を処理し、共有セグメント接続インタフェース45に対するフローごとの配信状態を配信フィルタリスト438として管理する。
なお、配信フィルタリスト438は、フローごとにそのフローをホスト6に配信するか否かを示す配信状態を対応づけたデータ構造である。
配信管理部437は、配信フィルタリスト438を参照して、フレーム受信部421からのパケットの転送または廃棄を決定する。
上位連携部439は、例えば、PIM−SSM等のマルチキャストルーティングプロトコルを動作させることにより、配信管理部437から受信した配信要求を、上流側へと送信して、マルチキャスト配信網2の配信制御と連携動作する。
The distribution management unit 437 executes IGMP / MLD to operate the own router as an IGMP / MLD router, processes a distribution request (join / leave report) transmitted from the host 6 side, and performs shared segment connection interface 45. For each flow is managed as a distribution filter list 438.
The distribution filter list 438 has a data structure in which a distribution state indicating whether the flow is distributed to the host 6 is associated with each flow.
The distribution management unit 437 refers to the distribution filter list 438 and determines whether to transfer or discard the packet from the frame reception unit 421.
For example, by operating a multicast routing protocol such as PIM-SSM, the upper cooperation unit 439 transmits the distribution request received from the distribution management unit 437 to the upstream side and cooperates with distribution control of the multicast distribution network 2. Operate.

配信管理部437は、ルータ障害時におけるフロー配信制御を行う。すなわち、共有セグメント5内の各配信ルータ4が故障した状況に備え、障害パタン毎の配信フロー割当てを手動設定もしくは自動計算する。なお、本処理は障害前もしくは障害後に実行することが可能であるが、障害前に実施することにより高速な切替えを実現することが可能となる。   The distribution management unit 437 performs flow distribution control when a router failure occurs. That is, in preparation for a situation where each distribution router 4 in the shared segment 5 fails, distribution flow allocation for each failure pattern is manually set or automatically calculated. Note that this processing can be executed before or after a failure, but it is possible to realize high-speed switching by performing it before the failure.

配信管理部437は、配信フローの割当てを、障害ルータに割当てられているフローに限定する。すなわち、正常ルータでは、フロー判定部432で正常系において自ルータに割り付けられるフローを配信するともに、配信管理部437で障害系において自ルータへ割り付けられるフローの配信を障害ルータから引き継ぐ。
これにより、系切替え制御に伴う正常フローの配信中断を伴うことなく、障害フローを救済することが可能となる。
The distribution management unit 437 restricts the distribution flow allocation to the flows allocated to the failed router. That is, in the normal router, the flow determination unit 432 distributes the flow assigned to the own router in the normal system, and the distribution management unit 437 takes over the distribution of the flow assigned to the own router in the faulty system from the faulty router.
As a result, the failure flow can be relieved without interruption of normal flow distribution accompanying the system switching control.

ルータ管理部434は、共有セグメント5に接続される各配信ルータ4(自ルータおよび他ルータ)のエントリをルータ管理テーブル435に記憶する。さらに、フロー判定部432は、ルータ管理テーブル435に格納される配信ルータ4の情報と、配信フィルタリスト438に格納されるフローの情報とから、配信ルータ4ごとの配信担当となるフローを特定するための配信制御テーブル433を作成する。   The router management unit 434 stores the entry of each distribution router 4 (the own router and other routers) connected to the shared segment 5 in the router management table 435. Furthermore, the flow determination unit 432 identifies the flow that is in charge of distribution for each distribution router 4 from the information on the distribution router 4 stored in the router management table 435 and the flow information stored in the distribution filter list 438. A distribution control table 433 is created.

Figure 0005572052
Figure 0005572052

表1は、ルータ管理部434が生成および管理するルータ管理テーブル435の一例を示す。この例では、3台の配信ルータ4(R1,R2,R3)が登録されている。ルータ管理テーブル435は、共有セグメント5内の配信ルータ4の障害状況(障害発生した配信ルータ4の組み合わせ)ごとに、共有セグメント5内の各配信ルータ4の順位を対応づけて記憶する。この順位は、後記するように、配信制御テーブル433の作成に使用される(表2参照)。   Table 1 shows an example of the router management table 435 generated and managed by the router management unit 434. In this example, three distribution routers 4 (R1, R2, R3) are registered. The router management table 435 stores the rank of each distribution router 4 in the shared segment 5 in association with each failure status of the distribution router 4 in the shared segment 5 (combination of the distribution routers 4 in which the failure has occurred). As will be described later, this order is used to create the distribution control table 433 (see Table 2).

ルータ管理部434は、ルータ管理テーブル435の各配信ルータ4の順位を決定するためのルータアドレス(例えば、アドレスの小さい順に順位を決定する)として、自ルータのIPアドレスと、他ルータから受信したパケットから特定できる他ルータのIPアドレスとを参照する。他ルータのIPアドレスは、例えば、IGMPおよびMLDにおける他ルータから共有セグメント5に定期的に送信されるGQ(General Query)メッセージなどのクエリの送信元アドレスである。
なお、ルータエントリの登録用のメッセージは、送信元ルータのIPアドレスを検出可能であれば、GQだけに限定されず、任意のメッセージを用いてもよい。
・IPv4マルチキャストの場合は、GQとGSQ(Group-Specific Query)とGSSQ(Group-and-Source-Specific Query)の3種類のクエリが規定されている。
・IPv6マルチキャストの場合は、GQとMASQ(Multicast Address Specific Query)とMASSQ(Multicast Address and Source Specific Query)の3種類のクエリが規定されている。
・マルチキャスト以外のメッセージを用いる場合は、ping(ICMP)パケットや独自パケットなど。
The router management unit 434 receives the IP address of its own router and the other router as a router address for determining the order of each distribution router 4 in the router management table 435 (for example, the order is determined in ascending order of address). It refers to the IP address of another router that can be identified from the packet. The IP address of the other router is, for example, a source address of a query such as a GQ (General Query) message periodically transmitted from the other router in IGMP and MLD to the shared segment 5.
The router entry registration message is not limited to GQ as long as the IP address of the transmission source router can be detected, and any message may be used.
In the case of IPv4 multicast, three types of queries of GQ, GSQ (Group-Specific Query), and GSSQ (Group-and-Source-Specific Query) are defined.
In the case of IPv6 multicast, three types of queries of GQ, MASQ (Multicast Address Specific Query), and MASSQ (Multicast Address and Source Specific Query) are defined.
When using a message other than multicast, a ping (ICMP) packet or a unique packet is used.

ルータ管理部434は、3台の配信ルータ4(R1,R2,R3)のルータアドレスの小さい順が「R3,R2,R1」であるときに、障害ルータを除外した配信ルータ4の集合に対して、ルータアドレスの小さい順に順位を割り当てる。例えば、障害ルータがないときには、配信ルータ4(R2)は配信ルータ4(R3)の次の順位(2位)であるが(表の1行目)、配信ルータ4(R3)に障害が発生したときには、繰り上がって1位となる(表の2行目)。   When the router address of the three distribution routers 4 (R1, R2, R3) is “R3, R2, R1” in ascending order, “R3, R2, R1” is assigned to the router management unit 434. And assign the rank in ascending order of router addresses. For example, when there is no faulty router, the distribution router 4 (R2) is the next rank (second place) of the distribution router 4 (R3) (first row in the table), but the distribution router 4 (R3) has a fault. If you do, you will move up to 1st place (2nd row in the table).

Figure 0005572052
Figure 0005572052

表2は、配信制御テーブル433(正常制御テーブル433a、障害制御テーブル433b)を示す。
配信制御テーブル433は、正常制御テーブル433aと障害制御テーブル433bとから構成されており、その2つのテーブルを1つに統合した形式が、表2の一番上の配信制御テーブル433である。つまり、配信制御テーブル433の左側の列(フロー,S,G,S+G)は、正常制御テーブル433aと障害制御テーブル433bとで共通し、配信制御テーブル433の右側の列「正常時」から正常制御テーブル433aを生成するとともに、配信制御テーブル433の右側の列「1台障害」から障害制御テーブル433bを生成することができる(データベースの表分離演算)。
配信制御テーブル433の左側の列(フロー,S,G,S+G)について、フロー列、S列、G列は、フローの特定情報が(S,G)であることを示している。「S+G」列は、ハッシュ値Modの計算用パラメータの一例であり、SとGとの和である。
Table 2 shows the distribution control table 433 (normal control table 433a, failure control table 433b).
The distribution control table 433 is composed of a normal control table 433a and a failure control table 433b, and the form in which the two tables are integrated into one is the distribution control table 433 at the top of Table 2. That is, the left column (flow, S, G, S + G) of the distribution control table 433 is common to the normal control table 433a and the failure control table 433b, and normal control is performed from the right column “normal” of the distribution control table 433. The table 433a can be generated, and the failure control table 433b can be generated from the column “one failure” on the right side of the delivery control table 433 (database table separation operation).
Regarding the left column (flow, S, G, S + G) of the distribution control table 433, the flow column, the S column, and the G column indicate that the flow specific information is (S, G). The “S + G” column is an example of a parameter for calculating the hash value Mod, and is the sum of S and G.

正常制御テーブル433aには、共有セグメント5内の全配信ルータ4が正常な状態における、フローごとの配信ルータ割当ての情報が格納されており、必要に応じてフロー判定部432を介して読み出される。
正常制御テーブル433aの「正常時」列は、ハッシュ値を示すMod3と、そのハッシュ値からフローの配信担当として決定された配信ルータ4の識別子(R1〜R3)とが対応づけられている。Mod3とは、「S+G」列の値を、ルータ数(3)で除算した余り(mod演算)である。
例えば、正常制御テーブル433aの1行目(フローF1)は、「S+G」列「3」÷全ルータ数「3」=商が1で余りが0なので、「Mod3」列が「0」である。
そして、表1のルータ管理テーブル435の1行目(3台正常時)の配信ルータごとの順位では、R3(1位)→R2(2位)→R3(3位)となっている。ここで、「Mod3」列からルータ順位への変換処理は、「Mod3」列が0でないときには、「Mod3」列の値をそのままルータ順位とし、「Mod3」列が0であるときには、ルータ順位が最下位のルータ順位とする。よって、「Mod3」列が「0」から、ルータ順位が最下位のルータ「R1」へと変換され、正常制御テーブル433aのR(配信担当)列として、「R1」が書き込まれる。
The normal control table 433a stores distribution router allocation information for each flow when all the distribution routers 4 in the shared segment 5 are normal, and is read via the flow determination unit 432 as necessary.
In the “normal” column of the normal control table 433a, Mod3 indicating a hash value is associated with the identifiers (R1 to R3) of the distribution router 4 determined as a flow distribution person from the hash value. Mod3 is a remainder (mod operation) obtained by dividing the value in the “S + G” column by the number of routers (3).
For example, the first row (flow F1) of the normal control table 433a is “S + G” column “3” ÷ total number of routers “3” = the quotient is 1 and the remainder is 0, so the “Mod3” column is “0”. .
The order of each distribution router in the first row (when three units are normal) of the router management table 435 in Table 1 is R3 (first place) → R2 (second place) → R3 (third place). Here, in the conversion process from the “Mod3” column to the router rank, when the “Mod3” column is not 0, the value of the “Mod3” column is used as the router rank, and when the “Mod3” column is 0, the router rank is Use the lowest router order. Therefore, the “Mod3” column is converted from “0” to the router “R1” having the lowest router order, and “R1” is written as the R (distribution manager) column of the normal control table 433a.

以上説明したように、フロー情報(S,G)からハッシュ値(mod[(S+G),ルータ数])を計算し、ハッシュ値とクエリア順位とを1:1に対応させ、クエリア順位から配信ルータ4の識別子(R1〜R3)へ変換することにより、フローごとの配信担当を決定する。
これにより、共有セグメント内に複数のフローが配信されるときに、そのフローごとの配信担当となるクエリアが負荷分散されるので、フローの配信漏れや重複配信を抑制しつつ、共有セグメント全体のフローのスループットを向上させることができる。
As described above, the hash value (mod [(S + G), the number of routers)) is calculated from the flow information (S, G), the hash value and the querier order are associated with each other, and the querier order is calculated. By converting to the identifiers (R1 to R3) of the distribution router 4, the person in charge of distribution for each flow is determined.
As a result, when multiple flows are distributed in the shared segment, the querier responsible for distribution for each flow is load-balanced, so that the flow of the entire shared segment is suppressed while suppressing flow distribution omission and duplicate distribution. Throughput can be improved.

障害制御テーブル433bには、共有セグメント5内の全配信ルータ4のうちの1台以上の配信ルータ4が障害状態における、フローごとの配信ルータ割当ての情報が格納されており、必要に応じて配信管理部437を介して読み出される。
障害制御テーブル433bの「1台障害」列の作成方法は、正常制御テーブル433aの「正常時」列の作成方法と、以下の違いがある。
・正常制御テーブル433aの配信担当を示す「R」列を、障害制御テーブル433bでは、障害が発生した配信ルータ4(R1に障害が発生したとき、R3に障害が発生したとき)ごとにする。
・正常制御テーブル433aのハッシュ値「Mod3」を、障害制御テーブル433bでは「Mod2」とする。これは、共有セグメント5内の全ルータ数「3」から、障害が発生したルータ数「1」を減じた結果、共有セグメント5内の正常動作するルータ数「2」となるためである。
・障害制御テーブル433bでは、「1台障害」列の計算対象となるレコードを、障害ルータが正常制御テーブル433aにおいて配信担当となっていたフローに限定する。例えば、「R1障害」列では、障害ルータ「R1」が正常制御テーブル433aの「R」列で「R1」となっているフローF1,F4だけを障害制御テーブル433bでの計算対象とし、それ以外のフローF2,F3は、計算対象外を示す「−」を「R1障害」列に記載する。
The failure control table 433b stores distribution router allocation information for each flow when one or more of the distribution routers 4 in the shared segment 5 are in a failure state, and is distributed as necessary. It is read out via the management unit 437.
The creation method of the “1 failure” column of the failure control table 433b has the following differences from the creation method of the “normal” column of the normal control table 433a.
In the failure control table 433b, the “R” column indicating the person in charge of distribution in the normal control table 433a is set for each distribution router 4 in which a failure has occurred (when a failure has occurred in R1 and a failure has occurred in R3).
The hash value “Mod3” in the normal control table 433a is set to “Mod2” in the failure control table 433b. This is because the total number of routers “3” in the shared segment 5 is subtracted from the number of failed routers “1”, resulting in the number of normally operating routers “2” in the shared segment 5.
In the failure control table 433b, the record to be calculated in the “1 failure” column is limited to the flow in which the failure router is in charge of distribution in the normal control table 433a. For example, in the “R1 failure” column, only the flows F1 and F4 in which the failure router “R1” is “R1” in the “R” column of the normal control table 433a are subject to calculation in the failure control table 433b. In the flows F2 and F3, “−” indicating that the calculation is not performed is described in the “R1 failure” column.

以下、障害制御テーブル433bの「1台障害」列の作成方法を、例示する。例えば、全3台の配信ルータ4のうちの、障害ルータがR1の1台であり、残りの2台が生存しているとする。
例えば、障害制御テーブル433bの1行目(フローF1)は、「S+G」列「3」÷障害時の全生存ルータ数「2」=商が1で余りが1なので、「Mod2」列が「1」である。
そして、表1のルータ管理テーブル435の4行目(「R1(1台障害時)」)の配信ルータごとの順位では、R3(1位)→R2(2位)となっている。
ここで、「Mod2」列からルータ順位への変換処理は、「Mod2」列が0でないときには、「Mod2」列の値をそのままルータ順位とし、「Mod2」列が0であるときには、ルータ順位が最下位のルータ順位とする。
よって、「Mod2」列が「1」から、ルータ順位が1位ルータ「R3」へと変換され、障害制御テーブル433bの1行目のR1障害列として、「R3」が書き込まれる。
In the following, a method for creating the “1 failure” column of the failure control table 433b will be exemplified. For example, it is assumed that, out of all three distribution routers 4, the faulty router is one R1, and the remaining two are alive.
For example, the first row (flow F1) of the failure control table 433b is “S + G” column “3” ÷ total number of surviving routers at the time of failure “2” = the quotient is 1 and the remainder is 1, so the “Mod2” column is “ 1 ”.
In the rank of each distribution router in the fourth row (“R1 (when one unit fails)”) of the router management table 435 in Table 1, R3 (first place) → R2 (second place).
Here, in the conversion process from the “Mod2” column to the router order, when the “Mod2” column is not 0, the value of the “Mod2” column is used as the router order, and when the “Mod2” column is 0, the router order is Use the lowest router order.
Therefore, the “Mod2” column is converted from “1” to the router “R3” in the router ranking, and “R3” is written as the R1 failure column in the first row of the failure control table 433b.

以上説明した配信制御テーブル433の作成処理では、共有セグメント5に3台の配信ルータ4が接続されている例を説明したが、共有セグメント5に接続される配信ルータ4の台数は、任意の台数でもよい。例えば、共有セグメント5にn台の配信ルータ4が接続されているときには、各テーブルには、以下の内容が書き込まれる。
・ルータ管理テーブル435には、n台正常時のレコード、1台障害時のレコード、2台障害時のレコード、…(n−1)台障害時のレコードが書き込まれる。
・正常制御テーブル433aには、n台正常時のレコードが書き込まれる。
・障害制御テーブル433bには、n台正常時のレコード、1台障害時のレコード、2台障害時のレコード、…(n−1)台障害時のレコードが書き込まれる。なお、(n−1)台障害時には、残った1台が全てのフローを配信することが明らかなため(図3参照)、障害制御テーブル433bから(n−1)台障害時のレコードを省略してもよい。
In the process of creating the distribution control table 433 described above, an example in which three distribution routers 4 are connected to the shared segment 5 has been described. However, the number of distribution routers 4 connected to the shared segment 5 can be any number. But you can. For example, when n distribution routers 4 are connected to the shared segment 5, the following contents are written in each table.
In the router management table 435, a record when n units are normal, a record when one unit fails, a record when two units fail,... (N-1) a record when a unit fails are written.
In the normal control table 433a, a record when n units are normal is written.
In the failure control table 433b, a record when n units are normal, a record when one unit fails, a record when two units fail,... (N-1) a record when unit failures occur are written. Since it is clear that the remaining one delivers all the flows in the case of (n-1) failure (see FIG. 3), the (n-1) failure record is omitted from the failure control table 433b. May be.

さらに、ルータ管理テーブル435、障害制御テーブル433bに格納される2台以上の障害時のレコード(多重障害のレコード)は、あらかじめ作成してもよいし、必要時に作成してもよい。必要時とは、例えば、k台障害が実際に発生したときに、(k+1)台障害時のレコードを作成する旨である。これにより、ルータ管理テーブル435、障害制御テーブル433bの記憶容量を節約できる。   Furthermore, two or more failure records (multiple failure records) stored in the router management table 435 and the failure control table 433b may be created in advance or may be created when necessary. “Necessary time” means that, for example, when k failures occur, a record for (k + 1) failures is created. Thereby, the storage capacity of the router management table 435 and the failure control table 433b can be saved.

図5は、フロー配信処理を示すフローチャートである。
S11として、受信IF部411は、マルチキャスト配信網2から下り方向のパケットを受信する。S11でYesならS12に進む。
S12として、配信フィルタ部431は、S11で受信したパケットがマルチキャストか否かを判定する。この判定は、例えば、IPv4の場合には、パケットのアドレスがクラスD(224.0.0.0〜239.255.255.255)のアドレスの場合をマルチキャストとすることで実現される。S12でYesならS14に進み、NoならS13に進む。
S13として、配信フィルタ部431は、S11で受信したパケットを、通常のパケット(ユニキャスト、ブロードキャストなどの非マルチキャストパケット)として転送する。
FIG. 5 is a flowchart showing the flow distribution process.
As S <b> 11, the reception IF unit 411 receives a downstream packet from the multicast distribution network 2. If Yes in S11, the process proceeds to S12.
In S12, the distribution filter unit 431 determines whether the packet received in S11 is multicast. For example, in the case of IPv4, this determination is realized by setting a packet address of class D (224.0.0.0 to 239.255.255.255) as multicast. If Yes in S12, the process proceeds to S14, and if No, the process proceeds to S13.
In S13, the distribution filter unit 431 transfers the packet received in S11 as a normal packet (non-multicast packet such as unicast or broadcast).

S14として、フロー判定部432は、S11で受信したパケットのフロー特定情報(S,G)を正常制御テーブル433aから検索し、検索されたレコードの配信担当ルータ(R)列を参照することにより、自ルータが配信担当ルータか否かを判定する。S14でYesならS17に進み、NoならS15に進む。
S15として、配信障害検出部436(または、ルータ管理部434)は、自ルータと同じ共有セグメント5に接続される他の配信ルータ4に障害が発生したか否かを判定する。この判定は、後記する配信障害検出部436(または、ルータ管理部434)の障害検出処理(図7のS201)の結果を記憶手段から読み取ることにより、実現される。S15でYesならS16に進み、NoならS19に進む。
As S14, the flow determination unit 432 searches the normal control table 433a for the flow specifying information (S, G) of the packet received in S11, and refers to the distribution router (R) column of the searched record. It is determined whether or not the own router is a router in charge of distribution. If Yes in S14, the process proceeds to S17, and if No, the process proceeds to S15.
As S15, the distribution failure detection unit 436 (or the router management unit 434) determines whether or not a failure has occurred in another distribution router 4 connected to the same shared segment 5 as its own router. This determination is realized by reading the result of the failure detection process (S201 in FIG. 7) of the delivery failure detection unit 436 (or the router management unit 434) described later from the storage unit. If Yes in S15, the process proceeds to S16, and if No, the process proceeds to S19.

S16として、フロー判定部432は、S11で受信したパケットのフロー特定情報(S,G)を障害制御テーブル433bから検索し、検索されたレコードの該当する障害時の配信代行ルータ(R1障害列など)を参照することで、自ルータが配信代行ルータか否かを判定する。S16でYesならS17に進み、NoならS19に進む。   In S16, the flow determination unit 432 searches the failure control table 433b for the flow identification information (S, G) of the packet received in S11, and the delivery proxy router (R1 failure sequence etc.) at the time of the corresponding failure of the retrieved record. ) To determine whether or not the own router is a delivery proxy router. If Yes in S16, the process proceeds to S17, and if No, the process proceeds to S19.

S17として、配信管理部437は、S11で受信したパケットのフローに対して、配信フィルタリスト438において配信中状態(Join)が対応づけられているか否かを参照することにより、そのフローが配信中か否かを判定する。S17でYesならS18に進み、NoならS19に進む。   As S17, the distribution management unit 437 refers to whether or not the distribution state (Join) is associated with the flow of the packet received in S11 in the distribution filter list 438, so that the flow is being distributed. It is determined whether or not. If Yes in S17, the process proceeds to S18, and if No, the process proceeds to S19.

S18として、配信フィルタ部431は、共有セグメント接続インタフェース45を介して、S11のパケットを該当する(配信先のホスト6が存在する)共有セグメント5へ転送する。
S19として、配信フィルタ部431は、S11で受信したパケットを廃棄する。
As S <b> 18, the distribution filter unit 431 transfers the packet of S <b> 11 to the corresponding shared segment 5 (the distribution destination host 6 exists) via the shared segment connection interface 45.
As S19, the distribution filter unit 431 discards the packet received in S11.

図6は、障害制御テーブル433bの生成処理を示すフローチャートである。
S101として、フロー判定部432は、正常制御テーブル433a内のレコード(正常系配信エントリ)を生成または更新する。
S102として、フロー判定部432は、障害制御テーブル433bに登録するレコード内容の設定方法をユーザに選択させる。手動設定ならS111へ進み、自動計算ならS103へ進む。
S111として、フロー判定部432は、障害制御テーブル433bの内容について、管理者から入力されたデータをそのまま障害制御テーブル433bに書き出す。つまり、ルータごと、もしくは(S,G)フローごとに管理者が配信代行ルータを選定し、障害制御テーブル433bに登録する。
FIG. 6 is a flowchart showing the generation process of the failure control table 433b.
As S101, the flow determination unit 432 generates or updates a record (normal distribution entry) in the normal control table 433a.
In S102, the flow determination unit 432 causes the user to select a method for setting the record contents to be registered in the failure control table 433b. If it is manual setting, the process proceeds to S111, and if it is automatic calculation, the process proceeds to S103.
In S111, the flow determination unit 432 writes the data input from the administrator as it is in the failure control table 433b with respect to the contents of the failure control table 433b. That is, the administrator selects a delivery proxy router for each router or for each (S, G) flow, and registers it in the failure control table 433b.

S103として、ルータ管理部434は、障害時における全正常ルータの数を計算する。例えば、3台のルータのうちの1台に障害が発生したときには、全正常ルータは、2台である。
S104として、フロー判定部432は、正常制御テーブル433aに登録されている全ての(S,G)フローに対し、障害系におけるハッシュ値Mod2を計算する。
S105として、ルータ管理部434は、ルータ管理テーブル435における障害時におけるクエリア順位から、配信代行ルータを計算する。
S106として、フロー判定部432は、配信代行ルータ(S105)とハッシュ値(S104)とを対応づけて、障害制御テーブル433bに登録(新規レコードを追加)する。
In S103, the router management unit 434 calculates the number of all normal routers at the time of failure. For example, when a failure occurs in one of the three routers, the number of all normal routers is two.
As S104, the flow determination unit 432 calculates a hash value Mod2 in the failure system for all the (S, G) flows registered in the normal control table 433a.
As S <b> 105, the router management unit 434 calculates a delivery proxy router from the querier rank at the time of failure in the router management table 435.
In S106, the flow determination unit 432 associates the delivery proxy router (S105) with the hash value (S104) and registers (adds a new record) to the failure control table 433b.

図7は、ルータ障害が発生した際における配信障害の復旧処理を示すフローチャートである。
S201として、配信障害検出部436(または、ルータ管理部434)は、自ルータと同じ共有セグメント5に接続される他の配信ルータ4に発生した障害を検出する。障害検出方法は、例えば、以下の2通りのいずれかである。
(検出1)配信障害検出部436が外部のネットワークから障害通知(障害ルータIPアドレス等)を受信してルータ管理部434へルータ障害発生を通知する。
(検出2)ルータ管理部434が共有セグメント5から受信するクエリの未受信を契機に、ルータ障害を検出する。
FIG. 7 is a flowchart showing a delivery failure recovery process when a router failure occurs.
As S201, the distribution failure detection unit 436 (or the router management unit 434) detects a failure that has occurred in another distribution router 4 connected to the same shared segment 5 as its own router. The failure detection method is, for example, one of the following two methods.
(Detection 1) The distribution failure detection unit 436 receives a failure notification (failed router IP address or the like) from an external network and notifies the router management unit 434 of the occurrence of a router failure.
(Detection 2) The router management unit 434 detects a router failure when a query received from the shared segment 5 is not received.

S202として、フロー判定部432は、障害制御テーブル433bを参照することで、S201で検出した障害ルータに割り当てられていたフローを障害フローとして特定する。
S203として、配信管理部437は、配信フィルタリスト438を参照して、障害フローのうちの配信中状態(Join)であるフローを1つずつ選択し、選択するフローが存在しないとき(S203,No)には、図7の処理を終了し、存在するとき(S203,Yes)には、S204に進む。
S204として、フロー判定部432は、S16と同様に、自ルータが配信代行か否かを判定し、YesならS205へ進み、NoならS203に戻る。
S205として、配信フィルタ部431は、S203で選択されたフローについて、配信フィルタリスト438の状態を配信中状態(Join)に変更することで、当該フローを配信制御する。そして、S203へ戻る。
In S202, the flow determination unit 432 refers to the failure control table 433b, and identifies the flow assigned to the failed router detected in S201 as a failed flow.
As S203, the delivery management unit 437 refers to the delivery filter list 438, selects one of the failed flows in the delivery state (Join) one by one, and when there is no flow to select (S203, No) ), The process of FIG. 7 ends, and if it exists (S203, Yes), the process proceeds to S204.
As S204, the flow determination unit 432 determines whether or not the own router is a delivery agent as in S16. If Yes, the flow proceeds to S205, and if No, the flow returns to S203.
As S205, the delivery filter unit 431 controls the delivery of the flow selected in S203 by changing the state of the delivery filter list 438 to the delivering state (Join). Then, the process returns to S203.

図8は、ルータ障害からの配信切替え後に配信要求を受信した際において、配信制御テーブル433の更新処理を示すフローチャートである。
S301として、配信管理部437は、配信要求(join/leave)を受信し、その対象となるフローの特定情報を、該当(S,G)として抽出する。以下のS302〜S313の処理は、配信制御テーブル433に未登録の該当(S,G)を、配信制御テーブル433に登録する処理である。
FIG. 8 is a flowchart showing a process for updating the distribution control table 433 when a distribution request is received after distribution switching due to a router failure.
In S301, the distribution management unit 437 receives the distribution request (join / leave), and extracts the specific information of the target flow as the corresponding (S, G). The following processes of S302 to S313 are processes for registering the corresponding (S, G) not registered in the distribution control table 433 in the distribution control table 433.

S302として、フロー判定部432は、該当(S,G)が正常制御テーブル433aに登録されているか否かを判定し、YesならS303へ進み、NoならS305へ進む。
S305として、フロー判定部432は、該当(S,G)フローに対し、ハッシュ値(Mod3)と配信担当ルータ(R)とを計算し、その結果を正常制御テーブル433aに登録(新規レコード追加)する。そして、S311へ進む。
As S302, the flow determination unit 432 determines whether or not the corresponding (S, G) is registered in the normal control table 433a. If Yes, the flow proceeds to S303, and if No, the flow proceeds to S305.
In S305, the flow determination unit 432 calculates the hash value (Mod3) and the distribution router (R) for the corresponding (S, G) flow, and registers the result in the normal control table 433a (addition of new record). To do. Then, the process proceeds to S311.

S303として、フロー判定部432は、S14と同様に、自ルータが配信担当か否かを判定し、Yesなら図8の処理を終了し、NoならS304へ進む。
S304として、フロー判定部432は、該当(S,G)が障害制御テーブル433bに登録されているか否かを判定し、Yesなら図8の処理を終了し、NoならS311へ進む。
S311〜S313は、図6のS104〜S106と同じ処理であるが、登録対象がS104での全ての(S,G)から、S311の該当(S,G)へと変更されている。
なお、図8のフローチャートが終了したら、S301の該当(S,G)を引数として、図9のフローチャートを起動させる。
In S303, the flow determination unit 432 determines whether or not the own router is in charge of distribution, as in S14. If Yes, the process in FIG. 8 ends. If No, the process proceeds to S304.
In S304, the flow determination unit 432 determines whether or not the corresponding (S, G) is registered in the failure control table 433b. If Yes, the process in FIG. 8 is terminated, and if No, the process proceeds to S311.
S311 to S313 are the same processes as S104 to S106 in FIG. 6, but the registration target is changed from all (S, G) in S104 to the corresponding (S, G) in S311.
When the flowchart of FIG. 8 ends, the flowchart of FIG. 9 is activated with the corresponding (S, G) in S301 as an argument.

図9は、ルータ障害からの配信切替え後に配信要求を受信した際において、要求に対するフロー配信処理を示すフローチャートである。
S401として、フロー判定部432は、S14と同様に、該当(S,G)が自ルータの配信担当か否かを判定し、YesならS402に進み、NoならS404へ進む。
S402として、配信管理部437は、S17と同様に、該当(S,G)が配信中状態(Join)か否かを判定し、Yesなら図9の処理を終了し、NoならS403へ進む。
S403として、配信フィルタ部431は、S205と同様に、当該フローを配信制御する。
FIG. 9 is a flowchart showing a flow distribution process for a request when a distribution request is received after distribution switching due to a router failure.
As S401, the flow determination unit 432 determines whether or not the corresponding (S, G) is in charge of distribution of the own router, as in S14. If Yes, the flow proceeds to S402. If No, the flow proceeds to S404.
As S402, similarly to S17, the distribution management unit 437 determines whether or not the corresponding (S, G) is in a distribution state (Join). If Yes, the process of FIG. 9 is terminated. If No, the process proceeds to S403.
As S403, the distribution filter unit 431 controls distribution of the flow in the same manner as S205.

S404として、配信障害検出部436(または、ルータ管理部434)は、S15と同様に、障害時か否かを判定し、YesならS405へ進み、Noなら図9の処理を終了する。
S405として、フロー判定部432は、S16と同様に、該当(S,G)が自ルータの配信代行か否かを判定し、YesならS403に進み、Noなら図9の処理を終了する。
As S404, the distribution failure detection unit 436 (or the router management unit 434) determines whether or not there is a failure as in S15. If Yes, the process proceeds to S405, and if No, the process of FIG. 9 ends.
As S405, the flow determination unit 432 determines whether or not the corresponding (S, G) is a delivery proxy of the own router, as in S16. If Yes, the flow proceeds to S403, and if No, the process of FIG. 9 ends.

以上説明した本実施形態では、あらかじめクエリア障害を想定した配信設定を準備しておくことにより、障害検出後に即時切替え可能とし、また、正常なクエリアに割当てされているフローに関しては、配信ルータを変更しないように、正常時と障害パタン毎の複数の配信設定を併用することを特徴とする。   In the above-described embodiment, by preparing a distribution setting assuming a querier failure in advance, it is possible to switch immediately after a failure is detected, and the distribution router is changed for a flow assigned to a normal querier. In order to avoid such a situation, a plurality of distribution settings for each normal state and each failure pattern are used in combination.

これにより、IPルータがIGMP/MLDプロトコルを用いてIPマルチキャストの配信制御を行うときに、共有セグメントに複数ルータが冗長接続される構成で、ルータ障害が発生したときでも、フローの配信漏れや重複配信を抑制することで、安定したフロー配信を実現するとともに、複数ルータそれぞれに配信担当となるフローが割り当てられることで、共有セグメント内の系全体としての帯域利用効率(配信収容効率)を向上させることができる。   As a result, when an IP router performs IP multicast distribution control using the IGMP / MLD protocol, multiple routers are redundantly connected to the shared segment, and even if a router failure occurs, flow distribution omissions and duplication Suppressing distribution realizes stable flow distribution and assigns a flow in charge of distribution to each of multiple routers, improving the bandwidth utilization efficiency (distribution accommodation efficiency) of the entire system in the shared segment be able to.

以下、本実施形態の効果を説明するために、以下の2つの比較例と比較する。
(比較例1)非特許文献1,2で示されるIGMPv3/MLDv2のクエリア選択メカニズム
(比較例2)共有セグメントに複数ルータが冗長接続されるときに、複数ルータそれぞれに配信担当となるフローを計算して割り当てるが、障害発生時には、共有セグメント内の全ルータそれぞれに対して配信担当となるフローを再計算する構成
Hereinafter, in order to explain the effect of this embodiment, the following two comparative examples are compared.
(Comparative example 1) IGMPv3 / MLDv2 querier selection mechanism shown in Non-Patent Documents 1 and 2 (Comparative example 2) When multiple routers are redundantly connected to a shared segment, the flow responsible for distribution to each of the multiple routers is calculated. However, in the event of a failure, a configuration that recalculates the flow that is in charge of distribution to all the routers in the shared segment

以下、(比較例1)、(比較例2)、および、本実施形態の構成それぞれについて、4つの課題を解決するか否かを比較説明する。   Hereinafter, whether or not to solve the four problems will be described for each of the configurations of (Comparative Example 1), (Comparative Example 2), and the present embodiment.

第1の課題として、IGMPv3/MLDv2では、セグメントに3台以上のルータが存在する場合、クエリアに障害が生じると、一時的に同一フローの二重配信が生じる可能性があることが挙げられる。
(比較例1)では、非クエリアは、クエリア障害が生じるとGQパケットを受信しなくなり、GQ受信タイマがOQPTタイムアウト値に到達した場合には、非クエリアは現クエリアに障害が発生したと仮定したと判定してクエリア状態へ遷移する。ここで、IGMP/MLDホストからjoinレポートを受信すると、クエリア状態へと遷移した全てのクエリアがこれに応答して配信を行うため、同一フローの二重配信が生じる。
(比較例1)では、OQPTタイムアウトして非クエリアからクエリアへ遷移する制御動作が、ルータごとに独立しているため、系全体として新しいクエリアが一つに収束するまで所定時間が必要となる。
As a first problem, in IGMPv3 / MLDv2, when there are three or more routers in a segment, there is a possibility that double delivery of the same flow may occur temporarily if a failure occurs in the querier.
In (Comparative Example 1), when a querier failure occurs, the non-querier stops receiving the GQ packet, and when the GQ reception timer reaches the OQPT timeout value, it is assumed that the non-querier has failed in the current querier. And transit to the querier state. Here, when the join report is received from the IGMP / MLD host, all the queriers that have transitioned to the querier state perform the distribution in response to this, and thus the dual distribution of the same flow occurs.
In (Comparative Example 1), since the control operation for switching from a non-querier to a querier after an OQPT time-out is independent for each router, a predetermined time is required until a new querier converges as one in the entire system.

第2の課題として、(比較例2)は、全ルータが正常な状態においてフロー単位に配信ルータを分散する技術であり、クエリア障害が生じた状態における制御動作については規定していないとすると、何らか障害復旧の技術を導入しない限り、障害ルータに割当てられるフローが配信断したままとなる。
よって、障害検出と障害フローの救済は何らか別の方法が必要となる。ここで、障害の検出に関しては、どのような手段を用いても構わないが、例えば、従来のIGMPv3/MLDv2と同様に、OQPTタイムアウトの仕組みを流用する方法などが考えられる。これに対して、障害検出後のフロー救済方法については、例えば、障害クエリアを除外した系において負荷分散の設定を再構成し直す方法が考えられる。
すなわち、障害系において、クエリア順位を再設定し、(S,G)フロー単位のハッシュ値の再計算を行い、ルータとフローの対応関係を変更することにより、障害フローの救済が可能となる。
As a second problem, (Comparative Example 2) is a technology that distributes distribution routers in units of flows when all routers are in a normal state, and it is assumed that the control operation in a state where a querier failure occurs is not defined. Unless any failure recovery technology is introduced, the flow assigned to the failed router remains disconnected.
Therefore, some other method is required for failure detection and failure flow relief. Here, any means may be used for detecting the failure. For example, a method of diverting the OQPT timeout mechanism as in the conventional IGMPv3 / MLDv2 can be considered. On the other hand, as a flow remedy method after failure detection, for example, a method of reconfiguring the load distribution setting in a system excluding the failure querier can be considered.
That is, in the fault system, the querier order is reset, the hash value is recalculated in units of (S, G) flow, and the correspondence between the router and the flow is changed, so that the fault flow can be relieved.

しかし、第3の課題として、(比較例2)では、正常なクエリアで配信していたフローについても、配信ルータが切り替る可能性があるため、系切替えに伴う正常フローの配信断(瞬断等)を伴う。
また、第4の課題として、(比較例2)では、切替え後のルータとフローの対応関係の再計算が完了し、新旧の配信テーブルを切り替えるまでは、障害クエリアが制御するフロー配信を救済できないため、サービス断時間が長期化する。
However, as a third problem, in (Comparative Example 2), there is a possibility that the distribution router may switch even for flows distributed in a normal querier. Etc.).
Further, as a fourth problem, in (Comparative Example 2), the flow distribution controlled by the failure querier cannot be relieved until the recalculation of the correspondence relationship between the router and the flow after switching is completed and the old and new distribution tables are switched. Therefore, the service interruption time is prolonged.

一方、本実施形態の構成では、障害検出後の処理として、(比較例1)のような各自ルータの独自判断による代替クエリアへの変更でもなく、(比較例2)のようなフロー配信担当の再計算でもなく、障害ルータの担当分のフローだけをあらかじめクエリア障害を想定した配信設定に即時切替を行うことにより、前記した第1の課題〜第4の課題の発生を防止する。   On the other hand, in the configuration of the present embodiment, the processing after failure detection is not a change to an alternative querier based on the independent determination of each router as in (Comparative Example 1), Instead of recalculation, the above-described first to fourth problems can be prevented by immediately switching only the flow for the faulty router in advance to the delivery setting assuming a querier fault.

つまり、本実施形態では、複数のIGMP/MLDルータでフローの配信制御を負荷分散している系でルータ障害が発生した場合において、当該ルータで配信していたフローの制御を復旧する救済手段を提供可能なため、高信頼なIPマルチキャストサービスが実現可能となる。また、任意のルータ障害を想定した配信設定を事前準備が可能なため、迅速なサービス復旧が実現可能となる。さらに、正常なフロー配信には影響がないため、品質の安定性が高いサービスが実現可能となる。   In other words, in this embodiment, when a router failure occurs in a system in which load distribution control is load-distributed by a plurality of IGMP / MLD routers, a rescue means for restoring control of the flow distributed by the router is provided. Since it can be provided, a highly reliable IP multicast service can be realized. In addition, since it is possible to prepare in advance a distribution setting assuming an arbitrary router failure, it is possible to realize quick service restoration. Further, since normal flow distribution is not affected, a service with high quality stability can be realized.

1 配信サーバ
2 マルチキャスト配信網
3 リンク
4 配信ルータ
5 共有セグメント
6 ホスト
41 MC配信網接続インタフェース
42 MC配信網フレーム転送部
43 転送制御回路
44 共有セグメントフレーム転送部
45 共有セグメント接続インタフェース
411 受信IF部
412 送信IF部
421 フレーム受信部
422 フレーム送信部
441 フレーム送信部
442 フレーム受信部
451 送信IF部
452 受信IF部
431 配信フィルタ部
432 フロー判定部
433 配信制御テーブル
433a 正常制御テーブル(正常制御用データ)
433b 障害制御テーブル(障害制御用データ)
434 ルータ管理部
435 ルータ管理テーブル
436 配信障害検出部
437 配信管理部
438 配信フィルタリスト
439 上位連携部
DESCRIPTION OF SYMBOLS 1 Distribution server 2 Multicast distribution network 3 Link 4 Distribution router 5 Shared segment 6 Host 41 MC distribution network connection interface 42 MC distribution network frame transfer part 43 Transfer control circuit 44 Shared segment frame transfer part 45 Shared segment connection interface 411 Reception IF part 412 Transmission IF unit 421 Frame reception unit 422 Frame transmission unit 441 Frame transmission unit 442 Frame reception unit 451 Transmission IF unit 452 Reception IF unit 431 Distribution filter unit 432 Flow determination unit 433 Distribution control table 433a Normal control table (normal control data)
433b Failure control table (failure control data)
434 Router management unit 435 Router management table 436 Distribution failure detection unit 437 Distribution management unit 438 Distribution filter list 439 Upper link unit

Claims (6)

配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムであって、
複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
前記配信ルータは、転送制御部と記憶手段とを有しており、
前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、
前記正常制御用データは、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、
前記障害制御用データは、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記障害ルータとして他装置の前記配信ルータを検出した後、
前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、
取得した前記正常制御用データから検索される前記配信担当ルータまたは前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
取得した前記正常制御用データから検索される前記配信担当ルータおよび前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
マルチキャスト配信システム。
A multicast distribution system for distributing a multicast flow from a distribution server to a host via a distribution router,
A plurality of the distribution routers and one or more hosts are connected to a shared segment, and a packet transmitted to the shared segment can be received by each device connected to the shared segment.
The distribution router has a transfer control unit and storage means,
The storage means of the distribution router stores normal control data and failure control data,
The normal control data is data for allocating one of the distribution routers as a distribution responsible router for each flow distributed through the shared segment,
The failure control data is distributed to the distribution router different from the failure router for the failure flow assigned to the failure router when the one or more distribution routers are the failure routers. Data to be assigned as a proxy router,
The transfer control unit of each distribution router connected to the shared segment is:
After detecting the distribution router of another device as the failed router,
When the flow distribution data is received from the distribution server, the normal control data and the failure control data are respectively searched by using the specific information of the flow to which the received distribution data belongs as a search key. Obtaining each of the distribution responsible router and the distribution proxy router,
The flow received via the shared segment when the distribution proxy router for the failed flow distributed by the distribution responsible router or the detected failed router retrieved from the acquired normal control data is the own device Transfer data to the host,
When the distribution proxy router for the failed flow distributed by the distribution responsible router searched from the acquired normal control data and the detected failed router is another device, the distribution data of the received flow is discarded. A multicast distribution system characterized by the above.
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、
前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする
請求項1に記載のマルチキャスト配信システム。
The transfer control unit of each distribution router connected to the shared segment is:
When the normal control data is stored in the storage unit, a predetermined function is calculated that uses as arguments the identification information of the flow to which the received distribution data belongs and the number of distribution routers connected to the shared segment. The distribution router uniquely determined from the calculation result of the predetermined function is determined as a distribution charge router for the flow used for the calculation of the predetermined function,
When storing the failure control data in the storage means, for each combination of the one or more faulty routers selected from the one or more distribution routers, the specific information of the flow to which the received distribution data belongs, The predetermined function having as arguments the number of routers obtained by subtracting the number of failed routers from the number of distribution routers connected to a shared segment, and the distribution uniquely determined from the calculation result of the predetermined function The multicast distribution system according to claim 1, wherein a router is determined as a distribution proxy router for a flow used for calculation of the predetermined function.
配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムに用いられる配信ルータであって、
複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
前記配信ルータは、転送制御部と記憶手段とを有しており、
前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、
前記正常制御用データは、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、
前記障害制御用データは、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記障害ルータとして他装置の前記配信ルータを検出した後、
前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、
取得した前記正常制御用データから検索される前記配信担当ルータまたは前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
取得した前記正常制御用データから検索される前記配信担当ルータおよび前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
配信ルータ。
A distribution router used in a multicast distribution system for distributing a multicast flow from a distribution server to a host via a distribution router,
A plurality of the distribution routers and one or more hosts are connected to a shared segment, and a packet transmitted to the shared segment can be received by each device connected to the shared segment.
The distribution router has a transfer control unit and storage means,
The storage means of the distribution router stores normal control data and failure control data,
The normal control data is data for allocating one of the distribution routers as a distribution responsible router for each flow distributed through the shared segment,
The failure control data is distributed to the distribution router different from the failure router for the failure flow assigned to the failure router when the one or more distribution routers are the failure routers. Data to be assigned as a proxy router,
The transfer control unit of each distribution router connected to the shared segment is:
After detecting the distribution router of another device as the failed router,
When the flow distribution data is received from the distribution server, the normal control data and the failure control data are respectively searched by using the specific information of the flow to which the received distribution data belongs as a search key. Obtaining each of the distribution responsible router and the distribution proxy router,
The flow received via the shared segment when the distribution proxy router for the failed flow distributed by the distribution responsible router or the detected failed router retrieved from the acquired normal control data is the own device Transfer data to the host,
When the distribution proxy router for the failed flow distributed by the distribution responsible router searched from the acquired normal control data and the detected failed router is another device, the distribution data of the received flow is discarded. A distribution router characterized by that.
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、
前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする
請求項3に記載の配信ルータ。
The transfer control unit of each distribution router connected to the shared segment is:
When the normal control data is stored in the storage unit, a predetermined function is calculated that uses as arguments the identification information of the flow to which the received distribution data belongs and the number of distribution routers connected to the shared segment. The distribution router uniquely determined from the calculation result of the predetermined function is determined as a distribution charge router for the flow used for the calculation of the predetermined function,
When storing the failure control data in the storage means, for each combination of the one or more faulty routers selected from the one or more distribution routers, the specific information of the flow to which the received distribution data belongs, The predetermined function having as arguments the number of routers obtained by subtracting the number of failed routers from the number of distribution routers connected to a shared segment, and the distribution uniquely determined from the calculation result of the predetermined function The distribution router according to claim 3, wherein a router is determined as a distribution proxy router for a flow used for calculation of the predetermined function.
配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信方法であって、
複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
前記配信ルータは、転送制御部と記憶手段とを有しており、
前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、
前記正常制御用データは、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、
前記障害制御用データは、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記障害ルータとして他装置の前記配信ルータを検出した後、
前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、
取得した前記正常制御用データから検索される前記配信担当ルータまたは前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
取得した前記正常制御用データから検索される前記配信担当ルータおよび前記検出した障害ルータが配信していた前記障害フローに対する前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
マルチキャスト配信方法。
A multicast distribution method for distributing a multicast flow from a distribution server to a host via a distribution router,
A plurality of the distribution routers and one or more hosts are connected to a shared segment, and a packet transmitted to the shared segment can be received by each device connected to the shared segment.
The distribution router has a transfer control unit and storage means,
The storage means of the distribution router stores normal control data and failure control data,
The normal control data is data for allocating one of the distribution routers as a distribution responsible router for each flow distributed through the shared segment,
The failure control data is distributed to the distribution router different from the failure router for the failure flow assigned to the failure router when the one or more distribution routers are the failure routers. Data to be assigned as a proxy router,
The transfer control unit of each distribution router connected to the shared segment is:
After detecting the distribution router of another device as the failed router,
When the flow distribution data is received from the distribution server, the normal control data and the failure control data are respectively searched by using the specific information of the flow to which the received distribution data belongs as a search key. Obtaining each of the distribution responsible router and the distribution proxy router,
The flow received via the shared segment when the distribution proxy router for the failed flow distributed by the distribution responsible router or the detected failed router retrieved from the acquired normal control data is the own device Transfer data to the host,
When the distribution proxy router for the failed flow distributed by the distribution responsible router searched from the acquired normal control data and the detected failed router is another device, the distribution data of the received flow is discarded. Multicast delivery method characterized by the above.
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、
前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする
請求項5に記載のマルチキャスト配信方法。
The transfer control unit of each distribution router connected to the shared segment is:
When the normal control data is stored in the storage unit, a predetermined function is calculated that uses as arguments the identification information of the flow to which the received distribution data belongs and the number of distribution routers connected to the shared segment. The distribution router uniquely determined from the calculation result of the predetermined function is determined as a distribution charge router for the flow used for the calculation of the predetermined function,
When storing the failure control data in the storage means, for each combination of the one or more faulty routers selected from the one or more distribution routers, the specific information of the flow to which the received distribution data belongs, The predetermined function having as arguments the number of routers obtained by subtracting the number of failed routers from the number of distribution routers connected to a shared segment, and the distribution uniquely determined from the calculation result of the predetermined function 6. The multicast distribution method according to claim 5, wherein a router is determined as a distribution proxy router for the flow used in the calculation of the predetermined function.
JP2010230321A 2010-10-13 2010-10-13 Multicast distribution system, distribution router, and multicast distribution method Expired - Fee Related JP5572052B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010230321A JP5572052B2 (en) 2010-10-13 2010-10-13 Multicast distribution system, distribution router, and multicast distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010230321A JP5572052B2 (en) 2010-10-13 2010-10-13 Multicast distribution system, distribution router, and multicast distribution method

Publications (2)

Publication Number Publication Date
JP2012085138A JP2012085138A (en) 2012-04-26
JP5572052B2 true JP5572052B2 (en) 2014-08-13

Family

ID=46243522

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010230321A Expired - Fee Related JP5572052B2 (en) 2010-10-13 2010-10-13 Multicast distribution system, distribution router, and multicast distribution method

Country Status (1)

Country Link
JP (1) JP5572052B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5486547B2 (en) * 2011-04-12 2014-05-07 日本電信電話株式会社 Multicast distribution system, distribution router, and multicast distribution method
JP5486555B2 (en) * 2011-06-02 2014-05-07 日本電信電話株式会社 Multicast delivery system, bandwidth management server, and multicast delivery method
JP6255863B2 (en) * 2013-10-03 2018-01-10 富士通株式会社 Transmission apparatus, transmission system, and transmission method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4621044B2 (en) * 2005-03-15 2011-01-26 富士通株式会社 Load distribution apparatus and load distribution method
JP4389221B2 (en) * 2005-03-29 2009-12-24 日本電気株式会社 Network, router device, switching method used therefor, program therefor, and recording medium

Also Published As

Publication number Publication date
JP2012085138A (en) 2012-04-26

Similar Documents

Publication Publication Date Title
US7860093B2 (en) Fast multicast convergence at secondary designated router or designated forwarder
US6654371B1 (en) Method and apparatus for forwarding multicast data by relaying IGMP group membership
US8014394B2 (en) High-speed processing of multicast content requests
US11917262B2 (en) Dynamic designated forwarder election per multicast stream for EVPN all-active homing
US9992099B2 (en) Protocol independent multicast designated router redundancy
CN109150580B (en) Protocol independent multicast join entropy
US20020143951A1 (en) Method and system for multicast to unicast bridging
CN101897156B (en) Method and system f0r data streaming
EP3677013A1 (en) Replication with dedicated metal deployment in a cloud
US9674075B1 (en) Multicast only fast re-route for PIM ASM mode
US11824759B2 (en) Transfer of secure multicast data traffic over a computing network
EP2892196A1 (en) Method, network node and system for implementing point-to-miltipoint multicast
US11245618B2 (en) Multicast traceroute facility with batch query processing for multiple flows and reservation of resources for requested link metrics
JP5572052B2 (en) Multicast distribution system, distribution router, and multicast distribution method
US8553691B2 (en) Efficient multicasting in a distributed system architecture
EP1062766A1 (en) Method, apparatus, and medium for minimal time multicast graft/join restoration
JP5553425B2 (en) Multicast distribution system, distribution router, and multicast distribution method
JP5486547B2 (en) Multicast distribution system, distribution router, and multicast distribution method
WO2014059864A1 (en) Network switching apparatus
JP2013118537A (en) Multicast distribution system, router, and multicast distribution method
JP2013009213A (en) Network communication device and system
JP5613142B2 (en) Distribution router, multicast distribution system, and multicast distribution method
US11546184B2 (en) Selecting a rendezvous point in an IP multicast-capable network
CN114915588B (en) Upstream multicast hop UMH extension for anycast deployment
KR101308088B1 (en) Method and apparatus for blocking the search for the website

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140129

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20140502

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140528

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140627

R150 Certificate of patent or registration of utility model

Ref document number: 5572052

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees