(57)【要約】【課題】ラベル長を規格内に維持しつつ、パスが設定された物理回線の帯域の浪費を抑えること。【解決手段】パケット通信装置は、パケットを受信した場合に、該パケットの転送経路を識別するラベルと、転送経路の設定された物理回線へ該パケットを出力する出力部との組合せを検索する検索部を備えた。また、パケット通信装置は、検索部によって検索された組合せのうち、複数のラベルに組み合わされた同一の出力部である共通出力部を含む複数の組合せを特定する特定部を備えた。また、パケット通信装置は、特定部によって共通出力部を含む複数の組合せが特定された場合に、共通出力部から物理回線へ出力されるパケットに対して、共通出力部に組み合わされた複数の前記ラベルを多重する多重部を備えた。【選択図】図２
2014195179.tif 000002
【特許請求の範囲】
【請求項１】
パケットを受信した場合に、該パケットの転送経路を識別するラベルと、前記転送経路の設定された物理回線へ該パケットを出力する出力部との組合せを検索する検索部と、
前記検索部によって検索された前記組合せのうち、複数の前記ラベルに組み合わされた同一の前記出力部である共通出力部を含む複数の組合せを特定する特定部と、
前記特定部によって前記共通出力部を含む複数の組合せが特定された場合に、前記共通出力部から前記物理回線へ出力される前記パケットに対して、前記共通出力部に組み合わされた複数の前記ラベルを多重する多重部と
を備えたことを特徴とするパケット通信装置。
【請求項２】
前記多重部によって多重される前記ラベルの数である多重数を示す他のラベルである多重数ラベルを前記パケットに付与する付与部をさらに備え、
前記検索部は、前記多重数ラベルが付与された前記パケットを受信した場合に、前記多重数ラベルにより示される前記多重数だけ前記ラベルと前記出力部との組合せを検索し、
前記特定部は、前記検索部によって前記多重数だけ検索された前記組合せのうち、前記共通出力部を含む複数の組合せを特定し、
前記多重部は、前記特定部によって前記共通出力部を含む複数の組合せが特定された場合に、前記共通出力部から前記物理回線へ出力される前記パケットに対して、前記共通出力部に組み合わされた複数の前記ラベルを多重することを特徴とする請求項１に記載のパケット通信装置。
【請求項３】
パケットを受信した場合に、該パケットの転送経路を識別するラベルと、前記転送経路の設定された物理回線へ該パケットを出力する出力部との組合せを検索し、
検索された前記組合せのうち、複数の前記ラベルに組み合わされた同一の前記出力部である共通出力部を含む複数の組合せを特定し、
前記共通出力部を含む複数の組合せが特定された場合に、前記共通出力部から前記物理回線へ出力される前記パケットに対して、前記共通出力部に組み合わされた複数の前記ラベルを多重する
ことを含んだことを特徴とするパケット通信方法。
【請求項４】
パケットを受信した場合に、該パケットの転送経路を識別するラベルと、前記転送経路の設定された物理回線へ該パケットを出力する出力部との組合せを検索し、
検索された前記組合せのうち、複数の前記ラベルに組み合わされた同一の前記出力部である共通出力部を含む複数の組合せを特定し、
前記共通出力部を含む複数の組合せが特定された場合に、前記共通出力部から前記物理回線へ出力される前記パケットに対して、前記共通出力部に組み合わされた複数の前記ラベルを多重する
処理をコンピュータに実行させることを特徴とするパケット通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット通信装置、パケット通信方法及びパケット通信プログラムに関する。
【背景技術】
【０００２】
従来、パケットの転送方式としてＭＰＬＳ−ＴＰ（Multi  Protocol  Label  Switching-Transport  Profile）方式が知られている。ＭＰＬＳ−ＴＰ方式は、ＬＳＰ（Label  
Switched  Path）と呼ばれる論理的なパケットの転送経路を通信装置間を結ぶ物理回線へ設定し、ＬＳＰを識別するＭＰＬＳラベル（以下単にラベルと称する）を用いてパケット転送を行う技術である。ＭＰＬＳ−ＴＰ方式を採用したネットワークは、ＭＰＬＳ−ＴＰネットワークと呼ばれる。
【０００３】
ＭＰＬＳ−ＴＰネットワークでは、各通信装置は、入力ラベルと入力ＩＦ（インタフェース）との組合せに対する出力ラベルと出力ＩＦとの組合せの関係を示すラベルテーブルを保持する。そして、パケットを受信した各通信装置は、受信したパケットに付加されたラベルに従ってラベルテーブルを検索することによって、出力ＩＦを決定し、パケットに付加されたラベルを出力ラベルに書き換えて出力ＩＦを介して物理回線へパケットを送出する。ＭＰＬＳ−ＴＰ方式では、このようなラベルの書き換えを繰り返すことにより、宛先の通信装置までパケットを転送する。なお、ＭＰＬＳ―ＴＰネットワークの入口に配置された通信装置が最初にラベルをパケットに付加する。
【０００４】
また、近年では、ＭＰＬＳ−ＴＰネットワークのトラフィックの急増に伴って、物理回線の帯域の有効利用を図るために、ＭＰＬＳ−ＴＰ方式において入口の通信装置から出口となる複数の通信装置に対してパケットをマルチキャストする方式が検討されている。ＭＰＬＳ−ＴＰ方式においてパケットをマルチキャストする方式としては、Ｐ２Ｐ（Point-to-Point）方式と、Ｐ２Ｍ（Point  to  Multipoint）方式とが知られている。
【０００５】
このうち、Ｐ２Ｐ方式では、入口の通信装置から出口の各通信装置に至る複数のＬＳＰ（以下「Ｐ２Ｐ−ＬＳＰ」という）が設定され、入口の通信装置は、複数のＰ２Ｐ−ＬＳＰの各々にマルチキャスト用のパケットをコピーして送出する。複数のＰ２Ｐ−ＬＳＰの各々にコピーされたマルチキャスト用のパケットには、複数のＰ２Ｐ−ＬＳＰの各々を識別するラベル（以下「Ｐ２Ｐ−ＬＳＰラベル」という）が付加される。Ｐ２Ｐ方式で用いられるＰ２Ｐ−ＬＳＰラベルは、パケットをユニキャストする場合に用いられるラベルと兼用されるラベルである。
【０００６】
一方、Ｐ２Ｍ方式では、入口の通信装置から出口の各通信装置に至る一つのＬＳＰ（以下「Ｐ２Ｍ−ＬＳＰ」という）が設定され、ＬＳＰ上の分岐点の通信装置は、マルチキャスト用のパケットをコピーして一つのＰ２Ｍ−ＬＳＰに送出する。Ｐ２Ｍ−ＬＳＰにコピーされたマルチキャスト用のパケットには、Ｐ２Ｍ−ＬＳＰを識別するラベル（以下「Ｐ２Ｍ−ＬＳＰラベル」という）が付加される。Ｐ２Ｍ方式で用いられるＰ２Ｍ−ＬＳＰラベルは、パケットをユニキャストする場合に用いられるラベルと異なるラベルである。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−７４３８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来技術では、ラベル長を規格内に維持しつつ、パスが設定された物理回線の帯域の浪費を抑えることについては考慮されていない。
【０００９】
すなわち、Ｐ２Ｐ方式では、同一の物理回線に設定された複数のパスであるＰ２Ｐ−ＬＳＰの各々に対してパケットがコピーされるので、物理回線の帯域が浪費される恐れがある。一方、Ｐ２Ｍ方式では、パケットをユニキャストする場合に用いられるラベルとＰ２Ｍ−ＬＳＰラベルという異なる２種類のラベルが用いられるので、パケットに付加することが許容されるラベル長を規格内に維持することが困難となる恐れがある。具体的には、例えば、MPLSラベルに割り当てるラベル長は20bitである。これをP2P LSP（ユニキャスト）とP2M LSP（マルチキャスト）で分割して使用する必要がある。このため、ラベル数のスケーラビリティに問題が生ずることとなる恐れがある。
【００１０】
開示の技術は、上記に鑑みてなされたものであって、ラベル長を規格内に維持しつつ、パスが設定された物理回線の帯域の浪費を抑えることができるパケット通信装置、パケット通信方法及びパケット通信プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本願の開示するパケット通信装置は、一つに態様において、パケットを受信した場合に、該パケットの転送経路を識別するラベルと、前記転送経路の設定された物理回線へ該パケットを出力する出力部との組合せを検索する検索部を備えた。また、パケット通信装置は、前記検索部によって検索された前記組合せのうち、複数の前記ラベルに組み合わされた同一の前記出力部である共通出力部を含む複数の組合せを特定する特定部を備えた。また、パケット通信装置は、前記特定部によって前記共通出力部を含む複数の組合せが特定された場合に、前記共通出力部から前記物理回線へ出力される前記パケットに対して、前記共通出力部に組み合わされた複数の前記ラベルを多重する多重部を備えた。
【発明の効果】
【００１２】
本願の開示するパケット通信装置の一つの態様によれば、ラベル長を規格内に維持しつつ、パスが設定された物理回線の帯域の浪費を抑えることができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、本実施例のＭＰＬＳ−ＴＰネットワークの構成例を示す図である。
【図２】図２は、本実施例の通信装置の内部構成を示すブロック図である。
【図３】図３は、Ｉｎｇｒｅｓｓ−ＬＥＲとしての通信装置のＬＥＲラベルテーブルのテーブル内容の一例を示す図である。
【図４】図４は、ＬＳＲとしての通信装置のＬＳＲラベルテーブルのテーブル内容の一例を示す図である。
【図５】図５は、ＬＳＲとしての通信装置のＬＳＲラベルテーブルのテーブル内容の一例を示す図である。
【図６】図６は、Ｅｇｒｅｓｓ−ＬＥＲとしての通信装置のＬＥＲラベルテーブルのテーブル内容の一例を示す図である。
【図７】図７は、ラベルが多重されるとともに多重数ラベルが付与されたパケットのデータ構造の一例を示す図である。
【図８】図８は、本実施例のＭＰＬＳ−ＴＰネットワークにおけるパケットの転送例を説明するための説明図である。
【図９】図９は、Ｉｎｇｒｅｓｓ−ＬＥＲとしての通信装置の処理手順を示すフローチャートである。
【図１０】図１０は、ＬＳＲとしての通信装置の処理手順を示すフローチャートである。
【図１１】図１１は、Ｅｎｇｒｅｓｓ−ＬＥＲとしての通信装置の処理手順を示すフローチャートである。
【図１２】図１２は、ラベルテーブルの設定例１について説明するための図である。
【図１３】図１３は、ラベルテーブルの設定例２について説明するための図である。
【図１４】図１４は、図１３に示した構成の処理手順を説明するための図である。
【図１５】図１５は、パケット通信プログラムを実行する通信装置を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下に、本願の開示するパケット通信装置、パケット通信方法及びパケット通信プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例により開示技術が限定されるものではない。
【実施例】
【００１５】
図１は、本実施例のＭＰＬＳ−ＴＰネットワークの構成例を示す図である。図１に示すＭＰＬＳ−ＴＰネットワーク１０は、ＬＳＰ（Label  Switched  Path）と呼ばれる論理的なパケットの転送経路を識別するＭＰＬＳラベル（以下単にラベルと称する）を用いてパケット転送を行う複数の通信装置１１−１〜１１−８を有する。通信装置１１−１と通信装置１１−２とは、物理回線１２を介して接続される。通信装置１１−２と通信装置１１−３〜１１−５の各々とは、物理回線１２を介して接続される。通信装置１１−５と通信装置１１−６〜１１−８の各々とは、物理回線１２を介して接続される。通信装置１１−１，１１−３，１１−４，１１−６，１１−７，１１−８は、ＭＰＬＳ−ＴＰネットワーク１０の終端部に配置されたルータであるＬＥＲ（Label  Edge  Router）に相当する。特に、通信装置１１−１は、ＭＰＬＳ−ＴＰネットワーク１０の終端部のうちパケットの入口に配置されたルータであるＩｎｇｒｅｓｓ−ＬＥＲに相当する。通信装置１１−３，１１−７，１１−８は、ＭＰＬＳ−ＴＰネットワーク１０の終端部のうちパケットの出口に配置されたルータであるＥｇｒｅｓｓ−ＬＥＲに相当する。また、通信装置１１−２，１１−５は、Ｉｎｇｒｅｓｓ−ＬＥＲとＥｇｒｅｓｓ−ＬＥＲとの間で送受信されるパケットを中継するルータであるＬＳＲ（Label  Switch  Router）に相当する。
【００１６】
通信装置１１−１→通信装置１１−２→通信装置１１−３を結ぶ物理回線１２には、パケットの転送経路となるＬＳＰ＃１３が設定される。通信装置１１−１→通信装置１１−２→通信装置１１−５→通信装置１１−７を結ぶ物理回線１２には、パケットの転送経路となるＬＳＰ＃１７が設定される。通信装置１１−１→通信装置１１−２→通信装置１１−５→通信装置１１−８を結ぶ物理回線１２には、パケットの転送経路となるＬＳＰ＃１８が設定される。これらＬＳＰ＃１３，ＬＳＰ＃１７，ＬＳＰ＃１８は、Ｉｎｇｒｅｓｓ−ＬＥＲである通信装置１１−１からＥｇｒｅｓｓ−ＬＥＲである通信装置１１−３，１１−７，１１−８に至る複数のＬＳＰであるＰ２Ｐ−ＬＳＰに相当する。すなわち、通信装置１１−１→通信装置１１−２間を結ぶ物理回線１２には、３つのＬＳＰであるＬＳＰ＃１３，ＬＳＰ＃１７，ＬＳＰ＃１８が設定される。通信装置１１−２→通信装置１１−５間を結ぶ物理回線１２には、２つのＬＳＰであるＬＳＰ＃１７，ＬＳＰ＃１８が設定される。通信装置１１−２→通信装置１１−３間を結ぶ物理回線１２、通信装置１１−５→通信装置１１−７間を結ぶ物理回線１２、及び、通信装置１１−５→通信装置１１−８を結ぶ物理回線１２には、ＬＳＰ＃１３、ＬＳＰ＃１７及びＬＳＰ＃１８がそれぞれ設定される。なお、複数のＰ２Ｐ−ＬＳＰの各々を識別するラベルは、ＬＳＰ＃１３を識別するラベルをラベル「Ｌ１３」、ＬＳＰ＃１７を識別するラベルをラベル「Ｌ１７」、ＬＳＰ＃１８を識別するラベルをラベル「Ｌ１８」とする。また、以下では、通信装置１１−１〜１１−８を特に区別しない場合には、通信装置１１−１〜１１−８をまとめて通信装置１１と表記する。
【００１７】
通信装置１１は、Ｐ２Ｐ−ＬＳＰを使用してマルチキャスト用のパケット（以下適宜「パケット」という）を転送する。図２は、本実施例の通信装置の内部構成を示すブロック図である。図２に示す通信装置１１は、受信パケット制御部２１、送信パケット制御部２２及び転送制御部２３を有する。
【００１８】
受信パケット制御部２１は、Ｐ２Ｐ−ＬＳＰの設定された物理回線１２からパケットを入力させる入力ＩＦ（インタフェース）−ｎ（ｎは自然数）を有し、入力ＩＦ−ｎを通じてパケットを順次受信する。
【００１９】
送信パケット制御部２２は、Ｐ２Ｐ−ＬＳＰの設定された物理回線１２へパケットを出力する出力ＩＦ−ｍ（ｍは自然数）と、送信キューとを有し、送信キュー内にキューイングされたパケットを出力ＩＦ−ｍを通じて物理回線１２に順次送信する。なお、出力ＩＦ−ｍは、ＬＳＰの設定された物理回線へパケットを出力する出力部の一例である。
【００２０】
転送制御部２３は、パケットの転送を制御する。転送制御部２３は、ラベルテーブル２３１、ラベルテーブル設定部２３２、転送先検索部２３３、特定部２３４、Ｐ２Ｐラベル多重部２３５及び多重数ラベル付与部２３６を有する。
【００２１】
ラベルテーブル２３１は、当該通信装置１１がＩｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−１である場合に、ＬＥＲラベルテーブル２３１ａに相当する。図３は、Ｉｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−１のＬＥＲラベルテーブルのテーブル内容の一例を示す図である。図３に示すように、ＬＥＲラベルテーブル２３１ａは、入力ＩＦと宛先ＩＰアドレスとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応付けて記憶する。入力ＩＦは、ＭＰＬＳ−ＴＰネットワーク１０の外部からパケットを入力させる入力ＩＦ−ｎを示す。宛先ＩＰアドレスは、入力ＩＦから入力されるパケット内の宛先ＩＰアドレスを示す。出力ラベルは、当該通信装置１１−１→通信装置１１−２間を結ぶ物理回線１２に設定されたＬＳＰ＃１３，ＬＳＰ＃１７，ＬＳＰ＃１８を識別するラベル示す。出力ＩＦは、ＬＳＰ＃１３，ＬＳＰ＃１７，ＬＳＰ＃１８の設定された物理回線１２へパケットを出力する出力ＩＦ−ｍを示す。
【００２２】
また、ラベルテーブル２３１は、当該通信装置１１がＬＳＲとしての通信装置１１−２である場合に、ＬＳＲラベルテーブル２３１ｂに相当する。図４は、ＬＳＲとしての通信装置１１−２のＬＳＲラベルテーブルのテーブル内容の一例を示す図である。図４に示すように、ＬＳＲラベルテーブル２３１ｂは、入力ＩＦと入力ラベルとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応づけて記憶する。入力ＩＦは、通信装置１１−１→当該通信装置１１−２間を結ぶ物理回線１２からパケットを入力させる入力ＩＦ−ｎを示す。入力ラベルは、通信装置１１−１→当該通信装置１１−２間を結ぶ物理回線１２に設定されたＬＳＰ＃１３，ＬＳＰ＃１７，ＬＳＰ＃１８を識別するラベルを示す。出力ラベルは、当該通信装置１１−２→通信装置１１−３間を結ぶ物理回線１２に設定されたＬＳＰ＃１３と、当該通信装置１１−２→通信装置１１−５間を結ぶ物理回線１２に設定されたＬＳＰ＃１７，ＬＳＰ＃１８とを識別するラベルを示す。出力ＩＦは、ＬＳＰ＃１３の設定された物理回線１２又はＬＳＰ＃１７，ＬＳＰ＃１８の設定された物理回線１２へパケットを出力する出力ＩＦ−ｍを示す。
【００２３】
また、ラベルテーブル２３１は、当該通信装置１１がＬＳＲとしての通信装置１１−５である場合に、ＬＳＲラベルテーブル２３１ｃに相当する。図５は、ＬＳＲとしての通信装置１１−５のＬＳＲラベルテーブルのテーブル内容の一例を示す図である。図５に示すように、ＬＳＲラベルテーブル２３１ｃは、入力ＩＦと入力ラベルとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応づけて記憶する。入力ＩＦは、通信装置１１−２→当該通信装置１１−５間を結ぶ物理回線１２からパケットを入力させる入力ＩＦ−ｎを示す。入力ラベルは、通信装置１１−２→当該通信装置１１−５間を結ぶ物理回線１２に設定されたＬＳＰ＃１７，ＬＳＰ＃１８を識別するラベルを示す。出力ラベルは、当該通信装置１１−５→通信装置１１−７間を結ぶ物理回線１２に設定されたＬＳＰ＃１７と、当該通信装置１１−５→通信装置１１−８間を結ぶ物理回線１２に設定されたＬＳＰ＃１８とを識別するラベルを示す。出力ＩＦは、ＬＳＰ＃１７の設定された物理回線１２又はＬＳＰ＃１８の設定された物理回線１２へパケットを出力する出力ＩＦ−ｍを示す。
【００２４】
また、ラベルテーブル２３１は、当該通信装置１１がＥｇｒｅｓｓ−ＬＥＲとしての通信装置１１−８である場合に、ＬＥＲラベルテーブル２３１ｄに相当する。図６は、Ｅｇｒｅｓｓ−ＬＥＲとしての通信装置１１−８のＬＥＲラベルテーブルのテーブル内容の一例を示す図である。図６に示すように、ＬＥＲラベルテーブル２３１ｄは、入力ＩＦと入力ラベルとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応づけて記憶する。入力ＩＦは、通信装置１１−５→当該通信装置１１−８間を結ぶ物理回線１２からパケットを入力させる入力ＩＦ−ｎを示す。入力ラベルは、通信装置１１−５→当該通信装置１１−８間を結ぶ物理回線１２に設定されたＬＳＰ＃１８を識別するラベルを示す。出力ラベルは、当該通信装置１１−８がＥｇｒｅｓｓ−ＬＥＲであるため、当該通信装置１１−８よりも後段のＬＳＰが存在しないことを表す「−」を格納する。出力ＩＦは、ＭＰＬＳ−ＴＰネットワーク１０の外部へパケットを出力する出力ＩＦ−ｍを示す。
【００２５】
ラベルテーブル設定部２３２は、ＣＬＩ（Command  Line  Interface）やＧＵＩ（Graphical  User  Interface）を通じて、入力情報を管理者から取得し、取得した入力情報をラベルテーブル２３１に設定する。例えば、ラベルテーブル設定部２３２は、入力情報として、入力ＩＦと宛先ＩＰアドレスとの組合せ、入力ＩＦと入力ラベルとの組合せ、及び出力ラベルと出力ＩＦとの組合せ等を管理者から取得する。そして、ラベルテーブル設定部２３２は、入力ＩＦと宛先ＩＰアドレスとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応づけてＬＥＲラベルテーブル２３１ａに設定する。ラベルテーブル設定部２３２は、入力ＩＦと入力ラベルとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応付けてＬＳＲラベルテーブル２３１ｂ，２３１ｃやＬＥＲラベルテーブル２３１ｄに設定する。
【００２６】
転送先検索部２３３は、パケットを受信した場合に、パケットのＬＳＰを識別するラベルと、ＬＳＰの設定された物理回線１２へパケットを出力する出力ＩＦとの組合せを転送先として検索する。
【００２７】
ここで、転送先検索部２３３による処理を詳細に説明する。まず、当該通信装置１１がＩｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−１である場合の、転送先検索部２３３による処理を説明する。転送先検索部２３３は、受信パケット制御部２１を通じてパケットを受信すると、パケット内の宛先ＩＰアドレスとパケットを入力させた入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをラベルテーブル２３１から検索する。例えば、ラベルテーブル２３１が、図３に示したＬＥＲラベルテーブル２３１ａに相当するものとする。また、パケット内の宛先ＩＰアドレスがマルチキャスト用のＩＰアドレスである「２３９．０．０．１」であり、パケットを入力させた入力ＩＦが「入力ＩＦ−１」であるものとする。この場合には、転送先検索部２３３は、出力ラベル「Ｌ１３」と出力ＩＦ「出力ＩＦ−２」との組合せ、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−２」との組合せ、並びに、出力ラベル「Ｌ１８」と出力ＩＦ「出力ＩＦ−２」との組合せを検索する。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。
【００２８】
次いで、当該通信装置１１がＬＳＲとしての通信装置１１−２，１１−５又はＥｇｒｅｓｓ−ＬＥＲとしての通信装置１１−８である場合の、転送先検索部２３３による処理を説明する。転送先検索部２３３は、受信パケット制御部２１を通じて受信したパケットに後述する多重数ラベルが付与されているか否かを判定する。転送先検索部２３３は、パケットに多重数ラベルが付与されていない場合には、パケットに付加されたラベルとパケットを入力させた入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをラベルテーブル２３１から検索する。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。
【００２９】
また、転送先検索部２３３は、受信パケット制御部２１を通じて受信したパケットに多重数ラベルが付与されている場合には、多重数ラベルにより示されるラベルの多重数を検索回数Ｎに設定する。そして、転送先検索部２３３は、Ｎ回だけ、パケットに多重された各ラベルとパケットを入力させた入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをラベルテーブル２３１から検索する。例えば、ラベルテーブル２３１が、図４に示したＬＳＲラベルテーブル２３１ｂに相当するものとする。また、多重数ラベルにより示されるラベルの多重数が「３」であり、パケットに多重されたラベルが「Ｌ１３」、「Ｌ１７」及び「Ｌ１８」であり、パケットを入力させた入力ＩＦが「入力ＩＦ−１」であるものとする。この場合には、転送先検索部２３３は、ラベルの多重数「３」回だけ、ＬＳＲラベルテーブル２３１ｂを検索する。そして、転送先検索部２３３は、出力ラベル「Ｌ１３」と出力ＩＦ「出力ＩＦ−４」との組合せ、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−２」との組合せ、出力ラベル「Ｌ１８」と出力ＩＦ「ＩＦ−２」との組合せを検索する。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。
【００３０】
特定部２３４は、検索結果として出力ラベルと出力ＩＦとの組合せを転送先検索部２３３から受け付ける。特定部２３４は、出力ラベルと出力ＩＦとの組合せのうち、複数の出力ラベルに組み合わされた同一の出力ＩＦである共通出力ＩＦを含む複数の組合せを特定する。共通出力ＩＦは、共通出力部の一例である。
【００３１】
ここで、特定部２３４による処理を詳細に説明する。まず、当該通信装置１１がＩｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−１である場合の、特定部２３４による処理を説明する。特定部２３４は、検索結果を基にして、出力ラベルと出力ＩＦとの組合せが複数検索されたか否かを判定する。特定部２３４は、出力ラベルと出力ＩＦとの組合せが１つだけ検索された場合には、出力ＩＦから出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する旨をＰ２Ｐラベル多重部２３５に指示する。
【００３２】
また、特定部２３４は、出力ラベルと出力ＩＦとの組合せが複数検索された場合には、検索された複数の組合せのうち、共通出力ＩＦを含む複数の組合せを特定する。例えば、出力ラベル「Ｌ１３」と出力ＩＦ「出力ＩＦ−２」との組合せ、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−２」との組合せ、並びに、出力ラベル「Ｌ１８」と出力ＩＦ「出力ＩＦ−２」との組合せという複数の組合せが検索された場合を想定する。この場合には、特定部２３４は、検索された組合せのうち、複数の出力ラベル「Ｌ１３」，「Ｌ１７」，「Ｌ１８」に組み合わされた同一の出力ＩＦ「出力ＩＦ−２」を共通出力ＩＦとして含む組合せを特定する。特定部２３４は、共通出力ＩＦを含む複数の組合せが特定されない場合には、出力ＩＦから物理回線１２へ出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する旨をＰ２Ｐラベル多重部２３５に指示する。
【００３３】
また、特定部２３４は、共通出力ＩＦを含む複数の組合せが特定された場合には、共通出力ＩＦから物理回線１２へ出力されるパケットに対して、共通出力ＩＦに組み合わされた複数の出力ラベルを多重する旨をＰ２Ｐラベル多重部２３５に指示する。例えば、共通出力ＩＦとして出力ＩＦ「出力ＩＦ−２」を含む複数の組合せが特定された場合を想定する。この場合には、特定部２３４は、出力ＩＦ「出力ＩＦ−２」から物理回線１２へ出力されるパケットに対して、出力ＩＦ「出力ＩＦ−２」に組み合わされた複数の出力ラベル「Ｌ１３」，「Ｌ１７」，「Ｌ１８」を多重する旨を指示する。
【００３４】
また、特定部２３４は、共通出力ＩＦから物理回線１２へ出力されるパケットに対して複数の出力ラベルを多重する旨をＰ２Ｐラベル多重部２３５に指示する際に、パケットに多重される出力ラベルの数である多重数を多重数ラベル付与部２３６に通知する。
【００３５】
次いで、当該通信装置１１がＬＳＲとしての通信装置１１−２，１１−５又はＥｇｒｅｓｓ−ＬＥＲとしての通信装置１１−８である場合の、特定部２３４による処理を説明する。特定部２３４は、検索結果を基にして、出力ラベルと出力ＩＦとの組合せのうち、共通出力ＩＦを含む複数の組合せを特定する。例えば、検索結果として、出力ラベル「Ｌ１３」と出力ＩＦ「出力ＩＦ−４」との組合せ、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−２」との組合せ、出力ラベル「Ｌ１８」と出力ＩＦ「出力ＩＦ−２」との組合せが検索された場合を想定する。この場合には、特定部２３４は、検索された組合せのうち、複数の出力ラベル「Ｌ１７」，「Ｌ１８」に組み合わされた同一の出力ＩＦ「出力ＩＦ−２」を共通出力ＩＦとして含む組合せを特定する。特定部２３４は、共通出力ＩＦを含む複数の組合せが特定されない場合には、出力ＩＦから物理回線１２へ出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する旨をＰ２Ｐラベル多重部２３５に指示する。
【００３６】
また、特定部２３４は、共通出力ＩＦを含む複数の組合せが特定された場合には、共通出力ＩＦから物理回線１２へ出力されるパケットに対して、共通出力ＩＦに組み合わされた複数の出力ラベルを多重する旨をＰ２Ｐラベル多重部２３５に指示する。例えば、共通出力ＩＦとして出力ＩＦ「出力ＩＦ−２」を含む複数の組合せが特定された場合を想定する。この場合には、特定部２３４は、出力ＩＦ「出力ＩＦ−２」から物理回線１２へ出力されるパケットに対して、出力ＩＦ「出力ＩＦ−２」に組み合わされた複数の出力ラベル「Ｌ１７」，「Ｌ１８」を多重する旨を指示する。
【００３７】
また、特定部２３４は、共通出力ＩＦから物理回線１２へ出力されるパケットに対して複数の出力ラベルを多重する旨をＰ２Ｐラベル多重部２３５に指示する際に、パケットに多重される出力ラベルの数である多重数を多重数ラベル付与部２３６に通知する。
【００３８】
Ｐ２Ｐラベル多重部２３５は、特定部２３４からの指示に従って、特定部２３４によって共通出力ＩＦを含む複数の組合せが特定された場合に、共通出力ＩＦから物理回線１２へ出力されるパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する。
【００３９】
また、Ｐ２Ｐラベル多重部２３５は、特定部２３４からの指示に従って、共通出力ＩＦを含む複数の組合せが特定されない場合には、出力ＩＦから物理回線１２へ出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する。
【００４０】
また、Ｐ２Ｐラベル多重部２３５は、特定部２３４からの指示に従って、出力ラベルと出力ＩＦとの組合せが１つだけ検索された場合には、出力ＩＦから出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する。
【００４１】
多重数ラベル付与部２３６は、Ｐ２Ｐラベル多重部２３５によってパケットに多重されるラベルの数である多重数の通知を特定部２３４から受け付ける。多重数ラベル付与部２３６は、多重数の通知を特定部２３４から受け付けた場合に、Ｐ２Ｐラベル多重部２３５から出力されるパケットに多重数を示す他のラベルである多重数ラベルを付与し、多重数ラベルを付与したパケットを送信パケット制御部２２に出力する。ラベル付与部２３６は、多重数の通知を特定部２３４から受け付けていない場合には、Ｐ２Ｐラベル多重部２３５から出力されるパケットに多重数ラベルを付与することなく、該パケットを送信パケット制御部２２に出力する。
【００４２】
ここで、ラベルが多重されるとともに多重数ラベルが付与されたパケットのデータ構造について説明する。図７は、ラベルが多重されるとともに多重数ラベルが付与されたパケットのデータ構造の一例を示す図である。図７に示すパケットには、ＬＳＰを識別するラベルが多重されるとともに多重数ラベルが付与されている。各ラベルは、２０ビット構成のＬａｂｅｌフィールド、３ビット構成のＥＸＰフィールド、１ビット構成のＳフィールド及び８ビット構成のＴＴＬフィールドを含む。Ｌａｂｅｌフィールドは、「０」〜「１５」で表される各ラベルの識別番号に相当する。本実施例では、Ｌａｂｅｌフィールドが「０」であるラベルが多重数ラベルとして設定される。また、多重数ラベルのＴＴＬフィールドに多重数が格納される。
【００４３】
次に、本実施例のＭＰＬＳ−ＴＰネットワーク１０におけるパケットの転送例について説明する。図８は、本実施例のＭＰＬＳ−ＴＰネットワークにおけるパケットの転送例を説明するための説明図である。なお、図８の例では、各通信装置１１の入力ＩＦ及び出力ＩＦを表示している。
【００４４】
ＭＰＬＳ−ＴＰネットワーク１０の通信装置１１−１は、パケットを受信すると、パケット内の宛先ＩＰアドレスとパケットを入力させた入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＥＲラベルテーブル２３１ａから検索する。この例では、パケット内の宛先ＩＰアドレスがマルチキャスト用のＩＰアドレス「２３９．０．０．１」であり、パケットを入力させた入力ＩＦが「入力ＩＦ−１」であるものとする。すると、通信装置１１−１は、出力ラベル「Ｌ１３」と出力ＩＦ「出力ＩＦ−２」との組合せ、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−２」との組合せ、並びに、出力ラベル「Ｌ１８」と出力ＩＦ「出力ＩＦ−２」との組合せを検索する。
【００４５】
続いて、通信装置１１−１は、出力ラベルと出力ＩＦとの組合せが複数検索されたので、検索された複数の組合せのうち、共通出力ＩＦを含む複数の組合せを特定する。この例では、通信装置１１−１は、検索された組合せのうち、複数の出力ラベル「Ｌ１３」，「Ｌ１７」，「Ｌ１８」に組み合わされた同一の出力ＩＦ「出力ＩＦ−２」を共通出力ＩＦとして含む組合せを特定する。
【００４６】
続いて、通信装置１１−１は、共通出力ＩＦを含む複数の組合せが特定されたので、共通出力ＩＦから物理回線１２へ出力されるパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する。この例では、通信装置１１−１は、共通出力ＩＦとしての出力ＩＦ「出力ＩＦ−２」から物理回線１２へ出力される一つのパケットに対して、出力ＩＦ「出力ＩＦ−２」に組み合わされた３つの出力ラベル「Ｌ１３」，「Ｌ１７」，「Ｌ１８」を多重する。
【００４７】
続いて、通信装置１１−１は、多重されたラベルの数である多重数を示す多重数ラベルをパケットに付与し、共通出力ＩＦにパケットを送出する。この例では、通信装置１１−１は、多重数「３」を示す多重数ラベルをパケットに付与し、共通出力ＩＦとしての出力ＩＦ「出力ＩＦ−２」にパケットを送出する。
【００４８】
通信装置１１−２は、通信装置１１−１からのパケットを受信する。通信装置１１−２は、パケットに付与された多重数ラベルにより示される多重数だけ、パケットに多重された各ラベルとパケットを入力させた入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＳＲラベルテーブル２３１ｂから検索する。この例では、多重数ラベルにより示されるラベルの多重数が「３」であり、パケットに多重されたラベルが「Ｌ１３」、「Ｌ１７」及び「Ｌ１８」であり、パケットを入力させた入力ＩＦが「入力ＩＦ−１」である。このため、通信装置１１−２は、多重数「３」回分だけ、出力ラベルと出力ＩＦとの組合せをＬＳＲラベルテーブル２３１ｂから検索する。そして、通信装置１１−２は、出力ラベル「Ｌ１３」と出力ＩＦ「出力ＩＦ−４」との組合せ、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−２」との組合せ、出力ラベル「Ｌ１８」と出力ＩＦ「ＩＦ−２」との組合せを検索する。
【００４９】
続いて、通信装置１１−２は、出力ラベルと出力ＩＦの組合せのうち、共通出力ＩＦを含む複数の組合せを特定する。この例では、通信装置１１−２は、検索された組合せのうち、２つの出力ラベル「Ｌ１７」，「Ｌ１８」に組み合わされた同一の出力ＩＦ「出力ＩＦ−２」を共通出力ＩＦとして含む組合せを特定する。
【００５０】
続いて、通信装置１１−２は、共通出力ＩＦを含む複数の組合せが特定されたので、共通出力ＩＦから物理回線１２へ出力されるパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する。この例では、通信装置１１−１は、共通出力ＩＦとしての出力ＩＦ「出力ＩＦ−２」から物理回線１２へ出力される一つのパケットに対して、出力ＩＦ「出力ＩＦ−２」に組み合わされた２つの出力ラベル「Ｌ１７」，「Ｌ１８」を多重する。
【００５１】
続いて、通信装置１１−２は、多重されたラベルの数である多重数を示す多重数ラベルをパケットに付与し、共通出力ＩＦにパケットを送出する。この例では、通信装置１１−２は、多重数「２」を示す多重数ラベルをパケットに付与し、共通出力ＩＦとしての出力ＩＦ「出力ＩＦ−２」にパケットを送出する。
【００５２】
一方、通信装置１１−２は、共通出力ＩＦではない出力ＩＦから物理回線１２へ出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する。この例では、通信装置１１−２は、共通出力ＩＦではない出力ＩＦ「出力ＩＦ−４」から物理回線１２へ出力されるパケットに対して、出力ラベル「Ｌ１３」を付加する。
【００５３】
通信装置１１−５は、通信装置１１−２からのパケットを受信する。通信装置１１−５は、パケットに付与された多重数ラベルにより示される多重数だけ、パケットに多重された各ラベルとパケットを入力させた入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＳＲラベルテーブル２３１ｃから検索する。この例では、多重数ラベルにより示されるラベルの多重数が「２」であり、パケットに多重されたラベルが「Ｌ１７」及び「Ｌ１８」であり、パケットを入力させた入力ＩＦが「入力ＩＦ−１」である。このため、通信装置１１−５は、多重数「２」回分だけ、出力ラベルと出力ＩＦとの組合せをＬＳＲラベルテーブル２３１ｃから検索する。そして、通信装置１１−５は、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−３」との組合せ、並びに、出力ラベル「Ｌ１８」と出力ＩＦ「出力ＩＦ−２」との組合せを検索する。
【００５４】
続いて、通信装置１１−５は、出力ラベルと出力ＩＦの組合せのうち、共通出力ＩＦを含む複数の組合せを特定する。この例では、検索された組合せは、出力ラベル「Ｌ１７」と出力ＩＦ「出力ＩＦ−３」との組合せ、並びに、出力ラベル「Ｌ１８」と出力ＩＦ「出力ＩＦ−２」との組合せであるので、共通出力ＩＦを含む複数の組合せが特定されない。
【００５５】
続いて、通信装置１１−５は、共通出力ＩＦを含む複数の組合せが特定されないので、共通出力ＩＦではない出力ＩＦから物理回線１２へ出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する。この例では、通信装置１１−５は、共通出力ＩＦではない出力ＩＦ「出力ＩＦ−３」から物理回線１２へ出力されるパケットに対して、出力ラベル「Ｌ１７」を付加する。また、通信装置１１−５は、共通出力ＩＦではない出力ＩＦ「出力ＩＦ−２」から物理回線１２へ出力されるパケットに対して、出力ラベル「Ｌ１８」を付加する。
【００５６】
通信装置１１−８は、通信装置１１−５からのパケットを受信する。通信装置１１−８は、パケットに多重数ラベルが付与されていないので、パケットに付加されたラベルとパケットを入力させた入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＥＲラベルテーブル２３１ｄから検索する。この例では、通信装置１１−８は、出力ラベル「−」と出力ＩＦ「出力ＩＦ−２」との組合せを検索する。
【００５７】
続いて、通信装置１１−８は、パケットに付加されたラベルをパケットから削除し、検索された出力ＩＦにパケットを送出する。この例では、通信装置１１−８は、パケットに付加された出力ラベル「Ｌ１８」をパケットから削除し、検索された出力ＩＦ「出力ＩＦ−２」にパケットを送出する。
【００５８】
このように、本実施例の通信装置１１は、ラベルテーブルから検索されたＬＳＰのラベルと出力ＩＦとの組合せのうち、複数のラベルに組み合わされた同一の出力ＩＦを共通出力ＩＦとして含む複数の組合せを特定する。そして、本実施例の通信装置１１は、共通出力ＩＦを含む複数の組合せが特定された場合に、共通出力ＩＦから物理回線１２へ出力される一つのパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する。このため、本実施例によれば、同一の物理回線に設定された複数のＰ２Ｐ−ＬＳＰの各々に対してパケットをコピーして出力する従来のＰ２Ｐ方式と比較して、物理回線の帯域の浪費を抑えることができる。また、本実施例によれば、Ｐ２Ｐ方式で用いられるＰ２Ｐ−ＬＳＰラベルと同様のラベルを用いるので、Ｐ２Ｐ−ＬＳＰラベルとＰ２Ｍ−ＬＳＰラベルとの使い分けを回避することができ、パケットに付加することが許容されるラベル長を規格内に維持可能となる。つまり、本実施例によれば、ラベル長を規格内に維持しつつ、パスが設定された物理回線の帯域の浪費を抑えることができる。
【００５９】
次に、本実施例のＭＰＬＳ−ＴＰネットワーク１０の動作について説明する。図９は、Ｉｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−１の処理手順を示すフローチャートである。図９に示すように、通信装置１１−１の転送先検索部２３３は、マルチキャスト用のパケットを受信していない場合には（ステップＳ１０１；Ｎｏ）、待機する。
【００６０】
転送先検索部２３３は、マルチキャスト用パケットを受信すると（ステップＳ１０１；Ｙｅｓ）、パケット内の宛先ＩＰアドレスと入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＥＲラベルテーブル２３１ａから検索する（ステップＳ１０２）。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。
【００６１】
特定部２３４は、出力ラベルと出力ＩＦとの組合せが複数検索されたか否かを判定する（ステップＳ１０３）。特定部２３４は、出力ラベルと出力ＩＦとの組合せが複数検索された場合には（ステップＳ１０３；Ｙｅｓ）、検索された複数の組合せのうち、共通出力ＩＦを含む複数の組合せを特定する（ステップＳ１０４）。
【００６２】
Ｐ２Ｐラベル多重部２３５は、共通出力ＩＦを含む複数の組合せが特定された場合には（ステップＳ１０５；Ｙｅｓ）、共通出力ＩＦから物理回線１２へ出力されるパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する（ステップＳ１０６）。
【００６３】
多重数ラベル付与部２３６は、パケットに多重されたラベルの数である多重数を示す多重数ラベルをパケットに付与する（ステップＳ１０７）。送信パケット制御部２２は、送信キュー内にパケットをキューイングし、キューイングされたパケットを共通出力ＩＦを通じて物理回線１２へ送出する（ステップＳ１０８）。
【００６４】
一方、Ｐ２Ｐラベル多重部２３５は、出力ラベルと出力ＩＦとの組合せが複数検索されなかった場合（ステップＳ１０３；Ｎｏ）、又は、共通出力ＩＦを含む複数の組合せが特定されなかった場合には（ステップＳ１０５；Ｎｏ）、以下の処理を行う。すなわち、Ｐ２Ｐラベル多重部２３５は、出力ＩＦから出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する（ステップＳ１０９）。送信パケット制御部２２は、送信キュー内にパケットをキューイングし、キューイングされたパケットを出力ＩＦを通じて物理回線１２へ送出する（ステップＳ１１０）。
【００６５】
図１０は、ＬＳＲとしての通信装置１１−２の処理手順を示すフローチャートである。図１０に示すように、通信装置１１−２の転送先検索部２３３は、パケットを受信していない場合には（ステップＳ１１１；Ｎｏ）、待機する。
【００６６】
転送先検索部２３３は、パケットを受信すると（ステップＳ１１１；Ｙｅｓ）、受信したパケットに多重数ラベルが付与されているか否かを判定する（ステップＳ１１２）。転送先検索部２３３は、パケットに多重数ラベルが付与されていない場合には（ステップＳ１１２；Ｎｏ）、入力ラベルと入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＳＲラベルテーブル２３１ｂから検索する（ステップＳ１１３）。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。特定部２３４は、出力ラベルと出力ＩＦとの組合せが１つだけ検索されたので、出力ＩＦから出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する旨をＰ２Ｐラベル多重部２３５に指示する。
【００６７】
Ｐ２Ｐラベル多重部２３５は、受信されたパケットから入力ラベルを削除し（ステップＳ１１４）、出力ＩＦから出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する（ステップＳ１１５）。送信パケット制御部２２は、送信キュー内にパケットをキューイングし、キューイングされたパケットを出力ＩＦを通じて物理回線１２へ送出する（ステップＳ１１６）。
【００６８】
一方、転送先検索部２３３は、受信したパケットに多重数ラベルが付与されている場合には（ステップＳ１１２；Ｙｅｓ）、多重数ラベルにより示されるラベルの多重数を検索回数Ｎに設定する（ステップＳ１１７）。
【００６９】
転送先検索部２３３は、パケットに多重された各入力ラベルと入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＳＲラベルテーブル２３１ｂからＮ回検索する（ステップＳ１１８）。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。
【００７０】
特定部２３４は、Ｎ回検索された複数の組合せのうち、共通出力ＩＦを含む複数の組合せを特定する（ステップＳ１１９）。
【００７１】
Ｐ２Ｐラベル多重部２３５は、共通出力ＩＦを含む複数の組合せが特定されない場合には（ステップＳ１２０；Ｎｏ）、処理をステップＳ１１４へ移行する。
【００７２】
Ｐ２Ｐラベル多重部２３５は、共通出力ＩＦを含む複数の組合せが特定された場合には（ステップＳ１２０；Ｙｅｓ）、パケットに多重された各入力ラベルをパケットから削除する（ステップＳ１２１）。Ｐ２Ｐラベル多重部２３５は、共通出力ＩＦから物理回線１２へ出力されるパケットに対して、共通出力ＩＦに組み合わされた複数の出力ラベルを多重する（ステップＳ１２２）。
【００７３】
多重数ラベル付与部２３６は、パケットに多重されたラベルの数である多重数を示す多重数ラベルをパケットに付与する（ステップＳ１２３）。送信パケット制御部２２は、送信キュー内にパケットをキューイングし、キューイングされたパケットを共通出力ＩＦを通じて物理回線１２へ送出する（ステップＳ１２４）。
【００７４】
図１１は、Ｅｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−８の処理手順を示すフローチャートである。図１１に示すように、通信装置１１−８の転送先検索部２３３は、パケットを受信していない場合には（ステップＳ１３１；Ｎｏ）、待機する。
【００７５】
転送先検索部２３３は、パケットを受信すると（ステップＳ１３１；Ｙｅｓ）、受信したパケットに多重数ラベルが付与されているか否かを判定する（ステップＳ１３２）。転送先検索部２３３は、パケットに多重数ラベルが付与されていない場合には（ステップＳ１３２；Ｎｏ）、入力ラベルと入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＥＲラベルテーブル２３１ｄから検索する（ステップＳ１３３）。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。特定部２３４は、出力ラベルと出力ＩＦとの組合せが１つだけ検索されたので、出力ＩＦから出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する旨をＰ２Ｐラベル多重部２３５に指示する。
【００７６】
Ｐ２Ｐラベル多重部２３５は、受信されたパケットから入力ラベルを削除し（ステップＳ１３６）、送信キュー内にパケットをキューイングし、キューイングされたパケットを出力ＩＦを通じて物理回線１２へ送出する（ステップＳ１３７）。
【００７７】
一方、転送先検索部２３３は、受信したパケットに多重数ラベルが付与されている場合には（ステップＳ１３２；Ｙｅｓ）、多重数ラベルにより示されるラベルの多重数を検索回数Ｎに設定する（ステップＳ１３４）。
【００７８】
転送先検索部２３３は、パケットに多重された各入力ラベルと入力ＩＦとの組合せに対応する出力ラベルと出力ＩＦとの組合せをＬＳＲラベルテーブル２３１ｂからＮ回検索する（ステップＳ１３５）。転送先検索部２３３は、出力ラベルと出力ＩＦとの組合せを検索結果として特定部２３４に出力する。特定部２３４は、出力ラベルと出力ＩＦとの組合せが１つだけ検索されたので、出力ＩＦから出力されるパケットに対して、出力ＩＦに組み合わされた出力ラベルを付加する旨をＰ２Ｐラベル多重部２３５に指示し、処理をステップＳ１３４に移行する。
【００７９】
上述したように、本実施例の通信装置１１は、ラベルテーブルから検索されたＬＳＰのラベルと出力ＩＦとの組合せのうち、複数のラベルに組み合わされた同一の出力ＩＦを共通出力ＩＦとして含む複数の組合せを特定する。そして、本実施例の通信装置１１は、共通出力ＩＦを含む複数の組合せが特定された場合に、共通出力ＩＦから物理回線１２へ出力される一つのパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する。このため、本実施例によれば、同一の物理回線に設定された複数のＰ２Ｐ−ＬＳＰの各々に対してパケットをコピーして出力する従来のＰ２Ｐ方式と比較して、物理回線の帯域の浪費を抑えることができる。また、本実施例によれば、Ｐ２Ｐ方式で用いられるＰ２Ｐ−ＬＳＰラベルと同様のラベルを用いるので、Ｐ２Ｐ−ＬＳＰラベルとＰ２Ｍ−ＬＳＰラベルとの使い分けを回避することができ、パケットに付加することが許容されるラベル長を規格内に維持可能となる。つまり、本実施例によれば、ラベル長を規格内に維持しつつ、パスが設定された物理回線の帯域の浪費を抑えることができる。
【００８０】
また、本実施例の通信装置１１は、パケットに多重されるラベルの数である多重数を示す多重数ラベルをパケットに付与し、多重数ラベルが付与されたパケットを受信した場合に、多重数ラベルにより示される多重数だけラベルと出力部との組合せを検索する。そして、本実施例の通信装置１１は、検索された組合せのうち、共通出力ＩＦを含む複数の組合せを特定し、特定された場合に、共通出力ＩＦから物理回線１２へ出力される一つのパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する。このため、本実施例によれば、当該通信装置１１がＬＳＲである場合であっても、共通出力ＩＦに組み合わされた複数のラベルをパケットに多重して同一の物理回線１２へ出力することができる。結果として、本実施例によれば、ＭＰＬＳ−ＴＰネットワーク１０全体において、パスが設定された物理回線の帯域を効率的に抑えることができる。
【００８１】
さて、本願の開示するパケット通信装置の実施例について説明したが、本願の開示するパケット通信装置は上述した実施例以外にも、種々の異なる実施例にて実施することもできる。
【００８２】
上記実施例では、通信装置１１のラベルテーブル設定部２３２が、ＣＬＩやＧＵＩを通じて管理者から取得した入力情報をラベルテーブル２３１に設定する例を説明したが、これには限られない。例えば、図１２に示すように、ＭＰＬＳ−ＴＰネットワーク１０の外部に設けられたネットワーク管理装置１３が、ＣＬＩやＧＵＩを通じて管理者から取得した入力情報を各通信装置１１のラベルテーブル２３１に設定することも可能である。図１２は、ラベルテーブルの設定例１について説明するための図である。図２に示す例では、ネットワーク管理装置１３は、ＭＰＬＳ−ＴＰネットワーク１０の内部の各通信装置１１と通信可能に接続される。そして、ネットワーク管理装置１３は、入力情報として、入力ＩＦと宛先ＩＰアドレスとの組合せ、入力ＩＦと入力ラベルとの組合せ、及び出力ラベルと出力ＩＦとの組合せ等を管理者から取得する。そして、ネットワーク管理装置１３は、入力ＩＦと宛先ＩＰアドレスとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応づけてＬＥＲラベルテーブル２３１ａに設定する。ラベルテーブル設定部２３２は、入力ＩＦと入力ラベルとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応付けてＬＳＲラベルテーブル２３１ｂ，２３１ｃやＬＥＲラベルテーブル２３１ｄに設定する。なお、図１２は、ラベルテーブルの設定例１について説明するための図である。
【００８３】
また、例えば、図１３に示すように、ＭＰＬＳ−ＴＰネットワーク１０の外部に設けられたＳＤＮ（Software  Defined  Network）コントローラ１４が、各通信装置１１のラベルテーブル２３１を動的に設定することも可能である。図１３は、ラベルテーブルの設定例２について説明するための図である。図１３に示す例では、ＳＤＮコントローラ１４は、ＭＰＬＳ−ＴＰネットワーク１０の内部の通信装置１１のうちＬＥＲとしての通信装置１１−１，１１−３，１１−４，１１−６，１１−７，１１−８と通信可能に接続される。また、Ｉｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−１は、ＩＧＭＰ（Internet  Group  Multicast  Protocol）やＰＩＭ（Protocol  Independent  Multicast）等を含むマルチキャスト用のプロトコルを用いて、データの送信元となるサーバＳと接続される。また、Ｅｇｒｅｓｓ−ＬＥＲとしての通信装置１１−８は、ＩＧＭＰやＰＩＭ等を含むマルチキャスト用のプロトコルを用いて、データの宛先となるレシーバＲと接続される。
【００８４】
図１４は、図１３に示した構成の処理手順を説明するための図である。図１４に示すように、サーバＳは、マルチキャスト用の宛先ＩＰアドレス（以下単に「宛先ＩＰアドレス」という）を含むパケットをＩｎｇｒｅｓｓ−ＬＥＲとしての通信装置１１−１に送信する（ステップＳ１１）。
【００８５】
パケットを受信した通信装置１１−１は、パケットの入力ＩＦと宛先ＩＰアドレスとの組合せをＳＤＮコントローラ１４に送信する（ステップＳ１２）。
【００８６】
一方、レシーバＲは、ＩＧＭＰやＰＩＭ等を含むマルチキャスト用のプロトコルを用いて、受信予定の宛先ＩＰアドレスをＥｇｒｅｓｓ−ＬＥＲとしての通信装置１１−８に送信する（ステップＳ１３）。
【００８７】
宛先ＩＰアドレスを受信した通信装置１１−８は、受信した宛先ＩＰアドレスとレシーバＲが接続されている出力ＩＦとの組合せをＳＤＮコントローラ１４に送信する（ステップＳ１４）。
【００８８】
ＳＤＮコントローラ１４は、宛先ＩＰアドレスをキーとして、サーバＳの入力ＩＦとレシーバＲの出力ＩＦとをマッピングする（ステップＳ１５）。すなわち、ＳＤＮコントローラ１４は、入力ＩＦと宛先ＩＰアドレスとの組合せと、使用すべきＬＳＰの出力ラベルと出力ＩＦとの組合せとの対応関係を生成する。
【００８９】
ＳＤＮコントローラ１４は、生成した対応関係を用いてラベルテーブルの設定を行うよう通信装置１１−１に指示する（ステップＳ１６）。
【００９０】
通信装置１１−１は、ＳＤＮコントローラ１４からの指示に基づいて、入力ＩＦと宛先ＩＰアドレスとの組合せと、出力ラベルと出力ＩＦとの組合せとを対応づけてＬＥＲラベルテーブル２３１ａに設定する（ステップＳ１７）。
【００９１】
続いて、通信装置１１−１は、上記実施例で既に説明した通り、ＬＥＲラベルテーブル２３１ａから検索されたＬＳＰのラベルと出力ＩＦとの組合せのうち、複数のラベルに組み合わされた同一の出力ＩＦを共通出力ＩＦとして含む複数の組合せを特定する。そして、通信装置１１−１は、共通出力ＩＦを含む複数の組合せが特定された場合に、共通出力ＩＦから物理回線１２へ出力される一つのパケットに対して、共通出力ＩＦに組み合わされた複数のラベルを多重する。これにより、サーバＳとレシーバＲとの間でマルチキャスト用のパケットが送受信される（ステップＳ１８）。
【００９２】
このようにして、本実施例の通信装置１１は、サーバＳやレシーバＲの接続状況に応じてラベルテーブル２３１の内容が動的に変動するような環境下においても、物理回線の帯域の浪費を効率的に抑えることができる。
【００９３】
ところで、本実施例の通信装置１１の機能をソフトウェアとして実装し、該ソフトウェアを通信装置で実行することにより、通信装置１１と同等の機能を実現することもできる。以下、通信装置１１の機能をソフトウェアとして実装したパケット通信プログラムを実行する通信装置の一例を示す。図１５は、パケット通信プログラムを実行する通信装置を示すブロック図である。
【００９４】
図１５に示すように、通信装置１０００は、ＨＤＤ（Hard  Disk  Drive）１１００、ＣＰＵ（Central Processing Unit）１２００、ＲＯＭ（Read  Only  Memory）１３００及びＲＡＭ（Random Access Memory）１４００を有する。ＨＤＤ１１００、ＣＰＵ１２００、ＲＯＭ１３００及びＲＡＭ１４００は、バス１５００により接続される。
【００９５】
ＲＯＭ１３００には、例えば本実施例と同様の機能を発揮するパケット通信プログラム、すなわち、転送先検索プログラム１３０１、特定プログラム１３０２、Ｐ２Ｐラベル多重プログラム１３０３及び多重数ラベル付与プログラム１３０４が記憶される。
【００９６】
そして、ＣＰＵ１２００が、転送先検索プログラム１３０１、特定プログラム１３０２、Ｐ２Ｐラベル多重プログラム１３０３及び多重数ラベル付与プログラム１３０４をＲＯＭ１３００から読み出してＲＡＭ１４００に展開する。これにより、各プログラム１３０１〜１３０４は、それぞれ転送先検索プロセス１２０１、特定プロセス１２０２、Ｐ２Ｐラベル多重プロセス１２０３及び多重数ラベル付与プロセス１２０４として機能する。このように、ＣＰＵ１２００は、図２に示す転送制御部２３に相当する。
【００９７】
また、ＨＤＤ１１００は、図２に示したラベルテーブル２３１に対応する各種情報を記憶する。ＣＰＵ１２００は、ＨＤＤ１１００に記憶された情報を読み出して、ＲＡＭ１４００に格納し、各プロセス１２０１〜１２０４が、ＲＡＭ１４００に格納されたデータを利用して各種処理を実行する。
【符号の説明】
【００９８】
１０  ＭＰＬＳ−ＴＰネットワーク
１１  通信装置
１２  物理回線
２１  受信パケット制御部
２２  送信パケット制御部
２３  転送制御部
２３１  ラベルテーブル
２３１ａ，２３１ｄ  ＬＥＲラベルテーブル
２３１ｂ，２３１ｃ  ＬＳＲラベルテーブル
２３２  ラベルテーブル設定部
２３３  転送先検索部
２３４  特定部
２３５  Ｐ２Ｐラベル多重部
２３６  多重数ラベル付与部
【図１】
2014195179.tif 000003
【図２】
2014195179.tif 000004
【図３】
2014195179.tif 000005
【図４】
2014195179.tif 000006
【図５】
2014195179.tif 000007
【図６】
2014195179.tif 000008
【図７】
2014195179.tif 000009
【図８】
2014195179.tif 000010
【図９】
2014195179.tif 000011
【図１０】
2014195179.tif 000012
【図１１】
2014195179.tif 000013
【図１２】
2014195179.tif 000014
【図１３】
2014195179.tif 000015
【図１４】
2014195179.tif 000016
【図１５】
2014195179.tif 000017