Information processing device, method and non-transitory computer-readable medium for selecting communication interface on basis of number of times communication interface request rejected

An information processing device includes multiple communication interfaces, a holding unit, a counting unit, and a processing unit. The holding unit holds requests for the multiple communication interfaces in order for each of the communication interfaces, respectively. The counting unit counts a number of times that a turn to process the requests was not given for each of the communication interfaces. The processing unit selects one of the communication interfaces on the basis of the number of times, and processes the request being held for the selected communication interface.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based on and claims priority under 35 USC 119 from Japanese Patent Application No. 2014-056943 filed Mar. 19, 2014.

BACKGROUND

The present invention relates to an information processing device, an information processing method, and a non-transitory computer-readable medium.

SUMMARY

According to an aspect of the invention, there is provided an information processing device that includes multiple communication interfaces, a holding unit, a counting unit, and a processing unit. The holding unit holds requests for the multiple communication interfaces in order for each of the communication interfaces, respectively. The counting unit counts a number of times that a turn to process the requests was not given for each of the communication interfaces. The processing unit selects one of the communication interfaces on the basis of the number of times, and processes the request being held for the selected communication interface.

DETAILED DESCRIPTION

Hereinafter, exemplary embodiments for carrying out the present invention will be described in accordance with the drawings.

[1. Hardware Configuration of Information Process Device]

FIG. 1is a diagram illustrating an example of a hardware configuration of an information processing device100according to an exemplary embodiment of the present invention, and devices connected to the information processing device100. As illustrated inFIG. 1, the information processing device100includes a controller101, a display unit102, an input unit103, a storage unit104, a reading unit105, an output unit106, and a communication unit107. Besides the configuration illustrated inFIG. 1, the information processing device100may also include components such as an operating unit and a power switch.

The controller101includes a central processing unit (CPU), and executes various computational processes while also controlling the respective units of the information processing device100on the basis of programs stored in the storage unit104. The controller101will be later discussed in detail.

The display unit102is realized by a display device such as a liquid crystal display, and displays the results of information processing by the controller101(a screen).

The input unit103is realized by an input device such as a touch panel or buttons and keys, and accepts operating input from a user.

The storage unit104is made up of an information recording medium such as ROM, RAM, and a hard disk, for example, and is an information recording medium that holds programs executed by the controller101. In addition, the storage unit104operates as work memory for the controller101, for example. Note that various types of memory are applicable as the storage unit104. For example, the storage unit104may also be realized by a storage device such as semiconductor memory. In addition, the programs and various data described as being stored in the storage unit104in the present embodiment may also be acquired from an external device116via the communication unit107, or acquired from an external storage medium.

The reading unit105is made up of a scanner or the like. The reading unit105reads in an image of a target object by optically scanning a target object such as a sheet of paper.

The output unit106is made up of a printing mechanism or the like for forming an image onto a sheet (printing medium) such as paper. The output unit106prints (outputs) image data or the like onto a sheet such as paper, on the basis of the controller101.

The communication unit107is made up of multiple communication interfaces, and conducts wired or wireless communication with an external device116connected to the information processing device100. For example, as illustrated inFIG. 1, the communication unit107includes a first communication interface108to a fourth communication interface111. Each communication interface is made up of a network interface card (NIC), for example.

Note that althoughFIG. 1illustrates the case of the communication unit107including four communication interfaces, the number of communication interfaces included in the communication unit107may be any number greater than 1. Also, each communication interface included in the communication unit107may be a physical interface or a logical interface.

The first network112to the fourth network115are networks such as a local area network (LAN), the Internet, an intranet, or a next-generation network (NGN). The first network112to the fourth network115are respectively independent networks, and are not connected to each other.

The external device116is made up of a computer or the like. The computer transmits a printing or other instruction to the information processing device100, for example. Note that the external device116may also be a mobile device, server computer, or the like. Additionally, multiple external devices116may also be connected to each network.

[2. Functions Realized in Controller]

FIG. 2is a functional block diagram of the controller101and the storage unit104. As illustrated inFIG. 2, the controller101functionally includes a registration unit201, a counting unit202, and a process execution unit203. Each function illustrated inFIG. 2is realized as a result of the controller101executing a program stored in the storage unit104. Additionally, the storage unit104functionally includes a queue management information holding unit204and a delay count management information holding unit205.

The registration unit201registers connection requests to the queue management information holding unit204, and a delay count for the delay count management information holding unit205. The delay count management information holding unit205will be later described together with the description of the counting unit202.

Herein, first, the queue management information holding unit204and the queue management information held by the queue management information holding unit204will be described. The queue management information holding unit204holds connection requests in order for each of the multiple communication interfaces.

Specifically, an example of queue management information will be described using the queue management information illustrated inFIG. 3as an example. As illustrated inFIG. 3, four sets of queue management information corresponding to the four communication interfaces are held in the queue management information holding unit204. Note that the four sets of queue management information illustrated inFIG. 3represent queue management information corresponding to the first communication interface108to the fourth communication interface111in order from the front of the page and proceeding into the page.

Each set of queue management information includes information for identifying an external device116and information for identifying the relevant connection request. As a specific example, each set of queue management information includes an IP address for identifying an external device116, and information related to a file name for identifying the relevant connection request.

InFIG. 3, the queue management information corresponding to the first communication interface108holds a connection request that includes the file name “AAA.xls” and the IP address “192.168.0.1”. Similarly, the queue management information corresponding to the first communication interface108holds a connection request that includes the file name “BBB.xls” and the IP address “192.168.0.1”, and a connection request that includes the file name “CCC.doc” and the IP address “192.168.0.2”. Note that a connection request held in an upper row of the queue management information is a connection request that was acquired prior to a connection request held in a row below that connection request. In other words, the queue management information illustrated inFIG. 3indicates that connection requests were acquired in the order of the connection request including the file name “AAA.xls”, the connection request including the file name “BBB.xls”, and the connection request including the file name “CCC.doc”.

Returning to the description ofFIG. 2, when each communication interface acquires a connection request, the registration unit201registers (enqueues) the acquired connection request on the lowermost row of the queue management information corresponding to the relevant communication interface. Also, when a process in accordance with a connection request is executed, the registration unit201removes (dequeues) the connection request corresponding to the executed process from the queue management information holding unit204, and moves up the rows holding other connection requests.

As a specific example, a case will be described in which connection requests including the file names “AAA.xls” and “BBB.xls” are being stored, and a connection request including the file name “CCC.doc” and the IP address “192.168.0.2” is acquired. In this case, the registration unit201enqueues the connection request including the file name “CCC.doc” and the IP address “192.168.0.2” in the queue management information holding unit204. As a result, the queue management information illustrated inFIG. 3becomes held in the queue management information holding unit204.

Furthermore, when a process in accordance with the connection request including the file name “AAA.xls” is executed, the registration unit201dequeues the connection request including the file name “AAA.xls” from the queue management information holding unit204. As a result, queue management information including the file names “BBB.xls” on the second row and “CCC.doc” on the third row becomes held in the queue management information holding unit204.

The counting unit202counts the number of times that a turn to execute a process for a connection request was not given for each of the multiple communication interfaces. As a specific example, if a turn to process is not given to a respective communication interface, the counting unit202increments by 1 a delay count held in association with information identifying the relevant communication interface.

The delay count management information will now be described. The delay count management information expresses information associating information that identifies each communication interface, the above delay count, and a priority indicating the priority ranking of the communication interfaces. Note that the priority expresses which communication interface from among communication interfaces with the same delay count has a higher priority for executing a process when the process execution unit203discussed later selects a communication interface to execute a process. Also, the priority is information stored in advance in the delay count management information holding unit205, in association with the communication interface identification information.

Specifically, as illustrated inFIG. 4, for example, the delay count management information is information associating identification information for each communication interface in the first column, the delay count in the second column, and the priority in the third column. The second row inFIG. 4indicates that the communication interface identification information “NWIF1” identifying the first communication interface108is associated with a delay count of “2” and a priority of “3”. Similarly, the third to fifth rows respectively indicate communication interface identification information identifying the second communication interface109to the fourth communication interface111, and the delay count and priority corresponding to each communication interface. Note that althoughFIG. 4illustrates the case of four communication interfaces, if the number of communication interfaces is other than four, the delay count management information includes communication interface identification information corresponding to the relevant number.

Also, when a turn to execute a process for a connection request is given for each of the multiple communication interfaces, the counting unit202keeps a count of 0.

Furthermore, when the counting unit202counts a delay count, the registration unit201registers the delay count counted by the counting unit202in association with information identifying the relevant communication interface in the delay count management information holding unit205.

On the basis of the delay counts counted by the counting unit202, the process execution unit203selects one of the multiple communication interfaces, and executes a process on the basis of a connection request held for the selected communication interface. In other words, for the communication interface indicated by the communication interface identification information with the largest delay count based on the delay count management information, the process execution unit203executes a process on the basis of a connection request included in the queue management information corresponding to that communication interface.

As a specific example, a case in which the queue management information holding unit204is holding the queue management information illustrated inFIG. 3and the delay count management information holding unit205is holding the delay count management information illustrated inFIG. 4will be described. In this case, the communication interface identification information associated with the largest delay count is “NWIF1”. Herein, the communication interface indicated by the identification information “NWIF1” is the first communication interface108. Also, from among the connection requests included in the queue management information corresponding to the first communication interface108, the connection request that was acquired first is the connection request including the file name “AAA.xls”.

Consequently, the process execution unit203executes a process based on the connection request including the file name “AAA.xls” for the first communication interface108. In other words, the first communication interface108loads the data with the file name “AAA.xls” from the external device116having the IP address “192.168.0.1”, and the process execution unit203transmits an instruction to print the loaded data or the like to the output unit106. Note that the content of the process conducted by the process execution unit203may also be a process other than a print instruction.

Also, if there exist multiple pieces of communication interface identification information with the largest delay count in the delay count management information, the process execution unit203executes a process on the basis of priority. In other words, for the communication interface with the highest priority associated with the relevant multiple pieces of communication interface identification information, the process execution unit203executes a process on the basis of a connection request included in the queue management information corresponding to that communication interface.

As a specific example, a case in which the delay count management information holding unit205is holding priorities from “3” to “0” in association with communication interface identification information from “NWIF1” to “NWIF4” as illustrated inFIG. 4will be described. Also, suppose that a delay count of “0” is respectively held in association with the communication interface identification information “NWIF1” to “NWIF4”. In this case, the process execution unit203executes a process based on the connection request acquired first from among the connection requests included in the queue management information corresponding to the first communication interface108indicated by the identification information “NWIF1” associated with the highest priority.

Note that the process execution unit203may also determine whether or not a predetermined relationship exists between a connection request processed by a processing unit and a subsequent connection request being held for the communication interface corresponding to the previous connection request, and select one of the multiple communication interfaces on the basis of the determination result. In other words, if consecutive connection requests acquired by the same communication interface exist in a predetermined relationship, the process execution unit203may successively process the consecutive connection requests, irrespectively of delay count or priority.

For example, if the IP addresses respectively included in the consecutive connection requests are the same, and the extensions of the file names respectively included in those connection requests are “xls”, the process execution unit203may determine that the connection requests exist in a predetermined relationship. The process execution unit203then consecutively processes the consecutive connection requests.

Specifically, a case in which the queue management information holding unit204is holding the queue management information illustrated inFIG. 3will be described. In this case, the second and third rows of the queue management information corresponding to the first communication interface108hold the same IP address “192.168.0.1”. In addition, the file names held in the second and third rows both include the extension “xls”. Consequently, the process execution unit203determines that the second and third rows of the queue management information corresponding to the first communication interface108exist in a predetermined relationship. Subsequently, after executing the process of the connection request including the file name “AAA.xls”, the process execution unit203executes the process of the connection request including the file name “BBB.xls”.

Note that the predetermined relationship is not limited to the above relationship, and may also be another relationship. For example, if the IP addresses respectively included in consecutive connection requests are the same, and the files respectively included in those connection requests were created with the same application, the process execution unit203may determine that the connection requests exist in a predetermined relationship.

As a specific example, if the IP addresses respectively included in consecutive connection requests are the same, and the extensions of the file names respectively included in those connection requests have a preconfigured relationship, such as “sln” (solution file) and “proj” (project file), the process execution unit203may determine that the consecutive connection requests exist in a predetermined relationship. In other words, if consecutive connection requests include the respective extensions “sln” (solution file) and “proj” (project file), it is assumed that those files were created by the same application, such as integrated development environment software. Consequently, the process execution unit203may determine that the consecutive connection requests exist in a predetermined relationship.

Also, if the IP addresses respectively included in consecutive connection requests are simply the same, the process execution unit203may determine that the connection requests exist in a predetermined relationship. In other words, the queue management information holding unit204may determine that consecutive connection requests exist in a predetermined relationship by considering only the IP addresses included in the consecutive connection requests, and not considering relationships among file names or extensions included in the consecutive connection requests.

Furthermore, if the process execution unit203determines that a predetermined relationship exists between a connection request processed by the process execution unit203and a subsequent connection request being held for the communication interface corresponding to the previous connection request, the process execution unit203may consecutively select the same communication interface. Also, the number of times to select the same communication interface consecutively may be limited.

In other words, if the process execution unit203has consecutively executed processes a predetermined number of times for connection requests acquired by the same communication interface, the process execution unit203may execute a process based on a connection request acquired by another communication interface, irrespectively of the above determination. As a specific example, a case will be described in which ten connection requests including the same IP address and also including files with the extension “xls” are consecutively acquired for one communication interface, and in addition, the predetermined number is five times. In this case, the process execution unit203may execute processes based on five out of the ten consecutive connection requests in order of acquisition, and subsequently execute a process based on a connection request acquired by a communication interface different from the above communication interface.

As described above, undesirable switching of the communication interface is moderated by having the process execution unit203determine whether or not a predetermined relationship exists between a connection request processed by a processing unit and a subsequent connection request being held for the communication interface corresponding to the previous connection request.

Note that in the case in which the process execution unit203is configured to determine whether or not consecutive connection requests exist in a predetermined relationship, the communication unit107may also include a single communication interface.

[3. Processes Executed in Information Processing Device]

[3-1. Queue Management Information Registration Process]

Next, processes conducted by the information processing device100will be described.FIG. 5is a sequence diagram for explaining a queue management information registration process conducted by the information processing device100.

First, the process branches depending on whether or not a communication interface included in the communication unit107acquires a connection request from an external device116(S501). In S501, if no communication interface has acquired a connection request, the process proceeds to S501again. In other words, the step in S501is repeated until a communication interface acquires a connection request.

On the other hand, in S501, if a communication interface acquires a connection request, the registration unit201registers the acquired connection request in the queue management information corresponding to the acquiring communication interface.

As above, every time a communication interface acquires a connection request, that connection request is registered in the queue management information corresponding to the acquiring communication interface.

FIG. 6is a sequence diagram for explaining a connection request process conducted by the information processing device100. First, the process branches depending on whether or not the information processing device100is at a timing to conduct a process based on a connection request (S601). In S601, if not at a timing to conduct a process, the process proceeds to S601again. In other words, the step in S601is repeated until a timing to conduct a process is reached.

Subsequently, the process execution unit203determines whether or not a predetermined relationship exists between a connection request processed by a processing unit and a subsequent connection request being held for the communication interface corresponding to the previous connection request (S602). In S602, the process proceeds to S603if the process execution unit203determines that a predetermined relationship does not exist, and proceeds to S607if the process execution unit203determines that a predetermined relationship exists.

In S602, if the process execution unit203determines that a predetermined relationship does not exist, the process execution unit203searches for the communication interface with the largest delay count on the basis of the delay count management information (S603). Next, if there exist multiple pieces of communication interface identification information with the largest delay count management information, the process execution unit203selects the communication interface with the highest priority associated with the relevant multiple pieces of communication interface identification information (S604, S605). On the other hand, if there exists one piece of communication interface identification information with the largest delay count in the delay count management information, the process execution unit203selects the one relevant communication interface (S606).

Also, in S602, if the process execution unit203determines that a predetermined relationship exists, the process proceeds to S608if the number of processes consecutively conducted by the process execution unit203(i in the drawing) matches a predetermined threshold value, and proceeds to S609if i does not exceed the predetermined threshold value (S607). In the case of proceeding to S608, the number of processes consecutively conducted by the process execution unit203is reset (S608). After that, the process proceeds to S603, and the information processing device100conducts a process similar to the above.

On the other hand, in the case of proceeding to S609, the number of processes consecutively executed by the process execution unit203is incremented by 1 (S609). The process execution unit203then selects the communication interface on which the process execution unit203executed the past process (S610).

Subsequently, the communication interface selected in one of S605, S606, and S610loads data on the basis of a connection request held in the corresponding queue management information holding unit204(S611). Next, the process execution unit203executes a process based on the loaded data (S612). The counting unit202then counts delay counts corresponding to each communication interface, and the registration unit201registers updates in the queue management information holding unit204and the delay count management information (S613).

Note that the above describes a case of combining a feature in which the process execution unit203determines whether or not consecutive connection requests exist in a predetermined relationship with a feature in which the counting unit202counts a delay count for each communication interface, in order to moderate undesirable switching of the communication interface. However, features other than the above may also be combined.

[3-3. Specific Example of Connection Request Process]

Next, a specific example of the above connection request execution process will be described.FIG. 7is a diagram for explaining a specific example of a process conducted by the information processing device100. Herein, suppose that the information processing device100includes four communication interfaces assigned with identification information from NWIF1 to NWIF4, and that NWIF1 to NWIF4 are respectively associated with the priorities illustrated inFIG. 4. Also, the following description herein supposes that the process execution unit203does not determine whether or not a predetermined relationship exists between a connection request processed by a processing unit and a subsequent connection request being held for the communication interface corresponding to the previous connection request.

The upper part ofFIG. 7illustrates timings when each communication interface acquires a connection request, and timings when the communication interfaces execute data loading on the basis of those connection requests. Also, the timings1to5respectively indicate the timings when the information processing device100conducts a process on the basis of a connection request. Furthermore, the downward-facing triangles represent the timings when each communication interface acquires a connection request, while the lines extending to the right from the triangles represent the period until data loading is executed. In other words, the end of a line indicates the timing when data loading is executed on the basis of the relevant connection request. The lower part ofFIG. 7illustrates delay counts corresponding to each communication interface (NIC) held in the delay count management information holding unit205before and after the timings1to5.

First, before timing1, the first communication interface108acquires the connection request labeled “connection request 1-1”. Subsequently, the second communication interface109to the fourth communication interface111successively acquire connection requests labeled “connection request 2-1”, “connection request 3-1”, and “connection request 4-1”, respectively. At the timing when the fourth communication interface111acquires the connection request labeled “connection request 4-1”, the delay counts corresponding to NWIF1 to NWIF4 held in the delay count management information holding unit205are all “0”.

Next, when timing1is reached, since the delay counts corresponding to the first communication interface108to the fourth communication interface111are all the same, the first communication interface108having the highest priority ranking from among the first communication interface108to the fourth communication interface111loads data on the basis of the connection request labeled “connection request 1-1” (data load 1-1). The process execution unit203then executes a process based on the loaded data. Additionally, the counting unit202counts a delay count of 0 for the delay count corresponding to NWIF1. Furthermore, the registration unit201registers a delay count of “0” in association with NWIF1 in the delay count management information holding unit205.

At timing1, the second communication interface109to the fourth communication interface111respectively acquire connection requests, but the process execution unit203does not execute processes based on each connection request for the second communication interface109to the fourth communication interface111. For this reason, the counting unit202increments the delay counts stored in association with NWIF2 to NWIF4 by 1. Subsequently, the registration unit201registers the delay count of “1” incremented by the counting unit202in association with NWIF2 to NWIF4 in the delay count management information holding unit205.

Consequently, as illustrated in the lower part ofFIG. 7, after timing1, the delay count corresponding to NWIF1 held in the delay count management information holding unit205becomes “0”, while the delay counts corresponding to NWIF2 to NWIF4 all become “1”.

Next, when timing2is reached, the communication interfaces associated with the largest delay count from among the first communication interface108to the fourth communication interface111are the second communication interface109to the fourth communication interface111. Accordingly, the second communication interface109having the highest priority ranking from among the second communication interface109to the fourth communication interface111loads data on the basis of the connection request labeled “connection request 2-1” (data load 2-1). The process execution unit203then executes a process based on the loaded data. Additionally, the counting unit202counts a delay count of 0 for the delay count corresponding to NWIF2. Furthermore, the registration unit201registers a delay count of “0” in association with NWIF2 in the delay count management information holding unit205.

Also, at timing2, the third communication interface110and the fourth communication interface111respectively acquire connection requests, but the process execution unit203does not execute processes based on each connection request for the third communication interface110and the fourth communication interface111. For this reason, the counting unit202increments the delay counts stored in association with NWIF3 and NWIF4 by 1. Subsequently, the registration unit201registers the delay count of “2” incremented by the counting unit202in association with NWIF3 and NWIF4 in the delay count management information holding unit205.

Consequently, as illustrated in the lower part ofFIG. 7, after timing2, the delay counts corresponding to NWIF1 and NWIF2 held in the delay count management information holding unit205become “0”, while the delay counts corresponding to NWIF3 and NWIF4 become “2”.

Subsequently, after timing2but before timing3, the second communication interface109acquires the connection request labeled “connection request 2-2”.

Next, when timing3is reached, the communication interfaces associated with the largest delay count from among the first communication interface108to the fourth communication interface111are the third communication interface110and the fourth communication interface111. Accordingly, the third communication interface110having the highest priority ranking from among the third communication interface110and the fourth communication interface111loads data on the basis of the connection request labeled “connection request 3-1” (data load 3-1). The process execution unit203then executes a process based on the loaded data. Additionally, the counting unit202counts a delay count of 0 for the delay count corresponding to NWIF3. Furthermore, the registration unit201registers a delay count of “0” in association with NWIF3 in the delay count management information holding unit205.

Also, at timing3, the second communication interface109and the fourth communication interface111respectively acquire connection requests, but the process execution unit203does not execute processes based on each connection request for the second communication interface109and the fourth communication interface111. For this reason, the counting unit202increments the delay counts stored in association with NWIF2 and NWIF4 by 1. Subsequently, the registration unit201registers the delay count of “1” incremented by the counting unit202in association with NWIF2 in the delay count management information holding unit205, and registers the delay count of “3” incremented by the counting unit202in association with NWIF4.

Consequently, as illustrated in the lower part ofFIG. 7, after timing3, the delay counts corresponding to NWIF1 to NWIF4 held in the delay count management information holding unit205respectively become “0”, “1”, “0”, and “3” in order.

Subsequently, after timing3but before timing4, the first communication interface108acquires the connection request labeled “connection request 1-2”.

Next, when timing4is reached, the communication interface associated with the largest delay count from among the first communication interface108to the fourth communication interface111is the fourth communication interface111. Accordingly, the fourth communication interface111loads data on the basis of the connection request labeled “connection request 4-1” (data load 4-1). The process execution unit203then executes a process based on the loaded data. Additionally, the counting unit202counts a delay count of 0 for the delay count corresponding to NWIF4. Furthermore, the registration unit201registers a delay count of “0” in association with NWIF4 in the delay count management information holding unit205.

Also, at timing4, the first communication interface108and the second communication interface109respectively acquire connection requests, but the process execution unit203does not execute processes based on each connection request for the first communication interface108and the second communication interface109. For this reason, the counting unit202increments the delay counts stored in association with NWIF1 and NWIF2 by 1. Subsequently, the registration unit201registers the delay count of “1” incremented by the counting unit202in association with NWIF1 in the delay count management information holding unit205, and registers the delay count of “2” incremented by the counting unit202in association with NWIF2.

Consequently, as illustrated in the lower part ofFIG. 7, after timing4, the delay counts corresponding to NWIF1 to NWIF4 held in the delay count management information holding unit205respectively become “1”, “2”, “0”, and “0” in order.

Subsequently, after timing4but before timing5, the third communication interface110acquires the connection request labeled “connection request 3-2”.

Next, when timing5is reached, the communication interface associated with the largest delay count from among the first communication interface108to the fourth communication interface111is the second communication interface109. Accordingly, the second communication interface109loads data on the basis of the connection request labeled “connection request 2-2” (data load 2-2). The process execution unit203then executes a process based on the loaded data. Additionally, the counting unit202counts a delay count of 0 for the delay count corresponding to NWIF2. Furthermore, the registration unit201registers a delay count of “0” in association with NWIF2 in the delay count management information holding unit205.

Also, at timing5, the first communication interface108and the third communication interface110respectively acquire connection requests, but the process execution unit203does not execute processes based on each connection request for the first communication interface108and the third communication interface110. For this reason, the counting unit202increments the delay counts stored in association with NWIF1 and NWIF3 by 1. Subsequently, the registration unit201registers the delay count of “2” incremented by the counting unit202in association with NWIF1 in the delay count management information holding unit205, and registers the delay count of “1” incremented by the counting unit202in association with NWIF3.

Consequently, as illustrated in the lower part ofFIG. 7, after timing5, the delay counts corresponding to NWIF1 to NWIF4 held in the delay count management information holding unit205respectively become “2”, “0”, “1”, and “0” in order.

Note that although the specific example above describes the operation of the information processing device100during the period from the timings1to5, the information processing device100conducts a process similar to the above for periods other than the above. Also, although the case of four communication interfaces is described, the communication interfaces may be a number other than four. Furthermore, the process execution unit203may also be configured to determine whether or not a predetermined relationship exists between a connection request processed by a processing unit and a subsequent connection request being held for the communication interface corresponding to the previous connection request.

The present invention is not limited to the foregoing exemplary embodiments or exemplary modifications, and various other modifications are possible. The configuration of the information processing device100and the flowcharts are merely examples, and the present invention is not limited thereto. The configurations illustrated in the foregoing exemplary embodiments or exemplary modifications may also be substituted with a configuration that is substantially the same, a configuration that exhibits the same operational effects, or a configuration that achieves the same objective.