JP7295752B2 - 企業ネットワーク内の動的コンテンツ配信 - Google Patents

企業ネットワーク内の動的コンテンツ配信 Download PDF

Info

Publication number
JP7295752B2
JP7295752B2 JP2019169167A JP2019169167A JP7295752B2 JP 7295752 B2 JP7295752 B2 JP 7295752B2 JP 2019169167 A JP2019169167 A JP 2019169167A JP 2019169167 A JP2019169167 A JP 2019169167A JP 7295752 B2 JP7295752 B2 JP 7295752B2
Authority
JP
Japan
Prior art keywords
group
content
logical
devices
node
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.)
Active
Application number
JP2019169167A
Other languages
English (en)
Other versions
JP2020061135A (ja
JP2020061135A5 (ja
Inventor
マーク・イー・モスコ
Original Assignee
パロ アルト リサーチ センター インコーポレイテッド
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 パロ アルト リサーチ センター インコーポレイテッド filed Critical パロ アルト リサーチ センター インコーポレイテッド
Publication of JP2020061135A publication Critical patent/JP2020061135A/ja
Publication of JP2020061135A5 publication Critical patent/JP2020061135A5/ja
Application granted granted Critical
Publication of JP7295752B2 publication Critical patent/JP7295752B2/ja
Active 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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1051Group master selection mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Description

本開示は、一般に、コンテンツ配信の分野に関連する。より具体的には、本開示は、企業ネットワーク内にコンテンツを効率的に配信するためのシステム及び方法に関する。
インターネット及び電子商取引の急増により、膨大な量のデジタルコンテンツが作成され続けている。企業又は大企業は、複数のサイトにわたって配信されたクラウドストレージデバイス及びプリンタなどの被管理デバイスのネットワークを含み得る。そのようなデバイスのネットワークでは、デバイスマネージャは、そのサイトのうちの1つのローカルネットワーク内のデバイスを管理(例えば、構成及び制御)してもよい。このデバイスマネージャは、ファームウェア更新、ポリシーファイル配信、又はデータ転送に関与することができる。これらの動作は、通常、企業ネットワーク内の多数の被管理デバイスへの大きなファイル転送を伴う。
従来のデバイスマネージャは、通常、被管理デバイスのインターネットプロトコル(Internet Protocol、IP)アドレスに基づく簡易ネットワーク管理プロトコル(Simple Network Management Protocol、SNMP)クエリに基づいてデバイスを管理する。しかしながら、各デバイスは、ローカルアドレスプールに基づいて(例えば、プライベートIPアドレスのセットから)、動的ホスト構成プロトコル(Dynamic Host Configuration Protocol、DHCP)サーバによってIPアドレスを割り当てられ得る。プライベートネットワーク内のデバイスへのアクセスを促進するために、デバイスマネージャは、従来、同じプライベートIPサブネットワーク及びローカルエリアネットワーク(local area network、LAN)などの同じネットワーク内に常駐する。しかしながら、大企業では、デバイスマネージャは、複数のサブネットにわたって大きなファイルを配信する必要があり得る。
デバイスマネージャは、典型的には、既存のネットワーキングフレームワーク及びプロトコルを使用して、企業ネットワーク内の大規模なファイル配信を可能にする。しかしながら、このような解決策は、位相認識ピアツーピアコンテンツ配信ソリューションに向けられている。これらの解決策は、特定のファイルのための好適な候補を見出すために参加者間のネットワーク条件を推定する。しかしながら、これらの解決策は、通常、ファイルの配信を計画しない。結果として、ファイルは、需要に基づいてネットワーク内に配信され得る。具体的には、これらの解決策はインターネットのためのものであるため、それらは、最小位相相関を有する広範に配信された参加者用に設計される。場合によっては、特定のファイルは、瞬間的な需要を有し、時間関心相関を作成する可能性があるが、位相相関は分散したままである。したがって、これらの解決策は、ファームウェア更新又はオペレーティングシステムパッチなどの、計画された使用のための高度な位相相関及び時間相関を有し得る企業環境を提供しない場合がある。
本明細書に記載される実施形態は、企業環境における動的コンテンツ配信を促進するためのシステムを提供する。動作中、システムは、企業環境のトポグラフィ情報を判定する。システムは、トポグラフィ情報に基づいて論理グループのセットを判定する。それぞれの論理グループは、コントローラによって管理される1つ以上のデバイスと、それらの1つ以上のデバイス間の接続を提供するネットワークとを含むことができる。システムは、ネットワーク内の第1の配信ツリーを介してコンテンツの配信計画を生成する。第1の配信ツリーのそれぞれのノードは、論理グループのセットの論理グループに対応する。コンテンツをホストする論理グループは、第1の配信ツリーのルートノードに対応することができる。次いで、システムは、配信計画を含む通知メッセージを、論理グループのセットのそれぞれの論理グループに送信する。
この実施形態の変形例では、配信計画は、受信デバイスがいつコンテンツを要求できるかを示すタイムラインを更に含む。
この実施形態の変形例では、コンテンツは、コントローラによって管理される1つ以上のデバイスのファームウェア更新である。
この実施形態の変形例では、システムは、論理グループのセットのそれぞれの論理グループのための1つ以上のグループヘッドを選択する。第1の論理グループと第2の論理グループとの間のグループ間接続は、第1及び第2の論理グループのそれぞれのグループヘッド間に形成される。
更なる変形例では、第1の論理グループは、第1のグループヘッド及び第2のグループヘッドを含む。コンテンツは、固有のブロックのセットに分割される。第1のグループヘッドは、第1の配信ツリーの上流ノードから固有ブロックのセットの第1のサブセットと、第2のグループヘッドから固有ブロックのセットの第2のサブセットとを取得することができる。
更なる変形例では、システムは、第1の論理グループ内の第2の配信ツリーを判定する。第2の配信ツリーは、コンテンツのそれぞれの受信ノードにわたり得る。第1及び第2のグループヘッドは、第2の配信ツリーの最上位にあってもよい。
この実施形態の変形例では、システムは、企業環境の1つ以上のデバイスのデバイス情報、及び企業環境内のそれぞれのリンクの帯域幅のうちの1つ以上を判定することによって、メッセージキュー(message queue、MQ)ベースのメッセージ交換を使用してトポグラフィ情報を判定することができる。
本明細書に記載される実施形態は、企業環境における動的コンテンツ配信を促進するためのシステムを提供する。動作中、システムは、企業環境のソースデバイスの記憶デバイス内にコンテンツを記憶する。続いて、システムは、第1の受信デバイスからコンテンツに対する要求を受信する。次いで、システムは、ソースデバイスの現在及び割り当てられたタスクを示すスコアボードに基づいて、ソースデバイスの作業負荷を判定する。ソースデバイスの作業負荷に基づいて、システムは、第1の受信デバイスに対して、即時受入、保留受入、委譲、及び拒絶を含むオプションのセットから応答オプションを選択する。
この実施形態の変形例では、システムが応答オプションとして保留受入を選択する場合、システムは、ソースデバイスの鍵によって認証され、第1の受信デバイスのための時間窓で発行された第1のトークンを発行する。第1のトークンを受信すると、システムは、第1の受信デバイスがそれを介してソースデバイスからコンテンツを取得することができるチャネルを識別するチャネル識別子を割り当てる。
この実施形態の変形例では、システムが応答オプションとして委譲を選択する場合、システムは、第2の受信デバイスがコンテンツを取得したと判定し、第2のトークンを発行し、第2のトークンは、第1の受信ノードのための時間窓で発行された第2の受信ノードの鍵によって認証される。システムは、第1の受信デバイスがそれを介して第2の受信デバイスからコンテンツを取得することができるチャネルを識別するチャネル識別子を割り当てることができる。
本出願の一実施形態に係る、効率的なコンテンツ配信をサポートする例示的な企業環境を示す。 本出願の一実施形態に係る、企業環境におけるコンテンツの例示的なグループ間配信及びグループ内配信を示す。 本出願の一実施形態に係る、企業環境におけるコンテンツの効率的な配信を促進する例示的なシステムアーキテクチャを示す。 本出願の一実施形態に係る、企業環境のトポグラフィ情報を判定するコンテンツ配信システムの方法を示すフロー図を提示する。 本出願の一実施形態に係る、企業環境のトポグラフィ情報に基づいて、コンテンツの配信を計画するコンテンツ配信システムの方法を示すフロー図を提示する。 本出願の一実施形態に係る、企業環境におけるグループ間配信ツリーを判定するコンテンツ配信システムの方法を示すフロー図を提示する。 本出願の一実施形態に係る、企業環境におけるグループ間配信ツリーを介してファイルを取得するグループヘッドの方法を示すフロー図を提示する。 本出願の一実施形態に係る、論理グループ内のグループ内負荷共有配信ツリーを判定するコンテンツ配信システムの方法を示すフロー図を提示する。 本出願の一実施形態に係る、論理グループ内のグループ内負荷共有配信ツリーを介してファイルを取得する受信デバイスの方法を示すフロー図を提示する。 本出願の一実施形態に係る、企業環境における例示的な保留可能なコンテンツ配信を示す。 本出願の一実施形態に係る、企業環境における例示的な委譲可能なコンテンツ配信を示す。 本出願の一実施形態に係る、コンテンツを受信ノードに提供するソースノードの方法を示すフロー図を提示する。 本出願の一実施形態に係る、ソースノードからコンテンツを取得する受信ノードの方法を示すフロー図を提示する。 本出願の一実施形態に係る、受信ノードにコンテンツを提供する、委譲ノードの方法を示すフロー図を提示する。 本出願の一実施形態に係る、企業環境における効率的なコンテンツ配信を促進する例示的なコンピュータシステムを示す。 本出願の一実施形態に係る、企業環境における効率的なコンテンツ配信を促進する例示的な装置を示す。
本明細書に記載される実施形態は、(i)企業環境のトポグラフィ情報に基づいて、大量のコンテンツの配信を計画すること、及び(ii)企業環境における保留可能及び委譲可能なコンテンツ配信を促進することによって、企業環境における大量のコンテンツを効率的に配信する問題を解決する。
既存の技術では、ソースデバイス(例えば、デバイスマネージャ)は、ポイントツーポイント通信を介して、受信デバイス(例えば、被管理デバイス)に大量のコンテンツを配信する。ファームウェア更新などのコンテンツが多数の受信デバイスに送信される場合、このプロセスは、各受信デバイスに対して繰り返される。そのような配信モードは、企業環境のネットワーキングインフラストラクチャ内の大量のトラフィックを引き起こし得る。加えて、各転送はデバイスペア間の個別の転送であり得るため、各転送は破損しやすい場合がある。その結果、企業環境は、些細でない破損率に直面する場合がある。
本明細書に記載される実施形態は、企業環境のトポグラフィを発見することができるコンテンツ配信システムを提供すること、コンテンツのための配信オーバーレイを計画し、オーバーレイを介して転送を実行するためにピアツーピア技術を使用することによって、これらの問題を解決する。システムは、セキュリティフレームワーク、制御フレームワーク、及びデータ転送フレームワークを促進することができる。セキュリティフレームワークは、制御チャネル及びデータチャネルの両方に対するセキュリティを提供することができる。区別されたノードは、システムを制御することに関与することができ、したがってコントローラと呼ばれる。コントローラの役割は、複数のデバイス上に(例えば、冗長性を有するように)配信させることができる。コントローラは、メッセージを(例えば、公開鍵システム(RSA)及び/又は対称鍵交換を使用して)認証することができる。
制御フレームワークは、コマンド、要求、応答、及び通知であり得るメッセージのセットを使用することができる。コマンドは、コントローラから発行することができ、要求及び通知は、デバイスから発行することができ、応答はコマンド又は要求に従う。各メッセージは、送信者によって署名され、制御チャネルを介して伝送され得る。いくつかの実施形態では、制御チャネルは、メッセージキュー又は伝送制御プロトコル(Transmission Control Protocol、TCP)接続に基づいて実装され得る。それらは、他のデバイスを監視、編成、及び制御するために制御チャネルを使用することができる。例えば、コントローラは、デバイス構成及びネットワーク条件などの測定を行うようにデバイスに命令し、測定値をコントローラに提供することができる。コントローラは、測定値に基づいて、企業環境のトポグラフィ情報を判定することができる。次いで、コントローラは、ソースデバイス(例えば、ストレージサーバ)から特定のコンテンツのための効率的な配信経路を計画することができる。
データ転送フレームワークは、企業環境におけるファイル転送プロトコルを提供することができる。コントローラは、そのコンテンツを要求する企業環境において、各被管理デバイスに通知することができる。コントローラはまた、コンテンツに関する時間枠の対応する被管理デバイスに(例えば、いつ要求し、どこから要求するか)を通知することができる。被管理デバイスは、要求に対する優先度を示す優先度値で構成することができる。例えば、優先度は、被管理デバイスが最初にコンテンツを要求すべきソースデバイスを示すことができる。いくつかの実施形態では、コントローラは、被管理デバイスのセットを論理グループに(例えば、インターネットプロトコル(IP)サブネットに基づいて)編成する。コンテンツを配信するために、コントローラは、ツリーのノードとして論理グループを含む配信ツリーを生成することができる。各グループは、上流ノード(すなわち、ツリーの親ノード)からコンテンツを取得するために関与する1つ以上のグループヘッドを含むことができる。ツリーのルートは、コンテンツのソースを含むサブネットであり得る。
グループヘッドは、複数のグループヘッドがコンテンツの固有ブロックを同時にダウンロードすることを可能にするブロックベースのプロトコルを配備することができる。例えば、グループヘッドは、ランダムブロックのダウンロードを開始し、互いに協調して重複排除を回避することができる。あるいは、1つのグループヘッドは、奇数個目のブロックをダウンロードすることができ、他方は偶数個目のブロックをダウンロードすることができる。各ブロックは、1つ以上のデータチャンク(例えば、コンテンツを分割することができるデータの単位)を含むことができる。グループヘッドはまた、パイプラインを組み込むことができる。上流ノードが閾値量のデータをダウンロードすると、下流ノードは、コンテンツ全体が上流ノードによってダウンロードされていない場合であっても、そのデータを取り出すことを開始することができる。100メガバイト(MB)ファイルが、配信ツリー内の4つのホップのために、1メガバイト/秒(Mbps)リンクを介して転送されると仮定する。ホップバイホップ転送のために、最後のノードは、300秒後にファイルを受信し始め、400秒後にそれを受信することを終了する。ブロックベースのプロトコルで、最後のホップは、3秒後にデータ受信データを開始し、103秒後にファイル全体を受信する。
いくつかの実施形態では、配信技術を更に改善するために、システムは、企業環境内の保留可能及び委譲可能なコンテンツ配信技術を含み得る。コンテンツのソースの数は、制限することができる。そのコンテンツは、受信ノードとして動作する、多数の被管理デバイスによって要求され得る。コンテンツを効率的に配信するために、ソースノードは、ソースがコンテンツを受信ノードに送達することができるときにタイムラインを示すことによって、送達を保留することができる。受信ノードは、保留によって示される時間にコンテンツを要求することができる。更に、コンテンツが受信ノードに送達されると、そのノードはソースノードとして動作を開始することができる。元のソースノードは、そのコンテンツに対する要求をその新たなソースノードに委譲することができる。これにより、受信デバイスは、コンテンツを効率的に送達することができるソースノードを選択することを可能にする(例えば、最も早いものを送達することができる)。
図1Aは、本出願の一実施形態に係る、効率的なコンテンツ配信をサポートする例示的な企業環境を示す。企業環境100は、多数のサイト112、114、116、118、120、及び122にわたって配信され得る。これらのサイトは、ローカル又は広域ネットワークなどのネットワーク110を介して互いに結合することができる。広域ネットワークは、インターネットであり得る。サイトはまた、(例えば、ポイントツーポイント光ファイバを用いて)互いに直接接続することもできる。サイト112などのサイトは、複数のサブネット111(例えば、10.1.0.0/16)及び113(例えば、10.2.0.0/16)を含むことができる。一方、サイト114などのいくつかの他のサイトは、サブサイト124(例えば、同じ管理下の近傍のより小さなサイト)にわたり得る1つのサブネット(例えば、10.3.3.0/24)を有することができる。同様に、サイト120は、サブサイト126にわたり得る1つのサブネット(例えば、10.7.0.0/16)を有することができる。サブサイト124及び126はまた、それら自体のサブネットを維持することができることに留意されたい。
既存の技術では、環境100において、ソースデバイス102は、ポイントツーポイント通信を介して、受信デバイスに大量のコンテンツを配信する。ファームウェア更新などのコンテンツが、企業環境100のサイトにわたって多数の受信デバイスに送信される場合、このプロセスは、各サイト内の各受信デバイスに対して繰り返される。そのような配信モードは、企業環境100のネットワーク110内の大量のトラフィックを引き起こし得る。加えて、各転送はデバイスペア間の個別の転送であり得るため、各転送は脆弱で破損する場合がある。結果として、企業環境100は、些細でない破損率に直面する場合がある。
この問題を解決するために、本明細書に記載される実施形態は、企業環境100のトポグラフィを発見し、コンテンツのための配信オーバーレイを計画し、オーバーレイを介して転送を実行するためにピアツーピア技術を使用することができるコンテンツ配信システム150を提供する。システム150は、セキュリティフレームワーク、制御フレームワーク、及びデータ転送フレームワークを促進することができる。セキュリティフレームワークは、制御チャネル及びデータチャネルの両方に対するセキュリティを提供することができる。区別されたノード140は、システムを制御することに関与することができ、したがってコントローラ140と呼ばれる。いくつかの実施形態では、システム150は、コントローラ140上でホストされ得る。企業環境100は、互いに高い可用性を促進することができる複数のコントローラ140及び142を含むことができる。コントローラ140は、メッセージを(例えば、公開鍵システム及び/又は対称鍵交換を使用して)認証することができる。
システム150によって提供される制御フレームワークは、コマンド、要求、応答、及び通知であり得るメッセージのセットを使用することができる。コマンドは、コントローラ140から発行することができ、デバイス106及び108などの被管理デバイスからコマンドを発行することができ、応答はコマンド又は要求に従う。各メッセージは、送信者によって署名され、制御チャネルを介して伝送され得る。例えば、コントローラ140がデバイス106にメッセージを送信する場合、コントローラ140は、コントローラ140の秘密鍵でメッセージに署名することができる。いくつかの実施形態では、制御チャネルは、メッセージキュー接続又はTCP接続に基づいて実装され得る。制御チャネルは、他のデバイスを監視、編成、及び制御するために使用することができる。例えば、コントローラ140は、デバイス構成及びネットワーク条件などの測定を行うように被管理デバイスに命令し、測定値をコントローラ140に提供することができる。コントローラ140は、測定値に基づいて、企業環境100のトポグラフィ情報を判定することができる。次いで、コントローラ140は、ソースデバイス102から特定のコンテンツ160のための効率的な配信経路を計画することができる。コントローラ140及びソースデバイス102は、同じデバイス又は異なるデバイスであり得る。
データ転送フレームワークは、企業環境100内にファイル転送プロトコルを提供することができる。コントローラ140は、どのコンテンツを要求するかについて、企業環境100内の各被管理デバイスに通知することができる。コントローラ140はまた、コンテンツ160のための時間枠のそれぞれの被管理デバイスに(例えば、いつ要求し、どこから要求するか)を通知することができる。被管理デバイスは、要求に対する優先度を示す優先度値で構成することができる。例えば、優先度は、被管理デバイスが最初にコンテンツを要求すべきソースデバイスを示すことができる。いくつかの実施形態では、コントローラ160は、1つ以上のグループ化基準に基づいて、被管理デバイスのセットを論理グループに編成する。グループ化基準の例としては、IPサブネット、ローカルエリアネットワーク、及び層-2ネットワーク内のスパニングツリーが挙げられるが、これらに限定されない。
コンテンツ160、コントローラ140を配信するために、ツリーのノードとして論理グループを含む配信ツリーを生成することができる。この例では、それぞれのサイト又はサブサイトは論理グループとして表され、強調された矢印は、ツリーの各ブランチを描写する。サイト112は2つのサブネット111及び113を有するので、それらは、ツリー上の2つの異なるノードであり得る。企業環境100のサブサイト128などのサイト又はサブサイトが、サブサイトがコンテンツ160の受信者を含まない場合、そのサブサイトはツリーに含まれていない。各グループは、上流ノード(すなわち、ツリーの親ノード)からコンテンツを取得することに関与する1つ以上のグループヘッド(破線円で示される)を含むことができる。サブネット111に対応するグループは、ソースデバイス102及び被管理デバイス104をグループヘッドとして含むことができる。同様に、サイト114に対応する論理グループは、グループヘッドとしてデバイス106及び108を含むことができ、サイト116に対応する論理グループは、グループヘッドとしてデバイス132及び134を含むことができる。したがって、デバイス102、104、106、108、132、及び134は、グループヘッドとも称され得る。この例のツリーのルートは、ソースデバイス102がコンテンツ160をホストすることを含むサブネット111である。コントローラ140は、(例えば、ソースデバイス及び受信デバイスに基づいて)変化し得る各コンテンツの配信ツリーを計画することができることに留意されたい。
いくつかの実施形態では、コントローラ140は、シュタイナー木(例えば、最小コストツリー)を計算して、グループ間配信ツリーを生成することができる。企業環境100では、いくつかのデバイスは、受信デバイス(例えば、コンテンツ160の受信者)とすることができ、他のデバイスは、中継デバイス又は休止デバイスとして動作することができる。シュタイナー木は、必要に応じて、いくつかの中継デバイスを使用して、最小コストツリーを見出すために、全ての受信デバイスにわたることができる。コントローラ140は、最短経路の組み合わせを使用して、最小コストのツリーを計算することができる。コントローラ140は、企業環境100のトポグラフィ情報を使用して、各受信デバイスから企業環境100内のソースデバイスへの最短経路を判定することができる。次いで、コントローラ140は、全ての受信デバイスからソースデバイス102への、最小コストの単一ソース指向スパニングツリーを判定する。
コントローラ140は、測定を使用して、ユーザ入力及びネットワーク発見のうちの1つ以上に基づいて、企業環境100のトポグラフィ情報を判定することができる。コントローラ140は、2つのサブネット間の帯域幅及び往復時間を測定することによって、ネットワーク発見を実行することができる。そうするために、ソースノード102は、異なる長さの一連のパケットを各グループヘッドに何度も送信する。コントローラ140は、各パケットサイズに対する最小応答時間を判定し、それらの値に対する線形回帰を計算する。コントローラ140はまた、毎秒ビットの帯域幅を判定し、往復時間は秒単位である。コントローラ140は、指数関数的移動平均を介して複数の測定値を集約して、リンクの帯域幅を判定することができる。
グループヘッドは、グループ間データ転送に関与する。グループヘッド106及び108は、上流グループヘッド102及び104に論理的に結合することができる。同様に、グループヘッド132及び134は、上流グループヘッド106及び108に論理的に結合することができる。論理グループがコンテンツのための十分な数の受信デバイスを有さない場合、その論理グループは、複数のグループヘッドを有しない場合がある。例えば、サブサイト124に対応する論理グループは、1つのグループヘッド136を含むことができる。効率的な配信のために、コントローラ140は、コンテンツ160をいくつかのブロックに分割することができる(例えば、それぞれが所定の数の固定サイズのデータチャンクを有する)。グループヘッド104は、ソース102と同じ論理グループにあるため、グループヘッド104は、最初にソース102からコンテンツ160を取得する。
いくつかの実施形態では、グループヘッド106及び108は、両方のグループヘッドがコンテンツ160の固有のブロック及び非重複ブロックを同時にダウンロードすることを可能にするブロックベースのプロトコルを配備することができる。グループヘッド106及び108は、ランダムブロックのダウンロードを開始し、互いに協調して重複排除を回避することができる。転送中にグループヘッド108などの1つのグループヘッドが破損した場合、グループヘッド106は、残りのブロックをダウンロードし続けることができる。あるいは、グループヘッド106は、上流グループヘッド102及び104からコンテンツ160の奇数個目のブロックをダウンロードすることができる。負荷分散を促進するために、グループヘッド106は、グループヘッド102からのコンテンツ160の奇数個目のブロックのサブセットをダウンロードする一方で、グループヘッド104から残りをダウンロードすることができる。同様に、グループヘッド108は、上流グループヘッド102及び104から偶数個目のブロックをダウンロードすることができる。グループヘッド106及び108は、それらのピアリンクを介して固有ブロックを交換して、各ブロックを取得し、コンテンツ160の完全なコピーを再構築することができる。グループヘッド106はまた、上流グループヘッド102からコンテンツ160の奇数個目のブロックをダウンロードすることができ、次いで、グループヘッド108は、上流グループヘッド104からコンテンツ160の偶数個目のブロックをダウンロードすることができる。グループヘッドはまた、パイプラインを組み込むことができる。グループヘッド106及び108が閾値数のブロックをダウンロードしたとき、下流グループヘッド132及び134は、コンテンツ160がその全体で上流グループヘッド106及び108によってダウンロードされていない場合であっても、それらのブロックを取り出すことを開始することができる。
図1Bは、本出願の一実施形態に係る、企業環境におけるコンテンツの例示的なグループ間配信及びグループ内配信を示す。この例では、コントローラ140は、コンテンツ160を配信するための配信ツリー170を生成することができる。配信ツリー170は、ツリー170のノードとして論理グループ162、164、166、168、172、174、及び176を含むことができる。論理グループ162、164、166、168、172、174、及び176は、それぞれサブネット111、サイト114、サブサイト124、サイト116、サブネット113、サイト122、及びサイト120に対応することができる。コントローラ140は、グループヘッドとして受信デバイス又は中継デバイスであってもよく、少なくとも2つの被管理デバイスを判定することができる。ソース102及びデバイス104は、グループ162のためのグループヘッドとすることができ、デバイス106及び108はグループ164のためのグループヘッドとすることができ、デバイス136はグループ166のためのグループヘッドであってもよく、デバイス132及び134はグループ168のためのグループヘッドであってもよい。
グループ間リンクは、グループヘッド間に形成され得る。例えば、グループ162とグループ164との間のリンクは、グループ162のグループヘッド102と104との間、並びにグループ164のグループヘッド106と108との間にある。グループ166は1つのグループヘッド136を含むので、グループ164と166との間のリンクは、グループ164のグループヘッド106及び108と、グループ166のグループヘッド136との間にある。図1Aに示されるように、グループは、サイト122に対応するグループ174などの中間グループであってもよい。グループヘッドは、中継又は受信デバイスとして動作する中間物であってもよい。例えば、グループ174のグループヘッド144及び146は、グループ172からグループ176へのデータ転送の確立を促進する中間グループヘッドであり得る。各グループヘッドは、各上流グループヘッド(例えば、各親グループヘッド)とのリンクを維持することができる。例えば、グループヘッド136は、グループヘッド106及び108のそれぞれにリンクを有することができる。
グループ内のグループヘッドは、対応するピアリンクと相互に完全なピア関係を有することができ、これにより、ピアツーピア転送プロトコルを使用してデータを転送してデータブロックを協調することが可能になる。例えば、グループヘッド106及び108は、完全なペアの関係を維持することができる。グループヘッド106及び108は、グループ間リンク上で1回を超えて同じブロックをダウンロードするのを回避するために、それら自体の間で協調することができる。コンテンツ160は、ブロック181、182、183、及び184に分割され、グループヘッド106は、ブロック181及び183をダウンロードすることができ、グループヘッド108は、ブロック182及び184を上流グループヘッド102及び104からダウンロードすることができる。次いで、グループヘッド106は、ピアリンクを介してグループヘッド108からブロック182及び184を取得し、グループヘッド108は、ピアリンクを介してグループヘッド106からブロック181及び183を取得することができる。これを促進するために、グループヘッド106及び108は、ピアリンクからブロックを取得するためにより高い優先度を有するように構成することができる。次いで、グループヘッド106及び108のそれぞれは、ブロック181、182、183、及び184を組み合わせて、コンテンツ160を生成する。
グループ168内で、いくつかの被管理デバイスが、グループヘッド132及び134からコンテンツ160を取得することができる。グループ内配信に関して、コントローラ140は、グループヘッド132及び134でルートされる配信階層を作成する。階層は、n分木として表すことができ、各被管理デバイスは、n分木内のpの上流の親ノードに結合される。pリンクの中で、1つのリンクはアクティブリンクとすることができ、他のリンクは冗長性を促進するために待機リンクとして動作することができる。各被管理デバイスは、アクティブな親ノードからブロック181、182、183、及び184をダウンロードすることができる。いくつかの実施形態では、論理グループ内のネットワークは、高速ローカルエリアネットワーク(LAN)であり得る。その結果、コンテンツ160は、LANを介して論理グループ168内に効率的に配信され得る。あるいは、グループヘッド132及び134は、転送ブロック181、182、183、及び184に放送されたLANをグループ168内の全ての被管理デバイスに使用することができる。
いくつかの実施形態では、コントローラ140は、コンテンツ160の配信の時間及びスケジュールに関して各被管理デバイスに通知することができる。コントローラ140は、ピアツーピアプロトコルが上流デバイスに接続してコンテンツ160を加入することを期待し、その上流デバイスが少なくとも閾値数のブロックを取得するまで待機することができる。上流デバイスが閾値数のブロックをダウンロードした場合、下流側デバイスは、それらのブロックを上流デバイスからダウンロードすることを開始することができる。
図2は、本出願の一実施形態に係る、企業環境におけるコンテンツの効率的な配信を促進する例示的なシステムアーキテクチャを示す。この例では、コントローラ140、及び被管理デバイス106などのそれぞれの被管理デバイスは、それぞれ、主動作モジュールコントローラモジュール200及び被管理デバイスモジュール250を含む。コントローラモジュール200は、登録モジュール202、鍵モジュール204、グラフ化モジュール206、スケジューラモジュール214、及びプランナーモジュール208に基づいて動作する。一方、被管理デバイスモジュール250は、登録モジュール252、鍵モジュール254、測定モジュール256、及び転送モジュール258に基づいて動作することができる。
コントローラ140、登録モジュール202は、登録要求をリッスンし、被管理デバイスから要求メッセージを登録解除することができる。要求に基づいて、登録モジュール202は、ノードデータベース212内の企業環境100内の現在のデバイス及びサブネットのセットの情報を維持する。鍵モジュール204は、被管理デバイスからの鍵要求メッセージをリッスンし、メッセージキューイングを使用して、一時的な楕円曲線ディフィーヘルマンなどの鍵交換を実行することができる。鍵モジュール204はまた、ハッシュベースメッセージ認証符号(hash-based message authentication code、HMAC)などの対称鍵でコントローラ140のキーリングを更新する。グラフ化モジュール206は、測定応答メッセージをリッスンすることができ、これらのメッセージに基づいて、企業環境100の加重サブネット対サブネットグラフを維持することができる。
スケジューラモジュール214は、ネットワーク性能及び特性を測定するために、サブネット間の測定値を定期的にスケジュールする。スケジューラモジュール214はまた、ノードデータベース212内のサブネット間のエッジを示すテーブルを維持する。プランナーモジュール208は、コンテンツに関して、現在登録されているデバイスに基づいて、受信デバイスを含むソースデバイス及びターゲットサブネットを判定し、配信ツリーを判定するための実験をスケジュールする。プランナーモジュール208は、配信計画を生成し、それを計画データベース216に記憶することによって、コンテンツの配信を開始する。プランナーモジュール208は、配信に関する被管理デバイスからの通知を受信することができる。
被管理デバイス106において、登録モジュール252は、定期的登録要求メッセージをコントローラ140に送信し、応答をリッスンする。鍵モジュール254は、鍵交換要求メッセージを送信し、対応する応答をリッスンすることによって、新しい鍵を定期的に生成する。鍵モジュール254はまた、HMACキーを用いて被管理デバイス106のキーリングを更新することができる。測定モジュール256は、ネットワーク測定の初期化をリッスンすることができる。これに基づいて、測定モジュール256は、ネットワーク測定をスケジュールし、測定値をグラフ化モジュール206に送信することができる。転送モジュール258は、コントローラ140からのメッセージをリッスンし、コンテンツの配信を初期化し、ピアツーピアプロトコル260を介してピアツーピア転送をスケジュールする。転送モジュール258は、応答を送信して転送初期化メッセージを確認し、重要なイベント(例えば、開始、終了、エラーの検出など)に関してコントローラ140に通知することができる。プロトコル260は、プランナーモジュール208の制御下でピアツーピアファイルの転送を実行する。
図3Aは、本出願の一実施形態に係る、企業環境のトポグラフィ情報を判定するコンテンツ配信システムの方法を示すフロー図300を提示する。動作中、システムは、企業環境内のIPサブネットを判定し(動作302)、サブネット内の被管理デバイスを判定する(動作304)。次いで、システムは、それぞれの被管理デバイスに関する測定コマンドを発行し(動作306)、それぞれの被管理デバイスから測定値を受信する(動作308)。測定コマンドは、被管理デバイスにネットワーク及びデバイス条件(例えば、帯域幅、レイテンシ、利用率など)を測定し、システムに報告するように命令する。このシステムは、IPサブネットの加重サブグラフを生成し、受信した測定値に基づいてエッジ情報を更新する(動作310)。システムは、全てのサブネットがチェックされたかどうかをチェックする(動作312)。チェックされた場合、システムは、企業ネットワークの加重オーバーレイグラフを生成する(動作314)。そうでなければ、システムは、企業環境内の次のIPサブネットを判定し続ける(動作302)。
図3Bは、本出願の一実施形態に係る、企業環境のトポグラフィ情報に基づいて、コンテンツの配信を計画するコンテンツ配信システムの方法を示すフロー図350を提示する。動作中、システムは、企業環境内の論理グループを(例えば、サブネット又はサイトに基づいて)識別し(動作352)、コンテンツのソースデバイスが論理グループ内にあるかどうかを判定する(動作354)。ソースデバイスが論理グループ内にある場合、システムは、論理グループのためのグループヘッドとしてソースデバイスを判定する(動作356)。次いで、システムは、グループヘッド選択が完了したかどうか(例えば、2つなどの所定の数のグループヘッドが選択されているか、又はデバイスがこれ以上選択されないか)を判定する(動作358)。グループヘッド選択が完了していない場合、システムは、コンテンツのための任意の受信デバイスが論理グループ内で利用可能かどうかをチェックする(動作360)。
少なくとも1つの受信デバイスが利用可能である場合、システムは、論理グループのグループヘッドとして受信デバイスをランダムに選択する(動作362)。そうでなければ、システムは、論理グループのグループヘッドとして中継デバイスをランダムに選択する(動作364)。グループヘッドを選択すると(動作362又は364)、システムは、グループヘッドの選択が完了したかどうかを判定する(動作358)。グループヘッドの選択が完了した場合、システムは、グループ間配信ツリー及びグループ内配信ツリーを生成し(動作366)、グループ内配信及びグループ間配信のためのグループヘッドを構成する(動作368)。この構成は、ブロックベースのプロトコルを構成することを含み得る。
図4Aは、本出願の一実施形態に係る、企業環境におけるグループ間配信ツリーを判定するコンテンツ配信システムの方法を示すフロー図400を提示する。動作中、システムは論理ノードとして論理グループを表し(動作402)、それぞれの論理ノードとソース論理ノードとの間の最短経路(すなわち、ソースデバイスに関連付けられた論理ノード)を計算する(動作404)。システムは、計算された最短経路に基づいて補助グラフを生成し(動作406)、ソース論理ノードでルートされる最小コスト単一ソーススパニングツリーを計算する(動作408)。次いで、システムは、対応するグループヘッドに基づいて、スパニングツリー上のそれぞれの論理ノードペア間の物理的経路を判定する(動作410)。
図4Bは、本出願の一実施形態に係る、企業環境におけるグループ間配信ツリーを介してファイルを取得するグループヘッドの方法を示すフロー図430を提示する。動作中、グループヘッドは、転送コマンド、ファイル記述子、及びコントローラからのコンテンツに関連付けられたスケジュールを受信する(動作432)。受信した情報に基づいて、グループヘッドは、上流グループヘッドから取り出されるコンテンツの固有のブロックのサブセットを判定し、(例えば、上流グループヘッドから)サブセット内の対応するブロックのソースグループヘッドを割り当てる(動作434)。次いで、グループヘッドは、閾値数のブロックが上流グループヘッドで利用可能かどうかを判定する(動作436)。これにより、コンテンツのパイプラインダウンロードが可能になる。
閾値数のブロックが利用可能でない場合(動作438)、グループヘッドは、閾値数のブロックが上流グループヘッド内で利用可能かどうかを判定し続ける(動作436)。一方、閾値数のブロックが利用可能である場合(動作438)、グループヘッドは、対応するソースグループヘッドからサブセット内のそれぞれのブロックを取得する(動作440)。グループヘッドは、ピアグループヘッドから、もしあれば、ブロックの残りを取得する(動作442)。いくつかの論理グループは、単一のグループヘッドを有することができ、これは、上流グループヘッドから各ブロックを取り出すことに留意されたい。次いで、グループヘッドは、取得されたブロックを組み合わせて、コンテンツを再構成し(動作444)、コンテンツ上の転送コマンド(例えば、ファームウェア更新)に示される動作を実行する(動作446)。
図4Cは、本出願の一実施形態に係る、論理グループ内のグループ内負荷共有配信ツリーを判定するコンテンツ配信システムの方法を示すフロー図450を提示する。動作中、システムは、グループヘッドが初期レベルにあり、各レベルが指定された数のデバイスを有するように、論理グループ内のそれぞれの受信デバイスのレベルを判定する(動作452)。レベル内の全てのデバイスは、受信デバイスでなくてもよく、いくつかのデバイスは中継デバイスであってもよいことに留意されたい。次いで、システムは、接続を確立するために次のレベルを選択する(動作454)。選択されたレベルの各レベルについて、システムは、デバイスを、対応するエッジを有する以前のレベル(例えば、上流デバイス)内の所定の数のデバイスに結合する(動作456)。より多くのレベルがある場合(動作458)、システムは、接続を確立するために次のレベルを選択し続ける(動作454)。そうでなければ、システムは、確立された接続に基づいて、負荷共有配信ツリー(例えば、n分木)を形成する(動作460)。
図4Dは、本出願の一実施形態に係る、論理グループ内のグループ内負荷共有配信ツリーを介してファイルを取得する受信デバイスの方法を示すフロー図470を提示する。動作中、受信デバイスは、負荷共有配信ツリー内の上流デバイスからコンテンツに関連付けられた転送コマンド及びファイル記述子を受信する(動作472)。受信デバイスは、アクティブな上流デバイスからコンテンツのそれぞれのブロックを取得し(動作474)、取得されたブロックを組み合わせて、コンテンツを再構成する(動作476)。次いで、受信デバイスは、コンテンツ上の転送コマンド(例えば、ファームウェア更新)に示される動作を実行する(動作478)。
図1Aの実施例では、多数の受信デバイスが、制限された数のソースからコンテンツを取得する。コンテンツ(例えば、ファームウェア又はメディアファイル)の配信効率を向上させるために、ソースデバイスは、コンテンツの要求を、コンテンツを既に受信している受信デバイスに委譲することができる。コンテンツ160のソースデバイス102などのソースデバイスは、要求をローカルに(例えば、コントローラ140からの介入なしに)委譲することができる。ソースデバイス102はまた、後の時間の要求を保留することができる。受信デバイスは、保留時間で要求を再送信することができる。このようにして、ネットワーク環境100は、要求を保留及び委譲することができる非一元的システムを促進することができる。
図5Aは、本出願の一実施形態に係る、企業環境における例示的な保留可能なコンテンツ配信を示す。受信ノード508及び510を含む多数の受信ノード550は、コンテンツ570がソースノード502、504、及び506を含む多数のソースノード500内にホストされることを発見することができる。受信ノード550は、コンテンツ570の存在を示すソースノード500からの広告、及び(例えば、ユーザからの)外部入力のうちの1つ以上によって、コンテンツ570を発見することができる。ソースノード500の各ソースノードは、それぞれのリソース限界を有することができ、したがって、制限された数の受信ノードを提供することができる。
動作中、受信ノード508は、ソースノード502、504、及び506からコンテンツ570を要求することができる(動作512)。要求を受信すると、ソースノードは、(a)直ちに要求を提供し、(b)後のサービスの要求を受け入れ、(c)ジョブを別のノードに委譲し、又は(d)要求を拒絶することができる。それぞれのソースノードは、現在のスコアボード及び予約されたタイムスロットに基づいて、統計的にソースノードが過剰に加入していないことを確実にするために、応答オプションのうちの1つを判定する。例えば、ソースノード502、504、及び506は、スコアボード503、505、及び507をそれぞれ維持し、応答オプションを判定することができる(動作514)。例えば、ソースノード502は、要求を拒絶し、受信ノード508に通知することができる(動作516)。ソースノード502は、後で要求をサービスすることができるかどうかの指示を含むことができる。
ソースノードがオプション(a)、(b)、及び(c)から選択する場合、そのソースノードは、要求に関連付けられたスコアボード上の「留保中」状態を示すことができ、受信ノード508からの応答を待機することができる。例えば、ソースノード504は、受信ノード508が特定の時間窓にわたってコンテンツ570にアクセスすることを許可し、スコアボード505内の留保状態をマークするトークンを発行することができる(動作518)。同様に、ソースノード506は、受信ノード508が特定の時間窓にわたってコンテンツ570にアクセスすることを許可し、スコアボード507内の留保状態をマークするトークンを発行することができる(動作520)。トークンは、発行ソースノードによって認証された暗号データ構造であり得る。トークンは、特定のソースノードによる特定の受信ノードのための提供(例えば、時間窓)で発行される。例えば、ソースノード504によって発行されたトークンは、受信ノード508のIPアドレスに基づく受信ノード508及びトークンを認証するソースノード504の鍵に基づく発行ソースノード504を識別することができる。
受信ノード508は、ソースノード504及び506からのトークンを比較して、ソースノード508の効率的なオプションを判定する(動作522)。効率的な選択肢の例としては、最小遅延及び最小コストが挙げられるが、これらに限定されない。受信ノード508は、提供を受け入れるか、又は拒絶するかのいずれかであり得る。受信ノード508がソースノード506からの提供を受け入れると仮定する(動作524)。次いで、ソースノード506は、保留インジケータを、提供された時間窓に対して留保インジケータに変更することによって、スコアボード507を更新することができる(動作528)。一方、受信ノード508は、ソースノード504からの提供を拒絶する(動作526)。次いで、ソースノード504は、留保インジケータを除去することによって、スコアボード505を更新することができる(動作530)。
提供は時間制限を有することができ、受信ノード508は、その時間制限内の提供を確認する必要があることに留意されたい。ソースノード504は、スコアボード507を管理するために確認を使用することができる。受信ノード508は、時間制限までの提供の受け入れを保留することができる。受信ノード508はまた、提供を受け入れ、受信ノード508がより良好な提供を受信した場合に、その後提供を取り消すことができる。トークンの時間窓によって示される時間を待機すると(動作532)、受信ノード508はトークンを使用する準備ができ得る。次に、受信ノード508は、トークンをソースノード506に提出する(動作534)。ソースノード506が要求を提供する準備ができている場合、ソースノード506は、受信ノード508のためのデータチャネルを割り当てることができる(動作536)。
データチャネルを割り当てるために、ソースノード506は、データチャネル識別子を受信ノード508に発行することができる。データチャネル識別子は、コンテンツ570にトークンをどのようにアクセスするかを表す。データチャネル識別子の例としては、統一資源識別子(Uniform Resource Identifier、URI)、IPアドレス及びポート番号ペア、又はメディアアクセス制御(media access control、MAC)アドレスを挙げることができるが、これらに限定されない。ソースノード506はまた、データチャネル識別子を有する新しいトークンを発行することができる。新しいトークンは、データチャネル識別子に結び付けることができる。受信ノード508は、割り当てられたデータチャネルを介してコンテンツ570を取得することができる(動作538)。そうするために、受信ノード508は、検証のために、データチャネルを介してソースノード506に元のトークン又は新しいトークンであり得るトークンを提出することができる。検証の際、ソースノード506は、ソースノード506がそのように準備され、容量を有する場合に、転送を開始することができる。データチャネルは、要求チャネルを促進する同じネットワーク接続であり得ることに留意されたい。
ここで、受信ノード508は、少なくとも2回、すなわちチャネルを要求するために1回、及びデータチャネル上に1回、トークンを提出することができる。第2のトークンを生成することを回避するために、ソースノード506は、受信ノード508に対して一意にデータチャネル識別子を構築することができ、データチャネル識別子のみを検証する第1のトークン内の情報を含むことができる。換言すれば、ソースノード506は、生成プロセス中に第1のトークンをデータチャネル識別子にバインドすることができるが、トークンが提出されるまでデータチャネル識別子を受信ノード508に提供しなくてもよい。
いくつかの実施形態では、ソースノード500は、ブロンズ、シルバー、及びゴールドレベルサービスなどの優先レベルを有するトークンを提供することができる。例えば、ソースノード506は、ソースノード506がそのトークンをサービスすることができる場合、ゴールドレベルトークンのみを提供する。しかしながら、ソースノード506は、シルバー又はブロンズレベルトークンに過剰に加入してもよい。より高い優先度の提供は、データチャネル上の受け入れられたトークンの数のために、スコアボード507上に人工天井を作成することができる。例えば、ソースノード506が10の要求にサービスすることができる場合、ソースノード506は、3つのゴールドレベル、5つのシルバーレベル、及び2つのブロンズレベルトークンを提供し得る。ソースノード506がジョブプリエンプションをサポートする場合、ソースノード506は、より低い優先度のトークンがプリエンプトされることを受け入れて、より低い優先度のトークンを大幅に過剰に加入させることができる。
要求チャネル及びデータチャネルは、短期接続ではない場合がある。要求ノード508は、例えば、閾値時間までの間、ソースノード506の要求チャネルに接続されたままであってもよい。同様に、データチャネルに関しても、要求ノード508は、ソースノード506のデータチャネルに閾値時間まで接続されたままであってもよいが、トークンによって許可された速度で要求を提出するだけでよい。到達要求のために、ソースノード506はトークン及びデータチャネル識別子を提示することができる。
図5Bは、本出願の一実施形態に係る、企業環境における例示的な委譲可能なコンテンツ配信を示す。ソースノード506は、新しい要求を受信すると、又はトークンが提出されたときに、コンテンツ570の配信を委譲することができる。例えば、ソースノード506は、受信ノード510がコンテンツ570を取得し、受信ノード508が受信ノード510からより効率的にコンテンツ570を取得できると判定することができる。加えて、ソースノード506は、委譲のために2つの機構を使用することができる。第1の方法では、ソースノード506は、別のソースノードとして受信ノード510を提供することができ、受信ノード508は、それをソースノードとみなして受信ノード510からコンテンツ570を要求する。
第2の方法では、ソースノード506は、既にダウンロードされたコンテンツ570を有する各受信ノードのために、スコアボードを維持することができる。例えば、ソースノード506は、受信ノード510のためのスコアボード511を維持することができる。ソースノード506は、受信ノード508を受信ノード510のデータチャネルにリダイレクトするトークン及びデータチャネル識別子を発行することができる。その場合、ソースノード506及び受信ノード508は、暗号鍵を共有して、リダイレクションを認証することができる。ソースノード506は、OAuth2.0などの既存のプロトコルを使用してもよく、又はソースノード506及び受信ノード508は、鍵について合意してもよい。
動作中、受信ノード510は、コンテンツ570の転送の完了に関してソースノード506に通知することができる(動作552)。これにより、ソースノード506は、受信ノード510のためのスコアボード511を作成することができる(動作554)。受信ノード508がトークンを提出すると(動作534)、ソースノード506は、新しいトークンを有する受信ノード510へのコンテンツ570の配信の委譲に関して受信ノード508に通知することができる(動作556)。受信ノード508は、新しいトークンを受信デバイス510に提出することができる(動作558)。トークンを検証すると、受信デバイス510は、そのデータチャネルを受信デバイス508に割り当てることができる(動作560)。受信ノード508は、受信ノード510から割り当てられたデータチャネルを介してコンテンツ570を取得することができる(動作562)。
これらの動作を促進するために、ソースノード506は、全ての要求が現在のプロデューサー時間を有するように、タイムサービスを実行することができる。あるいは、受信ノード508は、ソースノード506の時間を要求することができる。これにより、受信ノード508は、ソースノード506及び受信ノード508が同期クロックを有さない場合であっても、トークンをソースノード506のクロックに同期させることが可能になる。受信ノード508は、発振器間のクロックスキューを判定するために、特定の時間間隔でソースノード506の時間を要求するなどの、より高度なクロック同期機構を使用することができる。これは、これらのノードが将来の時間を正確に導出することを可能にする。これらの機構は、各ソースノードの仮想時間(又は発振器)を使用し、実際のオペレーティングシステム時間又はハードウェアクロックをリセットする必要はない。要求が受信ノード510に委譲された場合、受信ノード510は、ソースノード506に対応する仮想クロックを保持することができる。これにより、受信ノード510は、ソースノード506のクロックでトークンを認可することを可能にする。
図6Aは、本出願の一実施形態に係る、コンテンツを受信ノードに提供するソースノードの方法を示すフロー図600を提示する。動作中、ソースノードは、コンテンツに対するチャネル要求を受信し、スコアボードをチェックしてオプションを判定する(動作602)。ソースノードは、要求を受け入れるかどうかを判定する(動作604)。受け入れられた場合、ソースノードは受入型を判定する(動作606)。受入が即時である場合、ソースノードは、即時配信のためにトークンを発行することができる(動作608)。受入が保留である場合、ソースノードは、保留したタイムラインのための保留した配信のトークンを発行することができる(動作610)。
トークンを発行すると(動作608又は610)、ソースノードはトークン提出を受信することができる(動作612)。ソースデバイスは、要求を委譲するかどうかを決定することができる(動作614)。受入型が委譲(動作606)であるか、又はソースデバイスがトークン提出を委譲した場合(動作614)、ソースノードは、委譲ノードの新しいトークンを発行することができる(動作616)。ソースデバイスがトークン提出を委譲していない場合(動作614)、ソースノードは、チャネル(及び新しいトークン)を受信ノードに割り当て、(例えば、新しいトークンに基づいて)コンテンツに対する要求を受信し、配信を開始する(動作618)。要求が受け入れられていない場合(動作604)、ソースノードは、受信ノードへの拒絶を発行する(動作620)。
図6Bは、本出願の一実施形態に係る、ソースノードからコンテンツを取得する受信ノードの方法を示すフロー図630を提示する。動作中、受信ノードは、コンテンツの要求をソースノードのセットに送信し(動作632)、受信したトークンに基づいて要求を受け入れたソースノードのサブセットを判定する(動作634)。受信ノードはトークンを分析して、効率的な提供を有するソースノードを選択し(動作636)、選択されたソースノードに受入を通知し、サブセット内の他の全てのノードを拒絶で通知する(動作638)。次に、受信ノードは、トークン型を判定する(動作640)。
トークン型が保留である場合、受信ノードは、トークンに基づいて保留期間だけ待機する(動作642)。トークン型が即時である場合(動作640)、又はその期間だけ待機すると(動作642)、受信ノードは、トークンに基づいてチャネル要求を選択されたソースノードに送信し(動作644)、それが新しい委譲トークンを受信したかどうかをチェックする(動作646)。受信ノードがチャネル識別子を受信し、対応するチャネル上のコンテンツ検索を開始する(動作648)。トークン型が委譲である(動作640)か、又は受信ノードが新しい委譲トークンを受信した場合(動作646)、受信ノードは、委譲ノードのチャネル識別子を受信し、トークン及びチャネル識別子に基づいてチャネル要求を委譲ノードに送信する(動作650)。
図6Cは、本出願の一実施形態に係る、コンテンツを受信ノードに提供する、委譲ノードの方法を示すフロー図660を提示する。動作中、別の受信ノードとし得る委譲ノードは、トークン及びチャネル識別子に基づいてチャネル要求を受信し(動作662)、トークンを検証して妥当性を判定する(動作664)。次いで、委譲ノードは、チャネル識別子に対応するチャネルを割り当てる(動作666)。次いで、委譲ノードは、コンテンツに対する要求を受信し、配信を開始する(動作668)。
図7は、本出願の一実施形態に係る、企業環境における効率的なコンテンツ配信を促進する例示的なコンピュータシステムを示す。コンピュータシステム700は、プロセッサ702、メモリデバイス704、及び記憶デバイス708を含む。メモリデバイス704は、揮発性メモリデバイス(例えば、デュアルインラインメモリモジュール(dual in-line memory module、DIMM))を含むことができる。更に、コンピュータシステム700は、ディスプレイデバイス710、キーボード712、及びポインティングデバイス714に結合することができる。記憶デバイス708は、オペレーティングシステム716、コンテンツ配信システム718、及びデータ736を記憶することができる。コンテンツ配信システム718は、コントローラ140、ソースデバイス102、グループヘッド104、106、108、144、及び146、ソースデバイス506、並びに受信デバイス508及び510のうちの1つ以上の動作を促進することができる。
コンテンツ配信システム718は、コンピュータシステム700によって実行されると、コンピュータシステム700に、本開示で説明される方法及び/又はプロセスを実行させることができる命令を含むことができる。具体的には、コンテンツ配信システム718は、ノードデータベース(登録モジュール720)内の企業環境内の現在のデバイス及びサブネットのセットの情報を維持するための命令を含むことができる。コンテンツ配信システム718はまた、測定値に基づいて、企業環境のトポグラフィ情報を発見するための命令を含むことができる(測定モジュール722)。更に、コンテンツ配信システム718はまた、グループ間配信ツリー及びグループ内配信ツリー(プランナー及び転送モジュール724)に基づいて、企業環境内のコンテンツの配信を計画するための命令を含むことができる。
更に、コンテンツ配信システム718はまた、これらのツリーを介してコンテンツを配信するための命令(プランナー及び転送モジュール724)を含むことができる。コンテンツ配信システム718は、コンテンツ(トークンモジュール726)を配信するための即時、保留、又は委譲されたトークンを生成するための命令を含むことができる。コンテンツ配信システム718は、トークンに基づいてチャネルを割り当てるための命令を更に含むことができる(チャネルモジュール728)。コンテンツ配信システム718は、メッセージを送信及び受信するための命令(通信モジュール730)を更に含んでもよい。データ736は、コンテンツ配信システム718の動作を促進することができる任意のデータを含み得る。
図8は、本出願の一実施形態に係る、企業環境における効率的なコンテンツ配信を促進する例示的な装置を示す。コンテンツ配信装置800は、有線、無線、量子光、又は電気通信チャネルを介して互いに通信し得る複数のユニット又は装置を含むことができる。装置800は、1つ以上の集積回路を使用して実現することができ、図8に示されるものよりも少ない又はより多くのユニット又は装置を含んでもよい。更に、装置800は、コンピュータシステムに統合されてもよく、又は他のコンピュータシステム及び/又はデバイスと通信することができる別個のデバイスとして実現されてもよい。具体的には、装置800は、図7のコンピュータシステム700のモジュール720~730と同様の機能又は動作を実行するユニット802~812を含むことができ、登録ユニット802、測定ユニット804、プランナー及び転送ユニット806、トークンユニット808、チャネルユニット810、及び通信ユニット812を含む。
本発明を実施するための形態で説明されるデータ構造及びコードは、通常、コンピュータ可読記憶媒体に記憶され、コンピュータシステムによって使用されるコード及び/又はデータを記憶することができる任意のデバイス又は媒体であってもよい。コンピュータ可読記憶媒体としては、揮発性メモリ、不揮発性メモリ、ディスク、磁気テープ、CD(コンパクトディスク)、DVD(デジタル多用途ディスク若しくはデジタルビデオディスク)などの磁気及び光学記憶デバイス、又は現在知られている又は今後開発されるコンピュータ可読媒体を記憶することができる他の媒体が挙げられるが、これらに限定されない。
詳細な説明セクションに記載される方法及びプロセスは、上記のようにコンピュータ可読記憶媒体に記憶され得るコード及び/又はデータとして具現化することができる。コンピュータシステムが、コンピュータ可読記憶媒体上に記憶されたコード及び/又はデータを読み取り、実行するとき、コンピュータシステムは、データ構造及びコードとして具現化され、コンピュータ可読記憶媒体内に記憶された方法及びプロセスを実行する。
更に、上述の方法及びプロセスは、ハードウェアモジュールに含めることができる。例えば、ハードウェアモジュールとしては、特定用途向け集積回路(application-specific integrated circuit、ASIC)チップ、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、及び現在知られている又は今後開発される他のプログラム可能論理デバイスを含むことができるが、これらに限定されない。ハードウェアモジュールが起動されると、ハードウェアモジュールは、ハードウェアモジュール内に含まれる方法及びプロセスを実行する。

Claims (17)

  1. 企業環境におけるコンテンツ配信を促進するための方法であって、
    前記企業環境のコントローラによって、前記企業環境のトポグラフィ情報を判定することであって、前記トポグラフィ情報が、前記コントローラによって管理される複数のデバイスに関連付けられた情報を含む、判定することと、
    前記トポグラフィ情報に基づいて前記複数のデバイスを論理グループのセットにグループ分けすることであって、それぞれの論理グループが、前記複数のデバイスのうちセットのデバイスと、前記論理グループにおいて前記セットのデバイスを結合するネットワークと、を含む、グループ分けすることと、
    前記論理グループのセットの第1の配信ツリーを介してコンテンツを配信するための配信計画を生成することであって、前記第1の配信ツリーのそれぞれのノードが、前記論理グループのセットの論理グループを表し、前記コンテンツをホストする論理グループが、前記第1の配信ツリーのルートノードによって表される、生成することと、
    前記配信計画を含む通知メッセージを、前記論理グループのセットのそれぞれの論理グループに送信することと、を含み、
    前記配信計画は、受信デバイスが前記コンテンツをいつ要求することが許されるかを示すタイムラインを更に含む、方法。
  2. 前記コンテンツが、前記コントローラによって管理される前記複数のデバイスのファームウェア更新である、請求項1に記載の方法。
  3. 前記論理グループのセットのそれぞれの論理グループのための1つ以上のグループヘッドを選択することを更に含み、第1の論理グループと第2の論理グループとの間のグループ間接続が、前記第1及び第2の論理グループの前記それぞれのグループヘッド間に形成されている、請求項1に記載の方法。
  4. 前記第1の論理グループが、第1のグループヘッド及び第2のグループヘッドを含み、前記コンテンツが、固有のブロックのセットに分割され、前記第1のグループヘッドが、前記第1の配信ツリーの上流ノードから前記固有ブロックのセットの第1のサブセットと、前記第2のグループヘッドから前記固有ブロックのセットの第2のサブセットとを取得するように構成されている、請求項に記載の方法。
  5. 前記第1の論理グループ内の第2の配信ツリーを判定することを更に含み、前記第2の配信ツリーが、前記コンテンツのそれぞれの受信ノードにわたっており、前記第1の論理グループのグループヘッドが、前記第2の配信ツリーの最上位にある、請求項に記載の方法。
  6. 前記トポグラフィ情報を判定することが、メッセージキュー(MQ)ベースのメッセージ交換を使用することによって、
    前記企業環境の1つ以上のデバイスのデバイス情報と、
    前記企業環境の前記ネットワークにおけるそれぞれのリンクの帯域幅と、のうちの1つ以上を判定することを含む、請求項1に記載の方法。
  7. 命令を記憶する非一時的コンピュータ可読記憶媒体であって、前記命令が、コンピュータによって実行されると、前記コンピュータに、企業環境におけるコンテンツ配信を促進するための方法を実行させ、前記方法が、
    前記企業環境のコントローラによって、前記企業環境のトポグラフィ情報を判定することであって、前記トポグラフィ情報が、前記コントローラによって管理される複数のデバイスに関連付けられた情報を含む、判定することと、
    前記トポグラフィ情報に基づいて前記複数のデバイスを論理グループのセットにグループ分けすることであって、それぞれの論理グループが、前記複数のデバイスのうちセットのデバイスと、前記論理グループにおいて前記セットのデバイスを結合するネットワークと、を含む、グループ分けすることと、
    前記論理グループのセットの第1の配信ツリーを介してコンテンツを配信するための配信計画を生成することであって、前記第1の配信ツリーのそれぞれのノードが、前記論理グループのセットの論理グループを表し、前記コンテンツをホストする論理グループが、前記第1の配信ツリーのルートノードによって表される、生成することと、
    前記配信計画を含む通知メッセージを、前記論理グループのセットのそれぞれの論理グループに送信することと、を含み、
    前記配信計画は、受信デバイスが前記コンテンツをいつ要求することが許されるかを示すタイムラインを更に含む、コンピュータ可読記憶媒体。
  8. 前記コンテンツが、前記コントローラによって管理される前記複数のデバイスのファームウェア更新である、請求項に記載のコンピュータ可読記憶媒体。
  9. 前記方法が、前記論理グループのセットのそれぞれの論理グループのための1つ以上のグループヘッドを選択することを更に含み、第1の論理グループと第2の論理グループとの間のグループ間接続が、前記第1及び第2の論理グループの前記それぞれのグループヘッド間に形成されている、請求項に記載のコンピュータ可読記憶媒体。
  10. 前記第1の論理グループが、第1のグループヘッド及び第2のグループヘッドを含み、前記コンテンツが、固有のブロックのセットに分割され、前記第1のグループヘッドが、前記第1の配信ツリーの上流ノードから前記固有のブロックのセットの第1のサブセットと、前記第2のグループヘッドから前記固有のブロックのセットの第2のサブセットとを取得するように構成されている、請求項に記載のコンピュータ可読記憶媒体。
  11. 前記方法が、前記第1の論理グループ内の第2の配信ツリーを判定することを更に含み、前記第2の配信ツリーが、前記コンテンツのそれぞれの受信ノードにわたっており、前記第1の論理グループのグループヘッドが、前記第2の配信ツリーの最上位にある、請求項に記載のコンピュータ可読記憶媒体。
  12. 前記トポグラフィ情報を判定することが、メッセージキュー(MQ)ベースのメッセージ交換を使用することによって、
    前記企業環境の1つ以上のデバイスのデバイス情報と、
    前記企業環境におけるそれぞれのリンクの帯域幅と、のうちの1つ以上を判定することを含む、請求項に記載のコンピュータ可読記憶媒体。
  13. 企業環境のコントローラを促進するためのコンピュータシステムであって、
    プロセッサと、
    前記プロセッサに結合され、命令を記憶するストレージデバイスであって、前記命令は、前記プロセッサによって実行されると、
    前記企業環境のトポグラフィ情報を判定することであって、前記トポグラフィ情報が、前記コントローラによって管理される複数のデバイスに関連付けられた情報を含む、判定することと、
    前記トポグラフィ情報に基づいて前記複数のデバイスを論理グループのセットにグループ分けすることであって、それぞれの論理グループが、前記複数のデバイスのうちセットのデバイスと、前記論理グループにおいて前記セットのデバイスを結合するネットワークと、を含む、グループ分けすることと、
    前記論理グループのセットの第1の配信ツリーを介してコンテンツを配信するための配信計画を生成することであって、前記第1の配信ツリーのそれぞれのノードが、前記論理グループのセットの論理グループを表し、前記コンテンツをホストする論理グループが、前記第1の配信ツリーのルートノードによって表される、生成することと、
    前記配信計画を含む通知メッセージを、前記論理グループのセットのそれぞれの論理グループに送信することと、を含む方法を前記プロセッサに実行させる、ストレージデバイスと、を含み、
    前記配信計画は、受信デバイスが前記コンテンツをいつ要求することが許されるかを示すタイムラインを更に含む、コンピュータシステム。
  14. 前記論理グループのセットのそれぞれの論理グループのための1つ以上のグループヘッドを選択することを更に含み、第1の論理グループと第2の論理グループとの間のグループ間接続が、前記第1及び第2の論理グループの前記それぞれのグループヘッド間に形成されている、請求項13に記載のコンピュータシステム。
  15. 前記第1の論理グループが、第1のグループヘッド及び第2のグループヘッドを含み、前記コンテンツが、固有のブロックのセットに分割され、前記第1のグループヘッドが、前記第1の配信ツリーの上流ノードから前記固有ブロックのセットの第1のサブセットと、前記第2のグループヘッドから前記固有ブロックのセットの第2のサブセットとを取得するように構成されている、請求項14に記載のコンピュータシステム。
  16. 前記第1の論理グループ内の第2の配信ツリーを判定することを更に含み、前記第2の配信ツリーが、前記コンテンツのそれぞれの受信ノードにわたっており、前記第1の論理グループのグループヘッドが、前記第2の配信ツリーの最上位にある、請求項14に記載のコンピュータシステム。
  17. 前記トポグラフィ情報を判定することが、メッセージキュー(MQ)ベースのメッセージ交換を使用することによって、
    前記企業環境の1つ以上のデバイスのデバイス情報と、
    前記企業環境の前記ネットワークにおけるそれぞれのリンクの帯域幅と、のうちの1つ以上を判定することを含む、請求項13に記載のコンピュータシステム。
JP2019169167A 2018-10-10 2019-09-18 企業ネットワーク内の動的コンテンツ配信 Active JP7295752B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/156,565 US10862962B2 (en) 2018-10-10 2018-10-10 Dynamic content distribution in an enterprise network
US16/156,565 2018-10-10

Publications (3)

Publication Number Publication Date
JP2020061135A JP2020061135A (ja) 2020-04-16
JP2020061135A5 JP2020061135A5 (ja) 2022-09-28
JP7295752B2 true JP7295752B2 (ja) 2023-06-21

Family

ID=68295933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019169167A Active JP7295752B2 (ja) 2018-10-10 2019-09-18 企業ネットワーク内の動的コンテンツ配信

Country Status (3)

Country Link
US (1) US10862962B2 (ja)
EP (1) EP3637682B1 (ja)
JP (1) JP7295752B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220188167A1 (en) * 2020-12-14 2022-06-16 Dell Products, Lp System and method to adapt memory usage of containerized workspaces

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002232466A (ja) 2000-11-30 2002-08-16 Fujitsu Ltd データの配布経路を生成する装置および方法
JP2008086052A (ja) 2007-12-21 2008-04-10 Fujitsu Ltd ネットワーク機器管理プログラム
US20110299427A1 (en) 2009-04-14 2011-12-08 Thomas P Chu Method and apparatus for distributed media conferencing
US20130188521A1 (en) 2012-01-20 2013-07-25 Brocade Communications Systems, Inc. Managing a large network using a single point of configuration
US20140006597A1 (en) 2012-06-29 2014-01-02 Mrittika Ganguli Method, system, and device for managing server hardware resources in a cloud scheduling environment
JP2017146755A (ja) 2016-02-17 2017-08-24 コニカミノルタ株式会社 データ配信システム、データ配信方法、データ処理装置およびコンピュータプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013389B1 (en) * 1999-09-29 2006-03-14 Cisco Technology, Inc. Method and apparatus for creating a secure communication channel among multiple event service nodes
US6983317B1 (en) * 2000-02-28 2006-01-03 Microsoft Corporation Enterprise management system
US6748447B1 (en) * 2000-04-07 2004-06-08 Network Appliance, Inc. Method and apparatus for scalable distribution of information in a distributed network
US7801857B2 (en) * 2003-12-19 2010-09-21 Solace Systems, Inc. Implicit routing in content based networks
US8688803B2 (en) * 2004-03-26 2014-04-01 Microsoft Corporation Method for efficient content distribution using a peer-to-peer networking infrastructure
US20080072035A1 (en) * 2005-01-31 2008-03-20 Johnson Robert A Securing multicast data
US8751605B1 (en) * 2006-11-15 2014-06-10 Conviva Inc. Accounting for network traffic
US8140479B2 (en) * 2006-12-21 2012-03-20 International Business Machines Corporation Logical classification of objects on a computer system
US8918835B2 (en) * 2010-12-16 2014-12-23 Futurewei Technologies, Inc. Method and apparatus to create and manage virtual private groups in a content oriented network
EP2819364A1 (en) * 2013-06-25 2014-12-31 British Telecommunications public limited company Content distribution system and method
US10045203B2 (en) * 2016-08-27 2018-08-07 Verizon Patent And Licensing Inc. Enterprise software/firmware management and distribution
EP3934203A1 (en) * 2016-12-30 2022-01-05 INTEL Corporation Decentralized data storage and processing for iot devices

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002232466A (ja) 2000-11-30 2002-08-16 Fujitsu Ltd データの配布経路を生成する装置および方法
JP2008086052A (ja) 2007-12-21 2008-04-10 Fujitsu Ltd ネットワーク機器管理プログラム
US20110299427A1 (en) 2009-04-14 2011-12-08 Thomas P Chu Method and apparatus for distributed media conferencing
US20130188521A1 (en) 2012-01-20 2013-07-25 Brocade Communications Systems, Inc. Managing a large network using a single point of configuration
US20140006597A1 (en) 2012-06-29 2014-01-02 Mrittika Ganguli Method, system, and device for managing server hardware resources in a cloud scheduling environment
JP2017146755A (ja) 2016-02-17 2017-08-24 コニカミノルタ株式会社 データ配信システム、データ配信方法、データ処理装置およびコンピュータプログラム

Also Published As

Publication number Publication date
US20200120156A1 (en) 2020-04-16
EP3637682B1 (en) 2021-08-11
US10862962B2 (en) 2020-12-08
JP2020061135A (ja) 2020-04-16
EP3637682A2 (en) 2020-04-15
EP3637682A3 (en) 2020-07-29

Similar Documents

Publication Publication Date Title
JP7299820B2 (ja) 企業環境のための動的コンテンツ配信プロトコル
US11693716B2 (en) Independent datastore in a network routing environment
US10541877B2 (en) Dynamic reservation protocol for 5G network slicing
US9288162B2 (en) Adaptive infrastructure for distributed virtual switch
CN111164938A (zh) 使用选择性多路径分组流喷射的弹性网络通信
US20160352588A1 (en) Scalable proxy clusters
US9743367B2 (en) Link layer discovery protocol (LLDP) on multiple nodes of a distributed fabric
JP2008527860A (ja) メッセージ・パブリッシュ/サブスクライブ・システム内のプロビジョニング−マネージメント
WO2012174444A1 (en) Cloud service control and management architecture expanded to interface the network stratum
US20140086065A1 (en) Disjoint multi-paths with service guarantee extension
Liu et al. A port-based forwarding load-balancing scheduling approach for cloud datacenter networks
Hua et al. Topology-preserving traffic engineering for hierarchical multi-domain SDN
JP7295752B2 (ja) 企業ネットワーク内の動的コンテンツ配信
Luo et al. Efficient multisource data delivery in edge cloud with rateless parallel push
WO2020217465A1 (ja) ネットワークコントローラ
Thi et al. A rate allocation framework for multi-class services in software-defined networks
Cui et al. Optimizing P2P streaming throughput under peer churning
JP7486935B2 (ja) 企業環境内でのネットワーク測定
US20240056498A1 (en) Scalable creation of connections
US20230130631A1 (en) Constraint-based underlay tree allocation for data centers
US20240348651A1 (en) Dynamic security policy and key management for converged networks
Tan et al. Optimizing all-to-all data transmission in WANs
WO2023076234A1 (en) Constraint-based underlay tree allocation for data centers
WO2024035634A1 (en) Scalable creation of connections
US20140237047A1 (en) Automated command and discovery process for network communications

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20191001

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20191002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220916

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220916

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230310

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230609

R150 Certificate of patent or registration of utility model

Ref document number: 7295752

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150