IP Library Granted Patent US 8,762,461
Granted Patent B2
US 8,762,461 · App. 13/378,982 · Granted Jun 24, 2014

Method, system and device for searching active peer in P2P streaming media system

Inventors: Yunfei Zhang (Beijing, CN); Jin Peng (Beijing, CN); Xiaodong Duan (Beijing, CN); Guangqing Deng (Beijing, CN); Jiadong Hao (Beijing, CN); Bing Wei (Beijing, CN)
Assignee: China Mobile Communications Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,762,461
App. No.
13/378,982
Granted
Jun 24, 2014
Kind
B2
Abstract

Disclosed is a method, system and device for searching active nodes in P2P(peer to peer) streaming media system. Selectable nodes briefly and efficiently report their own subblocks information to a tracker device, such as the number of the continuous buffered subblocks, the sequence number of the first subblock of the continuous subblocks and the total number information of the buffered subblocks; the tracker device can select suitable candidate nodes for a request node according to the subblocks information of the selectable nodes, therefore the request node can determine active nodes without sending a large amount of detections to the candidate nodes; the waste of communication resources is avoided and the bandwidth cost is reduced; also, the selectable nodes can report characters of the networks where they locate, and the tracker device can select nodes in wired network to be candidate nodes first, therefore, the transmission speed of the whole P2P system is improved and the waiting delay of the request node is reduced.

Claims (62)

1. A method for searching an active peer in a P2P streaming media system, wherein, receiving, by a tracker, the number of continuous subblocks buffered by a selectable peer and a sequence number of the first subblock of the continuous subblocks;

the method for searching an active peer comprises:

receiving, by the tracker, a Peerlist request sent by a request peer, selecting, by the tracker, a plurality of selectable peers as candidate peers according to a sequence number of a starting subblock of data to be downloaded by the request peer which is contained in the Peerlist request, wherein, the starting subblock of the data to be downloaded is buffered in the candidate peers; and

returning, by the tracker, peer information of the candidate peers to the request peer via a Peerlist, and instructing the request peer to determine at least one candidate peer as an active peer according to the peer information in the Peerlist,

wherein after selecting by the tracker the candidate peers and before returning the Peerlist to the request peer, the method further comprises:

when the number of the candidate peers is larger than a maximum value, the tracker reselects the candidate peers, the number of candidate peers reselected is no larger than the maximum value; or

when the number of the candidate peers is larger than the maximum value, the tracker orders the candidate peers from large to small according to the number of continuous subblocks buffered, and reselects the first N candidate peers, wherein N is a positive integer and is no larger than the maximum value; or

when the number of the candidate peers is larger than the maximum value, the tracker orders the candidate peers from large to small according to the total number of subblocks of the data to be downloaded, and reselects the first M candidate peers, wherein M is a positive integer and is no larger than the maximum value;

and wherein the tracker returns the Peerlist to the request peer comprises:

the tracker returns peer information of the candidate peers reselected to the request peer via a Peerlist.

2. The method according to claim 1 , further comprising: before searching an active peer,

receiving, by the tracker, one or a combination of the following information reported by the selectable peer:

the total number of subblocks buffered by the selectable peer;

whether the number of connection peers of the selectable peer is saturated;

information of a network in which the selectable peer lies;

if the selectable peer lies in a wireless network, the selectable peer reports battery continuation time;

a data processing speed of the selectable peer;

a storage space size and a memory size of the selectable peer;

a time length from a moment the selectable peer lately logs on the tracker to a current moment;

data upload efficiency of the selectable peer; and

a network bandwidth of the network in which the selectable peer lies;

after the tracker selects the candidate peers and before the tracker returns the Peerlist to the request peer, the tracker further screens the candidate peers according to one or more of the following conditions:

the number of connection peers of the candidate peer is unsaturated, wherein the number of connection peers is the number of other peers that obtain data from the candidate peer;

the number of continuous subblocks buffered in the candidate peer is larger than a first threshold;

the total number of subblocks buffered in the candidate peer is larger than a second threshold;

if the number of candidate peers that lie in wired networks is no less than the number of candidate peers required, the tracker selects candidate peers from the candidate peers that lie in wired networks; and, if the number of candidate peers that lie in wired networks is less than the number of candidate peers required, the tracker takes all the candidate peers that lie in wired networks and at least one candidate peer that lies in a wireless network as the candidate peers;

if the candidate peer lies in a wireless network, the battery continuation time of the candidate peer is larger than a first time length;

the data processing speed of the candidate peer is larger than a given speed;

the storage space size of the candidate peer is larger than a first numerical value, and the memory size of the candidate peer is larger than a second numerical value;

the time length from the moment the candidate peer lately logs on the tracker to the current moment is larger than a second time length;

the data upload efficiency of the candidate peer is larger than a given efficiency value; and

the network bandwidth of the network in which the candidate peer lies is larger than a given bandwidth value.

3. A system for searching an active peer in a P2P streaming media system, comprising a request peer, a selectable peer and a tracker, wherein:

the selectable peer is configured to report the number of continuous subblocks buffered and a sequence number of the first subblock of the continuous subblocks to the tracker;

the request peer is configured to send a Peerlist request to the tracker and determine at least one candidate peer as an active peer according to peer information in a Peerlist returned by the tracker; and

the tracker is configured to select a plurality of selectable peers as candidate peers according to a sequence number of a starting subblock of data to be downloaded by the request peer which is contained in the Peerlist request after receiving the Peerlist request, wherein the candidate peers buffer the starting subblock of the data to be downloaded, and return peer information of the candidate peers selected to the request peer via the Peerlist,

wherein when the number of the candidate peers is larger than a maximum value, the tracker is further configured to reselect the candidate peers, the number of candidate peers reselected is no larger than the maximum value; or

when the number of the candidate peers is larger than the maximum value, the tracker is further configured to order the candidate peers from large to small according to the number of continuous subblocks buffered, and reselect the first N candidate peers, wherein N is a positive integer and is no larger than the maximum value; or

when the number of the candidate peers is larger than the maximum value, the tracker is further configured to order the candidate peers from large to small according to the total number of subblocks of the data to be downloaded, and reselect the first M candidate peers, wherein M is a positive integer and is no larger than the maximum value;

and wherein the tracker is further configured to return peer information of the candidate peers reselected to the request peer via a Peerlist.

4. The system according to claim 3 , wherein:

the selectable peer is further configured to report one or a combination of the following information to the tracker:

whether the number of connection peers of the selectable peer is saturated;

the total number of subblocks buffered by the selectable peer;

information of a network in which the selectable peer lies;

if the selectable peer lies in a wireless network, the selectable peer reports battery continuation time;

a data processing speed of the selectable peer;

a storage space size and a memory size of the selectable peer;

a time length from a moment the selectable peer lately logs on the tracker to a current moment;

data upload efficiency of the selectable peer;

a network bandwidth of the network in which the selectable peer lies;

the tracker is further configured to select the candidate peers according to one or more of the following conditions:

the number of connection peers of the candidate peer is unsaturated, wherein the number of connection peers is the number of other peers that obtain data from the candidate peer;

the number of continuous subblocks buffered in the candidate peer is larger than a first threshold;

the total number of subblocks buffered in the candidate peer is larger than a second threshold;

if the number of candidate peers that lie in wired networks is no less than the number of candidate peers required, the tracker selects candidate peers from the candidate peers that lie in wired networks; and, if the number of candidate peers that lie in wired networks is less than the number of candidate peers required, the tracker takes all the candidate peers that lie in wired networks and at least one candidate peer that lies in a wireless network as the candidate peers;

if the candidate peer lies in a wireless network, the battery continuation time of the candidate peer is larger than a first time length;

the data processing speed of the candidate peer is larger than a given speed;

the storage space size of the candidate peer is larger than a first numerical value, and the memory size of the candidate peer is larger than a second numerical value;

the time length from the moment the candidate peer lately logs on the tracker to the current moment is larger than a second time length;

the data upload efficiency of the candidate peer is larger than a given efficiency value; and

the network bandwidth of the network in which the candidate peer lies is larger than a given bandwidth value.

Assignments (2)
ASSIGNEE CHANGE OF ADDRESS Recorded May 8, 2014
From: ZHANG, YUNFEI; PENG, JIN; DUAN, XIAODONG; DENG, GUANGQING; HAO, JIADONG; WEI, BING
To: CHINA MOBILE COMMUNICATIONS CORPORATION
Reel/Frame 032851/0612 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2012
From: ZHANG, YUNFEI; PENG, JIN; DUAN, XIAODONG; DENG, GUANGQING; HAO, JIADONG; WEI, BING
To: CHINA MOBILE COMMUNICATIONS CORPORATION
Reel/Frame 027752/0492 →
Priority Claims (2)
CN 2009 1 0086675 · Jun 17, 2009 · national
CN 2009 1 0086676 · Jun 17, 2009 · national
Continuity (1)
Related Publication 20120151051A1 · Jun 14, 2012