JP2012151806A - ルータ、転送ループ防止方法及びプログラム - Google Patents
ルータ、転送ループ防止方法及びプログラム Download PDFInfo
- Publication number
- JP2012151806A JP2012151806A JP2011010922A JP2011010922A JP2012151806A JP 2012151806 A JP2012151806 A JP 2012151806A JP 2011010922 A JP2011010922 A JP 2011010922A JP 2011010922 A JP2011010922 A JP 2011010922A JP 2012151806 A JP2012151806 A JP 2012151806A
- Authority
- JP
- Japan
- Prior art keywords
- content request
- request message
- content
- router
- information
- 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.)
- Withdrawn
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】コンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従ってコンテンツ要求メッセージを転送すると転送ループが発生することを防止する。
【解決手段】誘導情報に従ってコンテンツ要求メッセージを転送した時に、コンテンツデータの識別情報、コンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報をルータに記録しておく。その後に受信したコンテンツ要求メッセージに含まれているコンテンツデータ識別情報と転送情報に含まれているコンテンツデータの識別情報が一致し、受信したコンテンツ要求メッセージに含まれているコンテンツ要求ノードの識別情報と転送情報に含まれているコンテンツ要求ノードの識別情報が一致し、受信したコンテンツ要求メッセージの転送元の識別情報と転送情報に含まれている転送先の識別情報とが異なる場合に、誘導情報に従った転送を禁止する。
【選択図】図9
【解決手段】誘導情報に従ってコンテンツ要求メッセージを転送した時に、コンテンツデータの識別情報、コンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報をルータに記録しておく。その後に受信したコンテンツ要求メッセージに含まれているコンテンツデータ識別情報と転送情報に含まれているコンテンツデータの識別情報が一致し、受信したコンテンツ要求メッセージに含まれているコンテンツ要求ノードの識別情報と転送情報に含まれているコンテンツ要求ノードの識別情報が一致し、受信したコンテンツ要求メッセージの転送元の識別情報と転送情報に含まれている転送先の識別情報とが異なる場合に、誘導情報に従った転送を禁止する。
【選択図】図9
Description
本発明は、コンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従ってコンテンツ要求メッセージを転送すると転送ループが発生することを防止するためのルータ、転送ループ防止方法及びプログラムに関する。
近年、ネットワークを介したコンテンツ(ビデオや書籍など)の流通が進んでいる。現状、コンテンツは、特定のサーバに保存されており、特定のコンテンツを欲するユーザは、コンテンツを保存しているサーバのIPアドレスをDNS(Domain Name System)等により取得して、サーバに要求メッセージを送信することで、所望のコンテンツを取得している。しかし、コンテンツ数やユーザ数の増大により、サーバへの負荷や取得時間の増大が懸念される。特定の少数コンテンツ(Video On Demandや企業のWebページなど)に対しては、既存のCDN(Content Delivery Network)技術によって世界各地のサーバにキャッシュがおかれ、サーバの負荷分散や応答時間の短縮が図られている。しかし、CDNにそぐわない一過性のデータ(例えばセンサー測定データなど)やCDNを使うほどコストをかけられないコンテンツ(たとえば商店街の割引クーポンデータなど)に対しては問題が解決されない。
将来ネットワークを介してやりとりされるあらゆるコンテンツデータに対してサーバ負荷削減と取得時間の短縮を図る目的として、ネットワーク内にコンテンツキャッシュを保持し、コンテンツIDを用いてキャッシュへの誘導を行う技術 Breadcrumbs(以下、BC)が非特許文献1で開示されている。
BCの動作を、図1を使って説明する。図1で示すネットワークには、コンテンツサーバ101、ルータ201、202、203、およびユーザ端末301、302が存在する。まずユーザ301が、あるコンテンツAを取得しようとしたとする。ユーザ301は、DNSなどの既存方式を用いて、コンテンツAを保持するサーバのIPアドレスを取得する。ここでは、サーバ101のIPアドレスを取得したとする。ユーザ301はサーバ101宛に、コンテンツ要求メッセージを送信する。コンテンツ要求メッセージには、要求するコンテンツのIDが含まれている。ユーザ301が送信したコンテンツ要求メッセージは、まずルータ202によって受信される。ルータ202は、ユーザ301から受信したコンテンツ要求メッセージをルータ201へと転送する。ルータ201は同様にサーバ101へとコンテンツ要求メッセージを転送する。コンテンツ要求メッセージを受信したサーバ101は、コンテンツデータを含むコンテンツ応答メッセージをユーザ301宛に送信する。コンテンツ応答メッセージは、まずルータ201が受信する。ここで、ルータ201はメッセージの内容を解析し、コンテンツデータのキャッシュを自身の記憶装置に保存して、ルータ202へとコンテンツ応答メッセージを転送する。その後、自身のBreadcrumbテーブル(以下、BCテーブル)に次の情報を記録する。
[BC情報201−1]
・コンテンツID = A
・上流ノード = null
・下流ノード = 202
・データ通過時刻 = 2010/11/26 10:00:00
・リクエスト通過時刻 = null
[BC情報201−1]
・コンテンツID = A
・上流ノード = null
・下流ノード = 202
・データ通過時刻 = 2010/11/26 10:00:00
・リクエスト通過時刻 = null
もし、ルータ201においてコンテンツデータのキャッシュを保持するために十分な空き記憶領域が無い場合、最も過去にアクセスされたコンテンツキャッシュから削除することにより空き記憶領域を増やしてから、新しいコンテンツキャッシュを保存する。コンテンツキャッシュが削除されても、コンテンツ要求メッセージをコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報であるBC情報の下流ノード方向にまだキャッシュを持つルータが存在する可能性があるため、BC情報はそのまま保持する。BC情報は、データ通過時刻が一定時間(Tf)更新されなかった場合、もしくはリクエスト通過時刻が一定時間(Tq)更新されなかった場合に削除される。基本的には、ルータが持つコンテンツキャッシュの容量は全流通コンテンツ数に対して非常に小さいため、あまりダウンロードされないコンテンツのキャッシュは比較的早く削除される傾向となる。それに対してBC情報はタイマーで削除され、タイマーも新しいダウンロードやリクエストの到着により延長されるため、キャッシュに比べて長く残る。
コンテンツ応答メッセージをルータ201から受信したルータ202は、ルータ201と同様に自身の記憶装置にコンテンツデータのキャッシュを保存し、ユーザ301へコンテンツ応答メッセージを転送する。その後、ルータ202は、以下の情報を自身のBCテーブルに記録する。
[BC情報202−1]
・コンテンツID = A
・上流ノード = 201
・下流ノード = null
・データ通過時刻 = 2010/11/26 10:00:10
・リクエスト通過時刻 = null
一定時間の後、記憶領域の不足などなんらかの理由によりルータ201の記憶装置からコンテンツAのキャッシュデータが削除されたとする。
[BC情報202−1]
・コンテンツID = A
・上流ノード = 201
・下流ノード = null
・データ通過時刻 = 2010/11/26 10:00:10
・リクエスト通過時刻 = null
一定時間の後、記憶領域の不足などなんらかの理由によりルータ201の記憶装置からコンテンツAのキャッシュデータが削除されたとする。
その後、ユーザ302が同じコンテンツAを要求したとする。ユーザ302は、ユーザ301と同様に、DNSなどを使いコンテンツAを保有しているサーバ101のIPアドレスを取得してコンテンツ要求メッセージを送信する。コンテンツ要求メッセージはルータ203が受信し、ルータ201へと転送される。ここで、ルータ201はコンテンツ要求メッセージに含まれるコンテンツID(A)のキャッシュが自身の記録装置に保持されているかを確認する。保存されていない場合、自身のBCテーブルに記録されているBC情報([BC情報201−1])と比較し、同じコンテンツIDで、かつデータ通過時刻が一定時間以内である情報が存在する場合、コンテンツ要求メッセージをサーバ方向でなく、BCテーブルに記録された下流ノード方向へと転送する。そのため、ルータ201はメッセージをルータ202へと転送する。その後、ルータ201は、自身のBCテーブルのコンテンツAに関する情報([BC情報201−1])のリクエスト通過時刻を、コンテンツ要求メッセージを受信した時刻へと書き換える。
[BC情報201−2]
・コンテンツID = A
・上流ノード = null
・下流ノード = 202
・データ通過時刻 = 2010/11/26 10:00:00
・リクエスト通過時刻 = 2010/11/26 10:04:59
[BC情報201−2]
・コンテンツID = A
・上流ノード = null
・下流ノード = 202
・データ通過時刻 = 2010/11/26 10:00:00
・リクエスト通過時刻 = 2010/11/26 10:04:59
コンテンツ要求メッセージを受信したルータ202は、自身の記憶装置にコンテンツAのキャッシュが保存されているかどうかを確認する。ルータ202にはユーザ301へと転送したコンテンツのキャッシュが保存されているため、ルータ202はコンテンツAのデータを含めたコンテンツ応答メッセージを作成し、ユーザ302宛にルータ201へと送信する。その後、ルータ202は自身のBCテーブルのコンテンツAに関する情報([BC情報202−1])の下流ノード、データ通過時刻、リクエスト通過時刻を以下のように書き換える。
[BC情報202−2]
・コンテンツID = A
・上流ノード = 201
・下流ノード = 201
・データ通過時刻 = 2010/11/26 10:05:01
・リクエスト通過時刻 = 2010/11/26 10:05:00
コンテンツ応答メッセージをルータ202から受信したルータ201は、再度コンテンツAのデータを自身の記録装置へと保存し、コンテンツ応答メッセージをルータ203へと転送する。その後、自身のBCテーブルのコンテンツAに関する情報([BC情報201−2])の上流ノード、下流ノード、データ通過時刻を以下のように書き換える。
[BC情報201−3]
・コンテンツID = A
・上流ノード = 202
・下流ノード = 203
・データ通過時刻 = 2010/11/26 10:05:10
・リクエスト通過時刻 = 2010/11/26 10:04:59
[BC情報202−2]
・コンテンツID = A
・上流ノード = 201
・下流ノード = 201
・データ通過時刻 = 2010/11/26 10:05:01
・リクエスト通過時刻 = 2010/11/26 10:05:00
コンテンツ応答メッセージをルータ202から受信したルータ201は、再度コンテンツAのデータを自身の記録装置へと保存し、コンテンツ応答メッセージをルータ203へと転送する。その後、自身のBCテーブルのコンテンツAに関する情報([BC情報201−2])の上流ノード、下流ノード、データ通過時刻を以下のように書き換える。
[BC情報201−3]
・コンテンツID = A
・上流ノード = 202
・下流ノード = 203
・データ通過時刻 = 2010/11/26 10:05:10
・リクエスト通過時刻 = 2010/11/26 10:04:59
同様にルータ203もコンテンツ応答メッセージに含まれるコンテンツAのキャッシュを保存し、ユーザ端末302にコンテンツ応答メッセージを転送する。その後、ルータ203は自身のBCテーブルに以下の情報を記録する。
[BC情報203−1]
・コンテンツID = A
・上流ノード = 201
・下流ノード = null
・データ通過時刻 = 2010/11/26 10:05:20
・リクエスト通過時刻 = null
[BC情報203−1]
・コンテンツID = A
・上流ノード = 201
・下流ノード = null
・データ通過時刻 = 2010/11/26 10:05:20
・リクエスト通過時刻 = null
もし、ルータ201からルータ202へとユーザ302からのコンテンツ要求メッセージが転送された時に、ルータ202もコンテンツAのキャッシュを保存していなかった場合、ルータ202は同様に自身のBCテーブルからコンテンツAに関する情報([BC情報202−1])を検索する。ルータ202が保持する情報では、下流ノードはnullであるため、これ以上BCに沿った転送ができない。そのため、ルータ202はコンテンツ要求メッセージをBCテーブルの情報の上流ノードであるルータ201へと転送し、BCテーブルからコンテンツAに関する情報を削除する。ルータ202からコンテンツ要求メッセージを受信したルータ201は、自身のBCテーブルと比較し、メッセージの転送者と、BCテーブル情報([BC情報201−2])の下流ノードが、ともにルータ202であるため、BCテーブル情報は既に無効になったと判断し、コンテンツ要求メッセージをBCテーブル情報の上流ノードもしくはサーバへの最短経路の次ホップへと転送する。この場合、ルータ201が保持するBC情報([BC情報201−2])の上流ノードはnullであるため、ルータ201はコンテンツ要求メッセージをサーバ101への最短経路に沿ってサーバ101へ転送する。その後、ルータ201は、BCテーブルのコンテンツAに関する情報([BC情報201−2])を削除する。これにより、BC情報に沿った経路上にコンテンツデータが存在しない場合、無効となったBC情報を削除しながらコンテンツ要求メッセージをサーバへと届けることができる。
上述のように、ルータがコンテンツデータのキャッシュを保持し、コンテンツ要求メッセージをコンテンツ応答メッセージが流れた方向へと誘導することにより、ネットワーク内に保持されたコンテンツデータを取得することで、サーバ負荷の削減とコンテンツ取得時間の短縮を図ることができる。
E. Rosensweig, J. Kurose, "Breadcrumbs: efficient, best-effort content location in cache networks", Proc. 2009 IEEE Infocom Mini-Conference
非特許文献1で開示されたキャッシュへの誘導方式BCでは、コンテンツ要求メッセージがループする可能性がある。ループが発生する状況について図2〜6を用いて説明する。図2〜6には、コンテンツサーバ111、ルータ211〜217、ユーザ端末311〜313が存在する。
まず図2では、ユーザ端末312が点線に沿ってコンテンツ要求メッセージの送信とコンテンツ応答メッセージの受信を行い、コンテンツサーバ111からコンテンツBを取得する。その際にルータ211、213、214には実線矢印のようにコンテンツ応答メッセージの流れた方向を示すBC情報が作成される。またルータ211、213、214、216にはコンテンツのキャッシュが保持される。
その後、図3において、ユーザ端末311が同一コンテンツBを要求し、コンテンツ要求メッセージをコンテンツサーバ111宛に送信する。ここで、ルータ214のコンテンツキャッシュは既に削除されているとする。送信されたコンテンツ要求メッセージは、ルータ214においてBC情報にヒットし、ルータ216へと転送される。ルータ216はコンテンツキャッシュを保持しているため、コンテンツ応答メッセージを作成してユーザ端末311へと送信する。それによりルータ214、216のBC情報は図の実線矢印のように更新される。ルータ215にはBC情報とコンテンツのキャッシュが作成される。
その後、図4において、ユーザ端末313が同じコンテンツBを要求する。コンテンツ要求メッセージはルータ214に到達する。ここで、ルータ214、215、216のコンテンツキャッシュは既に削除されているものとする。その場合、ルータ214はコンテンツ要求メッセージをBCに沿ってルータ215へと転送する。
次に、図5において、ルータ215もキャッシュを保持しておらず、BC情報の下流ノードはNULL(ユーザ端末)であるため、これ以上コンテンツ要求メッセージを転送せず、BC情報の上流ノードであるルータ214へとコンテンツ要求メッセージを送り返す。それと同時にルータ215は、BC情報を既に無効と判断して削除する。ルータ215からコンテンツ要求メッセージを送り返されたルータ214は、自身のもつBC情報を無効と判断して削除し、BC情報の上流ノードであるルータ216へとコンテンツ要求メッセージを転送する。コンテンツ要求メッセージを受信したルータ216は、自身のBC情報を削除する。
次に、図6において、ルータ216はこれ以上上流ノードへとコンテンツ要求メッセージを転送できないため、コンテンツ要求メッセージをコンテンツサーバ111への最短経路の次ホップであるルータ214へと転送する。ルータ214は、コンテンツキャッシュもBC情報も保持していないため、コンテンツ要求メッセージをコンテンツサーバ111の最短経路に沿ってルータ212へと転送する。同様にルータ212は、コンテンツ要求メッセージをルータ211へと転送する。ここでルータ211、213のコンテンツキャッシュは既に削除されているとする。ルータ211にはBC情報が残っているため、BC情報の下流ノードであるルータ213へとコンテンツ要求メッセージを転送する。ルータ213にもBC情報が残っているため、下流ノードであるルータ214へと転送する。ルータ214にはBC情報が無いため、コンテンツサーバ111の最短経路の次ホップであるルータ212へと転送する。これが繰り返され、コンテンツ要求メッセージはループする。
本発明は、コンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従ってコンテンツ要求メッセージを転送すると転送ループが発生することを防止するためのルータ、転送ループ防止方法及びプログラムを提供することを目的とする。
本発明の第1の観点によれば、或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、を備えることを特徴とするルータが提供される。
本発明の第2の観点によれば、コンテンツ要求メッセージをコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送すると転送ループが発生することを防止するための、コンテンツ要求メッセージの転送ループ防止方法であって、
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録するステップと、その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止するステップと、を有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法が提供される。
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録するステップと、その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止するステップと、を有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法が提供される。
本発明の第3の観点によれば、コンピュータをルータとして機能させるためのプログラムであって、コンピュータを、或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、として機能させるためのプログラムが提供される。
本発明によれば、ルータが、或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、を備えるので、コンテンツ要求メッセージの転送ループを防止することができる。
以下、図面を参照して本発明を実施するための形態について詳細に説明する。
本実施形態によるルータは、図7に示すように、メッセージ送受信処理部401と、メッセージ転送決定処理部402と、コンテンツキャッシュ記憶部403と、BC情報管理部404と、転送情報管理部405と、ループ判定処理部406を含む。
ルータは、メッセージ送受信処理部401を介して、隣接ルータ、コンテンツサーバおよびコンテンツ要求ノードであるユーザ端末とメッセージの交換を行う。メッセージ送受信処理部401は、コンテンツ応答メッセージを受信すると、コンテンツキャッシュ記憶部403にコンテンツデータを通知する。メッセージ送受信処理部401は、BC情報管理部404に、コンテンツ要求メッセージ・コンテンツ応答メッセージの送受信情報(コンテンツID、受信元、送信先、受信時刻、送信時刻など)を通知する。メッセージ送受信処理部401は、コンテンツ要求メッセージ・コンテンツ応答メッセージの送信に関しては、メッセージ転送先決定部402の転送先情報に従って、コンテンツ要求メッセージ・コンテンツ応答メッセージを転送する。
コンテンツキャッシュ記憶部403は、キャッシュされたコンテンツデータのアクセス時間を管理し、必要に応じて空き容量を確保してデータをその内部に保存する。
BC情報管理部404はBCテーブル407を保持し、メッセージ送受信処理部401から通知されたコンテンツ要求メッセージ・コンテンツ応答メッセージの送受信情報に基づきBCテーブルにBC情報を記録する。
転送情報管理部405は、メッセージ送受信処理部401からコンテンツ要求メッセージの送受信情報(コンテンツID、コンテンツ要求ノードID、転送先)を取得し、BC情報に基づいてコンテンツ要求メッセージを転送した時には、その送受信情報を転送情報として転送管理テーブル408に記録する。
ループ判定処理部406は、メッセージ送受信処理部401からコンテンツ要求メッセージ送受信情報(コンテンツID、コンテンツ要求ノードID、受信元)を取得し、転送情報管理部405からこれまでの転送情報を取得し、コンテンツ要求メッセージがループしているかを判定し、判定結果をメッセージ転送処理部402へ通知する。
メッセージ転送決定処理部402は、BC情報管理部404から取得したBC情報およびループ判定処理部406から取得したループ判定情報に基づき、メッセージの転送先を決定し、メッセージ送受信処理部401に通知する。
各ルータは、コンテンツ要求メッセージを受信した場合、当該コンテンツのキャッシュは保持しないが、当該コンテンツに関するBC情報を保持している場合において、コンテンツ要求メッセージをBC情報の下流ノードへと転送する。図6においては、ルータ211は、ユーザ端末313から送信されたコンテンツ要求メッセージをルータ212から受信し、BC情報に従ってルータ213へと転送する。
本実施形態では、ルータ211がルータ213へとBC情報に従ってコンテンツ要求メッセージを転送する際に、ルータ211の転送情報管理部405が、以下の転送情報を転送管理テーブル408へと記録する。図8を参照すると、ルータは、コンテンツ要求メッセージを受信したならば(ステップS501)、そのコンテンツ要求メッセージを転送する(ステップS503)。次に、転送はBC転送情報に従って行われたのかを判断し(ステップS505)、そうであれば、転送情報を転送管理テーブル408に記録する(ステップS507)。
・コンテンツID = B
・コンテンツ要求ノードID = 313
・転送先ノード = 213
・コンテンツID = B
・コンテンツ要求ノードID = 313
・転送先ノード = 213
IPルーティングテーブルに従ってコンテンツ要求メッセージを転送した場合にも転送情報を記録すれば、IPルーティングテーブルに従った場合のコンテンツ要求メッセージのループの発生の可能性を検出することが可能であるが、そのループを回避することは本発明の範囲外である。従って、IPルーティングテーブルに従ってコンテンツ要求メッセージを転送した場合には転送情報を記録しない。
その後、前述のとおりコンテンツ要求メッセージがループしてルータ211が再びルータ212からコンテンツ要求メッセージを受信する。ルータ211のループ判定処理部406は、コンテンツ要求メッセージの受信元である212と、転送管理テーブル408に記録された転送情報を比較する。ループ判定処理部406は、具体的には、現在判断の対象となっているコンテンツ要求メッセージに含まれるコンテンツIDと何れかの転送情報に含まれるコンテンツIDが一致し、そのコンテンツ要求メッセージに含まれるコンテンツ要求ノードIDとその転送情報に含まれるコンテンツ要求ノードが一致し、そのコンテンツ要求メッセージの受信元ノードとその転送情報に含まれる転送先が異なる場合に、BC情報に従ってそのコンテンツ要求メッセージを転送するとそのコンテンツ要求メッセージの転送ループが発生すると判断する。また、ループ判定処理部406は、判断の対象となっているコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と何れかの転送情報に含まれるコンテンツデータの識別情報とが一致し、そのコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報とその転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、そのコンテンツ要求メッセージの受信元ノードの識別情報とその転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断する。
BC情報に従ってコンテンツ要求メッセージを転送するとループが発生すると判定した場合、メッセージ転送決定処理部402に、コンテンツ要求メッセージがループ状態であることを通知する。メッセージ転送決定処理部402は、ループ判定処理部406からループ状態の通知を受けた場合、当該コンテンツ(ID=B)に関する有効なBC情報がBCテーブル407に存在したとしても、それを利用せず、コンテンツサーバ111への最短経路をIPルーティングテーブル(不図示)から検索し、その経路の次ホップ(ここではコンテンツサーバ111)に転送する。ループ判定処理部406は、ループを引き起こしているBC情報の削除要求をBC情報管理部404に通知する。BC情報管理部404は、ループ判定処理部406から要求されたBC情報を削除する。
ループ判定処理部406は、上述したように、コンテンツ要求メッセージの受信元ノードと、転送情報に含まれる転送先ノードが同じである場合は、ループと判定しない。その場合、メッセージ転送決定処理部402は、通常のキャッシュミスが発生していると判断してBC情報を削除し、コンテンツ要求メッセージをBC情報の上流ノードもしくコンテンツサーバへの最短経路方向へと転送するよう決定する。ここでキャッシュミスとは、ルータにキャッシュされたコンテンツデータが削除されたために、BC情報に従った誘導先のルータでコンテンツのキャッシュが得られないことである。キャッシュミスと判断した場合には、すでに述べたように、ルータ211はコンテンツ要求メッセージをBCテーブルの情報の上流ノードであるルータ213へと転送し、BCテーブルからコンテンツに関するBC情報を削除する。ルータ211からコンテンツ要求メッセージを受信したルータ213は、自身のBCテーブルと比較し、メッセージの転送者と、BCテーブル情報の下流ノードが、ともにルータ211であるため、BCテーブル情報は既に無効になったと判断し、BC情報を削除しコンテンツ要求メッセージをBCテーブル情報の上流ノードもしくはサーバへの最短経路の次ホップへと転送する。これにより、BC情報に沿った経路上にコンテンツデータが存在しない場合、無効となったBC情報を削除しながらコンテンツ要求メッセージをサーバへと届けることができる。
図9を参照すると、ルータは、コンテンツ要求メッセージを受信すると(ステップS511)、転送管理テーブルに記録されている全ての転送情報について、ステップS513SからステップS513Eまでのステップを繰り返す。
まず、受信したコンテンツ要求メッセージに含まれているコンテンツIDと現在の転送情報に含まれているコンテンツIDが一致するか否かを判断する(ステップS515)。一致しなければ(ステップS515でNO)、現在の繰り返しを終了する。
一致すれば(ステップS515でYES)、受信したコンテンツ要求メッセージに含まれているコンテンツ要求ノードIDと現在の転送情報に含まれているコンテンツ要求ノードIDが一致するか否かを判断する(ステップS517)。一致しなければ(ステップS517でNO)、現在の繰り返しを終了する。
一致すれば(ステップS517でYES)、受信した要求メッセージの送信元IDと現在の転送情報に含まれている転送先とが一致するか否かを判断する(ステップS521)。
一致しなければ(ステップS521でNO)、誘導情報に従ってコンテンツ要求メッセージを転送すると、コンテンツ要求メッセージの転送はループすると判断する(ステップS523)。すなわち、ステップS517からステップS521に進んだときにみた転送情報を記録した時に転送したコンテンツ要求メッセージは、今回ステップS511で受信したコンテンツ要求メッセージと同一であると判断する。ステップS517からステップS521に進んだときにみた転送情報に対応する誘導情報(その転送情報とコンテンツIDが一致する誘導情報)を削除し(ステップS525)、ステップS511で受信したコンテンツ要求メッセージをIPルーティングテーブルに基づいて転送する(ステップS527)。
一致すれば(ステップS521でYES)、誘導情報に従ってコンテンツ要求メッセージを転送しても、キャッシュミスをすると判断し(ステップS529)、ステップS517からステップS521に進んだときにみた転送情報に対応する誘導情報(その転送情報とコンテンツIDが一致する誘導情報)を削除し(ステップS531)、ステップS511で受信したコンテンツ要求メッセージを誘導情報に基づいて逆転送する(ステップS533)。
何れの繰り返しでもステップS517でYESとならずにステップS513SからステップS513Eまでの繰り返しを全て終了した場合には、ステップS519に進み、誘導情報又はIPルーティング情報に基づいて、ステップS511で受信したコンテンツ要求メッセージを転送する。
転送管理テーブル408に記録された転送情報は、次のいずれかの条件で削除される。
1)メッセージ転送決定処理部402がコンテンツサーバへの経路を転送先として決定した場合
この場合には、BC情報に従わずに、IPルーティングテーブルに従っているため、BC情報に従っていることに対応する転送情報は不要となるためである。
2)当該コンテンツ要求メッセージに対するコンテンツ応答メッセージを受信した場合
この場合には、コンテンツ要求メッセージがループしていないと判断できるためである。
3)一定時間が経過した場合
いつまでもルータに転送情報が記録されている転送情報が残っていると、不要な転送情報まで残ることとなり、また、一定時間が経過した後には転送情報が無効となっている可能性があるからである。
この場合には、BC情報に従わずに、IPルーティングテーブルに従っているため、BC情報に従っていることに対応する転送情報は不要となるためである。
2)当該コンテンツ要求メッセージに対するコンテンツ応答メッセージを受信した場合
この場合には、コンテンツ要求メッセージがループしていないと判断できるためである。
3)一定時間が経過した場合
いつまでもルータに転送情報が記録されている転送情報が残っていると、不要な転送情報まで残ることとなり、また、一定時間が経過した後には転送情報が無効となっている可能性があるからである。
なお、本発明の実施形態によるルータの各部は、ハードウェア、ソフトウェア又はこれらの組合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータをルータの各部として機能させるためのプログラムをコンピュータが読み込んで実行することにより実現されることを意味する。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、
を備えることを特徴とするルータ。
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、
を備えることを特徴とするルータ。
(付記2)
付記1に記載のルータであって、
前記禁止を行った場合、前記第2のコンテンツ要求メッセージをIPルーティングテーブルに従って転送する手段を更に備えることを特徴とするルータ。
付記1に記載のルータであって、
前記禁止を行った場合、前記第2のコンテンツ要求メッセージをIPルーティングテーブルに従って転送する手段を更に備えることを特徴とするルータ。
(付記3)
付記1又は2に記載のルータであって、
前記第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断する手段を更に備えることを特徴とするルータ。
付記1又は2に記載のルータであって、
前記第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断する手段を更に備えることを特徴とするルータ。
(付記4)
付記1乃至3の何れか1に記載のルータであって、
前記禁止を行った場合、自ルータに記録されている前記誘導情報を削除する手段を更に備えることを特徴とするルータ。
付記1乃至3の何れか1に記載のルータであって、
前記禁止を行った場合、自ルータに記録されている前記誘導情報を削除する手段を更に備えることを特徴とするルータ。
(付記5)
付記1乃至4の何れか1に記載のルータであって、
前記禁止を行った場合、前記第1のコンテンツ要求メッセージに対応するコンテンツ応答メッセージを受信した場合、又は、前記第1のコンテンツ要求メッセージに対応する転送情報を記録してから所定時間経過した場合に、前記第1のコンテンツ要求メッセージに対応する転送情報を削除する手段を更に備えることを特徴とするルータ。
付記1乃至4の何れか1に記載のルータであって、
前記禁止を行った場合、前記第1のコンテンツ要求メッセージに対応するコンテンツ応答メッセージを受信した場合、又は、前記第1のコンテンツ要求メッセージに対応する転送情報を記録してから所定時間経過した場合に、前記第1のコンテンツ要求メッセージに対応する転送情報を削除する手段を更に備えることを特徴とするルータ。
(付記6)
コンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従ってコンテンツ要求メッセージを転送すると転送ループが発生することを防止するための、コンテンツ要求メッセージの転送ループ防止方法であって、
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録するステップと、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止するステップと、
を有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
コンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従ってコンテンツ要求メッセージを転送すると転送ループが発生することを防止するための、コンテンツ要求メッセージの転送ループ防止方法であって、
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録するステップと、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止するステップと、
を有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
(付記7)
付記6に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記禁止を行った場合、前記第2のコンテンツ要求メッセージをIPルーティングテーブルに従って転送するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
付記6に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記禁止を行った場合、前記第2のコンテンツ要求メッセージをIPルーティングテーブルに従って転送するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
(付記8)
付記6又は7に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
付記6又は7に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
(付記9)
付記6乃至8の何れか1に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記禁止を行った場合、自ルータに記録されている前記誘導情報を削除するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
付記6乃至8の何れか1に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記禁止を行った場合、自ルータに記録されている前記誘導情報を削除するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
(付記10)
付記6乃至9の何れか1に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記禁止を行った場合、前記第1のコンテンツ要求メッセージに対応するコンテンツ応答メッセージを受信した場合、又は、前記第1のコンテンツ要求メッセージに対応する転送情報を記録してから所定時間経過した場合に、前記第1のコンテンツ要求メッセージに対応する転送情報を削除するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
付記6乃至9の何れか1に記載のコンテンツ要求メッセージの転送ループ防止方法であって、
前記禁止を行った場合、前記第1のコンテンツ要求メッセージに対応するコンテンツ応答メッセージを受信した場合、又は、前記第1のコンテンツ要求メッセージに対応する転送情報を記録してから所定時間経過した場合に、前記第1のコンテンツ要求メッセージに対応する転送情報を削除するステップを更に有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。
(付記11)
コンピュータをルータとして機能させるためのプログラムであって、
コンピュータを、
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、
として機能させるためのプログラム。
コンピュータをルータとして機能させるためのプログラムであって、
コンピュータを、
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、
として機能させるためのプログラム。
(付記12)
付記11に記載のプログラムであって、
コンピュータを更に、
前記禁止を行った場合、前記第2のコンテンツ要求メッセージをIPルーティングテーブルに従って転送する手段として機能させるためのプログラム。
付記11に記載のプログラムであって、
コンピュータを更に、
前記禁止を行った場合、前記第2のコンテンツ要求メッセージをIPルーティングテーブルに従って転送する手段として機能させるためのプログラム。
(付記13)
付記11又は12に記載のプログラムであって、
コンピュータを更に、
前記第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断する手段として機能させるためのプログラム。
付記11又は12に記載のプログラムであって、
コンピュータを更に、
前記第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断する手段として機能させるためのプログラム。
(付記14)
付記11乃至13の何れか1に記載のプログラムであって、
コンピュータを更に、
前記禁止を行った場合、自ルータに記録されている前記誘導情報を削除する手段として機能させるためのプログラム。
付記11乃至13の何れか1に記載のプログラムであって、
コンピュータを更に、
前記禁止を行った場合、自ルータに記録されている前記誘導情報を削除する手段として機能させるためのプログラム。
(付記15)
付記11乃至14の何れか1に記載のプログラムであって、
コンピュータを更に、
前記禁止を行った場合、前記第1のコンテンツ要求メッセージに対応するコンテンツ応答メッセージを受信した場合、又は、前記第1のコンテンツ要求メッセージに対応する転送情報を記録してから所定時間経過した場合に、前記第1のコンテンツ要求メッセージに対応する転送情報を削除する手段として機能させるためのプログラム。
付記11乃至14の何れか1に記載のプログラムであって、
コンピュータを更に、
前記禁止を行った場合、前記第1のコンテンツ要求メッセージに対応するコンテンツ応答メッセージを受信した場合、又は、前記第1のコンテンツ要求メッセージに対応する転送情報を記録してから所定時間経過した場合に、前記第1のコンテンツ要求メッセージに対応する転送情報を削除する手段として機能させるためのプログラム。
111 コンテンツサーバ
211〜217 ルータ
311〜313 コンテンツ要求ノード
211〜217 ルータ
311〜313 コンテンツ要求ノード
Claims (7)
- 或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、
を備えることを特徴とするルータ。 - 請求項1に記載のルータであって、
前記禁止を行った場合、前記第2のコンテンツ要求メッセージをIPルーティングテーブルに従って転送する手段を更に備えることを特徴とするルータ。 - 請求項1又は2に記載のルータであって、
前記第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されている前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが一致する場合に、キャッシュミスが発生していると判断する手段を更に備えることを特徴とするルータ。 - 請求項1乃至3の何れか1に記載のルータであって、
前記禁止を行った場合、自ルータに記録されている前記誘導情報を削除する手段を更に備えることを特徴とするルータ。 - 請求項1乃至4の何れか1に記載のルータであって、
前記禁止を行った場合、前記第1のコンテンツ要求メッセージに対応するコンテンツ応答メッセージを受信した場合、又は、前記第1のコンテンツ要求メッセージに対応する転送情報を記録してから所定時間経過した場合に、前記第1のコンテンツ要求メッセージに対応する転送情報を削除する手段を更に備えることを特徴とするルータ。 - コンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従ってコンテンツ要求メッセージを転送すると転送ループが発生することを防止するための、コンテンツ要求メッセージの転送ループ防止方法であって、
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録するステップと、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止するステップと、
を有することを特徴とするコンテンツ要求メッセージの転送ループ防止方法。 - コンピュータをルータとして機能させるためのプログラムであって、
コンピュータを、
或るコンテンツ要求ノードから或るコンテンツデータをそのコンテンツデータを保有するコンテンツサーバに要求するための第1のコンテンツ要求メッセージであって前記或るコンテンツデータの識別情報及び前記或るコンテンツ要求ノードの識別情報を少なくとも含む第1のコンテンツ要求メッセージを受信し、該第1のコンテンツ要求メッセージを前記或るコンテンツデータのキャッシュを保有するルータに誘導するための誘導情報に従って転送した時に、前記或るコンテンツデータの識別情報、前記或るコンテンツ要求ノードの識別情報及び転送先の識別情報を含む転送情報を自ルータに記録する手段と、
その後に受信した第2のコンテンツ要求メッセージに含まれるコンテンツデータの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツデータの識別情報とが一致し、前記第2のコンテンツ要求メッセージに含まれるコンテンツ要求ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応した転送情報に含まれるコンテンツ要求ノードの識別情報とが一致し、前記第2のコンテンツ要求メッセージの受信元ノードの識別情報と自ルータに記録されており前記第1のコンテンツ要求メッセージに対応する転送情報に含まれる転送先の識別情報とが異なる場合に、前記第1のコンテンツ要求メッセージと前記第2のコンテンツ要求メッセージとが同一であり、前記第1のコンテンツ要求メッセージがループしていると判断し、前記第2のコンテンツ要求メッセージを誘導情報に従って転送することを禁止する手段と、
として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011010922A JP2012151806A (ja) | 2011-01-21 | 2011-01-21 | ルータ、転送ループ防止方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011010922A JP2012151806A (ja) | 2011-01-21 | 2011-01-21 | ルータ、転送ループ防止方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012151806A true JP2012151806A (ja) | 2012-08-09 |
Family
ID=46793614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011010922A Withdrawn JP2012151806A (ja) | 2011-01-21 | 2011-01-21 | ルータ、転送ループ防止方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012151806A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101392031B1 (ko) | 2012-11-16 | 2014-05-07 | 이화여자대학교 산학협력단 | 콘텐츠 기반 네트워크에서의 라우터 캐싱 방법 및 콘텐츠 기반 네트워크 시스템 |
JP2014164583A (ja) * | 2013-02-26 | 2014-09-08 | Nec Corp | データ配信システム、ルータ、ルータの制御方法及びルータの制御プログラム |
JP2015185994A (ja) * | 2014-03-24 | 2015-10-22 | 日本電気株式会社 | ルータ、コンテンツ配信システム、メッセージ転送方法、プログラム |
CN115514697A (zh) * | 2021-06-21 | 2022-12-23 | 贵州白山云科技股份有限公司 | 数据校验的方法、电子装置、电子设备以及介质 |
-
2011
- 2011-01-21 JP JP2011010922A patent/JP2012151806A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101392031B1 (ko) | 2012-11-16 | 2014-05-07 | 이화여자대학교 산학협력단 | 콘텐츠 기반 네트워크에서의 라우터 캐싱 방법 및 콘텐츠 기반 네트워크 시스템 |
JP2014164583A (ja) * | 2013-02-26 | 2014-09-08 | Nec Corp | データ配信システム、ルータ、ルータの制御方法及びルータの制御プログラム |
JP2015185994A (ja) * | 2014-03-24 | 2015-10-22 | 日本電気株式会社 | ルータ、コンテンツ配信システム、メッセージ転送方法、プログラム |
CN115514697A (zh) * | 2021-06-21 | 2022-12-23 | 贵州白山云科技股份有限公司 | 数据校验的方法、电子装置、电子设备以及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102301353B1 (ko) | 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 | |
Zhang et al. | A survey of caching mechanisms in information-centric networking | |
EP2835942B1 (en) | Dynamic interest forwarding mechanism for information centric networking | |
CN105450780B (zh) | 一种cdn系统及其回源方法 | |
Carofiglio et al. | LAC: Introducing latency-aware caching in information-centric networks | |
JP2007066161A (ja) | キャッシュシステム | |
CN103905332B (zh) | 一种确定缓存策略的方法及设备 | |
WO2017092575A1 (en) | System and method to support context-aware content requests in information centric networks | |
CN105208553B (zh) | Ccmanet请求节点检索隐私的保护方法及系统 | |
US9749216B2 (en) | Method for acquiring content, user equipment and cache node | |
CN108769252B (zh) | 一种基于请求内容关联性的icn网络预缓存方法 | |
CN102438020A (zh) | 内容分发网络中内容分发的方法、设备和网络系统 | |
JP2012151806A (ja) | ルータ、転送ループ防止方法及びプログラム | |
JP5625937B2 (ja) | ルータ、キャッシュルータ及びコンテンツデータキャッシュシステム並びにコンテンツデータキャッシュ方法 | |
Wang et al. | Fog computing based content-aware taxonomy for caching optimization in information-centric networks | |
Wu et al. | Could end system caching and cooperation replace in-network caching in CCN? | |
KR20150080957A (ko) | 컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법 | |
CN103152273B (zh) | 数据缓存方法和装置 | |
KR102596938B1 (ko) | 정보 중심 네트워크에 포함되는 노드의 제어 방법, 및 시스템 | |
JP5846451B2 (ja) | ルータ、コンテンツサーバ不達時のキャッシュ利用方法及びプログラム | |
JP2014164583A (ja) | データ配信システム、ルータ、ルータの制御方法及びルータの制御プログラム | |
JP6273949B2 (ja) | ルータ、コンテンツ配信システム、メッセージ転送方法、プログラム | |
Dhawan et al. | PoSiF: A Transient Content Caching and Replacement Scheme for ICN‐IoT | |
CN112261128B (zh) | 一种针对ccn中内容源移动的主动推送缓存方法 | |
KR101392031B1 (ko) | 콘텐츠 기반 네트워크에서의 라우터 캐싱 방법 및 콘텐츠 기반 네트워크 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140401 |