WO2014045417A1 - 情報処理装置、および負荷試験方法 - Google Patents

情報処理装置、および負荷試験方法 Download PDF

Info

Publication number
WO2014045417A1
WO2014045417A1 PCT/JP2012/074296 JP2012074296W WO2014045417A1 WO 2014045417 A1 WO2014045417 A1 WO 2014045417A1 JP 2012074296 W JP2012074296 W JP 2012074296W WO 2014045417 A1 WO2014045417 A1 WO 2014045417A1
Authority
WO
WIPO (PCT)
Prior art keywords
load factor
packet
determined
load
control unit
Prior art date
Application number
PCT/JP2012/074296
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 PCT/JP2012/074296 priority Critical patent/WO2014045417A1/ja
Priority to JP2014536515A priority patent/JPWO2014045417A1/ja
Publication of WO2014045417A1 publication Critical patent/WO2014045417A1/ja
Priority to US14/638,802 priority patent/US20150180964A1/en

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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Definitions

  • the present invention relates to a technique for adjusting a network load.
  • a high-load test is performed to test the stability of operation by causing a computer device to perform high-load processing.
  • One of the high load tests of a computer device is a network load test in which a load is applied to a network of computer devices to test whether the computer device operates normally.
  • a network load test may be performed by a single computer device. In this case, each port of the network card provided in the computer device is connected by a LAN (Local Area Network) cable.
  • the computer device performs a load test by applying a load to the network by transmitting and receiving packets within the same device.
  • the computer system provides a means for identifying the attachment of the return connector in the line adapter.
  • a computer system is known in which an adapter test is executed when the return connector is not attached, and a line test is executed when the return connector is attached.
  • operating environment information for executing the test is set for each test item.
  • the test program control unit that controls the test of the electronic computer reads the system configuration information and the operation mode information of the electronic computer system set in advance, and also reads each operation environment information.
  • the test program control unit compares the system configuration information and operation mode information of the computer system with each operation environment information to identify the test environment and determine whether or not to execute the test.
  • the technique to perform is known (for example, refer patent document 1 and patent document 2).
  • each computer device has a different number of CPUs, memory size, number of network cards, number of network ports, and network speed. That is, each computer device has different resources and processing capabilities that can be used. Therefore, in order to put a high network load on each computer device, it is necessary to set different parameters (test settings) on each computer.
  • the conventional load testing method may not be able to increase the network load due to the lack of computer device resources.
  • parameter tuning, control review, and confirmation work are required, which requires a lot of labor and time.
  • confirmation work of the setting of the computer device there are several thousand to several tens of thousands of combinations of confirmation items, and it is difficult to find a parameter that maximizes the network load for each device.
  • an information processing apparatus described later in this specification aims to efficiently set a network load.
  • One information processing apparatus disclosed in this specification includes an information processing apparatus including a transmission unit, a reception unit, a monitoring unit, and a control unit.
  • the transmission unit transmits a packet.
  • the receiving unit receives a packet.
  • the monitoring unit measures a load factor, which is a usage rate of a band between the transmission unit and the reception unit, when transmitting a packet from the transmission unit to the reception unit.
  • the control unit sequentially changes a plurality of parameters that change the load factor when the setting is changed so that the load factor measured by the monitoring unit approaches the determined load factor, starting with the parameter that has a large influence on the increase / decrease of the load factor. adjust.
  • the information processing apparatus described later in this specification has an effect that the network load can be set efficiently.
  • the information processing apparatus includes one or more network cards and has two or more ports for transmitting and receiving packets. Then, the information processing apparatus forms a port pair in which any two ports are connected back by a LAN cable, and transmits and receives packets. Further, the information processing apparatus measures the number of packets transmitted and received by the port pair, and acquires a data transfer rate (for example, Byte / sec) per unit time. Then, the information processing apparatus calculates the load factor by dividing the transfer rate by the bandwidth.
  • a data transfer rate for example, Byte / sec
  • the information processing device allocates resources used for processing to send and receive packets for each port pair while monitoring the load factor, and changes multiple parameters whose load factor fluctuates when the setting is changed, so that the communication bandwidth of the port pair is as much as possible Adjust to use more. At this time, the information processing apparatus adjusts the parameters in order starting from the parameter having the greatest influence on the increase / decrease in the load factor among the plurality of parameters.
  • the information processing apparatus obtains the maximum load that can be output with the capability of the information processing apparatus by adjusting the setting of a plurality of parameters while monitoring the load factor for each port pair.
  • the information processing apparatus adjusts parameters in order starting from a parameter that has a large influence on increase / decrease in the load factor.
  • the information processing apparatus finds the maximum value of the network load by finely adjusting the network load in the load test from the coarse adjustment, so that the network load is reduced as compared with the case of randomly checking a combination of a plurality of parameters. It can be adjusted efficiently.
  • FIG. 1 is a functional block diagram illustrating an embodiment of an information processing apparatus.
  • the information processing apparatus 100 includes a test control unit 10, a storage unit 20, and a transmission / reception unit 30.
  • a network load test with the information processing apparatus 100 alone will be described.
  • the information processing apparatus 100 will be described when finding the maximum network load determined by the resources of the information processing apparatus 100, the bandwidth of the LAN cable used for loopback connection, and the like as network load adjustment.
  • the information processing apparatus 100 according to the embodiment is entirely responsible for various functions included in the test control unit 10, the storage unit 20, and the transmission / reception unit 30 illustrated in FIG. As a result, the function of one information processing apparatus 100 can be realized.
  • the information processing apparatus 100 is configured to obtain a necessary network load as appropriate by adjusting a plurality of parameters so as to approach the determined load set by the user, not the maximum network load. It may be used. In the following description, the case where the maximum network load is set as the determined load will be described.
  • the test control unit 10 includes a control unit 11, a monitoring unit 12, and a test unit 13.
  • the test control unit 10 has a large influence on the increase / decrease of the load factor so that the load factor approaches the maximum load (determined load) while monitoring the load factor (load) measured by the monitoring unit 12. Adjust the parameters in order.
  • the control unit 11 changes the setting of a plurality of parameters so that the load factor measured by the monitoring unit 12 approaches the determined load factor. And the control part 11 adjusts in an order from the parameter with the big influence with respect to increase / decrease in a load factor, when changing the setting of a some parameter.
  • the monitoring unit 12 measures a load factor between the transmission unit 31 and the reception unit 32 when transmitting a packet from the transmission unit 31 included in the transmission / reception unit 30 to the reception unit 32.
  • the test unit 13 When the plurality of parameters set by the control unit 11 are input, the test unit 13 generates a packet to be transmitted / received by the transmission / reception unit 30 and outputs the packet to the transmission / reception unit 30. More specifically, each time the test unit 13 generates a packet with the specified packet count number using the specified resource, the test unit 13 generates the packet in the transmission unit 31 according to the instruction of the control unit 11. The packet is output, and the packet is transmitted to the reception unit 32 via the transmission unit 31. Further, the test unit 13 uses a part of the storage unit 20 as a transmission buffer of the transmission unit 31 and a reception buffer of the reception unit 32 according to the setting of the control unit 11. Although not shown, when there are a plurality of operating transmission / reception units 30, the test control unit 10 has one testing unit 13 for each operating transmission / reception unit 30.
  • the storage unit 20 includes a configuration information table 21, an initial value table 22, and a data table 23.
  • the configuration information table 21 includes the number of logical CPUs (Central Processing Units), the memory size usable in the test, the number of effective network ports, and the MTU (Maximum Transmission Unit) of each network port. Is stored.
  • logical CPUs Central Processing Units
  • memory size usable in the test the number of effective network ports
  • MTU Maximum Transmission Unit
  • the logical CPU number is the number of CPU cores included in the information processing apparatus 100.
  • one processor can be regarded as a plurality of processors, for example, two processors
  • the logical CPU number is represented as a logical CPU. It is good as a number.
  • the memory size usable in the test is the size of the storage area allocated to the load test in the memory of the information processing apparatus 100.
  • the effective number of network ports is the number of ports that the network card included in the information processing apparatus 100 has.
  • the network card functions as the transmission / reception unit 30, and the port of the network card functions as the transmission unit 31 or the reception unit 32.
  • the MTU of each network port is a value indicating the maximum value of data that can be transmitted in one transfer in each network port.
  • the MTU can set a value on the transmission side for each network connection.
  • the initial value table 22 stores the packet count number, connection number, CPU binding number, priority, and operation mode values as parameters in the load test.
  • the packet count is the number of packets stored in the transmission buffer by the test unit 13 and transmitted from the transmission unit 31 to the reception unit 32 in a single packet transmission process. That is, the test unit 13 generates a packet, stores the generated packet in a transmission buffer, and transmits the packet to the reception unit 32 via the transmission unit 31 each time a packet having a packet count number is generated.
  • the number of connections is the number of logical packet communication paths between the transmission unit 31 and the reception unit 32. Since the information processing apparatus 100 transmits a packet to the same number of communication paths as the number of connections, the task related to packet transmission / reception (hereinafter referred to as a transmission / reception task) is executed in parallel by the same number as the number of connections. become.
  • the CPU binding number is the number of logical CPUs assigned to each port pair.
  • the number of CPU bindings is a number equal to or less than the number of logical CPUs that each port pair can occupy, and the value is increased or decreased according to the necessity of the load test process.
  • Priority is the priority of sending / receiving tasks in dispatch processing. Specifically, it is a priority when the execution right is assigned to the transmission / reception task by the scheduler, and the execution right for executing the process corresponding to the number of dispatch processes is assigned in order from the task with the highest priority. That is, the priority is a parameter that determines the execution order of the transmission / reception task and other processes.
  • the information processing apparatus 100 when the information processing apparatus 100 includes a plurality of ports, it is set whether all ports are operated simultaneously or only a designated port is operated.
  • the information processing apparatus 100 performs a load test, the information processing apparatus 100 has few resources. Therefore, if all the ports are operated at the same time, a large load may not be applied to the bandwidth of the port pair.
  • the information processing apparatus 100 can apply a large load to the designated port. In this case, in order to perform a load test on all the ports, a plurality of load tests are performed for each designated port.
  • the operation mode is not particularly described in order to simplify the description. When considering the operation mode, a load test may be performed for each designated port.
  • the data table 23 includes, as items, a divergence value of the packet transmission / reception number, a packet count number adjustment variable, a storage area for the packet count number, a storage area for the connection numerical value, and a CPU binding number.
  • the data table 23 stores each data obtained when the information processing apparatus 100 adjusts the parameter value in the load test.
  • the parameter value adjustment value is extracted from the storage area of each parameter stored in the data table 23 based on the result of the parameter value adjustment process.
  • the information processing apparatus 100 uses adjustment values of a plurality of parameter values in the load test. The contents of each data will be described later in the operation of the information processing apparatus 100 described below.
  • FIG. 3 is a block diagram illustrating an embodiment of the information processing apparatus.
  • the information processing apparatus 100 includes a control circuit 301 to 304, a storage device 305, a reading device 306, a recording medium 307, a display device 308, an input / output interface 309 (input / output I / F), and communication interfaces 310 to 312 ( Communication I / F), transmission devices 313 to 315, reception devices 316 to 318, a switch 319, and a network 320.
  • Each component is connected by a bus 300.
  • the control circuits 301 to 304 control the information processing apparatus 100 as a whole.
  • the control circuits 301 to 304 are, for example, a CPU, a multi-core CPU, an FPGA (Field Programmable Gate Array), a PLD (Programmable Logic Device), and the like.
  • the control circuits 301 to 304 function as the test control unit 10 in FIG.
  • the control circuits 301 to 304 may have a storage area such as a register, and may function as a transmission buffer and a reception buffer used by the transmission unit 31 and the reception unit 32.
  • any one of the control circuits 301 to 304 is shown.
  • the information processing apparatus 100 includes four control circuits, but the number of control circuits may be an arbitrary number of one or more.
  • the storage device 305 stores various data.
  • the storage device 305 includes, for example, a memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory), an HD (Hard Disk), and the like.
  • the ROM stores a program such as a boot program.
  • the RAM is used as a work area for the control circuit.
  • the HD stores an OS (Operating System), an application program, a program such as firmware, and various data.
  • the storage device 305 of the information processing apparatus 100 stores the configuration information table 21, the initial value table 22, and the data table 23 of FIG.
  • the configuration information table 21, the initial value table 22, and the data table 23 are stored in a server connected on the network 320 if the control circuit of the information processing apparatus 100 is accessible via the communication interface 312. May be.
  • the storage device 305 of the information processing apparatus 100 stores a load test program for causing the control circuit to function as the test control unit 10. Then, when starting the load test, the control circuit of the information processing apparatus 100 reads the load test program stored in the storage device 305 into the RAM. Thereby, the control circuit of the information processing apparatus 100 functions as the test control unit 10 by using the RAM as a work space.
  • the load test program may be stored in a server connected on the network 320 as long as the control circuit of the information processing apparatus 100 is accessible via the communication interface 312.
  • the HD is connected to the bus 300 via an HDD (Hard Disk Drive).
  • HDD Hard Disk Drive
  • the HDD is controlled by the control circuit, and data is read / written.
  • the reading device 306 is controlled by a control circuit, and reads / writes data on the removable recording medium 307.
  • the reading device 306 includes, for example, FDD (Floppy Disk Drive), CDD (Compact Disc Drive), DVDD (Digital Versatile Disk Drive), BDD (Blu-ray DiscUlU: registered trademark). It is. Further, the reading device 306 of the information processing apparatus 100 may read the load test program recorded on the recording medium 307 and store it in the storage device 305.
  • the recording medium 307 stores various data. As an example, the recording medium 307 stores a load test program. The recording medium 307 is connected to the bus 300 via the reading device 306, and the control circuit controls the reading device 306 to read / write data.
  • the recording medium 307 is, for example, an FD (Floppy Disk), a CD (Compact Disc), a DVD (Digital Versatile Disk), a BD (Blu-ray Disk: registered trademark), and a flash memory.
  • the display device 308 notifies the user by displaying the input information as a video.
  • the display device 308 is, for example, a CRT (Cathode Ray Tube), an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), an OELD (Organic Electroluminescence Display), or the like.
  • the input information may be notified to the user by lighting a lamp or sound from a speaker.
  • the display device 308 may be a touch panel and may be an input device.
  • the input / output interface 309 is connected to, for example, mechanical buttons, a keyboard, a mouse, a touch panel, a scanner, and a printer, and signals indicating various information are input from the connected devices. Then, the input / output interface 309 outputs a signal input via the bus 300 to the control circuit. When a signal indicating various information output from the control circuit is input via the bus 300, the input / output interface 309 outputs the signal to various connected devices.
  • the communication interfaces 310 to 312 communicatively connect the information processing apparatus 100 and other information processing apparatuses 100 via a network 320 such as power line communication, LAN cable, wireless communication, or the Internet.
  • a network 320 such as power line communication, LAN cable, wireless communication, or the Internet.
  • the communication interfaces 310 to 312 of the embodiment are, for example, network cards, each having a port. Then, the communication interfaces 310 to 312 are connected to each other as a port on the transmission side (transmission devices 313 to 315) and a port on the reception side (reception devices 316 to 318) using a LAN cable to form a port pair. .
  • the communication interfaces 310 to 312 function as the transmitting / receiving unit 30 in FIG.
  • the transmission devices 313 to 315 function as the transmission unit 31 in FIG.
  • the receiving devices 316 to 318 each function as the receiving unit 32 in FIG. In the following description, when a communication interface is described, any one of the communication interfaces 310 to 312 is shown.
  • the number of communication interfaces may be any number of one or more.
  • the transmission devices 313 to 315 and the reception devices 316 to 318 are not limited to the ports mounted on the network card.
  • the connection methods of the transmission devices 313 to 315 and the reception devices 316 to 318 are not limited to LAN cables, and may be, for example, power line communication or wireless communication.
  • FIG. 4 is a flowchart showing the processing contents of the load test processing.
  • FIG. 4 shows the processing contents of the entire load test from when the load test of the information processing apparatus 100 is started to dynamically adjust the load until the load test ends.
  • the control unit 11 determines, from the configuration information table 21 in FIG. 2A, the number of logical CPUs that the information processing apparatus 100 has, the memory size that can be used in the test, the number of valid network ports, And obtain the MTU of each network port. Further, the control unit 11 acquires the initial value of the packet count number, the connection number, the CPU binding number, and the priority from the initial value table of FIG. 2B (S101).
  • the control unit 11 sets the number of logical CPUs used in the port pair, the size of the transmission buffer used in the transmission side port (transmission unit 31) and the reception buffer received in the reception side port (reception unit 32). Further, the control unit 11 sets parameters such as the number of connections of the port pair output to the test unit 13 and the packet count number of packets transmitted / received by the port pair to the initial values acquired in S101 (S102).
  • the control unit 11 divides the number of valid network ports acquired in S101 by 2, and calculates the number of port pairs (transmission / reception unit 30).
  • control unit 11 calculates the number of logical CPUs that can be used exclusively by one port pair by dividing the number of logical CPUs of the information processing apparatus 100 by the number of port pairs. That is, the number of exclusive logical CPUs is the maximum value that can be set as the CPU binding number in the parameter setting.
  • the information processing apparatus 100 divides the allocated number of logical CPUs by the number of port pairs to obtain one port pair. Alternatively, the number of logical CPUs that can be exclusively used may be calculated.
  • control unit 11 calculates a memory size that can be used by one port pair (hereinafter referred to as an allocated memory size) by dividing the memory size that can be used in the test by the number of valid network ports.
  • the memory allocated to the port pair is called allocated memory.
  • control part 11 substitutes the value acquired by S101 to following formula (1), (2), and divided
  • transmission side memory size allocated memory size ⁇ M / (M + N) (1)
  • Receiving side memory size allocated memory size ⁇ N / (M + N) (2)
  • the control unit 11 substitutes the value acquired in S101 into the following equation (3) to calculate the size of the storage area for the transmission buffer (hereinafter referred to as the size of the transmission buffer).
  • Transmission buffer size packet count number ⁇ MTU of each port ⁇ number of connections (3)
  • the control unit 11 sets the size of the storage area for the reception buffer (hereinafter referred to as the reception buffer size) to be larger than the transmission buffer size. This is because a packet transmitted from the transmission side is temporarily stored in the reception buffer at the reception side and then processed. Therefore, before the processing included in the packet received at the reception side ends, a new packet is transmitted from the transmission side. This is to prevent overflow when a packet is received.
  • the control unit 11 sets the CPU binding number at the start of the load test as follows. If the initial value of the number of CPU bindings stored in the initial value table 22 is 0 or the number of exclusive logical CPUs ⁇ 1, the CPU is not assigned to each port pair, and one CPU is shared by a plurality of port pairs. . Therefore, the control unit 11 sets the number of CPU bindings to be absent when the number of exclusive logical CPUs ⁇ 1. If the number of CPU bindings> the number of exclusive logical CPUs, the CPU binding number is set to the number of exclusive logical CPUs. Otherwise, the value stored in the initial value table is set.
  • control unit 11 outputs the parameters set in S102 to the test unit 13.
  • test unit 13 generates a packet according to the parameter input from the control unit 11 and transmits the packet to the reception unit 32 via the transmission unit 31.
  • the transmission / reception part 30 transmits / receives a packet (S103).
  • the packet transmission / reception in S103 will be specifically described.
  • the test unit 13 executes transmission / reception tasks corresponding to the number of port pairs multiplied by the number of connections. Then, the test unit 13 operates each transmission / reception task using the CPU allocated by CPU binding and the allocated memory, and transmits a packet every time a packet having a packet count number is generated.
  • the transmission / reception task executed by one port pair is further divided into two transmission / reception tasks to perform bidirectional transmission / reception. These two transmission / reception tasks are classified into, for example, a task for transmitting packets from the A port to the B port and a task for transmitting packets from the B port to the A port.
  • a case where packet transmission is performed only in one direction will be described as an example.
  • the monitoring unit 12 measures the number of packets being transmitted and received and calculates a transfer rate that is a data transfer amount per unit time. Then, the load factor is calculated by dividing the transfer rate calculated in the band between the transmission unit 31 and the reception unit 32 (S104).
  • the bandwidth is determined by the configuration of the transmission-side port and the reception-side port, the shape of the LAN cable, and the like. For example, the bandwidth is stored in a part of the storage area of the storage device 305 and May be notified to the monitoring unit 12.
  • the processing of S101 to S104 is processing related to the processing of S105 and S106 described later, and the initial value of each parameter is set, and the load factor when each parameter is set to the initial value is calculated. It is.
  • the setting value of one parameter is set to the initial value, and the packet is transmitted to the receiving unit via the transmitting unit, and monitored. It can be said that the load factor is measured by the unit 12.
  • the control unit 11 refers to the load factor (measured load factor) calculated by the monitoring unit 12 and determines whether or not the load is an optimum load (S105). Whether or not the load is optimal may be determined based on whether or not the load is determined.
  • the optimum load may be the maximum network load that is possible with the capability of the information processing apparatus 100, and the optimum load may be a state in which the load factor does not increase any more even when the load is adjusted.
  • a load factor of 100% may be set as the optimum load, and when the load factor reaches 100%, it may be determined that a parameter for an optimum load has been obtained.
  • control unit 11 determines in S105 that the optimum load is not applied to the network from the load factor (No in S105)
  • the control unit 11 adjusts the parameters in order from the parameter having a large influence on the increase / decrease of the load factor. Further, the control unit 11 changes the resource setting of the information processing apparatus 100 assigned to each port pair (S106). The process of S106 will be described later with reference to FIGS.
  • control part 11 determines whether the load test was complete
  • control unit 11 determines in S105 that the optimum load is applied to the network from the load factor (Yes in S105), the control unit 11 executes the process of S107.
  • the information processing apparatus 100 monitors the load factor and dynamically adjusts the parameters, a load test in an optimal load state is possible. Since the information processing apparatus 100 automatically adjusts the load while changing the parameters, the optimum load is set more efficiently than when testing by setting thousands to tens of thousands of parameters manually. be able to.
  • FIG. 5 is a flowchart showing the contents of the buffer size adjustment processing.
  • load adjustment / setting change of S106 is performed.
  • the monitoring unit 12 includes the number of packets transmitted on the transmission side (hereinafter referred to as transmission processing packets) and the number of packets received on the reception side (hereinafter referred to as reception processing packets). Is counted (S201).
  • the transmission processing refers to processing from generation of a packet on the transmission side to transmission of the packet to the reception side port via the transmission side port.
  • the reception process is a process in which a transmission packet is received at a port on the reception side, the packet is stored in the reception buffer, and a process in the reception side process until the packet stored in the reception buffer is extracted from the reception buffer. To tell.
  • control unit 11 acquires the number of transmission processing packets and the number of reception processing packets counted by the monitoring unit 12, and confirms whether or not the number of transmission processing packets and the number of reception processing packets are different. Then, it is determined whether or not the processing on the receiving side is slow (S202).
  • the control unit 11 determines that the processing on the receiving side is slow when the value of the number of reception processing packets is smaller than the number of transmission processing packets (Yes in S202). Then, the control unit 11 checks the number of packets stored in the reception buffer, and if the packet is full in the reception buffer storage area (hereinafter referred to as buffer full state), the buffer size is increased and the packet count is increased. Decrease the number (S203).
  • the packet count number reduction designation is a flag that designates that when the control unit 11 next adjusts (changes) the packet count number, the adjustment is performed in the direction of decreasing the packet count number. Then, the control unit 11 executes the processes of S205 to S209. The processing of S205 to S209 will be described later with reference to FIGS.
  • control unit 11 determines the allowable divergence value of the packet transmission / reception number stored in the data table of FIG. 2C in determining whether or not the transmission processing packet number and the reception processing packet number are different. It may be determined that there is a deviation when the following formula (4) holds.
  • the allowable divergence value of the packet transmission / reception number is a numerical value representing the number of packets indicating how far the difference between the number of transmission processing packets and the number of reception processing packets may deviate. Number of transmission processing packets-number of reception processing packets> allowable deviation of packet transmission / reception number (4)
  • the allowable divergence value of the packet transmission / reception number may be set, for example, within the range of the number of reception processing packets that can be processed on the reception side during that time by predicting that transmission of transmission packets from the transmission side is interrupted.
  • the size of the reception buffer is increased.
  • the maximum value that can increase the size of the reception buffer is the memory size on the reception side. That is, when the size of the reception buffer is the same as the memory size on the reception side, since the size of the reception buffer cannot be increased even in the buffer full state in S203, only the processing for designating the decrease in the packet count number is executed.
  • the control unit 11 sets the packet count number to increase designation (S204).
  • the designation to increase the packet count number is a flag that specifies that when the control unit 11 next adjusts the packet count number, the adjustment is performed in the direction of increasing the packet count number.
  • the control unit 11 executes the processing of packet count adjustment S205 to S209. As shown in FIG. 5, in S205 to S209, each time the process ends by setting the parameter adjustment value in each process, the process proceeds to the next process. Further, even if the currently executed processing of S201 to S209 is completed, the processing of S106 of FIG. 4, that is, until the control unit 11 determines that the load test is completed in S107 of FIG.
  • the processing of S201 to S209 is repeatedly executed.
  • the determination of the end of the load test by the control unit 11 is made by determining that the load test is to be ended when an instruction indicating the end of the load test is input via the input / output interface or when an optimum load is obtained. Also good.
  • 6 and 7 are flowcharts showing the contents of the packet count adjustment process. 6 and 7 are flowcharts for explaining the contents of the packet count adjustment processing in S205 of FIG.
  • the control unit 11 stores the current packet count number in P1 which is a storage area for the packet count number in the data table 23. Then, the control unit 11 turns off the load factor update flag stored in the data table 23 (S301).
  • control unit 11 stores the packet count number of the initial value table 22 in P1 in the adjustment process of the first packet count number after the start of the load test. In the second and subsequent packet count number adjustment processing, the previously adjusted packet count number may be stored in P1. In the following description, when P1 to P6 are described, the storage areas P1 to P6 for the packet count numbers are indicated, respectively. Then, the control unit 11 determines whether or not the packet count number is designated to be reduced (S302).
  • variable N for adjusting the packet count number is set to a value that is appropriately determined in a number larger than 1 during the adjustment process of the first packet count number after the start of the load test.
  • the previously adjusted N is set in the data table 23.
  • control unit 11 stores the new packet count number calculated in S303 in P2, which is a storage area specified in the data table 23.
  • the control unit 11 assigns a packet count number adjustment variable N to the following equation (6) to obtain a new packet count.
  • the number is calculated (S304).
  • the packet count number the packet count number stored in the storage area of P1 or P3 is substituted.
  • the control unit 11 substitutes the packet count number stored in P1 into Expression (6).
  • Packet count number ⁇ N new packet count number (6)
  • control unit 11 stores the new packet count number calculated in S304 in P2 which is a storage area specified in the data table 23 (S305).
  • the control unit 11 outputs the new packet count number stored in P2 to the test unit 13. Then, every time the test unit 13 generates a packet with the packet count number input from the control unit 11, the test unit 13 outputs the generated packet to the transmission side port, and sends the packet to the reception side port via the transmission side port. Send. As a result, the control unit 11 transmits the packet to the receiving port via the transmitting port, and transmits / receives the packet between the port pairs (S306).
  • the monitoring unit 12 measures the number of transmission packets and reception packets being transmitted / received, and obtains a transfer rate that is the number of packets flowing through the LAN cable per unit time. Also, the load factor is calculated by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12, and determines whether or not the load factor has increased by changing the packet count number (S307).
  • the control unit 11 determines that the load factor has increased due to the change in the packet count (Yes in S307), the control unit 11 turns on the load factor update flag stored in the data table 23, and at this time The packet count is stored in P3 (S308). At this time, the packet count number stored in P3 is the packet count number at which the load factor becomes the maximum as measured by the packet count adjustment process at this time.
  • control part 11 performs the process of S302. Thereafter, when the process proceeds to S303, the control unit 11 substitutes the packet count number stored in P3 for the packet count number of Expression (5). In S304, the control unit 11 substitutes the packet count number stored in P3 for the packet count number of Expression (6).
  • the load factor update flag is a flag indicating that the load factor has already been updated at least once in the adjustment processing of the current packet count.
  • the load factor update flag may be the same as the load factor update flag used for processing other parameters, or may be stored independently for each parameter in a different storage area of the storage device 205. good.
  • control unit 11 determines that the load factor has not increased even if the packet count is changed, the control unit 11 refers to the load factor update flag stored in the data table 23 (S309).
  • a reverse flag which is a flag indicating whether or not, has been referred to (S310).
  • the control unit 11 When the reverse flag is off, the control unit 11 does not increase the load factor even if the packet count number is changed. Change to decrease specification. Further, the control unit 11 returns the packet count number to the packet count number stored in P1, and turns on the reverse flag (S311). And the control part 11 performs the process of S302. Thereafter, when the process proceeds to S303, the control unit 11 substitutes the packet count number stored in P1 for the packet count number of Expression (5). In S304, the control unit 11 substitutes the packet count number stored in P1 for the packet count number of Expression (6).
  • the control unit 11 checks whether the value of the packet count number adjustment variable N can be reduced (S312). Specifically, the packet count number adjustment variable N must be decreased when it is substituted into equation (5), and the packet count number must be increased when it is substituted into equation (6). N must be greater than or equal to 1. Therefore, it is determined that the packet count adjustment variable N cannot be reduced when N ⁇ 1.
  • control unit 11 when N ⁇ 1, the control unit 11 halves the value of the packet count adjustment variable N (N ⁇ 1/2). Also, the packet count number increase designation and the packet count number decrease designation are returned to the settings at the start of the packet count number adjustment S205. Further, the control unit 11 returns the packet count number to the value stored in P1. Further, the control unit 11 turns off the reverse flag (S313). And the control part 11 performs the process of S302. Thereafter, when the process proceeds to S303, the control unit 11 substitutes the packet count number stored in P1 for the packet count number of Expression (5). In S304, the control unit 11 substitutes the packet count number stored in P1 for the packet count number of Expression (6).
  • control unit 11 When it is determined in S309 of FIG. 6 that the load factor update flag is on, the control unit 11 performs the process of S315 of FIG.
  • control unit 11 refers to the data table 23 and stores the packet count number stored in the P2 storage area, which is the packet count number set when the packet was last transmitted / received, in the P4 storage area. (S315). Further, the control unit 11 stores the packet count number stored in the P3 storage area where the load factor is maximum in the P5 storage area. Further, the control unit 11 turns off the load factor update flag.
  • the control unit 11 substitutes the two packet count numbers stored in P4 and P5 into the following equation (7), calculates the intermediate value of the two packet count numbers stored in P4 and P5, and newly adds P6. Stored as a valid packet count.
  • P6 (P4 + P5) / 2: The decimal point is rounded off (7)
  • Equation (7) P4 is the packet count number stored in P4, P5 is the packet count number stored in P5, and P6 is the new packet count number stored in P6. is there.
  • control unit 11 outputs the new packet count number stored in P6 to the test unit 13, thereby transmitting the packet to the reception side port via the transmission side port in the same manner as in S306.
  • the packet is transmitted and received (S317).
  • the monitoring unit 12 measures the number of transmission packets and reception packets being transmitted / received, and obtains a transfer rate that is the number of packets flowing through the LAN cable per unit time. Further, the monitoring unit 12 calculates the load factor by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12, and determines whether or not the load factor has increased by changing the packet count number (S318). Specifically, when the packet count number stored in P6 is set rather than the load factor obtained when the packet count number stored in P5 is set (hereinafter referred to as the load factor of P5). It is determined whether or not the obtained load factor (hereinafter referred to as P6 load factor) is larger. Note that the load factor of P5 is the load factor stored in P3 in S308 when S318 is first performed in the current adjustment processing of the packet count.
  • the control unit 11 determines that the load factor with the lower load factor between P6 and P5 is P4. Store. In addition, the control unit 11 stores in P5 the one with the higher load factor between the packet count number of P6 and the packet count number of P5. Further, the control unit 11 turns on the load factor update flag (S319). And the control part 11 performs the process of S316.
  • the control unit 11 checks whether or not the load factor update flag stored in the data table 23 is on (S320).
  • the adjustment value of the packet count number is the packet count number at which the highest load factor (close to the determined load factor) is obtained in the packet count number (parameter) adjustment processing, and is set during the load test.
  • the packet count number is the packet count number at which the highest load factor (close to the determined load factor) is obtained in the packet count number (parameter) adjustment processing, and is set during the load test.
  • the control unit 11 changes the range of P5 and P6 and further increases the packet count. It is determined whether or not to adjust the number (S322). Specifically, the control unit 11 determines whether or not the range between the packet count numbers already stored in P5 and P6 has been changed in the current packet count number adjustment process.
  • the range change flag is an initial value that is off, and is turned on when the range is changed. That is, when the range change flag is ON, it is indicated that the load factor has not increased although the processing of S316 to S320 is performed after the range is changed and the load factor is increased in S322 to be described later.
  • the range change flag is reset and turned off every time the packet count adjustment process is completed.
  • the control unit 11 When the range change flag is off (No in S322), the control unit 11 turns on the range change flag. Then, if the packet count number is designated to decrease, the control unit 11 calculates a packet count number obtained by multiplying the packet count number stored in P3 by N times. When the range change flag is off (No in S322), the control unit 11 determines that the packet count number is 1 / N times (the decimal point is rounded off) if the packet count number is designated to increase. Calculate the number. Then, the control unit 11 stores the calculated packet count number in the storage area of P4 (S323). Then, the control part 11 performs the process of S316.
  • the control unit 11 determines that the load factor does not increase even if the range of P5 and P6 is changed, and sets the adjusted packet count to the packet count of P3. A number is set (S324). And the control part 11 complete
  • the control unit 11 increases or decreases the packet count number, and sets the packet count number that maximizes the load factor as an adjustment value of the packet count number.
  • the information processing apparatus 100 can set the packet count number which can obtain the optimal load factor by finely adjusting the packet count number from the initial adjustment.
  • the load factor determined as the necessary load factor is set, and the packet count is set so as to approach the determined load factor. The number may be adjusted.
  • FIG. 8 is a flowchart showing the contents of the connection number adjustment processing.
  • FIG. 8 is a flowchart for explaining the contents of the connection number adjustment processing in S206 of FIG.
  • the control unit 11 stores the current number of connections in C1, which is a storage area specified in the data table 23. Note that the control unit 11 stores the number of connections in the initial value table 22 in C1 in the first adjustment process of the number of connections after the start of the load test. In the second and subsequent connection number adjustment processing, the number of connections adjusted last time may be stored in C1. In the following description, when C1 and C2 are described, the storage areas C1 and C2 for the number of connections are respectively indicated.
  • control unit 11 turns off the load factor update flag stored in the data table 23 (S401).
  • control unit 11 sets a value obtained by adding 1 to the number of connections stored in C1 as a new number of connections (S402).
  • the control unit 11 outputs the new number of connections set in S402 to the test unit 13. Then, the test unit 13 forms a logical packet communication path between the transmission-side port and the reception-side port, which is the same number as the number of connections input from the control unit 11, and sets the transmission-side port. Then, the packet is transmitted to the port on the receiving side (S403). As a result, the control unit 11 transmits the packet to the reception side port via the transmission side port, and transmits and receives the packet between the port pairs.
  • the monitoring unit 12 measures the number of transmission packets and reception packets being transmitted and received, and obtains a transfer rate that is the number of packets flowing through the LAN cable per unit time. Also, the load factor is calculated by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12, and determines whether or not the load factor has increased by changing the number of connections (S404).
  • the control unit 11 determines that the load factor has increased due to the increase in the number of connections (Yes in S404)
  • the control unit 11 turns on the load factor update flag stored in the data table 23 and sets the new connection number. Is stored in C2 (S405).
  • the number of connections stored in C2 is the number of connections at which the load factor is maximized as measured by the connection number adjustment processing at this time.
  • the control part 11 performs the process of S402.
  • the load factor update flag is a flag indicating that the load factor has already been updated at least once in the current process of adjusting the number of connections.
  • the load factor update flag may be the same as the load factor update flag used for processing other parameters, or a flag used independently for each parameter is stored for each parameter in a different storage area of the storage device 205. You may do it.
  • the controller 11 determines that the load factor has not increased even if the number of connections is changed, the controller 11 refers to the load factor update flag stored in the data table 23 (S406).
  • the control unit 11 determines that the maximum load factor has been obtained by increasing the number of connections when the load factor update flag is on (Yes in S406). That is, the control unit 11 determines that the load factor does not increase even if the number of connections is decreased. And the control part 11 sets the adjustment value of the number of connections to the value stored in C2 (S407). And the control part 11 complete
  • the adjustment value for the number of connections is the number of connections for which the highest load factor (close to the determined load factor) was obtained in the connection number (parameter) adjustment process, and the number of connections to be set during the load test. It is.
  • the control unit 11 When the load factor update flag is off (No in S406), the control unit 11 does not increase the load factor even if the number of connections is increased. Next, the number of connections is determined from the number of connections stored in C1. To determine whether or not the load factor increases. Therefore, the control unit 11 returns the number of connections to the value stored in C1 (S408).
  • control part 11 determines whether the number of connections is 1 (S409). When the number of connections is 1 (Yes in S409), the number of connections cannot be decreased any more, so the value stored in C1, that is, the number of connections is set to 1 (S410). And the control part 11 complete
  • control unit 11 sets a value obtained by decrementing the number of connections by ⁇ 1 as a new connection number (S411).
  • control unit 11 outputs the new number of connections set in S411 to the test unit 13, thereby transmitting the packet to the reception side port via the transmission side port as in S403. Packets are transmitted and received (S412).
  • the monitoring unit 12 measures the number of transmission packets and reception packets that are transmitted and received, and obtains a transfer rate that is the number of packets flowing through the LAN cable per unit time. Also, the load factor is calculated by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12, and determines whether or not the load factor has increased by changing the number of connections (S413).
  • control unit 11 determines that the load factor has increased due to the decrease in the number of connections (Yes in S413), the control unit 11 turns on the load factor update flag stored in the data table 23 and sets the new connection number. Is stored in the storage area of C2 (S414).
  • control unit 11 determines whether or not the number of connections stored in C2 in S414 is 1 (S415). When the number of connections stored in C2 in S414 is not 1 (No in S415), the control unit 11 determines whether or not the load factor increases by further reducing the number of connections. Execute.
  • control unit 11 When the number of connections is 1 (Yes in S415), the control unit 11 cannot decrease the number of connections any more, and therefore sets the number of connections stored in C2 as an adjustment value for the number of connections (S416). . And the control part 11 complete
  • control unit 11 determines whether or not the load factor update flag is on (S417).
  • the control unit 11 determines that there is no further increase in the load factor even if the number of connections is increased, and executes the process of S416. And the control part 11 complete
  • control unit 11 increases or decreases the number of connections, and sets the number of connections with the maximum load factor as the adjusted number of connections.
  • the information processing apparatus 100 can set the number of connections that can obtain an optimum load factor.
  • it has been shown as an example to find the number of connections with the maximum load factor.
  • the load factor determined as the required load factor is set, and the number of connections is set so as to approach the determined load factor. You may adjust it.
  • FIG. 9 is a flowchart showing the contents of the CPU binding number adjustment process.
  • FIG. 9 is a flowchart for explaining the content of the CPU binding number adjustment process in S207 of FIG.
  • the control unit 11 stores the current CPU binding number in B1, which is a storage area specified in the data table 23. Note that the control unit 11 stores the CPU binding number of the initial value table 22 in B1 in the adjustment processing of the first CPU binding number after the start of the load test. In the second and subsequent adjustment processing of the CPU binding number, the CPU binding number adjusted last time may be stored in B1. In the following description, when B1 and B2 are described, the storage areas B1 and B2 for the number of CPU bindings are shown, respectively.
  • control unit 11 turns off the load factor update flag stored in the data table 23 (S501).
  • control unit 11 determines whether or not the CPU binding number is 1 (S502).
  • the control unit 11 determines whether or not the usage rate of the bound CPU is high (S503). For example, the control unit 11 checks whether the CPU usage rate exceeds 90% (a threshold value appropriately specified).
  • the control unit 11 sets the CPU binding number to increase designation (S504).
  • the controller 11 designates the CPU binding number to be increased because the CPU usage rate is high, the CPU allocation time for the transmission / reception task is insufficient, the packet generation and the packet transmission processing are executed slowly, and the transfer rate This is to check whether or not the value has decreased. That is, the control unit 11 increases the number of CPU bindings and decreases the CPU usage rate, thereby ensuring sufficient CPU allocation time for the transmission / reception task and checking whether the network load increases.
  • the CPU bind number adjustment value is the CPU bind number at which the highest load factor (closest to the determined load factor) is obtained in the CPU bind number (parameter) adjustment process, and is set during the load test. The number of CPU bindings to be performed.
  • the control unit 11 determines that the CPU usage rate is not high, the control unit 11 sets the CPU binding number to decrease designation in order to reduce the CPU binding number (S505).
  • the reason why the control unit 11 designates the CPU binding number to be reduced is that the CPU usage rate is low and the CPU allocation to the transmission / reception task is considered to be sufficient, but the network load factor is still low for binding CPUs. It may be higher if you do. Therefore, the control unit 11 is configured to specify whether to decrease the CPU binding number in order to dynamically adjust the CPU binding number, and to check whether the network load increases by decreasing the CPU binding number.
  • the CPU usage rate is not high means, for example, that the CPU usage rate is 90% (appropriately specified threshold) or less.
  • the control unit 11 checks whether or not the CPU binding number is set to decrease designation (S506). In S506, when the CPU binding number is set to increase designation (No in S506), the control unit 11 increments the CPU binding number by 1 if the CPU binding number is equal to or less than the number of exclusive logical CPUs. In step S506, when the CPU binding number is set to increase designation, the control unit 11 invalidates the CPU binding if the number of exclusive logical CPUs is exceeded (S507). Thereby, the control unit 11 sets the value set in S507 as a new CPU binding number. Note that invalidating the CPU binding means that the CPU of the information processing apparatus 100 is shared by a plurality of port pairs. When the CPU binding is invalidated, for example, the CPU binding number may be zero.
  • the control unit 11 sets the CPU binding number to -1 and newly sets the CPU binding number if the CPU binding number is less than the exclusive logical CPU number.
  • the control unit 11 outputs the new CPU binding number set in S507 and S508 to the test unit 13. Then, the test unit 13 generates a packet using the logical CPU of the CPU binding number input from the control unit 11, and transmits the packet from the transmission side port to the reception side port (S509). As a result, the control unit 11 transmits the packet to the reception side port via the transmission side port, and transmits and receives the packet between the port pairs.
  • the new CPU binding number is 0 (CPU binding is invalid)
  • the CPU of the information processing apparatus 100 may be shared by a plurality of port pairs.
  • the monitoring unit 12 measures the number of transmission packets and reception packets that are transmitted and received, and obtains a transfer rate that is the number of packets flowing through the LAN cable per unit time. Also, the load factor is calculated by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12, and determines whether or not the load factor has increased by changing the CPU binding number (S510).
  • control unit 11 determines that the load factor has increased due to the change in the CPU binding number (Yes in S510)
  • the control unit 11 turns on the load factor update flag stored in the data table 23 and sets a new CPU.
  • the bind number is stored in the storage area of B2 (S511).
  • the CPU binding number stored in B2 is the CPU binding number that maximizes the load factor as measured by the CPU binding number adjustment processing at this time.
  • the control part 11 performs the process of S506.
  • the load factor update flag is a flag indicating that the load factor has already been updated at least once in the current CPU binding number adjustment process.
  • the load factor update flag may be the same as the load factor update flag used for processing other parameters, or may be stored independently for each parameter in a different storage area of the storage device 205. good.
  • control unit 11 determines that the load factor has not increased even if the CPU binding number is changed, the control unit 11 refers to the load factor update flag stored in the data table 23 (S512).
  • the control unit 11 determines whether or not the retry flag stored in the data table 23 is on (S514).
  • the retry flag is a flag indicating whether or not the CPU binding number has already been increased or decreased in the adjustment processing of the CPU binding number at this time, and when it is on, the CPU binding number has already been increased or decreased. Indicates that the load factor did not increase.
  • control unit 11 sets the CPU bind number adjustment value to the value stored in B1 (S515).
  • control unit 11 when the retry flag is off (No in S514), the control unit 11 turns on the retry flag and returns the CPU binding number to the CPU binding number stored in B1. Further, the control unit 11 sets designation of increase / decrease of the CPU binding number in the increase designation if the current CPU binding number designation is an increase designation, and if the current CPU bind number designation is a decrease designation (S516). . And the control part 11 performs the process of S506.
  • control unit 11 increases or decreases the CPU binding number, and sets the CPU binding number that maximizes the load factor as the adjusted CPU binding number.
  • the information processing apparatus 100 can set the number of CPU bindings that can obtain an optimum load.
  • the CPU binding number that maximizes the load factor is found.
  • the CPU load is set so that the load factor determined as the required load factor approaches the determined load factor. The number may be adjusted.
  • FIG. 10 is a flowchart showing the contents of the dispatch process number adjustment process.
  • FIG. 10 is a flowchart for explaining the contents of the dispatch process number adjustment process in S208 of FIG.
  • the control unit 11 dispatches a transmission / reception task for transmitting / receiving a packet between port pairs, and after the assignment of the CPU to the transmission / reception task is released, the time until the CPU assignment returns to the transmission / reception task (hereinafter, referred to as the CPU assignment)
  • the dispatch time is measured (S601).
  • control unit 11 refers to the reference value of the dispatch time stored in the data table 23 and compares it with the dispatch time measured in S601 (S602).
  • the control unit 11 determines that the dispatch time is long, and increases the dispatch processing number to set a new dispatch processing number (S603).
  • increasing the number of dispatch processes means increasing the number of transmission / reception task processes executed at one time when a logical CPU is allocated to execute the transmission / reception task. As a result, the transmission / reception task occupies the logical CPU assigned to the port pair for a longer time.
  • the number of dispatch processes to be increased may be stored in the storage device 305 by appropriately storing the number of processes, and the control unit 11 may refer to the storage device 305 in S603.
  • the control unit 11 determines that the dispatch time is short, and sets a new dispatch process number by reducing the dispatch process number (S604).
  • reducing the number of dispatch processes means reducing the number of transmission / reception task processes executed at one time when a logical CPU is allocated to execute the transmission / reception tasks.
  • the transmission / reception task may store a shorter number of logical CPUs assigned to the port pair in the storage device 305, and may be used by the control unit 11 referring to the storage device 305 in S603.
  • the control unit 11 outputs the new dispatch processing number set in S603 and S604 to the test unit 13. Then, the test unit 13 executes a task each time a logical CPU is allocated by the number of dispatch processes input from the control unit 11, and causes a packet to be transmitted from the transmission side port to the reception side port. As a result, the control unit 11 transmits the packet to the reception side port via the transmission side port, and transmits and receives the packet between the port pairs.
  • the monitoring unit 12 measures the number of transmission packets and reception packets that are transmitted and received, and obtains a transfer rate that is the number of packets that flow through the LAN cable per unit time. Also, the load factor is calculated by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12, and determines whether or not the load factor has increased by changing the number of dispatch processes (S605).
  • control unit 11 determines that the load factor has increased due to the change in the number of dispatch processes (Yes in S605), the control unit 11 sets the newly set dispatch process number as an adjustment value of the dispatch process number. Further, the control unit 11 stores an adjustment value for the number of dispatch processes in the storage area D1 for the number of dispatch processes. And the control part 11 complete
  • control unit 11 determines that the load factor has not increased even if the number of dispatch processes is changed (No in S605), the control unit 11 restores the number of dispatch processes (S606). Then, the control unit 11 readjusts the number of dispatch processes. When the number of dispatch processes is decreased in the adjustment process of the number of dispatch processes this time, the control unit 11 increases the number of dispatch processes and sets a new number of dispatch processes. Further, when the dispatch process number is increased in the current dispatch process number adjustment process, the control unit 11 decreases the dispatch process number and sets a new dispatch process number (S607).
  • control unit 11 determines whether or not the load factor has increased due to an increase or decrease in the number of dispatch processes (S608).
  • control unit 11 determines that the load factor has increased by changing the number of dispatch processes (Yes in S608), the control unit 11 sets the newly set number of dispatch processes as an adjustment value for the number of dispatch processes.
  • control unit 11 determines that the load factor has not increased even if the number of dispatch processes is changed (No in S608), the control unit 11 restores the number of dispatch processes, and adjusts the initial number of dispatch processes to the number of dispatch processes.
  • the value is set (S609). Further, the control unit 11 stores an adjustment value for the number of dispatch processes in the storage area D1 for the number of dispatch processes. And the control part 11 complete
  • the initial number of dispatch processes may be stored in the initial value table 22.
  • the control unit 11 dispatches a transmission / reception task by extracting the number of dispatch processes from the initial value table.
  • control unit 11 increases or decreases the number of dispatch processes, and sets the number of dispatch processes that maximizes the load factor as the adjusted number of dispatch processes.
  • the information processing apparatus 100 can set the number of dispatch processes that can obtain an optimum load.
  • the example of finding the number of dispatch processes that maximizes the load factor has been shown as an example.
  • the load factor determined as the required load factor is set, and dispatch processing is performed so as to approach the determined load factor. The number may be adjusted.
  • FIG. 10 is a flowchart showing the contents of the dispatch process number adjustment process.
  • FIG. 10 is a flowchart for explaining the contents of the dispatch process number adjustment process in S208 of FIG. In the following description, a case where one transmission / reception task is executed will be described for simplification of description.
  • the control unit 11 dispatches the transmission / reception task and measures the time (hereinafter referred to as dispatch time) until the CPU assignment is returned (S601).
  • control unit 11 refers to the reference value of the dispatch time stored in the data table 23 and compares it with the dispatch time measured in S601 (S602).
  • control unit 11 determines that the dispatch time is long, and sets a new dispatch process number by increasing the dispatch process number ( S603).
  • increasing the number of dispatch processes means increasing the number of transmission / reception task processes executed at one time when a logical CPU is allocated to execute the transmission / reception tasks. As a result, the transmission / reception task occupies the logical CPU assigned to the port pair for a longer time.
  • the number of dispatch processes to be increased may be stored in the storage device 305 by appropriately storing the number of processes, and the control unit 11 may refer to the storage device 305 in S603.
  • the control unit 11 determines that the dispatch time is short, and sets a new dispatch process number by reducing the dispatch process number ( S604).
  • reducing the number of dispatch processes means increasing the number of processes of transmission / reception tasks executed at one time when a logical CPU is allocated to execute the transmission / reception tasks. As a result, the transmission / reception task occupies the logical CPU assigned to the port pair for a shorter time.
  • the number of dispatch processes to be decreased may be determined by storing a suitably determined number of processes in the storage device 305 and using the control unit 11 by referring to the storage device 305 in S603.
  • the control unit 11 outputs the new dispatch processing number set in S603 and S604 to the test unit 13. Then, the test unit 13 executes a task each time a logical CPU is allocated by the number of dispatch processes input from the control unit 11, and causes a packet to be transmitted from the transmission side port to the reception side port. As a result, the control unit 11 transmits the packet to the reception side port via the transmission side port, and transmits and receives the packet between the port pairs.
  • the monitoring unit 12 measures the number of transmission packets and reception packets that are transmitted and received, and obtains a transfer rate that is the number of packets that flow through the LAN cable per unit time. Also, the load factor is calculated by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12, and determines whether or not the load factor has increased by changing the number of dispatch processes (S605).
  • control unit 11 determines that the load factor has increased due to the change in the number of dispatch processes (Yes in S605), the control unit 11 sets the number of dispatch processes newly set in the storage area D1 of the number of dispatch processes in the data table 23. Store. Then, the control unit 11 sets the newly set dispatch processing number as an adjustment value of the dispatch processing number.
  • control unit 11 determines that the load factor has not increased even if the number of dispatch processes is changed (No in S605), the control unit 11 returns the number of dispatch processes to the initial value (S606).
  • the initial value of the number of dispatch processes is the number of dispatch processes set when the process of S601 is performed.
  • the control unit 11 readjusts the number of dispatch processes.
  • the control unit 11 increases the number of dispatch processes and sets a new number of dispatch processes.
  • the control unit 11 decreases the dispatch process number and sets a new dispatch process number (S607).
  • control unit 11 determines whether or not the load factor has increased due to an increase or decrease in the number of dispatch processes (S608).
  • control unit 11 determines that the load factor has increased by changing the number of dispatch processes (Yes in S608), the control unit 11 sets the number of dispatch processes newly set in the storage area D1 of the number of dispatch processes in the data table 23. Store. Then, the control unit 11 sets the newly set dispatch processing number as an adjustment value of the dispatch processing number.
  • control unit 11 determines that the load factor has not increased even if the number of dispatch processes is changed (No in S608), the control unit 11 returns the number of dispatch processes to the initial value and stores the number of dispatch processes in the data table 23. The initial number of dispatch processes is stored in D1. Then, the control unit 11 sets the initial number of dispatch processes as an adjustment value for the number of dispatch processes (S609).
  • the initial number of dispatch processes may be stored in the initial value table 22.
  • the control unit 11 dispatches a transmission / reception task by extracting the number of dispatch processes from the initial value table.
  • the dispatch process number of S603, S604, and S607 when there are two or more connections, the dispatch process number of all the transmission / reception tasks may be increased / decreased simultaneously. Further, the adjustment processing of the number of dispatch processes in S601 to S609 in FIG.
  • control unit 11 increases or decreases the number of dispatch processes, and sets the number of dispatch processes that maximizes the load factor as the adjusted number of dispatch processes.
  • the information processing apparatus 100 can set the number of dispatch processes that can obtain an optimum load factor.
  • the example of finding the number of dispatch processes that maximizes the load factor has been shown as an example.
  • the load factor determined as the required load factor is set, and dispatch processing is performed so as to approach the determined load factor. The number may be adjusted.
  • FIG. 11 is a flowchart showing the contents of the priority adjustment processing.
  • FIG. 11 is a flowchart for explaining the contents of the task priority adjustment processing in S209 of FIG.
  • the control unit 11 stores the current priority in the storage area U1 specified in the data table 23.
  • the control unit 11 stores the priority of the initial value table 22 in U1 in the initial priority adjustment process after the load test is started. In the second and subsequent priority adjustment processes, the previously adjusted priority may be stored in U1.
  • control unit 11 turns off the load factor update flag stored in the data table 23 (S701).
  • control unit 11 sets a value obtained by raising the priority stored in U1 by one step as a new priority (S702).
  • U1 and U2 are described, the storage areas U1 and U2 for task priority are shown, respectively.
  • control unit 11 prioritizes other processing and allocates the usage time of the logical CPU to the transmission / reception task executed in the test unit 13.
  • the priority is a parameter that assigns the logical CPU usage authority in order from the task with the highest priority when a plurality of tasks are executed using the logical CPU assigned to the port pair in order. It is. Therefore, a higher priority task can use the logical CPU in preference to other tasks, and processing can proceed with priority.
  • the monitoring unit 12 measures the number of transmission packets and reception packets that are transmitted and received, and obtains a transfer rate that is the number of packets that flow through the LAN cable per unit time. Also, the load factor is calculated by dividing the transfer rate by the bandwidth of the port pair. Then, the control unit 11 acquires the load factor calculated by the monitoring unit 12 and determines whether or not the load factor has increased by changing the priority (S703).
  • the control unit 11 determines that the load factor has increased due to the change in the priority (Yes in S703), the control unit 11 turns on the load factor update flag stored in the data table 23 and sets a new priority. Is stored in the storage area of U2 (S704). At this time, the priority stored in U2 is the priority at which the load factor is maximized at this point in time as measured by the priority adjustment processing. And the control part 11 performs the process of S702.
  • the load factor update flag is a flag indicating that the load factor has already been updated at least once in the priority adjustment processing this time.
  • the load factor update flag may be the same as the load factor update flag used for processing other parameters, or may be stored separately for each parameter in a different storage area of the storage device 205. good.
  • the controller 11 determines that the load factor has not increased even if the priority is changed, the controller 11 refers to the load factor update flag stored in the data table 23 (S705).
  • the control unit 11 stores the priority value with the highest load factor in U2, so the priority adjustment value is stored in U2. The priority is set (S706). Then, the control unit 11 ends the task priority adjustment processing.
  • the control unit 11 When the load factor update flag is off (No in S705), the control unit 11 returns the priority adjustment value to the priority stored in U1 (S707). In the following processing, it is determined whether the load increases by decreasing the priority.
  • control unit 11 determines whether or not the priority can be decreased (S708). Specifically, it is determined whether or not the lowest priority is set to the currently set priority, and when the lowest priority is set, it is determined that the priority cannot be decreased. Taking the value stored in the initial value table 22 of FIG.
  • the priority adjustment value stored in U1 that is, the priority is set. It is set to 1 (S709). Then, the control unit 11 ends the task priority adjustment processing.
  • control unit 11 sets a value obtained by lowering the priority by one step as a new priority (S710).
  • control unit 11 determines whether or not the load factor has increased due to an increase or decrease in the number of dispatch processes (S711).
  • control unit 11 determines that the load factor has increased due to the lowering of priority (Yes in S711), the control unit 11 turns on the load factor update flag stored in the data table 23 and sets a new priority. Is stored in the storage area of U2 (S712).
  • control unit 11 determines whether or not the priority stored in U2 in S712 is 1 (S713). When the priority stored in U2 in S713 is not 1 (No in S713), the control unit 11 determines that the priority can be further reduced, and executes the process of S710.
  • the priority adjustment value is set to the priority stored in U2, that is, the priority is set to 1 (S715). . Then, the control unit 11 ends the task priority adjustment processing.
  • control unit 11 determines whether or not the load factor update flag is on (S714).
  • the control unit 11 determines that there is no further increase in the load factor even if the priority is increased or decreased, and executes the processing of S715. Then, the control unit 11 ends the task priority adjustment processing.
  • the control unit 11 determines that the load factor has not increased even if the priority is increased or decreased, and sets the value stored in U1 as the priority adjustment value. (S716). Then, the control unit 11 ends the task priority adjustment processing.
  • control unit 11 increases or decreases the priority, and sets the priority that maximizes the load factor as the adjusted priority (priority adjustment value).
  • the information processing apparatus 100 can set the priority with which an optimum load factor can be obtained.
  • the priority with the maximum load factor is found, but the load factor determined as the required load factor is set, and the priority is set so as to approach the determined load factor. You may adjust it.
  • the information processing apparatus 100 changes a plurality of parameters whose load factor varies when the setting is changed so that the load factor measured by the monitoring unit approaches the determined load factor. Adjust in order from larger parameters. Thereby, the information processing apparatus 100 can efficiently set the parameters in the load test by finely adjusting the load factor from the initial adjustment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Abstract

 ネットワークの負荷を効率的に設定する。監視部は、パケットを送信する送信部からパケットを受信する受信部にパケットを送信しているとき、送信部と受信部との間の帯域の使用率である負荷率を測定する。そして、制御部は、監視部で測定した負荷率が決められた負荷率に近づくように、設定を変更すると負荷率を変動させる複数のパラメータを、負荷率の増減に対する影響の大きいパラメータから順番に調整する。

Description

情報処理装置、および負荷試験方法
 本発明はネットワークの負荷を調整する技術に関する。
 コンピュータ装置に高負荷の処理を行なわせることにより、動作の安定性を試験する高負荷試験が行なわれている。コンピュータ装置の高負荷試験の一つに、コンピュータ装置のネットワークに負荷をかけて、コンピュータ装置が正常に動作するか否かを試験するネットワーク負荷試験がある。また、コンピュータ装置単体でネットワーク負荷試験を行なうことがある。この場合には、コンピュータ装置が備えるネットワークカードの各ポートを、LAN(Local Area Network)ケーブルで接続する。そして、コンピュータ装置は、同一の装置内でパケットの送受信を行うことにより、ネットワークに負荷をかけて負荷試験を行なう。
 関連する技術として、計算機システムは、回線アダプタに、折り返しコネクタの装着を識別する手段を設ける。そして、計算機システムは、折り返しコネクタが装着されていないときはアダプタ試験を実行しており、折り返しコネクタが装着されると回線試験を実行する技術が知られている。電子計算機システムのシステム構成、及び動作モードに適応した試験環境で、ハードウェアの試験を実施する電子計算機システムの試験方法では、試験項目毎に、試験を実行する際の動作環境情報を設定する。そして、電子計算機の試験の制御を行う試験プログラム制御部は、予め設定されている電子計算機システムのシステム構成情報及び動作モード情報を読み出すと共に、各動作環境情報を読み出す。試験プログラム制御部は、電子計算機システムのシステム構成情報及び動作モード情報と、各動作環境情報を比較することにより、試験環境を識別して試験の実行可否を決定し、該当する試験項目で試験を実行する技術が知られている(例えば、特許文献1および特許文献2参照)。
特開平01-238250号公報 特開平06-012275号公報
 前述した負荷試験技術では、例えば、コンピュータ装置の送信側と受信側でパケットを送受信するときに設定される、パケットカウント数やコネクション数が不足すると、送信側と受信側との間のネットワークに負荷がかからない。また、パケットカウント数やコネクション数を増やし過ぎると、コンピュータ装置の制御回路にかかる負荷が重たくなり、制御回路は、指定された数のパケットを送受信できなくなるので、ネットワークに負荷がかからなくなる。したがって、ネットワーク負荷(以下、負荷とも言う。)を最大にするには、コンピュータ装置のリソースに適合した最大の負荷がかかるパケットカウント数やコネクション数を調整するパラメータを見つけなくてはならない。
 しかし、コンピュータ装置は、それぞれ搭載されるCPU数、メモリサイズ、ネットワークカード数、ネットワークポート数、およびネットワーク速度が異なる。すなわち、各コンピュータ装置は、使用できるリソースや処理能力が異なる。したがって、各コンピュータ装置に高負荷のネットワーク負荷をかけるには、各コンピュータで別々のパラメータ(試験設定)を設定しなければならない。
 さらに、近年のネットワークの高速化にともない、従来の負荷試験の方法では、コンピュータ装置のリソース不足により、ネットワーク負荷を上げることができない場合がある。ネットワーク負荷を上げるためには、パラメータのチューニングや制御の見直し、確認作業が必要となり、多くの手間と時間を要する。また、コンピュータ装置の設定の確認作業では、確認項目の組み合わせが数千~数万あり、装置ごとにネットワーク負荷を最大とするパラメータを見つけることは困難である。
 上述した問題に鑑み、本明細書で後述する情報処理装置は、ネットワークの負荷を効率的に設定することを目的とする。
 本明細書で開示する情報処理装置のひとつに、送信部と、受信部と、監視部と、制御部とを備えた情報処理装置がある。送信部は、パケットを送信する。受信部は、パケットを受信する。監視部は、送信部から受信部にパケットを送信しているとき、送信部と受信部との間の帯域の使用率である負荷率を測定する。そして、制御部は、監視部で測定した負荷率が決められた負荷率に近づくように、設定を変更すると負荷率を変動させる複数のパラメータを、負荷率の増減に対する影響の大きいパラメータから順番に調整する。
 本明細書で後述する情報処理装置は、ネットワークの負荷を効率的に設定できるという効果を奏する。
情報処理装置の一実施例を示す機能ブロック図である。 負荷試験で用いるテーブルのデータ例を表したテーブルである。 情報処理装置の一実施例を示すブロック図である。 負荷試験の処理の処理内容を示すフローチャートである。 バッファサイズの調整処理の内容を示すフローチャートである。 パケットカウント数の調整処理の内容を示すフローチャートである。 パケットカウント数の調整処理の内容を示すフローチャートである。 コネクション数の調整処理の内容を示すフローチャートである。 CPUバインド数の調整処理の内容を示すフローチャートである。 ディスパッチ処理数の調整処理の内容を示すフローチャートである。 優先度の調整処理の内容を示すフローチャートである。
[実施形態]
 実施形態の情報処理装置について説明する。
 情報処理装置は、1つ以上のネットワークカードを備え、パケットを送受信するためのポートを2つ以上有する。そして、情報処理装置は、任意の2つのポートをLANケーブルで折り返し接続したポートペアを形成し、パケットを送受信する。また、情報処理装置は、ポートペアで送受信されたパケットの数を測定し、単位時間当たりのデータの転送レート(例えば、Byte/sec)を取得する。そして、情報処理装置は、転送レートを帯域で除算することにより、負荷率を算出する。
 情報処理装置は、負荷率を監視しながら、ポートペアごとにパケットを送受信する処理に用いるリソースを割り振り、かつ設定を変更すると負荷率が変動する複数のパラメータを変更し、ポートペアの通信帯域をできる限り多く使用するように調整する。このとき、情報処理装置は、複数のパラメータの中で、負荷率の増減に対する影響の大きいパラメータから順番に調整する。
 上記のように、情報処理装置は、ポートペアごとに負荷率を監視しながら、複数のパラメータの設定を調整することで、情報処理装置の能力で出力可能な最大の負荷を得る。また、情報処理装置は、複数のパラメータの設定を調整するとき、負荷率の増減に対する影響の大きいパラメータから順番に調整する。これにより、情報処理装置は、負荷試験におけるネットワーク負荷を粗調整から微調整することでネットワーク負荷の最大値を見つけるので、複数のパラメータの組み合わせをランダムに確認するのに比較して、ネットワーク負荷を効率よく調整することができる。
 図1は、情報処理装置の一実施例を示す機能ブロック図である。
 図1において、情報処理装置100は、試験制御部10、記憶部20、および送受信部30を備えている。以下の説明においては、情報処理装置100単体でのネットワーク負荷試験について説明する。また、情報処理装置100は、ネットワーク負荷の調整として、情報処理装置100のリソースや折り返し接続に用いるLANケーブルの帯域などで決まる最大のネットワーク負荷を見つけるときについて説明する。ただし、実施形態の情報処理装置100は、図1に示す試験制御部10、記憶部20、および送受信部30に含まれる各種機能を、複数の情報処理装置で一部ずつ担当することによって、全体として一つの情報処理装置100の機能を実現可能である。また、実施形態の情報処理装置100は、最大のネットワーク負荷ではなく、ユーザにより設定された決められた負荷に近づくように、複数のパラメータを調整することで、適宜必要なネットワーク負荷を得る構成として用いても良い。以下の説明では、決められた負荷として、最大のネットワーク負荷を設定したときについて説明する。
 試験制御部10は、制御部11、監視部12、および試験部13を備える。そして、試験制御部10は、監視部12で測定された負荷率(負荷)を監視しながら、負荷率が最大の負荷(決められた負荷)に近づくように、負荷率の増減に対する影響の大きいパラメータから順番に調整する。
 制御部11は、監視部12で測定された負荷率が決められた負荷率に近づくように、複数のパラメータの設定を変更する。そして、制御部11は、複数のパラメータの設定を変更するときに、負荷率の増減に対する影響の大きいパラメータから順番に調整する。
 監視部12は、送受信部30が有する送信部31から受信部32にパケットを送信しているとき、送信部31と受信部32との間の負荷率を測定する。
 試験部13は、制御部11が設定した複数のパラメータが入力されると、入力された複数のパラメータの設定にしたがって、送受信部30で送受信するパケットを生成し、送受信部30へ出力する。より具体的には、試験部13は、制御部11の指示にしたがって、指定されたリソースを用いて、指定された数であるパケットカウント数のパケットを生成するごとに、送信部31に生成したパケットを出力し、送信部31を介して受信部32にパケットを送信する。また、試験部13は、制御部11の設定にしたがって、記憶部20の一部の領域を、送信部31の送信バッファと受信部32の受信バッファとして使用する。なお、図示しないが、試験制御部10は、動作する送受信部30が複数ある場合には、動作する送受信部30ごとに1つずつ試験部13を有する。
 記憶部20は、構成情報テーブル21、初期値テーブル22、およびデータテーブル23を備える。
 構成情報テーブル21は、図2(a)に示すように、論理CPU(Central Processing Unit)数、試験で使用可能なメモリサイズ、有効なネットワークポート数、および各ネットワークポートのMTU(Maximum Transmission Unit)を格納している。
 論理CPU数とは、情報処理装置100の有するCPUのコアの数である。なお、情報処理装置100にハイパースレッディングなどの技術が適用されており、1つのプロセッサを複数のプロセッサ、例えば2つのプロセッサであるとみなすことができる場合には、その論理的なCPU数を論理CPU数としても良い。
 試験で使用可能なメモリサイズとは、情報処理装置100が有するメモリの中で、負荷試験に割り当てられた格納領域のサイズである。
 有効なネットワークポート数とは、情報処理装置100が備えるネットワークカードが有するポートの数である。なお、ネットワークカードは、送受信部30として機能し、ネットワークカードが有するポートは、送信部31、または受信部32として機能する。
 各ネットワークポートのMTUとは、各ネットワークポートにおいて、1回の転送で送信できるデータの最大値を示す値である。なお、MTUは、ネットワーク接続ごとに送信側で値を設定することができる。
 初期値テーブル22は、図2(b)に示すように、負荷試験の際のパラメータとして、パケットカウント数、コネクション数、CPUバインド数、優先度、および動作モードの値を格納している。
 パケットカウント数は、試験部13が生成したパケットを送信バッファに蓄えて、一度のパケット送信処理で送信部31から受信部32に送信するパケット数である。すなわち、試験部13は、パケットを生成し、生成したパケットを送信バッファに蓄え、パケットカウント数のパケットを生成するごとに送信部31を介して受信部32にパケットを送信する。
 コネクション数とは、送信部31と受信部32との間の論理的なパケットの通信路の数である。なお、情報処理装置100は、コネクション数と同じ数だけの通信路にパケットを伝送するので、パケットの送受信に関するタスク(以下、送受信タスクという。)をコネクション数と同じ数だけ並行して実行することになる。
 CPUバインド数は、各ポートペアに割り当てられた論理CPUの数である。CPUバインド数は、各ポートペアが専有可能な論理CPU数以下の数であり、負荷試験の処理の必要に応じて値を増減する。
 優先度とは、ディスパッチ処理における送受信タスクの優先度である。具体的には、スケジューラで送受信タスクに実行権を割り当てる際の優先度であり、優先度の高いタスクから順に、ディスパッチ処理数に相当する処理を実行する実行権が割り当てられる。すなわち、優先度とは、送受信タスクと他の処理との実行順序を決定するパラメータである。
 動作モードとは、情報処理装置100が複数のポートを備える場合、全てのポートを同時に動作させるか、または指定されたポートのみを動作させるかを設定する。情報処理装置100は、負荷試験を行なうとき、情報処理装置100が備えるリソースが少ないために、全てのポートを同時に動作させると、ポートペアの帯域に対して大きな負荷をかけることができないときがある。このとき、動作モードにより動作させるポートを指定して、負荷試験を行なうことにより、情報処理装置100は、指定したポートに大きな負荷をかけることができる。この場合、全てのポートに対して負荷試験を行なうには、指定したポートごとに複数回の負荷試験を行なうことになる。以下の説明においては、説明の簡単化のため、動作モードについては特に記載しない。動作モードを考慮する場合には、指定したポートごとに負荷試験を行なえば良い。
 データテーブル23は、図2(c)に示すように、項目として、パケット送受信数の乖離値、パケットカウント数調整用変数、パケットカウント数用の格納領域、コネクション数値用の格納領域、CPUバインド数用の格納領域、ディスパッチ処理数の格納領域、タスク優先度用の格納領域、ディスパッチ時間の基準値、負荷率更新フラグ、リバースフラグ、レンジ変更フラグ、およびリトライフラグとを備え、それぞれのデータを格納している。
 データテーブル23は、情報処理装置100が負荷試験におけるパラメータ値の調整を行な際に得られる各データを格納する。そして、パラメータ値の調整処理では、パラメータ値の調整処理の結果に基づいて、データテーブル23に格納された各パラメータの格納領域から、パラメータ値の調整値を抽出する。そして、情報処理装置100は、負荷試験において、複数のパラメータ値の調整値を用いる。なお、各データの内容については、下記の情報処理装置100の動作において後述する。
 図3は、情報処理装置の一実施例を示すブロック図である。
 図3において、情報処理装置100は、制御回路301~304、記憶装置305、読取装置306、記録媒体307、表示装置308、入出力インターフェイス309(入出力I/F)、通信インターフェイス310~312(通信I/F)、送信装置313~315、受信装置316~318、スイッチ319、およびネットワーク320を備えている。また、各構成要素は、バス300により接続されている。
 制御回路301~304は、情報処理装置100全体の制御をする。そして、制御回路301~304は、例えば、CPU、マルチコアCPU、FPGA(Field Programmable Gate Array)およびPLD(Programmable Logic Device)などである。制御回路301~304は、図1において、試験制御部10として機能する。また、図示しないが、制御回路301~304は、レジスタなどの記憶領域を有し、送信部31および受信部32で使用する送信バッファ、および受信バッファとして機能しても良い。なお、以下の説明では、制御回路と記載したとき、制御回路301~304のいずれか一つを示すものとする。また、図3において、情報処理装置100は、制御回路を4つ有しているが、制御回路の数を1つ以上の任意の数としても良い。
 記憶装置305は、各種データを記憶する。そして、記憶装置305は、例えば、ROM(Read Only Memory)およびRAM(Random Access Memory)などのメモリや、HD(Hard Disk)などで構成される。また、ROMは、ブートプログラムなどのプログラムを記憶している。RAMは、制御回路のワークエリアとして使用される。HDは、OS(Operating System)、アプリケーションプログラム、ファームウェアなどのプログラム、および各種データを記憶している。また、情報処理装置100の記憶装置305は、図1の構成情報テーブル21、初期値テーブル22、およびデータテーブル23を記憶している。なお、構成情報テーブル21、初期値テーブル22、およびデータテーブル23は、情報処理装置100の制御回路が通信インターフェイス312を介してアクセス可能であれば、ネットワーク320上で接続されるサーバに記憶されていても良い。
 また、情報処理装置100の記憶装置305には、制御回路を試験制御部10として機能させるための負荷試験プログラムを記憶する。そして、負荷試験を開始するとき、情報処理装置100の制御回路は、記憶装置305に記憶された負荷試験プログラムをRAMに読み出す。これにより、情報処理装置100の制御回路は、RAMをワークスペースとして使用することにより、試験制御部10として機能する。なお、負荷試験プログラムは、情報処理装置100の制御回路が通信インターフェイス312を介してアクセス可能であれば、ネットワーク320上で接続されるサーバに記憶されていても良い。
 また、記憶装置305がHDである場合、HDは、HDD(Hard Disk Drive)を介してバス300に接続される。そして、HDは、HDDが制御回路によって制御され、データのリード/ライトが行なわれる。
 読取装置306は、制御回路によって制御され、着脱可能な記録媒体307のデータのリード/ライトを行なう。そして、読取装置306は、例えば、FDD(Floppy Disk Drive)、CDD(Compact Disc Drive)、DVDD(Digital Versatile Disk Drive)、BDD(Blu-ray Disk Drive:登録商標)およびUSB(Universal Serial Bus)などである。また、情報処理装置100の読取装置306は、記録媒体307に記録された負荷試験プログラムを読み出し、記憶装置305に記憶しても良い。
 記録媒体307は、各種データを保存する。一例として、記録媒体307は、負荷試験プログラムを保存する。そして、記録媒体307は、読取装置306を介してバス300に接続され、制御回路が読取装置306を制御することにより、データのリード/ライトが行なわれる。また、記録媒体307は、例えば、FD(Floppy Disk)、CD(Compact Disc)、DVD(Digital Versatile Disk)、BD(Blu-ray Disk:登録商標)、およびフラッシュメモリなどである。
 表示装置308は、入力された情報を映像として表示することにより、ユーザに通知する。表示装置308は、例えば、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)およびOELD(Organic Electroluminescence Display)などである。また、表示装置308に代えて、入力された情報をランプの点灯や、スピーカからの音声により、ユーザに通知しても良い。さらに、表示装置308をタッチパネルで構成し、入力装置としても良い。
 入出力インターフェイス309は、例えば、機械式のボタン、キーボード、マウス、タッチパネル、スキャナ、およびプリンタなどと接続され、接続された装置から各種情報を示す信号が入力される。すると、入出力インターフェイス309は、バス300を介して入力された信号を制御回路に出力する。また、入出力インターフェイス309は、制御回路から出力された各種情報を示す信号がバス300を介して入力されると、接続された各種装置にその信号を出力する。
 通信インターフェイス310~312は、電力線通信、LANケーブル、無線通信、またはインターネットなどのネットワーク320を介して、情報処理装置100と他の情報処理装置100とを通信可能に接続する。
 また、実施形態の通信インターフェイス310~312は、例えば、ネットワークカードであり、それぞれポートを有している。そして、通信インターフェイス310~312は、それぞれポートを送信側のポート(送信装置313~315)、受信側のポート(受信装置316~318)として、LANケーブルを用いて折り返し接続し、ポートペアを形成する。そして、通信インターフェイス310~312は、図1において、それぞれ送受信部30として機能する。また、送信装置313~315は、図1において、それぞれ送信部31として機能する。さらに、受信装置316~318は、図1において、それぞれ受信部32として機能する。なお、以下の説明では、通信インターフェイスと記載したとき、通信インターフェイス310~312のいずれか一つを示すものとする。また、図3において、情報処理装置100が通信インターフェイスを4つ備える場合を示したが、通信インターフェイスの数は1つ以上の任意の数で良い。また、送信装置313~315と受信装置316~318は、ネットワークカードに搭載されているポートに限定するものではない。そして、送信装置313~315と受信装置316~318それぞれの接続方法は、LANケーブルに限定するものではなく、例えば、電力線通信、や無線通信であっても良い。
 図4は、負荷試験の処理の処理内容を示すフローチャートである。
 図4は、情報処理装置100の負荷試験が開始されて、動的に負荷調整を行い、負荷試験が終了するまでの負荷試験全体の処理内容を示している。
 制御部11は、負荷試験が開始されると、図2(a)の構成情報テーブル21から、情報処理装置100が有する論理CPU数、試験で使用可能なメモリサイズ、有効なネットワークポートの数、および各ネットワークポートのMTUを取得する。さらに、制御部11は、図2(b)の初期値テーブルから、パケットカウント数、コネクション数、CPUバインド数、および優先度の初期値を取得する(S101)。
 制御部11は、ポートペアで使用する論理CPU数、送信側のポート(送信部31)で使用する送信バッファと受信側のポート(受信部32)で受信する受信バッファのサイズを設定する。さらに、制御部11は、試験部13に出力するポートペアのコネクション数、ポートペアで送受信するパケットのパケットカウント数等のパラメータをS101で取得した初期値に設定する(S102)。
 S102のリソースの割り当て、およびパラメータ設定について具体的に説明する。
 制御部11は、S101で取得した有効なネットワークポート数を2で除算し、ポートペア(送受信部30)の数を算出する。
 また、制御部11は、情報処理装置100が有する論理CPU数をポートペア数で除算することにより、1つのポートペアで専有可能な論理CPU数を算出する。すなわち、専有可能な論理CPU数とは、パラメータの設定において、CPUバインド数として設定することができる最大値である。なお、情報処理装置100が有する論理CPU数のうちの一部のみを負荷試験に割り当てる場合には、情報処理装置100は、割り当てられた論理CPU数をポートペア数で除算することにより、1つのポートペアで専有可能な論理CPU数を算出しても良い。
 さらに、制御部11は、試験で使用可能なメモリサイズを有効なネットワークポート数で除算することにより、1つのポートペアで使用可能なメモリサイズ(以下、割り当てメモリサイズという。)を算出する。なお、ポートペアに割り当てられたメモリのことを割り当てメモリという。
 そして、制御部11は、下記式(1)、(2)にS101で取得した値を代入して、送信側と受信側とで割り当てメモリサイズを分割した、送信側メモリサイズと受信側メモリサイズとを算出する。
 制御部11は、例えば、送信側と受信側との分割比率をM(送信側の比率):N(受信側の比率)にする場合は以下となる。
送信側メモリサイズ=割り当てメモリサイズ×M/(M+N)   (1)
受信側メモリサイズ=割り当てメモリサイズ×N/(M+N)   (2)
 また、制御部11は、下記式(3)にS101で取得した値を代入して、送信バッファ用の格納領域のサイズ(以下、送信バッファのサイズという。)を算出する。
送信バッファサイズ=パケットカウント数×各ポートのMTU×コネクション数 (3)
 そして、制御部11は、受信バッファ用の格納領域のサイズ(以下、受信バッファのサイズという。)を、送信バッファサイズより大きめに設定する。これは、送信側から送信されたパケットは、受信側で受信バッファに一旦蓄えられてから処理されるので、受信側で前回受信したパケットに含まれる処理が終了する前に、送信側から新たなパケットを受信したとき、オーバーフローにならないようにするためである。
 制御部11は、負荷試験開始時のCPUバインド数を次のように設定する。初期値テーブル22に格納されているCPUバインド数の初期値が0または、専有可能な論理CPU数<1ならば、各ポートペアにCPUの割り当てをしないで、1つのCPUを複数のポートペアで共有する。したがって、制御部11は、専有可能な論理CPU数<1のときCPUバインド数無しに設定する。CPUバインド数>専有可能な論理CPU数ならば、CPUバインド数は、専有可能な論理CPU数に設定する。それ以外は、初期値テーブルに格納された値を設定する。
 そして、制御部11は、試験部13にS102で設定したパラメータを出力する。すると、試験部13は、制御部11から入力されたパラメータにしたがって、パケットを生成し、送信部31を介して、受信部32にパケットを送信する。これにより、送受信部30は、パケットを送受信する(S103)。
 S103のパケットの送受信について具体的に説明する。
 まず、試験部13は、制御部11から受信したパラメータを用いて、ポートペア数にコネクション数を乗算した分の送受信タスクを実行する。そして、試験部13は、CPUバインドにより割り当てられたCPUと、割り当てメモリとを使用して、各送受信タスクを動作させ、パケットカウント数のパケットを生成するごとにパケットの送信を行う。なお、1つのポートペアで実行される送受信タスクは、双方向の送受信を行うために、更に2つの送受信タスクに分かれて動作する。この2つの送受信タスクは、例えば、AポートからBポート方向へのパケット送信を行うタスクとBポートからAポート方向へのパケット送信を行うタスクに分けられる。なお、実施形態では、説明の簡単化のため、パケットの送信は片方向のみである場合を例として説明する。
 すると、監視部12は、送受信されているパケットの数を測定し、単位時間当たりのデータの転送量である転送レートを算出する。そして、送信部31と受信部32との間の帯域で算出した転送レートを除算することにより、負荷率を算出する(S104)。なお、帯域は、送信側のポートと受信側のポートの構成やLANケーブルの形状などで決まるものであり、例えば、記憶装置305の一部の記憶領域に格納されており、制御部11を介して監視部12に通知されても良い。また、S101~S104の処理は、後述するS105、S106の処理に関連する処理であり、各パラメータの初期値を設定し、各パラメータを初期値に設定したときの負荷率を算出しているものである。したがって、S101~S104の処理は、制御部11が一つパラメータの変更を開始すると、一つパラメータの設定値を初期値に設定し、送信部を介して受信部にパケットを送信して、監視部12で負荷率を測定する処理と言える。
 制御部11は、監視部12で算出した負荷率(測定した負荷率)を参照して、負荷が最適な負荷になっているかどうかを判定する(S105)。最適な負荷であるか否かは、決められた負荷となったか否かで判定しても良い。また、最適な負荷を、情報処理装置100の能力で可能となる最大のネットワーク負荷にし、負荷調整をしてもこれ以上負荷率が上がらない状態を最適な負荷としても良い。さらに、最適な負荷として負荷率100%を設定し、負荷率が100%となったとき、最適な負荷となるパラメータが得られたと判定しても良い。
 制御部11は、S105において、負荷率からネットワークに最適な負荷がかかっていないと判定する(S105にてNo)と、負荷率の増減に対する影響の大きいパラメータから順番にパラメータを調整する。また、制御部11は、各ポートペアへ割り当てる情報処理装置100のリソースの設定を変更する(S106)。S106の処理については、図5~図11を参照して後述する。
 そして、制御部11は、負荷試験が終了したか否かを判定する(S107)。そして、制御部11は、負荷試験が終了したと判定する(S107にてYes)と、負荷の調整とリソース割り当ての設定の変更の処理を終了する。また、制御部11は、負荷試験が継続すると判定する(S107にてNo)と、S103~S107の処理を繰り返す。
 制御部11は、S105において、負荷率からネットワークに最適な負荷がかかっていると判定する(S105にてYes)と、S107の処理を実行する。
 上記のS103~S107の処理は、ポートペアごとに割り当てられた情報処理装置100のリソースを使用して、それぞれ別々に実行される。
 上記のように、情報処理装置100は、負荷率を監視して、動的にパラメータを調整するので、最適な負荷状態での負荷試験が可能となる。情報処理装置100は、自動的にパラメータを変更しながら負荷の調整をするので、数千~数万のパラメータを人手で設定して試験をするのに比べて、効率よく最適な負荷を設定することができる。
 以下では、図5~図11を参照して本発明の一実施例を説明する。
 図5は、バッファサイズの調整処理の内容を示すフローチャートである。
 図4のS105において、最適な負荷となっていない場合、S106の負荷調整・設定変更を行なう。
 すると、図5において、監視部12は、送信側で送信処理されたパケット(以下、送信処理パケットという。)数と、受信側で受信処理されたパケット(以下、受信処理パケットという。)数とをカウントする(S201)。ここで、送信処理とは、送信側でパケットを生成し、送信側のポートを介して受信側のポートにパケットを送信するまでの処理を言う。また、受信処理とは、送信パケットを受信側のポートで受信して、受信バッファにパケットを格納し、受信側の処理において、受信バッファに格納されたパケットが受信バッファから取り出されるまでの処理を言う。
 そして、制御部11は、監視部12でカウントした送信処理パケット数と、受信処理パケット数とを取得し、送信処理パケット数と受信処理パケット数とが乖離しているか否かを確認することにより、受信側の処理が遅いか否かを判定する(S202)。
 制御部11は、送信処理パケット数よりも受信処理パケット数の値が少ないとき、受信側の処理が遅いと判定(S202にてYes)する。すると、制御部11は、受信バッファに格納されているパケット数をチェックし、受信バッファの格納領域にパケットが一杯(以下、バッファフル状態という。)であると、バッファサイズを増加し、パケットカウント数を減少指定にする(S203)。パケットカウント数の減少指定とは、制御部11が次にパケットカウント数の調整(変更)を行なうとき、パケットカウント数を減少させる方向に調整を行なうように指定するフラグである。そして、制御部11は、S205~S209の処理を実行する。S205~S209の処理については、図6~図11を参照して後述する。
 なお、制御部11は、送信処理パケット数と、受信処理パケット数とが乖離しているか否かの判定において、図2(c)のデータテーブルに格納されているパケット送受信数の許容乖離値を用いて、下記式(4)が成り立つとき乖離していると判定しても良い。なお、パケット送受信数の許容乖離値とは、送信処理パケット数と受信処理パケット数との差がどの位まで乖離しても良いかを示しているパケット数を表す数値である。
送信処理パケット数-受信処理パケット数>パケット送受信数の許容乖離値   (4)
 パケット送受信数の許容乖離値は、例えば、送信側からの送信パケットの送信が途切れることを予測して、その間に受信側で処理できる受信処理パケット数の範囲内で設定すると良い。
 また、S203で、バッファフル状態のとき、受信バッファのサイズを増加するが、このとき、受信バッファのサイズを増加できる最大値は、受信側メモリサイズである。すなわち、受信バッファのサイズが受信側メモリサイズと同じときには、S203において、バッファフル状態でも受信バッファのサイズを増加できないので、パケットカウント数を減少指定にする処理のみを実行する。
 S202において、受信側の処理が遅くないと判定したとき、制御部11は、パケットカウント数を増加指定に設定する(S204)。パケットカウント数を増加指定にするとは、制御部11が次にパケットカウント数の調整を行なうとき、パケットカウント数を増加させる方向に調整を行なうように指定するフラグである。そして、制御部11は、パケットカウント調整S205~S209の処理を実行する。なお、図5に示すように、S205~S209は、各処理でパラメータの調整値を設定することで処理が終わるごとに、次の処理へ移行する。また、実行されている(今回の)S201~S209の処理が終了しても、図4のS107において、制御部11により負荷試験が終了したと判定されるまで、図4のS106の処理、すなわちS201~S209の処理は、繰り返し実行される。制御部11による負荷試験の終了の判定は、入出力インターフェイスを介して負荷試験の終了を示す指示が入力される、または最適な負荷が得られたときなどに、負荷試験を終了すると判定しても良い。
 図6、7は、パケットカウント数の調整処理の内容を示すフローチャートである。
 図6、7では、図5のS205のパケットカウント数の調整処理の内容を説明するフローチャートである。
 制御部11は、データテーブル23のパケットカウント数用の格納領域であるP1に、現在のパケットカウント数を格納する。そして、制御部11は、データテーブル23に格納されている負荷率更新フラグをオフにする(S301)。
 なお、制御部11は、負荷試験開始後の初めのパケットカウント数の調整処理では、P1に初期値テーブル22のパケットカウント数を格納することになる。2回目以降のパケットカウント数の調整処理では、前回調整したパケットカウント数をP1に格納しても良い。また、以下の説明においては、P1~P6と記載したとき、それぞれパケットカウント数用の格納領域P1~P6のことを示すことにする。
 そして、制御部11は、パケットカウント数が減少指定であるか否かを判定する(S302)。
 パケットカウント数が減少指定であるとき、制御部11は、下記式(5)にデータテーブル23に格納されているパケットカウント数調整用変数Nを代入し、新たなパケットカウント数を算出する(S303)。すなわち、制御部11がパケットカウント数を増減する値は、パケットカウント数調整用変数Nの指定によって決められるものである。パケットカウント数には、P1、またはP3の格納領域に記憶されたパケットカウント数が代入される。パケットカウント数の調整処理が始まったとき、制御部11は、式(5)にP1に格納されたパケットカウント数を代入する。
パケットカウント数×1/N=新たなパケットカウント数   (5)
 なお、パケットカウント数調整用変数Nは、負荷試験開始後の初めのパケットカウント数の調整処理のとき、1よりも大きい数の中で適宜決められた値が設定されている。2回目以降のパケットカウント数の調整処理では、データテーブル23に前回調整したNが設定されている。また、パケットカウント数調整用変数Nは、N=1となるまで2で除算されながらパケットカウント数を調整するので、偶数に設定しても良い。
 そして、制御部11は、S303で算出した新たなパケットカウント数をデータテーブル23に指定されている記憶領域であるP2に格納する。
 S302にて、パケットカウント数が減少指定でないとき(パケットカウント数が増加指定であるとき)、制御部11は、下記式(6)にパケットカウント数調整用変数Nを代入して新たなパケットカウント数を算出する(S304)。パケットカウント数には、P1、またはP3の格納領域に記憶されたパケットカウント数が代入される。パケットカウント数の調整処理が始まったとき、制御部11は、式(6)にP1に格納されたパケットカウント数を代入する。
パケットカウント数×N=新たなパケットカウント数   (6)
 そして、制御部11は、S304で算出した新たなパケットカウント数をデータテーブル23に指定されている記憶領域であるP2に格納する(S305)。
 そして、制御部11は、P2に格納した新たなパケットカウント数を試験部13に出力する。すると、試験部13は、制御部11から入力されたパケットカウント数のパケットを生成するごとに、送信側のポートに生成したパケットを出力し、送信側のポートを介して受信側のポートにパケットを送信する。これにより、制御部11は、送信側のポートを介して受信側のポートにパケットを送信し、ポートペア間でパケットを送受信させる(S306)。
 S306でパケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルを流れるパケットの数である転送レートを求める。また、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、パケットカウント数を変更したことにより、負荷率が増加したか否かを判定する(S307)。
 制御部11は、パケットカウント数を変更したことにより、負荷率が増加したと判定する(S307にてYes)と、データテーブル23に格納されている負荷率更新フラグをオンにして、このときのパケットカウント数をP3に格納する(S308)。なお、このときP3に格納されるパケットカウント数は、この時点において、パケットカウント調整処理で測定した中で、負荷率が最大となるパケットカウント数である。
 そして、制御部11は、S302の処理を実行する。その後、S303に移行すると、制御部11は、式(5)のパケットカウント数にP3に格納したパケットカウント数を代入する。また、S304に移行すると、制御部11は、式(6)のパケットカウント数にP3に格納したパケットカウント数を代入する。
 なお、負荷率更新フラグは、今回のパケットカウント数の調整処理において、既に1回以上負荷率が更新されたことを示すフラグである。そして、負荷率更新フラグは、他のパラメータの処理に用いる負荷率更新フラグと同じフラグを使っても良いし、独立して用いるフラグを記憶装置205の異なる格納領域にパラメータごとに格納しても良い。
 制御部11は、パケットカウント数を変更しても、負荷率が増加しなかったと判定すると、データテーブル23に格納されている負荷率更新フラグを参照する(S309)。
 制御部11は、負荷率更新フラグがオンのとき(S309にてYes)、S315の処理に移行する。
 制御部11は、負荷率更新フラグがオフのとき(S309にてNo)、データテーブル23に格納されている、今回のパケットカウント数の調整処理において、既に逆方向のパケットカウント数の増減を指定したか否かを示すフラグであるリバースフラグを参照する(S310)。
 そして、制御部11は、リバースフラグがオフのとき、パケットカウント数を変更しても負荷率が増加しなかったので、パケットカウント数を減少指定にしていれば増加指定へ、増加指定にしていれば減少指定へ変更する。さらに、制御部11は、パケットカウント数をP1に格納されているパケットカウント数に戻し、リバースフラグをオンにする(S311)。そして、制御部11は、S302の処理を実行する。その後、S303に移行すると、制御部11は、式(5)のパケットカウント数にP1に格納したパケットカウント数を代入する。また、S304に移行すると、制御部11は、式(6)のパケットカウント数にP1に格納したパケットカウント数を代入する。
 S310において、リバースフラグがオフのとき、制御部11は、パケットカウント数調整用変数Nの値を減らすことが可能かチェックする(S312)。具体的には、パケットカウント数調整用変数Nは、式(5)に代入したとき、パケットカウント数が減少し、式(6)に代入したとき、パケットカウント数が増加しなければならないので、N=1以上でなければならない。したがって、パケットカウント数調整用変数Nは、N≦1になると減らすことはできないと判定される。
 S312において、N≦1でないとき、制御部11は、パケットカウント数調整用変数Nの値を半分(N×1/2)にする。また、パケットカウント数の増加指定、およびパケットカウント数の減少指定をパケットカウント数の調整S205の開始時の設定に戻す。さらに、制御部11は、パケットカウント数をP1に格納された値に戻す。また、制御部11は、リバースフラグをオフにする(S313)。そして、制御部11は、S302の処理を実行する。その後、S303に移行すると、制御部11は、式(5)のパケットカウント数にP1に格納したパケットカウント数を代入する。また、S304に移行すると、制御部11は、式(6)のパケットカウント数にP1に格納したパケットカウント数を代入する。
 なお、S313において、制御部11は、パケットカウント数調整用変数Nの値を1/2の値にするとき、N<1となった場合、N=1に設定する。これにより、式(5)、(6)にパケットカウント数調整用変数Nを代入したとき、パケットカウント数の増加指定と、減少指定とが、実際の指定と異ならないようにする。また、パケットカウント数調整用変数Nを予め偶数で設定しておくことにより、N<1となる前に、N=1となるようにしても良い。
 S312において、N≦1のとき、パケットカウント数を増減しても、負荷率が増加しなかったことを示すので、制御部11は、パケットカウント数をP1に格納されている値に設定して、パケットカウント数の調整処理を終了する(S314)。
 図6のS309において、負荷率更新フラグがオンと判定したとき、制御部11は、図7のS315の処理を行なう。
 すると、制御部11は、データテーブル23を参照して、最後にパケットの送受信をしたときに設定したパケットカウント数であるP2の格納領域に格納されたパケットカウント数をP4の格納領域に格納する(S315)。さらに、制御部11は、負荷率が最大であったP3の格納領域に格納されたパケットカウント数をP5の格納領域に格納する。また、制御部11は、負荷率更新フラグをオフにする。
 S315~S323の処理では、P4に格納されたパケットカウント数とP5に格納されたパケットカウント数との間で高負荷となるパケットカウント数を求める。すなわち、S302~S314で行なった、パケットカウント数の調整処理の微調整を行なうことになる。
 制御部11は、下記式(7)にP4とP5に格納された2つのパケットカウント数を代入して、P4とP5に格納された2つのパケットカウント数の中間値を算出し、P6に新たなパケットカウント数として格納する。
P6=(P4+P5)/2:小数点は四捨五入   (7)
 なお、式(7)において、P4は、P4に格納されたパケットカウント数であり、P5は、P5に格納されたパケットカウント数であり、P6は、P6に格納される新たなパケットカウント数である。
 そして、制御部11は、P6に格納した新たなパケットカウント数を試験部13に出力することにより、S306と同様に、送信側のポートを介して受信側のポートにパケットを送信し、ポートペア間でパケットを送受信させる(S317)。
 S317でパケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルに流れるパケットの数である転送レートを求める。また、監視部12は、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、パケットカウント数を変更したことにより、負荷率が増加したか否かを判定する(S318)。具体的には、P5に格納されているパケットカウント数を設定したときに得られる負荷率(以下、P5の負荷率という。)よりも、P6に格納されているパケットカウント数を設定したときに得られる負荷率(以下、P6の負荷率という。)のほうが大きいか否かを判定する。なお、P5の負荷率は、今回のパケットカウント数の調整処理において、S318を最初に行なうとき、S308でP3に格納して負荷率である。
 そして、P6の負荷率のほうが、P5の負荷率よりも大きいとき(S318にてYes)、制御部11は、P6のパケットカウント数とP5のパケットカウント数で負荷率が低かった方をP4に格納する。また、制御部11は、P6のパケットカウント数とP5のパケットカウント数で負荷率が高かった方をP5に格納する。さらに、制御部11は、負荷率更新フラグをオンにする(S319)。そして、制御部11は、S316の処理を実行する。
 P6の負荷率が、P5の負荷率以下のとき、制御部11は、データテーブル23に格納されている負荷率更新フラグがオンか否かをチェックする(S320)。
 負荷率更新フラグがオンのとき(S320にてYes)、P5とP6のパケットカウント数の中間値を設定して、負荷率を増加する処理を行なったことを示す。このとき、制御部11は、これ以上の処理を行なわずに最高の負荷が得られたP5に格納されているパケットカウント数をパケットカウント数の調整値に設定する(S321)。そして、制御部11は、パケットカウント数の調整処理を終了する。
 なお、パケットカウント数の調整値とは、パケットカウント数(パラメータ)の調整処理において、最も高い(最も決められた負荷率に近い)負荷率が得られたパケットカウント数であり、負荷試験時に設定するパケットカウント数である。
 負荷率更新フラグがオフのとき、P5とP6のパケットカウント数の中間値を設定しても負荷率が増加しなかったので、制御部11は、P5とP6の範囲を変更してさらにパケットカウント数を調整するか否かを判定する(S322)。具体的には、制御部11は、今回のパケットカウント数の調整処理において、既にP5とP6に格納されているパケットカウント数の間の範囲を変更したか否かを示すフラグであるレンジ変更フラグを参照する。レンジ変更フラグは、初期値はオフであり、レンジを変更するとオンとなるフラグである。すなわち、レンジ変更フラグがオンの場合、後述するS322において、レンジを変更して負荷率が増加した後、S316~S320の処理を行なったが、負荷率が増加しなかったことを示している。また、レンジ変更フラグは、パケットカウント数の調整処理がおわるごとにリセットされオフになる。
 レンジ変更フラグがオフのとき(S322にてNo)、制御部11は、レンジ変更フラグをオンにする。そして、制御部11は、パケットカウント数が減少指定であれば、P3に格納されているパケットカウント数をN倍にしたパケットカウント数を算出する。また、レンジ変更フラグがオフのとき(S322にてNo)、制御部11は、パケットカウント数が増加指定であれば、P3のパケットカウント数を1/N倍(小数点は四捨五入)にしたパケットカウント数を算出する。そして、制御部11は、算出したパケットカウント数をP4の格納領域に格納する(S323)。その後、制御部11は、S316の処理を実行する。
 レンジ変更フラグがオンのとき(S322にてYes)、制御部11は、P5とP6の範囲を変更しても負荷率が増加しないと判断して、調整後のパケットカウント数をP3のパケットカウント数に設定する(S324)。そして、制御部11は、パケットカウント数の調整処理を終了する。
 以上のように、制御部11は、パケットカウント数を増減させて、負荷率が最大になるパケットカウント数をパケットカウント数の調整値として設定する。これにより、情報処理装置100は、パケットカウント数を祖調整から微調整することにより、最適な負荷率を得られるパケットカウント数を設定することができる。上記の説明においては、負荷率が最大となるパケットカウント数を見つけ出すことを一例として示したが、必要な負荷率として決められた負荷率を設定し、決められた負荷率に近づくようにパケットカウント数を調整しても良い。
 図8は、コネクション数の調整処理の内容を示すフローチャートである。
 図8は、図5のS206のコネクション数の調整処理の内容を説明するフローチャートである。
 制御部11は、データテーブル23に指定されている記憶領域であるC1に、現在のコネクション数を格納する。なお、制御部11は、負荷試験開始後の初めのコネクション数の調整処理では、C1に初期値テーブル22のコネクション数を格納することになる。2回目以降のコネクション数の調整処理では、前回調整したコネクション数をC1に格納しても良い。また、以下の説明においては、C1、C2と記載したとき、それぞれコネクション数用の格納領域C1、C2のことを示すことにする。
 そして、制御部11は、データテーブル23に格納されている負荷率更新フラグをオフにする(S401)。
 次に制御部11は、C1に格納されているコネクション数を+1した値を新たなコネクション数として設定する(S402)。
 そして、制御部11は、S402で設定した新たなコネクション数を試験部13に出力する。すると、試験部13は、制御部11から入力されたコネクション数と同じ数の、送信側のポートと受信側のポートとの間の論理的なパケットの通信路を形成し、送信側のポートを介して受信側のポートにパケットを送信する(S403)。これにより、制御部11は、送信側のポートを介して受信側のポートにパケットを送信し、ポートペア間でパケットを送受信させる。
 S403でパケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルに流れるパケットの数である転送レートを求める。また、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、コネクション数を変更したことにより、負荷率が増加したか否かを判定する(S404)。
 制御部11は、コネクション数を増加したことにより、負荷率が増加したと判定する(S404にてYes)と、データテーブル23に格納されている負荷率更新フラグをオンにして、新たなコネクション数をC2に格納する(S405)。なお、このときC2に格納されるコネクション数は、この時点において、コネクション数の調整処理で測定した中で、負荷率が最大となるコネクション数である。そして、制御部11は、S402の処理を実行する。
 なお、負荷率更新フラグは、今回のコネクション数の調整処理において、既に1回以上負荷率が更新されたことを示すフラグである。なお、負荷率更新フラグは、他のパラメータの処理に用いる負荷率更新フラグと同じフラグを使っても良いし、パラメータごとに独立して用いるフラグを記憶装置205の異なる格納領域にパラメータごとに格納しても良い。
 制御部11は、コネクション数を変更しても、負荷率が増加しなかったと判定すると、データテーブル23に格納されている負荷率更新フラグを参照する(S406)。
 制御部11は、負荷率更新フラグがオンのとき(S406にてYes)、コネクション数を増加することにより最大の負荷率が得られたと判断する。すなわち、制御部11は、コネクション数を減少しても、負荷率は増加しないと判断する。そして、制御部11は、コネクション数の調整値をC2に格納されている値に設定する(S407)。そして、制御部11は、コネクション数の調整処理を終了する。
 なお、コネクション数の調整値とは、コネクション数(パラメータ)の調整処理において、最も高い(最も決められた負荷率に近い)負荷率が得られたコネクション数であり、負荷試験時に設定するコネクション数である。
 制御部11は、負荷率更新フラグがオフのとき(S406にてNo)、コネクション数を増加しても負荷率が増加しなかったので、次はC1に格納されているコネクション数から、コネクション数を減少させて負荷率が増加するか否かを判定する処理をする。したがって、制御部11は、コネクション数をC1に格納されている値に戻す(S408)。
 以下の処理では、コネクション数を減少させることにより、負荷率が増加するか否かを判定する。
 そして、制御部11は、コネクション数が1であるか否かを判定する(S409)。コネクション数が1のとき(S409にてYes)、コネクション数をこれ以上減少することができないので、コネクション数をC1に格納されている値、すなわちコネクション数を1に設定する(S410)。そして、制御部11は、コネクション数の調整処理を終了する。
 コネクション数が1ではないとき、コネクション数は2以上であるので、制御部11はコネクション数を-1した値を新たなコネクション数として設定する(S411)。
 そして、制御部11は、S411で設定した新たなコネクション数を試験部13に出力することにより、S403と同様に、送信側のポートを介して受信側のポートにパケットを送信し、ポートペア間でパケットを送受信させる(S412)。
 S412でパケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルに流れるパケットの数である転送レートを求める。また、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、コネクション数を変更したことにより、負荷率が増加したか否かを判定する(S413)。
 制御部11は、コネクション数を減少したことにより、負荷率が増加したと判定する(S413にてYes)と、データテーブル23に格納されている負荷率更新フラグをオンにして、新たなコネクション数をC2の格納領域に格納する(S414)。
 そして、制御部11は、S414でC2に格納したコネクション数が1であるか否かを判定する(S415)。制御部11は、S414でC2に格納したコネクション数が1ではないとき(S415にてNo)、さらにコネクション数を減少することにより、負荷率が増加するか否かを判定するため、S411の処理を実行する。
 コネクション数が1のとき(S415にてYes)、制御部11は、これ以上コネクション数を減少することができないので、C2に格納されているコネクション数をコネクション数の調整値として設定する(S416)。そして、制御部11は、コネクション数の調整処理を終了する。
 S413において、制御部11は、コネクション数を変更したことにより、負荷率が増加しなかったと判定する(S413にてNo)と、負荷率更新フラグがオンか否かを判定する(S417)。
 制御部11は、負荷率更新フラグがオンのとき(S417にてYes)、コネクション数を増加してもこれ以上の負荷率の増加はないと判断し、S416の処理を実行する。そして、制御部11は、コネクション数の調整処理を終了する。
 制御部11は、負荷率更新フラグがオフのとき(S417にてNo)、コネクション数を増減しても負荷率の増加がなかったので、C1に格納されているコネクション数をコネクション数の調整値として設定する(S418)。そして、制御部11は、コネクション数の調整処理を終了する。
 以上のように、制御部11は、コネクション数を増減させて、負荷率が最大になるコネクション数を調整後のコネクション数として設定する。これにより、情報処理装置100は、最適な負荷率を得られるコネクション数を設定することができる。上記の説明においては、負荷率が最大となるコネクション数を見つけ出すことを一例として示したが、必要な負荷率として決められた負荷率を設定し、決められた負荷率に近づくようにコネクション数を調整しても良い。
 図9は、CPUバインド数の調整処理の内容を示すフローチャートである。
 図9は、図5のS207のCPUバインド数の調整処理の内容を説明するフローチャートである。
 制御部11は、データテーブル23に指定されている記憶領域であるB1に、現在のCPUバインド数を格納する。なお、制御部11は、負荷試験開始後の初めのCPUバインド数の調整処理では、B1に初期値テーブル22のCPUバインド数を格納することになる。2回目以降のCPUバインド数の調整処理では、前回調整したCPUバインド数をB1に格納しても良い。また、以下の説明においては、B1、B2と記載したとき、それぞれCPUバインド数用の格納領域B1、B2のことを示すことにする。
 そして、制御部11は、データテーブル23に格納されている負荷率更新フラグをオフにする(S501)。
 そして、制御部11は、CPUバインド数が1であるか否かを判定する(S502)。制御部11は、CPUバインド数が1ではないとき(S502にてNo)、バインドされているCPUの使用率が高いか否かを判定する(S503)。制御部11は、例えば、CPU使用率が90%(適宜指定した閾値)を超えているかをチェックする。
 S502において、CPUバインド数が1のとき(S502にてYes)、およびS503において、CPUの使用率が高いと判定したとき、制御部11は、CPUバインド数を増加指定に設定する(S504)。制御部11がCPUバインド数を増加指定とするのは、CPUの使用率が高く、送受信タスクに対するCPUの割り当て時間が不足し、パケットの生成、およびパケットの送信処理の実行が遅くなり、転送レートが低下しているか否かを調べるためである。すなわち、制御部11は、CPUバインド数を増加してCPUの使用率を下げることにより、送受信タスクに対して十分なCPUの割り当て時間を確保し、ネットワーク負荷が増加するか否かを調べる。これにより、制御部11は、CPUバインド数を増加したとき、ネットワーク負荷が増加すると、送受信タスクに対するCPUの割り当て時間が少ないのでCPUバインド数を増加した値を調整値として設定した方が良いと判定することできる。なお、CPUバインド数の調整値とは、CPUバインド数(パラメータ)の調整処理において、最も高い(最も決められた負荷率に近い)負荷率が得られたCPUバインド数であり、負荷試験時に設定するCPUバインド数である。
 制御部11は、CPUの使用率が高くないと判定したとき、CPUバインド数を少なくするため、CPUバインド数を減少指定に設定する(S505)。制御部11がCPUバインド数を減少指定とするのは、CPUの使用率が低く、送受信タスクに対するCPUの割り当てが十分にできていると考えられるが、それでもネットワーク負荷率は、バインドするCPUを少なくした方が高くなることもある。したがって、制御部11は、CPUバインド数を動的に調整するためCPUバインド数を減少指定とし、CPUバインド数を減らしてネットワーク負荷が増加するか否かを調べるためである。なお、CPUの使用率が高くないとは、例えば、CPU使用率が90%(適宜指定した閾値)以下のことを言う。
 制御部11は、CPUバインド数が減少指定に設定されているか否かをチェックする(S506)。
 S506において、制御部11は、CPUバインド数が増加指定に設定されているとき(S506にてNo)、CPUバインド数が専有可能な論理CPU数以下であればCPUバインド数を+1する。また、S506において、制御部11は、CPUバインド数が増加指定に設定されているとき、専有可能な論理CPU数を超えていたらCPUバインドを無効にする(S507)。これにより、制御部11は、S507で設定した値を新たなCPUバインド数として設定する。なお、CPUバインドを無効にするとは、情報処理装置100が有するCPUを複数のポートペアで共用して使用することを言う。そして、CPUバインドを無効にしたときは、例えば、CPUバインド数を0としても良い。
 S506において、CPUバインド数が減少指定に設定されているとき(S506にてYes)、制御部11は、CPUバインド数が専有可能な論理CPU数以下であればCPUバインド数を-1して新たなCPUバインド数として設定する(S508)。ただし、CPUバインド数=1のときは、CPUバインド数1を維持する。
 そして、制御部11は、S507、およびS508で設定した新たなCPUバインド数を試験部13に出力する。すると、試験部13は、制御部11から入力されたCPUバインド数の論理CPUを用いてパケットを生成し、送信側のポートから受信側のポートにパケットを送信させる(S509)。これにより、制御部11は、送信側のポートを介して受信側のポートにパケットを送信し、ポートペア間でパケットを送受信させる。なお、S509みおいて、新たなCPUバインド数が0(CPUバインド無効)のとき、情報処理装置100が有するCPUを複数のポートペアで共用して使用しても良い。
 S509でパケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルを流れるパケットの数である転送レートを求める。また、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、CPUバインド数を変更したことにより、負荷率が増加したか否かを判定する(S510)。
 制御部11は、CPUバインド数を変更したことにより、負荷率が増加したと判定する(S510にてYes)と、データテーブル23に格納されている負荷率更新フラグをオンにして、新たなCPUバインド数をB2の格納領域に格納する(S511)。なお、このときB2に格納されるCPUバインド数は、この時点において、CPUバインド数の調整処理で測定した中で、負荷率が最大となるCPUバインド数である。そして、制御部11は、S506の処理を実行する。
 なお、負荷率更新フラグは、今回のCPUバインド数の調整処理において、既に1回以上負荷率が更新されたことを示すフラグである。そして、負荷率更新フラグは、他のパラメータの処理に用いる負荷率更新フラグと同じフラグを使っても良いし、独立して用いるフラグを記憶装置205の異なる格納領域にパラメータごとに格納しても良い。
 制御部11は、CPUバインド数を変更しても、負荷率が増加しなかったと判定すると、データテーブル23に格納されている負荷率更新フラグを参照する(S512)。
 S512において、制御部11は、負荷率更新フラグがオンのとき(S512にてYes)、これ以上CPUバインド数を調整しても負荷率が増加することはないと判定し、CPUバインド数の調整値をB2に格納されている値に設定する(S513)。そして、制御部11は、CPUバインド数の調整処理を終了する。
 S512において、制御部11は、負荷率更新フラグがオフのとき(S512にてNo)、データテーブル23に格納されているリトライフラグがオンか否かを判定する(S514)。リトライフラグとは、今回のCPUバインド数の調整処理において、既にCPUバインド数を増加、または減少させたか否かを示すフラグであり、オンであるとき、既にCPUバインド数を増加、または減少させたが、負荷率が増加しなかったことを示す。
 S514において、リトライフラグがオンのとき(S514にてYes)、制御部11は、CPUバインド数の調整値をB1に格納されている値にする(S515)。
 S514において、リトライフラグがオフのとき(S514にてNo)、制御部11は、リトライフラグをオンにして、CPUバインド数をB1に格納されているCPUバインド数に戻す。さらに、制御部11は、現在のCPUバインド数の指定が増加指定ならば減少指定、現在のCPUバインド数の指定が減少指定ならば増加指定にCPUバインド数の増減の指定を設定する(S516)。そして、制御部11は、S506の処理を実行する。
 以上のように、制御部11は、CPUバインド数を増減させて、負荷率が最大になるCPUバインド数を調整後のCPUバインド数として設定する。これにより、情報処理装置100は、最適な負荷を得られるCPUバインド数を設定することができる。上記の説明においては、負荷率が最大となるCPUバインド数を見つけ出すことを一例として示したが、必要な負荷率として決められた負荷率を設定し、決められた負荷率に近づくようにCPUバインド数を調整しても良い。
 図10は、ディスパッチ処理数の調整処理の内容を示すフローチャートである。
 図10では、図5のS208のディスパッチ処理数の調整処理の内容を説明するフローチャートである。
 制御部11は、ポートペア間でパケットを送受信するための送受信タスクをディスパッチして、送受信タスクへのCPUの割り当てが解除されてから、送受信タスクへCPUの割当が戻ってくるまでの時間(以下、ディスパッチ時間という。)を測定する(S601)。
 そして、制御部11は、データテーブル23に格納されているディスパッチ時間の基準値を参照し、S601で測定したディスパッチ時間と比較する(S602)。
 S602において、ディスパッチ時間の基準値よりもディスパッチ時間が長いとき、制御部11は、ディスパッチ時間が長いと判定し、ディスパッチ処理数を増やして新たなディスパッチ処理数を設定する(S603)。ここで、ディスパッチ処理数を増やすとは、送受信タスクを実行するために論理CPUを割り当てたときに、一回当たりに実行する送受信タスクの処理数を多くすることを言う。これにより、送受信タスクは、ポートペアに割り当てられている論理CPUをより長い時間専有することになる。なお、増加させるディスパッチ処理数は、適宜決められた処理数を記憶装置305に記憶しておき、S603において制御部11が記憶装置305を参照することにより用いても良い。
 S602において、ディスパッチ時間の基準値よりもディスパッチ時間が短いとき、制御部11は、ディスパッチ時間が短いと判定し、ディスパッチ処理数を減らして新たなディスパッチ処理数を設定する(S604)。ここで、ディスパッチ処理数を減らすとは、送受信タスクを実行するために論理CPUを割り当てたときに、一回当たりに実行する送受信タスクの処理数を少なくすることを言う。これにより、送受信タスクは、ポートペアに割り当てられている論理CPUをより短い数を記憶装置305に記憶しておき、S603において制御部11が記憶装置305を参照することにより用いても良い。
 そして、制御部11は、S603、およびS604で設定した新たなディスパッチ処理数を試験部13に出力する。すると、試験部13は、制御部11から入力されたディスパッチ処理数だけ、論理CPUが割り当てられるごとにタスクを実行し、送信側のポートから受信側のポートにパケットを送信させる。これにより、制御部11は、送信側のポートを介して受信側のポートにパケットを送信し、ポートペア間でパケットを送受信させる。
 パケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルを流れるパケットの数である転送レートを求める。また、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、ディスパッチ処理数を変更したことにより、負荷率が増加したか否かを判定する(S605)。
 制御部11は、ディスパッチ処理数を変更したことにより、負荷率が増加したと判定する(S605にてYes)と、新たに設定したディスパッチ処理数をディスパッチ処理数の調整値として設定する。また、制御部11は、ディスパッチ処理数の格納領域D1にディスパッチ処理数の調整値を格納する。そして、制御部11は、ディスパッチ処理数の調整処理を終了する。
 制御部11は、ディスパッチ処理数を変更しても、負荷率が増加しなかったと判定する(S605にてNo)と、ディスパッチ処理数を元に戻す(S606)。
 そして、制御部11は、ディスパッチ処理数を再調整する。今回のディスパッチ処理数の調整処理において、ディスパッチ処理数を減らしたとき、制御部11は、ディスパッチ処理数を増やして新たなディスパッチ処理数を設定する。また、今回のディスパッチ処理数の調整処理において、ディスパッチ処理数を増やしたとき、制御部11は、ディスパッチ処理数を減らして新たなディスパッチ処理数を設定する(S607)。
 S605の処理と同様に、制御部11は、ディスパッチ処理数を増減したことにより負荷率が増加したか否かを判定する(S608)。
 制御部11は、ディスパッチ処理数を変更したことにより、負荷率が増加したと判定する(S608にてYes)と、新たに設定したディスパッチ処理数をディスパッチ処理数の調整値として設定する。
 制御部11は、ディスパッチ処理数を変更しても、負荷率が増加しなかったと判定する(S608にてNo)と、ディスパッチ処理数を元に戻し、初期のディスパッチ処理数をディスパッチ処理数の調整値として設定する(S609)。また、制御部11は、ディスパッチ処理数の格納領域D1にディスパッチ処理数の調整値を格納する。そして、制御部11は、ディスパッチ処理数の調整処理を終了する。
 なお、上記の説明において、初期のディスパッチ処理数は、初期値テーブル22に格納されていても良い。この場合には、S601において、制御部11が初期値テーブルからディスパッチ処理数を抽出することにより、送受信タスクのディスパッチを行なう。
 また、上記の説明において、S603~S605、およびS607~S608の処理は、負荷率が増加する限り繰り返しても良い。
 以上のように、制御部11は、ディスパッチ処理数を増減させて、負荷率が最大になるディスパッチ処理数を調整後のディスパッチ処理数として設定する。これにより、情報処理装置100は、最適な負荷を得られるディスパッチ処理数を設定することができる。上記の説明においては、負荷率が最大となるディスパッチ処理数を見つけ出すことを一例として示したが、必要な負荷率として決められた負荷率を設定し、決められた負荷率に近づくようにディスパッチ処理数を調整しても良い。
 図10は、ディスパッチ処理数の調整処理の内容を示すフローチャートである。
 図10は、図5のS208のディスパッチ処理数の調整処理の内容を説明するフローチャートである。以下の説明では、説明の簡単化のため、送受信タスクが1つ実行されている場合について説明する。
 制御部11は、送受信タスクをディスパッチして、CPUの割り当てが戻ってくるまでの時間(以下、ディスパッチ時間という。)を測定する(S601)。
 そして、制御部11は、データテーブル23に格納されているディスパッチ時間の基準値を参照し、S601で測定したディスパッチ時間と比較する(S602)。
 S602において、ディスパッチ時間の基準値よりもディスパッチ時間が長いとき(S602にてYes)、制御部11は、ディスパッチ時間が長いと判定し、ディスパッチ処理数を増やした新たなディスパッチ処理数を設定する(S603)。
 ここで、ディスパッチ処理数を増やすとは、送受信タスクを実行するために論理CPUを割り当てたときに、一回当たりに実行する送受信タスクの処理数を多くすることを言う。これにより、送受信タスクは、ポートペアに割り当てられている論理CPUをより長い時間専有することになる。なお、増加させるディスパッチ処理数は、適宜決められた処理数を記憶装置305に記憶しておき、S603において制御部11が記憶装置305を参照することにより用いても良い。
 S602において、ディスパッチ時間の基準値よりもディスパッチ時間が短いとき(S602にてNo)、制御部11は、ディスパッチ時間が短いと判定し、ディスパッチ処理数を減らして新たなディスパッチ処理数を設定する(S604)。ここで、ディスパッチ処理数を減らすとは、送受信タスクを実行するために論理CPUを割当てたときに、一回当たりに実行する送受信タスクの処理数を多くすることを言う。これにより、送受信タスクは、ポートペアに割当てられている論理CPUをより短い時間専有することになる。なお、減少させるディスパッチ処理数は、適宜決められた処理数を記憶装置305に記憶しておき、S603において制御部11が記憶装置305を参照することにより用いても良い。
 そして、制御部11は、S603、およびS604で設定した新たなディスパッチ処理数を試験部13に出力する。すると、試験部13は、制御部11から入力されたディスパッチ処理数だけ、論理CPUが割当てられるごとにタスクを実行し、送信側のポートから受信側のポートにパケットを送信させる。これにより、制御部11は、送信側のポートを介して受信側のポートにパケットを送信し、ポートペア間でパケットを送受信させる。
 パケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルを流れるパケットの数である転送レートを求める。また、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、ディスパッチ処理数を変更したことにより、負荷率が増加したか否かを判定する(S605)。
 制御部11は、ディスパッチ処理数を変更したことにより、負荷率が増加したと判定する(S605にてYes)と、データテーブル23のディスパッチ処理数の格納領域D1に新たに設定したディスパッチ処理数を格納する。そして、制御部11は、新たに設定したディスパッチ処理数をディスパッチ処理数の調整値として設定する。
 制御部11は、ディスパッチ処理数を変更しても、負荷率が増加しなかったと判定する(S605にてNo)と、ディスパッチ処理数を初期値に戻す(S606)。なお、ディスパッチ処理数の初期値とは、S601の処理を行なったときに設定されているディスパッチ処理数のことである。
 そして、制御部11は、ディスパッチ処理数を再調整する。今回のディスパッチ処理数の調整処理において、ディスパッチ処理数を減らしたとき、制御部11は、ディスパッチ処理数を増やして新たなディスパッチ処理数を設定する。また、今回のディスパッチ処理数の調整処理において、ディスパッチ処理数を増やしたとき、制御部11は、ディスパッチ処理数を減らして新たなディスパッチ処理数を設定する(S607)。
 S605の処理と同様に、制御部11は、ディスパッチ処理数を増減したことにより負荷率が増加したか否かを判定する(S608)。
 制御部11は、ディスパッチ処理数を変更したことにより、負荷率が増加したと判定する(S608にてYes)と、データテーブル23のディスパッチ処理数の格納領域D1に新たに設定したディスパッチ処理数を格納する。そして、制御部11は、新たに設定したディスパッチ処理数をディスパッチ処理数の調整値として設定する。
 制御部11は、ディスパッチ処理数を変更しても、負荷率が増加しなかったと判定する(S608にてNo)と、ディスパッチ処理数を初期値に戻し、データテーブル23のディスパッチ処理数の格納領域D1に初期値のディスパッチ処理数を格納する。そして、制御部11は、初期のディスパッチ処理数をディスパッチ処理数の調整値として設定する(S609)。
 なお、上記の説明において、初期のディスパッチ処理数は、初期値テーブル22に格納されていても良い。この場合には、S601において、制御部11が初期値テーブルからディスパッチ処理数を抽出することにより、送受信タスクのディスパッチを行なう。
 また、上記の説明において、S603~S605、およびS607~S608の処理は、負荷率が増加する限り繰り返しても良い。
 なお、S603、S604、およびS607のディスパッチ処理数の増減処理において、コネクション数が複数ある場合は、全ての送受信タスクのディスパッチ処理数を同時に増減しても良い。また、図10のS601~S609のディスパッチ処理数の調整処理は、コネクション数が複数ある場合、送受信タスクごとに順番に実行されても良い。
 以上のように、制御部11は、ディスパッチ処理数を増減させて、負荷率が最大になるディスパッチ処理数を調整後のディスパッチ処理数として設定する。これにより、情報処理装置100は、最適な負荷率を得られるディスパッチ処理数を設定することができる。上記の説明においては、負荷率が最大となるディスパッチ処理数を見つけ出すことを一例として示したが、必要な負荷率として決められた負荷率を設定し、決められた負荷率に近づくようにディスパッチ処理数を調整しても良い。
 図11は、優先度の調整処理の内容を示すフローチャートである。
 図11は、は、図5のS209のタスクの優先度の調整処理の内容を説明するフローチャートである。
 制御部11は、データテーブル23に指定されている記憶領域であるU1に、現在の優先度を格納する。なお、制御部11は、負荷試験開始後の初めの優先度の調整処理では、U1に初期値テーブル22の優先度を格納することになる。2回目以降の優先度の調整処理では、前回調整した優先度をU1に格納しても良い。
 そして、制御部11は、データテーブル23に格納されている負荷率更新フラグをオフにする(S701)。
 次に制御部11は、U1に格納されている優先度を一段階上げた値を新たな優先度として設定する(S702)。また、以下の説明においては、U1、U2と記載したとき、それぞれタスク優先度用の格納領域U1、U2のことを示すことにする。
 そして、制御部11は、S702で設定した新たな優先度が高いほど、他の処理に優先して、試験部13で実行されている送受信タスクに論理CPUの使用時間を割当てる。
 なお、優先度とは、複数のタスクが順番にポートペアに割当てられた論理CPUを使用して実行されているとき、優先度が高いタスクから順番に論理CPUの使用権限が割り当てられるようにするパラメータである。したがって、優先度が高いタスクほど、他のタスクに優先して論理CPUを使用することができ、処理を優先的に進行することができる。
 パケットの送受信が開始されると、監視部12は、送受信されている送信パケットと受信パケットとの数を測定し、単位時間当たりにLANケーブルを流れるパケットの数である転送レートを求める。また、ポートペアが有する帯域で転送レートを除算することにより、負荷率を算出する。そして、制御部11は、監視部12で算出された負荷率を取得し、優先度を変更したことにより、負荷率が増加したか否かを判定する(S703)。
 制御部11は、優先度を変更したことにより、負荷率が増加したと判定する(S703にてYes)と、データテーブル23に格納されている負荷率更新フラグをオンにして、新たな優先度をU2の格納領域に格納する(S704)。なお、このときU2に格納される優先度は、この時点において、優先度調整処理で測定した中で、負荷率が最大となる優先度である。そして、制御部11は、S702の処理を実行する。
 なお、負荷率更新フラグは、今回の優先度の調整処理において、既に1回以上負荷率が更新されたことを示すフラグである。なお、負荷率更新フラグは、他のパラメータの処理に用いる負荷率更新フラグと同じフラグを使っても良いし、独立して用いるフラグを記憶装置205の異なる格納領域にパラメータごとに格納しても良い。
 制御部11は、優先度を変更しても、負荷率が増加しなかったと判定すると、データテーブル23に格納されている負荷率更新フラグを参照する(S705)。
 制御部11は、負荷率更新フラグがオンのとき(S705にてYes)、最も負荷率が高くなる優先度がU2に格納されている状態なので、優先度の調整値をU2に格納されている優先度に設定する(S706)。そして、制御部11は、タスクの優先度の調整処理を終了する。
 制御部11は、負荷率更新フラグがオフのとき(S705にてNo)、優先度の調整値をU1に格納されている優先度に戻す(S707)。
 以下の処理では、優先度を減少させることにより、負荷が増加するか否かを判定する。
 そして、制御部11は、優先度が減少可能であるか否かを判定する(S708)。具体的には、現在設定されている優先度に最も低い優先度が設定されているか否かを判定し、最も低い優先度が設定されているとき、優先度を減少できないと判定する。図2(b)の初期値テーブル22に格納されている値を例とすると、優先度1である。
 現在設定されている優先度が最も低い優先度のとき(S708にてNo)、優先度を減少することができないので、優先度の調整値をU1に格納されている優先度、すなわち優先度を1に設定する(S709)。そして、制御部11は、タスクの優先度の調整処理を終了する。
 優先度が1ではないとき、優先度は2以上であるので、制御部11は優先度を一段階下げた値を新たな優先度として設定する(S710)。
 S705の処理と同様に、制御部11は、ディスパッチ処理数を増減したことにより負荷率が増加したか否かを判定する(S711)。
 制御部11は、優先度を下げたことにより、負荷率が増加したと判定する(S711にてYes)と、データテーブル23に格納されている負荷率更新フラグをオンにして、新たな優先度をU2の格納領域に格納する(S712)。
 そして、制御部11は、S712でU2に格納した優先度が1であるか否かを判定する(S713)。制御部11は、S713でU2に格納した優先度が1ではないとき(S713にてNo)、優先度がさらに減少可能であると判定し、S710の処理を実行する。
 優先度が1のとき(S713にてYes)、優先度をさらに減少することができないので、優先度の調整値をU2に格納されている優先度、すなわち優先度を1に設定する(S715)。そして、制御部11は、タスクの優先度の調整処理を終了する。
 S711において、制御部11は、優先度を変更したことにより、負荷率が増加しなかったと判定する(S711にてNo)と、負荷率更新フラグがオンか否かを判定する(S714)。
 負荷率更新フラグがオンのとき(S714にてYes)、制御部11は、優先度を増減してもこれ以上の負荷率の増加はないと判定し、S715の処理を実行する。そして、制御部11は、タスクの優先度の調整処理を終了する。
 負荷率更新フラグがオフのとき(S714にてNo)、制御部11は、優先度を増減しても負荷率の増加がなかったと判定し、U1に格納されている値を優先度の調整値として設定する(S716)。そして、制御部11は、タスクの優先度の調整処理を終了する。
 以上のように、制御部11は、優先度を増減させて、負荷率が最大になる優先度を調整後の優先度(優先度の調整値)として設定する。これにより、情報処理装置100は、最適な負荷率を得られる優先度を設定することができる。上記の説明においては、負荷率が最大となる優先度を見つけ出すことを一例として示したが、必要な負荷率として決められた負荷率を設定し、決められた負荷率に近づくように優先度を調整しても良い。
 また、実施形態の情報処理装置100は、監視部で測定した負荷率が決められた負荷率に近づくように、設定を変更すると負荷率が変動する複数のパラメータを、負荷率の増減に対する影響の大きいパラメータから順番に調整する。これにより、情報処理装置100は、負荷試験におけるパラメータを、負荷率を祖調整から微調整することにより効率よく設定することができる。
  10 試験制御部
  11 制御部
  12 監視部
  13 試験部
  20 記憶部
  21 構成情報テーブル
  22 初期値テーブル
  23 データテーブル
  30 送受信部
  31 送信部
  32 受信部
 100 情報処理装置
 205 記憶装置
 300 バス
 301~304 制御回路
 305 記憶装置
 306 読取装置
 307 記録媒体
 308 表示装置
 309 入出力インターフェイス
 310~312 通信インターフェイス
 313~315 送信装置
 316~318 受信装置
 319 スイッチ
 320 ネットワーク
 330 制御回路
 340 通信インターフェイス

Claims (12)

  1.  パケットを送信する送信部と、
     前記パケットを受信する受信部と、
     前記送信部から前記受信部に前記パケットを送信しているとき、前記送信部と前記受信部との間の帯域の使用率である負荷率を測定する監視部と、
     前記監視部で測定した負荷率が決められた負荷率に近づくように、設定を変更すると前記負荷率を変動させる複数のパラメータを、前記負荷率の増減に対する影響の大きいパラメータから順番に調整する制御部と、
     を備えることを特徴とする情報処理装置。
  2.  前記制御部は、
     前記パラメータの調整をするとき、前記複数のパラメータの中の一つのパラメータを変更し、
     前記一つのパラメータの変更後に、前記送信部を介して前記受信部に前記パケットを送信して、前記監視部で測定された第1の負荷率を取得し、
     前記第1の負荷率の測定の前に、前記送信部を介して前記受信部に前記パケットを送信したとき、前記監視部で測定された第2の負荷率よりも、前記第1の負荷率が決められた負荷率に近づいたか否かを判定し、
     前記第1の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第2の負荷率よりも前記第1の負荷率が決められた負荷率に近づいたことを示すとき、さらに前記一つのパラメータを変更し、
     前記第1の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第2の負荷率よりも前記第1の負荷率が決められた負荷率に離れたことを示すとき、または前記第1の負荷率が前記第2の負荷率と等しいことを示すとき、前記第2の負荷率を測定したときの設定値を前記一つのパラメータに対する調整値として設定し、前記一つのパラメータの次に前記負荷率の増減に対する影響が大きい一つのパラメータの変更を開始する
     ことを特徴とする請求項1に記載の情報処理装置。
  3.  前記各複数のパラメータの初期値を格納する初期値テーブルを記憶する記憶部を備え、
     前記複数のパラメータは、
     設定値を変更すると、前記負荷率を変動させるパラメータであり、
     前記制御部は、
     前記一つのパラメータの変更を開始すると、前記一つのパラメータの設定値を前記初期値に設定し、前記送信部を介して前記受信部に前記パケットを送信して、前記監視部で測定された第3の負荷率を取得し、
     前記第3の負荷率を取得した後に、前記設定値を増加し、前記送信部を介して前記受信部に前記パケットを送信して、前記監視部で測定された第4の負荷率を取得し、
     前記第3の負荷率よりも、前記第4の負荷率が決められた負荷率に近づいたか否かを判定し、
     前記第4の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第3の負荷率よりも前記第4の負荷率の方が決められた負荷率に近づいたことを示すとき、さらに前記一つのパラメータの設定値を増加して前記第1の負荷率を取得し、
     前記第4の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第3の負荷率よりも前記第4の負荷率の方が決められた負荷率から離れた、または、前記第4の負荷率が前記第3の負荷率と同じことを示すとき、前記一つのパラメータの設定値を前記初期値から減少させて前記第1の負荷率を取得する
     ことを特徴とする請求項2に記載の情報処理装置。
  4.  前記各複数のパラメータの初期値を格納する初期値テーブルを記憶する記憶部を備え、
     前記複数のパラメータは、
     設定値を変更すると、前記負荷率を変動させるパラメータであり、
     前記制御部は、
     前記一つのパラメータの変更を開始すると、前記一つのパラメータの設定値を前記初期値に設定し、前記送信部を介して前記受信部に前記パケットを送信して、前記監視部で測定された第3の負荷率を取得し、
     前記第3の負荷率を測定した後に、前記一つのパラメータの設定値を前記初期値から減少し、前記送信部を介して前記受信部に前記パケットを送信して、前記監視部で測定された第4の負荷率を取得し、
     前記第3の負荷率よりも、前記第4の負荷率が決められた負荷率に近づいたか否かを判定し、
     前記第4の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第3の負荷率よりも前記第4の負荷率の方が決められた負荷率に近づいたことを示すとき、さらに前記一つのパラメータの設定値を減少して前記第1の負荷率を取得し、
     前記第4の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第3の負荷率よりも前記第4の負荷率の方が決められた負荷率から離れた、または、前記第4の負荷率が前記第3の負荷率と同じことを示すとき、前記一つのパラメータの設定値を前記初期値から増加させて前記第1の負荷率を取得する
     ことを特徴とする請求項2に記載の情報処理装置。
  5.  前記制御部は、
     前記一つのパラメータの設定値を前記初期値から増減させて前記第1の負荷率を取得したとき、前記初期値を前記第2の負荷率として、該第2の負荷率よりも、前記第1の負荷率が決められた負荷率に近づいたか否かを判定する処理を行なう
     ことを特徴とする請求項3または4に記載の情報処理装置。
  6.  前記制御部は、
     前記一つのパラメータの設定値を増加して前記第1の負荷率を取得したあと、次の第1の負荷率を取得するとき、前記第1の負荷率を前記第2の負荷率とし、前記一つのパラメータの設定値を増加して前記次の第1の負荷率を取得し、
     前記一つのパラメータの設定値を減少して前記第1の負荷率を取得したあと、次の第1の負荷率を取得するとき、前記第1の負荷率を前記第2の負荷率とし、前記一つのパラメータの設定値を減少して前記次の第1の負荷率とする
     ことを特徴とする請求項3~5のいずれか一つに記載の情報処理装置。
  7.  前記制御部は、
     前記一つのパラメータの次に前記負荷率の増減に対する影響が大きい一つのパラメータの変更を開始するとき、前記複数のパラメータの全ての調整値が設定されている場合、前記複数のパラメータを調整する制御を終了する
     ことを特徴とする請求項2~6のいずれか一つに記載の情報処理装置。
  8.  前記制御部の指示にしたがって、前記制御部から指定された数であるパケットカウント数のパケットを生成するごとに、前記送信部に前記生成したパケットを出力し、前記送信部から前記受信部に前記生成したパケットを送信させる試験部を備え、
     前記複数のパラメータの一つは、前記パケットカウント数であり、
     前記制御部は、前記パケットカウント数の調整をするとき、
     前記パケットカウント数を前記初期値に設定し、前記監視部で第3の負荷率を取得し、
     前記第3の負荷率を測定したあと、前記パケットカウント数を初期値から決められた数だけ増減し、前記監視部で測定された第4の負荷率を取得し、
     前記第3の負荷率よりも、前記第4の負荷率が決められた負荷率に近づいたか否かを判定し、
     前記第4の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記パケットカウント数を初期値から決められた数だけ増加、および減少したとき、前記第3の負荷率よりも前記第4の負荷率の方が決められた負荷率から離れる、または前記第3の負荷率と前記第4の負荷率とが同じことを示すとき、前記パケットカウント数を増減する決められた数を小さくして、前記第4の負荷率を取得する処理と、前記第3の負荷率よりも前記第4の負荷率が決められた負荷率に近づいたか否かを判定する処理を行い、
     前記パケットカウント数を増減する決められた数を変更しても、前記第4の負荷率が前記第3の負荷率と同じことを示すとき、前記パケットカウント数の初期値を前記パケットカウント数の調整値として保存する
     ことを特徴とする請求項3~7のいずれか一つに記載の情報処理装置。
  9.  前記制御部は、
     前記第1の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第2の負荷率よりも前記第1の負荷率が決められた負荷率から離れる、または前記第1の負荷率が前記第2の負荷率と等しいことを示すとき、
     前記第1の負荷率を取得したときに設定した第1のパケットカウント数と、前記第2の負荷率を取得したときに設定した第2のパケットカウント数との中間値を第5のパケットカウント数に設定し、前記送信部を介して前記受信部に前記パケットを送信して、前記監視部で測定された第5の負荷率を取得し、
     前記第5の負荷率を取得すると、前記第5の負荷率が前記第2の負荷率よりも決められた負荷率に近づいたか否かを判定し、
     前記第5の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第2の負荷率よりも前記第5の負荷率の方が決められた負荷率に近づいたことを示すとき、前記第5の負荷率を次の第2の負荷率とし、前記第2の負荷率を次の第1の負荷率として、前記第5の負荷率を取得する処理と、前記第5の負荷率が前記第2の負荷率よりも決められた負荷率に近づいたか否かを判定する処理を行い、
     前記第5の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第2の負荷率よりも前記第5の負荷率が決められた負荷率から離れる、または前記第5の負荷率が前記第2の負荷率と等しいことを示すとき、前記第2の負荷率を測定したときの設定値を調整値として設定する
     ことを特徴とする請求項8に記載の情報処理装置。
  10.  前記制御部は、
     前記最初に第5の負荷率が決められた負荷率に近づいたか否かを判定した結果が、前記第2の負荷率よりも前記第5の負荷率が決められた負荷率から離れる、または前記第5の負荷率が前記第2の負荷率と等しいことを示すとき、
     前記第1のパケットカウント数が前記第2のパケットカウント数よりも大きいとき、前記第1のパケットカウント数を減少して、前記第5の負荷率を取得する処理を行い、
     前記第1のパケットカウント数が前記第2のパケットカウント数よりも小さいとき、前記第1のパケットカウント数を増加して、前記第5の負荷率を取得する処理を行う
     ことを特徴とする請求項9に記載の情報処理装置。
  11.  前記複数のパラメータは、
     決められた数のパケットを生成するごとに、前記送信部から前記受信部に前記パケットを送信するときの該決められた数を示すパケットカウント数と、
     前記送信部と前記受信部との間のコネクションの数を示すコネクション数と、
     前記送信部と前記受信部との間でパケットを送受信する処理に使用する制御回路の数を示すCPUバインド数と、
     前記送信部から前記受信部に前記パケットを送信する処理に、前記制御回路を割り当てたとき、一回当たりに実行するタスクの処理数を示すディスパッチ処理数と、
     前記送信部から前記受信部に前記パケットを送信する処理と他の処理との実行順序を決定する優先度と、
     を含み、
     前記制御部は、
     前記パケットカウント数、前記コネクション数、前記CPUバインド数、前記ディスパッチ時間、前記優先度の順で前記複数のパラメータを調整することを特徴とする請求項1~10のいずれか一つに記載の情報処理装置。
  12.  情報処理装置のコンピュータが、
     パケットを送信する送信部から前記パケットを送信し、
     前記パケットを受信する受信部で前記パケットを受信し、
     前記送信部から前記受信部に前記パケットを送信しているとき、前記送信部と前記受信部との間の帯域の使用率である負荷率を測定し、
     前記測定した負荷率が決められた負荷率に近づくように、設定を変更すると前記負荷率を変動させる複数のパラメータを、前記負荷率の増減に対する影響の大きいパラメータから順番に調整する
     ことを特徴とする負荷試験方法。
PCT/JP2012/074296 2012-09-21 2012-09-21 情報処理装置、および負荷試験方法 WO2014045417A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2012/074296 WO2014045417A1 (ja) 2012-09-21 2012-09-21 情報処理装置、および負荷試験方法
JP2014536515A JPWO2014045417A1 (ja) 2012-09-21 2012-09-21 情報処理装置、および負荷試験方法
US14/638,802 US20150180964A1 (en) 2012-09-21 2015-03-04 Information processing apparatus and load test method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/074296 WO2014045417A1 (ja) 2012-09-21 2012-09-21 情報処理装置、および負荷試験方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/638,802 Continuation US20150180964A1 (en) 2012-09-21 2015-03-04 Information processing apparatus and load test method

Publications (1)

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

Family

ID=50340767

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/074296 WO2014045417A1 (ja) 2012-09-21 2012-09-21 情報処理装置、および負荷試験方法

Country Status (3)

Country Link
US (1) US20150180964A1 (ja)
JP (1) JPWO2014045417A1 (ja)
WO (1) WO2014045417A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2016080427A1 (ja) * 2014-11-19 2017-09-07 日本電気株式会社 情報処理システム、情報処理方法、サーバ、情報処理装置、通信端末およびそれらの制御方法と制御プログラム
JP2017195432A (ja) * 2016-04-18 2017-10-26 日本電信電話株式会社 試験装置、試験方法および試験プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6377197B1 (ja) * 2017-03-03 2018-08-22 三菱電機インフォメーションシステムズ株式会社 スレッド数変動通信装置及びスレッド数変動通信プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1084384A (ja) * 1996-09-09 1998-03-31 Nec Commun Syst Ltd パケットデータ通信における負荷試験装置
JP2006115038A (ja) * 2004-10-13 2006-04-27 Nec Engineering Ltd 主信号負荷試験装置及び試験方法
JP2008283239A (ja) * 2007-05-08 2008-11-20 Fujitsu Ltd パケット負荷試験装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040017773A1 (en) * 2002-07-23 2004-01-29 Eyeball Networks Inc. Method and system for controlling the rate of transmission for data packets over a computer network
JP4882723B2 (ja) * 2006-12-18 2012-02-22 日本電気株式会社 移動通信システム及び信号合成方法
US8374263B2 (en) * 2009-11-12 2013-02-12 Siklu Communication ltd. OFDM communication with multi-dimensional rate adaptation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1084384A (ja) * 1996-09-09 1998-03-31 Nec Commun Syst Ltd パケットデータ通信における負荷試験装置
JP2006115038A (ja) * 2004-10-13 2006-04-27 Nec Engineering Ltd 主信号負荷試験装置及び試験方法
JP2008283239A (ja) * 2007-05-08 2008-11-20 Fujitsu Ltd パケット負荷試験装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2016080427A1 (ja) * 2014-11-19 2017-09-07 日本電気株式会社 情報処理システム、情報処理方法、サーバ、情報処理装置、通信端末およびそれらの制御方法と制御プログラム
US10554348B2 (en) 2014-11-19 2020-02-04 Nec Corporation Information processing system, information processing method, and information processing device
JP2017195432A (ja) * 2016-04-18 2017-10-26 日本電信電話株式会社 試験装置、試験方法および試験プログラム

Also Published As

Publication number Publication date
JPWO2014045417A1 (ja) 2016-08-18
US20150180964A1 (en) 2015-06-25

Similar Documents

Publication Publication Date Title
EP3255553A1 (en) Transmission control method and device for direct memory access
US20180285294A1 (en) Quality of service based handling of input/output requests method and apparatus
US8996756B2 (en) Using process location to bind IO resources on NUMA architectures
EP3253027A1 (en) Resource allocation method and apparatus for virtual machines
WO2014030221A1 (ja) 仮想計算機システム、管理計算機及び仮想計算機管理方法
US20130007757A1 (en) Methods, computer systems, and physical computer storage media for managing resources of a storage server
US10090916B2 (en) Optical module availability detection method and apparatus
WO2014045417A1 (ja) 情報処理装置、および負荷試験方法
US20170371614A1 (en) Method, apparatus, and storage medium
US20150026347A1 (en) Method and apparatus for allocating stream processing unit
KR102160252B1 (ko) 가상 스위칭 방법 및 장치
US10104571B1 (en) System for distributing data using a designated device
US10126956B2 (en) Information processing device and information processing method
KR102203204B1 (ko) 가상화 환경에서의 성능 제어 방법 및 이를 위한 정보 처리 장치
JP2006268282A (ja) マルチ・パーティション・システムの割り込み制御方式
JP6035905B2 (ja) ストレージシステムおよびストレージシステムの制御方法
CN112395216A (zh) 用于存储管理的方法、装置、设备和计算机可读存储介质
KR102216125B1 (ko) 미디어 컨텐츠의 송수신을 스케쥴링 하는 방법, 장치 및 시스템
JP5230665B2 (ja) データ受信装置、データ受信方法
JP2019144715A (ja) 情報処理装置、情報処理システム、及びプログラム
US11818178B2 (en) Control apparatus, control method and program for allocation of operators to session boarder controllers
CN117950973B (zh) 性能分析方法、装置、电子设备、存储介质及程序产品
JP2013161165A (ja) 計算機システム及びPCIeデバイスの割当方法
JP5619312B2 (ja) データ処理装置およびその制御方法
JP2017175481A (ja) 通信端末装置、通信方法及び通信プログラム

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: 12884872

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014536515

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: 12884872

Country of ref document: EP

Kind code of ref document: A1