JP4525961B2 - 動的なトポロジーを有する有機的なデータネットワーク - Google Patents

動的なトポロジーを有する有機的なデータネットワーク Download PDF

Info

Publication number
JP4525961B2
JP4525961B2 JP2002566938A JP2002566938A JP4525961B2 JP 4525961 B2 JP4525961 B2 JP 4525961B2 JP 2002566938 A JP2002566938 A JP 2002566938A JP 2002566938 A JP2002566938 A JP 2002566938A JP 4525961 B2 JP4525961 B2 JP 4525961B2
Authority
JP
Japan
Prior art keywords
data
node
connection
network
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.)
Expired - Fee Related
Application number
JP2002566938A
Other languages
English (en)
Other versions
JP2004531115A (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.)
Nonend Inventions NV
Original Assignee
Nonend Inventions NV
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=19772922&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP4525961(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Nonend Inventions NV filed Critical Nonend Inventions NV
Publication of JP2004531115A publication Critical patent/JP2004531115A/ja
Application granted granted Critical
Publication of JP4525961B2 publication Critical patent/JP4525961B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096766Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission
    • G08G1/096791Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission where the origin of the information is another vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/161Decentralised systems, e.g. inter-vehicle communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • 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
    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • 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 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Atmospheric Sciences (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、動的なトポロジーを有する有機的なネットワークを生成するかまたは維持するかのいずれかを行う装置、その方法、およびそのためのソフトウェアを備えたキャリアーに関する。
インターネット環境におけるサーバーを、メインサーバーを救済するために複製することが、例えば、米国特許第6,052,718号から公知である。しかし、これらの場合においては、サーバーソフトウェア全体とサーバーの全ファイルが複製される。まず、これは複製にとってあまりにも大きすぎる負担である。さらに、サーバーに情報を要求する所与のコンピューター(「クライアント」)は言うに及ばず、すべての所与のコンピューターがその目的に適しているわけではない。さらに、ルートまたは考えられる他のより近い(転送速度に関して)(複製)サーバーを知的に選択することによって、このような方法でクライアントにコンテンツの最適な転送速度を与えることはできない。
さらに、データパッケージに、該データパッケージのコンテンツまたは他のデータを受信コンピューター側で処理できるソフトウェア(Javaアプレット)を備えることが米国特許第5,944,783号から公知である。しかし、この場合、通信に問題はないが分散処理の問題がある。大規模な1つのタスクが、各エージェントがタスクの一部を実行して、共通のサーバーと連絡をとるいくつかのエージェント上に分割される。
さらに、複数ノードからなるネットワーク(「マルチキャストネットワーク」)が米国特許番号第5,511,167号から公知であるが、これらのノードは階層的システムの各部分になっている。ここでは、各ノードはセンターノードによって集中的に制御される。
オン シェホリ等(Onn Shehory et al.)によるエージェントモビリティおよびリソース割り当ての手法に関するエージェントクローニング(Agent Cloning:an Approach to Agent Mobility and Resource Allocation)、IEEEコミュニケーション誌1998年7月号(IEEE Communications Magazine,July1998)に、エージェントの過負荷が発生した場合に、リモートコンピューター上にそれ自身を複製できるエージェントを有するマルチエージェントシステムが記述されている。複製エージェントは階層的に元のエージェントより下層に配置される。これはオーバーヘッド構造を必要とする。エージェントはタスクを実行するために送り出されて、その発信源に報告している。
米国特許6,085,240号にエージェントシステムが記述されている。エージェント装置はオーバレイ構造によって管理されている。したがって、このシステムはオーバーヘッド構造を必要とする。
本発明の目的は、明示的または暗黙的に述べた欠点を少なくとも部分的に取り除くことにある。
この目的のために、本発明の装置は、
データ処理装置と、
データ処理装置を備えたいくつかの装置がデータ接続によって接続されたデータネットワークへの少なくとも1つのデータ接続と、
データネットワーク内の少なくとも1つの送信装置からデータパッケージを受信するための受信ルーチンと、前記データネットワーク内の1つまたは複数の前記送信装置から受信したデータパッケージを、1つまたは複数の送信装置に無関係に、データネットワークに接続された少なくとも1つの受信装置に送信するための送信ルーチンと、データネットワーク内の少なくとも1つの送信装置からのデータパッケージを要求するための要求ルーチンと、前記データネットワーク内の前記1つまたは複数の送信装置から受信したデータパッケージを少なくとも1つの受信装置に送信する、前記少なくとも1つの受信装置から要求を処理するための要求処理ルーチンと、追加の装置または他の送信装置のいずれかへの新たな接続の確立を所定の基準に基づいて判断するための判断ルーチンと、送信装置と受信装置のグループからなる装置に接続された装置のアドレスを問い合わせるための環境評価ルーチンとを含むソフトウェアと
を有し、
動作時、装置は、
少なくとも1つの送信装置にデータパッケージの少なくとも一部に対する要求を出し、
受信装置からのデータパッケージに対する要求に答えて、データパッケージの少なくとも一部を、前記装置上で利用可能なとき受信装置に送信する。
そのような装置を選択することによって、例えば、ネットワークで利用できるデータは、ネットワーク内のいかなる所与の装置も迅速にアクセスすることができるように、本発明による独立した装置が本発明による他の独立した装置にデータを提供できる有機的なデータネットワークを構築または生成することができる。
さらに、従来のネットワークおよびインターネットとは異なり、階層構造を有しないデータネットワークを構築することができる。つまり、サーバーが障害を起こすか過負荷になると、非常に多くのコンピューターがネットワークから離脱する。したがって、本発明による装置を使用して、非常に低い故障感度を有するネットワークを構築または維持することができる。
さらに、インターネットまたは他の同様に構成されたネットワークを介して、信頼性のある「ストリーミング」ビデオまたはオーディオ放送を開始することができる。
ついでに言うと、クライアント/サーバー技術を有する、または有しなくてもよい、いわゆるピアツーピアネットワークの多くの用途が知られている。
しかし、サーバーとクライアント間のデータ転送が本発明による装置においてのように行なわれる、動的なトポロジーを有する有機的なネットワークが、それらには記述されていない。すなわち、本発明による装置にしたがって、サーバーに基づいた制御がなくても、同一のピアは、ある時点では第2のピアをクライアントとして有するサーバーとして動作し、他の時点では、今度はサーバーとして動作する第2のピアのクライアントとして動作できる。2つの装置は自らの意思に基づいて役割を変える。
本発明において意味するコンテンツは、デジタル形式の音楽、デジタル形式の変換された画像、データベース情報、単純アスキデータのようなデータだけでなく、その他のすべての考えられるデータにも関している。これは、装置が要求したときに、できるだけ多くの装置に配信されなければならない情報である。例えば、インターネットに関しては、ストリーミングビデオまたはストリーミングオーディオが考えられる。この場合、データ接続の品質は特に重要である。すなわち、コンテンツは一般に、より小さなデータパッケージに分割されて、その後に送信される。ストリーミングオーディオまたはビデオアプリケーションの場合、データパッケージを送信している間の経路上の遅延は不規則な放送を引き起こすことになるので、いくつかのデータパッケージの順序は重要である。
まず第1に、本発明によるデータ処理装置は、デジタルデータ処理装置、すなわちALUを有するCPUである中央処理装置、いわゆるPCまたは他の同様なコンピューターから知られている演算装置に関する。より広義には、特に、内部処理の(電子)制御のために携帯電話および他の装置に搭載され得る処理装置が考えられる。
本発明で意味するところのデータ記憶装置は、一般に周知のコンピュータメモリー(RAM)のみならず、ハードディスクまたは他の動的なデータ記憶媒体であってもよい。
本発明によれば、データネットワークは、物理的にケーブル接続されたネットワークだけを意味しておらず、空中または光ケーブルを通して伝播する電磁波を使用する一連のデータ接続を有していてもよい。組合せも可能である。物理的にケーブル接続されたネットワークは、電流(電源電圧)を流すケーブル接続を使用するデータネットワークも有していてもよい。本願明細書においては、データネットワークは略してネットワークとも呼ばれる。
本願明細書において、まず物理的接続は、接続手段は例えば、ケーブル、光ケーブル、電気ケーブル、またはデータパッケージを電磁気の形態で送信できる、何らかの考えられる物理的接続を意味している。接続(データ接続と呼ばれることもある)とは、赤外線、そうでない場合は電波を介するような無線接続も意味している。
ソフトウェアは、ソフトウェアを送信装置に無関係に、データパッケージと一緒に送信するための送信ルーチンを備えていることが好ましい。このようにして、新しい装置をネットワークに素早く追加することが可能である。
1つの実施態様においては、ソフトウェアは、データネットワーク内の他の装置との接続をテストするためのテストルーチンを備えている。
さらに、本発明による装置の同一のまたは他の実施態様において、ソフトウェアは、終端へのネットワーク配列内の送信装置および受信装置以外の、データネットワーク装置内の受信装置にデータパッケージを送信するための送信ルーチンを備えている。
本発明の同一のまたは他の実施態様において、ソフトウェアは、データパッケージを処理すなわち再生の準備をさせるためにデータパッケージを変換または変更するための変換ルーチンを有している。
本発明の同一のまたは他の実施態様において、ソフトウェアは、データ接続の品質を評価するための評価ルーチンを備えている。
本発明の同一のまたは他の実施態様において、ソフトウェアは、データネットワーク内の少なくとも他の装置の数の在庫目録を作成し、既存の接続が遮断されるかまたはしきい値より小さくなると、送信および/または受信するためにデータネットワーク内の他の装置への接続を試みるための在庫管理ルーチンをさらに備えている。
本発明の同一のまたは他の実施態様において、装置は、データネットワーク内の少なくとも1つの他の装置のデータネットワークアドレスを記憶するメモリを備えている。
さらに、本発明は、上記した装置に適したソフトウェアに関する。このソフトウェアは、例えば、一例としてCD、DVD、光磁気ディスク、テープのようなデータ担体だけでなく、PROM、EPROMのようなICに搭載できても、または製造されたIC上に直接、搭載してもよい。
さらに、本発明は、請求項1に記載の装置を備えた複数のノードを有する有機的なデータネットワーク内に、前記装置がストリーミングオーディオまたはビデオまたはタイムクリティカルなデータのデータパッケージを配信する、前記データネットワークを設定および維持する方法であって、
前記複数のノードの各装置が、少なくとも1つの他のノードにデータパッケージの要求を出し、該リクエストに基づいて、かくして送信ノードになる前記1つまたは複数のノードからデータパッケージを受信し、あるいは前記ノード自身からコンテンツを検索し、複数の前記送信ノードに無関係に、前記データパッケージに対する前記受信ノードの前記装置の要求に基づいて、受信したデータパッケージを1つまたは複数の受信ノードに配信または中継のいずれかを行い、
ノードの前記装置は、前記送信ノードとの接続の品質が低下するか、または不十分と思えるときには、前記ノードに接続された前記送信ノードおよび前記受信ノードに他のノードのアドレスを問い合わせ、前記他のノードの少なくとも1つと連絡をとり、1つまたは2以上の他のノードへの前記接続の品質をテストし、それらの接続の1つまたは2以上で満足な性能が得られたら、適切な他のノードへの接続を確立して、送信ノードとして前記ノードにそれを追加し、データパッケージの総受信が所定の基準に適合するまで前記問い合わせを繰り返す。
このように、説明したような有機的なネットワークを設定および維持することができる。
本発明による方法の同一のまたは他の実施態様において、本発明による方法では、ソフトウェアは品質が所定の基準よりも低いときに、送信装置への接続を遮断する。
さらに、本発明は、特に、移動通信装置、メディアプレイヤー、通信装置、または本発明による装置を有する交通情報システムに関する。従来の電話機も本発明によるそのような装置を備えることができる。さらに、衛星通信、特に相互衛星通信も、本発明による装置、方法、またはソフトウェアを有することできる。
この場合、移動通信装置は、特に、携帯電話、ウォーキートーキー、衛星電話、ポケットコンピューター、PDA、ゲームコンピューター類を意味し、それらは携帯用でも、またはそうでなくてもよく、ゲームはゲームコンピューター等を用いて無線でプレイすることができる。
メディアプレイヤーは、テレビジョン、ラジオ、または、あらかじめ記録された音楽または映画用の再生装置だけでなく、その目的に適したパーソナルコンピュータ類も意味している。
交通情報システムは、例えば、GPSを備えていても、または備えてなくてもよい自動車、列車、飛行機、船用のルートナビゲーションシステムだけでなく、カーラジオおよび他の考えられるシステム、特にレーダーのような、情報を乗物に提供するシステムも意味している。
本発明はさらに、データ処理装置と、該データ処理装置を備えたいくつかの装置がデータ接続によって接続できるデータネットワークへの少なくとも1つの前記データ接続を有する装置を備えたノード上の装置で動作したとき、前記ノード上の装置が、請求項12または13に記載の方法を実行することを可能にするソフトウェアを記録した記録媒体に関する。
本発明による考えられる装置は、以下に説明するコンシューマーノードである。しかし、本発明による装置はそれに限定されるものではない。
本発明による装置によって構築、維持されることができる有機的なデータネットワークにおいては、種々のタイプのノードを識別できる。これらのすべてのタイプのノードがデータネットワークの動作にとって必要なわけではない。ノードは、ノードがソフトウェアによって形態を変更されるか、または同時にいくつかの形態を取り得るように変えるのが好ましい。有機的なネットワークの最大の柔軟性を達成することを考慮にいれると後者の方が好ましい。
第1のノードは、他のノードが要求したときに、他のノードにコンテンツを送信するノードである。このようなノードは生成ノードとも呼ばれる。
さらに、多くの入り口ノードを定義してもよい。これらは、ネットワーク内のノードのリストを保持し、新たに挿入されるノードをデータネットワークへ挿入できるノードである。入り口ノードは、本発明による有機的なネットワークにとって本質的には重要でない。
ネットワークにおいて支配的なのはコンシューマーノードである。コンシューマーノードは、コンテンツを受信し、該コンテンツを発信元に無関係な他の要求するノードに配信するソフトウェアを備えている。さらに、ソフトウェアは、データ接続の品質をテストし、ネットワーク内の多くの他のノードの位置を最新にしておくためのルーチンを備えていてもよい。コンシューマーノードも自らコンテンツを生成し、それによって生成ノードの一部または全体の機能のいずれかを取得するのが好ましい。
最後に、いわゆるルーターノードが存在してもよい。このようなノードは、生成ノードまたはコンシューマーノードの命令でコンテンツを受信しネットワーク内の他のノードに送信するにすぎない。
既に前に説明したように、ノードは、コンテンツを要求するどれか(クライアント)のために前記コンテンツを確実に入手する。有機的なネットワークは、次の方法で拡張または開始されてもよい。第1のクライアントが生成ノードからの(一部の)コンテンツを要求すると、生成ノードは該コンテンツを配信するが、同時にソフトウェアも一緒に出力し、その結果、第1のクライアントは第1のコンシューマーノードに変わる。次に、第2のクライアントが生成ノードと連絡をとると、生成ノードは、第2のクライアントが本発明による装置のように動作するソフトウェアをまだ備えていないときには、必要なソフトウェアを送信するか、または新たなクライアントを、そのための既存のコンシューマーノード、例えば第1のコンシューマーノードとみなす。第2のクライアントは次に、第2のコンシューマーノードになり、必要ならば、より良好な接続を探索する。第1のコンシューマーノードへの接続が生成ノードへの接続よりも速い場合、第2のコンシューマーノードは、もしそのように望むならば、第1のコンシューマーノードに(完全にまたは部分的に)接続でき、本発明によるソフトウェアも同じように一緒に送信され、その結果、前記クライアントは第2のコンシューマーノードに変わる。前記第2のコンシューマーノードは、生成ノードまたは第1のコンシューマーノードからのいずれかから、どちらのデータ接続であれより良好な接続と判断された方から、そのコンテンツを入手することができる。しかし、特別な場合には、コンシューマーノードは完全に自主的に、かつ生成ノードと無関係に動作できる。さらに優れているのは、もしそのように望むならば、コンシューマーノードは、コンテンツを改作し、コンテンツそのものを追加し(例えば、ストリーミングビデオコンテンツにおいてある言語で副題を付けて)、またはローカル広告メッセージまたはローカルニュースのような、それ自身のコンテンツを生成することができる。その結果、コンシューマーノードは同時に生成ノードにもなる。
通常、新たなコンシューマーノードが、生成ノードまたは入り口ノードと最初に連絡をとることによってネットワークに追加される。前記ノードは、新入者を1つのノードに、または好ましくは、より多くの既存のコンシューマーノードに(一度に)接続することができる。新たなノードは、それ自身の意思に基づいて、全く自主的により良好な接続を探しに行ってもよい。新たなノードは、接続されるノードに関する情報を自分が接続しているノードから入手することができるので、この手順は支持され得る。前記隣情報は、自分自身の接続を改善するために、または故障の場合に利用できる予備接続を持つために利用することができる。一般に、ここでは、中央制御の問題がないほうが好ましいので、柔軟性および故障感度は減少する。
もしそのように望むならば、ノードは、要求のあったコンテンツを単に中継する代わりにまたはそれに追加して、コンテンツを追加またはコンテンツを変更してもよい。例えば、ローカル的に副題を付けること、メッセージを広告すること、ファイル形式の変換、セキュリティ追加等である。ノードはその後、実際に同時に生成ノードになる。生成ノードまたはコンシューマーノードは受信ノードがコンテンツを信頼できるかどうかわかるように、認証セキュリティも追加してもよい。コンテンツの発信元も認証セキュリティを追加することができ、各送信ノードは、それが配信するコンテンツが確かに信頼できるかどうかを、例えば、チェックすることができる。このようにして、コンテンツの機密性について高い信頼度を持ったネットワークが生成される。
コンシューマーノード数が増加するにつれてデータネットワークが生成される。前記コンシューマーノードは、コンテンツについての要求を自分自身で対処でき、かつ最適接続(信頼性および/または通信速度の意味において)を選択することができ、ノードは、さらに他の機能を備えているので、コンシューマーノードはインテリジェントノードとも呼ばれうる。その結果生じたデータネットワークは、種々の部分(ノード)が独立して「存続」することができる有機体という特質を有している。データ転送中、特に、例えば、インターネットアプリケーションにおけるストリーミングオーディオおよびストリーミングビデオのような順序が重要なデータ転送時においては、最適のデータ接続は非常に重要である。さらに、コンテンツを提供するサーバーの容量は、通常、限られた数のクライアントだけにしかサービスを提供できないが、一方、それと対照的に本発明の有機的なネットワークは、ユーザーの数と共に増大していく殆んど無限の容量を有する。
本発明による装置において、一定の過剰容量を有する各コンシューマーノードはこれがこのネットワークに追加されると、ネットワークの総配信容量の増加に寄与できる。ネットワークが大規模になればなるほど、すなわちノードが多くなればなるほど、本発明による装置を使用することによって、サーバーの容量を増大させることなく、より大きな容量が利用できるようになり、ネットワークは潜在的により高速になり得る。例えば、ほとんどのコンピューターは、全二重データ接続を有していて、ある瞬間に送信または受信するだけなので、本発明による装置はネットワーク内に存在する固有の過剰容量を使用する。限られた送信容量を有する生成またはコンシューマーノードは、その未使用の容量を使用して多くのコンシューマーノードからなるネットワークに、比較的多くのコンテンツを今まで通り送信することができる。未使用の受信または送信容量は、コンテンツを取得または他のノードにそれを送信するために他のノードによって使用されうる。たとえ生成ノードの送信容量がさらに小さく(ある程度まで、すなわち少なくとも1つの受信機は、当然十分なコンテンツを取得できるべきである)なったとしても、コンシューマーノード同士の相互協力の結果、ネットワーク内の流れの速度は向上する。
既に説明したように、動作可能で、多分種々の生成ノードとなる種々のコンシューマーノードのリストを含んだ多数の入り口ノードが定義されてもよい。新たなクライアントが、生成ノードと連絡をとる代わりに、最も近接している(データ転送速度に関して)1つをコンシューマーノードのリストから選択する入り口ノードと連絡をとってもよい。入り口ノードは、新たなクライアントをコンシューマーノードとしてインストールするソフトウェアを送信(から開始)してもよいであろう。新たなクライアントは、次に既存のコンシューマーノードに接続して、新たなコンシューマーノードに変わる。
上に説明した手順またはデータネットワークにおいて、いくつかのタイプのノードについて述べた。これらのほとんどのノードは1つのベースノードによっても定義され得る。
あらゆる機能を持つ1つのベースノードは見分けることができるが、そのいくつかの部分は、本発明による有機的なネットワークにおけるノードの機能に基づいてオンまたはオフに切り替えられうる。
例えば、あらゆるノードは、入力マネージャおよび出力マネージャと、バッファと、ルーターロジックと、ローカル生成接続マネージャと、ローカルコンシューマー接続マネージャとを有している。
本発明による有機的なネットワークを実施できるいくつかの例を以下に説明する。そのいくつかの例は、本発明を限定するものではなくて、説明するためのものである。専門家は、前の例に基づいて、特許請求の範囲の保護の範囲に入る他の多くの実施態様について考えつくことができるであろう。
ストリーミングインターネットアプリケーション
ストリーミングビデオおよびストリーミングオーディオは、コンテンツを有するデータパッケージがサーバーまたは局からクライアントまたはコンシューマーに送信されるインターネットアプリケーションとして知られている。これらのデータパッケージについて特別なことは、種々のパッケージの時系列が重要であるということであり、すなわち、例えば、無線放送は一定の時系列を有している。さらに、さもないと放送がふらつくので、データフローの連続性は重要である。そのようなストリーミングインターネットアプリケーションの一般的な原理は専門家には周知である。
インターネットまたは他のデータネットワークを介したストリーミングビデオまたはオーディオ放送は、本発明による装置を使用して次の方法で有機的なデータネットワークによって実現され得る。
まず第1に、いわゆる生成ノードがインストールされる。生成ノードは、その目的が装置自身内で生成されるかまたは存在する、1つまたは2以上の他の装置で利用できるコンテンツを作成する本発明による装置である。前記コンテンツはストリーミングオーディオまたはビデオ放送であってもよい。
コンピューターが、例えば、インターネットを通じて生成ノードと連絡をとるとすぐに、生成ノードは、例えば、「Javaアプレット」または「Javaビーン」形式だけでなく、いわゆるWindows「キャビネットファイル」形式のソフトウェアを伴ったコンテンツの送信を開始する。ソフトウェアは、次に、コンピューターに自分自身をインストールし、いわゆるコンシューマーノードとしてコンピューターを調整する。既に説明したように、そのようなコンシューマーノードは、装置、この場合は生成ノード、からコンテンツを受信し、他の装置がそれを要求したときに、コンテンツを該他の装置に配信することができる。
例えば、第2の装置が、コンテンツも入手するという質問を持って生成ノードにそれ自身現われると、生成ノードは、必要ならば、第2の装置にソフトウェアを送信するか、または、例えば、すべての出ていく接続が占有されているときには、以前にインストールされたコンシューマーノードの存在を第2の装置に通知する。
生成ノードが、直接またはコンシューマーノードを介してソフトウェアを送信して、第2の装置を第2の装置に対するコンシューマーノードとして動作させると、第2の装置は第2のコンシューマーノードとしてインストールされる。第2のコンシューマーノードは、生成ノードへのまたは第1のコンシューマーノードへの接続が最善かどうかをテストし、次に、コンテンツが生成ノードから、または第1のコンシューマーノードを介して、または両方からのいずれかで来信すべきかどうかを判断する。第1のコンシューマーノードは、生成ノードとは完全に独立して第2のコンシューマーノードにコンテンツを配信することができる。
第2のコンシューマーノードが生成ノードへのより良好な接続を得ると、上記直接の連絡は、第1のコンシューマーノードがコンテンツを第2のコンシューマーノードを介して入手するのを判断することにつながる。このことから、動的なトポロジーを入れ替えたノードが取得されたように見える。
本発明の種々の態様を示すいくつかの図面を基にして本発明を詳しく説明する。前記図面は、本発明を説明する役目し、それらに示された実施形態に対しては本発明を限定するものとして見なされるべきではないことは明らかである。
図1は、ベースノードを生成ノード、コンシューマーノード、ルーターノード、または入り口ノードとして機能させることができるすべての機能を備えた、上に説明したベースノード1.0を示している。種々の機能をオンまたはオフすることによって、ベースノードは、説明したノードの1つとしてまたはその組合せとしても、または互いに並行して働くいくつかの能力において機能することができる。
ベースノードは入力マネージャ1.1と出力マネージャ1.4とを備えている。これらは入力するおよび出力するコンテンツを調整するソフトウェア中のルーチンである。さらに、ベースノードは、受信したコンテンツを出力するいわゆるルーターロジック1.5を備えている。
さらに、ベースノードは、データを多分さらに送信するためにデータを格納する1つまたは2つ以上のバッファ1.6を備えている。
最後に、ベースノードは、コンテンツの送信を準備するローカル生成マネージャ1.2と、入力コンテンツの処理および再生(ストリーミングオーディオまたはビデオの場合)を準備するローカルコンシューマーマネージャ1.3を備えている。
図2Aから2Qは、有機的なネットワークを開始するいくつかの段階を示している。太線はノード間の接続である。縞の破線はノードへのメッセージ、点線は存在するノードに接続されたノードに関する情報、細線は連絡および接続の品質のテストである。
図2Aは、生成ノード1を有する有機的なネットワークを示している。生成ノードは、例えば、ストリーミングオーディオ放送のようなコンテンツをインターネットを介して2つのコンシューマーノード2および2’に配信する。この場合、コンテンツは、インターネットを介して送信されるデータパッケージに分割される。各2つのコンシューマーノードに、コンシューマーノード3と3’がそれぞれに接続されている。3’には次のコンシューマーノード4が接続されている。2つの入り口ノード0および0’も示されている。
コンシューマーノード2および2’は、生成ノードから受信したコンテンツをコンシューマーノード3および3’まで配信し、コンシューマーノード3は、次に、4まで配信する。このため、2つのコンシューマーノードだけが生成ノードに直接接続されている。
図2Aに示すようなある状況から、有機的なネットワークの可能な展開が次に図2Bから2Qへと続いている。
図2Bにおいて、生成ノード1は、コンシューマーノード2’の存在が述べられたメッセージをコンシューマーノード2に送信する。
図2Cにおいて、コンシューマーノード2は、コンシューマーノード2’への接続をテストしていることが分かる。明らかに、コンシューマーノード2’は余分な容量と生成ノードへのより高速な接続を有している。例えば、インターネットアプリケーションの場合には、コンシューマーノード2は、56k6のボーレートを持つ類似のモデムを介して接続されてもよく、一方、コンシューマーノード2’は、例えば、ケーブルモデムで接続され、生成ノードとコンシューマーノード2間の実際の接続は最大で28k8になる。ところが、このコンシューマーノード2は56K6を処理できる、すなわち、コンシューマーノード2’は、生成ノードから高速で、56k6よりも高速でコンテンツを受信して、28k8の速度で生成ノードに無関係なコンシューマーノード2にコンテンツの送信を開始する。ここで、コンシューマーノード2は、(例えば)28k8の代わりに56k6の速度でコンテンツを取得する。この状況を図2Dに示す。図2Dにおいて、生成ノードもコンシューマーノード2へ依然としてコンテンツを送信している。ノード3もノード2から配信されたそのノードに接続されたノードについての情報を取得する。
図2Eにおいて、コンシューマーノード3は、例えば、その接続が最適ではないので、今その存在を(直接または間接的に)知っているネットワーク内の種々のノードへの接続をテストしている。例えば、このテストは、コンシューマーノード2への接続がますます悪化するので行われる。この場合、コンシューマーノード3は、生成ノード1およびコンシューマーノード2’への接続をテストする。コンシューマーノード2’はまだ余分な容量を有するように思える。コンシューマーノード2’は、ここでコンシューマーノード3にもコンテンツの送信を始める(図2F)。
図2Gにおいて、新たなコンシューマーノード5が入り口ノード0を介してどのように実現されていくかが分かる。将来のコンシューマーノードは入り口ノード0と連絡をとる。新たなノードがまだコンシューマーノードではなく、そのようにインストールされるソフトウェアをまだ受信していないときには、ノード(将来の)は、入り口ノード0から前記ソフトウェアを取得することができる。ソフトウェアがインストールされた時点で、新たなノードもコンシューマーノードになる(そして実際、そのとき新たなノードが望めば、新たなノードは生成ノードとしても動作を開始できる)。
この図において、入り口ノードは、自分が最新にしておいたリストからコンシューマーノード、この場合、最後に追加され、または追加されていなくてもよいコンシューマーノード4を選択する。新たに追加されるノードがまだコンシューマーノードになっていないときには、新たに追加されるノードは、入り口ノードからコンシューマーノード4(図2H)の存在についての情報のみならず(この場合)必要なソフトウェアも取得する。コンシューマーノード5は、今度はコンシューマーノード4への接続をテストし(図2I)、コンシューマーノード4と連絡をとる(図2J)。
図2Kにおいて、コンシューマーノード5は、コンシューマーノード4からコンシューマーノード3についての情報を取得し、次に、コンシューマーノード3への接続をテストする(図2L)。コンシューマーノード3が余分な送信容量を有し、かつコンシューマーノード5が余分な受信容量を有すると思われるときには、コンシューマーノード3は、生成ノードまたはコンシューマーノード2に無関係にコンシューマーノード5にもコンテンツを送信する(図2M)。コンシューマーノード5は、自分が受信したいものを4と3に合わせる。
図2Nにおいて、コンシューマーノード3は、ノード2’、4、および5の存在をコンシューマーノード2に知らせる。図2Oにおいて、ノード2はおそらくその接続が悪化するか、5への接続の方がより良好という理由により、5への接続をテストしていることが次に分かる。
図2Pにおいて、コンシューマーノード5と2の間の接続がなされている。
図2Qにおいて、2と5、および5と3の間の接続が非常に良好なので、3は、ここでは、2の代わりに5を介してそのデータパッケージを取得すると思われる。3と2の間の接続は遮断される。
図3Aから3Lにおいて、本発明による装置は携帯電話ネットワークにおいて実現されている。ここで、白い矢印は短い制御信号を、灰色の矢印は1つの会話を有する信号を、黒い矢印は2つの会話を有する信号を示している。
図3Aにおいて、携帯電話11が連絡をとりたいと望んでいる。携帯電話11に組み込まれた本発明による装置は、次に、すぐ近辺にいる携帯電話がサポート送信機10と既に連絡をとったかどうかを探索する。すぐ近辺にいるどの携帯電話もサポート送信機10との連絡は持っていない。本発明による装置は、次に、携帯電話11とサポート送信機10の間で連絡をとる(図3B)。携帯電話11は図の外にいる携帯電話と最初の会話を開始する。
図3Cにおいて、携帯電話12でも実現される、本発明による装置が、携帯電話がサポート送信機10との連絡を持っているかどうか、すぐ近辺をどのように探索するかが分かる。図3Dにおいて、携帯電話12は、両方の会話をサポート送信機10に出力している携帯電話11と連絡をとることが分かる。
図3Eにおいて、携帯電話11の会話は既に終了したが、前記携帯電話は携帯電話12に会話をまだ送信していることが分かる。
図3Fにおいて、携帯電話12もその会話を終了したことが分かる。携帯電話14は、携帯電話13を呼び出したいが、サポート送信機10の範囲外にいる。その信号はサポート送信機と連絡をとることができる11によって受信される。ここで、携帯電話11はサポート送信機10への14の信号を中継し、サポート送信機10は携帯電話13に信号を送信する(図3G)。
携帯電話13は、その間に、例えば、サポート送信機10によって、11が比較的近接している(つまり、それらは同一のサポート送信機を使用している)ことが知らされている。携帯電話13は次に、14と連絡をとってくれるように携帯電話11に依頼する(小さな範囲の)信号を送信し、この信号は11によって受信され(図3H)、携帯電話11は、サポート送信機10の機能を引き継いで13と14間の接続を確実にしている(図3I)。暗号化が接続の秘密性を確実なものにしている。
故障により、携帯電話11は遮断する(図3J)。13と14の両方ともヘルプの呼出しを送信する。携帯電話12は両方の呼び出しを受信して、11の役割を引き継ぐ(図3L)。
本発明による装置の自主性により、まず第1に、互いの近辺にいる携帯電話同士間で直接連絡をとることができる。さらに、トポロジーの動的な性質により、故障を処理することもできる。
さらに、本発明による装置によって、低出力のサポート送信機(その時、携帯電話が別ルートをより迅速に探しに行くようなできるだけ低出力の方が好ましい)と、互いに近辺にいる多くの携帯電話によって、サポート送信機10の最低限の送信容量でより良好な接続を持つことができる。
図4Aにおいて、道路48の片側に交通の流れを制限または阻止する障害物40が存在し、このために自動車43と42が停止している交通状況が示されている。道路47の反対側には、接近する自動車41が到着している。障害物40のずっと前方に、別ルートを有する出口49がある。両自動車は本発明による装置を装備している。
図4Bにおいて、接近している自動車41が、静止している自動車42から自動車42がまだ停止しているという情報をどのように取得するかが分かる。自動車41はそのまま運転を継続し、図4Cにおいて、道路48側の自動車44がどのように障害物に接近するかが分かる。
図4Dにおいて、自動車41は送信側の自動車42に無関係に要求側の自動車44に情報を配信する。
図4Eにおいて、自動車44が出口49経由で別ルートをとることを決定していることが分かる。
自動車情報システムにおいて実現される本発明による装置は、この場合、送信側自動車42から情報を受信し、送信側自動車に無関係に自動車44まで情報を出力する。このようにして、自動車41は、障害物、この例では自動車42、に関する情報を送信した自動車に無関係に、後ろに接近している自動車に通知する。
本発明による装置の他の用途はテレビジョンにある。図5Aにおいて、多くのテレビジョンジョンセット54、55、57、58、59がケーブルネットワーク61によって送信/放送局50に接続されている状況が示されている。テレビジョン56はそれ自身のパラボラアンテナ51に接続されている。テレビジョンは、テレビジョン56を除いて配電網60に接続され、配電網を介してデータパッケージを送信および受信する手段を備えている。
ケーブルネットワークを介して他のテレビジョンに接続されてはいないが、実際配電網60を介して接続されているテレビジョン53は、それ自身の衛星回線をも有している。テレビジョン56および53は、本発明による装置を介して他のテレビジョンにパラボラアンテナ51および52から信号を送信する。白い円は、配電網を介してテレビジョンジョンセット53および56によって、他のテレビジョンジョンセットに中継される衛星51および52から来るコンテンツである。灰色の円は、ケーブル61を介して送信機50によって、テレビジョンジョンセット54、55、57、58、および59に配信されるコンテンツである。
図5Bにおいて、故障がテレビジョンジョン56と55間の接続においてどのように発生するかが分かる。テレビジョンジョン54および55は、配電網を介して緊急信号(灰色の正方形)を出力し、緊急信号は、まだ信号を受信しているテレビジョンジョンセット内の本発明による装置によって受信される。前記テレビジョンジョンセット(実際には、本発明による装置)、図5Cにおいては、テレビジョンジョンセット57、58、および59は緊急信号を受信する。前記テレビジョンジョンセットは、それらが配信できる配電網を介して54と55に信号を送信し、テレビジョンジョンセット54と55から要求されると、上記テレビジョンジョンセットは配電網(青白い灰色の円、図5D)を介して配信を開始する。図5Eにおいて、テレビジョンジョンセット54と55が実際にケーブル信号を取得することが分かる。青白い灰色の円がセット54と55に到達している。
勿論、この例は、ネットワークまたは無線通信を介して、例えば、多分ブルートゥースプロトコルを介して接続されたパーソナルコンピュータ、ゲームコンピューター、または家庭用機器にも関連することができる。あるケーブル接続においては過剰容量であってもよい代替チャネルによって故障は正常に戻される、すなわち、例えば、データ伝送の慣性は解決される。
図6Aから6Kは、データが誰にでも利用できるようなネットワーク上の1点からデータパッケージにおけるコンテンツの送信を示している。それは例えば、ストリーミングビデオまたはオーディオであってもよい。
生成ノード120は、意のままになるコンテンツ「12345678」を有し、それを要求した2つのコンシューマーノード122および123にコンテンツを送信する。123を介した流れは122を介したよりもはるかに高速である。図6Bにおいて、第1のデータパッケージ「1」が123によって既に受信されているのに対して、122はまだ何も持たないことが分かる。その間に、122および123は、124と126、および127と125からの要求をそれぞれ受信する。123へのデータパッケージは、非常に高速で流れるので、その間に、123は既に2つのパッケージを受信しており、123と127の接続は非常に良好なので、127も既に1つのデータパッケージを受信している。したがって、コンシューマーノード129からの要求を許可して、送信を開始できる(図6C)。
図6Dにおいて、コンシューマーノード123は、その間に既に3つのデータパッケージを受信しており、123と127の接続が非常に高速なので、127も既に2つのデータパッケージを受信している。その間に、ノード125は、123を介して127の存在が通知され、127へのデータ接続のテストが終了している。このデータ接続も123へのデータ接続よりかなり高速で、良好に思われるので、ノード125はデータパッケージの配信を127に要求することを決定している。さらに、131もコンテンツの配信要求することを申し込んで、コンシューマーノード129に接続されている。
ノード122を介したコンシューマーノード126の接続が遅いように思われるので、コンシューマーノード126は、より良好な接続を探しに行き、最終的にコンシューマーノード129で終る。コンシューマーノード126から要求されると、コンシューマーノード129も直ちに126へのデータパッケージの配信を開始する。この場合、動的なトポロジーは既に発生しているように思われ、動的なトポロジーの結果は明らかである。コンシューマーノード126は次に、コンシューマーノード122への接続を切断する。その間に、ノード128および130もコンシューマーノードとしてネットワークに追加される。この状況を図6E示す。
生成ノード120へのコンシューマーノード122の接続が遅いので、コンシューマーノード124もより良好な接続を探しに行き、コンシューマーノード126に行き着く。コンシューマーノード124から要求されると、コンシューマーノード126も直ちにコンシューマーノード124にデータパッケージの配信を開始する。この状況は図6Fに示されている。その間、コンシューマーノード128および130は、連鎖120−122−124から来るデータパッケージ「1」をまだ受信している。
図6Gにおいて、下方の連鎖123−127−129からのデータパッケージの配信は、生成ノード120からコンシューマーノード122への配信よりもはるかに高速になることが分かる。さらに、コンシューマーノード124へのコンシューマーノード128および130の接続が最適ではないことも分かる。すなわち、コンシューマーノード128および130は、2つのデータパッケージを受信しているのに対して、コンシューマーノード131は、既に4つのデータパッケージを受信している。コンシューマーノード128および130は、より良好な接続を探し始め、128はコンシューマーノード131の過剰容量を使用することを選択する。これは図6Hに示されている。コンシューマーノード123は、このときすべてのコンテンツを受信しており、生成ノードへの接続はもはや使用されていないということも分かる。
図6Iにおいて、コンシューマーノード128、130、および122だけが、まだすべてのコンテンツを受信していないことが分かる。図6Jにおいて、122以外のすべてのコンシューマーノードはすべてのコンテンツを受信してしている。
この例においては、明らかに、コンシューマーノード122は他のノードへのより良好な接続を見つけることはできなかった。しかし、例えば、コンシューマーノード124を介しての接続が生成ノードへの直接の接続よりも良好に思われたときには、コンシューマーノード122は、コンシューマーノード124がデータパッケージを配信できるかどうかを要求することを決定する状況は発生したであろうし、その結果、実際には、コンシューマーノードの一部は、受信するコンシューマーノードから配信するコンシューマーノードへと反転されていた。コンシューマーノードは、これらコンシューマーノードが、既存の接続が(これ以上)満足でないときは、新たなまたは追加の接続を探しに行くだけというような方法で設定されるのが好ましい。
図7から15は、本発明による生成ノードの特定の実施形態を示し、そのような生成ノードを通る(図7から11)、およびコンシューマーノードを通る(図12から15)データストリームを明確に示している。送信されるデータストリームはMP3ストリームであってもよい。この実施形態においては、このデータストリームはインターネットを通して送信される。図のこの説明では、MP3ストリームについて言及する。しかし、どのようなデータストリームもこの生成ノードを使用して送信できることは明らかである。生成ノードとコンシューマーノードの異なる構造ブロック、例えば、バッファ、ルーターロジック、その他は、C++、Java、または何らかのタスク特有の言語のような、適切な汎用プログラミング言語でプログラムされ得るソフトウェアオブジェクトである。これらのオブジェクトは当業者に周知である。
図7は、生成ノード(PN)によってメディアストリームを開く処理を示している。ストリームターゲット(メディアプレイヤー)は、http://localhost:123/192.1.0.10/stream.mp3を有する入り口を通してメディアストリームを要求する。
次のステップが実行される。
ステップ1:コンシューマーマネージャ(CM)は要求を受信して、認識する
ステップ2:CMは、アクションをルーターロジック(RL)に問い合わせる
ステップ3:RLは、ストリームソース(SS)のIPアドレスを入り口
(192.1.0.10)に問い合わせる
ステップ4:入り口は、SSのIPアドレス24.25.26.27を返信する
ステップ5:RLは、SSを呼び出してくれるようにプロダクションマネージャ(PM) に要求する
ステップ6:PMは、http://24.25.26.27/stream.mp3を
有するSSに要求する
ステップ7:SSはメディアストリームおよびhttpヘッダーを返信する
ステップ8a:PMはデータを解析し、バッファにメディアストリームを出力する
ステップ8b:PMはRLにhttpヘッダーを返信する
ステップ9:RLはCMにhttpヘッダーを返信する
ステップ10:CMはストリームターゲットにhttpヘッダーを返信する
図8において、生成ノード(PN)はメディアストリームの受信を開始する。httpヘッダーがストリームターゲットに渡されると(図7のステップ10)、コンシューマーマネージャ(CM)は、データ探索ループを開始する。コンシューマーマネージャは、バッファにデータを要求し、返答を待つ。バッファの返答は次のうちのいずれか1つであろう。
・メディアストリームのデータがある(CMはさらに要求する)、または
・データがまだ準備できていない(CMは待機して、後で試みる)、または
・ストリーム終了(CMは接続を閉じる)。
その後、次のステップが実行される。
ステップ1:コンシューマーマネージャ(CM)は、バッファにデータメディアストリー ムを要求する
ステップ2:バッファは、メディアストリームのCMへの送信を開始する
ステップ3:CMは、ストリームをストリームターゲットに渡す
図9において、生成ノード(PN)は、コンシューマーノード(CN)から入力する要求を受信している。コンシューマーノードからのこの入力する要求は、生成ノードの出力マネージャ(OM)によって受信される。この要求は、ルーターロジック(RL)に渡されるネットワーク情報と、バッファによって処理されるメディアストリームの特定の部分(データブロック)の要求から成る。
続いて、次のステップが実行される。
ステップ1:入ってくるノードネットワーク要求は、出力マネージャ(OM)によって受 信される
ステップ2a:OMは、ルーターロジックにネットワーク情報を渡す
ステップ2b:OMは、コンシューマーノードが含まれない好ましい第1のブロックを含 むすべてのブロックをバッファに要求する。
図10および11に、コンシューマーノード(CN)の入力している要求に関する生成ノード(PN)の応答が示されている。次の状況が発生することがある。
1.要求されたデータブロックは利用できる。
2.データブロックは利用できない。
これらの起こり得る2つの状況を詳しく説明する。
1.利用可能でないブロックが(図10)
要求されたブロックは生成ノードのバッファにおいて利用でき、このデータはネットワーク情報と一緒に要求のあったコンシューマーノードに返信される。その後、次のステップが実行される。
ステップ1a:PNおよびPNが知っているノードについてのネットワーク情報は、ルー ターロジック(RL)によって出力マネージャ(OM)に返信される
ステップ1B:メディアストリームの要求された部分(データブロック)は、バッファに よってOMに返信される
ステップ2:OMは情報を束ねて、CNにこれを返信する
2.利用できないブロック(図11)
要求されたブロックは生成ノードのバッファにおいて利用できず、このデータはネットワーク情報と一緒に要求のあったコンシューマーノードに返信される。
ステップ1a:PNおよびPNが知っているノードについてのネットワーク情報は、ルー ターロジック(RL)によって出力マネージャ(OM)に返信される
ステップ1b:バッファは、利用できるデータがないことを返信する
ステップ2:OMはCNにRLのネットワーク情報を返信する
ここで、図12は、メディアストリームを開くときに、コンシューマーノード(CN)側で行なわれるさまざまな処理ステップを示している。ストリームターゲット(メディアプレイヤー)は、http://localhost:123/192.1.0.10/stream.mp3を有する入り口を通してコンシューマーノードを介してメディアストリームを要求する。
次に、以下のステップが行なわれる。
ステップ1:コンシューマーマネージャ(CM)は要求を受信し、認識する
ステップ2:CMはアクションをルーターロジック(RL)に問い合わせる
ステップ3:RLは、入り口(192.1.0.10)にノードネットワークに参加して いる他のノード(PNまたはCN)のIPアドレスを問い合わせる
ステップ4:入り口は、他のノードのIPアドレスを返信する
ステップ5:RLは、他のノードを接続するように入力マネージャ(IM)に依頼する
ステップ6:IMは他のノードに接続を要求する
ステップ7:他のノードはメディアストリームとhttpヘッダーを返信する
ステップ8a:IMはデータを解析し、バッファにメディアストリームを送信する
ステップ8b:IMはRLにhttpヘッダーを返信する
ステップ9:RLはCMにhttpヘッダーを返信する
ステップ10:CMはストリームターゲットにhttpヘッダーを返信する
図13は、コンシューマーノード(CN)がメディアストリームの受信を開始したときに、何が起こるかを示している。httpヘッダーがストリームターゲットに渡されると、コンシューマーマネージャ(CM)はデータ探索ループを開始し、バッファにデータを要求し、返答を待つ。バッファの返答は次のうちのいずれか1つであろう。
・メディアストリームのデータがある(CMはさらに要求する)、または
・データがまだ準備できていない(CMは待機して、後で試みる)、または
・ストリーム終了(CMは接続を閉じる)。
したがって、次のステップが実行される。
ステップ1:コンシューマーマネージャ(CM)はバッファにデータメディアストリーム を要求する
ステップ2a:バッファはCMへのメディアストリームの送信を開始する
ステップ2b:ルーターロジック(RL)はCNを、入り口にアクティブノードとして登 録し、他のノードとのその接続を確認する
ステップ3:CMはストリームをストリームターゲットに渡す
図14に、コンシューマーノード(CN)が他のノードからメディアストリームを受信した後に、接続ができなくなった場合に何が発生するかが示されている。例えば、コンシューマーノードから他のノード(A.)への接続が失われる。コンシューマーノードは、ノードネットワーク内の別のノード(B.)への要求によって応答する。これは次のステップを実行することによって行われる。
ステップ1:入力マネージャ(IM)は他のノード(A.)に接続できない
ステップ2:IMはノードネットワーク内の他のIPアドレスをルーターロジック(R L)に問い合わせる
ステップ3:ルーターロジック(RL)は別のノード(B.)のIPアドレスを返信する
ステップ4:IMは別のノード(B.)に接続要求を送信する
図15は、概要として、アクティブなコンシューマーノード(CN)内の様々な処理の流れを示している。それは、コンシューマーノードの様々な部品がどんな方法で相互に接続されているかを示している。
すべての例における、本発明による装置は、データネットワークからコンテンツを自主的に探索し、送信側を介することなく本発明による他の装置にそれを送信することができる。さらに、各装置は、より良好な接続が手の届くところにあるかどうかをテストし、前記接続を使用するべきかどうか完全に独立して選択することができる。
上記の説明は、好ましい実施形態の動作を説明するために含まれているものであり、本発明の範囲を限定するのを意味していないことが理解されるべきである。本発明の範囲は請求範囲によってのみ限定される。上記の説明から、本発明の要求および範囲によって多くの変形例が含まれるが当業者には明らかであろう。
上記に説明したベースノードを示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 本発明による有機的なネットワークを開始および維持する際の種々の連続的な段階を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 携帯電話通信に適用された本発明による装置を示す。 交通情報システムに適用された本発明による装置を示す。 交通情報システムに適用された本発明による装置を示す。 交通情報システムに適用された本発明による装置を示す。 交通情報システムに適用された本発明による装置を示す。 交通情報システムに適用された本発明による装置を示す。 テレビジョンのケーブルネットワークに適用された本発明による装置を示す。 テレビジョンのケーブルネットワークに適用された本発明による装置を示す。 テレビジョンのケーブルネットワークに適用された本発明による装置を示す。 テレビジョンのケーブルネットワークに適用された本発明による装置を示す。 テレビジョンのケーブルネットワークに適用された本発明による装置を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークによる、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明による装置を有するノードを備えたネットワークにおいて、いくつかのデータパッケージにおけるコンテンツの送信を示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。 本発明の特定の実施形態における本発明によるデータストリームを示す。図7から11は、生成ノード側に何が発生するかを示し、図12から15は、コンシューマーノード側に何が発生するかを示す。

Claims (20)

  1. ストリーミングオーディオまたはビデオまたはタイムクリティカルなデータを有機的なデータネットワーク内に配信する動的なトポロジーを有する前記データネットワークを生成するかまたは維持するかのいずれかを行う装置であって、
    データ処理装置と、
    データ処理装置を備えたいくつかの装置がデータ接続によって接続されたデータネットワークへの少なくとも1つのデータ接続と、
    前記データネットワーク内の少なくとも1つの送信装置からデータパッケージを受信するための受信ルーチンと、前記データネットワーク内の1つまたは複数の前記送信装置から受信した前記データパッケージを、1つまたは複数の前記送信装置に無関係に、前記データネットワークに接続された少なくとも1つの受信装置に送信するための送信ルーチンと、前記データネットワーク内の少なくとも1つの送信装置からの前記データパッケージを要求するための要求ルーチンと、前記データネットワーク内の前記1つまたは複数の送信装置から受信した前記データパッケージを少なくとも1つの受信装置に送信する、前記少なくとも1つの受信装置から要求を処理するための要求処理ルーチンと、追加の装置または他の送信装置のいずれかへの新たな接続の確立を所定の基準に基づいて判断するための判断ルーチンと、送信装置と受信装置のグループからなる装置に接続された装置のアドレスを問い合わせるための環境評価ルーチンとを含むソフトウェアと
    を有し、
    動作時、前記装置は、
    少なくとも1つの送信装置に前記データパッケージの少なくとも一部に対する要求を出し、
    受信装置からの前記データパッケージに対する要求に答えて、前記データパッケージの少なくとも一部を、前記装置上で利用可能なとき前記受信装置に送信する
    装置。
  2. 前記ソフトウェアは、前記送信装置に無関係に、前記データパッケージと一緒に前記ソフトウェアを送信するための送信ルーチンを備えている、請求項1記載の装置。
  3. 前記ソフトウェアは、前記データネットワーク内の他の装置との接続をテストするためのテストルーチンを備えている、請求項1または2記載の装置。
  4. 前記ソフトウェアは、終端へのネットワーク配列内の前記送信装置および受信装置以外に、前記データネットワーク装置内の受信装置にデータパッケージを送信するための送信ルーチンを備えている、請求項1、2、または3記載の装置。
  5. 前記ソフトウェアは、前記データパッケージの処理すなわち再生の準備をさせるために前記データパッケージを変換するかまたは変形させるかのいずれかを行うための変換ルーチンを有する、請求項1から4のいずれか1項に記載の装置。
  6. 前記ソフトウェアは、前記データ接続の品質を評価するための評価ルーチンを備えている、請求項1から5のいずれか1項に記載の装置。
  7. 前記ソフトウェアは、前記データネットワーク内の少なくとも多数の前記他の装置の在庫目録を作成し、既存の接続が遮断されるかまたはしきい値より小さくなると、送信および/または受信するために前記データネットワーク内の他の装置への接続を試みるための在庫管理ルーチンをさらに備えている、請求項1から6のいずれか1項に記載の装置。
  8. 前記データネットワークに少なくとも1つの他の装置のデータネットワークアドレスを格納するメモリをさらに備えている、請求項1から7のいずれか1項に記載の装置。
  9. データ処理装置と、該データ処理装置を備えたいくつかの装置がデータ接続によって接続できるデータネットワークへの少なくとも1つの前記データ接続を有する装置上で動作するソフトウェアであって、請求項1に記載のソフトウェアを記録した記録媒体。
  10. 前記判断ルーチンがさらに、評価パラメーターに基づいて送信機への接続を閉じ、前記ソフトウェアは、データパッケージの入ってくるフローの量と、時間間隔と、品質とを評価し、前記判断ルーチンに評価パラメーターを提供するための評価ルーチンと、存在する可能性のある新たな送信機を送信機および受信機を介して探索するための探索ルーチンと、存在する可能性のある新たな送信機へのデータ接続の品質をテストするためのテストルーチンとをさらに有する、請求項9に記載の記録媒体。
  11. 前記ソフトウェアが、受信されたデータパッケージと、送信されたデータパッケージと、データパッケージの送信機および受信機のアドレスとを保持し、前記評価ルーチンに入力データを提供するための管理ルーチンをさらに有する、請求項9または10に記載の記録媒体。
  12. 請求項1に記載の装置を備えた複数のノードを有する有機的なデータネットワーク内に、前記装置がストリーミングオーディオまたはビデオまたはタイムクリティカルなデータのデータパッケージを配信する、前記データネットワークを設定および維持する方法であって、
    前記複数のノードの各装置が、少なくとも1つの他のノードにデータパッケージの要求を出し、該リクエストに基づいて、かくして送信ノードになる前記1つまたは複数のノードからデータパッケージを受信し、あるいは前記ノード自身からコンテンツを検索し、複数の前記送信ノードに無関係に、前記データパッケージに対する前記受信ノードの前記装置の要求に基づいて、受信したデータパッケージを1つまたは複数の受信ノードに配信または中継のいずれかを行い、
    ノードの前記装置は、前記送信ノードとの接続の品質が低下するか、または不十分と思えるときには、前記ノードに接続された前記送信ノードおよび前記受信ノードに他のノードのアドレスを問い合わせ、前記他のノードの少なくとも1つと連絡をとり、1つまたは2以上の他のノードへの前記接続の品質をテストし、それらの接続の1つまたは2以上で満足な性能が得られたら、適切な他のノードへの接続を確立して、送信ノードとして前記ノードにそれを追加し、データパッケージの総受信が所定の基準に適合するまで前記問い合わせを繰り返す、
    有機的なデータネットワークを設定および維持する方法。
  13. 前記ノード上の前記装置は、品質が所定の基準より低いときには、送信ノードへの接続を遮断する、請求項12記載の方法。
  14. データ処理装置と、該データ処理装置を備えたいくつかの装置がデータ接続によって接続できるデータネットワークへの少なくとも1つの前記データ接続を有する装置を備えたノード上の装置で動作したとき、前記ノード上の装置が、請求項12または13に記載の方法を実行することを可能にするソフトウェアを記録した記録媒体。
  15. 請求項1に記載の装置を有する、モバイル通信システムと衛星通信システムを含む通信システム。
  16. 請求項1に記載の装置を有するメディアプレイヤー。
  17. 請求項1に記載の装置を有する交通情報システム。
  18. データ処理装置と、該データ処理装置を備えたいくつかの装置がデータ接続によって接続できるデータネットワークへの少なくとも1つの前記データ接続を有する装置を備えた複数のノードと、各ノード上の前記装置で動作したとき、前記ノード上の前記装置が、請求項12または13に記載の方法を実行することを可能にするソフトウェアを記録した記録媒体と、を有する通信システム。
  19. データ処理装置と、該データ処理装置を備えたいくつかの装置がデータ接続によって接続できるデータネットワークへの少なくとも1つの前記データ接続を有する装置を備えた複数のノードと、各ノード上の前記装置で動作したとき、前記ノード上の前記装置が、請求項12または13に記載の方法を実行することを可能にするソフトウェアを記録した記録媒体と、を有するメディアプレイヤー。
  20. データ処理装置と、該データ処理装置を備えたいくつかの装置がデータ接続によって接続できるデータネットワークへの少なくとも1つの前記データ接続を有する装置を備えた複数のノードと、各ノード上の前記装置で動作したとき、前記ノード上の前記装置が、請求項12または13に記載の方法を実行することを可能にするソフトウェアを記録した記録媒体と、を有する交通情報システム。
JP2002566938A 2001-02-16 2002-02-15 動的なトポロジーを有する有機的なデータネットワーク Expired - Fee Related JP4525961B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL1017388A NL1017388C2 (nl) 2001-02-16 2001-02-16 Organisch datanetwerk met een dynamische topologie.
PCT/NL2002/000099 WO2002067539A1 (en) 2001-02-16 2002-02-15 Organic data network having a dynamic topology

Publications (2)

Publication Number Publication Date
JP2004531115A JP2004531115A (ja) 2004-10-07
JP4525961B2 true JP4525961B2 (ja) 2010-08-18

Family

ID=19772922

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002566938A Expired - Fee Related JP4525961B2 (ja) 2001-02-16 2002-02-15 動的なトポロジーを有する有機的なデータネットワーク

Country Status (13)

Country Link
US (12) US7065548B2 (ja)
EP (5) EP2372969A1 (ja)
JP (1) JP4525961B2 (ja)
KR (1) KR100895473B1 (ja)
CN (5) CN101778128A (ja)
AU (1) AU2002230291B2 (ja)
BR (2) BRPI0216085B1 (ja)
CA (1) CA2825088A1 (ja)
EA (1) EA006074B1 (ja)
IL (2) IL157434A0 (ja)
MX (1) MXPA03007417A (ja)
NL (1) NL1017388C2 (ja)
WO (1) WO2002067539A1 (ja)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7342893B2 (en) * 2000-08-03 2008-03-11 Sheer Networks Ltd. Path discovery in a distributed network management architecture
US6553218B1 (en) 2000-11-17 2003-04-22 Eimar M. Boesjes Distributed wireless online access system
NL1017388C2 (nl) 2001-02-16 2002-08-19 Marc Van Oldenborgh Organisch datanetwerk met een dynamische topologie.
US20030204602A1 (en) * 2002-04-26 2003-10-30 Hudson Michael D. Mediated multi-source peer content delivery network architecture
US7251832B2 (en) * 2003-03-13 2007-07-31 Drm Technologies, Llc Secure streaming container
US7440842B1 (en) * 2003-05-09 2008-10-21 Dimitri Vorona System for transmitting, processing, receiving, and displaying traffic information
US8825356B2 (en) 2003-05-09 2014-09-02 Dimitri Vorona System for transmitting, processing, receiving, and displaying traffic information
US20070093294A1 (en) * 2003-09-19 2007-04-26 Reza Serafat Method and device for supporting wireless multi-player gaming with a multi-player game hub
US20140071818A1 (en) 2004-07-16 2014-03-13 Virginia Innovation Sciences, Inc. Method and system for efficient communication
US7353034B2 (en) 2005-04-04 2008-04-01 X One, Inc. Location sharing and tracking using mobile phones or other wireless devices
JP2007048150A (ja) * 2005-08-11 2007-02-22 Ricoh Co Ltd 無線通信装置、無線通信方法、無線通信プログラム、および該プログラムを記録した記録媒体
US7492716B1 (en) * 2005-10-26 2009-02-17 Sanmina-Sci Method for efficiently retrieving topology-specific data for point-to-point networks
KR100823730B1 (ko) * 2005-12-07 2008-04-21 한국전자통신연구원 피투피 기반의 스트리밍 서비스 제공 방법 및 장치, 이를이용한 스트리밍 서비스 시스템
WO2007121610A1 (fr) * 2006-04-21 2007-11-01 Yongmin Zhang Procédé de transmission de contenu d'un réseau poste à poste et appareil de localisation et de lecture
US9069870B2 (en) * 2006-07-12 2015-06-30 International Business Machines Corporation Client-side aggregation of context-sensitive request results where results for aggregation are asynchronously produced by multiple servers
US20080127234A1 (en) * 2006-09-19 2008-05-29 International Business Machines Corporation Methods, systems, and computer program products for a remote request dispatcher extension framework for container based programming models
US8555335B2 (en) * 2006-11-01 2013-10-08 Microsoft Corporation Securing distributed application information delivery
US20080256341A1 (en) * 2007-04-11 2008-10-16 Microsoft Corporation Data Processing Pipeline Selection
US9432243B2 (en) * 2007-08-22 2016-08-30 International Business Machines Corporation Re-using asynchronous server-side results generated for a request context of one client to satisfy a request context of a different client
US8032587B2 (en) * 2007-08-28 2011-10-04 International Business Machines Corporation Method and apparatus for client-side aggregation of asynchronous fragmented requests
US7698411B2 (en) * 2007-08-22 2010-04-13 International Business Machines Corporation Selectively delivering cached content or processed content to clients based upon a result completed percentage
KR101516637B1 (ko) * 2007-12-24 2015-05-06 엘지전자 주식회사 네트워킹 모듈이 구비된 단말기와 이를 이용한 데이터 전송방법
JP2009171388A (ja) * 2008-01-18 2009-07-30 Panasonic Corp 情報送信装置および情報配信システム
US8255635B2 (en) * 2008-02-01 2012-08-28 International Business Machines Corporation Claiming coherency ownership of a partial cache line of data
US8024527B2 (en) * 2008-02-01 2011-09-20 International Business Machines Corporation Partial cache line accesses based on memory access patterns
US8250307B2 (en) * 2008-02-01 2012-08-21 International Business Machines Corporation Sourcing differing amounts of prefetch data in response to data prefetch requests
US8108619B2 (en) * 2008-02-01 2012-01-31 International Business Machines Corporation Cache management for partial cache line operations
US8117401B2 (en) * 2008-02-01 2012-02-14 International Business Machines Corporation Interconnect operation indicating acceptability of partial data delivery
US20090198910A1 (en) * 2008-02-01 2009-08-06 Arimilli Ravi K Data processing system, processor and method that support a touch of a partial cache line of data
US7958309B2 (en) 2008-02-01 2011-06-07 International Business Machines Corporation Dynamic selection of a memory access size
US8266381B2 (en) * 2008-02-01 2012-09-11 International Business Machines Corporation Varying an amount of data retrieved from memory based upon an instruction hint
US8140771B2 (en) * 2008-02-01 2012-03-20 International Business Machines Corporation Partial cache line storage-modifying operation based upon a hint
US8565733B2 (en) * 2008-05-08 2013-10-22 Clear Channel Management Services, Inc. Computer-based method and system for processing a file request in response to a message received from a user mobile device
US8566185B2 (en) * 2008-06-26 2013-10-22 Sap Ag Managing consistent interfaces for financial instrument business objects across heterogeneous systems
US20100057938A1 (en) * 2008-08-26 2010-03-04 John Osborne Method for Sparse Object Streaming in Mobile Devices
US8117390B2 (en) * 2009-04-15 2012-02-14 International Business Machines Corporation Updating partial cache lines in a data processing system
US8140759B2 (en) * 2009-04-16 2012-03-20 International Business Machines Corporation Specifying an access hint for prefetching partial cache block data in a cache hierarchy
US8176254B2 (en) * 2009-04-16 2012-05-08 International Business Machines Corporation Specifying an access hint for prefetching limited use data in a cache hierarchy
US8378849B2 (en) * 2009-07-28 2013-02-19 International Business Machines Corporation Enabling driver communication
US8204742B2 (en) * 2009-09-14 2012-06-19 Srs Labs, Inc. System for processing an audio signal to enhance speech intelligibility
JP5247744B2 (ja) * 2010-03-05 2013-07-24 三菱電機株式会社 ファイル転送システムおよびファイル転送方法
US8604926B2 (en) 2010-05-12 2013-12-10 International Business Machines Corporation Automatic verification of network cable connections
US9787490B2 (en) 2011-01-04 2017-10-10 Motorola Solutions, Inc. Method of aggregating conventional resources upon losing connectivity to a master system site
US8688827B2 (en) 2011-02-10 2014-04-01 Xvd Technology Holdings Limited Overlay network
US9215268B1 (en) * 2011-03-18 2015-12-15 Amazon Technologies, Inc. System and method for selection and switching of content sources for a streaming content session
US9112948B1 (en) 2011-03-18 2015-08-18 Amazon Technologies, Inc. System and method for assignment and switching of content sources for a streaming content session
CN102306218A (zh) * 2011-08-17 2012-01-04 合肥天智科技发展有限公司 便携式机柜锁数据采集器
KR101786573B1 (ko) * 2013-01-07 2017-10-18 후아웨이 테크놀러지 컴퍼니 리미티드 문맥화된 정보 버스
US9875504B1 (en) 2014-02-16 2018-01-23 Evan Gates Roe Real-time video streaming of marine life for sale
US10097874B2 (en) * 2014-06-27 2018-10-09 Qualcomm Incorporated System and method for monitoring media stream buffers of media output devices in order to synchronize media content output
EP3021304A1 (en) * 2014-11-17 2016-05-18 Continental Automotive GmbH Device and method for oncoming-traffic-congestion-prevention
CN106330997B (zh) 2015-06-19 2019-08-09 网宿科技股份有限公司 一种用于移动终端应用的内容分发的方法和系统
US10091264B2 (en) 2015-12-26 2018-10-02 Intel Corporation Technologies for streaming device role reversal
CN108883575A (zh) * 2016-02-18 2018-11-23 维洛3D公司 准确的三维打印
ES2949986T3 (es) * 2016-04-01 2023-10-04 Innogy Innovation Gmbh Sistema de producción controlable mediante una aplicación de igual a igual
CN105933147A (zh) * 2016-04-14 2016-09-07 北京空间飞行器总体设计部 一种卫星系统拓扑优化方法
US11044292B2 (en) 2016-04-27 2021-06-22 Sony Corporation Apparatus and method for playing back media content from multiple sources
CN109155749B (zh) * 2016-06-21 2021-11-19 甲骨文国际公司 用于将消息与会话相关联的方法和系统
US20190037958A1 (en) * 2017-08-03 2019-02-07 Richard Salas Disposable Insert with Deodorizing Antiperspirant
US11089341B2 (en) 2018-05-11 2021-08-10 Prowire Sport Llc System and method for capturing and distributing a live audio stream of a live event in real-time
US11606407B2 (en) 2018-07-05 2023-03-14 Prowire Sport Limited System and method for capturing and distributing live audio streams of a live event
CN112913219B (zh) * 2018-10-15 2024-02-23 利维帕尔森有限公司 动态终结点通信通道的连接管理方法、系统和计算机可读介质
US11895171B2 (en) 2021-10-01 2024-02-06 Comcast Cable Communications, Llc Method and apparatus for mobile device as temporary content origin

Family Cites Families (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3038127A1 (de) 1979-10-20 1981-04-30 Lucas Industries Ltd., Birmingham, West Midlands Kraftstoffeinspritzpumpe
GB8817288D0 (en) * 1988-07-20 1988-08-24 Racal Milgo Ltd Methods of & networks for information communication
KR960005281B1 (ko) * 1989-07-01 1996-04-23 노희집 밸브개폐장치
US6407991B1 (en) * 1993-05-06 2002-06-18 Intermec Ip Corp. Communication network providing wireless and hard-wired dynamic routing
US7006881B1 (en) * 1991-12-23 2006-02-28 Steven Hoffberg Media recording device with remote graphic user interface
US5406587A (en) * 1993-02-08 1995-04-11 Zenith Electronics Corporation Error tracking loop
US5511168A (en) * 1993-07-01 1996-04-23 Digital Equipment Corporation Virtual circuit manager for multicast messaging
CA2129197C (en) * 1994-07-29 1999-11-09 Roger Y.M. Cheung Method and apparatus for connecting a wireless lan to a wired lan
US5553071A (en) * 1994-10-14 1996-09-03 Lucent Technologies Inc. Communication system topology providing dynamic allocation of B-channels
US5668923A (en) 1995-02-28 1997-09-16 Motorola, Inc. Voice messaging system and method making efficient use of orthogonal modulation components
DE19612631A1 (de) * 1995-03-31 1996-10-02 Mazda Motor Multiplexdatenübermittlungssystem
US5654958A (en) * 1995-06-05 1997-08-05 Motorola, Inc. System and method for learning and dynamic routing of data in a mobile communication network
US5657390A (en) 1995-08-25 1997-08-12 Netscape Communications Corporation Secure socket layer application program apparatus and method
US5652751A (en) * 1996-03-26 1997-07-29 Hazeltine Corporation Architecture for mobile radio networks with dynamically changing topology using virtual subnets
US5737319A (en) * 1996-04-15 1998-04-07 Mci Corporation Dynamic network topology determination
US5832171A (en) * 1996-06-05 1998-11-03 Juritech, Inc. System for creating video of an event with a synchronized transcript
US5884031A (en) 1996-10-01 1999-03-16 Pipe Dream, Inc. Method for connecting client systems into a broadcast network
US6052718A (en) * 1997-01-07 2000-04-18 Sightpath, Inc Replica routing
US6198749B1 (en) * 1997-04-03 2001-03-06 Nortel Networks Limited System for inverse multiplexing analog channels
US5983073A (en) 1997-04-04 1999-11-09 Ditzik; Richard J. Modular notebook and PDA computer systems for personal computing and wireless communications
US6055562A (en) * 1997-05-01 2000-04-25 International Business Machines Corporation Dynamic mobile agents
US5944783A (en) * 1997-07-29 1999-08-31 Lincom Corporation Apparatus and method for data transfers through software agents using client-to-server and peer-to-peer transfers
JPH1153324A (ja) * 1997-08-08 1999-02-26 Nec Corp エージェント識別装置及びプログラム受信機能付エージェント装置
GB9722343D0 (en) * 1997-10-22 1997-12-17 British Telecomm Distributed virtual environment
DE19746904B4 (de) * 1997-10-23 2004-09-30 Telefonaktiebolaget L M Ericsson (Publ) Verkehrsdaten-Bewertungsgerät und zugeordnetes Verfahren für ein Netzwerk mit dynamischer Vermittlung
US6246669B1 (en) * 1997-11-28 2001-06-12 Cisco Technology, Inc. Method and system for optimizing connection set-up operations in a high speed digital network
US6160808A (en) * 1997-12-18 2000-12-12 3Com Corporation Technique for transmitting incoming multi-link point-to-point (PPP) packet traffic over multiple outgoing links in a multi-link bundle
US6400476B1 (en) * 1997-12-31 2002-06-04 Cisco Photonics Italy S.R.L. Method and apparatus for transparent optical communication with two-fiber bidirectional ring with autoprotection and management of low priority traffic
US6134243A (en) 1998-01-15 2000-10-17 Apple Computer, Inc. Method and apparatus for media data transmission
JPH11225161A (ja) 1998-02-05 1999-08-17 Matsushita Electric Ind Co Ltd データ処理方法およびデータ処理装置
US7263497B1 (en) * 1998-02-06 2007-08-28 Microsoft Corporation Secure online music distribution system
US6049805A (en) * 1998-02-24 2000-04-11 Microsoft Corporation Dynamic event mechanism for objects with associational relationships
US6667957B1 (en) * 1998-03-14 2003-12-23 University Of Maryland Adaptive routing method for a dynamic network
DE19816935A1 (de) 1998-04-16 1999-11-11 Siemens Ag Dezentral gesteuertes Handover mobiler Endeinrichtungen
US7545816B1 (en) 1998-04-29 2009-06-09 Ncr Corporation Transaction processing systems maintenance
US6243585B1 (en) * 1998-05-22 2001-06-05 Lucent Technologies, Inc. Wireless telecommunications network whose facilities are mobile and whose topology is dynamic
US6195680B1 (en) 1998-07-23 2001-02-27 International Business Machines Corporation Client-based dynamic switching of streaming servers for fault-tolerance and load balancing
JP3786328B2 (ja) 1998-07-27 2006-06-14 株式会社日立製作所 サーバおよび通信制御方法
JP2990267B1 (ja) * 1998-08-27 1999-12-13 建設省土木研究所長 道路情報通信システム
GB2341059A (en) * 1998-08-28 2000-03-01 Nokia Oy Ab Internet protocol flow detection
US6816909B1 (en) * 1998-09-16 2004-11-09 International Business Machines Corporation Streaming media player with synchronous events from multiple sources
EP0993163A1 (en) * 1998-10-05 2000-04-12 Backweb Technologies Ltd. Distributed client-based data caching system and method
US6377996B1 (en) 1999-02-18 2002-04-23 International Business Machines Corporation System for seamless streaming of data stored on a network of distributed primary and target servers using segmentation information exchanged among all servers during streaming
US6249810B1 (en) 1999-02-19 2001-06-19 Chaincast, Inc. Method and system for implementing an internet radio device for receiving and/or transmitting media information
US20020013852A1 (en) * 2000-03-03 2002-01-31 Craig Janik System for providing content, management, and interactivity for thin client devices
US6466862B1 (en) * 1999-04-19 2002-10-15 Bruce DeKock System for providing traffic information
JP4276698B2 (ja) 1999-04-20 2009-06-10 富士通株式会社 データ通信システムおよび記録媒体
US6065548A (en) * 1999-06-03 2000-05-23 Deere & Company Spring trip standard having reduced spring buckling forces
US6658463B1 (en) * 1999-06-10 2003-12-02 Hughes Electronics Corporation Satellite multicast performance enhancing multicast HTTP proxy system and method
US7330875B1 (en) * 1999-06-15 2008-02-12 Microsoft Corporation System and method for recording a presentation for on-demand viewing over a computer network
US6941270B1 (en) * 1999-06-21 2005-09-06 Nokia Corporation Apparatus, and associated method, for loading a mobile terminal with an application program installed at a peer device
KR20020035571A (ko) * 1999-08-02 2002-05-11 란돌 엠. 청 서버 또는 유저로부터 다른 유저로의 vod
US6865609B1 (en) * 1999-08-17 2005-03-08 Sharewave, Inc. Multimedia extensions for wireless local area network
US6914897B1 (en) 1999-09-27 2005-07-05 3 Com Corporation System and method for accessing radio programs using a data network telephone in a network based telecommunication system
US7143432B1 (en) 1999-10-01 2006-11-28 Vidiator Enterprises Inc. System for transforming streaming video data
US6981045B1 (en) * 1999-10-01 2005-12-27 Vidiator Enterprises Inc. System for redirecting requests for data to servers having sufficient processing power to transcast streams of data in a desired format
US6708213B1 (en) 1999-12-06 2004-03-16 Lucent Technologies Inc. Method for streaming multimedia information over public networks
US6353174B1 (en) * 1999-12-10 2002-03-05 Harmonix Music Systems, Inc. Method and apparatus for facilitating group musical interaction over a network
US6742023B1 (en) 2000-04-28 2004-05-25 Roxio, Inc. Use-sensitive distribution of data files between users
US6519648B1 (en) * 2000-01-24 2003-02-11 Friskit, Inc. Streaming media search and continuous playback of multiple media resources located on a network
US7117273B1 (en) 2000-01-25 2006-10-03 Cisco Technology, Inc. Methods and apparatus for maintaining a map of node relationships for a network
JP2001217839A (ja) * 2000-01-31 2001-08-10 Fujitsu Ltd ノード装置
US6456599B1 (en) 2000-02-07 2002-09-24 Verizon Corporate Services Group Inc. Distribution of potential neighbor information through an ad hoc network
JP3778256B2 (ja) * 2000-02-28 2006-05-24 セイコーエプソン株式会社 半導体装置及びその製造方法、回路基板並びに電子機器
AU2001245458A1 (en) * 2000-03-10 2001-09-24 E.I. Du Pont De Nemours And Company Polymerization of olefins
US7398312B1 (en) 2000-03-29 2008-07-08 Lucent Technologies Inc. Method and system for caching streaming multimedia on the internet
US7415537B1 (en) * 2000-04-07 2008-08-19 International Business Machines Corporation Conversational portal for providing conversational browsing and multimedia broadcast on demand
US6442815B1 (en) * 2000-04-18 2002-09-03 The Regents Of The University Of Michigan Reconfigurable automatic tool changer
US6931550B2 (en) * 2000-06-09 2005-08-16 Aramira Corporation Mobile application security system and method
US6829486B2 (en) * 2000-08-14 2004-12-07 Vesuvius Communique system for combined cellular and wireline communication networks
DE10041099C2 (de) 2000-08-22 2002-10-24 Bosch Gmbh Robert Verfahren zur Übertragung von Datenpaketen zwischen Kraftfahrzeugen
US6684072B1 (en) * 2000-08-24 2004-01-27 Level Z, L.L.C. Global wireless prepaid roaming
US6760306B1 (en) * 2000-09-27 2004-07-06 Nortel Networks Limited Method for reserving network resources using a hierarchical/segment tree for starting and ending times of request
US7069310B1 (en) * 2000-11-10 2006-06-27 Trio Systems, Llc System and method for creating and posting media lists for purposes of subsequent playback
US6553218B1 (en) * 2000-11-17 2003-04-22 Eimar M. Boesjes Distributed wireless online access system
US20020065922A1 (en) 2000-11-30 2002-05-30 Vijnan Shastri Method and apparatus for selection and redirection of an existing client-server connection to an alternate data server hosted on a data packet network (DPN) based on performance comparisons
US20020073204A1 (en) * 2000-12-07 2002-06-13 Rabindranath Dutta Method and system for exchange of node characteristics for DATA sharing in peer-to-peer DATA networks
US6636854B2 (en) * 2000-12-07 2003-10-21 International Business Machines Corporation Method and system for augmenting web-indexed search engine results with peer-to-peer search results
US7143939B2 (en) * 2000-12-19 2006-12-05 Intel Corporation Wireless music device and method therefor
US7277950B1 (en) * 2000-12-29 2007-10-02 Swarmcast, Inc. Packet transfer mechanism over a peer to peer network
US20030016655A1 (en) * 2001-01-29 2003-01-23 Docomo Communications Laboratories Usa, Inc. Fast dynamic route establishment in wireless, mobile access digital networks using mobility prediction
US7043644B2 (en) * 2001-01-31 2006-05-09 Qurio Holdings, Inc. Facilitating file access from firewall-protected nodes in a peer-to-peer network
US7665115B2 (en) * 2001-02-02 2010-02-16 Microsoft Corporation Integration of media playback components with an independent timing specification
NL1017388C2 (nl) * 2001-02-16 2002-08-19 Marc Van Oldenborgh Organisch datanetwerk met een dynamische topologie.
JP3487346B2 (ja) * 2001-03-30 2004-01-19 独立行政法人通信総合研究所 道路交通監視システム
US6454599B1 (en) * 2001-08-23 2002-09-24 Hon Hai Precision Ind. Co., Ltd. Electrical connector having grounding bridges
JP2003194557A (ja) * 2001-12-27 2003-07-09 Toyota Motor Corp 交通情報出力装置及び交通情報配信装置並びに配信方法
US6801837B2 (en) * 2002-01-03 2004-10-05 Meritor Light Vehicle Technology, Llc Intervehicle network communication system
US6780487B2 (en) * 2002-04-15 2004-08-24 Lee Pao-Hsi Elastic pad
US20080047329A1 (en) * 2002-06-11 2008-02-28 Intelligent Technologies International, Inc. Remote Monitoring of Fluid Reservoirs
US6865480B2 (en) * 2002-06-19 2005-03-08 Alpine Electronics, Inc Display method and apparatus for navigation system
US7676590B2 (en) * 2004-05-03 2010-03-09 Microsoft Corporation Background transcoding
US20050286549A1 (en) * 2004-06-23 2005-12-29 Murphy Frederick J Secured peer-to-peer wireless telecommunications apparatus and method
US20070088494A1 (en) * 2004-06-29 2007-04-19 Rothman Michael A System and method for enabling wireless traffic message passing
US7117083B2 (en) * 2004-06-29 2006-10-03 Intel Corporation System and method for enabling wireless traffic message passing
US7174385B2 (en) 2004-09-03 2007-02-06 Microsoft Corporation System and method for receiver-driven streaming in a peer-to-peer network
US20060058952A1 (en) * 2004-09-07 2006-03-16 Cooper Clive W System and method of wireless downloads of map and geographic based data to portable computing devices
US7250860B2 (en) * 2004-09-30 2007-07-31 Signature Control Systems, Inc. Method and integrated system for networked control of an environment of a mobile object
US7860019B2 (en) * 2004-11-05 2010-12-28 Toshiba America Research, Inc. Peer-to-peer network and user information discovery and sharing for mobile users and devices
KR20060067745A (ko) 2004-12-15 2006-06-20 현대자동차주식회사 차량용 네트워크 시스템
US20060133415A1 (en) * 2004-12-21 2006-06-22 Mueller Peter D Wireless internetwork transfer apparatus, systems, and methods
US20060235967A1 (en) * 2005-04-19 2006-10-19 Neomedia Technologies, Inc. System and method for exchange of information amongst peers in a peer to peer wireless network
US7606659B2 (en) * 2005-06-01 2009-10-20 The Boeing Company Exhaustive swarming search strategy using distributed pheromone maps
US20060291482A1 (en) * 2005-06-23 2006-12-28 Cisco Technology, Inc. Method and apparatus for providing a metropolitan mesh network
CN101208973B (zh) 2005-08-19 2011-06-08 塞纳雷神有限公司 通信方法与系统
SE0501854L (sv) 2005-08-22 2007-02-23 Coat In Goeteborg Ab Anordning och förfarande för trådlösa nätverk
US7875136B2 (en) * 2005-12-07 2011-01-25 Sca Hygiene Products Ab Method for manufacturing an absorbent article
US7532898B2 (en) 2006-01-19 2009-05-12 International Business Machines Corporation Generating and dynamically updating databases of WIFI hotspots locations and performance metrics via location mappers
US8238926B2 (en) * 2007-03-14 2012-08-07 Lewis Scott W Multimedia communicator utilized to offer dedicated services

Also Published As

Publication number Publication date
US20060242224A1 (en) 2006-10-26
EP2317721A2 (en) 2011-05-04
EP2372969A1 (en) 2011-10-05
US20070118591A1 (en) 2007-05-24
EA200300902A1 (ru) 2004-02-26
EP2410426A2 (en) 2012-01-25
US8589566B2 (en) 2013-11-19
US7587508B2 (en) 2009-09-08
US7779138B2 (en) 2010-08-17
US7522993B2 (en) 2009-04-21
US20080022006A1 (en) 2008-01-24
AU2002230291B2 (en) 2008-01-03
IL157434A0 (en) 2004-03-28
US20020116492A1 (en) 2002-08-22
US20110004696A1 (en) 2011-01-06
US20140280642A1 (en) 2014-09-18
EP1368953A1 (en) 2003-12-10
BR0207498A (pt) 2004-07-13
CN101778127A (zh) 2010-07-14
JP2004531115A (ja) 2004-10-07
EP2410426A3 (en) 2012-07-04
KR20030093211A (ko) 2003-12-06
EP1368953B1 (en) 2015-05-13
US7349984B2 (en) 2008-03-25
CN100589478C (zh) 2010-02-10
US20110004691A1 (en) 2011-01-06
US7065548B2 (en) 2006-06-20
CN101778129A (zh) 2010-07-14
US8266315B2 (en) 2012-09-11
CN1504040A (zh) 2004-06-09
CA2825088A1 (en) 2002-08-29
EP2334032A1 (en) 2011-06-15
US8090862B2 (en) 2012-01-03
US20070220117A1 (en) 2007-09-20
US20110004695A1 (en) 2011-01-06
EP2317721A3 (en) 2011-06-08
BRPI0216085B1 (pt) 2016-01-05
US9531770B2 (en) 2016-12-27
NL1017388C2 (nl) 2002-08-19
KR100895473B1 (ko) 2009-05-06
US7349983B2 (en) 2008-03-25
WO2002067539A1 (en) 2002-08-29
US20060230179A1 (en) 2006-10-12
EP2317721B1 (en) 2014-11-12
US7590752B2 (en) 2009-09-15
CN101778128A (zh) 2010-07-14
EA006074B1 (ru) 2005-08-25
CN101677332A (zh) 2010-03-24
US20070220130A1 (en) 2007-09-20
MXPA03007417A (es) 2005-04-11
IL157434A (en) 2012-07-31
US8099513B2 (en) 2012-01-17
US20110138068A1 (en) 2011-06-09

Similar Documents

Publication Publication Date Title
JP4525961B2 (ja) 動的なトポロジーを有する有機的なデータネットワーク
AU2002230291A1 (en) Organic data network having a dynamic topology
CA2438497C (en) Organic data network having a dynamic topology
AU2008201497A1 (en) Organic data network having a dynamic topology
AU2013231021A1 (en) Organic data network having a dynamic topology

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060906

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20061204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070725

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20070907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070907

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071011

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20071109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090826

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100312

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

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

Free format text: PAYMENT UNTIL: 20130611

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

LAPS Cancellation because of no payment of annual fees