Background technology
Portable terminals such as mobile phone come transfer files also very general nowadays by people's extensive use by portable terminal, and the user often wishes to send the data in the own mobile phone to other user.Traditional content transmits and adopts man-to-man load mode, and promptly user side both sides one end is initiated the request of transmitting, and the other end is agreed to receive, and promptly connects on network, realizes that content transmits.Under this content load mode, transmit leg sends identical file if need to a plurality of recipients, can only initiate request to a plurality of recipients, connect respectively with a plurality of recipients, transmit content for a plurality of recipients independently, and because transmitting terminal wireless access bandwidth limits to some extent, transmission efficiency is very low.
The IP multicasting technology can be realized the load mode of one-to-many at present, but owing to existing network is not supported, so do not have exploitativeness at present.
Peer-to-peer network (Peer to Peer is called for short P2P) technology, this is a kind of thought of network configuration.It with present network in the essential distinction of client/server (Client/Server) structure of dominate be not have Centroid (or central server) in the whole network configuration.In the P2P structure, each node (peer) has the function of three aspects such as information consumer, informant and information communication mostly simultaneously.The rights and duties that each node had in the P2P network all are reciprocity.But existing peer-to-peer network all only is used for the network download shared data, does not initiatively transmit data simultaneously to the multi-user and be applied to single user.And, because the restriction of bandwidth, transmitting terminal is difficult to data are transmitted to many people simultaneously: when transmitting terminal is portable terminal, because portable terminal needs at first to communicate by wireless signal and base station, then just can access network, its radio channel resource is limited, can't satisfy communicating to connect between a large amount of portable terminals, and is subjected to the influence of the frequent mobility of communicating pair terminal, wireless signal and Network Transmission situation; When terminal during with wired mode access network, still there is similar problem, for example the user by dialling up on the telephone because its access bandwidth is limited, is difficult to the data in its communication terminal are transmitted simultaneously to many people.
Summary of the invention
The objective of the invention is to provides a kind of data transferring method at the existing in prior technology defective, effectively avoids the transmitting terminal bandwidth bottleneck, realizes that single user transmits file or content of multimedia simultaneously in real time to a plurality of users.
To achieve these goals, the invention provides a kind of data transferring method, store the data slot index information in the network, this data slot index information comprises the address information of data slot sign and this data slot place terminal at least, this method comprises the steps: that the data that transmitting terminal will need to transmit are divided into a plurality of data slots, initiates data transmission requests to a plurality of receiving terminals; Receiving terminal transmits the request response to the transmitting terminal return data, at each data slot, determine to store the terminal of this data slot according to the data slot index information, analyze the current Network Transmission cost of obtaining this data slot, and the lower data source of selection Network Transmission cost, burst obtains data, and described data source is transmitting terminal or other receiving terminals that obtained data slot.
In data transfer procedure, transmitting terminal and/or receiving terminal are preserved the data slot index information, perhaps the data slot index information are sent to the index server that is provided with separately in the network, preserve the data slot index information by this index server.
In order to prevent the restriction of bandwidth, transmitting terminal is after receiving first data transmission requests response, and the data transmission that needs are transmitted is saved to the data delivery service device; After transmitting terminal receives the request of obtaining data slot, this is obtained the data slot identification information that carries in the request of data slot and the address of receiving terminal is sent to the data delivery service device, send data slot to receiving terminal by the data delivery service device.The form of data with cached copies can be stored on the data delivery service device, behind DTD, the data delivery service device is deleted this copy.
To achieve these goals, the present invention also provides a kind of data transmission system, store the data slot index information in the described system, this data slot index information comprises the address information of data slot sign and this data slot place terminal at least, and described system comprises:
Transmitting terminal is used for the data that needs transmit are divided into a plurality of data slots, initiates data transmission requests to a plurality of receiving terminals;
Receiving terminal, be used for transmitting the request response to the transmitting terminal return data, and at each data slot, determine to store the terminal of this data slot according to the data slot index information, analyze the current Network Transmission cost of obtaining this data slot, and select the lower data source of Network Transmission cost, and burst obtains data, and described data source is transmitting terminal or other receiving terminals that obtained data slot.
Described system also can comprise the data delivery service device, be used to preserve the cached copies that transmits data, and the data slot identification information and the receiving terminal address that send according to transmitting terminal sends data slot to receiving terminal.
The present invention has realized that single user transmits file or content of multimedia simultaneously in real time to a plurality of users; Can effectively avoid the transmitting terminal bandwidth bottleneck, can maximal efficiency utilize the existing network bandwidth.
Below by drawings and Examples, technical scheme of the present invention is described in further detail.
Embodiment
As shown in Figure 1, for using data communication system one example structure schematic diagram of the present invention.Transmitting terminal E1 initiates data transmission requests to receiving terminal E2, E3, E4, and receiving terminal E2, E3, E4 are after having obtained partial data, and beginning is to providing data delivery service except that other receiving terminal self.Transmitting terminal and receiving terminal both can be portable terminals, also can be the notebooks that inserts the Internet by wireless or wired mode, PC etc.In system shown in Figure 1, transmitting terminal E1 is a portable terminal, and receiving terminal E2, E4 are PC, and E3 is a portable terminal.
As shown in Figure 2, for data transferring method one embodiment flow chart of the present invention, comprise the steps:
Steps A 1, transmitting terminal are initiated data transmission requests to a plurality of receiving terminals;
Steps A 2, receiving terminal transmit the request response to the transmitting terminal return data, according to the data slot index information, select to obtain the data source of each data slot, and burst obtains data.
The data that transmitting terminal will need to transmit are divided into a plurality of data slots.When data transmitted beginning, transmitting terminal was the informant, and receiving terminal obtains data slot from transmitting terminal.Along with the carrying out that data transmit, some receiving terminals have obtained some data slots, just can be for other receiving terminal provide data slot, and at this moment, receiving terminal should obtain data from other terminal, provides data for other terminal again.When a receiving terminal has been received all data, but when other receiving terminal was not also finished data and transmitted, this terminal then continues provided required data for other terminal.
Store the data slot index information in the network, this data slot index information comprises the address information of data slot sign and this data slot place terminal at least.Receiving terminal is when obtaining data slot, can be earlier according to the data slot index information, which terminal storage judges has these data slots are arranged, to analyze the current Network Transmission cost of obtaining this data slot, to select the lower data source of Network Transmission cost to obtain data slot then.This data source both may be a transmitting terminal, also may be other receiving terminal.
The data slot index information can be kept in each terminal, also can transmit situation according to data by transmitting terminal and receiving terminal, the data slot index information is sent to the index server that is provided with separately in the network, preserves the data slot index information of whole network by this index server.Specifically can be referring to the storage and the acquisition methods of index information in the P2P transmission means in the prior art.
The effect that the unsteadiness logarithm of the restriction of bandwidth and access network reportedly send has bigger influence, especially for portable terminal.Therefore, can add a data delivery service device in network, the data that transmitting terminal will need to transmit are kept on this data delivery service device, send data by this server to receiving terminal.
As shown in Figure 3, be another example structure schematic diagram of data communication system of the present invention.Transmitting terminal E5 initiates data transmission requests to receiving terminal E6, E7, E8.Transmitting terminal E5 is cached to data trnascription on the data delivery service device E9.As receiving terminal E6, E7, E8 during to transmitting terminal E5 request msg, transmitting terminal E5 is with the address of receiving terminal and the data slot sign announcement server E9 of receiving terminal request, and E9 sends data slot to receiving terminal by server.After having obtained partial data, receiving terminal E6-E8 begins to providing data delivery service except that other receiving terminal self.Transmitting terminal and receiving terminal both can be portable terminals, also can be the notebooks that inserts the Internet by wireless or wired mode, PC etc.In system shown in Figure 3, transmitting terminal E5 and receiving terminal E8 are PC, and receiving terminal E6, E7 are portable terminal.
As shown in Figure 4, for another embodiment flow chart of data transferring method of the present invention, comprise the steps:
Step B1, transmitting terminal are initiated data transmission requests to a plurality of receiving terminals;
Step B2, receiving terminal transmit the request response to the transmitting terminal return data;
After step B3, transmitting terminal were received first data transmission requests response that receiving terminal returns, the data that needs are transmitted sent and are saved to the data delivery service device and preserve;
Step B4, receiving terminal obtain the data slot index information, analyze the current Network Transmission cost of obtaining data slot according to the data slot index information, select the low data source of Network Transmission cost to send the request of obtaining data slot; Data source comprises transmitting terminal and the receiving terminal that has obtained some data slots;
After step B5, transmitting terminal receive the request of obtaining data slot, the data slot identification information that carries in this request and the address of receiving terminal are sent to the data delivery service device, and the data delivery service device sends data slot according to data slot identification information and receiving terminal address to receiving terminal; After receiving terminal receives the request of obtaining data slot, direct address transmission data fragment according to data slot identification information that carries in this request and receiver section.
In the present embodiment, the data slot index information both can be kept in each terminal, also can transmit situation according to data by transmitting terminal and receiving terminal, the data slot index information is sent to the index server that is provided with separately in the network, preserves the data slot index information of whole network by this index server.In the present embodiment, the data fragments index information also can be kept in the data delivery service device.Receiving terminal can obtain the data slot index information from the data delivery service device by transmitting terminal, and is saved on the data delivery service device by the data slot index information that transmitting terminal has oneself; Receiving terminal also can be directly obtains and sends the data slot index information to the data delivery service device from the data delivery service device.
On the data delivery service device, the form storage that data can cached copies, behind DTD, the data delivery service device is deleted this copy.Can save the memory space of server like this, improve resource utilization.
The present invention has realized that single user transmits file or content of multimedia simultaneously in real time to a plurality of users; Can effectively avoid the transmitting terminal bandwidth bottleneck, can maximal efficiency utilize the existing network bandwidth.Utilize the present invention, the user can realize the net cast in the certain limit easily.
Should be noted that at last: above embodiment is only in order to illustrate that technical scheme of the present invention is not intended to limit; Although with reference to preferred embodiment the present invention is had been described in detail, those of ordinary skill in the field should be appreciated that still and can make amendment or the part technical characterictic is equal to replacement the specific embodiment of the present invention; And not breaking away from the spirit of technical solution of the present invention, it all should be encompassed in the middle of the technical scheme scope that the present invention asks for protection.