1. Field of the Invention
The present invention relates to a system of performing broadcasting communications using packet communications, and more specifically to an information processing device with the load on the transmission side reduced.
2. Description of the Related Art
Conventionally, broadcasting communications for transmitting data from a transmitter to a plurality of receivers have been widely used. A TV broadcast is an example of broadcasting communications using an electronic wave.
Recently, there is an increasing demand for broadcasting communications using packet communications which are basically one to one communications of a transmitter 101 and a receiver 103. The transmission of an image and voice using a streaming operation through Internet is an example of the communications.
The technology of performing the broadcasting communications through a packet communications network such as Internet can be a system using a multicast and a unicast.
FIG. 2 shows the broadcasting communications through a multicast. In the multicast communications, a transmitter 201 transmits a packet having a predetermined multicast address, and a network 202 transmits the packet by copying and transmitting the packet according to a predetermined path information, thereby distributing data to a plurality of receivers (203, 204). A receiver can receive a packet by entering a receiver group of multicast addresses of a network 2302.
FIG. 3 shows the broadcasting communications using a unicast. Since the unicast communications are one to one packet communications, a transmitter 301 can realize the broadcasting communications by transmitting the same data to all receivers (303, 304).
The systems using the above mentioned multicast and unicast have respective merits and demerits. FIG. 4 collectively shows the comparison between a multicast and a unicast in the broadcasting communications. Relating to the load on the transmitter side, the transmitter transmits a packet only once to a multicast address in the multicast system while a packet is transmitted to each receiver in the unicast system. Therefore, the load on the transmitter side increases proportional to the number of receivers. However, the three items, that is, address management, network control, and control on the receiver side, become complicated in the multicast system while they are still simple in the unicast system because they are the same as one to one packet communications.
Because of the above mentioned merits and demerits of these systems, both systems are practically used as necessary. Which is to be selected depends on the target, but the multicast system requires an address and routing management while the unicast system is used more widely because it requires no special management. The image/voice broadcast frequently referred to as Webcast in Internet uses a unicast system.
To realize the broadcasting communications through packet communications, the following processes 1) through 3) are basically required. 1) receiving a transmission request from a receiver (receiver management), 2) preparing transmission data (preparing data), 3) transmitting data according to communications procedure such that a different communications condition can be satisfied for each receiver (transmitting process).
In the conventional system, all these processes 1) through 3) are performed by a transmission server 501 which is an information processing device on the transmitter side through processor control (FIG. 5). Especially, in the broadcasting communications through a unicast, data corresponding to the number of receivers is to be transmitted, thereby increasing the load of each process by a processor 502.
Furthermore, relating to 2) preparing data, the data portion occupying the majority of a packet is the same regardless of a receiver in the broadcasting communications. However, since a packet header, etc. is different, all packet data has to be transferred to each receiver. Therefore, a different packet is generated in memory 503 of a transmission server 501 for each receiver, and is transferred to NICs (corresponding to a network interface card, and a network adapter) 505 and 506 connected to an I/O bus 504. As a result, there is the problem that the load of the I/O bus 504 increases.
Furthermore, relating to 3) transmitting process, since the transmitting process is a real time process, the real time process cannot be guaranteed when the number of simultaneously connected receivers increases, thereby failing in obtaining predetermined transmission quality. That is, to adjust the transmission quality, at least the following a) through c) are typical examples of parameters to be changed for each receiver. Accordingly, it is difficult to individually control the receivers when the number of simultaneously connected receivers increases.
a) A parameter to be amended according to the network address of a receiver and the communications procedure:
A parameter such as a network address of a receiver, an available protocol, etc. to be transmitted to a receiver.
b) A data length to be transferred in one packet:
An MTU (maximum transfer unit) determines the length of one packet. Since the length of a packet which can be efficiently transferred depends on the network to which a receiver is connected, the transmission quality can be improved by transmitting a packet of the optimum data length.
c) Smoothing the speed (rate) of transmitting a packet:
It is desired that packets can be transmitted at the same transfer speed if possible. However, the rate of the network on the transmission server side is normally high while the rate of the network on the receiver side is low in most cases. Therefore, if the transmission server intermittently transmits data, the receiver may not be able to receive the data transmitted collectively and intermittently. The discard of data due to the congestion can occur in a network from a transmission server to a receiver. Therefore, smoothly transmitting data from the transmission server can improve the transmission quality.