CN101483565B - Stream data network transmission system and method - Google Patents

Stream data network transmission system and method Download PDF

Info

Publication number
CN101483565B
CN101483565B CN2008100028815A CN200810002881A CN101483565B CN 101483565 B CN101483565 B CN 101483565B CN 2008100028815 A CN2008100028815 A CN 2008100028815A CN 200810002881 A CN200810002881 A CN 200810002881A CN 101483565 B CN101483565 B CN 101483565B
Authority
CN
China
Prior art keywords
user
group
terminating machine
sharing
crossfire
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2008100028815A
Other languages
Chinese (zh)
Other versions
CN101483565A (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.)
Industrial Technology Research Institute ITRI
Original Assignee
Industrial Technology Research Institute ITRI
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 Industrial Technology Research Institute ITRI filed Critical Industrial Technology Research Institute ITRI
Priority to CN2008100028815A priority Critical patent/CN101483565B/en
Publication of CN101483565A publication Critical patent/CN101483565A/en
Application granted granted Critical
Publication of CN101483565B publication Critical patent/CN101483565B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention provides a stream data network transmission system and a method thereof. The system comprises a network, a streaming server, and first to nth cooperative-sharing-groups in sequence. A cooperative multicast relationship is established among all the terminal machines of the users in each cooperative-sharing-group. The streaming server provides multiple stream data programs and each stream data program is cut into stream sessions with one or multiple time lengths. The streaming server transmits the stream sessions one by one to a leader node of the first cooperative-sharing-group through the network. The leader node of the first cooperative-sharing-group transmits the currently received stream sessions to a user terminal machine of the same cooperative-sharing-group by a multicast mode, and after one time length, the previous stream session is relayed to the leader node of the next cooperative-sharing-group.

Description

The network transmission system of stream data and method
Technical field
The invention relates to network transmission system and the method for a kind of stream data (Stream Data), can be applicable to that of the same generation (Peer-to-Peer is P2P) in the communication environment of network.
Background technology
(Personal Video Recorder PVR) needed huge storage area to personal video record in the past, could allow the user watch at any time or video program.The for example networked personal video record service of U.S. Patent Publication No. 2005/0005300 exposure, on network, build and put many video recording servers, form huge network video machine and directly serve each user, satisfy the demand that the user watches at any time or records a video.The technology of the distribution multi-medium data that discloses as U.S. Patent Publication No. 2005/0183120 is set up a server on network in addition, accepts customer requirement, and good some program of video recording also offers the client in set period.The server of these client/servers becomes the usefulness bottleneck easily.The service provider needs to dispose more powerful or more server with user's increase.
Recently, utilize network of the same generation to share archives, network of the same generation becomes a huge sharing storage space.For example, the P2Cast technology provides with selecting Video service with the repairing between of the same generation (Patching), and the user is divided into several groups according to the time that adds, and is close with its joining day of user of a group.Each group forms the tree (MulticastTree) that multicasts separately, and the crossfire server can be served the root node (Root Node) of each tree that multicasts.User in the group can coordinate mutually, yet, be independently between group and the group.The discrepancy of P2VoD technology and P2Cast technology is can to coordinate mutually between group and the group, and first group of filmstrip of watching watches can for after a while second crowd user.In other words, whole users of I group serve whole users of I+1 layer.Yet, when the user's number difference between group and the group is excessive, has a lot of users and can't obtain service.And when most of users add first group time, the burden of server can be very big.
Directly crossfire (Direct Stream) technology is based on the P2Cast technology, but many permission users use the VCR function, and he changes playing progress rate by adding the different trees that multicasts.Yet, of the same generation as Fig. 1 with the example that selects the crossfire service technology, except crossfire server (Streaming Server) 110, also need one to several catalogue servers (Directory Server) 120 to write down the state of each node in the network, as watch progress, buffer size, the network address, service ability etc.(VideoCassette Recorder, VCR) changing function playing progress rate then provide filmstrip to this user 132 by another progress and parent node (Parent Node) 131 that he is similar when user 132 operation videocorders.The task of catalogue server is found out qualified parent node exactly.Though directly Video Streaming can alleviate the burden of crossfire server, the usefulness of catalogue server or number can increase and increase along with the user, will become the usefulness bottleneck, and cost also can increase.
Adopt the Web TV software of technology of the same generation at present, as PPLive, PPStream, AntTV etc., do not support VoD system and VCR function, the progress unanimity that each user's playing progress rate all can only follow server broadcasting, that is to say, watching the users of certain program, the playing progress rate of same time point is the same.
Summary of the invention
The enforcement example of this exposure can provide a kind of network transmission system and method for stream data, realizes the function of personal video record service.
Implement in the example one, this exposure can provide a kind of network transmission system of stream data.But this system's packet network, crossfire server and first group (Cooperative-SharingGroup) of sharing to the group that n helps each other and shares that helps each other in regular turn.Each group of sharing of helping each other is that the terminating machine by several users forms, and wherein at least one user's terminating machine is the leader node (LeaderNode) of this group of sharing of helping each other.Set up a kind of relation of multicasting of working in coordination in each group of sharing that helps each other between all users' the terminating machine.The crossfire server provides several stream data programs, and each stream data program is cut into one or the crossfire fragment of several time spans.The crossfire server is by this network, and crossfire fragment is one by one passed to first leader node of helping each other the group of sharing.The crossfire fragment that the leader node of each group of sharing of helping each other will receive at present multicasts to user's terminating machine of the same group of sharing of helping each other, after a time span, with the leader node of previous crossfire fragment relay to next group of sharing of helping each other.
Implement in the example at another, this exposure can provide a kind of network transfer method of stream data.The method can comprise: define a time length T S, and be unit with this time length T S, each stream data program in a plurality of stream datas is cut into several stream data fragments; Length T S is a unit with this time, defines first in regular turn to the group that n helps each other and shares, and each this help each other group of sharing is that terminating machine by several users forms; This group that helps each other and share to each selects at least one user's terminating machine from its several users' terminating machine, as the leader node of this group of sharing of helping each other; When each time span TS, transmit a crossfire fragment and give this first leader node of helping each other the group of sharing; And the leader node of each group of sharing of the helping each other crossfire fragment that will receive at present multicasts to user's terminating machine of the same group of sharing of helping each other, after a time span, with the leader node of last crossfire fragment relay to next group of sharing of helping each other.
In the enforcement example of this exposure, the crossfire server has a storage space, writes down the network address of the leader node of each group of sharing of helping each other.User's terminating machine can add this system, conversion playing progress rate and leave operations such as this system.The present networks transmission system can provide VCR functions such as user's F.F., rewinding, time-out.
Description of drawings
Below cooperate the detailed description of following accompanying drawing, embodiment, will on address other purpose of the present invention and advantage and be specified in after, wherein:
Fig. 1 is a schematic diagram, illustrates a kind of of the same generation with the example that selects the crossfire service technology.
Fig. 2 is an example schematic of the network transmission system of stream data, and consistent with some enforcement example in this exposure.
Fig. 3 is an exemplary flowchart, the How It Works of the network transmission system of key diagram 2, and consistent with some enforcement example in this exposure.
Fig. 4 is an exemplary flowchart, when a user terminating machine desire adding network transmission system is described, and the running in the network transmission system, and consistent with some enforcement example in this exposure.
Fig. 5 is an exemplary flowchart, illustrates that a user terminating machine desire changes when dialling degree of putting into, the running in the network transmission system, and consistent with some enforcement example in this exposure.
Fig. 6 is an exemplary flowchart, when the terminating machine that a user is described is desired to leave system, and the running in the network transmission system, and consistent with some enforcement example in this exposures.
Fig. 7 is an example schematic, and a stream data program discontinuous situation between the group of sharing of helping each other is described.
Embodiment
In the enforcement example of this exposure, provide a kind of network transmission system and method, stream data can be scattered to a large number of users of watching on line.This network transmission technology utilizes network of the same generation that the user is hived off, and for example the user is divided into different groups according to the progress of watching.And a Help Center is set, and just the crossfire server writes down the user in each group.When a user A desires the conversion progress, can inquire this crossfire server relevant for the playing progress rate of which group on the network now therewith user A wish that the progress of watching is similar.If this group exists, then the crossfire server return a user in this group the network address to user A, user A can add (Join) new group by the user who mentions in the reply content; If the group of no suitable progress existed on the network at that time, then serve this user A, and allow this user A become the representative of new group by the crossfire server.
This network transmission technology and from I group, select one to several representatives, relay stream data fragment and several representatives of giving I+1 group, then, I+1 group's user scatters mutually more voluntarily.So can allow I group user serve I+1 group user, alleviate the burden of crossfire server.When I group user and I+1 group's number of users differ too big, or a large amount of users adds the I group time, neither can the initiation problem.
Fig. 2 is an example schematic, and a kind of network transmission system of stream data is described, and consistent with some enforcement example in this exposure.This network transmission system can be applicable in the communication environment of network of the same generation, and the function of personal video record is provided.With reference to figure 2, network transmission system 200 comprises the group that network 215, crossfire server (stream server) 210 and crossfire server (stream server) the 210 n groups that define in regular turn help each other and share, the group that claims this n group to help each other to share be first help each other the group, second of sharing help each other the group of sharing ..., the group that helps each other and share with n.Each group of sharing of helping each other is that the terminating machine by several users forms, and wherein at least one user's terminating machine is the leader node of this group of sharing of helping each other.Set up a kind of relation of multicasting of working in coordination in each group of sharing that helps each other between all users' the terminating machine.The crossfire server provides several stream data programs, and each stream data program is cut into one or the crossfire fragment (session) of several time spans TS.Crossfire server 210 is by network 215, and crossfire fragment is one by one passed to first leader node of helping each other the group of sharing.The crossfire fragment that the leader node of each group of sharing of helping each other will receive at present multicasts to user's terminating machine of the same group of sharing of helping each other, behind a time span TS, with the leader node of old film section relay to next group of sharing of helping each other.
As shown in Figure 2, crossfire server 210 can provide the stream data program by a string flow database 221, or plays live show by a video tape recorder 222.For example, leave the stream data file of prerecording in stream data storehouse 221 earlier, and the video recording group programme content of putting can be provided by video tape recorder 222, the archives of program can be constant bitrate (Constant Bit Rate, CBR) coding or variable bit rate (Variable Bit Rate, VBR) coding etc.Be cut in the crossfire fragment of one or several time spans TS that form, each crossfire fragment is the stream data of row.Crossfire server 210 can pre-defined this time length T S, and length T S is a unit with this time, defines this n group that helps each other and share.
The relation of setting up between all users' the terminating machine of multicasting is described as follows.Supposing the system starting time T IniRegularly turn to 0, when several users' terminating machine will add network transmission system 200, this counted the station terminal chance and is dispensed in the several groups of different groups of sharing that help each other.For example, the group 230 that first helps each other shares is defined between the time span 0-TS, and the group 240 that second helps each other shares is defined between the time span TS-2TS, by that analogy.Terminating machine 231 be first add network transmission system 200 select to watch a certain program user's terminating machine, and the joining day between 0-TS, be dispensed on first group 230 that helps each other and share.If the joining day of other terminating machine as terminating machine 232 and 233, then is dispensed on the terminating machine 231 same groups 230 that help each other and share between 0-TS.According to this, terminating machine 241 is first and adds the terminating machine that network transmission system 200 selects to watch the user of a certain program between TS-2TS, be dispensed on second group 240 that helps each other and share, and terminating machine 242 and 243 is to add network transmission system 200 selections afterwards to watch the user's of a certain program terminating machine between TS-2TS.So, each group of sharing that helps each other can be made up of at least one user's terminating machine.
Crossfire server 210 is picked out at least one director (leader) in each helps each other the group of sharing, i.e. the leader node of this group of sharing of helping each other, and the network address of writing down each leader node.For example, terminating machine 231 is first leader nodes of helping each other the group 230 of sharing.Terminating machine 241 is second leader nodes of helping each other the group 240 of sharing.The crossfire server can have a storage space for 210 li, shown in label 210a, writes down the network address of leader node 231 and 241.
Crossfire server 210 transmits crossfire fragment one by one to first leader node 231 of helping each other the group of sharing, and the speed of this transmission can that is to say more than or equal to the speed of movie, transmits at least one crossfire fragment in the TS chronomere.The leader node terminating machine of each group of sharing of helping each other is the crossfire fragment of receiving, is shared with other user of the same group of sharing of helping each other by network, and the leader node of next group of sharing of helping each other that sends it to.For example, crossfire server 210 transmits the first crossfire fragment of a time span TS and gives terminating machine 231 by network 215.Terminating machine 231 is shared with terminating machine 232 with each crossfire fragment by network after receiving the crossfire fragment, terminating machine 232 is shared with terminating machine 233 with each crossfire fragment by network.
When crossfire server 210 transmits the first crossfire fragment to behind the terminating machine 231, after having passed through time span TS, terminating machine 231 begins to accept the second new crossfire fragment, sends the first old crossfire fragment to second leader node 241 of helping each other the group 240 of sharing by network 215 simultaneously.After the leader node 241 of the group 240 that second helps each other shares is received the crossfire fragment of terminating machine 231, each crossfire fragment is shared with belongs to second terminating machine 242 and 243 of helping each other the group 240 of sharing.
So, the crossfire fragment that the leader node of each group of sharing of helping each other will be accepted at present multicasts to user's terminating machine of the same group of sharing of helping each other, behind a time span TS, with the leader node of old film section relay to next group of sharing of helping each other.The running behavior of the leader node of each group of sharing of helping each other is all identical with first the help each other leader node of the group of sharing.
For example, suppose that a film is cut into 100 stream data fragments, then crossfire server 210 need provide 50 crossfires following of worst case (worse case), is 1 crossfire under the best-case (best case).Because the burden of crossfire server is very light, builds the cost of putting high-grade server so can save.
Crossfire server 210 also can be accepted the inquiry of user's terminating machine, and for example, terminating machine 232 can pass through an inquiry message, and the time of the crossfire fragment desiring to watch is passed to crossfire server 210.The group that helps each other and share under user's terminating machine also can leave is added to the group that another is helped each other and shares, and for example, terminating machine 232 can leave first group that helps each other and share, and is added to second group that helps each other and share.In this exposure, will further specify in Fig. 5.
Hold above-mentionedly, Fig. 3 is an exemplary flowchart, and the How It Works of the network transmission system 200 of stream data is described, and with this exposure in some to implement example consistent.With reference to figure 3, in step 310, crossfire server 210 definition one time length T S, and be unit with this time length T S, each stream data program in a plurality of stream datas is cut into several stream data fragments.In step 320, length T S is a unit with this time, defines first in regular turn to the group that n helps each other and shares, and each this help each other group of sharing is that terminating machine by several users forms.In step 330, this group that helps each other and share to each selects at least one user's terminating machine from its several users' terminating machine, as the leader node of this group of sharing of helping each other.In step 340, when each time span, crossfire fragment of crossfire server transmission is to first leader node of helping each other the group of sharing.In step 350, the crossfire fragment that the leader node of each group of sharing of helping each other will receive at present multicasts to user's terminating machine of the same group of sharing of helping each other, after a time span, with the leader node of last crossfire fragment relay to next group of sharing of helping each other.
So 210 of crossfire servers of this exposure need to store the original stream datas of all programs, can not need buy more new storage area or increase frequency range in response to the increase of user's number.User's terminating machine also can not need to download whole substance film, and the user's of non-leader node terminating machine only needs to deposit the buffering area of the crossfire fragment of a time span TS.If during the user's of leader node terminating machine, because the crossfire fragment that previous time span need be received is passed to the leader node of next group of sharing of helping each other, so need have the buffering area of the crossfire fragment that can deposit two time spans.
Crossfire server 210 can adopt multiple transport protocols, RTP (Real-Time Transport Protocol for example, RTP), Hypertext Transport Protocol (Hypertext Transfer Protocol, HTTP), MMS (Multimedia Message Service) (Multimedia MessagingService, MMS), or make host-host protocol etc. by oneself, utilize the packet data of these agreements to transmit the leader node of the group that the crossfire fragment shares to helping each other, this leader node can scatter the crossfire fragment that receives to other node in the same group of sharing that helps each other, and the leader node of next group of sharing of helping each other.
The enforcement example of this exposure is except alleviating the burden of crossfire server, and user's end also can promptly be broadcast with choosing all programs, and also can provide the user to hold the function of VCR such as F.F., rewinding, time-out.User's end does not need to increase computer hardware, system dealer not to need to set up expensive server yet, just can serve huge viewer.
In network transmission system 200, the operation that user's terminating machine carries out can comprise as adding system, conversion playing progress rate and leave system etc.Below describe these operations in detail.
As described above, pre-define time span TS, and be that definable went out the several groups of groups that help each other and share in regular turn after unit cut into a plurality of crossfire fragments with a stream data program with this time length T S at the crossfire server.
Fig. 4 is an exemplary flowchart, when a user terminating machine desire adding network transmission system is described, and the running in the network transmission system 200, and consistent with some enforcement example in this exposure.With reference to figure 4, in step 410, the initial time that adds the user's who watches this stream data program terminating machine the earliest is defined as T IniIn step 420, suppose to have other user terminating machine adding to watch that the time of this stream data program is T, then crossfire server 210 is dispensed to ((T-T with the user's of this adding terminating machine Ini)/TS)+1 the group that helps each other and share, wherein, () represents the Gaussian integer mark.So it is similar to be dispensed on the program progress that the user's of the identical group of sharing of helping each other terminating machine watches, gap can overtime length T S.
Afterwards, crossfire server 210 just responds this user's terminating machine about ((T-T Ini)/TS)+1 the help each other network address of at least one leader node in the group of sharing.This user's terminating machine just can be to ((T-T Ini)/TS)+1 the leader node of the group of sharing of helping each other requires to add the group that this is helped each other and shares.
Add a certain helping each other during the group of sharing, the user's of the same group of sharing of helping each other terminating machine can be formed a kind of relation of multicasting of working in coordination.The foundation of this relation of multicasting can be by realizing as technology such as SpreadIt, Yoid, Narada, CoopNet, BiTos.
Broadcast program is recorded at the scene if system manufacturer provides video tape recorder, initiate user's terminating machine all can be added first group that helps each other and share, it is fashionable to allow user's terminating machine one add, the up-to-date picture that just can watch that video tape recorder is being recorded and transmit via the crossfire server.
When watching a stream data program, with the group 240 of sharing that helps each other of the group 230 and second of sharing that helps each other of first among Fig. 2 is example, if wherein a user terminating machine is wanted the conversion playing progress rate, for example rewinding (looking back old crossfire fragment) or when advancing to new fragment, crossfire server 210 can receive the change of these users' terminating machine and dial the demand of degree of putting into, and switches to the inquiry and the response of other group of sharing of helping each other.Fig. 5 is a schematic diagram, illustrates that this user's terminating machine desire changes when dialling degree of putting into, the running in the network transmission system, and consistent with some enforcement example in this exposure.
With reference to figure 5, when user's terminating machine 232 was watched a stream data program, user's terminating machine 232 was by inquiry message, with the time T of the crossfire fragment desiring to watch NewPass to crossfire server 210, with label 510 expressions.Crossfire server 210 calculates time T NewUnder the crossfire sheet in which help each other group of sharing dial and put, for example, the group 240 that second helps each other shares, and the network address of the leader node 241 of helping each other of returning that this group the put group (group 240 that second helps each other shares) of sharing gives user's terminating machine 232, with label 520 expressions.
Then, user's terminating machine 232 is informed to its parent node (this example help each other for first under it leader node 231 of the group 230 of sharing) will switch to the group (i.e. second group 240 that helps each other and share) that other is helped each other and shares, please not need to continue service by parent node 231, with label 530 expressions.
If user's terminating machine 232 also has the child node terminating machine of oneself, then user's terminating machine 232 will inform that oneself will switch to the group that other is helped each other and shares to this child node terminating machine, please this child node terminating machine removes to seek first other parent node of helping each other in the group 230 of sharing.For example, user's terminating machine 232 is informed to child node terminating machine 233 will switch to the group that other is helped each other and shares, and please remove to seek other parent node by child node terminating machine 233, with label 540 expressions.
Then, user's terminating machine 232 sends adding information to second leader node 241 of helping each other the group 240 of sharing that desire adds, with label 550 expressions.If user's terminating machine 232 is leader nodes, then user's terminating machine 232 notice crossfire servers 210 remove to select another leader node.User's terminating machine 232 adds second and helps each other after the group 240 of sharing the crossfire fragment of beginning time of reception Tnew.
If user's terminating machine rewinding or be fast-forward to empty helping each other during the group of sharing, the terminating machine of then directly serving this user by the crossfire server, and this user's terminating machine becomes the leader node of the group that helping each other of this sky share.If what the user watched is the live show that video tape recorder provides, then the progress of F.F. cannot surpass the up-to-date progress that video tape recorder can provide.
Fig. 6 is an exemplary flowchart, when the terminating machine that a user is described is desired to leave system, and the running in the network transmission system 200, and consistent with some enforcement example in this exposures.With reference to figure 6, in step 610, crossfire server 210 checks whether the user's who leaves terminating machine is a leader node.Be, then shown in step 611, crossfire server 210 is selected a new leader node, for example, select with the leaver with group and the ability node node that assumes the leadership preferably.And shown in step 612, notify the child node of this user's who leaves terminating machine to remove to seek suitable parent node in addition.
If during the non-leader node of the user's who leaves terminating machine, parent node and child node leave message in the group of sharing that helps each other under the user's who then leaves terminating machine is informed are shown in step 621.Parent node stops to serve this user's who leaves terminating machine, and child node is sought the parent node that is fit in addition, shown in step 622.
For the terminating machine of avoiding the user leaves system in improper mode, for example: network outage, power interruptions, user's positive closing application program etc.Each user's terminating machine can periodically be surveyed its parent node and child node at ordinary times, also exists to determine them.If find that child node has not existed, then do not continue to serve this child node.If find that parent node has not existed, then look for suitable parent node in addition.
When user's terminating machine will suspend (pause) playing progress rate, the playing progress rate when remembeing to suspend.Because interval, stream data originally continues to be downloaded, so wait until when user's terminating machine is pressed play button once again the progress in the time of will being back to previous the time-out with aforementioned rewind functions (promptly changing the wherein a kind of of playing progress rate).The group that helps each other and share under this user's terminating machine can break away from present, other node that also can continue to help is accepted and the relay data.
When user's terminating machine adds system or change when dialling degree of putting into or the system of leaving and adding system again again, if user's terminating machine is added to the empty group that helps each other and share, then directly serve this user's terminating machine, and allow this user's terminating machine become the leader node of a new group of sharing of helping each other by the crossfire server.
When a stream data program more not popular, the user who clicks more after a little while, help each other and between the group of sharing discontinuous situation may take place, shown in the example of Fig. 7, group that the 3rd helps each other shares 750 forms later, and in the buffering area of the leader node terminating machine 741 of previous 740 li of the groups of sharing of helping each other, and has not had the crossfire fragment of beginning, therefore helping each other the group 750 of sharing must be by the crossfire server 210 direct group 750 that help each other and share that serve, shown in label 750a.So, network transmission system 200 in the worst case, when just to be numbered group that helping each other of even number share all be empty, as long as crossfire server 210 provides the load of 1/2* (D/TS) bar crossfire, wherein D is the time span of a stream data program, that is to say that this stream data program is cut into D/TS crossfire fragment.For example, if a film is cut into 100 crossfire fragments, then the crossfire server of this exposure need only provide 50 crossfires in the worst case, is 1 crossfire under the best situation.So in the worst case, the burden of the crossfire server of this exposure is also very light.
In sum, in the enforcement example of this exposure, first the help each other n of group to the that shares that the crossfire server defines in regular turn helps each other in the group of sharing, the crossfire fragment that the leader node of each group of sharing of helping each other will receive at present multicasts to user's terminating machine of the same group of sharing of helping each other, after a time span, with the leader node of previous crossfire fragment relay to next group of sharing of helping each other.The program that all crossfire servers provide all can promptly be broadcast with choosing, and the equipment that provides VCR functions such as user's F.F., rewinding, time-out, user to watch program only needs a spot of memory space.The user need not buy more any hardware, and system dealer also need not set up expensive server.Also can support the program prerecorded and the program of live play, the archives of program can be CBR coding or VBR coding.
Only, above-described, only be enforcement example of the present invention, when not limiting scope of the invention process according to this.Be that every equalization of being done according to claim scope of the present invention changes and modifies, all should still belong in the scope that claim of the present invention contains.

Claims (20)

1. the network transmission system of a stream data is characterized in that, this system comprises:
Network;
The crossfire server provides several stream data programs, and each this stream data program is cut into one or the crossfire fragment of several time spans;
Receive specific stream data program in regular turn first to group that n helps each other and shares, n is a positive integer, each this help each other group of sharing is that terminating machine by several users forms, one of them user's terminating machine is the help each other leader node of the group of sharing of this group, set up a kind of relation of multicasting of working in coordination between all users' the terminating machine in each this group of sharing that helps each other, wherein the terminating machine of the user in the individual group of sharing that helps each other of k is the described specific stream data program of request in a time period, the terminating machine of this time period than the user of first cooperative groups arrives k doubly to (k-1) that asks late predetermined amount of time the first time of this specific stream data program, wherein 1≤k≤n;
Wherein, this crossfire server is by this network, give this first leader node of helping each other the group of sharing with crossfire fragment delivery one by one, each this help each other crossfire fragment that the leader node of the group of sharing will receive at present multicasts to user's terminating machine of the same group of sharing of helping each other, after a preset time length, with the leader node of previous crossfire fragment relay to next group of sharing of helping each other.
2. the network transmission system of stream data as claimed in claim 1 is characterized in that, wherein each of being undertaken by user's terminating machine is operating as the wherein a kind of operation that adds this system, conversion playing progress rate and leave this system.
3. the network transmission system of stream data as claimed in claim 1 is characterized in that, wherein this crossfire server has a storage space, writes down each this help each other network address of leader node of the group of sharing.
4. the network transmission system of stream data as claimed in claim 1 is characterized in that, wherein this crossfire server transmits the speed of the speed of crossfire fragment more than or equal to movie.
5. the network transmission system of stream data as claimed in claim 1 is characterized in that, wherein this crossfire server has the original stream data that a buffering area is deposited these several programs.
6. the network transmission system of stream data as claimed in claim 1, it is characterized in that, wherein each this help each other leader node of the group of sharing has the crossfire fragment that a buffering area is deposited two time spans, each user's of non-leader node terminating machine have another buffering area deposit one should scheduled time length the crossfire fragment.
7. the network transmission system of stream data as claimed in claim 1 is characterized in that, wherein this crossfire server is a unit with this preset time length, define this in regular turn first to group that n helps each other and shares.
8. the network transmission system of stream data as claimed in claim 2, it is characterized in that, wherein when a user terminating machine adds the operation of system, this crossfire server responds the network address of the leader node in the group of sharing that helps each other that this user's terminating machine will add.
9. the network transmission system of stream data as claimed in claim 2, it is characterized in that, wherein when a user terminating machine changes the operation of playing progress rate, the demand of degree of putting into is dialled in the change that this crossfire server receives this user's terminating machine, and switches to the inquiry and the response of other group of sharing of helping each other.
10. the network transmission system of stream data as claimed in claim 2, it is characterized in that, wherein when the terminating machine of the user of the leader node of a group in described n the group of sharing that helps each other leaves described system, other user of this crossfire server in this group of sharing that helps each other the terminating machine, the terminating machine of picking out another user is as one of this group of sharing of helping each other new leader node.
11. the network transmission system of stream data as claimed in claim 2, it is characterized in that, wherein add system or change when dialling degree of putting into or the system of leaving and adding system again again when a user terminating machine, if this user's terminating machine is added to the empty group that helps each other and share, then this crossfire server is directly served this user's terminating machine, and allows this user's terminating machine become the leader node of a new group of sharing of helping each other.
12. the network transfer method of a stream data is applied to a network transmission system, it is characterized in that, this method comprises:
Define a time length T S, and be unit, each stream data program in a plurality of stream datas is cut into several stream data fragments with this time span;
With this time span is unit, and n the group of sharing that helps each other that receives specific stream data program is defined as first in regular turn to the group that n helps each other and shares, and each this help each other group of sharing is that terminating machine by several users forms;
This group that helps each other and share to each selects a user terminating machine from its several users' terminating machine, as the leader node of this group of sharing of helping each other;
When each time span, transmit a crossfire fragment and give this first leader node of helping each other the group of sharing; And
Each this help each other crossfire fragment that the leader node of the group of sharing will receive at present multicasts to user's terminating machine of the same group of sharing of helping each other, after a time span, with the leader node of last crossfire fragment relay to next group of sharing of helping each other;
Wherein the terminating machine of the user in the individual group of sharing that helps each other of k is asked described specific flow data program in a time period, the terminating machine of this time period than the user of first cooperative groups arrives k doubly to (k-1) that asks late TS the first time of this specific stream data program, wherein 1≤k≤n.
13. the network transfer method of stream data as claimed in claim 12, it is characterized in that, this method comprises also that a user terminating machine adds, a user terminating machine conversion playing progress rate and a user's terminating machine leaves the running of this network transmission system and any combination of aforementioned running.
14. the network transfer method of stream data as claimed in claim 13 is characterized in that, wherein this user's of this adding terminating machine also comprises:
The initial time that adds this user's who watches a stream data program terminating machine the earliest is defined as T IniAnd
The user's of this user and follow-up this network transmission system of adding thereof terminating machine is dispensed to ((T-T Ini)/TS)+1 the group that helps each other and share, () represents the Gaussian integer mark, and T is the time that follow-up adding other user's of watching this stream data program terminating machine adds.
15. the network transfer method of stream data as claimed in claim 13 is characterized in that, wherein this user's terminating machine change group degree of putting into also comprises:
This user's terminating machine is by an inquiry message, with the time T of the crossfire fragment desiring to watch NewPass to a crossfire server;
This crossfire server is calculated this time T NewUnder the crossfire fragment in which help each other group of sharing play, and this user's terminating machine is given in the network address of the leader node of helping each other of returning that this plays group of sharing;
This user's terminating machine informs that the described user's of parent node of the group that helping each other of script place shared terminating machine will switch to the group that another is helped each other and shares; And
This user's terminating machine sends an adding information to the leader node of the group that this helping each other of playing is shared.
16. the network transfer method of stream data as claimed in claim 15, it is characterized in that, wherein have when linking at least one child node terminating machine when this user's terminating machine, this user's terminating machine is informed that each this child node terminal goes to seek and is helped each other the terminating machine of other user in the group of sharing originally as parent node.
17. the network transfer method of stream data as claimed in claim 15, it is characterized in that, wherein when this user's terminating machine be that this crossfire server of this user's terminating machine request removes to select another leader node for the group of sharing that originally helps each other when originally helping each other a leader node of the group of sharing.
18. the network transfer method of stream data as claimed in claim 13, it is characterized in that, wherein when degree of putting into is dialled in the change of this user's terminating machine to group that helping each other of a sky shared, this crossfire server is directly served this user's terminating machine, and allows this user's terminating machine become a leader node of the group that helping each other of this sky share.
19. the network transfer method of stream data as claimed in claim 13 is characterized in that, wherein this user's terminating machine leaves this network transmission system and also comprises:
Whether the terminating machine of checking this user is a leader node;
Be to pick out a new leader node and notify all child nodes of this user's terminating machine to remove to seek suitable parent node in addition; And
Words that no, the parent node of this user's of information notification that this user's terminating machine is left terminating machine and the child node of binding is arranged.
20. the network transfer method of stream data as claimed in claim 19, it is characterized in that, wherein this user's who leaves terminating machine is non-when the leader node, this method comprises that also this parent node stops to serve this user's who leaves terminating machine, and this has the child node of binding to seek suitable parent node in addition.
CN2008100028815A 2008-01-11 2008-01-11 Stream data network transmission system and method Active CN101483565B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100028815A CN101483565B (en) 2008-01-11 2008-01-11 Stream data network transmission system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100028815A CN101483565B (en) 2008-01-11 2008-01-11 Stream data network transmission system and method

Publications (2)

Publication Number Publication Date
CN101483565A CN101483565A (en) 2009-07-15
CN101483565B true CN101483565B (en) 2011-04-27

Family

ID=40880507

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100028815A Active CN101483565B (en) 2008-01-11 2008-01-11 Stream data network transmission system and method

Country Status (1)

Country Link
CN (1) CN101483565B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI415427B (en) * 2010-11-04 2013-11-11 Ind Tech Res Inst System and method for peer-to-peer live streaming
US9282072B1 (en) * 2014-11-14 2016-03-08 Quanta Computer Inc. Serial output redirection using HTTP
CN104618518B (en) * 2015-03-12 2017-10-03 中国科学技术大学苏州研究院 Coordinated files transmission method in multiple terminals under group application scene

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377972B1 (en) * 1999-01-19 2002-04-23 Lucent Technologies Inc. High quality streaming multimedia
CN1645803A (en) * 2005-03-02 2005-07-27 讯流科技股份有限公司 Series flow broadcasting system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377972B1 (en) * 1999-01-19 2002-04-23 Lucent Technologies Inc. High quality streaming multimedia
CN1645803A (en) * 2005-03-02 2005-07-27 讯流科技股份有限公司 Series flow broadcasting system

Also Published As

Publication number Publication date
CN101483565A (en) 2009-07-15

Similar Documents

Publication Publication Date Title
JP4860640B2 (en) Stream data network transmission system and method
CN101009812B (en) Network based instant replay and time shifted playback
CN101849415B (en) Load control for a television distribution system
US8533765B2 (en) On demand system and method using dynamic broadcast scheduling
JP4934650B2 (en) Instant media on demand
EP2314038B1 (en) System and method for ingesting media content in a peer-to-peer network
RU2526744C2 (en) Method for network-wide storage and distribution of data and system for internet protocol television
Ullah et al. A survey and synthesis of user behavior measurements in P2P streaming systems
US20020124262A1 (en) Network based replay portal
KR101235814B1 (en) Reception of audio-visual content addressed to several devices
US11044497B1 (en) Method of unified video switching and advertisement splicing within consumer devices
US9294731B2 (en) Dynamic VOD channel allocation based on viewer demand
EP2979423B1 (en) Content distribution system and method
CN1937741A (en) Device for recording a broadcasted program
EP3014808B1 (en) Content distribution system and method
Almeroth et al. The interactive multimedia jukebox (IMJ): A new paradigm for the on-demand delivery of audio/video
CN102244808A (en) System and method for efficient delivery of data content
Almeroth et al. An alternative paradigm for scalable on-demand applications: Evaluating and deploying the interactive multimedia jukebox
CN101483565B (en) Stream data network transmission system and method
US8495689B2 (en) System and method for partial push video on demand
Liu et al. Peer-assisted time-shifted streaming systems: Design and promises
EP3014892A1 (en) Content distribution system and method
O’Neill Peer Assisted Multicast Streaming for On-Demand Applications
JP2012105341A (en) On-demand system and method using dynamic broadcast scheduling

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