Patent Description:
For example, <CIT> discloses a technology for managing a plurality of electronic apparatuses by a management apparatus. According to the above related art, the electronic apparatus communicates with the management apparatus using a predetermined protocol.

Conventionally, an operation for setting a communication path through which the electronic apparatus communicates with the management apparatus has to be performed according to a protocol that the electronic apparatus supports. Examples of the communication path to be set include, but are not limited to, whether a specific relay apparatus intervenes between the electronic apparatus and the management apparatus.

<CIT> discloses a technique for management of a distributed data processing system. An action at a target device is requested, and the completion of the action depends upon communication protocol operations on a set of devices along a logical route through the distributed data processing system. A set of supported protocols that are common to the set of devices along the logical route are identified, and a subset of supported protocols in the set of supported protocols that can be used to complete the action is then identified. An allowable supported protocol is selected for the action based on the type of requested action, after which the requesting application may use the action in accordance with the selected allowable supported protocol, e.g., to monitor or discover the target device. A topology mapping is used to derive an endpoint-to-endpoint route for completing the requested action. A comparison of assigned priorities of each allowable supported protocol may be performed to choose the selected allowable supported protocol.

<CIT> discloses a network device management apparatus which is capable of constructing a network environment in which excellent operability is maintained without displaying a communication error screen even in a case where different protocols, such as IPv4 and IPv6, are mixedly used on a network, or between network apparatuses operating on a specific protocol, such as IPv6. A network device management apparatus is communicably connected to a device and a client apparatus on a network. A network device management application receives a request for access to the device from the client apparatus. The application acquires an address of the client apparatus and an address of the device. If communication between the client apparatus and the device is impossible, the application sends device information acquired from the device to the client apparatus, whereas if the communication is possible, the application sends an address for connection to the device to the client apparatus.

An object of the present invention is to reduce an amount of work for setting a communication path or to eliminate the work for setting the communication path.

The invention provides an information processing apparatus as claimed in claim <NUM>, a system including the apparatus of the invention, a method as claimed in claim <NUM> and carrier means as claimed in claim <NUM>. According to the invention, a protocol that the electronic apparatus supports is identified, and a communication path through which the electronic apparatus communicates with the management apparatus is set based on the identified protocol. Accordingly, an amount of work for setting the communication path is reduced.

The communication unit may be configured to mediate communication between the electronic apparatus and the management apparatus, and the setting unit is configured to set the communication path through which the electronic apparatus and the management apparatus communicate with each other via the information processing apparatus. The setting unit may be configured to set the communication path through which the electronic apparatus and the management apparatus communicate with each other without intervening the information processing apparatus. Accordingly, compared to a configuration in which only a communication path through which the electronic apparatus and the management apparatus communicate with each other via the information processing apparatus is set as a communication path through which the electronic apparatus communicates with the management apparatus, or a configuration in which only a communication path through which the electronic apparatus and the management apparatus communicate with each other without intervening the information processing apparatus is set as the communication path, it is easier to set an appropriate communication path through which the electronic apparatus communicates with the management apparatus.

The information processing apparatus may include an acquisition unit configured to acquire model information indicating a type of the electronic apparatus from a plurality of electronic apparatuses including the electronic apparatus, and a registration unit configured to register the model information of the plurality of electronic apparatuses in the management apparatus. In other words, in the above configuration, the information processing apparatus has both a function of setting the communication path through which the electronic apparatus communicates with the management apparatus and a function of registering the model information in the management apparatus. This brings about an advantage that the number of apparatus is reduced as compared with a configuration in which different apparatuses having the functions respectively are provided.

According to one or more embodiments of the present invention, a protocol that an electronic apparatus supports is identified, and a communication path through which the electronic apparatus communicates with a management apparatus is set based on the identified protocol. Accordingly, an amount of work for setting the communication path is reduced or the work for setting the communication path is eliminated.

However, the disclosure of this specification is not intended to be limited to the specific terminology so selected.

<FIG> is a diagram illustrating an example of a configuration of an information processing system <NUM>, according to an embodiment of the present invention. The information processing system <NUM> includes a server <NUM>, a first management system <NUM>, a second management system <NUM>, multiple electronic apparatuses <NUM> including an electronic apparatus 400a and an electronic apparatus 400b. In the following description, any of the electronic apparatus 400a and the electronic apparatus 400b may be referred to as an "electronic apparatus <NUM>", unless they need to be distinguished from each other. As illustrated in <FIG>, among the elements of the information processing system <NUM>, the server <NUM> and the electronic apparatuses <NUM> reside in an environment α. In one example, one or more of the apparatuses residing in the environment α is provided in different countries respectively.

The first management system <NUM> and the second management system <NUM> are configured to manage each of the electronic apparatuses <NUM> from a remote location. In the following description, the first management system <NUM> and the second management system <NUM> may be collectively referred to as a "management system". Specifically, the management system is communicable with each of electronic apparatuses <NUM> and stores various information for managing each of the electronic apparatuses <NUM>. For example, the management system stores information indicating a type of each of the electronic apparatuses <NUM> managed by the management system. Examples of the type include, but are not limited to, an apparatus identifier (ID). <FIG> illustrates a multifunction peripheral/product/printer (MFP) and a mobile computer as an example of the electronic apparatus <NUM> managed by the management system. In another example, any other suitable electronic apparatuses are employed as the electronic apparatuses <NUM>.

As illustrated in <FIG>, each of the electronic apparatuses <NUM> and the management system are communicable with each other through a network N. The electronic apparatuses <NUM> according to the present embodiment includes both the electronic apparatus <NUM> of an old model and the electronic apparatus <NUM> of a new model. The electronic apparatus <NUM> of an old model are managed by the first management system <NUM>. The electronic apparatus <NUM> of a new model are managed by the second management system <NUM>. For this reason, settings have to be configured so that the electronic apparatus <NUM> of an old model is communicable with the first management system <NUM> and the electronic apparatus <NUM> of a new model is communicable with the second management system <NUM>. For example, in a case in which the number of the electronic apparatuses <NUM> is huge, there is a drawback the amount of work to be performed for configuring the settings becomes excessive.

To address such issue, the present embodiment is configured such that the server <NUM> sets a communication path for the electronic apparatus <NUM> to communicate with the management system. Specifically, the electronic apparatuses <NUM> in the environment α are communicable with the server <NUM>. The server <NUM> automatically sets a communication path for each of the electronic apparatuses <NUM> to communicate with the management system. For example, the server <NUM> configures settings of the electronic apparatus <NUM> of an old model such that the electronic apparatus of an old model is communicable with the first management system <NUM>. Further, the server <NUM> configures settings of the electronic apparatus <NUM> of a new model such that the electronic apparatus of the new model is communicable with the second management system <NUM>. Details of the above configuration are described below.

<FIG> is a diagram illustrating an example of a hardware configuration of the server <NUM>. As illustrated in <FIG>, the server is configured by a computer, which includes a central processing unit (CPU) <NUM>, a read only memory (ROM) <NUM>, a random access memory (RAM) <NUM>, a hard disk (HD) <NUM>, a hard disk drive (HDD) controller <NUM>, a display <NUM>, an external device connection interface (I/F) <NUM>, a network I/F <NUM>, a bus line <NUM>, a keyboard <NUM>, a pointing device <NUM>, a digital versatile disk rewritable (DVD-RW) drive <NUM> and a medium I/F <NUM>.

The CPU <NUM> controls overall operation of the server <NUM>. The ROM <NUM> stores a program such as an initial program loader (IPL) to boot the CPU <NUM>. The RAM <NUM> is used as a work area for the CPU <NUM>. The HD <NUM> stores various data such as a program. The HDD controller <NUM> controls reading or writing of various data from or to the HD <NUM> under control by the CPU <NUM>.

The display <NUM> displays various information such as a cursor, menu, window, characters, or image. The external device connection I/F <NUM> is an interface that connects the server <NUM> to various external devices. Examples of the external devices include, but are not limited to, a universal serial bus (USB) memory and printer. The network I/F <NUM> is an interface that enables the server <NUM> to perform data communication through a communication network. Examples of the bus line <NUM> include, but are not limited to, an address bus and a data bus, which electrically connects the elements such as the CPU <NUM> with each other.

The keyboard <NUM> is an example of an input device provided with a plurality of keys that allows a user to input characters, numerals, or various instructions. The pointing device <NUM> is an example of an input device that allows a user to select or execute a specific instruction, select an object for processing, or move a cursor being displayed. The DVD-RW drive <NUM> controls reading or writing of various data from or to a DVD-RW <NUM>, which is an example of a removable storage medium. The DVD-RW is merely one example of the removable storage medium. In another example, a DVD-recordable (DVD-R) is used as the removable storage medium. The medium I/F <NUM> controls reading or writing of data from or to a storage medium <NUM> such as a flash memory.

<FIG> is a block diagram illustrating an example of a functional configuration of the information processing system <NUM>. As illustrated in <FIG>, the information processing system <NUM> includes an information processing apparatus <NUM>, a first management apparatus <NUM>, a second management apparatus <NUM>, and multiple electronic apparatuses <NUM> including an electronic apparatus 40a and an electronic apparatus 40b. In the following description, any of the electronic apparatus 40a and the electronic apparatus 40b may be referred to as an "electronic apparatus <NUM>", unless they need to be distinguished from each other. For example, the server <NUM> functions as the information processing apparatus <NUM> by executing the program by the CPU <NUM>. The first management apparatus <NUM> is implemented by a CPU of the first management system <NUM> executing a program. The second management apparatus <NUM> is implemented by a CPU of the second management system <NUM> executing a program. In substantially the same manner, the electronic apparatus <NUM> is implemented by a CPU of the electronic apparatus <NUM> executing a program.

Each of the electronic apparatuses <NUM> are communicable with extraneous sources such as the information processing apparatus <NUM> in accordance with a protocol supported by the electronic apparatus <NUM>. However, in some cases, the electronic apparatuses <NUM> supports different protocols respectively depending on types of the electronic apparatuses. Specifically, the electronic apparatuses <NUM> support any of protocols including a first protocol, a second protocol, and a third protocol. The first protocol is, for example, Hyper Text Transfer Protocol (HTTP). The second protocol is, for example, Simple Network Management Protocol (SNMP). The third protocol is, for example, Message Queuing Telemetry Transport (MQTT). The above protocols are merely example, and in another example, any other suitable protocols are adopted as the first protocol to the third protocol.

The first management apparatus <NUM> and the second management apparatus <NUM> are communicable with any of the electronic apparatuses <NUM>, and have a function of managing the electronic apparatuses <NUM>. In the following description, the first management apparatus <NUM> and the second management apparatus <NUM> may be collectively referred to as a "management apparatus". Although the description given above is of an example in which two types of management apparatuses are provided, in another example, one type of management apparatus is provided. In still another example, three or more types of management apparatuses are provided.

The management apparatus communicates with the electronic apparatus <NUM> through a communication path in which the information processing apparatus <NUM> intervenes between the electronic apparatus and the management apparatus or a communication path in which the information processing apparatus <NUM> does not intervene between the electronic apparatus and the management apparatus. The details are described below. The management apparatus is communicable with extraneous sources using a protocol supported by the management apparatus. However, the first management apparatus <NUM> and the second management apparatus <NUM> support different protocols respectively. Specifically, the first management apparatus <NUM> supports the first protocol, and the second management apparatus <NUM> supports the third protocol.

The information processing apparatus <NUM> functions as a relay device when a specific electronic apparatus <NUM> communicates with the management apparatus. For example, the electronic apparatus <NUM> that does not support any of the protocols (the first protocol and the third protocol) supported by the management apparatus is assumed. Such the electronic apparatus <NUM> cannot directly communicate with the management apparatus. However, such the electronic apparatus <NUM> is communicable with the management apparatus via the information processing apparatus <NUM>. By contrast, the electronic apparatus <NUM> that supports the first protocol is communicable with the first management apparatus <NUM> without the information processing apparatus <NUM>. However, in one example, the information processing apparatus <NUM> is configured to mediate communication between the electronic apparatus <NUM> that supports the first protocol and the management apparatus. The electronic apparatus <NUM> that supports the third protocol is communicable with the second management apparatus <NUM> without the information processing apparatus <NUM>.

In the above configuration, settings of a communication path for the electronic apparatus <NUM> to communicate with the management apparatus have to be configured appropriately depending on a protocol supported by the electronic apparatus <NUM>. In a comparative example, an operator has to manually configure settings of the communication path for the electronic apparatus <NUM> in consideration of a protocol supported by the electronic apparatus <NUM>. In the comparative example, there is inconvenience that the amount of work for configuring settings of the communication path for the electronic apparatus <NUM> is likely to be excessive. Such the inconvenience is likely to become apparent when the number of electronic apparatus <NUM> is large. To address such issue, the present embodiment employs a configuration that eliminates or suppresses the inconvenience described above. The above configuration is described below in detail.

As illustrated in <FIG>, the information processing apparatus <NUM> includes a communication unit <NUM>, an identification unit <NUM>, an acquisition unit <NUM>, a registration unit <NUM>, a determination unit <NUM>, a setting unit <NUM>, and a storage unit <NUM>. The communication unit <NUM> is communicable with the electronic apparatus <NUM> using a plurality of types of protocols. Specifically, the communication unit <NUM> is communicable with the electronic apparatus <NUM> using protocols including the first protocol and the second protocol. Further, the information processing apparatus <NUM> (communication unit <NUM>) is communicable with the first management apparatus <NUM> using the first protocol, to mediate communication between the electronic apparatus <NUM> and the first management apparatus <NUM>.

The identification unit <NUM> identifies a protocol supported by the electronic apparatus <NUM>. Specifically, as described above, the information processing apparatus <NUM> can perform communication using the first protocol and the second protocol. In the following description, the first protocol and the second protocol may be collectively referred to as a "search protocol", to simplify the description. The information processing apparatus <NUM> tries, for each of the search protocols, to access the electronic apparatus <NUM> using the search protocol. The search protocol using which communication with the electronic apparatus <NUM> is identified as a protocol supported by the electronic apparatus <NUM>.

The acquisition unit <NUM> acquires, model information Dx indicating a type of the electronic apparatus <NUM> from each of the electronic apparatuses <NUM>. The model information Dx includes, for example, a model ID, a media access control (MAC) address, a model name, and a vendor name of the electronic apparatus <NUM>. In another example, the model information Dx includes any other suitable information. In the present embodiment, the third protocol is not included in the search program. The information processing apparatus <NUM> refers to the model information Dx acquired from the electronic apparatus <NUM> and determines whether the electronic apparatus <NUM> supports the third protocol. In another example, the third protocol is included in the search program.

The registration unit <NUM> registers a plurality of pieces of model information Dx of the electronic apparatuses <NUM> including the electronic apparatus 40a and the electronic apparatus 40b in the management apparatus. Specifically, the model information Dx of the electronic apparatus <NUM> managed by the first management apparatus <NUM> is registered in the first management apparatus <NUM>. Further, the model information Dx of the electronic apparatus <NUM> managed by the second management apparatus <NUM> is registered in the second management apparatus <NUM>. The management apparatus manages the electronic apparatus <NUM> using the registered model information Dx.

The determination unit <NUM> determines a management type according to the protocol identified by the identification unit <NUM>. In other words, the determination unit <NUM> determines a management type for the electronic apparatus <NUM> according to the protocol supported by the electronic apparatus <NUM>. The information processing apparatus <NUM> determines a management type according to information (type and data amount) exchanged between the electronic apparatus <NUM> and the management apparatus in addition to the protocol supported by the electronic apparatus <NUM> (see <FIG>). The details are described below.

In another example, the management type is determined regardless of the information exchanged between the electronic apparatus <NUM> and the management apparatus. The setting unit <NUM> sets a communication path for the electronic apparatus <NUM> to communicate with the management apparatus according to the management type determined by the determination unit <NUM>. The storage unit <NUM> stores a management database DB (see <FIG> described below) including the determined management type. The communication unit <NUM> is implemented by, for example, the network I/F <NUM> operating under control of the CPU <NUM> executing the program. Each of the identification unit <NUM>, the acquisition unit <NUM>, the registration unit <NUM>, the determination unit <NUM>, and the setting unit <NUM> is implemented by, for example, the CPU <NUM> executing the program. The storage unit <NUM> is implemented by, for example, HD <NUM>.

<FIG> is a diagram illustrating specific examples of the communication paths for the respective management types. In <FIG>, the electronic apparatus 40a, the electronic apparatus 40b, and the electronic apparatus 40c are illustrated among the electronic apparatuses <NUM>. In <FIG>, an arrow marked with a symbol "P1" indicates a communication path using the first protocol. An arrow marked with a symbol "P3" in <FIG> indicates a communication path using the third protocol. As described above, the first management apparatus <NUM> performs communication using the first protocol, and the second management apparatus <NUM> performs communication using the third protocol.

The information processing apparatus <NUM> determines any one of the management types A, the management type B, and the management type C according to a protocol supported by the electronic apparatus <NUM>. For example, when the electronic apparatus <NUM> supports the first protocol and does not support the third protocol, the information processing apparatus <NUM> determines the management type A. The information processing apparatus <NUM> determines the management type according to information (type or data amount) communicated between the electronic apparatus <NUM> and the management apparatus. For example, the electronic apparatus <NUM> is assumed that transmits a request for consumables to the first management apparatus <NUM> when consumables such as ink of the MFP run out. The management type A is determined as a management type for such the electronic apparatus <NUM>. Further, the management type A is determined as a management type for the electronic apparatus <NUM> that transmits counter information to the first management apparatus <NUM> once a day.

In the specific example of <FIG>, it is assumed that the management type A is determined as a management type for the electronic apparatus 40a. In response to the determination of the management type A, the electronic apparatus <NUM> communicates with the first management apparatus <NUM>. Specifically, the electronic apparatus <NUM> for which the management type A is determined communicates with the information processing apparatus <NUM> using the first protocol. The information processing apparatus <NUM> transmits information, such as a request for consumables or counter information, received from the electronic apparatus <NUM> to the first management apparatus <NUM> using the first protocol. In other words, the electronic apparatus <NUM> of the management type A communicates with the first management apparatus <NUM> via the information processing apparatus <NUM>.

When the electronic apparatus <NUM> supports both the first protocol and the third protocol, the information processing apparatus <NUM> determines the management type B. Further, in a case that the electronic apparatus <NUM> transmits the request for consumables and/or the counter information to the first management apparatus <NUM> and transmits various information such as condition information to the second management apparatus <NUM> in real time, the information processing apparatus <NUM> determines the management type B.

In the specific example of <FIG>, it is assumed that the management type B is determined as a management type for the electronic apparatus 40b. In response to the determination of the management type B, the electronic apparatus <NUM> communicates with the first management apparatus <NUM> and the second management apparatus <NUM>. Specifically, the electronic apparatus <NUM> for which the management type B is determined communicates with the information processing apparatus <NUM> using the first protocol. The information processing apparatus <NUM> transmits information, such as the request for consumables or the counter information, received from the electronic apparatus <NUM> to the first management apparatus <NUM> using the first protocol. Further, the electronic apparatus <NUM> of the management type B transmits the information to the second management apparatus <NUM> in real time using the third protocol. In other words, the electronic apparatus <NUM> and the second management apparatus <NUM> are constantly connected with the third protocol.

As understood from the above description, the electronic apparatus <NUM> of the management type B communicates with the first management apparatus <NUM> via the information processing apparatus <NUM> and communicates with the second management apparatus <NUM> without intervening the information processing apparatus <NUM>. It is assumed that the electronic apparatus <NUM> of management type B transmits and receives all information to and from the management apparatus via the information processing apparatus <NUM>. In this case, inconvenience that an amount of data transmitted and received by the information processing apparatus <NUM> is excessive is likely to occur. Such inconvenience is likely to become apparent when various kinds of information are transmitted and received in real time. In the present embodiment, the electronic apparatus <NUM> of the management type B communicates with the management apparatus without intervening the information processing apparatus <NUM> when transmitting and receiving information in real time. This brings about an advantage that the inconvenience described above is reduced or eliminated.

When the electronic apparatus <NUM> does not support the first protocol and supports the second protocol and the third protocol, the information processing apparatus <NUM> determines the management type C. Further, the information processing apparatus <NUM> determines the management type C, in a case that the electronic apparatus <NUM> does not have to communicate with the first management apparatus <NUM>. Examples of the case that the electronic apparatus <NUM> does not have to communicate with the first management apparatus <NUM> include, but are not limited to, a case that the second management apparatus <NUM> has a function of the first management apparatus <NUM> that the electronic apparatus <NUM> needs. In the specific example of <FIG>, it is assumed that the management type C is determined for the electronic apparatus 40c. In response to the determination of the management type C, the electronic apparatus <NUM> communicates with the second management apparatus <NUM>. Specifically, the electronic apparatus <NUM> for which the management type C is determined transmits information to the second management apparatus <NUM> in real time using the third protocol.

The above-described management types are merely examples, and, in another example, any other suitable management types are provided. For example, a management type is provided in which the electronic apparatus <NUM> directly communicates with the first management apparatus <NUM> (without intervening the information processing apparatus <NUM>) using the first protocol and directly communicates with the second management apparatus <NUM> using the third protocol.

<FIG>are diagrams each illustrating a specific example of an operation for setting a communication path from the electronic apparatus <NUM> to the management apparatus. <FIG> illustrates steps (Sx, Sy) performed for setting a communication path for one electronic apparatus 40d. Actually, these steps are also performed on other electronic apparatuses <NUM> to set communication paths for other electronic apparatuses <NUM> respectively.

As described above, when setting a communication path from the electronic apparatus <NUM> to the management apparatus, the information processing apparatus <NUM> identifies a protocol supported by the electronic apparatus <NUM>. Specifically, the information processing apparatus <NUM> tries, for each of the search protocols (P1 and P2), to access the electronic apparatus <NUM> using the search protocol (Sx1 in <FIG>). The information processing apparatus <NUM> determines, for each of the search protocols, whether the search protocol is supported by the electronic apparatus <NUM>, depending on whether an access to the electronic apparatus <NUM> is successful.

One or more of the search protocols using which the information processing apparatus <NUM> succeeds in communicating with the electronic apparatus <NUM> is identified as a protocol supported by the electronic apparatus <NUM>. Information indicating whether or not the search protocols are supported is registered in the management database DB (see <FIG>). In response to identifying the protocol supported by the electronic apparatus <NUM>, the information processing apparatus <NUM> communicates with the electronic apparatus <NUM> using the identified protocol to acquire the model information Dx (Sx2 in <FIG>). The model information Dx is registered in the management database DB for each or the electronic apparatuses <NUM>. Further, the information processing apparatus <NUM> refers to the model information Dx, to determine whether the electronic apparatus <NUM> supports the third protocol. Information indicating whether the electronic apparatus <NUM> supports the third protocol is registered in the management database DB for each of the electronic apparatuses <NUM>.

As illustrated in <FIG>, the information processing apparatus <NUM> transmits registration information Dt to the first management apparatus <NUM> (Sy1 in <FIG>). The registration information Dt includes, for example, the model information Dx acquired from the electronic apparatus <NUM>. The first management apparatus <NUM> registers (stores) the registration information Dt, and transmits the registration information Dt of the electronic apparatus <NUM> managed by the first management apparatus <NUM> to the second management apparatus <NUM> (Sy2 in <FIG>). The registration in). In response to registering the registration information Dt, the second management apparatus <NUM> transmits transmission destination information Dy (Sy3 in <FIG>). The registration in).

The transmission destination information Dy transmitted from the second management apparatus <NUM> includes, for example, information that specifies various settings such as proxy settings and the like for communication with the second management apparatus <NUM>, a uniform resource locator (URL) group of the second management apparatus <NUM>, and a certificate. The transmission destination information Dy is received by the information processing apparatus <NUM> via the first management apparatus <NUM>. The information processing apparatus <NUM> updates the management database DB according to the transmission destination information Dy.

As described above, the information processing apparatus <NUM> determines the management types according to a protocol supported by the electronic apparatus <NUM>, as describe above with reference to <FIG>. In response to the determination of the management type, the information processing apparatus <NUM> transmits an instruction C corresponding to the determined management type to the electronic apparatus <NUM> (Sy4 in <FIG>). The registration in). For example, it is assumed that a management type for the electronic apparatus <NUM> is the management type A. In this case, the information processing apparatus <NUM> transmits the instruction C including a URL required for communication with the information processing apparatus <NUM> to the electronic apparatus <NUM>. In response to receiving the instruction C, the URL required for communication with the information processing apparatus <NUM> is set in the electronic apparatus <NUM>. This enables the electronic apparatus <NUM> of the management type A to communicate with the first management apparatus <NUM> via the information processing apparatus <NUM>.

Further, for example, it is assumed that a management type for the electronic apparatus <NUM> is the management type B. In this case, the information processing apparatus <NUM> transmits, to the electronic apparatus <NUM>, the instruction C including an URL required for communication with the information processing apparatus <NUM> and transmission information Dy required for communication with the second management apparatus <NUM>. In response to receiving the instruction C, the URL required for communication with the information processing apparatus <NUM> and the transmission information Dy required for communication with the second management apparatus <NUM> are set in the electronic apparatus <NUM>. This enables the electronic apparatus <NUM> of the management type B to communicate with the first management apparatus <NUM> via the information processing apparatus <NUM> and directly communicate with the second management apparatus <NUM>.

Furthermore, for example, it is assumed that a management type for the electronic apparatus <NUM> is the management type C. In this case, the information processing apparatus <NUM> transmits the instruction C including the transmission information Dy required for communication with the second management apparatus <NUM> to the electronic apparatus <NUM>. In response to receiving the instruction C, the transmission information Dy required for communication with the second management apparatus <NUM> is set in the electronic apparatus <NUM>. This enables the electronic apparatus <NUM> of the management type C to directly communicate with the second management apparatus <NUM>.

<FIG> is a table illustrating an example of a data structure of the management database DB. The specific example of <FIG> illustrates the management database DB for which the registration of the protocol, the model information Dx, and the transmission destination information Dy corresponding to each of the electronic apparatuses <NUM> has been performed.

As illustrated in <FIG>, the management database DB includes, for each of the electronic apparatuses <NUM>, a device ID, an Internet protocol (IP) address, a MAC address, a model name, and a vendor name. These information items are registered based on the model information Dx acquired from each of the electronic apparatuses <NUM>. Further, in the management database DB, information indicating whether each of the first protocol to the third protocol is supported is stored for each of the electronic apparatuses <NUM>. Furthermore, in the management database DB, a management type of the electronic apparatus <NUM> is stored for each of the electronic apparatuses <NUM>. Furthermore, in the management database DB, the communication destination required for communication with the second management apparatus <NUM> is stored for each of the electronic apparatuses <NUM>. These communication destinations are registered based on the communication destination information Dy described above.

<FIG> is a sequence diagram illustrating a specific example of an operation performed by the information processing apparatus <NUM>. In response to receiving an input of a setting instruction for setting a communication path of an electronic apparatus (step S <NUM>), the information processing apparatus <NUM> sets the search protocols (step S2). The setting instruction is automatically input, for example, when the electronic apparatus <NUM> newly becomes communicable with the information processing apparatus <NUM>. In another example, the setting instruction is input from the electronic apparatus <NUM> to the information processing apparatus <NUM> in response to any suitable operation to the electronic apparatus <NUM>. In still another example, processes of step S2 and subsequent steps are performed in response to any suitable operation to the information processing apparatus <NUM>.

After the setting of the search protocols, the information processing apparatus <NUM> accesses the electronic apparatus 40a using the search protocols (step S3a). Next, the information processing apparatus <NUM> performs an identification process (step S4a). In the identification process, the information processing apparatus <NUM> identifies a protocol supported by the electronic apparatus 40a based on whether the information processing apparatus succeeds in accessing the electronic apparatus 40a in the step S3a. The information processing apparatus <NUM> transmits a request instruction for the model information Dx to the electronic apparatus 40a using the protocol identified in the identification process (step S5a). In response to receiving the request instruction, the electronic apparatus 40a transmits the model information Dx to the information processing apparatus <NUM> (step S6a). The information processing apparatus <NUM> updates the management database DB to reflect the model information Dx transmitted in step S6a.

The information processing apparatus <NUM> performs the processes of the steps S3 a to step S6a performed on the electronic apparatus 40a on the electronic apparatuses <NUM> other than the electronic apparatus 40a. In <FIG>, it is assumed that processes of step S3b to step S6b are performed on the electronic apparatus 40b (a part of the electronic apparatuses <NUM> other than the electronic apparatus 40a). The information processing apparatus <NUM> performs the processes of the above steps on all of the electronic apparatuses <NUM>. Then, the operation proceeds to a determination process of step S7.

In the determination process, the information processing apparatus <NUM> determines a management type for each of the electronic apparatuses <NUM>. Specifically, in the determination process, the information processing apparatus <NUM> determines a management type for the electronic apparatus <NUM> according to the protocol supported by the corresponding electronic apparatus <NUM>. After performing the determination process, the information processing apparatus <NUM> transmits instructions including an instruction Ca and an instruction Cb, each instructions instructing to set a communication path, to the electronic apparatuses <NUM> respectively (steps S8a, S8b. In another example, the timing at which each of the processes is performed is changed as appropriate.

Note that the apparatus that performs each of the above processes may be appropriately changed. Each of the above-described functions such as the communication unit <NUM> is implemented by, for example, one or more processing circuits or circuitry. Processing circuitry in this disclosure includes a programmed processor, as a processor includes circuitry. A processing circuit also includes devices such as an application specific integrated circuit (ASIC), a digital signal processor (DSP), a field programmable gate array (FPGA), and conventional circuit components arranged to perform the recited functions.

The apparatuses or devices described in each embodiment are merely one example of multiple computing environments that implement one or more embodiments disclosed herein. In some embodiments, information processing apparatus <NUM> includes multiple computing devices, such as a server cluster. The multiple computing devices communicate with one another through any type of communication link including, for example, a network or a shared memory, and performs the operations described in the present disclosure. In substantially the same manner, for example, the management apparatus includes such multiple computing devices configured to communicate with one another. In another example, each element of the information processing apparatus <NUM> and the management apparatus is integrated into one server apparatus or is divided into a plurality of devices.

In one example, the information processing apparatus <NUM> changes a communication path between the electronic apparatus <NUM> and the management apparatus (a management type of the electronic apparatus <NUM>) according to a status of the electronic apparatus <NUM>. For example, when an amount of information transmitted from the electronic apparatus <NUM> to the management apparatus is smaller than a predetermined threshold value, the electronic apparatus <NUM> communicates with the management apparatus via the information processing apparatus <NUM>. By contrast, for example, when the amount of information transmitted from the electronic apparatus <NUM> to the management apparatus is larger than a predetermined threshold value, the electronic apparatus <NUM> communicates with the management apparatus intervening the information processing apparatus <NUM>.

In one example, the management type of the electronic apparatus <NUM> is designated by appropriately operating an apparatus external to the information processing apparatus <NUM>. Examples of the apparatus external to the information processing apparatus <NUM> include, but are not limited to, the electronic apparatus <NUM> and the management apparatus. In this example, the designated management type is registered in the information processing apparatus <NUM>, and the information processing apparatus <NUM> sets a communication path for the electronic apparatus <NUM> to communicate with the management apparatus according to the registered management type.

The above-described embodiments are illustrative and do not limit the present invention. Thus, numerous additional modifications and variations are possible in light of the above teachings. For example, elements and/or features of different illustrative embodiments may be combined with each other and/or substituted for each other within the scope of the present invention as defined by the claims.

Claim 1:
An information processing apparatus (<NUM>, <NUM>) comprising:
a communication unit (<NUM>) configured to communicate with an electronic apparatus (400a, 400b, 40a, 40b) according to a plurality of protocols;
an identification unit (<NUM>) configured to identify a particular protocol supported by the electronic apparatus among the plurality of protocols;
a determination unit (<NUM>) configured to determine a management type based on the particular protocol identified by the identification unit (<NUM>); and
a setting unit (<NUM>) configured to set a communication path through which the electronic apparatus communicates with a management apparatus (<NUM>, <NUM>, <NUM>, <NUM>) based on the management type determined by the determination unit (<NUM>).