Service discovery system and service discovery method in a geographically distributed application execution platform

The service discovery system optimizes service access in geographically distributed platforms by forwarding requests to proximate servers and managing response validity, addressing load and connectivity issues in DNS systems.

JP7865912B2Active Publication Date: 2026-05-26KDDI CORP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
KDDI CORP
Filing Date
2023-03-24
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

Conventional DNS service discovery systems struggle to efficiently discover services in geographically distributed application execution platforms, particularly when client terminals move between areas with different network connections, leading to concentrated load on central servers and inefficient service access.

Method used

A service discovery system that utilizes a central name resolution server to forward name resolution requests to geographically proximate servers, incorporating location information and setting expiration dates for responses, allowing client terminals to cache and manage service access efficiently.

Benefits of technology

Reduces server load, improves connectivity by accessing nearby services, optimizes service access, and minimizes communication traffic while preventing erroneous access through managed response validity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007865912000001
    Figure 0007865912000001
  • Figure 0007865912000002
    Figure 0007865912000002
  • Figure 0007865912000003
    Figure 0007865912000003
Patent Text Reader

Abstract

To provide a service discovery function which enables a moving client terminal to acquire network information for discovering and accessing a nearby application execution base and a server operating thereon.SOLUTION: An application execution base 30 (40) comprises a service provision node and a name solution server 31 (41). A central name solution server 21 receives all name solution requests from a client terminal 10, selects an application execution base in accordance with a position of the client terminal and responds its name solution server. The client terminal 10 transfers the name solution request to the responded name solution server. The name solution server 31 (41) responds a service provision node capable of providing a service to the name solution request from the client terminal. The client terminal accesses the responded service provision node and receives the provision of the service.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a service discovery system and a service discovery method in a geographically distributed application execution infrastructure where a plurality of application execution infrastructures are geographically distributed, and particularly to a system and a service discovery method that provide a service discovery function for a moving client terminal to discover and automatically access a neighboring application execution infrastructure and services operating thereon.

Background Art

[0002] In a distributed application execution infrastructure called a floating cyber-physical system (F-CPS), there is a need for a service discovery system in which a device (client terminal) moving between areas automatically discovers and connects to functions within an area regardless of the connected network.

[0003] In F-CPS, all devices such as smartphones, PCs, servers, autonomous vehicles, and surveillance cameras existing within a subdivided area are utilized as an application execution infrastructure, and by providing services operating on this infrastructure to other devices within the area, an application execution infrastructure specialized for each area can be provided.

[0004] For example, in an area including an intersection, a cooperation service for an autonomous vehicle to exchange information with other vehicles and pedestrians, and in an area within a commercial facility, devices belonging to the area cooperate to execute services such as advertising distribution for each commercial facility.

[0005] Devices belonging to an area are not necessarily connected to the same network service, are connected to the Internet using mobile communication or fixed communication services provided by different operators, and need to be able to connect to a common application execution infrastructure within the area according to the location information of the device regardless of the connected network service.

[0006] In F-CPS, data collected from sensor devices belonging to the application execution platform is processed to provide area-specific information. Therefore, the area to which a device belongs must be determined based on its physical location information, rather than network configuration information (such as addresses).

[0007] Devices belonging to F-CPS are mobile, and if they move to another area, they will change their access destination to the services located in that area. The areas of F-CPS are determined autonomously based on the system load, and the range and number of areas can change over time; for example, areas may disappear when demand is low, and areas may be added when demand is high.

[0008] Patent Document 1 discloses a technology for discovering services within a computer network and identifying their IP addresses without using a centralized DNS server by performing Domain Name System service discovery using multicast DNS. It also discloses a technology that enables service discovery that can immediately restore connections in response to network changes by sending a message to announce itself when a connection is lost. [Prior art documents] [Patent Documents]

[0009] [Patent Document 1] Patent No. 6147415 [Overview of the project] [Problems that the invention aims to solve]

[0010] Patent Document 1 states that when a client terminal attempts to access a service via a public network, such as the Internet, rather than within a specific computer network, it is difficult to perform distributed service discovery using multicast DNS.

[0011] On the other hand, if service discovery is performed using a centralized DNS server accessible via the internet, the DNS server needs to know where all services are located, which presents the challenge of concentrated load.

[0012] Furthermore, when running applications on geographically distributed nodes such as MEC (Multi-access Edge Computing) servers and base stations, and discovering services that operate on them, a method is needed to discover services while considering the terminal's location and the amount of resources required. However, conventional Domain Name System (DNS) service discovery systems have had difficulty meeting these requirements.

[0013] The object of the present invention is to solve the above technical problems and provide a service discovery system and service discovery method for a geographically distributed application execution platform that can perform service discovery with more detailed parameters by accepting location information in addition to conventional DNS requests as a name resolution request from a client terminal at a central name resolution server, and forwarding the name resolution request to a name resolution server of an application execution platform located near the client terminal. [Means for solving the problem]

[0014] To achieve the above objectives, the present invention is characterized by having the following configuration in a service discovery system for a geographically distributed application execution platform in which geographically distributed service execution platforms are interconnected via the Internet.

[0015] (1) Each application execution platform is equipped with a service provision node and a name resolution server. A central name resolution server is connected to the internet and responds by selecting an application execution platform that can provide the service requested by a client terminal. The central name resolution server responds to a name resolution request from a client terminal with the name resolution server provided by the selected application execution platform as the name resolution result (destination). The client terminal forwards the name resolution request to the responded name resolution server. The name resolution server responds to the name resolution request from the client terminal with a service provision node that can provide the service as the name resolution result (node). The client terminal accesses the responded service provision node to receive the service.

[0016] (2) The client terminal temporarily stores the address of the service provider node that the name resolution server responded with as a name resolution result (node), and in response to a name resolution request for the same service, it accesses the temporarily stored address of the service provider node.

[0017] (3) The client terminal temporarily stores the address of the name resolution server that the central name resolution server responded with as the name resolution result (forwarding destination), and in response to a name resolution request for the same service, it sends a name resolution request to the temporarily stored name resolution server address.

[0018] (4) The client terminal sends its location information along with the name resolution request, and the central name resolution server prioritizes selecting a name resolution server of the service execution infrastructure whose relative location to the client terminal meets predetermined conditions.

[0019] (5) The central name resolution server responds with the name resolution result (destination) along with at least one of its expiration date and valid area, and the client terminal temporarily stores the responded name resolution result (destination) along with at least one of its expiration date and valid area.

[0020] (6) The client terminal periodically determines the validity of the temporarily stored name resolution result (destination) based on at least one of its expiration date and valid area, and deletes the name resolution result (destination) that is not valid.

[0021] (7) The client terminal periodically determines whether its current location is outside the valid area, and deletes the name resolution result (destination) outside the valid area.

[0022] (8) The name resolution server responds with the name resolution result (node) together with its expiration date, and the client terminal temporarily stores the responded name resolution result (node) together with its expiration date.

[0023] (9) The client terminal periodically determines the validity of the temporarily stored name resolution result (node) based on its expiration date, and deletes the name resolution result (node) that is not valid.

[0024] Note that the present invention can be realized not only as a service discovery system in a geographically distributed application execution platform having the above-described characteristic configuration, but also as a service discovery method in a geographically distributed application execution platform having such characteristic processing as steps.

Effects of the Invention

[0025] According to the present invention, the following effects are achieved.

[0026] (1) The central name resolution server does not need to process name resolution requests from each client terminal, and only needs to transfer the name resolution requests to the name resolution servers distributed in each application execution platform, so that the load related to the processing of name resolution requests can be avoided from concentrating on some servers.

[0027] (2) Even if a client terminal accesses the internet from any network, it can select a service within the nearby application execution platform, thereby improving connectivity.

[0028] (3) By accessing the central name resolution server, client terminals can receive the desired services in an optimal environment, even without understanding the application execution infrastructure and its capabilities that can provide various services.

[0029] (4) Even if each client terminal is connected via a public network such as the Internet, rather than a specific network belonging to a specific application execution platform, the destination of services running on nearby application execution platforms can be determined.

[0030] (5) Since the client terminal can request name resolution from a name resolution server located on each of the multiple distributed application execution platforms, it is possible to use the application execution platform's own parameters for name resolution.

[0031] (6) The central name resolution server does not need to access information about the nodes and services running within each application execution platform, thus reducing communication traffic between the central name resolution server and each application execution platform, and also reducing the amount of data stored within the central name resolution server.

[0032] (7) Since the name resolution result can be stored on the client terminal, the frequency of access to the central name resolution server can be kept low.

[0033] (8) By setting expiration dates and validity areas for responses from the central name resolution server to name resolution requests and from the name resolution servers of each application execution platform, the validity of these responses can be managed, thereby preventing inefficient access and erroneous access caused by the use of name resolution results with reduced reliability.

[0034] (9) When the central name resolution server notifies new name resolution server information within the application execution platform (new application execution platform), the name resolution results for services within the previous application execution platform (old application execution platform) can be kept in the cache, and termination processing, data migration processing, etc. can be performed on the services of the old application execution platform before changing the access destination to services within the new application execution platform. [Brief explanation of the drawing]

[0035] [Figure 1] This is a functional block diagram showing the configuration of the main parts of a geographically distributed application execution platform according to one embodiment of the present invention. [Figure 2] This diagram illustrates an example of a client terminal moving. [Figure 3] This diagram illustrates the procedure by which the central name resolution server retrieves information about the application execution platform from the management system. [Figure 4] This diagram illustrates the procedure for removing invalid name resolution results from the cache. [Figure 5] This is a sequence flow illustrating the name resolution procedure (part 1). [Figure 6] This is a sequence flow showing the name resolution procedure (continuation of Part 1). [Figure 7] This is a sequence flow illustrating the name resolution procedure (part 2). [Figure 8] This is a sequence flow illustrating the name resolution procedure (part 3). [Figure 9] This is a sequence flow showing the name resolution procedure (continuation of part 3). [Modes for carrying out the invention]

[0036] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Figure 1 is a functional block diagram showing the configuration of the main parts of a geographically distributed application execution platform 1 according to one embodiment of the present invention, and is configured by interconnecting client terminals 10, a central name resolution server 21, and application execution platforms (30, 40) via the Internet.

[0037] The client terminal 10 is operated by the user and is equipped with a program 11 and a cache 12. The application execution infrastructure (30, 40) is divided into multiple parts based on its location information, and here we assume that there are two application execution infrastructures 30 and 40 that are closest to the client terminal 10.

[0038] Each application execution platform 30(40) is provided with at least one node (service execution node) 331,332(431,432) for executing services, a management system 32(42) for managing each node and service, and a name resolution server 31(41) for performing name resolution within the application execution platform to which it belongs. The management system 32(42) and the name resolution server 31(41) may be independent nodes, or they may be run on nodes belonging to each application execution platform 30(40).

[0039] The central name resolution server 21 selects an application execution platform 30(40) that can provide the service requested by the client terminal 10 for name resolution, and responds with that name resolution server 31(41) as the name resolution result (forwarding destination). The central name resolution server 21 is located in a centralized facility such as a cloud service, data center, or core facility, while the application execution platforms 30 and 40 are located on nodes such as MEC servers or base stations within a specific region.

[0040] In this configuration, when a client terminal 10 accesses a service provided by a node of each application execution platform 30 (40), it sends a name resolution request that includes the desired service name, its own location information, and predetermined filtering conditions. In the geographically distributed application execution platform 1, the central name resolution server 21 initially receives all name resolution requests from each client terminal 10.

[0041] The central name resolution server 21 refers to the geographical information and address information (requesting address information) of the client terminal 10 included in the name resolution request, selects an application execution platform 30 (40) located near the client terminal 10, and forwards the name resolution request to that name resolution server 31 (41).

[0042] The name resolution server 31(41), upon receiving the name resolution request, accesses the management system 32(42) of the application execution platform 30(40) to which it belongs and selects nodes 331,332(431,432) that are capable of providing the service and satisfy the filtering conditions. The name resolution server 31(41) then responds to the client terminal 10 with the network address of the selected node as the name resolution result (node). This allows the client terminal 10 to discover nearby service execution nodes.

[0043] Furthermore, the name resolution result (destination / node) is temporarily stored in the client terminal 10's cache 12. From this point onward, program 11 can immediately respond with the temporarily stored name resolution result for name resolution requests related to the same service without requesting name resolution from the central name resolution server 21 or name resolution server 31 (41).

[0044] Thus, in this invention, in response to a name resolution request from a client terminal 10, the central name resolution server 21 selects the most geographically optimal application execution platform 30 (40) and responds with the network address of that name resolution server 31 (41) as the name resolution result (forwarding destination), thereby enabling responses to name resolution requests with less traffic load.

[0045] Next, the procedure of the name resolution embodiment will be described in more detail with reference to the sequence flow in Figures 3-9.

[0046] As shown in Figure 3, the central name resolution server 21 periodically acquires environmental information from the management systems 32(42) of each application execution platform 30(40), including the status of each node, the services that each node can provide, location information, and the network addresses of the name resolution servers 31(41) belonging to each application execution platform 30(40). Environmental information can be collected when a client terminal 10 connects, or prior to connection, from each application execution platform 30(40).

[0047] On the client terminal 10, as shown in Figure 4, program 11 periodically determines the validity of the name resolution result (destination / node) temporarily stored in the cache 12 based on its expiration date and valid area.

[0048] As a result, if the expiration date has already passed, or if the client terminal 10 has moved and is no longer located near the application execution infrastructure 30 (40) as shown in Figure 2, the temporarily stored name resolution result is deemed to have lost its validity and is deleted from the cache 12. Therefore, the client terminal 10 will have to obtain information from the central name resolution server 21 about the name resolution server 31 (41) located in the nearby application execution infrastructure 30 (40).

[0049] Furthermore, if program 11 detects that the client terminal 10 has moved outside the valid area by sensing changes in its location, it may delete the name resolution result without waiting for its expiration date.

[0050] Figures 5 and 6 show the sequence flow of the name resolution procedure when the name resolution result is not temporarily stored in cache 12, i.e., when the service is requested for the first time, or after the name resolution result has been deleted by the sequence in Figure 4.

[0051] At time t31, when the user requests the client terminal 10 to start program 11, the client terminal 10 starts its own program 11 at time t32. At time t33, when the user requests the program 11 to access service A, program 11 executes the processing necessary to access service A, and at time t34, requests the cache 12 to resolve the name of service A.

[0052] The name resolution request sent by program 11 includes the name of the service to be accessed, the location information of the client terminal 10, and filtering conditions. The filtering conditions can include arbitrary parameters such as the number of CPUs and memory capacity, representing the amount of resources required by the service provider node. The name resolution request can include any number and length of parameters, such as DNS over HTTPS (DoH), and can be implemented using a protocol that allows the request to be forwarded to another server.

[0053] An example of a name resolution request when using DoH is in the form of "GET https: / / xxxx.com (domain name of central name resolution server 21) / dns-query?dns=yyyyy (DNS query including the domain name of service A service-a.cluster.local)&lat=35.88 (latitude information)&long=139.52 (longitude information)&filter=zzz (filtering condition)".

[0054] Cache 12 attempts to resolve the name of service A, but in this embodiment, the name resolution result for service A is not stored in cache 12, so at time t35, "No cache information" is responded to. At time t36, program 11 requests client terminal 10 to start a name resolution request communication, and at time t37, the name resolution result is obtained.

[0055] Figure 6 is a sequence flow showing the procedure for name resolution request communication performed at times t36 to t37. When client terminal 10 receives the request to start the name resolution request communication, it sends a name resolution request to the central name resolution server 21 at time t36.1.

[0056] The access destination for the central name resolution server 21 can be specified in program 11 as either a network address or a domain name. If the central name resolution server 21 is specified by a domain name, it is advisable to obtain a network address beforehand by requesting name resolution from the default name resolution server.

[0057] The central name resolution server 21, upon receiving a name resolution request, reads the location information of the client terminal 10 included in the request at time t36.2 and determines its area of ​​origin. It then selects an application execution platform 30(40) located near the client terminal 10 and satisfying the filtering conditions, and responds with the network address of that name resolution server 31(41) as the name resolution result (forwarding destination) at time t36.3.

[0058] Here, we continue the explanation assuming that the application execution platform 40 is selected and its name resolution server 41's network address is responded to. The central name resolution server 21 can set an expiration date and valid area for the name resolution result (forwarding destination) it responds to. At time t37, the client terminal 10 responds to the program 11 with the name resolution result (forwarding destination), its expiration date, and valid area.

[0059] The effective area can be specified in the form of the latitude and longitude of the center point of the application execution platform 30 (40) and its radius range, or the range of a polygon composed of multiple point clouds. When DoH is used as the name resolution request protocol for request forwarding, a code in the 300 series is set as the status code in the HTTP response header, and the network address of the name resolution server 31 is specified as the Location.

[0060] Returning to Figure 5, at time t38, program 11 requests cache 12 to save the name resolution result (transfer destination), its expiration date, and valid area. Cache 12 temporarily stores the name resolution result (transfer destination) along with its expiration date and valid area.

[0061] At time t39, program 11 requests client terminal 10 to initiate name resolution request communication to the name resolution server 31 that responded, and obtains the name resolution result at time t40. The procedure for the name resolution request communication performed from time t39 to t40 will be described in detail below with reference to Figure 6.

[0062] When client terminal 10 receives the request to initiate the name resolution communication, it sends a name resolution request to the network address of name resolution server 41 at time t39.1. At time t39.2, name resolution server 41 accesses management system 42 and requests a search for nodes that satisfy the service name and filtering conditions included in the name resolution request.

[0063] The management system 42 selects service A running on node 432, which has many available resources, and at time t39.3, it responds to the name resolution server 41 with the network address of node 432. At time t39.4, the name resolution server 41 responds to the client terminal 10 with the name resolution result (node). The name resolution server 41 can set an expiration date for the name resolution result it responds with. At time t40, the client terminal 10 responds to the program 11 with the name resolution result (node) and its expiration date.

[0064] Returning to Figure 5, at time t41, program 11 requests cache 12 to save the name resolution result (node) and its expiration date. Cache 12 temporarily stores the name resolution result (node) along with its expiration date.

[0065] At time t42, program 11 instructs client terminal 10 to start notifying service A on node 432. At time t43, client terminal 10 sends a message to node 432.

[0066] From this point onward, program 11 sets the network address of node 432 as the access destination for service A, enabling it to use service A, which is located in its vicinity and meets the filtering conditions, with less network load.

[0067] Furthermore, in this embodiment, an expiration date and valid area can be set for the name resolution result (forwarding destination) responded to by the central name resolution server 21, and an expiration date can also be set for the name resolution result (node) responded to by the name resolution server 31 (41). When a name resolution result expires or is outside the valid area, it is deleted from the cache 12 and name resolution is performed again, thereby preventing erroneous access based on incorrect name resolution results.

[0068] Figure 7 is a sequence flow showing the procedure by which the client terminal 10 performs name resolution using the name resolution result stored in the cache 12.

[0069] As long as the name resolution result is within its validity period and valid area, program 11 can immediately access the service provider node based on the temporarily stored name resolution result without sending a name resolution request to the central name resolution server 21 or the name resolution server 31 (41).

[0070] At time t51, when the user requests access to service A from client terminal 10, program 11 requests name resolution for service A from cache 12 at time t52. At time t53, cache 12 performs name resolution, and if the name resolution result is valid, it responds to program 11 with the name resolution result at time t54. Here, we will continue the explanation assuming that the name resolution result is the network address of node 331.

[0071] At time t55, program 11 instructs client terminal 10 to begin communication with service A provided by node 331 of application execution platform 30. At time t56, client terminal 10 accesses node 331 and sends a message.

[0072] Figure 8 is a sequence flow showing the procedure by which the client terminal 10 performs name resolution using the name resolution result temporarily stored in the cache 12.

[0073] This section describes the behavior when, upon requesting access to service A, the name resolution results (nodes) for service A stored in cache 12 have been deleted, but the name resolution results (destinations) for service A responded by name resolution server 31 (41) remain valid.

[0074] At time t71, when a user requests access to service A, program 11 requests name resolution for service A from cache 12 at time t72. Cache 12 performs name resolution at time t73.

[0075] In this embodiment, the name resolution result of the node providing service A is not stored, but the name resolution server 31 is stored as the name resolution server of the application execution platform capable of providing service A. Therefore, at time t74, the cache 12 responds to program 11 with the network address of the name resolution server 31. At time t75, program 11 requests client terminal 10 to start a name resolution request communication with name resolution server 31, and at time t76, the name resolution result (node) is obtained.

[0076] Figure 9 is a sequence flow showing the procedure for the name resolution request communication performed at the aforementioned time t75-t76.

[0077] When client terminal 10 receives the request to initiate the name resolution communication, it sends a name resolution request for service A to name resolution server 31 at time t75.1. At time t75.2, name resolution server 31 requests management system 32 to search for nodes that satisfy the filtering conditions included in the name resolution request. At time t75.3, management system 32 responds with the network address of node 331 as the search result.

[0078] The name resolution server 31 responds to the client terminal 10 with the search result as a name resolution result (node) at time t75.4. The client terminal 10 responds to the program 11 with the name resolution result (node) at time t76.

[0079] Returning to Figure 8, at time t77, program 11 saves the name resolution result (node) and its expiration date to cache 12. At time t78, program 11 instructs client terminal 10 to start communication with service A of node 331. At time t79, client terminal 10 sends a message to node 331.

[0080] In this embodiment, even if the destination information temporarily stored in response to the central name resolution server 21 expires, or if the client terminal 10 moves outside the valid area, the network address of service A previously notified by the name resolution server 31 can be read from the cache 12. This makes it possible to perform termination processing and delete the temporarily stored information before moving to service A on another application execution platform, thereby transferring the information to service A on the newly selected application execution platform.

[0081] Furthermore, according to each of the above embodiments, a service discovery function is provided that allows a mobile client terminal to obtain network information for discovering and accessing nearby application execution platforms and the services running on them. This makes it possible to contribute to the United Nations-led Sustainable Development Goals (SDGs), specifically Goal 9, "Build resilient infrastructure and promote inclusive and sustainable industrialization," and Goal 11, "Make cities inclusive, safe, resilient and sustainable." [Explanation of Symbols]

[0082] 1…Geographically distributed application execution platform, 10…Client terminal, 11…Program, 12…Cache, 21…Central name resolution server, 30, 40…Application execution platform, 31, 41…Name resolution server, 32, 42…Management system, 331, 332, 431, 432…Service execution node

Claims

1. In a service discovery system for a geographically distributed application execution platform where geographically distributed service execution platforms are interconnected via the internet, Each application execution platform is equipped with a service provision node and a name resolution server. A central name resolution server, connected to the internet, selects and responds by selecting an application execution platform that can provide the service requested by the client terminal for name resolution. The central name resolution server responds to name resolution requests from client terminals by providing the name resolution server provided by the selected application execution platform as the name resolution result (destination). The client terminal includes its location information in the name resolution request and sends it. The central name resolution server prioritizes selecting a name resolution server of the service execution infrastructure whose relative position to the client terminal satisfies predetermined conditions. The aforementioned central name resolution server responds with the name resolution result (forwarding destination) along with its valid area. The client terminal temporarily stores the responded name resolution result (transfer destination) along with its valid area. A service discovery system in a geographically distributed application execution platform, characterized in that the client terminal periodically determines the validity of the temporarily stored name resolution results (forwarding destinations) based on whether its current location is outside the valid area, and deletes name resolution results (forwarding destinations) that are not valid.

2. The client terminal forwards the name resolution request to the name resolution server that was responded with as the name resolution result (forwarding destination). The name resolution server responds to a name resolution request from a client terminal by listing a service-providing node capable of providing the service as the name resolution result (node). The service discovery system in a geographically distributed application execution platform according to claim 1, characterized in that a client terminal accesses the responding service-providing node to receive the service.

3. The client terminal temporarily stores the address of the service-providing node that the name resolution server responded with as the name resolution result (node). A service discovery system in a geographically distributed application execution platform according to claim 2, characterized in that it accesses the temporarily stored address of a service provider node in response to a name resolution request relating to the same service.

4. The client terminal temporarily stores the address of the name resolution server that the central name resolution server responded with as the name resolution result (forwarding destination). A service discovery system in a geographically distributed application execution platform according to claim 2, characterized in that it sends a name resolution request to the address of the temporarily stored name resolution server in response to a name resolution request relating to the same service.

5. The name resolution server responds with the name resolution result (node) along with its expiration date. The service discovery system in a geographically distributed application execution platform according to claim 3, characterized in that the client terminal temporarily stores the responded name resolution result (node) along with its expiration date.

6. The service discovery system in a geographically distributed application execution platform according to claim 5, characterized in that the client terminal periodically determines the validity of the temporarily stored name resolution results (nodes) based on their expiration date and deletes name resolution results (nodes) that are not valid.

7. In a service discovery method for a geographically distributed application execution platform in which geographically distributed service execution platforms are interconnected via the internet, Each application execution platform is equipped with a service provision node and a name resolution server. A central name resolution server, connected to the internet, selects and responds by selecting an application execution platform that can provide the service requested by the client terminal for name resolution. The central name resolution server responds to name resolution requests from client terminals by providing the name resolution server provided by the selected application execution platform as the name resolution result (destination). The client terminal sends the name resolution request including its own location information, The central name resolution server selects, preferentially, a name resolution server of the service execution infrastructure whose relative position to the client terminal satisfies predetermined conditions, The central name resolution server responds with the name resolution result (destination) along with its valid area, The client terminal temporarily stores the responded name resolution result (transfer destination) along with its valid area. A service discovery method in a geographically distributed application execution platform, characterized in that the client terminal periodically determines the validity of the temporarily stored name resolution results (forwarding destinations) based on whether its current location is outside the valid area, and deletes any name resolution results (forwarding destinations) that are not valid.