Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3930445B2 - Multicast communication method, router device for multicast communication, and program for multicast communication - Google Patents
[go: Go Back, main page]

JP3930445B2 - Multicast communication method, router device for multicast communication, and program for multicast communication - Google Patents

Multicast communication method, router device for multicast communication, and program for multicast communication Download PDF

Info

Publication number
JP3930445B2
JP3930445B2 JP2003067112A JP2003067112A JP3930445B2 JP 3930445 B2 JP3930445 B2 JP 3930445B2 JP 2003067112 A JP2003067112 A JP 2003067112A JP 2003067112 A JP2003067112 A JP 2003067112A JP 3930445 B2 JP3930445 B2 JP 3930445B2
Authority
JP
Japan
Prior art keywords
request
request data
data
multicast group
received
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 - Lifetime
Application number
JP2003067112A
Other languages
Japanese (ja)
Other versions
JP2004282161A (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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003067112A priority Critical patent/JP3930445B2/en
Publication of JP2004282161A publication Critical patent/JP2004282161A/en
Application granted granted Critical
Publication of JP3930445B2 publication Critical patent/JP3930445B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、IP(Internet Protocol)等を通信プロトコルとするネットワークにおけるマルチキャスト通信方法、マルチキャスト通信用ルータ装置およびマルチキャスト通信用プログラムに関する。
【0002】
【従来の技術】
通信プロトコルとして、例えば上記IPを用いたマルチキャスト通信(以下、IPマルチキャストとも記載する)が行われている。
【0003】
このIPマルチキャストにおいては、多数のホスト{通信ネットワーク(IPの場合、インターネット)を介して通信できるコンピュータを意味する}に対して上記通信ネットワークおよびマルチキャスト通信用のルータ装置(以下、ルータとも略記する)を経由してパケットデータを送信する際に、その多数のホストとルータとの間のプロトコルとして、IGMP(Internet Group Management Protocol)/MLD(Multicast Listener Discovery)等の受信側ベースのプロトコルが使用される場合が多い。
【0004】
受信側ベースのプロトコルとしては、IGMPv1(RFC1112 Host Extensions for IP Multicasting)、IGMPv2(RFC2236 Internet Group Management Protocol Version 2)、IGMPv2(RFC3376 Internet Group Management Protocol Version 3)、MLDv1(RFC 2710 Multicast Listener Discovery for IPv6)等があり(例えば、非特許文献1〜4参照)、上述した受信側ベースのプロトコルに従って、通信ネットワーク経由のアドレス(マルチキャストアドレス)が割り当てられたマルチキャストグループに参加している全てのホストに対してパケットデータを送信するようになっている。
【0005】
ここで、従来技術である受信側ベースのプロトコルに基づくホストおよびルータ間のシーケンスの一例を図15に示す。
【0006】
すなわち、あるホストが所定のマルチキャストグループに参加したい場合、このホストは、その参加したいマルチキャストグループに対する参加要求を表すデータ(参加要求と略記する)を、ルータに送信する(ステップS100)。参加要求を受信したルータは、参加要求送信元のホストの参加登録を行う(ステップS101)。
【0007】
また、ルータから参加確認を表すデータ(参加確認と略記する)がマルチキャストグループに参加登録されている全てのホストに定期的に送信されており(ステップS102)、そのマルチキャストグループに継続して参加する場合、各ホストは、送信されてきた参加確認に応答して参加中を表すデータ(参加中応答と略記する)をルータに対して送信する。この結果、ルータは、送信されてきた参加中応答を受信確認することにより、マルチキャストグループに参加している全てのホストの参加状態を把握することができる。
【0008】
一方、あるホストが参加していたマルチキャストグループから離脱したい場合、このホストは、その離脱したいマルチキャストグループに対する離脱要求を表すデータ(離脱要求と略記する)を、ルータに送信する(ステップS104)。離脱要求を受信したルータは、離脱確認を表すデータ(離脱確認と略記する)を対応するホストへ送信する(ステップS105)。
【0009】
そして、ルータは、一定時間待機し、対応するホストから上記離脱確認に対する応答が無い場合には、そのホストのマルチキャストグループへの参加登録を削除する(ステップS106)。
【0010】
上述したシーケンスから明らかなように、受信側ベースのプロトコルに基づくマルチキャストグループへのホストの参加および離脱においては、そのホストから参加要求あるいは離脱要求がホスト側の所定のタイミングでルータに送信されるようになっている。
【0011】
【非特許文献1】
"Host Extensions for IP Multicasting"、[online]、1989年 8月、S.Deering(Stanford University)、[平成15年3月9日検索」、インターネット<URL:http://www.ietf.org/rfc/rfc1112.txt?number=1112>
【0012】
【非特許文献2】
"Internet Group Management Protocol Version 2"、[online]、1997年 11月、W.Fenner(Xerox PARC)、[平成15年3月9日検索」、インターネット<URL:http://www.ietf.org/rfc/rfc2236.txt?number=2236>
【0013】
【非特許文献3】
"Internet Group Management Protocol Version 3"、[online]、2002年 10月、B.Cain(Cereva Network)、S.Deering & I.Kouvelas(Cisco Systems)、B.Fenner(AT&T Labs-Research)、A.Thyagarajan (Ericson)、[平成15年3月9日検索」、インターネット
<URL:http://www.ietf.org/rfc/rfc3376.txt?number=3376>
【0014】
【非特許文献4】
"Multicast Listener Discovery for IPv6"、[online]、1999年10月、S.Deering(Cisco Systems)、B.Fenner(AT&T Research)、B.Haberman (IBM)、[平成15年3月9日検索」、インターネット
<URL:http://www.ietf.org/rfc/rfc2710.txt?number=2710>
【0015】
【発明が解決しようとする課題】
しかしながら、上述した受信側ベースの通信プロトコルに基づくマルチキャスト通信においては、参加要求および離脱要求の送信タイミングは、何れもホスト側において設定されている。
【0016】
このため、例えば、ホスト側のアプリケーションが大量の参加要求および/または離脱要求(以下、参加/離脱要求と略記する)が発生するようにハングアップした場合や、ウィルス等の悪意のあるアプリケーションがホスト側にインストールされてしまい、この悪意のあるアプリケーションによりホストから大量の参加/離脱要求が発生した場合、上記ホストを含む複数のホストから大量の参加/離脱要求が略同時にルータに対して送信される可能性がある。
【0017】
このとき、受信側ベースの通信プロトコルに基づくマルチキャスト通信においては、以下に示す課題が生じていた。
【0018】
すなわち、ルータは、送信されてきた大量の参加/離脱要求を処理しなければならず、ルータ側の処理があがり、その動作に影響を与える可能性があるという第1の課題が生じていた。
【0019】
さらに、参加/離脱要求が大量であるため、ルータが全ての参加/離脱要求を受け付けることができず、一部の参加/離脱要求を取りこぼした場合、その参加/離脱要求が受け付けられなかったホスト側において、その参加/離脱要求の未受付を認識することができないという第2の課題が生じていた。
【0020】
本発明は、上述した事情に鑑みてなされたものであり、受信ホスト側から大量の参加/離脱要求がマルチキャスト通信用ルータ装置に送信されてきた場合であっても、そのマルチキャスト通信用ルータ装置の処理負荷の増大を抑制してその処理能力を高く維持することができるマルチキャスト通信方法、マルチキャスト通信用ルータ装置およびマルチキャスト通信用プログラムを提供することをその第1の目的とする。
【0021】
また、本発明は、上述した事情に鑑みてなされたものであり、マルチキャスト通信用ルータ装置側において参加/離脱要求が受付られなかった場合であっても、その参加/離脱要求が未受付の受信ホスト側で上記参加/離脱要求の未受付状態を把握することができるマルチキャスト通信方法、マルチキャスト通信用ルータ装置およびマルチキャスト通信用プログラムを提供することをその第2の目的とする。
【0022】
【課題を解決するための手段】
上述した目的を達成するため、本発明の第1の態様によれば、送信元ホストから通信ネットワークを介してルータ装置に送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信方法であって、前記ルータ装置は、前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認するステップと、確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄するステップと、前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除するステップと、を備えている。
【0023】
特に、本発明の第2の態様によれば、前記複数の要求データの少なくとも一部を破棄した際に、当該破棄した少なくとも一部の要求データの送信元の受信ホストに対して前記破棄を通知するための破棄通知データを送信するステップをさらに備えている。
【0024】
また、上述した目的を達成するため、本発明の第3の態様によれば、送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信用ルータ装置であって、前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する頻度確認手段と、確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する破棄手段と、前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録する参加登録手段と、前記受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する登録削除手段と、を備えている。
【0025】
特に、本発明の第4の態様によれば、前記複数の要求データの少なくとも一部を破棄した際に、当該破棄した少なくとも一部の要求データの送信元の受信ホストに対して前記破棄を通知するための破棄通知データを送信する破棄通知データ送信手段をさらに備えている。
【0026】
さらに、上述した目的を達成するため、本発明の第5の態様によれば、送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するためのルータ装置が読み取り可能なマルチキャスト通信用のプログラムであって、前記ルータ装置を、前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する手段と、確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する手段と、前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する手段と、してそれぞれ機能させる。
【0027】
【発明の実施の形態】
本発明に係わるマルチキャスト通信方法、マルチキャスト通信用ルータ装置およびマルチキャスト通信用プログラムの実施の形態について、添付図面を参照して説明する。
【0028】
(第1の実施の形態)
図1は、本発明の第1の実施の形態に係わるマルチキャスト通信用ルータ装置を含むマルチキャスト通信システムの概略構成を示す図である。
【0029】
図1に示すように、マルチキャスト通信システム1は、所定の通信プロトコル{例えば、トランスポート層の通信プロトコルとしてTCP;Transmission Control Protocol(UDP;User Datagram Protocol)、およびネットワーク層の通信プロトコルとしてIPを含むインターネット用通信プロトコル等}に従ったデータフォーマットを有するマルチメディアコンテンツ等のデータの送信元のホストであるサーバ(コンピュータ)3と、上記所定の通信プロトコルに従ってデータを通信できるインターネット等の通信ネットワーク4と、小規模のネットワーク(サブネット)Sb1、Sb2、・・・、Sbp上に互いに通信可能に相互接続された複数の受信ホスト(コンピュータ;単にホストと記載する)5a1−1〜5a1−m、5a2−1〜5a2−n、・・・、5ap−1〜5ap−oとを備えている。
【0030】
このマルチキャスト通信システム1は、サーバ3から所定の通信プロトコルに基づいてマルチキャスト通信により配信された所定のマルチキャストグループへのデータを、複数の受信ホスト5a1−1〜5a1−m、5a2−1〜5a2−n、・・・、5ap−1〜5ap−oにおける上記所定のマルチキャストグループに参加している少なくとも一部の受信ホストに対して同時に配信するシステムである。
【0031】
すなわち、マルチキャスト通信システム1は、図1に示すように、サーバ3に対して専用線等の通信線7を介して接続され、このサーバ3に対して通信ネットワーク4を経由して所定の通信プロトコルに基づくデータである例えばパケットデータを通信する際のルーティング機能を有するルータ9を備えている。
【0032】
また、マルチキャスト通信システム1は、通信ネットワーク4およびサブネットSb1〜Sbp間においてパケットデータを通信するためのルーティング機能に加えて、マルチキャストグループに対するホストの参加/離脱を管理する機能を含むマルチキャスト通信機能を有するマルチキャスト通信用ルータ装置(以下、ルータと略記する)11を備えている。
【0033】
さらに、マルチキャスト通信システム1のサブネットSb1においては、ホスト5a1−1〜5a1−mそれぞれに通信ケーブルL1−1〜L1−mが接続されており、この通信ケーブルL1−1〜L1−mは、LAN(Local Area Network)スイッチ等のスイッチ(スイッチングハブ)13a−1の物理ポートPO1−1〜PO1−mにそれぞれ接続されており、ホスト5a1−1〜5a1−mは、このスイッチ13a−1を経由して通信可能に相互接続されている。
【0034】
また、スイッチ13a−1は、物理ポートPO1−m+1を介して通信回線15a−1に通信可能に接続されており、この通信回線15a−1は、ルータ11に対して通信可能に接続されている。
【0035】
以下、全てのサブネットSb2〜Sbpについても、サブネットSb1と同様の構成となっている。
【0036】
すなわち、サブネットSb2においては、ホスト5a2−1〜5a2−nそれぞれに通信ケーブルL2−1〜L2−nが接続され、この通信ケーブルL2−1〜L2−nは、スイッチ13a−2の物理ポートPO2−1〜PO2−nにそれぞれ接続されており、ホスト5a2−1〜5a2−nは、このスイッチ13a−2を経由して通信可能に相互接続されている。
【0037】
また、スイッチ13a−2は、物理ポートPO2−n+1を介して通信回線15a−2に通信可能に接続されており、この通信回線15a−2は、ルータ11に対して通信可能に接続されている。
【0038】
さらに、サブネットSbpにおいては、ホスト5ap−1〜5ap−oそれぞれに通信ケーブルLp−1〜Lp−oが接続されており、この通信ケーブルL −1〜Lp−oは、スイッチ13a−pの物理ポートPOp−1〜POp−oにそれぞれ接続されており、ホスト5ap−1〜5ap−oは、このスイッチ13a−pを経由して通信可能に相互接続されている。
【0039】
そして、スイッチ13a−pは、物理ポートPOp−o+1を介して通信回線15a−pに通信可能に接続されており、この通信回線15a−pは、ルータ11に対して通信可能に接続されている。
【0040】
さらに、スイッチ13a−1は、VLAN(Virtual LAN)機能を有しており、対応する物理ポートPO1 −1〜PO1 m+1を任意にグループ分けし、それぞれのグループに識別情報であるIDを設定し、それぞれ異なる仮想的なLAN、すなわち、VLANとして利用できるようになっている。また、スイッチ13a−1は、設定した複数のVLANに対してプライオリティ値(複数のVLAN間の優先度を表す値として定義する)を設定できるようになっている。
【0041】
スイッチ13a−2〜13a−pも、スイッチ13a−1と同様のVLAN機能およびプライオリティ値設定機能をそれぞれ有している。
【0042】
そして、第1の実施の形態におけるルータ11は、図1に示すように、スイッチ13a−1〜13a−pに接続された通信回線15a−1〜15a−pそれぞれに接続され、サブネットSb1〜Sbpおよびルータ11間の通信インタフェース処理をそれぞれ行うインタフェース(I/F)20a1〜20apと、このインタフェース20a1〜20apを介して受信されたパケットデータを一時的に蓄積するためのバッファ(キャッシュメモリ)22とを備えている。
【0043】
さらに、ルータ11は、インタフェース(I/F)20a1〜20apおよびバッファ22に通信可能に接続されたコンピュータ(CPU)24と、このCPU24がアクセス可能であるメモリ26と、ルータ11および通信ネットワーク4間のデータ通信に関するインタフェース処理用のI/F28とを備えている。
【0044】
メモリ26には、上記所定の通信プロトコルに基づくデータフォーマットを有するパケットデータに含まれる宛先データ(通信ネットワーク4を経由したデータの宛先を表すデータ、例えば、IPに基づくインターネットの場合には、IPアドレス)毎に、その宛先までの経路を表すデータが格納されたルーティングテーブルRTが記憶されている。
【0045】
さらに、メモリ26には、上記所定のプロトコル、およびこの所定の通信プロトコルに対応する受信側ベースの通信プロトコル(例えば、所定の通信プロトコルがインターネット用通信プロトコルの場合、IGMPやMLD)等に従って、CPU24に後掲図4および図7に基づくマルチキャスト通信処理におけるホスト管理処理(グループ参加/離脱処理)を実行させるためのプログラムPとが記憶されている。
【0046】
このプログラムPは、予めメモリ26に搭載されていてもよく、あるいは、磁気ディスク、半導体メモリ等の各種の記録媒体に記憶させておき、ルータ11のCPU24が図示しないドライブ装置にセットされた記録媒体から読み込んでメモリ26にロードしてもよい。
【0047】
さらに、メモリ26には、上記所定のマルチキャストグループに参加している受信ホストのIPアドレスを、所定のマルチキャストグループの通信ネットワーク4経由の宛先を表すマルチキャストアドレスに対応付けて記憶するアドレス管理テーブルATが記憶されている。
【0048】
次に、第1の実施の形態に係わるマルチキャスト通信システム1の全体動作について、特にホスト5a1−1、ホスト5a1−2およびルータ11の動作を中心に説明する。なお、より説明を具体的にするために、上記所定の通信プロトコルをインターネット用通信プロトコルとした場合について説明する。
【0049】
まず、最初に、ホスト5a1−1およびホスト5a1−1から参加要求がルータ11に送信された際のシーケンスについて説明する。
【0050】
今、サブネットSb1のホスト5a1−1およびホスト5a1−1を除く他のホスト(ホスト5a1−3〜5a1−m、5a2−1〜5a2−nおよび5ap−1〜5ap−o)の内の少なくとも一部が上記所定のマルチキャストグループに参加しているものとする。
【0051】
このとき、ホスト5a1−1が上記所定のマルチキャストグループに参加したい場合、ホスト5a1−1は、その参加要求を表すデータ(以下、参加要求とも略記する)を所定の通信プロトコルであるIPプロトコルに基づくデータフォーマットに変換してスイッチ13a−1に送信する。
【0052】
すなわち、ホスト5a1−1は、参加要求を表すデータに自ホストの識別情報であるMAC(Media Access Control)アドレスおよびルータ11の識別情報であるMACアドレスをMACヘッダとして付加し、さらに、参加要求の送信元を表す自ホストのIPアドレス(ソースアドレス)、参加要求の宛先を表す上記所定のマルチキャストアドレス、所属するサブネットSb1の識別情報であるサブネットアドレス、TCP/UDPポート番号およびIPのサービス品質を表すTOS(Type of Service)フィールド値等を含むIPヘッダを付加してIPパケットデータを生成し、このIPパケットデータを通信ケーブルL1−1および物理ポートPO1−1を介してスイッチ13a−1に送信する(ステップS1)。
【0053】
次いで、ホスト5a1−1は、参加要求の受付通知を表すデータが送信されるまで待機し(ステップS2)、ルータ11から参加要求の受付通知を表すデータが送信されてきたか否かを定期的に判断している(ステップS3)。
【0054】
一方、送信されたIPパケットデータは、スイッチ13a−1を介して、対応する物理ポートPO1−1に対して設定されたVLANのIDおよびプライオリティ値がMACヘッダに付加される。そして、このIPパケットデータD1(図1参照)は、スイッチ13a−1により通信回線15a−1にスイッチングされてルータ11に送信される(図2参照)。
【0055】
このとき、ホスト5a1−2からも、ホスト5a1−1からの参加要求送信タイミングと略同時に、例えば大量の参加要求(IPパケットデータD1と同様のデータフォーマットを有するIPパケットデータD2)がルータ11に送信されている(ステップS1参照)。そして、ホスト5a1−2もホスト5a1−1と同様に待機状態となっており(ステップS2参照)、上記定期的な判断処理が実行されている(ステップS3参照)。
【0056】
一方、ルータ11のCPU24(以下、単にルータ11とする)は、ホスト5a1−1および5a1−2から送信されてきた参加要求を対応するI/F20a1および20a2を介して受信してバッファ22に蓄積し(ステップS9)、受信された参加要求の頻度(略同時に受信された参加要求の数)を確認し(ステップS10)、確認した参加要求の頻度に応じて破棄処理を行うか否か判断する。
【0057】
すなわち、ルータ11は、確認した参加要求の受信頻度が予め設定された閾値(例えば、ルータ11が経由するサブネットSb1〜Sbpに応じて設定された適当な値)以下か否か判断する(ステップS11)。
【0058】
今、ルータ11に対してホスト5a1−2から大量の参加要求が送信されているため、ステップS11の判断はNO(参加要求の受信頻度が閾値を超えている)となり、ルータ11は、受信された参加要求の一部を破棄する(ステップS12)。
【0059】
例えば、第1の実施の形態では、ステップS12の処理として、ルータ11は、ホスト5a1−2から送信されてきた全ての参加要求を破棄する。
【0060】
続いて、ルータ11は、破棄しなかった分の参加要求、すなわち、破棄した参加要求を除く残りの参加要求に対応するホスト(本実施の形態では、ホスト5a1−1)のIPアドレスを上記所定のマルチキャストグループに対応するマルチキャストアドレスに対応付けてアドレステーブルATに格納してホスト5a1−1の参加登録を行い(ステップS13)、その参加要求の受付通知を表すデータ(IPパケットデータ)を、ホスト5a1−1のIPアドレスおよびMACアドレスを宛先として、スイッチ13a−1等を介してホスト5a1−1に送信する(ステップS14)。
【0061】
この結果、ホスト5a1−1のステップS3の判断はYES(参加要求受付通知を表すデータ送信)となり、ホスト5a1−1は、無事参加受付要求が受付られたものと判断して、その処理を終了する。
【0062】
一方、ホスト5a1−2は、ステップS3の判断処理を一定時間繰り返し実行し、その間に参加要求受付通知を表すデータが送信されてこない場合、ステップS3の判断はNO(参加要求受付通知を表すデータ未送信)となり、再度、参加要求を表すデータ(IPパケットデータD2)をスイッチ13a−1等を介してルータ11に送信する(ステップS1参照)。
【0063】
このとき、ホスト5a1−2から大量の参加要求ではなく、通常の1つの参加要求を表すIPパケットデータD2がルータ11に送信されている場合、ルータ11は、この参加要求を受信してその受信頻度を確認し(ステップS9、ステップS10参照)、受信された参加要求の受信頻度が上記閾値以下か否か判断する(ステップS11参照)。
【0064】
今、ホスト5a1−2から大量の参加要求が発生していないため、ステップS11の判断はYES(参加要求の受信頻度が閾値以下である)となり、ルータ11は、その参加要求に対応するホスト5a1−2のIPアドレスを上記所定のマルチキャストグループに対応するマルチキャストアドレスに対応付けてアドレステーブルATに格納してホスト5a1−2の参加登録を行い(ステップS15)、その参加要求の受付通知を表すデータ(IPパケットデータ)を、ホスト5a1−2のIPアドレスおよびMACアドレスを宛先として、スイッチ13a−1等を介してホスト5a1−2に送信する(ステップS16)。
【0065】
この結果、ホスト5a1−2のステップS3の判断はYES(参加要求受付通知を表すデータ送信)となり、ホスト5a1−2は、無事参加受付要求が受付られたものと判断して、その処理を終了する。
【0066】
次に、ホスト5a1−1およびホスト5a1−1から離脱要求がルータ11に送信された際のシーケンスについて説明する。
【0067】
今、少なくともサブネットSb1のホスト5a1−1およびホスト5a1−2が上記所定のマルチキャストグループに参加しているものとする。
【0068】
このとき、ホスト5a1−2が上記所定のマルチキャストグループから離脱したい場合、ホスト5a1−2は、その離脱要求を表すデータ(以下、離脱要求とも略記する)に基づいて、参加要求と略同様のデータフォーマットを有するIPパケットデータを生成し、このIPパケットデータを通信ケーブルL1−2および物理ポートPO1−2を介してスイッチ13a−1に送信する(ステップS5)。
【0069】
次いで、ホスト5a1−2は、離脱要求の受付通知を表すデータが送信されるまで待機し(ステップS6)、ルータ11から離脱要求の受付通知を表すデータが送信されてきたか否かを定期的に判断している(ステップS7)。
【0070】
一方、送信されたIPパケットデータは、スイッチ13a−1を介して、対応する物理ポートPO1−2に対して設定されたVLANのIDおよびプライオリティ値がMACヘッダに付加される。そして、このIPパケットデータD2a(図5参照)は、スイッチ13a−1により通信回線15a−1にスイッチングされてルータ11に送信される。
【0071】
このとき、ホスト5a1−1からも、ホスト5a1−2からの離脱要求送信タイミングと略同時に、例えば大量の離脱要求(IPパケットデータD1、D2aと同様のデータフォーマットを有するIPパケットデータD1a)がルータ11に送信されている(ステップS5参照)。そして、ホスト5a1−1もホスト5a1−2と同様に待機状態となっており(ステップS6参照)、上記定期的な判断処理が実行されている(ステップS7参照)。
【0072】
ルータ11は、ホスト5a1−1および5a1−2から送信されてきた離脱要求を対応するI/F20a1および20a2を介して受信してバッファ22に蓄積し(ステップS17)、受信された離脱要求の頻度を確認し(ステップS18)、確認した離脱要求の頻度に応じて破棄処理を行うか否か判断する。
【0073】
すなわち、ルータ11は、確認した離脱要求の受信頻度が予め設定された閾値以下か否か判断する(ステップS19)。
【0074】
今、ルータ11に対してホスト5a1−1から大量の離脱要求が送信されているため、ステップS19の判断はNO(離脱要求の受信頻度が閾値を超えている)となり、ルータ11は、受信された離脱要求の一部を破棄する(ステップS20)。
【0075】
例えば、第1の実施の形態では、ステップS20の処理として、ルータ11は、ホスト5a1−1から送信されてきた全ての離脱要求を破棄する。
【0076】
続いて、ルータ11は、破棄しなかった分の離脱要求、すなわち、破棄した離脱要求を除く残りの離脱要求に対応するホスト(本実施の形態では、ホスト5a1−2)のIPアドレスをアドレステーブルATにおける所定のマルチキャストグループから削除して上記所定のマルチキャストグループに対応するホスト5a1−2の参加登録を削除し(ステップS21)、その離脱要求の受付通知を表すデータ(IPパケットデータ)を、ホスト5a1−2のIPアドレスおよびMACアドレスを宛先として、スイッチ13a−1等を介してホスト5a1−2に送信する(ステップS22)。
【0077】
この結果、ホスト5a1−2のステップS7の判断はYES(離脱要求受付通知を表すデータ送信)となり、ホスト5a1−2は、その離脱要求が無事受け付けられたことを確認して、その処理を終了する。
【0078】
一方、ホスト5a1−1は、ステップS7の判断処理を一定時間繰り返し実行し、その間に離脱要求受付通知を表すデータが送信されてこない場合、ステップS7の判断はNO(離脱要求受付通知を表すデータ未送信)となり、再度、離脱要求を表すデータ(IPパケットデータD1a)をスイッチ13a−1等を介してルータ11に送信する(ステップS5参照)。
【0079】
このとき、ホスト5a1−1から大量の離脱要求ではなく、通常の1つの離脱要求を表すIPパケットデータD1aがルータ11に送信されている場合、ルータ11は、この離脱要求を受信してその受信頻度を確認し(ステップS17、ステップS18参照)、受信された離脱要求の受信頻度が上記閾値以下か否か判断する(ステップS19参照)。
【0080】
今、ホスト5a1−1から大量の参加要求が発生していないため、ステップS19の判断はYES(離脱要求の受信頻度が閾値以下である)となり、ルータ11は、その離脱要求に対応するホスト5a1−1のIPアドレスをアドレステーブルATにおけるマルチキャストグループから削除して上記所定のマルチキャストグループに対応するホスト5a1−1の参加登録を削除し(ステップS23)、その離脱要求の受付通知を表すデータ(IPパケットデータ)を、ホスト5a1−1のIPアドレスおよびMACアドレスを宛先として、スイッチ13a−1等を介してホスト5a1−1に送信する(ステップS23)。
【0081】
この結果、ホスト5a1−1のステップS7の判断はYES(離脱要求受付通知を表すデータ送信)となり、ホスト5a1−1は、その離脱要求が無事受け付けられたことを確認して、その処理を終了する。
【0082】
以上述べたように、第1の実施の形態によれば、ホスト5a1−1およびホスト5a1−2から所定のマルチキャストグループに対する複数の参加/離脱要求が送信されてきた際に、その参加/離脱要求の受信頻度と所定の閾値とを比較し、その比較の結果、受信頻度が所定の閾値を超えた場合においては、ルータ11の処理により、その複数の参加/離脱要求の内の少なくとも一部を破棄することができる。
【0083】
このため、あるホストから所定のマルチキャストグループに対して大量の参加/離脱要求がルータ11に送信されてきた場合であっても、ルータ11の処理負荷の増大を抑制してその処理能力を高く維持することができる。
【0084】
また、第1の実施の形態によれば、ホスト5a1−1およびホスト5a1−2側においては、参加/離脱受付通知の送信の有無に基づいて、参加/離脱要求が破棄されたか否かを判断することができ、その判断結果に応じて再度、参加/離脱要求をルータ11に送信することができる。
【0085】
この結果、一度、ルータ11により参加/離脱要求が破棄された場合においても、ルータ11により、再度参加/離脱要求を受け付けることが可能になる。
【0086】
なお、第1の実施の形態におけるステップS10、S18の参加要求または離脱要求の頻度を確認する処理として、略同時に送信されてきた参加要求または離脱要求の数をカウントしたが、本発明はこの構成に限定されるものではなく、一定時間毎の参加要求の送信回数または離脱要求の送信回数をカウントしてもよい。
【0087】
また、第1の実施の形態におけるステップS10、S18の参加要求または離脱要求の頻度を確認する処理として、予め所定の帯域幅を閾値としてルータ11が保持し、この閾値を超えた帯域の参加要求または離脱要求が送信されてきた場合、上記閾値を超えた参加要求または離脱要求が生じたものと判断してもよい。
【0088】
さらに、第1の実施の形態におけるステップS10、S18の参加要求または離脱要求の頻度を確認する処理を行う前に、ルータ11は、受信した参加要求のポリシング、すなわち、所定の単位毎に参加要求または離脱要求を分類し、分類した参加要求毎に受信頻度を確認してもよい。
【0089】
例えば、図8に示すように、ルータ11は、ホスト5a1−1および5a1−2から送信されてきた参加要求を対応するI/F20a1および20a2を介して受信してバッファ22に蓄積した後(ステップS9参照)、その受信した参加要求を所定の単位毎にポリシング(分類)する(ステップS9a)。
【0090】
この所定の単位としては、例えば、参加要求(IPパケットデータD1、D2)のIPヘッダに含まれるマルチキャストアドレス、参加要求のIPヘッダに含まれる送り元ホストのソースアドレス、参加要求のTCP/UDPポート番号、参加要求のIPヘッダに含まれるTOSフィールド値、参加要求のIPヘッダに含まれるサブネットアドレス、参加要求のMACヘッダに含まれる物理ポート識別情報、参加要求のMACヘッダに含まれるVLANのID、参加要求のMACヘッダに含まれるVLANのプライオリティ値、参加要求のMACヘッダに含まれる宛先MACアドレスおよび参加要求のMACヘッダに含まれる送信元MACアドレスの内の少なくとも1つあるいはその組合せを所定の単位としてポリシングを行うことができる。
【0091】
例えば、図8に示すように、ステップS9aの処理において、ルータ11が参加要求(IPパケットデータD1、D2)のIPヘッダに含まれる送り元ホストのソースアドレスでポリシングし、ステップS10aの処理において、ポリシング(分類)した参加要求毎に受信頻度を確認した際、ホスト5a1−2からの参加要求が大量に発生している場合では、そのホスト5a1−2のソースアドレスを含む参加要求の受信頻度が増大していることを容易に認識することができる。
【0092】
したがって、ステップS11の処理において、ルータ11は、そのホスト5a1−2のソースアドレスを含む参加要求の少なくとも一部を容易に破棄することができる。
【0093】
同様に、例えば、ステップS9aの処理において、ルータ11が参加要求(IPパケットデータD1、D2)のMACヘッダに含まれるVLANのIDでポリシングし、ステップS10aの処理において、ポリシング(分類)した参加要求毎に受信頻度を確認した際、同一のVLANに属するホストからの参加要求が大量に発生している場合では、その同一のVLANに属するホストからの参加要求の受信頻度が増大していることを容易に認識することができる。
【0094】
したがって、ステップS11の処理において、ルータ11は、その同一のVLANに属するホストからの参加要求の少なくとも一部を容易に破棄することができる。
【0095】
なお、図8に示したポリシング処理は、離脱要求を受信した場合についても、参加要求に対するポリシングと同様に実行することができる。
【0096】
さらに、第1の実施の形態におけるステップS12、S20に基づく参加/離脱要求の少なくとも一部の破棄処理としては、任意に破棄してもよいし、複数の参加/離脱要求を表す複数のパケットデータのバッファ22内に滞在する数を表す平均キュー長を求め、求めた平均キュー長に応じた確率で、複数の参加/離脱要求を表す複数のパケットデータの内の一部のパケットデータを破棄してもよい。
【0097】
また、第1の実施の形態では、参加/離脱要求を送信したホストが同一サブネットSb1の2台のホストとして説明したが、本発明はこの構成に限定されるものではなく、同一のサブネットあるいは異なるサブネットに属する3台以上のホストからの参加/離脱要求が送信されてきた場合であっても、ルータ11は、同様に動作して参加/離脱要求の少なくとも一部の破棄を行うことができる。
【0098】
(第2の実施の形態)
本発明の第2の実施の形態に係わるマルチキャスト通信システムにおいては、そのルータ11の処理、ホスト5a1−1および5a1−2の処理が図1に示すマルチキャスト通信システム1と異なり、そのハードウェア構成については、マルチキャスト通信システム1と同様であるため、その説明は省略する。
【0099】
次に、第2の実施の形態に係わるマルチキャスト通信システム1の全体動作について、特にホスト5a1−1、ホスト5a1−2およびルータ11の動作を中心に説明する。なお、第2の実施の形態においても、より説明を具体的にするために、上記所定の通信プロトコルをインターネット用通信プロトコルとした場合について説明する。
【0100】
まず、最初に、ホスト5a1−1およびホスト5a1−2から参加要求がルータ11に送信された際のシーケンスについて説明する。
【0101】
今、サブネットSb1のホスト5a1−1およびホスト5a1−2を除く他のホスト(ホスト5a1−3〜5a1−m、5a2−1〜5a2−nおよび5ap−1〜5ap−o)の内の少なくとも一部が上記所定のマルチキャストグループに参加しているものとする。
【0102】
このとき、ホスト5a1−1が上記所定のマルチキャストグループに参加したい場合、ホスト5a1−1は、その参加要求を表すデータを所定の通信プロトコルであるIPプロトコルに基づくデータフォーマットに変換してスイッチ13a−1に送信する。
【0103】
すなわち、ホスト5a1−1は、第1の実施の形態と同様に、参加要求を表すIPパケットデータを生成し、このIPパケットデータを通信ケーブルL1−1および物理ポートPO1−1を介してスイッチ13a−1に送信する(ステップS30)。
【0104】
次いで、ホスト5a1−1は、ステップS30ルータ11から参加要求破棄を通知するためのデータが送信されてきたか否かを定期的に判断している(ステップS31)。
【0105】
一方、送信されたIPパケットデータは、スイッチ13a−1を介してIPパケットデータD1(図2参照)としてルータ11に送信される。
【0106】
このとき、ホスト5a1−2からも、ホスト5a1−1からの参加要求送信タイミングと略同時に、例えば大量の参加要求(IPパケットデータD1と同様のデータフォーマットを有するIPパケットデータD2)がルータ11に送信されており(ステップS30参照)、ホスト5a1−2も上記定期的な判断処理が実行されている(ステップS31参照)。
【0107】
一方、ルータ11は、ホスト5a1−1および5a1−2から送信されてきた参加要求を対応するI/F20a1および20a2を介して受信してバッファ22に蓄積し(ステップS40)、受信された参加要求の頻度を確認し(ステップS41)、確認した参加要求の頻度に応じて破棄処理を行うか否か判断する。
【0108】
すなわち、ルータ11は、確認した参加要求の受信頻度が予め設定された閾値以下か否か判断する(ステップS42)。
【0109】
今、ルータ11に対してホスト5a1−2から大量の参加要求が送信されているため、ステップS42の判断はNO(参加要求の受信頻度が閾値を超えている)となり、ルータ11は、受信された参加要求の一部を破棄する(ステップS43)。
【0110】
例えば、第2の実施の形態では、ステップS43の処理として、ルータ11は、ホスト5a1−2から送信されてきた全ての参加要求を破棄する。
【0111】
続いて、ルータ11は、破棄しなかった分の参加要求、すなわち、破棄した参加要求を除く残りの参加要求に対応するホスト(本実施の形態では、ホスト5a1−1)のIPアドレスを上記所定のマルチキャストグループに対応するマルチキャストアドレスに対応付けてアドレステーブルATに格納してホスト5a1−1の参加登録を行う(ステップS44)。
【0112】
次いで、ルータ11は、参加要求が破棄されたホスト(本実施の形態では、ホスト5a1−2)に対して、その参加要求の破棄を通知するためのデータ(IPパケットデータ)を、ホスト5a1−2のIPアドレスおよびMACアドレスを宛先として、スイッチ13a−1等を介してホスト5a1−2に送信する(ステップS45)。
【0113】
このとき、ホスト5a1−1は、ステップS31の判断処理を一定時間繰り返し実行しており、ステップS44の参加登録処理の結果、参加要求破棄を通知するためのデータが非送信となるため、ホスト5a1−1のステップS31の判断はNO(参加要求破棄を通知するためのデータ非送信)となり、ホスト5a1−1は、参加要求が無事受付られたことを確認して、その処理を終了する。
【0114】
一方、ホスト5a1−2においては、参加要求破棄を通知するためのデータが送信されてきたため、そのステップS31の判断処理はYESとなり、ホスト5a1−2は、再度、参加要求を表すデータ(IPパケットデータD2)をスイッチ13a−1等を介してルータ11に送信し(ステップS30参照)、再度、ルータ11から参加要求破棄を通知するためのデータが送信されてきたか否かを定期的に判断している(ステップS31参照)。
【0115】
このとき、ホスト5a1−2から大量の参加要求ではなく、通常の1つの参加要求を表すIPパケットデータD2がルータ11に送信されている場合、ルータ11は、この参加要求を受信してその受信頻度を確認し(ステップS40、ステップS41参照)、受信された参加要求の受信頻度が上記閾値以下か否か判断する(ステップS42参照)。
【0116】
今、ホスト5a1−2から大量の参加要求が発生していないため、ステップS42の判断はYES(参加要求の受信頻度が閾値以下である)となり、ルータ11は、その参加要求に対応するホスト5a1−2のIPアドレスを上記所定のマルチキャストグループに対応するマルチキャストアドレスに対応付けてアドレステーブルATに格納してホスト5a1−2の参加登録を行う(ステップS46)。
【0117】
一方、ホスト5a1−2は、ステップS31の判断処理を一定時間繰り返し実行しており、ステップS46の参加登録処理の結果、参加要求の破棄を通知するためのデータが非送信となるため、ホスト5a1−2のステップS31の判断はNO(参加要求破棄を通知するためのデータ非送信)となり、ホスト5a1−2は、参加要求が無事受付られたことを確認して、その処理を終了する。
【0118】
次に、ホスト5a1−1およびホスト5a1−2から離脱要求がルータ11に送信された際のシーケンスについて説明する。
【0119】
今、少なくともサブネットSb1のホスト5a1−1およびホスト5a1−2が上記所定のマルチキャストグループに参加しているものとする。
【0120】
このとき、ホスト5a1−2が上記所定のマルチキャストグループから離脱したい場合、ホスト5a1−2は、その離脱要求を表すデータを所定の通信プロトコルであるIPプロトコルに基づくデータフォーマットに変換してスイッチ13a−1に送信する。
【0121】
すなわち、ホスト5a1−2は、第1の実施の形態と同様に、離脱要求を表すIPパケットデータを生成し、このIPパケットデータを通信ケーブルL1−1および物理ポートPO1−1を介してスイッチ13a−1に送信する(ステップS35)。
【0122】
次いで、ホスト5a1−2は、ルータ11から離脱要求破棄を通知するためのデータが送信されてきたか否かを定期的に判断している(ステップS36)。
【0123】
一方、送信されたIPパケットデータは、スイッチ13a−2を介してIPパケットデータD2aとしてルータ11に送信される(図5参照)。
【0124】
このとき、ホスト5a1−1からも、ホスト5a1−2からの参加要求送信タイミングと略同時に、例えば大量の参加要求(IPパケットデータD2aと同様のデータフォーマットを有するIPパケットデータD1a)がルータ11に送信されており(ステップS35参照)、ホスト5a1−2も上記定期的な判断処理が実行されている(ステップS36参照)。
【0125】
一方、ルータ11は、ホスト5a1−1および5a1−2から送信されてきた離脱要求を対応するI/F20a1および20a2を介して受信してバッファ22に蓄積し(ステップS50)、受信された離脱要求の頻度を確認し(ステップS51)、確認した離脱要求の頻度に応じて破棄処理を行うか否か判断する。
【0126】
すなわち、ルータ11は、確認した離脱要求の受信頻度が予め設定された閾値以下か否か判断する(ステップS52)。
【0127】
今、ルータ11に対してホスト5a1−1から大量の離脱要求が送信されているため、ステップS52の判断はNO(離脱要求の受信頻度が閾値を超えている)となり、ルータ11は、受信された離脱要求の一部を破棄する(ステップS53)。
【0128】
例えば、第2の実施の形態では、ステップS53の処理として、ルータ11は、ホスト5a1−1から送信されてきた全ての離脱要求を破棄する。
【0129】
続いて、ルータ11は、破棄しなかった分の離脱要求、すなわち、破棄した離脱要求を除く残りの離脱要求に対応するホスト(本実施の形態では、ホスト5a1−2)のIPアドレスをアドレステーブルATにおける所定のマルチキャストグループから削除して上記所定のマルチキャストグループに対応するホスト5a1−2の参加登録を削除する(ステップS54)。
【0130】
次いで、ルータ11は、離脱要求が破棄されたホスト(本実施の形態では、ホスト5a1−1)に対して、その離脱要求の破棄を通知するためのデータ(IPパケットデータ)を、ホスト5a1−1のIPアドレスおよびMACアドレスを宛先として、スイッチ13a−1等を介してホスト5a1−1に送信する(ステップS55)。
【0131】
このとき、ホスト5a1−2は、ステップS36の判断処理を一定時間繰り返し実行しており、ステップS54の参加登録破棄処理の結果、離脱要求破棄を通知するためのデータが非送信となるため、ホスト5a1−2のステップS36の判断はNO(離脱要求破棄を通知するためのデータ非送信)となり、ホスト5a1−2は、離脱要求が無事受付られたことを確認して、その処理を終了する。
【0132】
一方、ホスト5a1−1においては、離脱要求破棄を通知するためのデータが送信されてきたため、そのステップS36の判断処理はYESとなり、ホスト5a1−1は、再度、離脱要求を表すデータ(IPパケットデータD1a)をスイッチ13a−1等を介してルータ11に送信し(ステップS35参照)、再度、ルータ11から離脱要求破棄を通知するためのデータが送信されてきたか否かを定期的に判断している(ステップS36参照)。
【0133】
このとき、ホスト5a1−1から大量の離脱要求ではなく、通常の1つの離脱要求を表すIPパケットデータD2aがルータ11に送信されている場合、ルータ11は、この離脱要求を受信してその受信頻度を確認し(ステップS50、ステップS51参照)、受信された離脱要求の受信頻度が上記閾値以下か否か判断する(ステップS52参照)。
【0134】
今、ホスト5a1−1から大量の離脱要求が発生していないため、ステップS52の判断はYES(離脱要求の受信頻度が閾値以下である)となり、ルータ11は、その離脱要求に対応するホスト5a1−1のIPアドレスをアドレステーブルATにおける所定のマルチキャストグループから削除して上記所定のマルチキャストグループに対応するホスト5a1−1の参加登録を削除する(ステップS56)。
【0135】
一方、ホスト5a1−1は、ステップS36の判断処理を一定時間繰り返し実行しており、ステップS56の参加登録破棄処理の結果、離脱要求破棄を通知するためのデータが非送信となるため、ホスト5a1−1のステップS36の判断はNO(離脱要求破棄を通知するためのデータ非送信)となり、ホスト5a1−1は、離脱要求が無事受付られたことを確認して、その処理を終了する。
【0136】
以上述べたように、第2の実施の形態によれば、第1の実施の形態と同様に、ホスト5a1−1およびホスト5a1−2から所定のマルチキャストグループに対する複数の参加/離脱要求が送信されてきた際に、その参加/離脱要求の受信頻度と所定の閾値とを比較し、その比較の結果、受信頻度が所定の閾値を超えた場合においては、ルータ11の処理により、その複数の参加/離脱要求の内の少なくとも一部を破棄することができる。
【0137】
特に、本実施の形態によれば、参加/離脱要求が破棄されたホストに対して、その参加/離脱要求の破棄を通知するためのデータを送信することができる(ステップS45、S55参照)。
【0138】
この結果、参加/離脱要求が破棄されたホストは、送信されてきた参加/離脱要求の破棄を通知するデータに応じて、その参加/離脱要求の未受付状態を把握することができ、再度、参加/離脱要求をルータ11に対して送信することができる。
【0139】
したがって、第1の実施の形態におけるルータ処理負荷の抑制および処理能力の維持等の効果に加えて、所定のマルチキャストグループに対して参加/離脱したいホストに係わる参加登録処理/参加登録削除処理を効率良く行うことができる。
【0140】
なお、第2の実施の形態におけるステップS10、S18の参加要求または離脱要求の頻度を確認する処理として、略同時に送信されてきた参加要求または離脱要求の数をカウントしたが、本発明はこの構成に限定されるものではなく、一定時間毎の参加要求の送信回数または離脱要求の送信回数をカウントしてもよい。
【0141】
また、第2の実施の形態においても、第1の実施の形態と同様に、ステップS41、S51の参加要求または離脱要求の頻度を確認する処理として、予め所定の帯域幅を閾値としてルータ11が保持し、この閾値を超えた帯域の参加要求または離脱要求が送信されてきた場合、上記閾値を超えた参加要求または離脱要求が生じたものと判断してもよい。
【0142】
さらに、第2の実施の形態においても、第1の実施の形態と同様に、ステップS41、S51の参加要求または離脱要求の頻度を確認する処理を行う前に、ルータ11は、受信した参加要求のポリシング、すなわち、所定の単位毎に参加要求または離脱要求を分類し、分類した参加要求毎に受信頻度を確認してもよい(図8参照)。
【0143】
この所定の単位としては、第1の実施の形態と同様に、マルチキャストアドレス、ソースアドレス、TCP/UDPポート番号、TOSフィールド値、サブネットアドレス、物理ポート識別情報、VLANのID、VLANのプライオリティ値、宛先MACアドレスおよび送信元MACアドレスの内の少なくとも1つあるいはその組合せが適用可能である。
【0144】
また、第2の実施の形態では、参加/離脱要求を送信したホストが同一サブネットSb1の2台のホストとして説明したが、本発明はこの構成に限定されるものではなく、同一のサブネットあるいは異なるサブネットに属する3台以上のホストからの参加/離脱要求が送信されてきた場合であっても、ルータ11は、同様に動作して参加/離脱要求の少なくとも一部の破棄を行うことができる。
【0145】
なお、第1および第2の実施の形態においては、所定のマルチキャストグループに対する参加/離脱に関する処理について説明したが、本発明はこの構成に限定されるものではなく、複数のマルチキャストグループに対する参加/離脱についても、それぞれのマルチキャストグループ毎に同時に行うことができる。
【0146】
また、第1および第2の実施の形態においては、各スイッチ13a−1〜13a−pをVLAN対応の装置としたが、本発明はこの構成に限定されるものではなく、VLAN非対応のスイッチであってもよい。この場合、VLANのIDおよびVLANのプライオリティ値は、ポリシング時の所定の単位からは除かれる。
【0147】
そして、第1および第2の実施の形態における各スイッチ13a−1〜13a−pは、ハブ等の他の中継機器でもよく、また、上記各スイッチ13a−1〜13a−pの機能をルータ11に搭載し、各スイッチ13a−1〜13a−p(ハードウェア)を省くこともできる。
【0148】
さらに、第1および第2の実施の形態においては、所定の通信プロトコルをTCP(UDP)/IPとし、通信ネットワークをインターネットとしたが、本発明はこの構成に限定されるものではなく、他の通信プロトコルに基づく通信ネットワークを経由したマルチキャスト通信に対しても適用可能である。
【0149】
【発明の効果】
以上述べたように本発明に係わるマルチキャスト通信方法、マルチキャスト通信用ルータ装置およびマルチキャスト通信用プログラムによれば、複数の受信ホストから、マルチキャストグループへの参加要求を表す複数の要求データ、およびマルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データが送信されてきた場合、その複数の要求データの頻度を確認し、確認した複数の要求データの頻度に応じて、その複数の要求データの少なくとも一部を破棄することができる。
【0150】
このため、ある受信ホストからマルチキャストグループに対して大量の参加/離脱要求がマルチキャスト通信用ルータ装置に送信されてきた場合であっても、そのルータ装置の処理負荷の増大を抑制してその処理能力を高く維持することができる。
【0151】
また、本発明に係わるマルチキャスト通信方法、マルチキャスト通信用ルータ装置およびマルチキャスト通信用プログラムによれば、参加/離脱要求を破棄した受信ホストに対して、その参加/離脱要求の破棄を通知するための破棄通知データを送信しているため、参加/離脱要求が破棄された受信ホストは、送信されてきた破棄通知データに応じて、その参加/離脱要求の未受付状態を把握することができ、再度、参加/離脱要求をルータ装置に対して送信することができる。
【0152】
すなわち、参加/離脱要求を送信した受信ホストが、その参加/離脱要求が未受付状態のまま放置される可能性を回避することができ、マルチキャストグループに対して参加/離脱したい受信ホストに係わる参加登録処理/参加登録削除処理を効率良く行うことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係わるマルチキャスト通信用ルータ装置を含むマルチキャスト通信システムの概略構成を示す図。
【図2】図1に示すマルチキャスト通信システムにおけるマルチキャストグループへの参加登録に関するシーケンスを示すシーケンス図。
【図3】図2に示すシーケンスに対応する図1に示すホスト5a1−1およびホスト5a1−2の処理の一例を示す概略フローチャート。
【図4】図2に示すシーケンスに対応する図1に示すルータ11の処理の一例を示す概略フローチャート。
【図5】図1に示すマルチキャスト通信システムにおけるマルチキャストグループからの離脱(参加登録削除)に関するシーケンスを示すシーケンス図。
【図6】図5に示すシーケンスに対応する図1に示すホスト5a1−1およびホスト5a1−2の処理の一例を示す概略フローチャート。
【図7】図5に示すシーケンスに対応する図1に示すルータ11の処理の一例を示す概略フローチャート。
【図8】図4、図7に示すルータ11の処理の変形例を示す概略フローチャート。
【図9】本発明の第2の実施の形態に係わるマルチキャスト通信システムにおけるマルチキャストグループへの参加登録に関するシーケンスを示すシーケンス図。
【図10】図9に示すシーケンスに対応する図1に示すホスト5a1−1およびホスト5a1−2の処理の一例を示す概略フローチャート。
【図11】図9に示すシーケンスに対応する図1に示すルータ11の処理の一例を示す概略フローチャート。
【図12】本発明の第2の実施の形態に係わるマルチキャスト通信システムにおけるマルチキャストグループからの離脱(参加登録削除)に関するシーケンスを示すシーケンス図。
【図13】図12に示すシーケンスに対応する図1に示すホスト5a1−1およびホスト5a1−2の処理の一例を示す概略フローチャート。
【図14】図12に示すシーケンスに対応する図1に示すルータ11の処理の一例を示す概略フローチャート。
【図15】従来の受信側ベースのプロトコルに基づくホストおよびルータ間のシーケンスの一例を示すシーケンス図。
【符号の説明】
1…マルチキャスト通信システム
3…サーバ
4…通信ネットワーク
5a1−1〜5a1−m、5a2−1〜5a2−n、・・・、5ap−1〜5ap−o…受信ホスト
11…ルータ装置
15a−1〜15a−p…通信回線
20a〜20a
22…バッファ
24…CPU
26…メモリ
28…I/F
AT…アドレステーブル
1−1〜L1−m、L2−1〜L2−n、・・・、Lp−1〜Lp−o…通信ケーブル
PO1−1〜PO1−m、PO2−1〜PO2−n、・・・、POp−1〜POp−o…物理ポート
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a multicast communication method in a network using IP (Internet Protocol) or the like as a communication protocol, a router device for multicast communication, and a program for multicast communication.
[0002]
[Prior art]
As a communication protocol, for example, multicast communication using the IP (hereinafter also referred to as IP multicast) is performed.
[0003]
In this IP multicast, a communication network and a router device for multicast communication (hereinafter also abbreviated as a router) for a large number of hosts {meaning a computer capable of communicating via a communication network (in the case of IP, the Internet)}. When packet data is transmitted via the Internet, a receiver-based protocol such as IGMP (Internet Group Management Protocol) / MLD (Multicast Listener Discovery) is used as a protocol between a large number of hosts and routers. There are many cases.
[0004]
The receiver-side protocols include IGMPv1 (RFC1112 Host Extensions for IP Multicasting), IGMPv2 (RFC2236 Internet Group Management Protocol Version 2), IGMPv2 (RFC3376 Internet Group Management Protocol Version 3), and MLDv1 (RFC 2710 Multicast Listener Discovery for IPv6) Etc. (for example, refer to Non-Patent Documents 1 to 4), for all hosts participating in a multicast group to which an address (multicast address) via a communication network is assigned according to the above-described reception-based protocol. Packet data is transmitted.
[0005]
Here, FIG. 15 shows an example of a sequence between the host and the router based on the reception side base protocol which is the prior art.
[0006]
That is, when a certain host wants to participate in a predetermined multicast group, this host transmits data representing a participation request for the multicast group to be joined (abbreviated as a participation request) to the router (step S100). The router that has received the participation request performs participation registration of the host that has transmitted the participation request (step S101).
[0007]
Further, data representing participation confirmation (abbreviated as participation confirmation) is periodically transmitted from the router to all hosts registered to participate in the multicast group (step S102), and continues to participate in the multicast group. In this case, each host transmits data indicating participation (hereinafter abbreviated as a response during participation) to the router in response to the transmitted participation confirmation. As a result, the router can grasp the participation status of all the hosts participating in the multicast group by confirming reception of the transmitted response during participation.
[0008]
On the other hand, when the host wants to leave the multicast group to which it participated, this host transmits data representing a leave request for the multicast group to leave (abbreviated as a leave request) to the router (step S104). The router that has received the leave request transmits data representing the leave confirmation (abbreviated as leave confirmation) to the corresponding host (step S105).
[0009]
Then, the router waits for a certain period of time, and when there is no response to the departure confirmation from the corresponding host, deletes the registration of the host to join the multicast group (step S106).
[0010]
As is apparent from the above-described sequence, when a host joins or leaves a multicast group based on a receiver-based protocol, the join request or leave request is sent from the host to the router at a predetermined timing on the host side. It has become.
[0011]
[Non-Patent Document 1]
"Host Extensions for IP Multicasting", [online], August 1989, S. Deering (Stanford University), [Search March 9, 2003], Internet <URL: http://www.ietf.org/ rfc / rfc1112.txt? number = 1112>
[0012]
[Non-Patent Document 2]
"Internet Group Management Protocol Version 2", [online], November 1997, W. Fenner (Xerox PARC), [Search March 9, 2003], Internet <URL: http://www.ietf.org /rfc/rfc2236.txt?number=2236>
[0013]
[Non-Patent Document 3]
"Internet Group Management Protocol Version 3", [online], October 2002, B. Cain (Cereva Network), S. Deering & I. Kouvelas (Cisco Systems), B. Fenner (AT & T Labs-Research), A. Thyagarajan (Ericson), [March 9, 2003 search], Internet
<URL: http://www.ietf.org/rfc/rfc3376.txt?number=3376>
[0014]
[Non-Patent Document 4]
"Multicast Listener Discovery for IPv6", [online], October 1999, S. Deering (Cisco Systems), B. Fenner (AT & T Research), B. Haberman (IBM), [March 9, 2003 search] ,the Internet
<URL: http://www.ietf.org/rfc/rfc2710.txt?number=2710>
[0015]
[Problems to be solved by the invention]
However, in the multicast communication based on the above-described reception-side communication protocol, the transmission timing of the join request and the leave request are both set on the host side.
[0016]
For this reason, for example, when a host-side application hangs up so that a large number of participation requests and / or withdrawal requests (hereinafter abbreviated as joining / leaving requests) are generated, or a malicious application such as a virus is hosted. When a large number of join / leave requests are generated from a host by this malicious application, a large number of join / leave requests are sent to the router almost simultaneously from a plurality of hosts including the host. there is a possibility.
[0017]
At this time, the following problems have occurred in multicast communication based on the communication protocol based on the receiving side.
[0018]
In other words, the router has to process a large number of transmitted join / leave requests, and the first problem arises that there is a possibility that the processing on the router side will increase and affect its operation.
[0019]
Furthermore, since there are a large number of join / leave requests, the host cannot accept all join / leave requests, and if some of the join / leave requests are missed, the join / leave requests are not accepted. On the side, there is a second problem that it is impossible to recognize that the participation / exit request has not been accepted.
[0020]
The present invention has been made in view of the above-described circumstances. Even when a large number of join / leave requests are transmitted from the receiving host side to the multicast communication router device, the multicast communication router device It is a first object of the present invention to provide a multicast communication method, a multicast communication router device, and a multicast communication program that can suppress an increase in processing load and maintain a high processing capacity.
[0021]
In addition, the present invention has been made in view of the above-described circumstances, and even when a join / leave request is not accepted on the multicast communication router device side, the join / leave request has not been received yet. It is a second object of the present invention to provide a multicast communication method, a multicast communication router device, and a multicast communication program capable of grasping the unacknowledged state of the join / leave request on the host side.
[0022]
[Means for Solving the Problems]
  In order to achieve the above-mentioned purpose,According to a first aspect of the invention,Data for a predetermined multicast group transmitted from the transmission source host to the router device via the communication network is transmitted to all the reception hosts registered to participate in the predetermined multicast group according to the communication protocol based on the reception side. In the multicast communication method, the router device participates in the multicast group, a plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and Receiving at least one of a plurality of request data among a plurality of request data representing a request to leave the multicast group transmitted from a plurality of receiving hosts, and confirming a frequency of the received plurality of request data And confirmed the above A step of discarding at least a part of the plurality of request data according to the frequency of the request data, and receiving the remaining request data excluding the discarded request data, wherein the received request data represents a participation request If the receiving host corresponding to the received request data is registered for participation in the predetermined multicast group and the received request represents a withdrawal request, the receiving host corresponding to the received request data for the predetermined multicast group Deleting the participation registration.
[0023]
  In particular,According to a second aspect of the invention,When discarding at least some of the plurality of request data, further comprising: sending discard notification data for notifying the discarding reception host of the discarded at least some request data. ing.
[0024]
  In order to achieve the above-mentioned purpose,According to a third aspect of the invention,Multicast communication in which data for a predetermined multicast group transmitted from a transmission source host via a communication network is transmitted to all receiving hosts registered to participate in the predetermined multicast group according to a reception-side communication protocol Router device, a plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and a plurality of receiving hosts participating in the multicast group Frequency confirmation means for receiving at least one of the plurality of request data of the plurality of request data representing the request to leave from the multicast group transmitted from and confirming the frequency of the plurality of received request data The plurality of request data Depending on the degree, a discarding unit that discards at least a part of the plurality of request data, and the remaining request data other than the discarded request data are received, and if the received request data represents a participation request, the request is accepted Participation registration means for registering the receiving host corresponding to the request data to the predetermined multicast group, and when the received request represents a withdrawal request, the receiving host corresponding to the received request data for the predetermined multicast group Registration deletion means for deleting the participation registration.
[0025]
  In particular,According to a fourth aspect of the invention,When at least a part of the plurality of request data is discarded, a discard notification data transmission for transmitting the discard notification data for notifying the discarding reception host of the discarded at least a part of the request data is received. Means are further provided.
[0026]
  Furthermore, in order to achieve the above-mentioned purpose,According to a fifth aspect of the present invention,For transmitting data for a predetermined multicast group transmitted from a transmission source host via a communication network to all reception hosts registered to participate in the predetermined multicast group according to a communication protocol based on the reception side. A multicast communication program readable by a router device, a plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group; A plurality of request data received and received at least one of a plurality of request data representing a request to leave the multicast group transmitted from a plurality of receiving hosts participating in the multicast group Check the frequency of data And means for discarding at least part of the plurality of request data according to the frequency of the confirmed plurality of request data, accepting the remaining request data excluding the discarded request data, and accepting the received request If the data represents a join request, the receiving host corresponding to the accepted request data is registered to participate in the predetermined multicast group, and if the accepted request represents a withdrawal request, the receiving host corresponding to the accepted request data And a means for deleting the participation registration for the predetermined multicast group.
[0027]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of a multicast communication method, a multicast communication router device, and a multicast communication program according to the present invention will be described with reference to the accompanying drawings.
[0028]
(First embodiment)
FIG. 1 is a diagram showing a schematic configuration of a multicast communication system including a multicast communication router apparatus according to the first embodiment of the present invention.
[0029]
As shown in FIG. 1, the multicast communication system 1 includes a predetermined communication protocol {for example, TCP as a transport layer communication protocol; UDP; User Datagram Protocol); and IP as a network layer communication protocol. A server (computer) 3 which is a host of a transmission source of data such as multimedia contents having a data format according to the Internet communication protocol, etc., and a communication network 4 such as the Internet capable of communicating data according to the predetermined communication protocol , A plurality of receiving hosts (computers; simply referred to as hosts) 5a interconnected on a small network (subnet) Sb1, Sb2,.1-1~ 5a1-m5a2-1~ 5a2-n... 5ap-1~ 5apoAnd.
[0030]
The multicast communication system 1 receives data from a server 3 to a predetermined multicast group distributed by multicast communication based on a predetermined communication protocol, from a plurality of receiving hosts 5a.1-1~ 5a1-m5a2-1~ 5a2-n... 5ap-1~ 5apoThe system simultaneously distributes to at least some receiving hosts participating in the predetermined multicast group.
[0031]
That is, as shown in FIG. 1, the multicast communication system 1 is connected to a server 3 via a communication line 7 such as a dedicated line, and a predetermined communication protocol is connected to the server 3 via a communication network 4. For example, a router 9 having a routing function when communicating packet data that is data based on the above is provided.
[0032]
In addition to the routing function for communicating packet data between the communication network 4 and the subnets Sb1 to Sbp, the multicast communication system 1 has a multicast communication function including a function for managing host participation / leaving with respect to the multicast group. A multicast communication router device (hereinafter abbreviated as a router) 11 is provided.
[0033]
Further, in the subnet Sb1 of the multicast communication system 1, the host 5a1-1~ 5a1-mCommunication cable L for each1-1~ L1-mIs connected, and this communication cable L1-1~ L1-mIs a physical port PO of a switch (switching hub) 13a-1 such as a LAN (Local Area Network) switch.1-1~ PO1-mTo the host 5a.1-1~ 5a1-mAre interconnected via the switch 13a-1 so that they can communicate with each other.
[0034]
The switch 13a-1 is connected to the physical port PO.1-m + 1The communication line 15 a-1 is communicably connected to the communication line 15 a-1, and the communication line 15 a-1 is communicably connected to the router 11.
[0035]
Hereinafter, all the subnets Sb2 to Sbp have the same configuration as that of the subnet Sb1.
[0036]
That is, in the subnet Sb2, the host 5a2-1~ 5a2-nCommunication cable L for each2-1~ L2-nIs connected to this communication cable L2-1~ L2-nIs the physical port PO of the switch 13a-22-1~ PO2-nTo the host 5a.2-1~ 5a2-nAre interconnected via the switch 13a-2 so that they can communicate with each other.
[0037]
The switch 13a-2 is connected to the physical port PO.2-n + 1The communication line 15a-2 is communicably connected to the communication line 15a-2, and the communication line 15a-2 is communicably connected to the router 11.
[0038]
Further, in the subnet Sbp, the host 5ap-1~ 5apoCommunication cables Lp-1 to Lp-o are connected to each, and this communication cable Lp -1~ LpoIs the physical port PO of the switches 13a-pp-1~ POpoTo the host 5a.p-1~ 5apoAre interconnected via the switches 13a-p so that they can communicate with each other.
[0039]
The switches 13a-p are connected to the physical port PO.p-o + 1The communication line 15a-p is communicably connected to the communication line 15a-p. The communication line 15a-p is communicably connected to the router 11.
[0040]
Further, the switch 13a-1 has a VLAN (Virtual LAN) function, and the corresponding physical port PO.1 -1~ PO1 m + 1Are arbitrarily divided into groups, IDs which are identification information are set in the respective groups, and can be used as different virtual LANs, that is, VLANs. Further, the switch 13a-1 can set a priority value (defined as a value representing the priority between the plurality of VLANs) for the plurality of set VLANs.
[0041]
The switches 13a-2 to 13a-p also have the same VLAN function and priority value setting function as the switch 13a-1.
[0042]
As shown in FIG. 1, the router 11 in the first embodiment is connected to the communication lines 15a-1 to 15a-p connected to the switches 13a-1 to 13a-p, and is connected to the subnets Sb1 to Sbp. And interfaces (I / F) 20a1 to 20ap for performing communication interface processing between the router 11 and a buffer (cache memory) 22 for temporarily storing packet data received via the interfaces 20a1 to 20ap, It has.
[0043]
Further, the router 11 includes a computer (CPU) 24 communicatively connected to the interfaces (I / F) 20 a 1 to 20 ap and the buffer 22, a memory 26 accessible by the CPU 24, and between the router 11 and the communication network 4. Interface processing I / F 28 for data communication.
[0044]
The memory 26 stores destination data included in packet data having a data format based on the predetermined communication protocol (data indicating the destination of data via the communication network 4, for example, an IP address in the case of the Internet based on IP). ), A routing table RT in which data representing a route to the destination is stored is stored.
[0045]
Further, the memory 26 stores the CPU 24 in accordance with the predetermined protocol and a receiver-based communication protocol corresponding to the predetermined communication protocol (for example, IGMP or MLD when the predetermined communication protocol is an Internet communication protocol). And a program P for executing host management processing (group joining / leaving processing) in multicast communication processing based on FIGS. 4 and 7 described later.
[0046]
The program P may be preinstalled in the memory 26, or stored in various recording media such as a magnetic disk and a semiconductor memory, and the recording medium set in the drive device (not shown) by the CPU 24 of the router 11 May be loaded into the memory 26.
[0047]
Further, the memory 26 has an address management table AT for storing the IP address of the receiving host participating in the predetermined multicast group in association with the multicast address representing the destination via the communication network 4 of the predetermined multicast group. It is remembered.
[0048]
Next, regarding the overall operation of the multicast communication system 1 according to the first embodiment, in particular, the host 5a.1-1, Host 5a1-2The operation of the router 11 will be mainly described. In order to make the description more specific, the case where the predetermined communication protocol is the Internet communication protocol will be described.
[0049]
First, the host 5a1-1And host 5a1-1A sequence when a participation request is transmitted to the router 11 will be described.
[0050]
Now, the host 5a of the subnet Sb11-1And host 5a1-1Other hosts (host 5a)1-3~ 5a1-m5a2-1~ 5a2-nAnd 5ap-1~ 5apo) At least a part of the predetermined multicast group.
[0051]
At this time, the host 5a1-1If the host wants to join the predetermined multicast group, the host 5a1-1Converts the data representing the participation request (hereinafter also abbreviated as a participation request) into a data format based on the IP protocol, which is a predetermined communication protocol, and transmits the data to the switch 13a-1.
[0052]
That is, the host 5a1-1Adds a MAC (Media Access Control) address, which is identification information of the own host, and a MAC address, which is identification information of the router 11, to the data representing the participation request as a MAC header, and further, the own host representing the transmission source of the participation request IP address (source address), the predetermined multicast address indicating the destination of the participation request, the subnet address that is identification information of the subnet Sb1 to which it belongs, the TCP / UDP port number, and the TOS (Type of Service) indicating the IP service quality An IP header including a field value is added to generate IP packet data, and the IP packet data is transmitted to the communication cable L1-1And physical port PO1-1Is transmitted to the switch 13a-1 (step S1).
[0053]
Next, the host 5a1-1Waits until the data indicating the acceptance notification of the participation request is transmitted (step S2), and periodically determines whether the data indicating the notification of acceptance of the participation request has been transmitted from the router 11 (step S2). S3).
[0054]
On the other hand, the transmitted IP packet data is transferred to the corresponding physical port PO via the switch 13a-1.1-1The VLAN ID and priority value set for is added to the MAC header. The IP packet data D1 (see FIG. 1) is switched to the communication line 15a-1 by the switch 13a-1 and transmitted to the router 11 (see FIG. 2).
[0055]
At this time, the host 5a1-2Host 5a1-1At substantially the same time as the participation request transmission timing from, for example, a large amount of participation requests (IP packet data D2 having the same data format as the IP packet data D1) are transmitted to the router 11 (see step S1). And the host 5a1-2Also host 5a1-1In the same manner as in the standby state (see step S2), the above-described periodic determination process is executed (see step S3).
[0056]
On the other hand, the CPU 24 of the router 11 (hereinafter simply referred to as the router 11) is connected to the host 5a.1-1And 5a1-2The participation request transmitted from the host is received via the corresponding I / Fs 20a1 and 20a2 and stored in the buffer 22 (step S9), and the frequency of the received participation requests (the number of participation requests received substantially simultaneously) is obtained. Confirmation (step S10), it is determined whether or not to perform the discarding process according to the confirmed frequency of participation request.
[0057]
That is, the router 11 determines whether or not the reception frequency of the confirmed participation request is equal to or less than a preset threshold (for example, an appropriate value set according to the subnets Sb1 to Sbp through which the router 11 passes) (step S11). ).
[0058]
Now, the host 5a is connected to the router 11.1-2Since a large number of participation requests are transmitted, the determination in step S11 is NO (the reception frequency of the participation request exceeds the threshold value), and the router 11 discards a part of the received participation request (step S12).
[0059]
For example, in the first embodiment, as the process of step S12, the router 11 performs the host 5a.1-2Discard all participation requests sent from.
[0060]
Subsequently, the router 11 joins the participation requests that have not been discarded, that is, the hosts corresponding to the remaining participation requests excluding the discarded participation requests (in this embodiment, the host 5a1-1) Is stored in the address table AT in association with the multicast address corresponding to the predetermined multicast group, and the host 5a.1-1Is registered (step S13), and data (IP packet data) indicating acceptance notification of the participation request is stored in the host 5a.1-1Host 5a via the switch 13a-1 etc. with the IP address and MAC address of1-1(Step S14).
[0061]
As a result, the host 5a1-1The determination in step S3 is YES (data transmission indicating participation request acceptance notification), and the host 5a1-1Determines that the request for safe participation has been accepted, and ends the process.
[0062]
On the other hand, the host 5a1-2Repeats the determination process of step S3 for a certain period of time, and if no data indicating the participation request acceptance notification is transmitted during that time, the determination of step S3 is NO (data not indicating the participation request reception notification), and again Then, data representing the participation request (IP packet data D2) is transmitted to the router 11 via the switch 13a-1 or the like (see step S1).
[0063]
At this time, the host 5a1-2When the IP packet data D2 representing one normal participation request is transmitted to the router 11 instead of a large number of participation requests, the router 11 receives this participation request and confirms the reception frequency (step S9). In step S10), it is determined whether the reception frequency of the received participation request is equal to or lower than the threshold value (see step S11).
[0064]
Now host 5a1-2Since a large number of participation requests have not occurred, the determination in step S11 is YES (the reception frequency of the participation request is equal to or less than the threshold value), and the router 11 corresponds to the host 5a corresponding to the participation request.1-2Is stored in the address table AT in association with the multicast address corresponding to the predetermined multicast group.1-2Is registered (step S15), and data (IP packet data) indicating acceptance notification of the participation request is stored in the host 5a.1-2Host 5a via the switch 13a-1 etc. with the IP address and MAC address of1-2(Step S16).
[0065]
As a result, the host 5a1-2The determination in step S3 is YES (data transmission indicating participation request acceptance notification), and the host 5a1-2Determines that the request for safe participation has been accepted, and ends the process.
[0066]
Next, the host 5a1-1And host 5a1-1A sequence when a withdrawal request is transmitted from the router 11 to the router 11 will be described.
[0067]
Now, at least the host 5a in the subnet Sb11-1And host 5a1-2Are participating in the predetermined multicast group.
[0068]
At this time, the host 5a1-2If the user wants to leave the predetermined multicast group, the host 5a1-2Generates IP packet data having a data format substantially the same as the participation request based on data representing the withdrawal request (hereinafter also abbreviated as a withdrawal request).1-2And physical port PO1-2Is transmitted to the switch 13a-1 (step S5).
[0069]
Next, the host 5a1-2Waits until the data indicating the notification of acceptance of the withdrawal request is transmitted (step S6), and periodically determines whether or not the data indicating the notification of acceptance of the withdrawal request has been transmitted from the router 11 (step S6). S7).
[0070]
On the other hand, the transmitted IP packet data is transferred to the corresponding physical port PO via the switch 13a-1.1-2The VLAN ID and priority value set for is added to the MAC header. The IP packet data D2a (see FIG. 5) is switched to the communication line 15a-1 by the switch 13a-1 and transmitted to the router 11.
[0071]
At this time, the host 5a1-1Host 5a1-2At substantially the same time as the withdrawal request transmission timing from the network, for example, a large amount of withdrawal requests (IP packet data D1a having the same data format as the IP packet data D1 and D2a) are transmitted to the router 11 (see step S5). And the host 5a1-1Also host 5a1-2In the same manner as in (Step S6), the above-described periodic determination processing is executed (see Step S7).
[0072]
Router 11 is host 5a1-1And 5a1-2Is received via the corresponding I / F 20a1 and 20a2 and stored in the buffer 22 (step S17), the frequency of the received withdrawal request is confirmed (step S18), and the confirmed withdrawal request It is determined whether or not to perform the discarding process according to the frequency.
[0073]
That is, the router 11 determines whether or not the reception frequency of the confirmed withdrawal request is equal to or less than a preset threshold value (step S19).
[0074]
Now, the host 5a is connected to the router 11.1-1Since a large number of withdrawal requests have been transmitted from step S19, the determination in step S19 is NO (the reception frequency of the withdrawal request exceeds the threshold), and the router 11 discards a part of the received withdrawal request (step S20).
[0075]
For example, in the first embodiment, as the process of step S20, the router 11 performs the host 5a.1-1Discard all leave requests sent from.
[0076]
Subsequently, the router 11 removes the requests that have not been discarded, that is, the hosts corresponding to the remaining withdrawal requests excluding the discarded withdrawal requests (in this embodiment, the host 5a1-2) Is deleted from the predetermined multicast group in the address table AT, and the host 5a corresponding to the predetermined multicast group is deleted.1-2Is deleted (step S21), and data (IP packet data) indicating acceptance notification of the withdrawal request is stored in the host 5a.1-2Host 5a via the switch 13a-1 etc. with the IP address and MAC address of1-2(Step S22).
[0077]
As a result, the host 5a1-2The determination in step S7 is YES (data transmission indicating a withdrawal request acceptance notification), and the host 5a1-2Confirms that the withdrawal request has been successfully accepted, and ends the processing.
[0078]
On the other hand, the host 5a1-1Repeats the determination process of step S7 for a certain period of time, and if no data indicating a withdrawal request reception notification is transmitted during that time, the determination of step S7 is NO (data not indicating the separation request reception notification), and again Then, data representing the withdrawal request (IP packet data D1a) is transmitted to the router 11 via the switch 13a-1 or the like (see step S5).
[0079]
At this time, the host 5a1-1When the IP packet data D1a representing one normal leave request is transmitted to the router 11 instead of a large number of leave requests, the router 11 receives this leave request and confirms the reception frequency (step S17). In step S18, it is determined whether the frequency of reception of the received withdrawal request is equal to or less than the threshold value (see step S19).
[0080]
Now host 5a1-1Since a large number of participation requests have not occurred, the determination in step S19 is YES (the reception frequency of the withdrawal request is equal to or less than the threshold value), and the router 11 determines that the host 5a corresponding to the withdrawal request.1-1Is deleted from the multicast group in the address table AT, and the host 5a corresponding to the predetermined multicast group is deleted.1-1Is deleted (step S23), and data (IP packet data) indicating acceptance notification of the withdrawal request is stored in the host 5a.1-1Host 5a via the switch 13a-1 etc. with the IP address and MAC address of1-1(Step S23).
[0081]
As a result, the host 5a1-1The determination in step S7 is YES (data transmission indicating a withdrawal request acceptance notification), and the host 5a1-1Confirms that the withdrawal request has been successfully accepted, and ends the processing.
[0082]
As described above, according to the first embodiment, the host 5a1-1And host 5a1-2When a plurality of join / leave requests for a given multicast group are transmitted from the host, the reception frequency of the join / leave requests is compared with a predetermined threshold, and as a result of the comparison, the reception frequency exceeds the predetermined threshold. In such a case, at least a part of the plurality of join / leave requests can be discarded by the processing of the router 11.
[0083]
For this reason, even when a large number of join / leave requests are sent to the router 11 from a certain host to a predetermined multicast group, an increase in the processing load of the router 11 is suppressed and its processing capacity is kept high. can do.
[0084]
According to the first embodiment, the host 5a1-1And host 5a1-2On the side, it is possible to determine whether or not the participation / leaving request has been discarded based on the presence / absence of transmission of the participation / leaving acceptance notification. Depending on the determination result, the participation / leaving request is again sent to the router 11. Can be sent.
[0085]
As a result, even when the join / leave request is discarded once by the router 11, the router 11 can accept the join / leave request again.
[0086]
Note that the number of participation requests or withdrawal requests transmitted almost simultaneously is counted as processing for confirming the frequency of participation requests or withdrawal requests in steps S10 and S18 in the first embodiment. It is not limited to this, and the number of transmissions of participation requests or the number of transmissions of withdrawal requests per fixed time may be counted.
[0087]
In addition, as processing for confirming the frequency of the participation request or withdrawal request in steps S10 and S18 in the first embodiment, the router 11 holds a predetermined bandwidth as a threshold in advance, and a bandwidth participation request exceeding this threshold Alternatively, when a withdrawal request is transmitted, it may be determined that a participation request or withdrawal request exceeding the threshold value has occurred.
[0088]
Furthermore, before performing the process of confirming the frequency of the participation request or withdrawal request in steps S10 and S18 in the first embodiment, the router 11 performs policing of the received participation request, that is, a participation request for each predetermined unit. Alternatively, the withdrawal request may be classified and the reception frequency may be confirmed for each classified participation request.
[0089]
For example, as shown in FIG. 8, the router 11 is connected to the host 5a.1-1And 5a1-2After receiving the participation request transmitted from the corresponding I / F 20a1 and 20a2 and storing it in the buffer 22 (see step S9), the received participation request is policed (classified) for each predetermined unit (see FIG. Step S9a).
[0090]
As this predetermined unit, for example, the multicast address included in the IP header of the participation request (IP packet data D1, D2), the source address of the transmission source host included in the IP header of the participation request, the TCP / UDP port of the participation request Number, TOS field value included in IP header of participation request, subnet address included in IP header of participation request, physical port identification information included in MAC header of participation request, VLAN ID included in MAC header of participation request, The priority value of the VLAN included in the MAC header of the participation request, the destination MAC address included in the MAC header of the participation request, and the source MAC address included in the MAC header of the participation request are set in a predetermined unit. Can be polished as
[0091]
For example, as shown in FIG. 8, in the process of step S9a, the router 11 performs policing with the source address of the source host included in the IP header of the participation request (IP packet data D1, D2), and in the process of step S10a, When the reception frequency is confirmed for each participation request that has been policed (classified), the host 5a1-2When a large number of participation requests from the host 5a are generated1-2It is possible to easily recognize that the frequency of receiving the participation request including the source address of is increasing.
[0092]
Therefore, in the process of step S11, the router 11 determines that the host 5a1-2At least a part of the participation request including the source address of can be easily discarded.
[0093]
Similarly, for example, in the process of step S9a, the router 11 polices with the VLAN ID included in the MAC header of the participation request (IP packet data D1, D2), and the participation request is policed (classified) in the process of step S10a. When the reception frequency is checked every time, if a large number of participation requests from hosts belonging to the same VLAN are generated, the reception frequency of participation requests from the hosts belonging to the same VLAN has increased. It can be easily recognized.
[0094]
Therefore, in the process of step S11, the router 11 can easily discard at least a part of the participation request from the host belonging to the same VLAN.
[0095]
Note that the policing process shown in FIG. 8 can be executed in the same manner as the policing for the participation request even when the withdrawal request is received.
[0096]
Furthermore, as the discarding process of at least a part of the join / leave request based on steps S12 and S20 in the first embodiment, it may be arbitrarily discarded, or a plurality of packet data representing a plurality of join / leave requests The average queue length representing the number of stays in the buffer 22 is obtained, and a part of the packet data representing a plurality of join / leave requests is discarded with a probability corresponding to the obtained average queue length. May be.
[0097]
In the first embodiment, the host that transmitted the join / leave request is described as two hosts in the same subnet Sb1, but the present invention is not limited to this configuration, and the same subnet or different Even when a join / leave request is transmitted from three or more hosts belonging to the subnet, the router 11 operates in the same manner and can discard at least a part of the join / leave request.
[0098]
(Second Embodiment)
In the multicast communication system according to the second embodiment of the present invention, the processing of the router 11 and the host 5a1-1And 5a1-2Unlike the multicast communication system 1 shown in FIG. 1, the hardware configuration is the same as that of the multicast communication system 1, and the description thereof is omitted.
[0099]
Next, regarding the overall operation of the multicast communication system 1 according to the second embodiment, in particular, the host 5a.1-1, Host 5a1-2The operation of the router 11 will be mainly described. In the second embodiment as well, in order to make the description more specific, a case where the predetermined communication protocol is the Internet communication protocol will be described.
[0100]
First, the host 5a1-1And host 5a1-2A sequence when a participation request is transmitted to the router 11 will be described.
[0101]
Now, the host 5a of the subnet Sb11-1And host 5a1-2Other hosts (host 5a)1-3~ 5a1-m5a2-1~ 5a2-nAnd 5ap-1~ 5apo) At least a part of the predetermined multicast group.
[0102]
At this time, the host 5a1-1If the host wants to join the predetermined multicast group, the host 5a1-1Converts the data representing the participation request into a data format based on the IP protocol, which is a predetermined communication protocol, and transmits the data to the switch 13a-1.
[0103]
That is, the host 5a1-1In the same manner as in the first embodiment, IP packet data representing a participation request is generated, and this IP packet data is transmitted to the communication cable L.1-1And physical port PO1-1Is transmitted to the switch 13a-1 (step S30).
[0104]
Next, the host 5a1-1Periodically determines whether or not data for notifying participation request cancellation has been transmitted from the router 11 in step S30 (step S31).
[0105]
On the other hand, the transmitted IP packet data is transmitted to the router 11 as IP packet data D1 (see FIG. 2) via the switch 13a-1.
[0106]
At this time, the host 5a1-2Host 5a1-1At substantially the same time as the participation request transmission timing from, for example, a large amount of participation requests (IP packet data D2 having the same data format as the IP packet data D1) are transmitted to the router 11 (see step S30), and the host 5a1-2The periodic determination process is also executed (see step S31).
[0107]
On the other hand, the router 11 is connected to the host 5a.1-1And 5a1-2Is received via the corresponding I / F 20a1 and 20a2 and stored in the buffer 22 (step S40), the frequency of the received participation request is confirmed (step S41), and the confirmed participation request It is determined whether or not to perform the discarding process according to the frequency.
[0108]
That is, the router 11 determines whether or not the reception frequency of the confirmed participation request is equal to or less than a preset threshold value (step S42).
[0109]
Now, the host 5a is connected to the router 11.1-2Since a large number of participation requests have been transmitted, the determination in step S42 is NO (the reception frequency of the participation request exceeds the threshold), and the router 11 discards a part of the received participation request (step S43).
[0110]
For example, in the second embodiment, as the process of step S43, the router 11 uses the host 5a.1-2Discard all participation requests sent from.
[0111]
Subsequently, the router 11 joins the participation requests that have not been discarded, that is, the hosts corresponding to the remaining participation requests excluding the discarded participation requests (in this embodiment, the host 5a1-1) Is stored in the address table AT in association with the multicast address corresponding to the predetermined multicast group, and the host 5a.1-1Is registered (step S44).
[0112]
Next, the router 11 sends the host whose participation request is discarded (in this embodiment, the host 5a1-2), Data (IP packet data) for notifying the cancellation of the participation request is sent to the host 5a.1-2Host 5a via the switch 13a-1 etc. with the IP address and MAC address of1-2(Step S45).
[0113]
At this time, the host 5a1-1The host 5a repeats the determination process in step S31 for a certain period of time, and the data for notifying the participation request cancellation is not transmitted as a result of the participation registration process in step S44.1-1The determination in step S31 is NO (data non-transmission for notifying participation request cancellation), and the host 5a1-1Confirms that the participation request has been successfully received, and ends the processing.
[0114]
On the other hand, the host 5a1-2Since the data for notifying the participation request cancellation has been transmitted, the determination process in step S31 is YES, and the host 5a1-2Transmits again the data representing the participation request (IP packet data D2) to the router 11 via the switch 13a-1 or the like (see step S30), and the data for notifying the participation request discarding from the router 11 again. It is periodically determined whether or not it has been transmitted (see step S31).
[0115]
At this time, the host 5a1-2When the IP packet data D2 representing one normal participation request is transmitted to the router 11 instead of a large number of participation requests, the router 11 receives this participation request and confirms the reception frequency (step S40). In step S41, it is determined whether the frequency of reception of the received participation request is equal to or lower than the threshold value (see step S42).
[0116]
Now host 5a1-2Since a large number of participation requests have not occurred, the determination in step S42 is YES (the reception frequency of the participation request is equal to or less than the threshold value), and the router 11 corresponds to the host 5a corresponding to the participation request.1-2Is stored in the address table AT in association with the multicast address corresponding to the predetermined multicast group.1-2Is registered (step S46).
[0117]
On the other hand, the host 5a1-2The host 5a repeats the determination process in step S31 for a certain period of time, and as a result of the participation registration process in step S46, the data for notifying the cancellation of the participation request is not transmitted.1-2The determination in step S31 is NO (data non-transmission for notifying participation request cancellation), and the host 5a1-2Confirms that the participation request has been successfully received, and ends the processing.
[0118]
Next, the host 5a1-1And host 5a1-2A sequence when a withdrawal request is transmitted from the router 11 to the router 11 will be described.
[0119]
Now, at least the host 5a in the subnet Sb11-1And host 5a1-2Are participating in the predetermined multicast group.
[0120]
At this time, the host 5a1-2If the user wants to leave the predetermined multicast group, the host 5a1-2Converts the data representing the withdrawal request into a data format based on the IP protocol, which is a predetermined communication protocol, and transmits the data to the switch 13a-1.
[0121]
That is, the host 5a1-2As in the first embodiment, IP packet data representing a withdrawal request is generated, and this IP packet data is transmitted to the communication cable L.1-1And physical port PO1-1Is transmitted to the switch 13a-1 (step S35).
[0122]
Next, the host 5a1-2Periodically determines whether or not data for notifying the withdrawal request cancellation has been transmitted from the router 11 (step S36).
[0123]
On the other hand, the transmitted IP packet data is transmitted to the router 11 as IP packet data D2a via the switch 13a-2 (see FIG. 5).
[0124]
At this time, the host 5a1-1Host 5a1-2At substantially the same time as the participation request transmission timing from, for example, a large amount of participation requests (IP packet data D1a having the same data format as the IP packet data D2a) are transmitted to the router 11 (see step S35), and the host 5a1-2Also, the above-described periodic determination process is executed (see step S36).
[0125]
On the other hand, the router 11 is connected to the host 5a.1-1And 5a1-2Is received via the corresponding I / F 20a1 and 20a2 and stored in the buffer 22 (step S50), the frequency of the received withdrawal request is confirmed (step S51), and the confirmed withdrawal request It is determined whether or not to perform the discarding process according to the frequency.
[0126]
That is, the router 11 determines whether or not the reception frequency of the confirmed withdrawal request is equal to or less than a preset threshold value (step S52).
[0127]
Now, the host 5a is connected to the router 11.1-1Since a large number of withdrawal requests have been transmitted from step S52, the determination in step S52 is NO (the reception frequency of the withdrawal request exceeds the threshold), and the router 11 discards a part of the received withdrawal request (step S53).
[0128]
For example, in the second embodiment, as the process of step S53, the router 11 uses the host 5a.1-1Discard all leave requests sent from.
[0129]
Subsequently, the router 11 removes the requests that have not been discarded, that is, the hosts corresponding to the remaining withdrawal requests excluding the discarded withdrawal requests (in this embodiment, the host 5a1-2) Is deleted from the predetermined multicast group in the address table AT, and the host 5a corresponding to the predetermined multicast group is deleted.1-2Is deleted (step S54).
[0130]
Next, the router 11 uses the host from which the withdrawal request is discarded (in this embodiment, the host 5a1-1), Data (IP packet data) for notifying the cancellation of the withdrawal request is sent to the host 5a.1-1Host 5a via the switch 13a-1 etc. with the IP address and MAC address of1-1(Step S55).
[0131]
At this time, the host 5a1-2The host 5a repeats the determination process in step S36 for a certain period of time. As a result of the participation registration cancellation process in step S54, the data for notifying the withdrawal request cancellation is not transmitted.1-2The determination in step S36 is NO (data non-transmission for notifying withdrawal request discard), and the host 5a1-2Confirms that the withdrawal request has been successfully received, and ends the processing.
[0132]
On the other hand, the host 5a1-1Since the data for notifying the withdrawal request cancellation has been transmitted, the determination process in step S36 is YES, and the host 5a1-1Transmits again the data indicating the withdrawal request (IP packet data D1a) to the router 11 via the switch 13a-1 or the like (see step S35), and the data for notifying the withdrawal request discard from the router 11 again. It is periodically determined whether or not it has been transmitted (see step S36).
[0133]
At this time, the host 5a1-1When the IP packet data D2a representing one normal leave request is transmitted to the router 11 instead of a large number of leave requests, the router 11 receives this leave request and confirms the reception frequency (step S50). In step S51), it is determined whether or not the reception frequency of the received withdrawal request is equal to or less than the threshold value (see step S52).
[0134]
Now host 5a1-1Since a large number of withdrawal requests have not been generated, the determination in step S52 is YES (the reception frequency of the withdrawal request is equal to or less than a threshold value), and the router 11 determines that the host 5a corresponding to the withdrawal request.1-1The host 5a corresponding to the predetermined multicast group is deleted from the predetermined multicast group in the address table AT.1-1Is deleted (step S56).
[0135]
On the other hand, the host 5a1-1The host 5a repeats the determination process in step S36 for a certain period of time, and the data for notifying the withdrawal request cancellation is not transmitted as a result of the participation registration cancellation process in step S56.1-1The determination in step S36 is NO (data non-transmission for notifying withdrawal request discard), and the host 5a1-1Confirms that the withdrawal request has been successfully received, and ends the processing.
[0136]
As described above, according to the second embodiment, as in the first embodiment, the host 5a1-1And host 5a1-2When a plurality of join / leave requests for a given multicast group are transmitted from the host, the reception frequency of the join / leave requests is compared with a predetermined threshold, and as a result of the comparison, the reception frequency exceeds the predetermined threshold. In such a case, at least a part of the plurality of join / leave requests can be discarded by the processing of the router 11.
[0137]
In particular, according to the present embodiment, it is possible to transmit data for notifying the discard of the join / leave request to the host whose join / leave request has been discarded (see steps S45 and S55).
[0138]
As a result, the host whose participation / leaving request has been discarded can grasp the unaccepted state of the joining / leaving request according to the transmitted data for notifying the discarding of the joining / leaving request. A join / leave request can be transmitted to the router 11.
[0139]
Therefore, in addition to the effects of suppressing the router processing load and maintaining the processing capability in the first embodiment, the efficiency of the participation registration process / participation registration deletion process related to the host that wants to join / leave the predetermined multicast group is improved. Can be done well.
[0140]
In the second embodiment, the number of participation requests or withdrawal requests transmitted almost simultaneously is counted as processing for confirming the frequency of participation requests or withdrawal requests in steps S10 and S18 in the second embodiment. It is not limited to this, and the number of transmissions of participation requests or the number of transmissions of withdrawal requests per fixed time may be counted.
[0141]
Also in the second embodiment, as in the first embodiment, as a process for confirming the frequency of the participation request or the withdrawal request in steps S41 and S51, the router 11 uses a predetermined bandwidth as a threshold in advance. If a participation request or withdrawal request for a bandwidth exceeding this threshold is transmitted, it may be determined that a participation request or withdrawal request exceeding the threshold has occurred.
[0142]
Further, also in the second embodiment, as in the first embodiment, before performing the process of confirming the frequency of the participation request or the withdrawal request in steps S41 and S51, the router 11 receives the received participation request. Policing, that is, the participation request or the withdrawal request may be classified for each predetermined unit, and the reception frequency may be confirmed for each classified participation request (see FIG. 8).
[0143]
As this predetermined unit, as in the first embodiment, a multicast address, source address, TCP / UDP port number, TOS field value, subnet address, physical port identification information, VLAN ID, VLAN priority value, At least one of the destination MAC address and the source MAC address or a combination thereof is applicable.
[0144]
In the second embodiment, the host that transmitted the join / leave request has been described as two hosts in the same subnet Sb1, but the present invention is not limited to this configuration, and the same subnet or different Even when a join / leave request is transmitted from three or more hosts belonging to the subnet, the router 11 operates in the same manner and can discard at least a part of the join / leave request.
[0145]
In the first and second embodiments, the processing related to joining / leaving a predetermined multicast group has been described. However, the present invention is not limited to this configuration, and joining / leaving a plurality of multicast groups. Can be performed simultaneously for each multicast group.
[0146]
In the first and second embodiments, each of the switches 13a-1 to 13a-p is a VLAN-compatible device. However, the present invention is not limited to this configuration. It may be. In this case, the VLAN ID and the VLAN priority value are excluded from a predetermined unit at the time of policing.
[0147]
The switches 13a-1 to 13a-p in the first and second embodiments may be other relay devices such as a hub, and the functions of the switches 13a-1 to 13a-p are changed to the router 11. It is possible to omit the switches 13a-1 to 13a-p (hardware).
[0148]
Furthermore, in the first and second embodiments, the predetermined communication protocol is TCP (UDP) / IP and the communication network is the Internet. However, the present invention is not limited to this configuration. The present invention is also applicable to multicast communication via a communication network based on a communication protocol.
[0149]
【The invention's effect】
As described above, according to the multicast communication method, the multicast communication router device, and the multicast communication program according to the present invention, from a plurality of receiving hosts, a plurality of request data representing requests to join a multicast group, and a multicast group. If at least one of the plurality of request data representing the request to leave is transmitted, the frequency of the plurality of request data is confirmed, and according to the frequency of the plurality of confirmed request data, At least some of the plurality of request data can be discarded.
[0150]
For this reason, even when a large number of join / leave requests for a multicast group are transmitted from a certain receiving host to a router for multicast communication, the processing capacity of the router is suppressed and the increase in processing load is suppressed. Can be kept high.
[0151]
Further, according to the multicast communication method, the multicast communication router apparatus, and the multicast communication program according to the present invention, the discard for notifying the receiving host that has discarded the join / leave request to the discard of the join / leave request. Since the notification data is transmitted, the receiving host whose participation / leaving request is discarded can grasp the unaccepted state of the joining / leaving request according to the transmitted discard notification data. A join / leave request can be transmitted to the router device.
[0152]
In other words, it is possible to avoid the possibility that the receiving host that has transmitted the join / leave request is left unaccepted in the join / leave request. Registration processing / participation registration deletion processing can be performed efficiently.
[Brief description of the drawings]
FIG. 1 is a diagram showing a schematic configuration of a multicast communication system including a multicast communication router device according to a first embodiment of the present invention.
FIG. 2 is a sequence diagram showing a sequence related to registration for participation in a multicast group in the multicast communication system shown in FIG. 1;
FIG. 3 shows a host 5a shown in FIG. 1 corresponding to the sequence shown in FIG.1-1And host 5a1-27 is a schematic flowchart showing an example of the process.
4 is a schematic flowchart showing an example of processing of the router 11 shown in FIG. 1 corresponding to the sequence shown in FIG.
5 is a sequence diagram showing a sequence related to leaving from a multicast group (participation registration deletion) in the multicast communication system shown in FIG. 1;
6 shows the host 5a shown in FIG. 1 corresponding to the sequence shown in FIG.1-1And host 5a1-27 is a schematic flowchart showing an example of the process.
7 is a schematic flowchart showing an example of processing of the router 11 shown in FIG. 1 corresponding to the sequence shown in FIG.
FIG. 8 is a schematic flowchart showing a modification of the processing of the router 11 shown in FIGS. 4 and 7;
FIG. 9 is a sequence diagram showing a sequence related to participation registration in a multicast group in the multicast communication system according to the second embodiment of the present invention.
10 shows the host 5a shown in FIG. 1 corresponding to the sequence shown in FIG.1-1And host 5a1-27 is a schematic flowchart showing an example of the process.
11 is a schematic flowchart showing an example of processing of the router 11 shown in FIG. 1 corresponding to the sequence shown in FIG. 9;
FIG. 12 is a sequence diagram showing a sequence related to leaving from a multicast group (participation registration deletion) in the multicast communication system according to the second embodiment of the present invention.
13 shows the host 5a shown in FIG. 1 corresponding to the sequence shown in FIG.1-1And host 5a1-27 is a schematic flowchart showing an example of the process.
14 is a schematic flowchart showing an example of processing of the router 11 shown in FIG. 1 corresponding to the sequence shown in FIG.
FIG. 15 is a sequence diagram showing an example of a sequence between a host and a router based on a conventional receiver-side protocol.
[Explanation of symbols]
1. Multicast communication system
3 ... Server
4. Communication network
5a1-1~ 5a1-m5a2-1~ 5a2-n... 5ap-1~ 5apo... Receiving host
11 ... Router device
15a-1 to 15a-p ... communication line
20a1~ 20ap
22 ... Buffer
24 ... CPU
26 ... Memory
28 ... I / F
AT ... Address table
L1-1~ L1-m, L2-1~ L2-n, ..., Lp-1~ Lpo…communication cable
PO1-1~ PO1-m, PO2-1~ PO2-n... POp-1~ POpo... physical port

Claims (10)

送信元ホストから通信ネットワークを介してルータ装置に送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信方法であって、
前記ルータ装置は、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認するステップと、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄するステップと、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除するステップと、を備え、
前記少なくとも一方の複数の要求データの頻度を確認するステップは、当該少なくとも一方の複数の要求データを所定の単位毎に分類するステップと、前記少なくとも1つの複数の要求データの頻度を、分類されたデータ毎に確認するステップとを含むものであって、
前記マルチキャストグループに未参加の複数の受信ホストおよび当該マルチキャストグループに参加している複数の受信ホストは、少なくとも1つのサブネットに通信可能に接続されており、
前記各参加要求データおよび各離脱要求データは、
前記所定のマルチキャストグループの前記通信ネットワーク経由の宛先を表すマルチキャストアドレスと、
当該各参加要求および各離脱要求に含まれるサービスタイプを表す値と、
当該各参加要求および各離脱要求に含まれる前記通信ネットワークのトランスポート層プロトコルのポート番号と、
当該各参加要求および各離脱要求の送信元である受信ホストの前記通信ネットワーク経由の宛先を表すソースアドレスと、
当該各参加要求および各離脱要求の送信元である受信ホストが接続されたサブネットの前記通信ネットワーク経由の宛先を表すサブネットアドレスと、
前記各参加要求および各離脱要求の送信元である受信ホストが接続されたスイッチの物理ポートを識別するためのポート情報と、
前記各参加要求および各離脱要求に対してVLANが設定された場合、その設定VLANを識別するためのVLAN識別情報と、
前記各参加要求および各離脱要求に対して設定されたVLANにプライオリティ値が設定された場合、そのプライオリティ値と、
前記ルータ装置の第1のMACアドレスと、 前記各参加要求および各離脱要求の送信元である受信ホストの第2のMACアドレスと、
をそれぞれ含んでおり、
前記少なくとも一方の複数の要求データを分類するステップは、当該少なくとも一方の複数の要求データを、当該各要求データに含まれる前記マルチキャストアドレス、前記サービスタイプを表す値、前記トランスポート層プロトコルのポート番号、前記ソースアドレス、前記サブネットアドレス、前記ポート情報、前記VLAN識別情報、前記VLANのプライオリティ値、前記第1のMACアドレス、および前記第2のMACアドレスの内の少なくとも1つを前記所定の単位として分類するステップであることを特徴とするマル チキャスト通信方法。
Data for a predetermined multicast group transmitted from the transmission source host to the router device via the communication network is transmitted to all the reception hosts registered to participate in the predetermined multicast group according to the communication protocol based on the reception side. A multicast communication method to
The router device
A plurality of request data representing requests to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group Receiving at least one of a plurality of request data among a plurality of request data representing a request to leave the group and confirming the frequency of the received plurality of request data;
Discarding at least a part of the plurality of request data according to the confirmed frequency of the plurality of request data;
When the remaining request data excluding the discarded request data is received, and the received request data represents a join request, the receiving host corresponding to the received request data is registered to participate in the predetermined multicast group, and the received request data is received. If the request represents a withdrawal request, the receiver host corresponding to the accepted request data deletes the participation registration for the predetermined multicast group , and
The step of checking the frequency of at least one of the plurality of request data is classified into a step of classifying the at least one of the plurality of request data for each predetermined unit, and a frequency of the at least one of the plurality of request data. Including a step of confirming each data,
A plurality of receiving hosts not participating in the multicast group and a plurality of receiving hosts participating in the multicast group are communicably connected to at least one subnet,
Each participation request data and each withdrawal request data are:
A multicast address representing a destination of the predetermined multicast group via the communication network;
A value representing the service type included in each join request and each leave request;
A port number of the transport layer protocol of the communication network included in each participation request and each withdrawal request;
A source address representing a destination via the communication network of a receiving host which is a transmission source of each participation request and each leave request;
A subnet address representing a destination via the communication network of a subnet to which a receiving host that is a transmission source of each participation request and each leave request is connected;
Port information for identifying a physical port of a switch to which a receiving host that is a transmission source of each join request and each leave request is connected;
When a VLAN is set for each join request and each leave request, VLAN identification information for identifying the set VLAN;
When a priority value is set in the VLAN set for each join request and each leave request, the priority value;
A first MAC address of the router device; a second MAC address of a receiving host that is a transmission source of the participation request and the leaving request;
Each
The step of classifying the at least one of the plurality of request data includes the at least one of the plurality of request data, the multicast address included in each request data, a value indicating the service type, and a port number of the transport layer protocol , At least one of the source address, the subnet address, the port information, the VLAN identification information, the VLAN priority value, the first MAC address, and the second MAC address as the predetermined unit multicast communication method which is a step of classifying.
送信元ホストから通信ネットワークを介してルータ装置に送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信方法であって、
前記ルータ装置は、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認するステップと、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄するステップと、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除するステップと、を備え、
前記少なくとも一方の複数の要求データそれぞれはパケットデータであり、前記少なくとも一方の複数の要求データの少なくとも一部を破棄するステップは、前記少なくとも一方の複数の要求データそれぞれのパケットデータの前記ルータ装置内に滞在する数を表す平均キュー長を求め、求めた平均キュー長に応じた確率で、当該少なくとも一方の複数の要求データそれぞれのパケットデータの内の一部のパケットデータを破棄するステップであることを特徴とするマルチキャスト通信方法。
Data for a predetermined multicast group transmitted from the transmission source host to the router device via the communication network is transmitted to all the reception hosts registered to participate in the predetermined multicast group according to the communication protocol based on the reception side. A multicast communication method to
The router device
A plurality of request data representing requests to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group Receiving at least one of a plurality of request data among a plurality of request data representing a request to leave the group and confirming the frequency of the received plurality of request data;
Discarding at least a part of the plurality of request data according to the confirmed frequency of the plurality of request data;
When the remaining request data excluding the discarded request data is received, and the received request data represents a join request, the receiving host corresponding to the received request data is registered to participate in the predetermined multicast group, and the received request data is received. If the request represents a withdrawal request, the receiver host corresponding to the accepted request data deletes the participation registration for the predetermined multicast group , and
Each of the at least one of the plurality of request data is packet data, and the step of discarding at least a part of the at least one of the plurality of request data includes the step of discarding at least one of the plurality of request data in the router device Calculating an average queue length representing the number of stays in the packet, and discarding a part of the packet data of each of the plurality of request data with a probability corresponding to the calculated average queue length. A multicast communication method characterized by the above.
送信元ホストから通信ネットワークを介してルータ装置に送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信方法であって、
前記ルータ装置は、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認するステップと、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄するステップと、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除するステップと、
前記複数の要求データの少なくとも一部を破棄した際に、当該破棄した少なくとも一部の要求データの送信元の受信ホストに対して前記破棄を通知するための破棄通知データを送信するステップと、
を備えたことを特徴とするマルチキャスト通信方法。
Data for a predetermined multicast group transmitted from the transmission source host to the router device via the communication network is transmitted to all the reception hosts registered to participate in the predetermined multicast group according to the communication protocol based on the reception side. A multicast communication method to
The router device
A plurality of request data representing requests to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group Receiving at least one of a plurality of request data among a plurality of request data representing a request to leave the group and confirming the frequency of the received plurality of request data;
Discarding at least a part of the plurality of request data according to the confirmed frequency of the plurality of request data;
When the remaining request data excluding the discarded request data is received, and the received request data represents a join request, the receiving host corresponding to the received request data is registered to participate in the predetermined multicast group, and the received request data is received. If the request represents a leave request, deleting the participation registration for the predetermined multicast group of the receiving host corresponding to the accepted request data;
When discarding at least some of the plurality of request data, transmitting discard notification data for notifying the discarding reception host of the discarded at least some request data;
A multicast communication method comprising:
前記破棄通知データを受信した受信ホストから送信されてきた、前記マルチキャストグループへの再度の参加要求を表す再要求データまたは当該マルチキャストグループからの再度の離脱要求を表す再要求データを受信するステップを備え、
前記頻度を確認するステップは、前記受信した再要求データを含む前記少なくとも一方の複数の要求データの頻度を確認するステップであることを特徴とする請求項記載のマルチキャスト通信方法。
Receiving re-request data representing a request to rejoin the multicast group or re-request data representing a request to rejoin the multicast group transmitted from the receiving host that has received the discard notification data. ,
4. The multicast communication method according to claim 3 , wherein the step of confirming the frequency is a step of confirming a frequency of the at least one of the plurality of request data including the received re-request data.
送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信用ルータ装置であって、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する頻度確認手段と、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する破棄手段と、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録する参加登録手段と、
前記受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する登録削除手段と、
を備え、
前記頻度確認手段は、前記少なくとも一方の複数の要求データを所定の単位毎に分類する分類手段と、前記少なくとも1つの複数の要求データの頻度を、分類されたデータ毎に確認する手段とを含むものであって、
前記マルチキャストグループに未参加の複数の受信ホストおよび当該マルチキャストグループに参加している複数の受信ホストは、少なくとも1つのサブネットに通信可能に接続されており、
前記各参加要求データおよび各離脱要求データは、
前記所定のマルチキャストグループの前記通信ネットワーク経由の宛先を表すマルチキャストアドレスと、
当該各参加要求および各離脱要求に含まれるサービスタイプを表す値と、
当該各参加要求および各離脱要求に含まれる前記通信ネットワークのトランスポート層プロトコルのポート番号と、
当該各参加要求および各離脱要求の送信元である受信ホストの前記通信ネットワーク経由の宛先を表すソースアドレスと、
当該各参加要求および各離脱要求の送信元である受信ホストが接続されたサブネットの前記通信ネットワーク経由の宛先を表すサブネットアドレスと、
前記各参加要求および各離脱要求の送信元である受信ホストが接続されたスイッチの物理ポートを識別するためのポート情報と、
前記各参加要求および各離脱要求に対してVLANが設定された場合、その設定VLANを識別するためのVLAN識別情報と、
前記各参加要求および各離脱要求に対して設定されたVLANにプライオリティ値が設定された場合、そのプライオリティ値と、
前記ルータ装置の第1のMACアドレスと、
前記各参加要求および各離脱要求の送信元である受信ホストの第2のMACアドレスと、
をそれぞれ含んでおり、
前記分類手段は、前記少なくとも一方の複数の要求データを、当該各要求データに含まれる前記マルチキャストアドレス、前記サービスタイプを表す値、前記トランスポート層プロトコルのポート番号、前記ソースアドレス、前記サブネットアドレス、前記ポート情 報、前記VLAN識別情報、前記VLANのプライオリティ値、前記第1のMACアドレス、および前記第2のMACアドレスの内の少なくとも1つを前記所定の単位として分類する手段であることを特徴とするマルチキャスト通信用ルータ装置。
Multicast communication in which data for a predetermined multicast group transmitted from a transmission source host via a communication network is transmitted to all receiving hosts registered to participate in the predetermined multicast group according to a communication protocol based on the reception side Router device for
A plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group A frequency confirmation means for receiving a plurality of request data of at least one of a plurality of request data representing a request to leave the group and confirming a frequency of the plurality of received request data;
A discarding unit for discarding at least a part of the plurality of request data according to the frequency of the confirmed plurality of request data;
Participation registration means for receiving the remaining request data excluding the discarded request data and registering a receiving host corresponding to the received request data in the predetermined multicast group when the received request data represents a participation request; ,
If the received request represents a withdrawal request, a registration deletion unit that deletes the participation registration for the predetermined multicast group of the receiving host corresponding to the received request data;
With
The frequency confirmation means includes classification means for classifying the at least one plurality of request data for each predetermined unit, and means for confirming the frequency of the at least one request data for each classified data. And
A plurality of receiving hosts not participating in the multicast group and a plurality of receiving hosts participating in the multicast group are communicably connected to at least one subnet,
Each participation request data and each withdrawal request data are:
A multicast address representing a destination of the predetermined multicast group via the communication network;
A value representing the service type included in each join request and each leave request;
A port number of the transport layer protocol of the communication network included in each participation request and each withdrawal request;
A source address representing a destination via the communication network of a receiving host which is a transmission source of each participation request and each leave request;
A subnet address representing a destination via the communication network of a subnet to which a receiving host that is a transmission source of each participation request and each leave request is connected;
Port information for identifying a physical port of a switch to which a receiving host that is a transmission source of each join request and each leave request is connected;
When a VLAN is set for each join request and each leave request, VLAN identification information for identifying the set VLAN;
When a priority value is set in the VLAN set for each join request and each leave request, the priority value;
A first MAC address of the router device;
A second MAC address of the receiving host that is the source of each join request and each leave request;
Each
The classification means includes at least one of the plurality of request data, the multicast address included in each request data, a value indicating the service type, a port number of the transport layer protocol, the source address, the subnet address, said port information, the VLAN identification information, the priority value of the VLAN, wherein the first MAC address, and at least one of the second MAC address is a means for classifying as the predetermined units A router device for multicast communication.
送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信用ルータ装置であって、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する頻度確認手段と、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する破棄手段と、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録する参加登録手段と、
前記受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する登録削除手段と、
を備え、
前記少なくとも一方の複数の要求データそれぞれはパケットデータであり、前記破棄手段は、前記少なくとも一方の複数の要求データそれぞれのパケットデータの前記ルータ装置内に滞在する数を表す平均キュー長を求め、求めた平均キュー長に応じた確率で、当該少なくとも一方の複数の要求データそれぞれのパケットデータの内の一部のパケットデータを破棄する手段であることを特徴とするマルチキャスト通信用ルータ装置。
Multicast communication in which data for a predetermined multicast group transmitted from a transmission source host via a communication network is transmitted to all receiving hosts registered to participate in the predetermined multicast group according to a communication protocol based on the reception side Router device for
A plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group A frequency confirmation means for receiving a plurality of request data of at least one of a plurality of request data representing a request to leave the group and confirming a frequency of the plurality of received request data;
A discarding unit for discarding at least a part of the plurality of request data according to the frequency of the confirmed plurality of request data;
Participation registration means for receiving the remaining request data excluding the discarded request data and registering a receiving host corresponding to the received request data in the predetermined multicast group when the received request data represents a participation request; ,
If the received request represents a withdrawal request, a registration deletion unit that deletes the participation registration for the predetermined multicast group of the receiving host corresponding to the received request data;
With
Each of the at least one of the plurality of request data is packet data, and the discarding unit obtains an average queue length that represents the number of packet data of each of the at least one of the plurality of request data that stays in the router device. A router for multicast communication, characterized in that it is means for discarding a part of the packet data of each of the plurality of request data with a probability corresponding to the average queue length.
送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するマルチキャスト通信用ルータ装置であって、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する頻度確認手段と、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する破棄手段と、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録する参加登録手段と、
前記受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する登録削除手段と、
前記複数の要求データの少なくとも一部を破棄した際に、当該破棄した少なくとも一部の要求データの送信元の受信ホストに対して前記破棄を通知するための破棄通知データを送信する破棄通知データ送信手段と、
を備えたことを特徴とするマルチキャスト通信用ルータ装置。
Multicast communication in which data for a predetermined multicast group transmitted from a transmission source host via a communication network is transmitted to all receiving hosts registered to participate in the predetermined multicast group according to a communication protocol based on the reception side Router device for
A plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group A frequency confirmation means for receiving a plurality of request data of at least one of a plurality of request data representing a request to leave the group and confirming a frequency of the plurality of received request data;
A discarding unit for discarding at least a part of the plurality of request data according to the frequency of the confirmed plurality of request data;
Participation registration means for receiving the remaining request data excluding the discarded request data and registering a receiving host corresponding to the received request data in the predetermined multicast group when the received request data represents a participation request; ,
If the received request represents a withdrawal request, a registration deletion unit that deletes the participation registration for the predetermined multicast group of the receiving host corresponding to the received request data;
When at least a part of the plurality of request data is discarded, a discard notification data transmission for transmitting the discard notification data for notifying the discarding reception host of the discarded at least a part of the request data is received. Means,
A router device for multicast communication, comprising:
送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するためのルータ装置が読み取り可能なマルチキャスト通信用のプログラムであって、
前記ルータ装置を、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する手段と、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する手段と、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する手段と、してそれぞれ機能させ
前記頻度を確認する手段は、前記少なくとも一方の複数の要求データを所定の単位毎に分類する手段と、前記少なくとも1つの複数の要求データの頻度を、分類されたデータ毎に確認する手段とを含むものであって、
前記マルチキャストグループに未参加の複数の受信ホストおよび当該マルチキャストグループに参加している複数の受信ホストは、少なくとも1つのサブネットに通信可能に接続されており、
前記各参加要求データおよび各離脱要求データは、
前記所定のマルチキャストグループの前記通信ネットワーク経由の宛先を表すマルチキャストアドレスと、
当該各参加要求および各離脱要求に含まれるサービスタイプを表す値と、
当該各参加要求および各離脱要求に含まれる前記通信ネットワークのトランスポート層プロトコルのポート番号と、
当該各参加要求および各離脱要求の送信元である受信ホストの前記通信ネットワーク経由の宛先を表すソースアドレスと、
当該各参加要求および各離脱要求の送信元である受信ホストが接続されたサブネットの前記通信ネットワーク経由の宛先を表すサブネットアドレスと、
前記各参加要求および各離脱要求の送信元である受信ホストが接続されたスイッチの物理ポートを識別するためのポート情報と、
前記各参加要求および各離脱要求に対してVLANが設定された場合、その設定VLANを識別するためのVLAN識別情報と、
前記各参加要求および各離脱要求に対して設定されたVLANにプライオリティ値が設定された場合、そのプライオリティ値と、
前記ルータ装置の第1のMACアドレスと、
前記各参加要求および各離脱要求の送信元である受信ホストの第2のMACアドレスと、
をそれぞれ含んでおり、
前記分類する手段は、前記少なくとも一方の複数の要求データを、当該各要求データに含まれる前記マルチキャストアドレス、前記サービスタイプを表す値、前記トランスポート層プロトコルのポート番号、前記ソースアドレス、前記サブネットアドレス、前記ポート情報、前記VLAN識別情報、前記VLANのプライオリティ値、前記第1のMACアドレス、および前記第2のMACアドレスの内の少なくとも1つを前記所定の単位として分類する手段として機能させることを特徴とするマルチキャスト通信用プログラム。
For transmitting data for a predetermined multicast group transmitted from a transmission source host via a communication network to all reception hosts registered to participate in the predetermined multicast group according to a communication protocol based on the reception side. A multicast communication program readable by a router device,
The router device,
A plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group Means for receiving a plurality of request data of at least one of a plurality of request data representing a request to leave the group and confirming the frequency of the received plurality of request data;
Means for discarding at least a part of the plurality of request data according to the frequency of the confirmed plurality of request data;
When the remaining request data excluding the discarded request data is received, and the received request data represents a join request, the receiving host corresponding to the received request data is registered to participate in the predetermined multicast group, and the received request data is received. If the request represents a leave request, each function as a means for deleting the participation registration for the predetermined multicast group of the receiving host corresponding to the received request data ,
The means for confirming the frequency comprises means for classifying the at least one plurality of request data for each predetermined unit, and means for confirming the frequency of the at least one plurality of request data for each classified data. Including
A plurality of receiving hosts not participating in the multicast group and a plurality of receiving hosts participating in the multicast group are communicably connected to at least one subnet,
Each participation request data and each withdrawal request data are:
A multicast address representing a destination of the predetermined multicast group via the communication network;
A value representing the service type included in each join request and each leave request;
A port number of the transport layer protocol of the communication network included in each participation request and each withdrawal request;
A source address representing a destination via the communication network of a receiving host which is a transmission source of each participation request and each leave request;
A subnet address representing a destination via the communication network of a subnet to which a receiving host that is a transmission source of each participation request and each leave request is connected;
Port information for identifying a physical port of a switch to which a receiving host that is a transmission source of each join request and each leave request is connected;
When a VLAN is set for each join request and each leave request, VLAN identification information for identifying the set VLAN;
When a priority value is set in the VLAN set for each join request and each leave request, the priority value;
A first MAC address of the router device;
A second MAC address of the receiving host that is the source of each join request and each leave request;
Each
The means for classifying the at least one of the plurality of request data, the multicast address included in each request data, a value representing the service type, a port number of the transport layer protocol, the source address, the subnet address Functioning as means for classifying at least one of the port information, the VLAN identification information, the VLAN priority value, the first MAC address, and the second MAC address as the predetermined unit. A featured multicast communication program.
送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するためのルータ装置が読み取り可能なマルチキャスト通信用のプログラムであって、
前記ルータ装置を、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する手段と、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する手段と、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する手段と、してそれぞれ機能させ、
前記少なくとも一方の複数の要求データそれぞれはパケットデータであり、前記破棄手段は、前記少なくとも一方の複数の要求データそれぞれのパケットデータの前記ルータ装置内に滞在する数を表す平均キュー長を求め、求めた平均キュー長に応じた確率で、当該少なくとも一方の複数の要求データそれぞれのパケットデータの内の一部のパケットデータを破棄する手段として機能させることを特徴とするマルチキャスト通信用プログラム。
For transmitting data for a predetermined multicast group transmitted from a transmission source host via a communication network to all reception hosts registered to participate in the predetermined multicast group according to a communication protocol based on the reception side. A multicast communication program readable by a router device,
The router device,
A plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group Means for receiving a plurality of request data of at least one of a plurality of request data representing a request to leave the group and confirming the frequency of the received plurality of request data;
Means for discarding at least a part of the plurality of request data according to the frequency of the confirmed plurality of request data;
When the remaining request data excluding the discarded request data is received and the received request data represents a join request, the receiving host corresponding to the received request data is registered to participate in the predetermined multicast group, and the received request data is received. When the request represents a withdrawal request, each function as a means for deleting the participation registration for the predetermined multicast group of the receiving host corresponding to the received request data,
Each of the at least one of the plurality of request data is packet data, and the discarding unit obtains an average queue length that represents the number of packet data of each of the at least one of the plurality of request data that stays in the router device. A program for multicast communication, which functions as means for discarding a part of packet data of each of the plurality of request data with a probability corresponding to the average queue length.
送信元ホストから通信ネットワークを介して送信されてきた所定のマルチキャストグループに対するデータを、当該所定のマルチキャストグループに参加登録している全ての受信ホストに対して受信側ベースの通信プロトコルに従って送信するためのルータ装置が読み取り可能なマルチキャスト通信用のプログラムであって、
前記ルータ装置を、
前記マルチキャストグループに未参加の複数の受信ホストから送信されてきた前記マルチキャストグループへの参加要求を表す複数の要求データ、および前記マルチキャストグループに参加している複数の受信ホストから送信されてきた前記マルチキャストグループからの離脱要求を表す複数の要求データの内の少なくとも一方の複数の要求データを受信し、受信した複数の要求データの頻度を確認する手段と、
確認した前記複数の要求データの頻度に応じて、当該複数の要求データの少なくとも一部を破棄する手段と、
前記破棄した要求データを除く残りの要求データを受付け、当該受け付けた要求データが参加要求を表す場合、その受け付けた要求データに対応する受信ホストを前記所定のマルチキャストグループに参加登録し、当該受け付けた要求が離脱要求を表す場合、その受け付けた要求データに対応する受信ホストの前記所定のマルチキャストグループに対する参加登録を削除する手段と、
前記複数の要求データの少なくとも一部を破棄した際に、当該破棄した少なくとも一部の要求データの送信元の受信ホストに対して前記破棄を通知するための破棄通知データを送信する手段と、
してそれぞれ機能させることを特徴とするマルチキャスト通信用プログラム
For transmitting data for a predetermined multicast group transmitted from a transmission source host via a communication network to all reception hosts registered to participate in the predetermined multicast group according to a communication protocol based on the reception side. A multicast communication program readable by a router device,
The router device,
A plurality of request data representing a request to join the multicast group transmitted from a plurality of receiving hosts not participating in the multicast group, and the multicast transmitted from a plurality of receiving hosts participating in the multicast group Means for receiving a plurality of request data of at least one of a plurality of request data representing a request to leave the group and confirming the frequency of the received plurality of request data;
Means for discarding at least a part of the plurality of request data according to the frequency of the confirmed plurality of request data;
When the remaining request data excluding the discarded request data is received and the received request data represents a join request, the receiving host corresponding to the received request data is registered to participate in the predetermined multicast group, and the received request data is received. If the request represents a withdrawal request, means for deleting the participation registration for the predetermined multicast group of the receiving host corresponding to the accepted request data;
Means for transmitting discard notification data for notifying the discarding reception host of at least a part of the discarded request data when discarding at least a part of the plurality of request data;
And a program for multicast communication , each of which is made to function.
JP2003067112A 2003-03-12 2003-03-12 Multicast communication method, router device for multicast communication, and program for multicast communication Expired - Lifetime JP3930445B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003067112A JP3930445B2 (en) 2003-03-12 2003-03-12 Multicast communication method, router device for multicast communication, and program for multicast communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003067112A JP3930445B2 (en) 2003-03-12 2003-03-12 Multicast communication method, router device for multicast communication, and program for multicast communication

Publications (2)

Publication Number Publication Date
JP2004282161A JP2004282161A (en) 2004-10-07
JP3930445B2 true JP3930445B2 (en) 2007-06-13

Family

ID=33284820

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003067112A Expired - Lifetime JP3930445B2 (en) 2003-03-12 2003-03-12 Multicast communication method, router device for multicast communication, and program for multicast communication

Country Status (1)

Country Link
JP (1) JP3930445B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4504167B2 (en) * 2004-11-24 2010-07-14 株式会社日立製作所 Multicast charging control system and broadband access server
EP1691507B1 (en) * 2005-02-14 2010-08-18 Irdeto Access B.V. Method of controlling communication between a head-end system and a plurality of client systems
US8165122B2 (en) * 2009-05-26 2012-04-24 Alcatel Lucent System and method for converting unicast client requests into multicast client requests
JP2011244255A (en) * 2010-05-19 2011-12-01 Nec Corp Communication device

Also Published As

Publication number Publication date
JP2004282161A (en) 2004-10-07

Similar Documents

Publication Publication Date Title
US7200116B2 (en) Communication device and method, and system
TWI268065B (en) Method and apparatus for managing multicast groups in a system area network
JP4077330B2 (en) Data generator
US7532624B2 (en) Multicast packet control apparatus
JP5382451B2 (en) Front-end system, front-end processing method
US9571382B2 (en) Method, controller, and system for processing data packet
US9876612B1 (en) Data bandwidth overhead reduction in a protocol based communication over a wide area network (WAN)
US20130259052A1 (en) Communication system, forwarding node, received packet process method, and program
JPWO2005099188A1 (en) Communication quality control method and apparatus
WO2005060187A1 (en) Cluster system, cluster member, failure recovery method and program
EP2652919B1 (en) Method for group-based multicast with non-uniform receivers
CN100391156C (en) Communication Systems and Terminals
CN109756412A (en) A kind of data message forwarding method and equipment
US20120155268A1 (en) Packet relay device
EP2710766A1 (en) Protocol independent multicast with quality of service support
US8363573B2 (en) Method for ringcasting with improved reliability
JP3930445B2 (en) Multicast communication method, router device for multicast communication, and program for multicast communication
US7852762B2 (en) Shaping device and router device
WO2014198229A1 (en) Packet processing method, device, and system
JP4499042B2 (en) Switch device
JP3682439B2 (en) Data communication system and method, server device, client device, and program
Phonphoem et al. Performance analysis and comparison between multicast and unicast over infrastructure wireless LAN
JP4853862B2 (en) Communication device
CN116545919A (en) UDP (user datagram protocol) message ordered transmission system and method based on multiple transmission paths
CN119676194A (en) Message forwarding method, device, message forwarding equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070202

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070308

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120316

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130316

Year of fee payment: 6