WO2021234855A1 - 解析装置、解析方法、及びプログラム - Google Patents

解析装置、解析方法、及びプログラム Download PDF

Info

Publication number
WO2021234855A1
WO2021234855A1 PCT/JP2020/019938 JP2020019938W WO2021234855A1 WO 2021234855 A1 WO2021234855 A1 WO 2021234855A1 JP 2020019938 W JP2020019938 W JP 2020019938W WO 2021234855 A1 WO2021234855 A1 WO 2021234855A1
Authority
WO
WIPO (PCT)
Prior art keywords
distribution
analysis
distribution data
analysis processing
unit
Prior art date
Application number
PCT/JP2020/019938
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 日本電気株式会社
Priority to JP2022524757A priority Critical patent/JPWO2021234855A1/ja
Priority to US17/924,138 priority patent/US12034614B2/en
Priority to PCT/JP2020/019938 priority patent/WO2021234855A1/ja
Publication of WO2021234855A1 publication Critical patent/WO2021234855A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/042Network management architectures or arrangements comprising distributed management centres cooperatively managing the network

Definitions

  • the present invention relates to an analysis device, an analysis method, and a program.
  • Data distribution via the Internet which is a global network that interconnects a large number of computer networks, is utilized.
  • the distribution device distributes data in response to a request from a user.
  • Patent Document 1 discloses a technique for analyzing a node that provides a service on a network.
  • a plurality of first nodes transmit a request to one second node to be analyzed.
  • the second node sends a response to the received request to the first node, respectively.
  • the communication analyzer analyzes and outputs the responses transmitted from the first node.
  • Patent Document 1 discloses a technique for analyzing the state of a single distribution server (second node). The above technique disclosed in Patent Document 1 does not analyze the state of a distribution system provided with a plurality of distribution servers.
  • An object of the present invention is to provide an analysis device, an analysis method, and a program capable of appropriately analyzing the state of a distribution system provided with a plurality of distribution servers.
  • the analysis device includes a distribution data acquisition unit that acquires a plurality of distribution data distributed by a plurality of distribution servers provided in the distribution system, and a plurality of the distribution data acquired by the distribution data acquisition unit. It is provided with an analysis processing unit that executes analysis processing by comparing.
  • the analysis method performs an analysis process by acquiring a plurality of distribution data distributed by a plurality of distribution servers provided in the distribution system and comparing the acquired plurality of the distribution data. Be prepared to do.
  • the program according to one aspect of the present invention includes a distribution data acquisition unit that acquires a plurality of distribution data distributed by a plurality of distribution servers provided in the distribution system, and a plurality of the distribution data acquisition units acquired by the distribution data acquisition unit. It is a program that functions as an analysis processing unit that executes analysis processing by comparing distributed data.
  • Data distribution via the Internet which is a global network in which a large number of computer networks are interconnected, is utilized.
  • the distribution device distributes data in response to a request from a user.
  • data suitable for the intention of the distributor should be distributed from the distribution device to the client that sent the request.
  • the purpose of this embodiment is to appropriately analyze the state of the distribution system provided with a plurality of distribution servers.
  • a plurality of distribution data distributed by a plurality of distribution servers provided in the distribution system are acquired, and analysis processing is executed by comparing the acquired plurality of distribution data. Will be done.
  • FIG. 1 is an explanatory diagram illustrating a schematic configuration of an analysis system S1 according to a first embodiment of the present invention.
  • the analysis system S1 of the present embodiment includes a user device 100, an analysis device 200, a plurality of client devices 300, and a database device 400.
  • the user device 100, the analysis device 200, the plurality of client devices 300, and the database device 400 can communicate with each other via the network 500.
  • the plurality of client devices 300 can access the CDN 600 via the network 500 under the control of the analysis device 200.
  • the CDN 600 is a distribution system having a plurality of distribution servers 700 and a control server 750.
  • the analysis device 200 controls a plurality of client devices 300 to access the CDN 600 based on the instruction from the user device 100.
  • the plurality of client devices 300 store the distribution data received from the CDN 600 in the database device 400.
  • the analysis device 200 executes an analysis process using the distribution data stored in the database device 400 and outputs the analysis process to the user device 100.
  • the analysis system S1 of the present embodiment is a system having a plurality of nodes that communicate according to a predetermined Internet protocol suite (for example, Transmission Control Protocol / Internet Protocol, TCP / IP).
  • a predetermined Internet protocol suite for example, Transmission Control Protocol / Internet Protocol, TCP / IP.
  • the analysis system S1 may be a system compliant with other standards.
  • the user device 100 of the present embodiment is a device that receives an input from a user, supplies the input to the analysis device 200, receives an output from the analysis device 200, and presents the output to the user.
  • FIG. 2 is a block diagram illustrating a schematic configuration of the user device 100. As shown in FIG. 2, the user apparatus 100 includes a network communication unit 110, a storage unit 120, a control unit 130, and an input / output interface (I / F) 140.
  • I / F input / output interface
  • the network communication unit 110 is an element that transmits / receives a signal to / from another device (for example, an analysis device 200) via the network 500.
  • the network communication unit 110 may be implemented by, for example, a network adapter and / or a network interface card (NIC).
  • NIC network interface card
  • the storage unit 120 is an element that temporarily or permanently stores programs (instructions) and data used to execute various processes in the user device 100.
  • the program includes one or more instructions for the operation of the user apparatus 100.
  • the storage unit 120 may be mounted by, for example, a storage medium such as a volatile memory, a non-volatile memory, or a magnetic disk, or a combination of two or more thereof. Further, the storage unit 120 may be integrally configured with one or more processors constituting the control unit 130.
  • the control unit 130 is an element that provides various functions of the user device 100, and has an input unit 131, an instruction generation unit 133, and an output unit 135 as functional blocks.
  • the control unit 130 may further include components other than the above functional blocks. That is, the control unit 130 can execute an operation other than the operation by the above functional blocks.
  • the control unit 130 may be implemented by, for example, one or more processors.
  • the control unit 130 may realize the processing of the present embodiment described later by expanding and executing the program stored in the storage unit 120 in the storage unit 120 and / or a system memory (not shown).
  • each functional block input unit 131, instruction generation unit 133, and output unit 135) may be realized by one or more processors different from the control unit 130.
  • the input / output I / F 140 is an interface between an input device such as a keyboard and a mouse, an output device such as a liquid crystal display, and a user device 100.
  • the input / output I / F 40 converts an input signal corresponding to a user operation on an input device into input data and supplies it to the control unit 130, and converts the output data supplied from the control unit 130 into an output signal to the output device. Send.
  • the input data supplied from the input / output I / F 140 is transferred to the instruction generation unit 133 via the input unit 131.
  • the operation of the instruction generation unit 133 will be described later.
  • the output unit 135 processes the data transmitted from the analysis device 200 and supplies it to the input / output I / F 140 as output data.
  • the analysis device 200 of the present embodiment is a device that controls the client device 300 to acquire distribution data from the CDN 600 and executes analysis processing using the acquired distribution data.
  • FIG. 3 is a block diagram illustrating a schematic configuration of the analysis device 200. As shown in FIG. 3, the analysis device 200 includes a network communication unit 210, a storage unit 220, and a control unit 230.
  • the network communication unit 210 is an element that transmits / receives signals to / from other devices (for example, a user device 100, a client device 300, and a database device 400) via the network 500.
  • the network communication unit 210 may be implemented by, for example, a network adapter and / or a network interface card.
  • the storage unit 220 is an element that temporarily or permanently stores programs (instructions) and data used to execute various processes in the analysis device 200.
  • the program includes one or more instructions for the operation of the analyzer 200.
  • the storage unit 220 may be mounted by, for example, a storage medium such as a volatile memory, a non-volatile memory, or a magnetic disk, or a combination of two or more thereof. Further, the storage unit 220 may be integrally configured with one or more processors constituting the control unit 230.
  • the storage unit 220 stores the analysis policy 221 and the parameter 223 used in the analysis process of the present embodiment described later.
  • the analysis policy 221 and the parameter 223 will be described later.
  • the parameter 223 may include, for example, the IP (Internet Protocol) address of the client device 300, the country / region estimated based on the IP address range, and the IP address of the distribution server 700 in the CDN 600.
  • the control unit 230 is an element that provides various functions of the analysis device 200, and has an input / output unit 231, a client control unit 233, a distribution data acquisition unit 235, and an analysis processing unit 237 as functional blocks.
  • the control unit 230 may further include components other than the above functional blocks. That is, the control unit 230 can execute an operation other than the operation by the above functional blocks.
  • the control unit 230 may be implemented by, for example, one or more processors.
  • the control unit 230 may realize the processing of the present embodiment described later by expanding and executing the program stored in the storage unit 220 in the storage unit 220 and / or a system memory (not shown).
  • Each functional block (input / output unit 231, client control unit 233, distribution data acquisition unit 235, and analysis processing unit 237) may be realized by one or more processors different from the control unit 230.
  • the input / output unit 231 processes the data input to the analysis device 200 and the data to be output from the analysis device 200.
  • the client control unit 233 controls a plurality of client devices 300 to acquire a plurality of distribution data from the plurality of distribution servers 700.
  • the distribution data acquisition unit 235 acquires the distribution data distributed by the distribution server 700 from the database device 400.
  • the analysis processing unit 237 executes the analysis processing according to the analysis policy 221 that specifies the items to be compared in the analysis processing. Further, the analysis processing unit 237 outputs status information indicating the state of at least one distribution server 700 to the user apparatus 100 based on the result of the analysis processing.
  • FIG. 4 is a block diagram illustrating a schematic configuration of the client device 300.
  • the client device 300 has a network communication unit 310, a storage unit 320, and a control unit 330.
  • a global IP address is assigned to the client device 300.
  • the network communication unit 310 is an element that transmits / receives signals to / from other devices (for example, an analysis device 200, a database device 400, and a distribution server 700) via the network 500.
  • the network communication unit 310 may be implemented by, for example, a network adapter and / or a network interface card.
  • the storage unit 320 is an element that temporarily or permanently stores programs (instructions) and data used to execute various processes in the client device 300.
  • the program includes one or more instructions for the operation of the client device 300.
  • the storage unit 320 may be mounted by, for example, a storage medium such as a volatile memory, a non-volatile memory, or a magnetic disk, or a combination of two or more thereof. Further, the storage unit 320 may be integrally configured with one or more processors constituting the control unit 330.
  • the control unit 330 is an element that provides various functions of the client device 300, and has an access unit 331 and a data storage unit 333 as functional blocks.
  • the control unit 330 may further include components other than the above functional blocks. That is, the control unit 330 can execute an operation other than the operation by the above functional blocks.
  • the control unit 330 may be implemented by, for example, one or more processors.
  • the control unit 330 may realize the processing of the present embodiment described later by expanding and executing the program stored in the storage unit 320 in the storage unit 320 and / or a system memory (not shown).
  • each functional block access unit 331 and data storage unit 333
  • the database device 400 of the present embodiment is a device that stores distribution data supplied from a plurality of client devices 300.
  • FIG. 5 is a block diagram illustrating a schematic configuration of the database device 400.
  • the database device 400 has a network communication unit 410, a storage unit 420, and a control unit 430.
  • the network communication unit 410 is an element that transmits / receives signals to / from other devices (for example, the analysis device 200 and the client device 300) via the network 500.
  • the network communication unit 410 may be implemented by, for example, a network adapter and / or a network interface card.
  • the storage unit 420 is an element that temporarily or permanently stores programs (instructions) and data used to execute various processes in the database device 400.
  • the program includes one or more instructions for the operation of the database device 400.
  • the storage unit 420 may be mounted by, for example, a storage medium such as a volatile memory, a non-volatile memory, or a magnetic disk, or a combination of two or more thereof. Further, the storage unit 420 may be integrally configured with one or more processors constituting the control unit 430.
  • the control unit 430 is an element that provides various functions of the database device 400, and has a database management unit 431 as a functional block.
  • the database management unit 431 is a so-called database management system (DBMS), and can operate together with the storage unit 420 to realize a relational database (RDB).
  • DBMS database management system
  • RDB relational database
  • the control unit 430 may further include components other than the above functional blocks. That is, the control unit 430 can execute an operation other than the operation by the above functional blocks.
  • the control unit 430 can be implemented by, for example, one or more processors.
  • the control unit 430 may realize the processing of the present embodiment described later by expanding and executing the program stored in the storage unit 420 in the storage unit 420 and / or a system memory (not shown).
  • each functional block may be realized by one or more processors different from the control unit 430.
  • the database device 400 may be configured as a part of the analysis device 200.
  • the control unit 230 may include a functional block corresponding to the database management unit 431, and the functional block may operate together with the storage unit 220 to realize the relational database of the present embodiment.
  • the CDN 600 which is the distribution system of the present embodiment, has a plurality of distribution servers 700 and a control server 750 that controls the distribution server 700.
  • FIG. 6 is an explanatory diagram illustrating a schematic configuration of the CDN 600.
  • the plurality of distribution servers 700 include, for example, at least one origin server 710 that distributes the original distribution data, and at least one cache server 720 that caches the distribution data distributed by the origin server 710.
  • the CDN 600 includes one origin server 710 and a plurality of cache servers 720.
  • the plurality of distribution servers 700 logically configure one CDN 600, they can be physically installed at any place. For example, five distribution servers 700 may be located in Japan, South Korea, China, Europe, and the United States, respectively.
  • Each distribution server 700 transmits distribution data in response to a request from the client device 300 (access unit 331).
  • the access destination of the client device 300 is distributed based on name resolution by a domain name server (DNS) (not shown).
  • DNS domain name server
  • the access destination of the client device 300 is directly specified by the IP address.
  • Each cache server 720 caches the distribution data distributed by the origin server 710. Therefore, when the origin server 710 and the plurality of cache servers 720 are properly synchronized, each client device 300 (access unit 331) accesses any distribution server 700 (origin server 710 and cache server 720). Can also get the same delivery data.
  • the control server 750 executes a synchronization check for determining whether or not the origin server 710 and each cache server 720 are synchronized.
  • the above synchronization check may be executed, for example, at predetermined time intervals.
  • the control server 750 controls the cache server 720, which is determined not to be synchronized with the origin server 710, so that the origin server 710 synchronizes with the cache server 720.
  • any one of the plurality of distribution servers 700 (for example, the origin server 710) may have the function of the control server 750.
  • FIG. 7 is a sequence diagram illustrating the flow of analysis processing in the first embodiment.
  • step S10 the input unit 131 of the user device 100 receives the input data indicating the user's instruction and supplies it to the instruction generation unit 133.
  • the instruction generation unit 133 generates instruction data indicating an access instruction to each client device 300 based on the input data, and transmits the generated instruction data to the analysis device 200.
  • FIG. 8 is an explanatory diagram illustrating the instruction data according to the present embodiment.
  • client may be abbreviated as “CL” in each figure.
  • the instruction data is a request content (for example, HTTP (Hyper)) indicating a client ID, a client port number, a connection destination, a connection destination port number, a target to be acquired, and the like for each of the plurality of client devices 300.
  • the connection destination is specified by a domain name or an IP address.
  • the expected difference indicates the difference between the reference data (for example, the original distribution data distributed by the origin server 710) and the data expected to be acquired (for example, the distribution data cached in the cache server 720).
  • the connection destination of the client device 300 with the client ID # 0 is the origin server 710, there is no value indicating the expected difference.
  • the instruction data generated by the instruction generation unit 133 may include instructions to at least one client device 300. It is preferable that the user instructs the user apparatus 100 of the client ID, the connection destination, and the expected difference. It is preferable that default values are set for items that are not instructed by the user in the instruction data.
  • the input / output unit 231 of the analysis device 200 receives the instruction data from the user device 100 (instruction generation unit 133) and supplies the instruction data to the client control unit 233.
  • the client control unit 233 generates request control data for each client device 300 based on the supplied instruction data.
  • the request control data is data including the above items indicated by the instruction data, and corresponds to the domain name corresponding to the CDN 600 to be accessed or one distribution server 700 to be accessed for each of the plurality of client devices 300. It is data that can specify the IP address.
  • the request control data can be configured by, for example, a URI (Uniform Resource Identifier). More specifically, it is as follows.
  • FIG. 9 is an explanatory diagram illustrating the request control data according to the present embodiment.
  • the request control data is data corresponding to a request for each of the plurality of client devices 300, like the instruction data. Further, the request control data is data including the client IP address, the client country / region, the connection destination country / region, the IP address of the origin server 710, and the request transmission time in addition to the above items included in the instruction data. ..
  • the client control unit 233 generates request control data by adding the above items shown underlined in FIG. 9 to the instruction data with reference to the parameter 223 in the storage unit 220, the system clock (not shown), and the like. ..
  • the client country / region and the connection destination country / region included in the request control data are information estimated from the IP address.
  • the domain name may correspond to a plurality of IP addresses
  • the country / region of the connection destination does not have to be specified in the entry for specifying the connection destination by the domain name.
  • the information relating the domain name and the country / region is stored in the parameter 223, the country / region of the connection destination is specified from the domain name. May be good.
  • step S14 the client control unit 233 of the analysis device 200 transmits the request control data generated in step S12 to each of the plurality of client devices 300.
  • the client control unit 233 will send a request (for example, an HTTP request) to the plurality of distribution servers 700 based on the instruction from the user. Control 300.
  • step S16 the access unit 331 of each client device 300 transmits a request to any distribution server 700 based on the request control data transmitted from the analysis device 200 (client control unit 233). More specifically, when the request control data indicates the connection destination by the domain name, the access unit 331 transmits the request to the distribution server 700 indicated by the IP address converted according to the name resolution by DNS. On the other hand, when the request control data indicates the connection destination by the IP address, the access unit 331 transmits the request to the distribution server 700 indicated by the IP address included in the request control data.
  • each of the distribution servers 700 transmits distribution data (for example, an HTML (HyperText Markup Language) file) in response to a request from the client device 300.
  • distribution data for example, an HTML (HyperText Markup Language) file
  • Each of the access units 331 of the client device 300 receives the distribution data transmitted from the distribution server 700.
  • FIG. 10 is an explanatory diagram illustrating distribution data according to the present embodiment. As shown in FIG. 10, the distribution data includes a header portion and a body portion.
  • step S20 the data storage unit 333 of each client device 300 transmits the distribution data received by the access unit 331 to the database device 400 together with the parameters related to access.
  • the database management unit 431 of the database device 400 stores the distribution data and access parameters transmitted from the client device 300 (data storage unit 333) in the storage unit 420 in a format that can be used as a relational database.
  • FIG. 11 is an explanatory diagram illustrating data stored in the storage unit 420 of the database device 400 according to the present embodiment. As shown in FIG. 11, in the storage unit 420 of the database device 400, the distribution data acquired by the client device 300 is stored in association with the parameters related to access included in the request control data.
  • the IP address of the distribution server 700 is known after the client device 300 has accessed the distribution server 700. Therefore, as shown in FIG. 11, the database management unit 431 may further store the IP address returned from DNS and the country / region of the connection destination for the connection destination specified by the domain name.
  • step S22 the distribution data acquisition unit 235 of the analysis device 200 requests the database management unit 431 of the database device 400 to supply the distribution data and parameters stored in the storage unit 420 (for example, querying). Send).
  • the database management unit 431 reads out the distribution data and parameters based on the above request and transmits them to the analysis device 200.
  • step S24 the analysis processing unit 237 of the analysis device 200 executes the analysis processing by comparing a plurality of distribution data and parameters acquired by the distribution data acquisition unit 235.
  • the analysis policy 221 specifies that the analysis processing unit 237 compares whether or not the distribution data match each other between the distribution servers 700.
  • FIG. 12 is an explanatory diagram illustrating the result of the analysis process in the present embodiment.
  • the analysis processing unit 237 includes distribution data of the origin server 710 acquired by the client device 300 of client ID # 0 (hereinafter referred to as client # 0; the same applies to other client IDs) and client # 1 in accordance with analysis policy 221. It is determined whether or not there is an actual difference (actual difference) by comparing the distribution data of the cache server 720 acquired by # 3 with each other.
  • the above comparison process can be executed by using, for example, a diff command for comparing character strings.
  • the analysis processing unit 237 outputs status information, which is a flag that discretely indicates whether the distribution server 700 is normal or abnormal, based on the result of the analysis processing described above. Specifically, it is as shown in the following example.
  • the expected difference between the distribution data of the origin server 710 and the distribution data of the cache server 720 acquired by the client # 1 is "none".
  • the expected difference and the actual difference (“none”) match, so the analysis processing unit 237 determines that the server is normal and outputs status information indicating normality. ..
  • the expected difference between the distribution data of the origin server 710 and the distribution data of the cache server 720 acquired by the client # 2 is "Yes". Since the expected difference and the actual difference (“Yes”) match with respect to the cache server 720 accessed by client # 2, the analysis processing unit 237 determines that the server is normal and outputs status information indicating normality. ..
  • the expected difference between the distribution data of the origin server 710 and the distribution data of the cache server 720 acquired by the client # 3 is "Yes".
  • the analysis processing unit 237 determines that the server is abnormal and outputs status information indicating the abnormality. ..
  • the analysis processing unit 237 supplies the result of the analysis processing including the above-mentioned status information to the input / output unit 231.
  • the result of the analysis process may include the data used in the analysis process (delivery data and parameters acquired from the database device 400).
  • step S26 the input / output unit 231 of the analysis device 200 transmits the result of the analysis process including the status information regarding the distribution server 700 supplied from the analysis processing unit 237 to the user device 100.
  • step S28 the output unit 135 of the user device 100 presents to the user the result of the analysis process transmitted from the analysis device 200 (input / output unit 231). More specifically, for example, the output unit 135 may display a list including the distribution server 700 and the status information in the screen of the browser used by the user. Further, the output unit 135 may display a badge indicating the status information together with the site information included in the search result searched by the user using the browser. In addition, the output unit 135 may distribute the result of the analysis process including the status information as an RSS feed.
  • the status information in the above configuration is a flag that discretely indicates whether the distribution server 700 is normal or abnormal.
  • a continuous value probabilistically indicating whether the distribution server 700 is normal or abnormal may be used as the status information based on the analysis policy 221.
  • the user can quantitatively grasp the degree of abnormality of the distribution server 700.
  • the flag indicating normal / abnormal discretely is used as the status information as in the present embodiment, the user can easily grasp the degree of abnormality of the distribution server 700.
  • the analysis processing unit 237 of the analysis device 200 determines whether the distribution server 700 is normal or abnormal based on the result of the analysis processing using the distribution data.
  • the result of the analysis processing by the analysis processing unit 237 may be output to the user apparatus 100 as it is based on the analysis policy 221.
  • the analysis processing unit 237 outputs information that identifies a portion of the analysis processing in which the distribution data is different. Based on the above information, the user device 100 can present to the user a portion of the website where the difference occurs.
  • the analysis policy 221 in the above configuration specifies that the analysis processing unit 237 compares whether or not the distribution data match each other between the distribution servers 700.
  • the analysis policy 221 may specify that the analysis processing unit 237 compares the distribution data from the distribution server 700 with the data expected to be acquired.
  • the data distribution status is appropriately analyzed even if the origin server 710 and the cache server 720 are simply compared. It's difficult.
  • the data expected to be acquired for each distribution server 700 is compared with the actual distribution data, so that the data distribution status can be checked even if the plurality of distribution servers 700 are not completely synchronized. It can be analyzed appropriately.
  • the analysis processing unit 237 may realize the analysis processing by comparing the past distribution data with the current distribution data. That is, the analysis policy 221 may specify that the analysis processing unit 237 compares the distribution data actually acquired by the distribution data acquisition unit 235 with the distribution data acquired in the past. According to the above configuration, the state of data distribution can be analyzed more appropriately by the time-series comparison processing.
  • the analysis processing unit 237 may analyze the state of data distribution by comparing a plurality of parameters related to access acquired from the plurality of distribution servers 700 for each item. For example, a plurality of parameters related to access acquired from one distribution server 700 may be regarded as one vector, and the comparison process may be realized by a vector operation. According to the above configuration, the analysis process is executed in consideration of elements other than the distribution data, so that the state of data distribution can be analyzed more appropriately.
  • the analysis device 200 can flexibly change the content of the analysis process by changing the analysis policy 221 stored in the storage unit 220. Therefore, it is possible to realize an appropriate analysis process according to various situations as compared with a configuration in which the algorithm for the analysis process is fixed.
  • the analysis device 200 may be virtualized. That is, the analysis device 200 may be implemented as a virtual machine. In this case, the analysis device 200 (virtual machine) may operate as a virtual machine on a physical machine (hardware) including a processor, a memory, and the like, and a hypervisor. The same applies to the user device 100, the client device 300, and the database device 400.
  • each of the plurality of clients controlled by the client control unit 233 has a relay node (for example, a proxy server) to which a global IP address is assigned. It is preferable to access the distribution server 700 via the distribution server 700. Although it is difficult to freely assign a global IP address to a client due to regional restrictions, the access source (that is, the global IP address) to the distribution server 700 can be adjusted via a relay node.
  • a relay node for example, a proxy server
  • the user device 100 may be divided into a user device for input and a user device for output. It is more preferable to apply the above configuration to a configuration that provides the results of analysis processing to a large number of user devices.
  • the analysis device 200 may execute the above-mentioned analysis process without being based on the user's instruction from the user device 100. For example, based on the analysis policy 221, the processing after step S12 in FIG. 7 may be executed at predetermined time intervals. Further, the analysis device 200 does not have to transmit the result of the analysis process to the user device 100. For example, the result of the analysis process may be stored in the storage unit 220 and used for controlling the CDN 600.
  • FIG. 13 is a block diagram illustrating a schematic configuration of the analysis device 200a according to the second embodiment. As shown in FIG. 13, the analysis device 200a has a distribution data acquisition unit 235a and an analysis processing unit 237a.
  • the distribution data acquisition unit 235a and the analysis processing unit 237a may be implemented by one or more processors, a memory (for example, a non-volatile memory and / or a volatile memory), and / or a hard disk.
  • the distribution data acquisition unit 235a and the analysis processing unit 237a may be implemented by the same processor or may be separately implemented by different processors.
  • the memory may be contained in the one or more processors, or may be outside the one or more processors.
  • the analysis device 200a (distribution data acquisition unit 235a) acquires a plurality of distribution data distributed by a plurality of distribution servers provided in the distribution system. Next, the analysis device 200a (analysis processing unit 237a) executes the analysis process by comparing the plurality of distribution data acquired by the distribution data acquisition unit.
  • the distribution data acquisition unit 235a and the analysis processing unit 237a included in the analysis device 200a according to the second embodiment each acquire the distribution data included in the analysis device 200 according to the first embodiment.
  • the operations of the unit 235 and the analysis processing unit 237 may be executed.
  • the description of the first embodiment can be applied to the second embodiment.
  • the second embodiment is not limited to the above examples.
  • the steps in the process described herein do not necessarily have to be performed in chronological order in the order described in the sequence diagram.
  • the steps in the process may be executed in a different order from the order described in the sequence diagram, or may be executed in parallel.
  • some of the steps in the process may be deleted, and additional steps may be added to the process.
  • a device for example, a plurality of devices (or units) constituting the analysis device
  • the components of the analysis device described in the present specification for example, a client control unit, a distribution data acquisition unit, and / or an analysis processing unit.
  • One or more of the devices (or units), or modules for one of the plurality of devices (or units) described above) may be provided.
  • an apparatus including the components of the user apparatus described herein (eg, an input unit, a setting processing unit, and / or an output unit) may be provided.
  • a device eg, a module for a client device comprising the components of each client device described herein (eg, an access unit and / or a data storage unit) may be provided.
  • An apparatus eg, a module for a database apparatus comprising the components of the database apparatus described herein (eg, a database management unit) may be provided.
  • a method including the processing of the above components may be provided, and a program for causing the processor to execute the processing of the above components may be provided.
  • a non-transitory computer readable medium may be provided that can be read by the computer on which the program is recorded.
  • Appendix 1 A distribution data acquisition unit that acquires multiple distribution data distributed by multiple distribution servers provided in the distribution system, and a distribution data acquisition unit.
  • An analysis processing unit that executes analysis processing by comparing a plurality of the distribution data acquired by the distribution data acquisition unit, and an analysis processing unit.
  • Appendix 2 The analysis device according to Appendix 1, wherein the analysis processing unit executes the analysis processing according to an analysis policy that specifies items to be compared in the analysis processing.
  • Appendix 3 The analysis device according to Appendix 2, wherein the analysis processing unit outputs status information indicating the state of at least one distribution server based on the result of the analysis processing.
  • the status information is a flag that discretely indicates whether the distribution server is normal or abnormal, or a continuous value that probabilistically indicates whether the distribution server is normal or abnormal.
  • the analyzer described in. (Appendix 5) The analysis device according to any one of Supplementary note 2 to Supplementary note 4, wherein the analysis policy specifies that the analysis processing unit compares whether or not the distribution data match each other. (Appendix 6) The analysis device according to any one of Supplementary note 2 to Supplementary note 4, wherein the analysis policy specifies that the analysis processing unit compares the distribution data with the data expected to be acquired. (Appendix 7) The analysis device according to Appendix 2, wherein the analysis processing unit outputs the result of the analysis processing.
  • the analysis device according to Appendix 7, wherein the analysis processing unit outputs information for identifying a portion of the analysis processing in which a difference occurs in the distribution data.
  • the analysis policy is described in any one of Appendix 2 to Appendix 8, which specifies that the analysis processing unit compares the distribution data actually acquired by the distribution data acquisition unit with the distribution data acquired in the past.
  • Analytical device (Appendix 10) The distribution system includes at least one origin server and at least one cache server for caching distribution data distributed by the origin server as the plurality of distribution servers, according to any one of Supplementary note 1 to Supplementary note 9. Analytical device.
  • the client control unit specifies, for each of the plurality of clients, the domain name corresponding to the distribution system to be accessed or the IP address corresponding to one distribution server to be accessed, Appendix 11 to Appendix 13.
  • the analyzer according to any one of the above items.
  • (Appendix 15) Acquiring multiple distribution data distributed by multiple distribution servers installed in the distribution system, Performing analysis processing by comparing the acquired plurality of the distribution data, and An analysis method that comprises.
  • a program that functions as.
  • S1 Analysis system 100 User equipment 200 Analysis equipment 233 Client control unit 235 Distribution data acquisition unit 237 Analysis processing unit 300 Client equipment 400 Database equipment 600 CDN (distribution system) 700 distribution server 710 origin server 720 cache server

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】複数の配信サーバが設けられた配信システムの状態を適切に解析する。 【解決手段】解決装置が、配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する配信データ取得部235と、配信データ取得部235が取得した複数の配信データを比較することで解析処理を実行する解析処理部237と、を備える。

Description

解析装置、解析方法、及びプログラム
 本発明は、解析装置、解析方法、及びプログラムに関する。
 多数のコンピュータネットワークを相互に接続したグローバルなネットワークであるインターネット(the Internet)を介したデータ配信が活用されている。一般的に、配信装置は、ユーザからのリクエストに応じてデータを配信する。
 以上のようなインターネットを介したデータ配信においては、リクエストを送信したクライアントに対して配信者の意図に適ったデータが配信装置から配信されるべきである。近年、リクエストに対する装置からの応答を解析する種々の技術が提案されている。
 例えば、特許文献1には、ネットワーク上でサービスを提供するノードを分析する技術が開示されている。以上の技術においては、まず、複数の第1ノードが、分析対象である1つの第2ノードに対してリクエストを送信する。第2ノードが、受信したリクエストに対する応答を第1ノードにそれぞれ送信する。通信分析装置が、第1ノードからそれぞれ送信された応答を分析して出力する。
国際公開第2020/017404号
 特許文献1が開示するのは、単一の配信サーバ(第2ノード)の状態を分析する技術である。特許文献1に開示されている上記技術は、複数の配信サーバが設けられた配信システムの状態を解析するものではない。
 近年、コンテンツ配信ネットワーク(Content Delivery Network, CDN)等の複数の配信サーバが設けられた配信システムを用いてデータを配信する技術が提案されている。そのため、以上のような配信システムの状態に関する解析技術の開発が求められている。
 本発明の目的は、複数の配信サーバが設けられた配信システムの状態を適切に解析可能な解析装置、解析方法、及びプログラムを提供することにある。
 本発明の一態様に係る解析装置は、配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する配信データ取得部と、前記配信データ取得部が取得した複数の前記配信データを比較することで解析処理を実行する解析処理部と、を備える。
 本発明の一態様に係る解析方法は、配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得することと、取得された複数の前記配信データを比較することで解析処理を実行することと、を備える。
 本発明の一態様に係るプログラムは、コンピュータを、配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する配信データ取得部と、前記配信データ取得部が取得した複数の前記配信データを比較することで解析処理を実行する解析処理部と、として機能させるプログラムである。
 本発明によれば、複数の配信サーバが設けられた配信システムの状態を適切に解析することが可能になる。なお、本発明により、当該効果の代わりに、又は当該効果とともに、他の効果が奏されてもよい。
本発明の第1実施形態に係るシステムS1の概略的な構成を例示する説明図である。 本発明の第1実施形態に係るユーザ装置100の概略的な構成を例示するブロック図である。 本発明の第1実施形態に係る解析装置200の概略的な構成を例示するブロック図である。 本発明の第1実施形態に係るクライアント装置300の概略的な構成を例示するブロック図である。 本発明の第1実施形態に係るデータベース装置400の概略的な構成を例示するブロック図である。 本発明の第1実施形態に係るCDN600の概略的な構成を例示する説明図である。 本発明の第1実施形態における解析処理を例示するシーケンス図である。 本発明の第1実施形態に係る指示データを例示する説明図である。 本発明の第1実施形態に係るリクエスト制御データを例示する説明図である。 本発明の第1実施形態に係る配信データを例示する説明図である。 本発明の第1実施形態に係るデータベース装置400に蓄積されるデータを例示する説明図である。 本発明の第1実施形態における解析処理の結果を例示する説明図である。 本発明の第2実施形態に係る解析装置200aの概略的な構成を例示するブロック図である。
 以下、添付の図面を参照して本発明の実施形態を詳細に説明する。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複した説明が省略され得る。
 以下に説明される各実施形態は、本発明を実現可能な構成の一例に過ぎない。以下の各実施形態は、本発明が適用される装置の構成や各種の条件に応じて適宜に修正又は変更することが可能である。以下の各実施形態に含まれる要素の組合せの全てが本発明を実現するに必須であるとは限られず、要素の一部を適宜に省略することが可能である。したがって、本発明の範囲は、以下の各実施形態に記載される構成によって限定されるものではない。相互に矛盾のない限りにおいて、実施形態内に記載された複数の構成を組み合わせた構成も採用可能である。
 本発明に係る説明は、以下の順序で行われる。
 1. 本発明の実施形態の概要
 2. 第1実施形態
  2.1. ユーザ装置100の構成
  2.2. 解析装置200の構成
  2.3. クライアント装置300の構成
  2.4. データベース装置400の構成
  2.5. CDN600の構成
  2.6. 動作例
  2.7. 変形例
 3. 第2実施形態
  3.1. 解析装置200aの構成
  3.2. 動作例
 4. 他の実施形態
 <<1. 本発明の実施形態の概要>>
 まず、本発明の実施形態の概要を説明する。
 (1)技術的課題
 多数のコンピュータネットワークを相互に接続したグローバルなネットワークであるインターネット(the Internet)を介したデータ配信が活用されている。一般的に、配信装置は、ユーザからのリクエストに応じてデータを配信する。以上のようなインターネットを介したデータ配信においては、リクエストを送信したクライアントに対して配信者の意図に適ったデータが配信装置から配信されるべきである。
 近年、コンテンツ配信ネットワーク(Content Delivery Network, CDN)等の複数の配信サーバが設けられた配信システムを用いてデータを配信する技術が提案されている。そのため、以上のような配信システムの状態に関する解析技術の開発が求められている。
 以上の事情に鑑み、本実施形態では、複数の配信サーバが設けられた配信システムの状態を適切に解析することを目的とする。
 (2)技術的特徴
 本発明の実施形態では、配信システムに設けられた複数の配信サーバが配信する複数の配信データが取得され、取得された複数の配信データを比較することで解析処理が実行される。
 以上の構成によれば、複数の配信サーバが設けられた配信システムの状態を適切に解析することが可能になる。なお、本実施形態により、当該効果の代わりに、又は当該効果とともに、他の効果が奏されてもよい。なお、上述した技術的特徴は本発明の実施形態の具体的な一例であり、当然ながら、本発明の実施形態は上述した技術的特徴に限定されない。
 <<2. 第1実施形態>>
 次いで、図1乃至図12を参照して、本発明の第1実施形態を説明する。図1は、本発明の第1実施形態に係る解析システムS1の概略的な構成を例示する説明図である。図1に示すように、本実施形態の解析システムS1は、ユーザ装置100、解析装置200、複数のクライアント装置300、及びデータベース装置400を有する。ユーザ装置100、解析装置200、複数のクライアント装置300、及びデータベース装置400は、ネットワーク500を介して互いに通信できる。
 複数のクライアント装置300は、解析装置200による制御の下、ネットワーク500を介してCDN600にアクセスできる。CDN600は、複数の配信サーバ700と制御サーバ750とを有する配信システムである。
 概略的には、ユーザ装置100からの指示に基づいて、解析装置200が複数のクライアント装置300を制御しCDN600にアクセスさせる。複数のクライアント装置300は、CDN600から受信した配信データをデータベース装置400に蓄積する。解析装置200は、データベース装置400に蓄積された配信データを用いて解析処理を実行しユーザ装置100に出力する。
 本実施形態の解析システムS1は、所定のインターネット・プロトコル・スイート(例えば、Transmission Control Protocol / Internet Protocol, TCP/IP)に従って通信する複数のノードを有するシステムである。なお、解析システムS1は、他の規格に準拠したシステムであってもよい。
 <2.1. ユーザ装置100の構成>
 本実施形態のユーザ装置100は、ユーザからの入力を受け付けて解析装置200に供給し、解析装置200からの出力を受信してユーザに提示する装置である。図2は、ユーザ装置100の概略的な構成を例示するブロック図である。図2に示すように、ユーザ装置100は、ネットワーク通信部110と記憶部120と制御部130と入出力インターフェース(I/F)140とを有する。
 ネットワーク通信部110は、ネットワーク500を介して他の装置(例えば、解析装置200)と信号を送受信する要素である。ネットワーク通信部110は、例えば、ネットワークアダプタ及び/又はネットワークインターフェースカード(Network Interface Card, NIC)によって実装され得る。
 記憶部120は、ユーザ装置100における種々の処理を実行するのに用いられるプログラム(命令)及びデータを一時的又は恒久的に格納する要素である。上記プログラムは、ユーザ装置100の動作のための1つ以上の命令を含む。記憶部120は、例えば、揮発性メモリ、不揮発性メモリ、若しくは磁気ディスク等の記憶媒体又はこれらの2種以上の組合せによって実装され得る。また、記憶部120が制御部130を構成する1以上のプロセッサと一体的に構成されてもよい。
 制御部130は、ユーザ装置100の種々の機能を提供する要素であって、入力部131、指示生成部133、及び出力部135を機能ブロックとして有する。なお、制御部130は、以上の機能ブロック以外の構成要素を更に含んでよい。即ち、制御部130は、以上の機能ブロックによる動作以外の動作を実行できる。
 制御部130は、例えば、1以上のプロセッサによって実装され得る。制御部130は、記憶部120に記憶されたプログラムを記憶部120及び/又は不図示のシステムメモリに展開し実行することによって、後述される本実施形態の処理を実現してよい。なお、各機能ブロック(入力部131、指示生成部133、及び出力部135)が、制御部130とは別の1以上のプロセッサによって実現されてもよい。
 入出力I/F140は、キーボード及びマウス等の入力デバイス並びに液晶ディスプレイ等の出力デバイスとユーザ装置100とのインターフェースである。入出力I/F40は、入力デバイスに対するユーザ操作に対応する入力信号を入力データに変換して制御部130に供給し、制御部130から供給された出力データを出力信号に変換して出力デバイスに送信する。
 入出力I/F140から供給された入力データは入力部131を介して指示生成部133に転送される。指示生成部133の動作については後述される。また、出力部135は、解析装置200から送信されたデータを加工し、出力データとして入出力I/F140に供給する。
 <2.2. 解析装置200の構成>
 本実施形態の解析装置200は、クライアント装置300を制御してCDN600から配信データを取得すると共に、取得された配信データを用いて解析処理を実行する装置である。図3は、解析装置200の概略的な構成を例示するブロック図である。図3に示すように、解析装置200は、ネットワーク通信部210と記憶部220と制御部230とを有する。
 ネットワーク通信部210は、ネットワーク500を介して他の装置(例えば、ユーザ装置100、クライアント装置300、及びデータベース装置400)と信号を送受信する要素である。ネットワーク通信部210は、例えば、ネットワークアダプタ及び/又はネットワークインターフェースカードによって実装され得る。
 記憶部220は、解析装置200における種々の処理を実行するのに用いられるプログラム(命令)及びデータを一時的又は恒久的に格納する要素である。上記プログラムは、解析装置200の動作のための1つ以上の命令を含む。記憶部220は、例えば、揮発性メモリ、不揮発性メモリ、若しくは磁気ディスク等の記憶媒体又はこれらの2種以上の組合せによって実装され得る。また、記憶部220が制御部230を構成する1以上のプロセッサと一体的に構成されてもよい。
 更に、記憶部220は、後述される本実施形態の解析処理に用いられる解析ポリシー221及びパラメータ223を記憶する。解析ポリシー221及びパラメータ223については後述される。なお、パラメータ223は、例えば、クライアント装置300のIP(Internet Protocol)アドレス、IPアドレス範囲に基づいて推測される国/地域、CDN600内の配信サーバ700のIPアドレスを含んでよい。
 制御部230は、解析装置200の種々の機能を提供する要素であって、入出力部231、クライアント制御部233、配信データ取得部235、及び解析処理部237を機能ブロックとして有する。なお、制御部230は、以上の機能ブロック以外の構成要素を更に含んでよい。即ち、制御部230は、以上の機能ブロックによる動作以外の動作を実行できる。
 制御部230は、例えば、1以上のプロセッサによって実装され得る。制御部230は、記憶部220に記憶されたプログラムを記憶部220及び/又は不図示のシステムメモリに展開し実行することによって、後述される本実施形態の処理を実現してよい。なお、各機能ブロック(入出力部231、クライアント制御部233、配信データ取得部235、及び解析処理部237)が、制御部230とは別の1以上のプロセッサによって実現されてもよい。
 各機能ブロックについては後述されるが、概略的には以下の通りである。入出力部231は、解析装置200に入力されるデータ及び解析装置200から出力されるべきデータを処理する。クライアント制御部233は、複数のクライアント装置300を制御して、複数の配信サーバ700から複数の配信データを取得させる。配信データ取得部235は、配信サーバ700が配信した配信データをデータベース装置400から取得する。解析処理部237は、解析処理において比較すべき項目を指定する解析ポリシー221に従って解析処理を実行する。また、解析処理部237は、解析処理の結果に基づいて、少なくとも1つの配信サーバ700の状態を示すステータス情報をユーザ装置100に対して出力する。
 <2.3. クライアント装置300の構成>
 本実施形態の複数のクライアント装置300は、解析装置200からの制御に基づいてCDN600にアクセスし、受信した配信データをデータベース装置400に蓄積する。解析システムS1が有する複数のクライアント装置300は同様に構成されるので、以下、1つのクライアント装置300を代表として説明する。図4は、クライアント装置300の概略的な構成を例示するブロック図である。
 図4に示すように、クライアント装置300は、ネットワーク通信部310と記憶部320と制御部330とを有する。クライアント装置300にはグローバルIPアドレスが割り当てられている
 ネットワーク通信部310は、ネットワーク500を介して他の装置(例えば、解析装置200、データベース装置400、及び配信サーバ700)と信号を送受信する要素である。ネットワーク通信部310は、例えば、ネットワークアダプタ及び/又はネットワークインターフェースカードによって実装され得る。
 記憶部320は、クライアント装置300における種々の処理を実行するのに用いられるプログラム(命令)及びデータを一時的又は恒久的に格納する要素である。上記プログラムは、クライアント装置300の動作のための1つ以上の命令を含む。記憶部320は、例えば、揮発性メモリ、不揮発性メモリ、若しくは磁気ディスク等の記憶媒体又はこれらの2種以上の組合せによって実装され得る。また、記憶部320が制御部330を構成する1以上のプロセッサと一体的に構成されてもよい。
 制御部330は、クライアント装置300の種々の機能を提供する要素であって、アクセス部331及びデータ蓄積部333を機能ブロックとして有する。なお、制御部330は、以上の機能ブロック以外の構成要素を更に含んでよい。即ち、制御部330は、以上の機能ブロックによる動作以外の動作を実行できる。
 制御部330は、例えば、1以上のプロセッサによって実装され得る。制御部330は、記憶部320に記憶されたプログラムを記憶部320及び/又は不図示のシステムメモリに展開し実行することによって、後述される本実施形態の処理を実現してよい。なお、各機能ブロック(アクセス部331及びデータ蓄積部333)が、制御部330とは別の1以上のプロセッサによって実現されてもよい。
 <2.4. データベース装置400の構成>
 本実施形態のデータベース装置400は、複数のクライアント装置300から供給された配信データを蓄積する装置である。図5は、データベース装置400の概略的な構成を例示するブロック図である。
 図5に示すように、データベース装置400は、ネットワーク通信部410と記憶部420と制御部430とを有する。
 ネットワーク通信部410は、ネットワーク500を介して他の装置(例えば、解析装置200及びクライアント装置300)と信号を送受信する要素である。ネットワーク通信部410は、例えば、ネットワークアダプタ及び/又はネットワークインターフェースカードによって実装され得る。
 記憶部420は、データベース装置400における種々の処理を実行するのに用いられるプログラム(命令)及びデータを一時的又は恒久的に格納する要素である。上記プログラムは、データベース装置400の動作のための1つ以上の命令を含む。記憶部420は、例えば、揮発性メモリ、不揮発性メモリ、若しくは磁気ディスク等の記憶媒体又はこれらの2種以上の組合せによって実装され得る。また、記憶部420が制御部430を構成する1以上のプロセッサと一体的に構成されてもよい。
 制御部430は、データベース装置400の種々の機能を提供する要素であって、データベース管理部431を機能ブロックとして有する。データベース管理部431は、いわゆるデータベースマネジメントシステム(DBMS)であって、記憶部420と共に動作して関係データベース(Relational Database, RDB)を実現することができる。なお、制御部430は、以上の機能ブロック以外の構成要素を更に含んでよい。即ち、制御部430は、以上の機能ブロックによる動作以外の動作を実行できる。
 制御部430は、例えば、1以上のプロセッサによって実装され得る。制御部430は、記憶部420に記憶されたプログラムを記憶部420及び/又は不図示のシステムメモリに展開し実行することによって、後述される本実施形態の処理を実現してよい。なお、各機能ブロック(データベース管理部431)が、制御部430とは別の1以上のプロセッサによって実現されてもよい。
 なお、データベース装置400は、解析装置200の一部として構成されてもよい。例えば、制御部230がデータベース管理部431に相当する機能ブロックを含み、上記機能ブロックが記憶部220と共に動作して本実施形態の関係データベースを実現してもよい。
 <2.5. CDN600の構成>
 本実施形態の配信システムであるCDN600は、複数の配信サーバ700と、上記配信サーバ700を制御する制御サーバ750を有する。図6は、CDN600の概略的な構成を例示する説明図である。複数の配信サーバ700には、例えば、オリジナルの配信データを配信する少なくとも1つのオリジンサーバ710と、オリジンサーバ710が配信する配信データをキャッシュする少なくとも1つのキャッシュサーバ720が含まれる。典型的には、図6に示すように、CDN600が1つのオリジンサーバ710と複数のキャッシュサーバ720とを含む。なお、複数の配信サーバ700は1つのCDN600を論理的に構成する一方、物理的には任意の場所に設置され得る。例えば、5台の配信サーバ700が、日本、韓国、中国、欧州、及び米国にそれぞれ配置されてよい。
 各配信サーバ700は、クライアント装置300(アクセス部331)からのリクエストに応答して配信データを送信する。クライアント装置300がドメイン名を用いてアクセスを試みる場合、クライアント装置300のアクセス先は、不図示のドメインネームサーバ(DNS)による名前解決に基づいて振り分けられる。他方、クライアント装置300がIPアドレスを用いてアクセスを試みる場合、クライアント装置300のアクセス先は、そのIPアドレスによって直接的に特定される。
 各キャッシュサーバ720は、オリジンサーバ710が配信する配信データをキャッシュする。したがって、オリジンサーバ710と複数のキャッシュサーバ720とが適切に同期している場合、各クライアント装置300(アクセス部331)は、いずれの配信サーバ700(オリジンサーバ710及びキャッシュサーバ720)にアクセスしても同じ配信データを取得することができる。
 制御サーバ750は、オリジンサーバ710と各キャッシュサーバ720とが同期しているか否かを判定する同期チェックを実行する。以上の同期チェックは、例えば、所定時間ごとに実行されてよい。制御サーバ750は、オリジンサーバ710と同期していないと判定したキャッシュサーバ720に対して、オリジンサーバ710とが同期するように制御する。なお、複数の配信サーバ700のうちいずれか(例えば、オリジンサーバ710)が制御サーバ750の機能を有していてもよい。
 <2.6. 動作例>
 図7を参照して、本発明の第1実施形態における解析処理の例を説明する。図7は、第1実施形態における解析処理の流れを例示するシーケンス図である。
 ステップS10において、ユーザ装置100の入力部131は、ユーザの指示を示す入力データを受け付けて指示生成部133に供給する。指示生成部133は、各クライアント装置300に対するアクセス指示を示す指示データを入力データに基づいて生成し、生成した指示データを解析装置200に送信する。
 図8は、本実施形態に係る指示データを例示する説明図である。以下、各図において「クライアント」を「CL」と略記する場合がある。図8に示すように、指示データは、複数のクライアント装置300の各々について、クライアントID、クライアントポート番号、接続先、接続先ポート番号、取得すべき対象等を示すリクエスト内容(例えば、HTTP(Hyper Text Transfer Protocol)リクエスト)、及び期待差分を示すデータである。図示の通り、接続先は、ドメイン名又はIPアドレスによって特定される。期待差分は、基準となるデータ(例えば、オリジンサーバ710が配信するオリジナルの配信データ)と、取得が予想されるデータ(例えば、キャッシュサーバ720にキャッシュされている配信データ)との差分を示す。なお、本例では、クライアントID#0のクライアント装置300の接続先がオリジンサーバ710であるので期待差分を示す値が存在しない。
 なお、指示生成部133が生成する指示データは、少なくとも1つのクライアント装置300に対する指示が含まれていればよい。ユーザは、ユーザ装置100に対して、クライアントID、接続先、及び期待差分を指示すると好適である。指示データ中、ユーザに指示されなかった項目についてはデフォルト値が設定されると好適である。
 ステップS12において、解析装置200の入出力部231は、ユーザ装置100(指示生成部133)からの指示データを受け付けてクライアント制御部233に供給する。クライアント制御部233は、供給された指示データに基づいて、各クライアント装置300に対するリクエスト制御データを生成する。リクエスト制御データは、指示データが示す上記項目を含むデータであって、複数のクライアント装置300の各々に対して、アクセスすべきCDN600に対応するドメイン名又はアクセスすべき1つの配信サーバ700に対応するIPアドレスを特定可能なデータである。リクエスト制御データは、例えば、URI(Uniform Resource Identifier)によって構成され得る。より具体的には以下の通りである。
 図9は、本実施形態に係るリクエスト制御データを例示する説明図である。図9に示すように、リクエスト制御データは、指示データと同様、複数のクライアント装置300の各々に対するリクエストに対応するデータである。また、リクエスト制御データは、指示データに含まれる上記項目に加え、クライアントIPアドレス、クライアントの国/地域、接続先の国/地域、オリジンサーバ710のIPアドレス、及びリクエスト送信時刻を含むデータである。クライアント制御部233は、記憶部220内のパラメータ223及び不図示のシステムクロック等を参照して、図9に下線で示される以上の項目を指示データに追加することによって、リクエスト制御データを生成する。
 なお、リクエスト制御データに含まれるクライアントの国/地域及び接続先の国/地域はIPアドレスから推測される情報である。本例に示すように、ドメイン名は複数のIPアドレスに対応することがあるので、ドメイン名で接続先を特定するエントリにおいては接続先の国/地域が特定されなくてよい。なお、ドメイン名で接続先を特定するエントリにおいても、パラメータ223にそのドメイン名と国/地域とを関連付ける情報が格納されている場合には、ドメイン名から接続先の国/地域が特定されてもよい。
 ステップS14において、解析装置200のクライアント制御部233は、ステップS12にて生成されたリクエスト制御データを複数のクライアント装置300の各々に送信する。以上のステップS12,S14から理解されるように、クライアント制御部233は、ユーザからの指示に基づいて、複数の配信サーバ700にリクエスト(例えば、HTTPリクエスト)をそれぞれ送信するように複数のクライアント装置300を制御する。
 ステップS16において、各クライアント装置300のアクセス部331は、解析装置200(クライアント制御部233)から送信されたリクエスト制御データに基づいていずれかの配信サーバ700にリクエストを送信する。より具体的には、アクセス部331は、リクエスト制御データがドメイン名によって接続先を示すときは、DNSによる名前解決に従って変換されたIPアドレスが示す配信サーバ700にリクエストを送信する。他方、アクセス部331は、リクエスト制御データがIPアドレスによって接続先を示すときは、リクエスト制御データに含まれるIPアドレスが示す配信サーバ700にリクエストを送信する。
 ステップS18において、配信サーバ700は、それぞれ、クライアント装置300からのリクエストに応じて配信データ(例えば、HTML(Hyper Text Markup Language)ファイル)を送信する。クライアント装置300のアクセス部331は、それぞれ、配信サーバ700から送信された配信データを受信する。図10は、本実施形態に係る配信データを例示する説明図である。図10に示すように、配信データはヘッダ部分とボディ部分とを含む。
 ステップS20において、各クライアント装置300のデータ蓄積部333は、アクセス部331が受信した配信データを、アクセスに関するパラメータと共にデータベース装置400に送信する。データベース装置400のデータベース管理部431は、クライアント装置300(データ蓄積部333)から送信された配信データ及びアクセスに関するパラメータを、関係データベースとして使用できる形式で記憶部420に格納する。
 図11は、本実施形態に係るデータベース装置400の記憶部420に蓄積されるデータを例示する説明図である。図11に示すように、データベース装置400の記憶部420には、クライアント装置300が取得した配信データが、リクエスト制御データに含まれるアクセスに関するパラメータに関連付けられて格納される。
 なお、クライアント装置300が配信サーバ700にアクセスした後であれば配信サーバ700のIPアドレスが判明している。したがって、図11に示すように、データベース管理部431は、ドメイン名で指定された接続先に関し、DNSから返されたIPアドレス及び接続先の国/地域を更に格納してもよい。
 ステップS22において、解析装置200の配信データ取得部235は、データベース装置400のデータベース管理部431に対して、記憶部420に蓄積されている配信データ及びパラメータを供給するよう要求する(例えば、クエリを送信する)。データベース管理部431は、以上の要求に基づいて配信データ及びパラメータを読み出し、解析装置200に送信する。
 ステップS24において、解析装置200の解析処理部237は、配信データ取得部235が取得した複数の配信データ及びパラメータを比較することで解析処理を実行する。本例において、解析ポリシー221は、配信サーバ700間で配信データが互いに一致するか否かを解析処理部237が比較することを指定する。図12は、本実施形態における解析処理の結果を例示する説明図である。
 解析処理部237は、解析ポリシー221に従って、クライアントID#0のクライアント装置300(以下、クライアント#0と称する。他のクライアントIDについても同様)が取得したオリジンサーバ710の配信データと、クライアント#1~#3が取得したキャッシュサーバ720の配信データとをそれぞれ比較して、実際の差分(実差分)が有るか無いか判定する。以上の比較処理は、例えば、文字列を比較するdiffコマンドを用いて実行され得る。
 そして、解析処理部237は、上記した解析処理の結果に基づいて、配信サーバ700が正常であるか異常であるかを離散的に示すフラグであるステータス情報を出力する。具体的には以下の例示の通りである。
 図12の実差分欄に示すように、オリジンサーバ710の配信データと、クライアント#1が取得したキャッシュサーバ720の配信データとの間には差分が無い。他方、オリジンサーバ710の配信データと、クライアント#2が取得したキャッシュサーバ720の配信データとの間には差分がある。クライアント#3についても同様である。
 オリジンサーバ710の配信データと、クライアント#1が取得したキャッシュサーバ720の配信データとの間の期待差分は「無」である。クライアント#1がアクセスしたキャッシュサーバ720に関しては期待差分と実差分(「無」)とが一致するので、解析処理部237は当該サーバが正常であると判定し、正常を示すステータス情報を出力する。
 オリジンサーバ710の配信データと、クライアント#2が取得したキャッシュサーバ720の配信データとの間の期待差分は「有」である。クライアント#2がアクセスしたキャッシュサーバ720に関しても期待差分と実差分(「有」)とが一致するので、解析処理部237は当該サーバが正常であると判定し、正常を示すステータス情報を出力する。
 オリジンサーバ710の配信データと、クライアント#3が取得したキャッシュサーバ720の配信データとの間の期待差分は「有」である。クライアント#3がアクセスしたキャッシュサーバ720に関しては期待差分と実差分(「無」)とが一致しないので、解析処理部237は当該サーバが異常であると判定し、異常を示すステータス情報を出力する。
 解析処理部237は、上記したステータス情報を含む解析処理の結果を入出力部231に供給する。解析処理の結果が、解析処理に用いられたデータ(データベース装置400から取得された配信データ及びパラメータ)を含んでよい。
 ステップS26において、解析装置200の入出力部231は、解析処理部237から供給された配信サーバ700に関するステータス情報を含む解析処理の結果を、ユーザ装置100に送信する。
 ステップS28において、ユーザ装置100の出力部135は、解析装置200(入出力部231)から送信された解析処理の結果をユーザに提示する。より具体的には、例えば、出力部135は、ユーザが使用するブラウザの画面内に、配信サーバ700とステータス情報とを含むリストを表示させてよい。また、出力部135は、ユーザがブラウザを用いて検索した検索結果に含まれるサイトの情報と共にステータス情報を示すバッジを表示させてもよい。他に、出力部135は、ステータス情報を含む解析処理の結果をRSSフィードとして配布してもよい。
 上記した本実施形態の構成(特に、図7が示す一連の処理)によれば、複数の配信サーバ700が設けられた配信システムであるCDN600の状態を適切に解析することが可能である。
 <2.7. 変形例>
 上記した本実施形態は多様に変形される。具体的な変形の態様を以下に例示する。以上の実施形態及び以下の例示から任意に選択された2以上の態様は、相互に矛盾しない限り適宜に併合され得る。
 上記した構成におけるステータス情報は、配信サーバ700が正常であるか異常であるかを離散的に示すフラグである。他に、解析ポリシー221に基づいて、配信サーバ700が正常であるか異常であるかを確率的に示す連続値がステータス情報として用いられてもよい。以上の構成によれば、配信サーバ700の異常度をユーザが定量的に把握することができる。他方、本実施形態のように正常/異常を離散的に示すフラグをステータス情報として用いる構成によれば、配信サーバ700の異常度をユーザが簡易に把握することができる。
 上記した構成においては、解析装置200の解析処理部237が、配信データを用いた解析処理の結果に基づいて配信サーバ700が正常であるか異常であるかを判定している。しかしながら、解析ポリシー221に基づいて、解析処理部237による解析処理の結果がそのままユーザ装置100に対して出力されてもよい。この場合、解析処理部237が、解析処理の結果において配信データに差異が生じている部分を特定する情報を出力すると好適である。ユーザ装置100は、以上の情報に基づいて、ウェブサイトに差異が生じている部分をユーザに提示することが可能になる。
 上記した構成における解析ポリシー221は、配信サーバ700間で配信データが互いに一致するか否かを解析処理部237が比較することを指定している。しかしながら、解析ポリシー221が配信サーバ700からの配信データと取得が期待されるデータとを解析処理部237が比較することを指定してもよい。複数の配信サーバ700が完全には同期しない構成(例えば、国ごとに異なる応答を返す構成)では、オリジンサーバ710とキャッシュサーバ720とを単純に比較してもデータ配信の状態を適切に解析することが難しい。以上の構成によれば、配信サーバ700ごとに取得が期待されるデータと実際の配信データとを比較するので、複数の配信サーバ700が完全には同期しない構成であってもデータ配信の状態を適切に解析することができる。
 解析処理部237が、過去の配信データと現在の配信データとを比較することによって解析処理を実現してもよい。即ち、解析ポリシー221が、配信データ取得部235が現に取得した配信データと過去に取得された配信データとを解析処理部237が比較することを指定してもよい。以上の構成によれば、時系列的な比較処理によってより適切にデータ配信の状態を解析することができる。
 解析処理部237が、複数の配信サーバ700から取得したアクセスに関する複数のパラメータを項目ごとに比較することによってデータ配信の状態を解析してもよい。例えば、1つの配信サーバ700から取得したアクセスに関する複数のパラメータを1つのベクトルとして捉え、ベクトル演算によって比較処理を実現してもよい。以上の構成によれば、配信データ以外の要素も考慮して解析処理が実行されるので、より適切にデータ配信の状態を解析することができる。
 以上から理解されるように、解析装置200は、記憶部220に記憶される解析ポリシー221を変更することによって解析処理の内容を柔軟に変更することができる。したがって、解析処理のためのアルゴリズムが固定的である構成と比較して、種々の状況に応じた適切な解析処理を実現することが可能である。
 なお、解析装置200は、仮想化されていてもよい。即ち、解析装置200は、仮想マシンとして実装されてもよい。この場合に、解析装置200(仮想マシン)は、プロセッサ及びメモリ等を含む物理マシン(ハードウェア)及びハイパーバイザ上で仮想マシンとして動作してもよい。ユーザ装置100、クライアント装置300、及びデータベース装置400についても同様である。
 クライアント装置300が仮想化される構成(即ち、仮想クライアントを用いる構成)では、クライアント制御部233が制御する複数のクライアントの各々が、グローバルIPアドレスが割り当てられた中継ノード(例えば、プロキシサーバ)を介して配信サーバ700にアクセスすると好適である。地域的な制限上、クライアントに自由にグローバルIPアドレスを割り当てることは困難であるが、中継ノードを介すことによって配信サーバ700に対するアクセス元(即ち、グローバルIPアドレス)を調整することができる。
 ユーザ装置100が、入力用のユーザ装置と出力用のユーザ装置とに分かれていてもよい。以上の構成を多数のユーザ装置に対して解析処理の結果を提供する構成に適用するとより好適である。
 解析装置200は、ユーザ装置100からのユーザの指示に基づかずに上記した解析処理を実行してもよい。例えば、解析ポリシー221に基づいて、所定時間ごとに図7のステップS12以降の処理が実行されてもよい。また、解析装置200は、解析処理の結果をユーザ装置100に送信しなくてもよい。例えば、解析処理の結果を記憶部220に蓄積し、CDN600の制御に用いてもよい。
 <<3. 第2実施形態>>
 次いで、図13を参照して、本発明の第2実施形態を説明する。上述した第1実施形態は具体的な実施形態であるが、第2実施形態はより一般化された実施形態である。
 <3.1. 解析装置200aの構成>
 図13は、第2実施形態に係る解析装置200aの概略的な構成を例示するブロック図である。図13に示すように、解析装置200aは配信データ取得部235a及び解析処理部237aを有する。
 配信データ取得部235a及び解析処理部237aは、1つ以上のプロセッサと、メモリ(例えば、不揮発性メモリ及び/若しくは揮発性メモリ)並びに/又はハードディスクとにより実装されてもよい。配信データ取得部235a及び解析処理部237aは、同一のプロセッサにより実装されてもよく、別々に異なるプロセッサにより実装されてもよい。上記メモリは、上記1つ以上のプロセッサ内に含まれていてもよく、又は、上記1つ以上のプロセッサ外にあってもよい。
 <3.2. 動作例>
 第2実施形態に係る動作例を説明する。解析装置200a(配信データ取得部235a)は、配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する。次いで、解析装置200a(解析処理部237a)は、上記配信データ取得部が取得した複数の上記配信データを比較することで解析処理を実行する。
 -第1実施形態との関係
 一例として、第2実施形態に係る解析装置200aが備える配信データ取得部235a及び解析処理部237aは、それぞれ、第1実施形態に係る解析装置200が備える配信データ取得部235及び解析処理部237の動作を実行してもよい。以上の場合、第1実施形態についての説明が第2実施形態にも適用可能である。なお、第2実施形態は以上の例に限定されるものではない。
 上述した第2実施形態によれば、複数の配信サーバが設けられた配信システムの状態を適切に解析することが可能になる。
 <4. 他の実施形態>
 以上、本発明の実施形態を説明したが、本発明はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本発明のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。
 例えば、本明細書に記載されている処理におけるステップは、必ずしもシーケンス図に記載された順序に沿って時系列に実行されなくてよい。例えば、処理におけるステップは、シーケンス図として記載した順序と異なる順序で実行されても、並列的に実行されてもよい。また、処理におけるステップの一部が削除されてもよく、さらなるステップが処理に追加されてもよい。
 また、本明細書において説明した解析装置の構成要素(例えば、クライアント制御部、配信データ取得部、及び/又は解析処理部)を備える装置(例えば、解析装置を構成する複数の装置(又はユニット)のうちの1つ以上の装置(又はユニット)、又は上記複数の装置(又はユニット)のうちの1つのためのモジュール)が提供されてもよい。
 同様に、本明細書において説明したユーザ装置の構成要素(例えば、入力部、設定処理部、及び/又は出力部)を備える装置(例えば、ユーザ装置のためのモジュール)が提供されてもよい。本明細書において説明した各クライアント装置の構成要素(例えば、アクセス部及び/又はデータ蓄積部)を備える装置(例えば、クライアント装置のためのモジュール)が提供されてもよい。本明細書において説明したデータベース装置の構成要素(例えば、データベース管理部)を備える装置(例えば、データベース装置のためのモジュール)が提供されてもよい。
 また、上記構成要素の処理を含む方法が提供されてもよく、上記構成要素の処理をプロセッサに実行させるためのプログラムが提供されてもよい。また、当該プログラムを記録したコンピュータに読み取り可能な非一時的記録媒体(Non-transitory computer readable medium)が提供されてもよい。当然ながら、このような装置、モジュール、方法、プログラム、及びコンピュータに読み取り可能な非一時的記録媒体も本発明に含まれる。
 上記実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
 配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する配信データ取得部と、
 前記配信データ取得部が取得した複数の前記配信データを比較することで解析処理を実行する解析処理部と、
 を備える解析装置。
(付記2)
 前記解析処理部は、前記解析処理において比較すべき項目を指定する解析ポリシーに従って前記解析処理を実行する、付記1に記載の解析装置。
(付記3)
 前記解析処理部は、前記解析処理の結果に基づいて、少なくとも1つの前記配信サーバの状態を示すステータス情報を出力する、付記2に記載の解析装置。
(付記4)
 前記ステータス情報は、前記配信サーバが正常であるか異常であるかを離散的に示すフラグ、又は、前記配信サーバが正常であるか異常であるかを確率的に示す連続値である、付記3に記載の解析装置。
(付記5)
 前記解析ポリシーは、前記配信データが互いに一致するか否かを前記解析処理部が比較することを指定する、付記2から付記4のいずれか1項に記載の解析装置。
(付記6)
 前記解析ポリシーは、前記配信データと取得が期待されるデータとを前記解析処理部が比較することを指定する、付記2から付記4のいずれか1項に記載の解析装置。
(付記7)
 前記解析処理部は、前記解析処理の結果を出力する、付記2に記載の解析装置。
(付記8)
 前記解析処理部は、前記解析処理の結果において前記配信データに差異が生じている部分を特定する情報を出力する、付記7に記載の解析装置。
(付記9)
 前記解析ポリシーは、前記配信データ取得部が現に取得した配信データと過去に取得された配信データとを前記解析処理部が比較することを指定する、付記2から付記8のいずれか1項に記載の解析装置。
(付記10)
 前記配信システムは、複数の前記配信サーバとして、少なくとも1つのオリジンサーバと前記オリジンサーバが配信する配信データをキャッシュする少なくとも1つのキャッシュサーバとを備える、付記1から付記9のいずれか1項に記載の解析装置。
(付記11)
 複数のクライアントを制御して複数の前記配信サーバから複数の前記配信データを取得させるクライアント制御部を更に備える、付記1から付記10のいずれか1項に記載の解析装置。
(付記12)
 前記クライアント制御部が制御する複数の前記クライアントの各々は、グローバルIP(Internet Protocol)アドレスが割り当てられている、又は、グローバルIPアドレスが割り当てられた中継ノードを介して前記配信サーバにアクセスする、付記11に記載の解析装置。
(付記13)
 前記クライアント制御部は、ユーザからの指示に基づいて、複数の前記配信サーバにリクエストを送信するように複数の前記クライアントを制御する、付記11又は付記12に記載の解析装置。
(付記14)
 前記クライアント制御部は、複数の前記クライアントの各々に対して、アクセスすべき前記配信システムに対応するドメイン名又はアクセスすべき1つの前記配信サーバに対応するIPアドレスを特定する、付記11から付記13のいずれか1項に記載の解析装置。
(付記15)
 配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得することと、
 取得された複数の前記配信データを比較することで解析処理を実行することと、
 を備える解析方法。
(付記16)
 コンピュータを、
 配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する配信データ取得部と、
 前記配信データ取得部が取得した複数の前記配信データを比較することで解析処理を実行する解析処理部と、
 として機能させるプログラム。
 複数の配信サーバが設けられた配信システムの状態を適切に解析することが可能である。
 S1   解析システム
 100  ユーザ装置
 200  解析装置
 233  クライアント制御部
 235  配信データ取得部
 237  解析処理部
 300  クライアント装置
 400  データベース装置
 600  CDN(配信システム)
 700  配信サーバ
 710  オリジンサーバ
 720  キャッシュサーバ

Claims (16)

  1.  配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する配信データ取得部と、
     前記配信データ取得部が取得した複数の前記配信データを比較することで解析処理を実行する解析処理部と、
     を備える解析装置。
  2.  前記解析処理部は、前記解析処理において比較すべき項目を指定する解析ポリシーに従って前記解析処理を実行する、請求項1に記載の解析装置。
  3.  前記解析処理部は、前記解析処理の結果に基づいて、少なくとも1つの前記配信サーバの状態を示すステータス情報を出力する、請求項2に記載の解析装置。
  4.  前記ステータス情報は、前記配信サーバが正常であるか異常であるかを離散的に示すフラグ、又は、前記配信サーバが正常であるか異常であるかを確率的に示す連続値である、請求項3に記載の解析装置。
  5.  前記解析ポリシーは、前記配信データが互いに一致するか否かを前記解析処理部が比較することを指定する、請求項2から請求項4のいずれか1項に記載の解析装置。
  6.  前記解析ポリシーは、前記配信データと取得が期待されるデータとを前記解析処理部が比較することを指定する、請求項2から請求項4のいずれか1項に記載の解析装置。
  7.  前記解析処理部は、前記解析処理の結果を出力する、請求項2に記載の解析装置。
  8.  前記解析処理部は、前記解析処理の結果において前記配信データに差異が生じている部分を特定する情報を出力する、請求項7に記載の解析装置。
  9.  前記解析ポリシーは、前記配信データ取得部が現に取得した配信データと過去に取得された配信データとを前記解析処理部が比較することを指定する、請求項2から請求項8のいずれか1項に記載の解析装置。
  10.  前記配信システムは、少なくとも1つのオリジンサーバと前記オリジンサーバが配信する配信データをキャッシュする少なくとも1つのキャッシュサーバとを複数の前記配信サーバとして備える、請求項1から請求項9のいずれか1項に記載の解析装置。
  11.  複数のクライアントを制御して複数の前記配信サーバから複数の前記配信データを取得させるクライアント制御部を更に備える、請求項1から請求項10のいずれか1項に記載の解析装置。
  12.  前記クライアント制御部が制御する複数の前記クライアントの各々は、グローバルIP(Internet Protocol)アドレスが割り当てられている、又は、グローバルIPアドレスが割り当てられた中継ノードを介して前記配信サーバにアクセスする、請求項11に記載の解析装置。
  13.  前記クライアント制御部は、ユーザからの指示に基づいて、複数の前記配信サーバにリクエストを送信するように複数の前記クライアントを制御する、請求項11又は請求項12に記載の解析装置。
  14.  前記クライアント制御部は、複数の前記クライアントの各々に対して、アクセスすべき前記配信システムに対応するドメイン名又はアクセスすべき1つの前記配信サーバに対応するIPアドレスを特定する、請求項11から請求項13のいずれか1項に記載の解析装置。
  15.  配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得することと、
     取得された複数の前記配信データを比較することで解析処理を実行することと、
     を備える解析方法。
  16.  コンピュータを、
     配信システムに設けられた複数の配信サーバが配信する複数の配信データを取得する配信データ取得部と、
     前記配信データ取得部が取得した複数の前記配信データを比較することで解析処理を実行する解析処理部と、
     として機能させるプログラム。
     

     
PCT/JP2020/019938 2020-05-20 2020-05-20 解析装置、解析方法、及びプログラム WO2021234855A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022524757A JPWO2021234855A1 (ja) 2020-05-20 2020-05-20
US17/924,138 US12034614B2 (en) 2020-05-20 Analysis apparatus, analysis method, and program
PCT/JP2020/019938 WO2021234855A1 (ja) 2020-05-20 2020-05-20 解析装置、解析方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/019938 WO2021234855A1 (ja) 2020-05-20 2020-05-20 解析装置、解析方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2021234855A1 true WO2021234855A1 (ja) 2021-11-25

Family

ID=78708290

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/019938 WO2021234855A1 (ja) 2020-05-20 2020-05-20 解析装置、解析方法、及びプログラム

Country Status (2)

Country Link
JP (1) JPWO2021234855A1 (ja)
WO (1) WO2021234855A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013021632A (ja) * 2011-07-14 2013-01-31 Denso Corp 車両用通信システム、携帯通信端末、および、車両用機器
JP2019041179A (ja) * 2017-08-23 2019-03-14 株式会社デンソー 移動体通信システム
JP2019075765A (ja) * 2017-10-19 2019-05-16 株式会社デンソー 復号装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013021632A (ja) * 2011-07-14 2013-01-31 Denso Corp 車両用通信システム、携帯通信端末、および、車両用機器
JP2019041179A (ja) * 2017-08-23 2019-03-14 株式会社デンソー 移動体通信システム
JP2019075765A (ja) * 2017-10-19 2019-05-16 株式会社デンソー 復号装置

Also Published As

Publication number Publication date
JPWO2021234855A1 (ja) 2021-11-25
US20230179494A1 (en) 2023-06-08

Similar Documents

Publication Publication Date Title
CN107465707B (zh) 一种内容分发网络的内容刷新方法及装置
JP5431454B2 (ja) 風力タービンの構成管理システムおよびその中央コンピュータシステム
US9690839B2 (en) Computer architectures using shared storage
US20160381166A1 (en) Assessment of content delivery services using performance measurements from within an end user client application
CN100479456C (zh) 用于促进所要求的能力的万维网服务器的远程动态配置方法和系统
US6832222B1 (en) Technique for ensuring authorized access to the content of dynamic web pages stored in a system cache
US20040003033A1 (en) Method and system for generating a web service interface
US10735528B1 (en) Geographic relocation of content source in a content delivery network
US8793339B2 (en) Facilitating client server interaction
US20090083442A1 (en) Tracking Identifier Synchronization
CN105262608B (zh) 用于网络服务的监控方法和装置
CN106445485A (zh) 一种软件版本一致性检测系统及其检测方法
NO327863B1 (no) Optimalisert nettverkressurs-sted
US20150188999A1 (en) System and method to extend the capabilities of a web browser to improve the web application performance
CN108989390B (zh) 用户请求转发方法及装置、反向代理服务器和计算机可读存储介质
KR20100108053A (ko) Url을 이용한 분산 컨트롤 방법 및 장치
CN104519100B (zh) 异构平台文件自动同步方法及puppet服务端
JP2012234236A (ja) 負荷分散システム
US7668905B2 (en) Method, system and computer program for providing web pages based on client state
WO2021234855A1 (ja) 解析装置、解析方法、及びプログラム
Xu et al. A flexible architecture for statistical learning and data mining from system log streams
US12034614B2 (en) Analysis apparatus, analysis method, and program
Memon et al. Advancements of the UltraScan scientific gateway for open standards‐based cyberinfrastructures
US20140379790A1 (en) Information processing apparatus, method and medium
US20210173729A1 (en) Systems and methods of application program interface (api) parameter 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: 20936623

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022524757

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20936623

Country of ref document: EP

Kind code of ref document: A1