WO2002056549A1 - Dispositif de communication et procede de communication - Google Patents
Dispositif de communication et procede de communication Download PDFInfo
- Publication number
- WO2002056549A1 WO2002056549A1 PCT/JP2002/000181 JP0200181W WO02056549A1 WO 2002056549 A1 WO2002056549 A1 WO 2002056549A1 JP 0200181 W JP0200181 W JP 0200181W WO 02056549 A1 WO02056549 A1 WO 02056549A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- transmitted
- segment
- block
- information receiving
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
- H04L12/1868—Measures taken after transmission, e.g. acknowledgments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6125—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/637—Control signals issued by the client directed to the server or network components
- H04N21/6375—Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/64—Addressing
- H04N21/6405—Multicasting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17336—Handling of requests in head-ends
Definitions
- the present invention relates to a communication device and a communication method for transmitting and receiving information such as contents.
- the present invention relates to a communication device and a communication method that can be suitably used in a client-server communication system for transmitting information from a server device to a plurality of client devices.
- image data and image files have a much larger data volume than text files and the like.
- the processing capacity of the server device eg, the amount of data that can be transmitted at one time
- the processing capacity of the communication line eg, the amount of data that can be transmitted at one time.
- the server device divides information to be transmitted into blocks each having a predetermined data amount. Then, the server transmits the divided blocks to the client via a communication line.
- a broadcast (broadcast) method As a method of transmitting information, a broadcast (broadcast) method, a unicast (un-cast) method, and the like are known.
- the broadcast method is a method for transmitting information (eg, contents, files) to an unspecified number of parties connected to a network.
- information eg, contents, files
- a special address indicating the entire network is used as the address of the information transmission destination.
- All terminals connected to the network receive all information sent to the network. Each terminal takes in the received information if it is relevant to itself, and discards it if it is not relevant to itself.
- the broadcast method places a heavy burden on the network and is therefore used only for limited applications. For example, it is used when searching for a server device that holds setting information in order to automatically obtain setting information from a server device connected to a network.
- the setting information is parameters used for connecting to the server device.
- the setting information is used, for example, in a cable television (CATV) system.
- Cable television systems provide many channels.
- many cable television systems provide program channels.
- the program being broadcast on each channel is transmitted to this program channel. Therefore, the user can know the program being broadcast at that time by searching for the program channel.
- the setting information is similar to this program channel.
- the cable set-top box knows information about the server device such as model and location.
- the server device such as model and location.
- One server device provides only information of another server device, and uses a broadcast method.
- Other server devices provide data (images, audio files, or other useful data, etc.) and use the unicast method.
- the unicast method is a method of transmitting information to a specific party connected to a network.
- a specific destination address is used as the address of the information transmission destination.
- a terminal connected to a network receives only information whose destination address matches its own address.
- the method of transmitting information simultaneously to a specific group of terminal devices connected to the network is called a multicast method.
- This particular group is sometimes referred to as a sub-network in the sense that it is part of a network.
- the destination address of the information Address that indicates a specific group (subnetwork).
- information (specifically, a block obtained by dividing information) is transmitted from a server device to a client device.
- the demand method is used.
- the operation of transmitting information from the server device to the client device using the multicast, multicast, or near-on-demand method will be described below.
- a description will be given of a typical network such as a TCP / IP (Transmission Control Protocol / Internet Protocol) network.
- the structure and format of the information to be transmitted may be of any structure and format.
- the unicast method is a method in which information (content) is transmitted (distributed) from the server device to each client device individually. For example, when a plurality of client devices request transmission of the same information to one server device, the server device individually transmits the requested information to each client device that has requested the information transmission.
- a one-to-one TCP connection (logical communication path) is secured between the server device and the client device in order to transmit the information reliably.
- the server device divides the information to be transmitted into blocks of a predetermined size. Then, the server device transmits each block to each client device in order from the first block via the TCP connection secured for each client device.
- the server device sends each block to each client device in the order of XI, 2, X3 and X4. Send.
- retransmission processing is performed to transmit information reliably. For example, if the client device detects that an error has occurred in the received block, the client device retransmits the block in which the error has occurred to the server device. Request. Upon receiving the retransmission request from the client device, the server device retransmits the block requested to be retransmitted to the client device.
- a server device transmits information via a connection secured for each client device. For this reason, the server device may transmit a different block within a certain time zone. For example, when transmitting information composed of blocks X1 to X4, the server device transmits the blocks in the order of XI, X2, X3, and X4 to the client device requesting information transmission. Send to individually.
- the server device receives the block X4 for the client device (1), the block X3 for the client device (2), the block XI for the client device (3), and the client device ( In 4), the operation in the case where information is transmitted from the server device to the client device using the unicast method that may transmit the block X2 will be specifically described with reference to the sequence diagram shown in FIG.
- the client device (1) transmits a transmission request (delivery request) REQ 1 requesting transmission (distribution) of predetermined information to the server device.
- the server device establishes a communication path (connection) with the client device, and sequentially transmits the blocks XI to X4 obtained by dividing the requested information to the client device (1).
- Blocks X1-1 to 4-1 represent blocks X1 to X4 to be transmitted to the client device (1) (the client device (1) is specified as the transmission destination).
- the server device when the server device receives the transmission request REQ 2 from the client device (2) while transmitting information to the client device (1), the server device also starts transmitting information to the client device (2). For example, when the server device receives the transmission request REQ 2 from the client device (2) while transmitting the block X 3 (X 3-1) to the client device (1), the server device in the following time zone: Then, block X4 (X4-1) is transmitted to the client device (1), and block XI (XI-2) is transmitted to the client device (2). As described above, in the unicast method, the server device transmits each block for each client device.
- the number of transmission requests (delivery requests) (especially the number within the time required to complete the transmission of all blocks) increases, the number of blocks that the server device must transmit within a predetermined time period Increase.
- server During a certain time period, the device blocks 1 in the client device (1), 2 blocks in the client device (2), 3 blocks in the client device (3), and 3 blocks in the client device (4).
- network bandwidth the number of blocks that the network can transmit in a unit time
- network bandwidth B the number of blocks that the network can transmit in a unit time
- the server device cannot transmit blocks exceeding the network bandwidth B.
- the server device waits for transmission of a block to a new client device, or reduces the number of blocks transmitted to each client device within a unit time. Further, the server device reads a block from the storage device for each client device and transmits the read block.
- the server device there is a limit to the number of times that the server device can read a block from the storage device within a unit time. That is, the number of blocks that can be transmitted from the server device to the network is also limited by the number of readable times. For this reason, even if there is room in the network bandwidth, the number of client devices that can transmit the same block of information within a certain time slot is limited by the processing capacity of the server device.
- the number of client devices that can simultaneously transmit one piece of information is limited by the network bandwidth or the processing capability of the server.
- the multicast method In the multicast method, one piece of information is transmitted to a specific group of clients, so many clients can simultaneously transmit one piece of information.
- an IP multicast method As one type of the multicast method, there is an IP multicast method.
- the same information is simultaneously transmitted to a plurality of terminal devices in a specific group (broadcast group) within a TCPZIP network.
- a special address for identifying a predetermined group which is called a class D, among IP addresses is used as an address for transmitting information.
- a broadcast method in which information is simultaneously transmitted from a transmitting terminal device (for example, a server device) to all receiving terminal devices (for example, client devices) by UDP (User Datagram Packet) can be used.
- UDP User Datagram Packet
- a special example of this broadcast scheme is the IP multicast scheme.
- information (content) is transmitted to the entire network. Then, client devices other than the client device from which the information is to be acquired discard the information.
- information (content) is transmitted only to client devices belonging to a predetermined group. That is, in the IP multicast method, the server device transmits one block at a time to the network by specifying a group address. The client device receives only the blocks whose designated group address matches the group address of the group to which the client device belongs, among the blocks transmitted to the network.
- the IP multicast system is a non-connection type communication system.
- the client device (1) Before the transmission start time t1, the client device (1) transmits a transmission request (delivery request) REQ1 of information (contents) composed of blocks X1 to X4 to the network.
- the server device Upon receiving the transmission request REQ1 from the client device (1), the server device transmits a group address (for example, a group address INF1) to the client device (1) via the network.
- a group address for example, a group address INF1
- the server device When reaching the transmission start time t1, the server device sequentially transmits the blocks X1 to X4 to the network using the IP multicast method. That is, the blocks XI to X4 are sequentially transmitted to the network by designating the group address I NF1.
- the client device (1) receives a block whose designated group address matches its own group address I NF1.
- the server device When receiving the transmission request REQ 2 from the client device (2) before the next transmission start time t 2, the server device transmits the group address (for example, the group address I NF 2) via the network to the client device (2). ). Upon receiving the group address I NF 2 transmitted from the server device, the client device (2) stores it as the group address I NF 2 of the group to which the client device (2) belongs. Further, in response to the transmission request REQ 3 from the client device (3), the server device transmits a duplicate address (for example, a group address I NF 3) to the client device (3) via the network. Upon receiving the group address I NF 3 transmitted from the server device, the client device) stores it as the group address I NF 3 of the group to which the client device belongs.
- the group address for example, the group address I NF 2
- the client device stores it as the group address I NF 3 of the group to which the client device belongs.
- the server device When reaching the transmission start time t2, the server device sequentially transmits the blocks X1 to X4 to the network using the IP multicast method. That is, the blocks XI to X4 are sequentially transmitted to the network by designating the group addresses INF2 and INF3.
- the client device (2) and the client device (3) receive blocks whose designated group address matches their own group addresses I NF 2 and I NF 3.
- the server device sequentially reads out each block from the storage device one by one, specifies a group address, and transmits the block to the network.
- the IP multicast method In the IP multicast method, assuming that a server device can transmit up to N blocks in a unit time, the maximum number of blocks that can be transmitted to the network in a unit time is N regardless of the number M of clients. It is. For this reason, the IP multicast method differs from the unicast method in that the number of client devices increases. Also, the number of blocks that each client device can receive within a unit time does not change. In the multicast system, the server transmits the next block after confirming that the client has received the block. On the other hand, in the IP multicast method, the server device does not have a function of detecting that a block has been lost on the network. For this reason, it is necessary to provide the client device with an error processing function such as detection of a missing block and transmission of a retransmission request.
- the server device starts transmitting information (block) from a predetermined transmission start time. Therefore, the client device must wait until the transmission start time after transmitting the transmission request.
- the near-on-demand method prepares n channels for transmitting information by the IP multicast method. Then, each channel starts transmitting information at a different start time.
- the server device allocates a channel that can receive the information first to the client device. Therefore, in the near-on-demand method, the time from when a client device transmits a transmission request to when the client device receives information is reduced.
- FIG. 6 shows a case where there are two channels (1 ch and 2 ch) capable of transmitting information by the IP multicast method.
- the client device (1) Before the transmission start time t1 of one channel, the client device (1) has transmitted a transmission request REQ1 of information composed of blocks XI to X4 to the network. Upon receiving the transmission request REQ1 from the client device (1), the server device transmits the group address of ch1 (for example, the group address INF1) to the network. Via the client to the client device (1). The client device (1) receives the group address I NF1 of ch1 transmitted from the server device and stores it as the group address of the group to which self of ch1 belongs.
- the group address of ch1 for example, the group address INF1
- the server device When the transmission start time t1 of 1ch is reached, the server device specifies the blocks X1 to X4 with the group address INF1 and transmits the blocks in order with chhi. Note that X I (ch 1) indicates a block X 1 to be transmitted in ch 1. The client device (1) receives a block whose designated group address matches its own group address INF1 from among the blocks transmitted in ch1.
- the server device When the server device receives the transmission request REQ 2 from the client device (2) before the transmission start time t 2 of 2 ch, the server device transmits the group address of ch 2 (for example, the group address I NF 2) via the network to the client. Transmit to device (2).
- the client device (2) receives the group address I NF 2 of ch 2 transmitted from the server device and stores it as the group address I NF 2 of the group to which the device ch 2 belongs.
- the server device When the transmission start time t2 of 2ch is reached, the server device specifies the blocks XI to X4 with the group address INF2 and transmits the blocks to ch2 in order.
- the client device (2) receives a block whose designated group address matches its own group address INF2 from among the blocks transmitted in ch2.
- the server device When the server device receives the transmission request REQ 3 from the client device (3) by the next transmission start time t 3 of one channel, the server device transmits the chi group address (for example, the group address I NF 3) to the client device (3). ).
- the client device (3) receives a block whose designated group address matches its own group address INF3 from among the blocks transmitted in ch1.
- the network transmits a maximum of [nXN] blocks in a unit time. Can be transmitted. Therefore, the transmission speed and waiting time until the transmission start time in the near-on-demand method depend on the number of channels. For example, if the number of channels n is increased, The waiting time until the hour becomes shorter. However, when the processing capacity of the server device is the same, as the number of channels increases, the number of blocks that can be transmitted from the server device to each channel in a unit time decreases.
- IP multicast Similarly to the IP multicast method, it is necessary to provide the client device with an error processing function such as detection of a missing block and transmission of a retransmission request.
- error processing function such as detection of a missing block and transmission of a retransmission request.
- one block is transmitted to a plurality of client devices, so that the transmission load on the server device is small.
- it is necessary to build a large-capacity network in advance. This is particularly necessary in the near-on-demand method. It is also necessary to consider error handling separately.
- the unicast method has high reliability of information transmission.
- a server device with high processing capacity and a network (communication line) with a large bandwidth are required.
- the server device After receiving a transmission request from a client device, the server device starts transmitting information to the client device in as short a time as the server device can handle.
- the transmission start time of a block transmitted from a server device is determined by the server device. That is, after transmitting the transmission request, the client device must wait until the transmission start time at which the transmission of the first block starts.
- the near-on-demand method is the most disadvantageous in terms of bandwidth consumption. Therefore, the near-on-demand method is not very practical to use for transmitting information, assuming the current communication network infrastructure, and it is difficult to implement it with enormous costs. In other words, there is a high possibility that it will not be profitable.
- the unicast method is relatively disadvantageous in terms of bandwidth consumption.
- the number of client devices that can respond to transmission requests is limited by both bandwidth consumption and server device processing capacity.
- the IP multicast scheme is the most advantageous in terms of bandwidth consumption.
- the client device needs to wait until the transmission start time of the first block after transmitting the transmission request.
- the information transmitting apparatus needs a plurality of pieces of information. What is necessary is just to transmit predetermined information to the information receiving device once. This reduces the load on information transmission equipment and networks (communication lines). And the information transmitting device is
- an information transmitting apparatus transmits a block constituting predetermined information to a first information receiving apparatus by a multicast method.
- the second information receiving apparatus Upon receiving a request for transmission of predetermined information from the second information receiving apparatus, immediately transmit a block constituting the predetermined information to the first and second information receiving apparatuses by a multicast method. At this time, for a block that has not been transmitted to the first information receiving device, the group address of the group to which the first information receiving device belongs and the group address of the group to which the second information receiving device belongs are specified. Then, for the block transmitted to the first information transmitting device, the group address of the group to which the second information receiving device belongs is specified. Accordingly, the block transmission to the second information receiving device is started in a short time, so that the waiting time of the second information receiving device is reduced.
- the information receiving apparatus only needs to combine blocks based on the division order information, so that decoding processing of predetermined information is facilitated.
- a missing block or the like can be easily determined.
- the blocks are cyclically arranged in a predetermined order as long as a request for transmitting the predetermined information is received from another information receiving apparatus. It is preferred to send to This simplifies the block transmission process of the information transmission device.
- blocks forming predetermined information are stored in the storage device, and the blocks are read out from the storage device in a predetermined order.
- the information transmitting device divides information supplied from an information supplying device such as an imaging device into blocks. It is preferable that the lock and the division order information of the block can be transmitted. Thereby, the information receiving device can receive information other than the information stored in the storage device.
- the information transmitting apparatus is configured to add error detection / correction information to the block and transmit the block.
- the information receiving apparatus can correct an error in the data of the received block, and can restore correct information.
- the information transmitting apparatus is configured to transmit a block for retransmission by a multicast method or a unicast method according to the bandwidth usage of a communication line.
- the bandwidth usage status of the communication line is determined, for example, based on a comparison result between the number of blocks transmitted and received on the communication line within a unit time and the limit value. It is preferable to configure so that the number of blocks transmitted to the communication line is adjusted as follows. As a result, the load on the communication line can be appropriately adjusted, and a decrease in transmission efficiency can be prevented.
- the information transmitting device is configured to set a communication line to the information receiving device when receiving the transmission request signal from the information receiving device.
- each block can be efficiently transmitted to the information receiving device, and the load on the communication line is reduced.
- the group address assigned to each client device is a different group address. Or the same group address may be used.
- the information transmitting apparatus transmits the predetermined information as long as a transmission request from another information receiving apparatus is received before transmitting all the blocks constituting the predetermined information to the information receiving apparatus. Continue to send the constituent blocks cyclically. In this case, it is necessary for the information receiving device to determine whether or not to receive the block.
- the process of assigning the group address and the process of transmitting the group address are not required, so that the load on the processing device is reduced.
- the predetermined information is divided into a plurality of blocks, and each of the divided blocks is grouped into a plurality of segments.
- the blocks included in each segment can be transmitted cyclically.
- the information transmitting device when receiving a transmission request from a predetermined segment transmitted from the information receiving device, if the predetermined segment transmits the same segment at that time, the segment transmitting at that time Extend the transmission of the event.
- the information transmitting apparatus when the order of the predetermined segment is earlier than that of the segment being transmitted at that time, the information transmitting apparatus performs transmission of the predetermined segment and transmission of the current segment at the same time. Thereby, the information receiving apparatus can receive the predetermined portion in a short time.
- FIG. 1 is a schematic configuration diagram of a communication device according to an embodiment of the present invention.
- FIG. 2 is a diagram for explaining the operation of the information transmitting device used in one embodiment of the communication device of the present invention.
- FIG. 4 is a diagram illustrating a conventional method of transmitting information using a unicast method. It is a Kens diagram.
- FIG. 5 is a sequence diagram illustrating a conventional method for transmitting information using the IP multicast method.
- FIG. 6 is a sequence diagram illustrating a conventional method for transmitting information using the near-on-demand method.
- FIG. 7 is a diagram for explaining the operation of the information transmitting device used in one embodiment of the communication device of the present invention.
- FIG. 8 is a diagram for explaining a first embodiment of the communication method of the present invention.
- FIG. 9 is a flowchart showing a transmission request reception standby operation of the information transmission device used in one embodiment of the communication device of the present invention.
- FIG. 10 is a flowchart illustrating a transmission operation of the information transmission device used in one embodiment of the communication device of the present invention.
- FIG. 11 is a flowchart showing a retransmission operation of the information transmission device used in one embodiment of the communication device of the present invention.
- FIG. 12 is a block diagram of an information receiving device used in one embodiment of the communication device of the present invention.
- FIG. 13 is a diagram for explaining the operation of the information receiving device used in one embodiment of the communication device of the present invention.
- FIG. 14 is a diagram illustrating a configuration example of a block.
- FIG. 15 is a diagram for explaining the operation of the second embodiment of the communication method of the present invention.
- FIG. 16 is a diagram for explaining the operation of the second embodiment of the communication method of the present invention.
- FIG. 17 is a diagram for explaining the operation of the second embodiment of the communication method of the present invention.
- FIG. 18 is a sequence diagram illustrating the operation of the communication method according to the second exemplary embodiment of the present invention.
- FIG. 19 is a diagram for explaining another operation of the second embodiment of the communication method of the present invention.
- FIG. 20 is a sequence diagram illustrating another operation of the second embodiment of the communication method according to the present invention.
- FIG. 21 is a diagram for explaining the operation of the second embodiment of the communication method of the present invention.
- FIG. 22 is a diagram for explaining the operation of the second embodiment of the communication method of the present invention.
- FIG. 23 is a diagram for explaining another operation of the second embodiment of the communication method of the present invention.
- FIG. 24 is a diagram for explaining the operation of the second embodiment of the communication method of the present invention.
- FIG. 25 is a diagram for explaining the operation of the third embodiment of the communication method of the present invention.
- FIG. 26 is a diagram for explaining the operation of the fourth embodiment of the communication method of the present invention.
- a kyunicast method or a multicast method is known.
- the number of times of transmitting predetermined information increases in proportion to the number of information receiving devices. For this reason, when the number of information receiving devices increases, the waiting time from when the information receiving device transmits a predetermined information transmission request to when the information receiving device receives the request increases.
- the predetermined information may be transmitted once. Therefore, the number of times of transmitting the predetermined information is reduced as compared with the case of using the unicast method, and the waiting time until the information receiving apparatus receives the predetermined information is short.
- the information receiving apparatus since the transmission start time of the predetermined information is determined, the information receiving apparatus has to wait until the transmission start time of the predetermined information.
- the waiting time from the transmission of a predetermined information transmission request to the reception of predetermined information by the information receiving apparatus can be achieved without using an information transmission apparatus having a high processing capability or a communication line having a large bandwidth.
- the aim is to shorten the.
- the information transmitting apparatus when transmitting the predetermined information to the first information receiving apparatus and receiving a request for transmitting the predetermined information from the second information receiving apparatus, , Transmission starts from the middle block. At this time, the information transmitting device transmits the blocks not transmitted to the first information receiving device to the first information receiving device.
- the group address of the group to which the first information receiving device belongs and the group address of the group to which the second information receiving device belongs are designated and transmitted.
- the block that has been transmitted to the first information transmitting device transmits by specifying the group address of the group to which the second information receiving device belongs.
- the second information receiving apparatus can start receiving from the middle block even when the information transmitting apparatus is transmitting a block to the first information receiving apparatus, so that the waiting time is reduced. .
- the information receiving apparatus can restore a received block even if reception is started from an intermediate block.
- the block division order information is transmitted together with the block.
- the information receiving apparatus can restore the predetermined information only by combining the received blocks in the order of the division order information, so that the processing is simplified. Further, the information receiving apparatus can easily determine a lack of a block or the like based on the division order information.
- the information transmission device When the information transmission device starts transmission from the middle block to the second information reception device, the information transmission device transmits all blocks to the first information reception device and then transmits the remaining blocks to the second information reception device. There is a need to.
- the information transmitting device transmits the blocks cyclically in a predetermined order. This facilitates the block transmission process in the information transmission device. In this case, if the blocks are stored in the storage device and the blocks stored in the storage device are read out in a predetermined order, the processing becomes easier.
- the information transmitting device can also transmit a block obtained by dividing information supplied from an information supplying device such as an imaging device. This increases the types of information that can be provided to the information receiving device.
- the block data When transmitting a block via a communication line, the block data may be lost or changed during transmission on the communication line. In this case, the information receiving device cannot restore correct information.
- the information transmission device transmits the block with error detection and correction information added thereto. Accordingly, the information receiving apparatus can detect and correct data error of the block based on the error detection / correction information included in the received block. Division order into blocks In the case where the information is transmitted with the order information added, the information receiving apparatus can determine that the block is not normally received due to the lack of the division order information, for example.
- the information receiving device needs to receive the block again from the information transmitting device.
- a retransmission function is provided for such a case.
- the information receiving device transmits a block in which data is missing or a request for retransmission of the missing block to the information transmitting device.
- the information transmitting apparatus transmits the block requested to be retransmitted or all blocks of information including the block to the information receiving apparatus that has requested retransmission.
- a transmission storage device for storing a transmission block and a retransmission storage device for storing a retransmission block.
- the same storage device may be used as the storage device, or different storage devices may be used.
- the information transmission device transmits the block stored in the transmission storage device when transmitting the block, and stores the block in the retransmission storage device when retransmitting the block. What is necessary is just to transmit a block. For this reason, the transmission process of the information transmission device becomes easy.
- the information transmitting apparatus transmits by a multicast method when the data amount of the communication line is large, and transmits by a unicast method when the data amount of the communication line is small.
- the use state of the communication line is determined, for example, based on a comparison result between the number of transmitted blocks and a limit value.
- the information transmitting apparatus adjusts the number of blocks transmitted to the communication line so that the data amount of the communication line within a predetermined time is equal to or less than a predetermined amount. This makes it possible to appropriately adjust the load on the communication line.
- the group address of the information receiving device may be set in advance, or may be set each time information is transmitted. When a method of setting a group address every time a transmission request is received from an information receiving device is used, a transmission request for predetermined information is transmitted. Information receiving devices can be appropriately grouped.
- the block When transmitting a block from the information transmitting apparatus, the block may be transmitted to all communication lines, but it is preferable to set a communication line for transmitting the block and transmit the block to a predetermined area.
- the information transmitting device when receiving a transmission request from an information receiving device, determines an area of the information receiving device, and sets a communication line so that a block reaches the area. .
- predetermined information is divided into a plurality of blocks, and the divided blocks are grouped into a plurality of segments.
- the blocks contained in each segment can be transmitted cyclically. Therefore, when the information transmitting device receives a transmission request from a predetermined segment transmitted from the information receiving device, if the predetermined segment is the same as the segment being transmitted at that time, the information transmitting device transmits the request at that time. Extend the transmission of the transmitting segment.
- the information receiving device can receive necessary portions in a short time without increasing the processing capability of the information transmitting device and the load on the communication line.
- various methods can be used as a method of reproducing the information (content) transmitted from the information transmitting device to the information receiving device.
- a download method and a streaming method can be used.
- the download method all parts of the information (all blocks constituting the information) are transmitted from the information transmitting device to the information receiving device, and stored in the storage device of the information receiving device. Then, the information receiving device reads out and reproduces the information stored in the storage device.
- necessary portions, not all of the information are sequentially transmitted from the information transmitting device to the information receiving device, and stored in the storage device of the information receiving device.
- the information receiving device receives (pre-reads) the next portion while playing back the portion stored in the storage device, and stores it in the storage device. For example, when reproducing moving image information from the beginning, the information transmitting device transmits the moving image information to the information receiving device sequentially from the beginning, and the information receiving device sequentially reproduces the received portion.
- the information can be reproduced from the middle by transmitting the information from the middle. Furthermore, by transmitting only an arbitrary portion, it is possible to reproduce only an arbitrary portion.
- the information receiving apparatus finishes reproducing the received part, the information receiving apparatus discards the part.
- the time (waiting time) from when the information receiving device requests information transmission to when the information is received is determined by the information transmitting device or the network. (Communication line). For example, as the number of information receiving devices requesting transmission of the same information increases, the time until the information receiving device receives information (waiting time) increases.
- the information receiver When playing back information using the streaming method, if the waiting time is long, the information receiver may not be able to receive the next part after the part being played back. You. In this case, the reproduction of the information by the information receiving device is interrupted. In order to avoid this, a method of increasing the amount of the portion transmitted from the information transmitting device to the information receiving device can be considered. However, when this method is used, the number of information receiving devices that can simultaneously receive information decreases.
- the waiting time of the information receiving device can be shortened without increasing the capacity of the information transmitting device and the communication line regardless of the information reproducing method. be able to.
- the communication method according to the second embodiment described below is suitable for reproducing information using a streaming method.
- FIG. 1 shows a schematic configuration diagram of an embodiment of the communication device of the present invention.
- the present invention is applied to a client-server communication system in which predetermined information is transmitted from a server device to a plurality of client devices via a network.
- the client devices (1) to (! 1), the server device 11 and the network (communication line) 10 constitute a client-server communication system.
- a network using TCP / IP as a protocol such as the Internet, a LAN (local area network), a WAN (wide area network), and a CATV (cable television), is used as the network 10.
- the client devices (1) to (! 1) include, for example, a communication device 6, a storage device 8, a processing device (CPU) 7, a display device (not shown), and the like, as shown in FIG. .
- the processing device 7 communicates with the server device 11 via the network 10 using the communication device 6. It also performs various processes. For example, a process for transmitting a transmission request is performed. In addition, a process of receiving the block and storing it in the storage device 8 is performed. In addition, it performs processing to detect missing data or missing blocks in the received block, and to transmit a retransmission request. In addition, a process of receiving the retransmitted block and storing it in the storage device 8 is performed.
- the client devices (1) to (! 1) for example, a personal computer or a set-top box (STB) can be used.
- the reception management table 5 is for managing received blocks. In FIG. 12, the reception management table is provided in the processing device 7, but may be provided in the storage device 8.
- the server device 11 includes a storage device (transmission storage device) 12a, a retransmission storage device 12b, a processing device 13, a communication device 14, and the like.
- the processing device 13 communicates with each of the client devices (1) to (! 1) via the network 10 using the communication device 14. It also performs various processes. For example, a process of storing information supplied from an external device (for example, an information supply device such as an imaging device) in the storage device 12a is performed.
- an external device for example, an information supply device such as an imaging device
- a process of transmitting the block of information requested to be transmitted from the external device or the storage device 12a to the client devices (1) to (! 1) that transmitted the transmission request is performed.
- a process of reading the block requested to be retransmitted from the retransmission storage device 12b and transmitting it to the client devices (1) to (n) that transmitted the retransmission request is performed.
- server device 11 a large general-purpose computer, a minicomputer, a workstation, a personal computer, or the like can be used according to the application, the number of clients, and the like.
- server dedicated device such as a UNIX server can be used as the server device 1.
- the storage device 12a and the retransmission storage device 12b may be shared by one storage device. Further, although one server device 11 is provided in FIG. 2, a plurality of server devices may be provided.
- the server device 11 corresponds to the “information transmitting device” of the present invention
- the client devices (1) to (! 1) correspond to the “information receiving device” of the present invention.
- the information is assumed to be divided into a plurality of blocks or divided into a plurality of blocks.
- the predetermined information is divided into four blocks of blocks XI, X2, X3 and X4.
- the predetermined information can be restored by combining the blocks X1 to X4 in the order of XI, X2, X3, and X.
- the divided blocks are transmitted, for example, in packets.
- Figure 14 shows an example of the structure of this packet.
- the packet 20 shown in FIG. 14 has an IP header section 21 and an IP data section 22.
- an IP address indicating a destination to which the bucket 20 is to be transmitted is provided. Inserted.
- the IP address for example, a group address indicating a predetermined group (subnet mark) is set.
- division order information for example, division order information, blocks obtained by dividing predetermined information, and error detection Z correction information are inserted.
- the division order information the order of blocks inserted into the IP data part 22, that is, information indicating which part of the predetermined information the block inserted into the IP data part 22 is set to .
- the transmission order of the blocks and the combination order of the blocks are determined based on the division order information. Also, a missing block can be detected based on the division order information.
- Error detection Based on the Z correction information, it is possible to detect an error in the data inserted in the IP data section 22 and correct the error when there are few errors.
- the processing device 13 of the server device 11 is a block having a predetermined size, which receives information input from an external device (for example, an imaging device) or an input device (for example, a reading device that reads information stored in a storage medium).
- the data is divided into XI to X4) and stored in the storage device (transmission storage device) 12a.
- the processing device 13 divides information supplied from the information supply device (external device) 9 into blocks X1 to X4, and stores the divided blocks X1 to X4. Store in device 1 2a.
- the order of the blocks XI to X4 is memorized in a distinguishable manner.
- division order information is also stored in the storage device 12a.
- the data is stored in the storage device 12a in a predetermined order.
- the processing device 13 transmits the blocks X 1 to X 4 of information supplied from the external device and the blocks X 1 to X 4 stored in the storage device 12 a to the network 10.
- the processing for storing the blocks X1 to X4 in the retransmission storage device 1b is also performed.
- a transmission request (delivery request) REQ 1 requesting transmission of predetermined information is transmitted from the client device (1) to the server device 11 via the network 10.
- the transmission request REQ 1 The data is transmitted by the multicast method. Note that, in FIG. 1, the dashed arrow indicates that transmission is performed using the e-cast method.
- the server device 11 Upon receiving the transmission request REQ 1 from the client device (1), the server device 11 (specifically, the processing device 13) transmits blocks X 1 to X 4 obtained by dividing predetermined information by the IP multicast method. Prepare for. That is, the client device (1) transmits a group address necessary for receiving the blocks X1 to X4 transmitted by the IP multicast method to the client device (1).
- the group address INF1 is transmitted to the client device (1) that has transmitted the transmission request REQU1 by the unicast method.
- a special address for identifying a predetermined group which is called a class D, is used as the group address INF1 among the IP addresses used in the TCPZIP communication system.
- the client device (1) receives the group address I NF 1 transmitted from the server device 11, and stores it in the storage device 8 as the group address of the group to which the client device (1) belongs.
- the server device 11 transmits the total number of blocks X1 to X4 constituting the predetermined information to the client device (1).
- the total number of blocks may be transmitted together with the group address INF1, or may be transmitted together with each block.
- the client device (1) stores management information in the reception management table 5. For example, the total number of blocks constituting the predetermined information is stored.
- the server device 11 reads the first block XI of the predetermined information from the storage device 12a. Then, the read block X 1 is transmitted to the network 10 via the communication device 14 in a multicast manner by designating the group address INF 1. In FIG. 1, the solid arrows indicate that transmission is performed using the multicast method.
- the client device (1) receives the block X1 in which the group address INF1 matching its own group address INF1 is specified from the network 10, and stores it in the storage device 8. At this time, the management information is stored in the reception management table 5. For example, the total number of blocks constituting the predetermined information, the identification information indicating the predetermined information, the division order information of the block X1, and the division order information of the block that is not normally received. Are stored as management information. If the division information of the block that could not be received normally is stored in the management information of the reception management table 5 (see FIG. 12), a retransmission request described later is transmitted to the server device 11.
- the server device 11 transmits the block XI to the client device (2). It is assumed that the transmission request REQ 2 has been received from.
- the server device 11 transmits the group address I NF 2 to the client device (2) that has transmitted the transmission request REQ2 by a unicast method. At this time, the same group address I NF 1 as the client device (1) may be transmitted to the client device (2).
- the client device (2) receives the group address INF2 transmitted from the server device 11, and stores it in the storage device 8 as the group address of the group to which the client device (2) belongs.
- the server device 11 reads the block X2 in the order following the block X1 from the storage device 12a, and transmits the block X2 to the network 10 by the IP multicast method. At this time, the server device 11 transmits the block X2 to the network 10 by designating the group addresses I NF1 and I NF2. That is, the server apparatus 11 transmits only one block X2 to the network 10 by the IP multicast method, despite the fact that there are a plurality of client apparatuses to which the block X2 is to be transmitted.
- the server device 11 reads the block X3 in the next order from the block X2 from the storage device 12a, specifies the group addresses INF1 and INF2, and Send to network 10.
- Client device (1) and client device (2) have their own group address IN
- the block X 3 in which the group addresses I NF 1 and I NF 2 corresponding to F l and I NF 2 are specified is received from the network 10 and stored in the storage device 8.
- the server device 11 receives the transmission request REQ 3 from the client device (3) while transmitting the block X3 from the server device 11.
- the server device 11 transmits the duplicate address I NF 3 to the client device (3) that has transmitted the transmission request REQ 3 by a multicast method.
- the client device (3) receives the group address INF3 transmitted from the server device 11, and stores it in the storage device 8 as the group address of the group to which the client device (3) belongs.
- the server device 11 reads the block X4 in the order following the block X3 from the storage device 12a, designates the group addresses I NF1, I NF 2, and I NF 3, and performs the network by the IP multicast method. Send to 10.
- Each of the clients) to (3) receives from the network 10 the block X4 in which the group address I NF 1, I NF 2 and I NF 3 of the group to which the client belongs belongs from the network 10 and stores it in the storage device 8.
- the server device 11 has completed the transmission of the predetermined information (blocks X1 to X4) to the client (1), but has specified the information to the client devices (2) and (3). It is determined that the transmission of the information (blocks XI to X4) has not been completed. Whether or not the transmission of the predetermined information to each client device is completed is determined, for example, by a count value of a transmission count described later. Therefore, the server device 11 transmits the block X4 in a multicast manner by specifying the group addresses I NF1, I NF 2, and I NF 3, and subsequently transmits the blocks XI, X2, and X3. That is, block X1 is transmitted to network 10 by designating group addresses INF2 and INF3. Also, the blocks X 2 and X 3 are transmitted to the network 10 by designating the group address I NF 3.
- the client device (1) receives blocks XI, X2, X3, and X4 in this order, and the client device (2) receives blocks X2, X3, X4, and XI.
- the client device (3) receives blocks X4, XI, X2, and X3 in this order.
- the server apparatus 11 transmits a packet 20 in which the blocks XI to X4 and the division order information of each block are input.
- each of the client devices (1) to (3) can store the received blocks X1 to X4 in the storage means 8 by an arbitrary method.
- the block records X1 to X4 can be stored in the storage unit 8 in the order of reception.
- FIG. 13 shows that the blocks X 1 to X 4 are received in the order of X 3, X 4, XI, and X 2, and are stored in the storage device 8 in the order received.
- the processing device 7 of the client device reads the blocks X1 to X4 stored in the storage device 8 according to the division order information of each of the blocks XI to X4. Further, the processing device 7 restores predetermined information by combining based on the division order information of each of the blocks XI to X4.
- the received blocks X1 to X4 can be stored in the storage device 8 according to the division order information of each block.
- the server device 11 uses the multicast method to block X 1 as long as the request for transmission of the information is continuously transmitted from another client device.
- To X4 are repeatedly transmitted to the network 10 in a predetermined order (playback order).
- the server device 11 when the server device 11 receives a transmission request from the client device in the initial state, the server device 11 transmits a plurality of blocks constituting predetermined information (content) in a multicast manner in order from the first block. Start. Further, the server device 11 transmits the predetermined information (blocks constituting the predetermined information) to the client device which has transmitted the transmission request before transmitting the information from another client device (single or plural) to the client device. When the information transmission request is received, transmission to another client device is started by the multicast method in order from the block of the predetermined order being transmitted at that time.
- group addresses may be used for the group address transmitted to each client device, or the same group address may be used.
- An operation example of the server device and each client device when transmitting the same group address to a plurality of client devices will be described.
- the server device when the server device is in the standby state, the server device receives a request from the first client device. When receiving the request for transmitting the predetermined information, the terminal transmits a predetermined group address to the first client device. Then, the blocks constituting the predetermined information are transmitted in a predetermined order by designating a predetermined group address.
- the server device when the server device receives a request for transmitting the predetermined information from the second client device before all the blocks constituting the predetermined information have been transmitted to the first client device, the server device transmits the request to the second client device. Transmit a predetermined group address. Then, the server device cyclically arranges the blocks constituting the predetermined information in a predetermined order by designating the predetermined group addresses until all the blocks forming the predetermined information have been transmitted to the second client device. Send.
- the first and second client devices execute a reception process of receiving a necessary block from blocks transmitted to the network. For example, based on the total number of blocks constituting the predetermined information and the number of received blocks (or the division order information of the received blocks) included in the packet of the block, all blocks constituting the predetermined information are It is determined whether or not it has been received. Then, when it is determined that all of the blocks constituting the predetermined information have been received, the reception of the blocks is stopped.
- the server device of the present embodiment continues to cyclically transmit blocks constituting the predetermined information as long as a request for transmitting the predetermined information is received. For this reason, each client device can immediately start receiving a block constituting predetermined information immediately after transmitting the transmission request. At this time, since each block is transmitted by the multicast method, the processing load on the server device and the load on the network (communication line) do not increase.
- the group address is transmitted to each client device.
- a group address may be assigned to each client device in advance.
- the group address assigned to each client device in advance may be a different group address or the same group address. In this case, there is no need to transmit a duplicate address from the server device to each client device.
- the network 10 so as to efficiently reach the client device that has transmitted the block X1 to X4 ⁇ ⁇ transmission request transmitted from the server device 11 by the multicast method.
- the server device 11 receives the transmission request REQ1 from the client device (1)
- the blocks X1 to X4 reach the group to which the client device (1) that transmitted the transmission request REQ1 belongs.
- Network 10 as shown. That is, the server device 11 sends information necessary for transmitting the blocks X1 to ⁇ 4 to the client device (1) to the router (router) of the network 10 using the IP multicast method. Send.
- the client device (1) can receive the block from the network router. It is information for network setting.
- information necessary for receiving information transmitted by the I @ multicast method (for example, network setting information, group addresses INF1 to INF3) is referred to as "transmission required information” or “reception required”. Necessary information ”.
- the server device 11 When transmitting information (blocks) using the I ⁇ multicast method, the server device 11 uses an I ⁇ address (group address) called a class D. There is no need to specify the I @ address of the device. In other words, a group address is designated from the server device 11 and one block only needs to be transmitted to the network 10 once. In this case, a plurality of client devices belonging to the group indicated by the duplicate address can receive the block transmitted to the network 10.
- each node (not shown) and each router (not shown) of the network 10 must be compatible with the IP multicast method.
- the storage device 12a for storing information is a server device.
- the storage device may be provided inside the device 11 or may be a storage device provided outside the server device 11.
- FIG. 7 shows an operation of transmitting predetermined information (block) by the server device 11 of the present embodiment.
- blocks X1 to X4 constituting predetermined information (content) are written in the order of XI, X2, X3, and X4.
- the processing device 13 (see FIG. 2) reads out the blocks X1 to X4 from the storage device 12a in a predetermined order. For example, the first block X 1 is read first, the block X 2 is read second, the block X 3 is read third, and the block X 4 is read fourth. Then, returning to the head of the block permutation again, the blocks X1 to X4 are read cyclically, such as the fifth block XI, the sixth block X2, and so on.
- the read blocks X1 to X4 are sent to the communication device 14.
- the communication device 14 transmits the transmitted blocks X 1 to X 4 to the network 10.
- the transmission order of the blocks X1 to X4 is XI, X2, X3, X4, XI, X2, and so on.
- the server device 11 continues the cyclic transmission operation in the predetermined order shown in FIG.
- FIG. 8 is a sequence diagram illustrating an operation when transmission requests for predetermined information are concentrated.
- the server device 11 is in the initial state when it has not received a transmission request from the client device and has not transmitted information (block).
- the server device 11 When the server device 11 receives a transmission request from the client device (1) in the initial state, the server device 11 reads the blocks XI to X4 constituting the requested information (content) from the storage device 12a, Read from block. Then, the server device 11 sequentially transmits the read blocks X1 to X4 to the network 10 by the multicast method. In other words, the server device 11 uses the transmission request from the client device (1) as a trigger to generate predetermined information. X1 to X4 transmission is started.
- the next block X2 is transmitted to the group to which the client devices (1) and (2) belong.
- the blocks X1 to X4 that constitute the predetermined information form a permutation of XI, X2, X3, and X4, they are transmitted from the server device 11 to the network 10 by the IP multicast method.
- the order of the blocks to be performed is as follows: XI, X2, X3, X4, XI, X2, X3, X4, etc., unless the transmission of the predetermined information is interrupted during the transmission of the predetermined information (block). , XI, X2, X3, X4.
- the client device (1) and the client device (4) receive blocks in the order of XI, X2, X3, and X4, and the client device (2) receives X2, X3,
- the client device (3) receives the blocks in the order of X4, X1, the client device (3) receives the blocks in the order of X4, XI, X2, X3, and the client device (5) receives the blocks, X3, X4, X1, X Receive blocks in the order of 2.
- the information supply device 9 transmits the blocks X1 to X4 constituting the information to the server device 11 in the order of XI, X2, X3, and X4.
- the processing device 13 of the server device 11 stores the blocks X1 to X4 transmitted from the information supply device 9 in the storage device (transmission storage device) 12a.
- the blocks X1 to X4 transmitted from the information supply device 9 may be stored in the retransmission storage device 12b.
- the blocks XI to X4 stored in the retransmission storage device 12b are read when performing a retransmission process described later.
- the processing device 13 stores the blocks X1 to X4 received from the information supply device 9 in the storage device 12a, and simultaneously or almost simultaneously with the network 10 via the communication device 14 in a multicast manner.
- the server device 11 determines the start time of the information (blocks XI to X4) supplied from the information supply device 9 and sends a request to transmit the information from the client device before the transmission time.
- the information (blocks # 1 to # 4) supplied from the information supply device 9 is stored in the storage device 12a while being transmitted to the network 10.
- the process of transmitting the information supplied from the information supply device 9 to the network 10 is performed only once when the blocks X1 to X4 arrive.
- another client device transmits the new information.
- the server device 11 reads the newly arrived information from the storage device 12a and transmits it to the network 10 after the supply of the newly arrived information from the information supply device 9 is completed. I do.
- the server device 11 receives a transmission request from another client device while new information is being supplied from the information supply device 9, the supply of new information to another client device is completed.
- the new information may be transmitted later, or the new information may be transmitted from the time when the transmission request is received.
- the server device 11 transmits the new arrival information using the communication method of the first embodiment when the download method is used as the reproduction method of the new arrival information.
- the streaming method is used as the reproduction method of the new arrival information
- Block errors may occur in blocks transmitted from the server device 11.
- the blocks X1 to X4 transmitted from the server device 11 are transmitting on the network, the data in the blocks X1 to X4 may be lost or changed. Alternatively, the blocks X1 to X4 transmitted from the server device 11 may not be received by the client devices (1) to (n).
- the division order information can have an error detection function, error correction is difficult. For this reason, it is desirable to add error detection / correction information to the block separately from the division order information.
- the server device 11 when transmitting the blocks XI to X4, the server device 11 adds the block error detection Z correction information to each of the blocks X1 to X4.
- the block error detection Z correction information for example, an ECC code such as a well-known Reed-Solomon code is used.
- the client device can detect that the data of the received block is missing or has changed. Also, if a small amount of data is missing or changed, it can be corrected to restore normal data. Furthermore, if the loss or change is such that it cannot be corrected, the client device requests the server device to retransmit the block.
- error detection Z correction information known information can be appropriately selected and used.
- parity bit information a BCH code, an RS code, or the like can be used.
- the «code and the 13 code are, as is well known, a code for detecting and correcting an error bit when there are multiple bit errors in the data composed of multiple bits. .
- the client devices (1) to (! 1) are connected to the specified group from the network 10. Receive a block whose block address matches its own group address. Then, the client devices (1) to (! 1) perform error detection based on the division order information or the block error detection Z correction information received together with the blocks. The processing related to the error may be performed by the communication device 6 or the processing device 7 (see FIG. 12).
- Error detection is performed, for example, as follows.
- the reception management table 5 stores information for specifying an unreceived block, for example, identification information for identifying predetermined information and division order information.
- the division order information also includes information on the amount of data in the block, reference is made to the division order information to determine whether all data for that block has been received normally. Can be. If all data of a block has not been received normally, information for specifying the block, for example, identification information for identifying predetermined information, and division order information are stored in the reception management table 5.
- error detection and error correction of the received block can also be performed. For example, if an error is detected in the received block, the error is corrected if the error can be corrected. If the error cannot be corrected, the error cannot be corrected in the reception management table.
- Information for identifying a certain block for example, identification information for identifying predetermined information and division order information are stored.
- the client devices (1) to (! 1) transmit a retransmission request to the server device 11 based on the information stored in the reception management table 5.
- the operation in which the server apparatus 11 retransmits the block in response to the retransmission request will be described later.
- the server device 11 can simultaneously perform the transmission request reception standby operation, the block transmission operation, and the retransmission operation in parallel.
- step S11 it is determined whether or not transmission requests from client devices (1) to (! 1) have been received.
- the client devices (1) to (! 1) transmit a transmission request including identification information indicating information to be transmitted or a transmission request corresponding to the information to be transmitted.
- step S12 If no transmission request has been received, the process waits. On the other hand, if a transmission request has been received, the process proceeds to step S12.
- step S12 information (group address, total number of blocks of information to be transmitted, etc.) necessary for receiving the information (block) is transmitted to the client device that has transmitted the transmission request by the unicast method. At the same time, the total number of blocks is stored.
- step S13 the transmission counter is reset (restarted) to 0 in order to start the operation of transmitting the block to the network 10.
- the transmission counter is reset to zero.
- step S21 it is determined whether or not the transmission count is equal to the total number of blocks.
- step S22 If the transmission counter is equal to the total number of blocks, wait. On the other hand, if the transmission count is not equal to the total number of blocks, the process proceeds to step S22.
- step S22 the blocks in the order indicated by the read block pointer are read from the storage device 12a.
- step 23 the read block is added with a group address, division order information, error detection Z correction information, information identification information for identifying information, and the like, and transmitted to the network 10 in a multicast manner. At the same time, add 1 to the transmission counter. Also, the block pointer is set to the pointer of the next block to be transmitted. The block pointer corresponds to, for example, division order information. In normal transmission, the block pointer may be incremented by 1, but in the case of retransmission operation, Set to a value corresponding to the order of the blocks to be transmitted.
- step 21 When the number of blocks equal to the total number of blocks has been transmitted, the determination in step 21 becomes “Y E S”. That is, if the transmission count is not equal to the total number of blocks, the transmission operation of the blocks is continued. When the transmission count becomes equal to the total number of blocks, the block transmission operation is stopped.
- step S31 the server device 11 determines whether a retransmission request has been received from the client devices (1) to (n) that have finished transmitting the information (block).
- step S32 the client devices (1) to (! 1) transmit a retransmission request including information (for example, identification information and division order information) specifying the block that could not be received to the server device 11.
- information for example, identification information and division order information
- the number of blocks that could not be received may be one or more.
- step S32 when the blocks requested to be retransmitted are individually retransmitted, the total number of blocks (total number of blocks) that the server apparatus 11 transmits to the network 10 in a unit time is calculated. calculate. Then, it is determined whether or not the total number of blocks exceeds the limit value. If the total number of blocks does not exceed the limit, the process proceeds to step S33.If the total number of blocks does not exceed the limit, the process proceeds to step S35. decide. That is, since the total number of blocks requested to be retransmitted is large (the load on the network is large), it is decided to retransmit the blocks requested to be retransmitted by the multicast method. Then, the server device 11 notifies the client device that has transmitted the retransmission request that the transmission is to be performed by the multicast method. For example, a group address is notified.
- step S34 the transmission count is reset to zero. Also, the block pointer is set to the pointer of the block requested to be retransmitted. As a result, the determination in step S21 shown in FIG. 10 becomes NO, and the block requested to be retransmitted is The transmission operation using the multicast method is started. After transmitting the retransmission requested block, set the transmission counter to the total number of blocks. This ends the retransmission operation.
- step S35 it is determined that retransmission is performed by the unicast method. That is, since the total number of blocks requested to be retransmitted is small (the load on the network is light), it is decided to retransmit the blocks requested to be retransmitted by the unicast method. Then, the server device 11 notifies the client device that has transmitted the retransmission request that the retransmission request is to be transmitted by the unicast method.
- step S36 the client device that has transmitted the retransmission request reads the blocks that could not be received. .
- step S37 the content identification information, the division order information, and the error detection Z correction information are added to the read block, and the block is retransmitted to the client device that transmitted the retransmission request by the unicast method.
- the group address at the time of transmitting the block may be used, or a new group address may be allocated.
- a retransmission storage device 12b is provided in addition to the storage device (transmission storage device) 12a. Then, the information (block) transmitted from the external device or the like is stored in the storage device 12a and the retransmission storage device 12b. Alternatively, the block stored in the storage device 12a is stored in the retransmission storage device 12 when retransmission is performed. Then, the retransmission block is read from the retransmission storage device 12b and transmitted to the client device that transmitted the retransmission request. Of course, the transmission block and the retransmission block may be stored in the storage device 12a. Alternatively, the block stored in the storage device 12a may be read, transmitted, and retransmitted.
- the server device 11 transmits the block requested to be retransmitted by the client device. According to the total number of (unreceived blocks), it is determined whether or not to retransmit blocks by the multicast or multicast method. Of course, the server device 11 responds to the retransmission request from the client device by the unit. Only the cast method may be used, or only the multicast method may be used.
- the server device 11 determines the amount of data in the network 10 per unit time and controls the number of blocks to be transmitted to the network 10 based on the amount of data in the network (bandwidth control). Can also. This makes it possible to appropriately adjust the amount of data in the network and to prevent a reduction in transmission efficiency.
- the operation of the server device 11 is not limited to the operation shown in FIGS. 9 to 11.
- the server device 11 restarts the transmission count of the client device in accordance with the predetermined information.
- the server device 11 increments the transmission counter of the client device by one.
- the server device 11 stops the transmission operation of the blocks constituting the predetermined information when the transmission power of each client device corresponding to the predetermined information becomes equal to the total number of blocks of the predetermined information. I do.
- a second embodiment of the communication method of the present invention will be described. This embodiment is suitable for a case where a streaming system is used as a system for reproducing information (content).
- the communication device that implements the present embodiment can be composed of the same server device (information transmitting device) and client device (information receiving device) as in the first embodiment.
- information is divided into a plurality (two or more) groups (hereinafter, referred to as “segments”). Each segment contains one or more blocks.
- Figure 15 shows an example where information is divided into segments and blocks.
- the information is divided into 15 blocks X1 to X15 in order from the top.
- blocks X 1 to X3 are in the first segment 1 (S egl)
- blocks X 4 to X 6 are in the second segment 2 (S eg 2)
- blocks X 7 to X 9 are in the third segment 3 (S eg 3)
- block XI 3 ⁇ : XI 5 into 5th segment 5 (S eg 5) I have.
- a segment (a block included in a segment) is transmitted, for example, in the following manner.
- a segment is sent when its transmission is requested.
- the segment may be transmitted after the transmission of the segment is completed, or the transmission of the segment may be extended. Good.
- To extend the transmission of the segment use the method used in the first embodiment. For example, if segment 1 is composed of blocks X1, X2, X3, the blocks included in that segment, such as blocks XI, X2, X3, XI, X2, etc. It is transmitted cyclically in the prescribed order. Multiple segments may be transmitted at the same time or sequentially (the next segment is transmitted after the transmission of one segment is completed).
- FIG. 16 shows an example of the transmission order of each of the segments 1 to 5 when there is one client device.
- the pentagonal arrow indicates the transmission period of the corresponding segment (the block included in the segment).
- each of the segments 1 to 5 is transmitted in order.
- send segment 2 in the following order:
- the time required for the client 1 to receive the predetermined information after transmitting the transmission request REQ 1 of the predetermined information is included in each of the segments 1 to 5.
- Blocks XI ⁇ This is the total time required to transmit XI5.
- the transmission speed (transfer speed) of the server device is the sum of the transmission speeds (transfer speeds) of each segment 1 to 5.
- the transfer time is shorter than in the case of transmitting the segments sequentially.
- the load on the communication line increases, so that it may be necessary to wait for transmission of other information.
- Transmission of each segment is started, for example, by restarting the transmission counter of the client device corresponding to each segment (resetting the count value to “0”). For example, when a transmission request (REQ 1) is transmitted from the client device (1) requesting transmission of predetermined information composed of segments 1 to 5 from the segment 1, the transmission counter “segment 1—client 1” " Be started. As a result, the blocks X1 to X3 included in the segment 1 are sequentially transmitted to the client device (1). When the transmission counter “segment 2—client 1” is restarted, the blocks X 4 to X 6 included in segment 2 are transmitted to the client device (1) in order.
- the client device When receiving the block of each segment, the client device (1) performs a reproduction process for each received segment or using a plurality of received segments. This reproduction process is executed while sequentially receiving segments.
- the packet of each block includes, for example, segment total information indicating the total number of segments constituting predetermined information, segment division order information indicating the order of the segment including the block, and a block indicating the total number of blocks forming the segment. It includes total number information, block division order information indicating the order of blocks, and the like.
- Each client device executes a process of receiving a block, a process of combining blocks, and the like, based on each piece of information contained in a packet of a received block.
- the transmission process of transmitting a transmission request (REQ 1) from the client device (1) to the server device 11 and the group address (INF 1) from the server device 11 to the client device (1) are performed.
- the description of the transmission process to be transmitted is omitted.
- Various methods can be used for transmitting the transmission request (REQU). For example, a method of transmitting a transmission request (REQU) for each segment constituting predetermined information may be used. Alternatively, a method of transmitting a predetermined information transmission request (R EQ) only once at the beginning may be used.
- the former method is suitable when an arbitrary segment is received by the information receiving device. Further, the latter method is suitable when the information receiving apparatus receives predetermined information from the first segment or from an arbitrary segment. When the latter method is used, the information transmitting apparatus automatically starts transmission of the next segment when transmission of a segment ends.
- the identification number of the segment requesting transmission and the identification number of the segment starting transmission can be indicated by various methods such as being included in a transmission request (REQU).
- a transmission request REQ 1 requesting transmission of each segment is transmitted from the client device (1), and each segment 1 (a block included in each segment) is transmitted from the server device 11 to the client device (1).
- This figure shows the operation when a transmission request (REQ 2) requesting transmission of the same segment 1 of the same information is transmitted from the client device (2) during transmission to the client. In other words, it shows the operation when transmission of the same segment as the transmitting segment is requested.
- the client device (1) transmits a transmission request (REQ1-S1) requesting transmission of predetermined information from the segment 1 to the server device 11.
- the server device 11 Upon receiving the transmission request (REQ 1 -S 1) transmitted from the client device (1), the server device 11 sends the client device (1) a group address (for example, a group address I NF 1 _ S 1). Send.
- a group address for example, a group address I NF 1 _ S 1).
- the server device 11 restarts the transmission count “segment 1—client 1” of the client device (1) assigned to the segment 1.
- the blocks X 1 to X 3 constituting the segment 1 are transmitted in the order specified by the group address I NF 1 —S 1.
- the count value of the transmission counter “segment 1—client 1” is incremented by one each time blocks X 1 to X 3 are transmitted by being designated by the group address I NF 1—S 1.
- the client device (1) When the client device (1) receives the group address I NF1-S1 transmitted from the server device 11, it stores it as the group address of the group to which it belongs. Then, the client device (1) receives and stores the blocks X1 to X3 in which the group address I NF1-S1 is specified. After the transmission of block XI, it is assumed that a transmission request (REQ2-S1) requesting transmission of the same information from segment 1 from client device (2) to server device 11.
- a transmission request (REQ2-S1) requesting transmission of the same information from segment 1 from client device (2) to server device 11.
- the server device 11 Upon receiving the transmission request (REQ 2 -S 1) transmitted from the client device (2), the server device 11 gives the client device (2) a group address (for example, a group address I NF 2 — S 2). ). Further, the server device 11 restarts the transmission counter “segment 1_client 2” of the client device (2) assigned to the segment 1. At this time, it is preferable to set the network so that each block reaches the client device (2) that has transmitted the transmission request REQ2-S1.
- the client (1) and the client device (2) When the client (1) and the client device (2) receive the group address I NF2-S2 transmitted from the server device 11, they store them as the group address of the group to which they belong.
- the count value of the transmission count “Segment 1—Client 1” does not match the total number of blocks in segment 1, so the block X 2 Is transmitted by being specified by the group addresses I NF1 and I NF2.
- the client device (1) and the client device (2) receive the block X2 specified by the group addresses I NF1-S1 and INF2-S2 transmitted from the server device 11.
- the block X3 is also transmitted with the group addresses INF1-S1 and INF2-S2 specified.
- the client device (1) When the client device (1) completes the reception of the blocks X1 to X3 included in the segment 1, the client device (1) transmits a transmission request REQ1—S2 requesting the transmission of the subsequent segment 2 to the server device 11 . Whether or not all of the blocks included in the segment have been received is determined, for example, based on the total number of blocks constituting the segment, the number of received blocks (division identification information into blocks), or error detection / correction information. Separate.
- the server device 1 1 transmits the transmission request R EQ 1-transmitted from the client device (1).
- a group address for example, group address INF1-S2
- the server device 11 restarts the transmission power of the client device (1) assigned to the segment 2 “segment 2—client 1”.
- the blocks X4 to X6 constituting the segment 2 are specified and transmitted by the duplicate address INF1-S2.
- the server apparatus 11 transmits the block X1 of the segment 1 and the block X4 of the segment 2 at the same time.
- the expression that multiple blocks are transmitted at the same time means, for example, that if there are multiple channels that can transmit blocks at the same time, multiple blocks are transmitted at the same time on multiple channels. You. Alternatively, when a plurality of channels for transmitting blocks at different times are provided, this means that each block is transmitted at the transmission time of each of the plurality of channels.
- the client device (2) When the client device (2) completes the reception of the blocks X2 to X1 included in the segment 1, the client device (2) transmits a transmission request R EQ2—S2 requesting transmission of the subsequent segment 2 to the server device 11. 'Similarly, the blocks included in each segment are transmitted to each client device by specifying the group address assigned to each client device.
- Each client device transmits an arbitrary segment by a transmission request REQ. You can ask for trust. .
- a transmission request can be made for each segment, so that only necessary segments can be received. Further, as for the transmission method of the same segment, since the same method as the communication method of the first embodiment is used, the same effect as in the first embodiment is obtained.
- a transmission request REQ 1 requesting transmission of predetermined information from the first segment 1 is transmitted from the client device (1).
- the client device (2) requests that the same information be transmitted from the first segment 1.
- the client device (2) can simultaneously receive blocks included in a plurality of different segments.
- simultaneous reception means that, for example, if multiple channels capable of transmitting multiple blocks at the same time are provided, it is possible to receive multiple blocks transmitted at the same time on multiple channels. It means you can do it.
- a plurality of channels for transmitting blocks at different times it means that each block transmitted at the transmission time of each of the plurality of channels can be received.
- the client device (1) transmits to the server device 11 a transmission request R EQ 1 requesting transmission of predetermined information from the segment 1.
- a transmission request R EQ 1 including identification information of predetermined information and request information requesting transmission from the segment 1 is transmitted to the server device 11.
- the server device 11 Upon receiving the transmission request REQ 1 transmitted from the client device (1), the server device 11 transmits a group address (for example, a group address INF 1) to the client device (1).
- Server device 1 1 is assigned to segment 1 Restart the transmission counter “Segment 1—Client 1” of the client device (1) (reset the count value to “0”).
- the blocks X1, X2, and X3 included in the segment 1 are sequentially transmitted with the group address I NF1 specified. Transmission count The count value of “Segment 1—Client 1” is incremented by 1 each time blocks X 1 to X 3 are transmitted with the group address I NF 1 specified.
- it is preferable to set the network so that the blocks X1 to X3 reach the client device (1) that has transmitted the transmission request REQ1.
- the client device (1) Upon receiving the group address INF1 transmitted from the server device 11, the client device (1) stores it as the group address of the group to which the client device (1) belongs. Then, the client device (1) receives and stores the blocks X1 to X3 in which the group address I NF1 is specified.
- the client device (2) After transmitting the block XI, the client device (2) has transmitted a transmission request REQ2 to the server device 11 requesting transmission of the same information from the segment 1.
- the server device 11 Upon receiving the transmission request REQ2 transmitted from the client device (2), the server device 11 transmits a group address (for example, a group address INF2) to the client device (2). In addition, the server device 11 restarts the transmission count “segment 1—client 2” of the client device (2) assigned to the segment 1. As a result, the blocks X2, X3, and XI included in the segment 1 are sequentially transmitted with the group address INF2 specified. At this time, it is preferable to set the network so that the blocks X2 to X1 reach the client device (2) that has transmitted the transmission request. '
- the count value of the transmission counter “Segment 1—Client 1” is the segment Since the total number of blocks does not match 1, the blocks X2 and X3 are transmitted with the group addresses INF1 and INF2 specified.
- the server apparatus 11 transmits the next segment when the transmission counter “segment 1—client 1” times out. Automatically restarts “Segment 2—Client 1” for the transmission counter of the client device (1) assigned to 2.
- the blocks X4 to X6 included in the segment 2 are transmitted with the group address INF1 specified.
- block 1 of segment 1 and block 4 of segment 2 are transmitted simultaneously.
- the server device 11 transmits the group address I NF 1 to the client device (2).
- the client device (2) receives and stores the group address INF1 transmitted from the server device 11. Thus, the client device (2) receives and stores the block in which the group address INF1 or INF2 is specified.
- the client device (2) reads ahead the block X4 of the segment 2 specified by the group address INF2 while receiving the block X1 of the segment 1 specified by the group address INF1. Receive.
- the server device 11 Even if the server device 11 transmits block X3, the count value of the transmission counter “segment 1—client 2” does not match the total number of blocks in the segment, so the server device 11 continues to transmit block X1. That is, the transmission of the block of the segment (segment 1 in this case) being transmitted when receiving the transmission request REQU2 transmitted from the client device (2) is extended. As a result, the client device (2) can early receive the block of the first segment 1 constituting the predetermined information.
- block X1 is transmitted by specifying group address INF1, the transmission count “Segment 1—Client 2” times out.
- the server device 11 stops the process of transmitting the block constituting the segment 1 by specifying the group address INF 2.
- the server apparatus 11 transmits the blocks X5 to X9 after the block X4 of the segment 2 by specifying the group addresses INF1 and INF2. In this way, after synchronization, the blocks X4 to X9 need only be transmitted to the client device (1) and the client device (2) only once, which reduces the processing load on the information transmitting device and the load on the communication line. It is reduced.
- the client device (1) and the client device (2) receive and store the blocks X5 to X9 specified with the group addresses INF1 and INF2.
- the server device 11 stops transmitting the protocol included in the segment.
- the method of causing the client device (2) to pre-read and receive the segment 2 transmitted to the client device (1) is not limited to the method of the above embodiment.
- the client device (2) receives a block of segment 1;;), and transmits a block of segment 2 to the client device (1)
- the block transmitted to the client device (1) Can be used by designating the group address INF1 of the client device (1) and the group address INF2 of the client device (2).
- the server device 11 determines whether or not the client device (2) is in the prefetch reception enabled state, and designates a duplicate address of a block to be transmitted according to a result of the determination. In this case, there is no need to transmit the group address I NF 1 of the client device (1) to the client device (2).
- Various methods can be used to simultaneously transmit blocks included in different segments. For example, it is possible to provide a spare channel. When this method is used, the bandwidth is reduced by the number of spare channels, but since blocks are transmitted using the multicast method, there is no need to provide many spare channels.
- the client device (1) and the client device (2) request to transmit predetermined information from the first segment. It is applicable in other cases. For example, it can be applied to the case shown in FIG. In FIG. 21, the client device (1) transmits a transmission request REQ 1 requesting that predetermined information be transmitted from the first segment 1, and transmits a segment 3 block to the client device (1). This shows the operation when the client device (2) transmits a transmission request REQ 2 requesting that the same information as the predetermined information be transmitted from the third segment 3 when the transmission is performed.
- the transmission of the block of segment 3 that is transmitted when the server device 11 receives the transmission request R EQ 2 transmitted from the client device (2) is extended. This allows the client device (2) to receive the segment 3 block early.
- the client device (2) receives the block of segment 4 transmitted to the client device (1) while receiving the block of segment 3 in advance.
- the count value of the transmission counter “segment 4—client 2 J” allocated to segment 4 becomes “segment 4—client 2”. Synchronized to the count value of "1”.
- the count values of the transmission counters of the client device (1) and the client device (2) change synchronously. This reduces the processing load on the information transmitting device and the load on the communication line.
- a transmission request REQ 1 requesting transmission of predetermined information from the first segment 1 is transmitted from the client device (1), and a block of the segment 4 is transmitted to the client device (1).
- This is an operation when a transmission request REQ 2 requesting transmission of the same information as the predetermined information from the second segment 2 is transmitted from the client device (2).
- the client device (1) transmits a transmission request for requesting transmission of predetermined information from the first segment 1; EQ 1 to the server device 11.
- the block included in the third segment 3 is specified and transmitted by the group address I NF 1, the same information as the predetermined information is transmitted from the client device (2) to the second segment 2. It is assumed that a transmission request REQ 2 requesting transmission from a REQ 2 has been transmitted.
- the server device 11 Upon receiving the transmission request REQ2 transmitted from the client device (2), the server device 11 transmits a group address (for example, a duplication address INF2) to the client device (2). At the same time, the transmission counter “segment 2—client 2” of the client device 2 assigned to the segment 2 already transmitted to the client device (1) is restarted. Then, the server 11 transmits the block of the segment 4 specified by the group address I NF 1 and the block of the segment 2 specified by the group address I NF 2 at the same time.
- a group address for example, a duplication address INF2
- the client device (2) receives and stores the group address I NF2. Then, the client device (2) receives and stores the block in which the group address INF2 is specified.
- Server device 1 1 is a client device (1) assigned to segment 4
- the transmission counter “Segment 4—Client 1” times out, the process of transmitting the block included in Segment 4 by specifying the group address INF 1 is stopped.
- the server device 11 restarts the transmission counter “Segment 5—Client 1” of the client device (1) assigned to Segment 5 following Segment 4.
- the server device 11 sends the group address of the client device (1) to the client device (2) in order for the client device (2) to read ahead the segment 5 block to be transmitted to the client device (1).
- the server apparatus 11 transmits the block of the segment 5 specified by the group address INF 1 and the block of the segment 2 specified by the group address INF 2 at the same time.
- the client device (2) receives and stores the group address I NF 1. Then, the client device (2) receives and stores the block in which the group address INF1 or INF2 is specified.
- the server device 1 1 specifies the block included in segment 2 with the group address INF 2. Cancel the sending process. At the same time, restart the transmission counter “Segment 3 — Client 2” of the client device (2) assigned to segment 3 that has been transmitted to client device (1). In addition, since the client device (2) receives the block of segment 5 in advance, the count value of the transmission count “segment 5—client 2” of the client device (2) assigned to segment 5 is calculated. Synchronize with the count value of the transmission counter “segment 5 _ client 1” of the client device (1) that has already started counting the blocks of segment 5. As a result, the server device 11 simultaneously transmits the block of the segment 5 specified by the group address INF1 and the block of the segment 3 specified by the group address INF2.
- the client device (1) receives and stores the block in which the group address INF1 is specified. Further, the client device (2) receives and stores the block in which the group address INF1 or INF2 is specified.
- the server device 11 stops the process of transmitting the block of the segment 5 by specifying the block address INF1. Then, the block of segment 3 and the block of segment 4 which have been transmitted to the client device (1) but not transmitted to the client device (2) are designated by the group address INF2 and transmitted.
- the block of segment 5 has already been sent to the client device (2).
- the server apparatus 11 does not execute the process of specifying the block of the segment 5 with the group address INF2 and transmitting it. That is, the server device 11 transmits to the client device (2) the block of segment 4 that had been transmitted when the transmission request REQ 2 transmitted from the client device (2) was received, and the transmission counter “segment 4 ⁇ 1”.
- the process of transmitting the block of segment 4 with the group address INF 2 specified is stopped.
- segments not transmitted to the client device (1) except for the segment (segment 4) transmitted to the client device (1) when the transmission request transmitted from the client device (2) is received. (Segment 5) is transmitted to the client device (1) and the client device (2), and the segment (Segment 4) transmitted to the client device (1) and the segment (Sent to the client device (1)) Segments 2 to 4) are transmitted again to the client device (2).
- the segments transmitted to the client device (1) and the blocks included in the segments (segments 2 to 4) being transmitted to the client device (1) are sequentially transmitted by specifying the group address INF2. You. As a result, the number of blocks transmitted to the client device (2) that requests transmission of the same information as the predetermined information later can be reduced.
- the specified segment can be transmitted in a short time to a client device that requests transmission of the same information as the predetermined information later. Further, the processing load on the information transmitting device and the load on the communication line can be reduced. At this time, the block included in the segment (segment 2) transmitted first to the client device (2) and the block included in the segment (segment 4) being transmitted to the client device (1) are transmitted simultaneously. Is done.
- the transmission request RE transmitted from the client device (2) is The block of the segment being transmitted when Q2 is received is not transmitted to the client device (2). That is, the client device is configured to receive the blocks included in each segment in order from the first block, instead of receiving the blocks from the middle.
- the segment (segment 3) transmitted to the client device (1) can be received by the client device (2). You can also.
- a transmission request REQ 1 requesting transmission of predetermined information from the first segment 1 is transmitted from the client device (1), and a block of the segment 3 is transmitted to the client device (1).
- the operation when the transmission request REQ 2 requesting that the same information as the predetermined information be transmitted from the segment 1 is transmitted from the client device (2).
- the server device 1 1 sends the transmission counter “Segment 4—Client” of the client device (1) assigned to the next segment 4 to be transmitted to the client device (1). 1 ”is restarted. At this time, the power of the transmission counter “Segment 3—Client 2” Since the event value does not match the total number of blocks in segment 3 (timeout does not occur), the process of transmitting the block of segment 3 by specifying group address INF 2 continues.
- the client device (2) transmits the group address INF 1 of the client device (1) to the client device (2) so that the next block of the segment 4 to be transmitted to the client device (1) is prefetched and received by the client device (2). Therefore, the server device 11 1 has the segment 4 block specified by the group address INF 1, the segment 3 block specified by the group address INF 2, and the group address INF 2 , Transmit the block of segment 1 at the same time.
- the client device (1) receives and stores the block in which the group address INF1 is specified.
- the client device (2) receives and stores the group address I NF 1 transmitted from the server device 11.
- the client device (2) receives and stores the block designated with the group address INF1 or INF2.
- the server device 11 stops the process of specifying the segment 3 block with the group address INF 2 and transmitting.
- the client device (2) is prefetching and receiving the subsequent block of segment 4.
- the server device 11 counts the count value of the transmission counter “segment 4—client 2” of the client device (2) assigned to segment 4 and the client device that has already started counting the segment 4 block. Synchronize with the count value of the transmission counter "Segment 4-Client 1" of (1). Thereafter, the server device 11 restarts the transmission count “segment 2—client 2” and restarts the transmission count “segment 5—client 1”.
- the blocks of segments (segments 4 and 5) that have not been sent to the client device (1) are group addresses IN
- the block of the segment (segments 2 to 4) which has been transmitted by specifying F1 and INF2 to the client device (1) is specified by the group address INF2 and transmitted again.
- the number of blocks to be transmitted to the client device (2) requesting transmission of the same information as the predetermined information later can be smaller than in the embodiment shown in FIG. Therefore, the designated segment can be transmitted in a short time to a client device that requests transmission of the same information as the predetermined information later. Further, the processing load on the information transmission device and the load on the communication line can be reduced.
- the predetermined information is transmitted to two client devices.
- the predetermined information can be transmitted to three or more client devices.
- a transmission request REQ 1 requesting transmission of predetermined information from the first segment 1 is transmitted from the client device (1), and a block of the segment 3 is transmitted to the client device (1).
- a transmission request REQ 2 requesting that the same information as the predetermined information be transmitted from the segment 1 is transmitted from the client device (2), and the client 1 transmits the segment 1 to the client device (2).
- the figure shows an operation when a transmission request REQ 3 requesting that the same information as predetermined information be transmitted from the first segment 1 from the client device (3).
- the server device 11 upon receiving the transmission request REQ 1 transmitted from the client device (1), the server device 11 sends a group address (for example, a group address INF 1) to the client device (1). Send to Then, the transmission counters “segment 1—client 1”, “segment 2—client 1”, and “segment 3—client 1” are sequentially restarted, and the blocks of segment 1 to segment 3 are designated by group address INF 1. And transmit them sequentially.
- a group address for example, a group address INF 1
- the client device (1) receives and stores the group address I NF 1 transmitted from the server device 11. Then, it receives and stores the block designated with the group address INF1.
- the server device 11 When the server device 11 receives the transmission request REQ 2 transmitted from the client device (2), the server device 1 1 is assigned to the segment 1 already transmitted to the client device (1). Restart the transmission counter “Segment 1—Client 2” of the client device (2). At the same time, a group address (for example, group address INF 2) is transmitted to the client device (2).
- a group address for example, group address INF 2
- the client device (2) receives and stores the group address I NF 2 transmitted from the server device 11. Further, the client device (2) receives and stores the block in which the group address INF2 is specified.
- the server device 11 When transmission of the block of segment 3 to the client device (1) is completed, the server device 11 sends the transmission counter of the client device (1) assigned to segment 4 to be transmitted to the client device (1) next. Restart segment 4-client 1 J. At this time, in order for the client device (2) to read ahead the segment 4 block transmitted to the client device (1), the client device (2) sends the client device (2). Send the group address INF 1 of 1).
- the client device (2) receives and stores the group address I NF 1 transmitted from the server device 11. Further, the client device (2) receives and stores the block in which the group address INF1 or INF2 is specified.
- the transmission request REQ 3 requesting that the same information as the predetermined information be transmitted from the first segment 1 from the client device (3). Is transmitted.
- the server device 11 When the server device 11 receives the transmission request REQ 3 transmitted from the client device (3) while transmitting the block of the segment 1 to the client device (2) by designating it with the group address INF2, Restart the transmission counter “Segment 1—Client 3” of the client device (3) assigned to segment 1. At the same time, a group address (for example, group address I N F 3) is transmitted to the client device (3). At this time, the server device 11 simultaneously transmits a block of the segment 4 in which the group address INF1 is specified and a block of the segment 1 in which the group addresses INF2 and INF3 are specified.
- a group address for example, group address I N F 3
- the client device (3) receives and stores the group address INF3 transmitted from the server device 11. Further, the client device (3) receives and stores the block in which the group address INF3 is specified.
- the server device 1 1 sends the transmission counter “Segment” of the client device (2) assigned to the next segment 2 to be transmitted to the client device (2).
- 2—Restart Client 2 since the client device (2) receives the block of the segment 4 in advance, the transmission count of the client device (2) assigned to the segment 4 “segment 4—client 2” Synchronize the value to the count value of the send counter “Segment 4—Client 1” that has already started counting the blocks of segment 4.
- the server device 1 1 has a segment 4 block, a group address INF 2 specified, a segment 2 block, a group address INF 3 specified, a segment 1 specified with the group address INF 1 and INF 2. Send the blocks at the same time.
- the server device 11 sends the group address INF 2 of the client device (2) to the client device (2). Send to 3).
- the client device (3) receives and stores the group address I NF 2 transmitted from the server device 11. Then, the client device (3) receives and stores the block designated with the group address INF2 or INF3.
- the server device 11 includes a segment 5 block in which the group address INF 1 and INF 2 are specified, a segment 2 block in which the group address INF 2 is specified, and a segment in which the group address INF 3 is specified. Transmit 1 block at the same time.
- the server device 11 sends at least one of the group address INF 1 or INF 2 of the client device (1) or the client device (2) (for example, the group address INF 1) is transmitted to the client device (3).
- the client device (3) receives and stores the group address I NF 1 transmitted from the server device 11. In this case, the client device (3) receives and stores the block designated with the group address INF1, INF2, or INF3.
- the client device (3) prefetches the segment 2 and segment 5 blocks. Therefore, when the transmission counter “segment 1_client 3 J times out, the count value of the transmission counter“ segment 2_client 3 ”of the client device (3) assigned to segment 2 is already Synchronize with the count value of the transmission counter “Segment 2—Client 2” that has started counting blocks. In addition, the count value of the transmission counter “segment 5—client 3” of the client device (3) assigned to segment 5 is counted down by the transmission counter “segment 5—client 1” that has already started counting blocks of segment 5. Or transmission counter ⁇ Synchronize with the count value of segment 5—client proposal and 2 ”.
- the server device 11 simultaneously transmits the block of the segment 5 in which the group addresses INF1, INF2 and INF3 are specified, and the block of the segment 2 in which the group addresses INF2 and INF3 are specified.
- the server device 11 transmits a block of the segment 3 in which the group addresses INF2 and INF3 are specified, and a block of the segment 4 in which the group address INF3 is specified.
- the number of blocks to be transmitted to the client device (2) and the client device (3) that later requests transmission of the same information as the predetermined information is small. Therefore, the specified segment can be transmitted in a short time to a client and a device that later request transmission of the same information as the predetermined information. Also, the processing load on the information transmission device and the load on the communication line can be reduced.
- the case where the blocks of each segment are transmitted sequentially has been described above. However, if the client device can receive the blocks of a plurality of segments at the same time, the blocks of the plurality of segments can be transmitted simultaneously. If blocks of a plurality of segments can be transmitted and received simultaneously, the transfer time can be further reduced.
- FIG. 25 shows an operation in a case where the client device can simultaneously receive segments 1 to 5 constituting predetermined information.
- the client device (1) transmits to the server device 11 a transmission request R EQ 1 requesting transmission of predetermined information from the first segment 1.
- the server device 11 Upon receiving the transmission request R EQ 1 transmitted from the client device (1), the server device 11 transmits a group address (for example, a group address INF 1) to the client device (1). Further, the transmission counter of the client device 1 is reset. As a result, the server 11 transmits the blocks of the segments 1 to 5 at the same time by specifying the group address INF1. If the total number of blocks in each segment is the same, only one transmission counter is required. On the other hand, when the total number of blocks in each segment is different, it is preferable to provide a transmission count for each client device for each segment.
- a group address for example, a group address INF 1
- the client device (1) receives and stores the block in which the group address INF1 is specified.
- a transmission request REQ requesting that the same information as the predetermined information be transmitted from the client device (2) when the blocks of the segments 1 to 5 are specified and transmitted by the duplicate address INF1. Assume that 2 has been sent.
- the server device 11 When receiving the transmission request REQ2 transmitted from the client device (2), the server device 11 transmits a group address (for example, a group address INF2) to the client device (2). Also, the transmission counter of the client device (2) is reset. Thereby, the server device 11 specifies the blocks of the segments 1 to 5 that have not been transmitted to the client device (1) by using the group addresses INF1 and INF2.
- the client device (2) receives and stores the group address INF2 transmitted from the server device 11. Further, the client device (2) receives and stores the block in which the group address INF2 is specified.
- a transmission method as shown in FIG. 26 is also possible.
- the transmission method shown in FIG. 26 for example, when a transmission request REQ 1 requesting transmission of predetermined information composed of segments 1 to 5 from the first segment 1 is transmitted from the client device, first, This is a method in which the block of the first segment 1 is transmitted, and when the transmission of the block of the segment 1 ends, the blocks of the second to fifth segments 2 to 5 are transmitted simultaneously.
- a transmission request REQ 1 requesting transmission of predetermined information from the first segment 1 is transmitted from the client device (1), and the block of segment 1 is specified to be transmitted to the client device (1).
- the operation when the transmission request REQ 2 requesting that the same information as the predetermined information be transmitted from the first segment is transmitted from the client device (2).
- the server device 11 Upon receiving the transmission request REQ 1 transmitted from the client device (1), the server device 11 transmits a group address (for example, a group address INF 1) to the client device. Send to the ant device (1). Also, the transmission counter of the client device (1) corresponding to the first segment 1 is restarted. As a result, the server device 11 transmits the block of the segment 1 by specifying the group address INF1.
- a group address for example, a group address INF 1
- the client device (1) receives and stores the group address I NF 1 transmitted from the server device 11. Further, the client device (1) receives and stores the block in which the group address I NF 1 is specified.
- the client device (2) requests the same information as the predetermined information to be transmitted from the first segment 1. It is assumed that the transmission request has been transmitted.
- the server device 11 Upon receiving the transmission request R EQ 2 transmitted from the client device (2), the server device 11 transmits a group address (for example, a duplication address I N F 2) to the client device (2). As a result, the server device 11 transmits a block that has not been transmitted to the client device (1) among the blocks of the segment 1 by specifying the group addresses INF1 and INF2.
- the client device (2) receives and stores the group address I NF 2 transmitted from the server device 11. Further, the client device (2) receives and stores the block in which the group address I NF 2 is specified.
- the server device 11 stops the process of transmitting the block of the segment 1 by designating the block of the segment 1 with the group address INF1. Also, the transmission counter of the client device corresponding to segments 2 to 5 is restarted. At this time, the block that has been transmitted to the client device (1) before the server device 11 receives the transmission request R EQ 2 has not been transmitted to the client device (2). Therefore, the transmission counter of the client device (2) corresponding to segment 1 has not timed out. Therefore, the server 11 transmits the block of the segments 1 to 5 specified by the group address INF1 and the block of the segment 1 specified by the group address INF2 at the same time.
- the group address of the client device (1) is set. Send INF 1 to the client device (2).
- the client device (2) receives and stores the group address I NF 1 transmitted from the server device 11. Accordingly, the client device (2) receives and stores the block specified by the group address INF1 or INF2. Thus, the client device (2) receives the group address of the client device (1). The block of segment 2 to 5 in which INF 1 is specified is read ahead and received. Therefore, when the transmission counter of the client device (2) corresponding to the segment 1 times out, the server device 11 counts the transmission count of the client device (2) corresponding to the segments 2 to 5 already. Synchronize with the count value of the transmission count of the client device (1) that has started counting blocks 2 to 5. As a result, the server apparatus 11 transmits the blocks not yet transmitted to the client apparatus (1) and the client apparatus (2) by using the group addresses INF1 and INF2 among the blocks of the segments 2 to 5. .
- the number of simultaneous transmissions of blocks of a plurality of segments is only one, but the number of segments to be transmitted simultaneously, the time of simultaneous transmission, the number of times, etc. Can be changed.
- various methods can be used to transmit the blocks of each segment.
- a method of transmitting the segment blocks collectively can be used. For example, transmit blocks 1 to 3 of segment 1, blocks 4 to 6 of segment 2, and blocks 7 to 9 of segment 3.
- a method of transmitting each segment block one block at a time can be used. For example, transmit block 1 of segment 1, block 4 of segment 2, and block 7 of segment 3.
- the transmission speed for transmitting the blocks of each segment is fixed, but the transmission speed may be adjusted for each segment.
- the number of client devices requesting transmission of the predetermined information is small, blocks of all segments are the same. It is unlikely to be sent at times.
- the waiting time of the client device can be reduced by adjusting the sum of the block transmission speeds of all the segments to a predetermined value.
- each client device executes a receiving process of receiving a necessary block from blocks transmitted to the network. For example, each client device determines whether all the blocks included in any of the segments requested to be transmitted have been received, based on the information included in the packet of each block. If it is determined that all the blocks included in any of the segments requested to be transmitted have been received, the reception processing of the blocks included in other segments is executed.
- the server device of the present embodiment executes the same operation as that described above. For this reason, each client device can start receiving the segment requested to be transmitted immediately after requesting the transmission of the segment. In addition, the segment next to the currently received segment can be received in a short time. At this time, Since the blocks are transmitted by the multicast method, the processing load on the server device and the load on the network (communication line) do not increase.
- the group address is transmitted to each client device.
- a group address may be assigned to each client device in advance.
- the group address assigned to each client device in advance may be a different group address or the same group address. In this case, there is no need to transmit a duplicate address from the server device to each client device.
- the present invention has the following effects.
- the server sends one block at a time to the network by multicast.
- the client device receives blocks according to the permutation from blocks that can be received. Therefore, the processing load on the server device and the load on the network can be reduced.
- the other client device transmits the information with a short waiting time. Can be received. That is, there is no need to wait until the next transmission start time as in the conventional example.
- the server device when receiving a retransmission request for an arbitrary block from an arbitrary client device, the server device transmits the block to the client device that transmitted the normal transmission request and the client device that transmitted the retransmission request at the same time.
- the retransmission process is performed as part of the normal transmission process, so the network load does not increase even if the number of retransmission processes increases.
- the present invention is not limited to the configurations described in the embodiments, and various changes, additions, and deletions can be made without changing the gist of the present invention.
- the division order information of each block is transmitted, but it is not always necessary to transmit the division order information of each block. For example, if you know the total number of blocks that make up information and the first or last block, you can recover the information. Wear.
- one server device is provided, but a plurality of server devices may be provided.
- the client-server communication system has been described. However, the present invention can be used for various other communication systems.
- the method of setting the group to which each client device belongs can be changed as appropriate.
- the server device uses a method of determining a group to which the client device belongs each time a transmission request is received from each client device. However, a group address is set in advance for each client device. May be used. In this case, there is no need to transmit the group address from the server device to each client device.
- the communication device receives blocks obtained by dividing predetermined information using the IP multicast method.
- Each block is read from the storage device based on the division order information.
- Blocks are cyclically transmitted as long as a request for transmitting predetermined information is received from the information receiving apparatus before transmitting all blocks constituting predetermined information.
- Blocks obtained by dividing predetermined information (contents) are stored in a storage device.
- the block is read from the storage device and transmitted.
- Processing unit 7 CPU Intel Pentiuml 600MHz Reception management table 5 MEMORY Integrated SDRAM
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA002434245A CA2434245A1 (en) | 2001-01-12 | 2002-01-15 | Methods and apparatus for communicating information via a network |
US10/466,298 US20040049367A1 (en) | 2001-01-12 | 2002-01-15 | Communication device and communication method |
EP02729572A EP1351454A1 (en) | 2001-01-12 | 2002-01-15 | Communication device and communication method |
JP2002557085A JPWO2002056549A1 (ja) | 2001-01-12 | 2002-01-15 | 通信装置及び通信方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001039208 | 2001-01-12 | ||
JP2001-39208 | 2001-01-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2002056549A1 true WO2002056549A1 (fr) | 2002-07-18 |
Family
ID=18902051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2002/000181 WO2002056549A1 (fr) | 2001-01-12 | 2002-01-15 | Dispositif de communication et procede de communication |
Country Status (5)
Country | Link |
---|---|
US (2) | US20020143499A1 (ja) |
EP (1) | EP1351454A1 (ja) |
JP (1) | JPWO2002056549A1 (ja) |
CA (1) | CA2434245A1 (ja) |
WO (1) | WO2002056549A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007531458A (ja) * | 2004-03-29 | 2007-11-01 | ノキア コーポレイション | マルチキャスト/ブロードキャストデータ配信のためのデータ修復強化法 |
JP2010161560A (ja) * | 2009-01-07 | 2010-07-22 | Ntt Docomo Inc | ショートメッセージ制御装置及びショートメッセージ制御方法 |
JP2010213150A (ja) * | 2009-03-12 | 2010-09-24 | Nec Corp | 送信装置、大容量ファイル配信システム、同システムにおけるファィル再送制御方法、再送制御プログラム |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7423982B2 (en) * | 2002-09-09 | 2008-09-09 | Scientific-Atlanta, Inc. | Adaptive communication modes |
US20050044250A1 (en) * | 2003-07-30 | 2005-02-24 | Gay Lance Jeffrey | File transfer system |
US7477653B2 (en) * | 2004-12-10 | 2009-01-13 | Microsoft Corporation | Accelerated channel change in rate-limited environments |
US7996445B2 (en) * | 2007-04-27 | 2011-08-09 | Network Appliance, Inc. | Block reallocation planning during read-ahead processing |
US8335238B2 (en) * | 2008-12-23 | 2012-12-18 | International Business Machines Corporation | Reassembling streaming data across multiple packetized communication channels |
US9148477B2 (en) * | 2009-01-29 | 2015-09-29 | Qualcomm Incorporated | Methods and apparatus for communicating in a wireless system |
US8266504B2 (en) | 2009-04-14 | 2012-09-11 | International Business Machines Corporation | Dynamic monitoring of ability to reassemble streaming data across multiple channels based on history |
US8176026B2 (en) * | 2009-04-14 | 2012-05-08 | International Business Machines Corporation | Consolidating file system backend operations with access of data |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07240725A (ja) * | 1994-02-28 | 1995-09-12 | Sony Corp | 情報提供方法及び装置 |
JPH09191309A (ja) * | 1996-01-09 | 1997-07-22 | Fujitsu Ltd | マルチキャスト通信システム |
EP0785653A2 (en) * | 1996-01-17 | 1997-07-23 | Sharp Kabushiki Kaisha | Telecommunication method permitting efficient data communication |
JPH10200577A (ja) * | 1997-01-08 | 1998-07-31 | Nec Corp | パケット配信システム |
JPH1138984A (ja) * | 1997-07-18 | 1999-02-12 | Yamaha Corp | 通信カラオケシステムのカラオケデータ配信方法および通信カラオケシステム |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5414455A (en) * | 1993-07-07 | 1995-05-09 | Digital Equipment Corporation | Segmented video on demand system |
US5636230A (en) * | 1994-05-31 | 1997-06-03 | Motorola, Inc. | Method for eliminating a receiving data unit as a source of excessive resend requests |
US5553083B1 (en) * | 1995-01-19 | 2000-05-16 | Starburst Comm Corp | Method for quickly and reliably transmitting frames of data over communications links |
JP3547840B2 (ja) * | 1995-03-16 | 2004-07-28 | 株式会社東芝 | マルチメディアサーバ |
US5831662A (en) * | 1996-04-04 | 1998-11-03 | Hughes Electronics Corporation | Near on-demand digital information delivery system and method using signal fragmentation and sequencing to reduce average bandwidth and peak bandwidth variability |
JP3173418B2 (ja) * | 1997-04-18 | 2001-06-04 | 日本電気株式会社 | ストリーム再生制御方式及びプログラムを記録した機械読み取り可能な記録媒体 |
US6415373B1 (en) * | 1997-12-24 | 2002-07-02 | Avid Technology, Inc. | Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner |
US6289012B1 (en) * | 1998-08-03 | 2001-09-11 | Instanton Corporation | High concurrency data download apparatus and method |
JP3709289B2 (ja) * | 1998-09-01 | 2005-10-26 | 株式会社日立製作所 | データ再送を実行するデータ送受信装置及び並列プロセッサシステム |
US6256673B1 (en) * | 1998-12-17 | 2001-07-03 | Intel Corp. | Cyclic multicasting or asynchronous broadcasting of computer files |
US6771642B1 (en) * | 1999-01-08 | 2004-08-03 | Cisco Technology, Inc. | Method and apparatus for scheduling packets in a packet switch |
US6597891B2 (en) * | 1999-04-05 | 2003-07-22 | International Business Machines Corporation | Combining online browsing and on-demand data broadcast for selecting and downloading digital content |
US6859839B1 (en) * | 1999-08-06 | 2005-02-22 | Wisconsin Alumni Research Foundation | Bandwidth reduction of on-demand streaming data using flexible merger hierarchies |
US20050259682A1 (en) * | 2000-02-03 | 2005-11-24 | Yuval Yosef | Broadcast system |
US6557030B1 (en) * | 2000-05-31 | 2003-04-29 | Prediwave Corp. | Systems and methods for providing video-on-demand services for broadcasting systems |
US6876835B1 (en) * | 2000-10-25 | 2005-04-05 | Xm Satellite Radio Inc. | Method and apparatus for providing on-demand access of stored content at a receiver in a digital broadcast system |
-
2002
- 2002-01-11 US US10/044,827 patent/US20020143499A1/en not_active Abandoned
- 2002-01-15 EP EP02729572A patent/EP1351454A1/en not_active Withdrawn
- 2002-01-15 JP JP2002557085A patent/JPWO2002056549A1/ja active Pending
- 2002-01-15 WO PCT/JP2002/000181 patent/WO2002056549A1/ja active Application Filing
- 2002-01-15 CA CA002434245A patent/CA2434245A1/en not_active Abandoned
- 2002-01-15 US US10/466,298 patent/US20040049367A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07240725A (ja) * | 1994-02-28 | 1995-09-12 | Sony Corp | 情報提供方法及び装置 |
JPH09191309A (ja) * | 1996-01-09 | 1997-07-22 | Fujitsu Ltd | マルチキャスト通信システム |
EP0785653A2 (en) * | 1996-01-17 | 1997-07-23 | Sharp Kabushiki Kaisha | Telecommunication method permitting efficient data communication |
JPH10200577A (ja) * | 1997-01-08 | 1998-07-31 | Nec Corp | パケット配信システム |
JPH1138984A (ja) * | 1997-07-18 | 1999-02-12 | Yamaha Corp | 通信カラオケシステムのカラオケデータ配信方法および通信カラオケシステム |
Non-Patent Citations (2)
Title |
---|
H. KALVA ET AL.: "Techniques for improving the capacity of video-on-demand systems", PROCEEDINGS OF THE 29TH ANNUAL HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES, IEEE, vol. 2, 1996, pages 308 - 315, XP002164945 * |
TETSUSHI UNO ET AL.: "Burst tenso o mochiita multi cast eizo haishin hoshiki to sono seino hyoka", THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS GIJUTSU KENKYU HOKOKU, IN99-82, 19 November 1999 (1999-11-19), pages 31 - 36, XP002952425 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007531458A (ja) * | 2004-03-29 | 2007-11-01 | ノキア コーポレイション | マルチキャスト/ブロードキャストデータ配信のためのデータ修復強化法 |
JP2010161560A (ja) * | 2009-01-07 | 2010-07-22 | Ntt Docomo Inc | ショートメッセージ制御装置及びショートメッセージ制御方法 |
JP2010213150A (ja) * | 2009-03-12 | 2010-09-24 | Nec Corp | 送信装置、大容量ファイル配信システム、同システムにおけるファィル再送制御方法、再送制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
CA2434245A1 (en) | 2002-07-18 |
EP1351454A1 (en) | 2003-10-08 |
JPWO2002056549A1 (ja) | 2004-05-20 |
US20020143499A1 (en) | 2002-10-03 |
US20040049367A1 (en) | 2004-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7996567B2 (en) | Audio processing | |
US10645131B2 (en) | Seamless switching between multicast video streams | |
JP5086285B2 (ja) | 映像配信システム,映像配信装置,及び同期補正処理装置 | |
US9071942B2 (en) | MAC based mapping in IP based communications | |
WO2020192152A1 (zh) | 视频传输的方法、根节点、子节点、p2p服务器和系统 | |
US20030206549A1 (en) | Method and apparatus for multicast delivery of information | |
US20040240446A1 (en) | Routing data | |
EP2278832A1 (en) | MAC based mapping in IP based communications | |
JP2006521643A (ja) | メディアベースのファイルを伝送するシステムおよび方法 | |
EP1599003A1 (en) | Transmission/reception system, transmitting device and method, and receiving device and method | |
WO2008084096A1 (en) | System and method for combining pull and push modes | |
JP2013211896A (ja) | 要求応答並列ビデオサーバにおける負荷分散及び受付予定管理 | |
JP2010028812A (ja) | 通信制御装置及び通信制御方法 | |
WO2002056549A1 (fr) | Dispositif de communication et procede de communication | |
KR100526183B1 (ko) | 모바일 애드 혹 네트워크 환경에서 효율적인 데이터송수신을 위한 네트워크 장치 및 데이터 전송 방법 | |
JP2004013440A (ja) | データ配信システム、データ配信システムにおけるデータ中継装置及びデータ中継方法、および当該データ中継方法をコンピュータに実行させるためのプログラム | |
Zimmerman et al. | Retransmission-based error control in a many-to-many client-server environment | |
JP5159973B1 (ja) | 伝送パケットの配信方法 | |
TWI389515B (zh) | 多媒體串流傳輸之錯誤修補方法 | |
JP5257150B2 (ja) | 通信装置、データ通信システム、データ通信方法及び制御プログラム | |
JP2001320367A (ja) | マルチキャスト限定配信方法及びその装置並びにそのプログラムを記録した媒体 | |
JP2003348102A (ja) | サーバ及び情報配信方法実現のためのプログラム | |
WO2002078263A1 (fr) | Procede et systeme permettant la transmission cyclique multi-diffusion de donnees dans un reseau de donnees |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): CA JP KR US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2002557085 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2434245 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 10466298 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2002729572 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2002729572 Country of ref document: EP |