JP4599429B2 - 通信システム及び通信方法 - Google Patents

通信システム及び通信方法 Download PDF

Info

Publication number
JP4599429B2
JP4599429B2 JP2008125847A JP2008125847A JP4599429B2 JP 4599429 B2 JP4599429 B2 JP 4599429B2 JP 2008125847 A JP2008125847 A JP 2008125847A JP 2008125847 A JP2008125847 A JP 2008125847A JP 4599429 B2 JP4599429 B2 JP 4599429B2
Authority
JP
Japan
Prior art keywords
service
packet
node
identification information
program
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
JP2008125847A
Other languages
English (en)
Other versions
JP2009278235A (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.)
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 JP2008125847A priority Critical patent/JP4599429B2/ja
Publication of JP2009278235A publication Critical patent/JP2009278235A/ja
Application granted granted Critical
Publication of JP4599429B2 publication Critical patent/JP4599429B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、通信システムにおいてパケットを転送し、処理する技術に関する。
近年IP(Internet Protocol)ネットワークでは、電子メール、WWW(World Wide Web)、VoIP(Voice over IP)などの各種アプリケーションが利用できるようになり、急速に通信トラフィックが増加している。このIPネットワークは、受信したパケットのIPヘッダ情報に基づきパケットの出力回線を決定するルータにより構成されており、当初はルーティング処理をソフトウェアで行っていたが、近年では通信トラフィックの増加に対応するため、この処理をハードウェアで行うルータが脚光をあびている。
転送処理のハードウェア化において、さらにルータの性能向上を目的として、特許文献1および非特許文献1に開示されているような、機能分散システムが提案されている。具体的には、ルータの機能を、ルーティングを制御する機能とパケットを転送する機能とに分け、これらを別々のノードに分担させる通信システムである。この構成によれば、通信システムは、ルーティングの制御処理についての負荷の影響を受けずに、パケット転送処理を行うことが可能となる。
特開2006−135975号公報 T. V. Laksman, T. Nandagopal, R. Ramjee, K. Sabnani, and T. Woo, "The SoftRouter architecture, " in Proc. ACM SIGCOMM Workshop on Hot Topics in Networking, November 2004.
しかし、このような機能分散型の通信システムによっても、サービスを提供するためのプログラムが多い場合、通信システムの運用に支障をきたすことがあった。
より詳細には、複数のパケットを複数のサービス用のプログラムで処理する場合、図27に示すように、その組み合わせごとに、組み合わせを識別するための番号やラベルを割り当てる必要が生じ、組み合わせの数が多くなると、識別子の管理が困難となる。
また、複数のノードで複数のサービスを実行する場合、サービスの一部の変更であっても、通信システム全体に影響が及び、大規模なルーティングテーブルの変更が必要になることがある。
このため、複雑な通信システムにおいては、サービス追加、削除等の変更が困難になるという問題があった。
本発明は、容易にサービスを変更できる通信システムを実現する技術を提供することを目的とする。
上記目的を達成するために、本発明の通信システムは、所定のサービスを提供するために実行されるプログラムを識別するためのサービス識別情報と、該プログラムを実行するサービス処理ノードに転送するための転送用識別情報と、をパケットに付与し、該パケットを該転送用識別情報に基づいて所定の経路で転送する、転送ノードと、前記転送ノードから前記パケットを受信し、該パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理するサービス処理ノードと、パケットを転送する経路を示すルーティングテーブル、及びパケットと所定のサービスを提供するためのプログラムを実行するサービス処理ノードとの対応関係を示す前記サービス情報テーブルを、ノードごとに作成し、該ルーティングテーブル及び該サービス情報テーブルに基づいて、前記転送ノード及び前記サービス処理ノードを制御する制御ノードと、を有し、前記転送ノードは、前記制御ノードにより作成された前記サービス情報テーブル及び前記ルーティングテーブルを記憶しておき、該サービス情報テーブルに基づいて前記サービス識別情報を前記パケットに付与し、該ルーティングテーブルに基づいて前記転送用識別情報を前記パケットに付与し、前記サービス処理ノードは、前記制御ノードにより作成された前記サービス情報テーブルを記憶しておき、該サービス情報テーブルに基づいて前記パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理する。
本発明の通信方法は、制御ノードが、パケットを転送する経路を示すルーティングテーブル、及びパケットと所定のサービスを提供するためのプログラムを実行するサービス処理ノードとの対応関係を示すサービス情報テーブルを、ノードごとに作成するステップと、転送ノードが、所定のサービスを提供するために実行されるプログラムを識別するためのサービス識別情報と、該プログラムを実行するサービス処理ノードに転送するための転送用識別情報と、を該パケットに付与し、該パケットを、該転送用識別情報に基づいて所定の経路で転送する転送ステップと、前記サービス処理ノードが、前記転送ノードから前記パケットを受信し、該パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理するパケット処理ステップと、を有し、前記転送ステップにおいては、前記転送ノードが、前記制御ノードにより作成された前記サービス情報テーブル及び前記ルーティングテーブルを記憶しておき、該サービス情報テーブルに基づいて前記サービス識別情報を前記パケットに付与し、該ルーティングテーブルに基づいて前記転送用識別情報を前記パケットに付与し、前記パケット処理ステップにおいては、前記サービス処理ノードが、前記制御ノードにより作成された前記サービス情報テーブルを記憶しておき、該サービス情報テーブルに基づいて前記パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理する通信方法である。
本発明によれば、転送ノードがサービス識別情報及び転送用識別情報を付与したパケットを所定の経路で転送し、サービス処理ノードは、サービス識別情報の示すプログラムで受信したパケットを処理する。サービスを変更するときは、ルーティングが変更されない限り、サービス識別情報のみを変更すればよく、転送用識別情報の変更を要しない。また、ルーティングの変更を伴うサービスの変更であっても転送用識別情報の変更は最小限で済む。このため、通信システムは容易にサービスを変更することができる。
(第1の実施形態)
本発明を実施するため第1の実施形態について図面を参照して詳細に説明する。
図1は、本実施形態の通信システム1の構成を示す全体図である。通信システム1は、パケットを転送する機能と、所定のサービスを提供する機能とを有し、これらが異なるノードに分散した機能分散型の通信システムである。同図を参照すると、通信システム1は、制御信号処理装置10、パケット転送装置20、およびサービス処理装置30を有する。
ここで、パケット転送装置20およびサービス処理装置30は、それぞれ1台に限らず、複数台設けてもよい。
制御信号処理装置10は、パケット転送装置20およびサービス処理装置30を制御するサーバ等の通信装置である。図2は、制御信号処理装置10の構成を示すブロック図である。同図を参照すると、制御信号処理装置10は、テーブル作成部11および制御部13を有する。このテーブル作成部11は、ルーティングテーブル111およびサービス情報テーブル113を作成する。制御部13は、パケット転送装置20およびサービス処理装置30との間で制御信号を送受信するためのセッションを確立し、作成されたルーティングテーブル111およびサービス情報テーブル113に基づいて、これらの装置(20、30)を制御する。制御部13の制御により、パケット転送装置20およびサービス処理装置30は、パケットのルーティング処理を行い、サービス用のプログラムを実行する。
図3は、ルーティングテーブル111の構成の一例を示す図である。ルーティングテーブル111は、通信システム1において、各ノード(20)がパケットを転送する経路を決定するためのテーブルである。同図を参照すると、ルーティングテーブル111は、ノード1111、入力ラベル1112、アドレスプレフィックス1113、出力IF1114、および出力ラベル1115を示す情報を含む。
ノード1111は、通信システム1においてパケットを転送するノード(20)である。
入力ラベル1112および出力ラベル1115は、サービス処理装置30へ転送するためにパケットに付与されるラベルである。ここで、ラベルとは、パケットに付加される識別子であり、本実施形態においては、パケット転送装置20により、パケット転送のための転送用ラベル(1112および1115)と、サービス用のプログラムを識別するためのサービス識別ラベルと、の2種類のラベルがパケットに付与される。サービス識別ラベルについては後述する。
転送用ラベル(1112および1115)の値は、例えば、MPLS(Multi-Protocol Label Switching)プロトコルを使用して決定する。本実施形態では、MPLSプロトコルにおいて、経路情報ごとにラベルを割り当てる、プレフィックスベース方式を用いる。
具体的には、ルーティングテーブル111には、アドレスプレフィックス1113ごとに、入力ラベル1112および出力ラベル1115の対応関係が設定される。通信システム1におけるエッジのノード(20)は、他のノードからパケットを受信し、そのパケットに転送用ラベル(1115)を付与して他のノード(20、30)に転送する。そして、転送用ラベル(1115)が付与されたパケットを受信したノード(20、30)は、ルーティングテーブル111を参照し、付与されたラベル(1115)を入力ラベル1112として、このラベル(1112)を、対応する出力ラベル1115に置き換えて(スイッチングして)他のノード(20、30)に転送する。
アドレスプレフィックス1113は、パケットに対応するIP(Internet Protocol)アドレスのうち、ネットワークアドレスを示す部分である。
出力IF1114は、パケット転送に使用されるノード(20)の通信インターフェースである。
例えば、エッジのノード「20−1」(1111)は、アドレスプレフィックス1113が「192.168」のパケットに出力ラベル1115として「f1」を付与し、出力IF「0」(1114)を使用して送信する。そして、このパケットを受信したノード「20−2」は、ルーティングテーブル111を参照し、パケットに付与された転送用ラベル「f1」(1115)を入力ラベル1112として、この入力ラベルを対応する出力ラベル「f3」(1115)に置き換えて、転送する。
なお、転送用ラベル(1112および1115)の値の決定には、トンネルベース方式や、TDP(Tag Distribution Protocol)、LDP(Label Distribution Protocol)を使用することもできる。
また、パケットに付加する識別子であれば、ラベルに限らず、他の識別子を使用することもできる。
図4は、サービス情報テーブル113の構成の一例を示す図である。同図を参照すると、サービス情報テーブル113は、サービス処理装置1131、サービス識別ラベル1132、アドレスプレフィックス1133、プログラム1134、および実行順序1135を示す情報を含む。
サービス処理装置1131は、サービスを提供するためのプログラム1134を実行するノードである。サービス識別ラベル1132は、プログラム1134を識別するために、一意に割り当てられる識別子である。アドレスプレフィックス1133は、パケットに対応するIPアドレスのうち、ネットワークアドレスを示す部分である。プログラム11354は、所定のサービスの提供のためにサービス処理装置30により実行されるプログラムである。実行順序1135は、プログラム1134を実行する順序である。
例えば、アドレスプレフィックス1133が「192.168」のパケットに、サービス識別ラベル「p1」および「p2」(1132)が付されたパケットをサービス処理装置「20−2」(1131)が受信する。このとき、サービス処理装置「20−2」(1131)は、サービス情報テーブル113を参照し、実行順序1135に従って、そのパケットに対して「p1」に対応するプログラム「A」(1134)を実行し、次いで「p2」に対応するプログラム「B」(1134)を実行する。
図5は、パケット転送装置20の構成を示すブロック図である。パケット転送装置は、受信したパケットを所定の経路で他のノードに転送するルータ等の通信装置である。同図を参照すると、パケット転送装置20は、ラベル処理部21およびパケット振り分け部23を有する。
ラベル処理部21は、ルーティングテーブル211およびサービス情報テーブル213を有する。これらのテーブル(211および213)は、制御用信号処理装置10により作成されたルーティングテーブル111およびサービス情報テーブル113と同じ内容のテーブルである。各ノード(20、30)のルーティングテーブルおよびサービス情報テーブルは、制御信号処理装置10により一元的に管理されている。
ラベル処理部21は、他のノードからラベルが付与されていないパケットを受信したとき、サービス情報テーブル213を参照して、そのパケットのアドレスプレフィックス(1133)に対応するサービス処理装置(1131)およびサービス識別ラベル(1132)を求める。そして、ラベル処理部21は、求めたサービス処理装置(1131)に転送するための転送用ラベル(1115)を求める。そして、ラベル処理部21は、求めた転送用ラベルおよびサービス識別ラベルをパケットに付加する。ここで、ラベル処理部21は、実行順序(1135)に従ってサービス識別ラベルをパケットに付与する。
パケット振り分け部23は、ルーティングテーブル23を参照し、転送用ラベル(1112、1115)の置き換えを行い、出力ラベル1115に対応する出力IF1114を使用してパケットを送信する。
図6に、通信システム1において送受信されるパケットのフォーマットの一例を示す。同図を参照すると、通信システム1におけるパケットには、IP(Internet Protocol)ヘッダ、TCP(Transmission Control Protocol)ヘッダ等の第2層より上位層のプロトコルヘッダ(L3ヘッダおよびL4ヘッダ)が付与されている。このパケットに、ラベル処理部21によりサービス識別ラベル、転送用ラベルの順で、ラベルが付与される。サービス識別ラベルおよび転送用ラベルが付与された後、パケット振り分け部23により、MAC(Media Access Control)アドレス等のL2ヘッダが付与されて、カプセル化されたパケットがパケット転送装置20から送信される。
1つのパケットが複数のノード(20)で処理されるのであれば、ラベル処理部21は、最後に処理するノード(20)に対応するラベルの組(サービス識別ラベル、転送用ラベル)から順に付与し、最初に処理するノードに対応するラベルの組を最後に付与する。また、1つのノード(20)で1つのパケットに対して複数のプログラムが実行されるのであれば、ラベル処理部21は、最後に実行するプログラムに対応するサービス識別ラベルから順に付与し、最初に実行するプログラムに対応するサービス識別ラベルを最後に付与する。
図7は、サービス処理装置30の構成を示すブロック図である。サービス処理装置30は、所定のサービスを提供するパーソナルコンピュータ等の通信装置である。サービスとして通信システム1に提供される機能としては、ファイアウォール機能、トラフィック制御機能などがある。同図を参照すると、サービス処理装置30は、サービス処理機能部31を有し、サービス処理機能部31はサービス情報テーブル311を有する。このサービス情報テーブル311は、制御用信号処理装置10により作成されたサービス情報テーブル113と同じ内容のテーブルである。
サービス処理機能部31は、制御信号処理装置10の制御に従い、転送用ラベル(1115)に基づいて、受信したパケットが自身の実行するサービス処理の対象であるか否かを判断する。例えば、制御信号処理装置10が、サービス処理装置20が処理対象とすべきパケットに対応する転送用ラベル(115)を、予めサービス処理装置20に通知しておき、その通知内容から、パケットが処理対象であるか否かを判断する。
サービス処理機能部31は、受信したパケットが自身の実行するサービス処理の対象であれば、サービス情報テーブル311を参照して、そのパケットに対応するプログラム(1134)を読み出し、そのプログラムでパケットを処理する。
次に、通信システム1の動作について図8〜図12を参照して説明する。図8は、パケット転送装置20が実行するパケット転送処理を示すフローチャートである。このパケット転送処理は、パケット転送処理装置20にアドレスが設定され、パケット転送処理装置20がパケットを受信したときに開始する。同図を参照すると、ラベル処理部21がラベル処理(ステップS1)を実行し、パケット振り分け部23が、ルーティングテーブル211を参照して、所定の経路でパケットを転送する(ステップS3)。
図9は、ラベル処理を示すフローチャートである。同図を参照すると、ラベル処理部21は、受信したパケットのヘッダを参照し、ラベルが付与されているか否かを判断する(ステップS11)。
パケットにラベルが付与されていない場合(ステップS11:NO)、すなわち、通信システム1の外部からのパケットを受信した場合は、サービス情報テーブル213を参照して、そのパケットのアドレスプレフィックス(1133)に対応するサービス処理装置(1131)およびサービス識別ラベル(1132)を求める。そして、ラベル処理部21は、求めたサービス処理装置(1131)に転送するための転送用ラベル(1115)を求める(ステップS13)。そして、ラベル処理部21は、求めたサービス識別ラベルおよび転送用ラベルをパケットに付加する(ステップS15)。
パケットにラベルが付与されている場合(ステップS11:YES)、またはステップS15の後、ラベル処理部21はラベル処理を終了する。
図10は、サービス処理装置30が実行するサービス処理を示すフローチャートである。このサービス処理は、サービス処理装置30に通信システム1におけるアドレスが設定されたときに開始する。同図を参照すると、サービス処理装置30は、ラベルが付与されたパケットを受信する(ステップT1)。サービス対象パケット判断部31は、サービス対象パケット判断処理を実行し(ステップT3)、サービス処理機能部31は、プログラム実行処理を行う(ステップT5)。
図11は、サービス対象パケット判断処理を示すフローチャートである。同図を参照すると、サービス処理機能部31は、パケットに付与された転送用ラベルを削除し、転送用ラベル(1115)を読み出す(ステップT31)。そして、サービス処理機能部31は、制御信号処理装置10からの通知内容に基づいて、パケットについてサービス用のプログラムを実行するサービス処理装置(1131)が自身であるか否かを判断する(ステップT33)。
転送用ラベル(1115)に対応するサービス処理装置(1131)が自身である場合(ステップT33:YES)、サービス処理機能部31は、転送用ラベル(1115)を削除し、サービス処理用フラグをONにする(ステップT35)。サービス処理用フラグは、パケットがサービス処理の対象であるか否かを示すフラグである。
転送用ラベル(1115)に対応するサービス処理装置(1131)が自身でない場合(ステップT33:NO)、またはステップT35の後、サービス対象パケット判断部31は、サービス対象パケット判断処理を終了する。
図12は、プログラム実行処理を示すフローチャートである。同図を参照すると、サービス処理機能部31は、サービス処理用フラグがONであるか否かを判断する(ステップT51)。サービス処理用フラグがONであれば(ステップT51:YES)、サービス処理機能部31は、サービス情報テーブル311を参照して、サービス識別ラベル(1132)に対応するサービス用のプログラムを実行する(ステップT53)。
そして、サービス処理機能部31は、そのサービス識別ラベル(1132)を削除し(ステップT55)、パケットヘッダにサービス識別ラベルが含まれるか否かを判断する(ステップT57)。パケットヘッダにサービス識別ラベルがあれば(ステップT57:YES)、サービス処理機能部31は、ステップT53に戻る。
サービス処理用フラグがOFFである場合(ステップT51:NO)、またはパケットヘッダにサービス識別ラベルがない場合(ステップT57:NO)、サービス処理機能部31は、プログラム実行処理を終了する。
続いて、図13〜図16を参照して、通信システム1の動作結果の一例について説明する。図13は、通信システム1におけるトポロジの一例を示した図である。
図13を参照すると、通信システム1は、パケット転送装置20−1および20−2と、サービス処理装置30−1および30−2を有する。パケット転送装置20−1および20−2は、パケット転送装置20と同様の構成であり、サービス処理装置30−1および30−2は、サービス処理装置30と同様の構成である。そして、パケット転送装置20−1の出力IF「0」(1114)は、パケット転送装置20−2の通信インターフェースに接続されている。また、パケット転送装置20−2の出力IF「0」は、サービス処理装置30−1の通信インターフェースに接続され、パケット転送装置20−2の出力IF「1」は、サービス処理装置30−2の通信インターフェースに接続されている。
この構成において、パケット転送装置20−1は、アドレスプレフィックスが「192.168」のパケットを、パケット転送装置20−2を介してサービス処理装置30−1に転送し、サービス処理装置30−1が、受信したパケットに対してプログラム「A」、「B」を実行する。一方、パケット転送装置20−1は、アドレスプレフィックスが「172.16」のパケットを、パケット転送装置20−2を介してサービス処理装置30−2に転送し、サービス処理装置30−2が、受信したパケットに対してプログラム「C」を実行する場合について考える。
図14に、図13の構成におけるルーティングテーブル111の設定の一例を示した図である。同図を参照すると、アドレスプレフィックスが「192.168」のパケットは、エッジのノードであるパケット転送装置20−1より、転送用ラベル「f1」(1115)が付与されて、出力IF「0」を通じてパケット転送装置20−2に転送される。そして、このパケットは、パケット転送装置20−2により、転送用ラベル「f1」(1112)が「f3」(1115)に置き換えられ、出力IF「0」を通じてサービス処理装置30−1に転送される。
一方、アドレスプレフィックスが「172.16」のパケットは、エッジのノードであるパケット転送装置20−1より、転送用ラベル「f2」(1115)が付与されて、出力IF「0」(1114)を通じてパケット転送装置20−2に転送される。そして、このパケットは、パケット転送装置20−2により、転送用ラベル「f2」(1112)が「f4」(1115)に置き換えられ、出力IF「1」(1114)を通じてサービス処理装置30−2に転送される。
図15は、図13の構成におけるサービス情報テーブル113の設定の一例を示した図である。同図を参照すると、アドレスプレフィックスが「192.168」のパケットは、サービス処理装置30−1により「A」、「B」の順で実行されたプログラムにより処理される。このため、プログラム「A」、「B」に対応するサービス識別ラベル1132として「p1」、「p2」が設定され、実行順序1135として「1」、「2」が設定される。
一方、アドレスプレフィックスが「172.16」のパケットは、サービス処理装置30−2により、プログラム「C」で処理される。このため、プログラム「C」に対応するサービス識別ラベル1132として「p3」が設定され、実行順序1135として「1」が設定される。
図16(a)は、アドレスプレフィックスが「192.168」のパケットのフォーマットの一例を示した図である。同図(a)を参照すると、このパケットには、パケット転送装置20−1により、「p2」、「p1」の順でサービス識別用ラベルが付与され、次いで「f1」の転送用ラベルが付与される(ステップS15)。
そして、このパケットは、パケット転送装置20−2に転送され、パケット転送装置20−2により、その転送用ラベル「f1」が削除され、「f3」に置き換えられる(ステップS3)。
サービス処理装置30−1は、このパケットを受信し、転送用ラベル「f3」を削除し、サービス識別ラベル「p1」を読み出す。この「p1」に対応するサービス処理ノードが自身(30−1)であるから(ステップT33:YES)、サービス処理装置30−1は、サービス識別ラベル「p1」に対応するプログラム「A」を実行する(ステップT53)。サービス処理装置30−1は、サービス識別ラベル「p1」を削除するが(ステップT55)、更にサービス識別ラベル「p2」が付加されているので(ステップT57:YES)、「p2」に対応するプログラム「B」を実行する(ステップT53)。
一方、図16(b)は、アドレスプレフィックスが「172.16」のパケットのフォーマットの一例を示した図である。同図(b)を参照すると、このパケットには、パケット転送装置20−1により、サービス識別用ラベル「p3」が付与され、次いで「f2」の転送用ラベルが付与される(ステップS15)。
そして、このパケットは、パケット転送装置20−2に転送され、パケット転送装置20−2により、その転送用ラベル「f2」が削除され、「f4」に置き換えられる(ステップS3)。
サービス処理装置30−1は、このパケットを受信し、転送用ラベル「f4」を削除し、サービス識別ラベル「p3」を読み出す。この「p3」に対応するサービス処理ノードが自身(30−2)であるから(ステップT33:YES)、サービス処理装置30−2は、サービス識別ラベル「p3」に対応するプログラム「C」を実行する(ステップT53)。
図17は、ルーティングテーブルを変更せずにサービスの変更を行った場合のサービス情報テーブル113の一例である。サービス処理装置30−1で、アドレスプレフィックス「192.168」のパケットをプログラム「D」で処理するサービスを追加する場合について考える。同図を参照すると、サービス情報テーブル113において、サービス処理装置「30−1」(1131)、サービス識別ラベル「p4」(1132)、アドレスプレフィックス「192.168」(1133)、プログラム「D」(1134)、実行順序「3」(1134)のエントリが追加されている。一方、ルーティングテーブル111に変更はない。
また、図18は、ルーティングテーブルの変更を伴うサービスの変更を行った場合のサービス情報テーブル113の一例である。サービス処理装置30−2で、アドレスプレフィックス「10.20」のパケットをプログラム「D」で処理するサービスを追加する場合について考える。同図を参照すると、サービス情報テーブル113において、サービス処理装置「30−2」(1131)、サービス識別ラベル「p4」(1132)、アドレスプレフィックス「10.20」(1133)、プログラム「D」(1134)、実行順序「1」(1134)のエントリが追加されている。
図19は、ルーティングテーブルの変更を伴うサービスの変更を行った場合のルーティングテーブル111の一例である。同図を参照すると、ノード「20−1」(1111)において、アドレスプレフィックス「10.20」(1113)、出力ラベル「f5」(1115)のエントリが追加されている。また、ノード「20−2」(1111)において、入力ラベル「f5」(1112)、アドレスプレフィックス「10.20」(1113)、出力ラベル「f6」(1115)のエントリが追加され、ノード「30−2」(1111)において、入力ラベル「f6」(1112)、アドレスプレフィックス「10.20」(1113)のエントリが追加されている。
図17で示したように、ルーティングの変更を要しないサービスの変更であれば、サービス情報テーブル113のみを変更すればよく、ルーティングテーブル111への影響はない。また、図18および図19で示したように、ルーティングの変更を伴うサービスの変更であっても、ルーティングテーブル111の変更は最小限で済む。このため、サービスの変更が容易である。
また、サービスを変更せずにトポロジを変更した場合でも、ルーティングテーブル111を変更するのみでよく、サービス情報テーブル113に影響はない。このため、サービス処理装置20の配置を変更しやすい。
これに対して、図27に示すように、パケットとサービスとの組み合わせごとにラベルを割り当てる構成では、サービス処理装置の配置を変更せずに、サービスのみを変更した場合でも、ルーティングテーブル全体に影響が及ぶので、通信システムはサービスの変更に対して柔軟に対応できない。
以上説明したように、本実施形態によれば、パケット転送装置20がサービス識別ラベル1132及び転送用ラベル1115を付与したパケットを所定の経路で転送し、サービス処理装置30は、サービス識別情報1132の示すプログラム1134で受信したパケットを処理する。サービスを変更するときは、ルーティングに変更のない限り、サービス識別ラベル1132のみを変更すればよく、転送用ラベル1115の変更を要しない。また、ルーティングの変更を伴うサービスの変更であっても転送用ラベル1115の変更は最小限で済む。このため、通信システム1は、容易にサービスを変更することができる。
また、制御信号処理装置10は、ルーティングテーブル111、及びサービス情報テーブル113を、ノードごとに作成し、これらのテーブルに基づいてパケット転送装置20及びサービス処理装置30を制御する。この構成により、パケット転送機能およびサービス処理機能と、制御機能とが、異なるノードに分散されるため、通信システム1は、ルーティングの制御処理についての負荷の影響を受けずに、パケット転送処理およびサービス処理を実行することができる。
パケット転送処理装置20は、テーブルを一元的に管理する制御信号処理装置10により作成されたルーティングテーブル211およびサービス情報テーブル213に基づいてサービス識別ラベル及び前記転送用ラベルをパケットに付与する。ルーティングテーブル211とサービス情報テーブル213とを別々に設けているため、サービスを変更するときは、ルーティングに変更のない限り、サービス情報テーブル213のみを変更すればよく、ルーティングテーブル211の変更を要しない。このため、サービスの変更が容易となる。
サービス処理装置30は、転送用ラベル(1115)に基づいてパケットに対応する前記サービス処理装置が自身であるか否かを判断し、パケットが処理対象であれば、サービスプログラムを実行するので、サービス処理装置30は、他のノードで処理すべきパケットを誤って処理することはない。
そして、サービス情報テーブル113は、プログラムの実行順序1135を示す情報を含むので、通信システム1は、サービス処理装置30に、複数のサービスを所定の順序で提供させることができる。
(第2の実施形態)
本発明の第2の実施形態について図20〜図25を参照して説明する。本実施形態の制御信号処理装置10およびパケット転送装置20の構成は、第1の実施形態と同様である。図20は、本実施形態のサービス処理装置30aの構成を示すブロック図である。同図を参照すると、サービス処理装置30aは、パケット振り分け部33を更に有する。このパケット振り分け部33は、パケット転送装置20のパケット振り分け部23と同様の構成である。
本実施形態の通信システムは、サービス処理装置30aが、パケット転送機能を有する点で第1実施形態と異なる。
図20は、本実施形態のサービス処理を示すフローチャートである。同図を参照すると、サービス処理(ステップT5)の後、ルーティングテーブルを参照してパケットを転送する(ステップT7)。
図22〜図25を参照して、本実施形態の動作結果の一例について説明する。図22は、本実施形態の通信システムのトポロジの一例を示した図である。同図を参照すると、本実施形態の通信システムは、パケット転送装置20−1および20−2と、サービス処理装置30−1および30−2を有する。パケット転送装置20−1および20−2は、パケット転送装置20と同様の構成であり、サービス処理装置30−1および30−2は、サービス処理装置30aと同様の構成である。
各ノード間の接続構成は、サービス処理装置30−1の出力IF「0」がサービス処理装置30−2の通信インターフェースに接続される以外は、第1実施形態と同様である。
第1実施形態では、サービス処理装置30−1は、サービス用のプログラム(「A」、「B」)を実行した後のパケットを他のノードに転送しない構成としていた。しかし、本実施形態では、サービス処理装置30−1が、受信したパケットについてサービス用のプログラム「A」、「B」を実行した後、そのパケットを他のサービス処理装置30−2に転送し、そのサービス処理装置30−2が、受信したパケットについて更に別のプログラム「D」を実行する。
制御信号処理装置10は、ルーティングテーブル111に、ノード「30−1」からノード「30−2」へ送信されるパケットに対応するエントリを追加する。図23は、図22の構成におけるルーティングテーブル111の設定の一例である。同図を参照すると、ノード「30−1」(1111)における、アドレスプレフィックス「192.168」(1113)、出力IF「0」(1114)、および出力ラベル「f5」(1115)のエントリと、ノード「30−2」(1111)における、入力ラベル「f5」(1112)、およびアドレスプレフィックス「192.168」(1113)のエントリとが追加されている。同図において斜線部は、追加されたエントリである。
制御信号処理装置10は、サービス情報テーブルに、プログラム「D」に対応するエントリを追加する。図24は、図22の構成におけるサービス情報テーブル113の設定の一例である。同図を参照すると、サービス処理装置「30−2」(1131)、サービス識別ラベル「p4」(1132)、アドレスプレフィックス「192.168」(1133)、プログラム「D」(1134)、および実行順序「3」(1135)のエントリが追加されている。同図において斜線部は、追加されたエントリである。
パケット転送装置20−1は、パケットに追加するプログラム「D」およびサービス処理装置30−2の識別情報の組を更に付与する。図25(a)は、図22の構成におけるパケットのフォーマットを示した図である。同図を参照すると、パケット転送装置20−1により、パケットには、サービス識別ラベル「p4」、転送用ラベル「f5」、サービス識別ラベル「p1」、「p2」、および転送用ラベル「f1」の順でラベルが付与される(ステップS1)。そして、パケット転送装置20−2により、転送用ラベル「f1」が「f2」に置き換えられる(ステップS3)。このパケットはサービス処理装置30−2に転送され、サービス処理装置30−1により、プログラム「A」、「B」が実行された後、サービス識別ラベル「p1」、「p2」が削除される(ステップT55)。
図25(b)は、サービス処理装置30−1によりプログラム「A」、「B」が実行された後のパケットのフォーマットを示す図である。同図を参照すると、パケットには、サービス識別ラベル「p4」、転送用ラベル「f5」の順でラベルが付与れており、サービス処理装置30−2によりプログラム「A」、「B」が実行された後、サービス識別ラベル「p4」が削除される(ステップT55)。
以上、説明したように、本実施形態によれば、サービス処理装置30a(30−1)は、プログラム(「A」、「B」)で処理したパケットに、転送用ラベルが付与されていれば、処理したパケットを所定の経路で転送する。このため、1つのパケットについて複数のサービス処理装置で複数のプログラムを実行することができ、通信システム1は、サービスの変更や、サービス処理装置の配置の変更に対して、柔軟に対応することができる。
なお、ルーティングを制御する機能とパケットを転送する機能とを分散しない構成としてもよい。例えば、図26に示すように、制御信号処理装置10を設けず、通信システム1が、パケット転送処理装置20およびサービス処理装置30のみを有する構成とする。
また、図8〜図12および図21に示したフローチャートの一部または全部の処理はコンピュータプログラムの実行により実現することもできる。
第1の実施形態の通信システムの構成を示す全体図である。 第1の実施形態の制御信号処理装置の構成を示すブロック図である。 第1の実施形態のルーティングテーブルの構成を示す図である。 第1の実施形態のサービス情報テーブルの構成を示す図である。 第1の実施形態のパケット転送装置の構成を示すブロック図である。 第1の実施形態のパケットのフォーマットを示す図である。 第1の実施形態のサービス処理装置の構成を示すブロック図である。 第1の実施形態のパケット転送処理を示すフローチャートである。 第1の実施形態のラベル処理を示すフローチャートである。 第1の実施形態のサービス処理を示すフローチャートである。 第1の実施形態のサービス対象パケット判断処理を示すフローチャートである。 第1の実施形態のプログラム実行処理を示すフローチャートである。 第1の実施形態の通信システムの構成の一例を示す図である。 第1の実施形態のルーティングテーブルの構成を示す図である。 第1の実施形態のサービス情報テーブルの構成を示すブロック図である。 (a)第1の実施形態のパケットのフォーマットを示す図である。(b)第1の実施形態のパケットのフォーマットを示す図である。 第1の実施形態のサービス情報テーブルの構成の一例を示す図である。 第1の実施形態のサービス情報テーブルの構成の一例を示す図である。 第1の実施形態のルーティングテーブルの構成の一例を示す図である。 第2の実施形態のサービス処理装置の構成を示すブロック図である。 第2の実施形態のサービス処理を示すフローチャートである。 第2の実施形態の通信システムの構成の一例を示す図である。 第2の実施形態のルーティングテーブルの構成を示す図である。 第2の実施形態のサービス情報テーブルの構成を示すブロック図である。 (a)第2の実施形態のパケットのフォーマットを示す図である。(b)第2の実施形態のパケットのフォーマットを示す図である。 変形例の通信システムの構成の一例を示す図である。 比較例の通信システムの構成の一例を示す図である。
符号の説明
1 通信システム
10 制御信号処理装置
11 テーブル作成部
13 制御部
20、20−1、20−2 パケット転送装置
21 ラベル処理部
23、33 パケット振り分け部
30、30−1、30−2、30a サービス処理装置
31 サービス対象パケット判断部
31 サービス処理機能部
111、211 ルーティングテーブル
113、213、311 サービス情報テーブル
1111 ノード
1112 入力ラベル
1113 アドレスプレフィックス
1114 出力IF
1115 出力ラベル
1131 ノード
1132 サービス識別ラベル
1133 アドレスプレフィックス
1134 プログラム
1135 実行順序
S1〜S3、S11〜S15、T1〜T7、T31〜T35、T51〜T57 ステップ

Claims (7)

  1. 所定のサービスを提供するために実行されるプログラムを識別するためのサービス識別情報と、該プログラムを実行するサービス処理ノードに転送するための転送用識別情報と、をパケットに付与し、該パケットを該転送用識別情報に基づいて所定の経路で転送する、転送ノードと、
    前記転送ノードから前記パケットを受信し、該パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理するサービス処理ノードと、
    パケットを転送する経路を示すルーティングテーブル、及びパケットと所定のサービスを提供するためのプログラムを実行するサービス処理ノードとの対応関係を示す前記サービス情報テーブルを、ノードごとに作成し、該ルーティングテーブル及び該サービス情報テーブルに基づいて、前記転送ノード及び前記サービス処理ノードを制御する制御ノードと、を有し、
    前記転送ノードは、前記制御ノードにより作成された前記サービス情報テーブル及び前記ルーティングテーブルを記憶しておき、該サービス情報テーブルに基づいて前記サービス識別情報を前記パケットに付与し、該ルーティングテーブルに基づいて前記転送用識別情報を前記パケットに付与し、
    前記サービス処理ノードは、前記制御ノードにより作成された前記サービス情報テーブルを記憶しておき、該サービス情報テーブルに基づいて前記パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理する通信システム。
  2. 前記サービス処理ノードは、前記パケットに付与された前記転送用識別情報に基づいて、該パケットに対応する前記サービス処理ノードが自身であるか否かを判断し、該パケットに対応する該サービス処理ノードが自身であれば、該パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理する、請求項に記載の通信システム。
  3. 前記サービス処理ノードは、前記プログラムで処理した前記パケットを、前記転送用識別情報に基づいて所定の経路で転送する、請求項1または請求項2に記載の通信システム。
  4. 前記パケットを複数のプログラムで処理する場合、前記転送ノードは、最後に処理するプログラムを識別するための前記サービス識別情報から順に、該サービス識別情報を前記パケットに付与する、請求項1乃至3のいずれか1項に記載の通信システム。
  5. 前記サービス情報テーブルは、複数の前記プログラムごとに該プログラムを実行する順序を示す順序情報を含み、
    前記転送ノードは、前記サービス情報テーブルから前記プログラムに対応する前記順序情報を読み出し、該順序情報の示す順序に従って、該サービス識別情報を前記パケットに付与する、請求項に記載の通信システム。
  6. 前記サービス処理ノードは、最後に付与された前記サービス識別情報の示す前記プログラムから順に実行して前記パケットを処理する、請求項4又は5に記載の通信システム。
  7. 制御ノードが、パケットを転送する経路を示すルーティングテーブル、及びパケットと所定のサービスを提供するためのプログラムを実行するサービス処理ノードとの対応関係を示すサービス情報テーブルを、ノードごとに作成するステップと、
    転送ノードが、所定のサービスを提供するために実行されるプログラムを識別するためのサービス識別情報と、該プログラムを実行するサービス処理ノードに転送するための転送用識別情報と、を該パケットに付与し、該パケットを、該転送用識別情報に基づいて所定の経路で転送する転送ステップと、
    前記サービス処理ノードが、前記転送ノードから前記パケットを受信し、該パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理するパケット処理ステップと、を有し、
    前記転送ステップにおいては、前記転送ノードが、前記制御ノードにより作成された前記サービス情報テーブル及び前記ルーティングテーブルを記憶しておき、該サービス情報テーブルに基づいて前記サービス識別情報を前記パケットに付与し、該ルーティングテーブルに基づいて前記転送用識別情報を前記パケットに付与し、
    前記パケット処理ステップにおいては、前記サービス処理ノードが、前記制御ノードにより作成された前記サービス情報テーブルを記憶しておき、該サービス情報テーブルに基づいて前記パケットに付与された前記サービス識別情報の示す前記プログラムで該パケットを処理する、通信方法。
JP2008125847A 2008-05-13 2008-05-13 通信システム及び通信方法 Expired - Fee Related JP4599429B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008125847A JP4599429B2 (ja) 2008-05-13 2008-05-13 通信システム及び通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008125847A JP4599429B2 (ja) 2008-05-13 2008-05-13 通信システム及び通信方法

Publications (2)

Publication Number Publication Date
JP2009278235A JP2009278235A (ja) 2009-11-26
JP4599429B2 true JP4599429B2 (ja) 2010-12-15

Family

ID=41443278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008125847A Expired - Fee Related JP4599429B2 (ja) 2008-05-13 2008-05-13 通信システム及び通信方法

Country Status (1)

Country Link
JP (1) JP4599429B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4630360B2 (ja) * 2008-08-21 2011-02-09 日本電信電話株式会社 通信システムおよび通信方法
JP4659867B2 (ja) * 2008-08-21 2011-03-30 日本電信電話株式会社 通信システム、制御システム、および通信方法
JP6073706B2 (ja) * 2013-02-27 2017-02-01 Kddi株式会社 通信装置及びプログラム
JP6085263B2 (ja) * 2014-02-25 2017-02-22 日本電信電話株式会社 中継ノード及び経路制御方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002077234A (ja) * 2000-08-25 2002-03-15 Ntt Docomo Inc ネットワークにおけるルート設定方法、ルート管理方法及びアクティブルータ
JP2002261800A (ja) * 2001-03-02 2002-09-13 Nec Corp サービス品質動的制御装置および制御方法
JP2002335244A (ja) * 2001-05-10 2002-11-22 Nippon Telegr & Teleph Corp <Ntt> サービス機能安全導入方法及び装置並びにサービス機能安全導入用プログラム及びその記録媒体
JP2003060691A (ja) * 2001-08-08 2003-02-28 Hitachi Ltd ネットワークルータおよび交換機におけるリソースの割当て方法および装置
JP2003283548A (ja) * 2002-03-20 2003-10-03 Nippon Telegr & Teleph Corp <Ntt> パケット処理方法および通信装置
JP2003338834A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd 多数の処理を実行するプログラム可能ネットワークノード構造
JP2004080524A (ja) * 2002-08-20 2004-03-11 Anritsu Corp 通信品質割当システム
JP2004247858A (ja) * 2003-02-12 2004-09-02 Shoichiro Asano 情報提供システム及び情報提供方法
JP2005252367A (ja) * 2004-03-01 2005-09-15 Nippon Telegr & Teleph Corp <Ntt> サービス提供プラットフォーム装置およびサービス提供方法
JP2006304349A (ja) * 2006-06-19 2006-11-02 Hitachi Ltd 通信システムおよび通信方法
JP2007519345A (ja) * 2004-01-20 2007-07-12 ▲ふぁ▼▲うぇい▼技▲しゅう▼有限公司 仮想私設網においてサービス品質を保証するためのシステムおよびその方法
JP2008061215A (ja) * 2006-09-01 2008-03-13 Avaya Technology Llc 拡張プロトコル・ヘッダを含む通信の提供

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002077234A (ja) * 2000-08-25 2002-03-15 Ntt Docomo Inc ネットワークにおけるルート設定方法、ルート管理方法及びアクティブルータ
JP2002261800A (ja) * 2001-03-02 2002-09-13 Nec Corp サービス品質動的制御装置および制御方法
JP2002335244A (ja) * 2001-05-10 2002-11-22 Nippon Telegr & Teleph Corp <Ntt> サービス機能安全導入方法及び装置並びにサービス機能安全導入用プログラム及びその記録媒体
JP2003060691A (ja) * 2001-08-08 2003-02-28 Hitachi Ltd ネットワークルータおよび交換機におけるリソースの割当て方法および装置
JP2003283548A (ja) * 2002-03-20 2003-10-03 Nippon Telegr & Teleph Corp <Ntt> パケット処理方法および通信装置
JP2003338834A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd 多数の処理を実行するプログラム可能ネットワークノード構造
JP2004080524A (ja) * 2002-08-20 2004-03-11 Anritsu Corp 通信品質割当システム
JP2004247858A (ja) * 2003-02-12 2004-09-02 Shoichiro Asano 情報提供システム及び情報提供方法
JP2007519345A (ja) * 2004-01-20 2007-07-12 ▲ふぁ▼▲うぇい▼技▲しゅう▼有限公司 仮想私設網においてサービス品質を保証するためのシステムおよびその方法
JP2005252367A (ja) * 2004-03-01 2005-09-15 Nippon Telegr & Teleph Corp <Ntt> サービス提供プラットフォーム装置およびサービス提供方法
JP2006304349A (ja) * 2006-06-19 2006-11-02 Hitachi Ltd 通信システムおよび通信方法
JP2008061215A (ja) * 2006-09-01 2008-03-13 Avaya Technology Llc 拡張プロトコル・ヘッダを含む通信の提供

Also Published As

Publication number Publication date
JP2009278235A (ja) 2009-11-26

Similar Documents

Publication Publication Date Title
US10986024B1 (en) Dynamic prefix list for route filtering
JP5862769B2 (ja) 通信システム、制御装置、通信方法及びプログラム
US10284466B2 (en) Service processing method, device, and system
EP3070895B1 (en) Encapsulation method and system for flow identifier
US8750301B2 (en) Method, device for implementing identifier and locator split, and method for data encapsulating
JP4780477B2 (ja) トンネリング装置及びそれに用いるトンネルフレーム振分方法並びにそのプログラム
JP2017506025A (ja) ネットワークサービス挿入を実行するシステム及び方法
WO2012081631A1 (ja) スイッチング装置、その上位装置、ネットワーク及びパケット転送方法
WO2021143279A1 (zh) 段路由业务处理方法和装置、路由设备及存储介质
WO2014132958A1 (ja) 通信システム、制御装置、通信方法およびプログラム
JP2007533214A (ja) ネットワークにおいてデータ・ユニットをルーティングするデバイスおよび方法
JP4599429B2 (ja) 通信システム及び通信方法
JP4659867B2 (ja) 通信システム、制御システム、および通信方法
CN111181855A (zh) 一种组播的方法及路由设备
JP4630360B2 (ja) 通信システムおよび通信方法
WO2022166465A1 (zh) 一种报文处理方法及相关装置
JP5105124B2 (ja) ルータ装置、プレフィクス管理にもとづくパケット制御方法およびプログラム
JP2003348148A (ja) Ipマルチキャスト制御方法およびこれを用いるipマルチキャスト制御システム
US8248956B2 (en) Method or apparatus for distributing routing information in networks
JP2007150641A (ja) パケット通信装置及びネットワークシステム
US10924395B2 (en) Seamless multipoint label distribution protocol (mLDP) transport over a bit index explicit replication (BIER) core
US11929910B2 (en) Communication method implemented by a first router of an autonomous system using an interior gateway protocol
JP2012175198A (ja) 流通経路設定システム及び方法
JP4443266B2 (ja) パケット更新装置
CN114710435A (zh) 一种SDN环境下的SRv6段路由标签压缩方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100707

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

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

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

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees