JP4331471B2 - データ・ネットワークにおいてマルチキャスト・リストを維持するための方法および装置 - Google Patents

データ・ネットワークにおいてマルチキャスト・リストを維持するための方法および装置 Download PDF

Info

Publication number
JP4331471B2
JP4331471B2 JP2002369110A JP2002369110A JP4331471B2 JP 4331471 B2 JP4331471 B2 JP 4331471B2 JP 2002369110 A JP2002369110 A JP 2002369110A JP 2002369110 A JP2002369110 A JP 2002369110A JP 4331471 B2 JP4331471 B2 JP 4331471B2
Authority
JP
Japan
Prior art keywords
destination node
list
multicast
data
destination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002369110A
Other languages
English (en)
Other versions
JP2003209575A5 (ja
JP2003209575A (ja
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.)
Agere Systems LLC
Original Assignee
Agere Systems LLC
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 Agere Systems LLC filed Critical Agere Systems LLC
Publication of JP2003209575A publication Critical patent/JP2003209575A/ja
Publication of JP2003209575A5 publication Critical patent/JP2003209575A5/ja
Application granted granted Critical
Publication of JP4331471B2 publication Critical patent/JP4331471B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1305Software aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13175Graphical user interface [GUI], WWW interface, visual indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13204Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13216Code signals, frame structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13242Broadcast, diffusion, multicast, point-to-multipoint (1 : N)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13389LAN, internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、一般に、データ・ネットワークにおいて複数のノードにマルチキャスト・メッセージを伝送するための方法および装置に関し、より詳細には、マルチキャスト・メッセージの受け手のリストを維持するための方法および装置に関する。
【0002】
【従来の技術】
ネットワークにおけるデータの流れは、データが宛先ノードに着信するまであるネットワーク・ノードから別のノードにデータを伝送することによって達せられる。TCP/IPを含め、様々なデータ・プロトコルが、ネットワークにおいてデータを伝送するために使用されている。データ転送のために選択されるプロトコルは、ネットワークのタイプ、ネットワーク・トポロジ、データ・タイプ、およびその他の要因に基づく。
【0003】
ネットワークを介してデータを伝送するために2つの相異なるプロトコル・クラス、すなわちユニキャスト経路指定プロトコルおよびマルチキャスト経路指定プロトコルが利用可能である。ユニキャスト経路指定プロトコルは、単一の送信元ノードから単一の宛先ノードに、通常、いくつかの中間ノードを介してデータを伝送する。マルチキャスティングためにTCP(伝送制御プロトコル)などのユニキャスト・プロトコルを使用することができるが、ユニキャスト・プロトコルは、マルチキャスティングに適用された場合、送信元ノードからマルチキャスト・グループの中の各宛先ノードに複数回、データが送信されるため、効率的でない。
【0004】
マルチキャスト経路指定プロトコルは、1つまたは複数の送信元ノードから複数の宛先ノードにデータを伝送し、多数のノードにデータを送信する場合、より効率的であるように設計されている。複数の宛先ノードは、マルチキャスト・グループのメンバとして定義されて、そのグループの各メンバが、そのグループにアドレス指定されたデータを受信するようになっている。マルチポイント−マルチポイント・マルチキャストでは、グループの中の各受信ノードが、あらゆる送信側からデータを受信する。マルチキャスト・グループが、単一の送信側に限定されている場合は、ポイント−マルチポイント・マルチキャストと呼ばれる。例としてのマルチキャスト・グループは、送信元ノードにおいて生成されたソフトウェア更新、またはスイッチなどのネットワーク・デバイスに向けられたノード・アドレス・リストの更新を受信するすべてのノードのグループを含むことが可能である。また、多数参加者のビデオ会議、遠隔学習(教師が、地理的に分散した学生と通信する)、およびニュース・グループへの複数の電子メールも、マルチキャスト・データ伝送である。一例としてのマルチキャスト経路指定プロトコルでは、送信側ノードが、マルチキャスト・グループ・アドレスへの単一回の伝送を介してデータを各マルチキャスト・グループ・メンバに伝送する。基礎となるマルチキャスト配信機構は、マルチキャスト・グループの参加者として登録した宛先の受け手のすべてにデータを配信する。マルチキャスト・データ・フラディングおよびリバース・パス転送などの周知の技術により、マルチキャスト・グループの中の受信側ノードへのパス上に存在するネットワーク内のすべてのルータによってデータが受信される機構が提供される。
【0005】
1つの従来のルータ実施形態では、各ネットワーク・ルータが、メンバであるルータに宛先ノードが接続されているマルチキャスト・グループに関して、マルチキャスト・グループ・メンバ(グループ・メンバの宛先アドレスまたは宛先識別子(DID)で索引付けされた)の線形リストを記憶する。いくつかの適用例では、ルータは、そのルータからの特定のリンクが実際にマルチキャスト・セッションに参加しているかどうかに関わらず、ネットワーク上で生じる可能性がある可能なすべてのマルチキャスト・セッションに関するマルチキャスト・グループ・リストを記憶する。
【0006】
マルチキャスト線形リストの中の各宛先アドレス・エントリの内容には、宛先アドレスの様々なノード属性およびプロトコル属性が、すなわち、データ伝送パラメータが含まれる。一般に、この内容は、どこで(どの出力ポートを介して)、またいつ(どのような優先順位で)、パケットを宛先アドレスに送信するか、ならびにパケット・ヘッダの必要とされる変形の性質を記述して、パケットが宛先アドレスに届くことを確実にする。例えば、エントリは、宛先アドレスに達するのにそこを介してデータの送信が行われなければならないルータ出力ポートを示す識別子である待ち行列識別子を含むことが可能である。エントリの別の項目は、宛先アドレスの通信媒体およびネットワーク・プロトコルの要件(送信元ノードの媒体およびプロトコルとは異なる可能性がある)を満たすのに必要とされるパケット・ヘッダ変形を明らかにする。リスト・エントリは、ルータから宛先ノードに至る最短パスの記述子をさらに含むことが可能である。最低限、送出媒体のそれぞれを介する伝送のためにどのヘッダがパケットの先頭に付加されるかを示す情報が、各エントリに関して必要とされる。線形リストは、各エントリにおけるリンクを含むのではなく、エントリが、順々に配置される。最後のリスト・エントリは、リストの終端に達したことをアサートする指示子を含む。
【0007】
一部の適用例、すなわち、仮想ローカル・エリア・ネットワーク環境におけるブロードキャストのエミュレーションの場合、マルチキャスト・グループ・リストが、複数のバージョンで記憶され、それぞれの記憶されたリストは、1つのメンバを除き、グループのすべてのメンバを含む。各リストから1つの省略されたメンバが存在するので、グループに関する複数のリストの数は、リストの中のエントリの数に等しい。単一のマルチキャスト・グループだけに関してこの複数のバージョンを記憶するのに、各ルータにおいて相当な記憶容量が必要とされる。
【0008】
マルチキャスト・パケットがネットワーク・ルータに着信したとき、送信側ノードおよび宛先のマルチキャスト・グループが、受信されたパケットから判定される。次に、この情報を使用して、送信元ノードがリストから省略されたノードである適切なグループ・リストが選択される。したがって、パケットは、そのグループに伝送されるが、送信元ノードは、そのグループ・リストの中に含まれないので、パケットが、送信元に戻るように伝送されることはない。
【0009】
いくつかの実施形態では、グループのメンバは、個々のネットワーク・ノードではなく、複数のノードをそれぞれが含むローカル・エリア・ネットワークとすることが可能である。したがって、ネットワークである送信元ノードは、自らのネットワーク内のすべてのノードにパケットを伝送し、マルチキャスト・グループへのパケットの伝送を要求する。この状況では、送信元ノードにパケットを戻す伝送を禁止するのが特に有利である。というのは、パケットは、送信元に戻るように伝送されると、送信元ネットワークの各ノードに再送信され、送信元ネットワーク内の相当な帯域幅を不必要に消費することになるからである。
【0010】
各グループ・リストから1つのネットワーク・ノードを省略するのではなく、別のマルチキャスト技術によれば、各線形リストが、グループの異なるメンバで開始する。「A」マルチキャスト・グループが、7つのメンバを含み、そのメンバのアドレスが、符号A1からA7で示されている図1を参照されたい。各「A」グループ・リストは、異なるグループ・メンバで開始している。この実施形態によれば、ルータにおいて受信されるマルチキャスト・パケット・データは、オプションのスキップ・ファースト・フラグ識別子が導出されるあるヘッダ情報を含む。着信パケットは、そのパケット・ヘッダから着信ポート、および宛先の識別を判定するために分類エンジンを介して処理される。また、ヘッダは、スキップ・ファースト・フラグの値(すなわち、設定されているか、または設定されていないか)を判定可能にする情報も含む。例えば、パケット・ヘッダの中のアドレスが、マルチキャスト・パケットを指定することが可能であり、またこのアドレスを認識し、それに基づいて正しい宛先アドレスおよびスキップ・ファースト・フラグ値を生成するように分類エンジンをプログラミングすることができる。
【0011】
次に、ルータ分類エンジンが、アドレス情報およびフラグ情報を読み取り、送信元アドレスをグループ・リストの中の第1のエントリと照合することによって正しいマルチキャスト・グループ・リストを選択する。スキップ・ファースト・フラグが設定されている場合、データは、グループの中の第1のアドレスには送信されない。
【0012】
マルチキャスト・パケットに関する送信元としてそれぞれが機能するN個のメンバがマルチキャスト・グループの中に存在し、そのグループの他のすべてのメンバにパケットが送信されなければならない場合には、N個のリストが必要とされる。ただし、各リストは、(N−1)個のエントリを有する。というのは、パケットは、送信元ノードに送り返されないからである。したがって、各リストが1つを除きグループのすべてのメンバを含むすべてのグループ・リストを記憶するのに、(N)(N−1)メモリ位置が必要とされる。したがって、各ルータにおける記憶要件は、通常、そうであるようにNが比較的大きい場合、相当なものになる可能性がある。
【0013】
特定の順序でマルチキャスト・グループの受信側ノードにデータが伝送される別の実施形態では、受信側ノードに関する異なる順序をそれぞれが示す追加のグループ・リストが必要とされる。リストの先頭に宛先識別子「A1」をそれぞれが有する8つの異なる順序付けされたリストが示されている図2を参照されたい。第1のエントリとして「A1」を有する合計で720の異なる順序付けされたリストが存在する。同様に、第1のエントリとして「A2」を有する720のリストが存在する。したがって、7つのメンバの比較的小さいグループ・リストに関して、維持されるべき5040の異なるリストが存在する。多くのそのようなリストが、多くのマルチキャスト・グループに関して各ルータにおいて維持されるので、メモリ記憶要件は、極端なものになる可能性がある。
【0014】
【発明が解決しようとする課題】
【0015】
【課題を解決するための手段】
各ネットワーク・プロセッサ、例えば、マルチキャスト・グループ・リストのコピーが維持されるルータにおけるメモリ記憶要件を軽減するため、本発明によるマルチキャスト・グループ・リストが、循環構造でリンクされ、任意のリスト・エントリが、リストの全体にわたって処理を行うための開始ポイントとして働くことを可能にする。一実施形態では、リストに関する選択された開始ポイントは、マルチキャスト・データの送信元ノードであり、データが、送信元ノードに戻るよう伝送されることはない。マルチキャスト・グループ・リストの中の各エントリは、別のエントリにリンクされ、循環型にリンクされたリストを形成する。処理エンジンは、マルチキャスト・リンク・リストを進み、グループの各メンバに伝送するためにマルチキャスト・パケットを準備する。アドレス指定機構が開始ポイントに戻ったとき、リンク・リストは、完全にトラバースされており、処理が終了する。
【0016】
本発明は、本発明の説明および以下の図に鑑みて考察したとき、より容易に理解することができ、本発明のさらなる利点および使用法がより明白となる。
【0017】
【発明の実施の形態】
本発明による2つの代表的なインターリーブされた循環マルチキャスト・グループ・リスト(AおよびB)を図3で示している。各グループのメンバは、循環型に一緒にリンクされており、したがって、メンバが、リストの中で何らかの特定の順序で現れることは必要ない。マルチキャストされるためにネットワーク・プロセッサに着信するパケットが、マルチキャスティング・ステージング待ち行列の中に記憶される。パケットのヘッド側が、リンク動作のためにマルチキャスト・スレッドにロードされる。一実施形態では、受信されたパケットは、マルチキャスト・グループ・リストの処理を開始するためのエントリ・ポイントを識別する。また、データ・パケットは、そのパケットが送信されるべきマルチキャスト・グループも識別する。一般に、各マルチキャスト・パケットは、マルチキャスト・グループを表すように事前構成されたアドレスを含む。当技術分野で周知のとおり、特定のネットワーク要件(例えば、インターネット・プロトコル・マルチキャストは、イーサネット(登録商標)・マルチキャストとは異なる形で構成される)に応じてこれを実行するためのいくつかのスキームが存在し、したがって、ルータ、またはその他のネットワーク・プロセッサは、マルチキャスト・パケットとしてパケットを識別することができ、さらにそのパケットが向けられたマルチキャスト・グループを識別することができる。
【0018】
本発明によるマルチキャスト・リストの中の各エントリは、そのマルチキャスト・グループの中の別のエントリに対するポインタまたはリンク情報を含み、リストの最後のエントリは、再びエントリ・ポイントをポイントする。図3では、エントリ・ポイントA1で「A」リストに入り、マルチキャスト宛先ノードA2、A3、A4、A5に関するエントリを通ってA1に戻る。処理エンジンがリスト・エントリに達すると、その内容が処理されて(宛先アドレスへのパケットの伝送を正常に行うため、前述したとおり、パケットの適切なデータ伝送属性が判定され)、宛先アドレスに関連する適切な属性を含め、その宛先アドレスのためにパケットのコピーが作成される。次に、処理エンジンは、エントリのリンク情報またはポインタを読み取って処理するための次のエントリを決定する。このリンク・プロセスは、ポインタまたはリンクが処理エンジンをエントリ・ポイントに戻すまで継続し、戻った時点で、プロセスが終了する。というのは、マルチキャスト・グループ・リストが、完全にトラバースされたからである。
【0019】
このプロセスの例外は、エントリ・ポイントであり、前述の例ではA1である。エントリ・ポイントは、スキップされる。すなわち、記憶されているエントリ・ポイント・アドレスにパケットを伝送するための再伝送属性は、処理されず、エントリ・ポイント・アドレスに対してデータ・パケットのコピーは作成されない。したがって、マルチキャスト・パケットは、エントリ・ポイント・アドレスには伝送されない。代わりに、エントリ・ポイントのリンク情報だけが読み取られて、処理エンジンが、循環リストの中の次のリンクされたエントリに即時に進むようになる。
【0020】
マルチキャスト・リストへのエントリ・ポイントを識別するためのいくつかの異なる技術が存在する。前述したとおり、いくつかの適用例では、データ・パケットを送信元ノードに戻すように伝送することは、必要でも正しくもない。したがって、本発明の一実施形態によれば、受信されたデータ・パケットが、エントリ・ポイントを識別し、この実施形態では、送信元ノードが、エントリ・ポイントとして識別される。一実施形態によれば、受信されたデータ・パケットのヘッダが、スキップ・フラグの値を判定する元にする情報を含む。スキップ・フラグが所定の値を有する場合には、処理中に送信元アドレスがスキップされて、データ・パケットが、送信元に送り返されないようになる。あるいは、受信されたデータが、別のアドレスをエントリ・ポイントとして識別し、したがって、このアドレスがスキップされて、そのセッションに関するマルチキャスト・データ・パケットを受信しないことが可能である。別の実施形態によれば、受信されたデータ・パケットは、自らがマルチキャスト・パケットまたはブロードキャスト・パケットであることを示し、仮想ローカル・エリア・ネットワークなどの適用例では特に、ネットワーク・ルータが、パケットを送信元に戻すように再伝送しないようにプログラミングされる。さらに別の実施形態では、グループ・リストに関するエントリ・ポイントが、データ・パケットに含まれる情報の外部で決められる。例えば、常に所定のエントリ・ポイントで指定されたマルチキャスト・リストに入るようにデバイスをプログラミングする、またはマルチキャスト・パケットが受信されたルータ入力ポートに基づいてエントリ・ポイントを判定することが可能である。
【0021】
プロセスが実行される中で、マルチキャスト・グループの第1の処理されるノード(すなわち、エントリ・ノード)および第2の処理されるノードが、いつプロセスがエントリ・ポイントに戻るかを判定する際に使用するためにマルチキャスト・スレッドの中に保存される。二回目にノードに到達したときはいつでも、プロセスが終了される。
【0022】
本発明による循環マルチキャスト・リストの使用により、従来技術と比べて、ネットワーク・プロセッサにおけるメモリ記憶要件が相当に軽減される。エントリ・ポイントが、そのマルチキャスト・セッションに関してグループからのスキップされる、または省略されるグループ・メンバを決定して、各マルチキャスト・グループごとに単一の循環型にリンクされたリストだけしか必要ない。従来技術では、各マルチキャスト・グループ・リストは、線形にリンクされ、したがって、それぞれのリストの繰り返しが、マルチキャスト・パケットのコピーを受信しない1つのグループ・メンバを省略して、リストの中のエントリの数に等しい回数、繰り返されなければならない。
【0023】
図4は、本発明の教示による循環型にリンクされたマルチキャスト・グループ・リストを処理するための流れ図を示している。この流れ図は、開始ステップ20で開始し、マルチキャスト・グループ・リストが形成されるステップ22に進む。通常、このリストは、ネットワーク・ルータによって実装されるソフトウェア構成またはプロトコルを介してパケット着信に先立って形成され、メンバを追加または削除する必要に応じて更新される。各グループ・メンバの宛先アドレスは、リスト索引の役割をする。ステップ23で、着信パケットを分類して、そのパケットが送信されるべきマルチキャスト・グループ・リストを判定することにより、リストに関する開始ポイントが識別される。ステップ24で、リストの開始ポイントをスキップすべきかどうかが判定される。
【0024】
開始ポイントをスキップする場合には、プロセスは、判定ステップ28に進む。開始ポイントをスキップしない場合には、プロセスは、ステップ29に進み、リスト・エントリの宛先ノードに関するデータ伝送パラメータが判定され、そのパラメータに従ってマルチキャスト・パケットのコピーが準備される。次に、プロセスは、判定ステップ28に進み、リストが完全にトラバースされ開始ポイントに戻ったかどうかを判定する。リストがトラバースされていない場合、判定ステップ28は、否定応答を戻し、プロセスは、次の宛先アドレスを処理するためにステップ29に戻る。次のエントリが、開始ポイント、つまり空白のネクスト・エントリ・ポインタに等しいため、判定ステップ28が肯定応答を戻した場合には、リストの中のすべての宛先アドレスが処理済みであり、ステップ30で、マルチキャスト・パケットが、伝送のために待ち行列に入れられる。
【0025】
図3で示した別の例では、リンク・リスト「B」に関するエントリ・ポイントが、B5であり、B5は、処理中のパケットに関する送信元ノードを表すことが可能である。いずれにしても、B5の内容は、処理されないが、リンク情報が獲得される。次に、プロセスは、B6、B1、B2、B3、B4にわたり、それぞれ内容を処理しながら実行され、B5に戻る。B5に戻ると、リスト全体がトラバースされ、データ・パケットがコピーされ、宛先ノードの特性によって必要とされる必要なパケットの変更が行われ、データ・パケットは、宛先ノードに、つまり、エントリ・ポイントの宛先アドレスB5を除くBマルチキャスト・グループ・リストのすべてのノードにマルチキャストされる準備が整っている。
【0026】
図3で示したとおり、リンク・リストの要素に関する必須の順序は存在せず、いくつかのリンク・リストをインターリーブすることができる。図3では、「A」リストと「B」リストがインターリーブされ、個々の宛先アドレスには、順序付けが行われていないことに留意されたい。リストが作成され、宛先が追加され、削除される中で、個々の要素が一方から他方へリンクされるという条件で、新しい宛先を任意の時点で追加することができる。図3の斜線を付けたブロックは、循環リンク・リストの中の前に削除されたアドレスを表す。
【0027】
図5は、図3の循環マルチキャスト・グループ・リストのような、前述した循環マルチキャスト・グループ・リストを含む、本発明の教示に従って構成されたネットワーク・プロセッサ31を示している。マルチキャスト・パケット送信元32が、個々のマルチキャスト・グループ・メンバ34にマルチキャストするためのデータ・パケットをネットワーク・プロセッサ30を介して伝送する。ネットワーク・プロセッサ30がパケットを受信すると、内部の処理エンジン36が、前述した本発明の教示に従ってマルチキャスト・リストのエントリ・ポイントを判定し、エントリ・ポイントに戻るまでリストをトラバースする。マルチキャスト・リストの中の各エントリにおいて、データ・フォーマッタ38が、リスト・エントリの内容で示されるデータ伝送パラメータに従ってマルチキャスト・データ・パケットをフォーマットする。各宛先アドレスのデータ伝送パラメータを満たすように変更されたマルチキャスト・パケットが、マルチキャスト・グループ・メンバ34に伝送される。
【0028】
宛先アドレスは、マルチキャスト・グループ・リストに動的に追加し、またマルチキャスト・グループ・リストから動的に削除することができる。この追加または削除は、リストがアクティブである間に、すなわち、宛先アドレスにデータ・パケットを送信するのに使用されている間に行われる可能性があるため、パケットのマルチキャスティングに干渉しないプロセスを利用しなければならない。B5が、「B」マルチキャスト・リストから削除されるものと想定されたい。まず、B4に関連するポインタが、B6をポイントするように変更される。次に、B5からB6へのポインタが除去される。各マルチキャスト・グループは、ステータス・ビットの関連するスレッドを有し、グループの中のエントリが追加または削除されるときはいつでも、このビットが消去される。このビットは、グループがトラバースされる際にアクティブに設定され、これにより、グループ・リストが正常に変更されたことの指示子を提供する。
【図面の簡単な説明】
【図1】従来技術による複数のマルチキャスト・リンク・リストを示す図である。
【図2】従来技術による複数のマルチキャスト・リンク・リストを示す図である。
【図3】本発明による循環マルチキャスト・リストを示す図である。
【図4】本発明による処理ステップを示す流れ図である。
【図5】本発明の教示による循環マルチキャスト・リンク・リストを含むネットワーク・プロセッサを示す図である。

Claims (10)

  1. 複数のノードを有するネットワークにおいてマルチキャスト・セッションの宛先ノードを識別するための方法であって、
    複数の宛先ノードのリストから成る循環型にリンクされたリストを形成するステップであって、各宛先ノードが、マルチキャスト・データを受信するための関連する宛先アドレス、および前記リスト中の、処理のための次の宛先ノードへのリンクを有しているステップと、
    前記マルチキャスト・セッションの識別された宛先ノードに対して送信するよう意図されたデータを受信して、最初の宛先ノードで前記リストに入るステップと、各宛先ノードを処理するために前記リンクされたリストをトラバースし、前記最初の宛先ノード以外の各宛先ノードについて、前記マルチキャスト・データを前記関連するアドレスに送り、および処理のための次の宛先ノードを決定するために前記リンクを用いるステップと、
    すべてのリンクされた宛先ノードが処理されてしまったときに前記トラバースするステップを終了するステップと、を含み、前記受信されたデータの送信元である宛先ノードがマルチキャスト・セッションから除外されるようになっている方法。
  2. 前記受信したデータが、前記マルチキャスト・セッションから除外されるべき前記宛先ノードを識別する指示子を含む請求項に記載の方法。
  3. 宛先ノードであって、そこから前記データが受信された場合の宛先ノードを前記マルチキャスト・セッションから除外されるべき前記宛先ノードとして前記指示子が識別する請求項に記載の方法。
  4. 前記最初の宛先ノード・エントリが、予め定められている請求項1に記載の方法。
  5. 前記マルチキャスト・セッションの識別された宛先ノードへの伝送に向けられたデータを入力ポートで受信し、前記最初の宛先ノード・エントリを前記入力ポートに基づいて判定するステップとをさらに含む請求項1に記載の方法。
  6. 前記トラバースされる宛先ノード・エントリが、前記マルチキャスト・セッションの識別された宛先ノードである請求項1に記載の方法。
  7. 複数のマルチキャスト・セッションに関する宛先ノード・エントリが、リストの中でインターリーブされ、前記複数のマルチキャスト・セッションの各セッションに関する前記宛先ノード・エントリが、循環型にリンクされる請求項1に記載の方法。
  8. 前記リンクが、各宛先ノードにおいて、別の宛先ノードをポイントして、前記複数の宛先ノードが循環型にリンクされるようにするポインタを含む請求項に記載の方法。
  9. 複数のノードを有するネットワークにおいてマルチキャスト・セッションに関する宛先ノードを識別するための方法であって、
    複数の宛先ノードの循環型にリンクされたリストから成るマルチキャスト・グループ・リストを形成するステップであって、各宛先リストがリンク情報およびマルチキャスト・データを受信するための関連するノードアドレスを含むステップと、
    前記マルチキャスト・セッションの前記宛先ノードへの伝送に向けられたデータを受信するステップと、
    前記受信したデータから判定された最初の宛先ノードであって、前記データが受信されたデータの送信元である最初の宛先ノードにおいて前記リストに入るステップと、
    前記リスト中の各宛先ノードの前記リンク情報に従って前記リストをトラバースし、および前記リスト中の前記最初の宛先ノード以外の各宛先ノードについて前記マルチキャスト・データを前記関連するノードアドレスに送るステップと、
    前記リンク情報に従って前記リストをトラバースするステップと、
    前記トラバースするステップが、いつ前記最初の宛先ノードに戻るかを判定するステップと、および
    前記判定するステップに応答して、前記トラバースするステップを終了するステップとを含み、前記受信されたデータの送信元である宛先ノードが前記マルチキャスト・セッションから除外されるようになっている方法。
  10. 複数のノードを有するネットワークにおいてマルチキャスト・セッションの宛先ノードを識別するための装置であって、
    複数の宛先ノードのリストから成る循環型にリンクされたリストであって、各宛先ノードの内容が、関連するノードアドレス、リストリンク情報およびデータ伝送パラメータを含む、循環型にリンクされたリストと、
    前記マルチキャスト・セッションの宛先ノードに送信するよう意図されたデータを受信して、受信されたデータの送信元である宛先ノードを前記リストに入るための最初の宛先ノードとして識別するため、また前記最初の宛先ノードに達するまで、前記リストリンク情報に従って前記リンクされたリストをトラバースするための処理エンジンであって、前記最初の宛先ノード以外の各宛先ノードにて、前記関連する宛先ノードアドレスに対して、前記データ伝送パラメータに従ってマルチキャスト・データを送る処理エンジンと、を備え、前記受信されたデータの送信元である前記宛先ノードが前記マルチキャスト・セッションから除外するようになっている装置。
JP2002369110A 2001-12-21 2002-12-20 データ・ネットワークにおいてマルチキャスト・リストを維持するための方法および装置 Expired - Fee Related JP4331471B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/037,067 US8688853B2 (en) 2001-12-21 2001-12-21 Method and apparatus for maintaining multicast lists in a data network
US10/037067 2001-12-21

Publications (3)

Publication Number Publication Date
JP2003209575A JP2003209575A (ja) 2003-07-25
JP2003209575A5 JP2003209575A5 (ja) 2006-01-26
JP4331471B2 true JP4331471B2 (ja) 2009-09-16

Family

ID=21892255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002369110A Expired - Fee Related JP4331471B2 (ja) 2001-12-21 2002-12-20 データ・ネットワークにおいてマルチキャスト・リストを維持するための方法および装置

Country Status (5)

Country Link
US (1) US8688853B2 (ja)
JP (1) JP4331471B2 (ja)
KR (1) KR100904156B1 (ja)
GB (1) GB2383493B (ja)
TW (1) TWI286426B (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250357B2 (en) 2000-09-13 2012-08-21 Fortinet, Inc. Tunnel interface for securing traffic over a network
US7181547B1 (en) 2001-06-28 2007-02-20 Fortinet, Inc. Identifying nodes in a ring network
US7317721B1 (en) * 2002-04-12 2008-01-08 Juniper Networks, Inc. Systems and methods for memory utilization during packet forwarding
US7266120B2 (en) 2002-11-18 2007-09-04 Fortinet, Inc. System and method for hardware accelerated packet multicast in a virtual routing system
US7499419B2 (en) * 2004-09-24 2009-03-03 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
JP5180874B2 (ja) * 2009-02-27 2013-04-10 株式会社日立製作所 バッファ管理方法、及びパケット通信装置
US8964742B1 (en) * 2010-07-28 2015-02-24 Marvell Israel (M.I.S.L) Ltd. Linked list profiling and updating
US9348775B2 (en) * 2012-03-16 2016-05-24 Analog Devices, Inc. Out-of-order execution of bus transactions
US20130308496A1 (en) * 2012-05-21 2013-11-21 Broadcom Corporation System and Method for Generic Multi-Domain Network Pruning
JP6107413B2 (ja) * 2013-05-22 2017-04-05 富士通株式会社 分析装置、ネットワークシステム、ポートの切り替え方法及びプログラム
US10348626B1 (en) * 2013-06-18 2019-07-09 Marvell Israel (M.I.S.L) Ltd. Efficient processing of linked lists using delta encoding
US9825884B2 (en) 2013-12-30 2017-11-21 Cavium, Inc. Protocol independent programmable switch (PIPS) software defined data center networks
US9813327B2 (en) * 2014-09-23 2017-11-07 Cavium, Inc. Hierarchical hardware linked list approach for multicast replication engine in a network ASIC
US9760418B2 (en) 2014-09-23 2017-09-12 Cavium, Inc. Session based packet mirroring in a network ASIC
US9729338B2 (en) 2014-09-23 2017-08-08 Cavium, Inc. Fast hardware switchover in a control path in a network ASIC
US9565136B2 (en) 2014-09-23 2017-02-07 Cavium, Inc. Multicast replication engine of a network ASIC and methods thereof
US10419571B2 (en) 2015-03-24 2019-09-17 Cavium, Llc Packet processor forwarding database cache
JP7211213B2 (ja) * 2019-03-29 2023-01-24 株式会社デンソー 中継装置、及び中継方法
US12047502B2 (en) 2021-05-05 2024-07-23 Verizon Patent And Licensing Inc. Systems and methods for backing up a hardware key
US12034717B2 (en) 2022-01-07 2024-07-09 Verizon Patent And Licensing Inc. Systems and methods for firmware password management

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH025181A (ja) * 1988-06-23 1990-01-10 Fujitsu Ltd 連鎖リストの削除方式
US5095480A (en) * 1989-06-16 1992-03-10 Fenner Peter R Message routing system for shared communication media networks
US5295262A (en) * 1991-05-16 1994-03-15 International Business Machines Corporation Read-only access without blocking via access vectors
US5577246A (en) * 1992-09-25 1996-11-19 Lucent Technologies Inc. Database memory compaction and reclamation method
ATE176744T1 (de) * 1992-11-27 1999-02-15 Ibm Mehrfachsende-leitweglenkung zwischen bereichen
JP3256610B2 (ja) * 1993-09-17 2002-02-12 株式会社東芝 端末起動方法
DE4343588A1 (de) * 1993-12-21 1995-06-22 Sel Alcatel Ag Verfahren und Einrichtung zur zufälligen Auswahl einer von N gleichen Einheiten, sowie Koppelelement, Koppelnetz und Vermittlungsstelle damit
CA2151180C (en) * 1994-09-14 2003-11-04 Robert Brownhill Method and apparatus for multicast of atm cells
US5528588A (en) * 1994-09-14 1996-06-18 Fore Systems, Inc. Multicast shared memory
JP3471137B2 (ja) * 1995-08-25 2003-11-25 株式会社東芝 パケット送信ノード装置及びパケット転送方法
US5689505A (en) * 1996-01-16 1997-11-18 Lucent Technologies Inc. Buffering of multicast cells in switching networks
US5787249A (en) * 1996-04-30 1998-07-28 International Business Machines Coporation Method for managing membership of a group of processors in a distributed computing environment
US6321270B1 (en) * 1996-09-27 2001-11-20 Nortel Networks Limited Method and apparatus for multicast routing in a network
US6188690B1 (en) * 1996-12-12 2001-02-13 Pmc-Sierra, Inc. Method and apparatus for high speed, scalable communication system
US5924098A (en) * 1997-06-30 1999-07-13 Sun Microsystems, Inc. Method and apparatus for managing a linked-list data structure
KR100227794B1 (ko) * 1997-07-16 1999-11-01 정선종 멀티포인트 통신 시스템 및 멀티캐스트 경로 배정생성방법에 의한 가상 경로 생성 방법
JP3443283B2 (ja) * 1997-07-25 2003-09-02 日本電信電話株式会社 同報リスト作成方法
JP3880140B2 (ja) * 1997-08-04 2007-02-14 株式会社ガスター 1缶2水路型給湯風呂釜
US6014690A (en) * 1997-10-24 2000-01-11 Digital Equipment Corporation Employing multiple channels for deadlock avoidance in a cache coherency protocol
US6396834B1 (en) * 1997-11-24 2002-05-28 Riverstone Networks, Inc. Flexible scheduler in an asynchronous transfer mode (ATM) switch
US6219352B1 (en) * 1997-11-24 2001-04-17 Cabletron Systems, Inc. Queue management with support for multicasts in an asynchronous transfer mode (ATM) switch
US6310875B1 (en) * 1998-03-30 2001-10-30 Nortel Networks Limited Method and apparatus for port memory multicast common memory switches
JPH11313060A (ja) * 1998-04-28 1999-11-09 Nippon Telegr & Teleph Corp <Ntt> 同報リスト作成方法
US6327621B1 (en) * 1998-08-25 2001-12-04 International Business Machines Corporation Method for shared multicast interface in a multi-partition environment
KR20000026640A (ko) * 1998-10-22 2000-05-15 정선종 인터넷 상에서 화상회의 서비스를 위한 멀티캐스트 트리 구성방법
KR100327235B1 (ko) * 1998-11-21 2002-06-20 윤종용 Corba를 이용한 멀티캐스트 통신장치 및 방법
US6574194B1 (en) * 1998-12-18 2003-06-03 Cypress Semiconductor Corporation Architecture of data communications switching system and associated method
US6850987B1 (en) * 1999-06-01 2005-02-01 Fastforward Networks, Inc. System for multipoint infrastructure transport in a computer network
KR100384997B1 (ko) * 1999-08-25 2003-05-22 주식회사 케이티 링크드-리스트 공통 메모리 스위치 장치
US6661789B1 (en) * 1999-09-10 2003-12-09 Alcatel Dynamic burstification based on fully/partially shared multicast entities
JP3782272B2 (ja) * 1999-12-14 2006-06-07 富士通株式会社 マルチキャストシステム、管理サーバ、マルチキャストグループ管理プログラムを記録したコンピュータ読み取り可能な記録媒体
GB2360168B (en) * 2000-03-11 2003-07-16 3Com Corp Network switch including hysteresis in signalling fullness of transmit queues
JP4436960B2 (ja) * 2000-05-16 2010-03-24 日本電気株式会社 パケット通信システムおよび移動通信システム
US6581063B1 (en) * 2000-06-15 2003-06-17 International Business Machines Corporation Method and apparatus for maintaining a linked list
US8619793B2 (en) * 2000-08-21 2013-12-31 Rockstar Consortium Us Lp Dynamic assignment of traffic classes to a priority queue in a packet forwarding device
US7075928B1 (en) * 2000-09-25 2006-07-11 Integrated Device Technology, Inc. Detection and recovery from connection failure in an ATM switch
US6822958B1 (en) * 2000-09-25 2004-11-23 Integrated Device Technology, Inc. Implementation of multicast in an ATM switch
US20030088694A1 (en) * 2001-11-02 2003-05-08 Internet Machines Corporation Multicasting method and switch
US7730220B2 (en) * 2004-10-22 2010-06-01 Microsoft Corporation Broadcasting communication within a rendezvous federation
US8917738B2 (en) * 2009-04-27 2014-12-23 Lsi Corporation Multicasting traffic manager in a network communications processor architecture

Also Published As

Publication number Publication date
GB0227956D0 (en) 2003-01-08
US20030120806A1 (en) 2003-06-26
JP2003209575A (ja) 2003-07-25
GB2383493B (en) 2004-09-08
TW200301643A (en) 2003-07-01
KR20030053453A (ko) 2003-06-28
KR100904156B1 (ko) 2009-06-23
US8688853B2 (en) 2014-04-01
GB2383493A (en) 2003-06-25
TWI286426B (en) 2007-09-01

Similar Documents

Publication Publication Date Title
JP4331471B2 (ja) データ・ネットワークにおいてマルチキャスト・リストを維持するための方法および装置
US11910037B2 (en) Layered multicast and fair bandwidth allocation and packet prioritization
US8018964B2 (en) Multicast operations using prioritized state information
JP4673752B2 (ja) マルチキャストパケット制御装置
JP4550728B2 (ja) パケット転送装置及びマルチキャスト展開方法
US20050074010A1 (en) Method and apparatus for exchanging routing information in distributed router system
US8238335B2 (en) Multi-route transmission of packets within a network
US20050141502A1 (en) Method and apparatus to provide multicast support on a network device
KR100391016B1 (ko) 엑스캐스트를 이용한 멀티캐스트 데이터 전송 방법
JP2003069640A (ja) イーサネット(登録商標)上における明示的マルチキャストサービス方法及び装置
US7233578B1 (en) Network with self regulating quality of service (QoS)
US8554860B1 (en) Traffic segmentation
CN114679562B (zh) 一种多平台视频会议的数据传输系统及方法
JP2000261429A (ja) Ipマルチキャストユニキャスト変換通信方式
JP2006186888A (ja) ユーザ受信優先度対応データ配信システム
Plunkett et al. An evaluation of three multicast routing algorithms

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051206

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080312

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080612

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080617

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080912

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090306

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090422

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090618

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130626

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees