WO2014045610A1 - ルール設定方法、及び中継システム - Google Patents

ルール設定方法、及び中継システム Download PDF

Info

Publication number
WO2014045610A1
WO2014045610A1 PCT/JP2013/055401 JP2013055401W WO2014045610A1 WO 2014045610 A1 WO2014045610 A1 WO 2014045610A1 JP 2013055401 W JP2013055401 W JP 2013055401W WO 2014045610 A1 WO2014045610 A1 WO 2014045610A1
Authority
WO
WIPO (PCT)
Prior art keywords
computer
cache
module
resolve
cache server
Prior art date
Application number
PCT/JP2013/055401
Other languages
English (en)
French (fr)
Inventor
元輝 松井
伊藤 大輔
敏明 鈴木
Original Assignee
株式会社日立製作所
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 株式会社日立製作所 filed Critical 株式会社日立製作所
Publication of WO2014045610A1 publication Critical patent/WO2014045610A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Definitions

  • the present invention relates to a relay system including a cache computer that holds a copy of content provided by a content computer and a relay device, and more particularly to a relay system in which the relay device transfers data from an end user to a nearby cache computer. .
  • a cache system In order to reduce the amount of traffic, a cache system is known in which a cache server is arranged in the vicinity of an end user, the cache server accepts an end user request, and returns data corresponding to the request.
  • a traffic transfer technique for transferring end user traffic to a cache server in the vicinity of the end user is used.
  • a cache system using a traffic transfer technique in which a DNS server transfers end user traffic to a cache server is known (for example, see Patent Document 1).
  • a cache system using a traffic transfer technology that transfers traffic from an end user to a cache server using a function of routing to a transfer destination designated based on a destination port number of traffic is known (for example, Patent Document 2).
  • a cache server is allocated for each DNS server used by an end user in order to allocate a cache server near the end user.
  • DNS server there are only a few DNS servers in a network of a single carrier network. For this reason, when a conventional cache system using a DNS server is applied to a network of a single carrier network, the number of end users assigned per DNS server is large, and the granularity of assigning a cache server becomes rough. There's a problem.
  • a cache system that uses a function of routing to a transfer destination designated based on a destination port number of a conventional traffic (hereinafter, this function is called a Policy Based Routing function, abbreviated as a PBR function) is one communication business.
  • a PBR router having thousands of PBR functions in the private network
  • the conditions of the traffic to be transferred and the forwarding destination of the traffic that meets the conditions (hereinafter, a summary of these is called a rule. )
  • the transfer destination described in the rule is a cache server in the vicinity of each PBR router, it differs for each PBR router. That is, it is necessary to search for a neighboring cache server of each PBR router.
  • there is a third problem that there are thousands of PBR routers in one carrier network, and it takes a very long time to search for a nearby cache server.
  • the rules to be set differ for each PBR router, there is a fourth problem that it takes a very long time to manually create and set the rules for several thousand PBR routers.
  • the object of the present invention is to assume the scale of one carrier network, to finely allocate the cache server to the end user, and to cooperate with the content provider, and to create and set the rules of the PBR router. It is to provide an automated relay system.
  • a typical example of the present invention is as follows. That is, a rule setting method for a relay device for transferring data, wherein the relay device is provided in a relay system and transfers data transmitted from a user device based on a set rule
  • the relay system includes a cache computer that holds a copy of the content provided by the content computer, and a rule setting module that can set a rule for the relay device.
  • the rule setting method includes the rule setting module. Measuring the network distance between the cache computer and each relay device, the rule setting module specifies, for each relay device, the nearest cache computer having the closest network distance, and the rule setting module Data transmitted from a user device is converted into the nearest cache computer. The rules for transferring and setting to the relay device.
  • a rule set in the PBR router is automatically created, and the PBR router A relay system in which rules are automatically set will be described.
  • a Resolve Agent that measures the network distance between the cache server (cache computer) and the PBR router is installed in the cache server.
  • Embodiment 1 of the present invention will be described with reference to FIGS.
  • FIG. 1 is an explanatory diagram of a relay system according to a first embodiment of the present invention.
  • the relay system includes a Web server (web computer) 1011, Resolve Manager 1021, cache servers A 1031 and B 1033, routers A 1041 to D 1044, PBR routers A 1051 to C 1053, and PCs A 1061 to D 1064. Also, Resolve Agent A 1032 is mounted on the cache server A 1031, and Resolve Agent B 1034 is mounted on the cache server B 1033.
  • the cache servers A1031 and B1033 are collectively referred to as a cache server, the routers A1041 to D1044 are collectively referred to as a router, the PBR routers A1051 to C1053 are collectively referred to as a PBR router, and the PCs A1061 to D1064 are collectively referred to. It is called PC and Resolve Agent A1032 and B1034 are generically called Resolve Agent.
  • the Web server 1011 is a server device that holds Web content provided to a PC used by an end user and distributes the held Web content to the PC.
  • the Resolve Manager 1021 is a main component of the cache realized by the relay system of the present invention, manages the Resolve Agent, and receives a cache server addition request, a cache server deletion request, and the like.
  • the cache server is a server device that holds a copy of the Web content of the Web server 1011 and returns the Web content to the PC in response to a request from the PC transferred by the PBR router.
  • a module having a Resolve Agent function operates on the cache server.
  • Resolve Agent is the main component of the cache system realized by the relay system of the present invention, operates in cooperation with Resolve Manager 1021, and measures the network distance between the cache server on which it is mounted and the PBR router.
  • the Web server 1011 and the cache server are connected by a network.
  • the network is a network provided by one communication carrier, and includes a router and a PBR router.
  • the PBR router is a router device that forwards traffic based on a rule including a forwarding condition and a forwarding destination. Further, the network may be configured by a relay device that conforms to a router or a PBR router.
  • Resolve Agent uses RTT (Round Trip Time, round trip delay time) to measure the network distance between the cache server and the PBR router.
  • the RTT can be measured by using ICMP (Internet Control Message Protocol) in the Internet protocol. Other protocols for measuring RTT can also be used.
  • the network distance is not limited to the RTT, but may be a physical distance between the cache server and the PBR router, may be the number of hops, or may be an RTT on the way.
  • Resolve Agent A 1032 mounted on newly added cache server A 1031 transmits a cache server addition request to Resolve Manager 1021.
  • the Resolve Manager 1021 instructs the Resolve Agent A 1032 to measure the network distance between the PBR routers A 1051 to C 1053.
  • Resolve Agent A 1032 measures the network distance between each PBR router A 1051 to C 1053. Then, Resolve Agent A 1032 transmits the measurement result of the network distance to Resolve Manager 1021.
  • the Resolve Manager 1021 sends the data from the PCs A1061 to 1064 to the nearest neighbor based on the measurement result to the PBR router in which the added cache server becomes the nearest neighbor cache server.
  • a rule to be transferred to the cache server is generated, and the rule is set in the PBR router.
  • the PBR router C 1053 transfers data from the PC D 1064 to the nearest cache server B 1033.
  • FIG. 2 is a hardware configuration diagram of Resolve Manager 1021 according to the first embodiment of the present invention.
  • the Resolve Manager 1021 includes a CPU 2011, a main storage device 2012, and a secondary storage device 2013.
  • the main storage device 2012 stores a Resolve Manager module 2021, a neighborhood cache table 2022, and a cache server list table 2023.
  • the secondary storage device 2013 stores a Resolve Manager module program 2031.
  • the Resolve Manager module program 2031 is a program for controlling the Resolve Manager 1021.
  • the Resolve Manager module 2021 stored in the main storage device 2012 indicates a state in which the Resolve Manager module program 2031 stored in the secondary storage device 2013 is loaded into the main storage device 2012.
  • the CPU 2011 executes the Resolve Manager module 2021 loaded in the main storage device 2012.
  • the neighborhood cache table 2022 is a table for managing the nearest cache server that is the cache server having the closest network distance to each PBR router, and details will be described with reference to FIG.
  • the cache server list 2023 is a table for managing available cache servers on the network, and details will be described with reference to FIG.
  • the neighborhood cache table 2022 is a table for managing the nearest neighborhood cache server of each PBR router constituting the network as described above.
  • the neighborhood cache table 2022 includes a PBR router IP 2041, a nearest neighborhood cache IP 2042, and a distance 2043.
  • the IP address of the PBR router is registered as identification information of the PBR router constituting the network.
  • the IP address of the PBR router is unique to the PBR router device.
  • the IP address of the nearest cache server is registered.
  • the distance 2043 a network distance between the PBR router and the nearest cache server is registered.
  • the primary key of the neighborhood cache table 2022 is the IP address of the PBR router registered in the PBR router IP 2041, and a predetermined one line in the neighborhood cache table 2022 can be specified by the IP address.
  • FIG. 4 is an explanatory diagram of the cache server list 2023 according to the first embodiment of this invention.
  • the cache server list 2023 includes an ID 2051 and a cache server IP 2052.
  • a serial number is registered in the ID 2051.
  • the IP address of the cache server is registered as identification information of the cache server that can be used on the network. Note that the IP address of the cache server is unique to the cache server device.
  • the primary key of the cache server list 2023 is ID 2051, and a predetermined line of the cache server list 2023 can be specified by the serial number registered in the ID 2051. Further, the IP address of the cache server registered in the cache server IP 2052 can also be the primary key of the cache server list 2023.
  • FIG. 5 is a hardware configuration diagram of the cache server 1031 according to the first embodiment of this invention.
  • the Resolve Agent module 2071 and the cache management module 2072 stored in the main storage device 2062 indicate a state in which the Resolve Agent module program 2081 and the cache management module program 2082 stored in the secondary storage device 2063 are loaded.
  • the CPU 2061 executes the Resolve Agent module 2071 and the cache management module 2072 stored in the main storage device 2062.
  • cache management module program 2082 of this embodiment may be a general-purpose one.
  • FIG. 6 is a sequence diagram of cache server addition processing according to the first embodiment of this invention.
  • a cache server C5020 equipped with Resolve Agent C5021 is added to the network.
  • This cache server addition process is executed between Resolve Manager 1021 and Resolve Agent C5021 of added cache server C5020.
  • the Resolve Agent 5021 mounted on the cache server 5020 newly added to the network transmits a cache server addition request to the Resolve Manager 1021 (5001).
  • the cache server addition request includes the IP address of the newly added cache server 5020.
  • the Resolve Manager 1021 When receiving the cache server addition request, the Resolve Manager 1021 adds the IP address of the cache server 5020 included in the received cache server addition request to the cache server list 2023 (5002).
  • the Resolve Manager 1021 acquires the IP addresses of all the PBR routers registered in the PBR router IP 2041 in the neighborhood cache table 2022 and generates a list of IP addresses of the acquired PBR routers. Then, Resolve Manager 1021 sets PBR router A (for example, PBR router A 1051) identified by the IP address in the first line of the generated list as PBR router A (5003), and measures network distance from PBR router A to Resolve Agent C5021. An instruction is transmitted (5004).
  • PBR router A for example, PBR router A 1051
  • Resolve Agent C5021 When Resolve Agent C5021 receives the network distance measurement instruction with PBR router A, it measures the network distance between cache server C5020 on which it is mounted and PBR router A (PBR router A1051).
  • Resolve Agent C 5021 transmits the measurement result of the network distance to PBR router A to Resolve Manager 1021 (5005).
  • the Resolve Manager 1021 determines whether or not the received measurement result is smaller than the distance registered in the distance 2043 of the record corresponding to the PBR router A in the neighborhood cache table 2022. When it is determined that the received measurement result is smaller than the distance registered in the distance 2043 of the record corresponding to the PBR router A in the neighborhood cache table 2022, the Resolve Manager 1021 is newly added to the nearest cache IP 2042 of the record.
  • the neighborhood cache table 2022 is updated by registering the IP address of the cache server C5020 to be registered and registering the measurement result in the distance 2043 of the record (5006). In this case, the Resolve Manager 1021 sets a rule in the PBR router A so as to transfer the traffic from the PC to the cache server C5020 serving as the nearest cache server (5007).
  • FIG. 7A is an explanatory diagram of a rule setting command according to the first embodiment of the present invention
  • FIG. 7B is an explanatory diagram of rule contents according to the first embodiment of the present invention.
  • Resolve Manager 1021 accesses the PBR router and sets rules via the command line.
  • the traffic condition (transfer condition) to be transferred to the transfer destination is designated as the traffic whose destination port is 80.
  • the forwarding destination of the traffic that matches the forwarding condition is set to the nearest cache server of the PBR router. Specify the IP address.
  • steps 5006 and 5007 shown in FIG. 6 is executed when it is determined that the received measurement result is equal to or greater than the distance registered in the distance 2043 of the record corresponding to the PBR router A in the neighborhood cache table 2022. Not.
  • Resolve Manager 1021 sets the PBR router identified by the IP address on the second line of the list as PBR router A (5008). Then, the Resolve Manager 1021 transmits a network distance measurement instruction with the PBR router A to the Resolve Agent C5021 to the PBR router A similarly to the process of Step 5004 (5009).
  • Resolve Manager 1021 receives the measurement result, and determines whether or not the received measurement result is smaller than the distance registered in distance 2043 of the record corresponding to PBR router A in neighboring cache table 2022. If it is determined, the processing of steps 5006 and 5007 is executed.
  • the Resolve Manager 1021 executes the above-described processing on the PBR router of the IP address of all the lines in the list, and ends the cache server addition processing.
  • Resolve Agent needs to retain identification information such as the IP address of Resolve Manager 1021 that is the transmission destination of the cache server addition request after activation.
  • the Resolve Agent is assumed to have the IP address of the Resolve Manager 1021 set before the Resolve Agent is activated, and the activation of the Resolve Agent is used as a trigger for the cache server addition process.
  • the trigger for the cache server addition process is not limited to this, and the trigger may be that the IP address of Resolve Manager 1021 is set to Resolve Agent via an external storage medium or the like after starting Resolve Agent. Moreover, it is good also as a trigger that the IP address of Resolve Manager1021 was input by the administrator etc. after starting Resolve Agent.
  • FIG. 8 is a flowchart of the process performed by Resolve Manager 1021 in the cache server addition process according to the first embodiment of this invention.
  • the Resolve Manager 1021 When the Resolve Manager 1021 receives a cache server addition request transmitted from the Resolve Agent installed in the newly added cache server (cache server C), the Resolve Manager 1021 starts executing the process.
  • Resolve Manager 1021 executes cache server list update processing for updating cache server list 2023 based on the received cache server addition request (7001). Details of the cache server list update process will be described with reference to FIG.
  • the Resolve Manager 1021 acquires the IP addresses of all the PBR routers registered in the PBR router IP 2041 in the neighbor cache table 2022, and generates a list (PBR router array) of the acquired PBR router IP addresses (7002). .
  • the Resolve Manager 1021 sets the PBR router identified by the IP address in the first row of the generated PBR router array as PBR router A (7003), and deletes the IP address in the first row of the PBR router array (7004). .
  • Resolve Manager 1021 transmits a network distance measurement instruction between PBR router A and newly added cache server C to Resolve Agent installed in cache server C, and based on the measurement result, neighborhood cache table 2022 is sent.
  • the neighborhood cache table update process for updating the record corresponding to the PBR router A is executed (7005). The neighborhood cache table update process will be described in detail with reference to FIG.
  • the Resolve Manager 1021 sets a rule for transferring the traffic from the PC to the nearest cache server in the PBR router A when the record corresponding to the PBR router A in the neighborhood cache table 2022 is updated in the process of Step 7005.
  • a setting process is executed (7006). Details of the rule setting process will be described with reference to FIG.
  • Resolve Manager 1021 determines whether or not an IP address exists in the PBR router array (7007).
  • step 7007 If it is determined in step 7007 that there is an IP address in the PBR router array, the neighborhood cache table update process is not executed for all PBR routers, and the process returns to step 7003.
  • Step 7007 if there is no IP address in the PBR router array in the processing of Step 7007, the neighborhood cache table update processing is executed for all the PBR routers, so the processing ends.
  • FIG. 9 is a flowchart of the cache server list update process according to the first embodiment of the present invention.
  • the Resolve Manager 1021 adds the IP address of the cache server C to be added included in the cache server addition request to the cache server list 2023 (6001), and ends the process.
  • the cache server list update process of FIG. 9 is also executed in the cache server deletion process executed when the cache server C is deleted from the network.
  • the Resolve Agent implemented in the cache server C to be deleted transmits a cache server deletion request including the IP address of the cache server C to the Resolve Manager 1021.
  • the Resolve Manager 1021 deletes the IP address of the cache server C included in the received cache server deletion request from the cache server list 2023. Details of the cache server deletion process will be described with reference to FIGS. 15 and 16.
  • FIG. 10 is a flowchart of the neighborhood cache table update process according to the first embodiment of the present invention.
  • the Resolve Manager 1021 transmits an instruction to measure the network distance between the added cache server C and the PBR router A to the Resolve Agent installed in the cache server C (6002).
  • the Resolve Manager 1021 When the Resolve Manager 1021 receives the measurement result (RTT) from the Resolve Agent mounted on the cache server C, the Resolve Manager 1021 determines whether the received measurement result is smaller than the distance of the record corresponding to the PBR router A in the neighboring cache table 2022. (6003).
  • step 6003 If it is determined in step 6003 that the received measurement result is smaller than the distance of the record corresponding to the PBR router A in the neighborhood cache table 2022, the Resolve Manager 1021 displays the record corresponding to the PBR router A in the neighborhood cache table 2022.
  • the IP address of the cache server C added to the nearest neighbor cache IP 2042 is registered, the received measurement result is registered at the distance 2043 of the record (6004), and the process is terminated.
  • step 6003 If it is determined in step 6003 that the received measurement result is greater than or equal to the distance of the record corresponding to PBR router A in the neighborhood cache table 2022, the Resolve Manager 1021 performs processing without executing the processing in steps 6004 to 6007. Exit.
  • FIG. 11 is a flowchart of the rule setting process according to the first embodiment of the present invention.
  • the Resolve Manager 1021 accesses the PBR router A by an ssh (Secure Shell) command or the like (6005).
  • the Resolve Manager 1021 acquires the IP address of the nearest cache server registered in the nearest cache IP 2042 of the record corresponding to the PBR router A in the neighborhood cache table 2022 (6006). Then, Resolve Manager 1021 sets a rule including a predetermined transfer condition in PBR router A using the IP address of the nearest cache server acquired in the process of step 6006 as a transfer destination (6007), and ends the process.
  • the Resolve Manager 1021 accesses the PBR router A using the ssh command. However, if there is a command or means having the same function as the ssh command, it may be substituted.
  • FIG. 12 is a flowchart of cache server addition / deletion request processing by Resolve Agent according to the first embodiment of the present invention.
  • the Resolve Agent implemented in the added cache server C When the Resolve Agent implemented in the added cache server C starts up, it transmits a cache server addition request including the IP address of the cache server C to the Resolve Manager 1021 (8001), and ends the process.
  • the Resolve Agent when the Resolve Agent installed in the cache server C terminates its activation, the Resolve Agent transmits a cache server deletion request including the IP address of the cache server C to be deleted to the Resolve Manager 1021 (8001), and ends the processing.
  • the cache server addition request and the cache server deletion request may be in a format that allows the Resolve Manager 1021 to confirm that the request is an addition request or deletion request by Resolve Agent.
  • the format is arbitrary as long as it is a message that can be notified to Resolve Manager 1021 to request deletion.
  • FIG. 13 is a flowchart of distance measurement processing by Resolve Agent according to the first embodiment of the present invention.
  • the Resolve Agent executes a distance measurement process.
  • Resolve Agent issues a ping to PBR router A (8002), and measures the network distance between the cache server on which it is mounted and PBR router A. Then, Resolve Agent transmits RTT acquired as a result of ping as a measurement result to Resolve Manager 1021 (8003), and ends the process.
  • FIG. 14 is an explanatory diagram of a measurement result of the network distance according to the first embodiment of this invention.
  • the cache server (aaa.example.com [a1.a2.a3.a4]) on which the Resolve Agent is mounted is pinged to the PBR router A (zzzz.example.com [z1.z2.z3.z4]). Is the result of issuing
  • Resolve Agent acquires 11 ms as the measurement result.
  • the ping program widely used for measuring the network distance is used, other programs may be used as long as the network distance can be measured.
  • Resolve Manager 1021 automatically generates a rule for the PBR router that becomes the nearest cache server, and automatically generates the generated rule for the PBR router. Can be set automatically.
  • FIG. 15 is a sequence diagram of the cache server deletion process according to the first embodiment of the present invention. In FIG. 15, it is assumed that the cache server C9020 equipped with Resolve Agent C9021 is deleted from the network.
  • This cache server deletion process is executed between Resolve Manager 1021 and Resolve Agent C9021 of cache server C9020 to be deleted.
  • Resolve Agent 9021 mounted on cache server 9020 to be deleted from the network transmits a cache server deletion request to Resolve Manager 1021 (9001).
  • the cache server deletion request includes the IP address of the cache server 9020 to be deleted.
  • the Resolve Manager 1021 When the Resolve Manager 1021 receives the cache server deletion request, the Resolve Manager 1021 deletes the IP address of the cache server 9020 included in the received cache server deletion request from the cache server list 2023 (9002).
  • the Resolve Manager 1021 acquires the IP address of the PBR router registered in the PBR router IP 2041 of the record in which the IP address of the cache server 9020 to be deleted in the nearest cache IP 2042 of the neighbor cache table 2022 is registered. A list of IP addresses of the PBR routers generated is generated. Then, Resolve Manager 1021 sets PBR router A (for example, PBR router A 1051) identified by the IP address in the first line of the generated list as PBR router A (9003), and all cache servers other than cache server C 9020 to be deleted. A network distance measurement instruction with the PBR router A is transmitted to Resolve Agents A 1032 and B 1034 implemented in A 1031 and B 1033 (9004).
  • PBR router A for example, PBR router A 1051
  • Resolve Agents A 1032 and B 1034 receive the network distance measurement instruction with PBR router A, they measure the network distance between cache servers A 1031 and B 1033 on which they are mounted and PBR router A (PBR router A 1051).
  • Resolve Agent A 1032 and B 1034 transmit the measurement result of the network distance to PBR router A to Resolve Manager 1021 (9005).
  • the Resolve Manager 1021 When the Resolve Manager 1021 receives the measurement results of the network distances between the respective cache servers A 1031 and B 1033 and the PBR router A from the Resolve Agents A 1032 and B 1034, the Resolve Manager 1021 identifies the nearest cache server having the minimum measurement result. Then, the Resolve Manager 1021 registers the IP address of the specified nearest neighbor cache server in the nearest neighbor cache IP 2042 of the record corresponding to the PBR router A in the neighborhood cache table 2022, and stores the IP address of the nearest neighbor cache server in the distance 2043 of the record. The neighborhood cache table 2022 is updated by registering the measurement result (9006). The Resolve Manager 1021 sets a rule in the PBR router A so as to transfer the traffic from the PC to the nearest cache server (9007).
  • Resolve Manager 1021 executes the processing of steps 9004 to 9007 for all PBR routers identified by all IP addresses in the second and subsequent lines of the list.
  • FIG. 16 is a flowchart of processing by Resolve Manager in the cache server deletion processing according to the first embodiment of the present invention.
  • the Resolve Manager 1021 When the Resolve Manager 1021 receives a cache server deletion request transmitted from the Resolve Agent installed in the cache server to be deleted (cache server C), the Resolve Manager 1021 starts executing the processing.
  • Resolve Manager 1021 executes a cache server list update process for updating cache server list 2023 based on the received cache server deletion request (10001).
  • the Resolve Manager 1021 deletes the IP address of the cache server included in the received cache server deletion request from the cache server list 2023.
  • Resolve Manager 1021 is registered in PBR router IP 2041 of all records whose IP address registered in nearest neighbor cache IP 2042 of PBR router IP 2041 in neighborhood cache table 2022 matches the IP address included in the cache server deletion request.
  • An IP address of the PBR router is acquired, and a list (PBR router array) of the acquired IP addresses of the PBR router is generated (10002).
  • Resolve Manager 1021 designates the PBR router identified by the IP address in the first row of the generated PBR router array as PBR router A (10003), and deletes the IP address in the first row of the PBR router array (10004). .
  • Resolve Manager 1021 transmits a network distance measurement instruction between PBR router A and all the cache servers other than the deleted cache server to Resolve Agent installed in these cache servers, and based on the measurement result, A neighborhood cache table update process for updating a record corresponding to the PBR router A in the cache table 2022 is executed (10005).
  • the Resolve Manager 1021 transmits a network distance measurement instruction to the PBR router A to the Resolve Agent installed in all the cache servers other than the cache server to be deleted.
  • Resolve Manager 1021 identifies the nearest cache server that minimizes the network distance to PBR router A based on the measurement results received from each Resolve Agent, and Register the IP address of the nearest cache server specified in the nearest cache IP 2042 of the record corresponding to the PBR router A in the cache table 2022, and transmit from the Resolve Agent installed in the nearest cache server specified in the distance 2043 of the record Registered measurement results.
  • Resolve Manager 1021 executes a rule setting process for setting a rule for forwarding traffic from the PC to the nearest cache server in PBR router A (10006).
  • the rule setting process is the same as the rule setting process shown in FIG.
  • Resolve Manager 1021 determines whether an IP address exists in the PBR router array (10007).
  • step 10007 If there is an IP address in the PBR router array in the process of step 10007, the neighborhood cache table update process is not executed for all the PBR routers, so the process returns to step 10003.
  • the neighborhood cache table update process is executed for all the PBR routers, so the process ends.
  • the nearest cache server of the PBR router whose cache server to be deleted is the nearest neighbor cache server is updated to the cache server with the shortest network distance among the cache servers other than the cache server to be deleted and deleted.
  • the rule of the PBR router that has become the nearest cache server can be set to be transferred to the newly specified nearest cache server.
  • the rule update process may be executed when a failure is detected in at least one of the cache server and the PBR router (when a failure is detected in the network) or may be executed every predetermined time.
  • the network distance between each PBR router and all the cache servers is measured, and the nearest cache server of each PBR router is updated based on the measurement result.
  • FIG. 17 is a sequence diagram of rule update processing according to the first embodiment of this invention.
  • Resolve Manager 1021 generates a list including the IP addresses of all PBR routers in neighborhood cache table 2022, and sets the PBR router of the IP address in the first line of the generated list as PBR router A (11001).
  • the processing in step 11001 is the same processing as 5003 shown in FIG.
  • Resolve Manager 1021 transmits a network distance measurement instruction with PBR router A to Resolve Agent of all cache servers (11002).
  • Resolve Agent receives a network distance measurement instruction with PBR router A, it measures the network distance with PBR router A.
  • Resolve Agent transmits the measurement result of the network distance to PBR router A to Resolve Manager 1021 (11003).
  • the Resolve Manager 1021 When the Resolve Manager 1021 receives the measurement result, the Resolve Manager 1021 identifies the cache server that implements the Resolve Agent that minimizes the network distance among the received measurement results as the nearest neighbor cache server of the PBR router A. Then, the Resolve Manager 1021 registers the IP address of the cache server in the nearest cache IP 2042 of the record corresponding to the PBR router A in the neighbor cache table 2022, and the Resolve Agent installed in the cache server at the distance 2043 of the record. The neighborhood cache table 2022 is updated by registering the measurement results of (11004).
  • Resolve Manager 1021 sets a rule in PBR router A so as to transfer traffic from the PC to the nearest cache server (11005).
  • Steps 11001 to 11006 are executed for all PBR routers.
  • FIG. 18 is a flowchart of the process performed by the Resolve Manager 1021 in the rule update process according to the first embodiment of this invention.
  • Step 18 corresponds to the processes 7002 to 7007 shown in FIG.
  • the measurement of the network distance between the added cache server and the PBR router A is instructed, whereas in the process of Step 12004, the network between all cache servers and the PBR router A is instructed. Direct distance measurement.
  • Resolve Manager 1021 refers to PBR router IP 2041 in neighborhood cache table 2022 and generates a PBR router array (12001).
  • the processing in step 12001 is the same as the processing in step 7002.
  • Resolve Manager 1021 designates the PBR router identified by the IP address of the first row of the generated PBR router array as PBR router A (12002), and deletes the IP address of the first row of the PBR router array (12003). .
  • the processing in steps 12002 and 12003 is the same as the processing in steps 7003 and 7004.
  • Resolve Manager 1021 transmits a network distance measurement instruction between PBR router A and all cache servers to Resolve Agent installed in all cache servers, and the nearest cache of PBR router A based on the measurement result.
  • a server is specified, and a neighborhood cache table update process for updating a record corresponding to the PBR router A in the neighborhood cache table 2022 is executed (12004).
  • the neighborhood cache table update process will be described.
  • Resolve Manager 1021 transmits a network distance measurement instruction with PBR router A to Resolve Agent installed in all cache servers registered in cache server list 2023.
  • the Resolve Manager 1021 When the Resolve Manager 1021 receives the measurement result from the Resolve Agent installed in all the cache servers, the Resolve Manager 1021 identifies the cache server having the smallest received measurement result as the nearest neighbor cache server of the PBR router A.
  • the Resolve Manager 1021 determines whether or not the IP address of the cache server registered in the nearest cache IP 2042 of the record corresponding to the PBR router A in the neighborhood cache table 2022 matches the IP address of the identified nearest neighbor cache server. Determine whether.
  • the Resolve Manager 1021 displays the nearest neighbor cache of the record corresponding to the PBR router A in the neighbor cache table 2022.
  • the IP address of the nearest neighbor cache server specified in IP2042 is registered, the measurement result of the nearest neighbor cache server specified in the distance 2043 of the record is registered, and the process ends.
  • the processing may be terminated as it is, or the Resolve Manager 1021 may send the neighborhood cache table 2022.
  • the measurement result of the nearest cache server specified at the distance 2043 of the record corresponding to the PBR router A may be registered, and the process may be terminated.
  • the nearest neighbor cache server of the PBR router A is updated to the latest nearest neighbor cache server.
  • the Resolve Manager 1021 executes the neighborhood cache table update process in the process of Step 12004 and then the nearest neighbor cache server of the PBR router A is updated in the neighborhood cache table update process
  • the traffic from the PC A rule setting process for setting a rule for transferring to the nearest cache server after update to the PBR router A is executed (12005).
  • the processing in step 12005 is the same as the processing in step 7004.
  • Resolve Manager 1021 determines whether or not an IP address exists in the PBR router array (12006).
  • step 12006 If it is determined in step 12006 that an IP address exists in the PBR router array, the neighborhood cache table update process has not been executed for all PBR routers, and the process returns to step 12002.
  • the neighborhood cache table update process is executed for all the PBR routers, so the process ends.
  • the nearest neighbor cache server of all PBR routers can be updated to the latest nearest neighbor cache server at a prescribed timing (when a failure is detected every predetermined time or in the network).
  • FIG. 19 is a flowchart of the operation of the Resolve Manager 1021 according to the first embodiment of the present invention.
  • the Resolve Manager 1021 When the Resolve Manager 1021 is turned on and the Resolve Manager 1021 is activated (13001), the Resolve Manager 1021 registers the IP address of the PBR router that configures the network in the PBR router IP 2041 of the neighborhood cache table 2022 (13002).
  • the IP address of the PBR router registered in the neighborhood cache table 2022 in the process of step 13002 may be input by an administrator or the like, or may be described in a setting file.
  • the CPU 2011 of the Resolve Manager 1021 loads the Resolve Manager module program 2031 stored in the secondary storage device 2013 to the main storage device 2012, and executes the loaded Resolve Manager module program 2031 to execute the Resolve Manager module 2021. Is started (13003).
  • the Resolve Manager 1021 determines whether or not a cache server addition request has been received (13004). If it is determined in step 13004 that the cache server addition request has been received, the Resolve Manager 1021 executes the cache server addition process shown in FIG. 8 (13005), and returns to the process of step 13004.
  • the Resolve Manager 1021 determines whether a cache server deletion request has been received (13006).
  • step 13006 If it is determined in step 13006 that the cache server deletion request has been received, the Resolve Manager 1021 executes the cache server deletion process shown in FIG. 16 (13007), and returns to the process of step 13004.
  • the Resolve Manager 1021 determines whether or not a failure has occurred in the network (13008).
  • step 13008 If it is determined in step 13008 that it has been detected that a failure has occurred in the network, the Resolve Manager 1021 executes the rule update process shown in FIG. 18 (13009), and returns to the process in step 13004.
  • step 13008 If it is determined in step 13008 that it is not detected that a failure has occurred in the network, the process returns to step 13004.
  • the network failure includes a change in the network configuration in addition to the failure of devices such as the PBR router and the cache server.
  • the Resolve Manager 1021 detects a device failure as a network failure by the Resolve Manager 1021 issuing a ping command to the Resolve Agent and PBR router every predetermined time and detecting a network failure when there is no response. .
  • the ping command is used for checking the existence of the Resolve Agent and the PBR router, other means may be used if there are other means.
  • the Resolve Manager 1021 issues a traceroute command to the Resolve Agent or PBR router, and the Resolve Manager 1021 to the Resolve Agent or PBR router on the Reroute Agent path. If the number of routers or the router identification information acquired by the traceroute command is different from the stored information, the network configuration has changed, so it is detected as a network failure. There is a way.
  • the traceroute command is used to acquire information on the route, other means may be used as long as other means exist.
  • Resolve Manager 1021 may detect a network failure by using an alert of the failure detection system using an existing failure detection system.
  • failure detection devices and failure detection methods may be used as long as the failure of the devices constituting the network and the change in the network configuration can be detected.
  • FIG. 20 is a flowchart of the operation of the Resolve Agent according to the first embodiment of the present invention.
  • CPU 2061 of the cache server stores Resolve Agent module program 2081 stored in secondary storage device 2063 in main storage device 2062.
  • the Resolve Agent module 2071 is started by executing the loaded Resolve Agent module program 2081 (14002).
  • Resolve Agent transmits a cache server addition request including the IP address of the activated cache server to Resolve Manager 1021 (14003).
  • Resolve Agent determines whether or not a network distance measurement instruction has been received from Resolve Manager 1021 (14004).
  • step 14004 If it is determined in step 14004 that the network distance measurement instruction has been received, the Resolve Agent executes network distance measurement processing for measuring the network distance to the instructed PBR router (14005). Return to processing.
  • the Resolve Agent determines whether or not the activation of the cache server is completed (14006).
  • step 14006 determines whether the activation of the cache server does not end. If it is determined in step 14006 that the activation of the cache server does not end, the process returns to step 14004.
  • Example 2 is an example when the Resolve Agent of Example 1 is not operated on the cache server, but is operated on a computer that exists near the cache server.
  • the computer existing near the cache server is a computer connected directly to the cache server or a computer connected to the same hub device as the hub device to which the cache server is connected. That is, it is a computer connected without going through a cache server and a router device.
  • Resolve Manager 1021 needs to hold not only the IP address of the cache server but also the IP address of Resolve Agent in order to manage Resolve Agent. Further, the cache server addition request transmitted from the Resolve Agent to the Resolve Manager 1021 needs to include the IP address of the device on which the Resolve Agent is mounted and the IP address of the cache server that exists near the device.
  • the first change is that Resolve Agent does not work on the cache server.
  • the second change is that the cache server list maintains the relationship between the cache server and the Resolve Agent existing near the cache server.
  • the third change is that the cache server addition request includes the IP address of the Resolve Agent and the IP address of the cache server existing near the device on which the Resolve Agent is mounted.
  • FIG. 21 is an explanatory diagram of the relay system according to the second embodiment of the present invention.
  • the same components as those of the relay system shown in FIG. 21
  • Web server 1011, routers A 1041 to D 1044, and PBR routers A 1051 to C 1053 are the same as those in FIG.
  • the Resolve Manager 15021 has a cache server list different from that of the first embodiment, and the details will be described with reference to FIGS.
  • the cache servers A15031 and B15033 hold a copy of the Web content, and return the Web content in response to a request from the end user. Unlike the first embodiment, the Resolve Agent does not operate on the cache server. Details of the cache server will be described with reference to FIG.
  • Resolve Agent A15032 operates on a device that exists near cache server A15031
  • Resolve Agent B15034 operates on a device that exists near cache server B15033. Details of the apparatus for mounting Resolve Agent will be described with reference to FIG.
  • the measurement result of the network distance from the PBR router by Resolve Agent is not the network distance between the cache server and the PBR router. Since it exists near the cache server, it is treated as a network distance between the cache server and the PBR router.
  • FIG. 1 An outline of the cache server addition process when a cache server A15031 is newly added in the relay system shown in FIG.
  • Resolve Agent A15032 existing near newly added cache server A1031 transmits a cache server addition request to Resolve Manager 15021.
  • the Resolve Manager 15021 instructs the Resolve Agent A15032 to measure the network distance between the PBR routers A1051 to C1053.
  • Resolve Agent A15032 measures the network distance between each PBR router A1051 to C1053. Then, Resolve Agent A15032 transmits the measurement result of the network distance to Resolve Manager 15021.
  • Resolve Manager 15021 sends the data from PC A 1061 to 1064 to the nearest neighbor based on the measurement result to the PBR router where the added cache server becomes the nearest neighbor cache server.
  • a rule to be transferred to the cache server is generated, and the rule is set in the PBR router.
  • the PBR router C 1053 transfers data from the PC D 1064 to the nearest cache server B 1033.
  • the rule update process of the present embodiment is the same as that of the first embodiment, but the cache server addition process and the cache server deletion process of the present embodiment are different from the first embodiment.
  • the configuration of the Resolve Manager 1021, the cache server list, the cache server, and the Resolve Agent will be described with reference to FIGS. 22 to 25, and then the cache server addition process and the cache server deletion process of this embodiment will be described.
  • FIG. 22 is a hardware configuration diagram of Resolve Manager 15021 according to the second embodiment of the present invention.
  • Resolve Manager1021 shown in FIG. 2 of Example 1, the same code
  • the Resolve Manager 15021 has a CPU 2011, a main storage device 2012, and a secondary storage device 2013.
  • the main storage device 2012 stores a Resolve Manager module 2021, a neighborhood cache table 2022, and a cache server list 16023.
  • the secondary storage device 2013 stores a Resolve Manager module program 2031.
  • the Resolve Manager 15021 of the present embodiment and the Resolve Manager 1021 of the first embodiment are the same except for the cache server list.
  • FIG. 23 is an explanatory diagram of the cache server list 16023 according to the second embodiment of this invention.
  • the same components as those in the cache server list 2023 shown in FIG. 23 are identical components as those in the cache server list 2023 shown in FIG.
  • the cache server list 16023 includes an ID 2051, a cache server IP 2052, and a Resolve Agent IP 16041.
  • cache server IP 2052 are the same as the cache server list 2023 of the first embodiment.
  • Resolve Agent IP16041 is a device that exists near the cache server identified by the IP address registered in cache server IP2052 of the same record, and the IP address of the device that implements Resolve Agent is registered.
  • IP address registered in Resolve Agent IP16041 can be the primary key of cache server list 16023.
  • FIG. 24 is a hardware configuration diagram of the cache server 15031 according to the second embodiment of this invention.
  • the same components as those of the cache server 1031 illustrated in FIG. 24 are identical components as those of the cache server 1031 illustrated in FIG. 24.
  • the cache server 15031 of this embodiment is different from the cache server 1031 of the first embodiment in that the Resolve Agent is not operated.
  • the cache server 15031 includes a CPU 2061, a main storage device 2062, and a secondary storage device 2063.
  • the main storage device 2062 stores a cache management module 2072 and does not store a Resolve Agent module 2071.
  • the secondary storage device 2063 stores the cache management module program 2082, and does not store the Resolve Agent module program 2081. Further, the secondary storage device 2063 has a cache management area 2083.
  • FIG. 25 is a hardware configuration diagram of an apparatus for mounting the Resolve Agent according to the second embodiment of the present invention.
  • a device that implements Resolve Agent has a CPU 16081, a main storage device 16082, and a secondary storage device 16083.
  • the main storage device 16082 stores a Resolve Agent module 16091.
  • the secondary storage device 16083 stores a Resolve Agent module program 16101.
  • a Resolve Agent module 16091 stored in the main storage device 16082 indicates a state where the Resolve Agent module program 16101 stored in the secondary storage device 16083 is loaded into the main storage device 16082.
  • the CPU 16081 executes the Resolve Agent module 16091 loaded in the main storage device 16082.
  • cache server addition processing and cache server deletion processing of this embodiment will be described.
  • a device that implements Resolve Agent transmits a cache server addition request including its own IP address and the IP address of a cache server that exists near the device. It is assumed that the IP address of the cache server that is present near the device is set in advance in a device that implements Resolve Agent, for example.
  • the cache server deletion request includes an IP address of a device that implements Resolve Agent and an IP address of a cache server that exists near the device.
  • the update processing of the cache server list 16023 when the Resolve Manager 15021 receives a cache server addition request or a cache server deletion request is different from that in the first embodiment.
  • the Resolve Manager 15021 When the Resolve Manager 15021 receives the cache server addition request, the Resolve Manager 15021 adds a new record to the cache server list 16023, and adds the cache server IP address included in the received cache server addition request to the cache server IP 2052 of the added record.
  • the IP address of the device that implements the Resolve Agent included in the received cache server addition request is registered in Resolve Agent IP16041 of the added record.
  • Resolve Manager 15021 When Resolve Manager 15021 receives a cache server deletion request, Resolve Manager 15021 identifies the record of cache server list 16023 that matches the IP address of the device that implements Resolve Agent included in the cache server deletion request and the IP address of the cache server. Deleted records.
  • the Resolve Agent can be operated not on the cache server but on another independent device by mounting the Resolve Agent on the device existing near the cache server.
  • Example 3 is an example in which Resolve Agent is operated on a PBR router.
  • the Resolve Agent operating on the PBR router executes the nearest neighbor cache server identification process, the neighboring cache table update process, and the rule setting process of the PBR router.
  • the Resolve Manager 17021 The network distance measurement results from Resolve Agent need not be tabulated.
  • the IP address of the Resolve Agent and the IP address of the PBR router are the same. For this reason, in this embodiment, the configuration and operation of the Resolve Manager 17021, Resolve Agent, and PBR router are changed.
  • Embodiment 3 of the present invention will be described with reference to FIGS.
  • FIG. 26 is an explanatory diagram of the relay system according to the third embodiment of the present invention.
  • FIG. 26 about the same structure as the relay system shown in FIG. 1 of Example 1, the same code
  • Resolve Manager 17021 receives a cache server addition request and a cache server deletion request, and when a cache server addition request is received, transmits a cache server addition instruction to Resolve Agent installed in the PBR router, and sends a cache server deletion request. If received, a cache server deletion instruction is transmitted to Resolve Agent installed in the PBR router. Details of Resolve Manager 17021 will be described with reference to FIG.
  • the cache servers A 17031 and B 17032 hold a copy of the Web content and return the Web content in response to a request from the end user. Unlike the first embodiment, the Resolve Agent does not operate on the cache server.
  • PBR routers A17051, B17053, and C17055 mount Resolve Agent A17052, B17054, and C17056. Details of the PBR router will be described with reference to FIG.
  • the newly added cache server A 17031 transmits a cache server addition request to the Resolve Manager 17021.
  • the Resolve Manager 17021 when the Resolve Manager 17021 receives a cache server addition request, it transmits a cache server addition instruction to Resolve Agent A to C 17051 to 17055 installed in each PBR router A 17051 to 17055.
  • Resolve Agents A to C17051 to 17055 measure the network distance to the added cache server 17031, and if the cache server 17031 is the nearest cache server, PC A1061 to A rule for transferring the data from D1064 to the cache server 17031 is generated and set in the PBR router that implements the rule.
  • the overall configuration of the relay system, Resolve Manager 17021, Resolve Agent, and PBR router are changed, and accordingly, cache server addition processing, cache server deletion processing, and rule update processing are changed.
  • cache server addition processing cache server deletion processing
  • rule update processing rule update processing
  • the detailed configuration of the cache system, the Resolve Manager device, the Resolve Agent device, the detailed configuration of the PBR router, the cache server addition process, the cache server deletion process, and the rule update process will be described below.
  • FIG. 27 is a hardware configuration diagram of Resolve Manager 17021 according to the third embodiment of the present invention.
  • the Resolve Manager 17021 includes a CPU 2011, a main storage device 2012, and a secondary storage device 2013.
  • the main memory device 2012 stores a Resolve Manager module 18021, and unlike the first and second embodiments, the neighborhood cache table and the cache server list are not stored.
  • the secondary storage device 2013 stores a Resolve Manager module program 18031.
  • FIG. 28 is a hardware configuration diagram of the PBR router according to the third embodiment of the present invention.
  • the PBR router includes a CPU 18061, a main storage device 18062, and a secondary storage device 18063.
  • the main storage device 18062 stores a Resolve Agent module 18071, a neighborhood cache table 18072, a router management module 18073, and a cache server list 18074.
  • the secondary storage device 18063 stores a Resolve Agent module program 18081 and a router management module program 18082.
  • the Resolve Agent module program 18081 is a program for operating the Resolve Agent
  • the router management module program 18082 is a program for managing the operation of the PBR router.
  • the Resolve Agent module 18071 and the router management module 18073 stored in the main storage device 2062 indicate a state in which the Resolve Agent module program 18081 and the router management module program 18082 stored in the secondary storage device 18063 are loaded.
  • the CPU 2061 executes the Resolve Agent module 18071 and the router management module 18073 stored in the main storage device 2062.
  • the neighborhood cache table 18072 is data for holding the nearest neighbor cache server of itself (PBR router), and details will be described with reference to FIG.
  • the cache server list 18074 is data for holding available cache servers that exist in the network, and is the same as the cache server list 2023 of the first embodiment.
  • FIG. 29 is an explanatory diagram of the neighborhood cache table 18072 according to the third embodiment of this invention.
  • the same components as those in the neighborhood cache table 2022 shown in FIG. 29 are identical components as those in the neighborhood cache table 2022 shown in FIG.
  • the neighborhood cache table 18072 includes a PBR router IP 2041, a nearest neighborhood cache IP 2042, and a distance 2043.
  • the neighborhood cache table 18072 of this embodiment holds the nearest neighbor cache server of one PBR router (self), the neighborhood cache table 18072 has one record.
  • the router management module program 18082 may be a general purpose one.
  • FIG. 30 is a sequence diagram of cache server addition processing according to the third embodiment of the present invention.
  • the cache server addition process of the present embodiment is executed between the Resolve Manager 17021, the added cache server A 17031, and all Resolve Agents.
  • the cache server A 17031 newly added to the network transmits a cache server addition request to the Resolve Manager 1021 (19001).
  • the cache server addition request includes the IP address of the newly added cache server A17031.
  • the Resolve Manager 17021 When the Resolve Manager 17021 receives the cache server addition request, the Resolve Manager 17021 transmits a cache server addition instruction to the Resolve Agent (17052, 17054) installed in all the PBR routers (PBR routers 17051, 17053 in FIG. 30) (19002). ).
  • the cache server addition instruction includes the IP address of the newly added cache server A17031.
  • Resolve Agents 17052 and 17054 when receiving the cache server addition instruction, add the IP address of the cache server included in the received cache server addition instruction to the cache server list 18074 (19003).
  • Resolve Agents 17052 and 17054 measure the network distance between PBR routers 17051 and 17053 on which they are mounted and newly added cache server A 17031 (19004). Then, Resolve Agents 17052 and 17054 determine whether the measurement result is smaller than the distance registered in the distance 2043 of the neighborhood cache table 18072. When it is determined that the measurement result is smaller than the distance registered in the distance 2043 of the neighborhood cache table 18072, the Resolve Agents 17052 and 17054 are the IP of the cache server A17031 that is newly added to the nearest cache IP 2042 of the neighborhood cache table 18072. The neighborhood cache table 2022 is updated by registering the address and registering the measurement result at the distance 2043 (19005). In this case, Resolve Agents 17052 and 17054 set a rule in routers 19101 and 19102 so as to transfer traffic from the PC to cache server A 17031 serving as the nearest cache server (19006).
  • the Resolve Manager 17021 when the Resolve Manager 17021 receives the cache server addition request transmitted from the cache server B 17032 (19007), the Resolve Manager 17021 transmits a cache server addition instruction to the PBR routers A 17051 and 17053 in which all the Resolve Agents 17052 and 17054 are mounted (19008). ). When the Resolve Agents 17052 and 17054 receive the cache server addition instruction, Steps 19003 to 19006 are executed.
  • the cache server needs to retain identification information such as the IP address of Resolve Manager 17021 that is the transmission destination of the cache server addition request after startup.
  • IP address of the Resolve Manager 17021 is set in the cache server before the Resolve Agent is activated, and the activation of the Resolve Agent is used as a trigger for the cache server addition process.
  • the trigger for the cache server addition process is not limited to this, and it may be triggered by the fact that the IP address of Resolve Manager 17021 is set to Resolve Agent via an external storage medium or the like after the cache server is activated. Moreover, it is good also as a trigger that the administrator etc. input the IP address of Resolve Manager17021 after starting a cache server.
  • FIG. 31 is a flowchart of processing by the Resolve Manager 17021 of the cache server addition processing according to the third embodiment of this invention.
  • the Resolve Manager 17021 When the Resolve Manager 17021 receives a cache server addition request transmitted from the newly added cache server C, the Resolve Manager 17021 starts executing the processing.
  • the Resolve Manager 17021 When the Resolve Manager 17021 receives the cache server addition request, the Resolve Manager 17021 transmits a cache server addition instruction to all PBR routers equipped with Resolve Agent (20001), and ends the process.
  • the cache server addition instruction is in a format in which Resolve Agents 17052 and 17054 can be confirmed as a cache server addition instruction by Resolve Manager 17021, and includes the IP address of the newly added cache server.
  • the format may be arbitrary as long as it is a message transmitted to Resolve Agents 17052 and 17054 to instruct to register the IP address of the newly added cache server in cache server list 18074.
  • FIG. 32 is a flowchart of processing by Resolve Agent of cache server addition processing according to the third embodiment of this invention.
  • Resolve Agent executes the process when it receives a cache server addition instruction transmitted from Resolve Manager 17021.
  • the Resolve Agent executes a cache server list update process for updating the cache server list 18074 based on the received cache server addition instruction (21001).
  • Resolve Agent adds a new record to the cache server list 18074 and registers the received cache server addition instruction IP address in the cache server IP 2052 (see FIG. 4) of the added record. To do.
  • Resolve Agent measures the network distance between the cache server identified by the IP address included in the received cache server addition instruction and the PBR router that implements it (21002).
  • Resolve Agent determines whether or not the measurement result (RTT) measured in the process of Step 21002 is smaller than the distance registered in the distance 2043 of the neighborhood cache table 18072 (21003).
  • step 21003 If it is determined in step 21003 that the measurement result (RTT) is smaller than the distance registered in the distance 2043 of the neighborhood cache table 18072, the Resolve Agent is newly added to the nearest cache IP 2042 of the neighborhood cache table 18072. The cache server IP address is registered, and the measurement result is registered at the distance 2043 (21004).
  • Resolve Agent sets a rule including a predetermined transfer condition in the PBR router with the IP address of the newly added cache server as the nearest cache server as the transfer destination (21005), and ends the process.
  • a rule for transferring data from an end user to the nearest cache server can be automatically generated, and the rule can be set in the PBR router.
  • FIG. 33 is a sequence diagram of cache server deletion processing according to the third embodiment of the present invention.
  • the cache server deletion process of the present embodiment is executed between the Resolve Manager 17021, the added cache server A 17031, and all Resolve Agents.
  • the cache server A 17031 to be deleted from the network transmits a cache server deletion request to the Resolve Manager 1021 (22001).
  • the cache server deletion request includes the IP address of the cache server A 17031 to be deleted.
  • the Resolve Manager 17021 When the Resolve Manager 17021 receives the cache server deletion request, the Resolve Manager 17021 transmits a cache server deletion instruction to Resolve Agents (17052, 17054) implemented in all PBR routers (PBR routers 17051, 17053 in FIG. 33) (22002). ).
  • the cache server deletion instruction includes the IP address of the cache server A 17031 to be deleted.
  • Resolve Agents 17052 and 17054 When the Resolve Agents 17052 and 17054 receive the cache server deletion instruction, they delete the IP address of the cache server included in the received cache server deletion instruction in the cache server list 18074 (22003).
  • Resolve Agents 17052 and 17054 determine whether or not the IP address of the cache server to be deleted is registered in the neighborhood cache table 18072, and the IP address of the cache server to be deleted is registered in the neighborhood cache table 18072. If there is, the network distance between all the cache servers other than the deleted cache server and the PBR router in which the cache server is installed is measured (22004).
  • Resolve Agents 17052 and 17054 identify the cache server with the smallest measurement result as the nearest neighbor cache server, register the IP address of the identified nearest neighbor cache server in nearest neighbor cache IP 2042 in neighborhood cache table 18072, and distance 2043
  • the neighborhood cache table 2022 is updated by registering the minimum measurement result in (22005).
  • the Resolve Agents 17052 and 17054 set a rule in the routers 19101 and 19102 so as to transfer the traffic from the PC to the cache server that is the nearest cache server (22006).
  • the Resolve Manager 17021 When the Resolve Manager 17021 receives the cache server deletion request transmitted from the cache server B 17032 (22007), the Resolve Manager 17021 transmits a cache server deletion instruction to the PBR routers A 17051 and 17053 in which all the Resolve Agents 17052 and 17054 are mounted (22008). ). Resolve Agents 17052 and 17054, when receiving the cache server deletion instruction, execute steps 22003 to 22006.
  • FIG. 34 is a flowchart of processing executed by the Resolve Manager 17021 in the cache server deletion processing according to the third embodiment of this invention.
  • the Resolve Manager 17021 When the Resolve Manager 17021 receives the cache server deletion request transmitted from the cache server C to be deleted, the Resolve Manager 17021 starts executing the process.
  • the Resolve Manager 17021 When the Resolve Manager 17021 receives the cache server deletion request, the Resolve Manager 17021 transmits a cache server deletion instruction to all PBR routers equipped with Resolve Agent (23001), and ends the processing.
  • the cache server deletion instruction has a format in which Resolve Agents 17052 and 17054 can be confirmed as a cache server deletion instruction by Resolve Manager 17021, and includes the IP address of the cache server to be deleted.
  • the format may be arbitrary as long as it is a message transmitted to Resolve Agents 17052 and 17054 to instruct to delete the IP address of the cache server to be deleted from the cache server list 18074.
  • FIG. 35 is a flowchart of processing executed by Resolve Agent in the cache server deletion processing according to the third embodiment of the present invention.
  • Resolve Agent performs the process when it receives a cache server deletion instruction transmitted from Resolve Manager 17021.
  • Resolve Agent acquires the IP address of cache server C to be deleted included in the received cache server deletion instruction (24001).
  • Resolve Agent determines whether or not the IP address acquired in the process of Step 24001 matches the IP address registered in nearest neighbor cache IP 2042 of neighborhood cache table 18072 (24002).
  • Resolve Agent ends the process.
  • the Resolve Agent determines that the nearest cache IP 2042 is determined in the process of step 24002. Deletes the IP address registered in and the value registered in the distance 2043 (24003), and out of the cache server IP addresses registered in the cache server list 18074, the IP address other than the IP address of the cache server to be deleted And a cache IP array is generated (24004).
  • Resolve Agent sets the cache server identified by the IP address in the first row of the cache IP array as cache server A (24005), and deletes the IP address in the first row of the cache IP array (24006).
  • Resolve Agent measures the network distance between cache server A and the PBR router on which it is installed, and executes neighborhood cache table update processing for updating neighborhood cache table 18072 based on the measurement result (24007).
  • Resolve Agent measures the network distance between cache server A and the PBR router in which it is installed. Then, when the measurement result is smaller than the distance registered in the distance 2043 of the neighbor cache table 18072, the Resolve Agent registers the IP address of the cache server A in the nearest cache IP 2042 of the neighbor cache table 18072, and the measurement result Is registered in the distance 2043.
  • the Resolve Agent executes a rule setting process for setting a rule for forwarding traffic from the PC to the nearest cache server in the PBR router (24008).
  • the details of the rule setting process are the same as the rule setting process shown in FIG. 11 of the first embodiment except that the rule setting process is executed by Resolve Agent, and thus the description thereof is omitted.
  • Resolve Agent determines whether there is an IP address in the cache IP array (24009).
  • step 24209 If the IP address exists in the cache IP array in the process of step 24209, the neighborhood cache table update process has not been executed for all cache servers, and the process returns to step 24007.
  • step 24209 if there is an IP address in the cache IP array in the process of step 24209, the neighborhood cache table update process has been executed for all the cache servers, so the process ends.
  • the nearest cache server of the PBR router that is the cache server from which the nearest cache server is deleted is transferred to the cache having the minimum network distance from the cache servers other than the deleted cache server. Can be specific to the server.
  • FIG. 36 is a flowchart of the rule update process according to the third embodiment of the present invention.
  • the rule update process of the present embodiment is executed between Resolve Manager 17021 and all Resolve Agents.
  • Resolve Manager transmits a rule update instruction to all PBR routers 17051 and 17053 every predetermined time or when a failure is detected in the network (25001).
  • Resolve Agent A17052 and B17054 When Resolve Agent A17052 and B17054 receive the rule update instruction, they acquire the IP addresses of all cache servers registered in the cache server list 18074, generate the cache IP array, and generate the first line of the cache IP array.
  • the cache server identified by the IP address is set as the cache server A (25002).
  • Resolve Agent A17052 and B17054 measure the network distance between PBR routers 17051 and 17053 on which they are mounted and cache server A (25003).
  • the Resolve Agent A17052 and B17054 register the IP address of the cache server A in the nearest cache IP 2042 of the neighborhood cache table 18072, and the distance By registering the measurement result in 2043, the neighborhood cache table 18072 is updated (25004).
  • Resolve Agent A17052 and B17054 set a rule in PBR router A so as to forward the traffic from the PC to the nearest cache server (25005).
  • Resolve Agent A17052 and B17054 also execute the processing of steps 25003 to 25005 for the cache server identified by the remaining IP addresses in the cache IP array.
  • FIG. 37 is a flowchart of processing executed by the Resolve Manager 17021 in the cache server deletion processing according to the third embodiment of this invention.
  • Resolve Manager 17021 transmits a rule update instruction to all Resolve Agents every predetermined time or when an abnormality is detected in the network (26001), and ends the process.
  • Resolve Manager 17021 detects a network abnormality is the same as in the first embodiment.
  • FIG. 38 is a flowchart of processing executed by Resolve Agent in the cache server deletion processing according to the third embodiment of the present invention.
  • Resolve Agent When Resolve Agent receives a rule update instruction transmitted from Resolve Manager 17021, Resolve Agent performs the process.
  • Resolve Agent acquires the IP addresses of all cache servers registered in the cache server list 18074, and generates a cache IP array (27001).
  • Resolve Agent sets the cache server identified by the IP address in the first row of the cache IP array as cache server A (27002), and deletes the IP address in the first row of the cache IP array (27003).
  • Resolve Agent measures the network distance between cache server A and the PBR router on which it is installed, and executes neighborhood cache table update processing for updating neighborhood cache table 18072 based on the measurement result (27004).
  • This neighborhood cache table update process is the same as the process in step 24007 of FIG.
  • the Resolve Agent executes a rule setting process for setting a rule for forwarding traffic from the PC to the nearest cache server in the PBR router (27005).
  • the details of the rule setting process are the same as the rule setting process shown in FIG. 11 of the first embodiment except that the rule setting process is executed by Resolve Agent, and thus the description thereof is omitted.
  • Resolve Agent determines whether or not an IP address exists in the cache IP array (27006).
  • step 27006 If it is determined in step 27006 that an IP address exists in the cache IP array, the neighborhood cache table update process is not executed for all cache servers, and the process returns to step 27004.
  • step 27006 if there is an IP address in the cache IP array in the process of step 27006, the neighborhood cache table update process has been executed for all cache servers, so the process ends.
  • the nearest neighbor cache server of all PBR routers can be updated to the latest nearest neighbor cache server at a prescribed timing (every predetermined time or when a failure is detected in the network).
  • FIG. 39 is a flowchart of the operation of the Resolve Manager 1021 according to the third embodiment of the present invention.
  • the CPU 2011 of the Resolve Manager 17021 loads the Resolve Manager module program 18031 stored in the secondary storage device 2013 to the main storage device 2012 and is loaded.
  • the Resolve Manager module 18021 is started by executing the Manager module program 18031 (28002).
  • Resolve Manager 17021 determines whether or not a cache server addition request has been received (28003). If it is determined in step 28003 that the cache server addition request has been received, the Resolve Manager 17021 transmits the cache server addition instruction to all PBR routers by executing the process shown in FIG. 31 (28004). The processing returns to 28003.
  • step 28003 If it is determined in step 28003 that the cache server addition request has not been received, the Resolve Manager 17021 determines whether a cache server deletion request has been received (28005).
  • step 28005 If it is determined in step 28005 that the cache server deletion request has been received, the Resolve Manager 17021 transmits a cache server deletion instruction to all PBR routers by executing the cache server deletion process shown in FIG. 34 (28006). ), The process returns to step 28003.
  • step 28005 If it is determined in step 28005 that the cache server deletion request has not been received, the Resolve Manager 17021 determines whether or not a failure has occurred in the network (28007).
  • Resolve Manager 17021 transmits a rule update instruction to all PBR routers by executing the rule update process shown in FIG. 28008), the process returns to step 28003.
  • step 28007 If it is determined in step 28007 that the failure has not been detected in the network, the process returns to step 28003.
  • FIG. 40 is a flowchart of the operation of the Resolve Agent according to the third embodiment of the present invention.
  • the PBR router CPU 18061 stores the Resolve Agent module program 18081 stored in the secondary storage device 18063 in the main storage device 18062.
  • the Resolve Agent module 18071 is started (29002).
  • Resolve Agent determines whether or not a cache server addition instruction has been received (29003). If it is determined in step 29003 that a cache server addition instruction has been received, Resolve Agent executes the process shown in FIG. 32 (29004), and returns to the process of step 29003.
  • the Resolve Agent determines whether a cache server deletion instruction has been received (29005).
  • Resolve Agent executes the cache server deletion process shown in FIG. 35 (29006), and returns to the process of step 29003.
  • step 29005 determines whether a rule update instruction has been received.
  • Resolve Agent executes the rule update process shown in FIG. 38 (29008), and returns to step 29003.
  • Resolve Manager 17021 By using Resolve Manager 17021 and Resolve Agent that execute the above processing, a system in which Resolve Agent operates on the PBR router can be constructed.
  • Example 4 is an example when the Resolve Agent of Example 3 is not operated on the PBR router, but is operated on a computer near the PBR router.
  • the computer existing near the PBR router is a computer connected directly to the PBR router or a computer connected to the same hub device as the hub device connected to the PBR router. That is, it is a computer connected without going through the PBR router and the router device.
  • Resolve Agent When Resolve Agent operates on a computer that exists near the PBR router, Resolve Agent and PBR router have different IP addresses. For this reason, Resolve Manager 17021 needs to hold the IP address of the computer that implements Resolve Agent in order to send various instructions to Resolve Agent.
  • the network distance between the PBR router and the cache server for specifying the nearest cache server of the PBR router is substituted by the network distance between the computer on which the Resolve Agent is installed and the cache server. To do.
  • FIG. 41 is an explanatory diagram of the relay system according to the fourth embodiment of the present invention.
  • FIG. 41 about the same structure as the relay system shown in FIG. 26 of Example 3, the same code
  • Web server 1011, routers A 1041 to D 1044, and cache servers A 15031 and B 15033 are the same as those in FIG.
  • Resolve Manager 30021 differs from Example 3 in that it holds Resolve Agent list 31022 that holds the IP address of the computer on which Resolve Agent is mounted, and the details will be described with reference to FIGS. 42 and 43.
  • PBR routers A30051 to C30053 are different from the third embodiment in that Resolve Agent does not operate.
  • Resolve Agent A30033 operates on a computer that exists near PBR router A30051
  • Resolve Agent B30034 operates on a computer that exists near PBR router B30052
  • Resolve Agent C30035 exists near PBR router C30054. It works with a computer that does. Details of a computer that implements Resolve Agent will be described with reference to FIG.
  • the measurement result of the network distance between the cache server and the PBR router by Resolve Agent is the network distance between the cache server and the PBR router.
  • the device exists near the PBR router it is treated as a network distance between the cache server and the PBR router.
  • FIG. 42 is a hardware configuration diagram of Resolve Manager 30021 according to the fourth embodiment of the present invention.
  • Resolve Manager17021 shown in FIG. 27 of Example 3, the same code
  • Resolve Manager 30021 includes a CPU 2011, a main storage device 2012, and a secondary storage device 2013.
  • the main storage device 2012 stores a Resolve Manager module 18021 and a Resolve Agent list 31022.
  • the secondary storage device 2013 stores a Resolve Manager module program 18031.
  • the Resolve Agent list 31022 registers the IP address of the computer on which the Resolve Agent is installed. Details of the Resolve Agent list 31022 will be described with reference to FIG.
  • FIG. 43 is an explanatory diagram of the Resolve Agent list 31022 according to the fourth embodiment of the present invention.
  • the Resolve Agent list 31022 includes ID 31051 and Resolve Agent IP31052.
  • a serial number is registered in ID31051.
  • Resolve Agent IP31052 the IP address of the computer that implements Resolve Agent is registered.
  • the primary key of the Resolve Agent list 31022 is ID31051, and a predetermined line of the Resolve Agent list 31022 can be specified by the serial number registered in the ID31051. Further, the IP address of the computer that implements the Resolve Agent registered in the Resolve Agent IP 31052 can also be the primary key of the Resolve Agent list 31022.
  • the Resolve Agent IP 31052 in the Resolve Agent list 31022 is registered in advance by hand.
  • Resolve Agent sends an add request including the IP address of the computer on which it is installed to Resolve Manager 30021.
  • Resolve Manager 30021 receives the add request
  • Resolve Agent IP 31052 sends the IP address included in the received add request to Resolve Agent IP 31052. You may register.
  • FIG. 44 is a hardware configuration diagram of a computer that implements the Resolve Agent according to the fourth embodiment of the present invention.
  • Resolve Agent has a CPU 31061, a main storage device 31062, and a secondary storage device 31063.
  • the main storage device 31062 stores a Resolve Agent module 31071, a neighborhood cache table 31072, and a cache server list 31073.
  • the secondary storage device 31063 stores a Resolve Agent module program 31031.
  • the Resolve Agent module 31071 stored in the main storage device 31062 indicates a state in which the Resolve Agent module program 31031 stored in the secondary storage device 31063 is loaded into the main storage device 31062.
  • the CPU 31061 executes the Resolve Agent module 31071 loaded in the main storage device 31062.
  • the neighborhood cache table 31072 is the same as FIG. 29 of the third embodiment, and the cache server list 31073 is the same as FIG. 4 of the first embodiment.
  • the Resolve Manager 30021 sends the cache server addition instruction, the cache server deletion instruction, and the rule update instruction to all computers that implement the Resolve Agent.
  • the other processes are the same as those in the third embodiment.
  • Resolve Agent can be operated on a computer near the PBR router without operating on the PBR router.
  • the number of PBR routers arranged in the relay system is larger than the number of cache servers. For this reason, in the present embodiment, the number of Resolve Agents operating in the relay system can be increased in the second embodiment. For this reason, in a relay system with a large number of end users, the number of Resolve Agents can be increased and the load of one Resolve Agent can be reduced by adopting the relay system of the present embodiment instead of the second embodiment.
  • an example of an initial construction process which is a process for initially constructing a relay system, will be described using the relay system of the first embodiment.
  • the Resolve Manager 1021 even when the Resolve Manager 1021 receives a cache server addition request from the Resolve Agent, the Resolve Manager 1021 waits for processing after the network distance measurement instruction transmission process until a predetermined condition is satisfied.
  • Resolve Manager 1021 measures the network distance between the added cache server and the PBR router, and if the nearest neighbor cache server of each PBR router is specified, the network distance May be identified as the nearest cache server. For example, when only one cache server is added to the network, the nearest neighbor cache server of all PBR routers is set as the cache server.
  • the Resolve Manager 1021 receives a cache server addition request so as to specify the nearest cache server of each PBR router after a predetermined number or more of cache servers are added to the network. Wait for network distance measurement instructions to be sent.
  • Example 5 will be described with reference to FIG.
  • FIG. 45 is a flowchart of the initial construction process according to the fifth embodiment of the present invention.
  • the cache server list update process is the same as the process shown in FIG.
  • Resolve Manager 1021 determines whether or not a predetermined time has elapsed since the start of time counting (32003).
  • step 3003 If it is determined in step 3003 that the predetermined time has not elapsed since the start of time counting, the process returns to step 32002.
  • the Resolve Manager 1021 lists the cache servers based on the cache server addition request received until the predetermined time elapses. In order of the cache servers registered in the table 2023, the processing in steps 7002 to 7007 is executed to measure the network distance, and the processing is terminated.
  • the processing in steps 7002 to 7007 is the same as the processing in steps 7002 to 7007 shown in FIG.
  • the predetermined condition of the network distance measurement instruction is that a predetermined time has elapsed since the start of the program for executing the initial construction process, but other variations are also conceivable.
  • it may be a condition that a predetermined time has elapsed since the start of Resolve Manager 1021, or the administrator of Resolve Manager has received a notification that Resolve Agent installed in all cache servers added to the network has started. This may be a condition.
  • the Resolve Manager 1021 receives a cache server addition request at the time of initial construction, the Resolve Agent is not instructed to measure the network distance until a predetermined condition is satisfied, so a predetermined number of cache servers are added to the network. After that, the nearest neighbor cache server of each PBR router can be specified.
  • Resolve Manager 17021 does not transmit a cache server addition instruction to a PBR router that implements Resolve Agent even if it receives a cache server addition request until a predetermined condition is satisfied.
  • the Resolve Agent installed in the PBR router does not receive the cache server addition instruction until the predetermined condition is satisfied, and therefore waits for the measurement of the network distance.
  • Resolve Agent can specify the nearest cache server of the PBR router that implements itself after a predetermined number of cache servers are added to the network.
  • the Resolve Manager 17021 when the Resolve Manager 17021 receives a cache server addition request, it immediately transmits a cache server addition instruction to each PBR router, and until the Resolve Agent installed in each PBR router satisfies a predetermined condition, the network distance You may wait for the measurement.
  • the predetermined condition in this case may be, for example, a condition that a predetermined time has elapsed since the first reception of the cache server addition instruction, or a condition that a predetermined time has elapsed since the activation of the PBR router.
  • rule setting module is used as a concept that collectively refers to the Resolve Manager and Resolve Agent of the above-described first to fifth embodiments.
  • this invention is not limited to the above-mentioned Example, Various modifications are included.
  • the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described.
  • a part of the configuration of a certain embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of a certain embodiment.
  • each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit.
  • Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor.
  • Information such as programs, tables, and files for realizing each function can be stored in a recording device such as a memory, a hard disk, an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

 中継装置のルール設定方法であって、中継システムは、コンテンツの複製を保持するキャッシュ計算機、及び中継装置にルールを設定可能なルール設定モジュールを有し、ルール設定モジュールは、キャッシュ計算機と各中継装置とのネットワーク距離を測定し、中継装置毎に最近傍キャッシュ計算機を特定し、ユーザ装置から送信されたデータを最近傍キャッシュ計算機に転送するためのルールを中継装置に設定する。

Description

ルール設定方法、及び中継システム 参照による取り込み
 本出願は、平成24年(2012年)9月20日に出願された日本出願である特願2012-206869の優先権を主張し、その内容を参照することにより、本出願に取り込む。
 本発明は、コンテンツ計算機によって提供されるコンテンツの複製を保持するキャッシュ計算機と、中継装置とを備える中継システムに関し、特に、中継装置がエンドユーザからのデータを近傍のキャッシュ計算機に転送する中継システムに関する。
 トラフィック量の増加によってネットワークが逼迫すると、エンドユーザに対するサービスの応答性が劣化するとともに、ネットワークを管理する通信事業者が負担する設備投資コストが増大する。そこでトラフィック量を減少させるために、エンドユーザの近傍にキャッシュサーバを配置し、キャッシュサーバがエンドユーザのリクエストを受け付け、リクエストに応じたデータを返すキャッシュシステムが知られている。このキャッシュシステムでは、エンドユーザのトラフィックをエンドユーザの近傍のキャッシュサーバに転送するトラフィック転送技術が用いられる。
 例えば、DNSサーバがエンドユーザのトラフィックをキャッシュサーバに転送するトラフィック転送技術を用いたキャッシュシステムが知られている(例えば、特許文献1参照)。
 また、トラフィックの宛先ポート番号に基づいて指定された転送先へルーティングする機能を利用してエンドユーザからのトラフィックをキャッシュサーバへ転送するトラフィック転送技術を用いたキャッシュシステムが知られている(例えば、特許文献2参照)。
米国特許出願公開第2002/0129134明細書 米国特許第6389462号明細書
 従来のキャッシュシステムを一つの通信事業者が管理する通信網(以降では一通信事業者網という)に適用した場合に、以下の課題が見出された。
 まず、例えば、特許文献1に記載されるように、DNSサーバを利用するキャッシュシステムでは、エンドユーザ近傍のキャッシュサーバを割り当てるために,エンドユーザが使用したDNSサーバ毎にキャッシュサーバを割り当てる。しかし,一通信事業者網規模のネットワークにはDNSサーバは数台程度しかない。そのため、DNSサーバを利用した従来のキャッシュシステムを一通信事業者網規模のネットワークに適用すると、DNSサーバ一台あたりに割り当てられるエンドユーザ数が多く、キャッシュサーバを割り当てる粒度が荒くなるという第一の問題がある。
 また、一通信事業者網内を流れるトラフィックに含まれるWebページなどのコンテンツは、不特定多数のコンテンツプロバイダによって提供される。しかし、キャッシュシステムを提供するキャッシュプロバイダが全てのコンテンツプロバイダと契約することは現実的に不可能である。このため,DNSサーバ毎に割り当てたキャッシュサーバを利用するキャッシュシステムのようにキャッシュプロバイダとコンテンツプロバイダとの契約及び連携が必要なシステムは、不特定多数のコンテンツプロパイダによって提供されるコンテンツに対応できないという第二の問題がある。
 次に、従来のトラフィックの宛先ポート番号に基づいて指定した転送先へルーティングする機能(以降では、該機能をPolicy Based Routing機能、略してPBR機能と呼ぶ)を利用するキャッシュシステムは、一通信事業者網内に数千台あるPBR機能を持つルータ(以降、PBRルータとする)に、転送するトラフィックの条件と条件に合致したトラフィックの転送先(以降では、これらをまとめたものをルールと呼ぶ)を設定することでPBRルータを経由したエンドユーザのトラフィックをPBRルータの近傍のキャッシュサーバへ転送できる。しかし、ルールに記述する転送先は各PBRルータの近傍のキャッシュサーバであるため、PBRルータ毎に異なる。すなわち、各PBRルータの近傍キャッシュサーバを探索する必要がある。しかし、一通信事業者網にはPBRルータが数千台あり、近傍キャッシュサーバの探索には非常に時間がかかるという第三の問題がある。また、PBRルータ毎に設定すべきルールが異なるため、数千台分のPBRルータのルールを手動で作成及び設定しては非常に時間がかかるという第四の問題がある。
 したがって、本発明の目的は、一通信事業者網規模を想定し、エンドユーザに対するキャッシュサーバの割り当て粒度を細かくし、コンテンツプロバイダとの連携が不要であって、PBRルータのルールの作成及び設定を自動化する中継システムを提供することである。
 本発明の代表的な一例を示せば、以下の通りである。すなわち、データを転送する中継装置のルール設定方法であって、前記中継装置は、中継システム内に設けられるものであって、ユーザ装置から送信されたデータを設定されたルールに基づいてデータを転送し、前記中継システムは、前記コンテンツ計算機によって提供されるコンテンツの複製を保持するキャッシュ計算機、及び前記中継装置にルールを設定可能なルール設定モジュールを有し、前記ルール設定方法は、前記ルール設定モジュールが、前記キャッシュ計算機と各中継装置とのネットワーク距離を測定し、前記ルール設定モジュールが、前記中継装置毎に、前記ネットワーク距離が最も近い最近傍キャッシュ計算機を特定し、前記ルール設定モジュールが、前記ユーザ装置から送信されたデータを前記最近傍キャッシュ計算機に転送するためのルールを前記中継装置に設定することを特徴とする。
 本願において開示される発明のうち代表的なものによって得られる効果を簡潔に説明すれば、下記の通りである。すなわち、一通信事業者網規模を想定し、エンドユーザに対するキャッシュサーバの割り当て粒度を細かくし、コンテンツプロバイダとの連携が不要であって、PBRルータのルールの作成及び設定を自動化する中継システムを提供できる。
本発明の実施例1の中継システムの説明図である。 本発明の実施例1のResolve Managerのハードウェア構成図である。 本発明の実施例1の近傍キャッシュ表の説明図である。 本発明の実施例1のキャッシュサーバ一覧表の説明図である。 本発明の実施例1のキャッシュサーバのハードウェア構成図である。 本発明の実施例1のキャッシュサーバ追加処理のシーケンス図である。 本発明の実施例1のルール設定コマンドの説明図である。 本発明の実施例1のルール内容の説明図である。 本発明の実施例1のキャッシュサーバ追加処理のうちResolve Managerによる処理のフローチャートである。 本発明の実施例1のキャッシュサーバ一覧表更新処理のフローチャートである。 本発明の実施例1の近傍キャッシュ表更新処理のフローチャートである。 本発明の実施例1のルール設定処理のフローチャートである。 本発明の実施例1のResolve Agentによるキャッシュサーバ追加/削除要求処理のフローチャートである。 本発明の実施例1のResolve Agentによる距離測定処理のフローチャートである。 本発明の実施例1のネットワーク距離の測定結果の説明図である。 本発明の実施例1のキャッシュサーバ削除処理のシーケンス図である。 本発明の実施例1のキャッシュサーバ削除処理のうちResolve Managerによる処理のフローチャートである。 本発明の実施例1のルール更新処理のシーケンス図である。 本発明の実施例1のルール更新処理のうちResolve Managerによる処理のフローチャートである。 本発明の実施例1のResolve Managerの動作のフローチャートである。 本発明の実施例1のResolve Agentの動作のフローチャートである。 本発明の実施例2の中継システムの説明図である。 本発明の実施例2のResolve Managerのハードウェア構成図である。 本発明の実施例2のキャッシュサーバ一覧表の説明図である。 本発明の実施例2のキャッシュサーバのハードウェア構成図である。 本発明の実施例2のResolve Agentを実装する装置のハードウェア構成図である。 本発明の実施例3の中継システムの説明図である。 本発明の実施例3のResolve Managerのハードウェア構成図である。 本発明の実施例3のPBRルータのハードウェア構成図である。 本発明の実施例3の近傍キャッシュ表の説明図である。 本発明の実施例3のキャッシュサーバ追加処理のシーケンス図である。 本発明の実施例3のキャッシュサーバ追加処理のResolve Managerによる処理のフローチャートである。 本発明の実施例3のキャッシュサーバ追加処理のResolve Agentによる処理のフローチャートである。 本発明の実施例3のキャッシュサーバ削除処理のシーケンス図である。 本発明の実施例3のキャッシュサーバ削除処理のうちResolve Managerによって実行される処理のフローチャートである。 本発明の実施例3のキャッシュサーバ削除処理のうちResolve Agentによって実行される処理のフローチャートである。 本発明の実施例3のルール更新処理のフローチャートである。 本発明の実施例3のキャッシュサーバ削除処理のうちResolve Managerによって実行される処理のフローチャートである。 本発明の実施例3のキャッシュサーバ削除処理のうちResolve Agentによって実行される処理のフローチャートである。 本発明の実施例3のResolve Managerの動作のフローチャートである。 本発明の実施例3のResolve Agentの動作のフローチャートである。 本発明の実施例4の中継システムの説明図である。 本発明の実施例4のResolve Managerのハードウェア構成図である。 本発明の実施例4のResolve Agent一覧表の説明図である。 本発明の実施例4のResolve Agentを実装する計算機のハードウェア構成図である。 本発明の実施例5の初期構築処理のフローチャートである。
 実施例1~実施例5では、PBRルータがエンドユーザからのトラフィックを自身の近傍に存在するキャッシュサーバに転送する中継システムにおいて、PBRルータに設定されるルールが自動的に作成され、PBRルータにルールが自動的に設定される中継システムについて説明する。
 本実施例では、キャッシュサーバ(キャッシュ計算機)とPBRルータとの間のネットワーク距離を測定するResolve Agentがキャッシュサーバに実装される。
 以下、本発明の実施例1について図1~図20を用いて説明する。
 図1は、本発明の実施例1の中継システムの説明図である。
 中継システムは、Webサーバ(ウェブ計算機)1011、Resolve Manager1021、キャッシュサーバA1031及びB1033、ルータA1041~D1044、PBRルータA1051~C1053、並びにPC A1061~D1064を備える。また、キャッシュサーバA1031には、Resolve Agent A1032が実装され、キャッシュサーバB1033には、Resolve Agent B1034が実装される。
 なお、キャッシュサーバA1031及びB1033を総称してキャッシュサーバといい、ルータA1041~D1044を総称してルータといい、PBRルータA1051~C1053を総称してPBRルータといい、PC A1061~D1064を総称してPCといい、Resolve Agent A1032及びB1034を総称してResolve Agentという。
 Webサーバ1011は、エンドユーザが利用するPCに提供するWebコンテンツを保持し、保持しているWebコンテンツをPCに配信するサーバ装置である。Resolve Manager1021は、本発明の中継システムによって実現されるキャッシュのメインコンポーネントであり、Resolve Agentを管理し、キャッシュサーバ追加要求、及びキャッシュサーバ削除要求などを受信する。
 キャッシュサーバは、Webサーバ1011のWebコンテンツの複製を保持し、PBRルータによって転送されたPCからのリクエストに応じて、WebコンテンツをPCに返すサーバ装置である。また、キャッシュサーバ上では、Resolve Agentの機能を有するモジュールが動作する。Resolve Agentは、本発明の中継システムによって実現されるキャッシュシステムのメインコンポーネントであり、Resolve Manager1021と連携して動作し、自身が実装されるキャッシュサーバとPBRルータとの間のネットワーク距離を測定する。
 Webサーバ1011とキャッシュサーバとは、ネットワークによって接続される。ネットワークは、一通信事業者によって提供されるネットワークであり、ルータ及びPBRルータによって構成される。PBRルータは、転送条件と転送先とを含むルールに基づいてトラフィックを転送するルータ装置である。また、ネットワークは、ルータ又はPBRルータに準ずる中継装置によって構成されてもよい。
 また、本発明では、Resolve Agentが、キャッシュサーバとPBRルータとの間のネットワーク距離を測定するために、RTT(Round Trip Time、往復遅延時間)を用いる。なお、RTTは、インターネットプロトコルにおいては、ICMP(Internet Control Message Protocol)を利用することによって測定できる。また、RTTを測定する他のプロトコルも利用することができる。また、ネットワーク距離は、RTTだけでなく、キャッシュサーバとPBRルータとの間の物理的距離であってもよいし、ホップ数であってもよいし、方道のRTTであってもよい。
 図1に示す中継システムにおいて、キャッシュサーバA1031が新たに追加される場合のキャッシュサーバ追加処理の概略を説明する。
 図1に示す(1)では、新たに追加されるキャッシュサーバA1031に実装されるResolve Agent A1032が、Resolve Manager1021に、キャッシュサーバ追加要求を送信する。Resolve Manager1021は、キャッシュサーバ追加要求を受信すると、当該Resolve Agent A1032に各PBRルータA1051~C1053との間のネットワーク距離の測定を指示する。
 図1に示す(2)では、Resolve Agent A1032は、各PBRルータA1051~C1053との間のネットワーク距離を測定する。そして、Resolve Agent A1032は、ネットワーク距離の測定結果をResolve Manager1021に送信する。
 図1に示す(3)及び(4)では、Resolve Manager1021は、測定結果に基づいて、追加されたキャッシュサーバが最近傍キャッシュサーバとなるPBRルータに、PC A1061~1064からのデータを当該最近傍キャッシュサーバに転送するルールを生成し、当該PBRルータに当該ルールを設定する。
 図1に示す(5)では、PBRルータC1053が、最近傍となるキャッシュサーバB1033に、PC D1064からのデータを転送している。
 これによって、PBRルータのルールの生成及び設定を自動化することができる。
 図2は、本発明の実施例1のResolve Manager1021のハードウェア構成図である。
 Resolve Manager1021は、CPU2011、主記憶デバイス2012、及び二次記憶デバイス2013を有する。主記憶デバイス2012には、Resolve Managerモジュール2021、近傍キャッシュ表2022、及びキャッシュサーバ一覧表2023が記憶される。二次記憶デバイス2013には、Resolve Managerモジュールプログラム2031が記憶される。Resolve Managerモジュールプログラム2031は、Resolve Manager1021を制御するプログラムである。また、主記憶デバイス2012に記憶されるResolve Managerモジュール2021は、二次記憶デバイス2013に記憶されたResolve Managerモジュールプログラム2031が主記憶デバイス2012にロードされた状態を示す。CPU2011は、主記憶デバイス2012にロードされたResolve Managerモジュール2021を実行する。
 近傍キャッシュ表2022は、各PBRルータにネットワーク距離が最も近いキャッシュサーバである最近傍キャッシュサーバを管理するための表であり、図3で詳細を説明する。キャッシュサーバ一覧表2023は、ネットワーク上の利用可能なキャッシュサーバを管理するための表であり、図4で詳細を説明する。
 図3は、本発明の実施例1の近傍キャッシュ表2022の説明図である。
 近傍キャッシュ表2022は、上述したように、ネットワークを構成する各PBRルータの最近傍キャッシュサーバを管理するための表である。近傍キャッシュ表2022は、PBRルータIP2041、最近傍キャッシュIP2042、及び距離2043を含む。
 PBRルータIP2041には、ネットワークを構成するPBRルータの識別情報として、PBRルータのIPアドレスが登録される。なお、PBRルータのIPアドレスは、PBRルータ装置固有のものである。
 最近傍キャッシュIP2042には、最近傍キャッシュサーバのIPアドレスが登録される。距離2043には、PBRルータと最近傍キャッシュサーバとの間のネットワーク距離が登録される。
 近傍キャッシュ表2022の主キーは、PBRルータIP2041に登録されたPBRルータのIPアドレスであり、当該IPアドレスによって、近傍キャッシュ表2022の所定の一行を特定可能である。
 図4は、本発明の実施例1のキャッシュサーバ一覧表2023の説明図である。
 キャッシュサーバ一覧表2023は、上述したように、ネットワーク上の利用可能なキャッシュサーバを管理するための表である。
 キャッシュサーバ一覧表2023は、ID2051、及びキャッシュサーバIP2052を含む。ID2051には通し番号が登録される。キャッシュサーバIP2052には、ネットワーク上の利用可能なキャッシュサーバの識別情報として、キャッシュサーバのIPアドレスが登録される。なお、キャッシュサーバのIPアドレスは、キャッシュサーバ装置固有のものである。
 キャッシュサーバ一覧表2023の主キーはID2051であり、ID2051に登録された通し番号によって、キャッシュサーバ一覧表2023の所定の一行を特定可能である。また、キャッシュサーバIP2052に登録されたキャッシュサーバのIPアドレスも、キャッシュサーバ一覧表2023の主キーとなり得る。
 図5は、本発明の実施例1のキャッシュサーバ1031のハードウェア構成図である。
 キャッシュサーバは、CPU2061、主記憶デバイス2062、及び二次記憶デバイス2063を有する。主記憶デバイス2062には、Resolve Agentモジュール2071、及びキャッシュ管理モジュール2072が記憶される。二次記憶デバイス2063には、Resolve Agentモジュールプログラム2081及びキャッシュ管理モジュールプログラム2082が記憶される。また、二次記憶デバイス2063は、キャッシュ管理領域2083を有する。Resolve Agentモジュールプログラム2081は、Resolve Agentが動作するためのプログラムであり、キャッシュ管理モジュールプログラム2082は、Webサーバ1011によって提供されるWebコンテンツの複製を保持し、当該WebコンテンツをPCに送信する機能を有する。キャッシュ管理領域2083は、キャッシュ管理モジュール2072が管理する記憶領域であり、Webサーバ1011によって提供されるWebコンテンツを記憶するための記憶領域である。
 主記憶デバイス2062に記憶されたResolve Agentモジュール2071及びキャッシュ管理モジュール2072は、二次記憶デバイス2063に記憶されたResolve Agentモジュールプログラム2081、及びキャッシュ管理モジュールプログラム2082がロードされた状態を示す。CPU2061は、主記憶デバイス2062に記憶されたResolve Agentモジュール2071及びキャッシュ管理モジュール2072を実行する。
 なお、本実施例のキャッシュ管理モジュールプログラム2082は汎用のものであればよい。
 次に、図6~図14を用いて、ネットワークに新たにキャッシュサーバが追加される場合のキャッシュサーバ追加処理について説明する。
 図6は、本発明の実施例1のキャッシュサーバ追加処理のシーケンス図である。図6では、Resolve Agent C5021を実装したキャッシュサーバC5020がネットワークに追加されるものとする。
 本キャッシュサーバ追加処理は、Resolve Manager1021と追加されるキャッシュサーバC5020のResolve Agent C5021との間で実行される。
 まず、ネットワークに新たに追加されるキャッシュサーバ5020に実装されるResolve Agent5021が、キャッシュサーバ追加要求をResolve Manager1021に送信する(5001)。キャッシュサーバ追加要求には、新たに追加されるキャッシュサーバ5020のIPアドレスが含まれる。
 Resolve Manager1021は、キャッシュサーバ追加要求を受信した場合、受信したキャッシュサーバ追加要求に含まれるキャッシュサーバ5020のIPアドレスをキャッシュサーバ一覧表2023に追加する(5002)。
 次に、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータIP2041に登録された全PBRルータのIPアドレスを取得して、取得したPBRルータのIPアドレスのリストを生成する。そして、Resolve Manager1021は、生成したリストの1行目のIPアドレスによって識別されるPBRルータ(例えば、PBRルータA1051)をPBRルータAとし(5003)、Resolve Agent C5021にPBRルータAとのネットワーク距離測定指示を送信する(5004)。
 Resolve Agent C5021は、PBRルータAとのネットワーク距離測定指示を受信した場合、自身が実装されるキャッシュサーバC5020とPBRルータA(PBRルータA1051)との間のネットワーク距離を測定する。
 そして、Resolve Agent C5021は、PBRルータAとのネットワーク距離の測定結果をResolve Manager1021に送信する(5005)。
 Resolve Manager1021は、測定結果を受信した場合、受信した測定結果が、近傍キャッシュ表2022のPBRルータAに対応するレコードの距離2043に登録された距離よりも小さいか否かを判定する。受信した測定結果が、近傍キャッシュ表2022のPBRルータAに対応するレコードの距離2043に登録された距離よりも小さいと判定された場合、Resolve Manager1021は、当該レコードの最近傍キャッシュIP2042に新たに追加されるキャッシュサーバC5020のIPアドレスを登録し、当該レコードの距離2043に測定結果を登録することによって、近傍キャッシュ表2022を更新する(5006)。また、この場合、Resolve Manager1021は、PCからのトラフィックを最近傍のキャッシュサーバとなるキャッシュサーバC5020に転送するようにPBRルータAにルールを設定する(5007)。
 ステップ5007の処理におけるResolve Manager1021がPBRルータにルールを設定する方式について、図7A及び図7Bを用いて説明する。
 図7Aは、本発明の実施例1のルール設定コマンドの説明図であり、図7Bは、本発明の実施例1のルール内容の説明図である。
 Resolve Manager1021は、PBRルータにアクセスして、コマンドライン経由で、ルールを設定する。
 図7Aに示す4000の「jyouken destination port80」では、図7Bの4020及び4030に示すように、転送先に転送するトラフィックの条件(転送条件)を、宛先ポートが80番であるトラフィックに指定する。
 また、図7Aに示す4010の「tensou c11.c12.c13.c14」で、図7Bに示す4040及び4050に示すように、転送条件と一致するトラフィックの転送先をPBRルータの最近傍キャッシュサーバのIPアドレスに指定する。
 なお、Resolve Manager1021がPBRルータのルールの設定に用いるコマンドは、PBRルータにとって適切なコマンドを使用すればよい。
 なお、図6に示すステップ5006及び5007の処理は、受信した測定結果が近傍キャッシュ表2022のPBRルータAに対応するレコードの距離2043に登録された距離以上であると判定された場合には実行されない。
 次に、Resolve Manager1021は、リストの2行目のIPアドレスによって識別されるPBRルータをPBRルータAに設定する(5008)。そして、Resolve Manager1021は、ステップ5004の処理と同様に、Resolve Agent C5021にPBRルータAとのネットワーク距離測定指示をPBRルータAに送信する(5009)。
 そして、Resolve Manager1021は、測定結果を受信し、受信した測定結果が、近傍キャッシュ表2022のPBRルータAに対応するレコードの距離2043に登録された距離よりも小さいか否かを判定し、小さいと判定された場合にステップ5006及び5007の処理を実行する。
 Resolve Manager1021は、上述した処理を、リストの全ての行のIPアドレスのPBRルータに実行し、キャッシュサーバ追加処理を終了する。
 このようにして、追加されるキャッシュサーバ5020に実装されるResolve Agent C5021の起動をトリガにして、各PBRルータに設定されるルールの生成、及び生成されたルールの各PBRルータへの設定が自動化される。
 なお、Resolve Agentは、キャッシュサーバ追加要求の送信先となるResolve Manager1021のIPアドレス等の識別情報を、起動後に保持している必要がある。本実施例では、Resolve Agentには、Resolve Manager1021のIPアドレスがResolve Agentの起動前に設定されているものとし、Resolve Agentの起動をキャッシュサーバ追加処理のトリガとした。
 キャッシュサーバ追加処理のトリガは、これに限定されず、Resolve Agentの起動後に、外部記憶媒体等を介してResolve Manager1021のIPアドレスがResolve Agentに設定されたことをトリガとしてもよい。また、Resolve Agentの起動後に、Resolve Manager1021のIPアドレスが管理者等によって入力されたことをトリガとしてもよい。
 次に、キャッシュサーバ追加処理のうちResolve Manager1021による処理について、図8~図11を用いて説明する。
 図8は、本発明の実施例1のキャッシュサーバ追加処理のうちResolve Manager1021による処理のフローチャートである。
 Resolve Manager1021は、新たに追加されるキャッシュサーバ(キャッシュサーバC)に実装されるResolve Agentから送信されたキャッシュサーバ追加要求を受信した場合、当該処理の実行を開始する。
 まず、Resolve Manager1021は、受信したキャッシュサーバ追加要求に基づいてキャッシュサーバ一覧表2023を更新するキャッシュサーバ一覧表更新処理を実行する(7001)。キャッシュサーバ一覧表更新処理は図9で詳細を説明する。
 次に、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータIP2041に登録された全PBRルータのIPアドレスを取得して、取得したPBRルータのIPアドレスのリスト(PBRルータ配列)を生成する(7002)。
 次に、Resolve Manager1021は、生成したPBRルータ配列の1行目のIPアドレスによって識別されるPBRルータをPBRルータAとし(7003)、PBRルータ配列の1行目のIPアドレスを削除する(7004)。
 次に、Resolve Manager1021は、PBRルータAと新たに追加されるキャッシュサーバCとのネットワーク距離の測定指示を、キャッシュサーバCに実装されるResolve Agentに送信し、測定結果に基づいて近傍キャッシュ表2022のPBRルータAに対応するレコードを更新する近傍キャッシュ表更新処理を実行する(7005)。近傍キャッシュ表更新処理は、図10で詳細を説明する。
 また、Resolve Manager1021は、ステップ7005の処理で、近傍キャッシュ表2022のPBRルータAに対応するレコードを更新した場合、PCからのトラフィックを最近傍キャッシュサーバに転送するルールをPBRルータAに設定するルール設定処理を実行する(7006)。ルール設定処理は、図11で詳細を説明する。
 次に、Resolve Manager1021は、PBRルータ配列にIPアドレスが存在するか否かを判定する(7007)。
 ステップ7007の処理で、PBRルータ配列にIPアドレスが存在する場合、全てのPBRルータに対して近傍キャッシュ表更新処理を実行していないので、ステップ7003の処理に戻る。
 一方、ステップ7007の処理で、PBRルータ配列にIPアドレスが存在しない場合、全てのPBRルータに対して近傍キャッシュ表更新処理を実行したので、処理を終了する。
 図9は、本発明の実施例1のキャッシュサーバ一覧表更新処理のフローチャートである。
 Resolve Manager1021は、キャッシュサーバ追加要求に含まれる追加されるキャッシュサーバCのIPアドレスをキャッシュサーバ一覧表2023に追加し(6001)、処理を終了する。
 なお、図9のキャッシュサーバ一覧表更新処理は、キャッシュサーバCがネットワークから削除される場合に実行されるキャッシュサーバ削除処理においても実行される。削除されるキャッシュサーバCに実装されるResolve Agentは、キャッシュサーバCのIPアドレスを含むキャッシュサーバ削除要求をResolve Manager1021に送信する。Resolve Manager1021は、受信したキャッシュサーバ削除要求に含まれるキャッシュサーバCのIPアドレスをキャッシュサーバ一覧表2023から削除する。キャッシュサーバ削除処理は、図15及び図16で詳細を説明する。
 図10は、本発明の実施例1の近傍キャッシュ表更新処理のフローチャートである。
 Resolve Manager1021は、追加されるキャッシュサーバCとPBRルータAとの間のネットワーク距離の測定指示を、キャッシュサーバCに実装されるResolve Agentに送信する(6002)。
 Resolve Manager1021は、キャッシュサーバCに実装されるResolve Agentから測定結果(RTT)を受信すると、受信した測定結果が近傍キャッシュ表2022のPBRルータAに対応するレコードの距離より小さいか否かを判定する(6003)。
 ステップ6003の処理で、受信した測定結果が近傍キャッシュ表2022のPBRルータAに対応するレコードの距離より小さいと判定された場合、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータAに対応するレコードの最近傍キャッシュIP2042に追加されたキャッシュサーバCのIPアドレスを登録し、当該レコードの距離2043に受信した測定結果を登録し(6004)、処理を終了する。
 ステップ6003の処理で、受信した測定結果が近傍キャッシュ表2022のPBRルータAに対応するレコードの距離以上であると判定された場合、Resolve Manager1021は、ステップ6004~6007の処理を実行せずに処理を終了する。
 図11は、本発明の実施例1のルール設定処理のフローチャートである。
 Resolve Manager1021は、受信した測定結果が近傍キャッシュ表2022のPBRルータAに対応するレコードの距離より小さいと判定された場合、ssh(Secure Shell)コマンドなどによってPBRルータAにアクセスする(6005)。
 次に、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータAに対応するレコードの最近傍キャッシュIP2042に登録された最近傍キャッシュサーバのIPアドレスを取得する(6006)。そして、Resolve Manager1021は、ステップ6006の処理で取得した最近傍キャッシュサーバのIPアドレスを転送先とし、所定の転送条件を含むルールをPBRルータAに設定し(6007)、処理を終了する。
 なお、ステップ6005の処理では、Resolve Manager1021は、sshコマンドを用いてPBRルータAにアクセスしたが、sshコマンドと同様の機能を有するコマンド又は手段があれば代用してもよい。
 次に、キャッシュサーバ追加処理のうちResolve Agentによる処理について、図12及び図13を用いて説明する。
 図12は、本発明の実施例1のResolve Agentによるキャッシュサーバ追加/削除要求処理のフローチャートである。
 追加されるキャッシュサーバCに実装されるResolve Agentは、自身が起動すると、キャッシュサーバCのIPアドレスを含むキャッシュサーバ追加要求をResolve Manager1021に送信し(8001)、処理を終了する。
 また、キャッシュサーバCに実装されるResolve Agentは、自身の起動を終了する場合、削除するキャッシュサーバCのIPアドレスを含むキャッシュサーバ削除要求をResolve Manager1021に送信し(8001)、処理を終了する。
 なお、キャッシュサーバ追加要求及びキャッシュサーバ削除要求は、Resolve Manager1021がResolve Agentによる追加要求及び削除要求であることを確認できる形式であればよく、追加又は削除するキャッシュサーバをキャッシュサーバ一覧表2023に追加又は削除することを要求する旨がResolve Manager1021に通知可能なメッセージであれば形式は任意である。
 図13は、本発明の実施例1のResolve Agentによる距離測定処理のフローチャートである。
 Resolve Agentは、Resolve Manager1021から、PBRルータAとキャッシュサーバCとの間のネットワーク距離の測定指示を受信した場合、距離測定処理を実行する。
 まず、Resolve Agentは、PBRルータAにpingを発行して(8002)、自身が実装されるキャッシュサーバとPBRルータAとの間のネットワーク距離を測定する。そして、Resolve Agentは、pingの結果取得されたRTTを測定結果としてResolve Manager1021に送信し(8003)、処理を終了する。
 ここで、ステップ8002の処理の具体例について図14を用いて説明する。図14は、本発明の実施例1のネットワーク距離の測定結果の説明図である。
 図14では、Resolve Agentが実装されたキャッシュサーバ(aaa.example.com [a1.a2.a3.a4])からPBRルータA(zzz.example.com [z1.z2.z3.z4])にpingを発行した場合の結果である。
 pingの結果、4回のネットワーク距離の測定結果の平均が11msであるので、Resolve Agentは測定結果として11msを取得する。
 なお、ネットワーク距離を測定するために広く用いられているpingプログラムを用いたが、ネットワーク距離を測定可能であれば他のプログラムを用いてもよい。
 以上によって、ネットワークに新たにキャッシュサーバが追加される場合、Resolve Manager1021は、当該キャッシュサーバが最近傍のキャッシュサーバとなるPBRルータに対するルールを自動的に生成し、生成したルールを当該PBRルータに自動的に設定することができる。
 次に、図15及び図16を用いて、ネットワークからキャッシュサーバが削除される場合のキャッシュサーバ削除処理について説明する。
 図15は、本発明の実施例1のキャッシュサーバ削除処理のシーケンス図である。図15では、Resolve Agent C9021を実装したキャッシュサーバC9020がネットワークから削除されるものとする。
 本キャッシュサーバ削除処理は、Resolve Manager1021と削除されるキャッシュサーバC9020のResolve Agent C9021との間で実行される。
 まず、ネットワークから削除されるキャッシュサーバ9020に実装されるResolve Agent9021が、キャッシュサーバ削除要求をResolve Manager1021に送信する(9001)。キャッシュサーバ削除要求には、削除されるキャッシュサーバ9020のIPアドレスが含まれる。
 Resolve Manager1021は、キャッシュサーバ削除要求を受信した場合、受信したキャッシュサーバ削除要求に含まれるキャッシュサーバ9020のIPアドレスをキャッシュサーバ一覧表2023から削除する(9002)。
 次に、Resolve Manager1021は、近傍キャッシュ表2022の最近傍キャッシュIP2042に削除されるキャッシュサーバ9020のIPアドレスが登録されたレコードのPBRルータIP2041に登録されたPBRルータのIPアドレスを取得して、取得したPBRルータのIPアドレスのリストを生成する。そして、Resolve Manager1021は、生成したリストの1行目のIPアドレスによって識別されるPBRルータ(例えば、PBRルータA1051)をPBRルータAとし(9003)、削除されるキャッシュサーバC9020以外の全てのキャッシュサーバA1031及びB1033に実装されるResolve Agent A1032及びB1034に、PBRルータAとのネットワーク距離測定指示を送信する(9004)。
 Resolve Agent A1032及びB1034は、PBRルータAとのネットワーク距離測定指示を受信した場合、自身が実装されるキャッシュサーバA1031及びB1033とPBRルータA(PBRルータA1051)との間のネットワーク距離を測定する。
 そして、Resolve Agent A1032及びB1034は、PBRルータAとのネットワーク距離の測定結果をResolve Manager1021に送信する(9005)。
 Resolve Manager1021は、各Resolve Agent A1032及びB1034から各キャッシュサーバA1031及びB1033とPBRルータAとの間のネットワーク距離の測定結果を受信した場合、測定結果が最小となる最近傍キャッシュサーバを特定する。そして、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータAに対応するレコードの最近傍キャッシュIP2042に、特定した最近傍キャッシュサーバのIPアドレスを登録し、当該レコードの距離2043に当該最近傍キャッシュサーバの測定結果を登録することによって、近傍キャッシュ表2022を更新する(9006)。また、Resolve Manager1021は、PCからのトラフィックを最近傍キャッシュサーバに転送するようにPBRルータAにルールを設定する(9007)。
 次に、Resolve Manager1021は、リストの2行目以降の全てのIPアドレスによって識別される全てのPBRルータに対して、ステップ9004~9007の処理を実行する。
 図16は、本発明の実施例1のキャッシュサーバ削除処理のうちResolve Managerによる処理のフローチャートである。
 Resolve Manager1021は、削除されるキャッシュサーバ(キャッシュサーバC)に実装されるResolve Agentから送信されたキャッシュサーバ削除要求を受信した場合、当該処理の実行を開始する。
 まず、Resolve Manager1021は、受信したキャッシュサーバ削除要求に基づいてキャッシュサーバ一覧表2023を更新するキャッシュサーバ一覧表更新処理を実行する(10001)。キャッシュサーバ一覧表更新処理では、図9で説明したように、Resolve Manager1021は、受信したキャッシュサーバ削除要求に含まれるキャッシュサーバのIPアドレスをキャッシュサーバ一覧表2023から削除する。
 次に、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータIP2041の最近傍キャッシュIP2042に登録されたIPアドレスがキャッシュサーバ削除要求に含まれるIPアドレスと一致する全てのレコードのPBRルータIP2041に登録されたPBRルータのIPアドレスを取得して、取得したPBRルータのIPアドレスのリスト(PBRルータ配列)を生成する(10002)。
 次に、Resolve Manager1021は、生成したPBRルータ配列の1行目のIPアドレスによって識別されるPBRルータをPBRルータAとし(10003)、PBRルータ配列の1行目のIPアドレスを削除する(10004)。
 次に、Resolve Manager1021は、PBRルータAと削除されるキャッシュサーバ以外の全キャッシュサーバとのネットワーク距離の測定指示を、これらのキャッシュサーバに実装されるResolve Agentに送信し、測定結果に基づいて近傍キャッシュ表2022のPBRルータAに対応するレコードを更新する近傍キャッシュ表更新処理を実行する(10005)。
 キャッシュサーバ削除処理における近傍キャッシュ表更新処理について、図10に示すキャッシュサーバ追加処理における近傍キャッシュ表更新処理と異なる点について説明する。
 図10に示すステップ6002の処理では、Resolve Manager1021は、削除されるキャッシュサーバ以外の全てのキャッシュサーバに実装されるResolve Agentに、PBRルータAとの間のネットワーク距離の測定指示を送信する。
 また、図10に示すステップ6003及び6004の処理では、Resolve Manager1021は、各Resolve Agentから受信した測定結果に基づいて、PBRルータAとのネットワーク距離が最小となる最近傍キャッシュサーバを特定し、近傍キャッシュ表2022のPBRルータAに対応するレコードの最近傍キャッシュIP2042に特定した最近傍キャッシュサーバのIPアドレスを登録し、当該レコードの距離2043に特定した最近傍キャッシュサーバに実装されたResolve Agentから送信された測定結果を登録する。
 次に、Resolve Manager1021は、PCからのトラフィックを最近傍キャッシュサーバに転送するルールをPBRルータAに設定するルール設定処理を実行する(10006)。ルール設定処理は、図11に示すルール設定処理と同じ処理である。
 次に、Resolve Manager1021は、PBRルータ配列にIPアドレスが存在するか否かを判定する(10007)。
 ステップ10007の処理で、PBRルータ配列にIPアドレスが存在する場合、全てのPBRルータに対して近傍キャッシュ表更新処理を実行していないので、ステップ10003の処理に戻る。
 一方、ステップ10007の処理で、PBRルータ配列にIPアドレスが存在しない場合、全てのPBRルータに対して近傍キャッシュ表更新処理を実行したので、処理を終了する。
 これによって、削除されるキャッシュサーバが最近傍キャッシュサーバとなっていたPBRルータの最近傍キャッシュサーバが、削除されるキャッシュサーバ以外のキャッシュサーバのうち最もネットワーク距離が小さいキャッシュサーバに更新され、削除されるキャッシュサーバが最近傍キャッシュサーバとなっていたPBRルータのルールを新たに特定された最近傍キャッシュサーバに転送するように設定できる。
 次に、全てのPBRルータのルールを更新するためのルール更新処理について、図17及び図18を用いて説明する。ルール更新処理は、キャッシュサーバ及びPBRルータの少なくとも一方に障害を検出した場合(ネットワークに障害を検出した場合)に実行されてもよいし、所定時間毎に実行されてもよい。また、ルール更新処理は、各PBRルータと全てのキャッシュサーバとのネットワーク距離が測定され、測定結果に基づいて各PBRルータの最近傍キャッシュサーバが更新される。
 図17は、本発明の実施例1のルール更新処理のシーケンス図である。
 まず、Resolve Manager1021は、近傍キャッシュ表2022の全PBRルータのIPアドレスを含むリストを生成し、生成したリストの1行目のIPアドレスのPBRルータをPBRルータAとする(11001)。ステップ11001の処理は、図6に示す5003の処理と同じ処理である。
 次に、Resolve Manager1021は、全てのキャッシュサーバのResolve AgentにPBRルータAとのネットワーク距離測定指示を送信する(11002)。Resolve Agentは、PBRルータAとのネットワーク距離測定指示を受信した場合、PBRルータAとの間のネットワーク距離を測定する。
 そして、Resolve Agentは、PBRルータAとのネットワーク距離の測定結果をResolve Manager1021に送信する(11003)。
 Resolve Manager1021は、測定結果を受信した場合、受信した測定結果のうちネットワーク距離が最小となるResolve Agentを実装するキャッシュサーバを、PBRルータAの最近傍キャッシュサーバとして特定する。そして、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータAに対応するレコードの最近傍キャッシュIP2042に当該キャッシュサーバのIPアドレスを登録し、当該レコードの距離2043に当該キャッシュサーバに実装されたResolve Agentからの測定結果を登録することによって、近傍キャッシュ表2022を更新する(11004)。
 次に、Resolve Manager1021は、PCからのトラフィックを最近傍キャッシュサーバに転送するようにPBRルータAにルールを設定する(11005)。
 ステップ11001~11006の処理を全てのPBRルータに実行する。
 図18は、本発明の実施例1のルール更新処理のうちResolve Manager1021による処理のフローチャートである。
 図18に示すステップ12001~12006の処理は、図8に示す7002~7007の処理に対応する。ステップ7005の処理では、追加されるキャッシュサーバとPBRルータAとの間のネットワーク距離の測定を指示するのに対して、ステップ12004の処理では、全てのキャッシュサーバとPBRルータAとの間のネットワーク距離の測定を指示する。
 まず、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータIP2041を参照し、PBRルータ配列を生成する(12001)。ステップ12001の処理はステップ7002の処理と同じである。
 次に、Resolve Manager1021は、生成したPBRルータ配列の1行目のIPアドレスによって識別されるPBRルータをPBRルータAとし(12002)、PBRルータ配列の1行目のIPアドレスを削除する(12003)。ステップ12002及び12003の処理は、ステップ7003及び7004の処理と同じである。
 次に、Resolve Manager1021は、PBRルータAと全てのキャッシュサーバとのネットワーク距離の測定指示を、全てのキャッシュサーバに実装されるResolve Agentに送信し、測定結果に基づいてPBRルータAの最近傍キャッシュサーバを特定し、近傍キャッシュ表2022のPBRルータAに対応するレコードを更新する近傍キャッシュ表更新処理を実行する(12004)。
 近傍キャッシュ表更新処理について説明する。
 まず、Resolve Manager1021は、キャッシュサーバ一覧表2023に登録された全てのキャッシュサーバに実装されたResolve Agentに対して、PBRルータAとのネットワーク距離の測定指示を送信する。
 Resolve Manager1021は、全てのキャッシュサーバに実装されるResolve Agentから測定結果を受信すると、受信した測定結果が最小となるキャッシュサーバを、PBRルータAの最近傍キャッシュサーバとして特定する。
 次に、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータAに対応するレコードの最近傍キャッシュIP2042に登録されたキャッシュサーバのIPアドレスと、特定した最近傍キャッシュサーバのIPアドレスとが一致するか否かを判定する。
 最近傍キャッシュIP2042に登録されたキャッシュサーバのIPアドレスと、特定した最近傍キャッシュサーバのIPアドレスとが一致しない場合、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータAに対応するレコードの最近傍キャッシュIP2042に特定した最近傍キャッシュサーバのIPアドレスを登録し、当該レコードの距離2043に特定した最近傍キャッシュサーバの測定結果を登録し、処理を終了する。
 一方、最近傍キャッシュIP2042に登録されたキャッシュサーバのIPアドレスと、特定した最近傍キャッシュサーバのIPアドレスとが一致する場合、そのまま処理を終了してもよいし、Resolve Manager1021が、近傍キャッシュ表2022のPBRルータAに対応するレコードの距離2043に特定した最近傍キャッシュサーバの測定結果を登録し、処理を終了してもよい。
 このように、近傍キャッシュ表更新処理では、PBRルータAの最近傍キャッシュサーバが最新の最近傍キャッシュサーバに更新される。
 図18に戻って、Resolve Manager1021は、ステップ12004の処理で近傍キャッシュ表更新処理を実行した後、当該近傍キャッシュ表更新処理でPBRルータAの最近傍キャッシュサーバが更新された場合、PCからのトラフィックを更新後の最近傍キャッシュサーバに転送するルールをPBRルータAに設定するルール設定処理を実行する(12005)。ステップ12005の処理は、ステップ7004の処理と同じである。
 次に、Resolve Manager1021は、PBRルータ配列にIPアドレスが存在するか否かを判定する(12006)。
 ステップ12006の処理で、PBRルータ配列にIPアドレスが存在する場合、全てのPBRルータに対して近傍キャッシュ表更新処理を実行していないので、ステップ12002の処理に戻る。
 一方、ステップ12006の処理で、PBRルータ配列にIPアドレスが存在しない場合、全てのPBRルータに対して近傍キャッシュ表更新処理を実行したので、処理を終了する。
 以上によって、所定のタイミング(所定時間毎、又はネットワークに障害を検出した場合)で、全てのPBRルータの最近傍キャッシュサーバを最新の最近傍キャッシュサーバに更新することができる。
 実施例1の最後に、上述したResolve Manager1021の動作及びResolve Agentの動作について、図19及び図20を用いて説明する。
 図19は、本発明の実施例1のResolve Manager1021の動作のフローチャートである。
 Resolve Manager1021に電源が投入され、Resolve Manager1021が起動すると(13001)、Resolve Manager1021は、近傍キャッシュ表2022のPBRルータIP2041にネットワークを構成するPBRルータのIPアドレスを登録する(13002)。ステップ13002の処理で近傍キャッシュ表2022に登録されるPBRルータのIPアドレスは、管理者等によって入力されてもよいし、設定ファイルに記述されていてもよい。
 次に、Resolve Manager1021のCPU2011は、二次記憶デバイス2013に記憶されたResolve Managerモジュールプログラム2031を主記憶デバイス2012にロードし、ロードされたResolve Managerモジュールプログラム2031を実行することによって、Resolve Managerモジュール2021を起動する(13003)。
 Resolve Manager1021は、キャッシュサーバ追加要求を受信したか否かを判定する(13004)。ステップ13004の処理で、キャッシュサーバ追加要求を受信したと判定された場合、Resolve Manager1021は、図8に示すキャッシュサーバ追加処理を実行し(13005)、ステップ13004の処理に戻る。
 ステップ13004の処理で、キャッシュサーバ追加要求を受信していないと判定された場合、Resolve Manager1021は、キャッシュサーバ削除要求を受信したか否かを判定する(13006)。
 ステップ13006の処理で、キャッシュサーバ削除要求を受信したと判定された場合、Resolve Manager1021は、図16に示すキャッシュサーバ削除処理を実行し(13007)、ステップ13004の処理に戻る。
 ステップ13006の処理で、キャッシュサーバ削除要求を受信していないと判定された場合、Resolve Manager1021は、ネットワークに障害が発生したことを検出したか否かを判定する(13008)。
 ステップ13008の処理で、ネットワークに障害が発生したことを検出したと判定された場合、Resolve Manager1021は、図18に示すルール更新処理を実行し(13009)、ステップ13004の処理に戻る。
 ステップ13008の処理で、ネットワークに障害が発生したことを検出していないと判定された場合、ステップ13004の処理に戻る。
 つまり、Resolve Manager1021は、ステップ13003の処理の実行後、処理依頼を受け付けるまで待機し、処理依頼を受け付けると、処理依頼に応じた処理を実行する。
 ここで、Resolve Manager1021のネットワークの障害検出について説明する。
 ネットワークの障害とは、PBRルータ及びキャッシュサーバ等の装置の故障の他に、ネットワーク構成の変化も含む。
 Resolve Manager1021が装置の故障をネットワークの障害として検出する方法としては、Resolve Manager1021がResolve Agent及びPBRルータにpingコマンドを所定時間毎に発行し、応答がない場合にネットワークの障害を検出する方法がある。Resolve Agent及びPBRルータの生存確認のために、pingコマンドを用いたが、他の手段があれば他の手段を用いてもよい。
 また、Resolve Manager1021がネットワーク構成の変化をネットワークの障害として検出する方法としては、Resolve Manager1021が、Resolve Agent又はPBRルータにtracerouteコマンドを発行し、Resolve Manager1021からResolve Agent又はPBRルータへの経路上のルータの数又は当該ルータの識別情報を記憶し、tracerouteコマンドによって取得されたルータの数又はルータの識別情報が記憶していた情報と異なる場合、ネットワーク構成に変化があったので、ネットワーク障害として検出する方法がある。なお、経路に関する情報を取得するために、tracerouteコマンドを用いたが、他の手段があれば他の手段を用いてもよい。
 さらに、Resolve Manager1021が適当なWebサーバからコンテンツをダウンロードする時間を計測し、当該時間が閾値以上である場合にネットワークの障害を検出してもよい。
 また、Resolve Manager1021は、既存の障害検出システムを利用して、当該障害検出システムのアラートによってネットワーク障害を検出してもよい。
 また、ネットワークを構成する装置の故障及びネットワーク構成の変化を検出できれば、他の既存の障害検出装置及び障害検出方法などを用いてもよい。
 図20は、本発明の実施例1のResolve Agentの動作のフローチャートである。
 まず、Resolve Agentを実装するキャッシュサーバに電源が投入され、Resolve Agentが起動すると(14001)、キャッシュサーバのCPU2061は、二次記憶デバイス2063に記憶されたResolve Agentモジュールプログラム2081を主記憶デバイス2062にロードし、ロードされたResolve Agentモジュールプログラム2081を実行することによって、Resolve Agentモジュール2071を起動する(14002)。
 そして、Resolve Agentは、起動されたキャッシュサーバのIPアドレスを含むキャッシュサーバ追加要求をResolve Manager1021に送信する(14003)。
 次に、Resolve Agentは、Resolve Manager1021からネットワーク距離の測定指示を受信したか否かを判定する(14004)。
 ステップ14004の処理で、ネットワーク距離の測定指示を受信したと判定された場合、Resolve Agentは、指示されたPBRルータとのネットワーク距離を測定するネットワーク距離測定処理を実行し(14005)、ステップ14004の処理に戻る。
 一方、ステップ14004の処理で、ネットワーク距離の測定指示を受信していないと判定された場合、Resolve Agentは、キャッシュサーバの起動が終了するか否かを判定する(14006)。
 ステップ14006の処理で、キャッシュサーバの起動が終了すると判定された場合、キャッシュサーバがネットワークから削除されることになるので、キャッシュサーバ削除要求をResolve Manager1021に送信し(14007)、Resolve Agentモジュール2071を停止する(14008)。
 一方、ステップ14006の処理で、キャッシュサーバの起動が終了しないと判定された場合、ステップ14004の処理に戻る。
 以上によって、本実施例によれば、エンドユーザからのトラフィックを最近傍のキャッシュサーバに転送するPBRルータのルールを自動的に生成することができ、当該ルールをPBRルータに自動的に設定することができる。
 実施例2は、実施例1のResolve Agentをキャッシュサーバ上で動作させず、キャッシュサーバの近くに存在する計算機上で動作させた場合の実施例である。
 ここで、キャッシュサーバの近くに存在する計算機とは、キャッシュサーバに直接接続される計算機や、キャッシュサーバが接続されたハブ装置と同一のハブ装置に接続される計算機のことである。すなわち、キャッシュサーバ及びルータ装置を介さずに接続される計算機のことである。
 Resolve Agentがキャッシュサーバ上で動作せず、キャッシュサーバと異なる装置で動作する場合、Resolve Agentとキャッシュサーバとはそれぞれ異なるIPアドレスを有する。このため、Resolve Manager1021は、Resolve Agentを管理するために、キャッシュサーバのIPアドレスだけでなくResolve AgentのIPアドレスも保持する必要がある。また、Resolve AgentがResolve Manager1021に送信するキャッシュサーバ追加要求は、自身が実装される装置のIPアドレスと、当該装置の近くに存在するキャッシュサーバのIPアドレスとを含む必要がある。
 したがって、本実施例の実施例1からの主な変更点は以下の三つである。
 第一の変更点は、キャッシュサーバ上でResolve Agentが動作しない点である。第二の変更点は、キャッシュサーバ一覧表が、キャッシュサーバと、キャッシュサーバの近くに存在するResolve Agentと、の関係を保持する点である。第三の変更点は、キャッシュサーバ追加要求に、Resolve AgentのIPアドレスと、当該Resolve Agentが実装される装置の近くに存在するキャッシュサーバのIPアドレスとが含まれる点である。
 以下、本発明の実施例2について図21~図25を用いて説明する。
 図21は、本発明の実施例2の中継システムの説明図である。図21では、実施例1の図1に示す中継システムと同じ構成については、同じ符号を付与し、説明を省略する。
 Webサーバ1011、ルータA1041~D1044、及びPBRルータA1051~C1053は、図1と同じである。
 Resolve Manager15021は、上述したように、キャッシュサーバ一覧表が実施例1と異なり、詳細は図22及び図23で説明する。
 キャッシュサーバA15031及びB15033は、Webコンテンツの複製を保持し、エンドユーザからのリクエストに応じて当該Webコンテンツを返し、実施例1と異なり、Resolve Agentはキャッシュサーバ上で動作しない。なお、キャッシュサーバの詳細は図24で説明する。
 また、Resolve Agent A15032は、キャッシュサーバA15031の近くに存在する装置で動作し、Resolve Agent B15034は、キャッシュサーバB15033の近くに存在する装置で動作する。なお、Resolve Agentを実装する装置の詳細は図25で説明する。
 本実施例では、Resolve Agentがキャッシュサーバと別の装置で動作するので、Resolve AgentによるPBRルータとのネットワーク距離の測定結果は、キャッシュサーバとPBRルータとの間のネットワーク距離ではないが、当該装置はキャッシュサーバの近くに存在するため、キャッシュサーバとPBRルータとの間のネットワーク距離として扱う。
 図21に示す中継システムにおいて、キャッシュサーバA15031が新たに追加される場合のキャッシュサーバ追加処理の概略を説明する。
 図21に示す(1)では、新たに追加されるキャッシュサーバA1031の近くに存在するResolve Agent A15032が、Resolve Manager15021に、キャッシュサーバ追加要求を送信する。Resolve Manager15021は、キャッシュサーバ追加要求を受信すると、当該Resolve Agent A15032に各PBRルータA1051~C1053との間のネットワーク距離の測定を指示する。
 図21に示す(2)では、Resolve Agent A15032は、各PBRルータA1051~C1053との間のネットワーク距離を測定する。そして、Resolve Agent A15032は、ネットワーク距離の測定結果をResolve Manager15021に送信する。
 図21に示す(3)及び(4)では、Resolve Manager15021は、測定結果に基づいて、追加されたキャッシュサーバが最近傍キャッシュサーバとなるPBRルータに、PC A1061~1064からのデータを当該最近傍キャッシュサーバに転送するルールを生成し、当該PBRルータに当該ルールを設定する。
 図21に示す(5)では、PBRルータC1053が、最近傍となるキャッシュサーバB1033に、PC D1064からのデータを転送している。
 これによって、PBRルータのルールの生成及び設定を自動化することができる。
 本実施例のルール更新処理は、実施例1と同じであるが、本実施例のキャッシュサーバ追加処理及びキャッシュサーバ削除処理は、実施例1と異なる。図22~図25でResolve Manager1021、キャッシュサーバ一覧表、キャッシュサーバ、及びResolveAgentの構成について説明し、その後、本実施例のキャッシュサーバ追加処理及びキャッシュサーバ削除処理について説明する。
 図22は、本発明の実施例2のResolve Manager15021のハードウェア構成図である。図22では、実施例1の図2に示すResolve Manager1021と同じ構成については、同じ符号を付与し、説明を省略する。
 Resolve Manager15021は、CPU2011、主記憶デバイス2012、及び二次記憶デバイス2013を有する。主記憶デバイス2012には、Resolve Managerモジュール2021、近傍キャッシュ表2022、及びキャッシュサーバ一覧表16023が記憶される。二次記憶デバイス2013には、Resolve Managerモジュールプログラム2031が記憶される。本実施例のResolve Manager15021と実施例1のResolve Manager1021は、キャッシュサーバ一覧表が異なるだけであり、その他の構成は同じである。
 図23は、本発明の実施例2のキャッシュサーバ一覧表16023の説明図である。図23では、実施例1の図4に示すキャッシュサーバ一覧表2023と同じ構成については、同じ符号を付与し、説明を省略する。
 キャッシュサーバ一覧表16023は、ID2051、キャッシュサーバIP2052、及びResolve Agent IP16041を含む。
 ID2051及びキャッシュサーバIP2052は、実施例1のキャッシュサーバ一覧表2023と同じである。
 Resolve Agent IP16041は、同じレコードのキャッシュサーバIP2052に登録されたIPアドレスによって識別されるキャッシュサーバの近くに存在する装置であって、Resolve Agentを実装する装置のIPアドレスが登録される。
 また、Resolve Agent IP16041に登録されたIPアドレスは、キャッシュサーバ一覧表16023の主キーとなり得る。
 図24は、本発明の実施例2のキャッシュサーバ15031のハードウェア構成図である。図24では、実施例1の図5に示すキャッシュサーバ1031と同じ構成については、同じ符号を付与し、説明を省略する。
 本実施例のキャッシュサーバ15031は、Resolve Agentを動作させない点で実施例1のキャッシュサーバ1031と異なる。
 キャッシュサーバ15031は、CPU2061、主記憶デバイス2062、及び二次記憶デバイス2063を有する。主記憶デバイス2062には、キャッシュ管理モジュール2072が記憶され、Resolve Agentモジュール2071は記憶されない。二次記憶デバイス2063には、キャッシュ管理モジュールプログラム2082が記憶され、Resolve Agentモジュールプログラム2081は記憶されない。また、二次記憶デバイス2063は、キャッシュ管理領域2083を有する。
 図25は、本発明の実施例2のResolve Agentを実装する装置のハードウェア構成図である。
 Resolve Agentを実装する装置は、CPU16081、主記憶デバイス16082、及び二次記憶デバイス16083を有する。
 主記憶デバイス16082にはResolve Agentモジュール16091が記憶される。二次記憶デバイス16083にはResolve Agentモジュールプログラム16101が記憶される。主記憶デバイス16082に記憶されるResolve Agentモジュール16091は、二次記憶デバイス16083に記憶されたResolve Agentモジュールプログラム16101が主記憶デバイス16082にロードされた状態を示す。CPU16081は、主記憶デバイス16082にロードされたResolve Agentモジュール16091を実行する。
 次に、本実施例のキャッシュサーバ追加処理及びキャッシュサーバ削除処理について説明する。
 Resolve Agentを実装する装置は、自身のIPアドレスと自身の近くに存在するキャッシュサーバのIPアドレスとを含むキャッシュサーバ追加要求を送信する。当該装置の近くに存在するキャッシュサーバのIPアドレスは、例えば、Resolve Agentを実装する装置に事前に設定されているものとする。なお、キャッシュサーバ削除要求も、同様に、Resolve Agentを実装する装置のIPアドレスと、当該装置の近くに存在するキャッシュサーバのIPアドレスとを含む。
 また、Resolve Manager15021がキャッシュサーバ追加要求又はキャッシュサーバ削除要求を受信した場合のキャッシュサーバ一覧表16023の更新処理が実施例1と異なる。
 Resolve Manager15021は、キャッシュサーバ追加要求を受信した場合、キャッシュサーバ一覧表16023に新たにレコードを追加し、追加したレコードのキャッシュサーバIP2052に、受信したキャッシュサーバ追加要求に含まれるキャッシュサーバのIPアドレスを登録し、追加したレコードのResolve Agent IP16041に、受信したキャッシュサーバ追加要求に含まれるResolve Agentを実装する装置のIPアドレスを登録する。
 Resolve Manager15021は、キャッシュサーバ削除要求を受信した場合、キャッシュサーバ削除要求に含まれるResolve Agentを実装する装置のIPアドレス及びキャッシュサーバのIPアドレスと一致するキャッシュサーバ一覧表16023のレコードを特定し、特定したレコードを削除する。
 以上のように、キャッシュサーバの近くに存在する装置に、Resolve Agentを実装することによって、Resolve Agentをキャッシュサーバ上ではなく独立した他の装置上で動作させることができる。
 実施例3は、Resolve AgentをPBRルータ上で動作させる実施例である。この場合、PBRルータ上で動作するResolve Agentが当該PBRルータの最近傍キャッシュサーバの特定処理、近傍キャッシュ表更新処理、及びルール設定処理を実行し、実施例1及び2と異なり、Resolve Manager17021は、Resolve Agentからのネットワーク距離の測定結果を集計しなくてもよい。また、本実施例では、PBRルータにResolve Agentが実装されるので、Resolve AgentのIPアドレスとPBRルータのIPアドレスとが同一となる。このため、本実施例では、Resolve Manager17021、Resolve Agent、及びPBRルータの構成及び動作が変更されている。
 以下、本発明の実施例3について図26~図40を用いて説明する。
 図26は、本発明の実施例3の中継システムの説明図である。図26では、実施例1の図1に示す中継システムと同じ構成については、同じ符号を付与し、説明を省略する。
 Webサーバ1011、及びルータA1041~D1044は、図1と同じである。Resolve Manager17021は、キャッシュサーバ追加要求及びキャッシュサーバ削除要求を受信し、キャッシュサーバ追加要求を受信した場合には、キャッシュサーバ追加指示をPBRルータに実装されたResolve Agentに送信し、キャッシュサーバ削除要求を受信した場合には、キャッシュサーバ削除指示をPBRルータに実装されたResolve Agentに送信する。Resolve Manager17021の詳細は図27で説明する。
 キャッシュサーバA17031及びB17032は、Webコンテンツの複製を保持し、エンドユーザからのリクエストに応じて当該Webコンテンツを返し、実施例1と異なり、Resolve Agentはキャッシュサーバ上で動作しない。
 PBRルータA17051、B17053、及びC17055は、Resolve Agent A17052、B17054、及びC17056を実装する。PBRルータの詳細は図29で説明する。
 図26に示す中継システムにおいて、キャッシュサーバA17031が新たに追加される場合のキャッシュサーバ追加処理の概略を説明する。
 図26に示す(1)では、新たに追加されるキャッシュサーバA17031が、Resolve Manager17021に、キャッシュサーバ追加要求を送信する。
 図26に示す(2)では、Resolve Manager17021は、キャッシュサーバ追加要求を受信すると、各PBRルータA17051~17055に実装されたResolve Agent A~C17051~17055に、キャッシュサーバ追加指示を送信する。
 図26に示す(3)では、Resolve Agent A~C17051~17055は、追加されたキャッシュサーバ17031との間のネットワーク距離を測定し、当該キャッシュサーバ17031が最近傍キャッシュサーバであれば、PC A1061~D1064からのデータを当該キャッシュサーバ17031に転送するルールを生成し、自身を実装するPBRルータに設定する。
 これによって、PBRルータのルールの生成及び設定を自動化することができる。
 なお、本実施例では、中継システムの全体構成、Resolve Manager17021、Resolve Agent、及びPBRルータが変更されており、これに伴って、キャッシュサーバ追加処理、キャシュサーバ削除処理、及びルール更新処理が変更されている。キャッシュシステムの全体構成、Resolve Manager装置、Resolve Agent装置、PBRルータの詳細構成とキャッシュサーバ追加処理、キャッシュサーバ削除処理、及びルール更新処理について以下で説明する。
 図27は、本発明の実施例3のResolve Manager17021のハードウェア構成図である。
 Resolve Manager17021は、CPU2011、主記憶デバイス2012、及び二次記憶デバイス2013を有する。主記憶デバイス2012には、Resolve Managerモジュール18021が記憶され、実施例1及び2と異なり、近傍キャッシュ表、及びキャッシュサーバ一覧表は記憶されない。二次記憶デバイス2013には、Resolve Managerモジュールプログラム18031が記憶される。
 図28は、本発明の実施例3のPBRルータのハードウェア構成図である。
 PBRルータは、CPU18061、主記憶デバイス18062、及び二次記憶デバイス18063を有する。主記憶デバイス18062には、Resolve Agentモジュール18071、近傍キャッシュ表18072、ルータ管理モジュール18073、及びキャッシュサーバ一覧表18074が記憶される。二次記憶デバイス18063には、Resolve Agentモジュールプログラム18081及びルータ管理モジュールプログラム18082が記憶される。
 Resolve Agentモジュールプログラム18081は、Resolve Agentが動作するためのプログラムであり、ルータ管理モジュールプログラム18082は、PBRルータの動作を管理するためのプログラムである。主記憶デバイス2062に記憶されたResolve Agentモジュール18071及びルータ管理モジュール18073は、二次記憶デバイス18063に記憶されたResolve Agentモジュールプログラム18081、及びルータ管理モジュールプログラム18082がロードされた状態を示す。CPU2061は、主記憶デバイス2062に記憶されたResolve Agentモジュール18071及びルータ管理モジュール18073を実行する。
 近傍キャッシュ表18072は、自身(PBRルータ)の最近傍キャッシュサーバを保持するためのデータであり、詳細は図29で説明する。キャッシュサーバ一覧表18074は、ネットワークに存在し、利用可能なキャッシュサーバを保持するためのデータであり、実施例1のキャッシュサーバ一覧表2023と同じである。
 図29は、本発明の実施例3の近傍キャッシュ表18072の説明図である。図29では、実施例1の図3に示す近傍キャッシュ表2022と同じ構成は、同じ符号を付与し、説明を省略する。
 近傍キャッシュ表18072は、PBRルータIP2041、最近傍キャッシュIP2042、及び距離2043を含む。
 本実施例の近傍キャッシュ表18072は、一つのPBRルータ(自身)の最近傍キャッシュサーバを保持するので、近傍キャッシュ表18072のレコードは一つである。
 なお、本実施例では、ルータ管理モジュールプログラム18082は汎用のものであればよい。
 次に、図30~図32を用いて、キャッシュサーバ追加処理について説明する。
 図30は、本発明の実施例3のキャッシュサーバ追加処理のシーケンス図である。
 本実施例のキャッシュサーバ追加処理は、Resolve Manager17021と、追加されるキャッシュサーバA17031と、全てのResolve Agentとの間で実行される。
 まず、ネットワークに新たに追加されるキャッシュサーバA17031が、キャッシュサーバ追加要求をResolve Manager1021に送信する(19001)。キャッシュサーバ追加要求には、新たに追加されるキャッシュサーバA17031のIPアドレスが含まれる。
 Resolve Manager17021は、キャッシュサーバ追加要求を受信した場合、全てのPBRルータ(図30では、PBRルータ17051、17053)に実装されるResolve Agent(17052、17054)に、キャッシュサーバ追加指示を送信する(19002)。キャッシュサーバ追加指示には、新たに追加されるキャッシュサーバA17031のIPアドレスが含まれる。
 Resolve Agent17052及び17054は、キャッシュサーバ追加指示を受信した場合、キャッシュサーバ一覧表18074に、受信したキャッシュサーバ追加指示に含まれるキャッシュサーバのIPアドレスを追加する(19003)。
 次に、Resolve Agent17052及び17054は、自身が実装されるPBRルータ17051及び17053と新たに追加されるキャッシュサーバA17031との間のネットワーク距離を測定する(19004)。そして、Resolve Agent17052及び17054は、測定結果が近傍キャッシュ表18072の距離2043に登録された距離よりも小さいか否かを判定する。測定結果が近傍キャッシュ表18072の距離2043に登録された距離よりも小さいと判定された場合、Resolve Agent17052及び17054は、近傍キャッシュ表18072の最近傍キャッシュIP2042に新たに追加されるキャッシュサーバA17031のIPアドレスを登録し、距離2043に測定結果を登録することによって、近傍キャッシュ表2022を更新する(19005)。また、この場合、Resolve Agent17052及び17054は、PCからのトラフィックを最近傍キャッシュサーバとなるキャッシュサーバA17031に転送するようにルータ19101及び19102にルールを設定する(19006)。
 また、Resolve Manager17021は、キャッシュサーバB17032から送信されたキャッシュサーバ追加要求を受信した場合(19007)、キャッシュサーバ追加指示を全てのResolve Agent17052及び17054が実装されたPBRルータA17051及び17053に送信する(19008)。Resolve Agent17052及び17054は、キャッシュサーバ追加指示を受信すると、ステップ19003~19006を実行する。
 このようにして、追加されるキャッシュサーバの起動をトリガにして、各PBRルータに設定されるルールの生成、及び生成されたルールの各PBRルータへの設定が自動化される。
 なお、キャッシュサーバは、キャッシュサーバ追加要求の送信先となるResolve Manager17021のIPアドレス等の識別情報を、起動後に保持している必要がある。本実施例では、キャッシュサーバには、Resolve Manager17021のIPアドレスがResolve Agentの起動前に設定されているものとし、Resolve Agentの起動をキャッシュサーバ追加処理のトリガとした。
 キャッシュサーバ追加処理のトリガは、これに限定されず、キャッシュサーバの起動後に、外部記憶媒体等を介してResolve Manager17021のIPアドレスがResolve Agentに設定されたことをトリガとしてもよい。また、キャッシュサーバの起動後に、Resolve Manager17021のIPアドレスが管理者等によって入力されたことをトリガとしてもよい。
 図31は、本発明の実施例3のキャッシュサーバ追加処理のResolve Manager17021による処理のフローチャートである。
 Resolve Manager17021は、新たに追加されたキャッシュサーバCから送信されたキャッシュサーバ追加要求を受信した場合に当該処理の実行を開始する。
 Resolve Manager17021は、キャッシュサーバ追加要求を受信すると、全てのResolve Agentを実装したPBRルータにキャッシュサーバ追加指示を送信し(20001)、処理を終了する。
 ここで、キャッシュサーバ追加指示は、Resolve Agent17052及び17054がResolve Manager17021によるキャッシュサーバの追加指示であることが確認できる形式であり、新たに追加されたキャッシュサーバのIPアドレスを含むものとする。なお、新たに追加されたキャッシュサーバのIPアドレスをキャッシュサーバ一覧表18074に登録することを指示する旨がResolve Agent17052及び17054に伝わるメッセージであれば、形式は任意でよい。
 図32は、本発明の実施例3のキャッシュサーバ追加処理のResolve Agentによる処理のフローチャートである。
 Resolve Agentは、Resolve Manager17021から送信されたキャッシュサーバ追加指示を受信した場合に当該処理を実行する。
 まず、Resolve Agentは、受信したキャッシュサーバ追加指示に基づいてキャッシュサーバ一覧表18074を更新するキャッシュサーバ一覧表更新処理を実行する(21001)。キャッシュサーバ一覧表更新処理では、Resolve Agentは、キャッシュサーバ一覧表18074に新たなレコードを追加し、追加したレコードのキャッシュサーバIP2052(図4参照)に、受信したキャッシュサーバ追加指示のIPアドレスを登録する。
 次に、Resolve Agentは、受信したキャッシュサーバ追加指示に含まれるIPアドレスによって識別されるキャッシュサーバと自身を実装するPBRルータとの間のネットワーク距離を測定する(21002)。
 次に、Resolve Agentは、ステップ21002の処理で測定した測定結果(RTT)が、近傍キャッシュ表18072の距離2043に登録された距離より小さいか否かを判定する(21003)。
 ステップ21003の処理で、測定結果(RTT)が近傍キャッシュ表18072の距離2043に登録された距離より小さいと判定された場合、Resolve Agentは、近傍キャッシュ表18072の最近傍キャッシュIP2042に新たに追加されるキャッシュサーバのIPアドレスを登録し、距離2043に測定結果を登録する(21004)。
 そして、Resolve Agentは、最近傍キャッシュサーバとなる新たに追加されるキャッシュサーバのIPアドレスを転送先とし、所定の転送条件を含むルールをPBRルータに設定し(21005)、処理を終了する。
 以上によって、キャッシュサーバを新たに追加する場合に、エンドユーザからのデータを最近傍キャッシュサーバに転送するルールを自動的に生成し、当該ルールをPBRルータに設定することができる。
 次に、図33~図35を用いて、キャッシュサーバ削除処理について説明する。
 図33は、本発明の実施例3のキャッシュサーバ削除処理のシーケンス図である。
 本実施例のキャッシュサーバ削除処理は、Resolve Manager17021と、追加されるキャッシュサーバA17031と、全てのResolve Agentとの間で実行される。
 まず、ネットワークから削除されるキャッシュサーバA17031が、キャッシュサーバ削除要求をResolve Manager1021に送信する(22001)。キャッシュサーバ削除要求には、削除されるキャッシュサーバA17031のIPアドレスが含まれる。
 Resolve Manager17021は、キャッシュサーバ削除要求を受信した場合、全てのPBRルータ(図33では、PBRルータ17051、17053)に実装されるResolve Agent(17052、17054)に、キャッシュサーバ削除指示を送信する(22002)。キャッシュサーバ削除指示には、削除されるキャッシュサーバA17031のIPアドレスが含まれる。
 Resolve Agent17052及び17054は、キャッシュサーバ削除指示を受信した場合、キャッシュサーバ一覧表18074に、受信したキャッシュサーバ削除指示に含まれるキャッシュサーバのIPアドレスを削除する(22003)。
 次に、Resolve Agent17052及び17054は、近傍キャッシュ表18072に削除されるキャッシュサーバのIPアドレスが登録されているか否かを判定し、削除されるキャッシュサーバのIPアドレスが近傍キャッシュ表18072に登録されている場合、削除されるキャッシュサーバ以外の全てのキャッシュサーバと自身が実装されたPBRルータとのネットワーク距離を測定する(22004)。
 そして、Resolve Agent17052及び17054は、測定結果が最小となるキャッシュサーバを最近傍キャッシュサーバとして特定し、特定した最近傍キャッシュサーバのIPアドレスを近傍キャッシュ表18072の最近傍キャッシュIP2042に登録し、距離2043に最小となる測定結果を登録することによって、近傍キャッシュ表2022を更新する(22005)。また、この場合、Resolve Agent17052及び17054は、PCからのトラフィックを最近傍キャッシュサーバとなるキャッシュサーバに転送するようにルータ19101及び19102にルールを設定する(22006)。
 また、Resolve Manager17021は、キャッシュサーバB17032から送信されたキャッシュサーバ削除要求を受信した場合(22007)、キャッシュサーバ削除指示を全てのResolve Agent17052及び17054が実装されたPBRルータA17051及び17053に送信する(22008)。Resolve Agent17052及び17054は、キャッシュサーバ削除指示を受信すると、ステップ22003~22006を実行する。
 図34は、本発明の実施例3のキャッシュサーバ削除処理のうちResolve Manager17021によって実行される処理のフローチャートである。
 Resolve Manager17021は、削除されるキャッシュサーバCから送信されたキャッシュサーバ削除要求を受信した場合に当該処理の実行を開始する。
 Resolve Manager17021は、キャッシュサーバ削除要求を受信すると、全てのResolve Agentを実装したPBRルータにキャッシュサーバ削除指示を送信し(23001)、処理を終了する。
 ここで、キャッシュサーバ削除指示は、Resolve Agent17052及び17054がResolve Manager17021によるキャッシュサーバの削除指示であることが確認できる形式であり、削除されるキャッシュサーバのIPアドレスを含むものとする。なお、削除されるキャッシュサーバのIPアドレスをキャッシュサーバ一覧表18074から削除することを指示する旨がResolve Agent17052及び17054に伝わるメッセージであれば、形式は任意でよい。
 図35は、本発明の実施例3のキャッシュサーバ削除処理のうちResolve Agentによって実行される処理のフローチャートである。
 Resolve Agentは、Resolve Manager17021から送信されたキャッシュサーバ削除指示を受信した場合に当該処理を実行する。
 まず、Resolve Agentは、受信したキャッシュサーバ削除指示に含まれる削除されるキャッシュサーバCのIPアドレスを取得する(24001)。
 次に、Resolve Agentは、ステップ24001の処理で取得したIPアドレスが近傍キャッシュ表18072の最近傍キャッシュIP2042に登録されたIPアドレスと一致するか否かを判定する(24002)。
 ステップ24001の処理で取得したIPアドレスが近傍キャッシュ表18072の最近傍キャッシュIP2042に登録されたIPアドレスと一致しないと、ステップ24002の処理で判定された場合、最近傍キャッシュサーバが削除されるキャッシュサーバでないので、Resolve Agentは、処理を終了する。
 一方、ステップ24001の処理で取得したIPアドレスが近傍キャッシュ表18072の最近傍キャッシュIP2042に登録されたIPアドレスと一致すると、ステップ24002の処理で判定された場合、Resolve Agentは、当該最近傍キャッシュIP2042に登録されたIPアドレス及び距離2043に登録された値を削除し(24003)、キャッシュサーバ一覧表18074に登録されたキャッシュサーバのIPアドレスのうち、削除されるキャッシュサーバのIPアドレス以外のIPアドレスを取得し、キャッシュIP配列を生成する(24004)。
 次に、Resolve Agentは、キャッシュIP配列の1行目のIPアドレスによって識別されるキャッシュサーバをキャッシュサーバAとし(24005)、キャッシュIP配列の1行目のIPアドレスを削除する(24006)。
 次に、Resolve Agentは、キャッシュサーバAと自身が実装されたPBRルータとのネットワーク距離を測定し、測定結果に基づいて近傍キャッシュ表18072を更新する近傍キャッシュ表更新処理を実行する(24007)。
 近傍キャッシュ表更新処理では、Resolve Agentは、キャッシュサーバAと自身が実装されたPBRルータとのネットワーク距離を測定する。そして、Resolve Agentは、測定結果が近傍キャッシュ表18072の距離2043に登録された距離より小さい場合に、当該キャッシュサーバAのIPアドレスを近傍キャッシュ表18072の最近傍キャッシュIP2042に登録し、当該測定結果を距離2043に登録する。
 次に、Resolve Agentは、ステップ24007の処理で近傍キャッシュ表18072を更新した場合、PCからのトラフィックを最近傍キャッシュサーバに転送するルールをPBRルータに設定するルール設定処理を実行する(24008)。ルール設定処理の詳細は、Resolve Agentによって実行される点以外は実施例1の図11に示すルール設定処理と同じであるので、説明を省略する。
 次に、Resolve Agentは、キャッシュIP配列にIPアドレスが存在するか否かを判定する(24009)。
 ステップ24009の処理で、キャッシュIP配列にIPアドレスが存在する場合、全てのキャッシュサーバに対して近傍キャッシュ表更新処理を実行していないので、ステップ24007の処理に戻る。
 一方、ステップ24009の処理で、キャッシュIP配列にIPアドレスが存在する場合、全てのキャッシュサーバに対して近傍キャッシュ表更新処理を実行したので、処理を終了する。
 これによって、キャッシュサーバが削除される場合、最近傍キャッシュサーバが削除されるキャッシュサーバであったPBRルータの最近傍キャッシュサーバを、削除されるキャッシュサーバ以外のキャッシュサーバからネットワーク距離が最小となるキャッシュサーバに特定することができる。
 次に、図36~図38を用いて、ルール更新処理について説明する。
 図36は、本発明の実施例3のルール更新処理のフローチャートである。
 本実施例のルール更新処理は、Resolve Manager17021と、全てのResolve Agentとの間で実行される。
 Resolve Managerは、所定時間毎又はネットワークに障害を検出した場合に、ルール更新指示を全てのPBRルータ17051及び17053に送信する(25001)。
 Resolve Agent A17052及びB17054は、ルール更新指示を受信した場合、キャッシュサーバ一覧表18074に登録された全てのキャッシュサーバのIPアドレスを取得し、キャッシュIP配列を生成し、キャッシュIP配列の1行目のIPアドレスによって識別されるキャッシュサーバをキャッシュサーバAとする(25002)。
 次に、Resolve Agent A17052及びB17054は、自身が実装されたPBRルータ17051及び17053とキャッシュサーバAとの間のネットワーク距離を測定する(25003)。
 次に、Resolve Agent A17052及びB17054は、測定結果が近傍キャッシュ表18072の距離2043に登録された値より小さい場合、近傍キャッシュ表18072の最近傍キャッシュIP2042にキャッシュサーバAのIPアドレスを登録し、距離2043に当該測定結果を登録することによって、近傍キャッシュ表18072を更新する(25004)。
 次に、Resolve Agent A17052及びB17054は、PCからのトラフィックを最近傍キャッシュサーバに転送するようにPBRルータAにルールを設定する(25005)。
 そして、Resolve Agent A17052及びB17054は、キャッシュIP配列の残りのIPアドレスによって識別されるキャッシュサーバに対しても、ステップ25003~25005の処理を実行する。
 図37は、本発明の実施例3のキャッシュサーバ削除処理のうちResolve Manager17021によって実行される処理のフローチャートである。
 Resolve Manager17021は、所定時間毎又はネットワークに異常が検出された場合に、全てのResolve Agentにルール更新指示を送信し(26001)、処理を終了する。
 なお、Resolve Manager17021がネットワークの異常を検出する方式は、実施例1と同じである。
 図38は、本発明の実施例3のキャッシュサーバ削除処理のうちResolve Agentによって実行される処理のフローチャートである。
 Resolve Agentは、Resolve Manager17021から送信されたルール更新指示を受信した場合に、当該処理を実行する。
 まず、Resolve Agentは、キャッシュサーバ一覧表18074に登録された全てのキャッシュサーバのIPアドレスを取得し、キャッシュIP配列を生成する(27001)。
 次に、Resolve Agentは、キャッシュIP配列の1行目のIPアドレスによって識別されるキャッシュサーバをキャッシュサーバAとし(27002)、キャッシュIP配列の1行目のIPアドレスを削除する(27003)。
 次に、Resolve Agentは、キャッシュサーバAと自身が実装されたPBRルータとのネットワーク距離を測定し、測定結果に基づいて近傍キャッシュ表18072を更新する近傍キャッシュ表更新処理を実行する(27004)。この近傍キャッシュ表更新処理は、図35のステップ24007の処理と同じであるので説明を省略する。
 次に、Resolve Agentは、ステップ27004の処理で近傍キャッシュ表18072を更新した場合、PCからのトラフィックを最近傍キャッシュサーバに転送するルールをPBRルータに設定するルール設定処理を実行する(27005)。ルール設定処理の詳細は、Resolve Agentによって実行される点以外は実施例1の図11に示すルール設定処理と同じであるので、説明を省略する。
 次に、Resolve Agentは、キャッシュIP配列にIPアドレスが存在するか否かを判定する(27006)。
 ステップ27006の処理で、キャッシュIP配列にIPアドレスが存在する場合、全てのキャッシュサーバに対して近傍キャッシュ表更新処理を実行していないので、ステップ27004の処理に戻る。
 一方、ステップ27006の処理で、キャッシュIP配列にIPアドレスが存在する場合、全てのキャッシュサーバに対して近傍キャッシュ表更新処理を実行したので、処理を終了する。
 以上によって、所定のタイミング(所定時間毎、又はネットワークに障害を検出した場合)で全てのPBRルータの最近傍キャッシュサーバを最新の最近傍キャッシュサーバに更新することができる。
 実施例3の最後に、上述したResolve Manager1021の動作及びResolve Agentの動作について、図39及び図40を用いて説明する。
 図39は、本発明の実施例3のResolve Manager1021の動作のフローチャートである。
 Resolve Manager17021に電源が投入され、Resolve Manager17021が起動すると(28001)、Resolve Manager17021のCPU2011は、二次記憶デバイス2013に記憶されたResolve Managerモジュールプログラム18031を主記憶デバイス2012にロードし、ロードされたResolve Managerモジュールプログラム18031を実行することによって、Resolve Managerモジュール18021を起動する(28002)。
 Resolve Manager17021は、キャッシュサーバ追加要求を受信したか否かを判定する(28003)。ステップ28003の処理で、キャッシュサーバ追加要求を受信したと判定された場合、Resolve Manager17021は、図31に示す処理を実行することによってキャッシュサーバ追加指示を全てのPBRルータに送信し(28004)、ステップ28003の処理に戻る。
 ステップ28003の処理で、キャッシュサーバ追加要求を受信していないと判定された場合、Resolve Manager17021は、キャッシュサーバ削除要求を受信したか否かを判定する(28005)。
 ステップ28005の処理で、キャッシュサーバ削除要求を受信したと判定された場合、Resolve Manager17021は、図34に示すキャッシュサーバ削除処理を実行することによってキャッシュサーバ削除指示を全てのPBRルータに送信し(28006)、ステップ28003の処理に戻る。
 ステップ28005の処理で、キャッシュサーバ削除要求を受信していないと判定された場合、Resolve Manager17021は、ネットワークに障害が発生したことを検出したか否かを判定する(28007)。
 ステップ28007の処理で、ネットワークに障害が発生したことを検出したと判定された場合、Resolve Manager17021は、図37に示すルール更新処理を実行することによってルール更新指示を全てのPBRルータに送信し(28008)、ステップ28003の処理に戻る。
 ステップ28007の処理で、ネットワークに障害が発生したことを検出していないと判定された場合、ステップ28003の処理に戻る。
 ここで、Resolve Manager17021のネットワークの障害検出については、実施例1と同じなので説明を省略する。
 図40は、本発明の実施例3のResolve Agentの動作のフローチャートである。
 まず、Resolve Agentを実装するPBRルータに電源が投入され、Resolve Agentが起動すると(29001)、PBRルータのCPU18061は、二次記憶デバイス18063に記憶されたResolve Agentモジュールプログラム18081を主記憶デバイス18062にロードし、ロードされたResolve Agentモジュールプログラム18081を実行することによって、Resolve Agentモジュール18071を起動する(29002)。
 次に、Resolve Agentは、キャッシュサーバ追加指示を受信したか否かを判定する(29003)。ステップ29003の処理で、キャッシュサーバ追加指示を受信したと判定された場合、Resolve Agentは、図32に示す処理を実行し(29004)、ステップ29003の処理に戻る。
 ステップ29003の処理で、キャッシュサーバ追加指示を受信していないと判定された場合、Resolve Agentは、キャッシュサーバ削除指示を受信したか否かを判定する(29005)。
 ステップ29005の処理で、キャッシュサーバ削除指示を受信したと判定された場合、Resolve Agentは、図35に示すキャッシュサーバ削除処理を実行し(29006)、ステップ29003の処理に戻る。
 ステップ29005の処理で、キャッシュサーバ削除指示を受信していないと判定された場合、Resolve Agentは、ルール更新指示を受信したか否かを判定する(29007)。
 ステップ29007の処理で、ルール更新指示を受信したと判定された場合、Resolve Agentは、図38に示すルール更新処理を実行し(29008)、ステップ29003の処理に戻る。
 ステップ29007の処理で、ルール更新指示を受信していないと判定された場合、ステップ29003の処理に戻る。
 以上の処理を実行するResolve Manager17021及びResolve Agentを用いることによって、Resolve AgentがPBRルータ上で動作するシステムを構築できる。
 実施例4は、実施例3のResolve AgentをPBRルータ上で動作させず、PBRルータの近くに存在する計算機上で動作させた場合の実施例である。
 ここで、PBRルータの近くに存在する計算機とは、PBRルータに直接接続される計算機や、PBRルータに接続されたハブ装置と同一のハブ装置に接続される計算機のことである。すなわち、PBRルータ及びルータ装置を介さずに接続される計算機のことである。
 Resolve AgentがPBRルータの近くに存在する計算機上で動作する場合、Resolve AgentとPBRルータとはそれぞれ異なるIPアドレスを有する。このため、Resolve Manager17021は、Resolve Agentに対して各種指示を送信するためには、Resolve Agentを実装する計算機のIPアドレスを保持する必要がある。また、本実施例では、PBRルータの最近傍キャッシュサーバを特定するためのPBRルータとキャッシュサーバとの間のネットワーク距離は、Resolve Agentが実装された計算機とキャッシュサーバとの間のネットワーク距離で代用する。
 以下、本発明の実施例4について図41~図44を用いて説明する。
 図41は、本発明の実施例4の中継システムの説明図である。図41では、実施例3の図26に示す中継システムと同じ構成については、同じ符号を付与し、説明を省略する。
 Webサーバ1011、ルータA1041~D1044、キャッシュサーバA15031及びB15033は、図26と同じである。
 Resolve Manager30021は、Resolve Agentを実装する計算機のIPアドレスを保持するResolve Agent一覧表31022を保持する点で実施例3と異なり、詳細は図42及び図43で説明する。
 PBRルータA30051~C30053は、Resolve Agentが動作しない点で実施例3と異なる。
 また、Resolve Agent A30033は、PBRルータA30051の近くに存在する計算機で動作し、Resolve Agent B30034は、PBRルータB30052の近くに存在する計算機で動作し、Resolve Agent C30035は、PBRルータC30054の近くに存在する計算機で動作する。Resolve Agentを実装する計算機については図44で詳細を説明する。
 本実施例では、Resolve AgentがPBRルータと別の装置で動作するので、Resolve AgentによるキャッシュサーバとPBRルータとの間のネットワーク距離の測定結果は、キャッシュサーバとPBRルータとの間のネットワーク距離ではないが、当該装置はPBRルータの近くに存在するため、キャッシュサーバとPBRルータとの間のネットワーク距離として扱う。
 次に、図42~図44でResolve Manager30021、キャッシュサーバ一覧表、ResolveAgentを実装する計算機の構成について説明する。
 図42は、本発明の実施例4のResolve Manager30021のハードウェア構成図である。図42では、実施例3の図27に示すResolve Manager17021と同じ構成については、同じ符号を付与し、説明を省略する。
 Resolve Manager30021は、CPU2011、主記憶デバイス2012、及び二次記憶デバイス2013を有する。主記憶デバイス2012には、Resolve Managerモジュール18021、及びResolve Agent一覧表31022が記憶される。二次記憶デバイス2013には、Resolve Managerモジュールプログラム18031が記憶される。Resolve Agent一覧表31022は、Resolve Agentを実装する計算機のIPアドレスが登録される。Resolve Agent一覧表31022の詳細は図43で説明する。
 図43は、本発明の実施例4のResolve Agent一覧表31022の説明図である。
 Resolve Agent一覧表31022は、ID31051、及びResolve Agent IP31052を含む。
 ID31051には通し番号が登録される。Resolve Agent IP31052には、Resolve Agentを実装する計算機のIPアドレスが登録される。
 Resolve Agent一覧表31022の主キーはID31051であり、ID31051に登録された通し番号によって、Resolve Agent一覧表31022の所定の一行を特定可能である。また、Resolve Agent IP31052に登録されたResolve Agentを実装する計算機のIPアドレスも、Resolve Agent一覧表31022の主キーとなり得る。
 なお、Resolve Agent一覧表31022のResolve Agent IP31052は、人手によって予め登録される。また、Resolve Agentが、自身を実装する計算機のIPアドレスを含む追加要求をResolve Manager30021に送信し、Resolve Manager30021は、追加要求を受信した場合、受信した追加要求に含まれるIPアドレスをResolve Agent IP31052に登録してもよい。
 図44は、本発明の実施例4のResolve Agentを実装する計算機のハードウェア構成図である。
 Resolve Agentは、CPU31061、主記憶デバイス31062、及び二次記憶デバイス31063を有する。
 主記憶デバイス31062には、Resolve Agentモジュール31071、近傍キャッシュ表31072、及びキャッシュサーバ一覧表31073が記憶される。二次記憶デバイス31063には、Resolve Agentモジュールプログラム31031が記憶される。主記憶デバイス31062に記憶されるResolve Agentモジュール31071は、二次記憶デバイス31063に記憶されたResolve Agentモジュールプログラム31031が主記憶デバイス31062にロードされた状態を示す。CPU31061は、主記憶デバイス31062にロードされたResolve Agentモジュール31071を実行する。
 近傍キャッシュ表31072は実施例3の図29と同じであり、キャッシュサーバ一覧表31073は実施例1の図4と同じである。
 本実施例のキャッシュサーバ追加処理、キャッシュサーバ削除処理、及びルール更新処理では、Resolve Manager30021がキャッシュサーバ追加指示、キャッシュサーバ削除指示、及びルール更新指示をResolve Agentを実装する全ての計算機に送信する点で実施例3と異なるが、他の処理は実施例3と同じである。
 以上によって、Resolve AgentをPBRルータ上で動作させず、PBRルータの近くに存在する計算機上で動作させることができる。
 なお、キャッシュサーバの近くに存在する計算機でResolve Agentが動作する実施例2と本実施例との相違点について説明する。
 通常、中継システムに配置されるPBRルータの数は、キャッシュサーバの数より多い。このため、本実施例では、中継システムで動作するResolve Agentの数を実施例2により多くすることができる。このため、エンドユーザの数が多い中継システムでは、実施例2ではなく本実施例の中継システムを採用することによって、Resolve Agentの数を増やし、一つのResolve Agentの負荷を軽減することができる。
 本実施例では、中継システムを初期構築する場合の処理である初期構築処理の例について実施例1の中継システムを用いて説明する。本実施例では、Resolve Manager1021は、Resolve Agentからのキャッシュサーバ追加要求を受信しても、所定条件が成立するまで、ネットワーク距離の測定指示の送信処理以降の処理を待機する。
 初期構築時には、所定時間の間に何台ものキャッシュサーバがネットワークに追加される。このため、Resolve Manager1021は、キャッシュサーバが追加されるたびに、追加されたキャッシュサーバとPBRルータとのネットワーク距離を測定し、各PBRルータの最近傍キャッシュサーバを特定していたのでは、ネットワーク距離が遠いキャッシュサーバを最近傍キャッシュサーバとして特定される可能性がある。例えば、ネットワークにキャッシュサーバが一台しか追加されていない場合には、全てのPBRルータの最近傍キャッシュサーバが当該キャッシュサーバに設定されてしまう。
 PBRルータは、ネットワーク距離が遠いキャッシュサーバにエンドユーザからのリクエストを転送しては、当該リクエストをWebサーバ1011に転送するよりも、ネットワークが輻輳してしまう。
 このため、本実施例では、Resolve Manager1021は、所定数以上のキャッシュサーバがネットワークに追加されてから、各PBRルータの最近傍キャッシュサーバを特定するように、キャッシュサーバ追加要求を受信しても、ネットワーク距離の測定指示の送信を待機する。
 以下、実施例5について図45を用いて説明する。
 図45は、本発明の実施例5の初期構築処理のフローチャートである。
 まず、Resolve Manager1021は、初期構築処理を実行するプログラムを起動すると、時間のカウントを開始する(32001)。
 そして、Resolve Manager1021は、キャッシュサーバ追加要求を受信した場合、キャッシュサーバ一覧表更新処理を実行する(32002)。キャッシュサーバ一覧表更新処理は、実施例1の図9に示す処理と同じあるので、説明を省略する。
 次に、Resolve Manager1021は、時間のカウントを開始してから所定時間が経過したか否かを判定する(32003)。
 ステップ32003の処理で、時間のカウントを開始してから所定時間が経過していないと判定された場合、ステップ32002の処理に戻る。
 一方、ステップ32003の処理で、時間のカウントを開始してから所定時間が経過したと判定された場合、Resolve Manager1021は、所定時間が経過するまでに受信したキャッシュサーバ追加要求に基づいてキャッシュサーバ一覧表2023に登録されたキャッシュサーバの順に、ネットワーク距離を測定するべくステップ7002~7007の処理を実行し、処理を終了する。ステップ7002~7007の処理は、実施例1の図8に示すステップ7002~7007の処理と同じであるので、説明を省略する。
 なお、図45では、ステップ32002の処理では、初期構築処理を実行するプログラムの起動から所定時間が経過したことを、ネットワーク距離の測定指示の所定の条件としているが、他のバリエーションも考えられる。例えば、Resolve Manager1021の起動から所定時間が経過したことを条件としてもよいし、ネットワークに追加される全てのキャッシュサーバに実装されるResolve Agentが起動したことの連絡をResolve Managerの管理者が受け取ったことを条件としてもよい。
 これによって、Resolve Manager1021は、初期構築時にキャッシュサーバ追加要求を受信しても、所定条件が成立するまでは、ネットワーク距離の測定をResolve Agentに指示しないので、所定数のキャッシュサーバがネットワークに追加されてから各PBRルータの最近傍キャッシュサーバを特定することができる。
 なお、本実施例は、図45と同じ処理で実施例2にも適用可能である。
 次に、本実施例を実施例3に適用する場合について図30を用いて説明する。
 Resolve Manager17021は、所定条件が成立するまでは、キャッシュサーバ追加要求を受信しても、キャッシュサーバ追加指示を、Resolve Agentを実装するPBRルータに送信しない。
 これによって、PBRルータに実装されたResolve Agentは、所定条件が成立するまでキャッシュサーバ追加指示を受信しないため、ネットワーク距離の測定を待機する。
 したがって、Resolve Agentは、所定数のキャッシュサーバがネットワークに追加されてから自身を実装するPBRルータの最近傍キャッシュサーバを特定することができる。
 また、Resolve Manager17021は、キャッシュサーバ追加要求を受信した場合、すぐにキャッシュサーバ追加指示を各PBRルータに送信し、各PBRルータに実装されたResolve Agentが、所定条件が成立するまでは、ネットワーク距離の測定を待機してもよい。この場合の所定条件は、例えば、最初にキャッシュサーバ追加指示を受信してから所定時間が経過したことを条件としてもよいし、PBRルータの起動から所定時間が経過したことを条件としてもよい。
 なお、特許請求の範囲では、上述した実施例1~実施例5のResolve Manager及びResolve Agentを総称する概念として、ルール設定モジュールとの用語を用いている。
 なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることも可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
 また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。

Claims (14)

  1.  データを転送する中継装置のルール設定方法であって、
     前記中継装置は、中継システム内に設けられるものであって、ユーザ装置から送信されたデータを設定されたルールに基づいてデータを転送し、
     前記中継システムは、コンテンツ計算機によって提供されるコンテンツの複製を保持するキャッシュ計算機、及び前記中継装置にルールを設定可能なルール設定モジュールを有し、
     前記ルール設定方法は、
     前記ルール設定モジュールが、前記キャッシュ計算機と各中継装置とのネットワーク距離を測定し、
     前記ルール設定モジュールが、前記中継装置毎に、前記ネットワーク距離が最も近い最近傍キャッシュ計算機を特定し、
     前記ルール設定モジュールが、前記ユーザ装置から送信されたデータを前記最近傍キャッシュ計算機に転送するためのルールを前記中継装置に設定することを特徴とするルール設定方法。
  2.  請求項1に記載のルール設定方法であって、
     前記ルール設定モジュールが、前記中継システムに前記キャッシュ計算機が追加されることを検出した場合、前記追加されるキャッシュ計算機と前記各中継装置とのネットワーク距離を測定し、
     前記ルール設定モジュールが、前記追加されるキャッシュ計算機が前記最近傍キャッシュ計算機となる前記中継装置に対して、前記ルールを設定することを特徴とするルール設定方法。
  3.  請求項1に記載のルール設定方法であって、
     前記ルール設定モジュールが、前記中継システムから前記キャッシュ計算機が削除されることを検出した場合、前記削除されるキャッシュ計算機が前記最近傍キャッシュ計算機となる中継装置と、前記削除されるキャッシュ計算機以外のキャッシュ計算機とのネットワーク距離を測定し、
     前記ルール設定モジュールが、前記削除されるキャッシュ計算機が前記最近傍キャッシュ計算機となる中継装置毎に、前記削除されるキャッシュ計算機以外のキャッシュ計算機から前記最近傍キャッシュ計算機を特定し、
     前記ルール設定モジュールが、前記削除されるキャッシュ計算機が前記最近傍キャッシュ計算機となる中継装置に対して、前記ルールを前記中継装置に設定することを特徴とするルール設定方法。
  4.  請求項1に記載のルール設定方法であって、
     前記ルール設定モジュールが、前記キャッシュ計算機及び前記中継装置の少なくとも一方に異常が発生したことを検出した場合、前記キャッシュ計算機と各中継装置とのネットワーク距離を測定し、
     前記ルール設定モジュールが、前記中継装置毎に、前記最近傍キャッシュ計算機を特定し、
     前記ルール設定モジュールが、前記ルールを前記中継装置に設定することを特徴とするルール設定方法。
  5.  請求項2に記載のルール設定方法であって、
     前記ルール設定モジュールが、前記中継システムを初期構築する場合において、前記中継システムに前記キャッシュ計算機が新たに追加されることを検出し、かつ、所定条件が成立してから、前記追加されるキャッシュ計算機と前記中継装置とのネットワーク距離を測定することを特徴とするルール設定方法。
  6.  請求項1に記載のルール設定方法であって、
     前記中継システムは、管理計算機を有し、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記キャッシュ計算機上で動作し、
     前記ルール設定方法は、
     新たに追加されるキャッシュ計算機が、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールが、前記管理計算機が前記追加要求を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記管理計算機の第1モジュールが、前記追加されるキャッシュ計算機に対して、前記各中継装置とのネットワーク距離の測定指示を送信し、
     前記追加されるキャッシュ計算機の第2モジュールが、前記測定指示を受信した場合、前記追加されるキャッシュ計算機と前記各中継装置とのネットワーク距離を測定し、
     前記追加されるキャッシュ計算機の第2モジュールが、前記各中継装置とのネットワーク距離の測定結果を前記管理計算機に送信し、
     前記管理計算機の第1モジュールが、前記測定結果を受信した場合、前記測定結果に基づいて前記各中継装置の前記最近傍キャッシュ計算機を特定し、
     前記管理計算機の第1モジュールが、前記各中継装置に前記ルールを設定することを特徴とするルール設定方法。
  7.  請求項1に記載のルール設定方法であって、
     前記中継システムは、管理計算機、及び前記キャッシュ計算機の近くに存在する計算機を備え、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記計算機上で動作し、
     前記ルール設定方法は、
     新たに追加されるキャッシュ計算機が、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールが、前記管理計算機が前記追加要求を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記管理計算機の第1モジュールが、前記追加されるキャッシュ計算機の近くに存在する計算機に対して、前記各中継装置とのネットワーク距離の測定指示を送信し、
     前記計算機の第2モジュールが、前記測定指示を受信した場合、前記計算機と前記各中継装置とのネットワーク距離を、前記追加されるキャッシュ計算機と前記各中継装置とのネットワーク距離として測定し、
     前記計算機の第2モジュールが、前記各中継装置とのネットワーク距離の測定結果を前記管理計算機に送信し、
     前記管理計算機の第1モジュールが、前記測定結果を受信した場合、前記測定結果に基づいて前記各中継装置の前記最近傍キャッシュ計算機を特定し、
     前記管理計算機の第1モジュールが、前記各中継装置に前記ルールを設定することを特徴とするルール設定方法。
  8.  請求項1に記載のルール設定方法であって、
     前記中継システムは、管理計算機を有し、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記中継装置上で動作し、
     前記ルール設定方法は、
     追加されるキャッシュ計算機が、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールが、前記管理計算機が前記追加要求を受信した場合、前記キャッシュ計算機の追加指示を前記各中継装置に送信し、
     前記中継装置の第2モジュールが、前記追加指示を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記中継装置の第2モジュールが、前記追加されるキャッシュ計算機と自身が動作する前記中継装置とのネットワーク距離を測定し、
     前記中継装置の第2モジュールが、前記ネットワーク距離の測定結果に基づいて、自身が動作する前記中継装置の前記最近傍キャッシュ計算機を特定し、
     前記中継装置の第2モジュールが、自身が動作する前記中継装置に前記ルールを設定することを特徴とするルール設定方法。
  9.  請求項1に記載のルール設定方法であって、
     前記中継システムは、管理計算機、及び前記中継装置の近くに存在する計算機を有し、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記計算機上で動作し、
     前記ルール設定方法は、
     追加されるキャッシュ計算機が、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールが、前記管理計算機が前記追加要求を受信した場合、前記キャッシュ計算機の追加指示を前記各計算機に送信し、
     前記各計算機の第2モジュールが、前記追加指示を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記各計算機の第2モジュールが、前記追加されるキャッシュ計算機と前記計算機とのネットワーク距離を、前記追加されるキャッシュ計算機と前記各中継装置とのネットワーク距離として測定し、
     前記各計算機の第2モジュールが、前記ネットワーク距離の測定結果に基づいて、前記計算機の近くに存在する中継装置の前記最近傍キャッシュ計算機を特定し、
     前記各計算機の第2モジュールが、前記計算機の近くに存在する中継装置に前記ルールを設定することを特徴とするルール設定方法。
  10.  コンテンツ計算機によって提供されるコンテンツの複製を保持するキャッシュ計算機と、
     設定されたルールに基づいてユーザ装置から送信されたデータを転送する中継装置と、を備える中継システムであって、
     前記中継装置にルールを設定可能なルール設定モジュールを備え、
     前記ルール設定モジュールは、
     前記キャッシュ計算機と各中継装置とのネットワーク距離を測定し、
     前記中継装置毎に、前記ネットワーク距離が最も近い最近傍キャッシュ計算機を特定し、
     前記ユーザ装置から送信されたデータを前記最近傍キャッシュ計算機に転送するためのルールを前記中継装置に設定することを特徴とする中継システム。
  11.  請求項10に記載の中継システムであって、
     管理計算機を備え、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記キャッシュ計算機上で動作し、
     新たに追加されるキャッシュ計算機は、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールは、
     前記管理計算機が前記追加要求を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記追加されるキャッシュ計算機に対して、前記各中継装置とのネットワーク距離の測定指示を送信し、
     前記追加されるキャッシュ計算機の第2モジュールは、前記測定指示を受信した場合、前記追加されるキャッシュ計算機と前記各中継装置とのネットワーク距離を測定し、
     前記各中継装置とのネットワーク距離の測定結果を前記管理計算機に送信し、
     前記管理計算機の第1モジュールは、
     前記測定結果を受信した場合、前記測定結果に基づいて前記各中継装置の前記最近傍キャッシュ計算機を特定し、
     前記各中継装置に前記ルールを設定することを特徴とする中継システム。
  12.  請求項10に記載の中継システムであって、
     管理計算機、及び前記キャッシュ計算機の近くに存在する計算機を備え、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記計算機上で動作し、
     新たに追加されるキャッシュ計算機は、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールは、
     前記管理計算機が前記追加要求を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記追加されるキャッシュ計算機との近くに存在する計算機に対して、前記各中継装置とのネットワーク距離の測定指示を送信し、
     前記計算機の第2モジュールは、前記測定指示を受信した場合、前記計算機と前記各中継装置とのネットワーク距離を、前記追加されるキャッシュ計算機と前記各中継装置とのネットワーク距離として測定し、
     前記各中継装置とのネットワーク距離の測定結果を前記管理計算機に送信し、
     前記管理計算機の第1モジュールは、
     前記測定結果を受信した場合、前記測定結果に基づいて前記各中継装置の前記最近傍キャッシュ計算機を特定し、
     前記各中継装置に前記ルールを設定することを特徴とする中継システム。
  13.  請求項10に記載の中継システムであって、
     管理計算機を備え、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記中継装置上で動作し、
     追加されるキャッシュ計算機は、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールは、前記管理計算機が前記追加要求を受信した場合、前記キャッシュ計算機の追加指示を前記各中継装置に送信し、
     前記中継装置の第2モジュールは、
     前記追加指示を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記追加されるキャッシュ計算機と自身が動作する前記中継装置とのネットワーク距離を測定し、
     前記ネットワーク距離の測定結果に基づいて、自身が動作する前記中継装置の前記最近傍キャッシュ計算機を特定し、
     自身が動作する前記中継装置に前記ルールを設定することを特徴とする中継システム。
  14.  請求項10に記載の中継システムであって、
     管理計算機、及び前記中継装置の近くに存在する計算機を備え、
     前記ルール設定モジュールは、第1モジュール及び第2モジュールを含み、
     前記第1モジュールは前記管理計算機上で動作し、前記第2モジュールは前記計算機上で動作し、
     追加されるキャッシュ計算機は、前記管理計算機に追加要求を送信し、
     前記管理計算機の第1モジュールは、前記管理計算機が前記追加要求を受信した場合、前記キャッシュ計算機の追加指示を前記各計算機に送信し、
     前記各計算機の第2モジュールは、
     前記追加指示を受信した場合、前記追加されるキャッシュ計算機の識別情報をキャッシュ計算機管理テーブルに登録し、
     前記追加されるキャッシュ計算機と前記計算機とのネットワーク距離を、前記追加されるキャッシュ計算機と前記各中継装置とのネットワーク距離として測定し、
     前記ネットワーク距離の測定結果に基づいて、前記計算機の近くに存在する中継装置の前記最近傍キャッシュ計算機を特定し、
     前記計算機の近くに存在する中継装置に前記ルールを設定することを特徴とする中継システム。
PCT/JP2013/055401 2012-09-20 2013-02-28 ルール設定方法、及び中継システム WO2014045610A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-206869 2012-09-20
JP2012206869A JP2014064096A (ja) 2012-09-20 2012-09-20 ルール設定方法、及び中継システム

Publications (1)

Publication Number Publication Date
WO2014045610A1 true WO2014045610A1 (ja) 2014-03-27

Family

ID=50340943

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/055401 WO2014045610A1 (ja) 2012-09-20 2013-02-28 ルール設定方法、及び中継システム

Country Status (2)

Country Link
JP (1) JP2014064096A (ja)
WO (1) WO2014045610A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11323448B1 (en) 2020-10-29 2022-05-03 Visa International Service Association Techniques for redundant access rule management

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012151652A (ja) * 2011-01-19 2012-08-09 Nec Corp ルータ、キャッシュルータ及びコンテンツデータキャッシュシステム並びにコンテンツデータキャッシュ方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4743640B2 (ja) * 2007-08-08 2011-08-10 日本電信電話株式会社 オーバーレイネットワーク形成方法とオーバーレイノードおよびオーバーレイネットワークとプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012151652A (ja) * 2011-01-19 2012-08-09 Nec Corp ルータ、キャッシュルータ及びコンテンツデータキャッシュシステム並びにコンテンツデータキャッシュ方法

Also Published As

Publication number Publication date
JP2014064096A (ja) 2014-04-10

Similar Documents

Publication Publication Date Title
US20150347246A1 (en) Automatic-fault-handling cache system, fault-handling processing method for cache server, and cache manager
JP6091724B2 (ja) リンクのヘルスチェック方法および装置
US7992201B2 (en) Dynamic network tunnel endpoint selection
CN103368840B (zh) 减少多宿主网络连接内的边界网关协议会话的流量损失
US10375193B2 (en) Source IP address transparency systems and methods
US20140355441A1 (en) Method and apparatus of delivering assured services over unreliable internet infrastructure by using virtual overlay network architecture over a public cloud backbone
US20120117246A1 (en) Method And System For The Efficient And Automated Management of Virtual Networks
EP3624401B1 (en) Systems and methods for non-intrusive network performance monitoring
US11444871B1 (en) End-to-end path selection using dynamic software-defined cloud interconnect (SDCI) tunnels
CN103503421A (zh) 负荷平衡系统中的sctp关联端点重定位
JP5686027B2 (ja) 仮想マシン環境におけるネットワーク障害検知方法、装置、およびプログラム
WO2014045610A1 (ja) ルール設定方法、及び中継システム
CN109995678B (zh) 报文传输方法及装置
JP2018125669A (ja) 送信パケットを監視する装置
JP6014068B2 (ja) 中継装置及び中継方法、並びにコンピュータ・プログラム
CN109417513B (zh) 软件定义网络中动态检测对端的系统和方法
US10855610B2 (en) Information processing apparatus, information processing system, information processing method, and storage medium
JP2012203421A (ja) 情報処理方法、管理サーバおよび管理プログラム
EP3843342A1 (en) Communication method and related device
JP6179981B2 (ja) 情報処理システム、情報処理装置、情報処理方法及びプログラム
US11683225B2 (en) Relay device and non-transitory computer readable medium
US11616731B1 (en) Determining a time-to-live budget for network traffic
JP6194568B2 (ja) アプリケーション通信制御システムおよびアプリケーション通信制御方法
US11720387B2 (en) Managing communication rates between applications in a tiered application computing environment
US20230318947A1 (en) Dynamic multi-cloud network traffic flow monitoring

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13839868

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13839868

Country of ref document: EP

Kind code of ref document: A1