CN101714987B - P2P playing method and system - Google Patents
P2P playing method and system Download PDFInfo
- Publication number
- CN101714987B CN101714987B CN2009102217360A CN200910221736A CN101714987B CN 101714987 B CN101714987 B CN 101714987B CN 2009102217360 A CN2009102217360 A CN 2009102217360A CN 200910221736 A CN200910221736 A CN 200910221736A CN 101714987 B CN101714987 B CN 101714987B
- Authority
- CN
- China
- Prior art keywords
- server
- tracker
- client
- distribution
- channel information
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention discloses P2P playing method and system. A control center server receives channel information input by a client terminal and allots Tracker servers for the client terminal in a plurality of Tracker servers according to a stored TS link list and the received channel information; the allotted Tracker servers obtain the channel information from the client terminal, allot super servers for the client terminal in a plurality of super servers according to a stored SP link list and the channel information, and return addresses of the allotted super servers to the client terminal; and the allotted super servers establish connection with the client terminal and transmit picture sources to the client terminal for playing. The invention manages the access of users by the control center server, the relatively vacant Tracker servers and the relatively vacant super servers, and solves the problem of bottleneck of the Tracker servers.
Description
Technical field
The present invention relates to the P2P network field, more specifically, relate to a kind of P2P player method and system.
Background technology
Traditional video-on-demand service is based on the Client/Server pattern; Because the video data volume is big, require height for server bandwidth, therefore increasing along with client's quantity; The server bandwidth resource is exhausted very soon, causes the autgmentability of system to receive great restriction.For this reason; IP multicasting technology and content distributing network (CDN) have occurred, but still there is following defective in the two: along with user's increase, the input of CDN constantly enlarges; Server zone also constantly increases, and not only makes fund input strengthen but also the maintenance of equipment has also been enlarged markedly.Subsequently, because the investment of operator to backbone network saved in the use of P2P technology greatly, the investment of also having saved video display platform construction convection media server greatly simultaneously, and the smooth degree of user's program request has also obtained better guarantees.
It is many that P2P in the market shares software, and general P2P shares software and mainly contains BitTorrent (the abnormal download) and branch, eMule (electric donkey) and branch thereof.
As shown in Figure 1, be the structural representation of P2P Play System in the prior art.This P2P Play System comprise a Tracker server (Tracker Server, TS) 11, a plurality of superserver (Super Peer, SP) 12, a plurality of caching server (Cache Peer, CP) 13 and a plurality of NP (Normal Peer) client 14.
Tracker server 11 is maincenters of P2P Play System, links to each other with one or more superservers 12, on it, presses the link information that channel information is sorted out in store all superservers 12, caching server 13 and NP client 14.
Superserver 12 links to each other with one or more caching servers 13 that comprise the channel information of being asked, and is used to deposit video source, plays the video distribution server.
To those skilled in the art, this local video server can be to comprise independently parts of two of superserver and caching servers, also can superserver and caching server be integrated into independently parts.
The job step of this P2P Play System is specific as follows: NP client obtains channel url and also resolves, and registers and obtains to have the address of the address of the superserver of this channel information, the caching server adjacent with this NP client and playing other caching servers of this channel information and the address of NP client to the Tracker server; This NP client is selected other NP clients of some high-qualitys, and other caching servers of with other NP clients of selected some high-qualitys, adjacent caching server, playing this channel information link to each other; This NP client is to adjacent caching server request media data; Said superserver and other caching servers send media data to this adjacent caching server; Adjacent caching server sends media data to this NP client, and this NP client has just incorporated this P2P Play System fully like this.
But, in above-mentioned P2P Play System, become the bottleneck of system usually owing to the restriction of Tracker server handling ability, be not easy to a large amount of access users are managed.
Summary of the invention
The technical problem that the present invention will solve provides a kind of P2P player method, can manage a large amount of access users easily.
The invention provides a kind of P2P player method, comprising: control centre's server receives the channel information of client input; Control centre's server is client distribution T racker server according to the TS chained list of storage with the channel information that receives in a plurality of Tracker servers; The Tracker server that distributes obtains channel information from client; The Tracker server that distributes distributes superserver for client according to the SP chained list and the channel information of storage in a plurality of superservers, and the address of the superserver that distributes is returned to client; The superserver and the client of distributing connect, and send film source to play to client.
An embodiment according to the inventive method; This method also comprises: set up or break off when being connected when the Tracker server of client and distribution, client is sent to the TS information of the Tracker server of distribution with more newly assigned Tracker server with the network condition of channel information and client; The TS information of the Tracker server of the distribution of Tracker server after control centre's server reports renewal that distributes is to upgrade the TS chained list; The Tracker server that distributes is according to establishment of connection between the Tracker server of client and distribution or break off the channel concordance list of updated stored.
Another embodiment according to the inventive method; The TS chained list comprises the IP address of the cryptographic hash of channel information, a plurality of Tracker servers and the TS information of a plurality of Tracker servers, and control centre's server comprises for the step of client distribution T racker server in a plurality of Tracker servers with the channel information that receives according to the TS chained list of storage: control centre's server is searched the Tracker server that has channel information according to TS chained list and the channel information that receives in a plurality of Tracker servers; In having the Tracker server of channel information, relatively have the load of the Tracker server of channel information according to the TS information of a plurality of Tracker servers in the TS chained list, select the little Tracker server of load as the Tracker server that distributes.
Another embodiment according to the inventive method; The SP chained list comprises the IP address of the cryptographic hash of channel information, a plurality of superservers and the SP information of a plurality of superservers, and the Tracker server of distribution comprises for the step of client distribution superserver in a plurality of superservers according to the SP chained list and the channel information of storage: the Tracker server of distribution is searched the superserver that has channel information according to SP chained list and channel information in a plurality of superservers; In having the superserver of channel information, relatively have the load of the superserver of channel information according to the SP information of a plurality of superservers in the SP chained list, select the little superserver of load as the superserver that distributes.
According to an embodiment again of the inventive method, this method also comprises: a plurality of superservers report SP information to coupled Tracker server respectively termly.
According to an embodiment again of the inventive method, this method also comprises: the Tracker server of distribution receives the Resources list from client; The Tracker server that distributes issues the Resources list of other clients to client.
P2P player method provided by the invention; Control centre's server and a plurality of Tracker server have been introduced; By control centre's server is to insert the user to select idle relatively Tracker server; Select idle relatively superserver by idle relatively Tracker server again; Through control centre's server, the idle relatively Tracker server that is distributed and idle relatively superserver user's access is managed, solved the Tracker server bottleneck problem that causes by user's expansion.
Another technical problem that the present invention will solve provides a kind of P2P Play System, can manage a large amount of access users easily.
The present invention also provides a kind of P2P Play System; This system comprises control centre's server, a plurality of Tracker server and a plurality of superserver; Wherein, Control centre's server comprises that TS selects module, and the channel information that is used for sending according to the TS chained list and the client of storage is a client distribution T racker server at a plurality of Tracker servers; The Tracker server that distributes comprises that SP selects module, is used for distributing superserver at a plurality of superservers for client according to the channel information that the SP chained list and the client of storage are sent, and the address of the superserver that distributes is returned to client; The superserver that distributes comprises the film source memory module, and being used for provides film source to play to client after the superserver of client and distribution connects.
An embodiment of system according to the invention; The Tracker server that distributes also comprises the TS information updating module; Be used for setting up or breaking off when being connected, according to the TS information that receives from the channel information and the more newly assigned Tracker server of network condition of client at the Tracker server of client and distribution; Control centre's server also comprises TS chained list update module, the TS information updating TS chained list of the Tracker server of the distribution that is used for reporting according to the TS information updating module; The Tracker server that distributes also comprises the concordance list update module, is used for the channel concordance list according to establishment of connection between the Tracker server of client and distribution or disconnection updated stored.
Another embodiment of system according to the invention; The TS chained list comprises the IP address of the cryptographic hash of channel information, a plurality of Tracker servers and the TS information of a plurality of Tracker servers; TS selects module to comprise: TS searches the unit, is used for searching the Tracker server that has channel information at a plurality of Tracker servers according to TS chained list and the channel information that receives; TS confirms the unit; Be used for searching the Tracker server that has channel information that the unit finds at TS; Relatively have the load of the Tracker server of channel information according to the TS information of a plurality of Tracker servers in the TS chained list, select the little Tracker server of load as the Tracker server that distributes.
The another embodiment of system according to the invention; The SP chained list comprises the IP address of the cryptographic hash of channel information, a plurality of superservers and the SP information of a plurality of superservers; SP selects module to comprise: SP searches the unit, is used for searching the superserver that has channel information at a plurality of superservers according to SP chained list and the channel information that receives; SP confirms the unit; Be used for searching the superserver that has channel information that the unit finds at SP; Relatively have the load of the superserver of channel information according to the SP information of a plurality of superservers in the SP chained list, select the little superserver of load as the superserver that distributes.
An embodiment again of system according to the invention, a plurality of superservers are used for reporting SP information termly to coupled Tracker server; The Tracker server that distributes comprises that also the Resources list issues module and the Resources list receiver module, and the Resources list receiver module is used to receive the Resources list that client reports, and the Resources list issues the Resources list that module is used for issuing to client other clients.
P2P Play System provided by the invention; Control centre's server and a plurality of Tracker server have been introduced; By control centre's server is to insert the user to select idle relatively Tracker server; Select idle relatively superserver by idle relatively Tracker server again; Through control centre's server, the idle relatively Tracker server that is distributed and idle relatively superserver user's access is managed, solved the Tracker server bottleneck problem that causes by user's expansion.
Description of drawings
Accompanying drawing described herein is used to provide further understanding of the present invention, constitutes the application's a part.In the accompanying drawings:
Fig. 1 is the structural representation of P2P Play System in the prior art.
Fig. 2 is the structural representation of an embodiment of system of the present invention.
Fig. 3 is the structural representation of another embodiment of system of the present invention.
Fig. 4 is the structural representation of the another embodiment of system of the present invention.
Fig. 5 is the structural representation of an embodiment again of system of the present invention.
Fig. 6 is the schematic flow sheet of an embodiment of the inventive method.
Fig. 7 is the sketch map of the TS chained list of Hash tree form of the present invention.
Fig. 8 is the sketch map of the SP chained list of Hash tree form of the present invention.
Fig. 9 is the schematic flow sheet of another embodiment of the inventive method.
Embodiment
With reference to the accompanying drawings the present invention is more comprehensively described, exemplary embodiment of the present invention wherein is described.Exemplary embodiment of the present invention and explanation thereof are used to explain the present invention, but do not constitute improper qualification of the present invention.
It is pointed out that client, Tracker server and the superserver that the present invention relates to not only have the corresponding function among Fig. 1, can also realize following function of the present invention.Therefore, become hard to understand, below only the difference with prior art is described in order not make the present invention.
As shown in Figure 2, be the structural representation of an embodiment of system of the present invention.This embodiment comprises: control centre's server 21, a plurality of Tracker server 22 and a plurality of superserver 23; Wherein, Control centre's server 21 comprises that TS selects module 211, is used for being client distribution T racker server 22 according to the channel information that the TS chained list and the client of storage are sent at a plurality of Tracker servers 22; The Tracker server 22 that distributes comprises that SP selects module 221; Be used for distributing superserver 23 at a plurality of superservers 23 for client, and the address of the superserver 23 that distributes is returned to client according to the channel information that the SP chained list and the client of storage are sent; The superserver 23 that distributes comprises film source memory module 231, and being used for provides film source to play to client after the superserver 23 of client and distribution connects.
For example; Channel information can comprise the address of unit data block size (BlockSize), channel bit rate (BitRate), channel designation (ChannelName), 32 resource numbers (ResourceHash), acquiescence Tracker server, address, data packet length (DataLength) and the data (Data) etc. of acquiescence superserver; Wherein, 32 resource numbers produce according to channel designation and filename; Data are the positions through the key frame of encrypting, and the client that each new connection is come in all can begin from the immediate key frame position of present broadcast to play.
This embodiment is a client distribution T racker server through control centre's server; By the Tracker server that distributes is that client is distributed superserver; Be that client provides film source by the superserver that is distributed again, made things convenient for the management of system a large amount of access users.
As shown in Figure 3, be the structural representation of another embodiment of system of the present invention.Compare with the embodiment among Fig. 2; The Tracker server 31 of the distribution among this embodiment also comprises TS information updating module 311; Be used for setting up or breaking off when being connected, according to the TS information that receives from the channel information and the more newly assigned Tracker server of network condition of client at the Tracker server 31 of client and distribution; Control centre's server 32 also comprises TS chained list update module 321, the TS information updating TS chained list of the Tracker server of the distribution that is used for reporting according to TS information updating module 311; The Tracker server 31 that distributes also comprises concordance list update module 312, is used for the channel concordance list according to establishment of connection between the Tracker server of client and distribution or disconnection updated stored.
This embodiment sets up or breaks off when being connected at the Tracker server of client and distribution, can upgrade the TS chained list in control centre's server in time, thereby make control centre's server can find the Tracker server of free time relatively in real time.
As shown in Figure 4, be the structural representation of the another embodiment of system of the present invention.Compare with the embodiment among Fig. 2; TS chained list among this embodiment comprises the IP address of the cryptographic hash (this cryptographic hash identifies channel information uniquely) of channel information, a plurality of Tracker servers and the TS information of a plurality of Tracker servers; TS selects module 41 to comprise: TS searches unit 411, is used for searching the Tracker server that has channel information at a plurality of Tracker servers according to TS chained list and the channel information that receives; TS confirms unit 412; Be used for searching the Tracker server that has channel information that unit 411 finds at TS; Relatively have the load of the Tracker server of channel information according to the TS information of a plurality of Tracker servers in the TS chained list, select the little Tracker server of load as the Tracker server that distributes.
For example, TS information can be the running status and the link information of corresponding Tracker server.Each Tracker server all can real time record self in running running status and link information, and when the load of Tracker server changes to control centre's its TS information of server report.This TS information can comprise following field: running time (ElapsedTime), current login number (TotalLogin), message count (TotalMsg), active channel (ActiveChannel) number and online user (OnlineUser) number.It is pointed out that TS information is not limited thereto, this information can also comprise other fields as required.
Again for example; TS selects module 41 to confirm idle relatively Tracker server through the OnlineUser value that compares each Tracker server, gives client such as confirming to have the Tracker server that hangs down the OnlineUser value as idle relatively Tracker server-assignment.Alternatively; If the OnlineUser value is identical; Can also further compare the ActiveChannel value,, can further compare the TotalMsg value again if the ActiveChannel value is also identical; By that analogy, thus can in a plurality of Tracker servers, confirm relatively idle Tracker server.
This embodiment selects relatively idle Tracker server through the load of more a plurality of Tracker servers, is not easy to problem that a large number of users is managed thereby can solve single Tracker server effectively.
As shown in Figure 5, be the structural representation of an embodiment again of system of the present invention.Compare with the embodiment among Fig. 2; SP chained list among this embodiment comprises the IP address of the cryptographic hash of channel information, a plurality of superservers and the SP information of a plurality of superservers; SP selects module 51 to comprise: SP searches unit 511, is used for searching the superserver that has channel information at a plurality of superservers according to SP chained list and the channel information that receives; SP confirms unit 512; Be used for searching the superserver that has channel information that unit 511 finds at SP; Relatively have the load of the superserver of channel information according to the SP information of a plurality of superservers in the SP chained list, select the little superserver of load as the superserver that distributes.
For example, SP information can comprise altogether input (TotalIncoming), output (TotalOutgoing) altogether, average input (AverageIncoming), average output (AverageOutgoing), running time (ElapsedTime), present input data (CurrentIncomin), current dateout (CurrentOutgoing), active channel (ActiveChannel) number and online user (OnlineUser) number.It is pointed out that SP information is not limited thereto, this information can also comprise other fields as required.
Again for example; SP selects module 51 at first to search the superserver that has this channel information according to the channel information that will visit; Confirm idle relatively superserver through the OnlineUser value that compares these superservers then, distribute to client as idle relatively superserver such as confirming to have the superserver that hangs down the OnlineUser value.Alternatively; If the OnlineUser value is identical; Can also further compare the ActiveChannel value,, can further compare the CurrentOutgoing value again if the ActiveChannel value is also identical; By that analogy, thus can in a plurality of superservers, confirm relatively idle superserver.
In this embodiment; Select idle relatively superserver by the Tracker server that is distributed according to the load size of superserver; Make client to obtain film source, thereby further guaranteed the program request fluency of client from idle relatively superserver.
In an embodiment again of system of the present invention, to compare with embodiment among Fig. 2, a plurality of superservers among this embodiment are used for reporting SP information termly to coupled Tracker server; The Tracker server that distributes comprises that also the Resources list issues module and the Resources list receiver module, and the Resources list receiver module is used to receive the Resources list that client reports, and the Resources list issues the Resources list that module is used for issuing to client other clients.
In this embodiment; Because client reports the Resources list to the Tracker server that distributes; Make the Tracker server can in time obtain the network condition of each client; And because the Tracker server also issues the Resources list of other clients to client, make this client can obtain more other clients of high-quality, thereby can connect to obtain more smooth IP Information On Demand with other clients again.
As shown in Figure 6, be the schematic flow sheet of an embodiment of the inventive method.This embodiment may further comprise the steps:
S602; Control centre's server receives the channel information of client input; For example; Channel information can comprise the address of unit data block size (BlockSize), channel bit rate (BitRate), channel designation (ChannelName), 32 resource numbers (ResourceHash), acquiescence Tracker server, address, data packet length (DataLength) and the data (Data) etc. of acquiescence superserver, and wherein, 32 resource numbers produce according to channel designation and filename; Data (Data) are the positions through the key frame of encrypting, and the client that each new connection is come in all can begin from the immediate key frame position of present broadcast to play.For example, channel information can be:
BlockSize=16384
BitRate=40.000000
ChannelName=szf39
ResourceHash=fb7149b5118986a0f8b4b160f?ede452e32
TrackServer=122.224.203.47:90
SuperPeer=122.224.203.48:50001、
The DataLength=232 data packet length
Data=vids^^^P^<80>^^a^8<9b>qWMV3^^^P^<80>^^a^8<9b>q<80><9f>X^EV^Q[11;1H^A^a^UYZ^^
Alternatively, client can also be imported user profile, and this user profile can comprise user name (UserName), password (Passwd), client ip address and channel name (Channel) etc.For example, user profile can be:
UserName=sir
Passwd=123456
IP=218.75.79.92
Channel=szf39
It is pointed out that user profile and channel information are not limited thereto, can also comprise other fields, for example, channel information can also comprise CSUserID, when this value is 0, representes it is that wheel is broadcast channel, when this value is 1, representes it is direct broadcast band.
S604, control centre's server is client distribution T racker server according to the TS chained list of storage with the channel information that receives in a plurality of Tracker servers;
Wherein, Safeguarding that in control centre data in server storehouse one is the TS chained list of the Hash tree form of index with the channel information, this TS chained list comprises the IP address of the cryptographic hash (this cryptographic hash identifies channel information uniquely) of channel information, a plurality of Tracker servers and the TS information of a plurality of Tracker servers.
As shown in Figure 7, be the sketch map of the TS chained list of Hash tree form of the present invention, in this Hash tree; Channel information is a root node; The Tracker server that has this channel information is a child node, and for example, channel information P1 and channel information P2 are root node; The Tracker server 1 that has channel information P1 be the child node of root node P1 with Tracker server 2, and the Tracker server 3 and the Tracker server 2 that have a channel information P2 are the child node of root node P2.Shown in below table 1, in control centre data in server storehouse, this TS chained list can be stored following information:
Table 1
In this TS chained list, Channelhash representes the channel cryptographic hash of corresponding channel information.For example, the channel cryptographic hash of channel information P1 is 7c907938ea8a470b20e97a2c465c05da, and the channel cryptographic hash of channel information P2 is fffb75416dd299c5af6fc6aa9aa38e66.Key then representes the IP address of corresponding Tracker server; For example; The IP address of Tracker server 1 is 202.191.115.35, and the IP address of Tracker server 2 is 202.101.118.110, and the IP address of Tracker server 3 is 202.101.172.49.TS information can be the running status and the link information of corresponding Tracker server.Each Tracker server all can real time record self in running running status and link information, and when the load of Tracker server changes to control centre's its TS information of server report.For example, this TS information can comprise following field: running time (ElapsedTime), current login number (TotalLogin), message count (TotalMsg), active channel (ActiveChannel) number and online user (OnlineUser) number.It is pointed out that TS information is not limited thereto, this information can also comprise other fields as required.
Particularly, control centre's server can comprise for the step of client distribution T racker server in a plurality of Tracker servers with the channel information that receives according to the TS chained list of storage: control centre's server is searched the Tracker server that has channel information according to TS chained list and the channel information that receives in a plurality of Tracker servers; In having the Tracker server of channel information; Relatively have the load of the Tracker server of channel information according to the TS information of a plurality of Tracker servers in the TS chained list; Select the little Tracker server of load as the Tracker server that distributes; Wherein, the load of Tracker server is meant the number clients that links to each other with this Tracker server.
For example; Control centre's server can be confirmed idle relatively Tracker server through the OnlineUser value that compares each Tracker server, gives client such as confirming to have the Tracker server that hangs down the OnlineUser value as idle relatively Tracker server-assignment.Alternatively; If the OnlineUser value is identical, the ActiveChannel value can also further be compared, if the ActiveChannel value is also identical; Can further compare the TotalMsg value again, in a plurality of Tracker servers, confirm idle relatively Tracker server by that analogy.
S606, the Tracker server of distribution obtains channel information from client.
S608, the Tracker server of distribution distributes superserver for client according to the SP chained list and the channel information of storage in a plurality of superservers, and the address of the superserver that distributes is returned to client;
Similar with the TS chained list in the control centre data in server storehouse; Safeguarding also that in Tracker data in server storehouse one is the SP chained list of the Hash tree form of index with the channel information, this SP chained list comprises the IP address of the cryptographic hash of channel information, a plurality of superservers and the SP information of a plurality of superservers.
As shown in Figure 8, be the sketch map of the SP chained list of Hash tree form of the present invention.In this Hash tree; Channel information P1 and channel information P2 are root node; The superserver 1 that has channel information P1 is the child node of root node P1 with superserver 2, and the superserver 3 that has channel information P2 is the child node of root node P2 with superserver 4.Shown in below table 2, in Tracker data in server storehouse, this SP chained list can be stored following information:
Table 2
In this SP chained list, Channelhash representes the channel cryptographic hash of corresponding channel information.For example, the channel cryptographic hash of channel information P1 is 7c907938ea8a470b20e97a2c465c05da, and the channel cryptographic hash of channel information P2 is fffb75416dd299c5af6fc6aa9aa38e66.Key then representes the IP address of corresponding superserver; For example; The IP address of superserver 1 is 60.191.115.30; The IP address of superserver 2 is 60.191.115.43, and the IP address of superserver 3 is 60.191.115.34, and the IP address of superserver 4 is 60.191.115.40.SP information is the running status of corresponding superserver, and superserver is regularly reported the running status of oneself to the Tracker server.For example, this SP information can comprise altogether input (TotalIncoming), output (TotalOutgoing) altogether, average input (AverageIncoming), average output (AverageOutgoing), running time (ElapsedTime), present input data (CurrentIncomin), current dateout (CurrentOutgoing), active channel (ActiveChannel) number and online user (OnlineUser) number.It is pointed out that SP information is not limited thereto, this information can also comprise other fields as required.
Particularly, the Tracker server of distribution can comprise for the step of client distribution superserver in a plurality of superservers according to the SP chained list and the channel information of storage: the Tracker server of distribution is searched the superserver that has channel information according to SP chained list and channel information in a plurality of superservers; In having the superserver of channel information, relatively have the load of the superserver of channel information according to the SP information of a plurality of superservers in the SP chained list, select the little superserver of load as the superserver that distributes.
For example; The Tracker server is at first searched the superserver that has this channel information according to the channel information that will visit; Confirm idle relatively superserver through the OnlineUser value that compares these superservers then, distribute to client as idle relatively superserver such as confirming to have the superserver that hangs down the OnlineUser value.Alternatively; If the OnlineUser value is identical, the ActiveChannel value can also further be compared, if the ActiveChannel value is also identical; Can further compare the CurrentOutgoing value again, in a plurality of superservers, confirm idle relatively superserver by that analogy.
S610, the superserver and the client of distribution connect, and send film source to play to client.
Flow process is basic identical among follow-up workflow and Fig. 1, and client is also obtained the address of the caching server adjacent with this client (" adjacent " is meant the adjacent to avoid across a network to fetch data of data chainning network), play other caching servers of this channel information and the address of client; This client is selected the client of some high-qualitys (" high-quality " be meant frequently do not add and that withdraw from, that the networking environment is excellent or channel data is sufficient) in playing other clients of this channel information, and links to each other with other caching servers of playing this channel information with selected client, adjacent caching server; This client is to adjacent caching server request media data; The superserver that distributes and other caching servers send media data to this adjacent caching server; Adjacent caching server sends media data to this client, and this client has just incorporated the P2P Play System fully like this.It is pointed out that the caching server shown in above-mentioned caching server and Fig. 1 has identical functions, just no longer be repeated in this description at this.
This embodiment is a client distribution T racker server through control centre's server; By the Tracker server that distributes is that client is distributed superserver; Be that client provides film source by the superserver that is distributed again, made things convenient for the management of system a large amount of access users.
As shown in Figure 9, be the schematic flow sheet of another embodiment of the inventive method.This embodiment may further comprise the steps:
S902, control centre's server receives the channel information of client input;
S904, control centre's server is client distribution T racker server according to the TS chained list of storage with the channel information that receives in a plurality of Tracker servers;
S906, the Tracker server of distribution obtains channel information from client, and show that variation has taken place in the load of the Tracker server of this distribution this moment;
S908; This moment, the Tracker server of client and distribution connected; Client is sent to the TS information of the Tracker server of distribution with more newly assigned Tracker server with the network condition of channel information and client; Wherein, network condition comprises operator, intranet and extranet, bandwidth, IP and packet loss etc.;
S910, the TS information of the Tracker server of the distribution of Tracker server after control centre's server reports renewal of distribution is to upgrade the TS chained list, and control centre's server can come distribution T racker server according to up-to-date TS chained list like this;
S912; The Tracker server that distributes is according to the channel concordance list of establishment of connection updated stored between the Tracker server of client and distribution; That is, the information of this client is joined in the channel concordance list, can up-to-date renewal be provided for client like this; Can be when client, superserver and caching server need at any time to Tracker server requests channel concordance list, this channel concordance list is shown in below table 3:
Table 3
Similar with the parameter in above-mentioned table 1 and the table 2, in this channel concordance list, Channelhash representes the channel cryptographic hash of corresponding channel information, and Key then identifies the IP address of relative client;
S914, the Tracker server of distribution distributes superserver for client according to the SP chained list and the channel information of storage in a plurality of superservers, and the address of the superserver that distributes is returned to client;
S916, the superserver and the client of distribution connect, and send film source to play to client.
In addition, when the Tracker server disconnection of client and distribution was connected, client also was sent to the TS information of the Tracker server of distribution with more newly assigned Tracker server with the network condition of channel information and client; The TS information of the Tracker server of the distribution of Tracker server after control centre's server reports renewal that distributes is to upgrade the TS chained list; The channel concordance list of the disconnection updated stored that is connected between the Tracker server of the Tracker server that distributes according to client and distribution.
This embodiment sets up or breaks off when being connected at the Tracker server of client and distribution, can upgrade the TS chained list in control centre's server in time, thereby make control centre's server can find the Tracker server of free time relatively in real time.
In the another embodiment of the inventive method, a plurality of superservers report SP information to coupled Tracker server respectively termly.
Since the frequent adding of the unsteadiness of network and other clients with withdraw from, so alternatively, the Tracker server of distribution receives the Resources list from client, this Resources list can comprise film source, progress and time etc.; Meanwhile, the Tracker server of distribution also issue the Resources list from other clients to this client to connect again.
Alternatively; Client of the present invention can also be based on the BitTorrent agreement; Such benefit is: can utilize the ripe network system of BitTorrent and download balancing; Make stability, applicability and the network utilization of system that relatively more outstanding performance all can be arranged, for client provides better service and guarantee.
Description of the invention provides for example with for the purpose of describing, and is not the disclosed form that exhaustively perhaps limit the invention to.A lot of modifications and variation are conspicuous for those of ordinary skill in the art.Selecting and describing embodiment is for better explanation principle of the present invention and practical application, thereby and makes those of ordinary skill in the art can understand the various embodiment that have various modifications that the present invention's design is suitable for special-purpose.
Claims (11)
1. a P2P player method is characterized in that, said method comprises:
Control centre's server receives the channel information of client input;
Said control centre server is said client distribution T racker server according to the TS chained list of storage with the said channel information that receives in a plurality of Tracker servers;
The Tracker server of said distribution obtains said channel information from said client;
The Tracker server of said distribution be said client distribution superserver in a plurality of superservers according to SP chained list and the said channel information of storage, and the address of the superserver of said distribution is returned to said client;
The superserver of said distribution and said client connect, and send film source to play to said client;
Wherein, Said TS chained list comprises the IP address of the cryptographic hash of channel information, said a plurality of Tracker servers and the TS information of said a plurality of Tracker servers; Said SP chained list comprises the IP address of the cryptographic hash of channel information, said a plurality of superservers and the SP information of said a plurality of superservers; Said TS information comprises the running status and the link information of Tracker server, and said SP information comprises the running status of superserver.
2. method according to claim 1 is characterized in that, said method also comprises:
When the Tracker server of said client and said distribution is set up or broken off when being connected, the Tracker server that said client is sent to the network condition of said channel information and said client said distribution is with the TS information of the Tracker server that upgrades said distribution;
The TS information of the Tracker server of the said distribution of the Tracker server of said distribution after said control centre server reports renewal is to upgrade said TS chained list;
The Tracker server of said distribution is according to establishment of connection between the Tracker server of said client and said distribution or break off the channel concordance list of updated stored.
3. method according to claim 1 is characterized in that, said control centre server comprises for the step of said client distribution T racker server in a plurality of Tracker servers with the said channel information that receives according to the TS chained list of storage:
Said control centre server is searched the Tracker server that has said channel information according to said TS chained list and the said channel information that receives in said a plurality of Tracker servers;
In having the Tracker server of said channel information; Relatively have the load of the Tracker server of said channel information according to the TS information of a plurality of Tracker servers in the said TS chained list, select the Tracker server of the little Tracker server of load as said distribution.
4. method according to claim 1 is characterized in that, the Tracker server of said distribution comprises for the step of said client distribution superserver in a plurality of superservers according to the SP chained list and the said channel information of storage:
The Tracker server of said distribution is searched the superserver that has said channel information according to said SP chained list and said channel information in said a plurality of superservers;
In having the superserver of said channel information, relatively have the load of the superserver of said channel information according to the SP information of a plurality of superservers in the said SP chained list, select the superserver of the little superserver of load as said distribution.
5. method according to claim 1 is characterized in that, said method also comprises:
Said a plurality of superserver reports SP information to coupled Tracker server respectively termly.
6. method according to claim 1 is characterized in that, said method also comprises:
The Tracker server of said distribution receives the Resources list from said client;
The Tracker server of said distribution issues the Resources list of other clients to said client.
7. a P2P Play System is characterized in that, said system comprises control centre's server, a plurality of Tracker server and a plurality of superserver, wherein,
Said control centre server comprises that TS selects module, and the channel information that is used for sending according to the TS chained list and the client of storage is said client distribution T racker server at said a plurality of Tracker servers;
The Tracker server of said distribution comprises that SP selects module; The channel information that is used for sending according to SP chained list and the said client of storage distributes superserver at said a plurality of superservers for said client, and the address of the superserver of said distribution is returned to said client;
The superserver of said distribution comprises the film source memory module, and being used for provides film source to play to said client after the superserver of said client and said distribution connects;
Wherein, Said TS chained list comprises the IP address of the cryptographic hash of channel information, said a plurality of Tracker servers and the TS information of said a plurality of Tracker servers; Said SP chained list comprises the IP address of the cryptographic hash of channel information, said a plurality of superservers and the SP information of said a plurality of superservers; Said TS information comprises the running status and the link information of Tracker server, and said SP information comprises the running status of superserver.
8. system according to claim 7 is characterized in that,
The Tracker server of said distribution also comprises the TS information updating module; Be used for setting up or breaking off when being connected the TS information of the Tracker server that upgrades said distribution according to channel information and the network condition that receive from said client at the Tracker server of said client and said distribution;
Said control centre server also comprises TS chained list update module, the said TS chained list of TS information updating of the Tracker server of the said distribution that is used for reporting according to said TS information updating module;
The Tracker server of said distribution also comprises the concordance list update module, is used for the channel concordance list according to establishment of connection between the Tracker server of said client and said distribution or disconnection updated stored.
9. system according to claim 7 is characterized in that, said TS selects module to comprise:
TS searches the unit, is used for searching the Tracker server that has said channel information according to said TS chained list and the said channel information that receives at said a plurality of Tracker servers;
TS confirms the unit; Be used for searching the Tracker server that has said channel information that the unit finds at said TS; Relatively have the load of the Tracker server of said channel information according to the TS information of a plurality of Tracker servers described in the said TS chained list, select the Tracker server of the little Tracker server of load as said distribution.
10. system according to claim 7 is characterized in that, said SP selects module to comprise:
SP searches the unit, is used for searching the superserver that has said channel information according to said SP chained list and the said channel information that receives at said a plurality of superservers;
SP confirms the unit; Be used for searching the superserver that has said channel information that the unit finds at said SP; Relatively have the load of the superserver of said channel information according to the SP information of a plurality of superservers described in the said SP chained list, select the superserver of the little superserver of load as said distribution.
11. system according to claim 7 is characterized in that,
Said a plurality of superserver is used for reporting SP information termly to coupled Tracker server;
The Tracker server of said distribution comprises that also the Resources list issues module and the Resources list receiver module; Said the Resources list receiver module is used to receive the Resources list that said client reports, and said the Resources list issues the Resources list that module is used for issuing to said client other clients.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102217360A CN101714987B (en) | 2009-11-16 | 2009-11-16 | P2P playing method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102217360A CN101714987B (en) | 2009-11-16 | 2009-11-16 | P2P playing method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101714987A CN101714987A (en) | 2010-05-26 |
CN101714987B true CN101714987B (en) | 2012-07-18 |
Family
ID=42418263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102217360A Active CN101714987B (en) | 2009-11-16 | 2009-11-16 | P2P playing method and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101714987B (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102299905A (en) * | 2010-06-23 | 2011-12-28 | 中国移动通信集团公司 | P2P streaming media resource adjusting method, apparatus thereof and system thereof |
CN102143207B (en) * | 2010-12-10 | 2013-10-09 | 华为技术有限公司 | Methods of obtaining content and redirection nodes |
CN102387129A (en) * | 2011-04-07 | 2012-03-21 | 传聚互动(北京)科技有限公司 | Streaming media on-demand system and method |
CN102231762B (en) * | 2011-08-12 | 2014-03-19 | 乐视网信息技术(北京)股份有限公司 | Peer-to-peer (p2p) server architecture capable of being unlimitedly and horizontally expanded |
CN102291458B (en) * | 2011-08-12 | 2014-06-18 | 乐视网信息技术(北京)股份有限公司 | Method for peer-to-peer (p2p) server framework |
CN102231761A (en) * | 2011-08-12 | 2011-11-02 | 乐视网信息技术(北京)股份有限公司 | Peer-to-Peer (P2P) data interaction method |
CN103581276B (en) * | 2012-08-09 | 2017-06-09 | 北京亿赞普网络技术有限公司 | Cluster management device, system, service customer end and correlation method |
CN103686208B (en) * | 2013-12-11 | 2017-04-12 | 南宁眸博科技有限公司 | Video cloud computing transmitting method |
WO2017035795A1 (en) * | 2015-09-01 | 2017-03-09 | 深圳好视网络科技有限公司 | Method and device for transmitting streaming media data |
CN110365771A (en) * | 2019-07-16 | 2019-10-22 | 深圳市网心科技有限公司 | A data acquisition method, device, system and computer-readable storage medium |
CN115022657B (en) * | 2022-05-30 | 2023-12-26 | 上海哔哩哔哩科技有限公司 | Scheduling method and device of live broadcast server |
-
2009
- 2009-11-16 CN CN2009102217360A patent/CN101714987B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN101714987A (en) | 2010-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101714987B (en) | P2P playing method and system | |
US11539768B2 (en) | System and method of minimizing network bandwidth retrieved from an external network | |
CN100571377C (en) | A system and method for realizing video on demand by using peer-to-peer network technology | |
CN100574248C (en) | Stream media service system and its implementation based on controllable P 2 P technology | |
CN102137163B (en) | A kind of method of multimedia file shared system and shared multimedia file thereof | |
US8059560B2 (en) | Tree-type network system, node device, broadcast system, broadcast method, and the like | |
CN101540775B (en) | Method and device for distributing contents and network system for distributing contents | |
EP3439239B1 (en) | Data transmission method and system based on peer-to-peer network | |
US20030204605A1 (en) | Centralized selection of peers as media data sources in a dispersed peer network | |
CN103581245A (en) | Content delivery method and system of content delivery network | |
WO2007039576A1 (en) | A content distribution system and a user request redirection method thereof | |
CN101626389B (en) | Network node management method | |
CN101141459A (en) | Method of implementing data transmission or stream media transmission using combination of HTTP and P2P | |
WO2010127618A1 (en) | System and method for implementing streaming media content service | |
CN101026631A (en) | CDN structure based IPTV system media payment system | |
CN101286927A (en) | Method for realizing P2P stream media system based on node interconnection optimization | |
CN101394423A (en) | Media positioning, searching method and system | |
US12250254B2 (en) | System and method of minimizing network bandwidth retrieved from an external network | |
CN102696234A (en) | Edge content delivery apparatus and content delivery network for the internet protocol television system | |
CN103037015A (en) | Active P2P data distribution method and node client-side | |
CN106209952A (en) | Service node distribution method, device, CDN management server and system | |
CN103179191B (en) | P2P network control device and P2P network managing and control system | |
JP4877107B2 (en) | Terminal device and information processing program in information distribution system, and information processing method of terminal device | |
CN100596191C (en) | Streaming media on-demand system and method using TV as server | |
CN103037017A (en) | Passive P2P data distribution method and node client-side |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |