WO2017188036A1 - アクセス制御装置、アクセス制御システム、アクセス制御方法、及び、アクセス制御プログラムが格納された記録媒体 - Google Patents
アクセス制御装置、アクセス制御システム、アクセス制御方法、及び、アクセス制御プログラムが格納された記録媒体 Download PDFInfo
- Publication number
- WO2017188036A1 WO2017188036A1 PCT/JP2017/015426 JP2017015426W WO2017188036A1 WO 2017188036 A1 WO2017188036 A1 WO 2017188036A1 JP 2017015426 W JP2017015426 W JP 2017015426W WO 2017188036 A1 WO2017188036 A1 WO 2017188036A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- access
- information processing
- processor
- access control
- remote access
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Definitions
- Patent Document 1 has a plurality of nodes including a physical CPU having a cache memory and a physical memory, and a logical CPU and a logical partition from virtual machine resources of the plurality of nodes.
- a virtual machine system is disclosed that assigns a physical CPU to a logical CPU when generating and operating a virtual machine.
- a plurality of nodes in this system are communicably connected via an interconnect. When selecting a physical CPU to be allocated to a logical CPU, this system measures performance information related to the access performance from the logical CPU to the physical memory.
- Patent Document 3 discloses an information processing apparatus having a plurality of nodes each having a CPU and a memory and an interconnect for connecting these nodes so that they can communicate with each other.
- the CPU performs address conversion from a logical address to a physical address, and converts the physical address into a CPU ID (CPU Identification) that can identify the CPU of each node.
- the CPU in each node transmits the transfer data including the physical address converted from the logical address and the CPU ID converted from the physical address via the crossbar switch.
- the CPU receives the transfer data from another node via the crossbar switch, the CPU accesses either the local area or the shared area of the memory accessed by the CPU based on the physical address included in the transfer data. It is determined whether it is.
- FIG. 6 is a diagram illustrating the configuration of such a general multi-node system.
- the multi-node system 3 illustrated in FIG. 6 is a system in which n computers (n is an arbitrary integer greater than or equal to 2) 70-1 to 70-n are communicably connected by the computer network 20.
- the computer network 20 is a communication network such as Ethernet (registered trademark).
- the computer 70-1 illustrated in FIG. 6 includes a processor 720-1, a memory 730-1, a storage device 740-1, and an internal bus 750-1.
- the configuration of the computers 70-2 to 70-n is the same as that of the computer 70-1.
- the processor 720-1 accesses the storage device 740-1 via the internal bus 750-1.
- the processor 720-1 gives the computer 70-i access to the storage device 740-i via the computer network 20.
- the computer 70-i requested from the processor 720-1 accesses the storage device 740-i via the internal bus 750-i.
- access from the processor 720-1 to the storage device 740-i is realized.
- resource separation architecture hardware components such as CPU, storage, power supply, and network are separated as components included in the computer, and these components can be replaced, added, and reduced as necessary. It is possible to do.
- FIG. 7 is a diagram illustrating a configuration of a multi-node system having such a resource separation architecture.
- the multi-node system 4 illustrated in FIG. 7 is a system in which n computers 800-1 to 800-n are communicably connected by the computer network 20 similarly to the multi-node system 3 illustrated in FIG. .
- the multi-node system 4 includes an interconnect network 30 extending over the computers 800-1 to 800-n instead of the internal buses 750-1 to 750-n included in the multi-node system 3 shown in FIG.
- the interconnect network is a communication network that connects information processing devices and information processing resources so that a plurality of information processing devices (computers) can directly access the plurality of information processing resources.
- processors 720-1 to 720-n and storage devices 740-1 to 740-n are connected by an interconnect network 30 as in the multi-node system 4 illustrated in FIG. The configuration cannot be recognized.
- logical computers (virtual computers) 80-1 to 80-n Built in.
- the logical computer 80-1 includes a computer 800-1, a storage device 740-1, and a part of the interconnect network 30.
- the distributed processing middleware operating in the multi-node system 4 recognizes the logical computers 80-1 to 80-n in the same way as the computers 70-1 to 70-n in the multi-node system 3 illustrated in FIG. That is, the distributed processing middleware recognizes the multi-node system 4 as a system having an architecture equivalent to the multi-node system 3.
- the processors 720-1 to 720-n access the storage devices in other logical computers, they are normally directly accessible via the interconnect network 30, but are controlled by the distributed processing middleware.
- the access destination logical computer is requested to access the access destination storage device via the computer network 20.
- the requested access-destination logical computer performs access to the access-destination storage device via the interconnect network 30. Therefore, in this case, there is a problem that the access performance is deteriorated and the resources of the computer are used more than necessary due to the communication between computers by the access.
- Patent Documents 1 to 3 do not mention this problem.
- the main object of the present invention is to provide an access control device or the like that solves this problem.
- the access destination management information for associating the second information processing resource with the second information processing device is updated so that the second information processing resource is associated with the first information processing device.
- FIG. 1 is a block diagram showing a configuration of an access control system 1 according to a first embodiment of the present invention. It is a figure which illustrates the structure of the conversion table 113-1 which concerns on the 1st Embodiment of this invention.
- 5 is a flowchart showing an operation of the access control apparatus 110-1 according to the first embodiment of the present invention. It is a block diagram which shows the structure of the access control apparatus 410-1 which concerns on the 2nd Embodiment of this invention. It is a block diagram which shows the structure of the information processing apparatus which can execute the access control apparatus which concerns on each embodiment of this invention. It is a figure which illustrates the structure of the general multinode system 3 which does not use a resource isolation
- the storage devices 140-1 to 140-n include an interface control function that can be connected to the interconnect network 30 and a storage device.
- the storage device is, for example, a flash memory, a DRAM (Dynamic Random Access Memory), an MRAM (Magnetoresistive Random Access Memory), an HDD (Hard Disk Drive), or the like.
- the storage devices 140-1 through 140-n may include, for example, an SSD (Solid State Drive) connected via a PCI express interface.
- the storage devices 140-1 to 140-n are a RAID (Redundant Arrays of Inexpensive Disks) card connected to a plurality of HDDs or SSDs, a GPGPU (General-Purpose computing on graphics Graphics Processing Units) card having a storage function, or An arithmetic board based on an MIC (Many Integrated Core) (registered trademark) architecture such as Intel® Xeon® Phi (registered trademark) may be provided.
- MIC Many Integrated Core
- Phi registered trademark
- the processor 120-1 executes the distributed processing middleware 131-1 stored in the memory 130-1.
- the distributed processing middleware 131-1 is, for example, middleware such as Hadoop or Spark.
- the distributed processing middleware 131-1 has functions for executing processing (tasks) distributedly processed by the computers 100-1 to 100-n, such as a Map / Reduce function, and performing synchronization control between tasks in application execution. .
- the distributed processing middleware 131-1 has a function of receiving a request from the scheduler executed in the computers 100-1 to 100-n and starting execution of a task indicated by the request.
- the logical computers 10-1 to 10-1 through software that controls the construction of the logical computer are used.
- 10-n is built.
- the logical computer 10-1 includes a computer 100-1, a storage device 140-1, and a part of the interconnect network 30.
- the configurations and functions of the logical computers 10-2 and 10-n are the same as those of the logical computer 10-1.
- each of the logical computers 10-1 to 10-n includes any one of the storage devices 140-1 to 140-n.
- the logical computer may include a plurality of storage devices. Assume that the host names “Host1” to “Hostn” are given to the logical computers 10-1 to 10-n in order by the system administrator or the like as identifiers that can identify each logical computer.
- the distributed processing middleware 131-1 has a configuration equivalent to the multi-node system 3 illustrated in FIG. 6 as the configuration of the access control system 1 illustrated in FIG. 20 connected system). Accordingly, the distributed processing middleware 131-1 accesses the storage device 140-i (i is an integer from 2 to n) from the processor 120-1 to the logical computer 10-i via the computer network 20. It has a function to control to perform by request. At this time, the requested logical computer 10-i accesses the storage device 140-i via the interconnect network 30.
- the distributed processing middleware 131-1 has a function of controlling the processor 120-1 to access the storage device 140-1 via the interconnect network 30.
- the determination unit 111-1 confirms whether the type information that can classify the type of the instruction included in the instruction (request) issued from the processor 120-1 is a specific value. Is an access instruction to any of the storage devices 140-1 to 140-n. As an instruction other than an access instruction issued from the processor 120-1 for any of the storage devices 140-1 to 140-n, for example, an inter-processor communication instruction for at least one of the processors 120-2 to 120-n, etc. There is.
- the determination unit 111-1 determines whether the instruction is an access (local access) instruction to the storage device 140-1. Then, it is confirmed whether it is an access (remote access) command to any of the storage devices 140-2 to 140-n. Note that local access is access in which the processor and the access destination storage device exist in the same logical computer, and remote access is access in which the processor and the access destination storage device are in different logical computers. is there. The determination unit 111-1 notifies the confirmed result to the conversion unit 112-1.
- the conversion unit 112-1 converts (impersonates) the remote access instruction into a local access instruction based on the conversion table 113-1. I do.
- FIG. 2 is a diagram illustrating a configuration of the conversion table 113-1 according to the present embodiment.
- the conversion table 113-1 is information in which a logical computer host name (IP address), an access path, and an access path within the own logical computer (an access path after conversion) are associated.
- the access path in the conversion table 113-1 indicates the path where the storage device 140-i is mounted in the logical computer 10-i (i is an integer from 1 to n). As illustrated in FIG. 2, in this embodiment, the storage device 140-1 in the logical computer 10-1, the storage device 140-2 in the logical computer 10-2, and the storage device 140-3 in the logical computer 10-3 are provided.
- the mounted path is “/ filesystem / sda”.
- the own logical computer access path in the conversion table 113-1 indicates a path when the storage device 140-i is mounted in the logical computer 10-1.
- the paths on which the storage devices 140-1 to 140-3 are mounted are “/ filesystem / sda” and “/ filesystem / sdb” in this order.
- the conversion unit 112-1 when the access destination indicated by the remote access instruction issued from the processor 120-1 is “Host2: / filesystem / sda / hoge / fuga-001”, the conversion unit 112-1 operates as follows. That is, the conversion unit 112-1 converts “Host2” included in the access destination into “Host1” which is the host name of the own logical computer. Based on the record related to “/ filesystem / sda” of “Host2” in the conversion table 113-1, the conversion unit 112-1 converts “/ filesystem / sda” included in the access destination into “/ filesystem / sdb”. Convert.
- the conversion unit 112-1 converts the access destination from “Host2: / filesystem / sda / hoge / fuga-001” to “Host1: / filesystem / sdb / hoge / fuga-001”.
- the remote access command issued from the processor 120-1 is converted (impersonated) into a local access command by the conversion unit 112-1.
- the conversion unit 112-1 reflects the contents obtained by converting the remote access instruction into the local access instruction in the access destination management information 132-1 stored in the memory 130-1.
- the access destination management information 132-1 is obtained when the processor 120-1 accesses any one of the storage devices 140-1 to 140-n by executing the distributed processing middleware 131-1 and application software (not shown). This information is used to manage the access destination location.
- the access destination management information 132-1 is information obtained when the processor 120-1 accesses one of the storage devices 140-1 to 140-n by a mechanism for managing a host name, an IP address, etc. in the communication network, for example. It is.
- a mechanism for managing such host names, IP addresses, etc. there are, for example, DNS (Domain Name System) or “/ etc / hosts file” in a file system of an operating system.
- Spark has modules called BlockManager (registered trademark) and Broadcast (registered trademark) that manage nodes (computers) that hold data within the program.
- BlockManager registered trademark
- Broadcast registered trademark
- the access destination management information 132-1 is information managed by these modules.
- the processor 120-1 interconnects any of the storage devices 140-2 to 140-n that are access destinations. Local access via the network 30 is performed.
- the entire process ends.
- the conversion unit 112-1 stores the access destination management information 132-1. By updating, the access path indicated by the instruction is converted into an access path in the logical computer 10-1 (step S105), and the entire process is completed.
- the access control apparatus 110-1 accesses the multi-node system using the resource separation architecture when performing data access across the nodes under the control of software or the like that does not support the resource separation architecture. A decrease in performance and a decrease in resource use efficiency can be avoided. The reason is that the access control device 110-1 updates the access destination management information 132-1 when the command issued from the processor 120-1 is a remote access command for the storage devices 140-2 to 140-n. This is because the remote access command is converted into a local access command.
- the determination unit 111-1 determines whether the access performed by the processor 120-1 is remote access.
- the conversion unit 112-1 converts (impersonates) remote access into local access.
- the conversion unit 112-1 updates the access destination management information 132-1 that associates the storage device 140-i that is the access destination with the logical computer 10-i so as to associate the storage device 140-i with the logical computer 10-1. This conversion is performed.
- the access control apparatus 110-1 according to the present embodiment allows the multi-node system using the resource separation architecture to perform data access across the nodes by control using software or the like that does not support the resource separation architecture.
- the access control apparatus 110-1 according to the present embodiment can avoid an increase in cost by redesigning the distributed processing middleware to cope with the resource separation architecture.
- the access control system 1 may be a system in which a plurality of host names are assigned to the same logical computer.
- the processor 120-1 may make the host name included in the instruction different between the access instruction for the storage device 140-i and the interprocessor communication instruction for the logical computer 10-i.
- the host name corresponds to type information that can classify the type of instruction.
- the access control device 110-1 can control whether or not to perform conversion processing from remote access to local access by the host name included in the instruction issued from the processor 120-1.
- the storage devices 140-1 to 140-n are storage devices, and data accessed by the computer 100-i (i is an arbitrary integer from 1 to n) to the storage device 140-i.
- the access control apparatus 110-1 may operate as follows when the storage cache storing the storage cache is provided in the memory 130-i. That is, the determination unit 111-1 determines whether or not the data to be remotely accessed exists in the storage cache by performing interprocessor communication with the logical computer that is the access destination. The conversion unit 112-1 stops the conversion from the remote access to the local access described above when the data targeted for remote access exists in the storage cache.
- the processor 120-1 can obtain the data by transferring it from the processor in the logical computer that is the access destination.
- the time required to access the storage device is longer than the time required to access the memory. Therefore, when the data to be remotely accessed is present in the storage cache, it is preferable to have the data stored in the storage cache transferred from the access destination processor rather than performing local access via the interconnect network 30. The time required to obtain data is short. As a result, the access control apparatus 110-1 according to the present embodiment can avoid a decrease in access performance when data to be accessed remotely is present in the storage cache.
- the access control system 2 is configured such that local access from the first processor 420-1 to the first information processing resource 440-1 is performed via the second communication network 60.
- the access control system 2 is configured such that remote access from the first processor 420-1 to the second information processing resource 440-2 is performed via the first communication network 50 and the second communication network 60. ing.
- the access control device 410-1 includes a determination unit 411-1 and a conversion unit 412-1.
- the access control apparatus 410-1 performs access when a multi-node system using a resource separation architecture performs data access across nodes by control using software that does not support the resource separation architecture. A decrease in performance and a decrease in resource use efficiency can be avoided. The reason is that the access control device 410-1 uses the access destination management information 432-2 when the instruction issued from the first processor 420-1 is a remote access instruction for the second information processing resource 440-2. This is because the remote access instruction is converted into a local access instruction by updating 1.
- each unit in the access control apparatus shown in FIGS. 1 and 4 can be realized by a dedicated HW (HardWare) (electronic circuit). 1 and 4, at least the following configuration can be regarded as a function (processing) unit (software module) of the software program.
- processing processing
- software module software module
- Determining units 111-1 and 411-1 Conversion units 112-1 and 412-1 the division of each part shown in these drawings is a configuration for convenience of explanation, and various configurations can be assumed for mounting. An example of the hardware environment in this case will be described with reference to FIG.
- FIG. 5 is a diagram illustrating an exemplary configuration of an information processing apparatus 900 (computer) that can execute the access control apparatus according to each embodiment of the present invention. That is, FIG. 5 is a configuration of a computer (information processing apparatus) capable of realizing the access control apparatus shown in FIGS. 1 and 4 and shows a hardware environment capable of realizing each function in the above-described embodiment. To express.
- the information processing apparatus 900 illustrated in FIG. 5 includes the following as constituent elements.
- CPU Central_Processing_Unit
- ROM Read_Only_Memory
- RAM Random_Access_Memory
- -Hard disk storage device
- a communication interface 905 with an external device ⁇ Bus 906 (communication line)
- the information processing apparatus 900 including the above-described components is a general computer in which these configurations are connected via a bus 906.
- the information processing apparatus 900 may include a plurality of CPUs 901 or may include a CPU 901 configured by a multi-core.
- the present invention described by taking the above embodiment as an example supplies a computer program capable of realizing the following functions to the information processing apparatus 900 shown in FIG.
- the function is the above-described configuration in the block configuration diagram (FIGS. 1 and 4) referred to in the description of the embodiment, or the function of the flowchart (FIG. 3).
- the present invention is then achieved by reading the computer program to the CPU 901 of the hardware, interpreting it and executing it.
- the computer program supplied to the apparatus may be stored in a readable / writable volatile memory (RAM 903) or a nonvolatile storage device such as the ROM 902 or the hard disk 904.
- a general procedure can be adopted as a method for supplying a computer program into the hardware.
- the procedure includes, for example, a method of installing in the apparatus via various recording media 907 such as a CD-ROM, and a method of downloading from the outside via a communication line such as the Internet.
- the present invention is configured by a code constituting the computer program or a recording medium 907 in which the code is stored.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Library & Information Science (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
リソース分離アーキテクチャを用いたマルチノードシステムが、リソース分離アーキテクチャに対応していないソフトウェア等による制御によって、ノード間にまたがるデータアクセスを行う場合に、アクセス性能の低下及び資源の使用効率の低下を回避する。 アクセス制御装置410-1は、第1のプロセッサ420-1から第2の情報処理資源440-2に対するリモートアクセスが第1及び第2の通信ネットワークによって行われるアクセス制御システム2に含まれる装置であって、第1のプロセッサ420-1によって行われるアクセスがリモートアクセスであるか否かを判定する判定部411-1と、当該アクセスがリモートアクセスである場合に、アクセス先管理情報432-1を、第2の情報処理資源を第1の情報処理装置と関連付けるように更新することによって、リモートアクセスをローカルアクセスに変換する変換部412-1と、を備える。
Description
本願発明は、複数の情報処理装置が、インターコネクトネットワークを介して情報処理資源を共有するシステムにおいて、各情報処理装置が当該情報処理資源へアクセスする技術に関する。
クラウドコンピューティングの急速な進展に伴い、データセンター等では、それぞれがCPU(Central Processing Unit)とメモリ等の記憶装置とを備えた複数の情報処理装置(ノード)がクラスタ接続されたマルチノードシステムの大規模化が急速に進んでいる。このようなマルチノードシステムにおいては、ノード間にまたがるCPUから記憶装置へのアクセスを高速に行うことが課題であり、係る課題を解決する技術に対する期待が高まってきている。
このような技術に関連する技術として、特許文献1には、キャッシュメモリを備えた物理CPUと物理メモリとを含むノードを複数有し、複数のノードの仮想機資源から論理CPUと論理区画とを生成して仮想計算機を稼動させる際に、論理CPUに物理CPUを割り当てる仮想計算機システムが開示されている。このシステムにおける複数のノードは、インターコネクトを介して通信可能に接続されている。このシステムは、論理CPUに割り当てる物理CPUを選択する際に、論理CPUから物理メモリへのアクセス性能に関する性能情報を測定する。このシステムは、当該性能情報が所定の閾値を満たす場合は、論理CPUに割り当てる物理CPUを、前回割り当てた論理CPUと同一のノードから選択し、当該性能情報が所定の閾値を満たさない場合は、論理CPUに割り当てる物理CPUを、前回割り当てた論理CPUとは異なるノードから選択する。
また、特許文献2には、少なくとも一部を共有メモリ領域として設定可能なメモリと、1つ以上のCPUとを各々が備える複数のノードと、ノード間を通信可能に接続するインターコネクトとを有する情報処理システムが開示されている。このシステムでは、第1のCPUは、他ノードのメモリにアクセスするためのアクセストークンを保持するアクセストークンテーブルを有し、メモリアクセス要求にアクセストークンを付加して送信する。また、第2のCPUは、他ノードから自ノード内のメモリへのアクセスの許可を制御するメモリトークンを保持するメモリトークンレジスタを有する。さらに、第2のCPUは、第1のCPUからのメモリアクセス要求に付加されたアクセストークンと、メモリトークンレジスタに保持したメモリトークンとに基づいて、メモリアクセス要求実行の可否を制御する。
また、特許文献3には、それぞれがCPU及びメモリを備える複数のノードと、それらのノードを通信可能に接続するインターコネクトを有する情報処理装置が開示されている。当該CPUは、論理アドレスから物理アドレスへのアドレス変換を行い、その物理アドレスを各ノードのCPUを識別可能なCPUID(CPU Identification)に変換する。各ノードにおけるCPUは、論理アドレスから変換された物理アドレスと、物理アドレスから変換されたCPUIDとを含む転送データを、クロスバスイッチを介して送信する。また、CPUは、クロスバスイッチを介して他のノードから転送データを受信した場合、転送データに含まれる物理アドレスに基づいて、自身がアクセスするメモリのローカル領域と共有領域のいずれの領域へのアクセスであるか判定する。
"Spark Lightning-fast cluster computing"、[Online]、[2016年4月14日検索]、インターネット<URL: http://spark.apache.org/>
近年、大規模なデータを対象に、機械学習などのデータ分析処理を行うことが一般的になっている。そのような処理を実現する代表的なフレームワークの実装手段として、Hadoop(登録商標)あるいはSpark(登録商標)(非特許文献1を参照)のような分散処理ミドルウェアが挙げられる。HadoopはGoogle(登録商標)社によるMapReduce(登録商標)をオープンソースとして実現したミドルウェアである。SparkはHadoopを改良したミドルウェアであり、Sparkを使用したシステムは増加傾向にある。
これらの分散処理ミドルウェアは、多数の計算機(情報処理装置)が通信ネットワークによって接続されたマルチノードシステムにおいて動作することを前提に、開発されている。図6は、このような一般的なマルチノードシステムの構成を例示する図である。図6に例示するマルチノードシステム3は、n個(nは2以上の任意の整数)の計算機70-1乃至70-nが、計算機ネットワーク20によって通信可能に接続されたシステムである。計算機ネットワーク20は、例えばEthernet(登録商標)等の通信ネットワークである。
図6に例示する計算機70-1は、プロセッサ720-1、メモリ730-1、記憶装置740-1、及び、内部バス750-1を備える。計算機70-2乃至70-nの構成も、計算機70-1と同様である。プロセッサ720-1は、内部バス750-1を介して、記憶装置740-1にアクセスする。プロセッサ720-1は、記憶装置740-i(iは2乃至nのいずれかの整数)にアクセスする場合は、計算機ネットワーク20を介して、計算機70-iに記憶装置740-iへのアクセスを要求する。プロセッサ720-1から依頼された計算機70-iは、内部バス750-iを介して記憶装置740-iにアクセスする。これにより、プロセッサ720-1から記憶装置740-iに対するアクセスが実現される。
一方,近年、リソース分離アーキテクチャと呼ばれるアーキテクチャを備えた計算機システムが実現されている。このリソース分離アーキテクチャは、計算機に含まれるコンポーネントとして、CPU、ストレージ、電源、及び、ネットワークなどのハードウェアリソースを分離することによって、必要に応じて、これらのコンポーネントを差し替えたり、増設したり、縮退したりすることなどを可能とする。
図7は、このようなリソース分離アーキテクチャを備えたマルチノードシステムの構成を例示する図である。図7に例示するマルチノードシステム4は、n個の計算機800-1乃至800-nが、図6に例示するマルチノードシステム3と同様に、計算機ネットワーク20によって通信可能に接続されたシステムである。マルチノードシステム4は、図6に示すマルチノードシステム3が備える内部バス750-1乃至750-nの代わりに、計算機800-1乃至800-nにまたがるインターコネクトネットワーク30を備える。インターコネクトネットワークは、複数の情報処理装置(計算機)が複数の情報処理資源に対して直接通信アクセスできるように、これらの情報処理装置と情報処理資源とを接続する通信ネットワークである。
図7に例示する計算機800-1は、プロセッサ720-1、及び、メモリ730-1を備える。計算機800-2乃至800-nの構成も、計算機800-1と同様である。プロセッサ720-1は、インターコネクトネットワーク30を介して、記憶装置740-1乃至740-nに直接アクセスすることが可能である。
既存の分散処理ミドルウェアには、図7に例示するリソース分離アーキテクチャが出現する前に開発された製品も多い。そのような分散処理ミドルウェアは、図7に例示するマルチノードシステム4のように、プロセッサ720-1乃至720-nと記憶装置740-1乃至740-nとが、インターコネクトネットワーク30によって接続されている構成を認識することができない。
この場合、当該分散処理ミドルウェアがマルチノードシステム4において動作できるようにするために、例えば図7に例示するように、論理計算機(仮想計算機)80-1乃至80-nが、マルチノードシステム4の中に構築される。論理計算機80-1は、計算機800-1、記憶装置740-1、及び、インターコネクトネットワーク30の一部を含んでいる。そして、マルチノードシステム4において動作する当該分散処理ミドルウェアは、論理計算機80-1乃至80-nを、図6に例示するマルチノードシステム3における計算機70-1乃至70-nと同等に認識する。すなわち、当該分散処理ミドルウェアは、マルチノードシステム4を、マルチノードシステム3と同等のアーキテクチャを有するシステムとして認識する。
したがって、この場合、プロセッサ720-1乃至720-nは、他の論理計算機における記憶装置にアクセスする際に、本来はインターコネクトネットワーク30を介して直接アクセス可能であるにもかかわらず、分散処理ミドルウェアによる制御によって、計算機ネットワーク20を介して、アクセス先の論理計算機にアクセス先の記憶装置に対するアクセスを依頼する。依頼されたアクセス先の論理計算機は、インターコネクトネットワーク30を介して、アクセス先の記憶装置に対するアクセスを実行する。したがって、この場合、そのアクセス性能が低下するとともに、アクセスによる計算機間の通信に伴い計算機の資源を必要以上に使用するという問題がある。
また、このような問題を回避するために、当該分散処理ミドルウェアを、リソース分離アーキテクチャに対処可能に再設計することは、再設計に要するコスト等から現実的ではない。すなわち、当該分散処理ミドルウェアを再設計することなく、リソース分離アーキテクチャに対応した、計算機間にまたがるアクセスを行うことが課題である。特許文献1乃至3は、この課題について言及していない。本願発明の主たる目的は、この課題を解決するアクセス制御装置等を提供することである。
本願発明の一態様に係るアクセス制御装置は、第一の情報処理装置に含まれる第一のプロセッサと、第二の情報処理装置に含まれる第二のプロセッサとが、第一の通信ネットワークによって通信可能に接続され、前記第一のプロセッサと、前記第一の情報処理装置に含まれる第一の情報処理資源と、前記第二の情報処理装置に含まれる第二の情報処理資源とが、第二の通信ネットワークによって通信可能に接続され、前記第一のプロセッサから前記第一の情報処理資源に対するローカルアクセスは、前記第二の通信ネットワークを介して行われ、前記第一のプロセッサから前記第二の情報処理資源に対するリモートアクセスは、前記第一及び第二の通信ネットワークを介して行われるように構成されたシステムにおいて通信アクセスを制御する装置であって、前記第一のプロセッサによって行われるアクセスが、前記リモートアクセスであるか否かを判定する判定手段と、前記判定手段が、前記アクセスが前記リモートアクセスであると判定した場合に、前記第二の情報処理資源を前記第二の情報処理装置と関連付けるアクセス先管理情報を、前記第二の情報処理資源を前記第一の情報処理装置と関連付けるように更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する変換手段と、を備える。
上記目的を達成する他の見地において、本願発明の一態様に係るアクセス制御方法は、第一の情報処理装置に含まれる第一のプロセッサと、第二の情報処理装置に含まれる第二のプロセッサとが、第一の通信ネットワークによって通信可能に接続され、前記第一のプロセッサと、前記第一の情報処理装置に含まれる第一の情報処理資源と、前記第二の情報処理装置に含まれる第二の情報処理資源とが、第二の通信ネットワークによって通信可能に接続され、前記第一のプロセッサから前記第一の情報処理資源に対するローカルアクセスは、前記第二の通信ネットワークを介して行われ、前記第一のプロセッサから前記第二の情報処理資源に対するリモートアクセスは、前記第一及び第二の通信ネットワークを介して行われるように構成されたシステムにおいて、第三の情報処理装置によって、前記第一のプロセッサによって行われるアクセスが、前記リモートアクセスであるか否かを判定し、前記アクセスが前記リモートアクセスであると判定された場合に、前記第二の情報処理資源を前記第二の情報処理装置と関連付けるアクセス先管理情報を、前記第二の情報処理資源を前記第一の情報処理装置と関連付けるように更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する。
また、上記目的を達成する更なる見地において、本願発明の一態様に係るアクセス制御プログラムは、第一の情報処理装置に含まれる第一のプロセッサと、第二の情報処理装置に含まれる第二のプロセッサとが、第一の通信ネットワークによって通信可能に接続され、前記第一のプロセッサと、前記第一の情報処理装置に含まれる第一の情報処理資源と、前記第二の情報処理装置に含まれる第二の情報処理資源とが、第二の通信ネットワークによって通信可能に接続され、前記第一のプロセッサから前記第一の情報処理資源に対するローカルアクセスは、前記第二の通信ネットワークを介して行われ、前記第一のプロセッサから前記第二の情報処理資源に対するリモートアクセスは、前記第一及び第二の通信ネットワークを介して行われるように構成されたシステムに含まれるコンピュータに、前記第一のプロセッサによって行われるアクセスが、前記リモートアクセスであるか否かを判定する判定処理と、前記判定処理が、前記アクセスが前記リモートアクセスであると判定した場合に、前記第二の情報処理資源を前記第二の情報処理装置と関連付けるアクセス先管理情報を、前記第二の情報処理資源を前記第一の情報処理装置と関連付けるように更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する変換処理と、を実行させるためのプログラムである。
更に、本願発明は、係るアクセス制御プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記録媒体によっても実現可能である。
本願発明は、リソース分離アーキテクチャを用いたマルチノードシステムが、リソース分離アーキテクチャに対応していないソフトウェア等による制御によって、ノード間にまたがるデータアクセスを行う場合における、アクセス性能の低下、及び、資源の使用効率の低下を回避することを可能とする。
以下、本願発明の実施の形態について図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本願発明の第1の実施の形態に係るアクセス制御システム1の構成を概念的に示すブロック図である。アクセス制御システム1は、n個(nは2以上の整数)の計算機100-1乃至100-nが計算機ネットワーク20によって通信可能に接続されたマルチノードシステムである。計算機ネットワーク20は、例えば、TCP/IP(Transmission Control Protocol / Internet Protocol)に対応した通信ネットワークであり、EthernetケーブルやEthernetスイッチ等によって実現される。計算機ネットワーク20は、計算機100-1乃至100-nに搭載されたネットワークインタフェースカード(NIC)(不図示)を介して、計算機100-1乃至100-nと接続される。当該ネットワークインタフェースカードは、後述するインターコネクトネットワーク30を介して接続されてもよい。
図1は、本願発明の第1の実施の形態に係るアクセス制御システム1の構成を概念的に示すブロック図である。アクセス制御システム1は、n個(nは2以上の整数)の計算機100-1乃至100-nが計算機ネットワーク20によって通信可能に接続されたマルチノードシステムである。計算機ネットワーク20は、例えば、TCP/IP(Transmission Control Protocol / Internet Protocol)に対応した通信ネットワークであり、EthernetケーブルやEthernetスイッチ等によって実現される。計算機ネットワーク20は、計算機100-1乃至100-nに搭載されたネットワークインタフェースカード(NIC)(不図示)を介して、計算機100-1乃至100-nと接続される。当該ネットワークインタフェースカードは、後述するインターコネクトネットワーク30を介して接続されてもよい。
計算機100-1は、アクセス制御装置110-1、プロセッサ120-1、及び、メモリ130-1を備えている。計算機100-2乃至100-nの構成及び機能は、計算機100-1と同様であるので、本願では、計算機100-1の説明をもって、計算機100-2乃至100-nの説明は省略する。
計算機100-1乃至100-nは、計算機間にまたがるインターコネクトネットワーク30と通信可能に接続されている。プロセッサ120-1は、インターコネクトネットワーク30と通信可能に接続されている記憶装置140-1乃至140-nに直接アクセスすることが可能である。すなわち、アクセス制御システム1は、上述したリソース分離アーキテクチャに対応したマルチノードシステムである。
インターコネクトネットワーク30は、例えば、Fibre ChannelやFCoE(Fibre Channel over Ethenet)(登録商標)等の規格に対応した光ケーブルと光スイッチによって実現される。インターコネクトネットワーク30は、あるいは、通常のEthernet、もしくは、ExpEther(登録商標)によって実現されてもよい。ExpEtherは、高速かつ汎用的な規格であるPCI(Peripheral Component Interconnect) expressネットワークをEthernetにより構成する既存の技術である。
記憶装置140-1乃至140-nは、インターコネクトネットワーク30と接続可能なインタフェース制御機能と記憶デバイスとを備える。記憶デバイスは、例えば、フラッシュメモリ、DRAM(Dynamic Random Access Memory)、MRAM(Magnetoresistive Random Access Memory)、HDD(Hard Disk Drive)等である。記憶装置140-1乃至140-nは、例えば、PCI expressインタフェースにより接続されるSSD(Solid State Drive)を備えてもよい。記憶装置140-1乃至140-nは、複数のHDDやSSDに接続されたRAID(Redundant Arrays of Inexpensive Disks)カード、あるいは、記憶機能を備えるGPGPU(General-Purpose computing on Graphics Processing Units)カード、あるいは、Intel Xeon Phi(登録商標)のようなMIC(Many Integrated Core)(登録商標)アーキテクチャに基づく演算ボード等を備えてもよい。
プロセッサ120-1は、メモリ130-1に格納された分散処理ミドルウェア131-1を実行している。分散処理ミドルウェア131-1は、例えば、HadoopやSpark等のミドルウェアである。分散処理ミドルウェア131-1は、Map/Reduce関数等、計算機100-1乃至100-nによって分散処理される処理(タスク)の実行や、アプリケーションの実行におけるタスク間の同期制御等を行う機能を備える。分散処理ミドルウェア131-1は、計算機100-1乃至100-nにおいて実行されているスケジューラからの要求を受けて、当該要求が示すタスクの実行を開始する機能を備える。
本実施形態に係る分散処理ミドルウェア131-1は、リソース分離アーキテクチャに対応していないこととする。すなわち、分散処理ミドルウェア131-1は、プロセッサ120-1乃至120-n、及び、記憶装置140-1乃至140-nが、インターコネクトネットワーク30によって接続されている構成を認識することができない。
したがって、本実施形態に係るアクセス制御システム1では、分散処理ミドルウェア131-1がシステムの構成を認識できるようにするために、例えば論理計算機の構築を制御するソフトウェア等によって、論理計算機10-1乃至10-nが構築されている。論理計算機10-1は、計算機100-1、記憶装置140-1、及び、インターコネクトネットワーク30の一部を含んでいる。論理計算機10-2及び10-nの構成及び機能は、論理計算機10-1と同様である。なお、図1に例示する構成では、論理計算機10-1乃至10-nは、個々に、記憶装置140-1乃至140-nのいずれか1つを備えているが、例えば、少なくともいずれかの論理計算機が、複数の記憶装置を備えるようにしてもよい。論理計算機10-1乃至10-nには、各論理計算機を識別可能な識別子として、順に、「Host1」乃至「Hostn」というホスト名が、システム管理者等によって付与されていることとする。
分散処理ミドルウェア131-1は、図1に示すアクセス制御システム1の構成を、図6に例示するマルチノードシステム3と同等なシステム(すなわち、プロセッサと記憶装置とを備える複数の計算機が、計算機ネットワーク20によって接続されたシステム)として認識している。したがって、分散処理ミドルウェア131-1は、プロセッサ120-1から記憶装置140-i(iは2乃至nのいずれかの整数)へのアクセスを、計算機ネットワーク20を介して、論理計算機10-iに依頼することによって行うように制御する機能を備えている。この際、依頼された論理計算機10-iは、インターコネクトネットワーク30を介して、記憶装置140-iに対するアクセスを行う。分散処理ミドルウェア131-1は、プロセッサ120-1から記憶装置140-1へのアクセスを、インターコネクトネットワーク30を介して行うように制御する機能を備えている。
計算機100-1が備えるアクセス制御装置110-1は、判定部111-1、及び、変換部112-1を備えている。
判定部111-1は、プロセッサ120-1から発行された命令(リクエスト)に含まれる、当該命令の種別を区分可能な種別情報が特定の値であるか否かを確認することによって、当該命令が記憶装置140-1乃至140-nのいずれかに対するアクセス命令であるのか否かを判定する。プロセッサ120-1から発行される、記憶装置140-1乃至140-nのいずれかに対するアクセス命令以外の命令としては、例えば、プロセッサ120-2乃至120-nの少なくともいずれかに対するプロセッサ間通信命令等がある。
判定部111-1は、当該命令が記憶装置140-1乃至140-nのいずれかに対するアクセス命令である場合、当該命令が、記憶装置140-1に対するアクセス(ローカルアクセス)命令であるのか、あるいは、記憶装置140-2乃至140-nのいずれかに対するアクセス(リモートアクセス)命令であるのかを確認する。なお、ローカルアクセスは、プロセッサとアクセス先の記憶装置とが同じ論理計算機に存在するアクセスのことであり、リモートアクセスは、プロセッサとアクセス先の記憶装置とが異なる論理計算機に存在するアクセスのことである。判定部111-1は、確認した結果を変換部112-1に通知する。
変換部112-1は、判定部111-1による判定結果がリモートアクセスであることを示す場合、変換テーブル113-1に基づいて、そのリモートアクセス命令をローカルアクセス命令に変換する(擬装する)処理を行う。
図2は、本実施形態に係る変換テーブル113-1の構成を例示する図である。図2に例示する通り、変換テーブル113-1は、論理計算機ホスト名(IPアドレス)と、アクセスパスと、自論理計算機内アクセスパス(変換後アクセスパス)とが関連付けされた情報である。
変換テーブル113-1におけるアクセスパスは、論理計算機10-i(iは1乃至nのいずれかの整数)において記憶装置140-iがマウントされているパスを示している。図2に例示する通り、本実施形態では、論理計算機10-1における記憶装置140-1、論理計算機10-2における記憶装置140-2、及び、論理計算機10-3における記憶装置140-3がマウントされているパスは、いずれも、「/filesystem/sda」である。
変換テーブル113-1における自論理計算機内アクセスパスは、論理計算機10-1において、記憶装置140-iがマウントされる場合のパスを示している。図2に例示する通り、本実施形態では、論理計算機10-1において、記憶装置140-1乃至140-3がマウントされるパスは、順に、「/filesystem/sda」、「/filesystem/sdb」、及び、「/filesystem/sdc」である。
例えば、プロセッサ120-1から発行されたリモートアクセス命令が示すアクセス先が「Host2:/filesystem/sda/hoge/fuga-001」である場合、変換部112-1は、以下の通りに動作する。すなわち、変換部112-1は、当該アクセス先に含まれる「Host2」を、自論理計算機のホスト名である「Host1」に変換する。変換部112-1は、変換テーブル113-1における「Host2」の「/filesystem/sda」に関するレコードに基づいて、当該アクセス先に含まれる「/filesystem/sda」を、「/filesystem/sdb」に変換する。これにより、変換部112-1は、当該アクセス先を、「Host2:/filesystem/sda/hoge/fuga-001」から「Host1:/filesystem/sdb/hoge/fuga-001」に変換する。このようにして、プロセッサ120-1から発行されたリモートアクセス命令は、変換部112-1によって、ローカルアクセス命令に変換(擬装)される。変換部112-1は、リモートアクセス命令をローカルアクセス命令に変換処理した内容を、メモリ130-1に記憶されているアクセス先管理情報132-1に反映する。
アクセス先管理情報132-1は、プロセッサ120-1が、分散処理ミドルウェア131-1やアプリケーションソフトウェア(不図示)を実行することによって、記憶装置140-1乃至140-nのいずれかにアクセスする際に参照する、アクセス先の場所を管理する情報である。アクセス先管理情報132-1は、例えば、通信ネットワークにおけるホスト名やIPアドレス等を管理する仕組みによって、プロセッサ120-1が記憶装置140-1乃至140-nのいずれかにアクセスする際に得る情報である。このようなホスト名やIPアドレス等を管理する仕組みとしては、例えば、DNS(Domain Name System)、あるいは、オペレーティングシステムのファイルシステムにおける「/etc/hostsファイル」等がある。
また、アクセス制御システム1にメタデータサーバが存在する場合、アクセス先管理情報132-1は、メタデータサーバによって管理される情報である。メタデータサーバは、一般的な分散ファイルシステム等において、アクセス先のファイルパスを受けて、そのアクセス先の計算機のアドレス及び当該計算機内のローカルパスを応答する仕組みである。HDFS(Hadoop Distributed File System)(登録商標)と呼ばれるHadoop向けの分散ファイルシステムでは、NameNode(登録商標)が、このメタデータサーバに相当する。
また、Sparkには、データを保持するノード(計算機)をプログラムの内部において管理する、BlockManager(登録商標)、Broadcast(登録商標)と呼ばれるモジュールがある。この場合、アクセス先管理情報132-1は、これらのモジュールによって管理される情報である。
プロセッサ120-1は、変換部112-1によって上述の通り更新されたアクセス先管理情報132-1に基づいて、アクセス先である記憶装置140-2乃至140-nのいずれかに対して、インターコネクトネットワーク30を介したローカルアクセスを行う。
次に図3のフローチャートを参照して、本実施形態に係るアクセス制御装置110-1の動作(処理)について詳細に説明する。
アクセス制御装置110-1に対して、プロセッサ120-1から発行された命令が入力される(ステップS101)。判定部111-1は、当該命令の内容を確認する(ステップS102)。当該命令が、いずれかの記憶装置140-i(iは1乃至nのいずれかの整数)へのアクセスでない(すなわち、プロセッサ間通信等である)場合(ステップS103でNo)、全体の処理は終了する。当該命令が、いずれかの記憶装置140-iへのアクセスである場合(ステップS103でYes)、処理はステップS104へ進む。
記憶装置140-iが記憶装置140-1である場合(ステップS104でYes)、全体の処理は終了する。記憶装置140-iが記憶装置140-1でない(すなわち、記憶装置140-2乃至140-nである)場合(ステップS104でNo)、変換部112-1は、アクセス先管理情報132-1を更新することによって、当該命令が示すアクセスパスを、論理計算機10-1内のアクセスパスに変換し(ステップS105)、全体の処理は終了する。
本実施形態に係るアクセス制御装置110-1は、リソース分離アーキテクチャを用いたマルチノードシステムが、リソース分離アーキテクチャに対応していないソフトウェア等による制御によって、ノード間にまたがるデータアクセスを行う場合に、アクセス性能の低下、及び、資源の使用効率の低下を回避することができる。その理由は、アクセス制御装置110-1は、プロセッサ120-1から発行された命令が、記憶装置140-2乃至140-nに対するリモートアクセス命令である場合に、アクセス先管理情報132-1を更新することによって、当該リモートアクセス命令をローカルアクセス命令に変換するからである。
以下に、本実施形態に係るアクセス制御装置110-1によって実現される効果について、詳細に説明する。
近年、リソース分離アーキテクチャを備えた計算機システムが実現されている。既存の分散処理ミドルウェアには、このリソース分離アーキテクチャが出現する前に開発された製品も多い。そのような分散処理ミドルウェアは、図7に例示するような、プロセッサと記憶装置とが、インターコネクトネットワークによって接続されている構成を認識することができない。
このため、図7に例示するように論理計算機が構築されることによって、当該分散処理ミドルウェアは、図7に例示するマルチノードシステム4を、図6に例示するマルチノードシステム3と同等のアーキテクチャを有するシステムとして認識する。この場合、マルチノードシステム4は、プロセッサからのリモートアクセスを、本来はインターコネクトネットワーク30を介して行えるのにもかかわらず、分散処理ミドルウェアによる制御によって、計算機ネットワーク20を介してアクセス先の論理計算機に依頼することによって行う。これにより、そのアクセス性能が低下すること、及び、アクセスによる計算機間の通信に伴い計算機の資源を必要以上に使用することが問題となる。
このような問題に対して、本実施形態に係るアクセス制御装置110-1では、判定部111-1は、プロセッサ120-1によって行われるアクセスが、リモートアクセスであるか否かを判定する。変換部112-1は、判定部111-1によって、当該アクセスがリモートアクセスであると判定された場合に、リモートアクセスをローカルアクセスに変換(擬装)する。変換部112-1は、アクセス先である記憶装置140-iを論理計算機10-iと関連付けるアクセス先管理情報132-1を、記憶装置140-iを論理計算機10-1と関連付けるように更新することによって、この変換を行う。これにより、本実施形態に係るアクセス制御装置110-1は、リソース分離アーキテクチャを用いたマルチノードシステムが、リソース分離アーキテクチャに対応していないソフトウェア等による制御によって、ノード間にまたがるデータアクセスを行う場合に、アクセス性能の低下、及び、資源の使用効率の低下を回避することができる。また、本実施形態に係るアクセス制御装置110-1は、分散処理ミドルウェアをリソース分離アーキテクチャに対処可能に再設計することによってコストが増加することを回避できる。
また、本実施形態に係るアクセス制御装置110-1では、判定部111-1は、プロセッサ120-1から発行された命令が、記憶装置140-i(iは2乃至nのいすれかの整数)に対するリモートアクセス命令であるか否かを判定する。変換部112-1は、当該命令がリモートアクセス命令である場合に、リモートアクセス命令をローカルアクセス命令に変換する処理を行う。すなわち、アクセス制御装置110-1は、当該命令が、論理計算機10-iに対するプロセッサ間通信命令等である(すなわち記憶装置に対するアクセス命令でない)場合は、リモートアクセスからローカルアクセスへの変換処理を行わない。これにより、本実施形態に係るアクセス制御装置110-1は、リモートアクセスからローカルアクセスへの変換処理を適切に行うことができる。
尚、本実施形態に係るアクセス制御システム1は、同じ論理計算機に対して複数のホスト名が付与されたシステムであってもよい。この場合、プロセッサ120-1は、例えば、記憶装置140-iに対するアクセス命令と、論理計算機10-iに対するプロセッサ間通信命令との間で、命令に内包するホスト名が異なるようにしてもよい。この場合、ホスト名が、命令の種別を区分可能な種別情報に相当する。これにより、アクセス制御装置110-1は、プロセッサ120-1から発行された命令に含まれるホスト名によって、リモートアクセスからローカルアクセスへの変換処理を行うか否かを制御することができる。
また、本実施形態に係る記憶装置140-1乃至140-nがストレージ装置であり、計算機100-i(iは1乃至nの任意の整数)が、記憶装置140-iに対してアクセスしたデータを格納するストレージキャッシュを、例えばメモリ130-iの中に備える場合、アクセス制御装置110-1は、下記の通り動作してもよい。すなわち、判定部111-1は、リモートアクセスの対象となるデータがストレージキャッシュに存在するか否かを、アクセス先である論理計算機とプロセッサ間通信を行うことなどによって判定する。変換部112-1は、リモートアクセスの対象となるデータがストレージキャッシュに存在する場合、上述したリモートアクセスからローカルアクセスへの変換を中止する。
リモートアクセスの対象となるデータがストレージキャッシュに存在する場合、プロセッサ120-1は、当該データを、アクセス先である論理計算機におけるプロセッサから転送してもらうことにより入手することができる。一般的に、ストレージ装置へのアクセスに要する時間は、メモリへのアクセスに要する時間と比較して長い。したがって、リモートアクセスの対象となるデータがストレージキャッシュに存在する場合、インターコネクトネットワーク30を介したローカルアクセスを行うよりも、ストレージキャッシュに格納されたデータをアクセス先のプロセッサから転送してもらう方が、データの入手に要する時間は短い。これにより、本実施形態に係るアクセス制御装置110-1は、リモートアクセスの対象となるデータがストレージキャッシュに存在する場合に、アクセス性能の低下を回避することができる。
<第2の実施形態>
図4は、本願発明の第2の実施形態に係るアクセス制御装置410-1の構成を概念的に示すブロック図である。アクセス制御装置410-1は、アクセス制御システム2において通信アクセスを制御する装置である。
図4は、本願発明の第2の実施形態に係るアクセス制御装置410-1の構成を概念的に示すブロック図である。アクセス制御装置410-1は、アクセス制御システム2において通信アクセスを制御する装置である。
アクセス制御システム2において、第1の情報処理装置40-1に含まれる第1のプロセッサ420-1と、第2の情報処理装置40-2に含まれる第2のプロセッサ420-2とが、第1の通信ネットワーク50によって通信可能に接続されている。第1のプロセッサ420-1と、第1の情報処理装置40-1に含まれる第1の情報処理資源440-1と、第2の情報処理装置40-2に含まれる第2の情報処理資源440-2とが、第2の通信ネットワーク60によって通信可能に接続されている。
アクセス制御システム2では、第1のプロセッサ420-1から第1の情報処理資源440-1に対するローカルアクセスは、第2の通信ネットワーク60を介して行われるように構成されている。アクセス制御システム2では、第1のプロセッサ420-1から第2の情報処理資源440-2に対するリモートアクセスは、第1の通信ネットワーク50及び第2の通信ネットワーク60を介して行われるように構成されている。
本実施形態に係るアクセス制御装置410-1は、判定部411-1、及び、変換部412-1を備えている。
判定部411-1は、第1のプロセッサ420-1によって行われるアクセスが、リモートアクセスであるか否かを判定する。
変換部412-1は、判定部411-1が、当該アクセスがリモートアクセスであると判定した場合に、第2の情報処理資源440-2を第2の情報処理装置40-2と関連付けるアクセス先管理情報432-1を、第2の情報処理資源440-2を第1の情報処理装置40-1と関連付けるように更新する。これにより、変換部412-1は、リモートアクセスをローカルアクセスに変換する。
本実施形態に係るアクセス制御装置410-1は、リソース分離アーキテクチャを用いたマルチノードシステムが、リソース分離アーキテクチャに対応していないソフトウェア等による制御によって、ノード間にまたがるデータアクセスを行う場合に、アクセス性能の低下、及び、資源の使用効率の低下を回避することができる。その理由は、アクセス制御装置410-1は、第1のプロセッサ420-1から発行された命令が、第2の情報処理資源440-2に対するリモートアクセス命令である場合に、アクセス先管理情報432-1を更新することによって、当該リモートアクセス命令をローカルアクセス命令に変換するからである。
<ハードウェア構成例>
上述した各実施形態において図1、及び、図4に示したアクセス制御装置における各部は、専用のHW(HardWare)(電子回路)によって実現することができる。また、図1、及び、図4において、少なくとも、下記構成は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。
・判定部111-1及び411-1、
・変換部112-1及び412-1、
但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図5を参照して説明する。
上述した各実施形態において図1、及び、図4に示したアクセス制御装置における各部は、専用のHW(HardWare)(電子回路)によって実現することができる。また、図1、及び、図4において、少なくとも、下記構成は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。
・判定部111-1及び411-1、
・変換部112-1及び412-1、
但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図5を参照して説明する。
図5は、本願発明の各実施形態に係るアクセス制御装置を実行可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、図5は、図1、及び、図4に示したアクセス制御装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
図5に示した情報処理装置900は、構成要素として下記を備えている。
・CPU(Central_Processing_Unit)901、
・ROM(Read_Only_Memory)902、
・RAM(Random_Access_Memory)903、
・ハードディスク(記憶装置)904、
・外部装置との通信インタフェース905、
・バス906(通信線)、
・CD-ROM(Compact_Disc_Read_Only_Memory)等の記録媒体907に格納されたデータを読み書き可能なリーダライタ908、
・入出力インタフェース909。
・CPU(Central_Processing_Unit)901、
・ROM(Read_Only_Memory)902、
・RAM(Random_Access_Memory)903、
・ハードディスク(記憶装置)904、
・外部装置との通信インタフェース905、
・バス906(通信線)、
・CD-ROM(Compact_Disc_Read_Only_Memory)等の記録媒体907に格納されたデータを読み書き可能なリーダライタ908、
・入出力インタフェース909。
即ち、上記構成要素を備える情報処理装置900は、これらの構成がバス906を介して接続された一般的なコンピュータである。情報処理装置900は、CPU901を複数備える場合もあれば、マルチコアにより構成されたCPU901を備える場合もある。
そして、上述した実施形態を例に説明した本願発明は、図5に示した情報処理装置900に対して、次の機能を実現可能なコンピュータプログラムを供給する。その機能とは、その実施形態の説明において参照したブロック構成図(図1、及び、図4)における上述した構成、或いはフローチャート(図3)の機能である。本願発明は、その後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性のメモリ(RAM903)、または、ROM902やハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、現在では一般的な手順を採用することができる。その手順としては、例えば、CD-ROM等の各種記録媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等がある。そして、このような場合において、本願発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記録媒体907によって構成されると捉えることができる。
以上、上述した実施形態を模範的な例として本願発明を説明した。しかしながら、本願発明は、上述した実施形態には限定されない。即ち、本願発明は、本願発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
この出願は、2016年4月27日に出願された日本出願特願2016-088941を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1 アクセス制御システム
2 アクセス制御システム
3 マルチノードシステム
4 マルチノードシステム
10-1乃至10-n 論理計算機
100-1乃至100-n 計算機
110-1 アクセス制御装置
111-1 判定部
112-1 変換部
113-1 変換テーブル
120-1乃至120-n プロセッサ
130-1 メモリ
131-1 分散処理ミドルウェア
132-1 アクセス先管理情報
140-1乃至140-n 記憶装置
20 計算機ネットワーク
30 インターコネクトネットワーク
40-1 第1の情報処理装置
40-2 第2の情報処理装置
410-1 アクセス制御装置
411-1 判定部
412-1 変換部
420-1 第1のプロセッサ
420-2 第2のプロセッサ
432-1 アクセス先管理情報
440-1 第1の情報処理資源
440-2 第2の情報処理資源
50 第1の通信ネットワーク
60 第2の通信ネットワーク
70-1乃至70-n 計算機
720-1 プロセッサ
730-1 メモリ
740-1 記憶装置
750-1 内部バス
80-1乃至80-n 論理計算機
800-1乃至800-n 計算機
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク(記憶装置)
905 通信インタフェース
906 バス
907 記録媒体
908 リーダライタ
909 入出力インタフェース
2 アクセス制御システム
3 マルチノードシステム
4 マルチノードシステム
10-1乃至10-n 論理計算機
100-1乃至100-n 計算機
110-1 アクセス制御装置
111-1 判定部
112-1 変換部
113-1 変換テーブル
120-1乃至120-n プロセッサ
130-1 メモリ
131-1 分散処理ミドルウェア
132-1 アクセス先管理情報
140-1乃至140-n 記憶装置
20 計算機ネットワーク
30 インターコネクトネットワーク
40-1 第1の情報処理装置
40-2 第2の情報処理装置
410-1 アクセス制御装置
411-1 判定部
412-1 変換部
420-1 第1のプロセッサ
420-2 第2のプロセッサ
432-1 アクセス先管理情報
440-1 第1の情報処理資源
440-2 第2の情報処理資源
50 第1の通信ネットワーク
60 第2の通信ネットワーク
70-1乃至70-n 計算機
720-1 プロセッサ
730-1 メモリ
740-1 記憶装置
750-1 内部バス
80-1乃至80-n 論理計算機
800-1乃至800-n 計算機
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク(記憶装置)
905 通信インタフェース
906 バス
907 記録媒体
908 リーダライタ
909 入出力インタフェース
Claims (10)
- 第一の情報処理装置に含まれる第一のプロセッサと、第二の情報処理装置に含まれる第二のプロセッサとが、第一の通信ネットワークによって通信可能に接続され、前記第一のプロセッサと、前記第一の情報処理装置に含まれる第一の情報処理資源と、前記第二の情報処理装置に含まれる第二の情報処理資源とが、第二の通信ネットワークによって通信可能に接続され、前記第一のプロセッサから前記第一の情報処理資源に対するローカルアクセスは、前記第二の通信ネットワークを介して行われ、前記第一のプロセッサから前記第二の情報処理資源に対するリモートアクセスは、前記第一及び第二の通信ネットワークを介して行われるように構成されたシステムにおいて通信アクセスを制御する装置であって、
前記第一のプロセッサによって行われるアクセスが、前記リモートアクセスであるか否かを判定する判定手段と、
前記判定手段が、前記アクセスが前記リモートアクセスであると判定した場合に、前記第二の情報処理資源を前記第二の情報処理装置と関連付けるアクセス先管理情報を、前記第二の情報処理資源を前記第一の情報処理装置と関連付けるように更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する変換手段と、
を備えるアクセス制御装置。 - 前記判定手段は、前記リモートアクセスの種別を区分可能な種別情報を含む前記リモートアクセスに対して、前記種別情報が特定の値を示すか否かを判定し、
前記変換手段は、前記種別情報が特定の値を示す場合に、前記リモートアクセスを前記ローカルアクセスに変換する、
請求項1に記載のアクセス制御装置。 - 前記判定手段は、前記第一のプロセッサが、前記リモートアクセスの種別に応じて、前記第二の情報処理装置を識別可能な識別子として異なる値を付与する場合に、前記種別情報である前記識別子が、前記特定の値を示すか否かを判定する、
請求項2に記載のアクセス制御装置。 - 前記変換手段は、ドメインネームシステム、あるいは、オペレーティングシステムのファイルシステムにより管理される前記アクセス先管理情報を更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する、
請求項1乃至3のいずれか一項に記載のアクセス制御装置。 - 前記変換手段は、メタデータサーバにより管理される前記アクセス先管理情報を更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する、
請求項1乃至4のいずれか一項に記載のアクセス制御装置。 - 前記変換手段は、前記第一の情報処理装置によって実行される分散処理ミドルウェアに含まれるモジュールにより管理される前記アクセス先管理情報を更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する、
請求項1乃至5のいずれか一項に記載のアクセス制御装置。 - 前記第二の情報処理装置が、ストレージ装置である前記第二の情報処理資源に対してアクセスしたデータを格納するストレージキャッシュを備える場合に、
前記判定手段は、前記リモートアクセスの対象となるデータが前記ストレージキャッシュに存在するか否かを判定し、
前記変換手段は、前記リモートアクセスの対象となるデータが前記ストレージキャッシュに存在する場合は、前記リモートアクセスから前記ローカルアクセスへの変換を中止する、
請求項1乃至6のいずれか一項に記載のアクセス制御装置。 - 請求項1乃至7のいずれか一項に記載のアクセス制御装置と、
前記第一及び第二の情報処理装置と、
前記第一及び第二の通信ネットワークと、
を有するアクセス制御システム。 - 第一の情報処理装置に含まれる第一のプロセッサと、第二の情報処理装置に含まれる第二のプロセッサとが、第一の通信ネットワークによって通信可能に接続され、前記第一のプロセッサと、前記第一の情報処理装置に含まれる第一の情報処理資源と、前記第二の情報処理装置に含まれる第二の情報処理資源とが、第二の通信ネットワークによって通信可能に接続され、前記第一のプロセッサから前記第一の情報処理資源に対するローカルアクセスは、前記第二の通信ネットワークを介して行われ、前記第一のプロセッサから前記第二の情報処理資源に対するリモートアクセスは、前記第一及び第二の通信ネットワークを介して行われるように構成されたシステムにおいて、
第三の情報処理装置によって、
前記第一のプロセッサによって行われるアクセスが、前記リモートアクセスであるか否かを判定し、
前記アクセスが前記リモートアクセスであると判定された場合に、前記第二の情報処理資源を前記第二の情報処理装置と関連付けるアクセス先管理情報を、前記第二の情報処理資源を前記第一の情報処理装置と関連付けるように更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する、
アクセス制御方法。 - 第一の情報処理装置に含まれる第一のプロセッサと、第二の情報処理装置に含まれる第二のプロセッサとが、第一の通信ネットワークによって通信可能に接続され、前記第一のプロセッサと、前記第一の情報処理装置に含まれる第一の情報処理資源と、前記第二の情報処理装置に含まれる第二の情報処理資源とが、第二の通信ネットワークによって通信可能に接続され、前記第一のプロセッサから前記第一の情報処理資源に対するローカルアクセスは、前記第二の通信ネットワークを介して行われ、前記第一のプロセッサから前記第二の情報処理資源に対するリモートアクセスは、前記第一及び第二の通信ネットワークを介して行われるように構成されたシステムに含まれるコンピュータに、
前記第一のプロセッサによって行われるアクセスが、前記リモートアクセスであるか否かを判定する判定処理と、
前記判定処理が、前記アクセスが前記リモートアクセスであると判定した場合に、前記第二の情報処理資源を前記第二の情報処理装置と関連付けるアクセス先管理情報を、前記第二の情報処理資源を前記第一の情報処理装置と関連付けるように更新することによって、前記リモートアクセスを前記ローカルアクセスに変換する変換処理と、
を実行させるためのアクセス制御プログラムが格納された記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/095,727 US10909044B2 (en) | 2016-04-27 | 2017-04-17 | Access control device, access control method, and recording medium containing access control program |
JP2018514504A JPWO2017188036A1 (ja) | 2016-04-27 | 2017-04-17 | アクセス制御装置、アクセス制御システム、アクセス制御方法、及び、アクセス制御プログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016-088941 | 2016-04-27 | ||
JP2016088941 | 2016-04-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017188036A1 true WO2017188036A1 (ja) | 2017-11-02 |
Family
ID=60161595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/015426 WO2017188036A1 (ja) | 2016-04-27 | 2017-04-17 | アクセス制御装置、アクセス制御システム、アクセス制御方法、及び、アクセス制御プログラムが格納された記録媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10909044B2 (ja) |
JP (1) | JPWO2017188036A1 (ja) |
WO (1) | WO2017188036A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111147616B (zh) * | 2019-12-17 | 2022-10-25 | 北京明略软件***有限公司 | 一种资源获取方法、装置、电子设备及存储介质 |
US11595375B2 (en) * | 2020-04-14 | 2023-02-28 | Saudi Arabian Oil Company | Single sign-on for token-based and web-based applications |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006344090A (ja) * | 2005-06-10 | 2006-12-21 | Hitachi Ltd | Sanディザスタリカバリシステム |
JP2015520890A (ja) * | 2012-04-27 | 2015-07-23 | ネットアップ,インコーポレイテッド | 仮想ストレージ装置ゲートウェイ |
WO2015141219A1 (ja) * | 2014-03-20 | 2015-09-24 | 日本電気株式会社 | ストレージシステム、制御装置、記憶装置、データアクセス方法及びプログラム記録媒体 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6766424B1 (en) * | 1999-02-09 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | Computer architecture with dynamic sub-page placement |
JP5573829B2 (ja) | 2011-12-20 | 2014-08-20 | 富士通株式会社 | 情報処理装置およびメモリアクセス方法 |
JP5541275B2 (ja) | 2011-12-28 | 2014-07-09 | 富士通株式会社 | 情報処理装置および不正アクセス防止方法 |
US9740528B2 (en) | 2013-03-14 | 2017-08-22 | Hitachi, Ltd. | Virtual computer system and scheduling method |
-
2017
- 2017-04-17 JP JP2018514504A patent/JPWO2017188036A1/ja active Pending
- 2017-04-17 WO PCT/JP2017/015426 patent/WO2017188036A1/ja active Application Filing
- 2017-04-17 US US16/095,727 patent/US10909044B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006344090A (ja) * | 2005-06-10 | 2006-12-21 | Hitachi Ltd | Sanディザスタリカバリシステム |
JP2015520890A (ja) * | 2012-04-27 | 2015-07-23 | ネットアップ,インコーポレイテッド | 仮想ストレージ装置ゲートウェイ |
WO2015141219A1 (ja) * | 2014-03-20 | 2015-09-24 | 日本電気株式会社 | ストレージシステム、制御装置、記憶装置、データアクセス方法及びプログラム記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
US10909044B2 (en) | 2021-02-02 |
US20190171584A1 (en) | 2019-06-06 |
JPWO2017188036A1 (ja) | 2019-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10678432B1 (en) | User space and kernel space access to memory devices through private queues | |
JP6074056B2 (ja) | 計算機システムおよびデータ制御方法 | |
US20180027093A1 (en) | Methods and apparatus for sdi support for automatic and transparent migration | |
RU2562436C2 (ru) | Технологические приемы выгрузки объекта назначения виртуального хранилища | |
US10466935B2 (en) | Methods for sharing NVM SSD across a cluster group and devices thereof | |
US10635551B2 (en) | System, and control method and program for input/output requests for storage systems | |
JP5841255B2 (ja) | 仮想化入力/出力のためのプロセッサローカルコヒーレンシを有するコンピュータシステム | |
JP6383834B2 (ja) | マルチノード筐体システムの管理ポートを減少させるためのコンピュータ読み取り可能な記憶装置、システム及び方法 | |
WO2017179537A1 (ja) | ソフトウェア更新制御装置、ソフトウェア更新制御システム、ソフトウェア更新制御方法、及び、ソフトウェア更新制御プログラムが格納された記録媒体 | |
US20190042313A1 (en) | Shareable FPGA Compute Engine | |
US20180239649A1 (en) | Multi Root I/O Virtualization System | |
US10482049B2 (en) | Configuring NVMe devices for redundancy and scaling | |
WO2017188036A1 (ja) | アクセス制御装置、アクセス制御システム、アクセス制御方法、及び、アクセス制御プログラムが格納された記録媒体 | |
CN107528871B (zh) | 存储***中的数据分析 | |
JP6668993B2 (ja) | 並列処理装置及びノード間通信方法 | |
JP5182162B2 (ja) | 計算機システム及びi/o制御方法 | |
WO2011039887A1 (ja) | 計算機装置 | |
JP2013003691A (ja) | 計算機システムおよびその計算機システムにおけるディスク共有方法 | |
US20130318102A1 (en) | Data Handling in a Cloud Computing Environment | |
US9571576B2 (en) | Storage appliance, application server and method thereof | |
JP6909218B2 (ja) | ラック内のノードのための分散型オペレーティング・システム機能 | |
JP7281528B2 (ja) | 情報処理装置 | |
JP6694007B2 (ja) | 情報処理装置 | |
WO2023051248A1 (zh) | 一种数据访问***、方法及相关设备 | |
JP6351387B2 (ja) | 情報処理装置、プログラムおよび記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 2018514504 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17789321 Country of ref document: EP Kind code of ref document: A1 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17789321 Country of ref document: EP Kind code of ref document: A1 |