WO2005025150A1 - コンテンツ配信システム及びコンテンツ配信方法 - Google Patents

コンテンツ配信システム及びコンテンツ配信方法 Download PDF

Info

Publication number
WO2005025150A1
WO2005025150A1 PCT/JP2003/011133 JP0311133W WO2005025150A1 WO 2005025150 A1 WO2005025150 A1 WO 2005025150A1 JP 0311133 W JP0311133 W JP 0311133W WO 2005025150 A1 WO2005025150 A1 WO 2005025150A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
distribution
client
server
relay
Prior art date
Application number
PCT/JP2003/011133
Other languages
English (en)
French (fr)
Inventor
Tomoaki Kurosawa
Toshimichi Muramatsu
Original Assignee
Graphin Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Graphin Co., Ltd. filed Critical Graphin Co., Ltd.
Priority to AU2003261862A priority Critical patent/AU2003261862A1/en
Priority to PCT/JP2003/011133 priority patent/WO2005025150A1/ja
Publication of WO2005025150A1 publication Critical patent/WO2005025150A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2407Monitoring of transmitted content, e.g. distribution time, number of downloads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server

Definitions

  • the present invention relates to a content distribution system and a content distribution method in a client server system.
  • the spread of information communication using a wide-area IP network typified by the Internet is not only a form of information communication that sends and receives information (content) between specific hosts, but also responds to requests from an unspecified number of clients.
  • a content distribution server hereinafter referred to as a WWW server
  • a form of information communication was created in which content was distributed.
  • a WWW server using the conventional information communication technology responds to each of the content distribution requests on a one-to-one basis. Is responding. Therefore, with the conventional technology, if content distribution requests are concentrated at once from an unspecified number of clients, the amount of data transferred within a certain period of time on the network increases, making it impossible to transmit the entire content There are cases. In other words, it takes a lot of time (response time) for the entire content to reach the client.
  • a cache server for each group consisting of multiple clients (eg, multiple clients connected to Internet service providers and corporate LANs).
  • a plurality of cache servers are installed on the network connecting the WWW server and the client, and n clients are connected to each of the plurality of cache servers. If no cache server is installed, the WWW server By mirroring the content distributed directly from the Web server to each of the plurality of cache servers, the amount of data transferred between the WWW server and the cache server can be reduced by all clients without installing a cache server. The amount of data transferred between the www server and the client when directly communicating with the www server can be reduced to 1 / ⁇ .
  • the content on the cache server is merely a copy of the original content
  • the request for content transmission from the cache server to the www server increases.
  • the amount of packets passing through the wide area IP network is proportional to the number of cache servers. In other words, as the number of cache servers increases, the amount of data that the WWW server must process in a unit of time when access to the www server occurs simultaneously increases.
  • point-to-point communication such as FTP and HTPP has been performed.
  • the server sends the content based on the content distribution request from the client.
  • the amount of data transmitted by the content distribution server at the time of content distribution increases in proportion to the number of cache servers installed in the network.
  • An object of the present invention is to provide a content distribution system and a content distribution method for making constant the amount of communication per unit time transmitted from a server that distributes content to a wide area IP network regardless of the number of cache servers. It is to do. In particular, when the content is distributed from the distribution server to the relay client as the content including the content B that is highly likely to be requested next by the operation on the content A, even if the number of relay clients increases.
  • Another object of the present invention is to provide a content distribution system and a content distribution method in which the number of blocks obtained by dividing content transmitted from a distribution server to a wide area IP network does not change, so that the load on the distribution server is constant.
  • a network a distribution server connected to the network and distributing a plurality of contents via the network, and a plurality of relay clients connected to the network and receiving the contents via the network;
  • a network system comprising: a plurality of clients connected to the network; and a plurality of clients connected to the plurality of relay clients via the network.
  • At least one of the relay clients transmits a content distribution request for requesting distribution of at least one of the plurality of contents, and the distribution server responds to the content distribution request.
  • the requested content The content is divided into a plurality of blocks and transmitted to the relay client via the network, and during the transmission of the requested content, a content distribution request of the content requested by another relay client is transmitted.
  • a content distribution system that transmits the block not transmitted to the relay client to the relay client and the other relay client, and transmits the block transmitted to the relay client to the other relay client is used. To deliver content.
  • the distribution server divides the content into a plurality of blocks, transmits the plurality of blocks in a predetermined order, and is requested by the other relay client during the transmission.
  • transmission of the content to the other relay client is started from a block that has not been transmitted to the relay client, and transmission of the block is cyclically repeated.
  • At least one of the plurality of clients transmits a content transmission request to a relay client connected to the client, and the relay client responds to the content transmission request, and A distribution request is transmitted to the distribution server.
  • each of the plurality of relay clients includes a storage unit, wherein the storage unit stores the content transmitted from the distribution server, and each of the plurality of relay clients includes: In response to a content transmission request requested by at least one of the plurality of clients, the content stored in the storage unit or the content transmitted from the distribution server is distributed to the client.
  • each of the plurality of relay clients responds to a content transmission request transmitted from at least one of the plurality of clients, and transmits the content stored in the distribution server.
  • An update date and time is searched, and as a result of the search, the update date and time of the content stored in the storage unit and the update date and time of the content stored in the distribution server are compared. As a result of the comparison, the update date and time are different. If the distribution server has the latest Transmitting a content distribution request, the distribution server transmits the latest content in response to the latest content distribution request transmitted from the relay client, and the relay client receives the transmitted latest content. And updating the content in the storage unit of the relay client to the latest content in response to the reception, and distributing the latest content to the client.
  • each of the plurality of relay clients responds to a content transmission request transmitted from at least one of the plurality of clients, and transmits the content stored in the distribution server.
  • An update date and time is searched, and the search result is compared with the content update date and time stored in the storage unit and the content update date and time stored in the distribution server, and as a result of the comparison, the update is performed.
  • each of the plurality of relay clients transmits the content stored in the storage unit to the client.
  • the distribution server transmits a request for retransmission of the unreceived block to the distribution server, and the distribution server transmits the unreceived block to the relay client in response to the retransmission request.
  • the distribution server when the distribution server receives a content distribution request for the content from another relay client during retransmission of the unreceived block requested to be retransmitted, In response to the distribution request, a block that has not been transmitted to the relay client is transmitted to the address of the relay client and the address of the other relay client, and a block that has been transmitted to the relay client is transmitted to the other relay client. Send.
  • the distribution server transmits the unreceived blocks requested to be retransmitted in a predetermined order, and in the middle of the transmission, transmits the content requested by the other relay client.
  • the distribution server transmits the unreceived blocks requested to be retransmitted in a predetermined order, and in the middle of the transmission, transmits the content requested by the other relay client.
  • the distribution server transmits the unreceived blocks requested to be retransmitted in a predetermined order, and in the middle of the transmission, transmits the content requested by the other relay client.
  • transmission of the content to the other relay client is started from a block that has not been transmitted to the relay client, and the transmission is cyclically repeated. After the completion of the transmission, the untransmitted block is transmitted to the other relay client.
  • the relay client when the relay client has completed receiving all the blocks of the content divided into the plurality of blocks, the relay client transmits a content reception completion notification to the distribution server, and the distribution server retrieves, in response to the content reception completion notification, whether there is another relay client continuing to receive the content.
  • the distribution server further determines that, as a result of the search, if there is another relay client that is continuing to receive its own content, the distribution server sends the other relay client to the other relay client. Repeating the transmission of the content,
  • the content distribution system further includes a control server, and at least one of the plurality of relay clients transmits a distribution server address notification request to the control server.
  • the relay client transmits seven addresses of a delivery server for delivering the content, and the relay client sends the address to the relay client. And send an IJ content distribution request to the server.
  • control server further notifies the update date and time of the content stored in the delivery server in response to the delivery server address notification request transmitted by the control server.
  • the relay client compares the content update time stored in the storage unit with the update date of the content stored in the FJU sri distribution server based on the m notification.
  • each of the plurality of relay clients transmits a latest content distribution request to the distribution server when the update date and time are different as a result of the comparison
  • the distribution server includes: The relay client The relay client transmits the latest content in response to the latest content distribution request transmitted from the client, the relay client receives the transmitted latest content, and the relay client responds to the reception.
  • the content of the storage unit is updated to the latest content, and the latest content is delivered to the client. If the result of the comparison shows that the update date and time are the same, each of the plurality of relay clients The content stored in the section is transmitted to the client.
  • the content distribution system further includes a WWW server, at least one of the plurality of relay clients transmits a distribution server address notification request to the control server, and the control server transmits the request to the control server.
  • the relay server transmits the address of the distribution server or the address of the www server to the relay client.
  • the control server inquires of the distribution server whether or not the content can be distributed. If the content distribution is possible, the address of the distribution server is transmitted to the relay client. If the content distribution is not possible from the distribution server, the WWW server inquires whether the content distribution is possible. When the content can be distributed, the address of the WWW server is transmitted to the relay client. When the content cannot be distributed from the distribution server or the WWW server, an error response is transmitted to the relay client.
  • the distribution server when the distribution server distributes the content to the relay client when copying (synchronizing) the content from the www server according to an instruction from the control server, the distribution server receives the distribution at that time.
  • the CT-RESEND message is sent to each relay client, and the distribution of the latest content is resumed.
  • Each relay client in response to the CT-RESEND message, discards the content received at that time and starts receiving content anew.
  • the relay client and the client each use a resource (CPU, storage device, and the like) of the device by using a system in which the relay client and the client are provided in one device. The content is distributed using the shared content distribution system.
  • a network a distribution server connected to the network and distributing a plurality of contents via the network, and a plurality of relay clients connected to the network and receiving the contents via the network And operating a content distribution system including a plurality of clients connected to the network and connected to each of the plurality of relay clients via the network, wherein the program stores a plurality of contents. Transmitting a content distribution request requesting distribution of at least one content of the plurality of contents; and dividing the requested content into a plurality of blocks in response to the content distribution request. Sending the steps and the plurality of blocks In the course of transmitting the requested content to the relay client, a block that has not been transmitted to the relay client in response to a content distribution request of the content requested by another relay client. Transmitting to the relay client and the other relay client, and transmitting a block that has been transmitted to the relay client to the other relay client. Operate the content distribution system using the executable program.
  • the content distribution system is operated using the executable program.
  • at least one client sends a content transmission request And a step of transmitting a content distribution request in response to the content transmission request, wherein the relay client operates the content distribution system using a program executable on a computer.
  • each of the plurality of relay clients includes a storage unit, wherein the storage unit stores the content transmitted from the distribution server, and stores the content in the storage unit in response to the content transmission request. And operating the content distribution system using a computer-executable program including a method of distributing the transmitted content or the content transmitted from the distribution server to the client.
  • each of the plurality of relay clients transmits the content stored in the storage unit to the client.
  • a content distribution system is operated using a program executable by a computer.
  • the distribution server sends the untransmitted block retransmission request to the distribution server. Send to And transmitting the unreceived block to the relay client in response to the retransmission request. Let it work.
  • the relay client when a content distribution request for the content is received from another relay client during retransmission of the unreceived block for which the retransmission request has been made, in response to the content distribution request, the relay client A method comprising: transmitting a block of transmission to the relay client and the other relay client; and transmitting a block that has been transmitted to the relay client to the other relay client can be executed by the computer. Operate the content distribution system using the program.
  • a content distribution system is operated using a program that can execute on a computer a method comprising: a step of transmitting an untransmitted block; and a step of cyclically repeating the transmission.
  • the content distribution system is operated using a computer-executable program.
  • the content distribution system includes a control server, and a step of transmitting a distribution server address notification request to the control server, wherein the control server responds to the transmitted distribution server address notification request by
  • a content distribution system is operated using a computer-executable program that includes a step of transmitting an address of a distribution server that distributes content, and a step of transmitting the content distribution request to the address.
  • a content distribution system is operated using a program executable on a computer, the method including a step of comparing the date and time with the update date and time of the content stored in the sd distribution server.
  • the content distribution system includes a WWW server, and at least one of the plurality of relay clients transmits a distribution server notification request to the id control server.
  • the address of the distribution server or the address of the WWW server is Operating the content distribution system using a program executable by a computer.
  • the distribution server in response to the transmitted distribution server address notification request, inquiring of the distribution server as to whether the content can be distributed; and when the distribution server can distribute the content, the distribution server And transmitting the address of the WWW server to the relay client when the content distribution is not possible from the distribution server. Operate the content distribution system using executable programs.
  • the control server in response to the transmitted distribution server address notification request, inquires of the distribution server whether content distribution is possible; Transmitting the address of the distribution server to the relay client if the server can distribute the content; and distributing the content from the WWW server if the distribution server cannot distribute the content. And if the content can be distributed from the WWW server, transmitting the address of the www server to the relay client, and if the content cannot be distributed from the distribution server or the www server. And a step of transmitting an error response to the relay client. Operate the content distribution system using a program that can execute the method on a computer.
  • the distribution server when the distribution server distributes the content to the relay client when copying (synchronizing) the content from the www server according to an instruction from the control server, the distribution server receives the distribution at that time. Suspending the distribution to the relay client that has sent the content, updating the content (synchronizing), sending a CT—RESEND message to each relay client, and restarting the distribution of the latest content. In response to the CT-RESEND message, each relay client discards the content received at that time and starts receiving new content. And starting the content distribution system using a program that can execute the method including the steps of:
  • a program capable of executing, on a computer basis, a method further comprising the step of providing the relay client and the client in 1, and the step of sharing resources by the relay client and the client.
  • the distribution server when the client requests distribution of the content A, the distribution server sends the content to the relay client as content including the content B that is highly likely to be requested next by operating the content A. To distribute the content.
  • the effect of the present invention is that, regardless of the number of cache servers, the amount of communication per unit time transmitted from a server that distributes content to a wide-area IP network is constant. Especially, in the case of content distribution where content is distributed from the distribution server to the relay client as content including the content B that is highly likely to be requested next by the operation on the content A, the relay client Even if the number increases, the number of blocks that divide the content sent from the distribution server to the wide area IP network does not change, so that the load on the distribution server becomes constant.
  • FIG. 1 is a block diagram showing a conventional content distribution system.
  • FIG. 2 is a block diagram illustrating the content distribution system according to the first embodiment.
  • FIG. 3 is a block diagram showing the configuration of the distribution source.
  • FIG. 4 is a block diagram showing the configuration of the control server.
  • FIG. 5 is a block diagram showing the configuration of the WWW server.
  • FIG. 6 is a block diagram showing the configuration of the distribution server.
  • FIG. 7 is a block diagram showing the configuration of the relay client.
  • FIG. 8 shows the storage units of the WWW server, distribution server, and relay client.
  • FIG. 4 is a diagram showing stored content data.
  • FIG. 9 is a diagram showing an outline of the content request message.
  • FIG. 10 is a diagram showing an outline of the URL request message.
  • FIG. 11 is a diagram showing an outline of the URL response message.
  • FIG. 12 is a diagram showing an outline of the RCV-REQ message.
  • FIG. 13 is a diagram showing an outline of a CT-INFO message.
  • FIG. 14 is a diagram showing an outline of the RT-REQU message.
  • FIG. 15 is a diagram showing an outline of the RCV-FIN message.
  • FIG. 16 is a diagram showing an outline of the CT-DATA message.
  • FIG. 17 is a diagram showing an outline of the RT_DATA message.
  • FIG. 18 is a diagram illustrating a communication operation sequence.
  • FIG. 19 is a flowchart showing the operation of the relay client.
  • FIG. 20 is a flowchart showing the operation of the control server.
  • FIG. 21 is a flowchart showing the operation of content expiration date information management.
  • FIG. 22 is a diagram showing a comparison of the content configuration information.
  • FIG. 23 is a diagram showing expiration date information included in the content.
  • FIG. 24 is a block diagram illustrating a content distribution system according to the second embodiment.
  • FIG. 25 is a block diagram showing a configuration of a relay client processing unit and a device including the client processing unit.
  • FIG. 26 is a diagram illustrating a communication operation sequence.
  • FIG. 27 is a diagram showing an outline of the CT-RESEND message.
  • FIG. 28 is a diagram illustrating a communication operation sequence.
  • FIG. 2 is a block diagram showing a configuration of a network according to the embodiment of the present invention.
  • the network configuration according to the present embodiment is a wide area IP network.
  • Network 4 a distribution source 1 that distributes the content via the wide area IP network 4, and a plurality of LANs 1 to n (where n is a natural number of 1 or more) that receive the distributed content. It consists of.
  • a first LAN 2 that connects to the distribution source 1 mainly through the wide area IP network 4 and a second LAN 3 that connects to the distribution source 1 through the wide area IP network 4
  • the description will be made using the network configured as follows, but this does not limit the configuration of the network of the present invention.
  • the distribution source 1 further includes a control server 5, a WWW server 7, and a distribution server 6, and the servers constituting the distribution source 1 are connected to each other using wired communication or wireless communication.
  • Each of the first lan 2 and the second lan 3 is composed of at least one relay client and a plurality of clients connected to the relay client.
  • Each of the multiple clients is connected to the relay client included in each LAN using wired communication or wireless communication.
  • the WWW server 7 transmits various contents such as music data, image data, and online software that can be distributed via the wide area IP network 4 to the wide area IP network 4.
  • the server is open to an unspecified number of clients connected to the wide area IP network 4 via the Internet.
  • the WWW server 7 distributes the content instead of the distribution server 6.
  • the unspecified number of clients connect to the WWW server 7 via the wide-area IP network 4 and browse what content is open on the wide-area IP network 4.
  • control server 5 receives the content request message 14 in response to a content distribution request transmitted by a person who desires to receive the content published by the WWW server 7, and It is a server that controls the system so that the latest data of the content is transmitted to the recipient.
  • the distribution server 6 is the server that actually sends the content over the wide area IP network4.
  • the distribution server 6 is a protocol capable of distributing the same content without increasing the traffic of the network 4 even when receiving a distribution request from a plurality of relay clients.
  • the content is distributed using.
  • the wide area IP network 4 is an information communication network 4 represented by the Internet.
  • FIG. 3 is a block diagram showing a configuration of distribution source 1 in the present embodiment.
  • the distribution source 1 is composed of a control server 5, a WWW server 7, and a distribution server 6, and each server is connected via a communication interface 32 within the distribution source. Further, each server has an external communication interface 31 and is connected to the wide-area IP network 4 via the external communication interface 31.
  • the WWW server 7 and the distribution server 6 have internal or externally connected storage units, and each storage unit stores content data.
  • the content data stored in each storage unit is mirrored via the intra-distribution-source communication interface 32 and mirrored, so that the servers mutually store the latest content data.
  • the contents stored in the storage units of the distribution server 6 and the WWW server 7 are transmitted from the external communication interface 31 via the wide area IP network 4 in response to an instruction from the control server 5. Sent to relay clients on multiple LANs connected to distribution source 1.
  • FIG. 4 is a block diagram showing a configuration of the control server 5 in the present embodiment.
  • the control server 5 includes an external communication interface 31, a communication interface 32 within the distributor, and a processing unit 51.
  • the processing unit 51 and the external communication interface 31 are connected using the information communication line in the control server 5, and the processing unit 51 and the communication interface in the distribution source 3 2 are connected to the information in the control server 5. Connected using a communication line.
  • the external communication interface 31 is a device connected to the wide area IP network 4 to transmit and receive information.
  • the control server 5 The external communication interface 31 provided in the LAN receives information transmitted from at least one of the relay clients installed on a plurality of LANs connected via the wide area IP network 4, The processing unit 51 is notified of the received information. Also, in response to an information transmission instruction from the processing unit 51, information is transmitted to the relay client. Further, the external communication interface 31 receives information transmitted from at least one of a plurality of relay clients connected via the wide area IP network 4, and notifies the processing unit of the received information. I do. In addition, in response to an information transmission instruction from the processing unit, information is transmitted to the relay client.
  • the communication interface 32 within the distribution source is a device that transmits and receives information performed within the distribution source 1.
  • the communication interface 32 within the distribution source provided in the control server 5 performs transmission and reception of information between the control server 5 and the WWW server 7, and the control server 5 and the distribution server. 6 to send and receive information.
  • the processing unit 51 is an information processing device built in the control server 5.
  • a central processing unit (CPU) is provided, and performs information processing based on information transmitted to the control server 5 via each server and the wide area IP network 4.
  • the processing unit 51 further includes a storage unit 52, and stores the content management information in the storage medium.
  • the content management information is information for managing whether or not the content data stored in each of the storage unit of the distribution server 6 and the storage unit of the WWW server 7 is the latest content.
  • the processing unit 51 obtains the content configuration information stored in the storage unit of each server from each server at a preset time, and performs processing for each of the plurality of contents based on the obtained information. Monitor for updates.
  • FIG. 5 is a block diagram showing a configuration of the WWW server 7 in the present embodiment.
  • the WWW server 7 includes an external communication interface 31, a communication interface 32 within a distribution source, a processing unit 71, and a storage unit 72 for storing content data.
  • the processing unit 71 and the external communication interface 31 are connected using the information communication line in the WWW server 7, and the processing unit 71 is connected to the processing unit 71.
  • the intra-distribution communication interface 32 is connected using an information communication line in the WWW server 7.
  • the storage unit 72 and the processing unit 71 are connected by using an information communication line in the WWW server 7, and the content data 7cd stored in the storage unit 72 is exchanged for each interface via the information communication line. Sent to one face.
  • the storage unit 72 is a rewritable information storage device built in or externally connected to the WWW server 7.
  • the WWW server 7 stores contents to be disclosed to an unspecified number of clients via the wide area IP network 4.
  • the new content is stored in the storage unit 72 of the WWW server 7 and synchronized with the storage unit 62 of the distribution server 6 when the new content is written. Is stored in the storage unit 62 of the distribution server 6.
  • the contents of the storage unit 72 of the WWW server 7 are updated, the contents are synchronized with the storage unit 72 of the WWW server 7 and the updated contents are stored in the storage unit 6 of the distribution server 6. Store in 2.
  • the processing unit 71 is an information processing device built in the WWW server 7.
  • a central processing unit (CPU) is provided, and performs information processing such as search processing of the content stored in the storage unit and substitution processing when the distribution of the content from the distribution server 6 is impossible due to some factor.
  • the external communication interface 31 is a device that is connected to the wide area IP network 4 and transmits and receives information.
  • the external communication interface 31 provided in the WWW server 7 transmits from at least one of the relay clients installed in a plurality of LANs connected via the wide area IP network 4. Received information, and notifies the processing unit of the received information. Also, in response to an information transmission instruction from the processing unit, the information is transmitted to the relay client. Further, the external communication interface 31 receives information transmitted from at least one of a plurality of relay clients connected via the wide area IP network 4, and sends the received information to a processing unit. Notice. In addition, in response to an information transmission instruction from the processing unit 71, the information transmission to the relay client is performed.
  • the communication interface 32 within the distribution source is used for transmitting information performed within the distribution source, And a device that performs reception.
  • the communication interface 32 within the distribution source provided in the WWW server 7 transmits and receives information between the WWW server 7 and the distribution server 6, and controls the communication with the WWW server 7. Sends and receives information to and from the server 5.
  • FIG. 6 is a block diagram showing a configuration of distribution server 6 in the present embodiment.
  • the distribution server 6 includes an external communication interface 31, a distribution source communication interface 32, a processing unit 61, and a storage unit 62 for storing content data.
  • 6 1 and the external communication interface 3 1 are connected using the information communication line in the distribution server 6, and the processing unit and the communication interface 3 in the distribution source are connected to the information communication line in the distribution server 6. Connected using wires.
  • the storage unit 62 and the processing unit 61 are connected using an information communication line in the distribution server 6, and content data is transmitted to each interface via the communication line.
  • the storage unit 62 is a rewritable information storage device built in or externally connected to the distribution server 6.
  • the content data 6cd to be transmitted to the relay client requesting the content is stored.
  • the new content is synchronized with the storage unit 72 of the WWW server 7 and the new content is stored in the storage unit 6 of the distribution server 6.
  • Store in 2 Furthermore, even when the content of the storage section 72 of the WWW server 7 is updated, the content is synchronized with the storage section 72 of the WWW server 7, and the updated latest content is stored in the storage section 6 of the distribution server 6. Store in 2.
  • the processing unit 61 is an information processing device built in the distribution server 6. Equipped with a CPU (Central Processing Unit), it performs search processing of contents stored in the storage unit 62 and creation of response messages based on messages received by each interface.
  • a CPU Central Processing Unit
  • the external communication interface 31 is a device that is connected to the wide area IP network 4 and transmits and receives information. Referring to FIG. 6, distribution server 6 The external communication interface 31 provided on the LAN receives information transmitted from at least one of the relay clients installed on a plurality of LANs connected via the wide area IP network 4 and receives the received information. Notify the processing unit of the information. Also, in response to an information transmission instruction from the processing unit 61, information is transmitted to the relay client. Further, the external communication interface 31 receives information transmitted from at least one of a plurality of relay clients connected via the wide area IP network 4 and processes the received information. Notify In addition, in response to an information transmission instruction from the processing unit 61, information is transmitted to the relay client.
  • the communication interface 32 within the distribution source is a device that transmits and receives information performed within the distribution source 1.
  • the communication interface 32 within the distribution source provided in the distribution server 6 transmits and receives information performed between the distribution server 6 and the WWW server 7. It sends and receives information to and from the control server 5.
  • FIG. 7 is a block diagram showing a configuration of the relay client according to the present embodiment.
  • the external communication interface 31 includes a LAN interface 83, a processing unit 81, and a storage unit 82 that stores content data 8cd.
  • the external communication interface 31 are connected using the information communication line in the relay client, and the processing unit 81 and the LAN interface 83 are connected using the information communication line of the relay client.
  • the storage unit 82 and the processing unit 81 are connected using an information communication line in the relay client.
  • the storage unit 82 is an information storage device in which stored information can be rewritten.
  • the storage unit 82 stores content configuration distribution information included in the CT—INF 0 message 18 transmitted from the distribution server 6; It can be delivered to clients as content data corresponding to CT-DATA 21 Store in state. If the CT—DATA 21 is the latest data of the content that has been distributed before, the CT—INFO message 18 sent from the distribution server 6 and the content configuration distribution information included in the INFO message 18 — Update the content data stored in the storage unit 82 based on DATA 21.
  • the processing unit 81 is an information processing device built in the relay client. Equipped with a CPU (Central Processing Unit), search processing to search for specific content from content data stored in the storage unit in response to a content request message 14 from a client, Creates messages to be sent to servers connected to the wide area IP network 4.
  • CPU Central Processing Unit
  • the external communication interface 31 is a device for transmitting and receiving information performed via the wide area IP network 4.
  • the external communication interface 31 provided in the relay client includes information transmitted from at least one of a plurality of servers connected via the wide area IP network 4. And notifies the processing unit 81 of the received information.
  • information is transmitted to the server. Further, the external communication interface 31 receives the content transmitted from the distribution server 6 or the WWW server 7 via the wide area IP network 4.
  • the LAN interface 83 is a device for transmitting and receiving information performed in the LAN.
  • the LAN interface 83 provided in the relay client receives a message transmitted from at least one of a plurality of clients connected to the relay client via the LAN, The processing unit 81 is notified of the received message. Further, in response to the information transmission instruction from the processing unit 81, the content distributed and received from the distribution server 6 or the WWW server 7 is transmitted to the client which has requested distribution of the content.
  • FIG. 8 is a diagram showing content data stored in the respective storage units of the WWW server 7, the distribution server 6, and the relay client.
  • each The content data stored in the storage unit has a content ID 13a, content configuration information 13b, and a data body 13c.
  • the content ID 13 a is an identifier assigned to each of the plurality of contents stored in the storage unit, and is used to identify each content on the network 4.
  • the content configuration information 13b includes information such as a content name 13bi required by a content distribution applicant who has viewed the content published by the WWW server 7 to understand the content of the content. Further, the content configuration information 13b includes update date / time information 13b used for determining whether each content is the latest one.
  • Fig. 9 shows a content request message sent by one of a plurality of clients constituting an n-th LAN (where n is a natural number of 1 or more) to a relay client within the LAN via the LAN.
  • Figure 14 shows an overview. The client selects one of a plurality of contents published by the WWW server 7 via the wide area IP network 4 and sends a content request message 1
  • the WWW server 7 publishes a plurality of contents to an unspecified number of clients.
  • the content is published using a web page on the Internet, and at least one of the unspecified number of clients is connected to the web page via the wide area IP network4.
  • the content distribution applicant selects an arbitrary content based on the obtained content configuration information 13b.
  • N Send a content request message 14.
  • the transmission of the content request message 14 is displayed on the browsing screen of the client h who is browsing the content composition information 13 b published by the WWW server 7 on the browsing screen of the client h. This operation is performed by clicking on the content name of the desired content.
  • the content request message 14 includes a destination address 14a, a source address 14b, a message type 14c, and a message data. Including 14 d.
  • the destination address 14a describes an address for identifying the destination to which the content request message 14 is transmitted, and the source address 14b identifies the client who has requested the message.
  • the address is described, the message type 14c describes GET, which is an HTT P request indicating a request for content, and the message data 14d describes the URL (request) of the content requested by the delivery requester.
  • the request page URL included in the content request message 14 is obtained from the content configuration information 13 b stored in the storage unit 72 of the WWW server 7.
  • FIG. 10 is a diagram showing an outline of the URL request message 15.
  • the mediation client In response to the content request message 14 received from the client, the mediation client sends an URL request message 15 to the distribution source 1 via the wide area IP network 4 in response to the content request message 14. I do.
  • the URL request message 15 includes a destination address 15a, a source address 15b, a message type 15c, and message data 15d.
  • the destination address 15a describes an address for identifying the destination to which the URL request message 15 is transmitted.
  • the address of the control server 5 constituting the distribution source 1 is described.
  • the source address 15b describes the relay client address that sent the URL request message
  • the message type 15c describes the F HO LP (FTP / HTT PO ver L OO PLEXP rotocol) request.
  • F HO LP FTP / HTT PO ver L OO PLEXP rotocol
  • FIG. 11 is a diagram showing an outline of the URL response message 16.
  • the distribution source 1 that has received the URL request message 15 via the wide area IP network 4 returns the URL response message 16 in response to the URL request message 15.
  • the URL response message 16 includes a destination address 16a, a source address 16b, a message type 16c, and message data 16d.
  • the destination address 16a included in the URL response message 16 contains an address for identifying the destination to which the URL response message 16 is transmitted, and the source address is the URL response message.
  • the address of the control server that sent the message is described, the message type 16 c describes UR L— INFO, which is the response of the F HO LP, and the message data 16 d describes the content requesting client address 16 c and URL judgment information are described.
  • the URL determination information includes the request page indicated by the URL request message 15 Valid / invalidity determination of the URL, the type of server that downloads the content and its IP address, content update information, content ID and content configuration information. included.
  • the URL determination information of the message data 16 d includes the content 8 cd stored in the storage unit 82 of the relay client and the storage unit (6) of the distribution server 6 or the WWW server 7. It compares the contents (62 cd, 72 cd) stored in 2, 72) with the information necessary to judge whether the two are the same.
  • the server type / IP address of the message data 16 d contains information indicating that distribution from the distribution server 6 is to be performed and its IP address. If distribution is not possible, the control server 5 sends a URL response message 16 with information indicating that distribution from the WWW server 7 is to be performed and its IP address in the server type / IP address of the message data 16 d. I do.
  • FIG. 12 is a diagram showing an outline of the RCV—REQ message 17.
  • the relay client receiving the URL response message 16 via the wide area IP network 4 transmits the server type and IP described in the message data 16 d included in the URL response message 16.
  • the RCV—REQ message 17 includes a destination address 17a, a source address 17b, a message type 17c, and message data 17d.
  • the destination address 17 a included in the RCV—REQ message 17 contains an address for identifying the destination to which the RCVREQ message 17 is transmitted.
  • the source address contains the address for identifying the relay client that sent the RCV-REQ message 17, and the message type 17 c contains the RCV-REQ or LPLXP request to the distribution server in the message type 17 c.
  • GET which is an HTTP request to the WWW server, is described.
  • the message data 17d the same information as the content requesting client address information included in the URL response message 16 and the content ID (of the distribution server Case) or the request page URL (for a WWW server).
  • the content transfer is performed as a response to the GET request in HTTP.
  • TCP Transmission Control Protocol
  • unreceived blocks at the time of transfer are automatically retransmitted by TCP (Transmission Control Protocol), and error-free. Therefore, the following messages, CT—INFO, RT—REQ, RCV—FIN, CT—DATA, RT—DATA—are not used.
  • FIG. 13 is a diagram showing an outline of the CT-INFO message 18.
  • Distribution server 6 that has received the RCV—REQ message 17 transmits a CT—INFO message 18 to the relay client in response to the RCV—REQ message 17.
  • the CT-INFO message 18 includes a destination address 18a, a source address 18b, a message type 18c, and message data 18d.
  • the destination address 18 a included in the CT—INFO message 18 contains an address for identifying the destination to which the CT—INFO message 18 is transmitted.
  • the address of the relay client is be written.
  • the source address 18b an address for identifying the source that transmitted the CT-INFO message 18 is described.
  • the address of the distribution server 6 is described.
  • CT_INFO which is an LPLXP response, is described in message type 18c.
  • message data 18d a content requesting client address and content distribution information are described.
  • Content distribution information includes content ID, number of divided blocks, and multicast group address. Information of the address.
  • the content distribution information describes the information required to receive the latest distributed content data (hereinafter referred to as CT-DATA21) and to transmit the received latest content to the client.
  • FIG. 14 is a diagram showing an outline of the RT_REQ message 19.
  • the relay client sends an RT—REQ message to distribution server 6. Sends 9 to request retransmission of unreceived blocks.
  • the RT—REQ message includes a destination address 19a, a source address 19b, a message type 19c, and message data 19d.
  • the destination address 19 a included in the RT—REQ message 19 describes an address for identifying the destination to which the RT—REQ message 19 is transmitted.
  • the address of the distribution server 6 is specified. be written.
  • the source address 19b an address for identifying the relay client that transmitted the RT—REQ message is described.
  • RT_REQU which is an LPLXP request, is described.
  • message data 19d information on the client address of the content requester and the block requesting redelivery (unreceived block) are described.
  • FIG. 15 is a diagram showing an outline of the RCV_FIN message 20.
  • the relay client which has received all content, sends the content to the server that delivered it.
  • R CV—FIN Send message 20 Referring to FIG. 15, the RCV-FIN message 20 includes a destination address 20a, a source address 2Ob, a message type 20c, and message data 20d.
  • FIG. 16 is a diagram showing an overview of the distribution of content (hereinafter referred to as CT-DATA21).
  • the distribution server 6 sends CT—DATA 21 in response to the RCV—REQ message 17.
  • CT_DATA 21 includes a destination address 21a, a source address 21b, a message type 21c, and message data 21d.
  • the destination address 21 a included in CT—DATA 21 the group address indicated by the CT—INFO message sent to the relay client is described.
  • the IP address of Class-D is described. Is done.
  • the sender address 21b contains the address of the distribution server.
  • an L P L X P response C T — DATA for identifying that the content data is transmitted from the distribution server 6 is described.
  • the message ID 2nd contains the content ID of the content requested to be distributed, the block (data body) into which the content was divided, the division order information, and the error detection and correction information of the block. You.
  • the distribution server 6 transmits the content in block units, and the relay client divides the content based on the division order information included in the message data of the CT—D ATA message 21 transmitted from the distribution server 6.
  • the transmitted data body is combined into one content.
  • FIG. 17 shows redistribution block transmission data (hereinafter referred to as RT_DATA22).
  • the distribution server 6 transmits RT-DATA 22 in response to the RT-REQ message 19.
  • RT—DATA 22 includes a destination address 22 a, a source address 22 b, a message type 22 c, and message data 22 d.
  • RT—REQ message 19 is transmitted, and the RT—DATA 2
  • the address of the relay client receiving 2 is described.
  • the address of the distribution server 6 is described in the source address 22b.
  • L P L X P response R T — D AT A identifying that the content data is retransmitted from the distribution server 6 is described.
  • the message data 22d describes the content ID of the content requested to be delivered, the block (data body) into which the content has been divided, and the division order information. Since RTCP uses TCP for transfer, error-free transfer is performed. Therefore, no error detection correction information is added.
  • the distribution server 6 transmits the content in block units, and the relay client divides the content based on the division order information included in the message data 2 2 d of the RT—DATA message 22 transmitted from the distribution server 6. Then, the transmitted data body is combined into one content.
  • FIG. 22 is a diagram showing a comparison of the content configuration information.
  • the control server 5 performs the comparison performed in response to the reception of the URL request message 15 by comparing the content configuration information of each content.
  • FIG. 23 is a diagram showing expiration date information included in the content. Referring to FIG. 23, the expiration date determination performed by the control server 5 and the processing unit of the relay client is performed by comparing the expiration date information of each content.
  • FIG. 18 is a diagram illustrating a communication operation sequence in the operation of the exemplary embodiment of the present invention.
  • the client cl in the first LAN 2 browses a plurality of contents published by the WWW server 7 via the wide area IP network 4, and publishes the contents.
  • content A the selected contents
  • content A transmits a content request message 14 of the selected content (hereinafter, referred to as content A) to the relay client in the first LAN 2.
  • the first LAN relay client 8 which has received the content request message 14 transmitted from the client, transmits the content A by the control server of the distribution source 1 via the wide area IP network 4 in order to receive the distribution of the content A.
  • the URL request message 15 is sent to 5.
  • the processing unit of the control server 5 receiving the URL request message 15 transmitted from the first LAN relay client 8 transmits the content data relating to the content A stored in the storage unit of the WWW server 7,
  • the content data of the content A stored in the storage unit of the server 6 is compared with the content data.
  • the processing unit of the control server 5 distributes to the URL determination information of the URL response message 16 A message describing the URL of the server 6 is created, and the created URL response message 16 is transmitted to the first LAN relay client 8.
  • the processing unit of the control server 5 makes the content stored in the storage unit of each server latest. Then, the stored content data is synchronized. Further, the processing unit of the control server 5 synchronizes the content data overnight, and when the content data is normally synchronized, the URL of the distribution server 6 is included in the URL determination information of the URL response message 16. Is created, and the created URL response message 16 is transmitted to the first LAN relay client 8.
  • the processing unit of the control server 5 creates a URL response message 16 in which the URL of the WWW server 7 is described in the URL determination information so that the content A is delivered from the WWW server 7,
  • the created URL response message 16 is transmitted to the first LAN relay client 8.
  • the URL response message 16 includes determination information for determining whether the content data relating to the content stored in the storage unit of the relay client is the latest one.
  • the first LAN relay client 8 obtains the determination result that the content stored in its own storage unit is the latest based on the information included in the determination information, the first LAN relay client 8 transmits the content data to the distribution source 1.
  • the server transmits the content stored in the storage unit of the first LAN relay client 8 to the client without making a distribution request.
  • the first LAN relay client h8 is transmitted from the control server 5.
  • the relay client that receives the URL response message 16 that receives the URL response message 16 that has received the URL response message 16 is actually based on the URL described in the URL determination information in the URL response message 16.
  • the first LAN relay client 8 is the server that actually distributes Z1 content A. Is determined by the distribution server 6, and the content A RCVREQ message 1 is received in order to receive the content transmitted from the distribution server 6.
  • the distribution server 6 that has received the EQ message 17 transmits the CT-INFo message 18 having information necessary for receiving the CT-DATA 21 transmitted from the distribution server 6 to the first LAN. Send to relay client 8.
  • the delivery service
  • the server 6 starts transmitting the CT_DATA 21 composed of the body and the header to the first LAN relay client h8.
  • the first LAN relay client h8 confirms that the received CTDATA 21 is the content A content based on the information included in the CT-INFO message 18. To do.
  • the client of the second LAN 3 makes a request to the second LAN relay client 9 when the distribution server 6 is transmitting CT-DATA 21 of the content A to the first LAN relay client 8.
  • a content request message 14 in which the content is content A is transmitted.
  • the second LAN relay client 9 which has received the content request message 14 transmitted from the client d1, sends the URL to the control server 5 of the distribution source 1 in order to receive the distribution of the content A.
  • Send request message 15
  • the processing unit of the control server 5 receiving the URL request message 15 transmitted from the second LAN relay client 9 transmits the content data relating to the content A stored in the storage unit of the WWW server 7,
  • the content data on the content A stored in the storage unit of the distribution server 6 is compared with the content data.
  • the processing unit of the control server 5 determines the URL of the URL response message 16 A message in which the URL of the distribution server 6 is described in the information is created, and the created URL response message 16 is transmitted to the second LAN relay client 9.
  • the processing unit of the control server 5 updates the content stored in the storage unit of each server to the latest one. In this way, the stored content data is synchronized.
  • the processing unit of the control server 5 synchronizes the content data, and if the content data is normally synchronized, describes the URL of the distribution server 6 in the URL determination information of the URL response message 16. Then, the created URL response message 16 is sent to the second LAN relay client 9.
  • the processing unit of the control server 5 transmits the content A from the WWW server 7 so that the URL determination information of the WWW server 7 is transmitted. Creates a URL response message 16 that describes the URL, and responds to the URL The response message 16 is sent to the second LAN relay client 9.
  • the URL response message 16 includes ⁇ determination information for determining whether the content data relating to the content stored in the storage unit of the relay client is the latest one.
  • the second LAN relay client 9 obtains the determination result that the content stored in its own storage unit is the latest based on the information included in the determination information, the second LAN relay client 9 transmits the content to the distribution source 1.
  • the content data stored in the storage unit of the second LAN relay client 9 is delivered to the client without making a data delivery request.
  • the second LAN relay client 9 receives the URL response message 16 transmitted from the control server 5.
  • the relay client that has received the URL response message 16 determines the server that actually distributes the content based on the URL described in the URL determination information of the URL response message 16 and determines the RCV of the content A.
  • the second LAN relay client 9 determines the server that actually distributes the content A to the distribution server 6, and receives the content data distributed from the distribution server 6.
  • Content A's RCV-REQ message 17 is sent to distribution server 6 to request distribution of the latest content data of content A.
  • the distribution server 6 Upon receiving the REQ message 17, the distribution server 6 transmits a CT_I ⁇ F ⁇ message 18 having information necessary for receiving the CT—DATA 21 transmitted from the distribution server 6, The second LAN relay client 9 is communicated. Further, the distribution server 6 starts transmission of the CT-DAT A 21 composed of the main body of the content and the header to the second LAN relay client h9. 2nd L A
  • the N relay client h9 confirms that the received CTDATA21 is content A data based on the information included in the CTINFFO message18.
  • the distribution server 6 sends the first LAN relay client 8 and the second LAN relay client out of the data body of the content A divided into a plurality of blocks.
  • the untransmitted block is sent to both of them, and the first LAN relay client 8 completes the transmission, but the second LAN relay client 9 delays the transmission of the unreceived block by delaying the content. Delivery.
  • the CT—DATA 2 to the second LAN relay client 9 is transmitted.
  • the distribution server 6 transmits the block 3 to each of the first LAN relay client 8 and the second LAN relay client 9.
  • the reception of all the content data is completed when the last block is received.
  • the second lan relay client 9 completes reception of the last block at the same time as the first lan relay client 8, and then starts receiving unreceived blocks.
  • the distribution server 6 attaches the information to the CT-INFO message 18. In other words, if the content data divided into multiple blocks is not distributed from the first block, the divided block information and which block will be transmitted are determined in advance using the CT_INFO message 18 Then, it notifies the relay client that sent the distribution request for the content that is currently being distributed.
  • the first LAN relay client 8 sends, to the distribution server 6, retransmission of the content data block that was not normally received for some reason in the plurality of blocks transmitted in CT—DATA 21. Send an RT—REQ message 19 to the distribution server 6 to request.
  • the distribution server 6 receiving the RT—REQ message 19 transmitted from the first LAN relay client 8 transmits the first LAN relay based on the redistribution request block information included in the RT—REQ message 19.
  • the client 8 retransmits the content data block that could not be received normally (RT_DATA 22).
  • the first LAN relay client 8 sends the requested content
  • the RCV—FIN message 20 is transmitted to notify the distribution server 6 of the completion of the reception.
  • the distribution server 6 Upon receiving the RCV-FIN message 20 transmitted from the first LAN relay client 8, the distribution server 6 refers to the content ID included in the RCV-FIN message 20. Investigate whether there is another relay client that continues to receive the content data for the content. In FIG. 18, since the second LAN relay client 9 continues to receive the content, the transmission of CT—DATA 21 by multicast is continued.
  • the first LAN relay client 8 that has completed the reception of the requested content stores the latest content that has been received in the storage unit of the first LAN relay client 8, and distributes the content. Distribution of the content A to the client in the first LAN 2 which has requested the content.
  • the second LAN relay client 9 sends a retransmission of the content data block that was not successfully received for some reason in a plurality of blocks transmitted by CT—DATA21. Send a RT-REQ message 19 to the distribution server 6 to request it.
  • the distribution server 6 Upon receiving the RT—REQ message 19 transmitted from the second LAN relay client 9, the distribution server 6 performs the second LAN relay based on the redistribution request block information included in the RT—REQ message 19.
  • the client 9 resends the content data block that could not be received normally (RT_DATA 22).
  • the second LAN relay client 9 when completing the reception of the requested content, transmits an RCV-FIN message 20 to notify the distribution server 6 of the completion of the reception.
  • the distribution server 6 Upon receiving the RCV—FIN message 20 transmitted from the second LAN relay client 9, the distribution server 6 has another relay client that continues to receive content data for the content. Investigate whether or not.
  • the transmission of the CT—DATA 21 by multicast is terminated because no other relay client is continuing to receive.
  • the second LAN relay queue that has completed the reception of the requested content The client 9 stores the latest content that has been received in the storage unit of the second LAN relay client 9 and distributes the content A to the client in the second LAN that has requested the distribution of the content. Start.
  • the client cl in the first LAN 2 browses a plurality of contents published by the WWW server 7 via the wide area IP network 4, and distributes from among the plurality of published contents.
  • the desired content is selected, and a content request message 14 for the selected content (hereinafter referred to as content B) is transmitted to the relay client in the first LAN.
  • the first LAN relay client 8 having received the content request message 14 transmits an URL request message 15 to the control server 5 to receive the delivery of the content B.
  • the processing unit of the control server 5 which has received the URL request message 15 transmitted from the first LAN relay client 8, relates to the content B stored in the storage unit of the WWW server 7.
  • the content content overnight is compared with the content content related to the content B stored in the storage unit of the distribution server 6.
  • the processing unit of the control server 5 transmits the URL of the URL response message 16 A message in which the URL of the distribution server 6 is described in the determination information is created, and the created URL response message 16 is transmitted to the first LAN relay client 8.
  • the processing unit of the control server 5 updates the content stored in the storage unit of each server to the latest one So that the stored content data can be synchronized in the evening. Further, the processing unit of the control server 5 synchronizes the content data, and when the content data is normally synchronized, the URL of the distribution server 6 is added to the URL determination information of the URL response message 16. Is created, and the created URL response message 16 is transmitted to the first LAN relay client 8.
  • the processing unit of the control server 5 Creates a URL response message 16 with the URL of the WWW server 7 in the URL determination information, and sends the created URL response message 16 to the first LAN relay client 8 so that the content B is delivered from I do.
  • the URL response message 16 includes determination information for determining whether the content data relating to the content stored in the storage unit of the relay client is the latest one.
  • the first LAN relay client 8 obtains the determination result that the content stored in its own storage unit is the latest based on the information included in the determination information, the first LAN relay client 8 transmits the content data to the distribution source 1.
  • the content data stored in the storage unit of the first LAN relay client 8 is delivered to the client without making a delivery request.
  • Exit A Flute 1 LAN relay client 8 sends an RCV-REQ message for content B to distribution server 6, and responds to the RCVREQ message by sending CT-DATA 21 1 of the latest content transmitted from distribution server 6. Is stored in the storage unit, and the latest content is delivered to the client.
  • the first LAN relay client h8 determines whether or not the content stored in the section is the latest one each time it receives a URL response message 16. By determining the content stored in the storage unit each time the response message 16 is received, the client can always receive the latest content distribution.
  • the storage unit of the first LIN relay client h8 stores the previous delivery
  • FIG. 19 is a flowchart showing the operation of the relay client according to the embodiment of the present invention.
  • the relay client in the initial state, has at least one of a plurality of clients cl to cn (n is a natural number of 1 or more) connected to the relay client via the first LAN 2. It monitors the content request message 14 sent from.
  • the operation of the flowchart is as follows.
  • the first LAN relay client 8 is a content request message transmitted from at least one of a plurality of clients connected to the first LAN 2. Start by receiving.
  • step S101 the content request message 14 transmitted from the client is received.
  • step S103 the relay client, which has received the content request message 14 in step S101, responds to the reception of the content request message 14 in order to receive the distribution of the corresponding content. Then, a URL request message 15 is sent to the control server 5. Further, in step S103, the relay client receives the URL response message 16 returned from the control server 5 in response to the transmitted URL request message 15 and proceeds to step S105. move on.
  • step S105 the first LAN relay client 8 compares the content configuration information of the URL determination information stored in the storage unit with the content configuration information stored in the distribution server 6. The comparison is performed based on the URL determination information included in the URL response message 16 transmitted from the control server 5, and the URL determination information includes information on the validity period of the content and information on the latest update date and time. It is.
  • the processing unit of the relay client compares the content configuration information of the corresponding content stored in the storage unit with the content configuration information of the URL determination information included in the received URL response message 16.
  • step S105 if there is no change in the corresponding content, that is, the content data stored in the storage unit of the first LAN relay client 8 and the content data stored in the distribution server 6 If the evening is the same data, the flow proceeds to step S107.
  • step S107 the relay client determines the expiration date of the content stored in the storage unit. If the result of the determination is within the expiration date, the process proceeds to step S115, and it is determined whether the requested page exists in the content stored in the storage unit. If it has expired, the flow advances to step S109 to determine whether or not the page requested by the client exists in the distributed content.
  • step S105 if there is a change in the corresponding content stored in the storage unit of the first LAN relay client 8, that is, the content stored in the storage unit of the first LAN relay client 8 is changed. If the download data and the content data stored in the storage unit of the distribution server 6 are the same, and if so, the process proceeds to step S109, and the client is included in the distributed content. It is determined whether the page requested by the user exists.
  • step S109 it is determined whether a page requested by the client exists in the configuration of the content distributed by the distribution server 6. If the result of the determination is that a non-existent page has been requested, the flow advances to step S117 to send an error response to the client. If the page requested by the client is included in the content being distributed, the flow advances to step S111 to download the latest content from the distribution server 6. Delivery server for some reason
  • the URL determination information included in the Lfc response message 16 includes the UWW server 7 U
  • step S111 since the page requested by the client is not stored in the storage unit, the download of the content from distribution server 6 is started. Once the requested page has been obtained, proceed to step S113.
  • step S113 the content downloaded from distribution server 6 ⁇ Content composition information ⁇ Content expiration date information is started to be stored in the storage unit, and the process proceeds to step S119 to respond to the content to the client.
  • step S115 it is determined whether the requested page exists in the content stored in the storage unit. As a result of the determination, when the content does not exist, that is, when the content does not exist in the distribution source 1, the process proceeds to step S117 to transmit an error response as an HTTP response to the client content request. If the requested page exists, the process proceeds to step S119 to send a response to the content to the client.
  • step S117 since the page requested by the client does not exist in the storage unit or the distribution source 1, an error response is transmitted as an HTTP response to the client's content request. After transmission, it returns to the standby state.
  • step S119 since the page requested by the client is stored in the storage unit, a content response is transmitted from the HTTP request to the content request of the client. After transmission, it returns to the standby state.
  • FIG. 20 is a flowchart showing the operation of the control server 5.
  • the control server 5 monitors the reception of the URL request message 15 from the first LAN relay client 8.
  • the control server 5 starts by receiving the URL request message 15 transmitted from the first LAN relay client 8 via the wide area IP network 4.
  • step S201 the control server 5 enters a standby state after initialization, and monitors the URL request message 15 from the relay client.
  • Step S203 when the control server 5 in the standby state receives the URL request message 15 from the relay client, the control server 5 proceeds to the next Step S205.
  • step S205 the control server 5 acquires the content configuration information (file list, directory information, etc.) stored in the storage unit 52, and proceeds to step S207.
  • step S207 the control server 5 compares the request page URL included in the URL request message 15 transmitted from the relay client with the content configuration information obtained in step S205, and distributes the request. It is determined whether distribution of the content from the server 6 is possible. If the relay client requests an incorrect URL (contents that do not actually exist) as a result of the determination, the process advances to step S221 to transmit an error response to the relay client.
  • step S209 the control server 5 acquires, from the storage unit 52, the expiration date information of the content determined to be capable of distributing the content from the distribution server 6.
  • step S211 the control server 5 examines the content expiration date information acquired in step S209 and determines whether the requested content has expired. If it is determined that the content has expired, the process proceeds to step S215 to transmit a response to the relay client so as to wait until the update is completed.
  • step S213 since the relay client can receive the content from the distribution server 6, the control server 5 sends the URL response message 16 to the relay client so as to receive the content from the distribution server 6. Send. Move to the standby state to receive the next URL request.
  • step S215 since the content stored in the storage unit of the distribution server 6 has expired, the content can be read from the WWW server 7 to the distribution server 6 and the latest content can be distributed. Instructions for renewal. According to this instruction, the distribution server 6 copies the content from the WWW server 7. It instructs the relay client to wait until the distribution server 6 completes copying the content from the WWW server 7.
  • step S217 it is determined whether the copying of the content from the WWW server to the distribution server has been completed normally. As a result of the determination, when the copying of the content is normally completed, the process proceeds to S213, and the URL response message 16 is transmitted so that the content is received from the distribution server 6. For some reason If the copying of the content has not been completed normally, proceed to S219 and send the URL response message 16 to receive the content from the www server as if receiving the content from the WWW server 7. I do.
  • step S219 the distribution server transmits the URL response message 16 to the relay client in order to receive the content from the www server because the latest content cannot be distributed for some reason.
  • step S221 since the URL requested by the relay client does not exist in the storage unit of the distribution server 6, the content configuration information of the WWW server 7 is obtained for confirmation. Compare the obtained content configuration information with the requested URL. As a result of the comparison, when the content exists in the WWW server 7 but does not exist in the distribution server 6, the process proceeds to step S215, and the content updating process of the distribution server 6 is performed. As a result of the comparison, if the URL does not exist in the WWW server 7, the process proceeds to S 223, and a URL response message 16 indicating an error indicating that the requested URL does not exist is transmitted.
  • step S223 the requested URL is not present in the distribution server or WWW server, so the relay client receives an error URL response message 16 indicating that the requested URL does not exist. Send.
  • FIG. 21 is a flowchart showing the operation of content expiration date information management.
  • the control server 5 monitors the time of content expiration date information management in its initial state. The operation of content expiration date information management starts when the update time of the content management information comes. After the initialization, the control server 5 enters a standby state. In order to determine the expiration date of the content at regular intervals, processing of content expiration date information management is started.
  • step S301 the control server 5 acquires content expiration date information from the storage unit.
  • the storage unit 52 of the control server 5 includes the control server 5
  • the content expiration date information based on the fact that the distribution server 6 has read and processed the content from the WWW server 7 according to the instruction from the server is stored.
  • step S303 the validity period of the acquired content is determined.
  • the distribution server 6 is not ready for content distribution, so that the expiration information of the content is determined to be expired. If the expiration date of the content has expired, the process advances to step S305 to update the distribution content. If it is within the expiration date, it returns to the standby state again.
  • step S305 since the content of the distribution server 6 has expired, an update instruction is issued to the distribution server 6 so that the content is read from the WWW server 7 and the latest content can be distributed. With this instruction, the distribution server 6 copies the content from the WWW server 7.
  • step S307 when the content update of the distribution server 6 is completed, the control server 5 saves the URL configuration (file list, directory information, etc.) of the content in the storage unit 52, and sets the content expiration date. Update information.
  • the distribution server 6 performs the content retransmission processing to the relay client.
  • a plurality of client devices connected to the LAN connect to the wide area IP network via the relay server device connected to the LAN. That is, the plurality of client devices download the content from the distribution server via the relay server device.
  • the relay client and the client shown in the previous embodiment are independent devices.
  • the processing program runs on each device, it is usually connected to the LAN between the processing units. Therefore, each processing unit communicates via the LAN using a network device (usually connected to the LAN) provided by OS (Operating System: basic software).
  • OS Operating System: basic software
  • the relay client and the client connected to the relay client are composed of hardware (CPU, memory, storage device, etc.) and a program that performs processing.
  • the content distribution system of the present invention is a relay server. It is also possible to execute the processing program of the client and the processing program of the client on the same hardware.
  • a virtual LAN device provided by the OS for example, a tunnel device provided by the UNIX operating system
  • the communication is performed using the communication.
  • FIG. 24 is a block diagram showing the configuration of the second embodiment.
  • FIG. 24 is a block diagram showing a network configuration according to the embodiment of the present invention.
  • the network configuration according to the present embodiment includes a wide-area IP network 4, a distribution source 1 for distributing content via the wide-area IP network 4, and a distributed content. From the first to n-th clients (n is a natural number of 1 or more).
  • n is a natural number of 1 or more.
  • a first client 401 connected to the distribution source 1 mainly through the wide area IP network 4 and a second client 5 connected to the distribution source 1 via the wide area IP network 4
  • the description will be made using a network composed of 0 and 1, but this does not limit the configuration of the network of the present invention.
  • Multiple clients are information processing devices that can execute multi-user multi-tasks.
  • the resources provided in a single device are shared by multiple users, and multiple processes are apparently or substantially performed in parallel.
  • FIG. 25 is a block diagram showing a configuration of a client that executes the relay client program and the client processing program by the same device.
  • FIG. 25 shows the configuration of the first client 401 shown in FIG. 24 as an example.
  • the first client 401 includes a user program layer 402, an OS service layer 403, and a hardware layer 404.
  • User pro The layer 204 includes a relay client processor 405 and a client processor 406, the OS service layer 403 includes a virtual LAN interface 407, and a hardware layer 404.
  • the relay client processing unit 405 and the external communication interface 408 are connected using the information communication line in the device, and the relay client processing unit 405 and the virtual LAN interface 407 are connected in the device.
  • the storage unit 409 and the relay client processing unit 405 are connected using the information communication line, and the storage unit 409 and the relay client processing unit 405 are connected using the information communication line in the device, and the client processing unit 406 and the virtual LAN interface 407 Are connected using the information communication line in the device.
  • the storage unit 409 is an information storage device in which stored information can be rewritten. It is internally or externally connected to the first client 401 (relay client + client), and stores the CT-DATA 21 sent from the distribution server 6 or the WWW server 7. When the received CT—DATA 21 is a new content data, the storage unit 409 includes the CT—INFO message 18 sent from the distribution server 6 or the WWW server 7. Content composition information and its CT-DATA 21 are stored as content data in a state that can be distributed to clients.
  • CT—DATA 21 is the latest data of the content that has been stored before, the content configuration included in the CT—INFO message 18 sent from the distribution server 6 or the WWW server 7
  • the content data 409 cd stored in the storage unit 409 is updated based on the information and the CT—DATA 21.
  • the relay client processing unit 405 is an information processing program built in the first client 401.
  • the first client 410 has a CPU (central processing unit), and in response to a content request message 14 from the client processing unit 406, a specific content from the content data stored in the storage unit 409 in response to the content request message 14. It performs search processing for searching and creation processing for creating a message to be sent to a client connected to the virtual LAN La server connected to the wide area IP network 4.
  • the external communication interface 408 is a device for transmitting and receiving information performed through the wide area IP network 4. Referring to FIG. 24, the external communication interface 408 provided in the relay client processing unit 405 includes a CT—DATA transmitted from the distribution server 6 or the WWW server 7 via the wide area IP network 4. 2 1 and RT—Receive DATA 22
  • the virtual LAN interface 407 is a device for transmitting and receiving information performed in the first client 401.
  • the virtual LAN interface 407 provided in the relay client processing unit 405 includes a plurality of client processing units connected to the relay client processing unit 405 via the virtual LAN.
  • a message transmitted from at least one of the 406 is received, and the received message is notified to the relay client processing unit 405.
  • the client processing unit that has requested distribution of the content distributed and received from the distribution server 6 or the WWW server 7 has been completed.
  • the client processing unit 406 is an information processing program built in the first client 401.
  • the first client 401 has a CPU (Central Processing Unit), sends a content request message 14 to the relay client processing unit 405, and performs content request processing for requesting content data and virtual AN. Creates messages to be sent to connected relay clients and servers connected to the wide area IP network4.
  • CPU Central Processing Unit
  • FIG. 27 is a diagram showing an outline of the CT-RESEND message 25.
  • the delivery server 6 sends a CT-RESEND message 25 to the relay client. Send.
  • the CT-RESEND message 25 includes a destination address, a source address, a message type, and message data.
  • CT—Resend message 25 contains the destination address CTRES The address for identifying the transmission destination to which the END message 25 is transmitted or the drop address indicated by the CT_INFO message 18 transmitted to the relay client is described.
  • the IP address of the relay client is described.
  • Address or C 1 ass — the IP address of D is described.
  • the address of the distribution server 6 is described in the source address.
  • an LPLXP response CTRESEND identifying that the response is transmitted from the distribution server 6 is described.
  • the message data describes the content requesting client address and the content distribution information.
  • the content distribution information contains information on the content ID, the number of divided blocks, and the multicast group address. In the content ID, the same information as the information included in the RC V_REQ message 17 is described.
  • FIG. 28 is a diagram showing a sequence when the content in the storage unit is updated while the distribution server 6 is distributing the content.
  • the control server when the distribution server 6 sends out the content data CT—DATA 21, the control server When the content stored in the storage unit of the distribution server 6 is updated according to the instruction from 5, the distribution server 6 suspends the transmission of the content CT—DATA 21 and transmits the updated content. Store in the storage unit.
  • a CT-RESEND message 25 is transmitted to each relay client.
  • each relay client In response to the transmission of the C T_R ESEND message 25, each relay client starts receiving the CT—DATA 21 containing the block obtained by dividing the updated content. Discard the CT-DATA 21 containing the content block that has been received before receiving the data. The distribution server 6 resumes transmission of the CT_DATA 21 including the block into which the updated content is divided, following transmission of the CT-RESEND message 25. In response to resuming the transmission of CT—DATA 21, each relay client resumes receiving CT—DATA 21.
  • the distribution server 6 that has received the RCV—REQ message 17 transmitted from the first LAN relay client 8 in F 101 and needs to receive the CT—DATA 21 transmitted from the distribution server 6 Sends the CT-INFO message 18 having the necessary information to the first LAN relay client 8. Further, the distribution server 6 starts transmitting the CT-DATA 21 composed of the data body of the content data and the header to the first LAN relay client 8. The first LAN relay client 8 confirms that the received CT—DATA 21 is content A data based on the information included in the CT_INFO message 18.
  • the second LAN relay client sends the URL request message to the distribution source control server 5 when the distribution server 6 is transmitting CT_DATA 21 of the content A to the first LAN relay client 8. Send 1 5
  • the distribution source control server 5 determines the validity of the requested URL and transmits a URL response message 16. At this time, in response to the control server 5 instructing the distribution server 6 to update the content A stored in the storage unit of the distribution server 6, the transmission operation of CT_DATA 21 is temporarily performed. Interrupt.
  • the second LAN relay client 9 determines the server that actually distributes the content based on the URL determination information of the URL response message 16 transmitted from the control server 5, and determines the RCV of the content A.
  • Send REQ message 17 the second LAN relay client 9 determines the server that actually distributes the content A to the distribution server 6, and receives the content A distributed from the distribution server 6 in order to receive the content data. Of the content A, and requests the delivery of the latest content data of the content A.
  • the distribution server 6 that has received the RCV-REQ message 17 transmitted from the second LAN relay client 9 transmits the information necessary for receiving the CT-DATA21 transmitted from the distribution server 6.
  • CTINFO with The message 18 is transmitted to the second LAN relay client 9.
  • the distribution server 6 transmits a CT-RESEND message 25 in response to the update of the content A in the storage unit.
  • the message is transmitted by TCP to the first LAN relay client 8, but if there are multiple relay clients, the message can be transmitted using multicast. .
  • the relay client that has received the CT—RESEND message 25 will discard the block data CT—D ATA 21 of the content A received before receiving the CT—RES END message 25, and renew the CT. — Start receiving DATA 2 1.
  • the first LAN relay client 8 discards the CT-DATA 21 received at F103 and F104.
  • each relay client receives the updated content A block data CT-DATA 21 and stores it in the storage unit.
  • each relay client completes the reception of the updated content A block data CT—DAT A21, and then notifies R to notify the distribution server 6 of the reception completion.
  • CV—Send FIN message 20 When receiving the RCV—FIN message 20 transmitted from the first LAN relay client 8, the distribution server 6 refers to the content ID included in the RCV—FIN message 20 and adds the content to the content. Investigate whether there is another relay client that continues to receive content data. In FIG. 28, transmission of the CT—DATA 21 by multicast ends because no other relay client continues to receive.
  • the storage unit of each relay client 8 stores the content obtained by the previous distribution or the content updated by the distribution source 1 and obtained by the new distribution.
  • the distribution of the content B is started to the client that has requested the distribution of the content.
  • the distribution of the content B is started to the client that has requested the distribution of the content without performing a new distribution. It becomes possible.
  • the operation of the second embodiment will be described below.
  • the user browses the plurality of contents published by the WWW server 7 via the wide area IP network 4 via the user interface 410, and selects the contents desired to be distributed from the plurality of published contents. select.
  • the first client 401 sends a content request message 14 of the selected content (hereinafter referred to as content A) from the client processing unit 406 via the virtual LAN interface 407 to the relay client processing unit. Send to 405.
  • the first client 401 receives the content A in response to the relay client processing unit 405 receiving the content request message 14 transmitted from the client processing unit 406.
  • the URL request message 15 is transmitted to the control server 5 of the distribution source 1 connected to the wide area IP network 4 via the external communication interface 408.
  • the distribution source 1 that has received the URL request message 15 transmitted from the first client 401 performs the same processing as the processing indicated by F3 in FIG. 18 shown in the first embodiment, and corresponds to the processing. And sends an appropriate URL response message 16 to the first client 401.
  • the first client 410 transmits the URL response message 16 received via the external communication interface 408 to the relay client processing unit 405.
  • the relay client processing unit 405 determines that the content stored in the storage unit 409 is the latest one based on the information included in the URL determination information of the URL response message 16 If a result is obtained, a request for distribution of the content data to the distribution source 1 is not made, and the content stored in the storage unit 409 is transmitted to the client processing unit 4 via the virtual LAN interface 407. 0 Send to 6.
  • the first client 410 receiving the URL response message 16 determines the distribution server that actually distributes the content, Send RCV-REQ message 17 of content A.
  • the relay client processing unit 405 performs processing for determining the server that actually distributes the content A to the distribution server 6.
  • the first client 401 is distributed from the distribution server 6 in accordance with the processing result. Receiving the content data.
  • the first client 401 transmits the RCV—REQ message 17 of the content A output from the relay client processing unit 450 to the distribution server 6, and requests the distribution server 6 to distribute the latest content data of the content A. I do.
  • the distribution server 6 Upon receiving the RCV—REQ message 17 transmitted from the first client 401, the distribution server 6 performs the same processing as in the first embodiment, and performs an appropriate CT—INFO message in response to the processing. 1 8 and CT—Start sending DATA 21 to first client 4 0 1.
  • the distribution server 6 When the distribution server 6 is transmitting the CT—DATA 21 of the content A to the first client 410, the second client 501 receives the distribution of the content A, and the control server 5 of the distribution source 1 receives the content A. Sends a URL request message 15 to.
  • the distribution source 1 that has received the URL request message 15 transmitted from the second client 501 performs the same processing as shown in F8 to F10 in FIG. 18 of the first embodiment, and performs the processing. And sends the appropriate CT—INFO message 18 and CT—DATA 21 to the second client 501.
  • the first client 401 or the second client 501 detects that the content transmitted by the block transmitted by the CT—DATA 21 has not been normally received for some reason.
  • the distribution server 6 is requested to retransmit the content data block as in the first embodiment.
  • the request for retransmission of the content data block is made by transmitting an RT-REQ message 19 to the distribution server 6 as in the first embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Description

明細書
コンテンツ配信システム及びコンテンツ配信方法 技術分野
本発明は、 クライアントサーバシステムにおけるコンテンツの配信システ ム及びコンテンツ配信方法に関する。 背景技術
インターネッ トに代表される広域 I Pネッ トワークを利用した情報通信の 普及は、 特定のホス ト間で情報 (コンテンツ) を送受信するという情報通信 の形態以外に、 不特定多数のクライアントからの要求に応答して、 複数のコ ンテンッの中から選択された任意のコンテンツを、 そのクライアントに配信 するコンテンツ配信サーバ (以下、 WWWサーバと呼ぶ。) を、 その広域 I P ネッ トワーク上に設置し、 その不特定多数のクライアントからのコンテンツ 配信要求に応答して、 コンテンツを配信するという情報通信の形態が生み出 された。 このような情報通信形態は、 現代社会の情報化に大きく貢献してい る。 従来の情報通信技術を用いた W W Wサーバは、 その広域 I Pネッ トヮ一 クに接続された複数のクライアントからコンテンツ配信要求が送信された場 合、 その各々のコンテンツ配信要求に対して、 一対一で応答している。 した がって従来の技術では、 不特定多数のクライアントからコンテンツ配信要求 が一時に集中すると、 ネッ トワーク上で一定時間内に転送されるデータ量が 増大し、 コンテンツ全体を送信することができなくなる場合がある。 すなわ ち、 コンテンツ全体がクライアントに到達するまでの時間 (応答時間) が多 く必要になる。
この問題を解決する技術として、 図 1 に示されるように、 複数のクライア ントから構成されたグループ (例 : インターネッ ト接続事業者に接続する複 数のクライアントや企業内 L A Nなど) 毎にキャッシュサーバを設置し、 W W Wサーバに格納された複数のコンテンツをミラーリ ングすることにより、 広域 I Pネッ トワーク上を通過するバケツ ト量を低減させる方法が取られて いる。
W WWサーバとクライアントとを接続するネッ トワーク上に、 複数のキヤ ッシュサーバを設置し、 その複数のキャッシュサーバの各々に n個クライア ン卜が接続させ、 キヤッシュサーバが設置されていない場合は W W Wサーバ から直接配信されるコンテンツを、 その複数のキャッシュサーバの各々にミ ラーリ ングさせることにより、 WWWサーバとキャッシュサーバとの間で転 送されるデータ量を、 キャッシュサーバを設置せず全てのクライアントが直 接 wwwサーバと通信した場合の wwwサーバとクライアントとの間で転送 されるデータ量の η分の 1にすることができる。
しかし、 キャッシュサーバ上のコンテンツはあくまでもオリジナルコンテ ンッの複製であるので、 wwwサーバのオリジナルコンテンッが更新された 場合、 キャッシュサーバから、 wwwサーバへのコンテンツ送信要求が増大 する。 このとき広域 I Pネッ トワークを通過するパケッ ト量はキャッシュサ ーバ数に比例する。 つまりキャッシュサーバの数が多くなるほど、 wwwサ ーバに対するアクセスが同時に発生した時に、 その W W Wサーバが単位時間 内に処理するべきデータ量が増大する。
また、 従来クライアントサーバシステムを用いて広域 I Pネッ トワークで 通信を行う場合、 F T Pや H T T Pのようなポイントツーポイント型の通信 が行われている。 このような通信では、 サーバはクライアントからのコンテ ンッの配信要求に基づいて、 コンテンツの送信を行う ことになる。 このよう に、 キャッシュサーバを多く設置すると、 コンテンツ配信サーバがコンテン ッ配信時に送信するデータ量が、 ネッ トワーク内に設置されたキヤッシュサ ーバの数に比例して増大する。
さて、 クライアントサーバシステムを用いてデータの転送を行う場合にお いて、 ネッ トワークに接続されたサーバから送信されるデータ量を、 そのネ ッ 卜ワーク上のクライアント数に影響を受けることなく、 一定にしたまま通 信を行う技術として、 国際特許出願番号 P C T / J P 0 2 / 0 0 1 8 1 に開 示された技術が知られている。 この技術は、 クライアントサーバシステムを 用いたデータ通信技術において、 ネッ トワーク上で一定時間内に転送される データ量の増大を防止する技術として画期的なものである。
国際特許出願番号 P C T / J P 0 2 / 0 0 1 8 1 に開示された技術は特定 サーバと特定クライアントとの間での通信に効果がある。 さらに、 広域 I P ネッ トワークにおいて、 その広域 I Pネッ トワーク上に接続される不特定多 数のクライアントとサーバとの間で通信が行われる場合、 その不特定多数の クライアン卜の数に影響を受けることなく、 一定時間内に転送されるデータ 量の増大を防止する技術が望まれる。 発明の開示
本発明の目的は、 キャッシュサーバの数量によらず、 コンテンツを配信す るサーバから広域 I Pネッ トワークに送信される単位時間あたりの通信量を 一定にするコンテンツ配信システム、 及び、 コンテンツ配信方法を提供する ことにある。 特に、 コンテンツ A への操作により次に要求される確度の高い コンテンツ B を含めたコンテンツとして、 配信サーバから中継クライアント に対してコンテンツの配信を行なうような場合において、 中継クライアント の数が増えても、 配信サーバから広域 I Pネッ トワークに送出されるコンテン ッを分割したブロックの数量が変化しないため、 配信サーバにかかる負荷が 一定となるコンテンツ配信システム、 及び、 コンテンツ配信方法を提供する ことにある。 ネッ トワークと、 前記ネッ トワークに接続され前記ネッ トワークを介して 複数のコンテンツを配信する配信サーバと、 前記ネッ トワークに接続され、 前記ネッ トワークを介して前記コンテンツを受信する複数の中継クライアン 卜と、 前記ネッ トワークに接続され、 前記ネッ トワークを介して前記複数の 中継クライアントの各々に接続される複数のクライアントとを含むネッ トヮ —クシステムを構築し、 前記配信サーバは、 複数のコンテンツを格納し、 前 記中継クライアントの少なくとも一つは、 前記複数のコンテンツの少なく と も一つのコンテンツの配信を要求するコンテンツ配信要求を送信し、 前記配 信サーバは、 前記コンテンツ配信要求に応答して、 前記要求されたコンテン ッを複数のブロックに分割し、 前記ネッ トワークを介して前記中継クライァ ントに送信し、 前記要求されたコンテンツの送信の途中に、 他の中継クライ アントから要求された前記コンテンッのコンテンッ配信要求に応答して、 前 記中継クライアントに未送信のブロックを、 前記中継クライアントと前記他 の中継クライアントに送信し、 前記中継クライアントに送信済みのブロック を前記他の中継クライアントに送信するコンテンツ配信システムを用いてコ ンテンッの配信を行う。
そのコンテンツ配信システムにおいて、 さらに、 前記配信サーバは、 前記 コンテンッを複数のプロックに分割し、 前記複数のブロックを所定の順序で 送信し、 前記送信の途中に、 前記他の中継クライアントから要求された前記 コンテンツのコンテンツ配信要求に応答して、 前記他の中継クライアントに 対するコンテンツの送信を、 前記中継クライアントに未送信のブロックから 開始し、 前記ブロックの送信を循環的に繰り返す。
そのコンテンツ配信システムにおいて、 さらに、 前記複数のクライアント の少なくとも一つは、 前記クライアントが接続する中継クライアントにコン テンッ送信要求を送信し、 前記中継クライアントは、 前記コンテンツ送信要 求に応答して、 コンテンッ配信要求を前記配信サーバに送信する。
そのコンテンツ配信システムにおいて、 さらに、 前記複数の中継クライァ ン トの各々は、 記憶部を含み、 前記記憶部は、 前記配信サーバから送信され たコンテンツを格納し、 前記複数の中継クライアントの各々は、 前記複数の クライアントの少なく とも一つから要求されたコンテンツ送信要求に応答し て、 前記記憶部に格納したコンテンツまたは、 前記配信サーバから送信され たコンテンツを前記クライアントに配信する。
そのコンテンツ配信システムにおいて、 さらに、 前記複数の中継クライァ ントの各々は、 前記複数のクライアントの少なく とも一つから送信されたコ ンテンッ送信要求に応答して、 前記配信サーバに格納された前記コンテンツ の更新日時を検索し、 前記検索の結果、 前記記憶部に格納されたコンテンツ の更新日時と、 前記配信サーバに格納されたコンテンッの更新日時とを比較 し、 前記比較の結果、 前記更新日時が異なる場合、 前記配信サーバに最新コ ンテンッ配信要求を送信し、 前記配信サーバは、 前記中継クライアントから 送信された前記最新コンテンツ配信要求に応答して、 前記最新コンテンッを 送信し、 前記中継クライアントは、 前記送信された最新コンテンツを受信し、 前記受信に応答して前記中継クライアントの記憶部のコンテンツを前記最新 コンテンツに更新し、 前記最新コンテンツを前記クライアントに配信する。 そのコンテンツ配信システムにおいて、 さらに、 前記複数の中継クライァ ントの各々は、 前記複数のクライアントの少なく とも一つから送信されたコ ンテンッ送信要求に応答して、 前記配信サーバに格納された前記コンテンツ の更新日時をを検索し、 前記検索の結果、 前記記憶部に格納されたコンテン ッの更新日時と、 前記配信サーバに格納されたコンテンツの更新日時とを比 較し、 前記比較の結果、 前記更新日時が同一の場合、 前記複数の中継クライ アン卜の各々は、 前記記憶部に格納されたコンテンツを前記クライアントに 送信する。
そのコンテンツ配信システムにおいて、 さらに、 前記中継クライアントは、 前記コンテンツ配信要求に応答して前記配信サーバから送信された前記コン テンッの複数のブロックの、 少なく とも一つのプロックを受信しなかった場 合、 前記未受信のブロックの再送信要求を前記配信サーバに送信し、 前記配 信サーバは、 前記再送信要求に応答して、 前記中継クライアントに前記未受 信のブロックを送信する。
そのコンテンツ配信システムにおいて、 さらに、 前記配信サーバは、 前記 再送信要求された前記未受信のブロックの再送信中に、 他の中継クライアン 卜から、 前記コンテンツに対するコンテンツ配信要求を受信した場合、 前記 コンテンツ配信要求に応答して、 前記中継クライアントに未送信のブロック を前記中継クライアントのア ドレスと前記他の中継クライアントのアドレス に送信し、 前記中継クライアントに送信済みのプロックを前記他の中継クラ イアントに送信する。
そのコンテンツ配信システムにおいて、 さらに、 前記配信サーバは、 前記 再送信要求された前記未受信のプロックを所定の順序で送信し、 前記送信の 途中に、 前記他の中継クライアントから要求された前記コンテンツのコンテ ンッ配信要求に応答して、 前記他の中継クライアントに対するコンテンツの 送信を、 前記中継クライアントに未送信のブロックから開始し、 前記送信を 循環的に繰り返し、 前記再送信要求された前記未受信のブロックの送信完了 後、 前記他の中継クライァントに未送信のプロックを送信する。
そのコンテンッ配信システムにおいて、 さらに、 前記中継クライアントは、 前記複数のブロックに分割された前記コンテンッの全てのプロックの受信を 完了した場合、 前記配信サーバにコンテンツ受信完了通知を送信し、 前記配 信サーバは、 前記コンテンツ受信完了通知に応答して、 前記コンテンツの受 信を継続中の他の中継クライアン卜が存在するかどうかを検索する。
その: ンテンッ配信シス丁ムにおいて、 さらに、 前記配信サ一バは 、 刖記 検索の結果 、 刖 己コンテンッの受信を継続中の他の中継クライァン卜が存在 する場合、 前記他の中継クラィァン卜に対する前記コンテンツの送信を循環 的に繰り返し、
前記検索の結果、 前記コンテンッの受信を継続中の他の中継クライァン が存在しない場合、 前記コンテンツの送信を終了する。
そのコンテンッ配信システムにおいて、 さらに、 制御サ ハ、を含み、 刖 己 複数の中継クラィァン卜の少なく とも一つは、 前記制御サ一バに配信サーバ ァドレス通知要求を送信し、 前記制御サーノ^は、 目 sd送信された配信サーバ ァ ドレス通知要求に )、答して、 前記中継クライアン卜に、 刖記コンテンッを 配信する配信サ一ハ、の 7 ドレスを送信し、 前記中継クライァン卜は、 前記ァ ド、レスに目 IJ記 ンテンッ配信要求を送信する。
そのコンテン 、 Jヽ 配信システムにおいて、 さらに、 前記制御サーバは、 刖 S己 送信された配信サーバァ ドレス通知要求に応答して、 前記配信サ一バに格納 された前記コンテンッの更新日時を通知し 、 前記中継クラィァン卜は、 m 通知に基づいて刖 Sし øし憶部に格納されたコンテンッの更新曰時と 、 FJU sri配信 サーバに格納されたコンテンツの更新日時とを比較する。
そのコンテンツ配信システムにおいて、 さらに、 前記複数の中継クライァ ン トの各々は、 前記比較の結果、 前記更新日時が異なる場合、 前記配信サ一 バに最新コンテンツ配信要求を送信し、 前記配信サーバは、 前記中継クライ アン卜から送信された前記最新コンテンツ配信要求に応答して、 前記最新コ ンテンッを送信し、 前記中継クライアントは、 前記送信された最新コンテン ッを受信し、 前記受信に応答して前記中継クライアン卜の記憶部のコンテン ッを前記最新コンテンッに更新し、 前記最新コンテンッを前記クライアン卜 に配信し、 前記比較の結果、 前記更新日時が同一の場合、 前記複数の中継ク ライアントの各々は、 前記記憶部に格納されたコンテンツを前記クライアン 卜に送信する。
そのコンテンツ配信システムにおいて、 さらに、 WW Wサーバを含み、 前 記複数の中継クライアントの少なく とも一つは、 前記制御サーバに配信サー バアドレス通知要求を送信し、 前記制御サーバは、 前記送信された配信サー バアドレス通知要求に応答して、 前記中継クライアントに、 前記配信サーバ のアドレスまたは前記 wwwサーバのァドレスを送信する。
そのコンテンツ配信システムにおいて、 さらに、 前記制御サーバは、 前記 送信された配信サーバア ドレス通知要求に応答して、 前記配信サーバに、 コ ンテンッの配信が可能であるかを問い合わせ、 前記配信サーバからコンテン ッの配信が可能な場合、 前記配信サーバのァドレスを前記中継クライアント に送信し、 前記配信サーバからコンテンツ配信が不可能な場合、 前記 WW W サーバからコンテンッの配信が可能かを問い合わせ、 前記 wwwサーバから コンテンツの配信が可能な場合、 前記 WW Wサーバのァドレスを前記中継ク ライアントに送信し、 前記配信サーバまたは WW Wサーバからコンテンツの 配信が不可能な場合、 前記中継クライアントにエラー応答を送信する。
そのコンテンツ配信システムにおいて、 配信サーバは制御サーバからの指 示により、 wwwサーバからコンテンツのコピー (同期) を行なう際に、 コ ンテンッを中継クライアントに配信していた場合、 そのときに配信を受けて いた中継クライアントに対して配信を一時中断し、 コンテンツの更新 (同期) が終了したら、 各中継クライアントに C T— R E S E N Dメッセージを送信 し、 最新のコンテンツの配信を再開する。 各中継クライアントは、 C T— R E S E N Dメッセージに応答して、 そのときに受信していたコンテンツを破 棄して新たにコンテンツの受信を開始する。 そのコンテンツ配信システムにおいて、 さらに、 前記中継クライアントと 前記クライアントが 1の装置に備えられたシステムを用いて、 前記中継クラ イアントと前記クライアントの各々が前記装置の資源 (C P Uや記憶装置な ど) を共有するコンテンツ配信システムを用いてコンテンツの配信を行う。 ネッ トワークと、 前記ネッ トワークに接続され、 前記ネッ トワークを介し て複数のコンテンツを配信する配信サーバと、前記ネッ トワークに接続され、 前記ネッ トワークを介して前記コンテンツを受信する複数の中継クライアン 卜と、 前記ネッ トワークに接続され、 前記ネッ トワークを介して前記複数の 中継クライアントの各々に接続される複数のクライアントとを含むコンテン ッ配信システムを動作するプログラムであって、 複数のコンテンツを格納す るステップと、 前記複数のコンテンツの少なく とも一つのコンテンツの配信 を要求するコンテンツ配信要求を送信するステップと、 前記コンテンツ配信 要求に応答して、 前記要求されたコンテンツを複数のブロックに分割するス テツプと、 前記複数のプロックを送信するステップと、 前記中継クライアン 卜に、 前記要求されたコンテンツの送信の途中に、 他の中継クライアントか ら要求された前記コンテンツのコンテンツ配信要求に応答して、 前記中継ク ライアン卜に未送信のプロックを、 前記中継クライアントと前記他の中継ク ライアン卜に送信するステップと、 前記中継クライアントに送信済みのプロ ックを前記他の中継クライアントに送信するステップとを具備する方法をコ ンピュ一夕で実行可能なプログラムを用いてコンテンツ配信システムを動作 させる。
さらに、 前記コンテンッを複数のプロックに分割するステツプと前記複数 のブロックを所定の順序で送信するステップと、 前記送信の途中に、 前記他 の中継クライアントから要求された前記コンテンツのコンテンツ配信要求に 応答して、 前記他の中継クライアントに対するコンテンツの送信を、 前記中 継クライアントに未送信のブロックから開始するステップと、 前記複数のブ ロックの送信を循環的に繰り返すステップとを具備する方法をコンピュータ で実行可能なプログラムを用いてコンテンツ配信システムを動作させる。 さらに、 少なく とも一つのクライアントがコンテンツ送信要求を送信する ステップと、 前記中継クライアントは、 前記コンテンツ送信要求に応答して、 コンテンッ配信要求を送信するステツプと、 を具備する方法をコンピュー夕 で実行可能なプログラムを用いてコンテンツ配信システムを動作させる。 さらに、 前記複数の中継クライアントの各々は、 記憶部を含み、 前記記憶 部は、 前記配信サーバから送信されたコンテンツを格納するステップと、 前 記コンテンッ送信要求に応答して、前記記憶部に格納したコンテンツまたは、 前記配信サーバから送信されたコンテンツを前記クライアン卜に配信するス テツプとを具備する方法をコンピュータで実行可能なプログラムを用いてコ ンテンッ配信システムを動作させる。
さらに、 前記コンテンツ送信要求に応答して、 前記コンテンツの更新日時 を検索するステップと、 前記検索の結果、 前記記憶部に格納されたコンテン ッの更新日時と、 前記配信サーバに格納されたコンテンツの更新日時とを比 較するステップと、 前記比較の結果、 前記更新日時が異なる場合、 最新コン テンッ配信要求を送信するステップと、 前記最新コンテンツ配信要求に応答 して、 前記最新コンテンツを送信するステップと、 前記送信された最新コン テンッを受信し、 前記受信に応答して前記記憶部のコンテンツを前記最新コ ンテンッに更新するステツプと、 前記最新コンテンッを前記クライアン卜に 配信するステップとを具備する方法をコンピュータで実行可能なプログラム を用いてコンテンツ配信システムを動作させる。 .
さらに、 前記コンテンツ送信要求に応答して、 前記コンテンツの更新日時 を検索するステップと、 前記検索の結果、 前記記憶部に格納されたコンテン ッの更新日時と、 前記配信サーバに格納されたコンテンッの更新日時とを比 較するステップと、 前記比較の結果、 前記更新日時が同一の場合、 前記複数 の中継クライアントの各々は、 前記記憶部に格納されたコンテンツを前記ク ライアン卜に送信するステップとを具備する方法をコンピュータで実行可能 なプログラムを用いてコンテンツ配信システムを動作させる。
さらに、 前記コンテンツ配信要求に応答して前記配信サーバから送信され た前記コンテンツの複数のブロックの、 少なく とも一つのブロックを受信し なかった場合、 前記未受信のプロックの再送信要求を前記配信サーバに送信 するステップと、 前記配信サーバは、 前記再送信要求に応答して、 前記中継 クライアントに前記未受信のプロックを送信するステップとを具備する方法 をコンピュータで実行可能なプログラムを用いてコンテンツ配信システムを 動作させる。
さらに、 前記再送信要求された前記未受信のブロックの再送信中に、 他の 中継クライアントから、 前記コンテンッに対するコンテンッ配信要求を受信 した場合、 前記コンテンツ配信要求に応答して、 前記中継クライアントに未 送信のプロックを前記中継クライアントと前記他の中継クライアントに送信 するステップと、 前記中継クライアントに送信済みのブロックを前記他の中 継クライアントに送信するステップとを具備する方法をコンピュー夕で実行 可能なプログラムを用いてコンテンツ配信システムを動作させる。
さらに、 前記再送信要求された前記未受信のプロックを所定の順序で送信 するステップと、 前記送信の途中に、 前記他の中継クライアントから要求さ れた前記コンテンツのコンテンツ配信要求に応答して、 前記他の中継クライ アントに対するコンテンツの送信を、 前記中継クライアントに未送信のプロ ックから開始するステップと、 前記再送信要求された前記未受信のブロック の送信完了後、 前記他の中継クライアントに未送信のブロックを送信するス テツプと、 前記送信を循環的に繰り返すステップと、 を具備する方法をコン ピュー夕で実行可能なプログラムを用いてコンテンツ配信システムを動作さ せる。
さらに、 前記複数のブロックに分割された前記コンテンツの全てのブロッ クの受信を完了した場合、 コンテンツ受信完了通知を送信するステップと、 前記コンテンツ受信完了通知に応答して、 前記コンテンツの受信を継続中の 他の中継クライアン卜が存在するかどうかを検索するステップと、 を具備す る方法をコンピュータで実行可能なプログラムを用いてコンテンツ配信シス テムを動作させる。
さらに、 前記検索の結果、 前記コンテンツの受信を継続中の他の中継クラ イアントが存在する場合、 前記他の中継クライアントに対する前記コンテン ッの送信を循環的に繰り返すステップと、 前記検索の結果、 前記コンテンツ の受信を継続中の他の中継クライアントが存在しない場合、 前記コンテンツ の送信を終了するステップとを具備する方法をコンピュータで実行可能なプ ログラムを用いてコンテンツ配信システムを動作させる。
さらに、 そのコンテンツ配信システムに制御サーバを含み、 前記制御サー バに配信サーバァドレス通知要求を送信するステツプと、前記制御サ一バは、 前記送信された配信サーバァドレス通知要求に応答して、 前記コンテンッを 配信する配信サーバのァドレスを送信するステツプと、 前記ァドレスに前記 コンテンツ配信要求を送信するステップとを具備する方法をコンピュータで 実行可能なプログラムを用いてコンテンツ配信システムを動作させる。
さらに、 前記配信サーバァドレス通知要求に応答し こ、 ^ij 配信サーハ、に 格納された §ΰコンテンッの更新日時を通知するステップと、 前記通知に基 づいて前記記憶部に格納されたコンテンッの更新日時と、 刖 sd配信サーバに 格納されたコンテンツの更新日時とを比較するステップとを具備する方法を コンピュー夕で実行可能なプロダラムを用いて ンテンッ配信システムを動 作させる。
さらに、 前記比較の結果、 前記更新日時が異なる場合、 m 配信サ一バに 最新コンテンッ配信要求を送信するステップと 、 前記中継クライアン卜から 送信された前記最新コンテンッ配信 求に応答して、 刖 BCl最新コンテンッを 送信するステップと、前記送信された最新コンテンツを受信するステップと、 刖記受信に応答して刖記中継クライアン トの記憶部の ンテンッを In記 IT コンテンッに更新するステッフと、 刖記最新コンテンッを前記クラィアン卜 に配信するステップと 、 記比較の結果、 m 更新曰時が同一の 合 、 HU §ή 記憶部に格納されたコンテンッを BU gdクライアン卜に送信するステ Vプとを 具備する方法をコンピュ ―夕で実行可能なプ口ダラムを用いてコンテンッ配 信システムを動作させる。
さらに、 コンテンツ配信システムに WW Wサーバを含み 、 m 複数の中継 クライァントの少なく とも一つは刖 id制御サーバに配信サ —バァ レス通知 要求を送信するステップと 、 m された配信サーバァドレス通知要求に 応答して、 前記配信サーバのァドレスまたは前記 W WWサーバのァ ドレスを 送信するステップとを具備する方法をコンピュータで実行可能なプログラム を用いてコンテンツ配信システムを動作させる。
さらに、 前記送信された配信サーバア ドレス通知要求に応答して、 前記配 信サーバに、 コンテンツの配信が可能であるかを問い合わせるステップと、 前記配信サーバからコンテンツの配信が可能な場合、 前記配信サーバのア ド レスを前記中継クライアントに送信するステップと、 前記配信サーバからコ ンテンッ配信が不可能な場合、 前記 WW Wサーバのアドレスを前記中継クラ イアン卜に送信するステップを具備する方法をコンピュータで実行可能なプ ログラムを用いてコンテンツ配信システムを動作させる。
そのコンテンツ配信システムにおいて、 さらに、 前記制御サーバは、 前記 送信された配信サーバアドレス通知要求に応答して、 前記配信サーバに、 コ ンテンッの配信が可能であるかを問い合わるステップと、 前記配信サーバか らコンテンツの配信が可能な場合、 前記配信サーバのアドレスを前記中継ク ライアン卜に送信するステップと、 前記配信サーバからコンテンツ配信が不 可能な場合、 前記 WWWサーバからコンテンツの配信が可能かを問い合わせ るステップと、 前記 WWWサーバからコンテンツの配信が可能な場合、 前記 wwwサーバのァドレスを前記中継クライアン卜に送信するステップと、 前 記配信サーバまたは wwwサーバからコンテンッの配信が不可能な場合、 前 記中継クライアントにエラー応答を送信するステツプを具備する方法をコン ピュー夕で実行可能なプログラムを用いてコンテンツ配信システムを動作さ せる。
そのコンテンツ配信システムにおいて、 配信サーバは制御サーバからの指 示により、 wwwサーバからコンテンツのコピー (同期) を行なう際に、 コ ンテンッを中継クライアントに配信していた場合、 そのときに配信を受けて いた中継クライアントに対して配信を一時中断するステップと、 コンテンツ の更新 (同期) が終了したら、 各中継クライアントに C T— R E S E N Dメ ッセージを送信するステップと、 最新のコンテンツの配信を再開するステツ プと、 各中継クライアントは、 C T— R E S E N Dメッセージに応答して、 そのときに受信していたコンテンツを破棄して新たにコンテンツの受信を開 始するステップとを具備する方法をコンビュ一夕で実行可能なプログラムを 用いてコンテンツ配信システムを動作させる。
そのプログラムにおいて、 さらに前記中継クライアントと前記クライアン トが 1に備えられるステップと、 前記中継クライアントと前記クライアント の各々が資源を共有するステップとを具備する方法をコンピュ一夕で実行可 能なプログラムを用いてコンテンツ配信システムを動作させる。
そのコンテンツ配信システムにおいて、 クライアントからコンテンツ Aの 配信が要求されたときに、 コンテンツ Aへの操作により次に要求される確度 の高いコンテンツ Bを含めたコンテンツとして、 配信サーバから中継クライ アン卜に対してコンテンツの配信を行なう。
[効果]
本発明の効果は、 キャッシュサーバの数量によらず、 コンテンツを配信す るサーバから広域 I Pネッ トワークに送信される単位時間あたりの通信量を 一定にする効果がある。 特にコンテンツ Aへの操作により次に要求される確 度の高いコンテンツ Bを含めたコンテンツとして、 配信サーバから中継クラ イアントに対してコンテンツの配信を行なうようなコンテンツ配信の場合に おいて、 中継クライアントの数が増えても、 配信サーバから広域 I Pネッ ト ワークに送出されるコンテンツを分割したブロックの数量が変化しないため、 配信サーバにかかる負荷が一定となる効果がある。 図面の簡単な説明
図 1は、 従来のコンテンツ配信システムを示すブロック図である。
図 2は、 第 1実施形態のコンテンツ配信システムを示すブロック図である。 図 3は、 配信元の構成を示すブロック図である。
図 4は、 制御サーバの構成を示すブロック図である。
図 5は、 WWWサーバの構成を示すブロック図である。
図 6は、 配信サーバの構成を示すブロック図である。
図 7は、 中継クライアントの構成を示すブロック図である。
図 8は、 WW Wサーバと配信サーバと中継クライアントの各々の記憶部に 格納されたコンテンツデータを示す図である。
図 9は、 コンテンッ要求メッセージの概要を示す図である。
図 1 0は、 URL要求メッセージの概要を示す図である。
図 1 1は、 URL応答メッセ一ジの概要を示す図である。
図 1 2は、 R CV— R EQメッセージの概要を示す図である。
図 1 3は、 C T— I N FOメッセージの概要を示す図である。
図 1 4は、 RT— R E Qメッセージの概要を示す図である。
図 1 5は、 R C V— F I Nメッセ一ジの概要を示す図である。
図 1 6は、 C T— DATAメッセージの概要を示す図である。
図 1 7は、 RT_DATAメッセージの概要を示す図である。
図 1 8は、 通信動作シーケンスを表す図である。
図 1 9は、 中継クライアントの動作を示すフローチャートである。
図 2 0は、 制御サーバの動作を示すフローチャートである。
図 2 1は、 コンテン有効期限情報管理の動作を示すフローチヤ一トである。 図 2 2は、 コンテンッ構成情報の比較を示す図である。
図 2 3は、 コンテンツが有する有効期限情報を示す図である。
図 2 4は、 第 2実施形態のコンテンツ配信システムを示すブロック図であ ス
図 2 5は、 中継クライアント処理部とクライアント処理部を備える装置の 構成を示すブロック図である。
図 2 6は、 通信動作シーケンスを表す図である。
図 2 7は、 C T— R E S ENDメッセージの概要を示す図である。
図 2 8は、 通信動作シーケンスを表す図である。 発明を実施するための最良の形態
[ c実施形態の構成]
以下に、 図面を用いて本発明の実施の形態について述べる。 図 2は本発明 の実施の形態におけるネッ トワークの構成を示すブロック図である。 図 2 を 参照すると、 本実施の形態におけるネッ トワークの構成は、 広域 I Pネッ ト ワーク 4と、 その広域 I Pネッ トワーク 4を介してコンテンツを配信する配 信元 1 と、 その配信されたコンテンツを受信する第 1から第 n (nは 1以上 の自然数) の複数の L ANとで構成される。 本実施の形態では、 主に広域 I Pネッ トワーク 4を介して配信元 1 に接続する第 1 L AN 2 と、 広域 I Pネ ッ トワーク 4を介して配信元 1 に接続する第 2 L AN 3 とで構成されたネッ トワークを用いて説明を行うが、 これは、 本発明のネッ トワークの構成を限 定するものではない。
配信元 1はさらに、 制御サーバ 5 と、 WWWサーバ 7 と、 配信サーバ 6 と で構成され、 配信元 1 を構成する各々のサーバは、 有線通信または無線通信 を用いて相互に接続される。 第 1 L AN 2、 第 2 L AN 3の各々は、 少なく とも一つの中継クライアントと、 その中継クライアントに接続される複数の クライアントとで構成される。 複数のクライアントの各々は、 有線通信また は無線通信を用いて各々の LANに含まれる中継クライアントに接続される。
WWWサーバ 7は、 本発明の実施の形態において、 音楽デ一夕、 画像デー 夕、 オンラインソフ トウエアなど、 広域 I Pネッ トワーク 4を介して配信可 能なさまざまなコンテンツを、 その広域 I Pネッ トワーク 4を介して、 その 広域 I Pネッ トワーク 4に接続された不特定多数のクライアントに公開する サーバである。 また、 WWWサーバ 7は、 配信サ一バ 6が何らかの要因によ り、 コンテンツの配信ができない場合に、 配信サーバ 6に変わってコンテン ッの配信を行う。
その不特定多数のクライアントは、 その広域 I Pネッ トワーク 4を介して WWWサーバ 7に接続し、 広域 I Pネッ トワーク 4上にどのようなコンテン ッが公開されているのかを閲覧する。
制御サーバ 5は、 本発明の実施の形態において、 WWWサーバ 7が公開し たコンテンッの受信を希望する希望者が送信するコンテンッ配信要求に応答 して、 コンテンツ要求メッセージ 1 4を受信し、 要求されたコンテンツの最 新のデータが受信希望者に送信されるように、 システムの制御を行うサーバ である。
配信サーバ 6は、 本発明の実施の形態において、 配信要求が行われたコン テンッを実際に広域 I Pネッ トワーク 4を介して送信するサーバである。 配 信サーバ 6は、 同一のコンテンツに対して、 複数の中継クライアントから配 信要求を受信した場合でも、 ネッ トワーク 4のトラフィ ックを増大させるこ と無く、 コンテンツの配信が可能なプロ 卜コルを用いてコンテンツの配信を 行う。
広域 I Pネッ トワーク 4は、 インターネッ 卜に代表される情報通信ネッ ト ワーク 4である。
図 3は、 本実施の形態における配信元 1の構成を示すブロック図である。 図 3を参照すると、 配信元 1は、 制御サーバ 5 と、 WWWサーバ 7 と、 配信 サーバ 6 とで構成され、 各々のサーバは配信元内通信インターフェース 3 2 を介して接続される。 さらに、 各々のサーバは外部通信インターフェース 3 1 を有し、 その外部通信インタ一フェース 3 1 を介して、 広域 I Pネッ トヮ —ク 4に接続される。 WW Wサーバ 7 と配信サーバ 6は、 内蔵または外部接 続された記憶部を有し、 各々の記憶部はコンテンツデータを格納する。 各々 の記憶部に格納されたコンテンツデータは、 配信元内通信インターフェース 3 2を介してミラーリ ングされ、 ミラ一リ ングされることで各々のサーバは 相互に最新のコンテンッデータを格納する。
配信サーバ 6 と W W Wサーバ 7の各々の記憶部に格納されたコンテンッデ —タは、 制御サーバ 5からの指示に応答して外部通信ィン夕一フェース 3 1 から広域 I Pネッ トワーク 4を介して、 配信元 1 に接続する複数の L A Nの 中継クライアントに送信される。
図 4は、 本実施の形態における制御サーバ 5の構成を示すブロック図であ る。 図 4を参照すると、 制御サーバ 5は、 外部通信インターフェース 3 1 と、 配信元内通信インタ一フェース 3 2 と、 処理部 5 1 とで構成される。 処理部 5 1 と外部通信ィンターフェ一ス 3 1は制御サーバ 5内の情報通信線を用い て接続され、 処理部 5 1 と配信元内通信ィン夕一フェース 3 2は制御サーバ 5内の情報通信線を用いて接続される。
外部通信インタ一フェース 3 1は、 広域 I Pネッ 卜ワーク 4に接続され、 情報の送信、 及び受信を行う装置である。 図 4を参照すると、 制御サーバ 5 に備えられた外部通信イン夕一フェース 3 1は、 広域 I Pネッ トワーク 4を 介して接続される複数の L A Nに設置された中継クライアントの、 少なく と も一つから送信される情報を受信し、 その受信した情報を処理部 5 1 に通知 する。 また、 処理部 5 1からの情報送信指示に応答して、 その中継クライァ ントへの情報の送信を行う。 さらに、 外部通信インターフェース 3 1は、 広 域 I Pネッ トワーク 4を介して接続される複数の中継クライアントの、 少な く とも一つから送信される情報を受信し、 その受信した情報を処理部に通知 する。 また、 処理部からの情報送信指示に応答して、 その中継クライアント への情報の送信を行う。
配信元内通信インターフェース 3 2は、配信元 1内で行われる情報の送信、 及び受信を行う装置である。 図 3を参照すると、 制御サーバ 5に備えられた 配信元内通信インターフェース 3 2は、 制御サーバ 5 と WW Wサーバ 7 との 間で行われる情報の送受信を行い、 また、 制御サーバ 5と配信サーバ 6 との 間で行われる情報の送受信を行う。
処理部 5 1は、 制御サーバ 5に内蔵された情報処理装置である。 C P U (中 央演算処理装置) を備え、 各々のサーバや広域 I Pネッ トワーク 4を介して 制御サーバ 5に送信された情報に基づいて情報処理を行う。 また、 処理部 5 1はさらに記憶部 5 2を備え、 その記憶媒体にコンテンッ管理情報を記憶す る。 コンテンツ管理情報は配信サーバ 6の記憶部と W WWサーバ 7の記憶部 の各々に格納されたコンテンツデ一夕が最新のコンテンツであるかどうかを 管理するための情報である。 処理部 5 1は、 各々のサーバの記憶部に格納さ れたコンテンッ構成情報を、予め設定された時刻に各々のサーバから取得し、 取得された情報に基づいて複数のコンテンツの各々に対して、 更新が行われ たかどうかを監視する。
図 5は、 本実施の形態における W W Wサーバ 7の構成を示すブロック図で ある。 図 5を参照すると、 WW Wサーバ 7は外部通信インタ一フエ一ス 3 1 と、 配信元内通信インターフェース 3 2 と、 処理部 7 1 と、 コンテンツデ一 タを格納する記憶部 7 2 とで構成され、 処理部 7 1 と外部通信インタ一フエ —ス 3 1 は W W Wサーバ 7内の情報通信線を用いて接続され、 処理部 7 1 と 配信元内通信ィンタ一フェース 3 2は WWWサーバ 7内の情報通信線を用い て接続される。 さらに、 記憶部 7 2 と処理部 7 1 とは WWWサーバ 7内の情 報通信線を用いて接続され、 記憶部 7 2に格納されたコンテンツデータ 7 c dはその情報通信線を介して各ィンタ一フェースに送信される。
記憶部 7 2は、 WWWサーバ 7に内蔵または外部接続された書き換え可能 な情報記憶装置である。 WWWサーバ 7が、 広域 I Pネッ トワーク 4を介し て不特定多数のクライアントに公開するコンテンツを格納する。 また、 コン テンッ管理者によって、 新しいコンテンツが書込まれた場合、 そのコンテン ッを WWWサーバ 7 の記憶部 7 2に格納するとともに、 配信サーバ 6 の記憶 部 6 2 と同期を取り、 その新しいコンテンツを配信サーバ 6の記憶部 6 2に 格納する。 さらに、 WWWサーバ 7 の記憶部 7 2 のコンテンツの更新が行わ れた場合も WWWサ一バ 7の記憶部 7 2 と同期を取り、 更新された最新のコ ンテンッを配信サーバ 6の記憶部 6 2に格納する。
処理部 7 1は、 WWWサーバ 7に内蔵された情報処理装置である。 C P U (中央演算処理装置) を備え、 記憶部に格納したコンテンツの検索処理や、 何らかの要因により配信サーバ 6からのコンテンツの配信が不可能な場合の 代替処理などの情報処理を行う。
外部通信インターフェース 3 1は、 広域 I Pネッ トワーク 4に接続され、 情報の送信、 及び受信を行う装置である。 図 5を参照すると、 WWWサーバ 7に備えられた外部通信インターフェース 3 1は、 広域 I Pネッ 卜ワーク 4 を介して接続される複数の L ANに設置された中継クライアントの、 少なく とも一つから送信される情報を受信し、 その受信した情報を処理部に通知す る。 また、 処理部からの情報送信指示に応答して、 その中継クライアントへ の情報の送信を行う。 さらに、 外部通信インタ一フェース 3 1は、 広域 I P ネッ 卜ワーク 4を介して接続される複数の中継クライアントの、 少なく とも 一つから送信される情報を受信し、 その受信した情報を処理部に通知する。 また、 処理部 7 1からの情報送信指示に応答して、 その中継クライアントへ の情報の送信を行う。
配信元内通信インタ一フェース 3 2は、 配信元内で行われる情報の送信、 及び受信を行う装置である。 図 3を参照すると、 W W Wサーバ 7に備えられ た配信元内通信インタ一フェース 3 2は、 W W Wサーバ 7 と配信サーバ 6 と の間で行われる情報の送受信を行い、 また、 W W Wサーバ 7 と制御サーバ 5 との間で行われる情報の送受信を行う。
図 6は、 本実施の形態における配信サーバ 6の構成を示すブロック図であ る。 図 6を参照すると、 配信サーバ 6は外部通信インタ一フェース 3 1 と、 配信元内通信インターフェース 3 2 と、 処理部 6 1 と、 コンテンツデータを 格納する記憶部 6 2 とで構成され、 処理部 6 1 と外部通信インタ一フヱ一ス 3 1は配信サーバ 6内の情報通信線を用'いて接続され、 さらに処理部と配信 元内通信インタ一フェース 3 2は配信サーバ 6内の情報通信線を用いて接続 される。 また、 記憶部 6 2 と処理部 6 1 とは配信サーバ 6内の情報通信線を 用いて接続され、 コンテンツデータはその通信線を介して各インタ一フエ一 スに送信される。
記憶部 6 2は、 配信サーバ 6に内蔵または外部接続された書き換え可能な 情報記憶装置である。 広域 I Pネッ トワーク 4を介して送信される R C V— R E Qメッセ一ジ 1 7に応答して、 そのコンテンツを要求した中継クライァ ントに送信するコンテンツデータ 6 c dを格納する。 また、 コンテンツ管理 者によって、 WWWサーバ 7の記憶部 7 2に新しいコンテンツが書込まれた 場合、 W WWサーバ 7の記憶部 7 2 と同期を取り、 その新しいコンテンツを 配信サーバ 6 の記憶部 6 2に格納する。 さらに、 W WWサーバ 7 の記億部 7 2 のコンテンッの更新が行われた場合も WW Wサーバ 7の記憶部 7 2 と同期 を取り、 更新された最新のコンテンツを配信サーバ 6の記憶部 6 2に格納す る。
処理部 6 1は、 配信サーバ 6に内蔵された情報処理装置である。 C P U (中 央演算処理装置) を備え、 記憶部 6 2に格納したコンテンツの検索処理や、 各々のインターフェースが受信したメッセージに基づく応答メッセージの作 成などを行う。
外部通信インターフェース 3 1 は、 広域 I Pネッ トワーク 4に接続され、 情報の送信、 及び受信を行う装置である。 図 6 を参照すると、 配信サーバ 6 に備えられた外部通信インターフェース 3 1は、 広域 I Pネッ トワーク 4を 介して接続される複数の L A Nに設置された中継クライアントの、 少なく と も一つから送信される情報を受信し、その受信した情報を処理部に通知する。 また、 処理部 6 1からの情報送信指示に応答して、 その中継クライアントへ の情報の送信を行う。 さらに、 外部通信ィンターフェ一ス 3 1は、 広域 I P ネッ トワーク 4を介して接続される複数の中継クライアントの、 少なく とも 一つから送信される情報を受信し、 その受信した情報を処理部 6 1 に通知す る。 また、 処理部 6 1からの情報送信指示に応答して、 その中継クライアン 卜への情報の送信を行う。
配信元内通信インターフェース 3 2は、配信元 1内で行われる情報の送信、 及び受信を行う装置である。 図 3を参照すると、 配信サーバ 6に備えられた 配信元内通信インタ一フェース 3 2は、 配信サーバ 6 と W WWサーバ 7 との 間で行われる情報の送受信を行い、 また、 配信サーバ 6 と制御サーバ 5 との 間で行われる情報の送受信を行う。
図 7は、 本実施の形態における中継クライアントの構成を示すブロック図 である。 図 7を参照すると、 外部通信インタ一フェース 3 1 と、 L A Nイン ターフェース 8 3 と、 処理部 8 1 と、 コンテンツデータ 8 c dを格納する記 憶部 8 2 とで構成され、 処理部 8 1 と外部通信インタ一フェース 3 1 は中継 クライアント内の情報通信線を用いて接続され、 さらに処理部 8 1 と L A N インターフェース 8 3は中継クライアントの情報通信線を用いて接続される。 また、 記憶部 8 2 と処理部 8 1 とは中継クライアント内の情報通信線を用い て接続される。
記憶部 8 2は、 格納する情報の書き換えが可能な情報記憶装置である。 中 継クライアントに内蔵または外部接続され、 配信サーバ 6から送信された C T— D A T A 2 1、 または W W Wサーバ 7から送信されたコンテンツブロッ クデータを格納する。 記憶部 8 2は、 受信した C T— D A T A 2 1が、 新規 のコンテンツのデータであった場合、 配信サーバ 6から送信された C T— I N F 0メッセ一ジ 1 8 に含まれるコンテンツ構成配信情報と、 その C T— D A T A 2 1 を対応させたコンテンツデータとしてクライアントに配信可能な 状態で格納する。 その C T— D A T A 2 1が以前に配信されたことがあるコ ンテンッの最新のデータであった場合、 配信サーバ 6から送信された C T— I N F Oメッセージ 1 8に含まれるコンテンツ構成配信情報と、 その C T— D A T A 2 1 とに基づいて、 記憶部 8 2に格納してあるコンテンツデータを 更新する。
処理部 8 1は、 中継クライアントに内蔵された情報処理装置である。 C P U (中央演算処理装置) を備え、 クライアントからのコンテンツ要求メッセ ージ 1 4に応答して記憶部に格納したコンテンツデータから特定のコンテン ッを検索する検索処理や、 L A Nに接続されたクライアントや広域 I Pネッ トワーク 4に接続されたサーバに送信するメッセ一ジを作成する作成処理な どを行う。
外部通信インタ一フェース 3 1は、 広域 I Pネッ トワーク 4を介して行わ れる情報の送信、 及び受信を行う装置である。 図 7を参照すると、 中継クラ イアントに備えられた外部通信ィンターフェ一ス 3 1は、 広域 I Pネッ トヮ —ク 4を介して接続される複数のサーバの、 少なく とも一つから送信される 情報を受信し、 その受信した情報を処理部 8 1 に通知する。 また、 処理部 8 1からの情報送信指示に応答して、 そのサーバへの情報の送信を行う。 さら に、 外部通信インターフェース 3 1 は、 広域 I Pネッ トワーク 4を介して配 信サーバ 6または WWWサーバ 7から送信されたコンテンッを受信する。
L A Nインターフエ一ス 8 3は、 L A N内で行われる情報の送信、 及び受 信を行う装置である。 図 7を参照すると、 中継クライアントに備えられた L A Nインターフェース 8 3は、 その L A Nを介して中継クライアントに接続 された複数のクライアン卜の少なく とも一つから送信されるメッセ一ジを受 信し、 その受信したメッセージを処理部 8 1 に通知する。 また、 処理部 8 1 からの情報送信指示に応答して、 配信サーバ 6または W WWサーバ 7から配 信され受信の完了したコンテンツを、 そのコンテンツの配信要求を行ったク ライアントに送信する。
図 8は、 W WWサ一バ 7 と配信サーバ 6 と中継クライアントの各々の記憶 部に格納されたコンテンツデータを示す図である。 図 8を参照すると、 各々 の記憶部に格納されたコンテンツデータは、 コンテンツ I D 1 3 aと、 コン テンッ構成情報 1 3 bと、 データ本体 1 3 c とを有する。 コンテンツ I D 1 3 aは、 記憶部内に格納された複数のコンテンッの各々に付与される識別子 であり、 ネッ トワーク 4上において各々のコンテンツを識別するために用い られる。
コンテンッ構成情報 1 3 bは、 W W Wサーバ 7によって公開されたコンテ ンッを閲覧したコンテンッ配信希望者が、 そのコンテンッの内容を把握する ために必要なコンテンツ名 1 3 b iなどの情報が含まる。 さらに、 コンテン ッ構成情報 1 3 bは、 各々のコンテンツが最新のものであるかどうかの判断 に用いられる更新日時情報 1 3 b を含む。
図 9は、 第 n L A N ( nは 1以上の自然数。) を構成する複数のクライァン の一つが、 その L A Nを介して、 その L A N内にある中継クラィァン卜に 対して送信するコンテンツ要求メッセ一ジ 1 4の概要を示す図でめる。 その クライアン卜は 、 広域 I Pネッ トワーク 4を介して W W Wサーバ 7によつて 公開された複数のコンテンツの一つを選択し、 コンテンツ要求メッセージ 1
4を送信することで、 そのコンテンツの配信を要求する。
WWWサーバ 7は、 不特定多数のクライアントに複数のコンテンツを公開 する。 コンテンッの公開はィン夕一ネッ 卜上の W e bページなどを用いて行 われ、 不特定多数のクラィァン卜の少なく とも一つは、 広域 I Pネッ ヮ一 ク 4を介してその W e bぺージにァクセスし、 公開されたコンテンツの nン テンッ構成情報 1 3 bを取得する o コンテンッの配信希望者は、 その取得し た複数のコンテンツ構成情報 1 3 bを基に 、 任意のコンテンッを選択し 、 n ンテンッ要求メッセ一ン 1 4を送信する。 コンテンツ要求メッセージ 1 4の 送信は、 W WWサ一バ 7によつて公開されたコンテンツ構成情報 1 3 bを閲 覧しているクライアン hの閲覧画面で、 コンテンッ配信希望者が閲覧画面上 に表示された配信を希望するコンテンッのコンテンツ名をク リ ックするなど の動作によって行われる。
図 9を参照すると、 コンテンツ要求メッセ一ジ 1 4は、 送信先アドレス 1 4 aと、 送信元ア ドレス 1 4 bとメッセ一ジ種別 1 4 c とメッセ一ジデータ 1 4 dを含む。 送信先ア ドレス 1 4 aには、 コンテンツ要求メッセージ 1 4 を送信する送信先を識別するためのァ ドレスが記載され、 送信元ァドレス 1 4 bにはそのメッセージを要求したクライアントを識別するためのアドレス が記載され、 メッセージ種別 1 4 cにはコンテンツの要求を表す HTT P リ クェス トである G E Tが記載され、 メッセージデータ 1 4 dには配信希望者 が配信を要求したコンテンツの UR L (要求ページ UR L) が記載され、 コ ンテンッ要求メッセージ 1 4に含まれる要求ページ UR Lは、 WWWサーバ 7の記憶部 7 2に格納されたコンテンッ構成情報 1 3 bから取得される。 図 1 0は、 UR L要求メッセージ 1 5の概要を示す図である。 クライアン 卜からのコンテンツ要求メッセージ 1 4を受信した中維クライアントは、 そ のコンテンツ要求メッセージ 1 4に応答して、 広域 I Pネッ トワーク 4を介 して配信元 1 に UR L要求メッセージ 1 5を送信する。 UR L要求メッセー ジ 1 5は、 送信先アドレス 1 5 aと、 送信元アドレス 1 5 bと、 メッセ一ジ 種別 1 5 c と、 メッセージデータ 1 5 dとを含む。
送信先アドレス 1 5 aは UR L要求メッセージ 1 5 を送信する送信先を識 別するためのアドレスが記載される。 本実施の形態では、 配信元 1 を構成す る制御サーバ 5のアドレスが記載される。 送信元ア ドレス 1 5 bには U R L 要求メッセージを送信した中継クライアントァ ドレスが記載され、 メッセ一 ジ種別 1 5 cには、 F HO L P (F T P/HTT P O v e r L OO P L E X P r o t o c o l ) リクエス トである H E ADが記載され、 メッセ一 ジデータ 1 5 dには、 コンテンツ要求メッセージ送信元 1 4に記載されたコ ンテンッ要求元クライアントアドレスと要求ページ UR Lと同じ情報が記載 される。
図 1 1 は、 UR L応答メッセージ 1 6の概要を示す図である。 広域 I Pネ ッ トワーク 4を介して U R L要求メッセージ 1 5を受信した配信元 1 は、 そ の UR L要求メッセージ 1 5に応答して、 その UR L応答メッセ一ジ 1 6 を 返信する。 UR L応答メッセージ 1 6 には、 送信先ア ドレス 1 6 aと、 送信 元ア ドレス 1 6 bと、 メッセージ種別 1 6 c と、 メッセージデータ 1 6 dと が含まれる。 UR L応答メッセージ 1 6に含まれる送信先アドレス 1 6 aは、 UR L応 答メッセ一ジ 1 6 を送信する送信先を識別するためのアドレスが記載され、 送信元ァドレスには UR L応答メッセージを送信した制御サーバのァドレス が記載され、 メッセ一ジ種別 1 6 c には F HO L Pのレスポンスである UR L— I N F Oが記載され、 メッセージデータ 1 6 dにはコンテンツ要求元ク ライアントアドレス 1 6 c と UR L判定情報が記載される。 UR L判定情報 には、 UR L要求メッセージ 1 5で示された要求ページ UR Lの有効 Z無効 判定、コンテンッのダウンロードを行なうサーバ種別及びその I Pアドレス、 コンテンッ更新情報、 コンテンツ I Dとコンテンッ構成情報が含まれる。 本実施例においては、 メッセージデータ 1 6 dの U R L判定情報には、 中 継クライアントの記憶部 8 2に格納されているコンテンツ 8 c dと、 配信サ —バ 6 または WWWサーバ 7の記憶部 ( 6 2、 7 2 ) に格納されたコンテン ッ ( 6 2 c d、 7 2 c d ) とを比較し、 その二つが同一であるかどうかを判 断するために必要な情報が含まれる。
通常、 メッセージデータ 1 6 dのサーバ種別/ I Pア ドレスには配信サー バ 6からの配信が行なわれる旨の情報とその I Pアドレスが記載されるが、 何らかの要因で要求されたコンテンツを配信サーバ 6から配信できないとき は、 制御サーバ 5はメッセージデータ 1 6 dのサーバ種別/ I Pアドレスに WWWサーバ 7からの配信が行なわれる旨の情報とその I Pアドレスを記載 して UR L応答メッセージ 1 6を送信する。
図 1 2は、 R C V— R E Qメッセージ 1 7の概要を示す図である。 広域 I Pネッ トヮ一ク 4を介して UR L応答メッセージ 1 6 を受信した中継クライ アントは、 その UR L応答メッセ一ジ 1 6に含まれるメッセージデータ 1 6 dに記載されたサーバ種別と I Pア ドレスに基づいて、 配信サーバ 6 または WWWサーバ 7に R C V— R E Qメッセージ 1 7を送信する。 R C V— R E Qメッセージ 1 7は、 送信先ア ドレス 1 7 aと、 送信元ア ドレス 1 7 bと、 メッセージ種別 1 7 c と、 メッセージデータ 1 7 dとを含む。
R C V— R E Qメッセ一ジ 1 7に含まれる送信先ァ ドレス 1 7 aには、 R C V R E Qメッセージ 1 7を送信する送信先を識別するためのァ ドレスが 記載され、 送信元アドレスには R C V— R E Qメッセ一ジ 1 7 を送信した中 継クライアントを識別するためのァドレスが記載され、 メッセージ種別 1 7 c には配信サーバに対する L P L X P リクエストである R C V— R E Qまた は WWWサ一バに対する H T T P リクエストである G E Tが記載され、 メッ セージデータ 1 7 dには UR L応答メッセージ 1 6 に含まれるコンテンツ要 求元クライアントアドレス情報と同じ情報と、 コンテンツ I D (配信サーバ の場合) 又は要求ページ URL (WWWサーバの場合) が記載される。
WWWサーバに配信を要求した場合、 コンテンツの転送は HTT Pにおけ る G E Tリクエストに対するレスポンスとして行なわれる。 本実施の形態を 説明する図では記載されていないが、 H T T Pにより転送される場合、 転送 時の未受信ブロックは T C P (T r a n s m i s s i o n C o n t r o l P r o t o c o l ) により自動的に再送信が行なわれエラーフリーとなるた め、 後述の C T— I N F O、 RT— R E Q、 R C V— F I N、 C T— DAT A、 RT— DAT Aの各メッセージは使われない。
図 1 3は、 C T— I N F Oメッセージ 1 8の概要を示す図である。 R C V — R E Qメッセ一ジ 1 7を受信した配信サーバ 6は、 その R C V— R E Qメ ッセージ 1 7に応答して中継クライアントに C T— I N F Oメッセージ 1 8 を送信する。 図 1 3を参照すると、 C T— I N F Oメッセ一ジ 1 8は、 送信 先アドレス 1 8 aと、 送信元ア ドレス 1 8 bとメッセージ種別 1 8 c とメッ セージデータ 1 8 dとを含む。
C T— I N F Oメッセージ 1 8に含まれる送信先アドレス 1 8 aは、 C T — I N F Oメッセージ 1 8を送信する送信先を識別するためのアドレスが記 載され、 本実施の形態では中継クライアントのア ドレスが記載される。 送信 元アドレス 1 8 bは、 C T— I N F Oメッセージ 1 8 を送信した送信元を識 別する為のアドレスが記載され、 本実施の形態では配信サーバ 6のアドレス が記載される。 メッセ一ジ種別 1 8 c には L P L X P レスポンスである C T _ I N F Oが記載される。 メッセージデータ 1 8 dには、 コンテンツ要求元 クライアントアドレスと、 コンテンツ配信情報が記載される。 コンテンツ配 信情報にはコンテンツ I D、 分割ブロック数、 マルチキャス トグループア ド レスの情報が記載される。
コンテンツ I Dには、 R CV_R E Qメッセージ 1 7に含まれる情報と同じ 情報が記載される。
コンテンツ配信情報は、 最新の配信コンテンツデ一夕 (以下、 C T— D A TA 2 1 と呼ぶ) を受信し、 その受信した最新コンテンツをクライアントに 送信するために必要な情報が記載される。
図 1 4は、 RT_R E Qメッセージ 1 9の概要を示す図である。
R C V— R E Qメッセージ 1 7に応答して送信された C T— DATA 2 1 を 受信した場合に、 何らかの要因で受信ができなかったブロックが存在した場 合、 中継クライアントは配信サーバ 6 に R T— R E Qメッセージ 1 9を送信 し、 未受信のブロックの再送信を要求する。 図 1 4を参照すると、 R T— R E Qメッセージは送信先ァドレス 1 9 aと送信元ァ ドレス 1 9 bとメッセー ジ種別 1 9 c とメッセージデータ 1 9 dとを含む。
R T— R E Qメッセージ 1 9に含まれる送信先アドレス 1 9 aは、 R T— R E Qメッセージ 1 9を送信する送信先を識別するためのァドレスが記載さ れ、 本実施の形態では配信サーバ 6のアドレスが記載される。 送信元ァドレ ス 1 9 bには、 R T— R E Qメッセージを送信した中継クライアントを識別 するためのアドレスが記載される。 メッセ一ジ種別 1 9 cには L P L X P リ クェス トである R T_R E Qが記載される。 メッセージデータ 1 9 dには、 コンテンツ要求元クライアントアドレスと再配信を要求するブロック (未受 信のブロック) の情報が記載される。
図 1 5は、 R C V_F I Nメッセ一ジ 2 0の概要を示す図である。 C T— D ATA 2 1の受信、 または C T— DATA 2 1受信後の R T— DATA 2 2の受信により、 全てのコンテンツの受信が完了した中継クライアントは、 そのコンテンツを配信したサーバに R CV— F I Nメッセージ 2 0を送信す る。 図 1 5を参照すると、 R CV— F I Nメッセージ 2 0は、 送信先ァドレ ス 2 0 aと送信元ア ドレス 2 O bとメッセージ種別 2 0 c とメッセージデー タ 2 0 dとを含む。
R C V_F I Nメッセージ 2 0に含まれる送信先アドレス 2 0 aには、 R C V— F I Nメッセージ 2 0を送信する送信先を識別するためのァドレスが 記載され、 本実施の形態では配信サーバ 6のアドレスが記載される。 送信元 アドレス 2 0 bには受信完了済み中継クライアントのアドレスが記載される。 メッセージ種別 2 0 cには配信を行なっていたサーバへ、 その中雜クライア ントに対するコンテンツ配信停止命令である L P L X P リクエスト R CV— F I Nが記載される。 メッセ一ジデータには、 R C V— R E Qメッセージ 1 7に含まれる情報と同じコンテンツ要求元クライアントアドレスとコンテン ッ配信情報が記載される。
図 1 6は、 配信コンテンッデ一夕 (以下 C T— D A T A 2 1 と呼ぶ) の概 要を示す図である。 配信サーバ 6は、 R C V— R E Qメッセージ 1 7に応答 して C T— DATA 2 1 を送信する。 図 1 6 を参照すると C T_DATA 2 1は送信先ァドレス 2 1 aと送信元ァドレス 2 1 bとメッセージ種別 2 1 c とメッセージデータ 2 1 dとで構成される。
C T— DATA 2 1 に含まれる送信先アドレス 2 1 aには、 中継クライァ ントに送信した C T— I N F Oメッセージにより示されたグループアドレス が記載され、 本実施の形態では Class-Dの IPアドレスが記載される。 送信元 ア ドレス 2 1 bには配信サーバのァドレスが記載される。 メッセージ種別 2 1 c には配信サーバ 6から送信されているコンテンツデータであることを識 別する L P L X P レスポンス C T— DATAが記載される。 メッセージデ一 夕 2 I dには、 配信を要求されたコンテンツのコンテンツ I Dと、 コンテン ッが分割されたブロック (データ本体) と、 その分割順序情報と、 ブロック のエラー検出訂正情報とが記載される。
またコンテンツ分割ブロック (データ本体) には複数のブロックに分割さ れたコンテンツの少なく とも一つが格納される。 配信サーバ 6は、 コンテン ッを、 そのブロック単位で送信し、 中継クライアントは、 配信サーバ 6から 送信された C T— D ATAメッセージ 2 1のメッセ一ジデータに含まれる分 割順序情報に基づいて、 分割されて送信されたデータ本体を結合し一つのコ ンテンッにする。
図 1 7は、 再配信プロック送信データ (以下 R T_D ATA 2 2 と呼ぶ) の概要を示す図である。 配信サーバ 6は、 R T— R E Qメッセージ 1 9に応 答して R T— DATA 2 2を送信する。 図 1 7を参照すると、 RT— DAT A 2 2は、 送信先ァドレス 2 2 aと送信元ァドレス 2 2 bとメッセージ種別 2 2 c とメッセージデータ 2 2 dとで構成される。
RT— DATA 2 2に含まれる送信先アドレス 2 2 aには、 送信先の中継 クライアントを識別するアドレスが記載され、 本実施の形態では R T— R E Qメッセ一ジ 1 9を送信し RT— DATA 2 2を受信する中継クライアント のアドレスが記載される。 送信元ァ ドレス 2 2 bには配信サーバ 6のァドレ スが記載される。 メッセージ種別 2 2 c には配信サーバ 6から再送信されて いるコンテンツデータであることを識別する L P L X Pレスポンス R T— D AT Aが記載される。 メッセージデータ 2 2 dには、 配信を要求されたコン テンッのコンテンツ I Dと、 コンテンツが分割されたブロック (データ本体) と、 その分割順序情報とが記載される。 R T— D AT Aの転送には T C Pが 使用されるため、 エラ一フリーの転送が行なわれる。 そのためエラー検出訂 正情報は付加されない。
またコンテンツ分割ブロック (データ本体) には複数のブロックに分割さ れたコンテンツの少なく とも一つが格納される。 配信サーバ 6は、 コンテン ッを、 そのブロック単位で送信し、 中継クライアントは、 配信サーバ 6から 送信された R T— D A T Aメッセージ 2 2のメッセージデータ 2 2 dに含ま れる分割順序情報に基づいて、 分割されて送信されたデータ本体を結合し一 つのコンテンツにする。
図 2 2は、 コンテンツ構成情報の比較を示す図である。 図 2 2を参照する と、 制御サーバ 5は、 U R L要求メッセ一ジ 1 5の受信に応答して行われる 比較は、 各々のコンテンツが有するコンテンツ構成情報を対比させることで 行われる。
図 2 3は、 コンテンツが有する有効期限情報を示す図である。 図 2 3 を参 照すると、 制御サーバ 5および中継クライアン卜の処理部が行う有効期限判 定は、 各々のコンテンツが有する有効期限情報を対比させることで行われる。
[第 1実施形態の動作] 以下に、 図面を用いて本発明の実施の動作について述べる。 図 1 8は、 本 発明の実施の形態の動作における通信動作シーケンスを表す図である。 図 1 8を参照すると、 F 1 において、 第 1 L AN 2内のクライアント c l は、 広 域 I Pネッ トヮ一ク 4を介して WW Wサーバ 7が公開した複数のコンテンツ の閲覧を行い、 公開された複数のコンテンツの中から配信を希望するコンテ ンッを選択し、 その選択したコンテンツ (以下、 コンテンツ Aと呼ぶ。) のコ ンテンッ要求メッセ一ジ 1 4を第 1 L AN 2内の中継クライアントに対して 送信する。
F 2において、 クライアントから送信されたコンテンツ要求メッセージ 1 4を受信した第 1 L AN中継クライアント 8は、 コンテンツ Aの配信を受け るために、 広域 I Pネッ トワーク 4を介して配信元 1の制御サーバ 5に対し て UR L要求メッセージ 1 5を送信する。
F 3において、 第 1 L AN中継クライアント 8から送信された UR L要求 メッセージ 1 5を受信した制御サーバ 5の処理部は、 WWWサーバ 7の記憶 部に格納されたコンテンツ Aに関するコンテンツデータと、 配信サーバ 6の 記憶部に格納されたコンテンツ Aに関するコンテンツデータとを比較する。 その比較の結果、 各々の記憶部に格納されたコンテンツ Aに関するコンテン ッデータの更新日時などが同一のものであるならば、 制御サーバ 5の処理部 は、 U R L応答メッセージ 1 6の U R L判定情報に配信サーバ 6の U R Lを 記載したメッセージを作成し、 作成された UR L応答メッセージ 1 6を第 1 LAN中継クライアント 8に送信する。
その比較の結果、 各々の記憶部に格納されたコンテンツデータに差異が存 在した場合は、 制御サーバ 5の処理部は、 各々のサーバの記憶部に格納され たコンテンツが最新のものになるように、 格納されたコンテンツデータの同 期を図る。 さらに、 制御サーバ 5の処理部は、 コンテンツデ一夕の同期を図 るとともに、 コンテンツデータの同期が正常に行われた場合は、 UR L応答 メッセージ 1 6の U R L判定情報に配信サーバ 6の U R Lを記載したメッセ ージを作成し、 作成された U R L応答メッセージ 1 6 を第 1 L AN中継クラ イアント 8に送信する。 何らかの要因で、 コンテンツデータの同期が正常に 行われなかった場合は、 制御サーバ 5の処理部は、 W W Wサーバ 7からコン テンッ Aの配信を行うように、 U R L判定情報に W W Wサーバ 7の U R Lを 記載した U R L応答メッセージ 1 6 を作成し、 作成された U R L応答メッセ ージ 1 6を第 1 L A N中継クライアント 8に送信する。
U R L応答メッセージ 1 6には、 中継クライアントの記憶部に格納された コンテンツに関するコンテンツデータが最新のものであるかどうかを判定す るための判定情報が含まれる。 第 1 L A N中継クライアント 8は、 判定情報 に含まれる情報に基づいて自分自身の記憶部に格納されたコンテンツが最新 のものであるとの判定結果を得た場合、 配信元 1へのコンテンツデータの配 信要求を行わず、 第 1 L A N中継クライアント 8の記憶部に格納されたコン テンッデ一夕をクライアントに配信する。
F 4において 、 第 1 L A N中継クラィァン h 8は、 制御サーバ 5から送信
ヽ された U R L応答メッセージ 1 6を受信する U R L応答メッセ一ン 1 6 を 受信した中継クライアン卜は 、 U R L応答メ Vセ ―ン 1 6の U R L判定情報 に記載された U R Lに基づいて、 実際に ンテンッを配信する配信サ ―バを 確定し、 コンテンッ Aの R C V— R E Qメッセ ―ジ 1 7を送信する 図 1 8 において、 第 1 L A N中継クライアン卜 8は 、 実際に Z1ンテンッ Aを配信す るサーバを配信サ一バ 6に確定し、 その配信サ一バ 6から配信される ンテ ンッデ一夕を受信するために 、 コンテンッ Aの R C V R E Qメッセ ―ジ 1
7を配信サーバ 6へ运 1目し、 コンテンッ Aの取新のコンテンッデ一タの配信 を要求する。
F 5において 、 第 1 L A N中継クラィァン 8から送信された R C V — R
E Qメッセージ 1 7を受信した配信サ一バ 6は 、 その配信サーバ 6から送信 される C T— D A T A 2 1の受信に必要な情報を有する C T— I N F oメッ セ —ジ 1 8を、 第 1 L A N中継クラィァン卜 8に送信する 。 さらに 、 配信サ
―バ 6は、 第 1 L A N中継クライアン h 8にコン丁ノッ丁 —夕のテ ―夕 体 とヘッダとで構成された C T _ D A T A 2 1 の送信を開始する。 第 1 L A N 中継クライアン h 8は、 C T一 I N F Oメッセ ―ジ 1 8に含まれる情報によ り 、 受信した C T D A T A 2 1がコンテンッ Aのデ一夕である とを確認 する。
F 6において、 第 2 L AN 3のクライアントは、 配信サーバ 6が第 1 L A N中継クライアント 8にコンテンツ Aの C T— DATA 2 1 を送信している 時に、 第 2 L AN中継クライアント 9に対して要求コンテンツがコンテンツ Aであるコンテンツ要求メッセ一ジ 1 4を送信する。
F 7において、 クライアント d 1から送信されたコンテンツ要求メッセ一 ジ 1 4を受信した第 2 L AN中継クライアント 9は、 コンテンツ Aの配信を 受けるために、 配信元 1の制御サーバ 5に対して U R L要求メッセージ 1 5 を送信する。
F' 8において、 第 2 L AN中継クライアント 9から送信された UR L要求 メッセージ 1 5を受信した制御サーバ 5の処理部は、 WWWサーバ 7の記憶 部に格納されたコンテンツ Aに関するコンテンツデータと、 配信サーバ 6の 記憶部に格納されたコンテンツ Aに関するコンテンツデータとを比較する。 その比較の結果、 各々の記憶部に格納されたコンテンツ Aに関するコンテン ッデ一夕の更新日時などが同一のものであるならば、 制御サーバ 5の処理部 は、 U R L応答メッセージ 1 6の U R L判定情報に配信サーバ 6の U R Lを 記載したメッセージを作成し、 作成された U R L応答メッセージ 1 6を第 2 LAN中継クライアント 9に送信する。
その比較の結果、 各々の記憶部に格納されたコンテンッデータに差異が存 在した場合は、 制御サーバ 5の処理部は、 各々のサーバの記憶部に格納され たコンテンツが最新のものになるように、 格納されたコンテンツデータの同 期を図る。 さらに、 制御サーバ 5の処理部は、 コンテンツデータの同期を図 るとともに、 コンテンツデータの同期が正常に行われた場合は、 UR L応答 メッセージ 1 6の U R L判定情報に配信サーバ 6の U R Lを記載したメッセ ージを作成し、 作成された U R L応答メッセ一ジ 1 6 を第 2 L AN中継クラ イアント 9に送信する。 ここで、 何らかの要因で、 コンテンツデータの同期 が正常に行われなかった場合は、 制御サーバ 5の処理部は、 WWWサーバ 7 からコンテンツ Aの配信を行うように、 U R L判定情報に WWWサーバ 7の U R Lを記載した U R L応答メッセージ 1 6を作成し、 作成された UR L応 答メッセージ 1 6を第 2 LAN中継クライアント 9に送信する。
U R L応答メッセージ 1 6には、 中継クライアントの記憶部に格納された コンテンツに関するコンテンツデータが最新のものであるかどうかを判定す るため φ判定情報が含まれる。 第 2 L AN中継クライアント 9は、 判定情報 に含まれる情報に基づいて自分自身の記憶部に格納されたコンテンツが最新 のものであるとの判定結果を得た場合、 配信'元 1へのコンテンッデータの配 信要求を行わず、 第 2 L AN中継クライアント 9の記憶部に格納されたコン テンッデータをクライアントに配信する。
F 9において、 第 2 L AN中継クライアント 9は、 制御サーバ 5から送信 された UR L応答メッセ一ジ 1 6を受信する。 UR L応答メッセ一ジ 1 6 を 受信した中継クライアントは、 UR L応答メッセージ 1 6の UR L判定情報 に記載された U R Lに基づいて、 実際にコンテンツを配信するサーバを確定 し、 コンテンツ Aの R C V— R E Qメッセージ 1 7 を送信する。 図 1 8にお いて、 第 2 L AN中継クライアント 9は、 実際にコンテンツ Aを配信するサ —バを配信サーバ 6に確定し、 その配信サーバ 6から配信されるコンテンツ データを受信するために、 コンテンツ Aの R CV— R E Qメッセ一ジ 1 7を 配信サーバ 6へ送信し、 コンテンツ Aの最新のコンテンツデータの配信を要 求する。
F 1 0にねいて 、 2 LAN中継クラィァン 9から送信された R C V—
R E Qメッセ一ジ 1 7 を受信した配信サ一バ 6は 、 その配信サーバ 6から送 信される C T — D A T A 2 1の受信に必要な情報を有する C T_ I Ν F οメ ッセージ 1 8 を、 第 2 L AN中継クライァン 9に达信する 。 さらに 、 配信 サーバ 6は 、 第 2 L A N中継クライアン h 9に ンテンッデ一夕のデ一夕本 体とへッダとで構成された C T— DAT A 2 1の送信を開始する。 第 2 L A
N中継クラィァン h 9は、 C T一 I N F Oメヅセ一ジ 1 8に含まれる情報に より、 受信した C T D A T A 2 1がコンテンッ Aのデータであることを確 認する。
このとき配信サーバ 6は、 複数のブロックに分割されたコンテンツ Aのデ 一タ本体の内、 第 1 L AN中継クライアント 8 と第 2 L AN中継クライアン ト 9の両方に未送信のブロックを送信し、 第 1 LAN中継クライアント 8に は送信終了済みだけれども、 第 2 L AN中継クライアント 9は未受信である ブロックの送信を、 時間的に遅らせてコンテンツの配信を行う。
図 2 6を用いて説明すると、 第 1 L AN中継クライアント 8への C T— D ATA 2 1の送信が、 ブロック 2まで終了したときに、 第 2 L AN中継クラ イアント 9への C T— DATA 2 1の配信要求を受信し、 コンテンツの配信 が開始した塲合、 配信サーバ 6は、 第 1 LAN中継クライアント 8 と第 2 L AN中継クライアント 9の各々に、 ブロック 3の送信を行う。 この場合、 第 1 L AN中継クライアント 8はブロック 1、 ブロック 2の受信が終了してい るので、 最終ブロックを受信した時点で全てのコンテンツデータの受信が完 了する。 第 2 L AN中継クライアント 9は、 第 1 L AN中継クライアント 8 と同時に最終ブロックの受信を完了し、 その後未受信のブロックの受信を開 始する。
配信サーバ 6は、 他の中継クライアントが配信要求を行い、 現在配信が行 われているコンテンツに対する配信要求を受信した場合、 C T— I N F Oメ ッセージ 1 8にその情報を添付する。 つまり、 複数のブロックに分割された コンテンツデータの、 先頭ブロックから配信が行われない場合は、 分割され たブロック情報と、 どのブロックから送信が行われるのかを、 予め C T _ I N F Oメッセージ 1 8 を用いて、 現在配信が行われているコンテンツに対す る配信要求を送信した中継クライアントに通知する。
F 1 1 において、 第 1 L AN中継クライアント 8は、 C T— DATA 2 1 で送信された複数のブロックにおいて、 何らかの原因で受信が正常に行われ なかったコンテンツデータブロックの再送信を配信サーバ 6に要求するため に、 RT— R E Qメッセージ 1 9を配信サーバ 6に送信する。 第 1 L AN中 継クライアント 8から送信された R T— R E Qメッセージ 1 9を受信した配 信サーバ 6は、 R T— R E Qメッセージ 1 9に含まれる再配信要求ブロック 情報に基づいて、 第 1 L AN中継クライアント 8が正常に受信できなかつた コンテンツデータブロックの再送信 (R T_DATA 2 2 ) を行う。
F 1 2において、 第 1 L AN中継クライアント 8は、 要求したコンテンツ の全てのコンテンツデータの受信を完了すると、 配信サーバ 6に対して受信 完了を通知するために R C V— F I Nメッセージ 2 0を送信する。 配信サ一 バ 6は、 第 1 L AN中継クライアント 8から送信された R C V— F I Nメッ セ一ジ 2 0を受信すると、 その R C V— F I Nメッセ一ジ 2 0に含まれるコ ンテンッ I Dを参照して、 そのコンテンツに対してコンテンツデ一夕の受信 を継続している他の中継クライアントが存在するかどうかを調査する。 図 1 8では、 第 2 L AN中継クライアント 9がそのコンテンツの受信を継続して いるため、 マルチキャストによる C T— DATA 2 1の送信を継続する。
F 1 3において、 要求したコンテンツの受信を完了した第 1 LAN中継ク ライアント 8は、 受信完了した最新のコンテンツを、 第 1 L AN中継クライ アント 8の記憶部に格納するとともに、 そのコンテンツの配信を要求した第 1 LAN 2内のクライアントに対して、 コンテンツ Aの配信を開始する。
F 1 4において、 第 2 L AN中継クライアント 9は、 C T— DATA 2 1 で送信された複数のプロックにおいて、 何らかの原因で受信が正常に行われ なかったコンテンツデ一夕ブロックの再送信を配信サーバ 6 に要求するため に、 R T— R E Qメッセ一ジ 1 9を配信サーバ 6に送信する。 第 2 LAN中 継クライアント 9から送信された R T— R E Qメッセ一ジ 1 9を受信した配 信サーバ 6は、 RT— R E Qメッセージ 1 9に含まれる再配信要求ブロック 情報に基づいて、 第 2 L A N中継クライアント 9が正常に受信できなかった コンテンツデ一タブロックの再送信 (RT_DATA 2 2 ) を行う。
F 1 5において、 第 2 L AN中継クライアント 9は、 要求したコンテンツ の受信を完了すると、 配信サーバ 6に対して受信完了を通知するために R C V— F I Nメッセージ 2 0を送信する。 配信サーバ 6は、 第 2 L AN中継ク ライアント 9から送信された R C V— F I Nメッセージ 2 0を受信すると、 そのコンテンツに対してコンテンツデータの受信を継続している他の中継ク ライアン卜が存在するかどうかを調査する。 図 1 8では、 他の中継クライァ ントが受信を継続していないため、 マルチキャス トによる C T— D ATA 2 1の送信は終了する。
F 1 6 において、 要求したコンテンツの受信を完了した第 2 L AN中継ク ライアント 9は、 受信完了した最新のコンテンツを、 第 2 L AN中継クライ アント 9の記憶部に格納するとともに、 そのコンテンツの配信を要求した第 2 LAN内のクライアントに対して、 コンテンツ Aの配信を開始する。
F 1 7において、 第 1 L AN 2内のクライアント c lは、 広域 I Pネッ ト ワーク 4を介して WWWサーバ 7が公開した複数のコンテンツの閲覧を行い、 公開された複数のコンテンツの中から配信を希望するコンテンツを選択し、 その選択したコンテンツ (以下、 コンテンツ Bと呼ぶ。) のコンテンツ要求メ ッセージ 1 4を第 1 LAN内の中継クライアントに対して送信する。
F 1 8において、 コンテンツ要求メッセ一ジ 1 4を受信した第 1 L AN中 継クライアント 8は、 コンテンツ Bの配信を受けるために、 制御サーバ 5に 対して UR L要求メッセージ 1 5を送信する。
F 1 9において、 第 1 L AN中継クライアント 8から送信された UR L要 求メッセ一ジ 1 5を受信した制御サーバ 5の処理部は、 WWWサーバ 7の記 憶部に格納されたコンテンッ Bに関するコンテンッデ一夕と、 配信サーバ 6 の記憶部に格納されたコンテンッ Bに関するコンテンッデ一夕とを比較する。 その比較の結果、 各々の記憶部に格納されたコンテンツ Bに関するコンテン ッデータの更新日時などが同一のものであるならば、 制御サーバ 5の処理部 は、 UR L応答メッセ一ジ 1 6の UR L判定情報に配信サーバ 6の UR Lを 記載したメッセージを作成し、 作成された UR L応答メッセージ 1 6を第 1 LAN中継クライアント 8に送信する。
その比較の結果、 各々のサーバの記憶部に格納されたコンテンツデータに 差異が存在した場合は、 制御サーバ 5の処理部は、 各々のサーバの記憶部に 格納されたコンテンツが最新のものになるように、 格納されたコンテンツデ —夕の同期を図る。 さらに、 制御サーバ 5の処理部は、 コンテンツデータの 同期を図るとともに、 コンテンツデータの同期が正常に行われた場合は、 U R L応答メッセ一ジ 1 6の U R L判定情報に配信サ一バ 6の U R Lを記載し たメッセージを作成し、 作成された U R L応答メッセージ 1 6を第 1 L AN 中継クライアント 8に送信する。 何らかの要因で、 コンテンツデータの同期 が正常に行われなかった場合は、 制御サーバ 5の処理部は、 WWWサーバ 7 からコンテンツ Bの配信を行うように、 U R L判定情報に WW Wサーバ 7の U R Lを記載した U R L応答メッセージ 1 6 を作成し、 作成された U R L応 答メッセージ 1 6を第 1 L A N中継クライアント 8に送信する。
U R L応答メッセ一ジ 1 6には、 中継クライアントの記憶部に格納された コンテンツに関するコンテンツデータが最新のものであるかどうかを判定す るための判定情報が含まれる。 第 1 L A N中継クライアント 8は、 判定情報 に含まれる情報に基づいて自分自身の記憶部に格納されたコンテンツが最新 のものであるとの判定結果を得た場合、 配信元 1へのコンテンツデータの配 信要求を行わず、 第 1 L A N中継クライアント 8の記憶部に格納されたコン テンッデータをクライアントに配信する。
1 L A N中継クライァン卜 8の記憶部に格納されたコンテンッが、 最新 のものであるとの判定結果を得られなかつた場合、 つまり、 配信元 1 に最新 の ンテンッが格納されていた場 A口 、 笛丄 1 L A N中継クライアン卜 8はコン テンッ Bに対する R C V— R E Qメッセ一ジを配信サーバ 6に送信し、 R C V R E Qメッセージに応答して配信サーバ 6から送信された最新のコンテ ンッの C T一 D A T A 2 1 を記憶部に格納し、 最新のコンテンッをクライア ン に配信する。
第 1 L A N中継クライアン h 8は、 その 部に格納したコンテンッが最 新のものかどうかの判定を 、 U R L応答メッセ —ジ 1 6を受信するたびに行 ラ 第 1 L A N中継クライァン h 8は、 U R L応答メッセージ 1 6 を受信す るたびに記憶部に格納した ンテンッの判定を行う ことで、 クライアン卜は 常に最新のコンテンツの配信を受けることができる。
F 2 0において 、 第 1 L A N中継クライアン h 8の記憶部には、 先の配信
( F 4から F 1 2の操作) で得られたコンテンッまたは配信元 1で更新され 新たな配信でィ守 れたコンテンッが格納されている 。 そのコンテンッの配信 要求した第 1 L A N 2内のクライアントに対して 3ンテンッ Bの配信を開 始する 元の配信の際 、 コンテンツ Aに付随してコンテンッ Bの配信を行な つてお < ことにより、 新たな配信を行なわずに 、 ンテンッの配信を要求し た第 1 L A N内のクライアン卜に対してコンテンッ Bの配信を開始すること が可能になる。
次に、 図面を用いて本発明の実施の形態における各々の LANに設置され た、 中継クライアントの動作を述べる。 各々の L ANに設置された中継クラ イアン卜の動作は、 L ANが異なっていても同様の動作をするので、 ここで は第 1 L AN 2を用いて説明を進める。
図 1 9は本発明の実施の形態における中継クライアン卜の動作を示すフ口 一チャートである。 図 1 9を参照すると、 中継クライアントは、 その初期状 態において、 第 1 L AN 2を介して中継クライアントに接続する複数のクラ イアント c l〜c n (nは 1以上の自然数。) の少なくとも一つから送信され るコンテンツ要求メッセージ 1 4を監視している。 図 1 9において、 フロ一 チャー トの動作は、 第 1 L AN中継クライアント 8は第 1 LAN 2に接続す る複数のクライアントの少なく とも一つのクライアントから送信されるコン テンッ要求メッセ一ジ 1 4を受信することで開始する。
ステップ S 1 0 1 において、 クライアントから送信されたコンテンツ要求 メ ッセ一ジ 1 4を受信する。 ステップ S 1 0 1 においてコンテンツ要求メッ セージ 1 4を受信した中継クライアントは、 ステップ S 1 0 3において、 そ のコンテンツ要求メ ッセージ 1 4の受信に応答して、 該当するコンテンツの 配信を受けるために、 制御サーバ 5に対して U R L要求メッセージ 1 5を送 信する。 さらに、 ステップ S 1 0 3において、 中継クライアン トは、 送信し た UR L要求メッセージ 1 5に対して制御サーバ 5から返信された UR L応 答メッセージ 1 6を受信し、 ステップ S 1 0 5へ進む。
ステップ S 1 0 5において、 第 1 L AN中継クライアント 8は、 記憶部に 格納している U R L判定情報のコンテンツ構成情報と、 配信サーバ 6に格納 されているコンテンツ構成情報の比較を行う。 比較は、 制御サーバ 5から送 信された U R L応答メッセージ 1 6 に含まれる U R L判定情報に基づいて行 われ、 UR L判定情報には、 コンテンツの有効期間の情報や最新更新日時情 報などが含まれる。 中継クライアン トの処理部は、 記憶部に格納された該当 するコ ンテンツのコンテンツ構成情報と、 受信した UR L応答メッセージ 1 6に含まれる UR L判定情報のコンテンツ構成情報との比較により行われる。 ステップ S 1 0 5における比較の結果、 該当するコンテンツに変化が無か つた場合、 つまり、 第 1 L A N中継クライアント 8の記憶部に格納されてい るコンテンツデータと配信サーバ 6に格納されたコンテンツデ一夕とが同一 のデータであった場合、 フローはステップ S 1 0 7へ進む。
ステップ S 1 0 7において、 中継クライアントは、 記憶部に保存されてい るコンテンツの有効期限を判定する。 判定の結果、 有効期限内であれば、 ス テツプ S 1 1 5に進み、 記憶部に保存されているコンテンツに要求されたべ ージが存在するかを判定する。 有効期限切れの場合、 配信されているコンテ ンッの中にクライアントの要求しているページが存在するかどうかを判定す るステップ S 1 0 9へ進む。
ステップ S 1 0 5における比較の結果、 第 1 L A N中継クライアント 8の 記憶部に格納されている該当するコンテンツに変化がある場合、 つまり、 第 1 L A N中継クライアント 8の記憶部に格納されているコンテンッデータと、 配信サ バ 6の記憶部に格納されたコンテンツデ一夕とが同一で toハ、、かつた場 合、 ステップ S 1 0 9へ進み、 配信されているコンテンツの中にクライアン 卜の要求しているページが存在するかどうかを判定する。
ステ Vプ S 1 0 9 において、 配信サーバ 6が配信している ンテンッの構 成に 、 クライアン卜が要求しているページが存在するかを判定する 。 判定の 結果 、 存在しないページを要求している場合、 ステップ S 1 1 7に進みクラ ィァン卜に対してエラー応答送信を行う。 クライアントが要求しているぺー ジが配信中のコンテンツに含まれる場合、 ステップ S 1 1 1 に進み最新のコ ンテンッを配信サーバ 6からダウンロードする。 何らかの要因で配信サーバ
6からのコンテンッ配信が不可能な場合、 制御サーバ 5から送信される U R
L fcゝ答メッセージ 1 6 に含まれる U R L判定情報には、 W W Wサーバ 7の U
R Lが記載されるので WWWサーバ 7からコンテンツの転送が行なわれる。 ステップ S 1 1 1 において、 クライアントの要求するページが記憶部に保 存されていない為、配信サーバ 6からコンテンツのダウンロードを開始する。 要求されているページが得られたら、 ステップ S 1 1 3に進む。
ステップ S 1 1 3において、 配信サーバ 6からダウンロードしたコンテン ッ · コンテンツ構成情報 · コンテンツ有効期限情報を記憶部に保存開始する とともに、 クライアントにコンテンツ応答する為にステップ S 1 1 9に進む。 ステップ S 1 1 5において、 記憶部に保存されているコンテンツの中に、 要求されたページが存在するかを判定する。 判定の結果、 存在しない場合つ まり配信元 1にも存在しない場合、 クライアントのコンテンツ要求に対して H T T P応答でエラ一応答を送信する為にステップ S 1 1 7に進む。 要求さ れたページが存在する場合、 クライアントに対してコンテンッを応答送信す る為、 ステップ S 1 1 9に進む。
ステップ S 1 1 7において、 クライアントが要求したページが、 記億部に も配信元 1 にも存在しない為、 クライアントのコンテンツ要求に対して、 H T T P応答でエラー応答を送信する。 送信後は待機状態にもどる。
ステップ S 1 1 9において、 クライアントが要求したページが、 記憶部に 保存されているので、 クライアントのコンテンツ要求に対して、 H T T Pに よりコンテンッ応答を送信する。 送信後は待機状態にもどる。
次に、 図面を用いて本発明の実施の形態における配信元 1 に設置された、 制御サーバ 5の動作を述べる。 制御サーバ 5の動作は L A Nが異なっていて も同様の動作をするので、 ここでは第 1 L A N 2を用いて説明を進める。 図 2 0は、 制御サーバ 5の動作を示すフローチャートである。 図 2 0を参 照すると、 制御サーバ 5はその初期状態において、 第 1 L A N中継クライァ ント 8からの U R L要求メッセ一ジ 1 5の受信を監視する。制御サーバ 5は、 広域 I Pネッ トワーク 4を介して第 1 L A N中継クライアント 8から送信さ れる U R L要求メッセージ 1 5を受信することで開始する。
ステップ S 2 0 1 において、 制御サーバ 5は初期化終了後、 待機状態とな り中継クライアントからの U R L要求メッセージ 1 5を監視する。 ステップ S 2 0 3において、 待機状態であった制御サーバ 5は、 中継クライアントか ら U R L要求メッセージ 1 5を受信すると、 次のステップ S 2 0 5へ進む。 ステップ S 2 0 5において、 制御サーバ 5は、 記憶部 5 2に保存されてい るコンテンツ構成情報 (ファイルリス ト、 ディ レク トリ情報等) を取得し、 ステップ S 2 0 7へ進む。 ステップ S 2 0 7において、 制御サーバ 5は中継クライアントから送信さ れた U R L要求メッセ一ジ 1 5に含まれる要求ページ U R Lと、 ステップ S 2 0 5で取得したコンテンッ構成情報とを比較し、 配信サーバ 6からコンテ ンッの配信が可能かを判定する。 この判定により、 中継クライアントから誤 つた U R L (実際には存在しないコンテンツ) を要求された場合、 ステップ S 2 2 1に進み中継クライアントにエラー応答を送信する。
ステップ S 2 0 9において、 制御サーバ 5は、 配信サーバ 6からコンテン ッの配信が可能と判定されたコンテンツの有効期限情報を、 記憶部 5 2から 取得する。
ステップ S 2 1 1 において、 制御サーバ 5は、 ステップ S 2 0 9で取得し たコンテンツ有効期限情報を調査し、 要求されたコンテンッが有効期限切れ かどうかを判定する。 この判定により、 コンテンツの有効期限が切れていた 場合、 ステップ S 2 1 5に進み中継クライアントに更新終了まで待機するよ うに応答を送信する。
ステップ S 2 1 3において、 中継クライアントが配信サーバ 6からコンテ ンッを受信可能なので、 制御サーバ 5は中継クライアントに対して、 配信サ —バ 6からコンテンツの受信を行う様に U R L応答メッセージ 1 6を送信す る。 次の U R L要求を受信する為、 待機状態に移行する。
ステップ S 2 1 5において、 配信サーバ 6の記憶部に格納されているコン テンッの有効期限が切れているため、 配信サーバ 6 に対して W W Wサーバ 7 からコンテンツの読み込みを行ない最新のコンテンツを配信できるように更 新の指示をだす。 この指示により配信サーバ 6は W W Wサーバ 7からコンテ ンッのコピ一を行なう。 配信サーバ 6が W W Wサーバ 7からコンテンッのコ ピーを完了するまでの間、 中継クライアントに対して待機するように指示を 出す。
ステップ S 2 1 7において、 W W Wサ一バから配信サ一バに対してコンテ ンッのコピーが正常に終了したかを判定する。 判定の結果、 コンテンツのコ ピーが正常に終了したら、 S 2 1 3 に進み配信サーバ 6からコンテンツの受 信を行なうように U R L応答メッセージ 1 6 を送信する。 何らかの理由によ りコンテンツのコピーが正常に終了しなかった場合、 S 2 1 9に進み、 WW Wサーバ 7からコンテンツの受信を行なうように w w wサーバからコンテン ッの受信を行う為に URL応答メッセージ 1 6を送信する。
ステップ S 2 1 9において、 配信サ一バは何らかの理由により、 最新のコ ンテンッが配信できないので、 中継クライアントに対して wwwサーバから コンテンツの受信を行う為に UR L応答メッセージ 1 6を送信する。
ステップ S 2 2 1 において、 中継クライアントから要求された UR Lが配 信サーバ 6の記憶部に存在しないので、 確認のため WWWサーバ 7のコンテ ンッ構成情報を取得する。 取得したコンテンッ構成情報と要求された UR L を比較する。 比較の結果、 WWWサーバ 7には存在するが配信サーバ 6には 存在しない場合、 ステップ S 2 1 5に進み、 配信サーバ 6のコンテンツ更新 処理を行なう。 比較の結果、 WWWサーバ 7にも存在しない場合、 S 2 2 3 に進み、 要求された UR Lが存在しないというエラーの UR L応答メッセ一 ジ 1 6を送信する。
ステップ S 2 2 3 において、 要求された UR Lは配信サーバにも WWWサ —バにも存在しないため、 中継クライアントに対して、 要求された U R Lが 存在しないというエラ一の U R L応答メッセージ 1 6を送信する。
次に、 図面を用いて本発明の実施の形態における、 制御サーバ 5に格納さ れたコンテンツ有効期限情報管理の動作について述べる。 制御サーバ 5の動 作は L ANが異なっていても同様の動作をするので、 ここでは第 1 LAN 2 を用いて説明を進める。 図 2 1 は、 コンテンツ有効期限情報管理の動作を示 すフローチャートである。 図 2 1 を参照すると、 制御サーバ 5は、 その初期 状態においてコンテンツ有効期限情報管理の時刻を監視する。 コンテンツ有 効期限情報管理の動作は、 コンテンッ管理情報の更新時刻になることで開始 する。 制御サーバ 5は初期化終了後、 待機状態となる。 一定間隔でコンテン ッの有効期限を判定するために、 コンテンツ有効期限情報管理の処理を開始 する。
ステップ S 3 0 1 において、 制御サーバ 5は、 その記憶部から、 コンテン ッ有効期限情報を取得する。 制御サーバ 5の記憶部 5 2には、 制御サーバ 5 からの指示により配信サーバ 6が WWWサーバ 7からコンテンッを読込み処 理を行ったことに基づくコンテンツ有効期限情報が保存されている。
ステップ S 3 0 3において、取得したコンテンツの有効期限の判定を行う。 初期状態では、配信サーバ 6はコンテンッ配信の為の準備ができていない為、 コンテンツの有効期限情報は期限切れと判定される。 コンテンツの有効期限 が切れていた場合には S 3 0 5に進み、 配信コンテンッの更新処理を行う。 有効期限内ならば、 再び待機状態に戻る。
ステツプ S 3 0 5において、配信サーバ 6のコンテンッが期限切れなので、 配信サーバ 6に対して、 WWWサーバ 7からコンテンツの読み込みを行い最 新のコンテンツを配信できるように、 更新の指示を出す。 この指示により配 信サーバ 6は WWWサーバ 7からコンテンッのコピーを行う。
ステップ S 3 0 7において、 制御サーバ 5は配信サーバ 6のコンテンツ更 新が終了したら、 コンテンツの UR L構成 (ファイルリスト、 ディ レク トリ 情報等) を記憶部 5 2に保存するとともに、 コンテンツ有効期限情報を更新 する。 コンテンツ配信中にコンテンツを更新した場合、 配信サーバ 6は中継 クライアントに対してコンテンツの再送信処理を行う。
[本発明の第 2実施形態]
以上に述べた実施形態では、 L ANに接続された複数のクライアント装置 は、 その L ANに接続された中継サーバ装置を介して広域 I Pネッ トワーク に接続する。 つまり複数のクライアント装置は、 中継サーバ装置を介して配 信サーバからコンテンツのダウンロードを行なう。
先の実施形態で示した中継クライアントとクライアントが独立した装置で ある。 各々の装置で処理プログラムが動作する場合、 それぞれの処理部の間 は通常 L ANに接続されている。 そのためそれぞれの処理部は LANを介し て O S (Operating System: 基本ソフ トウェア) が提供するネッ トワークデ バイス (通常 LANに接続されている) を用いて通信が行なわれる。
中継クライアントおよびその中継クライアン トに接続されたクライアント は、 ハードウェア ( C P Uやメモリ、 記憶装置など) と処理を行なうプログ ラムにより構成されている。 本発明のコンテンツ配信システムは、 中継クラ イアン卜の処理プログラムとクライアントの処理プログラムを同一のハード ウェアで実行することも可能である。
同一のハードウェアで中継クライアントとクライアントのそれぞれの処理 プログラムが動作する場合、 それぞれの処理部の間は、 O Sが提供する仮想 L A Nデバイス (例 : U N I Xオペレーティ ングシステムで提供される トン ネルデバイス) を用いて通信が行なわれる。 クライアント処理プログラムが 複数ある場合、 中継クライアントプログラムとの間の仮想デバイスを追加す ることにより、 先の実施形態と同様の効果を得ることができる。 広域 I Pネ ッ 卜ワークとの通信は、 ハ一ドゥエアデバイスとそのデバイス ドライバを経 由して行なわれる。
[第 2実施形態の構成]
図 2 4は、 第 2の実施形態の構成を示すブロック図である。 図 2 4は本発 明の実施の形態におけるネッ トワークの構成を示すブロック図である。 図 2 4を参照すると、 本実施の形態におけるネッ トワークの構成は、 広域 I Pネ ッ トワーク 4と、 その広域 I Pネッ トワーク 4を介してコンテンツを配信す る配信元 1 と、 その配信されたコンテンツを受信する第 1から第 n ( nは 1 以上の自然数) の複数のクライアントとで構成される。 本第 2実施形態では、 主に広域 I Pネッ トワーク 4を介して配信元 1 に接続する第 1 クライアント 4 0 1 と、 広域 I Pネッ トワーク 4を介して配信元 1 に接続する第 2クライ アント 5 0 1 とで構成されたネッ トワークを用いて説明を行うが、 これは、 本発明のネッ トワークの構成を限定するものではない。 複数のクライアント はマルチユーザ ·マルチタスクを実行することが可能な情報処理装置である。
1台の装置に備えられた資源を複数のユーザで共有し、 複数の処理を見かけ 上または実質的に並列に処理する。
図 2 5は同一の装置で中継クライアントプログラムとクライアント処理プ ログラムを処理実行するクライアントの構成を示すブロック図である。 図 2 5は図 2 4に示す第 1 クライアント 4 0 1 を例に構成を示す。 図 2 5を参照 すると、 第 1 クライアン 卜 4 0 1 はユーザプログラムレイヤ 4 0 2 と O Sサ 一ビスレイヤ 4 0 3 とハードウェアレイヤ 4 0 4で構成される。 ユーザプロ グラムレイヤ 4 0 2は中継クライアント処理部 4 0 5 とクライアント処理部 4 0 6 を含み、 O Sサービスレイヤ 4 0 3は仮想 L ANインタ一フエ一ス 4 0 7 を含み、 ハードウェアレイヤ 4 0 4は外部通信インターフェイス 4 0 8 と記憶部 4 0 9 とュ一ザ一インターフェース 4 1 0 を含む。 中継クライアン ト処理部 4 0 5 と外部通信インターフェイス 4 0 8は装置内の情報通信線を 用いて接続され、 さらに中継クライアント処理部 4 0 5 と仮想 L ANインタ 一フェイス 4 0 7は装置内の情報通信線を用いて接続され、 記憶部 4 0 9 と 中継クライアント処理部 4 0 5は装置内の情報通信線を用いて接続され、 ク ライアント処理部 4 0 6 と仮想 L ANインターフェイス 4 0 7は装置内の情 報通信線を用いて接続される。
記憶部 4 0 9は、 格納する情報の書換えが可能な情報記憶装置である。 第 1クライアント 4 0 1 (中継クライアント +クライアント) に内蔵または外 部接続され、 配信サーバ 6または WWWサーバ 7から送信された C T— D A T A 2 1 を格納する。 記憶部 4 0 9は受信した C T— D AT A 2 1が、 新規 のコンテンツデ一夕であった場合、 配信サーバ 6または WWWサーバ 7から 送信された C T— I N F Oメッセ一ジ 1 8に含まれるコンテンツ構成情報と その C T— DATA 2 1 を対応させたコンテンツデータとしてクライアント に配信可能な状態で格納する。 その C T— D A T A 2 1が以前に格納された ことがあるコンテンツの最新データであった場合、 配信サ一バ 6または WW Wサーバ 7から送信された C T— I N F Oメッセージ 1 8に含まれるコンテ ンッ構成情報とその C T— D A T A 2 1 とに基づいて、 記憶部 4 0 9に格納 してあるコンテンツデータ 4 0 9 c dを更新する。
中継クライアント処理部 4 0 5は第 1 クライアント 4 0 1 に内蔵された情 報処理プログラムである。 第 1クライアント 4 0 1 は C P U (中央演算処理 装置) を備え、 クライアント処理部 4 0 6からのコンテンツ要求メッセージ 1 4に応答して記憶部 4 0 9に格納したコンテンツデータから特定のコンテ ンッを検索する検索処理や、 仮想 L ANに接続されたクライアントゃ広域 I Pネッ トワーク 4に接続されたサーバに送信するメッセージを作成する作成 処理などを行なう。 外部通信インターフェイス 4 0 8は広域 I Pネッ トワーク 4を介して行な われる情報の送信、 及び受信を行なう装置である。 図 2 4を参照すると中継 クライアント処理部 4 0 5に備えられた外部通信ィンタ一フェイス 4 0 8は、 広域 I Pネッ トワーク 4を介して配信サーバ 6または WWWサーバ 7から送 信された CT— DATA 2 1および RT— DATA 2 2を受信する。
仮想 L ANインターフェース 4 0 7は第 1クライアント 4 0 1内で行なわ れる情報の送信、 及び受信を行なう装置である。 図 2 5を参照すると中継ク ライアント処理部 4 0 5に備えられた仮想 LANインタ一フェース 4 0 7は その仮想 L ANを介して中継クライアント処理部 4 0 5に接続された複数の クライアント処理部 4 0 6の少なく とも一つから送信されるメッセージを受 信し、その受信したメッセージを中継クライアント処理部 4 0 5に通知する。 また中継クライアント処理部 4 0 5からの情報送信指示に応答して、 配信サ ーバ 6または WW Wサーバ 7から配信され受信の完了したコンテンツを、 そ のコンテンツの配信要求を行なったクライアント処理部 4 0 6に送信する。 クライアント処理部 4 0 6は第 1クライアント 4 0 1 に内蔵された情報処 理プログラムである。 第 1クライアント 4 0 1は C P U (中央演算処理装置) を備え、 中継クライアント処理部 4 0 5へのコンテンツ要求メッセージ 1 4 を送信し、 コンテンツデータの要求を行なうコンテンツ要求処理や、 仮想し ANに接続された中継クライアントや広域 I Pネッ トワーク 4に接続された サーバに送信するメッセージを作成する作成処理などを行なう。
以下に図面を用いてコンテンツ配信中にそのコンテンツの更新が行われた 場合について述べる。 図 2 7は、 C T— R E S E NDメッセ一ジ 2 5の概要 を示す図である。 配信サーバ 6は中継クライアントに対してコンテンツを配 信している途中で、 制御サーバ 5の指示により記憶部のコンテンツの更新が 行なわれた場合、 中継クライアントに対して C T— R E S E NDメッセージ 2 5の送信を行なう。
図 2 7を参照すると、 C T— R E S E NDメッセージ 2 5は送信先ァ ドレ スと送信元アドレスとメッセージ種別とメッセージデータとを含む。 C T— R E S E NDメッセージ 2 5 に含まれる送信先アドレスには、 C T R E S E N Dメッセージ 2 5を送信する送信先を識別するためのアドレス又は中継 クライアントに送信した C T_ I N F Oメッセージ 1 8により示されたダル —プアドレスが記載され、 本実施の形態では、 中継クライアントの I Pアド レスまたは C 1 a s s — Dの I Pアドレスが記載される。 送信元アドレスに は配信サーバ 6のアドレスが記載される。 メッセ一ジ種別には配信サーバ 6 から送信されているレスポンスであることを識別する L P L X Pレスポンス C T R E S E N Dが記載される。 メッセージデータには、 コンテンツ要求 元クライアントアドレスとコンテンツ配信情報が記載される。 コンテンツ配 信情報にはコンテンツ I D、 分割ブロック数、 マルチキャストグループアド レスの情報が記載される。 コンテンツ I Dには R C V_R E Qメッセージ 1 7に含まれる情報と同じ情報が記載される。
図 2 8は配信サーバ 6がコンテンッを配信中に記憶部のコンテンッが更新 された場合のシーケンスを示す図である。 図 2 8を参照すると、 中継クライ アントからの配信要求 R C V— R E Qメッセージ 1 7に応答して、 配信サ一 ノ 6がコンテンツデータ C T— D A T A 2 1 を送出しているときに、 制御サ ーバ 5からの指示により配信サーバ 6の記憶部に格納されているコンテンツ の更新が行なわれた場合、 配信サーバ 6はコンテンッ C T— D AT A 2 1の 送出を一時停止して、 更新されたコンテンツを記憶部に格納する。 記憶部の コンテンツが更新されたことに応答して、 各中継クライアントには C T— R E S E NDメッセ一ジ 2 5が送信される。
C T_R E S E N Dメッセ一ジ 2 5の送信に応答して、 各中継クライアン トは更新されたコンテンツを分割したブロックを含む C T— D A TA 2 1 の 受信を開始するため、 C T_R E S E NDメッセージ 2 5を受信する前に受 信を完了したコンテンツブロックを含む C T— D A T A 2 1を破棄する。 配 信サーバ 6は C T— R E S E NDメッセ一ジ 2 5の送信に続いて、 更新され たコンテンッが分割されたブ口ックが含まれる C T_D A T A 2 1の送信を 再開する。 C T— D A T A 2 1の送信の再開に応答して、 各中継クライアン トは C T— D AT A 2 1の受信を再開する。 コンテンツブロック C T_D A TA 2 1の受信または C T — D A T A 2 1受信後の R T D ATA 2 2の受 信により、 全てのコンテンツの受信が完了した中継クライアントはそのコン テンッを配信したサーバに R C V— F I Nメッセージ 2 0を送信する。
F 1 0 1のおいて第 1 L AN中継クライアント 8から送信された R C V— R E Qメッセージ 1 7 を受信した配信サーバ 6は、 その配信サーバ 6から送 信される C T— DATA 2 1の受信に必要な情報を有する C T— I N F Oメ ッセージ 1 8を第 1 LAN中継クライアント 8に送信する。 さらに、 配信サ ーバ 6は第 1 L AN中継クライアント 8にコンテンッデータのデータ本体と ヘッダとで構成された C T— DATA 2 1の送信を開始する。 第 1 L AN中 継クライアント 8は C T_ I N F Oメッセージ 1 8に含まれる情報により、 受信した CT— DATA 2 1がコンテンツ Aのデータであることを確認する。
F 1 0 5において、 第 2 L AN中継クライアントは、 配信サーバ 6が第 1 LAN中継クライアント 8にコンテンツ Aの C T_DATA 2 1 を送信して いるときに、 配信元の制御サーバ 5に U R L要求メッセージ 1 5を送信する。
F 1 0 6において、 配信元制御サーバ 5は要求された UR Lの有効性を判 定して UR L応答メッセージ 1 6を送信する。 このとき、 制御サ一バ 5から 配信サーバ 6に対して、 配信サーバ 6の記憶部に格納されているコンテンツ Aの更新指示が出たことに応答して、 C T_DATA 2 1の送信動作を一時 中断する。
F 1 0 7において、 第 2 LAN中継クライアント 9は、 制御サーバ 5から 送信された U R L応答メッセージ 1 6の U R L判定情報に基づいて、 実際に コンテンツを配信するサーバを確定し、 コンテンツ Aの R C V— R E Qメッ セージ 1 7を送信する。 図 2 8において第 2 L AN中継クライアント 9は実 際にコンテンツ Aを配信するサーバを配信サーバ 6 に確定し、 その配信サー ノ 6から配信されるコンテンツデ一タを受信するために、 コンテンツ Aの R C V— R E Qメッセ一ジ 1 7を配信サーバ 6へ送信し、 コンテンツ Aの最新 のコンテンツデータの配信を要求する。
F 1 0 8において、 第 2 L AN中継クライアント 9から送信された R C V — R E Qメッセージ 1 7を受信した配信サーバ 6は、 その配信サーバ 6から 送信される C T— D A T A 2 1の受信に必要な情報を有する C T I N F O メッセ一ジ 1 8を第 2 LAN中継クライアント 9に送信する。
F 1 0 9において、 配信サーバ 6は記憶部のコンテンッ Aが更新されたこ とに応答して、 C T— R E S E NDメッセージ 2 5を送信する。 図 2 8にお いては第 1 L A N中継クライアント 8に対して T C Pにてメッセージが送信 されているが、 中継クライアントが複数存在する場合はマルチキャス トを用 いてメッセージを送信することも可能である。 C T— R E S E NDメッセ一 ジ 2 5を受信した中継クライアントは、 C T— R E S ENDメッセージ 2 5 を受信する前までに受信したコンテンツ Aのブロックデータ C T— D ATA 2 1 を破棄して、 あらたに C T— DATA 2 1 の受信を開始する。 図 2 8で は、 第 1 LAN中継クライアント 8は F 1 0 3, F 1 0 4で受信した C T— D AT A 2 1を破棄する。
F 1 1 0〜F 1 1 3において、 各中継クライアントは更新されたコンテン ッ Aのプロックデータ CT— D AT A 2 1 を受信して記憶部に格納する。
F 1 1 4、 F 1 1 5 において、 各中継クライアントは更新されたコンテン ッ Aのブロックデータ C T— DAT A 2 1の受信を完了すると、 配信サーバ 6に対して受信完了を通知するために R CV—F I Nメッセ一ジ 2 0を送信 する。 配信サーバ 6は、 第 1 L AN中継クライアント 8から送信された R C V— F I Nメッセ一ジ 2 0を受信すると、 その R C V— F I Nメッセ一ジ 2 0に含まれるコンテンツ I Dを参照して、 そのコンテンツに対してコンテン ッデータの受信を継続している他の中継クライアントが存在するかどうかを 調査する。 図 2 8では、 他の中継クライアントが受信を継続していないため、 マルチキャス トによる C T— DATA 2 1の送信は終了する。 ここで各中継 クライアント 8の記憶部には、 先の配信で得られたコンテンッまたは配信元 1で更新され新たな配信で得られたコンテンツが格納されている。 そのコン テンッの配信を要求したクライアントに対してコンテンツ Bの配信を開始す る。 先の配信の際、 コンテンツ Aに付随してコンテンツ Bの配信を行なって おく ことにより、 新たな配信を行なわずに、 コンテンツの配信を要求したク ライアン卜に対してコンテンツ Bの配信を開始することが可能になる。
[第 2実施形態の動作] 以下に第 2実施形態の動作について述べる。 ユーザは広域 I Pネッ トヮー ク 4を介して WWWサーバ 7が公開した複数のコンテンツをユーザーインタ —フェース 4 1 0を介して閲覧し、 公開された複数のコンテンツの中から配 信を希望するコンテンツを選択する。 第 1 クライアント 4 0 1はその選択し たコンテンツ (以下、 コンテンツ Aと呼ぶ。) のコンテンツ要求メッセージ 1 4をクライアント処理部 4 0 6から仮想 L ANインターフェース 4 0 7を介 して中継クライアント処理部 4 0 5に対して送信する。
第 1クライアント 4 0 1は、 中継クライアント処理部 4 0 5がクライアン ト処理部 4 0 6から送信されたコンテンツ要求メッセージ 1 4を受信したこ とに対応して、 コンテンツ Aの配信を受けるために、 外部通信インタ一フエ —ス 4 0 8を介して広域 I Pネッ トワーク 4に接続された配信元 1 の制御サ —バ 5に対して UR L要求メッセージ 1 5を送信する。
第 1クライアント 4 0 1から送信された UR L要求メッセージ 1 5を受信 した配信元 1は第 1の実施形態に示す図 1 8の F 3に示す処理と同様の処理 を行い、 その処理に対応して適切な UR L応答メッセージ 1 6を第 1 クライ アント 4 0 1 に送信する。 第 1クライアント 4 0 1 は外部通信インターフエ —ス 4 0 8を介して受信した UR L応答メッセージ 1 6を中継クライアント 処理部 4 0 5に送信する。
中継クライアント処理部 4 0 5は、 UR L応答メッセ一ジ 1 6の UR L判 定情報に含まれる情報に基づいて記憶部 4 0 9に格納されたコンテンツが最 新のものであるとの判定結果を得た場合、 配信元 1へのコンテンツデ一夕の 配信要求を行わず、 記憶部 4 0 9 に格納されたコンテンッデ一夕を仮想 L A Nィンタ一フェース 4 0 7を介してクライアント処理部 4 0 6に送信する。
UR L応答メッセ一ジ 1 6を受信した第 1 クライアント 4 0 1 は、 UR L 応答メッセージ 1 6の U R L判定情報に記載された情報に基づいて、 実際に コンテンツを配信する配信サーバを確定し、 コンテンツ Aの R C V— R E Q メッセージ 1 7を送信する。 中継クライアント処理部 4 0 5は、 実際にコン テンッ Aを配信するサーバを配信サーバ 6に確定するための処理を行う。 第 1 クライアント 4 0 1 はその処理結果に対応して配信サーバ 6から配信され るコンテンツデータを受信する。 第 1 クライアント 4 0 1は中継クライアン ト処理部 4 0 5が出力するコンテンツ Aの R CV— R E Qメッセ一ジ 1 7を 配信サーバ 6へ送信し、 コンテンツ Aの最新のコンテンツデータの配信を要 求する。
第 1 クライアント 4 0 1から送信された R C V— R E Qメッセージ 1 7を 受信した配信サーバ 6は、 第 1実施形態と同様の処理を行い、 その処理に対 応して適切な C T— I N F Oメッセ一ジ 1 8 と C T— DATA 2 1の送信を 第 1クライアント 4 0 1 に対して開始する。
配信サーバ 6が第 1 クライアント 4 0 1 にコンテンツ Aの C T— DATA 2 1 を送信している時に、 第 2クライアント 5 0 1は、 コンテンツ Aの配信 を受けるために、 配信元 1の制御サーバ 5に対して UR L要求メッセージ 1 5を送信する。
第 2クライアント 5 0 1から送信された UR L要求メッセージ 1 5を受信 した配信元 1は第 1実施形態の図 1 8の F 8から F 1 0に示す処理と同様の 処理を行い、 その処理に対応して適切な C T— I N F Oメッセージ 1 8と C T— DATA 2 1 を第 2クライアント 5 0 1に送信する。
さらに、 第 1 クライアント 4 0 1 または第 2クライアント 5 0 1は、 C T — DAT A 2 1で送信されたブロックにおいて、 何らかの原因で受信が正常 に行われなかつたコンテンッデ一タブ口ックが確認された場合、 第 1実施形 態と同様にそのコンテンッデータプロックの再送信を配信サーバ 6に要求す る。 コンテンツデータブロックの再送信の要求は、 第 1実施形態と同様に R T— R E Qメッセ一ジ 1 9を配信サーバ 6に送信することで行われる。
このようなネッ トワークシステムを構成することで、 複数のクライアント マシンを所有しないユーザに対しても、 L ANに中継クライアントを設置し た場合と同様のコンテンッ配信サービスを提供することが可能になる。更に、 複数クライアントを所有するユーザに対しても、 新たなサーバマシンを設置 することなく、 現在所有の資源を有効に活用したシステムの提供が可能にな る。

Claims

請求の範囲
1 . ネッ トワークと、
前記ネッ トワークに接続され、 前記ネッ トワークを介して複数のコンテン ッを配信する配信サーバと、
前記ネッ トワークに接続され、 前記ネッ トワークを介して前記コンテンツ を受信する複数の中継クライアントと、
前記ネッ トワークに接続され、 前記ネッ トワークを介して前記複数の中継 クライアントの各々に接続される複数のクライアントとを含み、
前記配信サーバは、 複数のコンテンツを格納し、
前記中継クライアン トの少なく とも一つは、 前記複数のコンテンツの少な くとも一つのコンテンツの配信を要求するコンテンツ配信要求を送信し、 前記配信サーバは、 前記コンテンツ配信要求に応答して、 前記要求された コンテンツを複数のブロックに分割し、 前記ネッ トワークを介して前記中継 クライアントに送信し、
前記要求されたコンテンツの送信の途中に、 他の中継クライアントから要 求された前記コンテンツのコンテンツ配信要求に応答して、 前記中継クライ アン卜に未送信のブロックを、 前記中継クライアントと前記他の中継クライ アント送信し、
前記中継クライアントに送信済みのブロックを前記他の中継クライアン卜 に送信する
コンテンツ配信システム。
2 . 請求の範囲第 1項に記載のコンテンツ配信システムにおいて、
前記配信サーバは、
前記コンテンツを複数のブロックに分割し
前記複数のプロックを所定の順序で送信し、
前記送信の途中に、 前記他の中継クライアントから要求された前記コンテ ンッのコンテンツ配信要求に応答して、 前記他の中継クライアントに対する コンテンツの送信を、前記中継クライアントに未送信のブロックから開始し、 前記ブロックの送信を循環的に繰り返す
コンテンッ配信システム。
3 . 請求の範囲第 2項に記載のコンテンツ配信システムにおいて、
前記複数のクライアントの少なく とも一つは、 前記クライアントが接続す る中継クライアントにコンテンッ送信要求を送信し、
前記中継クライアントは、 前記コンテンツ送信要求に応答して、 コンテン ッ配信要求を前記配信サーバに送信する
コンテンツ配信システム。
4 . 請求の範囲第 3項に記載のコンテンッ配信システムにおいて、
前記複数の中継クライアントの各々は、 記憶部を含み、
前記記憶部は、 前記配信サーバから送信されたコンテンッを格納し、 前記複数の中継クライアントの各々は、 前記複数のクライアントの少なく とも一つから要求されたコンテンツ送信要求に応答して、 前記記憶部に格納 したコンテンツまたは、 前記配信サーバから送信されたコンテンツを前記ク ライアン卜に配信する
コンテンッ配信システム。
5 . 請求の範囲第 4項に記載のコンテンツ配信システムにおいて、
前記複数の中継クライアン卜の各々は、
前記複数のクライアントの少なく とも一つから送信されたコンテンツ送信 要求に応答して、 前記配信サーバに格納された前記コンテンツの更新日時を 検索し、
前記検索の結果、 前記記憶部に格納されたコンテンツの更新日時と、 前記 配信サーバに格納されたコンテンッの更新日時とを比較し、
前記比較の結果、 前記更新日時が異なる場合、 前記配信サーバに最新コン テンッ配信要求を送信し、
前記配信サーバは、 前記中継クライアントから送信された前記最新コンテ ンッ配信要求に応答して、 前記最新コンテンツを送信し、
前記中継クライアントは、 前記送信された最新コンテンツを受信し、 前記 受信に応答して前記中継クライアントの記憶部のコンテンツを前記最新コン テンッに更新し、
前記最新コンテンッを前記クライアントに配信する
コンテンツ配信システム。
6 . 請求の範囲第 5項に記載のコンテンツ配信システムにおいて、
前記複数の中継クライアントの各々は、
前記複数のクライアン卜の少なく とも一つから送信されたコンテンッ送信 要求に応答して、 前記配信サーバに格納された前記コンテンツの更新日時を を検索し、
前記検索の結果、 前記記憶部に格納されたコンテンツの更新日時と、 前記 配信サーバに格納されたコンテンッの更新日時とを比較し、
前記比較の結果、 前記更新日時が同一の場合、 前記複数の中継クライアン 卜の各々は、 前記記憶部に格納されたコンテンッを前記クライアントに送信 する
コンテンツ配信システム。
7 . 請求の範囲第 3項に記載のコンテンッ配信システムにおいて、
前記中間クライアントは、 前記コンテンツ配信要求に応答して前記配信サ ーバから送信された前記コンテンツの複数のブロックの、 少なく とも一つの プロックを受信しなかった場合、 前記未受信のプロックの再送信要求を前記 配信サーバに送信し、
前記配信サーバは、 前記再送信要求に応答して、 前記中継クライアントに 前記未受信のプロックを送信する
コンテンツ配信システム。
8 請求の範囲第 7項に記載のコンテンツ配信システムにおいて、 前記配信サーバは、 前記再送信要求された前記未受信のブロックの再送信 中に、 他の中継クライアントから、 前記コンテンツに対するコンテンツ配信 要求を受信した場合、 前記コンテンツ配信要求に応答して、 前記中継クライ アントに未送信のブロックを前記中継クライアントのア ドレスと前記他の中 継クライアントのアドレスに送信し、
前記中継クライアントに送信済みのブロックを前記他の中継クライアント に送信する
コンテンッ配信システム。 9 . 請求の範囲第 8項に記載のコンテンツ配信システムにおいて、
前記配信サーバは、 前記再送信要求された前記未受信のブロックを所定の 順序で送信し、
前記送信の途中に、 前記他の中継クライアントから要求された前記コンテ ンッのコンテンツ配信要求に応答して、 前記他の中継クライアントに対する コンテンツの送信を、前記中継クライアントに未送信のブロックから開始し、 前記送信を循環的に繰り返し、
前記再送信要求された前記未受信のプロックの送信完了後、 前記他の中継 クライアントに未送信のプロックを送信する
コンテンツ配信システム。
1 0 . 請求の範囲第 3項に記載のコンテンツ配信システムにおいて、 前記中継クライアントは、 前記複数のプロックに分割された前記コンテン ッの全てのブロックの受信を完了した場合、 前記配信サーバにコンテンツ受 信完了通知を送信し、
前記配信サーバは、 前記コンテンツ受信完了通知に応答して、 前記コンテ ンッの受信を継続中の他の中継クライアントが存在するかどうかを検索する コンテンツ配信システム。
1 1 . 請求の範囲第 1 0項に記載のコンテンツ配信システムにおいて、 前記配信サーバは、 前記検索の結果、 前記コンテンツの受信を継続中の他 の中継クライアントが存在する場合、 前記他の中継クライアントに対する前 記コンテンツの送信を循環的に繰り返し、
前記検索の結果、 前記コンテンツの受信を継続中の他の中継クライアント が存在しない場合、 前記コンテンツの送信を終了する
コンテンッ配信システム。
1 2 . 請求の範囲第 3項に記載のコンテンツ配信システムにおいて、 さらに制御サーバを含み、
前記複数の中継クライアントの少なく とも一つは、 前記制御サーバに配信 サーバァドレス通知要求を送信し、
前記制御サーバは、 前記送信された配信サーバァドレス通知要求に応答し て、 前記中継クライアントに、 前記コンテンツを配信する配信サーバのア ド レス ¾送信し、
前記中継クライアントは、 前記アドレスに前記コンテンツ配信要求を送信 する
コンテンッ配信システム。
1 3 . 請求の範囲第 1 2項に記載のコンテンツ配信システムにおいて、 前記制御サーバは、 前記送信された配信サーバア ドレス通知要求に応答し て、 前記配信サーバに格納された前記コンテンツの更新日時を通知し、 前記中継クライアントは、 前記通知に基づいて前記記憶部に格納されたコ ンテンッの更新日時と、 前記配信サーバに格納されたコンテンツの更新日時 とを比較する
コンテンツ配信システム。
1 4 . 請求の範囲第 1 3項に記載のコンテンツ配信システムにおいて、 前記複数の中継クライアントの各々は、 前記比較の結果、 前記更新日時が 異なる場合、 前記配信サーバに最新コンテンツ配信要求を送信し、 前記配信サーバは、 前記中継クライアントから送信された前記最新コンテ ンッ配信要求に応答して、 前記最新コンテンツを送信し、
前記中継クライアントは、 前記送信された最新コンテンツを受信し、 前記 受信に応答して前記中継クライアントの記憶部のコンテンツを前記最新コン テンッに更新し、
前記最新コンテンツを前記クライアン卜に配信し、
前記比較の結果、 前記更新日時が同一の場合、 前記複数の中継クライアン トの各々は、 前記記憶部に格納されたコンテンッを前記クライアントに送信 する
コンテンツ配信システム。
1 5 . 請求の範囲第 1 4項に記載のコンテンツ配信システムにおいて、 さらに WWWサーバを含み、
前記複数の中継クライアン卜の少なくとも一つは、 前記制御サーバに配信 サーバアドレス通知要求を送信し、
前記制御サーバは、 前記送信された配信サーバアドレス通知要求に応答し て、 前記中継クライアントに、 前記配信サーバのアドレスまたは前記 W W W サーバのア ドレスを送信する
コンテンツ配信システム。
1 6 . 請求の範囲第 1 5項に記載のコンテンツ配信システムにおいて、 前記制御サーバは、 前記送信された配信サーバァドレス通知要求に応答し て、 前記配信サーバに、 コンテンツの配信が可能であるかを問い合わせ、 前記配信サーバからコンテンツの配信が可能な場合、 前記配信サーバのァ ドレスを前記中継クライアントに送信し、
前記配信サーバからコンテンッ配信が不可能な場合、 前記 W W Wサーバの アドレスを前記中継クライアン 1、に送信する
コンテンッ配信システム。
1 7 . 請求の範囲第 1 2項から第 1 6項の何れか 1項に記載のコンテンツ 配信システムにおいて、
前記制御サーバは、 前記送信された配信サーバア ドレス通知要求【こ応答し て、 前記配信サーバに、 コンテンツの配信が可能であるかを問い合わせ、 前 記配信サーバからコンテンツの配信が可能な場合、 前記配信サーバ (^アドレ スを前記中継クライアントに送信し、 前記配信サーバからコンテンヅ配信が 不可能な場合、 前記 W WWサーバからコンテンッの配信が可能かを い合わ せ、 前記 WWWサーバからコンテンツの配信が可能な場合、 前記 W ^ Wサー バのァドレスを前記中継クライアントに送信し、 前記配信サーバま こは W W wサーバからコンテンツの配信が不可能な場合、 前記中継クライアン トにェ ラ一応答を送信する。
コンテンッ配信システム。
1 8 . 請求の範囲第 1 2項から第 1 7項の何れか 1項に記載のコンテンツ 配信システムにおいて、
前記配信サーバは前記制御サーバからの指示により、 前記 WWWサーバか らコンテンツの更新 (同期) を行なう際に、 前記更新前のコンテンツ を中継 クライアントに配信していた場合、 前記配信を受けていた中継クライ アント に対して配信を一時中断し、 前記コンテンツの更新 (同期) が終了し たら、 各中継クライアントに C T— R E S E N Dメッセ一ジを送信し、 各中 継クラ イアントは、 C T—R E S E N Dメッセージに応答して、 前記更新前のコン テンッを破棄して新たに前記更新後のコンテンツの受信を開始する。
コンテンツ配信システム。 1 9 . 請求の範囲第 1項から第 1 8項の何れか 1項に記載のコンテ ンツ配 信システムにおいて、
前記中継クライアントと前記クライアントが 1の装置に備えられ、 前記中 継クライアントと前記クライアントの各々が前記装置の資源を共有する コンテンッ配信システム。
2 0 . ネッ トワークと、
前記ネッ トヮ一クに接続され、 前記ネッ トワークを介して複数のコンテン ッを配信する配信サーバと、
前記ネッ トワークに接続され、 前記ネッ トワークを介して前記コンテンツ を受信する複数の中継クライアントと、
前記ネッ トワークに接続され、 前記ネッ トワークを介して前記複数の中継 クライアントの各々に接続される複数のクライアントと、
を含むコンテンツ配信システムを動作するプログラムであって、
複数のコンテンツを格納するステップと、
前記複数のコンテンツの少なく とも一つのコンテンツの配信を要求するコ ンテンッ配信要求を送信するステツプと、
前記コンテンツ配信要求に応答して、 前記要求されたコンテンツを複数の ブロックに分割するステップと、
前記複数のブロックを送信するステップと、
前記中継クライアントに、 前記要求されたコンテンツの送信の途中に、 他 の中継クライアントから要求された前記コンテンツのコンテンツ配信要求に 応答して、 前記中継クライアントに未送信のブロックを、 前記中継クライァ ントと前記他の中継クライアント送信するステップと、
前記中継クライアントに送信済みのプロックを前記他の中継クライアント に送信するステツプと
を具備する方法をコンピュー夕で実行可能なプログラム。
2 1 . 請求の範囲第 2 0項に記載のプログラムにおいて、
前記コンテンッを複数のプロックに分割するステップと
前記複数のプロックを所定の順序で送信するステツプと、
前記送信の途中に、 前記他の中継クライアントから要求された前記コンテ ンッのコンテンツ配信要求に応答して、 前記他の中継クライアントに対する コンテンツの送信を、 前記中継クライアントに未送信のブロックから開始す るステップと、
前記複数のブロックの送信を循環的に繰り返すステップと
を具備する方法をコンピュータで実行可能なプログラム。 2 2 . 請求の範囲第 2 1項に記載のプログラムにおいて、
コンテンッ送信要求を送信するステツプと、
前記中継クライアントは、 前記コンテンツ送信要求に応答して、 コンテ ン ッ配信要求を送信するステツプと、
を具備する方法をコンピュータで実行可能なプログラム。
2 3 . 請求の範囲第 2 2項に記載のプログラムにおいて、
前記複数の中継クライアントの各々は、 記憶部を含み、
前記記憶部は、 前記配信サーバから送信されたコンテンッを格納するステ ップと、
前記コンテンツ送信要求に応答して、 前記記憶部に格納したコンテンツま たは、 前記配信サーバから送信されたコンテンッを前記クライアントに配ィ言 するステップと、
を具備する方法をコンピュー夕で実行可能なプログラム。 2 4 . 請求の範囲第 2 3項に記載のプログラムにおいて、
前記コンテンツ送信要求に応答して、 前記コンテンツの更新日時を検索す るステップと、
前記検索の結果、 前記記憶部に格納されたコンテンツの更新日時と、 前言己 配信サーバに格納されたコンテンツの更新日時とを比較するステップと、 前記比較の結果、 前記更新日時が異なる場合、 最新コンテンツ配信要求を 送信するステツプと、
前記最新コンテンツ配信要求に応答して、 前記最新コンテンツを送信する ステップと、
前記送信された最新コンテンツを受信し、 前記受信に応答して前記記憶 のコンテンッを前記最新コンテンッに更新するステツプと、
前記最新コンテンッを前記クライアン卜に配信するステップと、
を具備する方法をコンピュータで実行可能なプログラム。 2 5 . 請求の範囲第 2 4項に記載のプログラムにおいて、
前記コンテンツ送信要求に応答して、 前記コンテンツの更新日時を検索す るステップと、
前記検索の結果、 前記記憶部に格納されたコンテンツの更新日時と、 前記 配信サーバに格納されたコンテンツの更新日時とを比較するステップと、 前記比較の結果、 前記更新日時が同一の場合、 前記複数の中継クライアン 卜の各々は、 前記記憶部に格納されたコンテンツを前記クライアントに送信 するステップと
を具備する方法をコンピュー夕で実行可能なプログラム。 2 6 . 請求の範囲第 2 2項に記載のプログラムにおいて、
前記コンテンツ配信要求に応答して前記配信サーバから送信された前記コ ンテンッの複数のブロックの、 少なく とも一つのブロックを受信しなかった 場合、 前記未受信のプロックの再送信要求を前記配信サーバに送信するステ ップと、
前記配信サーバは、 前記再送信要求に応答して、 前記中継クライアントに 前記未受信のプロックを送信するステツプと
を具備する方法をコンピュー夕で実行可能なプログラム。
2 7 . 請求の範囲第 2 6項に記載のプログラムにおいて、
前記再送信要求された前記未受信のブロックの再送信中に、 他の中継クラ イアン卜から、前記コンテンツに対するコンテンツ配信要求を受信した場合、 前記コンテンツ配信要求に応答して、 前記中継クライアントに未送信のプロ ックを前記中継クライアントと前記他の中継クライアントに送信するステツ プと、 前記中継クライアントに送信済みのブロックを前記他の中継クライアント に送信するステツプと、
を具備する方法をコンビュ一夕で実行可能なプログラム。 2 8 . 請求の範囲第 2 6項に記載のプログラムにおいて、
前記再送信要求された前記未受信のブロックを所定の順序で送信するステ ップと、
前記送信の途中に、 前記他の中継クライアントから要求された前記コンテ ンッのコンテンツ配信要求に応答して、 前記他の中継クライアントに対する コンテンツの送信を、 前記中継クライアントに未送信のブロックから開始す るステップと、
前記再送信要求された前記未受信のプロックの送信完了後、 前記他の中継 クライアントに未送信のブロックを送信するステップと、
前記送信を循環的に繰り返すステツプと、
を具備する方法をコンピュー夕で実行可能なプログラム。
2 9 . 請求の範囲第 2 2項に記載のプログラムにおいて、
前記複数のブロックに分割された前記コンテンツの全てのブロックの受信 を完了した場合、 コンテンツ受信完了通知を送信するステップと、
前記コンテンツ受信完了通知に応答して、 前記コンテンツの受信を魅続中 の他の中継クライアン卜が存在するかどうかを検索するステツプと、
を具備する方法をコンピュータで実行可能なプログラム。
3 0 . 請求の範囲第 2 9項に記載のプログラムにおいて、
前記検索の結果、 前記コンテンツの受信を継続中の他の中継クライ: Γント が存在する塲合、 前記他の中継クライアン卜に対する前記コンテンッ O送信 を循環的に繰り返すステツプと、
前記検索の結果、 前記コンテンツの受信を継続中の他の中継クライ: rン ト が存在しない場合、 前記コンテンツの送信を終了するステップと を具備する方法をコンピュータで実行可能なプログラム。
3 1 . 請求の範囲第 2 2項に記載のプログラムにおいて、
さらに制御サーバを含み、
前記制御サーバに配信サーバァドレス通知要求を送信するステツプと、 前記制御サーバは、 前記送信された配信サーバァドレス通知要求に応答し て、 前記コンテンツを配信する配信サーバのアドレスを送信するステップと、 前記ァドレスに前記コンテンッ配信要求を送信するステツプと
を具備する方法をコンピュータで実行可能なプログラム。
3 2 . 請求の範囲第 3 1項に記載のプログラムにおいて、
前記配信サーバァドレス通知要求に応答して、 前記配信サーバに格納され た前記コンテンッの更新日時を通知するステツプと、
前記通知に基づいて前記記憶部に格納されたコンテンッの更新日時と、 前 記配信サーバに格納されたコンテンッの更新日時とを比較するステツプと を具備する方法をコンピュータで実行可能なプログラム。
3 3 . 請求の範囲第 3 2項に記載のプログラムにおいて、
前記比較の結果、 前記更新日時が異なる場合、 前記配信サーバに最新コン テンッ配信要求を送信するステップと、
前記中維クライアントから送信された前記最新コンテンツ配信要求に応答 して、 前記最新コンテンツを送信するステップと、
前記送信された最新コンテンツを受信するステップと、
前記受信に応答して前記中継クライアン卜の記憶部のコンテンッを前記最 新コンテンツに更新するステップと、
前記最新コンテンツを前記クライアン卜に配信するステップと、
前記比較の結果、 前記更新日時が同一の場合、 前記記憶部に格納されたコ ンテンッを前記クライアントに送信するステップと
を具備する方法をコンピュータで実行可能なプログラム。
3 4 . 請求の範囲第 3 3項に記載のプログラムにおいて、
さらに WWWサーバを含み、
前記に配信サーバァドレス通知要求を送信するステツプと、
前記送信された配信サーバアドレス通知要求に応答して、 前記配信サーバ のアドレスまたは前記 WWWサーバのァドレスを送信するステップと
を具備する方法をコンピュー夕で実行可能なプログラム。
3 5 . 請求の範囲第 3 4項に記載のプログラムにおいて、
前記送信された配信サーバアドレス通知要求に応答して、 前記配信サーバ に、 コンテンッの配信が可能であるかを問い合わせるステツプと、
前記配信サーバからコンテンッの配信が可能な場合、 前記配信サー / のァ ドレスを前記中継クライアントに送信するステップと、
前記配信サーバからコンテンッ配信が不可能な場合、 前記 W W Wサーバの アドレスを前記中継クライアン卜に送信するステップと、
を具備する方法をコンピュータで実行可能なプログラム。
3 6 . 請求の範囲第 3 1項から第 3 5項の何れか 1項に記載のプログラム において、
前記送信された配信サーバアドレス通知要求に応答して、 前記配信サーバ に、 コンテンツの配信が可能であるかを問い合わせるステップと、
前記配信サーバからコンテンツの配信が可能な場合、 前記配信サ一 / のァ ドレスを前記中継クライアントに送信するステップと、
前記配信サーバからコンテンツ配信が不可能な場合、 前記 WW Wサーバか らコンテンツの配信が可能かを問い合せるステップと、
前記 W WWサーバからコンテンッの配信が可能な場合、 前記 w wwサーバ のアドレスを前記中継クライアントに送信するステップと、
前記配信サーバまたは ww wサーバからコンテンッの配信が不可能な場合、 前記中継クライアントにエラー応答を送信するステツプ
を具備する方法をコンピュ一夕で実行可能なプログラム。
3 7 . 請求の範囲第 3 1項から第 3 6項の何れか 1項に記載のプログラム において、
コンテンツの更新 (同期) を行なう際に、 前記更新前のコンテンツを中継 クライアントに配信していた場合、 前記配信を受けていた中継クライアント に対して配信を一時中断するステップと、
前記コンテンツの更新 (同期) が終了したら、 各中継クライアントに C T — R E S E N Dメッセージを送信するステップと、
各中継クライアントは、 C T _ R E S E N Dメッセージに 答して、 前記 更新前のコンテンッを破棄して新たに前記更新後のコンテンジの受信を開始 するステッフ
を具備する方法をコンピュータで実行可能なプログラム。
3 8 . 請求の範囲第 2 0項から第 3 7項の何れか 1項に記載のプログラムに おいて、
前記中継クライアントと前記クライアントが 1に備えられるステップと、 前記中継クライアントと前記クライアントの各々が資源を共有するステツ プと
を具備する方法をコンピュー夕で実行可能なプログラム。
PCT/JP2003/011133 2003-09-01 2003-09-01 コンテンツ配信システム及びコンテンツ配信方法 WO2005025150A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU2003261862A AU2003261862A1 (en) 2003-09-01 2003-09-01 Content distribution system and content distribution method
PCT/JP2003/011133 WO2005025150A1 (ja) 2003-09-01 2003-09-01 コンテンツ配信システム及びコンテンツ配信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2003/011133 WO2005025150A1 (ja) 2003-09-01 2003-09-01 コンテンツ配信システム及びコンテンツ配信方法

Publications (1)

Publication Number Publication Date
WO2005025150A1 true WO2005025150A1 (ja) 2005-03-17

Family

ID=34260104

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/011133 WO2005025150A1 (ja) 2003-09-01 2003-09-01 コンテンツ配信システム及びコンテンツ配信方法

Country Status (2)

Country Link
AU (1) AU2003261862A1 (ja)
WO (1) WO2005025150A1 (ja)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000181843A (ja) * 1998-12-18 2000-06-30 Toshiba Corp 情報中継装置及び記憶媒体
JP2001043124A (ja) * 1999-07-30 2001-02-16 Hitachi Tohoku Software Ltd 情報キャッシュサーバ、情報キャッシュシステム、情報取得方法および情報取得のための記録媒体
JP2001237899A (ja) * 2000-02-25 2001-08-31 Nippon Telegr & Teleph Corp <Ntt> データ通信制御方法
JP2002118552A (ja) * 2000-10-05 2002-04-19 Nippon Telegr & Teleph Corp <Ntt> ストリーム中継装置およびストリーム放送配信ネットワークおよび記録媒体
JP2002305548A (ja) * 2001-04-06 2002-10-18 Sony Corp 通信方法およびそのシステム、送信装置および受信装置
JP2002353964A (ja) * 2001-05-30 2002-12-06 Sony Corp コンテンツ提供装置及びコンテンツ提供方法
JP2003078900A (ja) * 2001-08-31 2003-03-14 Matsushita Electric Ind Co Ltd オンデマンドコンテンツ配信システム
JP2003087766A (ja) * 2001-09-12 2003-03-20 Pioneer Electronic Corp 加入者端末への視聴情報提供装置
JP2003224601A (ja) * 2002-01-30 2003-08-08 Pfu Ltd 同報通信装置、方法、システム及びそのプログラム、プログラム記録媒体

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000181843A (ja) * 1998-12-18 2000-06-30 Toshiba Corp 情報中継装置及び記憶媒体
JP2001043124A (ja) * 1999-07-30 2001-02-16 Hitachi Tohoku Software Ltd 情報キャッシュサーバ、情報キャッシュシステム、情報取得方法および情報取得のための記録媒体
JP2001237899A (ja) * 2000-02-25 2001-08-31 Nippon Telegr & Teleph Corp <Ntt> データ通信制御方法
JP2002118552A (ja) * 2000-10-05 2002-04-19 Nippon Telegr & Teleph Corp <Ntt> ストリーム中継装置およびストリーム放送配信ネットワークおよび記録媒体
JP2002305548A (ja) * 2001-04-06 2002-10-18 Sony Corp 通信方法およびそのシステム、送信装置および受信装置
JP2002353964A (ja) * 2001-05-30 2002-12-06 Sony Corp コンテンツ提供装置及びコンテンツ提供方法
JP2003078900A (ja) * 2001-08-31 2003-03-14 Matsushita Electric Ind Co Ltd オンデマンドコンテンツ配信システム
JP2003087766A (ja) * 2001-09-12 2003-03-20 Pioneer Electronic Corp 加入者端末への視聴情報提供装置
JP2003224601A (ja) * 2002-01-30 2003-08-08 Pfu Ltd 同報通信装置、方法、システム及びそのプログラム、プログラム記録媒体

Also Published As

Publication number Publication date
AU2003261862A1 (en) 2005-03-29

Similar Documents

Publication Publication Date Title
US7346682B2 (en) System for creating and distributing prioritized list of computer nodes selected as participants in a distribution job
US7451221B2 (en) Method and apparatus for election of group leaders in a distributed network
US6718361B1 (en) Method and apparatus for reliable and scalable distribution of data files in distributed networks
US7620816B1 (en) System and method for automatic selection of service provider for efficient use of bandwidth and resources in a peer-to-peer network environment
CA2590955C (en) System and method for scalable data distribution
EP2399369B1 (en) Distributed data center access switch
US20050055402A1 (en) File sharing device and inter-file sharing device data migration method
JP4741022B2 (ja) マルチキャスト配信システム及び方法
JP2018523932A (ja) 負荷バランシングコンピュータデバイス、システム、および方法
JPH11154978A (ja) ネットワークシステム及びdhcpサーバ選択方法
KR20090069312A (ko) 리소스 공급을 위한 방법, 시스템, 및 에지 서버
JP2004070860A (ja) ストリームコンテンツ配送システムおよびプロキシサーバ
JP2003016036A (ja) ピア・ツー・ピアネットワーク環境中のピアの信頼性ステータスを検証するシステムおよび方法
CN111787079B (zh) 基于通信群组的通信方法、装置、服务器、系统及介质
JP2020532251A (ja) メッシュポートを有するメッシュ通信ネットワーク
WO2018045992A1 (zh) 地址管理方法及装置
EP2939401A1 (en) Method for guaranteeing service continuity in a telecommunication network and system thereof
JP2004220151A (ja) 新旧モジュールの切り替え機能を有するサーバ装置
WO2015027513A1 (zh) 交付点跨域迁移系统
WO2002037784A2 (en) Parallel network data transmission of segments of data stream
EP1305924B1 (en) Method and apparatus for reliable and scalable distribution of data files in distributed networks
WO2023184925A1 (zh) 负载均衡器及其实现方法、负载均衡的方法、网关系统
JP3960211B2 (ja) データ配信方法及び装置
WO2005025150A1 (ja) コンテンツ配信システム及びコンテンツ配信方法
CN112217735A (zh) 信息同步方法与负载均衡系统

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP