Content management in peer-to-peer content distribution clouds
First Claim
1. A method of negotiating which one or more blocks of content are to be exchanged between two peers in a peer to peer content distribution cloud the method comprising, at a peer node acting as a client node:
- (i) sending an offer request message comprising information about one or more groups of one or more blocks of content encoded using Group Network Coding for which the client node needs content and information which at least partially indicates those blocks of content that are already available to the client node, the offer request message being sent to another peer node acting as a server node to request an offer of one or more blocks of content available from that server node;
(ii) receiving an offer reply message from the server node comprising information about less than a total number of one or more blocks of content already available from the server node either in Group Network Coding form or that the server node is able to encode using Group Network Coding; and
(iii) selecting at least one block on the basis of the information in the offer reply message and sending a block request message to the server node to request the selected block(s).
2 Assignments
0 Petitions
Accused Products
Abstract
Managing content by influencing its distribution in the form of blocks or other units is crucial to the performance of a peer-to-peer content distribution system. We provide a content management module at each peer node to achieve this. The content management module implements a content request/response cycle in order to negotiate about blocks of content with other peer nodes. This cycle comprises an offer request, offer reply and a block request. These steps are preferably followed by data exchange and verification. The negotiation protocol used by our content management module provides a generic method that is advantageously used in conjunction with different encoding schemes such as full network coding and group network coding. In one embodiment we use group network coding and add information to the offer request and offer reply to facilitate efficient content distribution. Block request messages are selected to promote the use of on-the-fly decoding where possible.
-
Citations
17 Claims
-
1. A method of negotiating which one or more blocks of content are to be exchanged between two peers in a peer to peer content distribution cloud the method comprising, at a peer node acting as a client node:
-
(i) sending an offer request message comprising information about one or more groups of one or more blocks of content encoded using Group Network Coding for which the client node needs content and information which at least partially indicates those blocks of content that are already available to the client node, the offer request message being sent to another peer node acting as a server node to request an offer of one or more blocks of content available from that server node; (ii) receiving an offer reply message from the server node comprising information about less than a total number of one or more blocks of content already available from the server node either in Group Network Coding form or that the server node is able to encode using Group Network Coding; and (iii) selecting at least one block on the basis of the information in the offer reply message and sending a block request message to the server node to request the selected block(s). - View Dependent Claims (2, 3, 4, 5, 6, 16)
-
-
7. A method of negotiating which one or more blocks of content are to be exchanged between two peers in a peer to peer content distribution cloud the method comprising, at a peer node acting as a server node:
-
(i) receiving an offer request message from another peer node acting as a client node requesting an offer of one or more blocks of content available from the server node the offer request message comprising information about one or more groups of one or more blocks of content encoded using Group Network Coding for which the client node needs content and information which at least partially indicates those blocks of content that are already available to the client node; (ii) sending an offer reply message comprising information about one or more blocks of content available from the server node, the information comprising which of the total number of blocks are available from the server node either in Group Network Coding form or that the server node is able to encode using Group Network Coding; (iii) receiving a block request message from the client node requesting one or more selected ones of the offered blocks; and (iv) sending the requested block(s) to the client node. - View Dependent Claims (8, 9, 17)
-
-
10. A peer node suitable for acting as a client node in a peer to peer content distribution cloud, and for negotiating which one or more blocks of content are to be exchanged between itself and another peer in the cloud using Group Network Coding the peer node comprising:
-
(i) sending an offer request message comprising information about one or more groups of one or more blocks of content encoded using Group Network Coding for which the client node needs content and information which only partially indicates those blocks of content that are already available to the client node, the offer request message being sent to another peer node acting as a server node to request an offer of one or more blocks of content available from that server node; (ii) receiving an offer reply message from the server node comprising information about less than a total number of one or more blocks of content already available from the server node either in Group Network Coding form or that the server node is able to encode using Group Network Coding; and (iii) a processor arranged to select at least one block on the basis of the information in the offer reply message and to send a block request message to the server node to request the selected block(s). - View Dependent Claims (11, 12, 13)
-
-
14. A peer node suitable for acting as a server node in a peer to peer content distribution cloud, and for negotiating which one or more blocks of content are to be exchanged between itself and another peer in the cloud using Group Network Coding the peer node comprising:
-
(i) receiving an offer request message from another peer node acting as a client node requesting an offer or one or more blocks of content available from the server node, the offer request message comprising information about one or more groups of one or more blocks of content encoded using Group Network Coding for which the client node needs content and information which at least partially indicates those blocks of content that are already available to the client node; (ii) sending an offer reply message comprising information about one or more blocks of content available from the server node, the information comprising which of the total number of blocks are available from the server node either in Group Network Coding form or that the server node is able to encode using Group Network Coding; (iii) receiving a block request message from the client node requesting one or more selected ones of the offered blocks; and (iv) sending the requested block(s) to the client node. - View Dependent Claims (15)
-
Specification