Source server and method

The server system with a tree structure and parallel processing of application and function migration addresses the challenges of redundant systems and long migration times, ensuring continuous operation and reduced hardware needs during updates.

JP2025182598APending Publication Date: 2025-12-15KK TOSHIBA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2024090256
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-06-03
Publication Date
2025-12-15

AI Technical Summary

Technical Problem

Existing methods for updating control systems require redundant systems, increasing hardware resources and costs, and migration of applications to new servers can take too long, potentially causing application operation to stop and disrupt the control system.

Method used

A server system with a tree structure and loosely coupled functional units allows applications to be migrated by parallel processing of application and function migration, using communication units to manage and execute tasks efficiently, ensuring continuous operation.

Benefits of technology

Enables seamless application migration without stopping operations, reducing hardware requirements and maintaining system continuity during updates.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025182598000001_ABST
    Figure 2025182598000001_ABST
Patent Text Reader

Abstract

To migrate an application performed at a constant cycle without stopping.SOLUTION: A source server according to an embodiment is divided into a plurality of function units which are loosely coupled to each other, and holds an application which operates at a constant cycle. Each of the plurality of function units includes: a function communication receiving unit which receives first application processing information required for first application processing; a function processing execution unit which performs the first application processing; a function communication transmitting unit which determines a third function unit as a destination of second application processing information when a connection with the third function unit activated on the destination server is established, and transmits an execution result of the first application processing as the second application processing information; a transition communication receiving unit which receives address information for identifying the destination of the second application processing information from the third function unit activated on the destination server; and a transition processing execution unit which establishes a connection with the third function unit based on the address information.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] SUMMARY OF THE INVENTION Embodiments of the present invention relate to a source server and method. [Background technology]

[0002] Traditionally, social infrastructure systems and industrial systems (hereafter referred to as control systems) have been used, operating without rest. When control systems are in operation, dedicated applications run on servers and other devices at regular intervals. The operating systems and hypervisors used by these servers and other devices for virtualization need to be updated periodically. It is desirable for these updates to be carried out without interrupting the operation of the control system.

[0003] One method for updating a control system in operation is to use redundancy, where a control system with the same configuration as the active control system is placed on standby in advance and then switched to the standby control system when the update is performed. However, redundancy requires that dual systems, an active system and a standby system, be prepared at all times, which increases the required hardware resources and costs. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2006-079558 [Patent Document 2] Japanese Patent Application Laid-Open No. 2015-170325 Summary of the Invention [Problem to be solved by the invention]

[0005] Therefore, a method has been proposed in which an application can be migrated from a server on which a control system runs to another server. For example, when updating a hypervisor, the application is migrated to a server on which an updated hypervisor is built, and the control system is taken over by the other server.

[0006] However, when migrating an application to another server, the migration process may take a long time. If the migration process takes a long time, the application operation may have to wait for a while to start, and the application operation process may not be completed within one cycle. If the application migration process and the application operation process are not completed within one cycle, the application operation will stop, and as a result, the operation of the control system will also stop.

[0007] The embodiment of the present invention provides a source server and a method that can migrate applications that are executed at regular intervals without stopping the applications. [Means for solving the problem]

[0008] A source server of an embodiment is a server system including a plurality of servers connected in a tree structure among a plurality of hierarchical levels, at least one of the plurality of servers being a source server and a destination server connected to the source server, the source server being included in a server system, the source server being divided into a plurality of functional units loosely coupled to each other and including an application holding unit for holding an application that operates at a fixed cycle, each of the plurality of functional units being configured by a program, a first functional unit of the plurality of functional units having a function processing unit that performs processing necessary for the operation of the application, and a migration processing unit that performs processing for migrating the application to the destination server, the function processing unit having a function communication receiving unit that receives first application processing information necessary for first application processing executed by operation of the first functional unit from a second functional unit that communicates with the first functional unit among the plurality of functional units or a server of a lower hierarchical level among the plurality of servers, and a migration processing unit that executes the first application processing based on the first application processing information. and a function communication sending unit that sends the execution result of the first application process as second application processing information required for second application processing executed by operation of the third function unit, to a destination that is a third function unit among the plurality of function units that communicates with the first function unit. The migration processing unit includes a migration communication receiving unit that receives, when the third function unit is activated on the destination server, first address information that specifies a destination of the second application processing information from the third function unit in the destination server, and a migration processing execution unit that executes communication connection processing to establish a connection with the third function unit in the destination server based on the address information. When the function communication sending unit receives connection information from the migration processing execution unit that is a result of the communication connection processing and indicates that the connection has been established, it determines the third function unit in the destination server as the destination of the second application processing information. [Brief explanation of the drawings]

[0009] [Figure 1] FIG. 1 is a diagram illustrating an example of the configuration of a server system according to the first embodiment. [Figure 2] FIG. 2 is a diagram illustrating an example of the hardware configuration of a subordinate server according to the first embodiment. [Figure 3] FIG. 3 is a diagram illustrating an example of the functional configuration of functions held in a subordinate server according to the first embodiment. [Figure 4] FIG. 4 is a flowchart illustrating an outline of the processing executed in the subordinate server of the first embodiment. [Figure 5] FIG. 5 is an example of a sequence illustrating the initial startup process in the first embodiment. [Figure 6] FIG. 6 is an example of a sequence illustrating a communication connection process between functions in the first embodiment. [Figure 7] FIG. 7 is an example of a sequence illustrating application processing in the first embodiment. [Figure 8] FIG. 8 is an example of a sequence illustrating a process required for function migration in the first embodiment. [Figure 9] FIG. 9 is an example of a sequence illustrating a process required for function migration in the first embodiment. [Figure 10] FIG. 10 is a diagram illustrating an example of the functional configuration of functions held in a subordinate server according to the second embodiment. [Figure 11] FIG. 11 is an example of a sequence illustrating the initial activation process of a function in the second embodiment. [Figure 12] FIG. 12 is a diagram illustrating application processing in the second embodiment. [Figure 13] FIG. 13 is a diagram illustrating application processing in the second embodiment. [Figure 14] FIG. 14 is a diagram illustrating application processing in the second embodiment. [Figure 15] FIG. 15 is a diagram illustrating application processing in the second embodiment. [Figure 16]FIG. 16 is an example of a sequence illustrating a process required for function migration in the second embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0010] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

[0011] A server system according to an embodiment of the present invention is a system having a function of supporting updates to control systems such as social infrastructure systems and industrial systems. Here, a control system refers to software such as an operating system (OS) required for managing transportation fees and application programs running on the OS. As described above, dedicated applications run in a control system. An application is a collection of programs capable of executing various processes related to the control system. Various processes related to the control system can be realized by applications running periodically on a physical server or a virtual server. In the server system according to the embodiment, for example, an ETC toll collection system for roads operates as a control system. That is, the server system according to the embodiment is a system having a function of supporting updates to road toll systems.

[0012] [Embodiment 1] The first embodiment will be described with reference to FIGS.

[0013] FIG. 1 is a diagram showing an example of the configuration of a server system S according to the first embodiment.

[0014] 1, the server system S of the first embodiment includes a plurality of servers connected in a tree shape across a plurality of hierarchical levels (hereinafter, these plurality of servers may be collectively referred to as a plurality of servers MS). Specifically, the plurality of servers MS has a configuration in which upper level servers B1a to Bka (k is an integer equal to or greater than 1) are connected to a lower level of a top level server A0, middle level servers C1 to Cm (m is an integer equal to or greater than 1) are connected to a lower level of the upper level servers B1a to Bka, and lower level servers D1 to Dn (n is an integer equal to or greater than 1) are connected to a lower level of the plurality of middle level servers C1 to Cm.

[0015] The subordinate servers D1 to Dn are installed at ETC gates EG1 to EGv (v is an integer equal to or greater than 1) at toll booths and ETC free-flow gates FG1 to FGw (w is an integer equal to or greater than 1) installed along the main roads, and are servers that collect information from these gates. Specifically, the subordinate servers D1 to Dn acquire vehicle information from the on-board units of vehicles passing through ETC gates, etc. The vehicle information includes the on-board unit ID, ETC card information, etc. The vehicle information acquired by the subordinate servers D1 to Dn is associated with, for example, information that identifies the ETC gates EG1 to EGv and gates FG1 to FGw, respectively, and is transmitted to the middle level servers C1 to Cm and to the upper level servers B1a to Bka via the middle level servers C1 to Cm. The subordinate servers D1 to Dn are installed, for example, at each toll booth.

[0016] The middle level servers C1 to Cm are servers that acquire information that associates vehicle information with information that identifies ETC gates EG1 to EGv and gates FG1 to FGw, respectively, from the lower level servers D1 to Dn, and aggregate driving route information that identifies the driving route for each vehicle. The middle level servers C1 to Cm store a driving route information database (hereinafter, may be referred to as driving route information DB) that aggregates the driving route information in each of the storage devices CS105 to CSm05. The middle level servers C1 to Cm are installed, for example, in each city, town, and village.

[0017] The upper level servers B1a to Bka are servers that calculate discounts for each vehicle in cooperation with a travel route information DB and a discount route information database (hereinafter sometimes referred to as a discount route information DB) that specifies transportation fare discount information for each route. The upper level servers B1a to Bka store the discount route information DB and the results of discount calculations in storage devices DS105a to DSk05a, respectively. The upper level servers B1a to Bka are installed, for example, in each prefecture.

[0018] The top-level server A0 is a server that compiles the results of discount calculations and works in conjunction with the toll management system. The top-level server A0 is a server shared by all road operators. For example, one top-level server A0 is installed nationwide.

[0019] As described above, dedicated applications run in the ETC toll collection system. To run these applications, the top-level server A0, the top-level servers B1 to Bk, the middle-level servers C1 to Cm, and the lower-level servers D1 to Dn each execute various application processes. That is, the ETC toll collection system operates by executing various application processes in the top-level server A0, the top-level servers B1 to Bk, the middle-level servers C1 to Cm, and the lower-level servers D1 to Dn. The application processes include, for example, collection of ETC card information in the lower-level servers D1 to Dn, linking of vehicle information with ETC card information, and aggregation of driving route information in the middle-level servers C1 to Cm.

[0020] Each of the top-level server A0, upper level servers B1-Bk, middle level servers C1-Cm, and lower level servers D1-Dn receives application processing information required for application processing from a server in a lower hierarchical level (in the case of the lower level servers D1-Dn, ETC gates EG1-EGv and ETC free flow gates FG1-FGw). Then, based on the application processing information, the server executes the application processing and transmits the execution results to a server in a higher hierarchical level. Note that each of the top-level server A0, upper level servers B1-Bk, middle level servers C1-Cm, and lower level servers D1-Dn may communicate with each other not only between upper and lower hierarchical levels, but also within a hierarchical level, or across hierarchical levels.

[0021] The first embodiment is an embodiment that assumes an example in which the control system is updated by replacing the physical server of the lower server D1, among the above-mentioned multiple servers MS, with a new server due to aging or the like.

[0022] Specifically, in the first embodiment, when updating the control system, a new lower server N1 is installed at the same hierarchical level as the lower server D1. Then, an application is migrated from the lower server D1 as the source server to the lower server N1 as the destination server. After the application is migrated, the control system starts operating on the lower server N1. Once the control system starts operating on the lower server N1, the lower server D1 is disconnected from the multiple servers MS. In this way, the control system is updated. In the first embodiment, the lower server N1 is a server other than the multiple servers MS.

[0023] FIG. 2 is a diagram illustrating an example of the hardware configuration of the subordinate servers D1 and N1 according to the first embodiment.

[0024] The lower server D1 is a source server from which an application is migrated to the lower server N1. A control system is currently running on the lower server D1. The lower server D1 is configured to include a physical server DS10, a hypervisor DS11 installed on the physical server DS10, and a virtual server DS12. The platform on the physical server DS10 may be an OS.

[0025] The physical server DS10 is a computer equipped with physical hardware resources. The physical server DS10 includes a processor DS101 such as a CPU, a storage unit DS102 such as a RAM or ROM, a communication unit DS103, and a storage device DS105 such as an HDD or SSD. The processor DS101 builds a virtual server DS12 on the physical server DS10 by, for example, reading and executing a hypervisor DS11 program from the storage unit DS102. The communication unit DS103 communicates with the subordinate server N1. The storage device DS105 is configured to be able to store execution results of application processing on the subordinate server D1, etc.

[0026] The virtual server DS12 includes an application storage unit DS131a and a function group management unit 200d as functional units.

[0027] The application storage unit DS131a is a processing unit capable of storing applications. As described above, an application is a collection of programs capable of executing various processes related to the ETC toll collection system for roads. In the application storage unit DS131a, applications are stored in a state in which they are divided into programs corresponding to the purpose of the process. Each divided application operates in a certain order and executes various application processes. Each divided application is loosely coupled to each other. Hereinafter, divided applications will be referred to as a "function." In other words, each of the multiple functions is composed of a program. Furthermore, a function is an example of a functional unit.

[0028] In this embodiment, loose coupling refers to a state of coupling in which the connections between functions and their mutual associations are relatively low, and each function is highly independent. Each of the multiple functions is divided so that the data passed between the functions is in a single format, so that the data referenced or output when each function operates can be passed between the functions in a simple format.

[0029] As shown in FIG. 2, the application storage unit DS131a stores functions F1a to Fma (m is an integer equal to or greater than 1). Function F1a is a function that executes, for example, a process of linking ETC card information with a toll gate identifier. Function F2a is a communication destination function that operates in response to the execution result of function F1a, and is a function that identifies a vehicle passing through a specific toll gate and processes a discount for that vehicle. The various application processes described above are executed by the operation of functions F1a to Fma. Functions F1a to Fma operate in a fixed order while communicating with each other. Each of functions F1a to Fma performs various communications with servers in upper and lower hierarchical levels and with functions of the communication source and communication destination in order to execute application processing. Hereinafter, the processing for executing such application processing may be referred to as processing necessary for application processing.

[0030] Furthermore, the functions F1a to Fma are loosely coupled. Therefore, the functions F1a to Fma can be migrated individually to the lower server N1. In order to migrate to the lower server N1, each of the functions F1a to Fma performs various communications with the lower server N1. Hereinafter, the processing for migrating such functions may be referred to as processing necessary for function migration. Furthermore, the function F1a is an example of a first functional unit, and the function F2a is an example of a third functional unit.

[0031] The functional group management unit 200d is a processing unit that controls the activation and deactivation of the functions F1a to Fma in the subordinate server D1. Details of the functional group management unit 200d will be described later.

[0032] The lower server N1 is a destination server that can accept the transfer of functions from the lower server D1 and take over the operation of the control system. The lower server N1 is configured to include a physical server NS10, a hypervisor NS11 installed on the physical server NS10, and a virtual server NS12. The physical server NS10, hypervisor NS11, and virtual server NS12 each have the same configuration as the physical server DS10, hypervisor DS11, and virtual server DS12 of the lower server D1, and therefore a description thereof will be omitted.

[0033] The virtual server NS12 includes an application storage unit NS131a and a function group management unit 200d as functional units.

[0034] The application storage unit NS131a is a processing unit capable of storing applications. Specifically, the application storage unit NS131a is configured to be able to store functions F1a to Fma transferred from the lower server D1. As an example, FIG. 2 shows a state in which function F2a, which is the communication destination of function F1a, is stored in the application storage unit NS131a. Function F2a has been transferred from the lower server D1. Based on this example, the following explanation will be continued assuming a case in which function F2a is migrated from the lower server D1 to the lower server N1.

[0035] The function group manager 200n is a processing unit that controls the activation and deactivation of the functions F1a to Fma in the subordinate server N1.

[0036] FIG. 3 is a diagram showing an example of the functional configuration of the functions held in the subordinate servers D1 and N1 of the first embodiment.

[0037] 3, each of the functions F1a to Fma includes a function processing unit having a function communication receiving unit, a function communication transmitting unit, and a function processing executing unit, and a transition processing unit having a transition communication receiving unit, a transition communication transmitting unit, and a transition processing executing unit as its functional units. That is, the functions F1a to Fma each have a corresponding functional configuration. Therefore, in this embodiment, the functional configuration of the function F1a will be mainly described, and the description of the functions F2a to Fma may be omitted as appropriate.

[0038] As shown in FIG. 3, the function F1a includes a function processing unit 10da and a transition processing unit 11da as functional units.

[0039] The function processing unit 10da is a processing unit for executing processes necessary for application processing, and includes a function communication receiving unit 101da, a function communication transmitting unit 102da, and a function processing executing unit 103da.

[0040] The function processing execution unit 103da is a processing unit that executes a first application process and transfers the execution result to the function communication transmission unit 102da. Specifically, the function processing execution unit 103da of the function F1a executes, for example, a process of linking ETC card information with a toll gate identifier as the first application process. That is, the first application process is an application process executed by the function processing execution unit 103da of the function F1a. The function processing execution unit 103da transfers the execution result of the first application process to the function communication transmission unit 102da.

[0041] Furthermore, the function processing execution unit 103da refers to first application processing information received from the function communication receiving unit 101da when performing the first application processing. The first application processing information is information necessary for the first application processing, such as ETC card information.

[0042] The function communication receiving unit 101da is a processing unit that receives first application processing information from a communication source function of function F1a among functions F1a to Fma, or from a lower-level server (ETC gates EG1 to EGv and ETC free flow gates FG1 to FGw in the case of lower-level servers D1 to Dn). Specifically, for example, the function communication receiving unit 101da receives ETC card information from ETC gate EG1. The function communication receiving unit 101da transfers the acquired ETC card information to the function processing executing unit 103da.

[0043] The function communication transmitter 102da is a processing unit that transmits the execution result of the first application process as second application process information to a communication destination function of function F1a among functions F1a to Fma, or to the lower server N1, or to a server in an upper hierarchical level. Specifically, the function communication transmitter 102da transmits the second application process information to either function F2a of the lower server D1 or function F2a activated on the lower server N1 as the destination of the second application process information. As a result, the second application process is executed in function F2a of the lower server D1 or function F2a of the lower server N1. The second application process is an application process that is executed by operating function F2a, and is, for example, a discount process for vehicles passing through a specific toll gate.

[0044] Here, the function communication transmitter 102da determines the destination of the second application processing information based on connection information indicating that a connection with the function F2a activated on the lower server N1 has been established. Specifically, when the function communication transmitter 102da receives connection information indicating that a connection with the function F2a has been established from the migration processor 11d, the function communication transmitter 102da determines the function F2 activated on the lower server N1 as the destination of the second application processing information based on address information received by the migration processor 11d from the function F2a. The address information will be described later.

[0045] The transition processing unit 11da is a processing unit for executing processing required for function transition, and includes, as functional components, a transition communication receiving unit 111da, a transition communication transmitting unit 112da, and a transition processing executing unit 113da.

[0046] The migration communication receiving unit 111da is a processing unit that receives information necessary to execute processing required for function migration. Specifically, the migration communication receiving unit 111da of the function F1a receives first address information that identifies the destination of the second application processing information from the function F2a of the lower server N1. The migration communication receiving unit 111da transfers the received address information to the migration processing execution unit 113da.

[0047] The first address information is the IP address of the function communication receiving unit 101dbb of the function F2 of the lower server N1, etc. The first address information is created in the migration processing execution unit 113dbb of the function F2 of the lower server N1, and is transmitted to the migration communication receiving unit 111da of the lower server D1 via the migration communication transmitting unit 112dbb of the function F2 of the lower server N1.

[0048] That is, the migration processing execution unit 113dbb of function F2 of the lower server N1 generates address information, and the migration communication transmission unit 112dbb of function F2 of the lower server N1 transmits the generated address information to the lower server D1. In other words, the migration processing execution unit 113dbb is a processing unit that executes processing necessary for function migration, and the migration communication transmission unit 112dbb is a processing unit that transmits information necessary for executing processing necessary for function migration.

[0049] The migration processing execution unit 113da is a processing unit that executes processing required for function migration. Specifically, the migration processing execution unit 113da executes communication connection processing with the function F2 activated on the subordinate server N1 based on the address information transferred from the migration communication receiving unit 111da. More specifically, the migration processing execution unit 113da executes communication connection processing with the function communication receiving unit 101dbb of the function F2a identified by the address information. When a connection with the function communication receiving unit 101dbb is established as a result of the communication connection processing, the migration processing execution unit 113da transfers the connection information to the function communication transmitting unit 102da.

[0050] As described above, by executing the processing required for application processing and the processing required for function migration in different processing units, the processing required for application processing and the processing required for function migration can be executed in parallel.

[0051] In the first embodiment, it is assumed that each of the functions F1a to Fma uses connection-type communication such as TCP (Transmission Control Protocol), but the communication method is not limited to connection-type communication. For example, connectionless communication such as UDP (User Datagram Protocol) or publish / subscribe communication such as MQTT (Message Queuing Telemetry Transport) may be used.

[0052] Fig. 4 is a flowchart outlining the processing executed by the subordinate servers D1 and N1 in embodiment 1. Only the overview is explained in Fig. 4, and the details of each step will be explained using Figs.

[0053] In step S1, the initial startup process of the functions F1a to Fma is executed, thereby establishing a connection between the processing units of the functions F1a to Fma.

[0054] In step S2, a communication connection process is performed between the functions F1a to Fma. This establishes a connection between the functions F1a to Fma. Hereinafter, the processes in steps S1 and S2 may be collectively referred to as a startup process. When the startup process of the functions F1a to Fma is completed, the next step S3 can be executed.

[0055] In step S3, the process required for application processing and the process required for function transition are performed. As described above, the process required for application processing and the process required for function transition can be performed in parallel.

[0056] 5 is an example of a sequence illustrating the initial startup process of a function in embodiment 1. Note that, from FIG. 5 onwards, for the sake of convenience, illustration of detailed configurations such as the configuration of function F2a and the configuration of subordinate server N1 may be omitted.

[0057] In step S11, the function group manager 200d transmits a start instruction to each of the functions F1a to Fma to start the functions F1a to Fma.

[0058] In step S12, when the function communication receiving unit 101da receives the activation instruction, it executes communication connection processing for the function processing executing unit 103da.

[0059] In step S13, the functional communication receiving unit 101da waits for reception.

[0060] In step S14, upon receiving the activation instruction, the function communication transmitting unit 102da executes communication connection processing for each of the function processing executing unit 103da and the transition processing executing unit 113da.

[0061] In step S15, the functional communication transmitting unit 102da waits for reception.

[0062] In step S18, upon receiving the activation instruction, the function processing execution unit 103da executes communication connection processing for the function communication receiving unit 101da and the function communication transmitting unit 102da.

[0063] In step S19, the function processing execution unit 103da waits for reception.

[0064] In step S20, upon receiving the start-up instruction, the transition communication receiving unit 111da executes a communication connection process for the transition process executing unit 113da.

[0065] In step S21, the transition communication receiving unit 111da waits for reception.

[0066] In step S22, upon receiving the start-up instruction, the transition communication transmitting unit 112da executes a communication connection process for the transition process executing unit 113da.

[0067] In step S23, the transition communication transmitting unit 112da waits for reception.

[0068] In step S24, upon receiving the activation instruction, the transition process execution unit 113da executes communication connection processing for the functional communication transmission unit 102da, the transition communication reception unit 111da, and the transition communication transmission unit 112da.

[0069] In step S25, the migration process execution unit 113da waits for reception. This completes the initial startup process of function F1a. As a result, connections are established between the processing units of function F1a, enabling communication between the processing units. Note that the processes corresponding to those described above are also performed in functions F2a to Fma.

[0070] The above-described communication connection process is a process for establishing a connection when communication is performed using TCP, but when communication is performed using shared memory, for example, the communication connection process is a process for allocating memory.

[0071] FIG. 6 is an example of a sequence illustrating a communication connection process between functions in the first embodiment.

[0072] In step S31, the function group management unit 200d transmits a connection connection notification instructing the execution of communication connection processing between functions to the function communication transmission unit 102da and the transition communication transmission unit 112da. Here, the function group management unit 200d transmits the connection connection notification based on an instruction input from outside, but the function group management unit 200d may also transmit the connection connection notification based on information received from the function group management unit 200n of the lower server N1, which indicates that the function F2a has been activated.

[0073] In step S32, the transition communication transmitting unit 112da performs a communication connection process for the function F2a of the lower server N1. When the connection with the function F2a of the lower server N1 is established, the function F1a becomes able to receive address information from the lower server N1.

[0074] In step S33, the transition communication transmitting unit 112da waits for reception.

[0075] In step S34, the function communication sending unit 102da starts a communication connection process with the function F2a of the lower server D1. When the connection with the function F2a of the lower server D1 is established, the function F1a becomes able to send second application processing information to the function F2a of the lower server D1. Note that the function communication sending unit 102da may also perform a communication connection process with the function F2a of the lower server N1.

[0076] In step S35, when a connection with the function F2a of the lower server D1 is established, the function communication transmitting unit 102da determines the function F2a of the lower server D1 as the destination of the second application processing information.

[0077] In step S36, the functional communication transmitting unit 102da waits for reception.

[0078] This completes the communication connection process between function F1a and function F2a. This completes the startup process for function F2a in the subordinate server D1 and function F2a in the subordinate server N1, enabling communication with function F1a of the subordinate server D1. Note that the processes corresponding to those described above are also performed for functions F2a to Fma.

[0079] FIG. 7 is an example of a sequence illustrating application processing in the first embodiment.

[0080] In step S41, the function communication receiving unit 101da receives first application processing information. Specifically, for example, the function communication receiving unit 101da receives ETC card information from an ETC gate EG1 or the like. Alternatively, for example, the function communication receiving unit 101da may receive the first application processing information from function F3a, which is the communication source of function F1a. Function F3a is an example of a second function unit.

[0081] In step S42, the function communication receiving unit 101da transfers the received first application processing information to the function processing executing unit 103da.

[0082] In step S43, the functional communication receiving unit 101da waits for reception.

[0083] In step S44, the function processing execution unit 103da executes the first application processing based on the first application processing information. Specifically, for example, the function processing execution unit 103da executes processing for linking the ETC card information with the tollgate identifier based on the ETC card information.

[0084] The function processing execution unit 103da may execute the application processing in response to the reception of the first application processing information from the function communication receiving unit 101da as a trigger, or may perform time management and execute the application processing periodically.

[0085] In step S45, the function processing execution unit 103da transfers the execution result of the first application processing to the function communication transmission unit 102da. Specifically, the function processing execution unit 103da transfers the processing result of linking the ETC card information with the toll gate identifier, i.e., information indicating that a specific vehicle has passed through a specific toll gate, to the function communication transmission unit 102da.

[0086] In step S46, the function processing execution unit 103da waits for reception.

[0087] In step S47, the function communication transmitter 102da transmits the execution result of the first application processing information as second application processing information to the function F2a of the lower server D1. Alternatively, for example, if the destination of the second application processing information has been updated to the function F2a of the lower server N1, the function communication transmitter 102da transmits the execution result of the first application processing information as second application processing information to the function F2a of the lower server N1. A method for updating the destination of the second application processing information will be described later.

[0088] In step S48, the functional communication transmitting unit 102da waits for reception.

[0089] 8 and 9 are examples of sequences illustrating the processing required for function migration in embodiment 1. Fig. 8 is a diagram illustrating the flow of sending and receiving address information among the processing required for function migration, and Fig. 9 is a diagram illustrating the flow of updating the destination of second application processing information based on the address information. The processing in Fig. 8 and Fig. 9 can be executed in parallel with the processing in Fig. 7.

[0090] 8, the function group management unit 200n of the lower server N1 transmits an address notification to the migration processing execution unit 113dbb of the function F2a of the lower server N1, instructing the migration processing execution unit 113dbb to notify the lower server D1 of the address information of the function communication receiving unit 101dbb of the function F2a. That is, the address notification serves as a trigger for transmitting the address information to the lower server D1.

[0091] In step S52, the migration process execution unit 113dbb of the function F2a of the lower server N1 creates address information, which is an IP address and a port number that identify the functional communication receiving unit 101dbb of the lower server N1.

[0092] In step S53, the migration process execution unit 113dbb of the function F2a of the subordinate server N1 transfers the created address information to the migration communication transmission unit 112dbb.

[0093] In step S54, the migration process execution unit 113dbb of the function F2a of the subordinate server N1 waits for reception.

[0094] In step S55, the transition communication transmitting unit 112dbb of the function F2a of the subordinate server N1 transmits the address information to the transition communication receiving unit 111da of the function F1a of the subordinate server D1.

[0095] In step S56, the transition communication transmitting unit 112dbb of the function F2a of the subordinate server N1 waits for reception.

[0096] If there are a plurality of functions that transmit second application processing information to the function F2a as the communication source of the function F2a, the transition communication transmitting unit 112dbb transmits the first address information to all transition processing units of the function.

[0097] In step S57 of FIG. 9, the transition communication receiving unit 111da of the function F1a of the subordinate server D1 receives the first address information.

[0098] In step S58, the migration communication receiving unit 111da of the function F1a of the subordinate server D1 transfers the received first address information to the migration processing executing unit 113da.

[0099] In step S59, the transition communication receiving unit 111da of the function F1a of the subordinate server D1 waits for reception.

[0100] In step S60, the migration process execution unit 113da starts communication connection processing with the function communication receiving unit dbb of the function F2a of the subordinate server N1.

[0101] In step S61, when a connection is established with the function communication receiving unit dbb of the function F2a, the transition processing executing unit 113da transfers the connection information to the function communication transmitting unit 102da.

[0102] In step S62, the migration process execution unit 113da waits for reception.

[0103] In step S63, the functional communication transmitting unit 102da receives the connection information.

[0104] In step S64, the function communication transmitter 102da updates the destination of the second application processing information based on the connection information and the first address information received by the transition communication receiver 111da. Specifically, the function communication transmitter 102da determines to change the destination of the second application processing information from function F2a of the lower server D1 to the function communication receiver dbb of function F2a of the lower server N1.

[0105] In step S64, if the destination of the second application processing information is updated to function F2a of the lower server N1, the function communication sending unit 102da will send the second application processing information to the function communication receiving unit 101dbb of function F2a of the lower server N1, as described in step S47 of Figure 7.

[0106] After the process of step S64, the function communication sending unit 102da may notify the function group management unit 200d that the update of the destination of the second application processing information has been completed. Then, the function group management unit 200d may stop the function F2a of the lower server D1. This completes the migration of the function F2a.

[0107] In step S65, the functional communication transmitting unit 102da waits for reception. This is the end of the first embodiment.

[0108] [Summary] The lower server D1 of the first embodiment holds an application divided into multiple functions that are loosely coupled to each other, and among the multiple functions, function F1a has a function processing unit 10da that performs application processing and a migration processing unit 11da that performs processing to migrate the function to the lower server N1. The function processing unit 10da includes a function communication receiving unit 101da that receives first application processing information, a function processing execution unit 103da that executes the first application processing based on the first application processing information, and a function communication sending unit 102da that, when a connection with function F2a of the lower server N1 is established, determines function F2a of the lower server N1 as a destination of second application processing information and sends the execution result of the first application processing to function F2a as second application processing information. In addition, the migration processing unit 11da includes a migration communication receiving unit 111da that receives address information identifying the destination of the second application processing information from the function F2a activated on the lower server N1, and a migration processing execution unit 113da that executes communication connection processing with the function F2a of the lower server N1 based on the address information.

[0109] In this way, the processing unit that performs the processing necessary for application processing and the processing unit that performs the processing necessary for function migration communicate with the other processing units individually to perform their respective processing. This allows the processing necessary for application processing and the processing necessary for function migration to be performed in parallel. This makes it possible to more reliably complete application processing and function migration within a fixed period. As a result, it becomes possible to perform function migration without stopping applications operating in the vicinity.

[0110] [Embodiment 2] The second embodiment will be described with reference to Figures 10 to 16. Note that from Figure 10 onwards, when a configuration similar to or corresponding to that of the first embodiment is provided, such as function F2b, the description thereof may be omitted.

[0111] The second embodiment is an embodiment that describes a function communication distribution unit 104da. The function communication distribution unit 104da can determine the destination of the first application processing information to either the lower server D1 or the lower server N1 based on whether the function activation process has been completed in the lower server N1.

[0112] In the above-described first embodiment, an example is assumed in which function F2a, which is the communication destination of function F1a, is migrated to a lower-level server N1, and the functional configuration of function F1a is mainly described. In contrast, the following second embodiment assumes an example in which function F1b is migrated to a lower-level server N1. In the second embodiment, function F1b receives first application processing information from two functions, function F3b and function F4b.

[0113] FIG. 10 is a diagram showing an example of the functional configuration of the functions held in the subordinate servers D1 and N1 of the second embodiment.

[0114] 10, the application holding unit DS131b holds functions F1b to Fmb (m is an integer equal to or greater than 1). Although some of the functions F1b to Fmb are not shown, each of the functions F1b to Fmb also includes, as its functional units, a function processing unit having a function communication receiving unit, a function communication transmitting unit, and a function processing executing unit, and a transition processing unit having a transition communication receiving unit, a transition communication transmitting unit, and a transition processing executing unit.

[0115] The application storage unit NS131b is configured to be able to store functions F1b to Fmb. As an example, Fig. 10 shows a state in which function F1b is stored in the application storage unit NS131b. Function F1b has been transferred from the lower-level server D1.

[0116] The function processing unit 10da of the function F1b of the application holding unit DS131b has a function communication receiving unit 101da, a function communication transmitting unit 102da, a function processing executing unit 103da, and a function communication sorting unit 104da.

[0117] The function communication receiving unit 101da receives the first application processing information from the functions F3a and F4a, and transfers the received first application processing information to the function communication sorting unit 104da.

[0118] The functional communication distribution unit 104da is a processing unit that determines whether to transfer the first application processing information transferred from the functional communication receiving unit 101da to the functional processing execution unit 103da of the lower server D1 or to the lower server N1. The functional communication distribution unit 104da determines whether or not a transfer notification has been received from the lower server N1, and makes the above-mentioned transfer determination based on the determination result.

[0119] Here, the transfer notification is information indicating that the startup process of function F1b in the lower server N1 has been completed. In other words, the transfer notification indicates that the communication connection process between function F1b of the lower server N1 and functions F3b and F4b of the lower server D1 has been completed. The transfer notification is created in the lower server N1.

[0120] Specifically, the function communication sorting unit 104da holds the first application processing information transferred from the function communication receiving unit 101da. The function communication sorting unit 104da determines whether a transfer notification has been received from the lower server N1. If the function communication sorting unit 104da determines that a transfer notification has not been received, it determines the function processing execution unit 103da of function F1b of the lower server D1 as the destination of the first application processing information. The function communication sorting unit 104da transfers the first application processing information to the function processing execution unit 103da of function F1b of the lower server D1. As a result, the first application processing is executed on the lower server D1. On the other hand, if the function communication sorting unit 104da determines that a transfer notification has been received, it determines the function F1b of the lower server N1 as the destination of the first application processing information. The function communication sorting unit 104da transmits the first application processing information to function F1b of the lower server N1. As a result, the first application process is executed in the lower server N1. Hereinafter, the process from determining whether a transfer notification has been received to transmitting first application process information may be referred to as an allocation determination process.

[0121] Furthermore, when the function communication sorting unit 104da determines that a transfer notification has been received, it creates an update notification indicating that the destination of the first application processing information has been updated to function F1b of the lower server N1, and sends the created update notification to the lower server N1 via the migration communication sending unit 112da. This causes the migration processing execution unit 113dab of function F1 of the lower server N1 to start generating second address information. The second address information is information that identifies the destination of the first application processing information.

[0122] The migration communication sending unit 112da is a processing unit that sends information necessary to migrate the function F1b to the lower server N1. Specifically, for example, the migration communication sending unit 112da sends an update notification to the migration communication receiving unit 111dab of the function F1b of the lower server N1.

[0123] The migration communication receiving unit 111da is a processing unit that receives information necessary to migrate the function F1b to the lower server N1. The migration communication receiving unit 111da receives second address information from the migration processing execution unit 113dab of the function F1 of the lower server N1.

[0124] The flow of processing executed in the subordinate servers D1 and N1 of the second embodiment will be described with reference to FIGS.

[0125] FIG. 11 is an example of a sequence illustrating the initial activation process of a function in the second embodiment.

[0126] In step S111, the function group manager 200d transmits a start instruction to each processing unit to start the functions F1b to Fmb.

[0127] In step S112, upon receiving the activation instruction, the function communication receiving unit 101da executes communication connection processing for the function processing executing unit 103da and the function communication assigning unit 104da.

[0128] In step S113, the functional communication receiving unit 101da waits for reception.

[0129] The processes in steps S114 to S115 and steps S122 to S127 correspond to the processes in steps S14 to S15 and steps S20 to S25 in FIG. 5, and therefore a description thereof will be omitted.

[0130] In step S118, upon receiving the activation instruction, the function processing execution unit 103da executes communication connection processing for each of the function communication receiving unit 101da, the function communication transmitting unit 102da, and the function communication sorting unit 104da.

[0131] In step S119, the function processing execution unit 103da waits for reception.

[0132] In step S120, upon receiving the activation instruction, the function communication distribution unit 104da executes communication connection processing for the function communication receiving unit 101da, the function processing execution unit 103da, and the transition processing execution unit 113da.

[0133] In step S121, the function communication distribution unit 104da waits for reception. This completes the initial activation process for function F1b. The processes corresponding to those described above are also performed for functions F2b to Fmb.

[0134] After this, the communication connection process between the functions is performed as explained using Fig. 6. Specifically, communication connection process is performed between function F1b of the lower server D1 and functions F3b and F4b, and between functions F3b and F4b of the lower server D1 and function F1b of the lower server N1. Please refer to Fig. 6 for the specific flow, and the explanation here will be omitted.

[0135] 12 to 15 are diagrams for explaining application processing in embodiment 2. Fig. 12 shows the sequence from the completion of the activation processing of the function F1b of the lower server N1 until the allocation determination processing is executed.

[0136] In step S131 of FIG. 12, the function communication receiving unit 101da receives first application processing information from the function F3b and the function F4b of the lower-level server D1.

[0137] In step S132, the functional communication receiving unit 101da transfers the received first application processing information to the functional communication allocating unit 104da.

[0138] In step S133, the functional communication receiving unit 101da waits for reception.

[0139] In step S134, the functional communication distribution unit 104da executes a distribution determination process.

[0140] In step S135, the functional communication allocation unit 104da waits for reception.

[0141] FIG. 13 is a flowchart illustrating a specific flow of the allocation determination process.

[0142] In step S100, the functional communication sorting unit 104da determines whether or not a transfer notification has been received from the subordinate server N1. If the functional communication sorting unit 104da determines that a transfer notification has not been received (step S100: No), the process proceeds to step S200. On the other hand, if the functional communication sorting unit 104da determines that a transfer notification has been received (step S100: Yes), the process proceeds to step S300.

[0143] In step S200, the function communication allocation unit 104da transfers the first application processing information to the function processing execution unit 103da of the subordinate server D1.

[0144] In step S300, the functional communication distribution unit 104da transmits the first application processing information to the functional communication receiving unit 101dab of the subordinate server N1 via the functional communication transmitting unit 102da. This completes the distribution determination process. Next, the flow after the distribution determination process will be described with reference to FIGS. 14 and 15.

[0145] FIG. 14 is a sequence diagram showing the flow after the distribution determination process when the functional communication distribution unit 104da determines that a transfer notification has not been received.

[0146] In step S141, the function processing execution unit 103da of the subordinate server D1 receives the first application processing information from the function communication allocation unit 104da.

[0147] The subsequent processing of steps S142 to S144 corresponds to the processing of steps S44 to S46 in Fig. 7, and therefore description thereof will be omitted. In step S145, the function communication sending unit 102da transfers the second application processing information to the function communication receiving unit 101db of function F2b (not shown) of the lower server D1. In step S145, the function communication sending unit 102da waits for reception.

[0148] FIG. 15 is a sequence diagram showing the flow after the distribution determination process when the functional communication distribution unit 104da determines that a transfer notification has been received.

[0149] In step S151, the functional communication transmitting unit 102da of the subordinate server D1 receives the first application processing information from the functional communication sorting unit 104da.

[0150] In step S152, the function communication sending unit 102da sends the received first application processing information to the function communication receiving unit 101dab of the function F1b of the lower-level server N1.

[0151] In step S153, the functional communication transmitting unit 102da waits for reception, which causes the first application process to be executed in the lower server N1.

[0152] 16 is an example of a sequence illustrating the processing required for function transfer in embodiment 2. The processing in FIG. 16 can be executed in parallel with the processing in FIGS.

[0153] In step S161, the function group management unit 200n of the lower server N1 sends an address notification to the migration processing execution unit 113dab of function F1b of the lower server N1, instructing it to notify the lower server D1 of the address information of the function communication receiving unit 101dab of function F1b.

[0154] In step S162, when the migration processing execution unit 113dab of the function F1b of the lower server N1 confirms that the function F1b has been activated on the lower server N1, it creates a transfer notification and transfers the created transfer notification to the migration communication sending unit 112dab.

[0155] In step S163, the migration process execution unit 113dab of the function F1b of the lower-level server N1 waits for reception.

[0156] In step S164, the transition communication transmitting unit 112dab transmits a transfer notification to the transition communication receiving unit 111da of the function F1b of the lower-level server D1.

[0157] In step S165, the transition communication transmitting unit 112dab waits for reception.

[0158] In step S166, the migration communication receiving unit 111da of the function F1b of the subordinate server D1 transfers the transfer notification to the migration processing executing unit 113da.

[0159] In step S167, the transition communication receiving unit 111da waits for reception.

[0160] In step S168, the transfer process execution unit 113da transmits a transfer notification to the functional communication allocation unit 104da.

[0161] In step S169, the migration process execution unit 113da waits for reception.

[0162] In step S170, upon receiving the transfer notification, the function communication distribution unit 104da updates the result of the distribution determination process. That is, the function communication distribution unit 104da determines in the distribution determination process that the transfer notification has been received.

[0163] In step S171, the functional communication distribution unit 104da creates an update notification indicating that the result of the distribution determination process has been updated, and transfers the created update notification to the transition communication transmission unit 112da.

[0164] In step S172, the functional communication allocation unit 104da waits for reception.

[0165] In step S173, the transition communication transmitting unit 112da transmits the received update notification to the transition communication receiving unit dab of the function F1b of the lower server N1.

[0166] In step S174, the transition communication transmitting unit 112da waits for reception.

[0167] In step S175, the migration communication receiving unit dab of the function F1b of the subordinate server N1 transfers the update notification to the migration processing executing unit 113dab.

[0168] In step S176, the transition communication receiving unit dab of the function F1b of the subordinate server N1 waits for reception.

[0169] In step S177, the migration process execution unit 113dab of the function F1b of the lower server N1 creates second address information that identifies the functional communication receiving unit 101dab of the lower server N1.

[0170] Thereafter, function F1b of subordinate server N1 executes processing corresponding to steps S53 to S56 in Fig. 8. Next, functions F3b and F4b of subordinate server D1 each execute processing corresponding to steps S57 to S65 in Fig. 9. This completes the processing in embodiment 2.

[0171] [Summary] For example, function F1b may receive first application processing information from multiple functions, such as function F3b and function F4b of lower server D1. In such a case, when function F1b is migrated from lower server D1 to lower server N1, it is necessary to complete the startup process of function F1b in lower server N1, that is, to establish connections between function F4b and function F3b and function F1b of lower server N1.

[0172] However, for example, it may happen that a connection is established in function F3b of the lower server D1, but a connection is not established in function F4b of the lower server D1. In such a case, the function F3b of the lower server D1 with an established connection may execute transmission of first application processing information to function F1b of the lower server N1, while the function F4b of the lower server D1 with an unestablished connection may execute transmission of first application processing information to function F1b of the lower server D1. As a result, both function F1b of the lower server D1 and function F1b of the lower server N1 may not be able to execute application processing normally.

[0173] In contrast, the function communication allocation unit 104da of function F1b of the lower server D1 in embodiment 2 holds the first application processing information received from function F3b and function F4b. The function communication allocation unit 104da determines whether or not a transfer notification indicating that function F1b has been activated in the lower server N1 has been received, and based on the determination result, transfers the held first application processing information to either the lower server D1 or the lower server N1.

[0174] As a result, the first application processing information is uniquely sent to either the lower server D1 or the lower server N1 based on whether function F1b is activated in the lower server N1, thereby enabling the application processing to be executed normally.

[0175] Although the embodiments of the present invention have been described above, they are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be embodied in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included within the scope and spirit of the invention, and are also included in the inventions and their equivalents as defined in the claims. [Explanation of symbols]

[0176] 10da...functional processing unit, 11da...migration processing unit, 101da, 101db, 101dbb...functional communication receiving unit, 102da...functional communication transmitting unit, 103da...functional processing execution unit, 104da...functional communication distribution unit, 111da...migration communication receiving unit, 112da, 112dbb...migration communication transmitting unit, 113da, 113dbb...migration processing execution unit, DS131a, NS131a...application holding unit, D1...lower server (source server), N1...lower server (destination server), MS...multiple servers, S...server system.

Claims

1. A source server included in a server system that includes a plurality of servers connected in a tree structure between a plurality of hierarchical levels, and includes at least one server among the plurality of servers as a source server and a destination server connected to the source server, The system is divided into a plurality of loosely coupled functional units, and includes an application storage unit that stores applications that run at regular intervals; each of the plurality of functional units is configured by a program, Among the plurality of functional units, a first functional unit includes: a function processing unit that performs processing necessary for the operation of the application; a migration processing unit that performs processing to migrate the application to the destination server, The function processing unit a functional communication receiving unit that receives first application processing information required for a first application processing executed by an operation of the first functional unit from a second functional unit that communicates with the first functional unit among the plurality of functional units or a lower-level server among the plurality of servers; a function processing execution unit that executes the first application processing based on the first application processing information; a function communication transmitter that transmits an execution result of the first application process to a third function unit that communicates with the first function unit among the plurality of function units as second application process information required for a second application process that is executed by operating the third function unit, The transition processing unit a migration communication receiving unit that receives, when the third function unit is activated on the destination server, first address information that identifies a destination of the second application processing information from the third function unit in the destination server; a migration process execution unit that executes a communication connection process to establish a connection with the third function unit in the migration destination server based on the first address information; Including, The function communication transmission unit of the function processing unit When connection information indicating that the connection has been established as a result of the communication connection process is received from the migration process execution unit, the migration process execution unit determines the third function unit in the destination server as the transmission destination of the second application processing information. Source server.

2. The function processing unit a functional communication distribution unit capable of holding the first application processing information, The functional communication receiving unit Transferring the first application processing information received from the second functional unit or the lower layer server to the functional communication allocation unit; The functional communication allocation unit When the first functional unit has been transferred to the destination server, determine whether or not a transfer notification indicating that the first functional unit has been activated on the destination server has been received from the first functional unit in the destination server, and if it is determined that the transfer notification has not been received, determine the function processing execution unit as a destination of the first application processing information, and if it is determined that the transfer notification has been received, determine the first functional unit in the destination server as a destination of the first application processing information. The source server according to claim 1 .

3. The transition processing unit a migration communication sending unit that sends information necessary for migrating the application to the destination server; The functional communication allocation unit When it is determined that the transfer notification has been received, an update notification indicating that the destination of the first application processing information has been updated to the first function unit in the destination server is created and transferred to the transfer communication transmission unit; The transition communication transmission unit Sending the received update notification to the destination server; The transition communication receiving unit receiving, from the destination server, second address information that is created based on the update notification and that specifies a destination of the first application processing information; The source server according to claim 2 .

4. A method executed in a source server included in a server system including a plurality of servers connected in a tree structure between a plurality of hierarchical levels, at least one of the plurality of servers being a source server and a destination server connected to the source server, The source server is It holds applications that are divided into multiple functional units, which are multiple programs that are loosely coupled with each other, and operate at regular intervals. Among the plurality of functional units, a first functional unit includes: a functional processing step for performing processing necessary for the operation of the application; a migration processing step of performing processing to migrate the application to the destination server, The function processing step includes: receiving first application processing information required for a first application processing executed by operation of the first functional unit from a second functional unit that communicates with the first functional unit among the plurality of functional units or a lower-level server among the plurality of servers; executing the first application process based on the first application process information; transmitting, to a third function unit among the plurality of programs that communicates with the first function unit as a destination, a result of the execution of the first application process as second application process information required for a second application process that is executed by operating the third function unit; The transition processing step includes: receiving, from the third function unit in the destination server, address information specifying a destination of the second application processing information, when the third function unit is activated in the destination server; executing a communication connection process for establishing a connection with the third function unit in the destination server based on the address information; Including, The function processing step includes: determining the third functional unit in the destination server as the destination of the second application processing information based on connection information that is a result of the communication connection process and indicates that the connection has been established, method.

Citation Information

Patent Citations

  • Area information display method, parking lot guidance system, DSRC in-vehicle device, in-vehicle computer, and parking lot guidance screen display device

    JP2006079558A

  • Controller, control system, control method, input-output device and computer program

    JP2015170325A