# US 9,438,477 B2 · Geophysical virtual machine policy allocation using a GPS, atomic clock source or regional peering host

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,438,477 B2
- Document ID: US9438477B2
- Status: Granted
- Kind: B2
- Application number: 14/628,269
- Filed: 2015-02-22
- Published: 2015-06-18
- Granted: 2016-09-06
- Earliest claimed: 2011-06-30
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Ian J. McCloy
- Web page: https://patentgrep.com/patent/US9438477B2

## CPC

- H04W 4/02: Services making use of location information
- G06F 9/455: Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F 9/45533: {Hypervisors; Virtual machine monitors}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- H04L 7/0008: {Synchronisation information channels, e.g. clock distribution lines}
- H04L 43/0852: Delays
- H04L 67/101: based on network conditions
- H04L 67/1021: based on client or server locations
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- H04L 41/0894: Policy-based network configuration management
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

According to one aspect of the present disclosure, a method and technique for virtual machine allocation is disclosed. The method includes: responsive to receiving a request to allocate a virtual machine, determining a geophysical location of a host for the virtual machine; determining a geophysical policy for the virtual machine; determining whether the geophysical policy for the virtual machine corresponds to the geophysical location of the host for the virtual machine; and responsive to determining that the geophysical policy for the virtual machine corresponds to the geophysical location of the host, allocating the virtual machine.

## Claims

### Claim 1

A virtual machine allocation method, comprising:
responsive to receiving a request to allocate a virtual machine, determining a geophysical location of a host for the virtual machine by accessing first geophysical data stored on the host;
verifying the geophysical location of the host as indicated by the first geophysical data by acquiring second geophysical data from a global positioning system unit coupled to the host;
responsive to the verifying, determining a geophysical policy for the virtual machine indicating a geophysical location where the virtual machine may be allocated;
determining whether the geophysical policy for the virtual machine corresponds to the geophysical location of the host for the virtual machine; and
responsive to determining that the geophysical policy for the virtual machine corresponds to the geophysical location of the host, allocating the virtual machine on the host
wherein determining and verifying the first geophysical location of the host being performed in response to at least one of a clock adjustment of the host or each time the host is booted.

### Claim 2 (depends on 1)

The method of claim 1, further comprising verifying the geophysical location of the host based on a radio signal received from an atomic clock source.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
determining a frequency of the received radio signal; and
determining a geophysical location of the atomic clock source based on the frequency.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
communicating with at least one regional peering host;
analyzing signal latency of communications with the regional peering host; and
verifying the geophysical location of the host for the virtual machine based on the signal latency.

### Claim 5 (depends on 1)

The method of claim 1, wherein receiving the request to allocate the virtual machine comprises receiving the request by a hypervisor of a cloud environment.

### Claim 6 (depends on 1)

The method of claim 1, further comprising, responsive to determining that the geophysical policy for the virtual machine does not correspond to the geophysical location of the host, generating an alert indicating non-execution of the virtual machine.

### Claim 7

A virtual machine allocation system comprising:
a host having a hypervisor executing thereon, the hypervisor executing instructions to:
responsive to receiving a request to allocate a virtual machine on the host, determine a first geophysical location of the host based on a frequency of a radio signal received from an atomic clock source;
verifying the first geophysical location of the host by acquiring a second geophysical location from a global positioning system unit coupled to the host;
responsive to the verifying, determine a geophysical policy for the virtual machine indicating a geophysical location where the virtual machine may be allocated;
determine whether the geophysical policy for the virtual machine corresponds to the geophysical location of the host; and
responsive to determining that the geophysical policy for the virtual machine corresponds to the geophysical location of the host, allocate the virtual machine on the host
wherein determining and verifying the first geophysical location of the host being performed in response to at least one of a clock adjustment of the host or each time the host is booted.

### Claim 8 (depends on 7)

The system of claim 7, wherein the hypervisor executes instructions to:
scan across a plurality of different frequencies searching for the radio signal from the atomic clock source; and
responsive to detecting the radio signal from the atomic clock source, determine the frequency of the radio signal.

### Claim 9 (depends on 8)

The system of claim 8, wherein the hypervisor executes instructions to access relational information to identify a location of the atomic clock source based on the frequency of the detected radio signal.

### Claim 10 (depends on 7)

The system of claim 7, wherein the hypervisor executes instructions to:
communicate with at least one regional peering host;
analyze signal latency of communications with the regional peering host; and
determine the geophysical location of the host for the virtual machine based on the signal latency.

### Claim 11 (depends on 7)

The system of claim 7, wherein the hypervisor executes instructions to, responsive to determining that the geophysical policy for the virtual machine does not correspond to the geophysical location of the host, generate an alert indicating non-execution of the virtual machine.

### Claim 12

A computer program product for virtual machine allocation, the computer program product comprising:
a non-transitory computer readable medium having computer readable program code embodied therewith, the computer readable program code comprising computer readable program code configured to:
responsive to receiving a request to allocate a virtual machine, determine a geophysical location of a host for the virtual machine by accessing first geophysical data stored on the host;
verifying the geophysical location of the host as indicated by the first geophysical data by acquiring second geophysical data from a global positioning system unit coupled to the host;
responsive to the verifying, determine a geophysical policy for the virtual machine indicating a geophysical location where the virtual machine may be allocated;
determine whether the geophysical policy for the virtual machine corresponds to the geophysical location of the host for the virtual machine; and
responsive to determining that the geophysical policy for the virtual machine corresponds to the geophysical location of the host, allocate the virtual machine on the host
wherein determining and verifying the first geophysical location of the host being performed in response to at least one of a clock adjustment of the host or each time the host is booted.

### Claim 13 (depends on 12)

The computer program product of claim 12, wherein the computer readable program code is configured to determine the geophysical location of the host based on a radio signal received from an atomic clock source.

### Claim 14 (depends on 13)

The computer program product of claim 13, wherein the computer readable program code is configured to:
scan across a plurality of different frequencies searching for the radio signal from the atomic clock source; and
responsive to detecting the radio signal from the atomic clock source, determine the frequency of the radio signal.

### Claim 15 (depends on 14)

The computer program product of claim 14, wherein the computer readable program code is configured to access relational information to identify a location of the atomic clock source based on the frequency of the detected radio signal.

### Claim 16 (depends on 14)

The computer program product of claim 14, wherein the computer readable program code is configured to, responsive to determining that the geophysical policy for the virtual machine does not correspond to the geophysical location of the host, generate an alert indicating non-execution of the virtual machine.

### Claim 17 (depends on 12)

The computer program product of claim 12, wherein the computer readable program code is configured to:
communicate with at least one regional peering host;
analyze signal latency of communications with the regional peering host; and
determine the geophysical location of the host for the virtual machine based on the signal latency.
