CN1314250C - A robust point to point based stream scheduling method - Google Patents

A robust point to point based stream scheduling method Download PDF

Info

Publication number
CN1314250C
CN1314250C CNB2004100867111A CN200410086711A CN1314250C CN 1314250 C CN1314250 C CN 1314250C CN B2004100867111 A CNB2004100867111 A CN B2004100867111A CN 200410086711 A CN200410086711 A CN 200410086711A CN 1314250 C CN1314250 C CN 1314250C
Authority
CN
China
Prior art keywords
client node
media stream
multicast
network
client
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.)
Expired - Fee Related
Application number
CNB2004100867111A
Other languages
Chinese (zh)
Other versions
CN1604569A (en
Inventor
赵黎
张萌
吴南山
杨士强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CNB2004100867111A priority Critical patent/CN1314250C/en
Publication of CN1604569A publication Critical patent/CN1604569A/en
Application granted granted Critical
Publication of CN1314250C publication Critical patent/CN1314250C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention belongs to the technical field of information dissemination, which relates to a robust stream scheduling method based on point to point. In the method, a scheduling server, a streaming server and a client end node are combined into a living broadcast network. The present invention is defined differently according to the realization of different functions of each client end node in the network. Each client end node is got different functions in the network. A network topology structure is changed by the demand addition of a new client end node and the disengaging of the client end nodes. By dynamic update and monitor for a network topology table and the change of the functions of a part of client end nodes, stream scheduling is realized. The present invention integrates the advantages of P2P technology, IP multicast technology and network agent technology, which is to save network bandwidth to the maximum extent. In the present invention, multiple data source technique is used for enhancing the robustness of a multicast network, and simultaneously the low correlation of multiple data sources provides favorable conditions for error recovery, such as retransmission, etc.

Description

A kind of robust based on point-to-point stream scheduling method
Technical field
The invention belongs to the information dissemination technology field, relate in particular to a kind of P2P stream scheduling method based on the high robust under the live network environment.
Background technology
Along with popularizing rapidly of the development of Internet, particularly broadband services, people no longer have been satisfied with simple information such as text, image are only arranged.And to content rich video more, media services such as audio frequency have had increasing demand.Content of multimedia in the network, especially continuous media content (video and audio frequency), promptly streaming medium content promptly increases.Streaming Media is the cross discipline of multimedia and network service.In the Streaming Media application, the video data partition packing back after content providers will be compressed is transferred to the recipient in the mode of " stream " simultaneously by network, on one side the recipient receives data, Yi Bian the packet that will receive is recombinated, decodes, play.Other transmission mode has essential distinction in this transmission mode and the network.
This new network service needed of video multicast realizes that any is to the communication of multiple spot on the network.And current, client/server structure is all generally adopted in the various services on the Internet, perhaps is called IP unicast.This service model is simple in structure, is easy to realize, it is popularized in the process at computer network and has brought into play enormous function.But along with the scale of network service is huge day by day, this structure drawback is also more and more obvious: for can be to more customer service, it needs server from strength to strength, and more and more higher to the network egress bandwidth requirement at server end.Particularly in the Video service field, because the code check of video flowing is often all very high, generally at least at hundreds of kilobits per second (kbits/s), thus very big to server stress, almost can not satisfy the user's request that enlarges day by day.Especially in video multicast the inside, server in fact sends identical video data for a large amount of clients, and this not only brings added burden to server, and is wastes greatly to bandwidth resources.The calculated performance that is to say server has become topmost bottleneck with the network bandwidth.
In view of the existing problems of IP multicast, realize that in application layer the idea of multicast functionality is suggested thereupon.Here it is so-called application layer multicast, its basic thought are exactly that function with multicast is put into application layer and finishes.But the most employing of application layer multicast is set up reliable server in the network various piece and is finished the multicast task, and safeguards that these servers need a large amount of costs.
Summary of the invention
The objective of the invention is for overcoming the weak point of prior art, propose a kind of robust based on point-to-point stream scheduling method, this method synthesis the advantage of P2P technology, ip multicast technology and network agent technology, try hard to save to the full extent the network bandwidth.Adopt the multi-data source technology to strengthen the robustness of multicast network in the method.The low correlation of multi-data source provides advantage for retransmitting the wrong recovery of equal difference.
The stream scheduling method based on P2P of a kind of robust that the present invention proposes comprises network-building method and dispatching method, and wherein said network-building method may further comprise the steps:
(1) in live network, dispatch server (Trace Server) is the client node that client node (Peer) finds other, and notification streams media server (Streaming Server) provides Media Stream to client node;
(2) streaming media server provides stable Media Stream to client node;
(3) client node receives from streaming media server or the Media Stream of the client node of Media Stream is provided, and buffered media stream, in this client node playing media flow data, provide Media Stream to other client nodes by P2P (Peer-to-Peer) mode;
(4) client node in the step (3), if in the P2P transmission course, provide Media Stream to other client nodes, then this client node is called the client node (supplying peer) that Media Stream is provided, otherwise this client node is called bottom client node (leaf peer);
(5) client node in the step (3), if in the P2P transmission course, reception provides the Media Stream of the client node of Media Stream from streaming media server or reception, and then this client node is called the client node (receiving peer) of receiving media stream;
(6) client node in the step (3) if be positioned at some subnets inside, and provides Media Stream to other client nodes, and then this client node is called multicast client node (multicasting peer);
(7) client node in the step (3), if be positioned at some subnets inside, and receive only Media Stream from other multicast client nodes in the same subnet, simultaneously not to subnet outside other clients Media Stream is provided, then this client node is called multicast reception client node (multicasting receiver);
(8) client node in the step (3), can provide the client node of Media Stream, the client node and the multicast client node of receiving media stream simultaneously, but as long as it provides the client node of Media Stream, the client node and the multicast client node thrin of receiving media stream, it just can not be that multicast receives client node;
(9) client node in the step (3), if asking to add live network, then this client node is called the client node (requesting peer) that request adds;
(10) client node in the step (3), if asking or withdrawing from by force live network, then this client node is called the client node (quitting peer) that withdraws from;
(11) client node in the step (3), if directly obtain Media Stream from streaming media server, then this client node is called seed client node (seed peer);
(12) streaming media server is positioned at the 0th layer (layer) of this network; The seed client node is positioned at the 1st layer of this network; If certain client node provides the client node of Media Stream that Media Stream is provided by several, then its level of being arranged in network is that all provide the maximum level of client node of Media Stream to add one; If certain client node is to provide Media Stream by certain multicast client node, then its level is that the level of multicast client node adds one; The middle-level sequence number of network is to be used for estimating the delay that Media Stream produces in network;
Described dispatching method comprises the steps;
(13) when new client node application adds live network, must be connected with described dispatch server earlier, distribute client node that Media Stream is provided or multicast client node to provide Media Stream (this dispatch server cannot receive client node with any multicast offer the client node that request adds, in order to avoid cause the output flow of this subnet big unusually) by dispatch server for it;
(14) when certain client node withdraws from live network, dispatch server will be according to the current network topology situation, (dispatch server is if select the bottom client node to select a multicast reception client node or bottom client node to substitute the client node that withdraws from, then generally select number of plies maximum, the information such as distance, delay of also can taking into account select);
(15) dispatch server is preserved this topology of networks network topology table of a detail record, and when client node adds or withdraws from this network (network topology structure changes), this network topology table also dynamic real-time is upgraded;
(16) in the scheduling process of dispatch server, the hierachy number of the client node that Media Stream is provided of each client node is all than the hierachy number of this client node little (thereby guaranteeing that dispatch server does not produce the loop network structure in the stream scheduling process, guarantee that each client node can obtain up-to-date media stream data from streaming media server directly or indirectly);
(19) in the scheduling process of dispatch server,, make it become the bottom client node with each lowermost end that can not externally provide the client node of Media Stream to be assigned to live network;
(20) have the processing of a plurality of channels under the living broadcast environment, can move a plurality of dispatch servers simultaneously, also can open different port on same dispatch server and support, each dispatch server or each port are all logically safeguarded network separately.
When new client node application added live network, the dispatching method of dispatch server specifically may further comprise the steps in above-mentioned (13) step:
(13.1) if when not having or having only other a client node in the client node place subnet that request adds (can think client node that request adds not in this subnet), several (quantity can often) client nodes or streaming media server the give request client node conduct that add the candidate client node (Supplying Candidates) that Media Stream be provided of dispatch server beyond the client node that request adds distributes this subnet then, the client node that request adds is by relatively (as relatively and the delay between them, compare their historical information or the like), select several client nodes as the client node that Media Stream is provided, the client node that this moment, request added is operated in P2P pattern (Peer-to-Peer Mode);
(13.2) if client node more than 2 or 2 is arranged in the client node place subnet that request adds, then can adopt P2P pattern (method as step (13.1) as described in), also can adopt multicast pattern (MulticastingMode) to join in the whole live network;
(13.3) in step (13.2),, then, determine the dispatching method that new client node adds according to whether existing other multicasts to receive client node in original this subnet if the client node that request adds adopts multicast mode to add live network;
(13.4) in step (13.3), if exist other multicasts to receive client node in original this subnet, then dispatch server will ask the address and the port numbers of the client node of adding to inform the all-multicast client node that this subnet is interior, and each multicast client node will ask the information of the client node of adding to join in each contented multicast list;
(13.5) in step (13.3), if do not exist other multicasts to receive client node in original this subnet, then dispatch server will be informed all client nodes that are operated under the P2P pattern in this subnet, make them enter multicast state, return step (13.4) afterwards.
In above-mentioned (14) step, when certain client node withdrawed from live network, the dispatching method of dispatch server specifically may further comprise the steps:
(14.1) if the subnet inside at the client node place of withdrawing from exists multicast to receive client node, and the client node that withdraws from itself is a multicast client node, then a multicast of the work of the client node that withdraws from all being transferred in this subnet receives on the client node, this multicast reception client node provides the client node of Media Stream to connect with all of the client node that withdraws from, thereby obtain all media stream datas, the request of the client node of all receiving medias streams of the client node that acceptance is simultaneously withdrawed from;
(14.2) if the subnet inside at the client node place of withdrawing from exists multicast to receive client node, and the client node that withdraws from itself is that a multicast receives client node, and then the client node that this is withdrawed from is deleted from the topology table of this network;
(14.3) if the subnet inside at the client node place of withdrawing from does not exist multicast to receive client node (can think that the client node of asking to add is not in this subnet), (the bottom client node of distribution generally is that hierachy number is bigger then to distribute a bottom client node to replace the client node that withdraws from, like this can be so that the hierachy number of whole multicast network remains on the less level, help reducing network delay, also should take into account factors such as distance, bandwidth simultaneously);
(14.4) if the client node that withdraws from is the bottom client node, then the client node that this is withdrawed from is deleted from the topology table of this network;
In above-mentioned (15) step, topology table dynamic real-time method for updating specifically may further comprise the steps:
(15.1) each client node all must regularly send survival (Alive) signal to dispatch server, represent that oneself still is in the network, and in work, if certain client node does not send the survival signal in given time threshold (Timeout), think that then this client node has withdrawed from live network, and it is deleted from topology table, the dispatching method that withdraws from by client node is handled afterwards;
(15.2) in step (15.1), each client node sends time interval change at random (according to information setting time interval excursions such as cache size, delays) in a given scope of survival signal to dispatch server;
(15.3) when the scale of multicast network during greater than the size threshold set, the method that adopts classification to monitor dynamically updates topology table; This classification monitor method is: the seed client node is unique client node that directly sends the survival signal to dispatch server; All client nodes except that the seed client node directly send the survival signal to client node that Media Stream is provided or multicast client node; If the client node of Media Stream or the multicast client node is not received certain client node in this time threshold survival signal are provided, directly notify dispatch server; Dispatch server will not send the client node of survival signal and will delete from topology table in this time threshold, the dispatching method that withdraws from by client node is handled afterwards.
Characteristics of the present invention and technique effect:
The inventive method combines the advantage of P2P technology, ip multicast technology and network agent technology, tries hard to save to the full extent the network bandwidth.Adopt the multi-data source technology to strengthen the robustness of multicast network in the method.The low correlation of multi-data source provides advantage for retransmitting the wrong recovery of equal difference.
Description of drawings
Fig. 1 is the networking structure embodiment schematic diagram of the inventive method;
Fig. 2 is the dispatching method schematic diagram when client node in subnet withdraws from live network in the present embodiment;
Fig. 3 is the dispatching method schematic diagram when client node outside subnet withdraws from live network in the present embodiment.
Embodiment
The reaching embodiment in conjunction with the accompanying drawings based on point-to-point stream scheduling method and be described in detail as follows of a kind of robust that the present invention proposes:
The networking structure embodiment of the inventive method as shown in Figure 1,1 to 5 all is client nodes among the figure, 1 is the seed client node simultaneously wherein, the client node of Media Stream and the client node of receiving media stream be provided; 2 is the client node of seed client node, multicast client node, the client node that Media Stream is provided and receiving media stream simultaneously; The 3rd, multicast receives client node; 4 provide the client node of Media Stream and the client node of receiving media stream simultaneously; 5 is the client node and the bottom client node of receiving media stream simultaneously; The 6th, media stream data route is provided; The 7th, dispatch server is to the scheduling of Media Stream.
The network-building method of present embodiment may further comprise the steps:
(1) in the present embodiment network, dispatch server is the client node that client node (as the client node 1-5 among Fig. 1) finds other, and the notification streams media server provides Media Stream to client node;
(2) streaming media server provides stable Media Stream to client node;
(3) client node (as the client node 1-5 among Fig. 1) receives from streaming media server or the Media Stream of the client node of Media Stream is provided, and buffered media stream, in this client node playing media flow data, provide Media Stream to other client nodes by the P2P mode;
(4) client node in the step (3), if in the P2P transmission course, provide Media Stream to other client nodes, then this client node be called Media Stream is provided client node (as the client node among Fig. 11,2,4), otherwise this client node is called bottom client node (as the client node among Fig. 1 5);
(5) client node in the step (3), if in the P2P transmission course, reception provides the Media Stream of the client node of Media Stream from streaming media server or reception, then this client node is called the client node of receiving media stream (as the client node among Fig. 11,2,4,5);
(6) client node in the step (3) if be positioned at some subnets inside, and provides Media Stream to other client nodes, and then this client node is called multicast client node (as the client node among Fig. 1 2);
(7) client node in the step (3), if be positioned at some subnets inside, and receive only Media Stream from other multicast client nodes in the same subnet, simultaneously not to subnet outside other clients Media Stream is provided, then this client node is called multicast reception client node (as the client node among Fig. 1 3).
(8) client node in the step (3), can provide the client node of Media Stream, the client node and the multicast client node of receiving media stream simultaneously, but as long as it provides the client node of Media Stream, the client node and the multicast client node thrin of receiving media stream, it just can not be that multicast receives client node;
(9) client node in the step (3), if asking to add live network, then this client node is called the client node (can be as the client node among Fig. 1 5) that request adds;
(10) client node in the step (3), if asking or withdrawing from by force live network, then this client node is called the client node (can be as the client node 1-5 among Fig. 1) that withdraws from;
(11) client node in the step (3), if directly obtain Media Stream from streaming media server, then this client node is called seed client node (as the client node among Fig. 11,2);
(12) streaming media server is positioned at the 0th layer of this network; Seed client node (as the client node among Fig. 11,2) is positioned at the 1st layer of this network; If certain client node provides the client node of Media Stream that Media Stream is provided by several, then its level of being arranged in network is that all provide the maximum level of client node of Media Stream to add one (client node 3,4 as Fig. 1 is the 2nd layer, and client node 5 is the 3rd layer); If certain client node is to provide Media Stream by certain multicast client node, then its level is that the level of multicast client node (as the client node among Fig. 1 2) adds one.The middle-level sequence number of network is to be used for estimating the delay that Media Stream produces in network;
The dispatching method of present embodiment is described as follows in conjunction with shown in Fig. 1,2,3:
(13) (can be the client node 3 among Fig. 1 as new client node, when 5) application adds live network, must be connected with described dispatch server earlier, distribute client node that Media Stream is provided or multicast client node to provide Media Stream (this dispatch server cannot receive client node with any multicast offer the client node that request adds, in order to avoid cause the output flow of this subnet big unusually) by dispatch server for it;
(14) as certain client node (can be the client node 1-5 among Fig. 1) when withdrawing from live network, dispatch server will be according to the current network topology situation, (dispatch server is if select the bottom client node to select a multicast reception client node or bottom client node to substitute the client node that withdraws from, then generally select number of plies maximum, the information such as distance, delay of also can taking into account select);
(15) dispatch server is preserved this topology of networks network topology table of a detail record, and when client node adds or withdraws from this network (network topology structure changes), this network topology table also dynamic real-time is upgraded;
(16) in the scheduling process of dispatch server, the hierachy number of the client node that Media Stream is provided of each client node is all than the hierachy number of this client node little (thereby guaranteeing that dispatch server does not produce the loop network structure in the stream scheduling process, guarantee that each client node can obtain up-to-date media stream data from streaming media server directly or indirectly);
(19) in the scheduling process of dispatch server,, make it become the bottom client node with each lowermost end that can not externally provide the client node of Media Stream to be assigned to live network;
(20) have the processing of a plurality of channels under the living broadcast environment, can move a plurality of dispatch servers simultaneously, also can open different port on same dispatch server and support, each dispatch server or each port are all logically safeguarded network separately.
When new client node application added live network, the dispatching method of dispatch server specifically may further comprise the steps in above-mentioned (13) step:
(13.1) if when not having or having only other a client node in client node (as the client node among Fig. 1 5) the place subnet that request adds (can think client node that request adds not in this subnet), several (quantity can often) client nodes or streaming media server the give request client node conduct that add the candidate client node that Media Stream be provided of dispatch server beyond the client node that request adds distributes this subnet then, the client node that request adds is by relatively (as relatively and the delay between them, compare their historical information or the like), select several client nodes as the client node that Media Stream is provided, the client node that this moment, request added is operated in the P2P pattern;
(13.2) if the client node that request adds (as the client node among Fig. 13,5) client node more than 2 or 2 is arranged in the subnet of place, then can adopt P2P pattern (method as step (13.1) as described in), also can adopt multicast pattern to join in the whole live network;
(13.3) in step (13.2), if the client node (as the client node among Fig. 1 5) that request adds adopts multicast mode to add live network, then, determine the dispatching method that new client node adds according to whether existing other multicasts to receive client node in original this subnet;
(13.4) in step (13.3), if exist other multicasts to receive client node in original this subnet, then dispatch server will ask the address and the port numbers of the client node of adding to inform the all-multicast client node that this subnet is interior, and each multicast client node will ask the information of the client node of adding to join in each contented multicast list;
(13.5) in step (13.3), if do not exist other multicasts to receive client node in original this subnet, then dispatch server will be informed all client nodes that are operated under the P2P pattern in this subnet, make them enter multicast state, return step (13.4) afterwards.
In above-mentioned (14) step, when certain client node withdrawed from live network, the dispatching method of dispatch server specifically may further comprise the steps:
(14.1) if the subnet inside at the client node that withdraws from (as the client node among Fig. 2 2) place exists multicast to receive client node, and the client node that withdraws from itself is a multicast client node, then a multicast of the work of the client node that withdraws from all being transferred in this subnet receives on the client node, this multicast reception client node provides the client node of Media Stream to connect with all of the client node that withdraws from, thereby obtain all media stream datas, the request of the client node of all receiving medias streams of the client node that acceptance is simultaneously withdrawed from;
(14.2) if the subnet inside at the client node that withdraws from (as the client node among Fig. 2 3) place exists multicast to receive client node, and the client node that withdraws from itself is that a multicast receives client node, and then the client node that this is withdrawed from is deleted from the topology table of this network;
(14.3) if the subnet inside at the client node that withdraws from (as the client node among Fig. 3 4) place does not exist multicast to receive client node (can think that the client node of asking to add is not in this subnet), (the bottom client node of distribution generally is that hierachy number is bigger then to distribute a bottom client node to replace the client node that withdraws from, like this can be so that the hierachy number of whole multicast network remains on the less level, help reducing network delay, also should take into account factors such as distance, bandwidth simultaneously).
(14.4) if the client node that withdraws from is bottom client node (as the client node among Fig. 3 5), then the client node that this is withdrawed from is deleted from the topology table of this network;
In above-mentioned (15) step, topology table dynamic real-time method for updating specifically may further comprise the steps:
(15.1) each client node all must regularly send the survival signal to dispatch server, represent that oneself still is in the network, and in work, if certain client node does not send the survival signal in given time threshold (for example 120 seconds), think that then this client node has withdrawed from live network, and it is deleted from topology table, the dispatching method that withdraws from by client node is handled afterwards;
(15.2) in step (15.1), each client node sends time interval change at random in a given scope of survival signal to dispatch server, congested to prevent, require this scope within the timeout threshold that server is provided with (for example, 80~110 seconds, according to information setting time interval excursions such as cache size, delays);
(15.3) when the scale of multicast network during greater than the size threshold of setting (all being to adopt classification to monitor strategy at present), the method that adopts classification to monitor dynamically updates topology table, and the timeout threshold that general classification monitoring sets is in the timeout threshold than server little (as 20 seconds); The concrete grammar that this classification is monitored is: seed client node (as the client node among Fig. 11,2) is unique client node that directly sends the survival signal to dispatch server; All client nodes except that the seed client node (as the client node 3-5 among Fig. 1), directly (send the survival signals to client node 2 as the client node among Fig. 13 to client node that Media Stream is provided or multicast client node transmission survival signal, client node 4 sends the survival signal to client node 2 or 3, and client node 5 sends the survival signal to client node 4); If the client node of Media Stream or the multicast client node is not received certain client node in this time threshold survival signal are provided, directly notify dispatch server; Dispatch server will not send the client node of survival signal and will delete from topology table in this time threshold, the dispatching method that withdraws from by client node is handled afterwards.

Claims (4)

1, a kind of robust based on point-to-point stream scheduling method, comprise network-building method and dispatching method, it is characterized in that described network-building method may further comprise the steps:
(1) in live network, dispatch server is the client node that client node finds other, and the notification streams media server provides Media Stream to client node;
(2) streaming media server provides stable Media Stream to client node;
(3) client node receives from streaming media server or the Media Stream of the client node of Media Stream is provided, and buffered media stream, in this client node media stream, provides Media Stream by point-to-point mode to other client nodes;
(4) in the client node in step (3), if in the point-to-point transmission process, provide Media Stream to other client nodes, then this client node is called the client node that Media Stream is provided, otherwise this client node is called the bottom client node;
(5) in the client node in step (3), if in the point-to-point transmission process, receive the Media Stream that the client node of Media Stream is provided from streaming media server or reception, then this client node is called the client node of receiving media stream;
(6) in the client node in step (3), if be positioned at some subnets inside, and provide Media Stream to other client nodes, then this client node is called the multicast client node;
(7) in the client node in step (3), if be positioned at some subnets inside, and receive only Media Stream from other multicast client nodes in the same subnet, simultaneously not to subnet outside other clients Media Stream is provided, then this client node is called multicast reception client node;
(8) in the client node in step (3), can provide the client node of Media Stream, the client node and the multicast client node of receiving media stream simultaneously, but as long as it provides the client node of Media Stream, the client node and the multicast client node thrin of receiving media stream, it just can not be that multicast receives client node;
(9) in the client node in step (3), if asking to add live network, then this client node is called the client node that request adds;
(10) in the client node in step (3), if asking or withdrawing from by force live network, then this client node is called the client node that withdraws from;
(11) client node in the step (3), if directly obtain Media Stream from streaming media server, then this client node is called the seed client node;
(12) streaming media server is positioned at the 0th layer of this network; The seed client node is positioned at the 1st layer of this network; If certain client node provides the client node of Media Stream that Media Stream is provided by several, then its level of being arranged in network is that all provide the maximum level of client node of Media Stream to add one; If certain client node is to provide Media Stream by certain multicast client node, then its level is that the level of multicast client node adds one; The middle-level sequence number of network is to be used for estimating the delay that Media Stream produces in network;
Described dispatching method comprises the steps:
(13) when new client node application adds live network, must be connected with described dispatch server earlier, distributing by dispatch server provides the client node of Media Stream or multicast client node to provide Media Stream for it;
(14) when certain client node withdraws from live network, dispatch server will select a multicast to receive client node or the alternative client node that withdraws from of bottom client node according to the current network topology situation;
(15) dispatch server is preserved this topology of networks network topology table of a detail record, and when client node added or withdraws from this network, this network topology table also dynamic real-time was upgraded;
(16) in the scheduling process of dispatch server, the hierachy number of the client node that Media Stream is provided of each client node all hierachy number than this client node is little;
(19) in the scheduling process of dispatch server,, make it become the bottom client node with each lowermost end that can not externally provide the client node of Media Stream to be assigned to live network;
(20) have the processing of a plurality of channels under the living broadcast environment, can move a plurality of dispatch servers simultaneously, also can open different port on same dispatch server and support, each dispatch server or each port are all logically safeguarded network separately;
In described (14) step, when certain client node withdrawed from live network, the dispatching method of dispatch server specifically may further comprise the steps:
(14.1) if the subnet inside at the client node place of withdrawing from exists multicast to receive client node; And the client node that withdraws from itself is a multicast client node, then a multicast of the work of the client node that withdraws from all being transferred in this subnet receives on the client node, this multicast reception client node provides the client node of Media Stream to connect with all of the client node that withdraws from, thereby obtain all media stream datas, the request of the client node of all receiving medias streams of the client node that acceptance is simultaneously withdrawed from;
(14.2) if the subnet inside at the client node place of withdrawing from exists multicast to receive client node, and the client node that withdraws from itself is that a multicast receives client node, and then the client node that this is withdrawed from is deleted from the topology table of this network;
(14.3) if the subnet inside at the client node place of withdrawing from does not exist multicast to receive client node, then distribute a bottom client node to replace the client node that withdraws from;
(14.4) if the client node that withdraws from is the bottom client node, then the client node that this is withdrawed from is deleted from the topology table of this network.
2, the method for claim 1 is characterized in that, when new client node application added live network, the dispatching method of dispatch server specifically may further comprise the steps in described (13) step:
(13.1) if when not having or having only other a client node in the client node place subnet that request adds, then several client nodes or the streaming media server of dispatch server beyond the client node that request adds distributes this subnet gives the client node of asking to add as candidate's client node that Media Stream is provided, the client node that request adds is by comparing, select several client nodes as the client node that Media Stream is provided, the client node that this moment, request added is operated in the P2P pattern;
(13.2) if client node more than 2 or 2 is arranged in the client node place subnet that request adds, then can adopt the P2P pattern, also can adopt multicast pattern to join in the whole live network;
(13.3) in step (13.2),, then, determine the dispatching method that new client node adds according to whether existing other multicasts to receive client node in original this subnet if the client node that request adds adopts multicast mode to add live network;
(13.4) in step (13.3), if exist other multicasts to receive client node in original this subnet, then dispatch server will ask the address and the port numbers of the client node of adding to inform the all-multicast client node that this subnet is interior, and each multicast client node will ask the information of the client node of adding to join in each contented multicast list;
(13.5) in step (13.3), if do not exist other multicasts to receive client node in original this subnet, then dispatch server will be informed all client nodes that are operated under the P2P pattern in this subnet, make them enter multicast state, return step (13.4) afterwards.
3, the method for claim 1 is characterized in that, in described (15) step, topology table dynamic real-time method for updating specifically may further comprise the steps:
(15.1) each client node all must regularly send the survival signal to dispatch server, represent that oneself still is in the network, and in work, if certain client node does not send the survival signal in given time threshold, think that then this client node has withdrawed from live network, and it is deleted from topology table, the dispatching method that withdraws from by client node is handled afterwards;
(15.2) in step (15.1), each client node sends time interval change at random in a given scope of survival signal to dispatch server;
(15.3) when the scale of multicast network during greater than the size threshold set, the method that adopts classification to monitor dynamically updates topology table.
4, method as claimed in claim 3 is characterized in that, this classification monitor method specifically comprises: the seed client node is unique client node that directly sends the survival signal to dispatch server; All client nodes except that the seed client node directly send the survival signal to client node that Media Stream is provided or multicast client node; If the client node of Media Stream or the multicast client node is not received certain client node in this time threshold survival signal are provided, directly notify dispatch server; Dispatch server will not send the client node of survival signal and will delete from topology table in this time threshold, the dispatching method that withdraws from by client node is handled afterwards.
CNB2004100867111A 2004-10-29 2004-10-29 A robust point to point based stream scheduling method Expired - Fee Related CN1314250C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100867111A CN1314250C (en) 2004-10-29 2004-10-29 A robust point to point based stream scheduling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100867111A CN1314250C (en) 2004-10-29 2004-10-29 A robust point to point based stream scheduling method

Publications (2)

Publication Number Publication Date
CN1604569A CN1604569A (en) 2005-04-06
CN1314250C true CN1314250C (en) 2007-05-02

Family

ID=34667106

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100867111A Expired - Fee Related CN1314250C (en) 2004-10-29 2004-10-29 A robust point to point based stream scheduling method

Country Status (1)

Country Link
CN (1) CN1314250C (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009155801A1 (en) * 2008-06-27 2009-12-30 华为技术有限公司 Method, system and apparatus for providing media stream service

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005030073A1 (en) * 2005-06-27 2006-12-28 Airbus Deutschland Gmbh Communication data transmission system for passenger aircraft, has terminals interconnected with shunt connection so that data is transmitted from one to another terminal,if all terminals are interconnected and connection is interrupted
US7742485B2 (en) * 2005-07-29 2010-06-22 Roxbeam Media Network Corporation Distributed system for delivery of information via a digital network
CN100459520C (en) * 2005-12-23 2009-02-04 华为技术有限公司 System and method for sharing internal storage cache between multiple stream servers
CN100452876C (en) * 2006-02-24 2009-01-14 清华大学 Parallel transmission dispatching method for stream media data
CN1937553B (en) * 2006-05-11 2010-05-12 蓝汛网络科技(北京)有限公司 Reciprocal network data dispatching method based on flow media data frame
CN101068173B (en) * 2006-06-08 2010-11-03 腾讯科技(深圳)有限公司 Resource sharing method and system, and server
CN1897588B (en) * 2006-06-21 2010-06-16 北京北大方正电子有限公司 Mixed-mode network file transmitting method and system
CN100405773C (en) * 2006-07-14 2008-07-23 北京时越网络技术有限公司 Method for point-to-point content redistributing method based on content distributing network system
CN101282281B (en) * 2007-04-03 2011-03-30 华为技术有限公司 Medium distributing system and apparatus as well as flow medium play method
CN100461740C (en) 2007-06-05 2009-02-11 华为技术有限公司 Customer end node network topological structure method and stream media distributing system
CN101102312B (en) * 2007-06-11 2010-06-02 华为技术有限公司 A network communication data processing method, network communication system and client
CN101340359B (en) * 2007-07-04 2011-09-21 中兴通讯股份有限公司 Multicast and broadcast service scheduling method
CN101340556B (en) * 2007-07-05 2013-02-20 株式会社Ntt都科摩 Real world broadcasting system and method
CN101355468B (en) * 2007-07-23 2011-03-16 中国科学院声学研究所 Method for publishing P2P stream medium information
CN101090525B (en) * 2007-08-06 2012-05-23 中兴通讯股份有限公司 Multicast broadcast service dispatching method
CN101365128A (en) 2007-08-10 2009-02-11 中兴通讯股份有限公司 Peer-to-peer network system for synthetic video service
CN101159676B (en) * 2007-11-06 2010-09-08 深圳市迅雷网络技术有限公司 Data transmission method and system
CN101170506B (en) * 2007-12-06 2010-06-02 北京广视通达网络技术有限公司 A P2P stream media data dispatching method based on response drive
CN101262369B (en) * 2008-03-28 2011-05-11 华为技术有限公司 Master/slave realization method for dispatching server and dispatching server
CN101304405B (en) * 2008-04-30 2012-02-01 中山大学 Method for transmitting P2P flow medium based on SVC
CN101588468B (en) * 2008-05-20 2013-08-07 华为技术有限公司 Medium playing method, medium playing device and medium playing system based on P2P
CN101986611B (en) * 2010-11-30 2012-11-28 东南大学 Quick flow grouping method based on two-level cache
CN102118310B (en) * 2011-01-19 2013-07-03 华中科技大学 Hierarchical network coding streaming media multicast-based resource scheduling method
CN102740165B (en) * 2011-04-01 2015-07-15 中国电信股份有限公司 Peer-to-peer streaming media living broadcast system and data transmission method therefor
CN104468604A (en) * 2014-12-19 2015-03-25 北京奇虎科技有限公司 Data access method and device based on peer-to-peer network communication mode in local area network
CN105812848B (en) * 2014-12-31 2019-08-16 深圳Tcl新技术有限公司 TV network data capture method and server
CN106210776A (en) * 2015-05-07 2016-12-07 南宁富桂精密工业有限公司 Control equipment and the method controlling video request program thereof
CN104918065A (en) * 2015-05-25 2015-09-16 南京邮电大学 RTSP-based system and method for realizing mobile audio and video live broadcast
CN105979284B (en) * 2016-05-10 2019-07-19 杨�远 Mobile terminal video sharing method
CN108089934B (en) * 2016-11-22 2021-08-03 成都华为技术有限公司 Cluster management method and cluster server
CN110071942A (en) * 2019-05-20 2019-07-30 湖南康通电子股份有限公司 Networking live streaming stream distributing method, device and the storage medium of digit broadcasting system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001099374A2 (en) * 2000-06-22 2001-12-27 Apple Computer, Inc. Methods and apparatuses for transferring data
CN1406070A (en) * 2002-11-01 2003-03-26 清华大学 In-site program-requesting method based on real-time flow medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001099374A2 (en) * 2000-06-22 2001-12-27 Apple Computer, Inc. Methods and apparatuses for transferring data
CN1406070A (en) * 2002-11-01 2003-03-26 清华大学 In-site program-requesting method based on real-time flow medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
基于RTP/RTCP的流媒体服务器技术研究 赵进,叶梧,冯穗力,中国有线电视,第1卷 2004 *
基于RTP/RTCP的流媒体服务器技术研究 赵进,叶梧,冯穗力,中国有线电视,第1卷 2004;流媒体技术概述 邸春红,于淑玲,杜勇,沈阳医学院学报,第6卷第1期 2004 *
流媒体技术概述 邸春红,于淑玲,杜勇,沈阳医学院学报,第6卷第1期 2004 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009155801A1 (en) * 2008-06-27 2009-12-30 华为技术有限公司 Method, system and apparatus for providing media stream service
CN101616170B (en) * 2008-06-27 2012-09-19 华为技术有限公司 Method for supplying media stream service and system thereof

Also Published As

Publication number Publication date
CN1604569A (en) 2005-04-06

Similar Documents

Publication Publication Date Title
CN1314250C (en) A robust point to point based stream scheduling method
Liu et al. Opportunities and challenges of peer-to-peer internet video broadcast
US8064446B2 (en) Multicast with adaptive dual-state
CN1237755C (en) Subgroup multicasting in communications network
CN101068236A (en) Streaming media bit rate control method, system and equipment
CN101068336A (en) Coordinate connection stream media direct broadcasting system and device
CN1645787A (en) Method for realizing reliable grouped play in distributed vertical flor media system
CN1878143A (en) Multicast network deploying method and multicast network
CN1929638A (en) Management method for multicast members of wireless LAN IP multicast frame transmission
CN1709003A (en) Reporting for multi-user services in wireless networks
EP1708506A3 (en) Rapid media channel changing mechanism and access network node comprising same
CN1925403A (en) Network communication system and method realizing file downloading
CN101034960A (en) Implementation method for remote multi-person conference and corresponding system
CN1315312C (en) Method for large scale multimedia cut-in net gate
US9385877B2 (en) Multicast systems, methods, and computer program products
CN1689272A (en) Multicast data transfer
CN101272404A (en) Link selection method of P2P video living broadcast system data scheduling
CN1933413A (en) Group broadcasting member management method for radio local network IP group broadcasting frame transmission
CN101997891A (en) Method, device and system for allocating P2P media stream
US20130110981A1 (en) Peer-To-Peer Assist for Live Media Streaming
CN1933460A (en) Equipment, system and realizing method for wireless local network transmission group broadcasting frame
CN1764163A (en) Intelligent transmitting method and system for multicast message
US7483388B2 (en) Method and system for sending a multimedia stream in an IP multicast network
CN1592250A (en) Flow medium data multi-point transmission method
KR101252947B1 (en) Method and apparatus for push-pull hybrid streaming adaptive to video chunk distribution

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070502

Termination date: 20211029