"マルチキャストソースに少なくとも1つのレイヤ2交換機を介して接続されたプロトコルインデペンデントマルチキャストPIMルータであって、マルチキャストソースにより開始されたマルチキャストフローを受け、前記マルチキャストフローが受けられ得るかを判断し、前記マルチキャストフローが受けられ得ないとの判断に応じて第2のモジュールにプルーンインディケーションを送り;または、ダウンストリームPIMルータからの前記マルチキャストフローのためのPIMプルーンメッセージ、または、PIMルータに接続されたクライアントからの前記マルチキャストフローのためのマルチキャストグループリーブメッセージを受け、前記PIMプルーンメッセージまたは前記マルチキャストグループリーブメッセージが受けられたポートを、前記マルチキャストフローに対応する出口ポートリストから削除し、前記マルチキャストフローが受けられ得るかを判断し、前記マルチキャストフローが受けられ得ないとの判断に応じて、前記プルーンインディケーションを、前記プルーンインディケーションを受け、PIMプルーンメッセージを前記マルチキャストフローが受けられたポートを介して送れる第2のモジュールに送る第1のモジュールを備えるPIMルータ。前記PIMルータは、PIM-SSMを採用し、または、PIM-SMを採用し、指定されたルータではなく、または、双方向PIMを採用し、DRではなく、前記第1のモジュールは、前記マルチキャストフローを受け、前記マルチキャストフローの情報を第2のサブモジュールに送る第1のサブモジュールを備え、前記第2のサブモジュールは、前記第1のサブモジュールからの前記マルチキャストフローの情報を受け、前記マルチキャストフローが受けられ得ないかを判断し、マルチキャストルーティングテーブルエントリがPIMルータにおいてマルチキャストフローのために確立されていないとの判断に応じて、または、前記マルチキャストフローのためのマルチキャストルーティングテーブルエントリが確立されていないが、前記マルチキャストルーティングテーブルエントリの出口ポートリストが空であるとの判断に応じて、前記プルーンインディケーションを前記第2のモジュールに送る請求項1に記載のPIMルータ。前記PIMルータがPIM-SMを採用し、DRであるときには、前記第1のモジュールは、前記マルチキャストフローを受け、前記マルチキャストフローの情報を第2のサブモジュールに送る第1のサブモジュールを備え、前記第2のサブモジュールは、前記マルチキャストフローの情報を前記第1のサブモジュールから受け、前記マルチキャストフローが受けられ得ないかを判断し、マルチキャストルーティングテーブルエントリが前記マルチキャストフローのために確立されたが、前記マルチキャストルーティングテーブルエントリの出口ポートリストが空であるとの判断に応じて、前記第2のモジュールにプルーンインディケーションを送る請求項1に記載のPIMルータ。前記PIMルータが、PIM-DMを採用するときに前記第1のモジュールは、前記マルチキャストフローを受け、前記マルチキャストフローの情報を第2のサブモジュールに送り、前記第2のサブモジュールは、前記マルチキャストフローの情報を前記第1のサブモジュールから受け、前記マルチキャストフローが受けられ得ないかを判断し、マルチキャストルーティングテーブルエントリが前記マルチキャストフローのために確立されていたが、前記マルチキャストルーティングテーブルエントリの中の全ての出口ポートがプルーンポートであるとの判断に応じて、前記第2のモジュールにプルーンインディケーションを送り;または、PIMプルーンメッセージをダウンストリームPIMネイバーから受け、PIMプルーンメッセージが受けられたポートを、マルチキャストルーティングテーブルエントリの出口ポートリストにプルーンポートとして追加し、PIMグラフトメッセージをダウンストリームPIMネイバーから受け、前記PIMグラフトメッセージが受けられたポートをマルチキャストルーティングテーブルエントリの出口ポートリストに転送ポートとして追加し、前記マルチキャストフローが受けられ得ないかを判断し、ダウンストリームPIMネイバーに接続されている全てのポートがマルチキャストルーティングテーブルリストの出口ポートリストに追加され、マルチキャストルーティングテーブルエントリの中の全ての出口ポートがプルーンポートであると判断した後に、前記第2のモジュールにプルーンインディケーションを送る請求項1に記載のPIMルータ。前記PIMルータが、PIM-SMまたはPIM-SSMを採用するときに、ダウンストリームPIMルータにより送られたマルチキャストフローのためのPIMジョインメッセージを受け、PIMジョインメッセージをマルチキャストソースの方向に送信し;または、前記PIMルータが、PIM-SM、PIM-SSMまたはPIM-DMを採用するときに、PIMルータに接続されたクライアントにより送られた前記マルチキャストフローのためのマルチキャストグループジョインメッセージを受け、PIMジョインメッセージをマルチキャストソースの方向に送る第3のモジュールをさらに有する請求項1に記載のPIMルータ。前記第3のモジュールは、さらに、ダウンストリームPIMルータからのPIMジョインメッセージまたは前記クライアントからの前記マルチキャストグループジョインメッセージを受けた後で、マルチキャストルーティングテーブルエントリが前記PIMルータにおいて前記マルチキャストフローのために確立されていたかを判断し、前記PIMジョインメッセージまたは前記マルチキャストグループジョインメッセージが受けられたポートを、マルチキャストルーティングテーブルエントリの出口ポートリストに追加し、前記PIMジョインメッセージのマルチキャストソースへの送信を実行する請求項5に記載のPIMルータ。PIMルータが、PIM-SMを採用し、DRでないとき、または、双方向PIMを採用し、DRでないときに、DRでなかった前記ファーストホップPIMルータがDRになったときに、前記マルチキャストフローに対応するマルチキャストルーティングテーブルエントリに従って、PIMジョインメッセージをマルチキャストフローそれぞれのマルチキャストソースの方向に送る第4のモジュールをさらに備える請求項1に記載のPIMルータ。PIMルータがPIM-DMを採用するときに、前記マルチキャストフローのためのPIMグラフトメッセージをダウンストリームPIMネイバーから受け、前記マルチキャストソースの方向にPIMジョインメッセージをマルチキャストソースの方向に送る第5のモジュールを更に備える請求項1に記載のPIMルータ。前記第5のモジュールは、さらに、前記マルチキャストフローのためのPIMグラフトメッセージをダウンストリームPIMネイバーから受けた後に、マルチキャストフローに対応するマルチキャストルーティングテーブルエントリが前記PIMルータの中に確立されたかを判断し、前記PIMグラフトメッセージが受けられたポートをマルチキャストルーティングテーブルエントリの出口ポートリストに追加し、前記マルチキャストルーティングテーブルエントリが確立されていて、前記マルチキャストルーティングテーブルエントリの前記出口ポートリストが空だと判断したときには、PIMジョインメッセージを前記マルチキャストソースの方向に送る請求項8に記載のPIMルータ。PIMスヌーピング機能を備え、マルチキャストソースとファーストホップPIMルータとの間の配置のためのレイヤ2交換機であって、マルチキャストフローのためのPIMプルーンメッセージを受信し、前記PIMプルーンメッセージが受けられたポートを、前記マルチキャストフローに対応するPIMスヌーピングエントリにプルーンポートとして追加し、前記メッセージの中の前記アップストリームネイバーアドレスが前記交換機のPIMスヌーピング機能により維持されるPIMルータのリストの中にないとの判断に応じて、前記プルーンポートを介した前記マルチキャストの転送を停止する第1のモジュールを備えた交換機。前記第1のモジュールは、さらに、前記プルーンポートのためにプルーン時間を設定し、前記プルーン時間が切れたときに、前記プルーンポートへの前記マルチキャストフローの転送を開始する請求項10に記載の交換機。前記第1のモジュールは、さらに、前記ファーストホップPIMルータにおいて、前記PIMプルーンメッセージに対応する前記マルチキャストフローの前記マルチキャストルーティングエントリのライフタイム値よりも少ないライフタイム値を設定し、前記プルーンポートの前記ライフタイム値が切れたときに、前記プルーンポートを一時的なルータポートに設定し、前記プルーンポートの前記ライフタイム値が切れたとき前記プルーンポートを一時的なルータポートに設定し、または、もし前記マルチキャストフローのためのPIMプルーンメッセージが確定前の期間の時間内に受信されたなら、前記一時的なルータポートをルータポートとして設定し、または、前記一時的なルータポートを前記プルーンポートとして設定し、もし前記マルチキャストフローのための前記PIMプルーンメッセージが受信されたなら、前記プルーンポートの前記ライフタイム値をリセットする請求項10に記載の交換機。前記第1のモジュールは、さらに、前記PIMプルーンメッセージの中のアップストリームネイバーアドレスが、前記交換機のPIMスヌーピング機能を用いるPIMルータのリストの中にないと判断し、前記マルチキャストフローのPIMスヌーピングエントリが前記交換機の中に確立されていないと判断したときには、前記マルチキャストフローのためのPIMスヌーピングエントリを確立し、空のリストを前記PIMスヌーピングエントリの中のアップストリームネイバーリストとして設定し、前記PIMスヌーピングエントリの中のダウンストリーム出口ポートリストにアップストリームポート以外のPIMネイバーに接続された全てのポートを追加し、前記マルチキャストフローに対応する前記PIMスヌーピングエントリへの前記プルーンポートの追加を実行し、前記PIMプルーンメッセージに対応する前記マルチキャストフローが、前記レイヤ2交換機の中のPIMスヌーピングエントリおよびマルチキャストグループ管理エントリに基づいて転送され得るかを判断し、もし前記PIMプルーンメッセージに対応する前記マルチキャストフローが転送され得るなら、PIMプルーンメッセージを転送せず、または、もし前記PIMプルーンメッセージに対応する前記マルチキャストフローが転送され得ないなら、PIMプルーンメッセージを前記マルチキャストソースの方向に転送する請求項10に記載の交換機。前記第1のモジュールは、さらに、前記PIMプルーンメッセージの中のアップストリームネイバーアドレスが、交換機のPIMスヌーピング機能を使うPIMルータのリストの中になく、前記交換機においてPIMスヌーピングエントリが前記マルチキャストフローのために確立されたとの判断に応じて、前記プルーンポートの前記マルチキャストフローに対応する前記PIMスヌーピングエントリへの追加を実行し、前記PIMプルーンメッセージに対応する前記マルチキャストフローが、前記レイヤ2交換機の中のPIMスヌーピングエントリおよびマルチキャストグループ管理エントリに基づいて転送され得るかを判断し、もし前記PIMプルーンメッセージに対応するマルチキャストフローが転送され得るならPIMプルーンメッセージを転送せず、または、もし前記PIMプルーンメッセージに対応するマルチキャストフローが転送され得ないなら、PIMプルーンメッセージを前記マルチキャストソースの方向に転送する請求項10に記載の交換機。マルチキャストフローのためのPIMジョインメッセージを受け;前記メッセージの中の前記アップストリームネイバーアドレスが前記交換機のPIMスヌーピング機能により維持されるPIMルータのリストの中にないとの判断に応じて、前記交換機において、前記PIMジョインメッセージに対応する前記マルチキャストフローのためのPIMスヌーピングエントリがあり、PIMジョインメッセージを受けた前記ポートがPIMスヌーピングエントリの中のプルーンポートであるとの判断に応じて、前記交換機の中のPIMスヌーピングエントリおよびマルチキャストグループ管理スヌーピングエントリに基づいて前記マルチキャストフローを受けるPIMジョインメッセージが受けられたポート以外の他のポートがあるかを判断し、もし前記マルチキャストフローを受け得る他のポートがあるなら、PIMジョインメッセージを転送せず、または、もし前記マルチキャストフローを受け得る他のポートがないなら、前記マルチキャストソースの方向にPIMジョインメッセージを転送する第2のモジュールをさらに備える請求項10に記載の交換機。前記第2のモジュールは、さらに、前記PIMジョインメッセージを前記マルチキャストソースの方向に転送した後に、前記PIMジョインメッセージが受けられた前記ポートを前記PIMスヌーピングエントリから削除し、前記ポートをルータポートとして設定する請求項15に記載の交換機。マルチキャストフローのためのマルチキャストグループジョインメッセージを受信し、前記マルチキャストグループジョインメッセージが受信されたポートを、前記マルチキャストフローに対応するマルチキャストグループ管理スヌーピングエントリにメンバーシップポートとして追加し、前記PIMスヌーピングエントリの中の前記マルチキャストグループジョインメッセージが受信されたポート以外の全てのルータポート、プルーンポートおよびアップストリームネイバーに前記マルチキャストグループジョインメッセージを転送する第3のモジュールをさらに備える請求項10に記載の交換機。プロトコルインデペンデントマルチキャストPIM機能を有する少なくとも1つのレイヤ2交換機を介してファーストホップPIMルータに接続されたマルチキャストソースを用意することと、前記ファーストホップPIMルータにより、前記マルチキャストソースにより開始されたマルチキャストフローを受信し、前記マルチキャストフローが受信されないとの判断に応じて、前記マルチキャストフローが受けられたポートを介してPIMプルーンメッセージを送ることと、前記ファーストホップPIMルータにより、前記マルチキャストフローが受けられないとの判断に応じて、前記ファーストホップPIMルータにより、ダウンストリームPIMルータまたはファーストホップPIMルータに接続されたクライアントからのマルチキャストフローのためのマルチキャストグループリーブメッセージからマルチキャストフローのためのPIMプルーンメッセージを受け、前記マルチキャストフローに対応した出口リストからPIMプルーンメッセージまたはマルチキャストグループリーブメッセージが受けられたポートを削除し、前記マルチキャストフローからのポートを前記PIMプルーンメッセージに送ることとを含むマルチキャストブランチをプル-ニングする方法。少なくとも1つのレイヤ2交換機により、前記ファーストホップPIMルータからの前記PIMプルーンメッセージを受信することと、PIMプルーンメッセージが受信されたポートを、前記マルチキャストフローに対応するPIMスヌーピングエントリへプルーンポートとして追加することと、前記PIMプルーンメッセージの中のアップストリームネイバーアドレスが、前記交換機のPIMスヌーピング機能により維持されるPIMルータのリストの中にないときに、前記プルーンポートを介した前記マルチキャストフローの転送を停止することとをさらに含む請求項18に記載の方法。IPマルチキャスト技術は、1対多数の送信に存在する問題を効果的に解決し、IPネットワークにおいて1対多数のデータ送信を効果的に実現し、ネットワーク帯域幅を節約し、ネットワーク負荷を減らすことができる。オンライン生放送、IPTV、遠隔教育、遠隔治療、インターネットラジオ、リアルタイムビデオ会議などのようなインターネット情報サービスを含むその他のいくつかの新しい付加価値サービスは、ネットワークのマルチキャスト機能を上手く利用することにより、より多くの進歩をとげることができる。上記目的を達成するために、本発明にかかるプロトコルインデペンデントマルチキャストPIMルータは、マルチキャストルータに少なくとも1つのレイヤ2交換機を介して接続されたPIMルータであって、マルチキャストソースにより開始されたマルチキャストフローを受け、前記マルチキャストフローが受けられ得るかを判断し、前記マルチキャストフローが受けられ得ないとの判断に応じて第2のモジュールにプルーンインディケーションを送り;または、ダウンストリームPIMルータからの前記マルチキャストフローのためのPIMプルーンメッセージ、または、PIMルータに接続されたクライアントからの前記マルチキャストフローのためのマルチキャストグループリーブメッセージを受け、前記PIMプルーンメッセージまたは前記マルチキャストグループリーブメッセージが受けられたポートを、前記マルチキャストフローに対応する出口ポートリストから削除し、前記マルチキャストフローが受けられ得るかを判断し、前記マルチキャストフローが受けられ得ないとの判断に応じて、前記プルーンインディケーションを受け、PIMプルーンメッセージを前記マルチキャストフローが受けられたポートを介して送れる第2のモジュールに送る第1のモジュールを備える。また、本発明にかかる交換機は、PIMスヌーピング機能を備え、マルチキャストソースとファーストホップPIMルータとの間の配置のためのレイヤ2交換機であって、マルチキャストフローのためのPIMプルーンメッセージを受信し、前記PIMプルーンメッセージが受けられたポートを、前記マルチキャストフローに対応するPIMスヌーピングエントリにプルーンポートとして追加し、前記メッセージの中の前記アップストリームネイバーアドレスが前記交換機のPIMスヌーピング機能により維持されるPIMルータのリストの中にないとの判断に応じて、前記プルーンポートを介した前記マルチキャストの転送を停止する第1のサブモジュールを備える。また、本発明にかかるマルチキャストブランチをプル-ニングする方法は、プロトコルインデペンデントマルチキャストPIM機能を有する少なくとも1つのレイヤ2交換機を介してファーストホップPIMルータに接続されたマルチキャストソースを用意することと、前記ファーストホップPIMルータにより、前記マルチキャストソースにより開始されたマルチキャストフローを受信し、前記マルチキャストフローが受信されないとの判断に応じて、前記マルチキャストフローが受けられたポートを介してPIMプルーンメッセージを送ることと、前記マルチキャストフローが受けられないとの判断に応じて、前記PIMプルーンメッセージまたはマルチキャストグループリーブメッセージが受けられたポートを、前記マルチキャストフローに対応する出口ポートリストから検出することとを含む。PIMプロトコルは、今日使用されていて現在一般的なマルチキャストルーティングプロトコルである。IGMPスヌーピングおよびPIMスヌーピングはまた、一般的に採用されているレイヤ2マルチキャストコントロールプロトコルである。その重要性がIGMPスヌーピング以下でしかないPIMスヌーピングは、PIMハローメッセージ、PIMジョインメッセージおよびPIMプルーンメッセージのためのものであり、意図されたルータへのマルチキャストフローの転送を制御する。PIMスヌーピング交換機は、しかしながら、PIMルータの間に配置されたときにのみ肯定的な成果を生み出し得るが、マルチキャストソースとPIMルータとの間に配置されたときには同じ成果をなし得ないかもしれない。VODと同様な機構の下に動作するマルチキャストアプリケーションについては、マルチキャストソース側のトラヒック制御には、産業において解決されるべき問題が残っている。図1は、マルチキャストネットワークの構成を説明する説明図である。図1に示すように、マルチキャストソースは、1つ以上のレイヤ2交換機を介してネットワークにアクセスし、クライアントは、レイヤ2交換機またはPIMルータを介してネットワークにアクセスする。さらに、複数のレイヤ2交換機は、PIMルータに合流する。例えば、マルチキャストソース1および2は、レイヤ2交換機5および6を介してそれぞれネットワークにアクセスし、レイヤ2交換機1および2は、PIMルータ2に合流する。マルチキャストソースから開始されたマルチキャストフローは、1つまたは複数の交換機を介してファーストホップPIMルータに到達したとき、PIMルータは、PIMルータがDRであるならば、ソースレジスタメッセージをRPに送って送信してよい。RPが、マルチキャストフローにクライアントが参加していないことを示し、RPにおいて設定されていないマルチキャストフローに対応するS,Gエントリ、つまり、マルチキャストフローのソースアドレスおよびグループアドレスを検出したときは、RPは、DRにソースクエンチメッセージを送る。それから、クライアントがマルチキャストフローに参加したとき、クライアントはIGMPジョインメッセージをリーフルータに送り、リーフルータは、PIMジョインメッセージをRPに送る。PIMジョインメッセージを受けた受信した後、RPは、PIMジョインメッセージをDRに送り、続いて、マルチキャストフローは、RPを介してマルチキャストレシーバに到達する。ファーストホップPIMルータは、マルチキャストソースからのマルチキャストフローに遭遇した第1のPIMルータを参照する。RPは、マルチキャストフロー情報の集中化された管理を提供するPIMルータであって、マルチキャストソースとマルチキャストレシーバとの間の媒体としての役割を果たす。従来のネットワークにおいて、クライアントが参加しているか否かにかかわらず、マルチキャストソースからのマルチキャストフローは、まず、ファーストホップPIMルータに1つまたは複数の交換機を介して送られ、交換機においてキャッシュメモリの消費量を増やす。交換機の出口ポートのためのキャッシュメモリは、ビデオといった特にバーストをともなうサービスフローを維持し、パケット損失の防止およびジッターの低減を保持することに重要な役割を果たす。従って、その転送が必要でないデータフローの転送は、交換機の出口ポートのためのメモリキャッシュの消費量を減らすために抑制されるべきである。現在のプロトコルは、しかしながら、データリンクレイヤにおけるマルチキャストソースとPIMルータとの間の不要なマルチキャストフローを切り詰めることができない。いくつかの例が、添付の図面を参照とともに詳細に記載されるであろう。いくつかの例においては、ネットワーク全体がマルチキャストグループ管理プロトコル、例えば、IGMPv2、IGMPv3、MLDv1およびMLDv2の一つを採用するといった、いくつかのバージョンを採用することが前提とされる。例えば、IGMPv2またはMLDv1が採用されたときには、マルチキャストフローは、マルチキャストグループ識別番号によって識別される。しかしながら、IGMPv3またはMLDv2が採用されるときには、マルチキャストフローは、マルチキャストソース識別番号マルチキャストグループ識別番号により識別される。いくつかの例においては、採用されたPIMプロトコルはPIM-SSMまたはPIM-DMである。PIM-SSMが採用されたときには、採用されたIGMPのバージョンは、それにおけるIGSPのバージョンがIGMPv3スヌーピングであるIGMPv3である。いくつかの例においては、PIMスヌーピング機能を備えたレイヤ2交換機はポート、つまりプルーンポートのための新たな役割を持つ。PIMスヌーピング機能を備えたレイヤ2交換機が、マルチキャストフローのためのPIMプルーンメッセージをファーストホップPIMルータから受けたときには、メッセージを受けたポートは、プルーンポートとして設定される。その後で、マルチキャストフローは、プルーンポートへ転送されることが阻止される。マルチキャストをサポートするレイヤ2交換機はポートのために4つの役割、つまり、ルータポート、IGMPスヌーピングのためのメンバーシップポート、プルーンポートおよびPIMスヌーピングのためのアップストリームポートを有する。ルータポートはダウンストリームポート、つまり、PIMジョインメッセージを受けるポートである。ダウンストリームポートは、それらが同じ機能、つまり、ルータを接続することと、全てのマルチキャストフローを転送することを実行するので、ルータポートと呼ばれる。ポートの4つの役割それぞれは、それぞれ互いに維持される。ポートが、メンバーシップポート、プルーンポートおよびルータポートの全てまたは3つの役割の内の任意の2つの役割を同時に果たすときは、役割の優先順位は、優先順位が下がる順にメンバーシップポート、プルーンポートおよびルータポートとなる。レイヤ2転送テーブルエントリ、つまりPIMスヌーピングエントリおよびIGMPスヌーピングエントリのために、このようなポートの処理の規則は、メンバーシップポートの役割の優先度が最も高いときには、ポートをエントリに加えること、および、プルーンポートの役割の優先度が最も高いときには、ポートをエントリに加えないことを含む。さらに、ポートの役割がルータポートだけのときには、ポートの最も高い優先度を有する役割はルータポートであるとみなされ、ポートは、レイヤ2転送テーブルエントリに加えられる。もし、レイヤ2交換機のPIMスヌーピングテーブルの中のダウンストリームネイバーリストが空ならば、レイヤ2交換機のアップストリームポートは、PIMスヌーピングテーブルエントリの中のダウンストリーム出口ポートリストに追加されるべきである。PIMスヌーピングテーブルエントリは、S,Gエントリ、アップストリームネイバーリスト、ダウンストリームネイバーリストその他を含む。以下の例は、そのマルチキャストグループ管理プロトコルとしてIGMPを採用する。MLDプロトコルが採用されるときには、以下の記載における全てのIGMPのMLDへの交換のみが必要とされることが理解されるべきである。図2は、一例に従ってマルチキャストブランチをプルーンニングする方法を説明する説明図である。図2に示すように、この方法は以下の動作を含んでよい。ブロック201において、レイヤ2交換機はPIMハローメッセージをPIMルータから受け、メッセージを受けたポートを、IGMPスヌーピング機能を利用してルータポートとして設定し、PIMスヌーピング機能を利用して、メッセージに従ってPIMルータリストを維持する。PIMルータリストのエントリそれぞれは、PIMハローメッセージを送信するPIMルータのアドレスと、PIMルータを介してレイヤ2交換機と接続するポートのポート番号とを含む。PIMハローメッセージを送信するPIMルータのアドレスは、PIMハローメッセージの中のソースアドレスフィールドから得られるかもしれない。PIMルータを備えたレイヤ2交換機に接続するポートのポート番号は、そこからPIMハローメッセージレイヤ2交換機により受けられたポート番号を参照する。PIMルータにおいて、PIMプロトコルを採用するポートは、外部装置への合間にPIMハローメッセージを送ってよい。PIMハローメッセージを受けた後に、レイヤ2交換機は、他のレイヤ2交換機にメッセージを転送してよく、他のレイヤ2交換機もまた、メッセージを受けた後に、ブロック201の動作を実行する。ブロック202において、マルチキャストソースから開始されたマルチキャストフローが、ルータポートを介してファーストホップPIMルータに到達したときに、ファーストホップPIMルータは、マルチキャストフローの受信が必要でないとの決定がなされたときに、マルチキャストフローのためのPIMプルーンメッセージを、マルチキャストフローが受けられたポートを介して送信する。ブロック203において、ファーストホップPIMルータが、マルチキャストフローのためのPIMプルーンメッセージをダウンストリームPIMルータから受けたとき、または、マルチキャストフローのためのIGMPリーブメッセージをファーストホップPIMルータに接続されたクライアントから受けたときは、ファーストホップPIMルータは、マルチキャストルーティングテーブルの中でマルチキャストフローに対応するエントリを探し、マルチキャストフローが受けられたポートをエントリから削除し、マルチキャストフローのためのPIMプルーンメッセージを、エントリの出口ポートのリストが空のときには、マルチキャストフローが受けられたポートを介して送る。PIMプルーンメッセージを、ブロック202および203において送信する頻度は制限されており、つまり、PIMプルーンメッセージは、同じマルチキャストフローが受けられているときに、短い時間内で多く繰り返して送られることはないであろう。PIMプルーンメッセージの各送信の間の初期設定時間は1分である。マルチキャストフローのブランチが切り詰められたとき、または、ローカルクライアントから新たなマルチキャストフローへの要求が受けられたときに、IMプルーンメッセージの送信は停止される。ブロック204において、ファーストホップPIMルータとマルチキャストソースとの間のレイア2交換機は、PIMプルーンメッセージを受け、そのメッセージ中のアップストリームネイバーアドレスがレイヤ2交換機のPIMスヌーピング機能によって維持されるPIMルータのリスト内にないと検出したときに、PIMプルーンメッセージが受けられたポートをプルーンポートとして設定し、プルーンポートを介してマルチキャストフローを転送することを停止する。図2からは、マルチキャストソースとファーストホップPIMルータとの間のマルチキャストフローが、以下のときに切り詰められることが理解されてよい:1.マルチキャストフローの受信への要求がないとき;2.マルチキャストフローの受信への要求があったが、マルチキャストフローの受信を停止する要求が受けられた瞬間。図3および図4は、それぞれPIM-SSMを採用するファーストホップPIMルータにより上記2つのタイプのマルチフローを処理する詳細な手順を説明する。図3は、PIM-SSMを採用するファーストホップPIMルータにより、一例に従ってマルチキャストフローを受けた後に実行される処理を説明するフローチャートである。図3に示すように、この処理は、以下の動作を含んでよい。ブロック301において、ファーストホップPIMルータは、PIMハローメッセージを、周期的にファーストホップPIMのPIMポートそれぞれを介して送信する。ブロック302において、レイヤ2交換機は、PIMハローメッセージを受け、IGMPスヌーピング機能を利用してメッセージが受けられたポートをルータポートとして設定し、PIMハローメッセージをレイヤ2交換機のポートそれぞれを介して他のレイヤ2交換機に転送する。IGMPスヌーピングは、マルチキャストをサポートするレイヤ2交換機の全てに共通な特徴である。IGMPスヌーピング機能を備えた交換機は、IGMPジェネラルクエリメッセージまたはPIMパケットが受けられたポートをルータポートとみなし、IGMPジョインメッセージが受けられたポートをメンバーシップポートとみなす。IGMPスヌーピング機能を備えた交換機は、受けられたマルチキャストフローの全てをルータポートに送ってよく、マルチキャストグループのマルチキャストフローのみをメンバーシップポートに送る。他のレイヤ2交換機はまた、PIMハローメッセージを受けた後に、ブロック302において動作を実行してよい。ブロック303において、マルチキャストソースはマルチキャストフローを開始し、マルチキャストフローは、ルータポートそれぞれを介してファーストホップPIMルータに転送される。ブロック304において、Rtrは、Rtrがマルチキャストフローに対応する確立されたS,Gエントリを有するかを判断し、エントリが確立されていたときにはブロック305における動作を実行し、または、エントリが確立されていなかったときにはブロック308における動作を実行する。ブロック305において、Rtrは、S,Gエントリ内の出口ポートのリストが空であるかを判断し、リストが空であるときにはブロック306における動作を実行し、または、リストが空でないときにはブロック308における動作を実行する。ブロック306において、RtrはS,Gエントリのエージング時間を更新し、マルチキャストフローを受けたポートを介してPIMプルーンメッセージを送り、処理は終了される。PIMプルーンメッセージのアップストリームネイバーアドレスはマルチキャストソースのIPアドレスであり、宛先IPアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMプルーンメッセージはマルチキャストフローがRtrに入ったポートから送信されるので、PIMプルーンメッセージは、マルチキャストソースとRtrとの間のレイヤ2交換機に到達するであろう。レイヤ2交換機は、PIMプルーンメッセージを受けた後に、図5に示した手順を処理してよい。ブロック307において、Rtrは出口ポートの中の出口ポート情報に従ってマルチキャストフローを外部の装置に転送し、処理は終了される。ブロック308において、Rtrは、マルチキャストフローのためのS,Gエントリを確立し、エントリのためのエージング時間を構成し、PIMプルーンメッセージをマルチキャストフローが受けられたポートを介して外部デバイスに送る。S,Gエントリのエージング時間は通常3分として構成される。PIMプルーンメッセージのアップストリームネイバーアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。もし、PIM-SMが採用されたら、このブロックにおいて、RtrはRPへのマルチキャストフローのためのソースレジスタメッセージをさらに送る。図4は、一例に従ってダウンストリームPIMルータからPIMプルーンメッセージを、または、ファーストホップPIMルータに接続されたクライアントからIGMPリーブメッセージを受けた後に、PIM-SSMを採用するファーストホップPIMルータにより実行される処理を説明するフローチャートである。図4に示すように、処理は以下の処理を含んでよい。ブロック401において、ファーストホップPIMルータRtrは、ダウンストリームPIMルータにより送られたマルチキャストフローのためのPIMプルーンメッセージ、または、Rtrに接続されたクライアントにより送られたマルチキャストフローのためのIGMPリーブメッセージを受け、マルチキャストフローに対応するS,Gエントリを探し、PIMプロトコルに従ってS,Gエントリを処理する。マルチキャストレシーバがマルチキャストフローの受信を停止したときには、マルチキャストレシーバはマルチキャストフローのためのIGMPリーブメッセージをマルチキャストレシーバのリーフルータに送ってよい。リーフルータは、PIMプルーンメッセージをマルチキャストフローのためにRPに送る。RPはPIMプルーンメッセージをファーストホップPIMルータの方向に転送する。PIMプロトコルによれば、Rtrは通常PIMプルーンメッセージが受けられたポートをS,Gエントリの中の出口ポートのリストから削除する。ブロック402において、Rtrは、S,Gエントリの出口ポートリストが空かを判断し、リストが空のときにはブロック403における動作を実行し、リストが空でないときにはブロック404における動作を実行する。ブロック403において、RtrはPIMプルーンメッセージをマルチキャストフローが受けられたポートを介して外部装置に送り、処理は終了される。PIMプルーンメッセージのアップストリームネイバーアドレスはマルチキャストソースのIPアドレスであり、宛先IPアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMプルーンメッセージは、マルチキャストフローがRtrに入るポートから送られるので、PIMプルーンメッセージは、マルチキャストソースとRtrとの間のレイヤ2交換機に到達するであろう。図5は、一例に従ってPIMプルーンメッセージを受けた後にレイヤ2交換機により実行される処理を説明するフローチャートである。図5に示すように、処理は以下の動作を含んでよい。ブロック404において、Rtrは、いかなる処理もさらに行わない。ファーストホップPIMルータにより送られたPIMプルーンメッセージはマルチキャストソースとファーストホップPIMルータとの間の1つまたは複数のレイヤ2交換機に到達するであろう。図5は、一例に従ってPIMプルーンメッセージを受けた後に実行される処理を説明するフローチャートである。ブロック501において、レイヤ2交換機は、マルチキャストフローのためのPIMプルーンメッセージを受ける。ブロック502において、レイヤ2交換機は、PIMプルーンメッセージの中のアップストリームネイバーアドレスがレイヤ2交換機のPIMスヌーピング機能により維持されるPIMルータのリスト内にあるかを判断し、もしアップストリームネイバーアドレスがリスト内にあるならブロック503における動作を実行し、もしアップストリームネイバーアドレスがリスト内にないならブロック504における動作を実行する。ブロック503において、レイヤ2交換機は現行のPIMスヌーピングプロトコルに従って処理を実行し、処理は終了される。もし、PIMプルーンメッセージの中のアップストリームネイバーアドレスが、PIMスヌーピング機能により維持されるPIMルータのリスト内にあるならば、それはレイヤ2交換機がPIMルータの間に配置されていることの現れであり、現行のPIMスヌーピングプロトコルに従った処理が実行される。これ以外は、それはレイヤ2交換機がマルチキャストソースとファーストホップPIMルータとの間に配置されていることを表し、そして、一例に従った処理、つまり、ブロック504~509における処理が採用される。ブロック504において、レイヤ2交換機は、レイヤ2交換機内にマルチキャストフローのためのPIMスヌーピングエントリがあるかを判断し、PIMスヌーピングエントリがあるときにはブロック505における動作を実行し、PIMスヌーピングエントリがないときにはブロック506における動作を実行する。ブロック505において、レイヤ2交換機はPIMプルーンメッセージが受けられたポートをPIMスヌーピングエントリの中のダウンストリーム出口ポートのリストに追加し、このポートをプルーンポートとしてマークし、ブロック507における動作を実行する。ブロック506において、レイヤ2交換機は、PIMプルーンメッセージに従ってPIMスヌーピングテーブルを生成する。PIMスヌーピングエントリの中のアップストリームポートは、PIMプルーンメッセージの宛先MACアドレスに従って、ユニキャスト宛先テーブルエントリの中に設けられた出口ポートになるように設定される。アップストリームネイバーリストは空である。PIMプルーンメッセージが受けられたポートは、エントリの中のダウンストリーム出口ポートリストの中に追加され、プルーンポートとしてマークされる。任意のマルチキャストフローについては、もしPIMスヌーピングエントリがマルチキャストフローのために確立されていないなら、レイヤ2交換機はマルチキャストフローを初期設定によるアップストリームポート以外のPIMネイバーポートの全てを介して転送する。従って、このブロックにおいては、マルチフローのためにPIMスヌーピングエントリが確立された後に、マルチキャストフローが続いて受けられたときには、マルチキャストフローがダウンストリームポート以外の全てのPIMネイバーポートに転送されるであろうことを保証するために、アップストリームポートおよびマークされたプルーンポート以外の全てのPIMネイバーポートは、PIMスヌーピングテーブルエントリのダウンストリーム出口ポートリストに追加される。ブロック507において、レイヤ2交換機は、レイヤ2交換機の中のPIMスヌーピングテーブルエントリおよびIGMPスヌーピングテーブルエントリに従って、PIMプルーンメッセージに対応するマルチキャストフローを転送する必要があるか、つまり、最高の優先順位がメンバーシップポートまたはルータポートであるポートを有するPIMスヌーピングテーブルエントリまたはIGMPスヌーピングテーブルエントリがあるかを判断し、もしあるならばブロック508における動作を実行し、もしなければブロック509における動作を実行する。ブロック508において、レイヤ2交換機は、PIMプルーンメッセージを転送せず、処理は終了される。ブロック509において、レイヤ2交換機は、ユニキャスト宛先テーブルエントリの中で、PIMプルーンメッセージのユニキャスト宛先MACアドレスに従って出口ポートを探し、PIMプルーンメッセージを出口ポートを介して転送する。PIMメッセージは、そしてマルチキャストソースに到達する。この例においては、ライフタイム値がプルーンポートのためにPIMスヌーピングエントリの中に設定されてよい。プルーンポートのライフタイム値は、PIMルータにおけるマルチキャストフローのS,Gエントリのライフタイムの1/3であってよい。従って、PIMDRは、マルチキャストフローを毎分、受けるかもしれない。プルーンポートのライフタイム値が切れたときには、PIMスヌーピングエントリの中の全てのプルーンポートが、マルチキャストフローをポートを通じて転送させるように、一時的にルータポートとして設定される。もし、マルチキャストフローのためのPIMプルーンメッセージが、プルーンポートのライフタイム値が切れたときから予め定義された時間周期の内にポートから受けられないときには、ポートは正式にルータポートとして設定される。そして、PIMスヌーピングエントリの中の中に他のプルーンポートかあるかの判断がなされ、もしエントリ資源に保存されるべきその他のプルーンポートがなければ、PIMスヌーピングエントリは削除される。もし、マルチキャストフローのためのPIMプルーンメッセージが、プルーンポートのライフタイム値が切れたときから予め定義された時間周期の内にポートから受けられたなら、ポートはプルーンポートとして設定され、プルーンポートのライフタイム値はリセットされる。続いて、もし装置が、そのブランチが切り詰められたマルチキャストフローに参加しているなら、ブランチはマルチキャストフローに移植されてよい。ブランチは、マルチキャストフローのために、マルチキャストソースとファーストホップPIMルータとの間に、下の3条件のいずれかを満たすように移植されるべきである。1.ダウンストリームPIMルータに接続されたクライアントがマルチキャストフローに参加しているときには、クライアントはIGMPジョインメッセージをダウンストリームPIMルータに送り、ダウンストリームPIMルータはIGMPジョインメッセージを受けた後で、PIMジョインメッセージをファーストホップPIMルータに送る。2.レイヤ2交換機に接続されたクライアントがマルチキャストフローに参加しているときには、クライアントはIGMPジョインメッセージをレイヤ2交換機に送ってよい。3.ファーストホップPIMルータに接続されているクライアントがマルチキャストフローに参加しているときには、クライアントはIGMPジョインメッセージをファーストホップPIMルータに送ってよい。いくつかの模範的な処理手順がマルチキャストフローへのブランチへの移植と関連付けられて以下に記載されるであろう。図6は、PIMジョインメッセージをダウンストリームPIMルータから受けた後に、PIM-SSMを採用するファーストホップPIMルータにより実行される処理を説明するフローチャートである。図6に示すように、処理は以下の動作を含んでよい。ブロック601において、ファーストホップPIMルータRtrはマルチキャストフローのためのPIMジョインメッセージをダウンストリームPIMルータから受け、ファーストホップPIMルータの中のマルチキャストフローに対応するS,Gエントリを探す。ファーストホップPIMルータのダウンストリームPIMルータが、図1に示したようにクライアントに接続されているときには、PIMルータ2はファーストホップPIMルータであり、PIMルータ1はダウンストリームPIMルータであり、PIMルータ1はクライアント1に接続される。クライアントがマルチキャストフローに参加しているときには、クライアントはマルチキャストフローのためのIGMPジョインメッセージをダウンストリームPIMルータに送ってよい。ダウンストリームPIMルータは、IGMPジョインメッセージを受けた後に、マルチキャストフローのためのPIMジョインメッセージをファーストホップPIMルータ、つまり、PIMルータ2に送ってよい。ブロック602において、Rtrは、S,Gエントリの中の出口ポートのリストが空かを判断し、リストが空のときにはブロック603における動作を実行し、リストが空でないときにはブロック604における動作を実行する。ブロック603において、RtrはPIMジョインメッセージが受けられたポートをS,Gエントリの中の出口ポートリストに追加し、ユニキャスト宛先テーブルにおいてメッセージの宛先IPアドレスに対応するエントリを探し、PIMジョインメッセージをユニキャスト宛先テーブルエントリの中の出口ポートを通して送信し、そして処理が終了される。PIMジョインメッセージの宛先IPアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMジョインメッセージは、マルチキャストソースに1つ以上のRtrとマルチキャストソースとの間のレイヤ2交換機を通して転送されてよい。レイヤ2交換機によるPIMジョインメッセージの処理手順は図9に示すとおりであってよい。PIMジョインメッセージの損失を防ぎ、マルチキャストフローを素速く受けるために、RtrはPIMジョインメッセージを高い繰り返し頻度でマルチキャストフローが受けられるまで送ってよい。ブロック604において、RtrはPIMジョインメッセージを現行のPIMプロトコルに従って処理する。図7は、一例に従ってレイヤ2交換機によってIGMPジョインメッセージを受けた後に実行される処理を説明するフローチャートである。図5に示すように、処理は以下の処理を含んでよい。ブロック701において、レイヤ2交換機はマルチキャストフローのためのIGMPジョインメッセージを受ける。IGMPリーブメッセージは、レイヤ2交換機に接続されたクライアントにより開始される。ブロック702において、レイヤ2交換機はレイヤ2交換機においてマルチキャストフローに対応するIGMPスヌーピングテーブルエントリを探し、メッセージが受けられたポートをIGMPスヌーピングテーブルエントリにメンバーシップポートとして追加し、IGMPジョインメッセージをPIMスヌーピングテーブルエントリの中のメッセージが受けられたポート以外の全てのルータポート、プルーンポートおよびアップストリームネイバーに転送する。IGMPジョインメッセージは他のレイヤ2交換機またはファーストホップPIMルータに到達してもよい。他のレイヤ2交換機によるIGMPジョインメッセージの処理手順もこの例においてと同じである。ファーストホップPIMルータによるIGMPジョインメッセージの処理手順の例は、図8に示すとおりである。図8は、一例に従って、PIM-SSMを採用するファーストホップPIMルータによりIGMPジョインメッセージを受けた後に実行される処理を説明するフローチャートである。図8に示すように、処理は以下の動作を含んでよい。ブロック801において、ファーストホップPIMルータRtrは、マルチキャストフローのためのIGMPジョインメッセージを受ける。IGMPジョインメッセージは、以下の2つのタイプのソースから開始されてよい。ソース1:図1に示すようにファーストホップPIMルータがクライアントに接続されているときには、PIMルータ2はファーストホップPIMルータであり、クライアント2に接続される。もしクライアントがマルチキャストフローに参加しているなら、クライアントはIGMPジョインメッセージをファーストホップPIMルータに送ってよい。ソース2:PIMルータがファーストホップPIMルータである図1に示すように、マルチキャストソースとファーストホップPIMルータとの間のレイヤ2交換機がクライアントに接続されているときには、PIMルータ2およびマルチキャストソース1および2の間のレイヤ2交換機2はクライアント3に接続される。もし、クライアント3がマルチキャストフローに参加しているなら、クライアント3はIGMPジョインメッセージをレイヤ2交換機1に送ってよい。レイヤ2交換機1はIGMPジョインメッセージをファーストホップPIMルータに転送してよい。ブロック802において、Rtrは、Rtrがマルチキャストフローに対応するS,Gエントリを確立したかを判断し、エントリが確立されていたときにはブロック803の処理を実行し、または、エントリが確立されていなかったときにはブロック808の処理を実行する。ブロック803において、Rtrは、S,Gエントリの出口ポートリストが空かを判断し、リストが空のときにはブロック804における処理を実行し、リストが空でないときにはブロック807における処理を実行する。ブロック804において、RtrはIGMPジョインメッセージがマルチキャストソースへ導くポートからのものであるかを判断し、もしIGMPジョインメッセージがそのポートからのものであるならばブロック805における処理を実行し、もしIGMPジョインメッセージがそのポートからのものでないならばブロック806における処理を実行する。IGMPジョインメッセージはマルチキャストソースへ導くポートからのもの、つまり、IGMPジョインメッセージの送信元はブロック801におけるソース2であり、そして、IGMPジョインメッセージを受けるポートをS,Gエントリの出口ポートリストに追加する必要も、PIMジョインメッセージを送る必要もない。ブロック805において、Rtrはさらなる処理を行わず、処理は終了される。ブロック806において、RtrはIGMPジョインメッセージが受けられたポートをS,Gエントリの出口ポートリストに追加し、マルチキャストフローのためのPIMジョインメッセージをマルチキャストソース複数可の方向に送り、処理が終了される。PIMジョインメッセージの宛先IPアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMジョインメッセージは、Rtrとマルチキャストソースとの間のレイヤ2交換機を通じてマルチキャストソースに転送されてよい。レイヤ2交換機によるPIMジョインメッセージの処理手順は、図9に示すとおりであってよい。PIMジョインメッセージの損失を防ぎ、マルチキャストフローを素速く受けるために、RtrはPIMジョインメッセージをマルチキャストフローが受けられるまで高い繰り返し頻度で送ってよい。ブロック807において、Rtrは現行のPIMプロトコルに従って処理を実行し、処理は終了される。現行のPIMプロトコルによれば、RtrはIGMPジョインメッセージが受けられたポートをS,Gエントリの出口ポートリストに追加してよい。ブロック808において、Rtrは現行のPIMプロトコルに従った処理を実行する。現行のPIMプロトコルによれば、Rtrは、マルチキャストフローに対応するS,Gエントリを確立してよく、IGMPジョインメッセージを受けたポートをS,Gエントリの出口ポートに追加してよい。図9は、一例に従ってPIMジョインメッセージを受けた後のレイヤ2交換機によって実行される処理を説明するフローチャートである。図9に示すように、処理は以下の動作を含んでよい。ブロック901において、レイヤ2交換機はマルチキャストフローのためのPIMジョインメッセージを受ける。ブロック902において、レイヤ2交換機は、PIMジョインメッセージの中のアップストリームネイバーアドレスが、レイヤ2交換機のPIMスヌーピング機能によって維持されるPIMルータのリスト内にあるかを判断し、もしアップストリームネイバーアドレスがリスト中にあればブロック903における動作を実行し、もしアップストリームネイバーアドレスがリスト中になければブロック904における動作を実行する。ブロック903において、レイヤ2交換機は現行のPIMスヌーピングプロトコルに従って処理を実行し、処理は終了される。ブロック904において、レイヤ2交換機はマルチキャストフローのためのPIMスヌーピングテーブルエントリがあるかを判断し、PIMスヌーピングテーブルエントリがあるときにはブロック905における処理を行い、このようなPIMスヌーピングテーブルエントリがないときにはブロック906における処理を行う。ブロック905において、レイヤ2交換機はPIMジョインメッセージを受けたポートがPIMスヌーピングテーブルエントリの中のプルーンポートであるかを判断し、ポートがプルーンポートであるときにはブロック907の動作を実行し、ポートがプルーンポートでないときにはブロック906の動作を実行する。ブロック906において、レイヤ2交換機はさらに処理を行わず、処理は終了される。ブロック907において、レイヤ2交換機は、ローカルPIMスヌーピングテーブルエントリおよびIGMPスヌーピングテーブルエントリに従って、PIMジョインメッセージを受けたポート以外にマルチキャストフローを転送する必要がある他のポートがあるかを判断し、このようなポートがあるときにはブロック908における動作を行い、このようなポートがないときにはブロック908における動作を行う。ブロック908において、レイヤ2交換機はPIMジョインメッセージを転送せず、ブロック910における動作を実行する。ブロック909において、レイヤ2交換機はユニキャストルーティングテーブルの中でPIMジョインメッセージの宛先IPアドレスに従ってエントリを探し、ユニキャストルーティングテーブルエントリの中の出口ポートを介してPIMジョインメッセージを転送し、ブロック901の動作を実行する。ブロック910において、レイヤ2交換機は、PIMジョインメッセージの受信ポートをPIMスヌーピングテーブルエントリのダウンストリーム出口ポートリストからプルーンポートとしてラベル付けするマークを削除し、PIMジョインメッセージの受信ポートをルータポートとして設定し、マルチキャストフローをこのポートを介して転送する。ブロック911において、レイヤ2交換機は、PIMスヌーピングテーブルエントリのダウンストリーム出口ポートリストがプルーンポートを含まず、アップストリームネイバーリストが空かを判断し、もしPIMスヌーピングテーブルエントリのダウンストリーム出口ポートリストがプルーンポートを含まず、アップストリームネイバーリストが空ならブロック912における動作を実行し、これ以外ならブロック913における動作を実行する。ブロック912において、レイヤ2交換機はPIMスヌーピングテーブルエントリを削除し、テーブルエントリ資源を保存し、処理は終了される。ブロック913において、レイヤ2交換機はさらに処理を行わない。図10は、PIM-SSMを採用するファーストホップPIMルータによって、一例に従ってマルチキャストフローを受けた後に実行される処理を説明するフローチャートである。図10に示すように、処理は以下の動作を含んでよい。ブロック1001において、ファーストホップPIMルータRtrは、周期的にPIMハローメッセージをファーストホップPIMのPIMポートそれぞれを介して送る。ブロック1002において、レイヤ2交換機はPIMハローメッセージを受け、メッセージを受けたポートを、IGMPスヌーピング機能を利用してルータポートとして設定し、PIMハローメッセージをレイヤ2交換機のポートそれぞれを介して他のレイヤ2交換機に転送する。他のレイヤ2交換機は、PIMハローメッセージを受けた後にブロック1002における動作を実行してもよい。ブロック1003において、マルチキャストソースはマルチキャストフローを開始し、マルチキャストフローはファーストホップPIMルータRtrにルータポートそれぞれを介して転送される。ブロック1004において、RtrはRtrがマルチキャストフローに対応するS,Gエントリを確立されていたかを判断し、エントリが確立されていたときにはブロック1005における動作を実行し、エントリが確立されていないときにはブロック1008における動作を実行する。ブロック1005において、RtrはS,Gエントリの出口ポートリストが空かを判断し、リストが空のときにはブロック1006における動作を実行し、リストが空でないときにはブロック1007における動作を実行する。ブロック1006において、RtrはS,Gエントリのエージング時間を更新し、マルチキャストフローが受けられたポートを介してPIMプルーンメッセージを送り、処理は終了される。PIMプルーンメッセージのアップストリームネイバーアドレスはマルチキャストソースのIPアドレスであり、宛先IPアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMプルーンメッセージはマルチキャストフローがRtrに入ったポートから送られるので、PIMプルーンメッセージはマルチキャストソースとRtrとの間のレイヤ2交換機に到達するであろう。レイヤ2交換機は、PIMプルーンメッセージを受けた後に、図5に示した処理手順を実行してよい。ブロック1007において、Rtrは、出口ポートリストの中の出口ポート情報に従ってマルチキャストフローを外部装置に転送する。ブロック1008において、Rtrは、マルチキャストフローに対応するS,Gエントリを確立し、S,Gエントリのためのエージング時間を設定する。S,Gエントリのエージング時間は通常3分として構成される。ブロック1009において、RtrはRtrがDRであるかを判断し、RtrがDRであるときにはブロック1011における動作を実行し、RtrがDRでないときにはブロック1010における動作を実行する。ブロック1010において、Rtrはさらに処理を行わず、処理は終了される。ブロック1011において、RtrはマルチキャストフローのためのソースレジスタメッセージをRPに送る。ブロック1012において、Rtrは、RPにより返されたマルチキャストフローのためのソースレジスタ停止メッセージを受け、マルチキャストフローに対応するS,Gエントリの出口ポートリストが空かを判断し、リストが空のときにはブロック1013における動作を実行し、リストが空でないときにはブロック1014における動作を実行する。マルチキャストフローのためのソースレジスタメッセージを受けた後、マルチキャストフローのレシーバがあると判断したときには、RPは、第一にマルチキャストフローのためのPIMジョインメッセージをRtrに返してよく、マルチキャストフローのためのソースレジスタストップメッセージをRtrに送る。PIMジョインメッセージを受けた後に、Rtrは、メッセージを受けたポートをマルチキャストフローに対応するS,Gエントリの出口ポートリストに追加する。RPは、マルチキャストフローのためのソースレジスタ停止メッセージをRtrに直接に返してよい。ブロック1013において、Rtrは、マルチキャストフローが受けられたポートを介して外部の装置にPIMプルーンメッセージを送り、処理が終了される。PIMプルーンメッセージのアップストリームネイバーアドレスはマルチキャストソースのIPアドレスであり、宛先IPアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMプルーンメッセージはマルチキャストフローがRtrに入るポートを介して送られるので、PIMプルーンメッセージはマルチキャストソースとRtrとの間の1つ以上のレイヤ2交換機に到達するであろう。レイヤ2交換機は、PIMプルーンメッセージを受けた後に、図5に示された処理手順を実行してよい。ブロック1014において、Rtrはマルチキャストフローを、出口ポートリストの中の出口ポート情報に従って外部装置に転送する。ファーストホップPIMルータが、双方向PIMを採用し、DRでないときには、ファーストホップPIMルータによるマルチキャストフローの処理手順は、PIM-SMを採用し、マルチキャストフローを受けたときのDRでないファーストホップPIMルータと同じである。さらに、ファーストホップPIMルータはPIM-SMまたは双方向PIMを採用し、ファーストホップPIMルータが非DRからDRになるときに、ファーストホップPIMルータにおいて確立されたS,Gエントリそれぞれのためのマルチキャストソースの方向にPIMジョインメッセージを送ってよい。PIM-SMを採用しているファーストホップPIMルータが、ダウンストリームPIMルータからのPIMプルーンメッセージまたはファーストホップPIMルータに接続されたクライアントからIGMPリーブメッセージを受けた後に、ファーストホップPIMルータの処理手順は、図4に示された例におけるように、PIM-SSMを採用しているファーストホップPIMルータのものと同じである。PIM-SMを採用するファーストホップPIMルータがPIMジョインメッセージをダウンストリームPIMルータから受けた後は、ファーストホップPIMルータの処理手順は、図6に示された例におけるように、PIM-SSMを採用するファーストホップPIMルータのものと同じである。PIM-SMを採用するファーストホップPIMルータがIGMPジョインメッセージをダウンストリームPIMルータから受けた後は、ファーストホップPIMルータの処理手順は、図8に示された例におけるように、PIM-SSMを採用するファーストホップPIMルータのものと同じである。図11は、一例に従ってマルチキャストフローを受けた後にPIM-DMを採用するファーストホップPIMルータによって実行される処理を説明するフローチャートである。図11に示すように、処理は以下の動作を含んでよい。ブロック1101において、ファーストホップPIMルータRtrは周期的にPIMハローメッセージをPIMポートそれぞれを介してファーストホップPIMに送る。ブロック1102において、レイヤ2交換機はPIMハローメッセージを受け、IGMPスヌーピング機能を利用してメッセージが受けられたポートをルータポートとして設定し、PIMハローメッセージをレイヤ2交換機のポートそれぞれを介して他のレイヤ2交換機に転送する。他のレイヤ2交換機もまた、PIMハローメッセージを受けた後にブロック1102における動作を行ってよい。ブロック1103において、マルチキャストソースはマルチキャストフローを送り、マルチキャストフローはファーストホップPIMルータにルータポートそれぞれを介して転送される。ブロック1104において、RtrはRtrがマルチキャストフローに対応するS,Gエントリを確立していたかを判断し、エントリが確立されていたときにはブロック1105における動作を実行し、エントリが確立されていなかったときにはブロック1106における動作を実行する。ブロック1105において、RtrはS,Gエントリのエージング時間を更新し、ブロック1107における動作が実行される。ブロック1106において、Rtrは、マルチキャストフローのためのS,Gエントリを確立し、S,Gエントリのエージング時間を設定し、Rtrの全てのダウンストリームPIMネイバーにマルチキャストフローを転送し、PIMネイバーにより返されたPIMプルーンメッセージを受けた後に、PIMプルーンメッセージが受けられたポートをS,Gエントリの中の出口ポートリストにプルーンポートとして追加し;PIMグラフトメッセージをダウンストリームPIMネイバーから受けた後に、PIMグラフトメッセージを受けたポートをS,Gエントリの中の出口ポートリストに転送ポートとして追加する。上記動作は、ダウンストリームPIMネイバーに接続された全てのポートがS,Gエントリの中に追加されるまで実行される。S,Gエントリのエージング時間は通常3分として構成される。ブロック1107において、RtrはS,Gエントリの中の全ての出口ポートがプルーンポートであるかを判断し、全ての出口ポートがプルーンポートであるときにはブロック1108における動作を実行し、全ての出口ポートがプルーンポートでないときにはブロック1109における動作を実行する。ブロック1108においてRtrはPIMプルーンメッセージをマルチキャストフローが受けられたポートを介して外部装置に送り、処理は終了される。PIMプルーンメッセージのアップストリームネイバーアドレスはマルチキャストソースのIPアドレスであり、宛先IPアドレスはマルチキャストソースであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMプルーンメッセージは、Rtrにマルチキャストフローが入るポートから送られ、PIMプルーンメッセージは1つ以上のマルチキャストソースとRtrとの間のレイヤ2交換機に到達するであろう。レイヤ2交換機は、PIMプルーンメッセージを受けた後に、図5に示した処理手順を実行してよい。ブロック1109において、RtrはS,Gエントリの中の転送出口ポートそれぞれを介してマルチキャストフローを転送する。図12は、一例に従ってPIMネイバーからPIMグラフトメッセージを受けた後に、PIM-DMを採用するファーストホップPIMルータにより実行される処理を説明するフローチャートである。図12に示すように、処理は以下の動作を含んでよい。ブロック1201において、RtrはPIMネイバーからマルチキャストフローのためのPIMグラフトメッセージを受け、Rtrの中においてマルチキャストフローに対応するS,Gエントリをさがす。ブロック1202において、RtrはS,Gエントリの中の出口ポートのリストが空かを判断し、リストが空のときにはブロック1203における動作を実行し、リストが空でないときにはブロック1204における動作を実行する。ブロック1203において、Rtrは、PIMグラフトメッセージが受けられたポートをS,Gエントリの中の出口ポートリストに追加し、ユニキャストルーティングテーブルにおいてメッセージの宛先IPアドレスに対応するエントリを探し、PIMジョインメッセージをユニキャストルーティングテーブルエントリの中の出口ポートを通して送り、処理は終了される。PIMジョインメッセージの宛先IPアドレスはマルチキャストソースのIPアドレスであり、宛先MACアドレスはマルチキャストソースのMACアドレスである。PIMジョインメッセージはRtrとマルチキャストソースとの間のレイヤ2交換機を通してマルチキャストソースに転送されてよい。レイヤ2交換機によるPIMジョインメッセージの処理手順は図9に示した通りであってよい。PIMジョインメッセージ損失を防ぐため、および、マルチキャストフローを素速く受けるために、Rtrは、マルチキャストフローが受けられるまで、PIMジョインメッセージを高い繰り返し頻度で送ってよい。ブロック1204において、RtrはPIMグラフトメッセージを現行のPIMプロトコルに従って処理する。PIM-DMを採用するファーストホップPIMルータがダウンストリームPIMルータからのPIMプルーンメッセージ、または、ファーストホップPIMルータに接続されたクライアントからのIGMPリーブメッセージを受けた後で、ファーストホップPIMルータの処理手順は、図4に示した例におけるように、PIM-SSMを採用するファーストホップPIMルータのと同じである。PIM-DMを採用するファーストホップPIMルータがIGMPジョインメッセージをダウンストリームPIMルータから受けた後は、ファーストホップPIMルータの処理手順は、図8に示した例におけるように、PIM-SSMを採用するファーストホップPIMルータのと同じである。図13は、一例によって提供されるPIMルータの構成を説明する図である。PIMルータは、ファーストホップPIMルータであり、マルチキャストソースにPIMスヌーピング機能を有するレイヤ2交換機を介して接続される。図13に示すように、PIMルータは第1のモジュールと第2のモジュールを含んでよい。第1のモジュールは、マルチキャストソースから開始されたマルチキャストフローを受け、PIMプルーンメッセージをマルチキャストフローのためのダウンストリームPIMルータから受けた後、または、PIMルータに接続されたクライアントからマルチキャストグループリーブメッセージを受けた後に、PIMプルーンメッセージまたはマルチキャストグループリーブメッセージが受けられたポートをマルチキャストフローの出口ポートリストから削除し、マルチキャストフローが受けられたかを判断し、マルチキャストフローが受けられないという判断に応じて、プルーンインディケーションを第2のモジュールに送るためのものである。マルチキャストグループリーブメッセージはIGMPリーブメッセージまたはMLDリーブメッセージである。第2のモジュールは、プルーンインディケーションを受け、PIMプルーンメッセージをマルチキャストフローが受けられたポートを介して送ることができる。PIMルータが、PIM-SSMを採用するとき、または、DRではなくてPIMを採用するときには、第1のモジュールは以下のサブモジュールを含んでよい。第1のサブモジュールは、マルチキャストフローを受け、マルチキャストフローの情報を第2のサブモジュールに送ることができる。第2のサブモジュールは、マルチキャストフローの情報を第1のサブモジュールから受け、マルチキャストフローが受けられなかったかを判断し、マルチキャストフローのためにマルチキャストルーティングテーブルエントリがPIMルータにおいて確立されていなかったという判断がなされたとき、または、マルチキャストルーティングテーブルエントリがマルチキャストフローのために確立されていたが、マルチキャストルーティングテーブルエントリの出口ポートリストが空であるという判断がなされたときに、第2のモジュールにプルーンインディケーションを送信することができる。PIMルータがPIM-SMを採用し、DRであるときには、ファーストホップPIMルータは以下のサブモジュールを含んでよい。第1のサブモジュールは、マルチキャストフローを受け、第2のサブモジュールにマルチキャストフローの情報を送ることができる。第2のサブモジュールは、マルチキャストフローの情報を第1のサブモジュールから受け、マルチキャストフローが受けられなかったかを判断し、マルチキャストフローのためにマルチキャストルーティングテーブルエントリが確立していたが、マルチキャストルーティングテーブルエントリの出口ポートリストが空だという判断がなされたときに、第2のモジュールにプルーンインディケーションを送ることができ;または、マルチキャストフローのためのマルチキャストルーティングテーブルエントリを確立し、マルチキャストフローのためにマルチキャストルーティングテーブルエントリが確立していなかったという判断がなされたときには、RPにソースレジスタメッセージを送り、マルチキャストフローが受けられないことを判断し、ソースレジスタ停止メッセージをRPから受け、マルチキャストルーティングテーブルエントリの出口ポートリストが空であると判断した後に、第2のモジュールにプルーンインディケーションを送ることができる。PIMルータがPIM-DMを採用するときには、第1のモジュールは以下のサブモジュールを含んでよい。第1のサブモジュールは、マルチキャストフローを受け、第2のサブモジュールにマルチキャストフローの情報を送ることができる。第2のサブモジュールは第1のサブモジュールからマルチキャストフローの情報を受け、マルチキャストフローが受けられないことを判断し、マルチキャストフローのためにマルチキャストルーティングテーブルエントリが確立されていているがマルチキャストルーティングテーブルエントリの中の全ての出口ポートがプルーンポートであると判断したときに、第2のモジュールにプルーンインディケーションを送り;または、マルチキャストフローのためにマルチキャストルーティングテーブルエントリを確立し、マルチキャストフローのためにマルチキャストルーティングテーブルエントリが確立されていないという判断がなされたときに、全てのダウンストリームPIMネイバーにマルチキャストフローを転送し;PIMプルーンメッセージをダウンストリームPIMネイバーから受け、PIMグラフトメッセージが受けられたポートをマルチキャストルーティングテーブルエントリの出口ポートリストにプルーンポートとして追加し;PIMグラフトメッセージをダウンストリームPIMネイバーから受け、PIMグラフトメッセージが受けられたポートをマルチキャストルーティングテーブルエントリの出口ポートリストに転送ポートとして追加し;マルチキャストフローが受けられないかを判断し、ダウンストリームPIMネイバーに接続されている全てのポートがマルチキャストルーティングテーブルエントリの出口ポートリストに追加されたかを判断し、マルチキャストルーティングテーブルエントリの中の全ての出口ポートがプルーンポートであると判断した後で、第2のモジュールにプルーンインディケーションを送る。実際には、PIMルータがPIM-SMまたはPIM-SSMを採用するときには、第1のモジュールもまた、ダウンストリームPIMルータからのマルチキャストフローのためのPIMジョインメッセージ、または、PIMルータに接続されたクライアントからのマルチキャストグループジョインメッセージを受け、マルチキャストソースの方向にPIMジョインメッセージを送ることができる第3のモジュールを含んでよい。第3のモジュールは、さらに、マルチキャストフローのためのPIMジョインメッセージをダウンストリームPIMルータから受けた後に、マルチキャストフローに対応するマルチキャストルーティングテーブルエントリがPIMルータの中に確立されているかを判断し、PIMジョインメッセージが受けられたポートをマルチキャストルーティングテーブルエントリの出口ポートリストに追加し、マルチキャストルーティングテーブルエントリの出口ポートリストが空であるとの判断がなされたときに、PIMジョインメッセージをマルチキャストソースの方向に送ることができる。実際には、PIMルータがPIM-SM、PIM-SSMまたはPIM-DMを採用するときに、PIMルータは、PIMルータに接続されたクライアントからのマルチキャストフローのためのマルチキャストグループジョインメッセージを受けることができる第4のモジュールを含んでよい。第4のモジュールは、さらに、マルチキャストフローのためのマルチキャストグループジョインメッセージをPIMルータに接続されたクライアントから受けた後に、マルチキャストフローに対応するマルチキャストルーティングテーブルエントリが確立されているかを判断し、マルチキャストグループジョインメッセージが受けられたポートをマルチキャストルーティングテーブルエントリの出口ポートリストに追加し、マルチキャストルーティングテーブルエントリが確立されていて、マルチキャストルーティングテーブルエントリの出口ポートリストが空であるという判断がなされたときに、PIMジョインメッセージをマルチキャストソースの方向に送ることができる。PIMルータがPIM-SMを採用してDRでないとき、または、双方向PIMを採用してDRでないときに、PIMルータもまた、マルチキャストフローそれぞれのために確立されたマルチキャストルーティングテーブルエントリのために、DRでなかったPIMルータがDRになったときに、マルチキャストフローのためのPIMジョインメッセージをマルチキャストソースの方向に送信することができる第5のモジュールを含んでよい。PIMルータがPIM-DMを採用するとき、PIMルータもまた、ダウンストリームPIMネイバーからのマルチキャストフローのためのPIMグラフトメッセージを受け、マルチキャストソースの方向にPIMジョインメッセージを送ることができる第6のモジュールを含んでよい。第6のモジュールは、さらに、マルチキャストフローのためのPIMグラフトメッセージをダウンストリームPIMネイバーから受けた後に、マルチキャストフローに対応するマルチキャストルーティングテーブルエントリがPIMルータの中で確立されていたかを判断し、PIMグラフトメッセージが受けられたポートをマルチキャストルーティングテーブルエントリの出口ポートリストに追加し、マルチキャストルーティングテーブルエントリが確立されていて、マルチキャストルーティングテーブルエントリの出口ポートリストが空であるときには、マルチキャストソースの方向にPIMジョインメッセージを送ることができる。以下は、一例に従ったPIMスヌーピング機能を備えた交換機の構成を記載する。交換機はマルチキャストソースとファーストホップPIMルータとの間に配置される。交換機は、主に第1のモジュール、第2のモジュールおよび第3のモジュールを含んでよい。第1のモジュールはマルチキャストフローのためのPIMプルーンメッセージを受け、PIMプルーンメッセージが受けられたポートをマルチキャストフローに対応するPIMスヌーピングエントリに追加し、メッセージの中のアップストリームネイバーアドレスが、交換機のPIMスヌーピング機能により維持されるPIMルータのリストの中にないという判断がなされたときに、プルーンポートを介したマルチキャストの転送を停止することができる。第1のモジュールは、さらに、プルーンポートのためにプルーン時間を設定してよく、プルーン時間が切れたときに、プルーンポートを介したマルチキャストフローの転送を開始する。第1のモジュールは、さらに、ファーストホップPIMルータの中のPIMプルーンメッセージに対応するマルチキャストフローのマルチキャストルーティングテーブルエントリのライフタイム値よりも小さいライフタイム値を設定し、プルーンポートのライフタイム値が切れたときには、プルーンポートを一時的なルータポートに設定し、もしマルチキャストフローのためのPIMメッセージが予め定義された時間周期の内にマルチキャストフローのためのPIMプルーンメッセージが受けられないなら、一時的なルータポートをルータポートとして設定し、もしマルチキャストフローのためのPIMプルーンメッセージが受けられたなら、一時的なルータポートをプルーンポートとして設定し、プルーンポートのライフタイム値をリセットしてよい。第1のモジュールは、さらに、PIMプルーンメッセージの中のアップストリームネイバーアドレスがPIMスヌーピング機能用いて維持されるPIMルータのリストの中にないと判断した後に、交換機においてマルチキャストフローのためにPIMスヌーピングエントリが確立されていないと判断したときには、第1のモジュールは、マルチキャストフローのためのPIMスヌーピングエントリを確立してよく、空のリストをPIMスヌーピングエントリのアップストリームネイバーリストとして設定し、交換機のアップストリームポート以外の全てのPIMネイバーポートをPIMスヌーピングエントリの出口ポートリストに追加し、マルチキャストフローのPIMスヌーピングエントリにプルーンポートを追加し、マルチキャストフローが交換機の中のPIMスヌーピングエントリおよびマルチキャストグループ管理エントリに基づいて転送され得るかを判断することができ、もしマルチキャストフローが転送され得るならPIMプルーンメッセージを転送せず、または、もしマルチキャストフローが転送され得ないならPIMプルーンメッセージを転送する。第1のモジュールは、メッセージの中のアップストリームネイバーアドレスがPIMスヌーピング機能により維持されるPIMルータのリストの中にあるかを判断した後に、マルチキャストフローのためにPIMスヌーピングエントリが確立されているかを判断したときに、プルーンポートをPIMスヌーピングエントリに直接に追加してよく、交換機におけるPIMスヌーピングエントリおよびマルチキャストグループ管理エントリに基づいて転送され得るかを判断することができ、もしマルチキャストフローが転送され得るならPIMプルーンメッセージを転送せず、または、もしマルチキャストフローが転送され得ないならPIMプルーンメッセージをマルチキャストソースの方向に転送する。レイヤ2交換機がIGMPを採用するとき、マルチキャストグループスヌーピングエントリはIGMPスヌーピングエントリである。レイヤ2交換機がMLDを採用するとき、マルチキャストグループスヌーピングエントリはMLDスヌーピングエントリである。第2のモジュールは、マルチキャストのためのPIMジョインメッセージを受けることができる。メッセージの中のアップストリームネイバーアドレスが交換機のPIMスヌーピング機能により維持されるPIMルータのリストの中にないという判断がなされたときには、交換機の中のPIMスヌーピングエントリおよびマルチキャストグループ管理スヌーピングエントリに基づいて、マルチキャストフローを受け得るPIMジョインメッセージが受けられたポート以外の他のポートがあるかについての判断がなされ、マルチキャストフローの受信を要求する他のポートがあるときには、PIMジョインメッセージが転送されず、または、マルチキャストフローの受信を要求する他のポートがないときには、PIMジョインメッセージが転送される。第2のモジュールは、さらに、PIMジョインメッセージをマルチキャストソースの方向に転送した後に、PIMジョインメッセージを受けたポートをPIMスヌーピングエントリから削除し、ポートをルータポートとして設定してよい。第3のモジュールは、マルチキャストフローのためのマルチキャスト管理ジョインメッセージを受け、メッセージを受けたポートをマルチキャストフローのマルチキャストグループ管理エントリにメンバーシップポートとして追加し、マルチキャストグループ管理ジョインメッセージを、メッセージが受けられたポート以外のPIMスヌーピングエントリの中の全てのルータポート、プルーンポートおよびアップストリームネイバーを介して転送することができる。マルチキャストグループ管理ジョインメッセージは、IGMPジョインメッセージまたはMLDジョインメッセージであってよい。ここに開示された例示の方法、システムおよびモジュールはハードウェア、機械可読命令またはハードウェアおよび機械可読命令の組み合わせによって実現されてよい。ここに開示された例において用いられた機械可読命令は、ハードドライブ、CD-ROM、DVD、コンパクトディスク、フロッピー登録商標ディスク、磁気テープドライブ、RAM、ROMまたは他の適切な記憶装置といった1つ以上の処理により読み出されうる記憶媒体に記憶されてよい。あるいは、機械可読命令の少なくとも一部は、専用集積回路、ゲートアレー、FPGA、PLDおよび特定用途のコンピュータなどといった特定用途のハードウェアに置き換えられてよい。例えば、図14は、他の例により提供されるPIMルータの構成を説明する図である。PIMルータは、ファーストホップPIMルータであり、PIMスヌーピング機能を有するレイヤ2交換機を介してマルチキャストソースに接続されてよい。図14に示すように、PIMルータは第1のモジュール、第2のモジュールおよびプロセッサを含んでよい。第1のモジュールおよび第2のモジュールは、プロセッサにより可読な記憶媒体に格納されて、図13に示されたプロセッサに第1のモジュールおよび第2のモジュールと同様な機能を実行させてよい。機械に、ここに開示されたような制御方法を実行させる命令を格納することができる機械可読記憶媒体もまた提供される。特に、システムまたは装置の1つ以上のプロセッサ例えば、CPUまたはMPUなどにより読み出され、実行され得て、上記例に記載された方法および機能を実現する機械可読命令を格納する記憶媒体を有するシステムまたは装置が提供される。この場合には、記録媒体から読み出される機械可読命令例えばプログラムコードは上の例のいずれをも実現してよく、よって、機械可読命令および機械可読命令を格納する記憶媒体は、技術的枠組みの一部である。機械可読命令を提供する記憶媒体は、フロッピー登録商標ディスク、ハードドライブ、光磁気ディスク、CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVDRWといったコンパクトディスク、磁気テープドライブ、フラッシュカード、ROMおよびその他を含んでよい。随意的には、機械可読命令はコンピュータネットワークを介してサーバコンピュータからダウンロードされてよい。コンピュータにより実行される機械可読命令に代わって、機械可読命令により実行される動作の少なくとも一部は、機械可読命令に基づいて命令を理解して上記のいかなる例の技術的枠組みを実現するコンピュータにおいて動作するオペレーションシステムにより実現されてよい。さらに、記憶媒体から実現される機械可読命令は、コンピュータに挿入された拡張ボードの中の記憶装置またはコンピュータに接続された拡張ユニットの中の記憶装置に書き込まれてよい。この例においては、拡張ボードまたは拡張ユニットの中のCPUが機械可読命令に基づく命令に従った動作の少なくとも一部を実行して上記いずれの例の技術的枠組みをも実現する。上述は提示の開示事項の例に過ぎず、その保護範囲を制限するためのものではない。全ての変形、等価物による置換あるいは提示の開示事項の精神および原理に従った改良は提示の開示事項の保護範囲内に含まれるべきである。"