CN102025645A - Method for scheduling data in peer-to-peer network - Google Patents
Method for scheduling data in peer-to-peer network Download PDFInfo
- Publication number
- CN102025645A CN102025645A CN2010106232555A CN201010623255A CN102025645A CN 102025645 A CN102025645 A CN 102025645A CN 2010106232555 A CN2010106232555 A CN 2010106232555A CN 201010623255 A CN201010623255 A CN 201010623255A CN 102025645 A CN102025645 A CN 102025645A
- Authority
- CN
- China
- Prior art keywords
- node
- service
- fragment
- service node
- data
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention provides a method for scheduling data in a peer-to-peer (P2P) network. The P2P network is used for exchanging stream media data. According to the method, all data section requests transmitted to each P2P node which serves a scheduling period in the scheduling period are pre-collected so as to concentratedly schedule all the P2P nodes to reduce control overhead in the data request process; furthermore, the method provided by the invention determines an emergency scheduling method or a balance scheduling method used in a corresponding data scheduling period on the basis of the data requirement emergency degree of the nodes. The P2P data scheduling method can make full use of the advantages of the emergency scheduling method and the balance scheduling method in the periodic data scheduling process; and the two methods are combined together to find out and maximize the performance of a P2P group, improve the data exchanging efficiency, reduce the data exchanging redundancy and relieve the network burden.
Description
Technical field
Relate generally to multimedia network communication technical field of the present invention relates more specifically to utilize the data dispatching method in the stream medium data exchange process of peer-to-peer network (P2P network).
Background technology
P2P (Peer-to-Peer) technology claims the peer-to-peer network technology again, and as a kind of network new technology, it is one of current research focus.This technology makes full use of computing capability and the bandwidth of participant in the network, rather than all accumulates on less several station servers relying on.The P2P network typically comes connected node by Ad Hoc mode.Compare with C/S (client/server) computation schema early, so reciprocity computation schema does not have the difference of tangible client and server, can think that its any end has the function of client and server simultaneously.By P2P, the user can be directly connected to other user's computer and carry out exchange files, rather than must be connected to server as before and go to browse and download this convenient explosive increase that will promote internet content.
Streaming Media is meant on data network in chronological sequence order transmission and continuant, the video data stream play.Streaming media data stream has 3 characteristics: continuity, real-time, sequential, promptly its data flow has strict front and back sequential relationship.Because these characteristics of Streaming Media, it has become the main mode of real-time Transmission sound, video on the internet.C/S model is mostly adopted in traditional streaming media service, and promptly the user clicks from streaming media server and watches program, and streaming media server is pushed to the user to Media Stream with mode of unicast then.After streaming media service develops into certain phase, total number of users increases considerably, this C/S model adds the defective that mode of unicast pushes Media Stream and just displays significantly, for example the streaming media server bandwidth occupancy is big, the streaming media server disposal ability requires high, bandwidth, server etc. usually become system bottleneck, the poor expandability of system.
In recent years, people are incorporated into the P2P technology and have formed the P2P stream media technology in the Streaming Media transmission.The exchange of the stream medium data of traditional relatively C/S model can adapt to more massive user's request based on the stream medium data exchanged form of P2P mode, can give full play to simultaneously and utilize limited Internet resources.Need realize the management of P2P network node, the data dispatch of P2P network node, the major functions such as communication protocol of P2P network node based on the stream medium data switching network of P2P mode, wherein the data dispatch problem is based on the important challenge that the stream medium data exchange of P2P mode need face, the good and bad directly influence of data dispatching method directly influences user's experience based on the performance and the efficient of the stream medium data exchange of P2P mode.
The data dispatching method that uses in most of at present stream medium data switching networks based on the P2P mode is paid attention to the request of individual data fragment or is paid attention to the window request of a dispatching cycle, the request of individual data fragment has brought a large amount of relatively control expenses, too rely on the window request of a dispatching cycle for counsel and ignored the combination of continuous dispatching between the cycle, cause waste of network resources easily, backbone network is formed impact especially easily.
Summary of the invention
The objective of the invention is in utilizing the Streaming Media transmission course of P2P network, to find and maximize P2P group's performance, improve the efficient of exchanges data, can reduce the redundant of exchanges data simultaneously and alleviate network burden.
For achieving the above object, the invention provides a kind of method that is used for carrying out data dispatch at the P2P network, described P2P network is used to the stream medium data exchange, described P2P network comprises the service node of local node and a plurality of equities, wherein said local node is from described a plurality of service node receiving stream media data slots, it is characterized in that, said method comprising the steps of: a. local node is assessed the service ability of described a plurality of service nodes; B. local node scans its fragment buffering area, determines the scheduling window for the treatment of in the current dispatching cycle; C. local node calculate local current broadcast fragment and described treat scheduling window interior from the fragment of this current broadcast nearest treat side-play amount between the schedule fragment; D. described side-play amount and urgent line threshold ratio and according to described comparative result are determined describedly to treat the order standard for the treatment of the schedule fragment set in the scheduling window and treat schedule fragment for each and choose the constraints that service node is gathered; E. local node is treated schedule fragment set according to described the treating of determined order standard descending in the scheduling window; F. treat schedule fragment according to determined constraints for each and choose the service node set; G. local node treats that with each the pairing service node of schedule fragment is merged into total service node set; H. local node forms with described treating at each service node in the described total service node set and treats schedule fragment set corresponding download request set in the scheduling window; I. local node sends described download request set to corresponding service node; J. local node receives from the fragment data of described service node and upgrades described fragment buffering area.
Preferably, in steps d, if described comparative result be described side-play amount less than described urgent line threshold value, then described order standard is defined as treating the urgency level of schedule fragment.Preferably, described urgency level can be defined as treating that schedule fragment is high more from the near more then urgency level of the fragment of described current broadcast.
Preferably, in steps d, if described comparative result be described side-play amount greater than described urgent line threshold value, then described order standard is defined as treating the rare degree of schedule fragment.Preferably, can be defined as holding the rare more at least degree of the service node for the treatment of schedule fragment high more for described rare degree.Preferably, under the identical situation of the rare degree for the treatment of schedule fragment, in step e by the described schedule fragment for the treatment of of described urgency level descending.
Preferably, in steps d, if described comparative result be described side-play amount less than described urgent line threshold value, then described constraints is defined as urgent constraints.
Preferably, for the single schedule fragment i that treats, described urgent constraints can comprise the following: (1) selects service node from all service nodes of intactly holding fragment i; (2) quantity of selected service node must not surpass predetermined thresholding; (3) selected service node provides the summation of the ability of service must not surpass the descending service ability of local node to local node; (4) set of selected service node be satisfy condition (1) set of maximum service ability can be provided to the set of (3).
Preferably, in steps d, in the service node set of satisfying described urgent constraints, select the maximum service node set of number of nodes.
Preferably, in steps d, in the service node set of satisfying described urgent constraints, select to comprise quantity set maximum, that in dispatching cycle before, pass through the service node of assessment.
Preferably, in steps d, if described comparative result be described side-play amount greater than described urgent line threshold value, then described constraints is defined as balance constraints.
Preferably, for the single schedule fragment i that treats, wherein said balance constraints comprises the following: (1) selects service node from all service nodes of intactly holding fragment i; (2) quantity of selected service node must satisfy predetermined value; (3) selected service node provides the summation of the ability of service must not surpass the descending service ability of local node to local node; (4) set of selected service node be satisfy condition (1) set of minimum service ability can be provided to the set of (3).
Preferably, in steps d, in the service node set of satisfying described urgent constraints, select to comprise the set of quantity service node maximum, that process is not assessed in dispatching cycle before.
Preferably, in described step a according to the historical record of service ability and or the multinomial service ability of assessing described service node in the actual reception data of last dispatching cycle.
Preferably, or the multinomial service ability of assessing described service node in the service ability that in described step a, in current dispatching cycle, reports according to the historical record and the described service node of service ability.
Preferably, the service ability of described service node can be defined as the upload bandwidth of described service node.Preferably, described stream medium data comprises sound stream, video flowing, text flow and image stream.
The method according to this invention is collected all data slot requests that will send to each the P2P node for this service dispatching cycle in the dispatching cycle in advance, thus all these P2P nodes are carried out centralized dispatching, thereby reduced the control expense in the data request process.This centralized dispatching is used two kinds of different dispatching algorithms neatly at the real needs of different dispatching cycles, has reduced waste of network resources when guaranteeing QoS of customer.
Method of the present invention is described below in conjunction with specific embodiments.
Description of drawings
Aforementioned and other targets of the present invention, feature and advantage will be conspicuous according to following more specific description to embodiments of the invention, and these embodiment are illustrated in the accompanying drawings.
Fig. 1 is the flow chart according to the data dispatching method of the P2P network that is used to carry out the stream medium data exchange of the present invention.
Fig. 2 is the further flow chart that is used at the data dispatching method of the P2P network that carries out the stream medium data exchange according to the present invention.
Fig. 3 carries out the schematic diagram of an embodiment of data dispatch in utilizing the stream medium data exchange process of P2P network for method shown in Figure 2.
Fig. 4 carries out the schematic diagram of another embodiment of data dispatch in utilizing the stream medium data exchange process of P2P network for method shown in Figure 2.
Embodiment
Further describe the utility model below in conjunction with the drawings and specific embodiments.Need to prove that each structure in the accompanying drawing just schematically illustrates, with so that those of ordinary skills understand principle of the present invention best, it is not necessarily drawn in proportion.
Though it should be understood that in the following description and explain embodiments of the invention by concrete peer network architecture, method provided by the invention is applicable to any peer network architecture existing or that develop in the future.In addition, though be the exchange process of example free flow media data in peer-to-peer network in the following description with the video data, scope of the present invention should not be subject to this, and it is applicable to the stream medium data of any kind.In addition, the node in the P2P network can be such as any main process equipments that can be used for making up the P2P network such as desktop computer, laptop computer, personal digital assistant (PDA), mobile phone, server computers.
Fig. 1 is the flow chart of the method according to this invention 100.Described method is applicable to the scene of carrying out the stream medium data exchange process in the P2P network, for example a node in the P2P network is just being carried out the task (this node can be called as local node) of online displaying video on its main process equipment, thereby it need continuous other peer node from network download the video data (these peer node are service node with respect to described local node) that will be played in the process of video playback.In such data exchange process, local node generally can disposablely not download to all contents that need play on its main process equipment, because this will need the user to wait for for a long time and need take a large amount of Internet resources, especially under the very large situation of amount that needs are play.Routinely, local node employing mode in batches download a part of data, and downloading process each time is a dispatching cycle from the service node data download at every turn.Required video data can be divided into equal-sized video data fragment.Local node obtains the described fragment of equal amount or unequal number amount from service node in each dispatching cycle, the data that obtained are right after on the memory of being watched or be stored in main process equipment after current in progress content by the user and watch for follow-up.Even under the good situation of network condition,, also probably cause owing to the be not in time broadcast that produces of data is not smooth if do not use appropriate dispatching algorithm.In the process of online displaying video, local node can be in each dispatching cycle using method 100, thereby realize data dispatch efficiently, when not taking too much Internet resources, make the user can watch video glibly.
In described method 100, local node is at first assessed the service ability of a plurality of service nodes in the network when begin each dispatching cycle, shown in step S10.In practice, local node usually can not assessed all service nodes in the network, but the node that carried out exchanges data before with it is assessed.In addition, local node also can be assessed the node in the new adding network.This assessment can be carried out with several different methods, and can utilize various tolerance.For instance, each service node that participates in this data dispatch process initially can need the local node of data to report the metric of himself service ability from trend.Described metric can be a upload bandwidth for example, is assumed to 1Mbps.Local node writes down this initial metric, and is worth according to this in current dispatching cycle and chooses service node, and what adopt for the node in the new adding network is exactly this strategy.When begin next dispatching cycle, local node will be gone up in one-period and should compare from its data volume of receiving with actual from the data volume that selected service node is received.If actual value less than desired value, is then turned down the service ability metric of this node, for example transfer to 0.9Mbps from 1Mbps; Otherwise, then the service ability metric is heightened, for example from 1Mbps modulation 1.1Mbps.Metric through adjusting will in the current cycle, be used to select service node and be recorded be used for after cycle assess the service ability of node.In fact, some node may be in certain several dispatching cycle deviated from network and no longer participate in data dispatch, but local node will keep the record to the service ability of these nodes equally, when they return network once more, to use.In this case, the service ability that historical record and such service node report when adding network once more can be combined and assess.It should be understood that in the description in front with the upload bandwidth to be the evaluation process that example has illustrated service ability, but any other appropriate metric parameter can be used also.
In step S11, local node scans its fragment buffering area and determines to treat scheduling window.Describedly treat that scheduling window is included in and need all fragments of being scheduled in the current dispatching cycle.This scheduling window can be isometric, has promptly comprised the schedule fragment for the treatment of of equal amount.In practice, will determine also when determining to treat schedule fragment which node is intactly held these fragments (not shown in Fig. 1) in the evaluated service node.In method 100, can use any suitable method well known in the art to determine to hold the node of required fragment, and supposition following all mention to treating that schedule fragment chooses the place of service node, all be from service node, to select with this fragment.
Then, in step S12, calculate current in progress fragment and treat in the scheduling window from this fragment nearest treat side-play amount between the schedule fragment.Usually, between each node in network each fragment in the same video data is had unified numbering, this numbering can be represented the broadcast sequencing of each fragment.Treat that the set of segments in the scheduling window normally arranges by this number order, promptly come the foremost from the nearest schedule fragment for the treatment of of the fragment of current broadcast, and last from the fragment of current broadcast coming farthest.Therefore, in practical operation, usually can directly calculate and treat that in the scheduling window first treat that numbering difference between the fragment of schedule fragment and current broadcast is as described side-play amount.
Then, local node with this side-play amount and urgent line threshold ratio, shown in S13.Can pre-determine described urgent line threshold value and it is stored in the local node according to network condition, joint behavior, stream medium data type.With described side-play amount and this urgent line threshold ratio, just can determine the urgent degree of the desired task of current dispatching cycle.According to this comparative result (being that the urgent degree of task is high or low), can trigger different scheduling strategies, and different scheduling strategies is corresponding to different fragment order standards and service joint constraint condition.Usually, when the urgent degree of task is high, can adopt usually to make local node receive the scheduling strategy of the fragment of urgent need at first and the most reliably.When the urgent degree of task is low, then can formulate scheduling strategy according to the needs of different local nodes, for example can adopt the strategy that makes data exchange process take minimal network resource or node control expense minimum.In addition, can also adopt a plurality of urgent line threshold values that the urgent degree of task is further segmented, for example in a dispatching cycle, need under the more situation of the fragment of dispatching.
In case determined to treat the order standard of schedule fragment and treat schedule fragment for each and choose the constraints of service node, method 100 just begins service node is unified scheduling.The so-called unified scheduling meaning is exactly to treat schedule fragment for each earlier after the service ability of all enabled nodes of comprehensive consideration all to select service node, in all selected service nodes each is concentrated to send and is treated corresponding all download requests of schedule fragment with each then, be that the disposable task that this service node need be finished for current scheduling window is informed this node, comprise which it need send and treat schedule fragment, when send and send how many data volumes or the like.Comprise following step specifically: carry out descending (step S14) according to the schedule fragment set for the treatment of that determined order standard is treated in the scheduling window, do like this and determined that potentially service node sends the order of data slot to local node; Treat schedule fragment according to determined constraints for each and choose service node set (step S15); Each is treated that the pairing service node of schedule fragment is merged into total service node set (step S16); Zong for each service node in the service node set forms a download request set (step S17), this download request set has comprised with each treats the request of schedule fragment corresponding download, no matter whether this service node is held or needs send this fragment; Send described download request set (S18) to corresponding service node.These steps will be described in conjunction with the embodiment of Fig. 3 and Fig. 4 vividerly.
At last, in step S19, local node receives from the fragment data of described service node and upgrades described fragment buffering area.
Fig. 2 is the flow chart of the method according to this invention 200.In flow chart shown in Figure 2, except step S23 to S25, other steps are all consistent with corresponding step in the flow chart shown in Figure 1, do not give unnecessary details for not doing at this for purpose of brevity.Show two kinds of scheduling strategies to the step S25 particularly at the step S23 of Fig. 2 at the urgent degree grade of different tasks.In step S23, more described side-play amount and urgent line threshold value.When side-play amount during less than urgent line threshold value, adopt the intervention schedule strategy, it comprises step S24a and step S25a.Intervention schedule strategy shown in Figure 2 is treated the schedule fragment that remains in the scheduling window according to the urgency level descending in step S24a, be about to the highest fragment of urgency level and come the foremost for the treatment of scheduling window, and the minimum fragment of urgency level comes backmost.Because as mentioned above, will receive after the service node in the download request set of arranging and also handle in this order, so descending has guaranteed that the highest fragment of emergency procedure will be processed at first by fragment order.Described urgency level can be defined as treating that schedule fragment is from the far and near degree of the fragment of current broadcast.Data slot by some embodiment of serial number in, described far and near degree can by the numbering between difference embody.In further embodiments, treat that schedule fragment can also utilize timestamp to determine from the far and near degree of the fragment of current broadcast.Then in step S25a, local node will correspondingly be treated schedule fragment according to urgent constraints for each and choose the service node set.Preferably, can utilize the constraints that makes that service ability is the strongest and the most reliable node is selected, this will describe in more detail in conjunction with Fig. 3.
When side-play amount during greater than urgent line threshold value, adopt the balance scheduling strategy, it comprises step S24b and step S25b.Intervention schedule strategy shown in Figure 2 is treated the schedule fragment that remains in the scheduling window according to rare degree descending in step S24b.What of the service node for the treatment of schedule fragment are described rare degree can be defined as holding, and the rare more at most degree of node of promptly holding fragment is low more, otherwise then rare degree is high more.A purpose that adopts this strategy is exactly to wish to obtain the fragment of less existence in advance in simple terms, for example causes video playback to interrupt to avoid can't obtaining when this fragment of needs.Then in step S25b, local node will correspondingly be treated schedule fragment according to balance constraints for each and choose the service node set.Preferably, can utilize the constraints that makes that resource occupying is minimum.In addition, can also under the low situation of the urgent degree of task, utilize initiate node more, so that its actual node capacity is assessed, for preparing dispatching cycle afterwards.These all will be described in more detail in conjunction with Fig. 4.
Embodiment shown in Figure 2 serves as according to correspondingly using intervention schedule strategy and balance scheduling strategy in the cycle at different data dispatch with node to the urgency level of data demand.The urgency level that the intervention schedule strategy is play with fragment serves as preferential, and choosing of fragment supplier adopted the constraints that makes group maximizing performance and avoid network congestion simultaneously.The balance scheduling strategy serves as preferential with the rare degree of fragment, to fragment supplier's the constraints that adopts balanced node service ability of choosing.Both combine and help finding and maximizing P2P group's performance, improve the efficient of exchanges data, can reduce the redundancy of exchanges data simultaneously, alleviate network burden.
Fig. 3 is method shown in Figure 2 is carried out an embodiment of data dispatch in utilizing the stream medium data exchange process of P2P network a schematic diagram, and Fig. 4 carries out the schematic diagram of another embodiment of data dispatch in utilizing the stream medium data exchange process of P2P network for method shown in Figure 2.In Fig. 3 and Fig. 4, node P0-P8 constitutes a P2P network, and wherein P0 is a local node, and P1-P8 is service node accordingly, and P0-P8 can for example interconnect by the internet.The user who supposes the P0 node just goes up the online video of watching at the main process equipment (for example personal computer) of P0 node, so P0 need be from P1-P8 foradownloaded video data slot.Before describing these two embodiment, at first carry out following hypothesis:
(1) the descending service ability of supposing local node is 2.0Mbps;
(2) service ability of each P2P service node is as shown in the table:
Table 1
(3) it is listed that current time, each node are held the situation such as the following table of fragment:
Node | Hold fragment |
P1 | {S11,S12,S14,S15} |
P2 | {S11,S12,S13,S15} |
P3 | {S11,S12,S13,S14} |
P4 | {S11,S12,S13,S15} |
P5 | {S11,S13,S14} |
P6 | {S11,S12,S13,S14,S15} |
P7 | {S11,S14,S15} |
P8 | {S11,S12,S13,S14,S15} |
Table 2
(wherein the side-play amount between the fragment by each sheet segment identification after difference expression between the two digits).
(4) urgent threshold value=10 fragment;
(5) urgent constraints:
I. from P1-P8, select service node in complete all nodes of holding fragment;
Ii. the quantity of selected service node is no more than 3;
Iii. the service ability summation of selected node is no more than the descending service ability of local node;
Iv. the set of selected service node be satisfy condition (1) set of maximum service ability can be provided to the set of (3);
Above-mentioned urgent constraints can be represented in order to the formula of giving a definition:
Wherein
Be expressed as the selected service node set of fragment i,
I.e. expression
In the service ability summation of all nodes of being comprised.
(6) balance constraints:
I selects service node in complete all nodes of holding fragment from P1-P8;
The quantity of the selected service node of ii equals 3;
The service ability summation of the selected node of iii is no more than the descending service ability of local node;
The set of the selected service node of iv be satisfy condition (1) set of minimum service ability can be provided to the set of (3).
Above-mentioned balance constraints can be represented in order to the formula of giving a definition:
Wherein
Be expressed as the selected service node set of fragment i,
I.e. expression
In the service ability summation of all nodes of being comprised.
In the embodiments of figure 3, suppose that further the current in progress fragment of user is S10, it can be understood that it is to play the 10th video data fragment.Thus, it is as follows to carry out the concrete steps of method of the present invention:
A) real data that received according to historical record and last cycle of the local node service ability of each service node of reappraising obtains the listed result of above-mentioned table 1;
B) local node scanning fragment buffering area, determine to treat in the scheduling window set of segments for S11, S12, S13, S14, S15} calculates from nearest the treating of current plays clip that the side-play amount between schedule fragment and the current plays clip is 1;
C) judge described side-play amount less than urgent threshold value 10, determine thus and will treat schedule fragment and select service node by the descending of fragment urgency level according to urgent constraints;
D) by obtain after the urgency level descending new treat scheduling window be S11, S12, S13, S14, S15}, urgency level is promptly treated the far and near degree of schedule fragment from current in progress fragment.In fact in the situation of present embodiment, treat that the fragment in the scheduling window is initially arranged according to urgency level;
E). it is to treat that each fragment in the scheduling window chooses the service node set that local node adopts above-mentioned urgent constraints definition, obtains the result listed as following table:
Fragment | Service node |
S11 | {P2,P6,P7} |
S12 | {P1,P2,P6} |
S13 | {P2,P4} |
S14 | {P1,P3,P7} |
S15 | {P2,P6,P7} |
Wherein for S11, the service ability summation of node P2, P6 and P7 is 2.0Mpbs, do not surpass the descending service ability of local node P0, and the node in this set adds up to 3 regulations that also meet urgent constraints ii.In fact, hold in the node of fragment S11 at all, total service ability of P1, P4 and P7 also is 2.0Mbps, and interstitial content is not equally above 3.In this case, local node P0 can determine which node combination has comprised the most a plurality of used nodes before by checking the historical record on its this machine.We can think at this, and P2, P6 and P7 are the nodes that had sent data before to P0.In addition, it is the highest to understand the stability of service ability of which service node further according to historical record, is promptly all keeping stable upload bandwidth in data repeatedly in sending, and such node will be preferentially selected.For S12, selected node combination P1, P2 and the service ability summation of P6 are 1.9Mbps.As can be seen, total service ability of node P2 and P4 also is 1.9Mbps, and interstitial content is not also above 3.In this case, local node P0 preferably can select the combination of three nodes, because node as much as possible will reduce to have suddenly a node to leave the influence that is brought.Through above-mentioned selection course, local node will be selected service ability service node the strongest and that stability is the highest and make up and finish the transmission of fragment data in emergency circumstances.
F) local node merges the service node set of each fragment correspondence, obtains total service node collection { P1, P2, P3, P4, P6, P7};
G) local node forms and the set of segments corresponding download request set for the treatment of in the scheduling window at each node in total service node set, and is following listed:
Above the set of listed download request constitute by element corresponding with data slot and that form is identical, wherein the form of each element is defined as:
Download request=(whether segment number is downloaded the starting position, downloads length, need to wait for) for clarity sake, illustrates the concrete implication of this download request from the angle of P1.When receiving this download request set, P1 at first parses first request (S11,0,0, delay (S11/2.0)), this this node of expression request does not provide the data of fragment S11 and waits for the time that S11/2.0 is long to local node, wherein S11 represents the size (typically being unit with the byte) of fragment several piece, denominator then is to be selected for the node P2, the P6 that send fragment S11 and the service ability summation 2Mbps of P7, and the parameter of time span that obtains representing sending S11 thus is as stand-by period of P1.P1 resolves second request (S12,1*S12/19,5*S12/19,0) that obtains and is meant that this node need provide the data of fragment S12 to local node, and the starting position is 1*S12/19, and data length is 5*S12/19.Wherein, S12/19 represents total data block S12 is divided into 19 more small data pieces that wait size, the P1 node need be from these small data pieces first begin to send 5 continuously to local node P0, can be readily seen that 5/19 is exactly that the service ability of P1 is selected for the ratio of the service ability summation of the node P1, the P2 that send S12 and P7 with all.Be used to send the node P2 of S12 for the next one, can find out that P2 will send the data of fragment S12 since the 6th data fritter from corresponding download request.Every other download request can be explained by above-mentioned analysis, this shows, realize in a dispatching cycle polymerization to all data slot requests of same P2P node by method of the present invention, thereby reduced the control expense in the data procedures.
H) local node scans the set of total service node, will be used for total service node set P1, P2, P3, P4, P6, the download request set of each node among the P7} sends to node corresponding;
I) { P1, P2, P3, P4, P6, P7} receive and wait for or send data according to the rule in the set after the download request set service node;
J) local node from service node P1, P2, P3, P4, P6, P7} receives data, and upgrades the state information treat fragment in the scheduling window.
In the embodiment of Fig. 4, suppose that further the current in progress fragment of user is S1, it can be understood that it is to play the 1st video data fragment.Thus, it is as follows to carry out the concrete steps of method of the present invention:
A) real data that received according to historical record and last cycle of the local node service ability of each service node of reappraising obtains the listed result of above-mentioned table 1;
B) local node scanning fragment buffering area, determine to treat in the scheduling window set of segments for S11, S12, S13, S14, S15} calculates from nearest the treating of current plays clip that the side-play amount between schedule fragment and the current plays clip is 1;
C) judge that described side-play amount is not less than urgent threshold value 10, determine thus and will treat schedule fragment and select service node by the rare degree descending of fragment according to balance constraints;
D) by obtain after the rare degree descending new treat scheduling window be S13, S14, S15, S12, S11}, rare degree can be embodied by the number of the node of holding fragment.In fact, as can be seen from Figure 4, the rare degree of fragment S13, S14 and S15 is identical, is all held by 6 nodes respectively.In this case, will sort by the urgency level of fragment more further.Therefore, S13 is nearest from current in progress fragment S1, thereby is come first, is arranged in order S14 and S15 after it.
E). it is to treat that each fragment in the scheduling window chooses the service node set that local node adopts above-mentioned urgent constraints definition, obtains the result listed as following table:
Fragment | Service node |
S13 | {P5,P6,P8} |
S14 | {P5,P6,P8} |
S15 | {P1,P6,P8} |
S12 | {P1,P6,P8} |
S11 | {P5,P6,P8} |
Compare the situation under the contingency condition, the node under the equilibrium condition is selected simple relatively.Can select the unique service node set for each fragment substantially according to aforementioned balance constraints.But, if when the identical node set of two groups of service ability is arranged, local node preferably can select to comprise the set of a plurality of newly added nodes, can in so not urgent data dispatch process the active service ability of these initiate nodes be assessed thus.
F) local node merges the service node set of each fragment correspondence, obtains total service node collection { P1, P5, P6, P8};
G) local node forms and the set of segments corresponding download request set for the treatment of in the scheduling window at each node in total service node set, and is following listed:
Above the form of the formation of listed download request set and each download request with above described in conjunction with Figure 3 consistent, so here repeat no more.
H) local node scans the set of total service node, will be used for total service node set P1, P5, P6, the download request set of each node among the P8} sends to node corresponding;
I) { P1, P5, P6, P8} receive and wait for or send data according to the rule in the set after the download request set service node;
J) local node from service node P1, P5, P6, P8} receives data, and upgrades the state information treat fragment in the scheduling window.
Should be noted that above embodiment is only in order to technical scheme of the present invention to be described but not limit it.Although the present invention is had been described in detail with reference to above-mentioned embodiment; those of ordinary skill in the art is to be understood that; still can make amendment or the part technical characterictic is equal to the specific embodiment of the present invention and replace and do not break away from essence of the present invention, it all be encompassed in the scope that the present invention asks for protection.In addition, each step in the described method also can be carried out by being different from described order, and they can be modified, and/or can combined or further separate.Therefore, should explain claim in the mode of broad sense according to current disclosure.
Claims (17)
1. method that is used for carrying out data dispatch at peer-to-peer network, described peer-to-peer network is used to the stream medium data exchange, described peer-to-peer network comprises the service node of local node and a plurality of equities, wherein said local node is from described a plurality of service node receiving stream media data slots, it is characterized in that, said method comprising the steps of:
A. local node is assessed the service ability of described a plurality of service nodes;
B. local node scans its fragment buffering area, determines the scheduling window for the treatment of in the current dispatching cycle;
C. local node calculate local current broadcast fragment and described treat scheduling window interior from the fragment of this current broadcast nearest treat side-play amount between the schedule fragment;
D. described side-play amount and urgent line threshold ratio and according to described comparative result are determined describedly to treat the order standard for the treatment of the schedule fragment set in the scheduling window and treat schedule fragment for each and choose the constraints that service node is gathered;
E. local node is treated schedule fragment set according to described the treating of determined order standard descending in the scheduling window;
F. treat schedule fragment according to determined constraints for each and choose the service node set;
G. local node treats that with each the pairing service node of schedule fragment is merged into total service node set;
H. local node forms with described treating at each service node in the described total service node set and treats schedule fragment set corresponding download request set in the scheduling window;
I. local node sends described download request set to corresponding service node;
J. local node receives from the fragment data of described service node and upgrades described fragment buffering area.
2. the method for claim 1 is characterized in that, wherein said steps d comprises:
If described comparative result be described side-play amount less than described urgent line threshold value, then described order standard is defined as treating the urgency level of schedule fragment.
3. method as claimed in claim 2 is characterized in that, wherein said urgency level is defined as treating that schedule fragment is high more from the near more then urgency level of the fragment of described current broadcast.
4. the method for claim 1 is characterized in that, wherein said steps d comprises:
If described comparative result be described side-play amount greater than described urgent line threshold value, then described order standard is defined as treating the rare degree of schedule fragment.
5. method as claimed in claim 4 is characterized in that, it is high more that wherein said rare degree is defined as holding the rare more at least degree of the service node for the treatment of schedule fragment.
6. method as claimed in claim 4 is characterized in that, wherein said step e comprises:
Under the identical situation of the rare degree for the treatment of schedule fragment, by the described schedule fragment for the treatment of of described urgency level descending.
7. the method for claim 1 is characterized in that, wherein said steps d comprises:
If described comparative result be described side-play amount less than described urgent line threshold value, then described constraints is defined as urgent constraints.
8. method as claimed in claim 7 is characterized in that, wherein for the single schedule fragment i that treats, described urgent constraints comprises the following:
(1) from all service nodes of intactly holding fragment i, selects service node;
(2) quantity of selected service node must not surpass predetermined thresholding;
(3) selected service node provides the summation of the ability of service must not surpass the descending service ability of local node to local node;
(4) set of selected service node be satisfy condition (1) set of maximum service ability can be provided to the set of (3).
9. method as claimed in claim 8 is characterized in that, wherein said steps d also is included in and selects the maximum service node set of number of nodes in the service node set of satisfying described urgent constraints.
10. method as claimed in claim 8 is characterized in that, wherein said steps d also is included in selects to comprise quantity set maximum, pass through the service node of assessment in dispatching cycle before in the service node set of satisfying described urgent constraints.
11. the method for claim 1 is characterized in that, wherein said steps d comprises:
If described comparative result be described side-play amount greater than described urgent line threshold value, then described constraints is defined as balance constraints.
12. method as claimed in claim 11 is characterized in that, wherein for the single schedule fragment i that treats, described balance constraints comprises the following:
(1) from all service nodes of intactly holding fragment i, selects service node;
(2) quantity of selected service node must satisfy predetermined value;
(3) selected service node provides the summation of the ability of service must not surpass the descending service ability of local node to local node;
(4) set of selected service node be satisfy condition (1) set of minimum service ability can be provided to the set of (3).
13. method as claimed in claim 11, it is characterized in that wherein said steps d also is included in the set of selecting to comprise quantity service node maximum, that process is not assessed in dispatching cycle before in the service node set of satisfying described urgent constraints.
14. the method for claim 1 is characterized in that, wherein said step a comprises according to one in the actual reception data of the historical record of service ability and last dispatching cycle or the multinomial service ability of assessing described service node.
15. the method for claim 1, it is characterized in that wherein said step a comprises or the multinomial service ability of assessing described service node in the service ability that reports according to the historical record of service ability and described service node in current dispatching cycle.
16., it is characterized in that the service ability of wherein said service node is defined as the upload bandwidth of described service node as any described method in the claim 1 to 15.
17., it is characterized in that wherein said stream medium data comprises sound stream, video flowing, text flow and image stream as any described method in the claim 1 to 16.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010623255A CN102025645B (en) | 2010-12-24 | 2010-12-24 | Method for scheduling data in peer-to-peer network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010623255A CN102025645B (en) | 2010-12-24 | 2010-12-24 | Method for scheduling data in peer-to-peer network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102025645A true CN102025645A (en) | 2011-04-20 |
CN102025645B CN102025645B (en) | 2012-10-10 |
Family
ID=43866518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010623255A Expired - Fee Related CN102025645B (en) | 2010-12-24 | 2010-12-24 | Method for scheduling data in peer-to-peer network |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102025645B (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404608A (en) * | 2011-11-30 | 2012-04-04 | 苏州奇可思信息科技有限公司 | video on demand method based on local area network point-to-point transmission |
CN103581259A (en) * | 2012-08-03 | 2014-02-12 | 盛乐信息技术(上海)有限公司 | P2P download task scheduling method and system |
CN107818706A (en) * | 2017-10-30 | 2018-03-20 | 中科汉华医学科技(北京)有限公司 | A kind of hospital's remote living broadcast formula teaching and training system |
CN108512921A (en) * | 2018-03-28 | 2018-09-07 | 深圳市网心科技有限公司 | File downloading method based on P2P network, electronic equipment and storage medium |
CN108737330A (en) * | 2017-04-14 | 2018-11-02 | 腾讯科技(深圳)有限公司 | Processing method, device and the storage medium of Social behaviors data |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101345768A (en) * | 2008-08-15 | 2009-01-14 | 南京邮电大学 | Peer-to-peer network transmission method for music on demand system |
CN101668037A (en) * | 2009-09-29 | 2010-03-10 | 乐视网信息技术(北京)股份有限公司 | Method for dispatching P2P network |
US20100146138A1 (en) * | 2008-12-09 | 2010-06-10 | Hong Kong Applied Science And Technology Research Institute Co., Ltd. | Method of data request scheduling in peer-to-peer sharing networks |
-
2010
- 2010-12-24 CN CN201010623255A patent/CN102025645B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101345768A (en) * | 2008-08-15 | 2009-01-14 | 南京邮电大学 | Peer-to-peer network transmission method for music on demand system |
US20100146138A1 (en) * | 2008-12-09 | 2010-06-10 | Hong Kong Applied Science And Technology Research Institute Co., Ltd. | Method of data request scheduling in peer-to-peer sharing networks |
CN101668037A (en) * | 2009-09-29 | 2010-03-10 | 乐视网信息技术(北京)股份有限公司 | Method for dispatching P2P network |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404608A (en) * | 2011-11-30 | 2012-04-04 | 苏州奇可思信息科技有限公司 | video on demand method based on local area network point-to-point transmission |
CN103581259A (en) * | 2012-08-03 | 2014-02-12 | 盛乐信息技术(上海)有限公司 | P2P download task scheduling method and system |
CN108737330A (en) * | 2017-04-14 | 2018-11-02 | 腾讯科技(深圳)有限公司 | Processing method, device and the storage medium of Social behaviors data |
CN107818706A (en) * | 2017-10-30 | 2018-03-20 | 中科汉华医学科技(北京)有限公司 | A kind of hospital's remote living broadcast formula teaching and training system |
CN108512921A (en) * | 2018-03-28 | 2018-09-07 | 深圳市网心科技有限公司 | File downloading method based on P2P network, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN102025645B (en) | 2012-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8838823B2 (en) | Performance aware peer-to-peer content-on-demand | |
CN101355522B (en) | Control method and system for media server | |
US8260951B2 (en) | Rate-controllable peer-to-peer data stream routing | |
CN102025645B (en) | Method for scheduling data in peer-to-peer network | |
CN103843297B (en) | For for real-time streaming service is provided and selects the methods, devices and systems of both candidate nodes | |
CN112968959B (en) | Resource request method and terminal | |
US20100005185A1 (en) | Substream trading in a peer to peer live streaming system | |
US8150966B2 (en) | Multi-party cooperative peer-to-peer video streaming | |
CN101645927A (en) | System, method and server for slicing media files | |
WO2013130993A1 (en) | Systems and methods for hybrid content delivery | |
CN102868936A (en) | Method and system for storing video logs | |
CN101605242B (en) | Method, device and system for realizing video-on-demand service | |
CN101478558A (en) | P2P customer terminal data transmission management algorithm | |
CN104967868B (en) | video transcoding method, device and server | |
CN102209262A (en) | Method, device and system for scheduling contents | |
CN102158767A (en) | Scalable-coding-based peer to peer live media streaming system | |
US20110113099A1 (en) | Method for transmitting buffer map and network thereof | |
CN103051556A (en) | Stream media data control system and method thereof | |
CN103458315B (en) | A kind of P2P Streaming Media clone method based on popularity | |
CN102904833B (en) | Self-adaptive P2P (Peer-to-Peer) steam media data piece selection method and node | |
CN103597847A (en) | Method and apparatus for streaming multimedia contents | |
Li et al. | Context-aware adaptive data scheduling algorithm for P2P streaming systems | |
Gkortsilas et al. | Liquidstream—A high performance and stable scheduling architecture for P2P video on demand | |
Chen et al. | Scheduling piece requests blindly and randomly for peer-to-peer live streaming | |
CN101924793A (en) | P2P streaming media-based secondary coding play method and system |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121010 Termination date: 20151224 |
|
EXPY | Termination of patent right or utility model |