SG178407A1 - Method and apparatus for constructing seed group in peer-to-peer application and method for using seed group - Google Patents

Method and apparatus for constructing seed group in peer-to-peer application and method for using seed group Download PDF

Info

Publication number
SG178407A1
SG178407A1 SG2012010229A SG2012010229A SG178407A1 SG 178407 A1 SG178407 A1 SG 178407A1 SG 2012010229 A SG2012010229 A SG 2012010229A SG 2012010229 A SG2012010229 A SG 2012010229A SG 178407 A1 SG178407 A1 SG 178407A1
Authority
SG
Singapore
Prior art keywords
peer
peers
initial
peer group
user terminal
Prior art date
Application number
SG2012010229A
Inventor
Youwei Hua
Original Assignee
Tencent Tech Shenzhen Co Ltd
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 Tencent Tech Shenzhen Co Ltd filed Critical Tencent Tech Shenzhen Co Ltd
Publication of SG178407A1 publication Critical patent/SG178407A1/en

Links

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

Abstract

AbstractEmbodiments of the present invention provide a method and an apparatus for establishing a peer group in P2P application. The method includes: a user terminal -firstly obtains one or more initial peers -from a peer server; the peer server returns the one or 5 more initial peers according to a configured policy; the user terminal establishes an initial peer group according to the initial peers; peers in the initial peer group communicate with each other to obtain information of other peers in other peer groups, and establish a new peer group according to the information of other peers. Therefore, a stable relationship is established among peers in the new peer group, and the peers can provide service 10 promptly when network resource is needed. Further, management of peers is implemented in a user terminal, management pressure and costs of the server are thus reduced, peers can be more fully used, and user experience is improved.

Description

METHOD AND APPARATUS FOR CONSTRUCTING SEED
GROUP IN PEER TO PEER APPLICATION AND METHOD
OF USING SEED GROUP
Technical Field
The present invention relates to network communications, and particularly to a method and an apparatus for establishing a peer group and a method of using the peer group.
Background
Peer to Peer (P2P) technique is a basic technique widely used in current stream media communications. Management and application of peers is the core of P2P technique. In conventional solutions, peers are generally managed in a centralized manner, i.e., using a server to manage peers, and the peers have no connection with each other.
According to the conventional solutions, workload and costs of the server for managing the peers are huge, and peers can not be fully used. Therefore, the time taken for waiting and downloading is long, the downloading speed of stream media is low and service experience of users is also affected.
Summary
Embodiments of the present invention provides a method for establishing a peer group in P2P application, which establishes a more stable relationship between the peers, thus the peers can provide service promptly when network resource is needed. Thus the management workload and costs of the server are reduced, peers are more fully used, and user experience is improved.
The method for establishing a peer group in P2P application according to embodiments may include: a user lerminal requests an initial peer from a peer server to make the peer server : return one or more initial peers according to a configured policy; the user terminal establishes an initial peer group according to the initial peers returned;
L the peers in the initial peer group communicate with each other to obtain information of peers in other peer groups, and establishes a new peer group according to the information of peers.
Embodiments also provide an apparatus for establishing a peer group in P2P application which may include: an Initial peer obtaining unit, configured in a user terminal, for obtaining one or more mitial peers from a peer server to make the peer server return the initial peers according to a configured policy; an initial peer group establishing unit, configured in the user terminal, for establishing an initial peer group according to the initial peers obtained by the initial peer obtaining unit; and a new peer group establishing unit, configured in the user terminal, for obtaining information of peers in other peer groups through communication with peers in the initial peer group, and establishing a new peer group.
Embodiments still provide a method of using a peer group established according to the above method. The method may include: a user terminal sends a resource request to a peer server lo make the peer server return one or more initial peers having the resource; an initial peer selects another peer that have the resource from a peer group to which the initial peer belongs, and provides the another peer for the user terminal; the user terminal obtains the resource from the initial peer and the another peer.
From the above scheme it can be seen that, a user terminal firstly obtains one or more initial peers from a peer server; the peer server returns the one or more initial peers according to a configured policy; the user terminal establishes an initial peer group according to the initial peers; peers in the initial peer group communicate with each other to obtain information of other peers in other peer groups, and establish a new peer group according to the information of other peers. Therefore, a stable relationship is established among peers in the new peer group, and the peers can provide service promptly when needed. Further, management of peers is implemented in a user terminal, management pressure and costs of the server are thus reduced, peers can be more fully used, and user experience is improved.
Brief description of the drawings
Fig. 1 is a flowchart illustrating a method for establishing a peer group according to embodiment one.
Fig. 2 is a schematic illustrating a peer group established in a process of embodiment one.
Fig. 3 is a flowchart illustrating a method of using a peer group in P2P application according to embodiment two,
Fig. 4 is a schematic illustrating a structure of an apparatus for establishing a peer group in P2P application according to embodiment three.
Detailed description of embodiments
Limbodiments provide a method and an apparatus for establishing a peer group in
P2P application, which can establish a stable relation among peers so that the peers can provide service promptly when needed. To make the technical scheme of the present invention more clear, some embodiments arc described in detail with reference to the accompanying drawings.
Embodiment one provides a method for establishing a peer group in P2P application.
Fig. 1 is a flowchart illustrating a method for establishing a peer group in P2P application of embodiment one. The method may include the following procedures.
In block 11, a user terminal obtains one or more initial peers from a peer server.
In this block, the user terminal may firstly log on the peer server, and sends a request to the peer server for obtaining an initial peer. At this block, a peer group has not been established in the user terminal. The initial peer refers to a node having a resource in P2P application, and the peer server refers to a managing unit having information of peers in a server.
In block 12, the peer server returns one or more peers according to a configured policy.
In this block, the peer server receives the request of the user terminal, returns one or more initial peers to the user terminal according to a configured policy. The configured policy may be pre-sct by an operator according to situations of resource occupation, or determined at random by the peer server according to network conditions. For example, it can be specified that the peer server returns nodes that have the required resource to the user terminal as the initial peers. For example, when five nodes have the required resource, the five nodes are returned as the initial peers.
In block 13, the user terminal establishes an initial peer group according to the initial peers returned.
In this block, after receiving the initial peers returned by the peer server, the user terminal may establish the initial peer group according to the initial peers. The number of peers in the initial peer group is the number of initial peers returned by the peer server.
In block 14, peers in the initial peer group communicate with each other to obtain information of peers from other peer groups, and forming respective new peer groups.
In this step, peers in the initial peer group communicate with each other to obtain information of peers in other peer groups, and obtain new peers according to the information of the peers, and form new peer groups. Specifically, a peer in the initial peer group requests a peer list of a peer group to which another peer belongs. And the peer obtains information of peers in the peer list, and establishes a new peer group using peers having the same resource in the peer list according to information of the peers.
For example, ig. 2 is a schematic illustrating a peer group established in embodiment one. Fig. 2 shows three peer groups, where peer 2 is shared by peer group 1 and peer group 2, peer 3 is shared by peer group 2 and peer group 3. The peers in the peer groups are managed by themselves in a loose mamner, and the management is implemented by user terminals without the peer server being involved.
In addition, the number of peers in a peer group as shown in Fig. 2 can be configured by a user terminal according to network conditions or the needs. For example, when nctwork condition is good, the upper limit of the number of peers in a peer group may be set to be 100, and when the number of peers in the peer group reaches the limit, i.e. 100, new peers will not be added into the peer group. The peer groups may be identified by different identifications, such as peer group A, peer group B, or peer group
C, which facilitates management of the user terminal,
Network type of peers in a peer group as shown in Fig. 2 may be set by a user terminal, i.c., can be configured according to the needs. For example, a user terminal may configure that a peer group includes 1/3 of peers directly connected to the public network, 1/3 of peers connected to the public network via routers, and 1/3 of peers connected to the public network in other manners. The peers in the peer groups shown in Fig. 2 may have the same or different resources, and the new peer group may include a number of idle peers. An idle peer refers to a peer does not have any network resource, and does not perform upload and download operations within a time period. The number of idle peers may also be configured by a user terminal.
Through the above process of establishing a peer group, a much stable relation can be established between peers in the new peer group, and the peers can provide service promptly when needed. Management of the peers can be implemented by a user terminal, which reduces management pressure and costs of the server and increases utility of the peers, and thus improves experience of users.
When the number of peers in the new peer group decreases, the peers in the peer group may perform further communications to obtain information of peers in other peer groups, and add new peers to the peer group according to information of the peers. For example, it can be configured that when the number of peers in a peer group decreases, or when the number of peers decreases 10 a specified threshold, the peers in the peer group communicate with each other to obtain information of peers in other peer groups, and add new peers having the same resource to the peer group to increase the number of peers in the peer group. Therefore, the total number of peers in the peer group can be increased in response to leaving of some peers, and be kept at a certain number, which increases utility ratio of the peers.
Embodiment two provides a method of using a peer group in P2P application. Fig. 3 is a Howchart illustrating a method of embodiment two. The method may include the following procedures.
In block 31, a user terminal requests a resource from a peer server.
In this block , after a peer group is established according to the method of embodiment one, when a user terminal needs a resource, the user terminal requests the resource from the peer server.
In block 32, the peer server returns one or more initial peers having the resource.
In this block, the peer server receives the resource request sent by the user terminal, and returns initial peers having the resource requested. The number of initial peers returned can be determined by the peer server according to network conditions or resource occupation situations. For example, the number of nodes having the resource is 10, the peer server may return the ten nodes to the user terminal as initial peers.
In block 33, an initial peer selects another peer that have the resource from a peer group to which the initial peer belongs, and provides the another peer for the user terminal.
In this block, the initial peer may select another peer having the resource from the peer group to which the initial peer belongs to the user terminal, and each initial peer may select a peer from its peer group. And this selecting process can be implemented by a user terminal, and does not have to be implemented by the server.
In block 34, the user terminal obtains the resource from the initial peer and the another peer.
In this block, the user terminal obtains the resource from the initial peers and other peers received. Since the other peers are selected by the initial peers from respective peer groups and are not selected by the server, management presser and costs of the server is greatly reduced, and the peers can be more fully used, thus the service experience of users 1s also improved.
The user terminal may give priority to the initial peers as the source of the resource to guarantee the download speed.
For example, a user terminal Peer I requests a resource from a peer server, supposing Peer 1 is a new peer and belongs to no peer group. The peer group returns
Peer Al and Peer_A2 which have the resource A. It is supposed that there are only two peers having the resource, and in practice, there may be multiple such peers.
Then Peer 1 requests data from Peer Al and Peer A2. Peer 1 finds out the transmitting speeds of both peers are not satisfactory, and informs Peer Al and Peer A2 of the situation. Peer Al and Peer_A2 select suitable nodes in respective peer groups, e.g., Peer Al selects Peer A3 and Peer_A4 having the resource, and Peer A2 selects
Peer AS and Peer_A6 having the resource. Thus, Peer 1 obtains new peers, i.e., Peer A3,
Peer_A4, Peer AS and Peer A6. And the process may be performed for a few times,
Peer 1 may obtain more peers, thus the downloading speed is increased. Further, the above selecting process is not performed by the server, the management workload and costs can be reduced, and service experience of users is also improved.
Embodiment three provides an apparatus for establishing a peer group in P2P application. ig. 4 is a schematic illustrating a structure of an apparatus of embodiment three. The apparatus may include an initial peer obtaining unit, an initial peer group establishing unit and a new peer group establishing unit.
The initial peer obtaining unit is configured in a user terminal, for obtaining one or more initial peers from a peer server. The number of initial peers may be five.
The initial peer group establishing unit is configured in the user terminal, for establishing an initial peer group based on the initial peers obtained by the initial peer obtaining unit. The detailed establishing process is the same with the process described in the method of embodiment one.
The new peer group establishing unit is configured in the user terminal, for obtaining information of peers in other peer groups through communication with other peers in the initial peer group, and establishing a new peer group based on the information of peers obtained.
In addition, the apparatus may further include a configuring unit, which is configured in the user terminal and is for configuring the number of peers in the new peer group and a network type of a peer, and the number of idle peers in the new peer group.
For example, it can be configured that the peer group includes 1/3 peers directly connected with a public network, and 1/3 peers connected with the public network via routers, and 1/3 other peers connected with the public network in other manners. In addition, the idle peer refers to a peer does not have network resource, and does not perform uploading and downloading operations within a specified time period. The number of idle peers may also be configured by the user terminal.
The apparatus may further include a peer adding unit, which is configured in the user terminal and is for obtaining information of peers in the other peer groups when the number of peers in the new peer group decreases, and adding new peers into the new peer group based on the information of peers obtained. For example, it can be configured that when the number of peers in a peer group decreases, or when the number of peers decreases to a specified threshold, the peers in the peer group communicate with each other to obtain information of peers in other peer groups, and add new peers having the same resource to the peer group lo increase the number of peers in the peer group.
Therefore, the total number of peers in the peer group can be increased in response to leaving of some peers, and be kept at a certain number, which increases utility ratio of the peers.
It should be noted that the apparatus is divided into the units by classification of functions, but the design of the units may follow other means as long as the functions can be implemented. The names of the units are merely used for identifying the units, and should not be used for limiting the scope of the invention.
Those skilled in the art can understand that some or all of the steps of the methods provided by the embodiments may be implemented by hardware controlled by software.
The software may be stored in a computer-readable storage medium.
Through the above process of establishing a peer group, a much stable relation can be established between peers in the new peer group, and the peers can provide service promptly when needed. Management of the peers can be implemented by a user terminal, which reduces management pressure and costs of the server and increases utility of the peers, and thus improves experience of users.
The foregoing is only preferred embodiments of the present invention. The protection scope of the present invention, however, is not limited to the above description.
Any alteration or substitution that is within the technical scope disclosed by the present invention and can easily occur to those skilled in the art should be covered in the protection scope of the present invention. Therefore, the protection scope of the present invention should be according to the claims.

Claims (10)

  1. Claims
    I. A method for establishing a peer group in a Peer to Peer (P2P) application, comprising: requesting, by a user terminal, an initial peer from a peer server to make the peer server return one or more initial peers according to a configured policy; establishing, by the user terminal, an initial peer group based on the one or more initial peers; communicating, by peers in the initial peer group, with each other to obtain information of peers in another peer group, and establishing a new peer group according to the information of peers.
  2. 2. The method of claim 1, wherein communicating by peers in the initial peer group with each other to obtain information of peers in another peer group and establishing a new peer group according to the information of peers comprises: acquiring, by a peer in the initial peer group, a list of peers in another peer group from another peer in the initial peer group; obtaining, by the peer, information of the peers in the list, and forming the new peer group based on the information of the peers.
  3. 3. The method of claim 1 or 2, wherein the number of peers and network types of peers in the new peer group are configured by the user terminal.
  4. 4. The method of claim 1, wherein peers in the new peer group have different resource, the new peer group includes one or more idle peers, and the number of idle peers in the new peer group is configured by the user terminal.
  5. 5. The method of claim 1, further comprising: performing, by the peers in the peer group, communications with each other to obtain information of peers in another peer group when the number of peers in the new peer group decreases, and adding a new peer into the new peer group according to information of the peers.
  6. 6. An apparatus for establishing a peer group in a Peer to Peer (P2P) application,
    comprising: an initial peer obtaining unit, configured in a user terminal, for obtaining one or more initial peers from a peer server to make the peer server return the one or more initial peers according to a configured policy; an initial peer group establishing unit, configured in the user terminal, for establishing an initial peer group according to the one or more initial peers obtained by the initial peer obtaining unit; and a new peer group establishing unit, configured in the user terminal, for obtaining information of peers in another peer group through communication with peers in the initial peer group, and establishing a new peer group based on the information of peers.
  7. 7. The apparatus of claim 6, further comprising: a configuring unit, configured in the user terminal, for configuring the number of peers and network types of the peers in the new peer group, and the number of idle peers in the new peer group.
  8. 8. The apparatus of claim 6, further comprising: a peer adding unit, configured in the user terminal, for obtaining information of peers in another peer group when the number of peers in the new peer group decreases, and adding a new peer into the new peer group based on the information of peers obtained.
  9. 9. A method of using the peer group established according to claim 1, comprising; sending, by a user terminal, a resource request to a peer server to make the peer server return one or more initial peers having the resource; selecting, by an initial peer, another peer that have the resource from a peer group to which the initial peer belongs, and provides the another peer for the user terminal; obtaining, by the user terminal, the resource from the initial peer and the another peer.
  10. 10. The method of claim 9, wherein the user terminal gives priority to the initial peer as the source of the resource.
SG2012010229A 2009-08-18 2010-08-11 Method and apparatus for constructing seed group in peer-to-peer application and method for using seed group SG178407A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200910091001A CN101631056A (en) 2009-08-18 2009-08-18 Method and device for constructing seed group in peer-to-peer application
PCT/CN2010/075883 WO2011020417A1 (en) 2009-08-18 2010-08-11 Method and apparatus for constructing seed group in peer-to-peer application and method for using seed group

Publications (1)

Publication Number Publication Date
SG178407A1 true SG178407A1 (en) 2012-03-29

Family

ID=41576012

Family Applications (1)

Application Number Title Priority Date Filing Date
SG2012010229A SG178407A1 (en) 2009-08-18 2010-08-11 Method and apparatus for constructing seed group in peer-to-peer application and method for using seed group

Country Status (5)

Country Link
CN (1) CN101631056A (en)
BR (1) BR112012003680A2 (en)
RU (1) RU2522995C2 (en)
SG (1) SG178407A1 (en)
WO (1) WO2011020417A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101631056A (en) * 2009-08-18 2010-01-20 腾讯科技(深圳)有限公司 Method and device for constructing seed group in peer-to-peer application
CN102025782A (en) * 2010-12-08 2011-04-20 成都市华为赛门铁克科技有限公司 Point-to-point communication method, device and system
CN108989449B (en) * 2018-08-03 2021-06-22 杭州安恒信息技术股份有限公司 Large file propagation method and device applied to large-scale deployment scene

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7051102B2 (en) * 2002-04-29 2006-05-23 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) security infrastructure and method
US9003048B2 (en) * 2003-04-01 2015-04-07 Microsoft Technology Licensing, Llc Network zones
WO2005107218A1 (en) * 2004-04-30 2005-11-10 Ntt Docomo, Inc. Zone-based peer-to-peer
CN101150465B (en) * 2006-09-22 2010-09-15 腾讯科技(深圳)有限公司 A method for obtaining seed information and supernode and common nodes in P2P network
CN101340331B (en) * 2007-07-06 2010-12-08 中国电信股份有限公司 Method for executing system task by idle terminal in P2P network
CN101631056A (en) * 2009-08-18 2010-01-20 腾讯科技(深圳)有限公司 Method and device for constructing seed group in peer-to-peer application

Also Published As

Publication number Publication date
RU2012109691A (en) 2013-09-27
CN101631056A (en) 2010-01-20
WO2011020417A1 (en) 2011-02-24
RU2522995C2 (en) 2014-07-20
BR112012003680A2 (en) 2016-03-29

Similar Documents

Publication Publication Date Title
CN109218047B (en) Network slice processing method and device, communication system and storage medium
US10681127B2 (en) File upload method and system
US9344495B2 (en) Peer-to-peer network system with manageability
EP2058980A1 (en) A method, system and device for establishing a peer to peer connection in a p2p network
US20100174806A1 (en) Data Processing Method, Apparatus And System
JP5865394B2 (en) Peer node and method for improved peer node selection
WO2023000936A1 (en) Data processing method, function device and readable storage medium
WO2020238190A1 (en) Method for transmitting data, node, and storage medium
US9553790B2 (en) Terminal apparatus and method of controlling terminal apparatus
CN109391503B (en) Network slice management method and device
US20120259920A1 (en) Peer-to-peer communication according to transmission capacity
CN114363963A (en) Load balancing selection method and system for cloud-native UPF signaling plane
CN109194993B (en) Media file distribution method and file distribution platform
SG178407A1 (en) Method and apparatus for constructing seed group in peer-to-peer application and method for using seed group
CN102025782A (en) Point-to-point communication method, device and system
EP1719326B1 (en) Method for improving peer to peer network communication
CN112491951B (en) Request processing method, server and storage medium in peer-to-peer network
US20160028650A1 (en) Method and system for a user to create favorite server lists for multiple services
CN109788075B (en) Private network system, data acquisition method and edge server
CN110769023A (en) Point-to-point content distribution network system based on intelligent home gateway
JP5894981B2 (en) Accessing a network of nodes distributed across a communication architecture using a topology server with multiple criteria selection
US20140161125A1 (en) Method, duplication point device, and system for data flow reuse transmission
CN105577646A (en) Method for aggregating bandwidth on user side, device and content distribution system
CN102447724B (en) Method, server and system for controlling peer-to-peer (P2P) download
KR101445047B1 (en) Confidential or protected access to a network of nodes distributed over a communication architecture with the aid of a topology server