JP3794634B2 - Routing device in multicast communication system, routing method and program thereof - Google Patents

Routing device in multicast communication system, routing method and program thereof Download PDF

Info

Publication number
JP3794634B2
JP3794634B2 JP2002212722A JP2002212722A JP3794634B2 JP 3794634 B2 JP3794634 B2 JP 3794634B2 JP 2002212722 A JP2002212722 A JP 2002212722A JP 2002212722 A JP2002212722 A JP 2002212722A JP 3794634 B2 JP3794634 B2 JP 3794634B2
Authority
JP
Japan
Prior art keywords
multicast group
request
multicast
authentication
leave
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
JP2002212722A
Other languages
Japanese (ja)
Other versions
JP2004056584A (en
Inventor
享邦 西田
経正 林
暁弘 田辺
孝子 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2002212722A priority Critical patent/JP3794634B2/en
Publication of JP2004056584A publication Critical patent/JP2004056584A/en
Application granted granted Critical
Publication of JP3794634B2 publication Critical patent/JP3794634B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、コンピュータやIP−STB(ネットワークで映像を受信できる端末)等の複数のクライアント端末と、ルータやスイッチとによって構成されているネットワーク通信において、マルチキャストを利用する通信技術に関する。
【0002】
【従来の技術】
「マルチキャスト」は、所定のグループ内で、1つのサーバからクライアントに同一の情報を送信し、また、複数のサーバから複数のクライアントに同一の情報を送信する技術である。
【0003】
インターネット上でマルチキャストを実現する場合、特別のIPアドレスが付与されているパケットを用い、そのパケットを受信したルーティング装置が、そのマルチキャストグループに参加しているクライアントに、そのパケットを配信する。なお、上記「ルーティング装置」は、ルータまたはスイッチである。
【0004】
クライアントとルーティング装置との間のインタフェースには、データ転送用のパケットとは別の、マルチキャスト制御用のIGMP(Internet Group Management Protocol)パケットが使用され、たとえば、クライアントが、マルチキャストグループへ参加または離脱するときに、その旨を示すIGMPパケットを、ルーティング装置に送信する。
【0005】
このIGMPパケットを拡張し、ユーザ認証情報を付加し(以下、「IGMP+パケット」という)、エッジルータに送信し、認証が成功した場合にのみ、ルータ装置またはクライアントにのみ、マルチキャストデータを送信する方法が存在する。なお、「エッジルータ」は、クライアント側からネットワーク側に向かう線が集約されている部分である。
【0006】
上記「IGMP+パケット」を使用すれば、所定のマルチキャストグループにどの程度の時間、ユーザが参加していたかを知ることができ、したがって、上記参加時間に応じて、課金することができる。つまり、認証サーバが、時刻情報が格納されているデータベースを管理し、すなわち、マルチキャストグループに参加した時刻情報をクライアント毎に認識している。
【0007】
このために、通常のIGMPの場合、クライアントが、マルチキャストグループからの離脱を要求すると、その離脱後に、当該マルチキャストグループに参加しているクライアントが、本当に存在していないことを確認する。この確認を行うために、ルータ装置は、クライアントに参加報告させる参加報告パケットを送出し、上記参加報告パケットに返答するクライアントが存在しないことを確認するために、一定時間待ち、参加報告パケットに返答するクライアントが存在しないことを確認することができれば、そのマルチキャストグループに対するマルチキャストデータ配信を停止する。
【0008】
なお、上記「通常のIGMP」には、IGMPv1(バージョン1)と、IGMPv2(バージョン2)とがあり、これらの間での大きな違いは、v2では、leave要求ができる点である。その他の部分については、それほど大きな変わりがない。基本的に、マルチキャストグループに参加したい(マルチキャストデータを受信したい)ときに、参加要求パケットを送信し、マルチキャストデータを受信し、定期的に上流ルータから送信されるIGMP queryに、IGMP joinを返し、上流ルータに、まだマルチキャストグループに参加していることを通知する。一方、そのマルチキャストグループから離脱したいときには、IGMP queryに、反応をしなかったり、離脱要求パケットを送信することによって、上流ルータは、マルチキャストデータを、そのクライアントに対して送信しない。上記参加要求、query、leaveを使ってマルチキャストグループの管理を行うためのプロトコルが、「IGMP」である。
【0009】
「IGMP+」は、パケットフォーマットとして、IGMPパケットに認証情報を追加したものであり、その上流ルータ(EdgeDevice)で認証情報を取り出し、RADIUSサーバに問い合わせ認証が通れば、マルチキャストパケットを、要求クライアントに送信する方法である。
【0010】
しかし、「IGMP+」を用いる場合、離脱要求を受けると、直ちに配信を停止する(fast leave機能)。これは、ルータ装置が、参加報告パケットを送出してから所定時間、クライアント端末からの返答を待つことによって、クライアント端末が離脱要求したにも関わらず、課金され続けることを避けるためである。
【0011】
また、クライアント端末が、次々にマルチキャストグループへの参加離脱を繰り返し、マルチキャストグループを渡り歩くときに、上記参加報告パケットを待っているマルチキャストグループへマルチキャストデータを配信することによって、ネットワーク負荷が増加しないようにするための機能でもある。
【0012】
【発明が解決しようとする課題】
しかし、上記の「IGMP+」を使用するマルチキャスト通信システムにおいて、ルータ装置とクライアントとの間に、ハブ等を接続し、ルータ装置の1つのポートに、複数のクライアントを接続し、上記複数のクライアントのうちの所定の1台が、離脱要求を示すパケットを、ルータ装置に送出すると、上記fast leave機能(離脱要求を受けると、配信を直ちに停止する機能)によって、ルーティング装置の同じポートに接続されているマルチキャストグループへの参加を継続している他のクライアントに、マルチキャストデータを配信する動作を、上記ルータが阻止するという問題がある。つまり、ハブがマルチキャストポイントになることはないので、ルーティング装置の同じポートに接続されているマルチキャストグループへの参加を継続している他のクライアントに、マルチキャストデータを配信する動作を、上記ルータが阻止する。
【0013】
つまり、上記従来例において、上記のような「IGMP+」を使用するマルチキャスト通信システムにおいて、ルータ装置とクライアントとの間に、ハブ等を接続し、ルータ装置の1つのポートに、複数のクライアントを接続し、上記複数のクライアントのうちの所定の1台が、離脱要求を示すパケットを、ルータ装置に送出すると、上記fast leave機能によって、ルーティング装置の同じポートに接続されているマルチキャストグループへの参加を継続している他のクライアントが、ビデオデータの情報配信サービス等を受けられないという問題がある。
【0014】
本発明は、同じポートに収容される複数のクライアントが、認証を必要とする同一のマルチキャストグループを利用することができしかも、所定の認証済クライアントがマルチキャストグループから離脱を要求したときに、、他の認証済クライアントがマルチキャストグループへの参加を継続していれば、上記他の認証済クライアントには、マルチキャストデータが確実に配信されるマルチキャスト通信システムを提供することを目的とする。
【0015】
【課題を解決するための手段】
本発明は、マルチキャスト制御パケットを使用したマルチキャストグループへの参加要求、またはマルチキャストグループからの離脱要求を、クライアントから受信する要求受信手段と、マルチキャストグループへの参加要求である場合、参加要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定し、また、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されていれば、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであるか否かを判定する登録判定手段と、エッジルータから受信した認証結果パケットに基づいて、認証が成功したか否かを判定する認証判定手段と、マルチキャストグループへの参加要求である場合、上記認証判定手段が認証すると、グループを識別するグループ情報として、マルチキャストグループアドレスを、マルチキャストグループ情報表に書き込み、認証情報として、そのときに用いたユーザIDとパスワードとを、上記マルチキャストグループ情報表に書き込み、マルチキャストグループの参加数をインクリメントするインクリメント手段と、マルチキャストグループからの離脱要求である場合、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定する手段と、離脱要求されたマルチキャストグループがマルチキャストグループ情報表に登録されている場合、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであると、上記登録判定手段が判定すれば、マルチキャストグループの参加数をデクリメントし、クライアント情報を、マルチキャストグループ情報表から削除する削除手段と、マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が0であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手段とを有するマルチキャスト通信システムにおけるルーティング装置である。
【0016】
【発明の実施の形態および実施例】
図1は、本発明の一実施例であるマルチキャスト通信システム100の基本的な構成例を示すブロック図である。
【0017】
マルチキャスト通信システム100は、IPネットワークNWに接続されているエッジルータER1、ER2と、エッジルータER1、ER2のそれぞれを介して、IPネットワークNWに接続されているルーティング装置RS1、RS2と、ルーティング装置RS1とエッジルータER1とを介して、IPネットワークNWに接続されているクライアントC11、C12〜C1nと、ルーティング装置RS2とエッジルータER2とを介して、IPネットワークNWに接続されているクライアントC21、C22〜C2nとを有する。
【0018】
また、情報を配信する情報配信サーバ11と、エッジルータER1、ER2からの要求によって、クライアントC11〜C2nを認証する認証サーバ13と、認証サーバ13からの要求によって課金処理を行う課金サーバ12とが、IPネットワークNWに接続されている。
【0019】
情報配信サーバ11は、マルチキャストグループ毎に、特定のIPアドレスが付与されているパケットによって、IPネットワークNWに情報を配信する。
【0020】
エッジルータER1、ER2は、ルーティング装置RS1、RS2を介して、クライアントC11〜C2nから送信されたマルチキャストグループ参加パケットを受け取ると、参加パケット内のユーザ情報と、参加を望む対象であるマルチキャストグループの情報とを用いて、認証サーバ13へ認証要求する。
【0021】
この認証が成功したときに、ルーティング装置RS1、RS2を、参加を望む対象であるマルチキャストグループである参加対象マルチキャストグループに参加させる。
【0022】
一方、エッジルータER1、ER2が、上記参加対象マルチキャストグループに参加していない場合、さらに上位のマルチキャストポイントに参加要求し、マルチキャストグループパケットの配信を受け、ルーティング装置RS1、RS2に、マルチキャストパケットを配信する。
【0023】
また、エッジルータER1、ER2が、認証成功を知らせるパケットを、ルーティング装置RS1、RS2に送信する。ルーティング装置RS1、RS2は、認証成功を、クライアントC11〜C2nに伝え、また、参加を要求したクライアントC11〜C2nに、マルチキャストグループのパケットを配信する。
【0024】
図2は、ルーティング装置RS1の基本的な構成例を示すブロック図である。
【0025】
ルーティング装置RS1は、ネットワークインタフェース21と、クライアントインタフェース22と、管理手段23と、判定手段24と、設定手段25と、補償手段26と、記憶手段27とを有する。
【0026】
ネットワークインタフェース21は、IPネットワークNWと通信するインタフェースであり、クライアントインタフェース22は、クライアントC11〜C1nと通信するインタフェースである。管理手段23は、クライアントC11〜C1nが参加しているマルチキャストグループに関するマルチキャストグループ情報表30(図3参照)を管理する手段である。
【0027】
判定手段24は、マルチキャストグループに参加しているクライアントの存在を、マルチキャストグループ毎に判定し、また、マルチキャストグループへの参加要求を示すパケットと、マルチキャストグループから離脱する離脱要求を示すパケットとを、エッジルータER1へ送出するか否かを判定する手段である。
【0028】
設定手段25は、マルチキャストグループのデータのルーティングに関するマルチキャストルーティングテーブルを設定する手段である。
【0029】
なお図には、陽にマルチキャストルーティングテーブルが記載されていない。つまり、通常のルータには、マルチキャストルーティングを行うために、マルチキャストルーティングテーブルが存在し、また、「IGMP+」の処理とは別のパスに置かれているので、図に描く必要がない。
【0030】
あえて描くとすれば、図2の記憶手段の中に、上記マルチキャストルーティングテーブルが格納され、このマルチキャストルーティングテーブルを参照し、ネットワークインタフェース部に到達したマルチキャストデータを、クライアントインタフェースへフォワーディングする。
【0031】
補償手段26は、認証情報が付いていない従来のIGMPしか用いることができないクライアントであっても、IGMP+対応端末として振舞う機能の差分を補う手段である。
【0032】
なお、「IGMPv1」または「IGMPv2」は、認証情報を持たないパケットを用いるが、「IGMP+パケット」は、認証情報を持っている。つまり、認証情報を付加して、「IGMP+パケット」とを送信できる端末が、「IGMP+対応端末」であり、そうでない端末が、「IGMP+非対応端末」である。
【0033】
「IGMP+非対応端末」である場合、認証情報をのせてパケットを送出しないので、クライアントからIGMPパケットを受けた場合、ネットワーク側に対して、認証情報を付加し、IGMPパケットを、「IGMP+パケット」にして補う。
【0034】
記憶手段27は、マルチキャストグループ情報表30や、マルチキャストルーティングテーブル、マルチキャスト制御プロトコルの機能の差分を補償するための認証情報等を記憶する手段である。
【0035】
なお、ルーティング装置RS2の構成も、ルーティング装置RS1の構成と同様である。
【0036】
次に、上記実施例の動作について説明する。
【0037】
ここでは、ルーティング装置RS1に着目して動作を説明する。
【0038】
図1において、クライアントC11〜C1nが、所定のマルチキャストグループに参加するためには、または、マルチキャストグループから離脱するためには、マルチキャスト制御パケットを使用して、ルーティング装置RS1に、その旨を通知する。
【0039】
ルーティング装置RS1は、たとえばクライアントC11〜C1nのネットワーク(MAC)アドレス、IPアドレス、物理ポート番号、ユーザID、パスワード、または、これらの組み合わせ等によって、クライアントC11〜C1nのそれぞれを識別し、この識別されたクライアントC11〜C1nが、どのマルチキャストグループに参加しているかを管理する。また、ルーティング装置RS1は、認証を必要とするマルチキャストグループへ参加することを、クライアントC11〜C1nが、ルーティング装置RS1に要求すると、この参加要求を受け取ったIGMP+パケットを、エッジルータER1に送出する。
【0040】
エッジルータER1は、参加要求を送出したクライアントC11〜C1nを認証するための情報(ユーザID、パスワード、参加しようとしているマルチキャストグループアドレス等)を、認証サーバ13に送り、この認証結果を、認証サーバ13から受け取り、上記認証結果を、IGMP+の枠組みでルーティング装置RS1に送信する。
【0041】
マルチキャストグループへの参加が有料であれば、認証サーバ13がクライアントC11〜C1nのそれぞれを認証した後に、認証サーバ13が、課金サーバ12に課金処理を要求し、課金サーバ12は、クライアントC11〜C1nの1つ毎、または受信している課金対象のサービス毎に、受信データ量や受信時間に応じて、課金処理する。
【0042】
上記動作説明において、ルーティング装置RS2に着目した場合も、ルーティング装置RS1に着目した上記動作説明と同様である。
【0043】
次に、認証を必要とするマルチキャストグループであって、互いに同一のマルチキャストグループを、複数のクライアントが利用する場合に、マルチキャストグループへ参加する処理と、マルチキャストグループを離脱する処理とについて説明する。
【0044】
ここでも、ルーティング装置RS1に着目して動作を説明する。
【0045】
ルーティング装置RS1のクライアントインタフェース22が、マルチキャストグループへの参加要求を示すマルチキャスト制御パケット(IGMP+パケット)を、クライアントC11〜C1nから受け取ると、ルーティング装置RS1の判定手段24が、参加要求されたマルチキャストグループに参加しているクライアントが存在しているか否かを判定し、参加要求されたマルチキャストグループに参加しているクライアントが存在していない場合、ルーティング装置RS1のネットワークインタフェース21が、マルチキャストグループへの参加要求を示すマルチキャスト制御パケット(IGMP+パケット)を、エッジルータER1に送信する。
【0046】
そして、マルチキャストグループへの参加要求を示すマルチキャスト制御パケットを、エッジルータER1に送信すると、マルチキャストグループへの参加要求を送出したルータ装置RS1とクライアントとによる参加要求が認められる。
【0047】
基本的に、認証し、マルチキャストデータを、「送信する」または「送信しない」を決めるのは、エッジルータであり、管理の区分けである(エッジルータは網側装置であり、ルータ装置は家庭内装置である)ので、ある意味では、ルータ装置RS1とクライアント端末とは同類である。
【0048】
「IGMP+パケット」を受けたエッジルータが認証情報を抜き出し、RADIUSに問い合わせを行い、要求されたマルチキャストグループに対する正規ユーザであれば、マルチキャストデータをフォワードする。
【0049】
また、ルーティング装置RS1のクライアントインタフェース22が、マルチキャストグループから離脱する要求を示すマルチキャスト制御パケット(IGMP+パケット)を、クライアントC11〜C1nから受け取ると、ルーティング装置RS1の判定手段24が、離脱要求しているクライアント以外に、離脱要求されているマルチキャストグループに参加しているクライアントが存在するか否かを判定し、離脱要求しているクライアント以外に、離脱要求されたマルチキャストグループに参加しているクライアントが存在していない場合、ルーティング装置RS1のネットワークインタフェース21が、マルチキャストグループから離脱する要求を示すマルチキャスト制御パケット(IGMP+パケット)を、エッジルータER1に送信する。
【0050】
そして、マルチキャストグループから離脱する要求を示すマルチキャスト制御パケットをエッジルータER1に送信すると、マルチキャストグループからの離脱要求を送出したルータ装置RS1とクライアントによる離脱要求が認められる。
【0051】
エッジルータが、クライアント端末からの離脱要求を受けた場合、要求されたマルチキャストグループのパケットを、クライアント端末にフォワーディング(送信)しないようにする方法(マルチキャストテーブルからその情報を削除するとか、実装方法はいろいろある)と、また、この部分は運用状況により大きく変わるが、RADIUSサーバ等の負荷を下げるために、離脱要求を受けた場合、直ちにパケットをフォワーディングしないようにする方法とがあり、離脱要求パケットにも、認証情報が入っているので、参加要求と同じように認証し、パケットを送信しないようにすることができる。
【0052】
図3は、マルチキャストグループ情報表30の一例を示す図である。
【0053】
図3に示すマルチキャストグループ情報表30は、マルチキャストグループ毎に、そのマルチキャストグループのアドレスと、認証が成功したユーザID・パスワードと、マルチキャストグループに参加している参加数(マルチキャストグループに参加しているクライアント数)と、マルチキャストグループに参加しているクライアントのそれぞれのIPアドレスとを有する。
【0054】
次に、上記実施例において、ルーティング装置RS1が実行するマルチキャストグループへの参加と離脱との処理について説明する。
【0055】
図4は、上記実施例におけるルーティング装置RS1が実行するマルチキャストグループへの参加と離脱との処理離脱動作を示すフローチャートである。
【0056】
ルーティング装置RS1は、マルチキャスト制御パケット(IGMP+パケット)を使用した要求を、クライアントから受信する(S10)。
【0057】
ルーティング装置RS1は、クライアントの要求がマルチキャストグループへの参加要求であるか否かを判定し(S11)、マルチキャストグループへの参加要求であれば、参加要求されたマルチキャストグループが、マルチキャストグループ情報表30に登録されているか否かを判定する(S12)。
【0058】
参加要求されたマルチキャストグループが、マルチキャストグループ情報表30に未登録であれば、マルチキャストグループへの参加要求を示すマルチキャスト制御パケット(IGMP+パケット)をエッジルータER1に送出する(S13)。
【0059】
エッジルータER1から受信した認証結果パケットに基づいて、認証が成功したか否かを判定し(S14)、認証が失敗した場合、処理を終了する。認証が成功した場合、グループを識別するグループ情報として、マルチキャストグループアドレスを、マルチキャストグループ情報表30に書き込み、認証情報として、そのときに用いたユーザIDとパスワードとを、マルチキャストグループ情報表30に書き込む(S15)。
【0060】
そして、マルチキャストグループの参加数をインクリメントし、「0」から「1」にし(S16)、参加要求したクライアントを識別するクライアント情報として、クライアントのIPアドレスを、マルチキャストグループ情報表30に書き込み、マルチキャストルーティングテーブルエントリを設定する(S17)。
【0061】
ステップS12において、参加要求されたマルチキャストグループが、マルチキャストグループ情報表30に登録されている場合、認証情報(ユーザIDとパスワード)が、マルチキャストグループ情報表30に登録されている認証情報と同じであるか否かを判定し(S18)、同じである場合、マルチキャストグループの参加数をインクリメントし(S16)、クライアント情報(クライアントのIPアドレス)を、マルチキャストグループ情報表30に書き込み、マルチキャストルーティングテーブルを設定する(S17)。
【0062】
また、ルーティング装置RS1は、クライアントの要求が、マルチキャストグループからの離脱要求であるか否かを判定し(S21)、マルチキャストグループからの離脱要求であれば、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表30に登録されているか否かを判定する(S22)。
【0063】
離脱要求されたマルチキャストグループが、マルチキャストグループ情報表30に登録されている場合、認証情報(ユーザID、パスワード)が、マルチキャストグループ情報表30に登録されている認証情報と同じであるか否かを判定し(S23)、同じであれば、マルチキャストグループの参加数をデクリメントし、クライアント情報(クライアントのIPアドレス)を、マルチキャストグループ情報表30から削除し、マルチキャストルーティングテーブルを削除する(S27)。
【0064】
そして、マルチキャストグループの参加数が「0」になったか否かを判定し(S25)、マルチキャストグループの参加数が「0」になっていれば、マルチキャストグループからの離脱要求を示すマルチキャスト制御パケット(IGMP+)を、エッジルータER1に送出し(S26)、マルチキャストグループのアドレスを、マルチキャストグループ情報表30から削除することによって、グループの登録を削除する(S28)。
【0065】
上記実施例においては、マルチキャストグループ毎に参加数を把握し、最後の参加者となるクライアントから離脱要求があったときに、直ちにネットワークに離脱要求を送信し、情報配信サーバまたは、上流のマルチキャストポイント(エッジルータ)からマルチキャストデータが送出されることを阻止することができる。
【0066】
つまり、マルチキャストを考える場合、配信サーバからデータを受けるというよりも、マルチキャストポイントからデータをもらうという考え方が正しい。
【0067】
なお、クライアントが、「IGMP+パケット」を使用できることを前提に説明したが、認証付きでないマルチキャスト制御(IGMPv2)しか取り扱うことができないクライアントである場合には、図1において、マルチキャストグループへの参加を示すIGMPパケットと、マルチキャストグループからの離脱を示すIGMPパケットとを、クライアントC11〜C2nから、ルーティング装置RS1、RS2へ送信し、また、ルーティング装置RS1、エッジルータER1へ送信する際、に、認証に用いるユーザIDとパスワードとを、IGMP+パケットで送信するには、従来の「IGMPv2」の機能と「IGMP+」の機能との差分を補う補償手段を設ければよい。
【0068】
次に、上記補償手段を設けた例として、従来のIGMPv2を実装したクライアントC11〜C1nから、IGMPプラスを実装したルーティング装置RS1に、マルチキャストグループへの参加要求を送ったときにおける通信シーケンスについて説明する。
【0069】
上記動作説明において、ルーティング装置RS2に着目した場合も、ルーティング装置RS1に着目した上記動作説明と同様である。
【0070】
図5は、従来のIGMPv2を実装したクライアントC11〜C2nから、「IGMP+」を実装したルーティング装置RS1に、マルチキャストグループへの参加要求を送ったときにおける通信シーケンスを示す図である。
【0071】
なお、この場合、ルーティング装置RS1は、「IGMP+」の他に、補償動作を行うIGMPプロキシ(IGMP proxy)50を実装し、クライアントには、「IGMPv2」の他に、補償動作を補助するIGMPヘルパ40(IGMP helper)を実装している。
【0072】
まず、クライアントのIGMPヘルパ40が、ルーティング装置RS1のIGMPプロキシ50に認証情報を送信する(S31)。
【0073】
なお、図5に示すように、本来「IGMPv1」または「IGMPv2」には、エッジルータから認証成功であるとか、課金開始といったメッセージが、クライアント端末にやって来ても、そのメッセージを理解できない(プロトコルにそのような概念がない)が、「IGMP+端末」においては、クライアント端末は理解できる。その情報(図5では、IGMPプロキシからの応答)を、クライアント端末の画面に表示させるためのものです。
【0074】
「IGMPプロキシ」は、「IGMPv1」または「IGMPv2」のメッセージを「IGMP+」のメッセージに変換し、しかも、先に記述したエッジルータからの応答を受け取るための機能であり、「IGMPv2」と「IGMP+」との機能の差分を補う補償手段である。
【0075】
認証情報には、ユーザIDとパスワードとが含まれている。ルーティング装置RS1のIGMPプロキシ50は、クライアントのIGMPヘルパ40に応答を送信する(S32)。このように、認証情報が、クライアントからルーティング装置RS1へ送られた後に、クライアントのIGMPv2から、ルーティング装置RS1のIGMPプロキシ50に、マルチキャストグループへの参加要求を示すIGMPパケットを送信する(S33)。
【0076】
ルーティング装置RS1のIGMPプロキシ50は、受け取ったIGMPv2のパケットを、ユーザIDと、パスワードが含まれている認証情報付きのIGMP+パケットとに変換し、マルチキャストグループへの参加を要求する(S34)。
【0077】
ルーティング装置RS1が、エッジルータER1に、IGMP+パケットを送信し、エッジルータER1から認証結果(S35)を受信したときに、ルーティング装置RS1のIGMP+プロキシ50が受信し、IGMPヘルパ40に応答を送信する(S36)。
【0078】
認証が成功した場合には、情報配信サーバから、たとえばビデオデータ等のマルチキャストデータが送られ、このマルチキャストデータが、ルーティング装置RS1を介して、クライアントに到着する(S37)。
【0079】
なお、上記実施例は、マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント手段と、所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出手段と、上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が0であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手段とを有するマルチキャスト通信システムにおけるルーティング装置の例である。
【0080】
ここで、参加要求パケットを送出することによって、上流ルータ装置は、参加要求クライアントに要求されたマルチキャストグループ宛のパケットを送出する。つまり、要求クライアントが、マルチキャストグループに参加する。
【0081】
また、離脱要求パケットを送出することによって、上流ルータ装置は、離脱要求クライアントに要求されたマルチキャストグループ宛のパケットの送出を停止する。つまり、要求クライアントが、マルチキャストグループから離脱する。
【0082】
また、上記実施例は、マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント手順と、所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出手順と、上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が0であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手順とをコンピュータに実行させるプログラムの例である。
【0083】
さらに、上記実施例は、IGMPパケットに認証情報を付加するために必要となる認証情報を記憶する手段と、上記IGMPパケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるIGMP+ヘルパに送信する手段とを有するマルチキャスト通信システムにおけるルーティング装置の例である。
【0084】
そして、上記実施例は、IGMPパケットに認証情報を付加するために必要となる認証情報を記憶する手順と、上記IGMPパケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるIGMP+ヘルパに送信する手順とをコンピュータに実行させるプログラムの例である。
【0085】
【発明の効果】
本発明によれば、認証を必要とする同一のマルチキャストグループを、複数のクライアントが利用することができるという効果を奏する。
【0086】
また、本発明によれば、認証済クライアントが、マルチキャストグループから離脱を要求しても、マルチキャストグループへの参加を継続している認証済クライアントが存在してれば、その認証済クラインとホストは、マルチキャストデータを確実に受信することができるという効果を奏する。
【0087】
さらに、認証済クライアントが、マルチキャストグループから離脱を要求した場合、マルチキャストグループへ参加を継続している認証済クライアントが存在しなければ、即座に配信を停止することができるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施例であるマルチキャスト通信システム100の基本的な構成例を示すブロック図である。
【図2】ルーティング装置RS1の基本的な構成例を示すブロック図である。
【図3】マルチキャストグループ情報表30の一例を示す図である。
【図4】上記実施例におけるルーティング装置RS1が実行するマルチキャストグループへの参加と離脱との処理離脱動作を示すフローチャートである。
【図5】従来のIGMPv2を実装したクライアントC11〜C2nから、「IGMP+」を実装したルーティング装置RS1に、マルチキャストグループへの参加要求を送ったときにおける通信シーケンスを示す図である。
【符号の説明】
100…マルチキャスト通信システム、
11…情報配信サーバ、
12…課金サーバ、
13…認証サーバ、
C11〜C1n、C21〜C2n…クライアント、
RS1、RS2…ルーティング装置、
ER1、ER2…エッジルータ、
NW…IPネットワーク。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a communication technique that uses multicast in network communication including a plurality of client terminals such as computers and IP-STBs (terminals that can receive video over a network), routers, and switches.
[0002]
[Prior art]
“Multicast” is a technique in which the same information is transmitted from one server to a client within a predetermined group, and the same information is transmitted from a plurality of servers to a plurality of clients.
[0003]
When multicast is realized on the Internet, a packet to which a special IP address is assigned is used, and a routing device that receives the packet distributes the packet to clients participating in the multicast group. The “routing device” is a router or a switch.
[0004]
An IGMP (Internet Group Management Protocol) packet for multicast control, which is different from the data transfer packet, is used for the interface between the client and the routing device. For example, the client joins or leaves the multicast group. Sometimes, an IGMP packet indicating that is transmitted to the routing device.
[0005]
A method of extending the IGMP packet, adding user authentication information (hereinafter referred to as “IGMP + packet”), transmitting it to the edge router, and transmitting multicast data only to the router device or the client only when the authentication is successful. Exists. The “edge router” is a part where lines from the client side to the network side are aggregated.
[0006]
If the “IGMP + packet” is used, it is possible to know how long the user has been participating in the predetermined multicast group, and accordingly, it is possible to charge according to the participation time. That is, the authentication server manages a database in which time information is stored, that is, recognizes the time information for joining the multicast group for each client.
[0007]
For this reason, in the case of normal IGMP, when a client requests to leave the multicast group, it is confirmed that the client participating in the multicast group does not really exist after the withdrawal. In order to confirm this, the router device sends out a participation report packet that causes the client to report participation, waits for a certain period of time to confirm that no client responds to the participation report packet, and then responds to the participation report packet. If it can be confirmed that there is no client to perform multicast data distribution, the multicast data distribution to the multicast group is stopped.
[0008]
The “normal IGMP” includes IGMPv1 (version 1) and IGMPv2 (version 2), and the major difference between them is that a leave request can be made in v2. The other parts have not changed much. Basically, when you want to join a multicast group (receive multicast data), send a join request packet, receive multicast data, and return an IGMP join to the IGMP query periodically sent from the upstream router, Inform the upstream router that it is still participating in the multicast group. On the other hand, when it is desired to leave the multicast group, the upstream router does not send multicast data to the client by not responding to the IGMP query or sending a leave request packet. A protocol for managing a multicast group using the above join request, query, and leave is “IGMP”.
[0009]
"IGMP +" is a packet format with authentication information added to the IGMP packet. The upstream router (EdgeDevice) extracts the authentication information, and sends a multicast packet to the requesting client if the RADIUS server sends an inquiry and authentication. It is a method to do.
[0010]
However, when “IGMP +” is used, distribution is immediately stopped upon receipt of a leave request (fast leave function). This is because the router device waits for a response from the client terminal for a predetermined time after sending the participation report packet, thereby avoiding being charged even though the client terminal requests to leave.
[0011]
In addition, when the client terminal repeats joining and leaving the multicast group one after another and moves around the multicast group, the multicast load is distributed to the multicast group waiting for the participation report packet so that the network load does not increase. It is also a function to do.
[0012]
[Problems to be solved by the invention]
However, in the multicast communication system using the above “IGMP +”, a hub or the like is connected between the router device and the client, a plurality of clients are connected to one port of the router device, and the plurality of clients are connected. When one of them sends a packet indicating a leave request to the router device, it is connected to the same port of the routing device by the fast leave function (a function that immediately stops distribution when a leave request is received). There is a problem that the router prevents the operation of distributing multicast data to other clients that continue to participate in the multicast group. In other words, since the hub does not become a multicast point, the router prevents the multicast data from being distributed to other clients that continue to participate in the multicast group connected to the same port of the routing device. To do.
[0013]
That is, in the conventional example, in the multicast communication system using “IGMP +” as described above, a hub or the like is connected between the router device and the client, and a plurality of clients are connected to one port of the router device. Then, when a predetermined one of the plurality of clients sends a packet indicating a leave request to the router device, the fast leave function is used to join the multicast group connected to the same port of the routing device. There is a problem that other continuing clients cannot receive the video data information distribution service.
[0014]
In the present invention, when a plurality of clients accommodated in the same port can use the same multicast group requiring authentication, and when a predetermined authenticated client requests to leave the multicast group, It is an object of the present invention to provide a multicast communication system in which multicast data is reliably distributed to the other authenticated clients if the authenticated client continues to participate in the multicast group.
[0015]
[Means for Solving the Problems]
  The present invention provides a request receiving means for receiving a request to join a multicast group using a multicast control packet or a request to leave the multicast group from a client, and a multicast requested to join in the case of a request to join a multicast group. It is determined whether or not the group is registered in the multicast group information table. If the requested multicast group is registered in the multicast group information table, authentication information is registered in the multicast group information table. A registration determination unit that determines whether the authentication information is the same as the authentication information, an authentication determination unit that determines whether the authentication is successful based on the authentication result packet received from the edge router, and a multicast group If it is a participation request, When the determination means authenticates, the multicast group address is written in the multicast group information table as group information for identifying the group, and the user ID and password used at that time are written in the multicast group information table as authentication information, Increment means for incrementing the number of participants in the multicast group, and in the case of a withdrawal request from the multicast group, means for judging whether the requested multicast group is registered in the multicast group information table, If the registration determination unit determines that the authentication information is the same as the authentication information registered in the multicast group information table when the multicast group is registered in the multicast group information table, When the multicast point receives a removal request packet indicating a request to leave the multicast group, and a deletion means for decrementing the number of participants in the multicast group and deleting the client information from the multicast group information table, the client information is removed. A routing apparatus in a multicast communication system having a leave request packet sending means for sending the leave request packet to the network if the number of clients participating in the multicast group is 0 in addition to the requesting client. is there.
[0016]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a block diagram showing a basic configuration example of a multicast communication system 100 according to an embodiment of the present invention.
[0017]
The multicast communication system 100 includes routing devices RS1 and RS2 connected to the IP network NW and routing devices RS1 via the edge routers ER1 and ER2 connected to the IP network NW and the edge routers ER1 and ER2, respectively. And clients C11, C12-C1n connected to the IP network NW via the edge router ER1, and clients C21, C22--connected to the IP network NW via the routing device RS2 and the edge router ER2 C2n.
[0018]
An information distribution server 11 that distributes information, an authentication server 13 that authenticates the clients C11 to C2n by a request from the edge routers ER1 and ER2, and a charging server 12 that performs a charging process by a request from the authentication server 13 Connected to the IP network NW.
[0019]
The information distribution server 11 distributes information to the IP network NW by a packet to which a specific IP address is assigned for each multicast group.
[0020]
When the edge routers ER1 and ER2 receive the multicast group participation packet transmitted from the clients C11 to C2n via the routing devices RS1 and RS2, the user information in the participation packet and the information of the multicast group that is the target of participation are received. Is used to request authentication to the authentication server 13.
[0021]
When this authentication is successful, the routing devices RS1 and RS2 are allowed to participate in a participation target multicast group that is a target multicast group.
[0022]
On the other hand, when the edge routers ER1 and ER2 do not participate in the participation target multicast group, they request to join a higher-order multicast point, receive distribution of the multicast group packet, and distribute the multicast packet to the routing devices RS1 and RS2. To do.
[0023]
In addition, the edge routers ER1 and ER2 transmit a packet informing the authentication success to the routing devices RS1 and RS2. The routing devices RS1 and RS2 transmit the authentication success to the clients C11 to C2n, and distribute the packets of the multicast group to the clients C11 to C2n that have requested participation.
[0024]
FIG. 2 is a block diagram illustrating a basic configuration example of the routing device RS1.
[0025]
The routing device RS1 includes a network interface 21, a client interface 22, a management unit 23, a determination unit 24, a setting unit 25, a compensation unit 26, and a storage unit 27.
[0026]
The network interface 21 is an interface that communicates with the IP network NW, and the client interface 22 is an interface that communicates with the clients C11 to C1n. The management means 23 is means for managing the multicast group information table 30 (see FIG. 3) regarding the multicast group in which the clients C11 to C1n are participating.
[0027]
The determination means 24 determines the presence of a client participating in the multicast group for each multicast group, and also includes a packet indicating a request to join the multicast group and a packet indicating a leave request to leave the multicast group. It is means for determining whether or not to send to the edge router ER1.
[0028]
The setting means 25 is a means for setting a multicast routing table related to routing of data of the multicast group.
[0029]
In the figure, the multicast routing table is not explicitly described. That is, a normal router has a multicast routing table in order to perform multicast routing, and is placed on a path different from the processing of “IGMP +”, so there is no need to draw it in the figure.
[0030]
If it is intentionally drawn, the multicast routing table is stored in the storage means of FIG. 2, and the multicast data reaching the network interface unit is forwarded to the client interface by referring to the multicast routing table.
[0031]
The compensation unit 26 is a unit that compensates for a difference in function that behaves as an IGMP + compatible terminal even for a client that can use only conventional IGMP without authentication information.
[0032]
Note that “IGMPv1” or “IGMPv2” uses a packet without authentication information, but “IGMP + packet” has authentication information. That is, the terminal that can transmit the “IGMP + packet” by adding the authentication information is the “IGMP + compatible terminal”, and the terminal that is not the “IGMP + non-compatible terminal”.
[0033]
If it is an “IGMP + non-compliant terminal”, it does not send out a packet with authentication information, so when it receives an IGMP packet from the client, it adds the authentication information to the network side, and sends the IGMP packet to the “IGMP + packet” Make up.
[0034]
The storage unit 27 is a unit that stores a multicast group information table 30, a multicast routing table, authentication information for compensating for a difference in functions of the multicast control protocol, and the like.
[0035]
The configuration of the routing device RS2 is the same as the configuration of the routing device RS1.
[0036]
Next, the operation of the above embodiment will be described.
[0037]
Here, the operation will be described focusing on the routing device RS1.
[0038]
In FIG. 1, in order for clients C11 to C1n to participate in a predetermined multicast group or to leave the multicast group, a multicast control packet is used to notify the routing device RS1 of that fact. .
[0039]
The routing device RS1 identifies each of the clients C11 to C1n by, for example, the network (MAC) address, IP address, physical port number, user ID, password, or a combination thereof of the clients C11 to C1n. The client C11-C1n manages which multicast group it participates in. In addition, when the clients C11 to C1n request the routing device RS1 to join the multicast group that requires authentication, the routing device RS1 sends the IGMP + packet that has received the join request to the edge router ER1.
[0040]
The edge router ER1 sends information (user ID, password, multicast group address to be joined, etc.) for authenticating the clients C11 to C1n that sent the participation request to the authentication server 13, and the authentication result is sent to the authentication server. 13 and sends the authentication result to the routing device RS1 in the framework of IGMP +.
[0041]
If the participation in the multicast group is charged, after the authentication server 13 authenticates each of the clients C11 to C1n, the authentication server 13 requests the charging server 12 for charging processing, and the charging server 12 receives the clients C11 to C1n. For each one of the services, or for each service to be charged, charging processing is performed according to the amount of received data and the reception time.
[0042]
In the above description of operation, when attention is paid to the routing device RS2, the operation description is also similar to that described above focusing on the routing device RS1.
[0043]
Next, a description will be given of processing for joining a multicast group and processing for leaving a multicast group when a plurality of clients use the same multicast group that requires authentication.
[0044]
Here, the operation will be described by focusing on the routing device RS1.
[0045]
When the client interface 22 of the routing device RS1 receives a multicast control packet (IGMP + packet) indicating a request to join the multicast group from the clients C11 to C1n, the determination unit 24 of the routing device RS1 adds to the requested multicast group. It is determined whether or not there is a participating client, and if there is no client participating in the requested multicast group, the network interface 21 of the routing device RS1 requests to join the multicast group. A multicast control packet (IGMP + packet) indicating is transmitted to the edge router ER1.
[0046]
When a multicast control packet indicating a request for participation in the multicast group is transmitted to the edge router ER1, a request for participation by the router device RS1 that has transmitted the request for participation in the multicast group and the client is accepted.
[0047]
Basically, it is the edge router that determines whether to authenticate and send multicast data “send” or “do not send”, and it is the management division (the edge router is the network side device, and the router device is the home device). In a sense, the router device RS1 and the client terminal are similar.
[0048]
The edge router that has received the “IGMP + packet” extracts the authentication information, makes an inquiry to RADIUS, and forwards multicast data if the user is an authorized user for the requested multicast group.
[0049]
In addition, when the client interface 22 of the routing device RS1 receives a multicast control packet (IGMP + packet) indicating a request to leave the multicast group from the clients C11 to C1n, the determination unit 24 of the routing device RS1 makes a removal request. In addition to the client, it is determined whether or not there is a client participating in the multicast group requested to leave, and there are clients participating in the multicast group requested to leave other than the client requesting to leave. If not, the network interface 21 of the routing device RS1 sends a multicast control packet (IGMP + packet) indicating a request to leave the multicast group to the edge router ER1. To.
[0050]
Then, when a multicast control packet indicating a request to leave the multicast group is transmitted to the edge router ER1, a leave request by the router apparatus RS1 and the client that sent the leave request from the multicast group is recognized.
[0051]
When the edge router receives a request to leave from the client terminal, the method to prevent the forwarding (transmission) of the requested multicast group packet to the client terminal (deleting the information from the multicast table, In addition, this part varies greatly depending on the operation status. However, in order to reduce the load on the RADIUS server or the like, there is a method in which a packet is not immediately forwarded when a withdrawal request is received. Since authentication information is included, authentication can be performed in the same manner as a participation request, and packets can be prevented from being transmitted.
[0052]
FIG. 3 is a diagram illustrating an example of the multicast group information table 30.
[0053]
The multicast group information table 30 shown in FIG. 3 includes, for each multicast group, the address of the multicast group, a user ID / password that has been successfully authenticated, and the number of participants participating in the multicast group (participating in the multicast group). Number of clients) and the IP addresses of the clients participating in the multicast group.
[0054]
Next, the process of joining and leaving the multicast group executed by the routing device RS1 in the above embodiment will be described.
[0055]
FIG. 4 is a flowchart showing the process leaving operation of joining and leaving the multicast group executed by the routing device RS1 in the above embodiment.
[0056]
The routing device RS1 receives a request using a multicast control packet (IGMP + packet) from the client (S10).
[0057]
The routing device RS1 determines whether or not the client request is a request to join the multicast group (S11). If the request is a request to join the multicast group, the multicast group requested to participate is the multicast group information table 30. Is registered (S12).
[0058]
If the requested multicast group is not registered in the multicast group information table 30, a multicast control packet (IGMP + packet) indicating a request to join the multicast group is sent to the edge router ER1 (S13).
[0059]
  Based on the authentication result packet received from the edge router ER1, it is determined whether or not the authentication is successful.(S14)If the authentication fails, the process ends. When the authentication is successful, the multicast group address is written in the multicast group information table 30 as group information for identifying the group, and the user ID and password used at that time are written in the multicast group information table 30 as authentication information. (S15).
[0060]
Then, the number of participations in the multicast group is incremented to change from “0” to “1” (S16), and the client IP address is written in the multicast group information table 30 as client information for identifying the client that requested participation, and multicast routing is performed. A table entry is set (S17).
[0061]
In step S 12, when the requested multicast group is registered in the multicast group information table 30, the authentication information (user ID and password) is the same as the authentication information registered in the multicast group information table 30. (S18), if they are the same, the number of participations in the multicast group is incremented (S16), the client information (client IP address) is written in the multicast group information table 30, and the multicast routing table is set. (S17).
[0062]
Further, the routing device RS1 determines whether or not the client request is a request to leave the multicast group (S21). If the request is a request to leave the multicast group, the multicast group requested to leave is determined to be a multicast group. It is determined whether or not it is registered in the information table 30 (S22).
[0063]
If the requested multicast group is registered in the multicast group information table 30, whether or not the authentication information (user ID, password) is the same as the authentication information registered in the multicast group information table 30. If it is determined (S23) and the result is the same, the participation number of the multicast group is decremented, the client information (client IP address) is deleted from the multicast group information table 30, and the multicast routing table is deleted (S27).
[0064]
Then, it is determined whether or not the number of participations in the multicast group has become “0” (S25). If the number of participations in the multicast group is “0”, a multicast control packet indicating a request to leave the multicast group ( IGMP +) is sent to the edge router ER1 (S26), and the multicast group address is deleted from the multicast group information table 30 to delete the group registration (S28).
[0065]
In the above embodiment, the number of participants for each multicast group is grasped, and when there is a withdrawal request from the client as the last participant, the withdrawal request is immediately transmitted to the network, and the information distribution server or the upstream multicast point It is possible to prevent multicast data from being transmitted from the (edge router).
[0066]
In other words, when considering multicast, the idea of receiving data from a multicast point is correct rather than receiving data from a distribution server.
[0067]
Although the description has been given on the assumption that the client can use “IGMP + packet”, in the case where the client can handle only multicast control (IGMPv2) without authentication, FIG. 1 shows participation in the multicast group. The IGMP packet and the IGMP packet indicating the departure from the multicast group are transmitted from the clients C11 to C2n to the routing devices RS1 and RS2, and used for authentication when transmitting to the routing device RS1 and the edge router ER1. In order to transmit the user ID and the password in the IGMP + packet, it is only necessary to provide a compensation unit that compensates for the difference between the function of the conventional “IGMPv2” and the function of “IGMP +”.
[0068]
Next, as an example in which the compensation means is provided, a communication sequence when a request to join a multicast group is transmitted from the clients C11 to C1n mounted with the conventional IGMPv2 to the routing device RS1 mounted with IGMP plus will be described. .
[0069]
In the above description of operation, when attention is paid to the routing device RS2, the operation description is also similar to that described above focusing on the routing device RS1.
[0070]
FIG. 5 is a diagram showing a communication sequence when a request to join a multicast group is sent from a client C11 to C2n mounted with conventional IGMPv2 to the routing device RS1 mounted with “IGMP +”.
[0071]
In this case, the routing device RS1 implements an IGMP proxy (IGMP proxy) 50 that performs a compensation operation in addition to “IGMP +”, and an IGMP helper that assists the compensation operation in addition to “IGMPv2”. 40 (IGMP helper) is implemented.
[0072]
First, the IGMP helper 40 of the client transmits authentication information to the IGMP proxy 50 of the routing device RS1 (S31).
[0073]
As shown in FIG. 5, originally “IGMPv1” or “IGMPv2” cannot understand the message even if a message such as the authentication success from the edge router or the start of charging comes to the client terminal (the protocol There is no such concept), but in “IGMP + terminal”, the client terminal can understand. This information (in Figure 5, response from the IGMP proxy) is displayed on the client terminal screen.
[0074]
The “IGMP proxy” is a function for converting an “IGMPv1” or “IGMPv2” message into an “IGMP +” message and receiving a response from the edge router described above. “IGMPv2” and “IGMP +” It is a compensation means that compensates for the difference in function from
[0075]
The authentication information includes a user ID and a password. The IGMP proxy 50 of the routing device RS1 transmits a response to the client IGMP helper 40 (S32). As described above, after the authentication information is sent from the client to the routing device RS1, an IGMP packet indicating a request to join the multicast group is transmitted from the client IGMPv2 to the IGMP proxy 50 of the routing device RS1 (S33).
[0076]
The IGMP proxy 50 of the routing device RS1 converts the received IGMPv2 packet into an IGMP + packet with authentication information including a user ID and a password, and requests participation in the multicast group (S34).
[0077]
When the routing device RS1 transmits an IGMP + packet to the edge router ER1 and receives the authentication result (S35) from the edge router ER1, the IGMP + proxy 50 of the routing device RS1 receives and transmits a response to the IGMP helper 40. (S36).
[0078]
If the authentication is successful, multicast data such as video data is sent from the information distribution server, and this multicast data arrives at the client via the routing device RS1 (S37).
[0079]
In the above-described embodiment, the number-of-participants counting means for counting the number of clients participating in the multicast group for each multicast group, and the participation request packet for requesting participation in the predetermined multicast group are sent from the client. If the number of clients participating in the multicast group is zero when the multicast point is received, a participation request packet sending means for sending the join request packet to the network, and a request for leaving the multicast group If the number of clients participating in the multicast group other than the requesting client is 0 when the multicast point receives a leaving request packet indicating the The door is an example of a routing device in a multicast communication system having a withdrawal request packet sending means for sending to the network.
[0080]
Here, by sending the participation request packet, the upstream router device sends the packet addressed to the multicast group requested by the participation request client. That is, the requesting client joins the multicast group.
[0081]
Further, by sending out the leave request packet, the upstream router device stops sending the packet addressed to the multicast group requested by the leave request client. That is, the requesting client leaves the multicast group.
[0082]
In the embodiment, the number of clients participating in the multicast group is counted for each multicast group, and a participation request packet for requesting participation in the predetermined multicast group is sent from the client. If the number of clients participating in the multicast group is zero when the multicast point is received, the participation request packet sending procedure for sending the join request packet to the network, and the request for leaving the multicast group If the number of clients participating in the multicast group other than the requesting client is 0 when the multicast point receives a leaving request packet indicating the The door is an example of a program for executing the withdrawal request packet transmission procedure for transmitting to the network computer.
[0083]
Further, in the above embodiment, the means for storing the authentication information necessary for adding the authentication information to the IGMP packet, the authentication information added to the IGMP packet and transmitted to the network, and the response received from the network side are received. It is an example of the routing apparatus in the multicast communication system which has a means to transmit to IGMP + helper mounted in a client.
[0084]
In the above embodiment, the authentication information necessary for adding the authentication information to the IGMP packet is stored, the authentication information is added to the IGMP packet and transmitted to the network, and the response received from the network side is received. It is an example of the program which makes a computer perform the procedure transmitted to IGMP + helper mounted in a client.
[0085]
【The invention's effect】
According to the present invention, there is an effect that a plurality of clients can use the same multicast group that requires authentication.
[0086]
Further, according to the present invention, if there is an authenticated client that continues to join the multicast group even if the authenticated client requests to leave the multicast group, the authenticated client and the host The multicast data can be reliably received.
[0087]
Further, when the authenticated client requests to leave the multicast group, if there is no authenticated client that continues to participate in the multicast group, the delivery can be stopped immediately.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a basic configuration example of a multicast communication system 100 according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a basic configuration example of a routing device RS1.
3 is a diagram showing an example of a multicast group information table 30. FIG.
FIG. 4 is a flowchart showing a process leaving operation of joining and leaving a multicast group executed by the routing device RS1 in the embodiment.
FIG. 5 is a diagram showing a communication sequence when a request to join a multicast group is sent from a client C11 to C2n mounted with conventional IGMPv2 to a routing device RS1 mounted with “IGMP +”.
[Explanation of symbols]
100: Multicast communication system,
11 ... Information distribution server,
12 ... billing server,
13 ... Authentication server,
C11-C1n, C21-C2n ... client,
RS1, RS2 ... routing device,
ER1, ER2 ... Edge router,
NW ... IP network.

Claims (5)

マルチキャスト制御パケットを使用したマルチキャストグループへの参加要求、またはマルチキャストグループからの離脱要求を、クライアントから受信する要求受信手段と;
マルチキャストグループへの参加要求である場合、参加要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定し、また、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されていれば、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであるか否かを判定する登録判定手段と;
エッジルータから受信した認証結果パケットに基づいて、認証が成功したか否かを判定する認証判定手段と;
マルチキャストグループへの参加要求である場合、上記認証判定手段が認証すると、グループを識別するグループ情報として、マルチキャストグループアドレスを、マルチキャストグループ情報表に書き込み、認証情報として、そのときに用いたユーザIDとパスワードとを、上記マルチキャストグループ情報表に書き込み、マルチキャストグループの参加数をインクリメントするインクリメント手段と;
マルチキャストグループからの離脱要求である場合、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定する手段と;
離脱要求されたマルチキャストグループがマルチキャストグループ情報表に登録されている場合、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであると、上記登録判定手段が判定すれば、マルチキャストグループの参加数をデクリメントし、クライアント情報を、マルチキャストグループ情報表から削除する削除手段と;
マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が0であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手段と;
を有することを特徴とするマルチキャスト通信システムにおけるルーティング装置。
Request receiving means for receiving, from a client, a request to join a multicast group or a request to leave the multicast group using a multicast control packet;
If it is a request to join a multicast group, it is determined whether or not the requested multicast group is registered in the multicast group information table, and the requested multicast group is registered in the multicast group information table. If so, a registration determination means for determining whether the authentication information is the same as the authentication information registered in the multicast group information table;
Authentication determination means for determining whether or not the authentication is successful based on the authentication result packet received from the edge router;
In the case of a request to join a multicast group, when the authentication determination unit authenticates, the multicast group address is written in the multicast group information table as group information for identifying the group, and the user ID used at that time is used as authentication information. Increment means for writing a password into the multicast group information table and incrementing the number of participants in the multicast group;
Means for determining whether or not the requested multicast group is registered in the multicast group information table in the case of a request to leave the multicast group;
If the multicast group requested to leave is registered in the multicast group information table, if the registration determination means determines that the authentication information is the same as the authentication information registered in the multicast group information table , the multicast group Delete means for decrementing the number of participants and deleting the client information from the multicast group information table;
If the number of clients participating in the multicast group is 0 in addition to the client requesting to leave when the multicast point receives a leave request packet indicating a request to leave the multicast group from the client, Leaving request packet sending means for sending the leave request packet to the network;
A routing apparatus in a multicast communication system, comprising:
マルチキャスト制御パケットを使用したマルチキャストグループへの参加要求、またはマルチキャストグループからの離脱要求を、クライアントから受信する要求受信工程と;A request receiving step of receiving, from a client, a request to join a multicast group using a multicast control packet or a request to leave the multicast group;
マルチキャストグループへの参加要求である場合、参加要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定し、また、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されていれば、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであるか否かを判定する登録判定工程と;If the request is for joining a multicast group, it is determined whether the requested multicast group is registered in the multicast group information table, and the requested multicast group is registered in the multicast group information table. A registration determination step for determining whether the authentication information is the same as the authentication information registered in the multicast group information table;
エッジルータから受信した認証結果パケットに基づいて、認証が成功したか否かを判定する認証判定工程と;An authentication determination step of determining whether or not the authentication is successful based on the authentication result packet received from the edge router;
マルチキャストグループへの参加要求である場合、上記認証判定工程で認証すると、グループを識別するグループ情報として、マルチキャストグループアドレスを、マルチキャストグループ情報表に書き込み、認証情報として、そのときに用いたユーザIDとパスワードとを、上記マルチキャストグループ情報表に書き込み、マルチキャストグループの参加数をインクリメントするインクリメント工程と;When it is a request to join a multicast group, when authentication is performed in the authentication determination step, a multicast group address is written in the multicast group information table as group information for identifying the group, and the user ID used at that time is used as authentication information. An incrementing step of writing the password in the multicast group information table and incrementing the number of participations in the multicast group;
マルチキャストグループからの離脱要求である場合、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定する工程と;In the case of a request to leave the multicast group, determining whether the requested multicast group is registered in the multicast group information table;
離脱要求されたマルチキャストグループがマルチキャストグループ情報表に登録されている場合、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであると、上記登録判定工程で判定すれば、マルチキャストグループの参加数をデクリメントし、クライアント情報を、マルチキャストグループ情報表から削除する削除工程と;If the requested multicast group is registered in the multicast group information table, if the authentication information is the same as the authentication information registered in the multicast group information table, the multicast group Decrementing the number of participants and deleting the client information from the multicast group information table;
マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外にWhen a multicast point indicating a request to leave a multicast group is received from a client, a client other than the client requesting to leave 、当該マルチキャストグループに参加しているクライアントの数が0であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出工程と;A leave request packet sending step for sending the leave request packet to the network if the number of clients participating in the multicast group is zero;
を有することを特徴とするマルチキャスト通信システムにおけるルーティング方法。A routing method in a multicast communication system, comprising:
マルチキャスト制御パケットを使用したマルチキャストグループへの参加要求、またはマルチキャストグループからの離脱要求を、クライアントから受信する要求受信手順と;A request receiving procedure for receiving a request to join or leave a multicast group from a client using a multicast control packet;
マルチキャストグループへの参加要求である場合、参加要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定し、また、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されていれば、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであるか否かを判定する登録判定手順と;If the request is for joining a multicast group, it is determined whether the requested multicast group is registered in the multicast group information table, and the requested multicast group is registered in the multicast group information table. A registration determination procedure for determining whether or not the authentication information is the same as the authentication information registered in the multicast group information table;
エッジルータから受信した認証結果パケットに基づいて、認証が成功したか否かを判定する認証判定手順と;An authentication determination procedure for determining whether or not the authentication is successful based on the authentication result packet received from the edge router;
マルチキャストグループへの参加要求である場合、上記認証判定手順で認証すると、グループを識別するグループ情報として、マルチキャストグループアドレスを、マルチキャストグループ情報表に書き込み、認証情報として、そのときに用いたユーザIDとパスワードとを、上記マルチキャストグループ情報表に書き込み、マルチキャストグループの参加数をインクリメントするインクリメント手順と;When it is a request to join a multicast group, when authentication is performed by the authentication determination procedure, a multicast group address is written in the multicast group information table as group information for identifying the group, and the user ID used at that time is used as authentication information. An increment procedure for writing a password into the multicast group information table and incrementing the number of participants in the multicast group;
マルチキャストグループからの離脱要求である場合、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表に登録されているか否かを判定する手順と;A procedure for determining whether or not the requested multicast group is registered in the multicast group information table in the case of a withdrawal request from the multicast group;
離脱要求されたマルチキャストグループがマルチキャストグループ情報表に登録されている場合、認証情報が、マルチキャストグループ情報表に登録されている認証情報と同じであると、上記登録判定手順で判定すれば、マルチキャストグループの参加数をデクリメントし、クライアント情報を、マルチキャストグループ情報表から削除する削除手順と;If the multicast group requested to leave is registered in the multicast group information table, the multicast group can be determined if the authentication information is the same as the authentication information registered in the multicast group information table. Delete procedure for decrementing the number of participants and deleting client information from the multicast group information table;
マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が0であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手順と;If the number of clients participating in the multicast group is 0 in addition to the client requesting to leave when the multicast point receives a leave request packet indicating a request to leave the multicast group from the client, Leaving request packet sending procedure for sending the leave request packet to the network;
をコンピュータに実行させるプログラム。A program that causes a computer to execute.
請求項1において、
認証情報が付いていない参加要求パケットまたは、離脱要求パケットに認証情報を付加するために必要な認証情報を記憶する手段と;
上記認証情報が付いていない参加または離脱要求パケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるヘルパ機能に送信する手段と;
を有することを特徴とするマルチキャスト通信システムにおけるルーティング装置。
In claim 1,
Means for storing authentication information necessary for adding authentication information to a join request packet without authentication information or a leave request packet;
Means for adding authentication information to a join or leave request packet without the authentication information and transmitting it to the network, and transmitting a response received from the network side to a helper function mounted on the client;
A routing apparatus in a multicast communication system, comprising:
請求項3において、
認証情報が付いていない参加要求パケットまたは、離脱要求パケットに認証情報を付加するために必要となる認証情報を記憶する手順と;
上記認証情報が付いていない参加または離脱要求パケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるヘルパ機能に送信する手順と;
をコンピュータに実行させるプログラム。
In claim 3,
A procedure for storing authentication information necessary for adding authentication information to a join request packet without authentication information or a leave request packet;
A procedure of adding authentication information to a join or leave request packet without the authentication information and transmitting it to the network, and transmitting a response received from the network side to a helper function implemented in the client;
A program that causes a computer to execute.
JP2002212722A 2002-07-22 2002-07-22 Routing device in multicast communication system, routing method and program thereof Expired - Lifetime JP3794634B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002212722A JP3794634B2 (en) 2002-07-22 2002-07-22 Routing device in multicast communication system, routing method and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002212722A JP3794634B2 (en) 2002-07-22 2002-07-22 Routing device in multicast communication system, routing method and program thereof

Publications (2)

Publication Number Publication Date
JP2004056584A JP2004056584A (en) 2004-02-19
JP3794634B2 true JP3794634B2 (en) 2006-07-05

Family

ID=31935570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002212722A Expired - Lifetime JP3794634B2 (en) 2002-07-22 2002-07-22 Routing device in multicast communication system, routing method and program thereof

Country Status (1)

Country Link
JP (1) JP3794634B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7852794B2 (en) * 2007-01-22 2010-12-14 Intel Corporation Proxy IGMP client and method for providing multicast broadcast services in a broadband wireless access network
JP2018042179A (en) * 2016-09-09 2018-03-15 日本電信電話株式会社 Communication device and communication method
CN113242229B (en) * 2021-05-07 2023-07-04 上海英方软件股份有限公司 Quotation data distribution method and device crossing physical address authentication and password encryption login

Also Published As

Publication number Publication date
JP2004056584A (en) 2004-02-19

Similar Documents

Publication Publication Date Title
US7769008B2 (en) Multicast packet routing arrangements for group-membership handling
JP4773387B2 (en) Network system
JP3888209B2 (en) Multicast communication apparatus and system
US8977757B2 (en) Method of discovering operator-provided network services using IMS
US8175091B2 (en) Communication system
JP2003158547A (en) Multicast authentication method, multicast authentication server, network interconnectioin apparatus, and multicast authentication system
US20040098448A1 (en) Data distribution system
JP2004139291A (en) Data communication repeater
US8027274B2 (en) Multicast communication system and method
JP2006042223A (en) Packet transport unit
US20020069248A1 (en) System and method for delivery and exchange of electronic data
JP3794634B2 (en) Routing device in multicast communication system, routing method and program thereof
JP2002217973A (en) Multicast communication system
JP3682439B2 (en) Data communication system and method, server device, client device, and program
KR100280825B1 (en) How to Manage Session Membership in Internet Multicast Applications
JP3751301B2 (en) Multi-node communication system
JPWO2004088930A1 (en) Communication system and communication apparatus
JP3500087B2 (en) Packet communication method
JP4036369B2 (en) Multicast communication system, control method for multicast communication system, and snooping device
JP2006295339A (en) Gateway apparatus and program thereof
JPH10271161A (en) Session control method for client server system through repeater
JP2010183506A (en) Multicast communication system, routing apparatus, authentication server device, routing apparatus program, authentication server device program, and routing method and authentication method
JP3723803B2 (en) Multicast communication system
JP2005323409A (en) Multicast communication system
JP2005203966A (en) System and method for selecting ip multicast authentication server, program thereof, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040401

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051007

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060322

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060407

R150 Certificate of patent or registration of utility model

Ref document number: 3794634

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090421

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100421

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100421

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110421

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120421

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130421

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140421

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term