JP2005244985A - 自己複製コードを利用した通信ネットワークのノード間データ転送 - Google Patents

自己複製コードを利用した通信ネットワークのノード間データ転送 Download PDF

Info

Publication number
JP2005244985A
JP2005244985A JP2005049886A JP2005049886A JP2005244985A JP 2005244985 A JP2005244985 A JP 2005244985A JP 2005049886 A JP2005049886 A JP 2005049886A JP 2005049886 A JP2005049886 A JP 2005049886A JP 2005244985 A JP2005244985 A JP 2005244985A
Authority
JP
Japan
Prior art keywords
node
code
data
communication channel
nodes
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
JP2005049886A
Other languages
English (en)
Other versions
JP4602791B2 (ja
Inventor
Michael J Sheehan
ジェー.シーハン マイケル
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of JP2005244985A publication Critical patent/JP2005244985A/ja
Application granted granted Critical
Publication of JP4602791B2 publication Critical patent/JP4602791B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • EFIXED CONSTRUCTIONS
    • E01CONSTRUCTION OF ROADS, RAILWAYS, OR BRIDGES
    • E01DCONSTRUCTION OF BRIDGES, ELEVATED ROADWAYS OR VIADUCTS; ASSEMBLY OF BRIDGES
    • E01D19/00Structural or constructional details of bridges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • EFIXED CONSTRUCTIONS
    • E01CONSTRUCTION OF ROADS, RAILWAYS, OR BRIDGES
    • E01DCONSTRUCTION OF BRIDGES, ELEVATED ROADWAYS OR VIADUCTS; ASSEMBLY OF BRIDGES
    • E01D22/00Methods or apparatus for repairing or strengthening existing bridges ; Methods or apparatus for dismantling bridges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

【課題】自己複製コードを利用することによって、ノードが通信チャネルを介して相互間でデータを転送するようにする。
【解決手段】データを転送するための方法200及び通信ネットワーク100が記載されている。この方法200により、第1ノードは第2ノード102との通信チャネルを確立し、自己複製して第2コードを生成し、この通信チャネルを介して第2コードを第2ノードに提供する。第2ノードは第3ノード103との通信チャネルを確立し、自己複製して第3コードを生成し、この通信チャネルを介して第3コードを第3ノードに提供する。そして、第2ノードは、通信チャネルを介して第1ノードからデータを受信し、この受信したデータを処理するために第2コードを実行する。また、第3ノードは、通信チャネルを介して第2ノードからデータを受信し、この受信したデータを処理するために第3コードを実行する。
【選択図】図1

Description

本発明は通信の分野に関し、特に自己複製コードを利用した通信ネットワークのノード間データ転送に関する。
ビジネス、企業、大学などは、一般に、数百台または数千台ものデバイスを相互に接続するネットワークを有している。このネットワークとは、LAN(Local Area Network)、MAN(Metropolitan Area Network)、WAN(Wide Area Network)等であり、またはこれ以外の種類のネットワークであってもよい。ネットワーク担当者は、情報、ファイル、ソフトウエア、命令などのデータをネットワーク上の複数のデバイスに転送することを求めている。大規模ネットワークでは、ネットワーク担当者が各デバイス個別にデータを転送していては非効率的である。ネットワーク担当者が複数のデバイスに同時にデータを転送しようとすれば、特にデータのサイズが大きい場合は、ネットワークの帯域幅がすぐに使い果たされることとなってしまう。したがって、ネットワーク担当者は、ネットワークの帯域幅の不足を生じさせることなく効率を高めるように、ネットワーク上の複数のデバイスにデータを転送する方法を継続的に探究している。
ネットワーク上の複数のデバイスにデータを転送する1つの方法には、ネットワークを介してデータをマルチキャストすることによるものがある。「マルチキャスト」という用語は、ネットワークに接続されたデバイスの中から選択された1つのデバイス群にメッセージまたはパケットをブロードキャストすることを記述する場合に用いられる。このようなシステムによって利益を得る典型的なアプリケーションは、ビデオおよび音楽のブロードキャスティングを含む。ネットワーク担当者は、LAN上の複数のデバイスにデータを転送するためにマルチキャスティングを利用する。これは各デバイスを個々に取り扱うという問題点を解決する。例えば、ネットワーク担当者がLANに接続された複数のデバイスに新たなソフトウエアをインストールしようとする場合、LANを介して、これらのデバイスにソフトウエアをマルチキャストすればよい。
マルチキャスティングの1つの問題点は、マルチキャストを受信するためには受信デバイスに適宜のソフトウエアが必要であることにある。受信デバイスが適宜のソフトウエアを有していない場合は、データを受信する前に受信デバイスに適宜のソフトウエアをインストールする必要がある。
マルチキャスティングに関するもう1つの問題点は、受信デバイスがソフトウエアを受信したか否かを送信者が分からない場合があることである。ユーザー・データグラム・プロトコル(UDP)はマルチキャスティング用に使用されるプロトコルの1つであるが、UDPは、メッセージの送信を保証するものではなく、また、受信デバイスからの確認応答を要求しない。したがって、送信者にはデータの伝送状態が分からない。ネットワーク担当者は、ソフトウエアの転送がうまくいったことを確認するために、ある種の確認応答を求める場合がある。
上記以外のネットワーク担当者のもう1つの関心事として、コンピュータ・ウイルスを挙げることができる。より有名なウイルスの中の1つとしては、インターネット・ウォームがある。インターネット・ウォームによって、「ウォーム」という用語は、ネットワーク上で繰り返し自己複製して、ネットワークに「感染」させるソフトウエア(すなわち、ウイルス)として、一般にネガティブな意味に受け取られている。しかし、多くの当業者に理解されているウォームとは、自己複製する単なるソフトウエアであるに過ぎない。ウォームは、コントロール不能に伝播したり、ネットワークに害をおよぼすようにプログラムされてはならないものである。
伝統的なウォームには、一連のデバイス上で自己複製するものがある。最初に感染したデバイス上のウォーム(親ウォーム)は、別のデバイス上で自己複製することがあり(子ウォーム)、次にまた別のデバイスに・・・等々である。親ウォームが別のデバイス上で自己複製して子ウォームを生成した後、親ウォームは一般に子ウォームとの通信チャネルを保持することはない。したがって、親ウォームと子ウォームはデータを転送するために互いに通信することはできない。ネットワークを介してデータを転送するために、ウォーム、またはその他の自己複製コード、またはソフトウエアをポジティブな意味で利用することが望ましい場合がある。
本発明は、通信ネットワークにおいて、自己複製コードを利用してノード間でのデータ転送を行うことによって、上記およびその他の課題を解決する。通信ネットワークのノードは、最初はデータ転送用に必要なコードを有していない。本発明の自己複製コードは、ノード間の通信チャネルを保持しつつ、通信ネットワークのノード上で自己複製する。したがって、これらのノードは通信チャネルを介して相互間でデータを転送することができる。
本発明の有益な効果として、ネットワーク担当者は、自己複製コードを利用することにより、ネットワークの帯域幅の不足を生じさせることなく通信ネットワーク上の複数のノードにデータを効率的に転送することができる。また、ネットワーク担当者は、データ転送を促進するために通信ネットワーク上のノードにコードを事前インストールする必要がない。自己複製コードは、データ転送を促進するためにノード上で自己生成することができる。さらに、ノード上のコードはノード間の通信チャネルを保持するため、ネットワーク担当者は、ノードが制御情報および状態情報を制御ノードと交換する際に、リアルタイムでデータ転送の状態をモニターできる。
本発明の一実施例は、通信ネットワーク内でデータを転送する方法を含むものである。この方法によれば、通信ネットワークの第1ノードは第1コードを実行して、第2ノードとの通信チャネルを確立する。第1ノードはさらに第1コードを実行して、自己複製して第2コードを生成し、通信チャネルを介して第2コードを第2ノードに提供する。第2ノードは第2コードを実行して、第3ノードとの通信チャネルを確立する。第2ノードはさらに第2コードを実行して、自己複製して第3コードを生成し、通信チャネルを介して第3コードを第3ノードに提供する。この方法は、通信チャネルを確立するステップと、通信ネットワーク内の複数の他のノードにコードを提供するステップを含んでいるものである。
第1ノードと第2ノードとの間で通信チャネルが確立され、保持されると、第2ノードは通信チャネルを介して第1ノードからデータを受信する。このデータとは、通信ネットワーク上での転送をターゲットとした何らかの情報、ソフトウエア、命令などを含んでいるものである。第2ノードはデータを処理するために第2コードを実行してもよい。第2ノードと第3ノードとの間で通信チャネルが確立され、保持されると、第3ノードは通信チャネルを介して第2ノードからデータを受信する。第3ノードはデータを処理するために第3コードを実行してもよい。ノード間でのデータ転送やデータ処理を行う上記の方法によって、通信ネットワークにおける他のノードは同様に動作するものとする。
本発明は、以下に記載する全ての実施例を含むものである。
同一の参照番号は、全ての図面で同一の要素を示すものとする。
図1、図2A〜図2B、図3A〜図3D、図4〜図6、および以下の説明は当業者に対して、本発明の最良の形態をいかに構成し、利用するかを教示するために本発明の特定の実施例を示すものである。本発明の原理を教示する目的で、本発明の幾つかの従来の態様は簡略化、または省略されている。当業者は本発明の範囲に含まれる上記実施形態からのバリエーションを理解するものとする。当業者は下記の特徴を様々な態様で組み合わせて、本発明の複数のバリエーションを形成できることを理解するものとする。その結果として、本発明は、下記の特定の実施形態に限定されるものではなく、特許請求の範囲内において、種々のバリエーションによる形態に適用可能である。
通信ネットワークの構造および動作−図1、図2A〜図2B、図3A〜図3D
図1は、本発明の実施例の通信ネットワーク100を示している。通信ネットワーク100はネットワーク機構110を介して互いに通信可能な複数のノード101〜104を含んでいる。ネットワーク機構110はLAN、MAN、WAN等であり、また、その他の種類のネットワークを含んでいてもよい。ノードは、例えばコンピュータのように、通信ネットワーク100に接続するための何らかのシステム、デバイス、構成部品、カード等から成るものである。通信ネットワーク100は、図1には図示されていない他のノード、構成部品、デバイス、またはシステムを含んでいてもよい。
図2Aは、本発明の実施例で通信ネットワーク100のノード101〜104間でデータを転送するための通信ネットワーク100の動作方法200を示すフローチャートである。方法200を説明するために、ノード101〜104はそれぞれ第1、第2、第3、および第4のノードと呼ぶものとする。さらに、第1ノード101は第1コードを含み、第2ノード102および第3ノード103は第1コードに類似または対応するコードを含んでいないものとする。
方法200のステップ202において、第1ノード101は第1コードを実行して第2ノード102との通信チャネルを確立する。このコードとは、例えば、機械言語命令、(コンパイルされた、またはコンパイルされない)プログラミング言語命令、翻訳言語命令などのような、プロセッサによって実行可能な全ての命令を含んでいる。ステップ204において、第1ノード101は、第1コードを実行することにより自己複製して第2コードを生成し、通信チャネルを介して第2コードを第2ノード102に提供する。第1コードが自己「複製」して第2コードを生成するが、第2コードは、第1コードのコピーまたは複製、第1コードのコピーまたは複製と実質的に同様なもの、または第1コードの部分集合または派生物である。第1ノードは、上記以外のノードとの通信チャネルを確立し、そのノードにコードを提供するためにステップ202および204を複数回実行することとしてもよい。
ステップ206において、第2ノード102は、第2コードを実行することにより第3ノード103との通信チャネルを確立する。第1ノード101と第2ノード102との間の通信チャネルは、第2ノード102と第3ノード103との間の通信チャネルに対応するものでもよく、または別個のものでもよい。ステップ208において、第2ノード102は、第2コードを実行することにより自己複製して第3コードを生成し、通信チャネルを介して第3コードを第3ノード103に提供する。第2ノードはステップ“A”として示されているように、上記以外のノードとの通信チャネルを確立し、そのノードにコードを提供するためにステップ206および208を複数回実行してもよい。
第1ノード101と第2ノード102との間で通信チャネルが確立されて保持されると、ステップ210において、第2ノード102は通信チャネルを介して第1ノード101からデータを受信する。このデータとは、通信ネットワーク上での転送をターゲットとした何らかの情報、ソフトウエア、命令などを含んでいるものである。また、第2ノード102は、通信チャネルを介して第1ノード101から制御情報を受信する。この制御情報とは、通信ネットワーク上のノードによって利用されるものであるが、全ての操作情報、運用情報、管理情報を含むものである。これらデータの受信に応答して、ステップ212において、第2ノード102はデータを処理するために第2コードを実行する。このデータ処理は、上記データに基づいて実行するローカル・プロセスを1つ以上含んでいてもよい。
例えば、第2コードは、第2ノード102に基づいてローカルに実行するペイロード・プロセスを含んでいてもよい。第2ノード102がデータを受信すると、第2ノードは、データを複製し、複製されたデータをローカルのペイロード・プロセスに送ってもよい。次に、第2ノード102は、複製されたデータを受信し、この複製されたデータに対してローカルな処理を行うペイロード・プロセスを実行する。このペイロード・プロセスは、特定のディレクトリにデータを格納し、若しくはデータ処理を行うものである。
第2ノード102と第3ノード103との間で通信チャネルが確立されて保持されると、ステップ214において、第3ノード103は通信チャネルを介して第2ノード102からデータを受信する。また、第3ノード102は、通信チャネルを介して第1ノード101から制御情報を受信する。データの受信に応答して、ステップ216において、第3ノード103はデータを処理するために第3コードを実行する。このデータ処理は、上記データに基づいて実行するローカル・プロセスを1つ以上含んでいてもよい。
方法200は、データを所望のノードへと転送するまでに、上記の手順で他のノードにデータを線形的に転送するステップをより多く含むとしてもよい。方法200は、データが通信ネットワーク100を介して線形的な経路で転送されることを示している。しかし、方法200は、図2Bに示されているように、線形的な転送に限定されるものではない。
図2Bは、方法200において用いられることとしてもよい付加的なステップを示したフローチャートである。ステップ218において、第2ノード102は、第3ノード103との通信チャネルを確立すること(図2Aのステップ206参照)に加えて、さらに第2コードを実行して第4ノード104との通信チャネルを確立する。ステップ220において、第2ノード102は、第2コードを実行することにより自己複製して第4コードを生成し、通信チャネルを介して第4コードを第4ノード104に提供する。第2ノード102と第4ノード104との間で通信チャネルが確立されて保持されると、ステップ222において、第4ノード104は通信チャネルを介して第2ノード102からデータを受信する。また、第4ノード104は通信チャネルを介して第1ノード101から制御情報を受信してもよい。第4ノード104は、このデータの受信に応答して、ステップ224においてデータを処理するために第4コードを実行する。このデータ処理は、上記データに基づいて実行するローカル・プロセスを1つ以上含んでいてもよい。
方法200は、データが所望のノードへと転送されるまで同様のステップを継続するものとする。
図3A〜3Dは、本発明の実施例の方法200によって、コードおよびデータが通信ネットワーク100を介して転送される方法を示している。図3Aは、通信ネットワーク100の第1、第2、および第3のノード101〜103を示している。ノード101は第1コード301を含み、ノード102〜103は第1コード301に類似または対応するコードを最初は含んでいないものとする。
ノード101は、コード301を実行してノード102との通信チャネル311を確立する(図3B参照)。また、ノード101は、コード301を実行することにより自己複製して第2コード302を生成し、通信チャネル311を介してコード302をノード102に提供する。ノード101は、図3Bには示されていない複数のノードに対する操作を実行してもよい。
ノード102は、コード302を実行してノード103との通信チャネル312を確立する(図3C参照)。通信チャネル312は、通信チャネル311と同様の通信チャネルから成るものである。さらに、ノード102は、コード302を実行することにより自己複製して第3コード303を生成し、通信チャネル312を介してコード303をノード103に提供する。ノード102は図3Cには示されていない複数のノードに対する操作を実行してもよい。
また、ノード102は、コード302を実行してノード104との通信チャネル313を確立することとしてもよい(図3D参照)。通信チャネル313は、通信チャネル311〜312と同様の通信チャネルから成るものである。さらに、ノード102は、コード302を実行することにより自己複製して第4コード304を生成し、通信チャネル313を介してコード304をノード104に提供する。
通信チャネル311が確立されて保持されると、ノード102は、通信チャネル311を介してデータ321をノード101から受信する(図3D参照)。このデータとは、通信ネットワーク上での転送をターゲットとした何らかの情報、ソフトウエア、命令などを含んでいるものである。そして、ノード102は、データ321の受信に応答して、コード303を実行することによりデータ321を処理する。例えば、ノード102は、コード302を実行することにより、データ321に基づいたローカル・プロセスを1つ以上実行することとなる。
通信チャネル312が確立されて維持されると、ノード103は、通信チャネル312を介してノード102からデータ321を受信する。そして、ノード103は、データ321の受信に応答して、コード303を実行することによりデータ321を処理する。例えば、ノード103は、コード303を実行することにより、データ321に基づいたローカル・プロセスを1つ以上実行することとなる。
通信チャネル313が確立されて維持されると、ノード104は、通信チャネル313を介してノード102からデータ321を受信する。そして、ノード104は、データ321の受信に応答して、コード304を実行することによりデータ321を処理する。例えば、ノード104は、コード304を実行することにより、データ321に基づいたローカル・プロセスを1つ以上実行することとなる。
上記に記載した方法200の有益な効果としては、ネットワーク担当者が、本実施形態に記載されているような自己複製コードを利用することにより、ネットワーク100の帯域幅の不足を生じさせることなく、通信ネットワーク100上の複数のノード101〜104への効率的なデータの転送が実現することである。また、ネットワーク担当者は、データ転送を促進するために通信ネットワーク100上のノード102〜104にコードを事前インストールする必要がない。自己複製コードは、データ転送を促進するためにネットワーク100上のノード102〜104において自己生成することができる。
通信ネットワーク−図4〜6
図4は、本発明の実施例の通信ネットワーク400を示している。通信ネットワーク400は、LAN410を介して互いに通信可能な複数のノード401〜409を含んでいる。LAN410は、LAN410からノード401〜409へのアクセスがファイアウオールまたはその他の保護機能によってブロックされないが、信頼性がある何らかの種類のネットワークをから成っているものとする。その他の実施形態として、LAN410は、イントラネット、MAN、WAN、または、これら以外の種類の企業ネットワークから成ることとしてもよい。このノードとは、例えばコンピュータのように、通信ネットワーク400に接続するための何らかのシステム、デバイス、構成部品、カード等から成るものである。ノード401〜409は、互いに距離が離れており、LAN410を介して互いに通信していることを示している。通信ネットワーク400は、図4には示されていないその他のノード、構成部品、デバイス、またはシステムを含むこととしてもよい。
ノード401は、ネットワーク担当者によって操作される制御ノードであるものとする。さらに、ネットワーク担当者が、通信ネットワーク400に接続されている全てのノード402〜409に大量のデータ・ストリームを転送しようとしているものとする。例えば、ノード402〜409に大量のデータ・ストリームを含む新たなソフトウエアをインストールする必要がある場合がある。ネットワーク担当者が、各デバイスに個々にソフトウエアをインストールするのは非効率的である。もし、ネットワーク担当者が、大量のデータ・ストリームとしてデータを複数のノード402〜409に同時に転送してしまった場合には、LAN410の帯域幅の不足を生じさせる可能性がある。ネットワーク担当者は、本発明による自己複製コードを利用することにより、LAN410の帯域幅の不足を生じさせることなく、ソフトウエアをノード402〜409へ効率的に転送することができる。
本実施形態では、自己複製コードをストリーミング・ウォームというものとする。ストリーミング・ウォーム(スウォーム(sworm))は、大量の任意ペイロード・コードと同様に、通信ネットワークに接続されているノード間をデータが流れている間に、あるノード群において自己複製可能である何らかのソフトウエア、コード、または命令を含むものである。各スウォームは、様々なトポロジーに配列可能な1つ以上のスウォームレット(swormlet)から構成されている。スウォームとは、何れのノードを含めるかなど、データ・ストリームの転送を制御する発信プロセスによって生成される。
各スウォームレットはスウォームレット・コード、ペイロード・コード、およびデータ・ストリームを含んでいる。スウォームレット・コードは、ノードで新たなスウォームレットを生成する際や、ノード間のデータ・ストリーム転送を保持する際などに利用されるコードを含んでいる。ペイロード・コードは、ノードでローカルに実行されるコードを含んでいる。データ・ストリームは、通信ネットワーク400上で転送されるデータを含んでいる。
ノード401は、スウォームを発信する発信プロセス(図示せず)を含むものとする。ネットワーク担当者は、大量のデータ・ストリーム(すなわちソフトウエア)をネットワーク400の多くのノードに転送しようとするため、その場合には、線形的なスウォームが最も効率的なトポロジーである。線形的なスウォームは、LAN410の帯域幅がスウォームのスウォームレット間で分割される必要がないので最良に動作し得る。以下に示すように、線形的なスウォームを利用すれば、LAN410を介して一度に転送される必要があるのは、大量のデータ・ストリームのコピー1つのみとなる。
図5は、本発明の実施例の線形スウォーム・トポロジー(linear sworm topology)を示している。線形スウォーム・トポロジーを形成するには、以下に示すように行われる。ノード401における発信プロセス501は、スウォームレット502(図5において、S−LETと表記されている。)を生成する。特に、発信プロセス501は、ノード401のネットワーキング・プロセス521を起動する。ノード401において、ネットワーキング・プロセス521を実行することにより、遠隔の終端ノードとの通信チャネルを確立し、遠隔ノードへの、あるいは遠隔ノードからのプログラム・コード、制御情報、およびデータ・ストリーム用のコンジット(conduit)として機能するように構成される。したがって、ノード401において、ネットワーキング・プロセス521を実行することにより、ノード402との通信チャネルが確立される。次に、矢印525で示されているように、発信プロセス501は、この通信チャネルを介してスウォームレット・コードのコピーを転送するコンジットとしてネットワーキング・プロセス521を利用する。
ネットワーキング・プロセス521は、例えば、remshあるいはrsh(Remote Shell)、またはssh(Secure Shell)のようなリモート・シェル・コマンド(remote shell command)を用いて、ノード402にスウォームレット・コードのコピーを転送する。また、ネットワーキング・プロセス521は、リモート・シェル・コマンドを利用することにより、通信チャネルを介してノード401からスウォームレット・コードを出力するインラインのPerl起動スクリプトを転送して、遠隔よりノード402において実行させる。本実施形態では、各ノードに存在するスウォームレット502が2つのノードをつないでいる。
ノード402は、スウォームレット・コードを実行して、主スウォームレット・プロセス522、ルーティング・プロセス523、およびスウォームレット502用のペイロード・プロセス524を実行する。矢印526で示されるように、主スウォームレット・プロセス522は、通信チャネルを介して発信プロセス501からペイロード・コードを受信する。主スウォームレット・プロセス522は、ペイロード・コードを複製し、このペイロード・コードのコピーをペイロード・プロセス524へと伝送する。後述するように、主スウォームレット・プロセス522は、(必要ならば)別のスウォームレットにペイロード・コードを伝送する。主スウォームレット・プロセス522は、ペイロード・プロセス524を起動することにより、ペイロード・コードを実行する。
線形のスウォーム・トポロジーを形成するため、主スウォームレット・プロセス522はスウォームレット503を生成する。その他の実施形態として、主スウォームレット・プロセス522は、上記以外のスウォームレットを生成することとしてもよい。主スウォームレット・プロセス522は、スウォームレット503を生成する際に、ノード402においてネットワーキング・プロセス531を起動する。ノード402において、ネットワーキング・プロセス531を実行することにより、ノード403との通信チャネルが確立される。矢印535によって示されているように、スウォームレット502は、ネットワーキング・プロセス531をコンジットとして利用することにより、通信チャネルを介してスウォームレット・コードのコピーを転送する。
ノード403は、スウォームレット・コードを実行することにより、主スウォームレット・プロセス532、ルーティング・プロセス533、およびスウォームレット503用のペイロード・プロセス534を実行する。矢印536で示されているように、スウォームレット503の主スウォームレット・プロセス532は、通信チャネルを介してスウォームレット502の主スウォームレット・プロセス522からペイロード・コードを受信する。主スウォームレット・プロセス532は、ペイロード・コードを複製し、ペイロード・コードのコピーをペイロード・プロセス534に伝送する。後述するように、主スウォームレット・プロセス532は(必要ならば)別のスウォームレットにペイロード・コードを伝送する。主スウォームレット・プロセス532は、ペイロード・プロセス534を起動することにより、ペイロード・コードを実行する。
これらのスウォームレットは、発信プロセス501の指示通りに、通信ネットワーク400上のノード401〜409を介して生成される(図4参照)。一旦、スウォームレットが生成されて、通信チャネルがノード401〜409間で確立されると、データ・ストリームがノード401〜409間で伝送されることとなる。
発信プロセス501は、データ・ストリームをスウォームレット502に転送する。本実施形態におけるデータ・ストリームは、大量のデータ・ストリームであるソフトウエアである。主スウォームレット・プロセス522は、スウォームレット502においてルーティング・プロセス523を起動する。矢印527で示されるように、スウォームレット502におけるルーティング・プロセス523は、通信チャネルを介して発信プロセス501からデータ・ストリームを受信する。ルーティング・プロセス523は、データ・ストリームを複製し、データ・ストリームのコピーをペイロード・プロセス524に伝送する。ルーティング・プロセス523は、(必要ならば)発信プロセス501によってアドレス指定または特定されたとおりにデータ・ストリームを別のスウォームレットに伝送する。ペイロード・プロセス524は、ルーティング・プロセス523からデータ・ストリームのコピーを受信する。ペイロード・プロセス524は、ペイロード・コードを実行することにより、データ・ストリームをローカルに処理する。例えば、ペイロード・コードが、ペイロード・プロセス524に対して、ノード402における周知のディレクトリにデータ・ストリームを格納するように命令することとしてもよい。
ルーティング・プロセス523は、発信プロセス501から制御命令を受信する。ルーティング・プロセス523は、ペイロード・プロセス524に対する制御命令を実行する。また、ルーティング・プロセス523は、(必要ならば)他のスウォームレットまたはノードに制御命令を伝送してもよい。
ペイロード・プロセス524は、ペイロード・コードを実行する際に、出力データを生成する。ペイロード・プロセス524は、主スウォームレット・プロセス522に出力データを伝送する。主スウォームレット・プロセス522は、ペイロード・プロセス524から出力データを、および/または任意のプロセスから状態情報を受信する。矢印528で示されているように、主スウォームレット・プロセス522は、ペイロード・プロセス524および子スウォームレットからの出力データおよび/または状態情報を多重化し、通信チャネルを介して出力データおよび/または状態情報を伝送する。この状態情報は、ノード402における大量のデータ・ストリームの格納に成功したことに対するフィードバックを含んでいる。ネットワーキング・プロセス521は、ノード401と402との間で出力データおよび/または状態情報を交換するため、このノード間の通信チャネルを保持する。
スウォームレット503における主スウォームレット・プロセス523は、ルーティング・プロセス533を起動する。矢印537で示されているように、スウォームレット503におけるルーティング・プロセス533は、スウォームレット502におけるルーティング・プロセス523から通信チャネルを介してデータ・ストリーム(すなわち、本実施形態におけるソフトウエア)を受信する。ルーティング・プロセス533は、データ・ストリームを複製して、データ・ストリームのコピーをペイロード・プロセス534に伝送する。ルーティング・プロセス523は(必要ならば)発信プロセス501によってアドレス指定または特定されたとおりにデータ・ストリームを別のスウォームレットに伝送する。ペイロード・プロセス534は、ルーティング・プロセス533からデータ・ストリームのコピーを受信する。ペイロード・プロセス534は、ペイロード・コードを実行することにより、データ・ストリームをローカルに処理する。例えば、ペイロード・コードは、ペイロード・プロセス534に対して、ノード403における周知のディレクトリにデータ・ストリームを格納するように命令することとしてもよい。
発信プロセス501は、ネットワーク構成図(map)、1組の命令群(set of instructions)、アドレス指定方式(addressing scheme)などに基づいて、何れのノードが、また如何なる順序でデータ・ストリームを受信するべきかを指定することとしてもよい。発信プロセス501は、1つ以上のスウォームレット502〜504を指定して、または全てのスウォームレット502〜504にブロードキャストでデータ・ストリームを送信することとしてもよい。発信プロセス501の指示に基づいて、ルーティング・プロセス533は、データ・ストリームを次のノードに伝送し、またはデータ・ストリームを次のノード、または付加的な他の子ノードに伝送する準備を行うこととしてもよい。
また、ルーティング・プロセス533は、ルーティング・プロセス523から制御命令を受信する。ルーティング・プロセス533は、ペイロード・プロセス534に対する制御命令を実行する。また、ルーティング・プロセス533は、(必要ならば)制御命令を他のスウォームレットに伝送することとしてもよい。
ペイロード・プロセス534は、ペイロード・コードを実行する際に出力データを生成する。ペイロード・プロセス534は、この出力データを主スウォームレット・プロセス522に伝送する。主スウォームレット・プロセス532は、ペイロード・プロセス534から出力データを、および/またはいずれかのプロセスから状態情報を受信する。主スウォームレット・プロセス532はペイロード・プロセス534および子スウォームレットからの出力データおよび/または状態情報を多重化し、矢印538で示されているように、通信チャネルを介して出力データおよび/または状態情報を伝送する。この状態情報は、ノード403における大量のデータ・ストリームの格納に成功したことに対するフィードバックを含んでいてもよい。ネットワーキング・プロセス531は、ノード402と403との間で出力データおよび/または状態情報を交換するため、このノード間の通信チャネルを保持する。
このデータ・ストリームは、発信プロセス501の指示通りに、通信ネットワーク400のノード404〜409を介して転送される(図4参照)。本実施例において、データ・ストリームはソフトウエアであるため、ネットワーク担当者は、このソフトウエアを各ノード402〜409にインストールすることができる。これらのスウォームレットは、データ・ストリームの転送後に分解され、または他のデータ・ストリームを転送するために利用される。
上記のプロセスによって、図4の通信ネットワーク400上のノード402〜409にデータ・ストリームを転送することで多くの利点が得られる。第1の利点として、ノード402〜409は、データ・ストリームを受信するための特別のコードを最初に有している必要がない。スウォームレットは、ノード402〜409において自己複製することにより、必要なコードを提供する。次に、これらのノードは、並行してコードを実行することにより、より効率的にデータ・ストリームを転送する。第2の利点として、ネットワーク担当者は、転送状態に関するフィードバックを得ることができる。各スウォームレットは、ノード間の通信チャネルを保持して、状態情報を発信プロセス501に返送する。したがって、ネットワーク担当者は、状態情報を見てデータ・ストリーム転送の状態を判断することができる。第3の利点として、データ・ストリーム伝送によって、LAN410の帯域幅の不足を生じさせることはほぼない。最終ノードに達するまで、これらのノードは、1つのデータ・ストリームのコピーをブロックごとにノードからノードへと転送するため、線形的なトポロジーにおいて、LAN410に同時に存在するデータ・ストリームのコピーは1つのみとなる。
現在各ノード402〜409が以前に転送されたソフトウエアのコピーを含んでいるとするならば、ネットワーク担当者は、ノード402〜409にそのソフトウエアを遠隔操作によりインストールすることを求める場合がある。ネットワーク担当者は、そのソフトウエアをインストールするための命令を含むデータ・ストリームを転送するまで、リモート・インストールを行うために別のスウォームを利用してもよい。データ・ストリームは、特にそのソフトウエア本体と比較すると、データサイズが大きいということはほぼない。したがって、通信ネットワーク400において、より小さいデータ・ストリームを転送するには、線形的なスウォームは伝播遅延が長すぎるため、最も効率的なトポロジーとはならない。より小さいデータ・ストリームを転送する場合には、ツリー型のスウォームがより良いトポロジーとなる。
図6は、本発明の実施例のツリー型スウォーム・トポロジー(tree sworm topology)を示している。ツリー型スウォーム・トポロジーの形成は、以下に示すように行われる。ノード401における発信プロセス501は、スウォームレット602(図6において、s−letと表記されている。)を生成する。スウォームレット602は、2つのノード401と402とをつなぐため、ノード402間の通信チャネルを確立する。スウォームレット602は、簡潔にするために本実施形態では図示されていない、ネットワーキング・プロセスや、主スウォームレット・プロセスや、ルーティング・プロセスや、ペイロード・プロセスを含むものとする。
発信プロセス501によって提供されたリストに基づいて、スウォームレット602は、スウォームレット603と604とを生成する。ノード402において動作するスウォームレット603は、2つのノード402と403とをつなぐため、ノード403との通信チャネルを確立する。スウォームレット603は、スウォームレット605〜606を生成する。ノード403において動作するスウォームレット605は、2つのノード403と405とをつなぐため、ノード405との通信チャネルを確立する。ノード403において動作するスウォームレット606は、2つのノード403と406とをつなぐため、ノード406との通信チャネルを確立する。ノード402において動作するスウォームレット604は、スウォームレット607〜608を生成する。ノード404において動作するスウォームレット607は、2つのノード404と407とをつなぐため、ノード407との通信チャネルを確立する。ノード404において動作するスウォームレット608は、2つのノード404と408とをつなぐため、ノード408との通信チャネルを確立する。これらのスウォームレットは、図6に図示しない複数の他のノードに生成されることとしてもよい。
通信チャネルが確立されると、矢印625で示されているように、発信プロセス501は、データ・ストリームのコピーをスウォームレット602に転送する。本実施形態において、データ・ストリームは、ノードにソフトウエアをインストールするための1組の命令群を含んでいる。スウォームレット602は、矢印626で示されているように、データ・ストリームのコピーをスウォームレット603に伝送し、矢印627で示されているように、データ・ストリームのコピーをスウォームレット604に伝送する。スウォームレット603は、矢印628で示されているように、データ・ストリームのコピーをスウォームレット605に伝送し、矢印629で示されているように、データ・ストリームのコピーをスウォームレット606に伝送する。スウォームレット604は、矢印630で示されているように、データ・ストリームのコピーをスウォームレット607に伝送し、矢印631で示されているように、データ・ストリームのコピーをスウォームレット608に伝送する。
これらのスウォームレットは、データ・ストリームを受信するように発信プロセス501によって命令された各ノードに、データ・ストリームを伝送する。図6は、データを転送するためのバイナリ・ツリー型トポロジー(binary tree topology)を示している。しかし、非対象のツリー型トポロジーが利用されることとしてもよい。
複数のスウォームレット602〜608は、並行にデータ・ストリームを送ることにより、さらに効率的にデータ・ストリームを転送する。上記のようにデータ・ストリームを転送することによって、各ノードに迅速かつ効率よくデータ・ストリームが提供される。本実施形態のデータ・ストリームは、ソフトウエアをインストールするための命令を含んでいる。したがって、ネットワーク担当者は、複数のノードに迅速かつ効率的にソフトウエアをインストールするための命令を転送することによって、ソフトウエアを各ノードにインストールすることができる。
図6において、発信プロセス501は、スウォーム用の発信プロセスとしてのみ機能する。その他の実施形態として、スウォームレット602〜608のうちの何れかのペイロード・プロセスが、別に新しくかつ独立したスウォーム用の発信プロセスとして機能することとしてもよい。したがって、複雑なツリー型のスウォーム群が再帰的な方法で構成されることとなる。
本発明の実施例の通信ネットワークを示す略図である。 本発明の実施例の通信ネットワークのノード間でデータを転送するための、図1の通信ネットワークの動作方法を示すフローチャートである。 本発明の実施例の通信ネットワークのノード間でデータを転送するための、図1の通信ネットワークの動作方法を示すフローチャートである。 本発明の実施例の図2A〜2Bによる、図1の通信ネットワークでコードおよびデータを転送する方法を示す略図である。 本発明の実施例の図2A〜2Bによる、図1の通信ネットワークでコードおよびデータを転送する方法を示す略図である。 本発明の実施例の図2A〜2Bによる、図1の通信ネットワークでコードおよびデータを転送する方法を示す略図である。 本発明の実施例の図2A〜2Bによる、図1の通信ネットワークでコードおよびデータを転送する方法を示す略図である。 本発明の別の実施例の通信ネットワークを示す略図である。 本発明の実施例の線形スウォーム・トポロジーを示す略図である。 本発明の実施形態の木構造のスウォームのトポロジーを示す略図である。

Claims (10)

  1. 第1コードを含む第1ノード(101)を備える通信ネットワークのノード(101〜104)間でデータを転送するための通信ネットワーク(100)の動作方法(200)であって、
    前記第1ノードにおいて、前記第1コードを実行して(202、204)第2ノード(102)との第1通信チャネルを確立し、当該第1コードを複製して第2コードを生成し、当該第2コードを前記第1通信チャネルを介して前記第2ノードに提供するステップと、
    前記第2ノードにおいて、前記第2コードを実行して(206、208)第3ノード(103)との第2通信チャネルを確立し、当該第2コードを複製して第3コードを生成し、当該第3コードを前記第2通信チャネルを介して前記第3ノードに提供するステップと、
    前記第2ノードにおいて、前記第1通信チャネルを介して前記第1ノードから第1データを受信し(210)、前記第2コードを実行すること(212)により、当該第1データを処理するステップと、
    前記第3ノードにおいて、前記第2通信チャネルを介して前記第2ノードから前記第1データを受信し(214)、前記第3コードを実行すること(216)により、当該第1データを処理するステップと、
    を含むことを特徴とする動作方法(200)。
  2. 請求項1に記載の方法(200)であって、
    前記第2ノードにおいて、前記第2コードを実行すること(218、220)により、第4ノード(104)との第3通信チャネルを確立し、前記第2コードを複製して第4コードを生成し、当該該第4コードを前記第3通信チャネルを介して前記第4ノードに提供するステップと、
    前記第4ノードにおいて、前記第3通信チャネルを介して前記第2ノードから前記第1データを受信し(222)、前記第4コードを実行すること(224)により、当該第1データを処理するステップと、
    をさらに含む動作方法(200)。
  3. 請求項1に記載の動作方法(200)であって、
    前記第2ノードにおいて前記第2コードを実行することにより前記第1データを処理するステップを含んでおり、
    前記第2ノードにおいて、前記第2コードを実行することにより、前記第1ノードから受信した前記第1データを複製し、当該複製データをペイロード・プロセスへと送るステップと、
    前記第2ノードにおいて、前記ペイロード・プロセスを実行することにより、前記複製データをローカルに処理して出力データを生成するステップと、
    をさらに含む動作方法(200)。
  4. 請求項3に記載の動作方法(200)であって、
    前記第2ノードにおいて、前記第2コードを実行することにより、前記第1通信チャネルを介し、前記出力データと状態情報とを多重化して前記第1ノードに伝送するステップと、
    をさらに含む動作方法(200)。
  5. 請求項1に記載の動作方法(200)であって、
    前記第2ノードにおいて、前記第1通信チャネルを介して前記第1ノードから制御情報を受信するステップと、
    前記第2ノードにおいて、前記第1データを処理するために前記制御情報を利用するステップと、
    前記第2ノードにおいて、前記第2通信チャネルを介して前記第1データおよび前記制御情報を前記第3ノードに送るステップと、
    をさらに含む動作方法(200)。
  6. 通信ネットワークのノード(101〜104)間でデータを転送するための通信ネットワーク(100)であって、
    第1ノード(101)と、
    第2ノード(102)と、
    ネットワーク機構(110)によって結合された第3ノード(103)と、を備え、
    前記第1ノードは、第1コードの実行に応答して前記第2ノードとの第1通信チャネルを確立し、当該第1コードを複製して第2コードを生成し、当該第1通信チャネルを介して当該第2コードを前記第2ノードに提供し、
    前記第2ノードは、前記第2コードの実行に応答して前記第3ノードとの第2通信チャネルを確立し、前記第2コードを複製して第3コードを生成し、当該第2通信チャネルを介して当該第3コードを前記第3ノードに提供し、
    前記第2ノードは、前記第1通信チャネルを介して前記第1ノードから第1データを受信し、当該第1データを処理するために前記第2コードを実行し、
    前記第3ノードは、通信チャネルを介して前記第2ノードから前記第1データを受信し、当該第1データを処理するために前記第3コードを実行する、
    ことを特徴とする通信ネットワーク(100)。
  7. 請求項6に記載の通信ネットワーク(100)であって、
    第4ノード(104)をさらに備え、
    前記第2ノードは、前記第2コードの実行に応答して前記第4ノードとの第3通信チャネルを確立し、前記第2コードを複製して第4コードを生成し、当該第3通信チャネルを介して当該第4コードを前記第4ノードに提供し、
    前記第4ノードは、前記第3通信チャネルを介して前記第2ノードから前記第1データを受信し、当該第1データを処理するために前記第4コードを実行する
    ことを特徴とする通信ネットワーク(100)。
  8. 請求項6に記載の通信ネットワーク(100)であって、
    前記第2ノードは、
    前記第1通信チャネルを介して前記第1データを前記第1ノードから受信し、当該第1データを複製して、当該複製データを前記第2ノードのペイロード・プロセスへと送り、当該ペイロード・プロセスを実行することにより前記複製データをローカルに処理して出力データを生成する、
    ことを特徴とする通信ネットワーク(100)。
  9. 請求項8に記載の通信ネットワーク(100)であって、
    前記第2ノードは、前記第2コードの実行に応答して、前記第1通信チャネルを介し、前記出力データと状態情報とを多重化して前記第1ノードに伝送することを特徴とする通信ネットワーク(100)。
  10. 請求項6に記載の通信ネットワーク(100)であって、
    前記第2ノードは、前記第1通信チャネルを介して前記第1ノードから制御情報を受信し、当該制御情報を利用して前記第1データを処理し、前記第1データおよび前記制御情報を前記第1通信チャネルを介して前記第3ノードに送ることを特徴とする通信ネットワーク(100)。
JP2005049886A 2004-02-25 2005-02-25 自己複製コードを利用した通信ネットワークのノード間データ転送 Expired - Fee Related JP4602791B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/786,911 US7474656B2 (en) 2004-02-25 2004-02-25 Data transfer to nodes of a communication network using self-replicating code

Publications (2)

Publication Number Publication Date
JP2005244985A true JP2005244985A (ja) 2005-09-08
JP4602791B2 JP4602791B2 (ja) 2010-12-22

Family

ID=34750499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005049886A Expired - Fee Related JP4602791B2 (ja) 2004-02-25 2005-02-25 自己複製コードを利用した通信ネットワークのノード間データ転送

Country Status (6)

Country Link
US (2) US7474656B2 (ja)
EP (1) EP1569113B1 (ja)
JP (1) JP4602791B2 (ja)
KR (1) KR101110584B1 (ja)
CN (1) CN100527693C (ja)
DE (1) DE602005000044T2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100287623A1 (en) * 2005-11-23 2010-11-11 Thomas Banik Method for distributing a computer data structure to nodes of a network
US7698440B2 (en) * 2006-10-02 2010-04-13 Phonak Ag Method for controlling a transmission system as well as a transmission system
CN104348868A (zh) * 2013-08-02 2015-02-11 华为技术有限公司 节点安装处理方法、装置和系统
US11349557B2 (en) * 2018-11-30 2022-05-31 At&T Intellectual Property I, L.P. System model and architecture for mobile integrated access and backhaul in advanced networks

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002164938A (ja) * 2000-09-12 2002-06-07 Nippon Telegr & Teleph Corp <Ntt> 分散型サービス不能攻撃の防止方法および装置ならびにそのコンピュータプログラム
US6782398B1 (en) * 2000-06-14 2004-08-24 Microsoft Corporation Method for executing commands on multiple computers of a network

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9412553D0 (en) * 1994-06-22 1994-08-10 At & T Global Solutions Intern Method and apparatus for distributing software
US6233601B1 (en) * 1996-11-14 2001-05-15 Mitsubishi Electric Research Laboratories, Inc. Itinerary based agent mobility including mobility of executable code
JPH10171660A (ja) 1996-12-13 1998-06-26 Nec Corp データ通信装置
US7162538B1 (en) * 2000-10-04 2007-01-09 Intel Corporation Peer to peer software distribution system
JP2003044637A (ja) * 2001-08-01 2003-02-14 Hitachi Ltd ワークフロー・システム制御方法、および、ワークフロー・システムを実行するためのプログラム
US20030182398A1 (en) * 2002-02-14 2003-09-25 Morlang Keven P. Method of establishing a logical association between connections
EP1505797B1 (en) * 2003-08-04 2005-05-11 Alcatel A method, a communication network and a computer software product for distributing software packages or updates

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6782398B1 (en) * 2000-06-14 2004-08-24 Microsoft Corporation Method for executing commands on multiple computers of a network
JP2002164938A (ja) * 2000-09-12 2002-06-07 Nippon Telegr & Teleph Corp <Ntt> 分散型サービス不能攻撃の防止方法および装置ならびにそのコンピュータプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CSND200000267002, 小野木 渡、清水 亮博、大野 浩之, "ネットワークワームを利用したネットワーク管理手法", コンピュータソフトウェア VOL.16 NO.3, 19990517, p.29−46, 日本ソフトウェア科学会 *

Also Published As

Publication number Publication date
KR101110584B1 (ko) 2012-02-15
KR20060042975A (ko) 2006-05-15
EP1569113A1 (en) 2005-08-31
US7474656B2 (en) 2009-01-06
US20050204053A1 (en) 2005-09-15
JP4602791B2 (ja) 2010-12-22
US20050185662A1 (en) 2005-08-25
CN100527693C (zh) 2009-08-12
DE602005000044T2 (de) 2007-07-19
EP1569113B1 (en) 2006-07-19
CN1661979A (zh) 2005-08-31
DE602005000044D1 (de) 2006-08-31

Similar Documents

Publication Publication Date Title
Amir et al. An active service framework and its application to real-time multimedia transcoding
EP1703701B1 (en) APIs to build peer to peer messaging applications
US7543023B2 (en) Service support framework for peer to peer applications
US7912959B2 (en) Architecture for building a peer to peer messaging platform
US20150003296A1 (en) System and method for providing p2p based reconfigurable computing and structured data distribution
US20080059651A1 (en) Distribution of XML documents/messages to XML appliances/routers
CN104506513A (zh) 防火墙流表备份方法、防火墙及防火墙系统
JP4602791B2 (ja) 自己複製コードを利用した通信ネットワークのノード間データ転送
CN105099937A (zh) 一种pmtu的确定方法和设备
Vashishth et al. Addressing challenges in browser based P2P content sharing framework using WebRTC
Liebeherr et al. Programming overlay networks with overlay sockets
JP4404007B2 (ja) 通信方法、ネットワーク、および情報処理装置
Kostić et al. High-bandwidth data dissemination for large-scale distributed systems
Ostrowski et al. Extensible web services architecture for notification in large-scale systems
KR20010017359A (ko) 신뢰적 멀티캐스트를 위한 적응적 트리 기반 복구방법
Demoulin et al. TMC: Pay-as-you-go distributed communication
San Ting et al. A generic peer-to-peer network simulator
Dean et al. Client/server messaging protocols in serverless environments
Papan et al. New trends in fast reroute
Schwerdel et al. Composition of self descriptive protocols for future network architectures
JP2000295294A (ja) ネットワークシステム及びネットワーク制御方法、信号送受信装置
Ikeda et al. ALMware: A middleware for application layer multicast protocols
Aggarwal et al. Implementation of a P2P system within a network simulation framework
Demoulin et al. TMC: Tunable Multicast Communication
John et al. TMC: Pay-as-you-Go Distributed Communication

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100819

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

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131008

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees