METHOD OF PROTOCOL MANAGEMENT AND OPERATION OF A CONTENT DISTRIBUTION NETWORK

20170374142 · 2017-12-28

Assignee

Inventors

Cpc classification

International classification

Abstract

Method of management of a peer-to-peer network operating according to at least one exchange protocol aimed at disseminating items of content within the network between a plurality of peers, wherein during the dissemination of an item of content between two peers, the peer receiving the item receives a piece of information relating to the state of the peer-to-peer network including at least one value of a parameter of the network originating from peers other than those with which the peer is connected, and after each receipt of an item, the peer determines, on the basis of the piece of information accompanying the item received, at least one value of the parameter of the peer-to-peer network, so as to induce a manner of operation of the exchange protocol dependent on the updated values of the parameters of the network and at least one parameter representative of the state of the peer.

Claims

1. A method of management of a peer-to-peer network operating according to at least one exchange protocol aimed at broadcasting items of content within the network between a plurality of peers, method wherein, during the broadcasting of an item of content between two peers, the peer receiving the item furthermore receives a piece of information as to the state of the peer-to-peer network comprising at least one value of a parameter of the network originating from peers other than those with which the peer is connected, and wherein, after each receipt of an item, the peer determines, on the basis of the information accompanying the item received, at least one value, at least partially updated, of the parameter of the peer-to-peer network, so as to induce a manner of operation of the exchange protocol dependent on the at least one updated value of the parameter of the network and at least one parameter representative of the state of the peer.

2. The method according to claim 1, wherein the information accompanying each item received by the peer contains at least one value of a parameter concerning the items shared between the peers.

3. The method according to claim 1, wherein the list of the rarest items available on the peer-to-peer network, possibly contained in the information accompanying each item received by the peer, groups together the indices of the rarest items calculated depending on messages sent by each peer to the other peers of the network upon connecting to the network and reporting the items which it has already received, and receipt acknowledgement messages received by the peers of the network upon every receipt of an item and containing the index of the item and the estimation of the index of the rarest item of the network at this moment.

4. The method according to claim 1, wherein the information accompanying each item received by the peer contains at least one value of a parameter concerning the peer-to-peer network itself, especially the global bandwidth of the network, the number of peers in the network, a waiting queue for items to be recovered, or an index as to the quality of the connection of the peers to the network.

5. The method according to claim 1, wherein the global bandwidth of the network is calculated on the basis of an average bandwidth using an estimate of the bandwidth of the peer produced at the moment when the latter begins the downloading of an item and the sum of the bandwidths contained in the messages received by the peers with which the peer is connected divided by the number of peers having sent the messages.

6. The method according to claim 1, wherein the information accompanying each item received by the peer contains at least one value of a parameter concerning the security of the network.

7. The method according to claim 1, wherein the parameter representative of the state of the peer concerns its bandwidth, its quality of connection, the items already received and/or the power of the processor on which the peer is running.

8. The method according to claim 1, wherein the peer transmits to the other peers of the network the at least one value of a parameter of the peer-to-peer network at least partially updated after the receipt of an item of content.

9. The method according to claim 1, wherein the information as to the state of the peer-to-peer network comprising at least one value of a parameter of the network and accompanying the broadcasting of an item of content is inserted in a receipt acknowledgement message, telling the other peers of the network that the item has been received by the peer.

10. The method according to claim 1, wherein, depending on the values of the parameters of the network updated after each receipt of an item of content, a peer having a bandwidth greater than a predefined threshold and/or a processor of power greater than a predefined threshold is directed to at least one other peer suffering from a worse quality of connection in order to act as a gateway to the network for it.

11. The method according to claim 1, wherein, depending on the values of the parameters of the network updated after each receipt of an item of content, a peer having a bandwidth greater than the global bandwidth of the network is disconnected from a portion of the peers with which it is connected in order to be connected to peers of the network having a smaller bandwidth.

12. The method according to claim 1, wherein, depending on the values of the parameters of the network updated after each receipt of an item of content, a peer having a bandwidth less than a predefined threshold is directed to zones of the network containing peers having higher bandwidths.

13. The method according to claim 1, wherein, depending on the values of the parameters of the network updated after each receipt of an item of content, a peer containing rare items is directed to zones of the network where the entropy of the rare items is low.

14. The method according to claim 1, wherein, the exchange protocol allowing the broadcasting of items of content in client/server mode to at least one peer, the broadcasting of items within the network is switched from peer to peer mode to the client/server mode depending on the values of the parameters of the network updated after each receipt of an item of content and of at least one parameter representative of the state of the peer.

15. A computer program product for the implementing of the method of management of a peer-to-peer network as defined in claim 1, operating by at least one exchange protocol aimed at broadcasting items of content within the network among a plurality of peers, the computer program product comprising code instructions which, when executed on a processor, ensure that: during the broadcasting of an item of content between two peers, the peer receiving the item furthermore receives a piece of information as to the state of the peer-to-peer network comprising at least one value of a parameter of the network originating from peers other than those with which the peer is connected, and after each receipt of an item of content, the peer determines, on the basis of the information accompanying the item received, at least one value, at least partially updated, of the parameter of the peer-to-peer network, so as to induce a manner of operation of the exchange protocol dependent on the at least one updated value of the parameter of the network and at least one parameter representative of the state of the peer.

Description

[0067] The invention may be better understood upon perusal of the following detailed description of nonlimiting exemplary embodiments, and upon examining the appended drawing, in which: [0068] FIGS. 1 and 2 illustrate the steps in carrying out the method according to the invention.

[0069] As represented in FIG. 1, a peer P.sub.0, during a step 11, may enter a peer-to-peer network in order to download and share items of content.

[0070] Said peer P.sub.0 advantageously begins its exchanges in the peer-to-peer network with a basic protocol operation manner, making use of lists of peers of the network which are exchanged among the peers in order to find the most suitable peer for the content desired. The peer P.sub.0, when it has finished downloading an item of content, advantageously sends to the other peers of the network with which it is connected a “Have” receipt acknowledgement message, indicating that it has received an item and verified its integrity with the aid of hash tables, particularly the SHA1 technology. In response to this “Have” message, the other peers may send an “interested” message to indicate their interest. In response to this “interested” message, if the peer P.sub.0 agrees to share the item, it may send an acceptance “unchoke” message. Otherwise, it sends a refusal “choke” message, and places the interested peer on hold. The peers of the network furthermore exchange a “Bitfield” message between them, comprising a string of bits designating whether or not an item is in their possession.

[0071] In the method according to the invention, the state of the network is measured, during a step 12 represented in FIG. 1, during the broadcasting of an item of content between two peers, and the peer P.sub.0 receiving said item further receives a piece of information as to the state of the network comprising at least one value of a parameter of the network originating from peers other than the neighboring peers of said peer.

[0072] During a step 13, the state of the peer P.sub.0 is also advantageously measured. After each receipt of an item, the peer P.sub.0 may determine, on the basis of said information accompanying the item received, at least one value, at least partially updated, of the parameter of the peer-to-peer network so as to induce, during a step 14, a manner of operation of the exchange protocol dependent on the updated values of the parameters of the network and at least one parameter representative of the state of said peer.

[0073] As represented in FIG. 2, the information as to the state of the peer-to-peer network comprising at least one value of a parameter of the network and accompanying the broadcasting of an item of content, during a step 21, may be inserted in a “Have” message.

[0074] After each receipt of an item, as can be seen in FIG. 2, the peer P.sub.0 transmits to the other peers of the network P.sub.1 . . . P.sub.N said at least one value of a parameter of the peer-to-peer network at least partially updated.

[0075] As can be seen in FIG. 2, said information accompanying each item received by the peer P.sub.0 advantageously contains at least one value of a parameter concerning the items shared between the peers, such as a list of the rarest items available on the peer-to-peer network. This list of the rarest items available on the peer-to-peer network may group together the indices of the rarest items calculated depending on “Bitfield” messages sent by each peer to the other peers of the network upon connecting to the network and reporting the items which it has already received, and “Have” messages received by the peers of the network upon each receipt of an item and containing the index of said item and the estimation of the index of the rarest item of the network at this moment.

[0076] In the known peer-to-peer exchange protocols, the default calculation of the rarest item of the network is done for example as follows:

TABLE-US-00001 Bitfield P.sub.2 1111111011111111 Bitfield P.sub.3 1000000011100001 Bitfield P.sub.4 0011100011100110 Sum of the bits 2122211033311222

[0077] A bit equal to 0 corresponds advantageously to a lacking item, a bit equal to 1 corresponding to an item in possession. The index of the rarest item thus corresponds advantageously to: Min (Bitfields sum).

[0078] The peers P.sub.1, P.sub.2 and P.sub.3 may include in their “Have” messages a piece of information Pi (index of the item downloaded, the rarest item in the global vision of the peer), for example: P.sub.1(1.5), P.sub.2(11.9) and P.sub.3(3.13). In this example, the peer P.sub.0 recalculates the index of the rarest item as follows:

[0079] 1—Recalculate the bitfield messages while incorporating its own message:

TABLE-US-00002 Bitfield P.sub.0 1000000000000000 Bitfield P.sub.1 1111111011111111 Bitfield P.sub.2 1000000011100001 Bitfield P.sub.3 0011100011100110 Sum of the bits 3122211033311222

[0080] 2—Take into account the rarest items reported by the other peers, decrementing the index of the item reported as being rare (it should be noted that the decrementing is limited to zero and does not go into negative values):

TABLE-US-00003 Old global vision of the indices 3122211033311222 New global vision of the indices 3122111023310222

[0081] In the case of several equal bits, a “random” calculation may be done for the items with low index. The index of the rarest item Idp is then calculated by: Idp=random (min(3122111023310222)).

[0082] In one variant or in combination, the information accompanying each item received by the peer P.sub.0 contains the downloading rate of each item.

[0083] The information accompanying each item received by the peer P.sub.0 may likewise contain, as represented in FIG. 2, at least one value of a parameter concerning the peer-to-peer network itself, such as the global bandwidth of the network, the number of peers in the network, and a potential waiting queue for the items to be recovered, especially in the event of sharing content broadcasted in real time. The global bandwidth of the network may be calculated on the basis of an average bandwidth using the estimate of the bandwidth of the peer P.sub.0 at the moment when the latter begins the downloading of an item and the sum of the bandwidths contained in the messages received by the peers with which said peer P.sub.0 is connected, divided by the number of peers having sent said messages.

[0084] In one variant, the information accompanying each item received by the peer P.sub.0 contains the estimated waiting time for each item and/or an index as to the quality of the connection of the peers to the network.

[0085] The information accompanying each item received by the peer may likewise contain, as represented in the example in FIG. 2, at least one value of a parameter concerning the security of the network, especially the ratio between the number of items broadcasted and the number of items received or a reliability index as to the presence of false items of content.

[0086] After each receipt of an item, the peer P.sub.0 advantageously verifies that the item received corresponds to the expected item or whether it is a corrupted content by making use of hash tables. In the second eventuality, the peer P.sub.0 may increment said reliability index with the number of new malicious peers transmitting the corrupted content. The maximum value among the value of the reliability index of the peer P.sub.0 and those of the neighboring peers is advantageously recorded and sent by the peer P.sub.0 in the “Have” message.

[0087] Said reliability index is preferably periodically reset to zero. The interval of time t until the reliability index is reset at zero advantageously depends on the size of the content exchanged. For example, in the case of a content of 600 Go, the time t corresponds to the time needed for the downloading of 5 items, which corresponds to around 1% of the time scheduled for the downloading of the content. In this case, the calculation of the reliability index is done as follows:

TABLE-US-00004 for five_pieces_completed =< 5:     if not correct_piece and new_peer:       index += 1       index = max(index,index_swarm)     else:       index = 0       index = max (index,index_swarm)

[0088] Said parameter representative of the state of the peer P.sub.0 used to adapt the manner of operation of the exchange protocol may concern bandwidth, its quality of connection, the items already received, or the power of the processor on which the peer is running.

[0089] According to the invention, depending on the values of the parameters of the network updated after each receipt of an item of content, in the case where the peer P.sub.0 has a bandwidth greater than a predefined threshold and/or a processor of power greater than a predefined threshold, it may be directed to at least one other peer suffering from a worse quality of connection in order to act as a gateway to the network for it.

[0090] In the event where the peer P.sub.0 has a bandwidth less than said predefined threshold, depending on the values of the parameters of the network updated after each receipt of an item of content, it may be directed to zones of the network containing peers having higher bandwidths.

[0091] Depending on the values of the parameters of the network updated after each receipt of an item of content, in the case where the peer P.sub.0 has a bandwidth greater than the global bandwidth of the network, it may be disconnected from a portion of the peers with which it is connected in order to be connected to peers of the network having a smaller bandwidth.

[0092] In one exemplary embodiment of the invention, depending on the values of the parameters of the network updated after each receipt of an item of content, in the event where the peer P.sub.0 contains rare items, it may be directed to zones of the network where the entropy of said rare items is low.

[0093] In the case where the network is a hybrid, that is, the exchange protocol allows the broadcasting of items of content in client/server mode to at least one peer P.sub.0, the broadcasting of the items within the network is advantageously switched from the peer-to-peer mode to said client/server mode depending on the values of the parameters of the network updated after each receipt of an item of content and at least one parameter representative of the state of said peer P.sub.0.

[0094] The peer P.sub.0 advantageously has a peripheral, particularly a computer, a tablet, or a portable intelligent telephone or “smartphone”, comprising a processor on which a computer program product may be executed, comprising code instructions enabling the method of management according to the invention to be carried out.

[0095] The invention is not limited to the examples just described.

[0096] The method according to the invention may be carried out in any peer-to-peer exchange network, such as BitTorrent, Gnutella or eDonkey, for example.

[0097] The connection network used may be the Internet, or a local area network such as Ethernet or a university campus network. It may also involve networks using wireless technologies such as telephone networks.

[0098] Of course, the invention may apply to other exchange networks and other modes of network connections.

[0099] The term “containing a” should be understood as meaning “containing at least one”, unless otherwise indicated.