JP2016039460A - 中継装置及びその制御方法、プログラム - Google Patents

中継装置及びその制御方法、プログラム Download PDF

Info

Publication number
JP2016039460A
JP2016039460A JP2014160783A JP2014160783A JP2016039460A JP 2016039460 A JP2016039460 A JP 2016039460A JP 2014160783 A JP2014160783 A JP 2014160783A JP 2014160783 A JP2014160783 A JP 2014160783A JP 2016039460 A JP2016039460 A JP 2016039460A
Authority
JP
Japan
Prior art keywords
message
relay device
connection destination
content
interface
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.)
Granted
Application number
JP2014160783A
Other languages
English (en)
Other versions
JP6301215B2 (ja
Inventor
浩平 杉山
Kohei Sugiyama
浩平 杉山
敦士 田上
Atsushi Tagami
敦士 田上
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2014160783A priority Critical patent/JP6301215B2/ja
Publication of JP2016039460A publication Critical patent/JP2016039460A/ja
Application granted granted Critical
Publication of JP6301215B2 publication Critical patent/JP6301215B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

【課題】 メッセージの到達性を確実かつ適切に維持する。【解決手段】 コンテンツを購読するあるいは発行するためのメッセージを受信する。受信したメッセージの種類を判定する。受信したメッセージを転送するための接続先を特定する識別情報と、前記接続先と接続するために使用するインタフェースを指定する指定情報と対応付けて管理するテーブルにおいて管理されている識別情報と指定情報のエントリを、判定したメッセージの種類に基づいて更新する。【選択図】 図1

Description

本発明は、コンテンツの名前に基づいて通信を行うネットワーク(以下、CCN: Content−Centric Network)のためのPublish/Subscribeシステムにおいて、ノード移動やリンク断に対応する中継技術に関するものである。
・CCN(Content-Centric Network)
CCN(非特許文献1、特許文献1)では、コンテンツを送受信するホストの場所を示すIPアドレスを用いずに、各コンテンツに対する一意な名前(ID)を用いてルーティングを行う。このため、CCNでは、エンドユーザは、コンテンツが存在する場所を意識することなく、所望のコンテンツを取得することができる。また、ネットワーク上のCCNルータは中継したコンテンツをメモリ等の記憶媒体にキャッシュする。CCNルータは、記憶媒体にキャッシュしているコンテンツに対するエンドユーザ端末からの要求パケット(Interestパケット)を受信した場合、次ホップのCCNルータにInterestパケットを転送せずに、キャッシュしているコンテンツをDataパケットとして、Interestパケットの送信元のエンドユーザ端末に返信する。これにより、CCNルータでは、同一のコンテンツに対する複数のInterestパケットを受信する場合のトラヒック量を削減することができる。
・Publish/Subscribe(Pub/Sub)システム
Pub/Subシステムでは、予約購読者(Subscriber(サブスクライバ))が所望のコンテンツを要求するための要求メッセージを登録する。これを受けて、発行者(Publisher(パブリッシャ))により、その要求メッセージに適合するコンテンツが生成されるとそのコンテンツを予約購読者が受信する。Pub/Subシステムでは、サブスクライバとパブリッシャは、通信を行うにあたり互いの情報を知る必要はない。つまり、パブリッシャは誰が予約購読しているか、どのくらい予約購読されているか、逆に、サブスクライバは、誰がコンテンツを発行しているかについて知る必要がない。また、サブスクライバとパブリッシャは同時にアクティブ(オンライン)である必要がない。
・COPSS(Content-Oriented Pub/Sub System)
COPSS(非特許文献2)では、CCNのためのコンテンツ指向のPub/Subシステムを提案している。パブリッシャが提供するコンテンツには、Content Descriptor(CD)と呼ばれる名前が割り当てられる(例:/sports/football/Japan)。各コンテンツに、複数のCDを割り当てることができ、また、複数のコンテンツ(/sports、/sports/football/、/sports/football/Japan)を1つのCD(/sports)で識別することができる。サブスクライバの要求メッセージ(Subscribeメッセージ)は、Rendezvous Point(RP(ランデブーポイント))と呼ばれるノードに登録される。そして、Subscribeメッセージに適合するコンテンツがパブリッシャにより発行されると、コンテンツは、ランデブーポイントまで転送され、そのコンテンツはPublishメッセージとして、ランデブーポイントからサブスクライバに届けられる。COPSSルータでは、CCNルータで構成される要素に加え、以下の要素が提供される。
<CCNルータの構成要素>
・Face:インタフェース
・FIB(Forwarding Information Base):Interestパケットを名前でルーティングするための経路表
定義例 oface = FIB_Table(Name)
・PIT(Pending Interest Table):Interestパケットが到着したfaceを一時的にsoft stateとして記録しておく表
同じ名前に対するInterestパケットが、複数のfaceから到着した場合、それらのすべてのfaceをPITのエントリとして記録する
到着したDataパケットは、それらのfaceに転送され、PITのエントリは消去される
CS(Content Store):経由したDataパケットを記録しておくためのキャッシュ
<COPSSルータの構成要素>
・RP Table:CDからRPCD(CDが割り当てられたコンテンツを提供するRPの名前)に変換する表
定義例 RPCD = RP_Table(CD)(記述例: /rendezvous = RP_Table(/sports))
・ST(Subscription Table):Subscribeメッセージが到着したfaceをsoft stateとして記録しておく表
定義例 oface = ST(CD) (記述例: face 1 = ST(/sports))
・Broker:COPSS内のすべてのコンテンツを格納するサーバの役割を果たすノード(クラウド)
非特許文献3では、データミュールと呼ばれる特別なルータを具備する端末(例えば、消防車、救急車、パトロールカー等の緊急車両に搭載される車載端末)を利用するシステムが提案されている。これは、ネットワークを介して複数の拠点間で情報通信を行っている環境において、災害等でそのネットワークが分断された場合には、データミュールが各拠点を巡回して情報を吸い上げ、配信することにより、情報の到達性を維持するシステムである。
特開2009−277234号公報
V. Jacobson, D. K. Smettres, J. D. Thornton, M. F. Plass, N. H. Briggs, and R. L. Braynard, "Networking named content," in Proceedings of CoNEXT2009, pp. 1-12, Dec. 2009 J. Chen, M. Arumaithurai, L. Jiao, X. Fu, and K.K. Ramakrishnan, "COPSS: An Efficient Content Oriented Publish/Subscribe System," in Proceedings of the 7th ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS), Oct. 2012 杉山 浩平、田上 敦士、柳生 智彦、長谷川 亨、「災害時におけるICNを用いた安否情報配信方式の提案」、電子情報通信学会技術研究報告(IN2013−184)、pp.241−246、2014年3月
COPSSでは、固定網を想定しているため、ある拠点で管理されるコンテンツが移動することを考慮していない。ここで、コンテンツの移動とは、2つに分類される。1つ目は、コンテンツの予約購読者の移動であり、2つ目はコンテンツの発行者の移動である。通常、予約購読者は、1つの拠点を利用しており、その拠点においてSubscribeメッセージを受信すると、予めFIBに設定されているその拠点からRP迄への経路情報や転送情報を基に、当該メッセージを転送する。それと同時に、その拠点からRPを含むRP迄の中継装置におけるSTに予約購読者までの経路情報(RPから予約購読者への逆向きの経路情報)が登録される。COPSSでは、前述Brokerと呼ばれるノードを配置することにより、予約購読者がオフラインになった場合、該当するPublishメッセージがRPに到着した際、予約購読者の代わりにメッセージを格納することができる。予約購読者が再度オンラインになった際、Brokerに問い合わせることにより、オフライン時に受信できなかったPublishメッセージをタイムシフト受信することが可能である。
しかしながら、COPSSでは、オンライン/オフラインの状態変化に再度Subscribeメッセージを送信することに対応しているが、予約購読情報の削除/更新などの予約購読の状態変化には対応していない。何らかの事情で、予約購読者が普段利用する拠点(Subscribeメッセージを発行(送信)した拠点)から別の拠点へ移動(あるいは普段利用する端末を変更)してしまった場合、それ以降は、発行されたコンテンツをその移動先の拠点(変更先の端末)へ転送する必要がある。
同様に、発行者の移動に関しても、RP(論理的なコンテンツ発行者)に何らかの障害が発生して、代替のRPを構築した場合においても、その代替のRPから該当するコンテンツを予約購読者へ転送する必要がある。
いずれにしても、移動後のコンテンツを送受信するためには、移動後の拠点とRPとの間での経路情報や転送情報を各中継装置に登録することが必要となる。しかしながら、現状のシステムでは、中継装置で累積的に経路情報や転送情報を管理する仕組みとなっており、また、移動前後のコンテンツを区別する仕組みも用意されていないため、中継装置に不要な情報が残ってしまい、中継装置の記憶資源を逼迫させてしまう。また、中継装置において実際に転送処理を行う場合にも、不要な情報までも含む情報の処理を行うことになり、中継装置の処理負荷が高くなる。また、他の中継装置と通信を行う場合にも、この不要な情報を含む情報に基づいて処理を行うことになるため、トラフィックが増大する。
本発明は上記の課題を鑑みてなされたものであり、メッセージの到達性を確実かつ適切に維持することができる中継技術を提供することを目的とする。
上記の目的を達成するための本発明による中継装置は以下の構成を備える。即ち、
インタフェースを介して、メッセージを中継する中継装置であって、
コンテンツを購読するあるいは発行するためのメッセージを受信する受信手段と、
前記受信手段で受信したメッセージを転送するための接続先を特定する識別情報と、前記接続先と接続するために使用するインタフェースを指定する指定情報と対応付けて管理するテーブルを記憶する記憶手段と、
前記受信手段で受信したメッセージの種類を判定する判定手段と、
前記判定手段で判定したメッセージの種類に基づいて、前記テーブルで対応づけて管理されている前記識別情報と前記指定情報のエントリを更新する更新手段と
を備える。
本発明によれば、メッセージの到達性を確実かつ適切に維持することができる。
通信システムの構成を示す図である。 通信システムを構成する各種機器のハードウェア構成を示す図である。 エッジルータ及びデータミュールの機能構成を示す図である。 エッジルータ及びデータミュールの機能構成を示す図である。 論理インタフェースの構成例を示す図である。 データミュールにおける論理インタフェースの一例を示す図である。 中継装置が実行する処理手順を示すフローチャートである。
以下、本発明の実施形態について図面を用いて詳細に説明する。
<システム構成>
図1は通信システムの構成を示す図である。
サブスクライバ(Sub)101は、所望のコンテンツの取得を要求するノードである。パブリッシャ(Pub)102は、サブスクライバ(Sub)101が要求したコンテンツを発行するノードである。尚、サブスクライバ(Sub)101、パブリッシャ(Pub)102は、パーソナルコンピュータ(PC)やスマートフォン等の情報処理装置によって実現される。
図1では、サブスクライバ(Sub)101、パブリッシャ(Pub)102は、携帯電話網や無線LAN等の無線ネットワークに接続可能なスマートフォンの例を示しているが、有線ネットワークに接続可能なパーソナルコンピュータでもかまわない。
本実施形態のシステムでは、サブスクライバ(Sub)101及びパブリッシャ(Pub)102の他に、エッジルータ(ER)103、104及び106、データミュール(DM)105、プライマリランデブーポイント(RP)107a、及びセカンダリランデブーポイント(RP)107bを有する。尚、図1におけるエッジルータ(ER)は、例えば、ICN(Information Centric Networking)ルータによって実現される。
エッジルータ103及びエッジルータ104はそれぞれ、サブスクライバ(Sub)101及びパブリッシャ(Pub)102と直接接続されるルータである。データミュール(DM)105は、サブスクライバ(Sub)101−プライマリランデブーポイント(RP)107a−パブリッシャ(Pub)102間を移動するノード(移動中継装置)である。データミュール(DM)105は、エッジルータ103及びエッジルータ104と、プライマリランデブーポイント(RP)107a(エッジルータ106を介して)との間のリンクが切断されている場合、Subscribe/Publishメッセージをプライマリランデブーポイント(RP)107aまで中継することができる。
尚、本実施形態では、データミュール(DM)105は、COPSSにおけるブローカの機能を有していても良い。また、図1の通信システムを構成する各種機器を相互に接続するネットワークは、有線ネットワーク、無線ネットワーク、及びそれらの任意の組み合わせで構成することができる。
図2は図1の通信システムを構成する各種機器のハードウェア構成を示す図である。
サブスクライバ(Sub)101、パブリッシャ(Pub)102、エッジルータ103、104及び106、データミュール(DM)105、及びプライマリランデブーポイント(RP)107a及びセカンダリランデブーポイント(RP)107aは、それぞれノードとしての情報処理装置によって実現される。この情報処理装置のハードウェア構成としては、例えば、CPU301、ROM302、RAM303、外部記憶装置304、及び通信装置305を有する。
各種機器を実現する情報処理装置では、記憶媒体(ROM302、RAM303及び外部記憶装置304)のいずれかに記憶された、以下で説明する各種機器の機能及び動作、制御、処理を実現するプログラムがCPU301により実行される。そして、各種種機器は、通信装置305を用いて、各種機器間の通信を行う。
尚、図2では、各種機器を実現する情報処理装置は、1つの通信装置305を有するとしているが、例えば、接続する機器の数に応じて、複数の通信装置を有してもよい。また、各種機器は、以下に説明する各機能を実行する専用のハードウェアを備えてもよいし、一部をハードウェアで実行し、プログラムを動作させるコンピュータでその他の部分を実行してもよい。また、以下の全機能をコンピュータとプログラムにより実行させてもよい。また、通信装置305では、必要に応じて、各種操作及び情報の表示を実現するための操作部及び表示部を有していても良い。
<機能構成>
図3及び図4は、サブスクライバ(Sub)101及びパブリッシャ(Pub)102それぞれに接続されるエッジルータ(ER)103及び1エッジルータ(ER)104と、データミュール(DM)105の機能構成を示す図である。
図3において、サブスクライバ(Sub)101の中継装置として機能するエッジルータ(ER)103は、ランデブーポイント(RP)107と接続するためのインタフェースであるfaceRP401、データミュール(DM)105と接続するためのインタフェースであるfaceDM402を備える。尚、図では、faceRP401とfaceDM402とは別々のインタフェースとして示されているが、物理的に1つのインタフェースを論理的な複数のインタフェースとして使用することもできる。
また、エッジルータ(ER)103は、サブスクライバ(Sub)107と接続するためのインタフェースであるfaceSub407を備える。更に、エッジルータ(ER)103は、論理ネットワーク管理部410(認証振分部403及び格納部405を含む)、転送部(ST)404、及び転送部(FIB)406を備える。
認証振分部403は、転送部(FIB)404を参照して、メッセージ転送に使用するfaceのステータス情報(ON/OFF)で、サブスクライバ(Sub)107からのSubscriberメッセージを認証して、その中継先を決定する。ここで、ONは、リンクアップのステータスを示し、OFFはリンクダウンのステータスを示すものとする。また、格納部405は、認証振分部403によって決定された中継先となるランデブーポイント(RP)107あるいはデータミュール(DM)105に対応するfaceのステータス情報が示すステータスがOFFである場合、Subscriberメッセージを当該faceに一時的に格納する。
図3において、データミュール(DM)105は、faceRP501、論理ネットワーク管理部510a(認証振分部502及び格納部504を含む)、転送部(ST)503、転送部(FIB)505、及びfaceER1506を備える。これらの内、faceRP501、論理ネットワーク管理部510a(認証振分部502及び格納部504を含む)、転送部(ST)503、及び転送部(FIB)505はそれぞれ、エッジルータ(ER)103のfaceRP401、論理ネットワーク管理部410(認証振分部403及び格納部405を含む)、転送部(ST)404(ST)及び転送部(FIB)406と同様の機能を有する。faceER1506は、エッジルータ(ER)103と接続するためのインタフェースである。
図4において、パブリッシャ(Pub)102の中継装置として機能するエッジルータ(ER)104は、エッジルータ(ER)103と同様の構成を備える。エッジルータ(ER)104において、faceRP601、faceDM602、論理ネットワーク管理部610(認証振分部603及び格納部605を含む)、及び転送部(FIB)606はそれぞれ、エッジルータ(ER)103のfaceRP401、faceDM402、論理ネットワーク管理部410(認証振分部403及び格納部405を含む)、及び転送部(FIB)406に対応する。一方で、エッジルータ(ER)104は、パブリッシャ(Pub)102と接続するためのインタフェースであるfacePub608を備える。
図4において、データミュール(DM)105は、図3に示す構成に加えて、エッジルータ(ER)104と接続するためのインタフェースであるfaceER2507、論理ネットワーク管理部510b(認証振分部509及び格納部508を含む)を備える。これらの内、論理ネットワーク管理部510b(認証振分部509及び格納部508を含む)は、エッジルータ(ER)104からPublishメッセージを受信する場合に動作し、その機能は、論理ネットワーク管理部510a(認証振分部502及び格納部504を含む)と同様である。図4では、便宜上、論理ネットワーク管理部510a(認証振分部502及び格納部504を含む)、論理ネットワーク管理部510b(認証振分部509及び格納部508を含む)とを別々に示しているが、それぞれ1つの論理ネットワーク管理部(認証振分部及び格納部を含む)として機能することも、もちろん可能である。
<論理ネットワーク管理部>
本実施形態では、サブスクライバ(Sub)101(あるいはパブリッシャ(Pub)102)が自身の本来の拠点から新しい拠点へ移動することで、その接続先をエッジルータ(ER)104からエッジルータ(ER)103へ移動した場合の処理について説明する。
この場合、サブスクライバ(Sub)101は、移動した接続先のエッジルータから通信を実現するために、そのエッジルータに対して、転送部(ST)で管理するSTの内容を更新するためのSub−Updateメッセージ(もしくは、新たなSubscribeメッセージ)を送信する。エッジルータの論理ネットワーク管理部は、受信するメッセージの内容を解析し、受信したメッセージがSub−Updateメッセージである場合には、それに対応するSTのエントリを更新する。また、受信したメッセージが新たなSubscribeメッセージである場合には、それに対応するエントリをSTに追記する。
このような更新(あるいは追記)を実行した場合には、論理ネットワーク管理部は、自身の接続先となる中継装置(データミュール、エッジルータ、あるいはランデブーポイント等)に対して、STのエントリの更新(あるいは追記)を実行するためのメッセージを発行する。
以上の処理を、各中継装置が連携してSTのエントリの更新(あるいは追記)を順次実行することで、サブスクライバ(Sub)101の接続先が移動した場合でも、その移動先でサブスクライバ(Sub)101が確実にコンテンツを取得できるようにする。
また、本実施形態では、ランデブーポイントの故障等の障害対策のために、ランデブーポイント(RP)を冗長化している。例えば、図1に示す例では、プライマリランデブーポイント(RP)107aとセカンダリランデブーポイント(RP)107bを設置しておき、どちらか一方が故障した場合には、他方に切り替えて処理を実行できるようにしている。
この2つのランデブーポイント(RP)を利用可能とするために、各中継装置の論理ネットワーク管理部は、この2つのランデブーポイント(RP)までの経路を1つの論理インタフェースで統合管理する。この論理インタフェースを論理ネットワーク管理部で実現することにより、2つのランデブーポイント(RP)との接続を(論理的に)シームレスに切り替えることができる。この構成により、パブリッシャ(Pub)102の接続先が移動した場合でも、その移動先でパブリッシャ(Pub)102が確実にコンテンツを発行できるようにする。尚、図1では、2つのランデブーポイント(RP)で冗長化する構成としているが、少なくとも2台以上のランデブーポイント(RP)で冗長化するようにしても良い。
ここで、中継装置(エッジルータ、データミュール、ランデブーポイント)の各論理ネットワーク管理部で実現される論理インタフェースの具体例を図5を用いて説明する。尚、図5では、図1〜図3で示す構成において、論理インタフェースに関わる構成要素を抜き出したものとなっている。
メッセージを、サブスクライバ101/パブリッシャ102から、ランデブーポイントに送信するためには、エッジルータ(ER)103及びエッジルータ(ER)104やデータミュール(DM)105は、ランデブーポイント(RP)107a/ランデブーポイント(RP)107bまでの転送情報を有する必要がある。
エッジルータ(ER)103(あるいはエッジルータ(ER)104)とデータミュール(DM)105間、及びデータミュール(DM)105とランデブーポイント(RP)107a/ランデブーポイント(RP)107b間の接続は、断続的に確立するため、エッジルータ(ER)103(あるいはエッジルータ(ER)104)とデータミュール(DM)105は、論理インタフェースの状態を管理する必要がある。
そこで、本実施形態では、図5に示すように、中継装置の転送部(FIB/ST)で管理する情報として、中継装置が備える物理的なインタフェース(face)を、一時的に接続するノードに対する論理的なインタフェースとして機能させるための代替インタフェースを定義する。この一時的に接続するノードには、データミュール(DM)105、ランデブーポイント(RP)107a/ランデブーポイント(RP)107bがなり得る。また、この代替インタフェースは、中継装置に未使用(空き)の物理インタフェースがあれば、その物理インタフェースを代替インタフェースとして設定することができる。あるいは、本来の接続先との通信が不能である物理インタフェースを一時的に利用する論理的な論理インタフェースとして、代替インタフェースを設定することができる。
具体的には、FIB/STにおいて、障害発生時のような、通常使用していた接続先が使用不能(あるいは通信が不能)である場合に、その接続先に代えて一時的に接続する代替接続先と接続するための代替インタフェース(face)を指定する指定情報と、そのfaceを使用して接続する代替接続先を特定する識別情報(例えば、プレフィックス(/rendezvous、/mule等))とを対応づけて管理する。ここで、論理インタフェースは、代替接続先となるノードのMACアドレスやIPアドレス等の識別情報により、適切な転送先を管理する。
尚、FIB/STでは、代替インタフェースに対する指定情報及び識別情報に加えて、通常使用時における接続先と接続するためのインタフェースを指定する指定情報と、そのインタフェースを使用して接続する接続先を特定する識別情報とを対応づけて管理していることは言うまでもない。
また、論理インタフェースは、keep−aliveメッセージ等の所定メッセージを使用することにより、論理インタフェースとして利用するfaceのステータス(リンクアップやリンクダウン)を確認し、その内容を示すステータス情報を保持することができる。このステータス情報を、更に、FIB/STに追加して管理しても良いし、必要の処理の際に、都度、確認するようにしても良い。
また、論理インタフェースは、リンクダウンの間、メッセージを格納するためのキュー(Txキュー)を有する。これは、例えば、格納部405/505等の各中継装置の格納部で実現される。そして、論理インタフェースがリンクアップになった時に、キューに格納されているメッセージは、FIB/STで記録されている論理インタフェースに対応付けられている転送先(中継装置)へ転送される。
ここで、ランデブーポイントと直接接続することがあるデータミュール(DM)105においては、論理ネットワーク管理部510aで実現する論理インタフェースでは、図6に示すように、その接続先として、プライマリランデブーポイント(RP)107a及びセカンダリランデブーポイント(RP)107bが割り当てられることになる。これにより、どちらか一方のランデブーポイントが故障した場合には、他方のランデブーポイントに切り替えて処理を実行できる。ここで、プライマリランデブーポイント(RP)107a及びセカンダリランデブーポイント(RP)107bは、自身で管理するコンテンツ等の情報が互いに同一となるように定期的に同期を図っている。
尚、中継装置が管理するテーブル(FIB/ST)への論理インタフェースの設定や更新は、例えば、中継装置に接続することが可能なホスト装置(パーソナルコンピュータ等の情報処理装置)で実現することができる。格納部で一時的に保持するメッセージを保持する時間(一定時間)も、ホスト装置を介して設定することができる。
また、ホスト装置では、FIB/STで管理される各エントリから任意のエントリを編集(削除、変更、追加等を含む)することもできる。更には、用途や目的に応じて、エントリ毎に異なる一定時間を設定するようにしても良い。例えば、代替接続先となるデータミュール(DM)は、その提供元によって、接続対象となる中継装置が設置される各拠点に巡回する頻度が異なるので、例えば、頻度が高いデータミュール(DM)に対する論理インタフェースに対する一定時間は短くして、頻度が低いデータミュール(DM)に対する論理インタフェースに対する一定時間は長くするようにして、中継装置の処理負担を軽減したり、リソースの有効活用を促進させることができる。
また、中継装置でメッセージを保持する格納部の容量を監視しておいて、その残容量に応じて、保持しているメッセージを一括で破棄したり、保持しているメッセージの内、最古のメッセージだけを破棄するようにしても良い。
また、通信が不能とは、インタフェースそのものに物理的な障害や故障に起因して、接続先と通信ができない場合、インタフェースそのものは正常であるが、接続先そのものの故障あるいはインタフェースと接続先との間のネットワークそのものの物理的な故障や切断に起因して、接続先と通信ができない場合の少なくとも一方を含み得る概念である。また、無線通信の場合は、通信範囲内に通信対象が存在しない場合も、通信が不能と言える。
<中継装置のメッセージ処理手順>
以下、中継装置(エッジルータ(ER)103、エッジルータ(ER)104あるいはデータミュール(DM)105)におけるメッセージ処理手順について説明する。尚、メッセージ処理手順は、エッジルータ(ER)103、エッジルータ(ER)104及びデータミュール(DM)105それぞれに内蔵されるCPU301が、ROM302に記憶されているプログラムをRAM303上に読み出し、実行することで実現される。
ここでは、中継装置が、サブスクライバ(Sub)101からSub−Updateメッセージ、新規Subscribeメッセージ、登録済Subscribeメッセージの3種類のいずれかを受信する場合を説明する。特に、普段利用する中継装置がある拠点から別の中継装置がある拠点へ移動した場合には、サブスクライバ(Sub)101は、Sub−Updateメッセージあるいは新規Subscribeメッセージを送信することになる。あるいは、サブスクライバ(Sub)101として機能するノード自体が故障等で使用不能となり、以降、代替ノードで中継装置へ接続する場合にも、サブスクライバ(Sub)101は、Sub−Updateメッセージあるいは新規Subscribeメッセージを送信することになる。
ここで、Sub−Updateメッセージ、新規Subscirbeメッセージ及び登録済Subscribeメッセージはいずれも、コンテンツの名前(記憶場所)を示す名前情報であるCD(Contents Descriptor)(例えば、/sports)が割り当てられている。また、これらの3種類のメッセージを識別可能とするためのフラグが各メッセージに付与されている。中継装置の論理ネットワーク管理部は、このフラグによって、受信したメッセージの種類を判定することができる。
ここで、Sub−Updateメッセージは、既存のSTエントリを更新するためのメッセージである。新規Subscirbeメッセージは、新規にコンテンツの予約購読を行うためのメッセージである。登録済Subscribeメッセージは、過去にコンテンツンの予約購読を行うことで既にそれに対応するSTエントリが存在し、再度、そのコンテンツを取得するためのメッセージである。
以下、具体例として、中継装置として、図4のエッジルータ(ER)103でメッセージを受信する場合を、図7のフローチャートを用いて説明する。
S101で、CPU301は、論理ネットワーク管理部410によって、faceSub407で、サブスクライバ(Sub)101からメッセージを受信し、その受信したメッセージに含まれるフラグに基づいて、そのメッセージの種類を判定する。
判定の結果、メッセージが新規Subscirbeメッセージである場合、S102で、CPU301は、論理ネットワーク管理部410によって、転送部(ST)404が管理するSTに、その新規Subscribeメッセージに含まれるCDと同一名のSTエントリが既に存在するか否かを判定する。同一名のSTエントリが既に存在する場合(S102でYES)、S103で、CPU301は、そのSTエントリに新規Subscribeメッセージを受信したface名を追加して、処理を終了する。
一方、同一名のSTエントリが存在しない場合(S102でNO)、S104で、新規Subscribeメッセージに含まれるCDと新規Subscribeメッセージを受信したface名とを対応づけた新規エントリをSTに追加して、処理を終了する。
判定の結果、メッセージがSub−Updateメッセージである場合、S109で、CPU301は、論理ネットワーク管理部410によって、転送部(ST)404が管理するSTの内、Sub−Updateメッセージで指定されるSTエントリのface名を、新規Subscribeメッセージを受信したface名に置換(更新)して、処理を終了する。尚、Sub−Updateメッセージで指定されるSTエントリが、転送部(ST)404が管理するSTに存在しない場合は、何もせず処理を終了する。
判定の結果、メッセージが登録済Subscribeメッセージである場合、S105で、CPU301は、論理ネットワーク管理部410によって、転送部(FIB)406による転送処理を開始する。ここでは、転送部(FIB)406が管理するFIBを参照して、Subscribeメッセージの転送に使用するfaceを特定する。ここでは、例えば、rendezvous/sportsに対応するfaceとしてfaceRP401と、mule/sportsに対応するfaceとしてfaceDM402を特定する。
S106で、CPU301は、論理ネットワーク管理部410によって、登録済Subscribeメッセージ、転送部(FIB)406が管理するFIBに、その登録済Subscribeメッセージに含まれるCDと同一名のFIBエントリが既に存在するか否かを判定する。同一名のFIBエントリが存在する場合(S106でYES)、S107で、CPU301は、そのFIBエントリで指定される転送先にその登録済Subscribeメッセージを転送する。また、この際、STの内容が更新(削除あるいは追加を含む)されている場合には、その更新内容を含む登録済Subscribeメッセージを転送する。これにより、転送先の中継装置では、受信した登録済SubscribeメッセージにSTの更新内容が含まれている場合には、その更新内容に従って、自身のSTを更新する。
一方、同一名のFIBエントリが存在しない場合(S106でYES)、S107で、CPU301は、その登録済Subscribeメッセージを破棄する。
図7では、エッジルータ(ER)103でメッセージを受信する場合を例に挙げて説明しているが、エッジルータ(ER)104やデータミュール(DM)105等の中継装置においても同様の処理を実現することができる。
また、中継装置に対するメッセージの送受信は、例えば、拠点を移動するノードに対して提供されるGUI(グラフィックユーザインタフェース)によって生成されるサービス専用画面(例えば、メッセンジャーやメーラー等のデータ送受信アプリケーションによって生成される)によって行う。このサービス専用画面では、Subscribeメッセージ、Sub−Updateメッセージ、Publishメッセージ、DeSubscribeメッセージ(サブスクライバの登録状態を解除するためのメッセージ)、DePublishメッセージ(パブリッシャの登録状態を解除するためのメッセージ)等の各種メッセージを送信するための各種コントロールが構成されている。
また、このサービス専用画面は、中継装置で動作する専用プログラムによって生成して、ノードに提供されても良いし、ノード自身に実装される専用プログラムによって生成されても良い。
また、図7では、Sub−Updateメッセージを受信した場合に、更新対象の指定された既存のSTエントリを更新する構成としているが、これに限定されない。例えば、新規Subscirbeメッセージを受信した場合でも、その新規Subscirbeメッセージに含まれるCDに対応するSTエントリが既に存在する場合には、そのSTエントリのface名を、新規Subscribeメッセージを受信したface名に置換(更新)しても良い。
また、図7では、中継装置が受信するメッセージに応じて、その中継装置がSTエントリを更新する構成としているが、これに限定されない。例えば、所定時間毎(例えば、1時間毎)に、中継装置が自身に接続し得るノードを探索するポーリングを実行して、更新すべきSTエントリの有無を判定するようにしても良い。また、中継装置がデータミュール(DM)105である場合には、各拠点を巡回するための経路計画に沿って、各拠点の進入/退出時等の特定のイベントが発生する毎に、ポーリングを行うようにしても良い。
また、図7では、中継装置が、サブスクライバ(Sub)101から受信するメッセージに応じてSTエントリを更新(追加)する構成としているが、これに限定されない。同様の仕組みを、パブリッシャ(Pub)102から受信するメッセージに応じて、STエントリを更新(追加)することができる。この場合、新規Subscirbeメッセージ及び登録済Subscribeメッセージに対して、新規Publishメッセージ及び登録済Publishメッセージが使用されることになる。これらのメッセージにも、自身を識別可能とするためのフラグが同様に付与されている。これにより、中継装置は、パブリッシャ(Pub)102の移動に応じて、パブリッシャ(Pub)102は、例えば、パブリッシャ(Pub)102からプライマリランデブーポイント(RP)107aまでの経路を転送部(FIB)606を介してPublishメッセージを転送する。その後、プライマリランデブーポイント(RP)107aからサブスクライバ(Sub)101までの経路を、転送部(ST)404を介してPublishメッセージを転送することになる。
以上説明したように、本実施形態によれば、CCNのためのPublish/Subscribeシステムにおいて、災害/緊急時等で通常利用しているネットワークが分断されるような状態が発生しても、ノード移動やリンク断に対応することができる。
また、中継装置で管理する中継情報(ST)を必要に応じて更新することで、中継装置の記憶資源を有効活用し、また、中継装置における中継情報を利用する処理の負荷を軽減し、中継装置間の通信トラフィックを軽減することができる。

Claims (11)

  1. インタフェースを介して、メッセージを中継する中継装置であって、
    コンテンツを購読するあるいは発行するためのメッセージを受信する受信手段と、
    前記受信手段で受信したメッセージを転送するための接続先を特定する識別情報と、前記接続先と接続するために使用するインタフェースを指定する指定情報と対応付けて管理するテーブルを記憶する記憶手段と、
    前記受信手段で受信したメッセージの種類を判定する判定手段と、
    前記判定手段で判定したメッセージの種類に基づいて、前記テーブルで対応づけて管理されている前記識別情報と前記指定情報のエントリを更新する更新手段と
    を備えることを特徴とする中継装置。
  2. 前記判定手段の判定の結果、前記受信手段で受信してメッセージの種類が、前記テーブルの既存のエントリを更新することを示すメッセージの種類である場合、前記更新手段は、前記メッセージに含まれるコンテンツを識別する名前情報に基づいて、対応するエントリを更新する
    ことを特徴とする請求項1に記載の中継装置。
  3. 前記判定手段の判定の結果、前記受信手段で受信してメッセージの種類が、前記テーブルに新規のエントリを追加することを示すメッセージの種類である場合、前記更新手段は、前記メッセージに含まれるコンテンツを識別する名前情報に基づいて、新規のエントリを追加する
    ことを特徴とする請求項1または2に記載の中継装置。
  4. コンテンツを購読するあるいは発行するノードを探索する探索手段を更に備え、
    前記判定手段は、更に、前記探索手段による探索の結果に基づいて、前記テーブルに対して、更新すべきエントリの有無を判定する
    ことを特徴とする請求項1乃至3のいずれか1項に記載の中継装置。
  5. 前記探索手段は、所定時間毎に、前記ノードを探索する
    ことを特徴とする請求項4に記載の中継装置。
  6. 当該中継装置は、複数の拠点を巡回する移動中継装置であり、
    前記探索手段は、前記複数の拠点の各拠点を巡回するための経路計画に基づいて、各拠点において前記ノードを探索する
    ことを特徴とする請求項4または5に記載の中継装置。
  7. 前記記憶手段は、更に、前記テーブルにおいて、前記受信手段で受信したメッセージを転送するための接続先の代替接続先を特定する識別情報と、前記代替接続先と接続するために使用する代替インタフェースを指定する指定情報とを対応付けて管理し、
    前記受信手段で受信したメッセージを転送するための接続先との通信が不能である場合に、前記メッセージに含まれるコンテンツを識別する名前情報に基づいて、前記テーブルから、該メッセージに対する前記代替インタフェースを特定する特定手段を更に備える
    ことを特徴とする請求項1乃至6のいずれか1項に記載の中継装置。
  8. 前記代替接続先は、前記コンテンツを管理する、すくなくとも2台以上のノードの1つである
    ことを特徴とする請求項7に記載の中継装置。
  9. 前記メッセージは、コンテンツの名前に基づいて通信を行うPublishメッセージあるいはSubscribeメッセージである
    ことを特徴とする請求項1乃至8のいずれか1項に記載の中継装置。
  10. インタフェースを介して、メッセージを中継する中継装置の制御方法であって、
    コンテンツを購読するあるいは発行するためのメッセージを受信する受信工程と、
    前記受信工程で受信したメッセージの種類を判定する判定工程と、
    前記受信工程で受信したメッセージを転送するための接続先を特定する識別情報と、前記接続先と接続するために使用するインタフェースを指定する指定情報と対応付けて管理するテーブルにおいて管理されている前記識別情報と前記指定情報のエントリを、前記判定工程で判定したメッセージの種類に基づいて、更新する更新工程と
    を備えることを特徴とする中継装置の制御方法。
  11. インタフェースを介して、メッセージを中継する中継装置をコンピュータに機能させるためのプログラムであって、
    前記コンピュータを、
    コンテンツを購読するあるいは発行するためのメッセージを受信する受信手段と、
    前記受信手段で受信したメッセージを転送するための接続先を特定する識別情報と、前記接続先と接続するために使用するインタフェースを指定する指定情報と対応付けて管理するテーブルを記憶する記憶手段と、
    前記受信手段で受信したメッセージの種類を判定する判定手段と、
    前記判定手段で判定したメッセージの種類に基づいて、前記テーブルで対応づけて管理されている前記識別情報と前記指定情報のエントリを更新する更新手段と
    して機能させることを特徴とするプログラム。
JP2014160783A 2014-08-06 2014-08-06 中継装置及びその制御方法、プログラム Active JP6301215B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014160783A JP6301215B2 (ja) 2014-08-06 2014-08-06 中継装置及びその制御方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014160783A JP6301215B2 (ja) 2014-08-06 2014-08-06 中継装置及びその制御方法、プログラム

Publications (2)

Publication Number Publication Date
JP2016039460A true JP2016039460A (ja) 2016-03-22
JP6301215B2 JP6301215B2 (ja) 2018-03-28

Family

ID=55530230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014160783A Active JP6301215B2 (ja) 2014-08-06 2014-08-06 中継装置及びその制御方法、プログラム

Country Status (1)

Country Link
JP (1) JP6301215B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012529198A (ja) * 2009-06-03 2012-11-15 アルカテル−ルーセント モバイルマルチキャストソースからのマルチキャストトラヒックを共同処理するための複数のランデブーポイントにおける方法および装置
JP2014505397A (ja) * 2010-12-17 2014-02-27 アルカテル−ルーセント サービス名付きルーティングのための方法およびルータ
WO2014081266A1 (en) * 2012-11-26 2014-05-30 Samsung Electronics Co., Ltd. Packet format and communication method of network node for ip routing compatibility and network node therefor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012529198A (ja) * 2009-06-03 2012-11-15 アルカテル−ルーセント モバイルマルチキャストソースからのマルチキャストトラヒックを共同処理するための複数のランデブーポイントにおける方法および装置
JP2014505397A (ja) * 2010-12-17 2014-02-27 アルカテル−ルーセント サービス名付きルーティングのための方法およびルータ
WO2014081266A1 (en) * 2012-11-26 2014-05-30 Samsung Electronics Co., Ltd. Packet format and communication method of network node for ip routing compatibility and network node therefor

Also Published As

Publication number Publication date
JP6301215B2 (ja) 2018-03-28

Similar Documents

Publication Publication Date Title
US9787593B2 (en) Performing path-oriented systems management
JP3925188B2 (ja) アプリケーションレイヤ・マルチキャスト方法及び中継ノードシステム
WO2017132951A1 (zh) 服务迁移方法、装置及系统
JP6544401B2 (ja) パケット転送装置、制御装置、通信システム、通信方法及びプログラム
JP2010509791A (ja) オーバレイネットワークノード
RU2005141461A (ru) Виртуальная многоадресная маршрутизация для кластера, имеющего синхронизацию состояния
CN112087390B (zh) 一种网络路由方法及装置
EP2731313A1 (en) Distributed cluster processing system and message processing method thereof
US9521071B2 (en) Federation of controllers management using packet context
EP1492375B1 (en) Multicasting of data in an IP-based mobile communications network
CN105940717B (zh) 容断/容迟/容中断网络中使用的节点设备和通信方法
CN113630428B (zh) 用于服务数据的获取方法和获取系统
JP4339627B2 (ja) パーソナルストレージサービス提供方法
CN103107942B (zh) 一种静态路由的跟踪方法和设备
JP2011055236A (ja) 通信システム、マッピング情報通知装置、マッピング情報通知方法及びプログラム
JP2009152995A (ja) 通信システム、通信システムに用いられる送信端末、通信システムに用いられる中継端末、通信システムにおける通信方法及び通信システムに用いられるコンピュータプログラム
JP6301215B2 (ja) 中継装置及びその制御方法、プログラム
JP6196564B2 (ja) 中継装置及びその制御方法、プログラム
JP2007233700A (ja) キャッシュシステム、負荷監視サーバ、キャッシュ管理サーバ及びキャッシュサーバ。
JP6261001B2 (ja) 経路制御システムおよびその方法
JP3848067B2 (ja) ネットワークにおけるルート設定方法、ルート管理方法及びアクティブルータ
JP3762403B2 (ja) パケット転送装置、ネットワーク制御サーバ、およびパケット通信ネットワーク
JP5592222B2 (ja) リクエスト中継方法、リクエスト中継プログラム、および、中継装置
JP4481666B2 (ja) 通信システム、ルータ、送信端末、受信端末及び通信方法
JP6044218B2 (ja) ネットワークスイッチ、ネットワークスイッチ制御方法、及びネットワークスイッチ制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180228

R150 Certificate of patent or registration of utility model

Ref document number: 6301215

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150