# US 12,010,009 B2 · Method for distributing content, electronic device, and computer program product

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,010,009 B2
- Document ID: US12010009B2
- Status: Granted
- Kind: B2
- Application number: 17/397,048
- Filed: 2021-08-09
- Published: 2023-02-02
- Granted: 2024-06-11
- Earliest claimed: 2021-07-23
- Assignees: EMC IP Holding Company LLC
- Applicants: EMC IP Holding Company LLC
- Inventors: Wenbin Yang; Jiacheng Ni; Zhen Jia
- Web page: https://patentgrep.com/patent/US12010009B2

## CPC

- H04L 45/16: Multipoint routing
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Embodiments of the present disclosure relate to a method for distributing content, an electronic device, and a computer program product. The method for distributing content provided in embodiments of the present disclosure includes acquiring neighboring topological information of a plurality of nodes in a collaborative storage network, the plurality of nodes being used for collaboratively storing a plurality of contents requested by a client, the neighboring topological information at least indicating a one-hop relationship between directly connected one-hop node pairs among the plurality of nodes and a two-hop relationship between two-hop node pairs connected via an intermediate node among the plurality of nodes; determining a potential cost of transmitting a plurality of to-be-distributed contents among the plurality of nodes based on the neighboring topological information; and distributing a target content among the plurality of contents to a node among the plurality of nodes based on the potential cost.

## Claims

### Claim 1

A method for distributing content, comprising:
acquiring neighboring topological information of a plurality of nodes in a collaborative storage network, the plurality of nodes being used for collaboratively storing a plurality of contents requested by a client, the neighboring topological information comprising at least a first data structure indicating a one-hop relationship between directly connected one-hop node pairs among the plurality of nodes and a second data structure, different than the first data structure, the second data structure indicating a two-hop relationship between two-hop node pairs connected via an intermediate node among the plurality of nodes;
determining a potential cost of transmitting a plurality of to-be-distributed contents between the plurality of nodes based on one or more tensor operations implemented utilizing the first and second data structures of the neighboring topological information, the tensor operations being based on a tensor of at least three dimensions, with a first one of the dimensions of the tensor taking on a first value to identify additional dimensions corresponding to the first data structure, and taking on a second value to identify additional dimensions corresponding to the second data structure; and
distributing a target content among the plurality of contents to a node among the plurality of nodes based on the potential cost;
wherein determining the potential cost of transmitting the plurality of to-be-distributed contents between the plurality of nodes based on the neighboring topological information comprises:
applying a first cost determination function to at least a subset of the one-hop node pairs, the first cost determination function being based at least in part on which contents among the plurality of contents are stored in at least one one-hop neighboring node of a given node;
applying a second cost determination function to at least a subset of the two-hop node pairs, the second cost determination function being different than the first cost determination function, the second cost determination function being based at least in part on which contents among the plurality of contents are stored in at least one two-hop neighboring node of the given node; and
determining the potential cost based on results of the applying of the first cost determination function and the applying of the second cost determination function.

### Claim 2 (depends on 1)

The method according to claim 1, wherein determining the potential cost comprises:
determining a first cost of transmitting complementary contents between the one-hop node pairs for use as at least a part of the potential cost.

### Claim 3 (depends on 2)

The method according to claim 2, wherein determining the potential cost further comprises:
determining a second cost of transmitting partially overlapping contents between the two-hop node pairs for use as a part of the potential cost.

### Claim 4 (depends on 1)

The method according to claim 1, wherein distributing the target content to the node among the plurality of nodes comprises:
minimizing the potential cost to determine the target content to be distributed to the node among the plurality of nodes from among the plurality of contents; and
distributing the target content to the node.

### Claim 5 (depends on 1)

The method according to claim 1, wherein determining the potential cost further comprises:
further determining the potential cost based on a popularity of each of the plurality of contents.

### Claim 6 (depends on 5)

The method according to claim 5, wherein the method further comprises:
updating the potential cost in response to a variation of the popularity; and
updating the content distributed to the node among the plurality of nodes based on the updated potential cost.

### Claim 7 (depends on 1)

The method according to claim 1, wherein determining the potential cost further comprises:
further determining the potential cost based on a volume of each of the plurality of nodes and a size of each of the plurality of contents.

### Claim 8

An electronic device, comprising:
a processor; and
a memory coupled to the processor, the memory containing instructions stored therein, the instructions, when executed by the processor, causing the electronic device to execute actions, the actions comprising:
acquiring neighboring topological information of a plurality of nodes in a collaborative storage network, the plurality of nodes being used for collaboratively storing a plurality of contents requested by a client, the neighboring topological information comprising at least a first data structure indicating a one-hop relationship between directly connected one-hop node pairs among the plurality of nodes and a second data structure, different than the first data structure, the second data structure indicating a two-hop relationship between two-hop node pairs connected via an intermediate node among the plurality of nodes;
determining a potential cost of transmitting a plurality of to-be-distributed contents among the plurality of nodes based on one or more tensor operations implemented utilizing the first and second data structures of the neighboring topological information, the tensor operations being based on a tensor of at least three dimensions, with a first one of the dimensions of the tensor taking on a first value to identify additional dimensions corresponding to the first data structure, and taking on a second value to identify additional dimensions corresponding to the second data structure; and
distributing a target content among the plurality of contents to a node among the plurality of nodes based on the potential cost;
wherein determining the potential cost of transmitting the plurality of to-be-distributed contents between the plurality of nodes based on the neighboring topological information comprises:
applying a first cost determination function to at least a subset of the one-hop node pairs, the first cost determination function being based at least in part on which contents among the plurality of contents are stored in at least one one-hop neighboring node of a given node;
applying a second cost determination function to at least a subset of the two-hop node pairs, the second cost determination function being different than the first cost determination function, the second cost determination function being based at least in part on which contents among the plurality of contents are stored in at least one two-hop neighboring node of the given node; and
determining the potential cost based on results of the applying of the first cost determination function and the applying of the second cost determination function.

### Claim 9 (depends on 8)

The electronic device according to claim 8, wherein determining the potential cost comprises:
determining a first cost of transmitting complementary contents between the one-hop node pairs for use as at least a part of the potential cost.

### Claim 10 (depends on 9)

The electronic device according to claim 9, wherein determining the potential cost further comprises:
determining a second cost of transmitting partially overlapping contents between the two-hop node pairs for use as a part of the potential cost.

### Claim 11 (depends on 8)

The electronic device according to claim 8, wherein distributing the target content to the node among the plurality of nodes comprises:
minimizing the potential cost to determine the target content to be distributed to the node among the plurality of nodes from among the plurality of contents; and
distributing the target content to the node.

### Claim 12 (depends on 8)

The electronic device according to claim 8, wherein determining the potential cost further comprises:
further determining the potential cost based on a popularity of each of the plurality of contents.

### Claim 13 (depends on 12)

The electronic device according to claim 12, wherein the actions further comprise:
updating the potential cost in response to a variation of the popularity; and
updating the content distributed to the node among the plurality of nodes based on the updated potential cost.

### Claim 14 (depends on 8)

The electronic device according to claim 8, wherein determining the potential cost further comprises:
further determining the potential cost based on a volume of each of the plurality of nodes and a size of each of the plurality of contents.

### Claim 15

A computer program product, the computer program product being tangibly stored on a computer-readable medium and comprising machine-executable instructions, the machine-executable instructions, when executed, causing a machine to execute a method for distributing content, the method comprising:
acquiring neighboring topological information of a plurality of nodes in a collaborative storage network, the plurality of nodes being used for collaboratively storing a plurality of contents requested by a client, the neighboring topological information comprising at least a first data structure indicating a one-hop relationship between directly connected one-hop node pairs among the plurality of nodes and a second data structure, different than the first data structure, the second data structure indicating a two-hop relationship between two-hop node pairs connected via an intermediate node among the plurality of nodes;
determining a potential cost of transmitting a plurality of to-be-distributed contents between the plurality of nodes based on one or more tensor operations implemented utilizing the first and second data structures of the neighboring topological information, the tensor operations being based on a tensor of at least three dimensions, with a first one of the dimensions of the tensor taking on a first value to identify additional dimensions corresponding to the first data structure, and taking on a second value to identify additional dimensions corresponding to the second data structure; and
distributing a target content among the plurality of contents to a node among the plurality of nodes based on the potential cost;
wherein determining the potential cost of transmitting the plurality of to-be-distributed contents between the plurality of nodes based on the neighboring topological information comprises:
applying a first cost determination function to at least a subset of the one-hop node pairs, the first cost determination function being based at least in part on which contents among the plurality of contents are stored in at least one one-hop neighboring node of a given node;
applying a second cost determination function to at least a subset of the two-hop node pairs, the second cost determination function being different than the first cost determination function, the second cost determination function being based at least in part on which contents among the plurality of contents are stored in at least one two-hop neighboring node of the given node; and
determining the potential cost based on results of the applying of the first cost determination function and the applying of the second cost determination function.

### Claim 16 (depends on 15)

The computer program product according to claim 15, wherein determining the potential cost comprises:
determining a first cost of transmitting complementary contents between the one-hop node pairs for use as at least a part of the potential cost.

### Claim 17 (depends on 16)

The computer program product according to claim 16, wherein determining the potential cost further comprises:
determining a second cost of transmitting partially overlapping contents between the two-hop node pairs for use as a part of the potential cost.

### Claim 18 (depends on 15)

The computer program product according to claim 15, wherein distributing the target content to the node among the plurality of nodes comprises:
minimizing the potential cost to determine the target content to be distributed to the node among the plurality of nodes from among the plurality of contents; and
distributing the target content to the node.

### Claim 19 (depends on 15)

The computer program product according to claim 15, wherein determining the potential cost further comprises:
further determining the potential cost based on a popularity of each of the plurality of contents.

### Claim 20 (depends on 19)

The computer program product according to claim 19, wherein the method further comprises:
updating the potential cost in response to a variation of the popularity; and
updating the content distributed to the node among the plurality of nodes based on the updated potential cost.
