WO2013190688A1 - 情報処理システム,情報処理方法,通信装置 - Google Patents

情報処理システム,情報処理方法,通信装置 Download PDF

Info

Publication number
WO2013190688A1
WO2013190688A1 PCT/JP2012/065905 JP2012065905W WO2013190688A1 WO 2013190688 A1 WO2013190688 A1 WO 2013190688A1 JP 2012065905 W JP2012065905 W JP 2012065905W WO 2013190688 A1 WO2013190688 A1 WO 2013190688A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
user
information processing
authentication
communication
Prior art date
Application number
PCT/JP2012/065905
Other languages
English (en)
French (fr)
Inventor
鈴木和宏
Original Assignee
富士通株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士通株式会社 filed Critical 富士通株式会社
Priority to JP2014521174A priority Critical patent/JP5854138B2/ja
Priority to PCT/JP2012/065905 priority patent/WO2013190688A1/ja
Priority to EP12879178.7A priority patent/EP2866392B1/en
Publication of WO2013190688A1 publication Critical patent/WO2013190688A1/ja
Priority to US14/574,821 priority patent/US9509680B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2115Third party

Definitions

  • the present invention relates to an information processing system, an information processing method, and a communication device.
  • Various information processing services executed by an information processing apparatus are provided to users (hereinafter referred to as users) via a network.
  • An example of this information processing service is a so-called cloud service.
  • this cloud service for example, there is a service in which a service provider starts a virtual machine on an information processing apparatus provided in a data center and provides software executed by the virtual machine to a user.
  • software for example, OS (Operating System), applications, and middleware.
  • the service provider may provide, for example, a communication device such as a router device or a line network as hardware provided in the data center.
  • the user uses the information processing service provided in the data center via the terminal device.
  • the terminal device is connected to the information processing service via the access router.
  • the access router is a router that performs processing necessary for the terminal device to use the cloud service.
  • the access router connects to an information processing service registered in advance in response to a connection request from a user. However, since there is only one information processing service registered in the access router, if multiple users connect to the same access router and try to use the cloud service, they can only connect to the same information processing service.
  • an object of the present invention is to provide a state in which a plurality of users can use each information processing service via one communication device (for example, an access router).
  • one communication device for example, an access router
  • the first aspect of the information processing system includes a first device that executes software to perform an information processing service, and authenticates a user of the information processing service, and is defined for each user of the information processing service.
  • a second device for storing first information for activating the software and second information for establishing a virtual communication path for communicating with the software via a network; the first device; and a user
  • a communication device that controls communication with the terminal device via the network, wherein the communication device receives authentication information for authenticating a user of the information processing service from the terminal device, and The second device performs authentication of the user to the second device, and the second device authenticates the user.
  • the user authentication is successful, it is determined for each user of the information processing service.
  • the first information and the second information are transmitted to the communication device, the communication device receives the first information and the second information, and receives the received first information.
  • the first command to start the software is transmitted to the first device, the first device receives the first command, starts and executes the software, and the communication The apparatus opens the virtual communication path in the network based on the received second information.
  • the communication device instructs the device that provides the information processing service to execute the information processing service for each user, a plurality of users can communicate with each other via one communication device.
  • Information processing services can be used.
  • FIG. 2 is a hardware block diagram for explaining an example of an information processing system according to the first embodiment.
  • FIG. FIG. 2 is a hardware block diagram of the terminal device of FIG.
  • FIG. 2 is a hardware block diagram of the router device of FIG.
  • FIG. 4 is a block diagram of software modules executed by the router device of FIG.
  • FIG. 2 is a hardware block diagram of the authentication server device of FIG. It is a figure which shows an example of a cloud access management table. It is a figure which shows an example of a cloud service management table.
  • FIG. 2 is a hardware block diagram of the management server device of FIG. It is a figure which shows an example of a virtual router HW table. It is a figure which shows an example of a virtual machine HW table.
  • FIG. 2 is a hardware block diagram of the server device of FIG.
  • FIG. 5 is a flowchart illustrating a process flow in the router device of FIG.
  • FIG. 6 is a diagram illustrating a flow of virtual router, virtual machine activation, and tunnel establishment processing in the first embodiment.
  • FIG. 10 is a hardware block diagram illustrating an example of an information processing system according to a second embodiment.
  • FIG. 15 is a hardware block diagram of the terminal device of FIG.
  • FIG. 15 is a block diagram of software modules executed by the router device of FIG.
  • FIG. 15 is a hardware block diagram of the cloud directory service device of FIG. It is a figure which shows an example of an authentication server access information management table.
  • FIG. 15 is a hardware block diagram of the authentication server device of FIG.
  • FIG. 10 is a block diagram of software modules executed by a router device according to a third embodiment.
  • FIG. 10 is a hardware block diagram of an authentication server device in a third embodiment. It is a figure which shows an example of a cloud service management table.
  • FIG. 10 is a diagram illustrating a flow of virtual router, virtual machine activation, and tunnel establishment processing in the third embodiment.
  • FIG. 10 is a diagram for explaining a flow of virtual router, virtual machine stop, and tunnel stop processing in the third embodiment.
  • FIG. 1 is a hardware block diagram for explaining an example of the information processing system SYS in the first embodiment.
  • the information processing system SYS includes a data center DC_Na of the first data center DC_1 to Nath (Na is an integer of 2 or more), a user-side system US, and an authentication server device 3 connected to the communication line network Nt.
  • the first data center DC_1 to the Nath data center DC_Na are an example of a first device that executes software to perform an information processing service and provides the user with the information processing service.
  • the information processing service is, for example, a cloud service, and this cloud service is SaaS (Software as a Service).
  • the user side system US is a system that uses this cloud service. Between the first data center DC_1 to the Nath data center DC_Na and the user-side system US, there is provided a communication line network Nt installed by a communication provider that provides various communication services such as data communication.
  • the user-side system US is an information processing device used by a user (hereinafter referred to as a terminal device), which is a first terminal device 1_1 to Nb (Nb is an integer of 2 or more), a terminal device 1_Nb, and an Nc ( Nc is an integer exceeding Nb) terminal device 1_Nc to Ndth terminal device 1_Nd (Nd is an integer exceeding Nc).
  • a terminal device which is a first terminal device 1_1 to Nb (Nb is an integer of 2 or more), a terminal device 1_Nb, and an Nc ( Nc is an integer exceeding Nb) terminal device 1_Nc to Ndth terminal device 1_Nd (Nd is an integer exceeding Nc).
  • These terminal devices are, for example, desktop, laptop, and tablet personal computers.
  • these terminal devices may be portable small communication terminal devices such as smartphones.
  • the user-side system US has a router device 2 to which these terminal devices are connected.
  • the first terminal device 1_1 to the Nbth terminal device 1_Nb have a wireless communication function, and connect to the router device 2 via a so-called wireless LAN (Local Area Network) to perform wireless data communication.
  • wireless LAN Local Area Network
  • IEEE 802.11 As a standard for wireless data communication, for example, IEEE 802.11 is known.
  • the first terminal device 1_Nc to the Ndth terminal device 1_Nd have a wired communication function, and are connected to the router device 2 via an internal network Nu which is a so-called wired LAN.
  • the router device 2 is a router device that performs processing necessary for a terminal device such as the first terminal device 1_Nc to use the cloud service, and is also called an access router.
  • the router device 2 is a communication device that performs packet routing and interconnects networks.
  • the router device 2 normally has an OSI (Open In the Systems Interconnection basic reference model, connection processing from the first layer (physical layer) to the third layer (network layer) is executed, and in addition to the wired communication function, for example, a wireless communication function is provided.
  • the router device 2 uses the wireless communication function to connect to the first terminal device 1_1 to the Nbth terminal device 1_Nb and uses the wired communication function to connect the Nc terminal device 1_Nc to the Nd terminal device. Connect to 1_Nd.
  • the router device 2 is connected to the communication network Nt by using a wired communication function or a wireless communication function.
  • the communication network Nt is, for example, a wide area IP (Internet Protocol) communication network.
  • the router device 2 is an example of a communication device that controls communication via a network (communication network Nt) between the data center DC_1 and a user terminal device 1_1, for example.
  • a network communication network Nt
  • the authentication server device 3 authenticates the user of the cloud service, and establishes a virtual communication path for communicating the first information and software defined above for each cloud service user and the software via the network. Second information for storing is stored. The first information and the second information will be described later.
  • the first data center DC_1 includes, for example, a server device 4_Ne of the first server device 4_1 to Ne (Ne is an integer of 2 or more) and a gateway device connected to each other via an internal network Ndc that is a wired LAN. 5, a router device 6, and a management server device 7.
  • the Ne-th server device 4_ Ne starts and executes the virtual machine 4vm and the virtual router 4vr which are software.
  • the other first server device 4_1 and the like have the same configuration as the Neth server device 4_Ne.
  • the virtual machine 4vm executes software that provides various information processing services to the user in the user side system US.
  • the virtual router 4vr controls data output from the virtual machine 4vm and data input to the virtual machine 4vm.
  • the virtual router 4vr executes a communication packet routing process for the virtual machine 4vm, and controls the communication process of the virtual machine 4vm.
  • the first server device 4_1 may activate and execute a virtual router corresponding to the virtual network to which the virtual machine group belongs, for example.
  • the virtual router is the router VM (Virtual Machine).
  • the Ne server device 4_ Ne is an example of a service execution device that executes software (for example, a virtual machine 4vm, a virtual router 4vr) to perform a cloud service.
  • the gateway device 5 executes interconnection between the first data center DC_1 and the communication network Nt.
  • the gateway device 5 has an impedance matching function and a protocol conversion function, and absorbs differences in communication media and transmission methods between the first data center DC_1 and the communication line network Nt, so that the first data center The interconnection between DC_1 and the communication network Nt is executed.
  • the router device 6 performs packet routing in the first data center DC1_1 and performs interconnection between the devices.
  • the management server device 7 is a server device that manages the first server device 4_1 to the Neth server device 4_Ne, the gateway device 5, and the router device 6.
  • the second data center DC_2 to the Nath data center DC_Na also have the same device configuration as the first data center DC_1.
  • the router device 2 of the user-side system US has a virtual communication path that functions as a closed virtual direct communication path that connects between the first connection point (also referred to as a connection node) and the second connection point ( (Hereinafter referred to as “tunnel” as appropriate).
  • the first connection point is the router device 2
  • the second connection point is the virtual router 4vr of the data center DC_1.
  • the tunnel between the first and second connection points is schematically indicated by reference numeral L2_1.
  • the symbol L2_Na indicates a tunnel that the router device 2 has established with the virtual router (not shown) of the Nath data center DC_Na.
  • This tunnel encapsulates an Ethernet frame (Ethernet is a registered trademark) in the second layer (also called layer 2) of the OSI basic reference model, and is also called a so-called L (Layer) 2 tunnel.
  • Layer 2 Layer 2
  • GRE Generic
  • OpenVPN Virtual Private Network
  • L2TP Layer 2 Tunneling Protocol
  • FIG. 2 is a hardware block diagram of the terminal device of FIG.
  • the terminal device 1 is, for example, any one of the first terminal device 1_1 to the Nbth terminal device 1_Nb having a wireless communication function in FIG.
  • Connected to the terminal device 1 are a display device 121 such as a liquid crystal display, an operation device 131 such as a keyboard and a mouse, and a card reader 141 that reads user authentication information stored in a user identification card possessed by each user. Yes.
  • This user identification card is also called a smart card.
  • the terminal device 1 is connected to each other via a bus B, for example, a CPU (Central Processing Unit) 11, a display control unit 12, an operation control unit 13, a card reader control unit 14, a communication device 15, a memory 16, and a storage device 17.
  • a bus B for example, a CPU (Central Processing Unit) 11, a display control unit 12, an operation control unit 13, a card reader control unit 14, a communication device 15, a memory 16, and a storage device 17.
  • a CPU Central Processing Unit
  • display control unit 12 for example, a display control unit 12, an operation control unit 13, a card reader control unit 14, a communication device 15, a memory 16, and a storage device 17.
  • the CPU 11 is an arithmetic processing device (also called a control unit or a computer) that controls the entire terminal device 1.
  • the display control unit 12 executes processing for displaying various images on the display device 121.
  • the various images are a user authentication screen and a tunnel establishment notification screen described later.
  • the operation control unit 13 executes various processes corresponding to the operation instruction in response to the operation instruction input from the operation device 131.
  • the card reader control unit 14 controls processing for reading user authentication information from a user identification card inserted into the card reader 141.
  • the communication device 15 is a wireless LAN slave device that performs wireless communication with the router device 2.
  • the communication device 15 is a so-called network interface card (NIC: Network Interface Card).
  • the memory 16 temporarily stores data processed in various information processing executed by the CPU 11 and various programs.
  • the overall management unit 161 of the memory 16 manages various processes executed by the terminal device 1.
  • the overall management unit 161 manages, for example, the authentication information acquisition unit 162, the authentication information transmission unit 163, and the access unit 164, and executes communication packet transmission / reception processing with a device connected to the communication device 15.
  • the authentication information acquisition unit 162 obtains authentication information including a user identifier (ID) for identifying a user of the cloud service and information for confirming whether the user is a valid user of the cloud service. Obtained from the reader controller 14.
  • the authentication information will be described in detail with reference to FIG.
  • the authentication information transmission unit 163 transmits the authentication information acquired by the authentication information acquisition unit 162 to the authentication server device 3 via the router device 2, and the access unit 164 performs processing for accessing a virtual machine operating in the data center DC_1. Execute.
  • the overall management unit 161, the authentication information acquisition unit 162, the authentication information transmission unit 163, and the access unit 164 are so-called programs, and these programs are stored in the storage device 17, for example.
  • the CPU 11 reads out these programs from the storage device 17 and expands them in the memory 16 so that these programs function as software modules.
  • the storage device 17 is, for example, a magnetic storage device such as a hard disk drive (HDD) or a non-volatile memory (Non-volatile memory), and stores the aforementioned programs and various data.
  • a magnetic storage device such as a hard disk drive (HDD) or a non-volatile memory (Non-volatile memory)
  • HDD hard disk drive
  • Non-volatile memory Non-volatile memory
  • Fig. 3 is a hardware block diagram of the router device (access router device) of Fig. 1.
  • the router device 2 includes a CPU 21, a communication device 22, a memory 23, and a storage device 24 that are connected to each other via a bus B, for example.
  • the CPU 21 is an arithmetic processing unit that controls the entire router device 2.
  • the communication device 22 includes a wired communication device 221 that executes wired communication and a wireless communication device 222 that executes wireless communication.
  • the wired communication device 221 has, for example, a plurality of NICs, is wired to the communication line network Nt, and communicates with various devices connected to the communication line network Nt. Also, the wired communication device 221 performs communication by connecting to a terminal device 1_Nc having a wired communication function.
  • the first NIC (not shown) of the wired communication device 221 is wired to the communication line network Nt
  • the second NIC (not shown) is wired to the terminal device 1_Nc having a wired communication function.
  • the line connected to the data center DC1_1 is not limited to a wired line but may be a public wireless line or a mobile line.
  • the wireless communication device 222 is a wireless LAN master device that performs wireless connection and communication with the terminal device 1_1 having a wireless communication function.
  • the memory 23 temporarily stores data processed in various information processing executed by the CPU 21 and various programs.
  • the storage device 24 is, for example, a magnetic storage device or a nonvolatile memory.
  • the storage device 24 stores the program described in FIG. 4 and various data.
  • FIG. 4 is a block diagram of software modules executed by the router device (access router device) of FIG.
  • the overall management unit 231 manages various processes executed by the router device 2.
  • the overall management unit 231 manages, for example, the connection unit 232, the routing unit 233, the authentication management unit 234, the virtual router activation / deactivation unit 235, the virtual machine activation / deactivation unit 236, and the tunnel establishment unit (L2 connection unit) 237.
  • the overall management unit 231 executes communication packet transmission / reception processing with a device connected to the communication device 22 (see FIG. 3).
  • the connection unit 232 establishes a connection with the terminal device 1_1 etc. and executes bidirectional communication.
  • the routing unit 233 executes data communication processing (routing) between the router device 2 and other devices.
  • Other devices include, for example, the terminal device 1_1, the authentication server device 3, and the gateway device 5 in the data center DC1_1 in FIG.
  • the router device 2 executes data communication processing between the router device 2 and the virtual router.
  • the authentication management unit 234 manages user authentication processing for the authentication server device 3.
  • the virtual router activation / deactivation unit 235 instructs the management server device 7 (see FIG. 1) to execute virtual router activation processing and deactivation processing.
  • the virtual machine start / stop unit 236 instructs the management server device 7 to execute virtual machine start processing and stop processing.
  • the tunnel establishment unit 237 establishes a tunnel with the activated virtual router based on the L2 protocol corresponding to the authenticated user ID.
  • the overall management unit 231, the connection unit 232, the authentication management unit 234, the routing unit 233, the virtual router start / stop unit 235, the virtual machine start / stop unit 236, and the tunnel opening unit 237 are so-called programs.
  • 3 is stored in the storage device 24.
  • the CPU 21 in FIG. 3 reads out these programs from the storage device 24 and expands them in the memory 23 at the time of activation, thereby causing these programs to function as software modules.
  • FIG. 5 is a hardware block diagram of the authentication server device of FIG.
  • the authentication server device 3 includes a CPU 31, a communication device 32, a memory 33, and a storage device 34 that are connected to each other via a bus B, for example.
  • the CPU 31 is an arithmetic processing device that controls the entire authentication server device 3.
  • the communication device 32 is, for example, a NIC, which is wired to the communication line network Nt in FIG. 1 and communicates with various devices connected to the communication line network Nt.
  • the memory 33 temporarily stores data processed in various information processing executed by the CPU 31 and various programs.
  • the overall management unit 331 of the memory 33 manages various processes executed by the authentication server device 3.
  • the overall management unit 331 manages, for example, the authentication execution unit 332 and the access information acquisition unit 333, and executes transmission / reception processing of communication packets with a device connected to the communication device 32.
  • the authentication execution unit 332 executes user authentication processing in the user side system US of FIG.
  • the access information acquisition unit 333 acquires cloud access information for accessing the cloud service provided by the data center DC1_1 in FIG. 1 and transmits the acquired cloud access information to the router device 2.
  • This cloud access information includes the first information for starting up the software and the tunnel for communicating with this software via a network (for example, the communication network Nt) determined for each cloud service user. Has second information.
  • the overall management unit 331, the authentication execution unit 332, and the access information acquisition unit 333 are so-called programs, and this program is stored in the storage device 34, for example.
  • the CPU 31 reads these programs from the storage device 34 and expands them in the memory 33, thereby causing these programs to function as software modules.
  • the storage device 34 is, for example, a magnetic storage device or a nonvolatile memory.
  • the storage device 34 stores the above-described program, various data, a cloud access management table T1 having information necessary for accessing the cloud service, and a cloud service management table T2 for managing this cloud service.
  • FIG. 6 is a diagram showing an example of the cloud access management table T1.
  • the cloud access management table T1 in FIG. 6 includes a user ID column, a virtual router start / stop information column, a virtual router IP address column, an L2 protocol column, and a SaaSID column.
  • the user ID column stores a user ID for identifying a cloud service user.
  • the virtual router start / stop information column stores virtual router start / stop information corresponding to the user ID.
  • the virtual router IP address field stores the IP address of the virtual router.
  • the L2 protocol column stores a protocol type for establishing a tunnel between the virtual router and the router device 2.
  • the SaaSID column stores a SaaSID that identifies a cloud service used by a user having the user ID stored in the user ID column.
  • the user ID column stores “User-A”, “User-B”, and “User-C”.
  • the virtual router start / stop information column stores “API_VR-A”, “API_VR-B”, and “API_VR-C” as the virtual router start / stop information corresponding to each user ID.
  • the IP address column of the virtual router is “x1.x2.x3.x4”, “y1.y2.y3.y4”, “z1.z2.z3” as the IP address of the virtual router corresponding to the user ID. .z4 "is memorized.
  • the L2 protocol column contains “GRE” as the protocol type corresponding to each user ID. (Generic Routing Encapsulation), "OpenVPN” (Virtual Private Network), “L2TP” (Layer 2 Remember Tunneling Protocol).
  • the SaaSID column stores “SaaS-0”, “SaaS-1”, and “SaaS-0” as the SaaSID corresponding to each user ID described above.
  • the API Application Program Interface
  • the virtual router start / stop unit 235 of the router device 2 in FIG. 4 sets, for example, the IP address of the virtual router to be started, the user ID, and the start instruction option as arguments to this API, and executes this API.
  • the virtual router activation / deactivation unit 235 transmits a virtual router activation command to the management server device 7 in FIG.
  • This start command has a virtual router IP address, user ID, and start instruction option set as arguments.
  • the API is, for example, http: // www. hogehoge. com / cloud / vr / x1. x2. x3.
  • the management server device 7 in FIG. 8 starts a virtual router having an IP address set as an argument, for example, on the server device 4_Ne in FIG.
  • FIG. 7 is a diagram showing an example of the cloud service management table T2.
  • the cloud service management table T2 in FIG. 7 includes a SaaSID column, a virtual machine start / stop information column, a virtual machine IP address column, and a usage protocol column.
  • the SaaSID column stores the SaaSID shown in FIG.
  • the virtual machine start / stop information column stores virtual machine start / stop information.
  • the IP address column of the virtual machine stores the IP address of this virtual machine.
  • the use protocol column stores a protocol used when accessing this virtual machine.
  • the SaaSID column stores “SaaS-0” and “SaaS-1” as SaaSIDs
  • the cloud startup / shutdown information column stores virtual machine startup / shutdown information corresponding to each SaaSID as described above.
  • API_VM-A "and" API_VM-B are stored.
  • the virtual machine IP address column stores “xx1.xx2.xx3.xx4”, “yy1.yy2.yy3.yy4” as the IP addresses of the virtual machines corresponding to the respective SaaSIDs.
  • the usage protocol column shows HTTP (Hypertext) as the protocol corresponding to each SaaSID. Stores Transfer Protocol) and SMB (Server Message Block).
  • the API for starting and stopping virtual machine information described in Fig. 7 is provided by a cloud service provider.
  • the virtual machine start / stop unit 236 of the router device 2 in FIG. 4 sets, for example, the IP address of the virtual machine to be started, the SaaSID, and the start instruction option as arguments to this API, and executes this API. Based on this API, the virtual machine start / stop unit 236 transmits a virtual machine start command to the management server device 7 of FIG. This start command has the virtual machine IP address, SaaSID, and start instruction options set as arguments.
  • the API is, for example, http: // www. hogehoge. com / cloud / vm / xx1. xx2. xx3. xx4 / SaaS-0 / On.
  • the management server device 7 in FIG. 8 starts a virtual machine having an IP address set as an argument, for example, on the server device 4_Ne in FIG.
  • the first information for starting virtual routers and virtual machines (software) determined for each cloud service user is, for example, virtual router start / stop information, virtual router IP address, This is the virtual machine start / stop information and virtual machine IP address shown in Figure 7.
  • the second information for establishing a tunnel for communicating with this software via a network is the l2 protocol shown in FIG.
  • the virtual router start / stop information "API_VR-A”
  • An IP address “x1.x2.x3.x4” is defined.
  • the first information described above corresponding to SaaSID “SaaS-0” for identifying the cloud service of user “Use-A” (see FIG. 6), as shown in FIG. 6), as shown in FIG. Information “API_VM-A” and virtual machine IP address "xx1. Xx2. Xx3. Xx4" are defined.
  • the L2 protocol “GRE” is defined as the second information for the user “Use-A”.
  • FIG. 8 is a hardware block diagram of the management server device 7 of FIG.
  • the management server device 7 includes a CPU 71, a communication device 72, a memory 73, and a storage device 74 that are connected to each other via a bus B, for example.
  • the CPU 71 is an arithmetic processing unit that controls the entire management server device 7.
  • the communication device 72 is, for example, a NIC, is wired to the internal network Ndc, and communicates with various devices connected to the internal network Ndc.
  • the memory 73 temporarily stores data processed in various information processing executed by the CPU 71 and various programs.
  • the overall management unit 731 of the memory 73 manages various processes executed by the management server device 7.
  • the overall management unit 731 manages, for example, the virtual router management unit 732 and the virtual machine management unit 733, and executes communication packet transmission / reception processing with a device connected to the communication device 72.
  • the virtual router management unit 732 manages a virtual router that controls data output from the virtual machine and data input to the virtual machine executed in the server device.
  • the virtual machine management unit 733 manages this virtual machine.
  • the overall management unit 731, the virtual router management unit 732, and the virtual machine management unit 733 are so-called programs, and these programs are stored in the storage device 74, for example.
  • the CPU 71 reads out these programs from the storage device 74 and expands them in the memory 73, thereby causing these programs to function as software modules.
  • the storage device 74 is, for example, a magnetic storage device or a nonvolatile memory.
  • the storage device 74 stores the above-described program and various data.
  • the storage device 74 stores a virtual router HW table T11 that stores the amount of hardware (HW: Hard Ware) resources to be allocated to the virtual router, and a virtual machine HW table T12 that stores the hardware to be allocated to the virtual machines. .
  • HW Hard Ware
  • the virtual router HW table T11 and the virtual machine HW table T12 shown in FIG. 8 will be described with reference to FIGS.
  • FIG. 9 is a diagram showing an example of the virtual router HW table T11.
  • the virtual router HW table T11 in FIG. 9 has a user ID column, a CPU column, a memory column, a storage device column, and a communication bandwidth column.
  • the user ID column stores a user ID for identifying a cloud service user.
  • the CPU column stores the number of CPU clocks (GHz) assigned to the virtual router corresponding to this user ID.
  • the memory column stores the memory capacity (Gbyte) allocated to this virtual router.
  • the storage device column stores the capacity (Gbyte) of the storage device allocated to this virtual router.
  • the communication bandwidth column stores the communication bandwidth (Gbps) of data communication allocated to this virtual router.
  • the user ID column stores “User-A”, “User-B”, and “User-C”.
  • the CPU column stores “1.0”, “1.5”, and “1.0” (GHz) as the number of clocks of the CPU assigned to the virtual router corresponding to each user ID described above.
  • the CPU clock frequency assigned to the virtual router is "1.0" GHz. If the maximum clock frequency of this CPU is 3.0 GHz, this virtual router will occupy this CPU for time-sharing (1/3) GHz. It means you can do it.
  • the memory column stores “1.0”, “1.5”, and “1.2” (Gbyte) as the memory capacity allocated to the virtual router corresponding to each user ID described above.
  • the memory capacity allocated to the virtual router of “1.0” Gbyte means that a memory area corresponding to “1.0” Gbyte is allocated to this virtual router.
  • the storage device column stores “100.0”, “200.0”, “250.0” (Gbyte) as the storage device capacity allocated to the virtual router corresponding to each user ID described above.
  • the communication bandwidth column stores “1.2”, “1.5”, and “1.2” (Gbps) as communication bandwidths assigned when the virtual router corresponding to each user ID performs communication.
  • the capacity of the storage device allocated to the virtual router is “100.0” Gbyte, meaning that a storage area corresponding to “100.0” Gbyte in this memory is allocated to this virtual router.
  • the communication bandwidth allocated to the virtual router is "1.2" Gbps. When the maximum communication bandwidth of the communication device (for example, NIC) is 4.0 Gbps, this virtual router will use this communication device for the time-divided (1.2 / 4.0) Gbps. It means that you can occupy.
  • FIG. 10 is a diagram showing an example of the virtual machine HW table T12.
  • the virtual machine HW table T12 in Figure 10 is SaaS It has an ID field, a CPU field, a memory field, a storage device field, a communication bandwidth field, and a software field.
  • SaaS The ID column stores a SaaS ID that identifies the cloud service.
  • the CPU column stores the number of CPU clocks (GHz) assigned to the virtual machine corresponding to this SaaS ID.
  • the memory column stores the memory capacity (Gbyte) allocated to this virtual machine.
  • the storage device column stores the capacity (Gbyte) of the storage device allocated to this virtual machine.
  • the communication bandwidth column stores the communication bandwidth (Gbps) of data communication assigned to this virtual machine.
  • the software column stores the name of the OS or application executed by this virtual machine.
  • the SaaS ID column stores “SaaS-0” and “SaaS-1”.
  • the CPU column shows each SaaS "2.0” and “3.5” (GHz) are stored as the number of CPU clocks allocated to the virtual machine corresponding to the ID, and the memory column shows each SaaS described above.
  • "2.0" and "2.5” (Gbyte) are stored as the memory capacity allocated to the virtual machine corresponding to the ID.
  • the storage device column stores “100.0” and “200.0” (Gbyte) as the storage device capacity allocated to the virtual machine corresponding to each SaaS ID, and the communication bandwidth column stores each SaaS described above.
  • “1.0” and “1.2” (Gbps) are stored as communication bands to be allocated when the virtual machine corresponding to the ID executes communication.
  • OS0, App0a, App0b” and “OS1, App1b, App1b” executed by the virtual machine corresponding to the ID are stored.
  • OS0 is the name of the OS executed by the “SaaS-0” virtual machine
  • App0a” and “App0b” are the names of the applications executed by this virtual machine.
  • OS1 is the name of the OS executed by the “SaaS-1” virtual machine
  • App1a and “App1b” are the names of the applications executed by this virtual machine.
  • FIG. 11 is a hardware block diagram of the server device in the data center DC_1 of FIG.
  • the Neth server device 4_Ne in FIG. 1 is described as an example, but the other server devices 4_1 and the like have the same configuration.
  • the server device 4_Ne includes hardware 40 and a hypervisor 45 that operates on the hardware 40.
  • the hypervisor is also called virtualization software.
  • the server device 4_Ne includes the first virtual router 4vr_1 to the Nfth virtual router 4vr_Nf (Nf is an integer of 2 or more) that is activated and managed by the hypervisor 45, and the first virtual router that is activated and managed by the hypervisor 45. It has a machine 4vm_1 to a Nfth virtual machine 4vm_Nf.
  • the first virtual router 4vr_1 to the Nf virtual router 4vr_Nf are the data output from the first virtual machine 4vm_1 to the Nf virtual machine 4vm_Nf and the first virtual machine 4vm_1 to the Nf virtual machine, respectively. Controls data input to 4vm_Nf.
  • the same server device may not start the virtual machine and the virtual router, but one server device may start the virtual machine and another server device may start the virtual router.
  • the hypervisor 45 is a control program for virtualizing the hardware 40 and starting a virtual router, and further virtualizing the hardware 40 and starting a virtual machine.
  • the hardware 40 of the server device 4_Ne includes, for example, a CPU 41, a communication device 42, a memory 43, and a storage device 44 that are connected to each other via a bus B.
  • the CPU 41 is an arithmetic processing device that controls the entire server device 4.
  • the CPU 41 may be, for example, a multi-core processor that integrates a plurality of cores.
  • the communication device 42 is, for example, a NIC, and is wired to the internal network Ndc and communicates with various devices connected to the internal network Ndc.
  • the memory 43 temporarily stores data processed in various information processing executed by the CPU 41 and various programs.
  • the storage device 44 is, for example, a magnetic storage device or a nonvolatile memory.
  • the storage device 44 stores a control program functioning as the hypervisor 45 and various programs necessary for communication processing such as routing processing executed by the virtual router. Furthermore, the storage device 44 stores various OSs and various application programs executed by the virtual machine.
  • the CPU 41 reads out the control program of the hypervisor 45 from the storage device 44 and expands it in the memory 43 at the time of activation, thereby causing the control program to function as the hypervisor 45.
  • the CPU 41 appropriately reads out various programs necessary for communication processing executed by the virtual router, that is, routing processing of the communication packet, from the storage device 44 based on the control of the hypervisor 45, and the memory 43 allocated to the virtual router The virtual router is executed in the memory area. Further, based on the control of the hypervisor 45, the CPU 41 appropriately reads out the OS program and application program executed in the virtual machine from the storage device 44, expands them in the memory area of the memory 43 allocated to the virtual machine, and Run the virtual machine.
  • FIG. 12 is a flowchart for explaining the flow of processing in the router device 2 of FIG.
  • Step S1 The connection unit 232 of the router device 2 establishes a connection with the terminal device 1 in response to a connection request from the terminal device 1 (see FIG. 2), and transmits a connection completion notification to the terminal device 1. Details of the processing in step S1 will be described in step S23 in FIG.
  • Step S2 The authentication management unit 234 of the router device 2 receives the authentication information for authenticating the user of the cloud service transmitted from the terminal device 1, and makes an authentication request to the authentication server device 3. Details of the processing in step S2 will be described in step S25 in FIG.
  • Step S3 The virtual router start / stop unit 235 of the router device 2 transmits the first information and the second information determined for each user of the cloud service, which the authentication server device 3 transmits when the user authentication is successful.
  • the cloud access information is received, and a virtual router activation request is made to the data center DC1_1 based on the first information of the cloud access information. Details of the processing in step S3 will be described in step S27 in FIG.
  • Step S4 The virtual machine start / stop unit 236 of the router apparatus 2 makes a virtual machine start request to the data center DC1_1 based on the first information of the cloud access information received from the authentication server apparatus 3. Details of the processing in step S2 will be described in step S29 in FIG.
  • the router device 2 transmits to the data center DC1_1 the first command instructing software activation as the virtual router activation request and virtual machine activation request described in steps S3 and S4.
  • Step S5 The tunnel establishment unit 237 of the router device 2 establishes a tunnel with the activated virtual router based on the L2 protocol corresponding to the authenticated user ID.
  • the tunnel opening unit 237 opens a tunnel in the network (communication network Nt) based on the received second information of the cloud access information. Details of the process in step S2 will be described in step S31 in FIG.
  • FIG. 13 is a diagram for explaining the flow of the virtual router, virtual machine activation, and tunnel establishment processing in the first embodiment.
  • Step S21 The user in the user side system US in FIG. 2 inputs authentication information for user authentication to the terminal device 1.
  • a type of user authentication for example, there is a password authentication using a user ID for identifying a user and a password corresponding to the user ID.
  • the authentication information is a user ID and a password corresponding to this user ID.
  • Other types of user authentication include card authentication information using an ID card that stores a user ID for identifying the user and key information such as a public key corresponding to the user ID.
  • the authentication information is a user ID and key information corresponding to the user ID.
  • a user ID and a public key corresponding to the user ID will be described as an example of card authentication authentication information.
  • the overall management unit 161 in FIG. 2 instructs the display control unit 12 to display, for example, a user ID and password input screen on the display device 121 as an authentication screen.
  • the display control unit 12 displays an input screen for the user ID and password on the display device 121.
  • the user operates the operation device 131 and inputs a user ID and a password.
  • the authentication information acquisition unit 162 acquires the input user ID and password, that is, the input authentication information, via the operation control unit 13.
  • the overall management unit 161 instructs the display control unit 12 to display a screen for instructing the user to insert an ID card into the card reader 141, for example, as an authentication screen.
  • the display device 121 displays an instruction screen on the display device 121.
  • the user inserts the ID card into the card reader 141.
  • the card reader 141 reads the user ID and the public key corresponding to the user ID from the inserted ID card, and outputs them to the card reader control unit 14.
  • the authentication information acquisition unit 162 acquires the input user ID and the public key corresponding to the user ID, that is, the input authentication information, via the card reader control unit 14.
  • Step S22 The overall management unit 161 of the terminal device 1 makes a connection request to the router device 2.
  • Step S23 The router device 2 receives this connection request, establishes a connection with the terminal device 1, and transmits a connection completion notification to the terminal device 1. Specifically, when receiving the connection request, the overall management unit 231 of the router device 2 in FIG. 4 instructs the connection unit 232 to establish a connection for performing bidirectional communication with the terminal device 1. . In response to this establishment instruction, the connection unit 232 establishes a connection for executing bidirectional communication with the terminal device 1. This connection establishment enables bidirectional communication processing between the terminal device 1 and the router device 2.
  • Step S24 The authentication information transmitting unit 163 of the terminal device 1 in FIG. 2 transmits the authentication information acquired by the authentication information acquiring unit 162 to the router device 2.
  • Step S25 The authentication management unit 234 of the router device 2 in FIG. 4 receives this authentication information and sends a user authentication request to the authentication server device 3. Specifically, the overall management unit 231 receives the authentication information transmitted from the terminal device 1 and transmits it to the authentication management unit 234. The authentication management unit 234 transmits the received authentication information to the authentication server device 3 together with the authentication request.
  • Step S26 In response to the authentication request, the authentication server device 3 in FIG. 5 performs user authentication based on the received authentication information, and transmits cloud access information corresponding to the authentication information to the router device 2. Specifically, the overall management unit 331 of the authentication server device 3 receives the authentication request and authentication information transmitted from the router device 2, and instructs the authentication execution unit 332 to execute authentication processing. In response to this instruction, the authentication execution unit 332 executes user authentication processing based on this authentication information.
  • the authentication execution unit 332 performs authentication based on a table (not shown) that stores a user ID stored in advance in the storage device 34 and a password corresponding to the user ID.
  • the authentication execution unit 332 authenticates that the user identified by this user ID is a valid user.
  • the fact that the authentication execution unit 332 has authenticated as a legitimate user will be appropriately described as authentication success.
  • the authentication execution unit 332 determines that this user is not a valid user.
  • determining that the authentication execution unit 332 is not a valid user will be appropriately described as an authentication failure.
  • the authentication execution unit 332 performs authentication based on a table (not shown) that stores a user ID stored in advance in the storage device 34 and a public key corresponding to the user ID. .
  • a table (not shown) that stores a user ID stored in advance in the storage device 34 and a public key corresponding to the user ID.
  • the authentication execution unit 332 authenticates that the user identified by this user ID is a valid user. If this user ID and public key are not stored in this table, the authentication execution unit 332 determines that this user is not a valid user.
  • RADIUS Remote Various protocols such as Authentication Dial In User Service
  • RADIUS Remote Various protocols such as Authentication Dial In User Service
  • the authentication execution unit 332 executes authentication processing and can authenticate that the user identified by the user ID included in the received authentication information is a valid user, in other words, If authentication is successful, the following processing is executed. That is, the overall management unit 331 acquires cloud access information corresponding to this user ID, and instructs the access information acquisition unit 333 to transmit the acquired cloud access information to the router device 2. On the other hand, when the authentication execution unit 332 determines that the user is not a valid user, the overall management unit 331 transmits to the router device 2 that the authentication has failed. In this case, the router device 2 notifies the terminal device 1 that the authentication has failed.
  • the access information acquisition unit 333 acquires cloud access information corresponding to the user ID from the cloud access management table T1 in FIG. 6 and the cloud service management table T2 in FIG. 7 in response to the cloud access information acquisition instruction.
  • the access information acquisition unit 333 obtains the virtual router start / stop information “API_VR-A” corresponding to this user ID from the cloud access management table T1 in FIG. IP address "x1.x2.x3.x4", L2 protocol type "GRE", SaaSID "SaaS-0" is acquired. Further, the access information acquisition unit 333 refers to the cloud service management table T2 in FIG. 7, and the virtual machine start / stop information “API_VM-A” corresponding to the acquired SaaSID “SaaS-0”, the IP address of the virtual machine Obtain “xx1.xx2.xx3.xx4" and connection protocol "HTTP”. The access information acquisition unit 333 transmits the acquired cloud access information to the router device 2.
  • the access information acquisition unit 333 transmits the cloud access information determined for each user of the cloud service to the router device 2.
  • Step S27 The router device 2 makes a virtual router activation request to the data center DC1_1 based on the received cloud access information.
  • the overall management unit 231 of the router device 2 in FIG. 4 stores the received cloud access information in the storage device 24 (see FIG. 3).
  • the virtual router activation / deactivation unit 235 sets the user ID “User-A” stored in the storage device 24, the IP address “x1.x2.x3.x4” of the virtual router, and the activation instruction option as arguments.
  • API_VR-A which is the start / stop information of this virtual router is executed.
  • the overall management unit 231 sends a virtual router activation instruction command with a user ID “User-A”, a virtual router IP address “x1.x2.x3.x4”, and an activation instruction option in FIG. Transmit to the management server device 7.
  • This API is the API described in FIG.
  • the overall management unit 731 of the management server device 7 determines the amount of hardware resources allocated to the virtual router corresponding to this user ID based on the user ID of the activation instruction command in FIG. Obtained from the router HW table T11.
  • the user ID is “User-A”. Therefore, the overall management unit 731 uses the virtual router HW table T11 as the amount of hardware resources to be allocated to the virtual router corresponding to “User-A” as the CPU clock number 1.0 GHz, the memory capacity 1.0 Gbyte, Acquires a storage capacity of 100.0 Gbyte and a communication bandwidth of 1.2 Gbps.
  • the overall management unit 731 transmits the acquired hardware resource amount of the virtual router and the IP address of the virtual router included in the activation instruction command to the virtual router management unit 732.
  • the virtual router management unit 732 When the virtual router management unit 732 receives the hardware resource amount of the virtual router and the IP address of the virtual router, the virtual router management unit 732 selects a server device that is to be activated by the virtual router from the plurality of server devices 4_1 to 4_Ne. .
  • a selection criterion for this server device for example, there is a criterion for selecting a server device with the smallest number of active virtual routers.
  • the virtual router management unit 732 transmits the received hardware resource amount of the virtual router and the IP address of the virtual router to the selected server device together with the virtual router activation instruction command.
  • the virtual router management unit 732 selects the Ne th server device 4_Ne.
  • This virtual router activation instruction command is an example of a fourth command that instructs the server apparatus to activate the software.
  • Step S28 The server device that has received the virtual router activation instruction command activates and executes the virtual router based on the received hardware resource amount of the virtual router and the IP address of the virtual router. Then, the management server device 7 notifies the router device 2 that the activation has been completed.
  • the hypervisor 45 (see FIG. 11) of the server device 4_Ne that has received the virtual router activation instruction command has a CPU 41 clock frequency of 1.0 GHz, a memory capacity of 1.0 Gbyte, and a storage capacity of the storage device 44 of 100.0. Gbyte starts a virtual router having a communication bandwidth of 1.2 Gbps for the communication device. Then, the hypervisor 45 assigns the received IP address “x1.x2.x3.x4” to the activated virtual router.
  • the hypervisor 45 causes the activated virtual router to execute a program for executing packet transfer processing (routing processing).
  • the hypervisor 45 activates the virtual router 4vr_1.
  • This virtual router 4vr_1 is the virtual router 4vr of FIG.
  • the hypervisor 45 notifies the management server device 7 that the activation of the virtual router is completed.
  • the overall management unit 731 of the management server device 7 in FIG. 8 notifies the router device 2 that the activation of the virtual router has been completed.
  • Step S29 The router device 2 makes a virtual machine activation request to the data center DC1_1 based on the received cloud access information.
  • the overall management unit 231 of the router device 2 in FIG. 4 instructs the virtual machine activation / deactivation unit 236 to execute a virtual machine activation instruction.
  • the virtual machine start / stop unit 236 stores the SaaSID “SaaS-0” corresponding to the user ID “User-A” stored in the storage device 24, the IP address “xx1.xx2.xx3.xx4” of the virtual machine, and Set the start instruction option as an argument and execute API_VM-A, which is the start / stop information for this virtual machine.
  • the overall management unit 231 uses the SaaSID “SaaS-0”, the virtual machine IP address “xx1.xx2.xx3.xx4”, and the virtual machine startup instruction command with the startup instruction option as shown in FIG. It transmits to the management server device 7 of the center DC1_1.
  • This API is the API described in FIG.
  • the overall management unit 731 of the management server device 7 receives this start instruction command, the total amount of hardware resources to be allocated to the virtual machine corresponding to this SaaSID is determined based on the SaaSID included in this start instruction command by the virtual machine HW in FIG. Obtain from table T12. Further, the overall management unit 731 acquires the name of the software resource executed by the virtual machine from the virtual machine HW table T12 in FIG.
  • the SaaSID is “SaaS-0”. Therefore, the overall management unit 731 in FIG. 8 uses the virtual machine HW table T12 as the hardware resource amount to be allocated to the virtual machine corresponding to “SaaS-0” as the CPU clock number 2.0 GHz, the memory capacity 2.0 Gbyte, Acquire a storage capacity of 100.0 Gbyte and a communication bandwidth of 1.0 Gbps. Furthermore, the overall management unit 731 uses the OS (Operating Operating System) as the name of the software resource executed by this virtual machine. System) "OS0" and applications "App0a” and “App0b” are acquired.
  • OS Operating Operating System
  • the overall management unit 731 transmits the acquired virtual machine hardware resource amount, the name of the software resource, and the IP address of the virtual machine included in the start instruction command to the virtual machine management unit 733.
  • the virtual machine management unit 733 When the virtual machine management unit 733 receives the hardware resource amount of the virtual machine and the like, the virtual machine management unit 733 selects a server device as a virtual machine activation target from the plurality of server devices 4_1 to 4_Ne.
  • a selection criterion for this server device for example, there is a criterion for selecting a server device with the smallest number of running virtual machines.
  • the virtual machine management unit 733 transmits the received virtual machine hardware resource amount, the application name, and the received virtual machine IP address to the selected server device together with the virtual machine start instruction command.
  • the virtual machine management unit 733 has selected the Ne-th server device 4_Ne.
  • This virtual machine start instruction command is an example of a fourth command that instructs the server apparatus to start software.
  • Step S30 The server device that has received the virtual machine start instruction command starts and executes the virtual machine based on the received hardware resource amount of the virtual machine and the IP address of the virtual machine. Then, the management server device 7 notifies the router device 2 that the activation has been completed.
  • the hypervisor 45 (see FIG. 11) of the server device 4_Ne that has received the virtual machine start instruction command, based on the received hardware resource amount of the virtual machine, has a CPU 41 clock number of 2.0 GHz, a memory 43 A virtual machine having a memory capacity of 2.0 Gbyte, a storage capacity of 100.0 Gbyte of the storage device 44, and a communication bandwidth of 1.0 Gbps of the communication device 42 is started.
  • the hypervisor 45 assigns the received IP address “x1.x2.x3.x4” to the activated virtual machine. Further, the hypervisor 45 reads an application program corresponding to the application name of the virtual machine from the storage device 44, expands it in the memory 43, and executes the application. Here, it is assumed that the hypervisor 45 starts the virtual machine 4vm_1. This virtual machine 4vm_1 is the virtual machine 4vm of FIG. After the start is completed, the hypervisor 45 notifies the management server device 7 that the start of the virtual machine has been completed. The overall management unit 731 of the management server device 7 in FIG. 8 notifies the router device 2 in FIG. 4 that the activation of the virtual machine has been completed.
  • Step S31 The tunnel establishment unit 237 of the router device 2 establishes a tunnel with the activated virtual router based on the L2 protocol corresponding to the authenticated user ID.
  • the tunnel establishment unit 237 of the router device 2 uses the IP address of the own device and the IP address (x1.x2.x3.x4) of the activated virtual router 4vr_1 (see FIG. 11) in the memory 23 of the own device. Set to (see Figure 3). Further, the tunnel establishment unit 237 of the router device 2 transmits the IP address of the own device and the type “GRE” of the L2 protocol to the virtual router 4vr_1. The virtual router 4vr_1 sets the received IP address of the router device 2 in the memory area allocated to the virtual router 4vr_1.
  • the tunnel establishment unit 237 of the router device 2 and the virtual router 4vr_1 execute data communication by executing IP packet encapsulation based on the GRE protocol. That is, a tunnel is established between the router device 2 and the active virtual router based on the L2 protocol corresponding to the authenticated user ID. Then, the routing unit 233 of the router device 2 executes data communication processing between the router device 2 and the virtual router 4vr_1.
  • Step S32 The overall management unit 231 of the router device 2 notifies the terminal device 1 that the tunnel establishment has been completed. At this time, the overall management unit 231 also notifies the IP address of the activated virtual machine.
  • the overall management unit 161 of the terminal device 1 in FIG. 2 instructs the display control unit 12 to display the tunnel establishment notification screen. In response to this instruction, the display control unit 12 displays a tunnel establishment notification screen on the display device 121.
  • the access unit 164 of the terminal device 1 transmits a packet destined for the notified IP address of the virtual machine to the router device 2, whereby the router device 2, the communication line network Nt, the gateway device 5, and the router device 6.
  • the virtual machine 4vm_1 is accessed via the virtual router 4vr_1.
  • the user can use the cloud service provided by the virtual machine 4vm_1.
  • the routing unit 233 of the router device 2 receives the packet transmitted from the terminal device, the MAC of the terminal device stored in the header portion of the packet is received. Refer to the (Media Access Control) address.
  • the MAC address is the MAC address of the terminal device 1 used by the user
  • the routing unit 233 transmits this packet to the communication network Nt that is an external network, that is, cancels the MAC filtering. To do.
  • another user for example, user ID “User-B” sends authentication information of another user to a terminal device (for example, terminal device 1_Nb) other than the terminal device 1 described in FIG.
  • Each step of FIG. 13 is also executed when “” is input. As a result, other users can use other users' cloud services.
  • the user When the user stops using the cloud service, the following processing is executed. For example, the user operates the operation device 131 of the terminal device 1 in FIG. 2 to perform a cloud service stop instruction operation. At this time, the user also inputs authentication information having the user ID.
  • the operation control unit 13 transmits a command indicating that the stop instruction operation has been executed to the overall management unit 161.
  • the overall management unit 161 Upon receiving this command, the overall management unit 161 transmits this user ID to the router device 2 and transmits a second command to the router device 2 instructing to stop the cloud service.
  • this user ID is “User-A”.
  • the virtual machine of the SaaS ID corresponding to this user ID is sent to the virtual machine start / stop unit 236. Instruct to stop.
  • the virtual machine start / stop unit 236 responds to this stop instruction with the SaaSID corresponding to this user ID “User-A” SaaS-0 ", SaaSID” corresponding to this user ID "User-A” stored in storage device 24 (Fig. 3) with the stop instruction option set as an argument Executes API_VM-A, which is the virtual machine start / stop information of SaaS-0 ".
  • the virtual machine start / stop unit 236 stops virtual machines with the SaaSID" SaaS-0 ", stop instruction option 8 is transmitted to the management server device 7.
  • the API is, for example, http://www.hogehoge.com/cloud/vm/SaaS-0/Off.
  • the management server device 7 in FIG. 8 designated by “www.hogehoge.com” is instructed to stop the virtual machine (“vm”) of SaaSID “SaaS-0”.
  • the overall management unit 731 of the management server device 7 receives the SaaSID “ The server device 4e (see FIG. 11) is instructed to stop execution of the virtual machine 4vm_1 of “SaaS-0”. In response to this instruction, the hypervisor 45 of the server device 4e stops execution of the virtual machine 4vm_1.
  • the overall management unit 231 of the machine device 2 in FIG. 4 instructs the virtual router start / stop unit 235 to stop the virtual router corresponding to this user ID.
  • the virtual router start / stop unit 235 sets the user ID “User-A” and the stop instruction option as arguments, and stores this user stored in the storage device 24 (FIG. 3).
  • Execute API_VR-A which is the start / stop information of the virtual router corresponding to the ID “User-A”.
  • the virtual router start / stop unit 235 transmits a virtual router stop instruction command having a user ID “User-A” and a stop instruction option to the management server device 7 of FIG.
  • the API is, for example, http: // www.
  • this API is to instruct the management server device 7 of FIG. 8 specified by “www.hogehoge.com” to stop starting the virtual router (“vr”) of the user ID “User-A”. It is.
  • the overall management unit 731 of the management server apparatus 7 instructs the server apparatus 4e (see FIG. 11) to stop the execution of the virtual router 4vr_1 corresponding to the user ID included in the stop instruction command.
  • the hypervisor 45 of the server device 4e stops the execution of the virtual router 4vr_1.
  • the virtual machine stop instruction command transmitted from the virtual machine start / stop unit 236 to the management server device 7 and the virtual router stop instruction command transmitted from the virtual router start / stop unit 235 to the management server device 7 described above are the cloud service A third command for instructing a stop.
  • a plurality of users can use each cloud service (information processing service) at the same time.
  • the user identified by the user ID “User-A” simply inputs the user authentication information to the terminal device.
  • the cloud service identified by SaaSID “SaaS-0” can be used.
  • the user identified by the user ID “User-B” can use the cloud service identified by the SaaSID “SaaS-1” simply by inputting the authentication information of the user to another terminal device. .
  • the router device can acquire the access information for the cloud service together with the authentication process. Therefore, it is not necessary to execute authentication processing and access information acquisition processing on different devices.
  • the access information of this user is newly added to the cloud access management table T1 in FIG. 6 and the cloud service management table T2 in FIG. Just add to. Therefore, the user addition process can be simplified.
  • the router device 2 may store the first information and the second information in the storage device 24.
  • the storage device 24 of the router device 2 stores a cloud access management table T1 and a cloud service management table T2 in FIG.
  • the overall management unit 231 of the router device 2 receives the identification information for identifying the user of the information processing service from the terminal device 1, and acquires the first information and the second information according to the identification information.
  • This identification information is, for example, a user ID.
  • the overall management unit 231 of the router device 2 corresponds to the user ID from the cloud access management table T1 in FIG. 6 and the cloud service management table T2 in FIG. Get cloud access information.
  • the overall management unit 231 reads the virtual router start / stop information “API_VR-A” corresponding to this user ID from the cloud access management table T1 in FIG. Get IP address "x1.x2.x3.x4", L2 protocol type "GRE", SaaSID "SaaS-0". Further, the overall management unit 231 refers to the cloud service management table T2 in FIG. 7, and the virtual machine start / stop information “API_VM-A” corresponding to the acquired SaaSID “SaaS-0”, the IP address of the virtual machine ” Acquire xx1.xx2.xx3.xx4 "and connection protocol" HTTP ".
  • the router device 2 then makes a virtual router activation request to the data center DC1_1 based on the acquired cloud access information.
  • the description of the virtual router activation request has been described in detail in step S27 in FIG.
  • the router device 2 makes a virtual machine activation request to the data center DC1_1 based on the acquired cloud access information.
  • the description of the virtual machine activation request has been described in detail in step S29 in FIG.
  • the router device 2 stores the first information and the second information, and acquires the user's cloud access information, so that the authentication server device becomes unnecessary. As a result, hardware resources can be saved. In addition, since the communication process between the router device 2 and the authentication server device 3 is not executed, the acquisition time of the cloud access information can be shortened.
  • one authentication server device is installed outside the first data center DC1_1 to the nth data center DC1_n.
  • an authentication server device can be provided for each data center.
  • the cloud service provider can easily manage the authentication server device.
  • FIG. 14 is a hardware block diagram illustrating an example of the information processing system SYS in the second embodiment.
  • an authentication server device 3 is provided in the data center DC1_1.
  • FIG. Directory Service is provided instead of the authentication server device 3 in FIG. Directory Service.
  • the cloud directory service device 8 is an example of a third device that stores third information for the router device 2 to connect to the authentication server device 3.
  • a dotted line indicated by a symbol L2_1 ′ indicates an L2 tunnel established between the router device 2 of the user side system US and the authentication server device 3 of the data center DC1_1. The L2 tunnel will be described with reference to FIG.
  • FIG. 15 is a hardware block diagram of the terminal device of FIG.
  • the terminal device 1 in FIG. 15 is obtained by adding a fingerprint authentication device 181 having, for example, an optical fingerprint reading function and a fingerprint authentication device controller 18 for controlling the fingerprint authentication device 181 to the terminal device 1 in FIG. is there.
  • a service name acquisition unit 165 for acquiring a cloud service name is added.
  • the 16 overall management units 1611 manage the service name acquisition unit 165 in addition to the functions of the overall management unit 161 in FIG.
  • FIG. 16 is a block diagram of software modules executed by the router device 2 of FIG.
  • the router apparatus 2 in FIG. 16 is obtained by adding an authentication server information acquisition unit 238 that acquires authentication server information necessary for accessing the authentication server apparatus 3 in FIG. 14 to the router apparatus 2 in FIG.
  • the tunnel opening unit 2371 has a function of opening a tunnel between the router device 2 and the authentication server device 3 in addition to the tunnel opening function of FIG.
  • the overall management unit 2311 has a function of managing the authentication server information acquisition unit 238 in addition to the functions of the overall management unit 231 in FIG.
  • FIG. 17 is a hardware block diagram of the cloud directory service device 8 of FIG.
  • the cloud directory service device 8 includes a CPU 81, a communication device 82, a memory 83, and a storage device 84 that are connected to each other via a bus B, for example.
  • the CPU 81 is an arithmetic processing device that controls the entire cloud directory service device 8.
  • the communication device 82 is, for example, a NIC, and is wired to the communication line network Nt in FIG. 14 and communicates with various devices connected to the communication line network Nt.
  • the memory 83 temporarily stores data processed in various information processing executed by the CPU 81 and various programs.
  • the overall management unit 831 of the memory 83 manages various processes executed by the cloud directory service device 8. For example, the overall management unit 831 manages the authentication server access information acquisition unit 832 and executes transmission / reception processing of communication packets with a device connected to the communication device 82.
  • the authentication server access information acquisition unit 832 acquires information necessary for accessing the authentication server device 3 from the authentication server access information management table T21 of the storage device 84.
  • Information necessary for accessing the authentication server device 3 (hereinafter referred to as authentication server access information as appropriate) is an example of third information for the router device 2 to connect to the authentication server device 3.
  • the overall management unit 831 and the authentication server access information acquisition unit 832 are so-called programs, and these programs are stored in the storage device 84, for example.
  • the CPU 81 reads these programs from the storage device 84 and expands them in the memory 83, thereby causing these programs to function as software modules.
  • the storage device 84 is, for example, a magnetic storage device or a nonvolatile memory.
  • the storage device 84 stores the above-described program and various data. Further, the storage device 84 stores an authentication server access information management table T21 having information necessary for accessing the authentication server device 3.
  • FIG. 18 is a diagram showing an example of the authentication server access information management table T21 shown in FIG.
  • the authentication server access information management table T21 in FIG. 18 has a cloud service name field, an authentication server IP address field, an L2 protocol field, and an authentication protocol field.
  • the cloud service name column stores a cloud service name for identifying a data center that provides a cloud service accessed by a user.
  • the IP address field of the authentication server stores the IP address of the authentication server device installed in this data center.
  • the L2 protocol column stores a protocol type for establishing a tunnel between the router device 2 and the authentication server device 3.
  • the authentication protocol column stores the type of authentication protocol used when the authentication server device 3 performs user authentication.
  • the cloud service name column stores “Cloud-A”, “Cloud-B”, and “Cloud-C”, and the IP address column of the authentication server indicates the authentication server corresponding to each cloud service name described above.
  • “Xxx.xxx.xxx.xxx”, “yyy.yyy.yyy.yyy”, “zzz.zzz.zzz.zzz” are stored as the IP address of the device.
  • the L2 protocol column stores "GRE”, "OpenVPN”, and "L2TP” as the protocol type corresponding to each cloud service name
  • the authentication protocol column stores the authentication protocol corresponding to each cloud service name.
  • “Passphrase”, “Smart card”, and “Fingerprint authentication” are stored as the type of the password.
  • This “passphrase” performs user authentication based on the user ID and the password corresponding to the user ID, as described in FIG.
  • the “smart card” performs user authentication based on the user identification card.
  • fingerprint authentication a user's fingerprint is read, and user authentication is performed based on the read fingerprint.
  • FIG. 19 is a hardware block diagram of the authentication server device 3 of FIG.
  • the authentication server device 3 in FIG. 19 is obtained by adding a tunnel opening unit 334 to the authentication server device 3 in FIG.
  • FIG. 20 is a diagram for explaining the flow of processing for acquiring cloud access information from the authentication server device 3 provided in the data center.
  • Step S51 The user in the user side system US in FIG. 14 inputs the name of the cloud service that the user wants to access to the terminal device 1. Specifically, the user inputs this cloud service name via the operation device 131 of the terminal device 1 in FIG. The service name acquisition unit 165 acquires this cloud service name via the operation control unit 13.
  • Step S52 The overall management unit 1611 of the terminal device 1 makes a connection request to the router device 2 in FIG.
  • Step S53 The router device 2 receives this connection request, establishes a connection with the terminal device 1, and transmits a connection completion notification to the terminal device 1. Specifically, when receiving the connection request, the overall management unit 2311 of the router device 2 in FIG. 16 instructs the connection unit 232 to establish a connection for performing bidirectional communication with the terminal device 1. . In response to this establishment, the connection unit 232 establishes a connection for performing bidirectional communication with the terminal device 1. This connection establishment enables bidirectional communication processing between the terminal device 1 and the router device 2.
  • Step S54 The service name acquisition unit 165 of the terminal device 1 in FIG. 15 transmits the acquired cloud service name to the router device 2 in FIG.
  • Step S55 The authentication server information acquisition unit 238 of the router device 2 receives the cloud service name transmitted from the terminal device 1, and sends an authentication server access information transmission request to the cloud directory service device 8. Specifically, the overall management unit 2311 receives the cloud service name transmitted from the router device 2 and transmits it to the authentication server information acquisition unit 238 in FIG. The authentication server information acquisition unit 238 transmits the authentication server access information transmission request and the received cloud service name to the cloud directory service device 8. This authentication server access information transmission request is the third information transmission request.
  • Step S56 In response to this transmission request, the cloud directory service device 8 in FIG. 17 transmits authentication server access information corresponding to the received cloud service name to the router device 2. Specifically, when receiving the cloud service name, the overall management unit 831 of the cloud directory service device 8 instructs the authentication server access information acquisition unit 832 to acquire authentication server access information corresponding to the cloud service name. . In response to this instruction, the authentication server access information acquisition unit 832 acquires authentication server access information corresponding to this cloud service name from the authentication server access information management table T21 of FIG.
  • the authentication server access information acquisition unit 832 reads the authentication server corresponding to this cloud service name from the authentication server access information management table T21 of FIG. Acquire the device IP address "xxx.xxx.xxx.xxx", the L2 protocol type "GRE", and the authentication protocol type "passphrase”. Then, the authentication server access information acquisition unit 832 transmits the acquired authentication server access information to the router device 2.
  • Step S57 The router device 2 opens an L2 tunnel for authentication according to the type of the L2 protocol in the received authentication server access information with the authentication server device. Specifically, when receiving the authentication server access information, the overall management unit 2311 of the router device 2 in FIG. 16 transmits the IP address of the authentication server device and the type of the L2 protocol included in the access information to the tunnel establishment unit 2371. . The tunnel opening unit 2371 accesses the authentication server device based on the IP address of the authentication server device, and opens an authentication L2 tunnel with the authentication server device based on the received L2 protocol.
  • the IP address of the authentication server device is “xxx.xxx.xxx.xxx” and the type of the L2 protocol is “GRE”.
  • the authentication server device of this IP address is the authentication server device 3 of FIG.
  • the tunnel establishment unit 2371 of the router device 2 in FIG. 16 transmits the IP address of the own device and the type “GRE” of the L2 protocol to the authentication server device 3.
  • the overall management unit 3311 of the authentication server device 3 receives the IP address of the router device 2 and the type of the L2 protocol, and transmits it to the tunnel establishment unit 334.
  • the tunnel opening unit 334 receives the IP address of the router device 2, it sets it in the memory 33.
  • the tunnel opening unit 2371 of the router device 2 and the tunnel opening unit 334 of the authentication server device 3 perform data communication by executing IP packet encapsulation based on the GRE protocol. Execute. That is, a tunnel is established between the router device 2 and the authentication server device 3 based on the L2 protocol corresponding to the cloud service name. Then, the routing unit 233 of the router device 2 executes data communication processing between the router device 2 and the authentication server device 3. As described above, the tunnel establishment unit 2371 connects to the authentication server device 3 based on the received authentication server access information.
  • Step S58 The overall management unit 2311 of the router device 2 in FIG. 6 transmits the authentication protocol included in the received authentication server access information to the terminal device 1.
  • this authentication protocol is a “passphrase”.
  • Step S59 The terminal device 1 in FIG. 15 displays an authentication information input screen corresponding to the notified authentication protocol.
  • the overall management unit 1611 in FIG. 15 instructs the display control unit 12 to display a user ID and password input screen on the display device 121 when the notified authentication protocol is a passphrase.
  • the display control unit 12 displays an input screen for the user ID and password on the display device 121.
  • the overall management unit 1611 displays on the display device 121 an instruction screen for instructing the user to insert the ID card into the card reader 141. To instruct. In response to the display instruction, the display control unit 12 displays an instruction screen on the display device 121.
  • the authentication protocol is “fingerprint authentication”
  • the overall management unit 1611 displays a screen for instructing to input a user ID and a user's finger (fingerprint part) as a fingerprint reading part of the fingerprint authentication device 181.
  • the display control unit 12 is instructed to display a screen instructing to touch. In response to this instruction, the display control unit 12 displays this instruction screen on the display device 121.
  • Step S60 The user inputs authentication information to the terminal device 1 in response to this instruction screen. Specifically, when the display device 121 displays an input screen for the user ID and password, the user operates the operation device 131 to input the user ID and password.
  • the authentication information acquisition unit 162 acquires the input user ID and password via the operation control unit 13.
  • the display device 121 displays an instruction screen for instructing the user to insert the ID card into the card reader 141
  • the user inserts the ID card into the card reader 141.
  • the card reader 141 reads the user ID and the public key corresponding to the user ID from the inserted ID card, and outputs them to the card reader control unit 14.
  • the authentication information acquisition unit 162 acquires the input user ID and the public key corresponding to the user ID, that is, the input authentication information, via the card reader control unit 14.
  • the display device 121 displays a user ID input screen or a screen for instructing the user's finger to touch the fingerprint reading portion of the fingerprint authentication device 181
  • the user operates the operation device 131 to enter the user ID.
  • the fingerprint reading portion of the fingerprint authentication device 181 is touched with a finger.
  • the fingerprint authentication device 181 reads the user's fingerprint, executes predetermined image processing, and outputs it to the fingerprint authentication device controller 18 as a fingerprint image.
  • the authentication information acquisition unit 162 acquires this fingerprint image via the fingerprint authentication device control unit 18. Further, the authentication information acquisition unit 162 acquires the input user ID via the operation control unit 13. That is, the authentication information acquisition unit 162 acquires the fingerprint image and the user ID as authentication information.
  • Step S61 The authentication information transmitting unit 163 in FIG. 2 transmits the authentication information acquired by the authentication information acquiring unit 162 to the router device 2.
  • Step S62 The authentication management unit 234 in FIG. 16 receives this authentication information and sends an authentication request to the authentication server device 3. Specifically, the overall management unit 2311 receives the authentication information transmitted from the terminal device 1 and transmits it to the authentication management unit 234. The authentication management unit 234 transmits the received authentication information to the authentication server device 3 together with the authentication request. This transmission is performed via an already established L2 authentication tunnel.
  • Step S63 In response to the authentication request, the authentication server device 3 in FIG. 19 executes an authentication process based on the received authentication information, and transmits cloud access information corresponding to the authentication information to the router device 2. Specifically, the overall management unit 3311 of the authentication server device 3 receives the authentication request and authentication information transmitted from the router device 2, and instructs the authentication execution unit 332 to execute authentication processing. In response to this instruction, the authentication execution unit 332 executes user authentication processing based on this authentication information.
  • the authentication server device 3 performs authentication based on a table (not shown) that stores a user ID stored in advance in the storage device 34 and a fingerprint image corresponding to the user ID.
  • a table not shown
  • the authentication execution unit 332 authenticates that the user identified by this user ID is a valid user. (User authentication succeeded).
  • the overall management unit 3311 executes the following processing when the authentication execution unit 332 executes authentication processing and can authenticate that the user identified by the user ID included in the received authentication information is a valid user. . That is, the overall management unit 3311 acquires the cloud access information corresponding to this user ID, and instructs the access information acquisition unit 333 to transmit the acquired cloud access information to the router device 2. On the other hand, when the authentication execution unit 332 determines that the user is not a valid user, the overall management unit 3311 transmits to the router device 2 that the authentication has failed. In this case, the router device 2 notifies the terminal device 1 that the authentication has failed.
  • the access information acquisition unit 333 acquires cloud access information corresponding to the user ID from the cloud access management table T1 in FIG. 6 and the cloud service management table T2 in FIG. 7 in response to the cloud access information acquisition instruction.
  • the access information acquisition unit 333 transmits the acquired cloud access information to the router device 2.
  • the details of the cloud access information acquisition process have been described in step S26 in FIG.
  • the router device 2 executes the virtual router activation request described in step S27 in FIG. 13, the virtual machine activation request described in step S29, and the L2 tunnel establishment process described in step S31.
  • an authentication server device that manages cloud access information can be installed in a data center. Therefore, since the arrangement configuration of each device in the information processing system can be flexibly changed, the service provider can easily manage the device.
  • the function executed by the authentication server device 3 described in FIG. 19 may be executed by a virtual machine activated by the server device 4_Ne.
  • the cloud access management table T1 and the cloud service management table T2 are stored in the storage device of the server device 4_Ne.
  • the server device 4_Ne activates a virtual router that controls data output from the virtual machine and data input to the virtual machine.
  • the router device 2 in FIG. 16 establishes an authentication L2 tunnel with the virtual router. In this way, by realizing the function executed by the authentication server device 3 with a virtual machine, it is not necessary to install a new device, so that no new device cost is generated, which is economical.
  • the information processing system SYS of FIG. 1 will be exemplified, and the outline of the third embodiment will be described with reference to FIGS. 6, 7, and 9 as appropriate.
  • the user A identified by the user ID “User-A” uses the cloud service provided by the data center DC1_1 via the terminal device 1_1.
  • This cloud service is a cloud service identified by SaaSID “SaaS-0” (see FIG. 7).
  • the router device 2 instructs the management server device 7 to start a virtual machine (cloud service) corresponding to “SaaS-0”. After this instruction, the virtual machine corresponding to “SaaS-0” is activated.
  • the user C identified by the user ID “User-C” uses the virtual machine provided by the data center DC1_1 via the terminal device 1_Nb.
  • This virtual machine is a virtual machine identified by SaaSID “SaaS-0” (see FIG. 7). That is, this virtual machine is the same virtual machine as that used by user A.
  • the router device 2 does not instruct the management server device 7 to start a virtual machine corresponding to “SaaS-0”. Instead, the router device 2 transmits the packet addressed to the virtual machine transmitted by the terminal device 1_Nb used by the user C to the virtual machine without filtering. That is, the router device 2 permits the terminal device 1_Nb of the user C to communicate with the virtual machine (software) through the established tunnel.
  • the router device 2 stops the virtual machine, and the management server device 7 To instruct.
  • FIG. 21 is a block diagram of software modules executed by the router device according to the third embodiment.
  • the router device 2 in FIG. 21 is obtained by adding a user number receiving unit 239 that receives the number of users using the cloud service from the authentication server device 3 to the router device 2 in FIG.
  • the overall management unit 2312 manages the user number receiving unit 239 in addition to the functions of the overall management unit 231 described with reference to FIG. Furthermore, the overall management unit 2312 determines whether to start the virtual router and the virtual machine and open the L2 tunnel based on the number of users received by the user number receiving unit 239. Further, the overall management unit 2312 determines whether or not to stop the active virtual router, virtual machine, and L2 tunnel.
  • FIG. 22 is a hardware block diagram of the authentication server device according to the third embodiment.
  • the authentication server device 3 in FIG. 22 is obtained by adding a user information management unit 335 that manages information related to a user who uses the cloud service to the authentication server device 3 in FIG.
  • the information about this user includes the number of users who actually use the cloud service, the ID of the first user who first used the cloud service, the status of the cloud service, and the like.
  • the authentication server device 3 is an example of a second device that stores the number of users who are actually using the cloud service (hereinafter referred to as the number of users as appropriate).
  • the overall management unit 3312 manages the user information management unit 335 in addition to the functions of the overall management unit 331 in FIG.
  • the storage device 34 stores a cloud service management table T31.
  • FIG. 23 is a diagram showing an example of the cloud service management table T31.
  • the cloud service management table T31 is obtained by newly adding a SaaS status column, a user number column, and an initial user ID column to the cloud service management table T2 in FIG.
  • the SaaS status column stores the status of the cloud service (virtual machine) identified by the SaaSID stored in the SaaSID column.
  • the number of users column stores the number of users who are actually using this cloud service.
  • the user ID column stores an initial user ID for identifying a user who first uses this cloud service. This initial user ID is information necessary for the virtual machine / virtual router stop processing described in FIG.
  • the SaaS status column stores “start” and “stop” as the status of the cloud service corresponding to each SaaS ID
  • the number of users column stores “Count” as the cloud service corresponding to each SaaS ID. -0 "and” Count-1 "are memorized.
  • “Count-0” and “Count-1” mean an integer.
  • the values of “Count-0” and “Count-1” are “0”.
  • the initial user ID column stores “User-A” as the ID of the user who uses the cloud service corresponding to each SaaS ID. In the initial state, this field is blank.
  • FIG. 24 is a diagram for explaining the flow of virtual router, virtual machine activation, and tunnel establishment processing in the third embodiment. In the description of this flowchart, it is assumed that the processing from step S21 to step S24 in FIG. 13 is executed.
  • Step S101 The authentication management unit 234 in FIG. 21 receives the authentication information transmitted from the terminal device 1, and makes an authentication request to the authentication server device 3. Furthermore, the user number receiving unit 239 makes a transmission request for the number of users of the cloud service corresponding to the user ID included in the authentication information to the authentication server device 3 in FIG.
  • Step S102 In response to the authentication request, the authentication server device 3 executes an authentication process based on the received authentication information, and transmits cloud access information corresponding to the authentication information to the router device 2. Furthermore, the user information management unit 335 of the server device 3 acquires the number of cloud service users corresponding to the user ID included in the authentication information from the cloud service management table T31 in FIG. 23 in response to the transmission request for the number of users. And transmitted to the router device 2. The process of transmitting the cloud access information to the router device 2 has been described in step S26 in FIG. The user information management unit 335 acquires the number of users and transmits it to the router device 2 by the processing described below.
  • the general management unit 3312 instructs the user information management unit 335 to execute acquisition processing and transmission processing for the number of users. To do.
  • the user information management unit 335 acquires the number of users corresponding to the user ID included in the authentication information received by the overall management unit 3312 from the cloud service management table T31 in FIG.
  • the user information management unit 335 changes the SaaS state of the SaaS ID that identifies the cloud service corresponding to this user ID to “started”, and further changes the cloud service corresponding to this user ID.
  • This user ID is stored in the first user ID column of the SaaSID to be identified.
  • the user ID was “User-A”.
  • the SaaS ID for identifying the cloud service corresponding to the user ID “User-A” is “SaaS-0”.
  • the cloud service management table T31 of FIG. 23 the number of users corresponding to this SaaSID “SaaS-0” is “Count-0” (initial value is 0).
  • the user information management unit 335 acquires the number of users corresponding to the user ID based on the cloud access management table T1 in FIG. 6 and the cloud service management table T31 in FIG.
  • the user information management unit 335 transmits the acquired number of users to the router device 2.
  • the user information management unit 335 changes the SaaS status field of SaaSID “SaaS-0” from “stop” to “started”, and stores “User-A” in the user ID field of SaaSID “SaaS-0”. .
  • Step S103 The overall management unit 2312 of the router device 2 in FIG. 21 receives the number of users of the cloud service corresponding to the cloud access information and the authentication information, and further, based on the received number of users, It is determined whether or not. If the overall management unit 2312 determines that there is no cloud service user (step S103 / not), the overall management unit 2312 proceeds to step S104. If the overall management unit 2312 determines that there is a user of the cloud service (step S103 / Yes), the overall management unit 2312 skips the process of step S104 and proceeds to step S105.
  • the overall management unit 2312 determines whether the number of cloud service users is zero. When the number of users is 0, it is determined that there is no cloud service user (step S103 / not), and the process proceeds to step S104. If the number of users is not 0, it is determined that there is a user of the cloud service (step S103 / is), the process of step S104 is omitted, and the process proceeds to step S105.
  • Step S104 The router device 2 executes the virtual router activation request described in step S27 in FIG. 13, the virtual machine activation request described in step S29, and the L2 tunnel establishment process described in step S31. Note that steps S27, S29, and S31 described above have already been described with reference to FIG. After step S104 ends, the process proceeds to step S105.
  • Step S105 The overall management unit 2312 of the router device 2 in FIG. 21 issues a request for updating the number of users of the cloud service corresponding to the user ID included in the received authentication information, here a count-up request, and the authentication server device 3 in FIG. To do.
  • Step S106 Upon receiving this count-up request, the authentication server device 3 updates the number of users of the cloud service corresponding to this user ID, for example, increases (counts up), for example, in response to this count-up request. Specifically, when receiving the count-up request, the overall management unit 3312 of the authentication server device 3 instructs the user information management unit 335 to count up the number of cloud service users corresponding to the user ID. In response to this instruction, the user information management unit 335 counts up the number of users of the cloud service corresponding to this user ID, and stores it in the number of users column of the cloud service management table T31 in FIG.
  • the user information management unit 335 performs “Count-0” (“0”) of the cloud service “SaaS-0” corresponding to the user ID “User-A” in the cloud service management table T31 of FIG. Is counted up to "Count-0" ("1").
  • step S106 the user C identified by the user ID “User-C” inputs the authentication information of the user C to the terminal device 1_Nb, for example.
  • the processes in steps S21 to S24 in FIG. 13 are executed, and then the process proceeds to the process in step S101 in FIG. 24, and the process in step S102 is executed.
  • the SaaS ID corresponding to the user ID “User-C” is “SaaS-0”.
  • the number of users corresponding to the SaaS ID “SaaS-0” is “Count-0” (“1”) (see step S106 described above). Therefore, the user information management unit 335 of the authentication server device 3 transmits the acquired number of users (“1”) to the router device 2 (step S102).
  • the overall management unit 2312 of the router device 2 in FIG. 21 receives the number of users, and further determines whether the number of users is zero.
  • step S103 Since the total number of users is “1” (step S103 / present), the overall management unit 2312 omits the process of step S104. Next, the process proceeds to step S105. In step S105, “Count-0” (“1”) is counted up to “Count-0” (“2”).
  • the overall management unit 2312 of the router device 2 in FIG. 21 notifies the terminal device 1_Nb used by the user C of the IP address of the virtual machine of the user C cloud service together with the process of step S105. Thereafter, the overall management unit 2312 transmits the packet addressed to the already activated virtual machine transmitted by the terminal device 1_Nb used by the user C to this virtual machine without filtering. That is, the router device 2 permits the terminal device 1_Nb of the user C to communicate with the virtual machine (software) through the tunnel established in step S104.
  • FIG. 25 is a diagram for explaining the flow of virtual router, virtual machine stop, and tunnel stop processing in the third embodiment. In the description of FIG. 25, it is assumed that the processing of each step of FIG. 24 is being executed. In the example of FIG. 24, the cloud service corresponding to the user IDs “User-A” and “User-C” is activated.
  • the user identified by the user ID “User-A” operates the operation device 131 of the terminal device 1 in FIG. I do.
  • the user also inputs authentication information for authenticating the user of this cloud service.
  • This authentication information has the user ID of this user as described in the first embodiment.
  • the operation control unit 13 transmits a command indicating that the stop instruction operation has been executed to the overall management unit 1611 in response to the stop instruction operation.
  • the overall management unit 1611 Upon receiving this command, the overall management unit 1611 transmits this user ID ("User-A") to the router device 2 in FIG. 21 and sends a second command to stop the cloud service in FIG. Transmit to the router device 2.
  • Step S111 Upon receiving this user ID and cloud service stop request, the overall management unit 2312 of the router device 2 counts down the number of users of the cloud service corresponding to this user ID, and sends a request to send the number of users after the countdown. To the authentication server device 3 of FIG. Further, the overall management unit 2312 makes a transmission request for the initial user ID of the SaaS ID corresponding to this user ID to the authentication server device 3.
  • Step S112 The authentication server device 3 counts down the number of users of the cloud service corresponding to the received user ID. Specifically, when the overall management unit 3312 receives the countdown request and the transmission request, it instructs the user information management unit 335 as follows. This instruction is a countdown of the number of users corresponding to the SaaSID for identifying the cloud service corresponding to the user ID, a transmission process of the number of users after the countdown, and a transmission process of the initial user ID corresponding to this SaaSID.
  • the user information management unit 335 acquires the number of users corresponding to the user ID received by the overall management unit 3312 from the cloud service management table T31 of FIG. 23, and decreases this number of users by one ( Count down).
  • the user ID was “User-A”.
  • the SaaS ID for identifying the cloud service corresponding to the user ID “User-A” is “SaaS-0”.
  • the number of users corresponding to the SaaS ID “SaaS-0” is “Count-0” (“2”).
  • the user information management unit 335 counts down the number of users to “Count-0” (“1”).
  • the initial user ID corresponding to this SaaS ID “SaaS-0” is “User-A”.
  • Step S113 The user information management unit 335 transmits the number of users after the countdown and the initial user ID to the router device 2. In the case of the above example, the user information management unit 335 transmits “Count-0” (“1”) and “User-A” to the router device 2.
  • Step S114 The overall management unit 2312 of the router device 2 in FIG. 21 receives the number of users of the cloud service and the initial user ID, and further determines whether there are other users of this cloud service based on the number of users. . When determining that there is another user (step S114 / is), the overall management unit 2312 ends the process. If the overall management unit 2312 determines that there is no other user (step S114 / no), the overall management unit 2312 proceeds to step S115. Specifically, the overall management unit 2312 determines whether the number of users of the cloud service is zero. When the number of users is not 0, the overall management unit 2312 determines that there are other users of the cloud service (step S114 / is) and ends the process. If the number of users is 0, the overall management unit 2312 determines that there are no other users of the cloud service (step S114 / not), and ends the process.
  • the total management unit 2312 receives “Count-0” (“1”) as the number of users, the number of users is not zero (step S114 / is), and the process ends.
  • the user identified by the user ID “User-C” operates the operation device 131 of the terminal device 1_Nb in FIG. 1 to perform a cloud service stop instruction operation. Then, as described above, in response to the stop instruction operation, the operation control unit 13 transmits a command indicating that the stop instruction operation has been executed to the overall management unit 161. Upon receiving this command, the overall management unit 161 transmits this user ID ("User-C") to the router device 2 in FIG. 21 and sends a second command to stop the cloud service to the router in FIG. Transmit to device 2.
  • step S112 the user information management unit 335 counts down the number of users of the user ID “User-C” corresponding to the user ID “User-C” to “Count-0” (“0”).
  • step S114 the overall management unit 2312 of the router device 2 in FIG. 21 receives the number of users (“0”) and the user ID “User-A”, and further determines whether the number of users is zero. In the case of the above example, since the number of users is 0 (step S114 / not), the process proceeds to step S115.
  • Step S115 The router device 2 in FIG. 4 executes a virtual router / virtual machine stop instruction corresponding to the received initial user ID.
  • the overall management unit 231 instructs the virtual machine start / stop unit 236 to execute a virtual machine stop process corresponding to the initial user ID.
  • the virtual machine start / stop unit 236 searches the storage device 24 (FIG. 3) for an API that is the virtual machine start / stop information corresponding to the initial user ID.
  • the storage device 24 stores virtual router start / stop information (API) corresponding to the user ID, and virtual machine start / stop information corresponding to the SaaS ID corresponding to the user ID. (API) is stored.
  • API virtual router start / stop information
  • the virtual machine start / stop unit 236 sets the initial user ID and the stop instruction option as arguments, and executes the API that is the start / stop information of this virtual machine.
  • the virtual machine start / stop unit 236 sets the initial user ID “User-A” and the stop instruction option as arguments, and executes API_VM-A which is virtual machine start / stop information. Note that the details of the virtual machine stop process have been described in the first embodiment, and a description thereof will be omitted.
  • the overall management unit 231 instructs the virtual router start / stop unit 235 to execute the virtual router stop process corresponding to the initial user ID.
  • the virtual router activation / deactivation unit 235 searches the storage device 24 (FIG. 3) for an API that is the activation / deactivation information of the virtual router corresponding to this initial user ID.
  • the virtual router activation / deactivation unit 235 sets the initial user ID and the deactivation instruction option as arguments, and executes the API that is the deactivation information of the virtual router.
  • the virtual router start / stop unit 235 sets the initial user ID “User-A” and the stop instruction option as arguments, and executes API_VR-A which is the virtual router start / stop information. Note that the details of the virtual router stop process have been described in the first embodiment, and will not be described.
  • the tunnel establishment unit 237 of the router device 2 stops the encapsulation process in the established tunnel, that is, executes the tunnel stop process.
  • the router device when a plurality of users use one cloud service (virtual machine) at the same time, if the cloud service is already activated, the router device performs the virtual machine activation process. Do not execute. Therefore, unnecessary virtual machine activation processing can be omitted, and an increase in processing load on the router device 2 and the management server device 7 can be suppressed. Moreover, when stopping a certain cloud service, even if other users are using this cloud access, this cloud service is not stopped.
  • SYS Information processing system
  • DC_1 to DC_Na Data center
  • US User side system
  • Nt Communication network
  • 1, 1_1, 1_Nb, 1_Nc, 1_Nd ... Terminal device, 121 ... Display device, 131 ...
  • CPU 22 ... communication Device, 221 ... wired communication device, 222 ... wireless communication device, 23 ... memory, 231, 2312 ... overall management unit, 232 ... connection unit, 233 ... routing unit, 234 ... authentication management unit, 235 ... virtual router start / stop unit, 236 ... Virtual machine start / stop unit, 237, 2371 ... Tunnel establishment unit, 238 ... Authentication server information acquisition unit, 239 ... User Receiving unit, 24 ... storage device, 3 ... authentication server, 31 ... CPU, 32 ... Communication device, 33 ... Memory, 331, 3311, 3312 ... Overall management unit, 332 ... Authentication execution unit, 333 ... Access information acquisition unit, 334 ... Tunnel establishment unit, 335 ...

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

 各ユーザが,各ユーザの情報処理サービスを利用できる状態を提供する。ルータ装置2は,端末装置から,クラウドサービスのユーザを認証する認証情報を受信し,認証サーバ装置3にユーザの認証要求を行い,認証サーバ装置3が,ユーザの認証が成功した場合に送信する,クラウドサービスのユーザ毎に定められた第1の情報および第2の情報を受信し,受信した第1の情報に基づき,ソフトウェアの起動を指示する第1のコマンドをデータセンターDC_1に送信し,受信した第2の情報に基づき,通信回線網Ntにトンネルを開設する。

Description

情報処理システム,情報処理方法,通信装置
 本発明は,情報処理システム,情報処理方法,通信装置に関する。
 情報処理装置により実行される各種情報処理サービスをネットワークを介し利用者(以下,ユーザと記す)に提供することが行われている。この情報処理サービスの一例として,いわゆるクラウドサービスがある。
 このクラウドサービスとして,サービス提供業者が,例えばデータセンターに設けられた情報処理装置上に仮想マシンを起動し,仮想マシンが実行するソフトウェアをユーザに提供するサービスがある。なお,ソフトウェアとしては,例えば,OS(Operating
System),アプリケーション,ミドルウェアがある。サービス提供業者は,他にも,データセンターに設けられたハードウェアとして例えば,ルータ装置などの通信装置や,回線網を提供することもある。
特開2002-117230号公報 特開2001-326696号公報 特開2011-250209号公報
 ユーザは,データセンターにおいて提供されている情報処理サービスを,端末装置を介して利用する。端末装置は,アクセスルータを経由して情報処理サービスに接続される。アクセスルータは,端末装置がクラウドサービスを利用するために必要な処理を行うルータである。アクセスルータは,ユーザからの接続要求に応じてあらかじめ登録された情報処理サービスへの接続を行う。しかしながら,アクセスルータに登録される情報処理サービスは1つに限定されているため,複数のユーザが同じアクセスルータに接続してクラウドサービスを利用しようとすると,同じ情報処理サービスにしか接続できない。
 1つの側面では,本発明の目的は,複数のユーザが,1つの通信装置(例えば,アクセスルータ)を経由してそれぞれの情報処理サービスを利用できる状態を提供することである。
 情報処理システムの第1の側面は,ソフトウェアを実行して情報処理サービスを行う第1の装置と,前記情報処理サービスの利用者を認証し,前記情報処理サービスの利用者毎に定められた,前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と,前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有し,前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報を受信し,前記第2の装置に前記利用者の認証要求を行い,前記第2の装置は,前記利用者の認証を行い,前記利用者の認証が成功した場合,前記情報処理サービスの利用者毎に定められた,前記第1の情報および前記第2の情報を,前記通信装置に送信し,前記通信装置は,前記第1の情報および前記第2の情報を受信し,受信した前記第1の情報に基づき,前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し,前記第1の装置は,前記第1のコマンドを受信し,前記ソフトウェアを起動,実行し,前記通信装置は,受信した前記第2の情報に基づき,前記ネットワークに前記仮想通信経路を開設する。
 一実施形態によれば,通信装置が,情報処理サービスを提供する装置に対して,ユーザ毎の情報処理サービスの実行を指示するので,複数のユーザが,1つの通信装置を経由してそれぞれの情報処理サービスを利用できる。
第1の実施の形態における情報処理システムの一例を説明するハードウェアブロック図である。 図1の端末装置のハードウェアブロック図である。 図1のルータ装置のハードウェアブロック図である。 図3のルータ装置が実行するソフトウェアモジュールのブロック図である。 図1の認証サーバ装置のハードウェアブロック図である。 クラウドアクセス管理テーブルの一例を示す図である。 クラウドサービス管理テーブルの一例を示す図である。 図1の管理サーバ装置のハードウェアブロック図である。 仮想ルータHWテーブルの一例を示す図である。 仮想マシンHWテーブルの一例を示す図である。 図1のサーバ装置のハードウェアブロック図である。 図4のルータ装置における処理の流れを説明するフロー図である。 第1の実施の形態における,仮想ルータ,仮想マシンの起動,トンネル開設処理の流れを説明する図である。 第2の実施の形態における情報処理システムの一例を説明するハードウェアブロック図である。 図14の端末装置のハードウェアブロック図である。 図14のルータ装置が実行するソフトウェアモジュールのブロック図である。 図14のクラウドディレクトリサービス装置のハードウェアブロック図である。 認証サーバアクセス情報管理テーブルの一例を示す図である。 図14の認証サーバ装置のハードウェアブロック図である。 データセンターに設けられた認証サーバ装置からクラウドアクセス情報を取得する処理の流れを説明する図である。 第3の実施の形態におけるルータ装置が実行するソフトウェアモジュールのブロック図である。 第3の実施の形態における認証サーバ装置のハードウェアブロック図である。 クラウドサービス管理テーブルの一例を示す図である。 第3の実施の形態における,仮想ルータ,仮想マシンの起動,トンネル開設処理の流れを説明する図である。 第3の実施の形態における,仮想ルータ,仮想マシンの停止,トンネル停止処理の流れを説明する図である。
 [第1の実施の形態]
 (情報処理システム)
 図1は,第1の実施の形態における情報処理システムSYSの一例を説明するハードウェアブロック図である。
 情報処理システムSYSは,第1のデータセンターDC_1~第Na(Naは2以上の整数)のデータセンターDC_Naと,ユーザ側システムUSと,通信回線網Ntに接続する認証サーバ装置3とを有する。第1のデータセンターDC_1~第NaのデータセンターDC_Naは,ソフトウェアを実行して情報処理サービスを行い,ユーザに,情報処理サービスを提供する第1の装置の一例である。情報処理サービスは,例えばクラウドサービスであり,このクラウドサービスは,SaaS(Software as
a Service)とも呼ばれる。
 ユーザ側システムUSは,このクラウドサービスを利用するシステムである。第1のデータセンターDC_1~第NaのデータセンターDC_Naとユーザ側システムUSとの間には,データ通信などの各種通信サービスを提供する通信事業者が設置した通信回線網Ntが設けられている。
 ユーザ側システムUSは,ユーザが使用する情報処理装置(以下,端末装置と記す)である,第1の端末装置1_1~第Nb(Nbは2以上の整数)の端末装置1_Nbと,第Nc(NcはNbを超える整数)の端末装置1_Nc~第Nd(NdはNcを超える整数)の端末装置1_Ndとを有する。これら端末装置は,例えばデスクトップ型,ラップトップ型,タブレット型のパーソナルコンピュータである。他にも,これら端末装置は,スマートフォン等の携帯用小型通信端末装置であってもよい。さらに,ユーザ側システムUSは,これら端末装置が接続するルータ装置2を有する。
 第1の端末装置1_1~第Nbの端末装置1_Nbは,無線通信機能を有し,いわゆる無線LAN(Local Area Network )を介してルータ装置2に接続し,無線によるデータ通信を行う。この無線によるデータ通信の規格としては,例えばIEEE 802.11がある。
 第1の端末装置1_Nc~第Ndの端末装置1_Ndは,有線通信機能を有し,いわゆる有線LANである内部ネットワークNuを介してルータ装置2に接続する。
 ルータ装置2は,第1の端末装置1_Ncなどの端末装置がクラウドサービスを利用するために必要な処理を行うルータ装置であり,アクセスルータとも呼ばれる。ルータ装置2は,パケットのルーティングを行い,ネットワーク間を相互接続する通信装置である。ルータ装置2は,通常,OSI(Open
Systems Interconnection)基本参照モデルにおいて,第1層(物理層)~第3層(ネットワーク層)までの接続処理を実行し,有線通信機能の他に,例えば無線通信機能を有する。ルータ装置2は,無線通信機能を利用して,第1の端末装置1_1~第Nbの端末装置1_Nbに接続し,有線通信機能を利用して,第Ncの端末装置1_Nc~第Ndの端末装置1_Ndに接続する。さらに,ルータ装置2は,有線通信機能や,無線通信機能を利用して,通信回線網Ntに接続する。通信回線網Ntは,例えば,広域IP(Internet Protocol)通信網である。
 ルータ装置2は,例えばデータセンターDC_1とユーザの端末装置1_1などとの間におけるネットワーク(通信回線網Nt)を介する通信を制御する通信装置の一例である。
 認証サーバ装置3は,クラウドサービスのユーザを認証し,クラウドサービスのユーザ毎に定められた,前記したソフトウェアを起動するための第1の情報およびソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する。なお,第1の情報,第2の情報については,後述する。
 第1のデータセンターDC_1は,例えば有線LANである内部ネットワークNdcを介して相互に接続される,第1のサーバ装置4_1~第Ne(Neは2以上の整数)のサーバ装置4_Neと,ゲートウェイ装置5と,ルータ装置6と,管理サーバ装置7とを有する。
 第Neのサーバ装置4_ Neは,ソフトウェアである仮想マシン4vmや仮想ルータ4vrを起動し,実行する。なお,他の第1のサーバ装置4_1なども第Neのサーバ装置4_ Neと同様の構成である。仮想マシン4vmは,ユーザ側システムUSにおけるユーザに対して各種情報処理サービスを提供するソフトウェアを実行する。仮想ルータ4vrは,仮想マシン4vmからのデータ出力,仮想マシン4vmへのデータ入力を制御する。すなわち,仮想ルータ4vrは,仮想マシン4vmに対する通信パケットのルーティング処理を実行して,仮想マシン4vmの通信処理を制御する。ここで,仮想ルータと仮想マシンとは,1対1に対応する必要はない。第1のサーバ装置4_1は,仮想ルータを,例えば,仮想マシン群が属する仮想ネットワークに対応して起動,実行してもよい。なお,仮想ルータは,ルータVM(Virtual
Machine)とも呼ばれる。
 第Neのサーバ装置4_ Neは,ソフトウェア(例えば,仮想マシン4vm,仮想ルータ4vr)を実行してクラウドサービスを行うサービス実行装置の一例である。
 ゲートウェイ装置5は,第1のデータセンターDC_1と通信回線網Ntとの相互接続を実行する。例えば,ゲートウェイ装置5は,インピーダンス整合機能やプロトコル変換機能を有し,第1のデータセンターDC_1と通信回線網Ntとの間における通信媒体や伝送方式の違いを吸収して,第1のデータセンターDC_1と通信回線網Ntとの相互接続を実行する。
 ルータ装置6は,第1のデータセンターDC1_1における,パケットのルーティングを行い各装置間の相互接続を実行する。
 管理サーバ装置7は,第1のサーバ装置4_1~第Neのサーバ装置4_Neと,ゲートウェイ装置5と,ルータ装置6とを管理するサーバ装置である。
 第2のデータセンターDC_2~第NaのデータセンターDC_Naも,第1のデータセンターDC_1と同様の装置構成を有する。
 ユーザ側システムUSのルータ装置2は,第1の接続点(接続ノードとも言う)と,第2の接続点との間を接続する閉じられた仮想的な直結通信経路として機能する仮想通信経路(以下,トンネルと適宜記す)を開設する。図1において,第1の接続点が,ルータ装置2であり,第2の接続点がデータセンターDC_1の仮想ルータ4vrである。図1において,この第1,第2の接続点間のトンネルを符号L2_1で模式的に示す。なお,符号L2_Naは,ルータ装置2が,第NaのデータセンターDC_Naの仮想ルータ(図示しない)との間で開設したトンネルを示す。このトンネルは,OSI基本参照モデルの第2層(レイヤ2とも呼ぶ)におけるイーサネットフレーム(イーサネットは登録商標)をカプセル化するトンネルであり,いわゆるL(Layer)2トンネルとも呼ばれる。ルータ装置2と仮想ルータ4vrとの間で,L2トンネルを開設(構築,形成,確立とも呼ぶ)するためのプロトコルとしては,例えば,GRE(Generic
Routing Encapsulation),OpenVPN(Virtual Private Network),L2TP(Layer 2 Tunneling Protocol)などがある。
 (ユーザシステム)
 図2は,図1の端末装置のハードウェアブロック図である。端末装置1は,図1における,例えば,無線通信機能を有する第1の端末装置1_1~第Nbの端末装置1_Nbの何れか1つの端末装置である。端末装置1には,液晶ディスプレイなどの表示装置121と,キーボードやマウスなどの操作装置131と,各ユーザがそれぞれ有するユーザ識別カードに記憶されたユーザ認証情報を読み取るカードリーダ141とが接続されている。このユーザ識別カードは,スマートカードとも呼ばれる。
 端末装置1は,例えばバスBを介して相互に接続された,CPU(Central Processing
Unit)11と,表示制御部12と,操作制御部13と,カードリーダ制御部14と,通信装置15と,メモリ16と,記憶装置17とを有する。
 CPU11は,端末装置1の全体を制御する演算処理装置(制御部,コンピュータとも呼ぶ)である。表示制御部12は,表示装置121に各種画像を表示する処理を実行する。ここで各種画像とは,後述するユーザ認証用画面や,トンネル開設通知画面である。操作制御部13は,操作装置131から入力される操作指示に対して,操作指示に応じた各種処理を実行する。カードリーダ制御部14は,カードリーダ141に挿入されたユーザ識別カードからユーザ認証情報を読み取る処理を制御する。
 通信装置15は,ルータ装置2と無線通信を実行する無線LAN子機である。なお,端末装置1が,例えば有線通信機能を有する場合には,この通信装置15は,いわゆるネットワークインターフェイスカード(NIC:Network
Interface Card)である。
 メモリ16は,CPU11が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
 メモリ16の全体管理部161は,端末装置1が実行する各種処理を管理する。全体管理部161は,例えば,認証情報取得部162,認証情報送信部163,アクセス部164を管理すると共に,通信装置15に接続する装置と通信パケットの送受信処理を実行する。
 認証情報取得部162は,クラウドサービスのユーザを識別するユーザの識別子(ID)とこのユーザがこのクラウドサービスの正当なユーザであるかを確認する情報とを有する認証情報を操作制御部13やカードリーダ制御部14から取得する。なお,認証情報については,図13で詳細に説明する。認証情報送信部163は,認証情報取得部162が取得した認証情報をルータ装置2を介して認証サーバ装置3に送信する,アクセス部164は,データセンターDC_1で動作する仮想マシンにアクセスする処理を実行する。
 全体管理部161,認証情報取得部162,認証情報送信部163,アクセス部164は,いわゆるプログラムであり,このプログラムは,例えば,記憶装置17に記憶されている。CPU11は,起動時に,これらのプログラムを記憶装置17から読み出して,メモリ16に展開することにより,これらのプログラムをソフトウェアモジュールとして機能させる。
 記憶装置17は,例えば,ハードディスクドライブ(HDD:Hard Disk Drive)などの磁気記憶装置や,不揮発性のメモリ(Non-volatile
memory)であり,前記したプログラムや,各種データを記憶する。
 図3は,図1のルータ装置(アクセスルータ装置)のハードウェアブロック図である。ルータ装置2は,例えばバスBを介して相互に接続された,CPU21と,通信装置22と,メモリ23と,記憶装置24とを有する。
 CPU21は,ルータ装置2の全体を制御する演算処理装置である。通信装置22は,有線通信を実行する有線通信装置221と,無線通信を実行する無線通信装置222とを有する。有線通信装置221は,例えば複数のNICを有し,通信回線網Ntに有線接続し,この通信回線網Ntに接続している各種装置との通信を行う。また,有線通信装置221は,有線通信機能を有する端末装置1_Ncなどに有線接続し,通信を行う。例えば,有線通信装置221の第1のNIC(図示しない)が,通信回線網Ntに有線接続し,第2のNIC(図示しない)が,有線通信機能を有する端末装置1_Ncに有線接続する。なお,データセンターDC1_1に接続する回線は,有線回線だけではなく,公衆無線回線,モバイル回線でもよい。
 無線通信装置222は,無線通信機能を有する端末装置1_1などに無線接続し,通信を実行する無線LAN親機である。
 メモリ23は,CPU21が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
 記憶装置24は,例えば,磁気記憶装置や不揮発性のメモリである。記憶装置24は,図4で説明するプログラムや,各種データを記憶する。
 図4は,図3のルータ装置(アクセスルータ装置)が実行するソフトウェアモジュールのブロック図である。
 全体管理部231は,ルータ装置2が実行する各種処理を管理する。全体管理部231は,例えば,接続部232,ルーティング部233,認証管理部234,仮想ルータ起動停止部235,仮想マシン起動停止部236,トンネル開設部(L2接続部)237を管理する。全体管理部231は,通信装置22(図3参照)に接続する装置と通信パケットの送受信処理を実行する。
 接続部232は,端末装置1_1などとの接続を確立し,双方向通信を実行する。ルーティング部233は,ルータ装置2と,他の装置との間におけるデータ通信処理(ルーティング)を実行する。なお,他の装置としては,例えば,端末装置1_1や,認証サーバ装置3や,図1のデータセンターDC1_1内のゲートウェイ装置5がある。他にも,ルータ装置2は,ルータ装置2と仮想ルータとの間におけるデータ通信処理を実行する。
 認証管理部234は,認証サーバ装置3に対するユーザ認証処理を管理する。仮想ルータ起動停止部235は,仮想ルータの起動処理や停止処理を実行するように管理サーバ装置7(図1参照)に指示する。仮想マシン起動停止部236は,仮想マシンの起動処理や停止処理を実行するように管理サーバ装置7に指示する。トンネル開設部237は,認証されたユーザのIDに対応するL2プロトコルに基づき,起動している仮想ルータとの間におけるトンネルを開設する。
 全体管理部231,接続部232,認証管理部234,ルーティング部233,仮想ルータ起動停止部235,仮想マシン起動停止部236,トンネル開設部237は,いわゆるプログラムであり,このプログラムは,例えば,図3の記憶装置24に記憶されている。図3のCPU21は,起動時に,これらのプログラムを記憶装置24から読み出して,メモリ23に展開することにより,これらのプログラムをソフトウェアモジュールとして機能させる。
 (認証サーバ装置)
 図5は,図1の認証サーバ装置のハードウェアブロック図である。
 認証サーバ装置3は,例えばバスBを介して相互に接続された,CPU31と,通信装置32と,メモリ33と,記憶装置34とを有する。
 CPU31は,認証サーバ装置3の全体を制御する演算処理装置である。通信装置32は,例えばNICであり,図1の通信回線網Ntに有線接続し,この通信回線網Ntに接続している各種装置との通信を行う。
 メモリ33は,CPU31が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
 メモリ33の全体管理部331は,認証サーバ装置3が実行する各種処理を管理する。全体管理部331は,例えば,認証実行部332,アクセス情報取得部333を管理し,通信装置32に接続する装置と通信パケットの送受信処理を実行する。
 認証実行部332は,図1のユーザ側システムUSにおけるユーザの認証処理を実行する。アクセス情報取得部333は,図1のデータセンターDC1_1が提供するクラウドサービスにアクセスするためのクラウドアクセス情報を取得し,取得したクラウドアクセス情報をルータ装置2に送信する。このクラウドアクセス情報は,クラウドサービスのユーザ毎に定められた,ソフトウェアを起動するための第1の情報およびこのソフトウェアとネットワーク(例えば,通信回線網Nt)を介して通信するトンネルを開設するための第2の情報を有する。
 全体管理部331,認証実行部332,アクセス情報取得部333は,いわゆるプログラムであり,このプログラムは,例えば,記憶装置34に記憶されている。CPU31は,起動時に,これらのプログラムを記憶装置34から読み出して,メモリ33に展開することにより,これらのプログラムをソフトウェアモジュールとして機能させる。
 記憶装置34は,例えば,磁気記憶装置や不揮発性のメモリである。記憶装置34は,前記したプログラムや,各種データや,クラウドサービスにアクセスするために必要な情報を有するクラウドアクセス管理テーブルT1と,このクラウドサービスを管理するクラウドサービス管理テーブルT2とを記憶する。
 図6,図7に基づき,図5に示した,クラウドアクセス管理テーブルT1,クラウドサービス管理テーブルT2について説明する。
 図6は,クラウドアクセス管理テーブルT1の一例を示す図である。図6のクラウドアクセス管理テーブルT1は,ユーザID欄と,仮想ルータの起動停止情報欄と,仮想ルータのIPアドレス欄と,L2プロトコル欄と,SaaSID欄とを有する。
 ユーザID欄は,クラウドサービスのユーザを識別するユーザIDを記憶する。仮想ルータの起動停止情報欄は,ユーザIDに対応する仮想ルータの起動停止情報を記憶する。仮想ルータのIPアドレス欄は,この仮想ルータのIPアドレスを記憶する。L2プロトコル欄は,この仮想ルータとルータ装置2との間でトンネルを開設するためのプロトコルの種別を記憶する。SaaSID欄は,ユーザID欄に記憶されているユーザIDを有するユーザが使用するクラウドサービスを識別するSaaSIDを記憶する。
 図6において,ユーザID欄は,"User-A","User-B","User-C"を記憶する。仮想ルータの起動停止情報欄は,前記した各ユーザIDに対応する仮想ルータの起動停止情報として"API_VR-A","API_VR-B","API_VR-C"を記憶する。
 図6において,仮想ルータのIPアドレス欄は,ユーザIDに対応する仮想ルータのIPアドレスとして,"x1.x2.x3.x4","y1.y2.y3.y4","z1.z2.z3.z4"を記憶する。L2プロトコル欄は,前記した各ユーザIDに対応するプロトコルの種別として,"GRE"
(Generic Routing Encapsulation),"OpenVPN"
(Virtual Private Network),"L2TP" (Layer 2
Tunneling Protocol)を記憶する。SaaSID欄は,前記した各ユーザIDに対応するSaaSIDとして,"SaaS-0","SaaS-1","SaaS-0"を記憶する。
 図6で説明した,仮想ルータの起動停止情報のAPI(Application Program Interface)は,クラウドサービスの提供業者から提供されたものである。図4のルータ装置2の仮想ルータ起動停止部235が,例えば,起動する仮想ルータのIPアドレスと,ユーザIDと,起動指示オプションとをこのAPIに引数として設定し,このAPIを実行する。仮想ルータ起動停止部235は,このAPIに基づき,仮想ルータの起動コマンドを図8の管理サーバ装置7に送信する。この起動コマンドは,引数として設定された,仮想ルータのIPアドレス,ユーザID,起動指示オプションを有する。なお,このAPIとは,例えば,http://www.hogehoge.com/cloud/vr/x1.x2.x3.x4/User-A/Onである。このAPIの意味は,ユーザID" User-A ",IPアドレス" x1.x2.x3.x4"の仮想ルータ("Vr")を起動("On")するように,"
www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
 図8の管理サーバ装置7は,この起動コマンドに基づき,引数として設定されたIPアドレスを有する仮想ルータを,例えば,図1のサーバ装置4_Neに起動する。
 図7は,クラウドサービス管理テーブルT2の一例を示す図である。図7のクラウドサービス管理テーブルT2は,SaaSID欄と,仮想マシンの起動停止情報欄と,仮想マシンのIPアドレス欄と,利用プロトコル欄とを有する。SaaSID欄は,図6に示したSaaSIDを記憶する。仮想マシンの起動停止情報欄は,仮想マシンの起動停止情報を記憶する。仮想マシンのIPアドレス欄は,この仮想マシンのIPアドレスを記憶する。利用プロトコル欄は,この仮想マシンにアクセスする際に利用するプロトコルを記憶する。
 図7において,SaaSID欄は,SaaSIDとして,"SaaS-0","SaaS-1"を記憶し,クラウドの起動停止情報欄は,前記した各SaaSIDに対応する仮想マシンの起動停止情報として,"API_VM-A","API_VM-B"を記憶する。
 図7において,仮想マシンのIPアドレス欄は,前記した各SaaSIDに対応する仮想マシンのIPアドレスとして,"xx1.xx2.xx3.xx4","yy1.yy2.yy3.yy4"を記憶する。利用プロトコル欄は,前記した各SaaSIDに対応するプロトコルとして,HTTP(Hypertext
Transfer Protocol),SMB(Server Message Block)を記憶する。
 図7で説明した,仮想マシンの起動停止情報のAPIは,クラウドサービスの提供業者から提供されたものである。図4のルータ装置2の仮想マシン起動停止部236が,例えば,起動する仮想マシンのIPアドレスと,SaaSIDと,起動指示オプションとをこのAPIに引数として設定し,このAPIを実行する。仮想マシン起動停止部236は,このAPIに基づき,仮想マシンの起動コマンドを図8の管理サーバ装置7に送信する。この起動コマンドは,引数として設定された,仮想マシンのIPアドレス,SaaSID,起動指示オプションを有する。なお,このAPIとは,例えば,http://www.hogehoge.com/cloud/vm/xx1.xx2.xx3.xx4/SaaS-0/Onである。このAPIの意味は,SaaSID" SaaS-0 ",IPアドレス" xx1.xx2.xx3.xx4"の仮想マシン("Vm")を起動("On")するように,"
www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
 図8の管理サーバ装置7は,この起動コマンドに基づき,引数として設定されたIPアドレスを有する仮想マシンを,例えば,図1のサーバ装置4_Neに起動する。
 クラウドサービスのユーザ毎に定められた,仮想ルータ,仮想マシン(ソフトウェア)を起動するための第1の情報は,例えば,図6に示した,仮想ルータの起動停止情報,仮想ルータのIPアドレス,図7に示した,仮想マシンの起動停止情報,仮想マシンのIPアドレスである。そして,このソフトウェアとネットワーク(例えば,通信回線網Nt)を介して通信するトンネルを開設するための第2の情報は,図6に示した,l2プロトコルである。
 例えば,ユーザIDで識別される,クラウドサービスのユーザ"Use-A"に対して,第1の情報として,図6に示すように,仮想ルータの起動停止情報"API_VR-A",仮想ルータのIPアドレス"x1.x2.x3.x4"が定められている。さらに,前記した第1の情報として,ユーザ"Use-A"のクラウドサービスを識別するSaaSID"SaaS-0"に対応して(図6参照),図7に示すように,仮想マシンの起動停止情報"API_VM-A",仮想マシンのIPアドレス"xx1. xx2. xx3. xx4"が定められている。そして,ユーザ"Use-A"に対して,第2の情報として,図6に示すように,L2プロトコル"GRE"が定められている。
 (管理サーバ装置)
 図8は,図1の管理サーバ装置7のハードウェアブロック図である。管理サーバ装置7は,例えばバスBを介して相互に接続された,CPU71と,通信装置72と,メモリ73と,記憶装置74とを有する。
 CPU71は,管理サーバ装置7の全体を制御する演算処理装置である。通信装置72は,例えばNICであり,内部ネットワークNdcに有線接続し,この内部ネットワークNdcに接続している各種装置との通信を行う。
 メモリ73は,CPU71が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
 メモリ73の全体管理部731は,管理サーバ装置7が実行する各種処理を管理する。全体管理部731は,例えば,仮想ルータ管理部732,仮想マシン管理部733を管理する共に,通信装置72に接続する装置と通信パケットの送受信処理を実行する。仮想ルータ管理部732は,サーバ装置において実行される仮想マシンからのデータ出力,仮想マシンへのデータ入力を制御する仮想ルータを管理する。仮想マシン管理部733は,この仮想マシンを管理する。
 全体管理部731,仮想ルータ管理部732,仮想マシン管理部733は,いわゆるプログラムであり,このプログラムは,例えば,記憶装置74に記憶されている。CPU71は,起動時に,これらのプログラムを記憶装置74から読み出して,メモリ73に展開することにより,これらのプログラムをソフトウェアモジュールとして機能させる。
 記憶装置74は,例えば,磁気記憶装置や不揮発性のメモリである。記憶装置74は,前記したプログラムや,各種データを記憶する。さらに,記憶装置74は,仮想ルータに割り当てるハードウェア(HW:Hard Ware)の資源量を記憶する仮想ルータHWテーブルT11と,仮想マシンに割り当てるハードウェアを記憶する仮想マシンHWテーブルT12とを記憶する。なお,1つの仮想マシンだけではなく,複数の仮想マシンが協調動作して各種情報処理を実行してもよい。
 図9,図10に基づき,図8に示した,仮想ルータHWテーブルT11,仮想マシンHWテーブルT12について説明する。
 図9は,仮想ルータHWテーブルT11の一例を示す図である。
 図9の仮想ルータHWテーブルT11は,ユーザID欄と,CPU欄と,メモリ欄と,記憶装置欄と,通信帯域欄とを有する。ユーザID欄は,クラウドサービスのユーザを識別するユーザIDを記憶する。CPU欄は,このユーザIDに対応する仮想ルータに割り当てる,CPUのクロック数(GHz)を記憶する。メモリ欄は,この仮想ルータに割り当てるメモリ容量(Gbyte)を記憶する。記憶装置欄は,この仮想ルータに割り当てる記憶装置の容量(Gbyte)を記憶する。通信帯域欄は,この仮想ルータに割り当てるデータ通信の通信帯域(Gbps)を記憶する。
 図9において,ユーザID欄は,"User-A","User-B","User-C"を記憶する。CPU欄は,前記した各ユーザIDに対応する仮想ルータに割り当てるCPUのクロック数として"1.0","1.5","1.0"(GHz)を記憶する。なお,仮想ルータに割り当てるCPUのクロック数が"1.0"GHzとは,このCPUの最大クロック数が3.0GHzの場合,時分割された(1/3)GHz分,この仮想ルータがこのCPUを占有できることを意味している。
 メモリ欄は,前記した各ユーザIDに対応する仮想ルータに割り当てるメモリ容量として"1.0","1.5","1.2"(Gbyte)を記憶する。なお,仮想ルータに割り当てるメモリ容量が"1.0"Gbyteとは,このメモリにおいて,"1.0"Gbyteに相当するメモリ領域を,この仮想ルータに割り当てることを意味している。
 記憶装置欄は,前記した各ユーザIDに対応する仮想ルータに割り当てる記憶装置の容量として"100.0","200.0","250.0"(Gbyte)を記憶する。通信帯域欄は,前記した各ユーザIDに対応する仮想ルータが通信を実行する際に割り当てる通信帯域として"1.2","1.5","1.2"(Gbps)を記憶する。なお,仮想ルータに割り当てる記憶装置の容量が"100.0"Gbyteとは,このメモリにおいて,"100.0"Gbyteに相当する記憶領域を,この仮想ルータに割り当てることを意味している。仮想ルータに割り当てる通信帯域が"1.2"Gbpsとは,通信装置(例えばNIC)の最大通信帯域が4.0Gbpsの場合,時分割された(1.2/4.0)Gbps分,この仮想ルータがこの通信装置を占有できることを意味している。
 図10は,仮想マシンHWテーブルT12の一例を示す図である。
 図10の仮想マシンHWテーブルT12は,SaaS
ID欄と,CPU欄と,メモリ欄と,記憶装置欄と,通信帯域欄と,ソフトウェア欄とを有する。SaaS
ID欄は,クラウドサービスを識別するSaaS IDを記憶する。CPU欄は,このSaaS IDに対応する仮想マシンに割り当てる,CPUのクロック数(GHz)を記憶する。メモリ欄は,この仮想マシンに割り当てるメモリ容量(Gbyte)を記憶する。記憶装置欄は,この仮想マシンに割り当てる記憶装置の容量(Gbyte)を記憶する。通信帯域欄は,この仮想マシンに割り当てるデータ通信の通信帯域(Gbps)を記憶する。ソフトウェア欄は,この仮想マシンが実行する,OSやアプリケーションの名前を記憶する。
 図10において,SaaS ID欄は,"SaaS-0","SaaS-1"を記憶する。CPU欄は,前記した各SaaS
IDに対応する仮想マシンに割り当てるCPUのクロック数として"2.0","3.5"(GHz)を記憶し,メモリ欄は,前記した各SaaS
IDに対応する仮想マシンに割り当てるメモリ容量として"2.0","2.5"(Gbyte)を記憶する。記憶装置欄は,前記した各SaaS IDに対応する仮想マシンに割り当てる記憶装置の容量として"100.0","200.0"(Gbyte)を記憶し,通信帯域欄は,前記した各SaaS
IDに対応する仮想マシンが通信を実行する際に割り当てる通信帯域として"1.0","1.2"(Gbps)を記憶する。さらに,前記した各SaaS
IDに対応する仮想マシンが実行するOS,アプリケーションの名前"OS0,App0a,App0b","OS1,App1b,App1b"を記憶する。ここで,"OS0"とは,"SaaS-0"の仮想マシンが実行するOSの名前であり,"App0a","App0b"とは,この仮想マシンが実行するアプリケーションの名前である。同じく,"OS1"とは,"SaaS-1"の仮想マシンが実行するOSの名前であり,"App1a","App1b"とは,この仮想マシンが実行するアプリケーションの名前である。
 (サーバ装置)
 図11は,図1のデータセンターDC_1内のサーバ装置のハードウェアブロック図である。図11では,図1における第Neのサーバ装置4_Neを例示して説明するが,他のサーバ装置4_1なども同様の構成を有する。
 サーバ装置4_Neは,ハードウェア40と,ハードウェア40上で動作するハイパーバイザ(Hypervisor)45とを有する。なお,ハイパーバイザは,仮想化ソフトウェアとも呼ばれる。
 さらに,サーバ装置4_Neは,ハイパーバイザ45が起動し管理する第1の仮想ルータ4vr_1~第Nf(Nfは2以上の整数)の仮想ルータ4vr_Nfと,ハイパーバイザ45が起動し管理する第1の仮想マシン4vm_1~第Nfの仮想マシン4vm_Nfとを有する。ここで,第1の仮想ルータ4vr_1~第Nfの仮想ルータ4vr_Nfは,それぞれ,第1の仮想マシン4vm_1~第Nfの仮想マシン4vm_Nfからのデータ出力,第1の仮想マシン4vm_1~第Nfの仮想マシン4vm_Nfへのデータ入力を制御する。なお,同一のサーバ装置が,仮想マシンと仮想ルータとを起動せず,あるサーバ装置が,仮想マシンを起動し,他のサーバ装置が,仮想ルータを起動してもよい。
 ハイパーバイザ45は,ハードウェア40を仮想化して仮想ルータを起動し,さらに,ハードウェア40を仮想化して仮想マシンを起動するための制御ブログラムである。
 サーバ装置4_Neのハードウェア40は,例えばバスBを介して相互に接続された,CPU41と,通信装置42と,メモリ43と,記憶装置44とを有する。
 CPU41は,サーバ装置4の全体を制御する演算処理装置である。CPU41は,例えば,複数のコアを集積するマルチコアプロセッサであってもよい。通信装置42は,例えばNICであり,内部ネットワークNdcに有線接続し,この内部ネットワークNdcに接続している各種装置との通信を行う。
 メモリ43は,CPU41が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
 記憶装置44は,例えば,磁気記憶装置や不揮発性のメモリである。記憶装置44は,ハイパーバイザ45として機能する制御プログラムや,仮想ルータが実行するルーティング処理などの通信処理に必要な各種プログラムを記憶する。さらに,記憶装置44は,仮想マシンが実行する各種OSや各種アプリケーションのプログラムを記憶する。
 CPU41は,起動時に,ハイパーバイザ45の制御プログラムを記憶装置44から読み出して,メモリ43に展開することにより,この制御プログラムをハイパーバイザ45として機能させる。
 また,CPU41は,ハイパーバイザ45の制御に基づき,仮想ルータで実行する通信処理,すなわち通信パケットのルーティング処理に必要な各種プログラムを記憶装置44から適宜読み出し,この仮想ルータに割り当てられたメモリ43のメモリ領域に展開し,この仮想ルータを実行する。さらに,CPU41は,ハイパーバイザ45の制御に基づき,仮想マシンで実行するOSのプログラムやアプリケーションのプログラムを記憶装置44から適宜読み出し,この仮想マシンに割り当てられたメモリ43のメモリ領域に展開し,この仮想マシンを実行する。
 (ルータ装置における処理の流れ)
 図12は,図4のルータ装置2における処理の流れを説明するフロー図である。
 ステップS1:ルータ装置2の接続部232は,端末装置1(図2参照)からの接続要求に応答して,端末装置1との接続を確立し,接続完了通知を端末装置1に送信する。なお,ステップS1の処理の詳細については,図13のステップS23で説明する。
 ステップS2:ルータ装置2の認証管理部234は,端末装置1から送信されたクラウドサービスのユーザを認証する認証情報を受信し,認証サーバ装置3に認証要求を行う。なお,ステップS2の処理の詳細については,図13のステップS25で説明する。
 ステップS3:ルータ装置2の仮想ルータ起動停止部235は,認証サーバ装置3がユーザの認証が成功した場合に送信する,クラウドサービスのユーザ毎に定められた第1の情報および第2の情報を有するクラウドアクセス情報を受信し,このクラウドアクセス情報の第1の情報に基づき,仮想ルータの起動要求をデータセンターDC1_1に行う。なお,ステップS3の処理の詳細については,図13のステップS27で説明する。
 ステップS4:ルータ装置2の仮想マシン起動停止部236は,認証サーバ装置3から受信したクラウドアクセス情報の第1の情報に基づき,仮想マシンの起動要求をデータセンターDC1_1に行う。なお,ステップS2の処理の詳細については,図13のステップS29で説明する。
 ルータ装置2は,このステップS3,S4で説明した,仮想ルータの起動要求,仮想マシンの起動要求として,ソフトウェアの起動を指示する第1のコマンドをデータセンターDC1_1に送信する。
 ステップS5:ルータ装置2のトンネル開設部237は,認証されたユーザのIDに対応するL2プロトコルに基づき,起動している仮想ルータとの間におけるトンネルを開設する。換言すれば,トンネル開設部237は,受信したクラウドアクセス情報の第2の情報に基づき,ネットワーク(通信回線網Nt)にトンネルを開設する。なお,ステップS2の処理の詳細については,図13のステップS31で説明する。
 (仮想ルータ,仮想マシンの起動,トンネル開設処理の流れ)
 第1の実施の形態における,仮想ルータ,仮想マシンの起動,トンネル開設処理の流れについて,図1~図11を参照し,図13に基づき説明する。
 図13は,第1の実施の形態における,仮想ルータ,仮想マシンの起動,トンネル開設処理の流れを説明する図である。
 ステップS21:図2のユーザ側システムUSにおけるユーザは,端末装置1にユーザ認証用の認証情報を入力する。ユーザ認証の種類としては,例えば,ユーザを識別するユーザIDと,このユーザIDに対応するパスワードによるパスワード認証がある。パスワード認証の場合,認証情報はユーザIDと,このユーザIDに対応するパスワードである。他にも,ユーザ認証の種類としては,ユーザを識別するユーザIDと,このユーザIDに対応する公開鍵などの鍵情報が記憶されているIDカードによるカード認証情報がある。カード認証の場合,認証情報は,ユーザIDと,ユーザIDに対応する鍵情報である。以下の説明では,カード認証の認証情報として,ユーザIDとユーザIDに対応する公開鍵を例示して説明する。
 パスワード認証の場合,図2の全体管理部161は,認証用画面として,例えばユーザID,パスワード入力画面を表示装置121に表示するように表示制御部12に指示する。表示制御部12は,この表示指示に応答して,ユーザIDとパスワードとの入力画面を表示装置121に表示する。ユーザは,操作装置131を操作して,ユーザIDとパスワードとを入力する。認証情報取得部162は,入力されたユーザIDとパスワード,すなわち入力された認証情報を,操作制御部13を介して取得する。
 カード認証の場合,全体管理部161は,認証用画面として,例えばIDカードをカードリーダ141に挿入するようにユーザに指示する画面を表示装置121に表示するように表示制御部12に指示する。表示装置121は,この表示指示に応答して,指示画面を表示装置121に表示する。ユーザは,この指示画面の表示に応答して,カードリーダ141にIDカードを挿入する。カードリーダ141は,挿入されたIDカードから,ユーザIDとこのユーザIDに対応する公開鍵を読み取り,カードリーダ制御部14に出力する。認証情報取得部162は,入力されたユーザIDとこのユーザIDに対応する公開鍵,すなわち入力された認証情報を,カードリーダ制御部14を介して取得する。
 ステップS22:端末装置1の全体管理部161は,ルータ装置2に接続要求を行う。
 ステップS23:ルータ装置2は,この接続要求を受信し,端末装置1との接続を確立し,接続完了通知を端末装置1に送信する。具体的には,図4のルータ装置2の全体管理部231は,接続リスクエストを受信すると,接続部232に端末装置1との双方向通信を実行するための接続を確立するように指示する。接続部232は,この確立指示に応答して,端末装置1との双方向通信を実行するための接続を確立する。この接続確立により,端末装置1とルータ装置2との間で双方向通信処理が可能になる。
 ステップS24:図2の端末装置1の認証情報送信部163は,認証情報取得部162が取得した認証情報をルータ装置2に送信する。
 ステップS25:図4のルータ装置2の認証管理部234は,この認証情報を受信し,ユーザの認証要求を認証サーバ装置3に行う。具体的には,全体管理部231は,端末装置1から送信された認証情報を受信し,認証管理部234に送信する。認証管理部234は,認証要求と共に,受信した認証情報を認証サーバ装置3に送信する。
 ステップS26:図5の認証サーバ装置3は,認証要求に応答して,受信した認証情報に基づき,ユーザの認証を実行し,この認証情報に対応するクラウドアクセス情報をルータ装置2に送信する。具体的には,認証サーバ装置3の全体管理部331は,ルータ装置2から送信された認証要求と認証情報とを受信し,認証処理を実行するように認証実行部332に指示する。認証実行部332は,この指示に応答して,この認証情報に基づき,ユーザ認証処理を実行する。
 前記したパスワード認証の場合には,認証実行部332は,記憶装置34が予め記憶しているユーザIDと,このユーザIDに対応するパスワードとを記憶するテーブル(図示しない)に基づき認証を行う。ここでは,認証実行部332は,受信した認証情報が有するユーザIDとパスワードが,このテーブルに記憶されている場合には,このユーザIDで識別されるユーザが正当なユーザであると認証する。以下,認証実行部332が,正当なユーザと認証したことを,認証成功と適宜記す。認証実行部332は,このユーザIDとパスワードが,このテーブルに記憶されていない場合には,このユーザが正当なユーザでないと判定する。以下,認証実行部332が,正当なユーザでないと判定することを,認証失敗と適宜記す。
 前記したカード認証の場合には,認証実行部332は,記憶装置34が予め記憶しているユーザIDと,このユーザIDに対応する公開鍵とを記憶するテーブル(図示しない)に基づき認証を行う。ここでは,認証実行部332は,受信した認証情報が有するユーザIDと公開鍵がこのテーブルに記憶されている場合には,このユーザIDで識別されるユーザが正当なユーザであると認証する。認証実行部332は,このユーザIDと公開鍵が,このテーブルに記憶されていない場合には,このユーザが正当なユーザでないと判定する。
 なお,認証プロトコルとしては,例えば,RADIUS(Remote
Authentication Dial In User Service)認証プロトコルなどの様々なプロトコルを利用することができる。
 全体管理部331は,認証実行部332が認証処理を実行し,受信した認証情報が有するユーザIDで識別されるユーザが正当なユーザであると認証できた場合には,換言すれば,ユーザの認証が成功した場合には,以下の処理を実行する。すなわち,全体管理部331は,このユーザIDに対応するクラウドアクセス情報を取得し,取得したクラウドアクセス情報をルータ装置2に送信するようにアクセス情報取得部333に指示する。一方,全体管理部331は,認証実行部332がこのユーザが正当なユーザでないと判定した場合,認証失敗した旨をルータ装置2に送信する。この場合,ルータ装置2は,認証が失敗したことを端末装置1に通知する。
 アクセス情報取得部333は,クラウドアクセス情報の取得指示に応答して,図6のクラウドアクセス管理テーブルT1,図7のクラウドサービス管理テーブルT2から,前記ユーザIDに対応するクラウドアクセス情報を取得する。
 例えば,ユーザIDが"User-A"の場合,アクセス情報取得部333は,図6のクラウドアクセス管理テーブルT1から,このユーザIDに対応する仮想ルータの起動停止情報"API_VR-A",仮想ルータのIPアドレス"x1.x2.x3.x4",L2プロトコルの種別"GRE",SaaSID"SaaS-0"を取得する。さらに,アクセス情報取得部333は,図7のクラウドサービス管理テーブルT2を参照して,この取得したSaaSID"SaaS-0"に対応する仮想マシン起動停止情報"API_VM-A",仮想マシンのIPアドレス"xx1.xx2.xx3.xx4",接続用のプロトコル"HTTP"を取得する。アクセス情報取得部333は,取得したクラウドアクセス情報を,ルータ装置2に送信する。
 このように,アクセス情報取得部333は,ユーザの認証が成功した場合,クラウドサービスのユーザ毎に定められた,クラウドアクセス情報をルータ装置2に送信する。
 ステップS27:ルータ装置2は,受信したクラウドアクセス情報に基づき,仮想ルータの起動要求をデータセンターDC1_1に行う。
 具体的には,図4のルータ装置2の全体管理部231は,受信したクラウドアクセス情報を記憶装置24(図3参照)に記憶する。次いで,仮想ルータ起動停止部235は,記憶装置24に記憶されているユーザID"User-A",仮想ルータのIPアドレス"x1.x2.x3.x4",さらに起動指示オプションを引数として設定して,この仮想ルータの起動停止情報であるAPI_VR-Aを実行する。全体管理部231は,API_VR-Aに基づき,ユーザID"User-A",仮想ルータのIPアドレス"x1.x2.x3.x4",起動指示オプションを有する仮想ルータの起動指示コマンドを図8の管理サーバ装置7に送信する。なお,このAPIは,図6で説明したAPIである。
 管理サーバ装置7の全体管理部731は,この起動指示コマンドを受信すると,この起動指示コマンドが有するユーザIDに基づき,このユーザIDに対応する仮想ルータに割り当てるハードウェア資源量を,図9の仮想ルータHWテーブルT11から取得する。前記の例では,ユーザIDは"User-A"である。したがって,全体管理部731は,仮想ルータHWテーブルT11から,"User-A"に対応する仮想ルータに割り当てるハードウェア資源量として,CPUのクロック数1.0GHz,メモリのメモリ容量1.0Gbyte,記憶装置の記憶容量100.0Gbyte,通信帯域1.2Gbpsを取得する。
 そして,全体管理部731は,取得した仮想ルータのハードウェア資源量と,この起動指示コマンドが有する仮想ルータのIPアドレスとを仮想ルータ管理部732に送信する。
 仮想ルータ管理部732は,前記仮想ルータのハードウェア資源量と仮想ルータのIPアドレスとを受信すると,複数のサーバ装置4_1~サーバ装置4_Neの中から仮想ルータの起動対象となるサーバ装置を選択する。このサーバ装置の選択基準としては,例えば,起動している仮想ルータの数が最も少ないサーバ装置を選択する基準がある。
 そして,仮想ルータ管理部732は,仮想ルータ起動指示コマンドと共に,受信した前記仮想ルータのハードウェア資源量と仮想ルータのIPアドレスとを選択したサーバ装置に送信する。ここでは,仮想ルータ管理部732は,第Neのサーバ装置4_Neを選択したとする。この仮想ルータ起動指示コマンドが,サーバ装置にソフトウェアの起動を指示する第4のコマンドの一例である。
 ステップS28:仮想ルータの起動指示コマンドを受信したサーバ装置は,受信した前記仮想ルータのハードウェア資源量と仮想ルータのIPアドレスに基づき,仮想ルータを起動し,実行する。そして,管理サーバ装置7は,起動が完了したことをルータ装置2に通知する。
 具体的には,仮想ルータの起動指示コマンドを受信したサーバ装置4_Neのハイパーバイザ45(図11参照)は,CPU41のクロック数1.0GHz,メモリ43のメモリ容量1.0Gbyte,記憶装置44の記憶容量100.0Gbyte,通信装置42の通信帯域1.2Gbpsを有する仮想ルータを起動する。そして,ハイパーバイザ45は,この起動した仮想ルータに受信した前記IPアドレス"x1.x2.x3.x4"を割り当てる。
 そして,ハイパーバイザ45は,起動した仮想ルータにパケットの転送処理(ルーティング処理)を実行するプログラムを実行させる。ここでは,ハイパーバイザ45は,仮想ルータ4vr_1を起動したとする。この仮想ルータ4vr_1は,図1の仮想ルータ4vrである。起動完了後,ハイパーバイザ45は,仮想ルータの起動が完了したことを,管理サーバ装置7に通知する。図8の管理サーバ装置7の全体管理部731は,この仮想ルータの起動完了をルータ装置2に通知する。
 ステップS29:ルータ装置2は,受信したクラウドアクセス情報に基づき,仮想マシンの起動要求をデータセンターDC1_1に行う。
 具体的には,図4のルータ装置2の全体管理部231は,仮想ルータの起動完了通知を受信すると,仮想マシン起動停止部236に仮想マシンの起動指示を実行するように指示する。仮想マシン起動停止部236は,記憶装置24に記憶されている,ユーザID"User-A"に対応するSaaSID"SaaS-0",仮想マシンのIPアドレス"xx1.xx2.xx3.xx4",さらに起動指示オプションを引数として設定して,この仮想マシンの起動停止情報であるAPI_VM-Aを実行する。全体管理部231は,API_VM-Aに基づき,SaaSID"SaaS-0",仮想マシンのIPアドレス"xx1.xx2.xx3.xx4",起動指示オプションを有する仮想マシンの起動指示コマンドを図8のデータセンターDC1_1の管理サーバ装置7に送信する。なお,このAPIは,図7で説明したAPIである。
 管理サーバ装置7の全体管理部731は,この起動指示コマンドを受信すると,この起動指示コマンドが有するSaaSIDに基づき,このSaaSIDに対応する仮想マシンに割り当てるハードウェア資源量を,図10の仮想マシンHWテーブルT12から取得する。さらに,全体管理部731は,この仮想マシンが実行するソフトウェア資源の名前を,図10の仮想マシンHWテーブルT12から取得する。
 前記の例では,SaaSIDは"SaaS-0"である。したがって,図8の全体管理部731は,仮想マシンHWテーブルT12から,"SaaS-0"に対応する仮想マシンに割り当てるハードウェア資源量として,CPUのクロック数2.0GHz,メモリのメモリ容量2.0Gbyte,記憶装置の記憶容量100.0Gbyte,通信帯域1.0Gbpsを取得する。さらに,全体管理部731は,この仮想マシンが実行するソフトウェア資源の名前としてOS(Operating
System)"OS0",アプリケーション"App0a","App0b"を取得する。
 そして,全体管理部731は,取得した仮想マシンのハードウェア資源量,ソフトウェア資源の名前,さらに,この起動指示コマンドが有する仮想マシンのIPアドレスを仮想マシン管理部733に送信する。
 仮想マシン管理部733は,前記仮想マシンのハードウェア資源量などを受信すると,複数のサーバ装置4_1~サーバ装置4_Neの中から仮想マシンの起動対象となるサーバ装置を選択する。このサーバ装置の選択基準としては,例えば,起動している仮想マシンの数が最も少ないサーバ装置を選択する基準がある。
 そして,仮想マシン管理部733は,仮想マシン起動指示コマンドと共に,受信した前記仮想マシンのハードウェア資源量,アプリケーションの名前,さらに,受信した仮想マシンのIPアドレスとを選択したサーバ装置に送信する。ここでは,仮想マシン管理部733は,第Neのサーバ装置4_Neを選択したとする。この仮想マシン起動指示コマンドが,サーバ装置にソフトウェアの起動を指示する第4のコマンドの一例である。
 ステップS30:仮想マシンの起動指示コマンドを受信したサーバ装置は,受信した前記仮想マシンのハードウェア資源量と仮想マシンのIPアドレスに基づき,仮想マシンを起動し,実行する。そして,管理サーバ装置7は,起動が完了したことをルータ装置2に通知する。
 具体的には,仮想マシンの起動指示コマンドを受信したサーバ装置4_Neのハイパーバイザ45(図11参照)は,受信した前記仮想マシンのハードウェア資源量に基づき,CPU41のクロック数2.0GHz,メモリ43のメモリ容量2.0Gbyte,記憶装置44の記憶容量100.0Gbyte,通信装置42の通信帯域1.0Gbpsを有する仮想マシンを起動する。
 そして,ハイパーバイザ45は,この起動した仮想マシンに受信した前記IPアドレス"x1.x2.x3.x4"を割り当てる。さらに,ハイパーバイザ45は,仮想マシンのアプリケーションの名前に対応するアプリケーションプログラムを記憶装置44から読み出し,メモリ43に展開して,このアプリケーションを実行する。ここでは,ハイパーバイザ45は,仮想マシン4vm_1を起動したとする。この仮想マシン4vm_1は,図1の仮想マシン4vmである。起動完了後,ハイパーバイザ45は,仮想マシンの起動が完了したことを,管理サーバ装置7に通知する。図8の管理サーバ装置7の全体管理部731は,この仮想マシンの起動完了を図4のルータ装置2に通知する。
 ステップS31:ルータ装置2のトンネル開設部237は,認証されたユーザのIDに対応するL2プロトコルに基づき,起動している仮想ルータとの間におけるトンネルを開設する。
 例えば,認証されたユーザのIDが,"User-A"の場合,このユーザIDに対応するL2プロトコルは,図6のクラウドアクセス管理テーブルT1によれば,GREである。この場合,ルータ装置2のトンネル開設部237は,自装置のIPアドレスと,起動している仮想ルータ4vr_1(図11参照)のIPアドレス(x1.x2.x3.x4)を自装置のメモリ23(図3参照)に設定する。さらに,ルータ装置2のトンネル開設部237は,自装置のIPアドレスとL2プロトコルの種別"GRE"をこの仮想ルータ4vr_1に送信する。この仮想ルータ4vr_1は,受信したルータ装置2のIPアドレスを,仮想ルータ4vr_1に割り当てられているメモリ領域に設定する。これらのIPアドレスの設定処理が終了すると,ルータ装置2のトンネル開設部237と,この仮想ルータ4vr_1は,GREプロトコルに基づき,IPパケットのカプセル化を実行することにより,データ通信を実行する。すなわち,認証されたユーザのIDに対応するL2プロトコルに基づき,ルータ装置2と起動している仮想ルータとの間におけるトンネルが開設される。そして,ルータ装置2のルーティング部233が,ルータ装置2と仮想ルータ4vr_1との間におけるデータ通信処理を実行する。
 ステップS32:ルータ装置2の全体管理部231は,トンネル開設が完了したことを端末装置1に通知する。このとき,全体管理部231は,起動した仮想マシンのIPアドレスも通知する。図2の端末装置1の全体管理部161は,トンネル開設通知を受信すると,表示制御部12にトンネル開設通知画面を表示するように指示する。表示制御部12は,この指示に応答して,トンネル開設通知画面を表示装置121に表示する。以後,端末装置1のアクセス部164は,通知された仮想マシンのIPアドレスを宛先とするパケットをルータ装置2に送信することにより,ルータ装置2,通信回線網Nt,ゲートウェイ装置5,ルータ装置6,仮想ルータ4vr_1を経由して仮想マシン4vm_1にアクセスする。その結果,ユーザは,この仮想マシン4vm_1が提供するクラウドサービスを利用することができる。このとき,ルータ装置2のルーティング部233は,端末装置から送信されるパケットを受信すると,このパケットのヘッダ部分に格納されている端末装置のMAC
(Media Access Control)アドレスを参照する。そしてルーティング部233は,このMACアドレスが,前記したユーザが使用する端末装置1のMACアドレスの場合には,このパケットを外部のネットワークである通信回線網Ntに送信する,すなわち,MACフィルタリングを解除する。図13の処理終了後,他のユーザ(例えば,ユーザID"User-B")が,図13で説明した端末装置1以外の端末装置(例えば,端末装置1_Nb)に,他のユーザの認証情報を入力した場合にも,図13の各ステップが実行される。その結果,他のユーザは,他のユーザのクラウドサービスを利用することができる。
 ユーザが,クラウドサービスの利用を停止する場合には,以下の処理が実行される。例えば,ユーザが,図2の端末装置1の操作装置131を操作して,クラウドサービスの停止指示操作を行う。このとき,ユーザは,ユーザのIDを有する認証情報の入力もあわせて行う。操作制御部13は,この停止指示操作に応答して,全体管理部161に停止指示操作が実行されたことを示すコマンドを送信する。全体管理部161は,このコマンドを受信すると,このユーザのIDをルータ装置2に送信すると共に,クラウドサービスの停止を指示する第2のコマンドをルータ装置2に送信する。前記例の場合,このユーザIDは,"User-A"である。
 図4のルータ装置2の全体管理部231は,このユーザID"User-A"と,第2のコマンドを受信すると,仮想マシン起動停止部236に,このユーザIDに対応するSaaSIDの仮想マシンを停止するように指示する。仮想マシン起動停止部236は,この停止指示に応答して,このユーザID"User-A"に対応するSaaSID"
SaaS-0",停止指示オプションを引数として設定して,記憶装置24(図3)が記憶している,このユーザID"User-A"に対応するSaaSID"
SaaS-0"の仮想マシンの起動停止情報であるAPI_VM-Aを実行する。仮想マシン起動停止部236は,API_VM-Aに基づき,SaaSID" SaaS-0",停止指示オプションを有する仮想マシンの停止指示コマンドを図8の管理サーバ装置7に送信する。なお,このAPIとは,例えば,http://www.hogehoge.com/cloud/vm/ SaaS-0/Offである。このAPIの意味は,SaaSID" SaaS-0 "の仮想マシン("vm")の起動を停止するように" www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
 管理サーバ装置7の全体管理部731は,この停止指示コマンドを受信すると,この停止指示コマンドが有するSaaSID"
SaaS-0"の仮想マシン4vm_1の実行停止をサーバ装置4e(図11参照)に指示する。サーバ装置4eのハイパーバイザ45は,この指示に応答して,仮想マシン4vm_1の実行を停止する。
 次いで,図4のマシン装置2の全体管理部231は,仮想ルータ起動停止部235に,このユーザIDに対応する仮想ルータを停止するように指示する。仮想ルータ起動停止部235は,この停止指示に応答して,このユーザID"User-A",停止指示オプションを引数として設定して,記憶装置24(図3)が記憶している,このユーザID"User-A"に対応する仮想ルータの起動停止情報であるAPI_VR-Aを実行する。仮想ルータ起動停止部235は,API_VR-Aに基づき,ユーザID"User-A",停止指示オプションを有する仮想ルータの停止指示コマンドを図8の管理サーバ装置7に送信する。なお,このAPIとは,例えば,http://www.hogehoge.com/cloud/vr/User-A/Offである。このAPIの意味は,ユーザID" User-A "の仮想ルータ("vr")の起動を停止するように" www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
 管理サーバ装置7の全体管理部731は,この停止指示コマンドを受信すると,この停止指示コマンドが有するユーザIDに対応する仮想ルータ4vr_1の実行停止をサーバ装置4e(図11参照)に指示する。サーバ装置4eのハイパーバイザ45は,この指示に応答して,仮想ルータ4vr_1の実行を停止する。
 以上説明した,仮想マシン起動停止部236が管理サーバ装置7に送信する仮想マシンの停止指示コマンドおよび仮想ルータ起動停止部235が管理サーバ装置7に送信する仮想ルータの停止指示コマンドが,クラウドサービスの停止を指示する第3のコマンドである。
 第1の実施の形態のルータ装置によれば,複数のユーザが,同時に,それぞれのクラウドサービス(情報処理サービス)を利用できる。図6のクラウドアクセス管理テーブルT1,図7のクラウドサービス管理テーブルT2の例の場合,ユーザID"User-A"で識別されるユーザは,このユーザの認証情報を端末装置に入力するだけで,SaaSID"SaaS-0"で識別されるクラウドサービスを利用することができる。同じく,ユーザID"User-B"で識別されるユーザは,このユーザの認証情報を他の端末装置に入力するだけで,SaaSID"SaaS-1"で識別されるクラウドサービスを利用することができる。
 複数のユーザは,ユーザ毎のクラウドサービスを利用する場合,認証情報を端末装置に入力するだけでよいので,複雑な操作を行うことなく,簡単な操作で,ユーザ自らのクラウドサービスを利用することができる。その結果,ユーザの利便性が向上する。
 また,認証処理を実行する認証サーバ装置が,クラウドサービスに対するアクセス情報を管理しているので,認証処理と共に,ルータ装置は,クラウドサービスに対するアクセス情報を取得することができる。そのため,認証処理,アクセス情報の取得処理を異なる装置で実行する必要がない。また,クラウドサービスを利用するユーザを新たに追加する場合には,認証サーバ装置が管理する,図6のクラウドアクセス管理テーブルT1,図7のクラウドサービス管理テーブルT2に,このユーザのアクセス情報を新たに追加するだけでよい。そのため,ユーザの追加処理を簡略化することができる。
 他にも,ルータ装置2が,第1の情報と第2の情報を記憶装置24に記憶してもよい。具体的には,ルータ装置2の記憶装置24は,図6のクラウドアクセス管理テーブルT1,クラウドサービス管理テーブルT2を記憶する。この場合,ルータ装置2の全体管理部231は,端末装置1から,情報処理サービスの利用者を識別する識別情報を受信し,第1の情報および第2の情報を,識別情報に応じて取得(抽出)する。この識別情報は,例えば,ユーザIDである。
 具体的には,ルータ装置2の全体管理部231は,認証情報に含まれるユーザIDを受信すると,図6のクラウドアクセス管理テーブルT1,図7のクラウドサービス管理テーブルT2から,前記ユーザIDに対応するクラウドアクセス情報を取得する。
 例えば,ユーザIDが"User-A"の場合,全体管理部231は,図6のクラウドアクセス管理テーブルT1から,このユーザIDに対応する仮想ルータの起動停止情報"API_VR-A",仮想ルータのIPアドレス"x1.x2.x3.x4",L2プロトコルの種別"GRE",SaaSID"SaaS-0"を取得する。さらに,全体管理部231は,図7のクラウドサービス管理テーブルT2を参照して,この取得したSaaSID"SaaS-0"に対応する仮想マシン起動停止情報"API_VM-A",仮想マシンのIPアドレス"xx1.xx2.xx3.xx4",接続用のプロトコル"HTTP"を取得する。
 そして,ルータ装置2は,取得したクラウドアクセス情報に基づき,仮想ルータの起動要求をデータセンターDC1_1に行う。この仮想ルータの起動要求の説明については,図13のステップS27で詳細に説明したので省略する。さらに,ルータ装置2は,取得したクラウドアクセス情報に基づき,仮想マシンの起動要求をデータセンターDC1_1に行う。この仮想マシンの起動要求の説明については,図13のステップS29で詳細に説明したので省略する。
 このように,ルータ装置2が,第1の情報と第2の情報を記憶し,ユーザのクラウドアクセス情報を取得することで,認証サーバ装置が不要になる。その結果,ハードウェア資源を節約できる。また,ルータ装置2と認証サーバ装置3との通信処理が実行されないので,クラウドアクセス情報の取得時間を短縮できる。
 [第2の実施の形態]
 第1の実施の形態では,図1で説明したように,1台の認証サーバ装置を第1のデータセンターDC1_1~第nのデータセンターDC1_nの外に設置していた。しかし,データセンター毎に認証サーバ装置を設けることもできる。このように,認証サーバ装置をデータセンターに設けることで,クラウドサービス提供業者は,認証サーバ装置の管理が容易になる。
 (情報処理システム)
 図14は,第2の実施の形態における情報処理システムSYSの一例を説明するハードウェアブロック図である。図14においては,図1と異なり,データセンターDC1_1に認証サーバ装置3を設け,さらに,図1における認証サーバ装置3に替えて,クラウドディレクトリサービス(Cloud
Directory Service)装置8を設けている。クラウドディレクトリサービス装置8は,ルータ装置2が,認証サーバ装置3に接続するための第3の情報を記憶する第3の装置の一例である。図14において,符号L2_1'に示す点線は,ユーザ側システムUSのルータ装置2と,データセンターDC1_1の認証サーバ装置3との間に開設されたL2トンネルを示している。なお,このL2トンネルについては,図20で説明する。
 図15は,図14の端末装置のハードウェアブロック図である。図15の端末装置1は,図1の端末装置1に,例えば光学式の指紋読み取り機能を有する指紋認証装置181と,指紋認証装置181を制御する指紋認証装置制御部18とを追加したものである。さらに,メモリ16において,クラウドサービス名を取得するサービス名取得部165を追加したものである。
16の全体管理部1611は,図1の全体管理部161の機能に加えて,サービス名取得部165を管理する。
 図16は,図14のルータ装置2が実行するソフトウェアモジュールのブロック図である。図16のルータ装置2は,図4のルータ装置2に,図14の認証サーバ装置3にアクセスするために必要な認証サーバ情報を取得する認証サーバ情報取得部238を追加したものである。トンネル開設部2371は,図4のトンネル開設機能に加えて,ルータ装置2と認証サーバ装置3との間でトンネルを開設する機能を有する。全体管理部2311は,図4の全体管理部231の機能に加えて,認証サーバ情報取得部238を管理する機能を有する。
 図17は,図14のクラウドディレクトリサービス装置8のハードウェアブロック図である。
 クラウドディレクトリサービス装置8は,例えばバスBを介して相互に接続された,CPU81と,通信装置82と,メモリ83と,記憶装置84とを有する。
 CPU81は,クラウドディレクトリサービス装置8の全体を制御する演算処理装置である。通信装置82は,例えばNICであり,図14の通信回線網Ntに有線接続し,この通信回線網Ntに接続している各種装置との通信を行う。
 メモリ83は,CPU81が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
 メモリ83の全体管理部831は,クラウドディレクトリサービス装置8が実行する各種処理を管理する。全体管理部831は,例えば,認証サーバアクセス情報取得部832を管理すると共に,通信装置82に接続する装置と通信パケットの送受信処理を実行する。認証サーバアクセス情報取得部832は,認証サーバ装置3にアクセスする際に必要な情報を記憶装置84の認証サーバアクセス情報管理テーブルT21から取得する。この認証サーバ装置3にアクセスする際に必要な情報(以下,認証サーバアクセス情報と適宜記す)が,ルータ装置2が認証サーバ装置3に接続するための第3の情報の一例である。
 全体管理部831,認証サーバアクセス情報取得部832は,いわゆるプログラムであり,このプログラムは,例えば,記憶装置84に記憶されている。CPU81は,起動時に,これらのプログラムを記憶装置84から読み出して,メモリ83に展開することにより,これらのプログラムをソフトウェアモジュールとして機能させる。
 記憶装置84は,例えば,磁気記憶装置や不揮発性のメモリである。記憶装置84は,前記したプログラムや,各種データを記憶する。さらに,記憶装置84は,認証サーバ装置3にアクセスするために必要な情報を有する認証サーバアクセス情報管理テーブルT21を記憶する。
 図18は,図17で示した認証サーバアクセス情報管理テーブルT21の一例を示す図である。図18の認証サーバアクセス情報管理テーブルT21は,クラウドサービス名欄と,認証サーバのIPアドレス欄と,L2プロトコル欄と,認証プロトコル欄とを有する。
 クラウドサービス名欄は,ユーザがアクセスするクラウドサービスを提供するデータセンターを識別するためのクラウドサービス名を記憶する。認証サーバのIPアドレス欄は,このデータセンターに設置されている認証サーバ装置のIPアドレスを記憶する。L2プロトコル欄は,ルータ装置2と認証サーバ装置3との間でトンネルを開設するためのプロトコルの種別を記憶する。認証プロトコル欄は,認証サーバ装置3においてユーザ認証を行う際の認証プロトコルの種別を記憶する。
 図18において,クラウドサービス名欄は,"Cloud-A","Cloud-B","Cloud-C"を記憶し,認証サーバのIPアドレス欄は,前記した各クラウドサービス名に対応する認証サーバ装置のIPアドレスとして,"xxx.xxx.xxx.xxx","yyy.yyy.yyy.yyy","zzz.zzz.zzz.zzz"を記憶する。L2プロトコル欄は,前記した各クラウドサービス名に対応するプロトコルの種別として,"GRE","OpenVPN","L2TP"を記憶し,認証プロトコル欄は,前記した各クラウドサービス名に対応する認証プロトコルの種別として"パスフレーズ","スマートカード","指紋認証"を記憶する。
 この"パスフレーズ"は,図13で説明したように,ユーザIDとこのユーザIDに対応するパスワードに基づきユーザ認証を行うものである。"スマートカード"は,図13で説明したように,ユーザ識別カードに基づきユーザ認証を行うものである。指紋認証は,ユーザの指紋を読み取り,この読み取った指紋に基づきユーザ認証を行うものである。
 図19は,図14の認証サーバ装置3のハードウェアブロック図である。図19の認証サーバ装置3は,図5の認証サーバ装置3に,トンネル開設部334を追加したものである。
 (クラウドアクセス情報を有する情報の取得処理の流れ)
 第2の実施の形態における,データセンターに設けられた認証サーバ装置3からクラウドアクセス情報を取得する処理の流れについて,図14~図19を参照しながら,図20に基づき説明する。
 図20は,データセンターに設けられた認証サーバ装置3からクラウドアクセス情報を取得する処理の流れを説明する図である。
 ステップS51:図14のユーザ側システムUSにおけるユーザは,ユーザがアクセスしたいクラウドサービスの名前を端末装置1に入力する。具体的には,ユーザは,図15の端末装置1の操作装置131を介して,このクラウドサービス名を入力する。サービス名取得部165は,操作制御部13を介して,このクラウドサービス名を取得する。
 ステップS52:端末装置1の全体管理部1611は,図16のルータ装置2に接続要求を行う。
 ステップS53:ルータ装置2は,この接続要求を受信し,端末装置1との接続を確立し,接続完了通知を端末装置1に送信する。具体的には,図16のルータ装置2の全体管理部2311は,接続リスクエストを受信すると,接続部232に端末装置1との双方向通信を実行するための接続を確立するように指示する。接続部232は,この確立に応答して,端末装置1との双方向通信を実行するための接続を確立する。この接続確立により,端末装置1とルータ装置2との間で双方向通信処理が可能になる。
 ステップS54:図15の端末装置1のサービス名取得部165は,取得したクラウドサービス名を図16のルータ装置2に送信する。
 ステップS55:ルータ装置2の認証サーバ情報取得部238は,端末装置1から送信されたクラウドサービス名を受信し,認証サーバアクセス情報送信要求をクラウドディレクトリサービス装置8に行う。具体的には,全体管理部2311は,ルータ装置2から送信されたクラウドサービス名を受信し,図16の認証サーバ情報取得部238に送信する。認証サーバ情報取得部238は,認証サーバアクセス情報送信要求と受信したクラウドサービス名を,クラウドディレクトリサービス装置8に送信する。
この認証サーバアクセス情報送信要求が,第3の情報の送信要求である。
 ステップS56:図17のクラウドディレクトリサービス装置8は,この送信要求に応答して,受信したクラウドサービス名に対応する認証サーバアクセス情報をルータ装置2に送信する。具体的には,クラウドディレクトリサービス装置8の全体管理部831は,クラウドサービス名を受信すると,このクラウドサービス名に対応する認証サーバアクセス情報を取得するように認証サーバアクセス情報取得部832に指示する。認証サーバアクセス情報取得部832は,この指示に応答して,図18の認証サーバアクセス情報管理テーブルT21から,このクラウドサービス名に対応する認証サーバアクセス情報を取得する。
 例えば,ステップS51において入力されたクラウドサービス名が"Cloul-A"の場合,認証サーバアクセス情報取得部832は,図18の認証サーバアクセス情報管理テーブルT21から,このクラウドサービス名に対応する認証サーバ装置のIPアドレス"xxx.xxx.xxx.xxx",L2プロトコルの種別"GRE",認証プロトコルの種別"パスフレーズ"を取得する。そして,認証サーバアクセス情報取得部832は,取得した認証サーバアクセス情報をルータ装置2に送信する。
 ステップS57:ルータ装置2は,受信した認証サーバアクセス情報のL2プロトコルの種別に応じた認証用L2トンネルを認証サーバ装置との間で開設する。具体的には,図16のルータ装置2の全体管理部2311は,認証サーバアクセス情報を受信すると,このアクセス情報が有する認証サーバ装置のIPアドレスとL2プロトコルの種別をトンネル開設部2371に送信する。そして,トンネル開設部2371は,この認証サーバ装置のIPアドレスに基づき,この認証サーバ装置にアクセスし,受信したL2プロトコルに基づき,この認証サーバ装置との間で認証用L2トンネルを開設する。
 前記の例では,認証サーバ装置のIPアドレスは"xxx.xxx.xxx.xxx"であり,L2プロトコルの種別"GRE"であった。ここで,このIPアドレスの認証サーバ装置は,図19の認証サーバ装置3であるとする。この場合,図16のルータ装置2のトンネル開設部2371は,自装置のIPアドレスおよびL2プロトコルの種別"GRE"を認証サーバ装置3に送信する。この認証サーバ装置3の全体管理部3311は,ルータ装置2のIPアドレス,L2プロトコルの種別を受信し,トンネル開設部334に送信する。トンネル開設部334は,このルータ装置2のIPアドレスを受信すると,メモリ33に設定する。これらのIPアドレスの設定処理が終了すると,ルータ装置2のトンネル開設部2371と,認証サーバ装置3のトンネル開設部334は,GREプロトコルに基づき,IPパケットのカプセル化を実行することにより,データ通信を実行する。すなわち,クラウドサービス名に対応するL2プロトコルに基づき,ルータ装置2と認証サーバ装置3との間におけるトンネルが開設される。そして,ルータ装置2のルーティング部233が,ルータ装置2と認証サーバ装置3との間におけるデータ通信処理を実行する。このように,トンネル開設部2371は,受信した認証サーバアクセス情報に基づき,認証サーバ装置3に接続する。
 ステップS58:図6のルータ装置2の全体管理部2311は,受信した認証サーバアクセス情報が有する認証プロトコルを端末装置1に送信する。前記の例では,この認証プロトコルは,"パスフレーズ"である。
 ステップS59:図15の端末装置1は,通知された認証プロトコルに対応する認証情報の入力画面を表示する。具体的には,図15の全体管理部1611は,通知された認証プロトコルがパスフレーズの場合には,ユーザID,パスワード入力画面を表示装置121に表示するように表示制御部12に指示する。表示制御部12は,この表示指示に応答して,ユーザIDとパスワードとの入力画面を表示装置121に表示する。
 また,全体管理部1611は,認証プロトコルが"スマートカード"の場合には,IDカードをカードリーダ141に挿入するようにユーザに指示する指示画面を表示装置121に表示するように表示制御部12に指示する。表示制御部12は,この表示指示に応答して,指示画面を表示装置121に表示する。他にも,全体管理部1611は,認証プロトコルが"指紋認証"の場合には,ユーザIDを入力するように指示する画面と,ユーザの指(指紋部分)を指紋認証装置181の指紋読み取り部分に触れるように指示する画面を表示するように表示制御部12に指示する。表示制御部12は,この指示に応答して,この指示画面を表示装置121に表示する。
 ステップS60:ユーザは,この指示画面に応じて,認証情報を端末装置1に入力する。具体的には,表示装置121が,ユーザIDとパスワードとの入力画面を表示した場合には,ユーザは,操作装置131を操作して,ユーザIDとパスワードとを入力する。認証情報取得部162は,入力されたユーザID,パスワードを,操作制御部13を介して取得する。表示装置121が,IDカードをカードリーダ141に挿入するようにユーザに指示する指示画面を表示した場合には,ユーザは,カードリーダ141にIDカードを挿入する。カードリーダ141は,挿入されたIDカードから,ユーザIDとこのユーザIDに対応する公開鍵を読み取り,カードリーダ制御部14に出力する。認証情報取得部162は,入力されたユーザIDとこのユーザIDに対応する公開鍵,すなわち入力された認証情報を,カードリーダ制御部14を介して取得する。
 表示装置121が,ユーザIDの入力画面,ユーザの指を指紋認証装置181の指紋読み取り部分に触れるように指示する画面を表示した場合には,ユーザは,操作装置131を操作してユーザIDを入力し,さらに,指紋認証装置181の指紋読み取り部分を指で触る。指紋認証装置181は,このユーザの指紋を読み取り,所定の画像処理を実行し,指紋画像として指紋認証装置制御部18に出力する。認証情報取得部162は,指紋認証装置制御部18を介してこの指紋画像を取得する。さらに,認証情報取得部162は,入力されたユーザID,操作制御部13を介して取得する。すなわち,認証情報取得部162は,指紋画像とユーザIDを認証情報として取得する。
 ステップS61:図2の認証情報送信部163は,認証情報取得部162が取得した認証情報をルータ装置2に送信する。
 ステップS62:図16の認証管理部234は,この認証情報を受信し,認証要求を認証サーバ装置3に行う。具体的には,全体管理部2311は,端末装置1から送信された認証情報を受信し,認証管理部234に送信する。認証管理部234は,認証要求と共に,受信した認証情報を認証サーバ装置3に送信する。なお,この送信は,既に開設されているL2認証トンネルを経由して行われる。
 ステップS63:図19の認証サーバ装置3は,認証要求に応答して,受信した認証情報に基づき,認証処理を実行し,この認証情報に対応するクラウドアクセス情報をルータ装置2に送信する。具体的には,認証サーバ装置3の全体管理部3311は,ルータ装置2から送信された認証要求と認証情報とを受信し,認証処理を実行するように認証実行部332に指示する。認証実行部332は,この指示に応答して,この認証情報に基づき,ユーザ認証処理を実行する。
 前記したパスワード認証,前記したカード認証の場合の処理については,図13のステップS26で説明したので省略する。指紋認証の場合には,認証サーバ装置3は,記憶装置34が予め記憶しているユーザIDと,ユーザIDに対応する指紋画像とを記憶するテーブル(図示しない)に基づき,認証を行う。ここでは,認証実行部332は,受信した認証情報が有するユーザIDと指紋画像が,このテーブルに記憶されている場合には,このユーザIDで識別されるユーザが正当なユーザであると認証する(ユーザ認証成功)。
 全体管理部3311は,認証実行部332が認証処理を実行し,受信した認証情報が有するユーザIDで識別されるユーザが正当なユーザであると認証できた場合には,以下の処理を実行する。すなわち,全体管理部3311は,このユーザIDに対応するクラウドアクセス情報を取得し,取得したクラウドアクセス情報をルータ装置2に送信するようにアクセス情報取得部333に指示する。一方,全体管理部3311は,認証実行部332がこのユーザが正当なユーザでないと判定した場合,認証失敗した旨をルータ装置2に送信する。この場合,ルータ装置2は,認証が失敗したことを端末装置1に通知する。
 アクセス情報取得部333は,クラウドアクセス情報の取得指示に応答して,図6のクラウドアクセス管理テーブルT1,図7のクラウドサービス管理テーブルT2から,前記ユーザIDに対応するクラウドアクセス情報を取得する。
 アクセス情報取得部333は,取得したクラウドアクセス情報を,ルータ装置2に送信する。なお,クラウドアクセス情報の取得処理の詳細については,図13のステップS26で説明したので省略する。
 ルータ装置2は,図13のステップS27で説明した仮想ルータの起動要求,ステップS29で説明した仮想マシンの起動要求,ステップS31で説明したL2トンネル開設処理を実行する。
 本実施の形態によれば,クラウドアクセス情報を管理する認証サーバ装置をデータセンター内に設置することができる。そのため,情報処理システムにおける各装置の配置構成を柔軟に変更することができるので,サービス提供業者は,装置の管理が容易になる。
 なお,図19で説明した認証サーバ装置3が実行する機能を,サーバ装置4_Neで起動する仮想マシンが実行するようにしてもよい。この場合,サーバ装置4_Neの記憶装置内に,クラウドアクセス管理テーブルT1,クラウドサービス管理テーブルT2を記憶する。また,サーバ装置4_Neは,この仮想マシンからのデータ出力,この仮想マシンへのデータ入力を制御する仮想ルータを起動する。この場合,図16のルータ装置2は,この仮想ルータとの間で,認証用L2トンネルを開設する。このように,認証サーバ装置3が実行する機能を,仮想マシンで実現することで,新たな装置を設置する必要が無いので新たな装置費用が発生することがなく,経済的である。
 [第3の実施の形態]
 第1,第2の実施の形態では,1人のユーザが1つのクラウドサービスを利用する場合を例示して説明した。第3の実施の形態では,第1のユーザが,第1のクラウドサービスを利用している場合において,第2のユーザが,第1のユーザが利用しているクラウドサービスと同じクラウドサービスを利用する場合のルータ装置の処理について説明する。さらに,第1,第2のユーザが,このクラウドサービスの利用を停止した場合のルータ装置の処理について説明する。すなわち,第3の実施の形態では,複数のユーザが,同時に1つのクラウドサービスを利用する場合について説明する。
 以下,図1の情報処理システムSYSを例示し,図6,図7,図9を適宜参照しながら,第3の実施の形態の概略について説明する。ここで,ユーザID"User-A"(図6参照)で識別されるユーザAが端末装置1_1を介して,データセンターDC1_1が提供するクラウドサービスを利用する。このクラウドサービスは,SaaSID"SaaS-0"(図7参照)で識別されるクラウドサービスである。この場合,図13で説明したように,ルータ装置2は,管理サーバ装置7に対して"SaaS-0"に対応する仮想マシン(クラウドサービス)を起動するように指示していた。なお,この指示後,"SaaS-0"に対応する仮想マシンが起動している。
 この後,ユーザID"User-C"(図6参照)で識別されるユーザCが端末装置1_Nbを介して,データセンターDC1_1が提供する仮想マシンを利用する。この仮想マシンは,SaaSID"SaaS-0"(図7参照)で識別される仮想マシンである。すなわち,この仮想マシンは,ユーザAが利用している仮想マシンと同じ仮想マシンである。
 この場合,ルータ装置2は,管理サーバ装置7に対して"SaaS-0"に対応する仮想マシンを起動するように指示しない。その代わりに,ルータ装置2は,ユーザCが利用している端末装置1_Nbが送信するこの仮想マシン宛のパケットをフィルタリングせず,そのまま,この仮想マシンに送信する。すなわち,ルータ装置2は,開設されたトンネルを介する仮想マシン(ソフトウェア)との通信を,ユーザCの端末装置1_Nbに許可する。
 そして,ユーザA,ユーザCが,この仮想マシンを利用している状態において,ユーザA,ユーザCが,このSaaSの利用を停止すると,ルータ装置2は,この仮想マシンの停止を管理サーバ装置7に指示する。
 図21は,第3の実施の形態におけるルータ装置が実行するソフトウェアモジュールのブロック図である。図21のルータ装置2は,図4のルータ装置2に,クラウドサービスを利用しているユーザ数を認証サーバ装置3から受信するユーザ数受信部239を追加したものである。
 全体管理部2312は,図4で説明した全体管理部231の機能に加えて,ユーザ数受信部239を管理する。さらに,全体管理部2312は,ユーザ数受信部239が受信したユーザ数に基づき,仮想ルータおよび仮想マシンの起動,L2トンネルの開設を実行するか否かを判定する。また,全体管理部2312は,起動している仮想ルータ,仮想マシン,L2トンネルの停止処理を実行するか否かを判定する。
 図22は,第3の実施の形態における認証サーバ装置のハードウェアブロック図である。
 図22の認証サーバ装置3は,図5の認証サーバ装置3に,クラウドサービスを利用しているユーザに関する情報を管理するユーザ情報管理部335を追加したものである。このユーザに関する情報とは,クラウドサービスを実際に利用しているユーザの数,クラウドサービスを最初に利用した初回ユーザのID,クラウドサービスの状態などである。この認証サーバ装置3は,クラウドサービスを実際に利用しているユーザの数(以下,ユーザ数と適宜記す)を記憶する第2の装置の一例である。
 全体管理部3312は,図5の全体管理部331の機能に加えて,ユーザ情報管理部335を管理する。また,記憶装置34は,クラウドサービス管理テーブルT31を記憶する。
 図23は,クラウドサービス管理テーブルT31の一例を示す図である。クラウドサービス管理テーブルT31は,図7のクラウドサービス管理テーブルT2に新たに,SaaS状態欄と,ユーザ数欄と,初回ユーザID欄とを追加したものである。
 SaaS状態欄は,SaaSID欄に記憶されたSaaSIDで識別されるクラウドサービス(仮想マシン)の状態を記憶する。ユーザ数欄は,このクラウドサービスを実際に利用しているユーザ数を記憶する。ユーザID欄は,このクラウドサービスを最初に利用しているユーザを識別する初回ユーザIDを記憶する。この初回ユーザIDは,図25で説明する仮想マシン,仮想ルータの停止処理に必要な情報である。
 図23においてSaaS状態欄は,前記した各SaaSIDに対応するクラウドサービスの状態として,"起動","停止"を記憶し,ユーザ数欄は,前記した各SaaSIDに対応するクラウドサービスとして,"Count-0","Count-1"を記憶する。この"Count-0","Count-1"は,整数を意味する。なお,初期値としては,"Count-0","Count-1"の数値は"0"である。さらに,初回ユーザID欄は,前記した各SaaSIDに対応するクラウドサービスを利用するユーザのIDとして"User-A"を記憶する。なお,初期状態は,この欄は空白である。
 (仮想ルータ,仮想マシンの起動,トンネル開設処理の流れ)
 第3の実施の形態における,仮想ルータ,仮想マシンの起動,トンネル開設処理の流れについて,図6,図21~図23を参照し,図24に基づき説明する。
 図24は,第3の実施の形態における,仮想ルータ,仮想マシンの起動,トンネル開設処理の流れを説明する図である。このフロー図の説明にあたり,図13のステップS21~ステップS24の処理が実行されているとする。
 ステップS101:図21の認証管理部234は,端末装置1から送信された認証情報を受信し,認証要求を認証サーバ装置3に行う。さらに,ユーザ数受信部239は,この認証情報が有するユーザIDに対応するクラウドサービスのユーザ数の送信要求を図22の認証サーバ装置3に行う。
 ステップS102:認証サーバ装置3は,認証要求に応答して,受信した認証情報に基づき,認証処理を実行し,この認証情報に対応するクラウドアクセス情報をルータ装置2に送信する。さらに,サーバ装置3のユーザ情報管理部335は,ユーザ数の送信要求に応答して,この認証情報が有するユーザIDに対応するクラウドサービスのユーザ数を,図23のクラウドサービス管理テーブルT31から取得し,ルータ装置2に送信する。クラウドアクセス情報をルータ装置2に送信する処理については,図13のステップS26で説明したので省略する。ユーザ情報管理部335は,以下に説明する処理により,ユーザ数を取得し,ルータ装置2に送信する。まず,全体管理部3312が,ルータ装置2から送信されたユーザ数の送信要求を受信すると,ユーザ情報管理部335にユーザ数の取得処理および送信処理を実行するようにユーザ情報管理部335に指示する。ユーザ情報管理部335は,この指示に応答して,全体管理部3312が受信した認証情報が有するユーザIDに対応するユーザ数を,図23のクラウドサービス管理テーブルT31から取得する。
 ユーザ情報管理部335は,SaaS状態が"停止"の場合,このユーザIDに対応するクラウドサービスを識別するSaaSIDのSaaS状態を"起動"に変更し,さらに,このユーザIDに対応するクラウドサービスを識別するSaaSIDの初回ユーザID欄に,このユーザIDを記憶する。
 図13で説明した例の場合,ユーザIDは,"User-A"であった。この場合,図6のクラウドアクセス管理テーブルT1によれば,ユーザID"User-A"に対応するクラウドサービスを識別するSaaSIDは"SaaS-0"である。そして,図23のクラウドサービス管理テーブルT31によれば,このSaaSID"SaaS-0"に対応するユーザ数は,"Count-0"(初期値は0)である。このように,ユーザ情報管理部335は,図6のクラウドアクセス管理テーブルT1,図23のクラウドサービス管理テーブルT31に基づき,ユーザIDに対応するユーザ数を取得する。ユーザ情報管理部335は,この取得したユーザ数をルータ装置2に送信する。そして,ユーザ情報管理部335は,SaaSID"SaaS-0"のSaaS状態欄を"停止"から"起動"に変更し,SaaSID"SaaS-0"のユーザID欄に"User-A"を記憶する。
 ステップS103:図21のルータ装置2の全体管理部2312は,クラウドアクセス情報,認証情報に対応するクラウドサービスのユーザ数を受信し,さらに,受信した利用者数に基づき,このクラウドサービスのユーザがいるかを判定する。全体管理部2312は,クラウドサービスのユーザがいないと判定した場合(ステップS103/いない),ステップS104に移る。全体管理部2312は,クラウドサービスのユーザがいると判定した場合(ステップS103/いる),ステップS104の処理を省略し,ステップS105に移る。
 具体的には,全体管理部2312は,クラウドサービスのユーザ数が0か判定する。ユーザ数が0の場合,クラウドサービスのユーザがいないと判定し(ステップS103/いない),ステップS104に移る。ユーザ数が0でない場合,クラウドサービスのユーザがいると判定し(ステップS103/いる),ステップS104の処理を省略し,ステップS105に移る。
 ステップS104:ルータ装置2は,図13のステップS27で説明した仮想ルータの起動要求,ステップS29で説明した仮想マシンの起動要求,ステップS31で説明したL2トンネル開設処理を実行する。なお,前記した各ステップS27,S29,S31については,図13で既に説明したので省略する。ステップS104の終了後,ステップS105に移る。
 ステップS105:図21のルータ装置2の全体管理部2312は,受信した認証情報が有するユーザIDに対応するクラウドサービスのユーザ数の更新要求,ここではカウントアップ要求を,図22の認証サーバ装置3に行う。
 ステップS106:認証サーバ装置3は,このカウントアップ要求を受信すると,このカウントアップ要求に応答して,このユーザIDに対応するクラウドサービスのユーザ数を更新,例えば1つ増加(カウントアップ)する。具体的には,認証サーバ装置3の全体管理部3312は,このカウントアップ要求を受信するとこのユーザIDに対応するクラウドサービスのユーザ数をカウントアップするように,ユーザ情報管理部335に指示する。ユーザ情報管理部335は,この指示に応答して,このユーザIDに対応するクラウドサービスのユーザ数をカウントアップし,図23のクラウドサービス管理テーブルT31のユーザ数欄に記憶する。
 前記の例では,ユーザ情報管理部335は,図23のクラウドサービス管理テーブルT31において,ユーザID"User-A"に対応するクラウドサービス"SaaS-0"の"Count-0"("0")を"Count-0"("1")にカウントアップする。
 さて,このステップS106の処理が終了した後に,ユーザID"User-C"で識別されるユーザCが,例えば,端末装置1_NbにユーザCの認証情報を入力する。この場合,図13のステップS21~ステップS24の処理が実行され,次いで,図24のステップS101の処理に移り,ステップS102の処理が実行される。
 この場合,図6のクラウドアクセス管理テーブルT1によれば,ユーザID"User-C"に対応するSaaSIDは"SaaS-0"である。そして,図23のクラウドサービス管理テーブルT31によれば,このSaaSID"SaaS-0"に対応するユーザ数は,"Count-0"("1")である(前記したステップS106参照)。従って,認証サーバ装置3のユーザ情報管理部335は,この取得したユーザ数("1")をルータ装置2に送信する(ステップS102)。図21のルータ装置2の全体管理部2312は,ユーザ数を受信し,さらに,ユーザ数が0か判定する。全体管理部2312は,ユーザ数が"1"であるので(ステップS103/いる),ステップS104の処理を省略する。次いで,ステップS105に移る。なお,ステップS105において,"Count-0"("1")が"Count-0"("2")にカウントアップされる。
 また,図21のルータ装置2の全体管理部2312は,ステップS105の処理と共に,ユーザCのクラウドサービスの仮想マシンのIPアドレスをユーザCが利用している端末装置1_Nbに通知する。以後,全体管理部2312は,ユーザCが利用している端末装置1_Nbが送信する,既に起動している仮想マシン宛のパケットをフィルタリングせず,そのまま,この仮想マシンに送信する。すなわち,ルータ装置2は,ステップS104において開設されたトンネルを介する仮想マシン(ソフトウェア)との通信を,ユーザCの端末装置1_Nbに許可する。
 第3の実施の形態における,仮想ルータ,仮想マシンの停止,トンネル停止処理の流れについて,図6,図21~図23を参照し,図25に基づき説明する。
 図25は,第3の実施の形態における,仮想ルータ,仮想マシンの停止,トンネル停止処理の流れを説明する図である。図25の説明にあたり,図24の各ステップの処理が実行されているとする。図24の例では,ユーザID"User-A","User-C"に対応するクラウドサービスが起動している。
 ここで,第1の実施の形態で説明したように,ユーザID"User-A"で識別されるユーザが,図2の端末装置1の操作装置131を操作して,クラウドサービスの停止指示操作を行う。このとき,ユーザは,このクラウドサービスのユーザを認証する認証情報をあわせて入力する。この認証情報は,第1の実施の形態で説明したように,このユーザのユーザIDを有するものである。
 操作制御部13は,この停止指示操作に応答して,全体管理部1611に停止指示操作が実行されたことを示すコマンドを送信する。全体管理部1611は,このコマンドを受信すると,このユーザのID("User-A")を図21のルータ装置2に送信すると共に,クラウドサービスの停止を指示する第2のコマンドを図21のルータ装置2に送信する。
 ステップS111:ルータ装置2の全体管理部2312は,このユーザIDとクラウドサービスの停止要求を受信すると,このユーザIDに対応するクラウドサービスのユーザ数のカウントダウン,および,カウントダウン後のユーザ数の送信要求を図22の認証サーバ装置3に行う。さらに,全体管理部2312は,このユーザIDに対応するSaaSIDの初回ユーザIDの送信要求を認証サーバ装置3に行う。
 ステップS112:認証サーバ装置3は,受信したユーザIDに対応するクラウドサービスのユーザ数のカウントダウンを行う。具体的には,全体管理部3312が,前記カウントダウン要求,送信要求を受信すると,ユーザ情報管理部335に以下の指示を行う。この指示とは,ユーザIDに対応するクラウドサービスを識別するSaaSIDに対応するユーザ数のカウントダウン,および,カウントダウン後のユーザ数の送信処理,このSaaSIDに対応する初回ユーザIDの送信処理である。
 ユーザ情報管理部335は,この指示に応答して,全体管理部3312が受信したユーザIDに対応するユーザ数を,図23のクラウドサービス管理テーブルT31から取得し,このユーザ数を1つ減少(カウントダウン)する。
 前記例の場合,ユーザIDは,"User-A"であった。この場合,図6のクラウドアクセス管理テーブルT1によれば,ユーザID"User-A"に対応するクラウドサービスを識別するSaaSIDは"SaaS-0"である。そして,図23のクラウドサービス管理テーブルT31によれば,このSaaSID"SaaS-0"に対応するユーザ数は,"Count-0"("2")である。ユーザ情報管理部335は,このユーザ数をカウントダウンし"Count-0"("1")とする。また,このSaaSID"SaaS-0"に対応する初回ユーザIDは,"User-A"である。
 ステップS113:ユーザ情報管理部335は,カウントダウン後のユーザ数,初回ユーザIDをルータ装置2に送信する。前記の例の場合,ユーザ情報管理部335は,この"Count-0"("1"),"User-A"をルータ装置2に送信する。
 ステップS114:図21のルータ装置2の全体管理部2312は,前記したクラウドサービスのユーザ数,初回ユーザIDを受信し,さらに,このユーザ数に基づき,このクラウドサービスの他のユーザがいるか判定する。全体管理部2312は,他のユーザがいると判定した場合(ステップS114/いる),処理を終了する。全体管理部2312は,他のユーザがいないと判定した場合(ステップS114/いない),ステップS115に移る。具体的には,全体管理部2312は,クラウドサービスのユーザ数が0か判定する。ユーザ数が0でない場合,全体管理部2312は,クラウドサービスの他のユーザがいると判定し(ステップS114/いる),処理を終了する。ユーザ数が0の場合,全体管理部2312は,クラウドサービスの他のユーザがいないと判定し(ステップS114/いない),処理を終了する。
 前記例の場合,全体管理部2312は,ユーザ数として"Count-0"("1")を受信しているので,ユーザ数は0でなく(ステップS114/いる),処理を終了する。
 この処理の終了後,ユーザID"User-C"で識別されるユーザが,図1の端末装置1_Nbの操作装置131を操作して,クラウドサービスの停止指示操作を行う。すると,前記したように,操作制御部13は,この停止指示操作に応答して,全体管理部161に停止指示操作が実行されたことを示すコマンドを送信する。全体管理部161は,このコマンドを受信すると,このユーザのID("User-C")を図21のルータ装置2に送信と共に,クラウドサービスの停止を指示する第2のコマンドを図21のルータ装置2に送信する。
 そして,図25のステップS111,S112が実行される。このステップS112において,ユーザ情報管理部335は,ユーザID"User-C"に対応するユーザID"User-C"のユーザ数をカウントダウンし"Count-0"("0")とする。
 その後,ステップS113,ステップS114の処理が実行される。このステップS114において,図21のルータ装置2の全体管理部2312は,ユーザ数("0"),ユーザID"User-A"を受信し,さらに,ユーザ数が0か判定する。前記例の場合,ユーザ数が0なので(ステップS114/いない),ステップS115に移る。
 ステップS115:図4のルータ装置2は,受信した初回ユーザIDに対応する仮想ルータ,仮想マシンの停止指示を実行する。
 具体的には,全体管理部231は,初回ユーザIDに対応する仮想マシンの停止処理を実行するように,仮想マシン起動停止部236に指示する。仮想マシン起動停止部236は,この指示に応答して,記憶装置24(図3)の中から,この初回ユーザIDに対応する仮想マシンの起動停止情報であるAPIを検索する。なお,記憶装置24には,図13のステップS27で説明したように,ユーザIDに対応する仮想ルータの起動停止情報(API),このユーザIDに対応するSaaSIDに対応する仮想マシンの起動停止情報(API)が記憶されている。
 そして,仮想マシン起動停止部236は,初回ユーザIDと,停止指示オプションを引数として設定して,この仮想マシンの起動停止情報であるAPIを実行する。
 前記の例では,仮想マシン起動停止部236は,この初回ユーザID"User-A",停止指示オプションを引数として設定して,仮想マシンの起動停止情報であるAPI_VM-Aを実行する。なお,仮想マシンの停止処理の詳細については,第1の実施の形態で説明したので省略する。
 次いで,全体管理部231は,初回ユーザIDに対応する仮想ルータの停止処理を実行するように,仮想ルータ起動停止部235に指示する。仮想ルータ起動停止部235は,この指示に応答して,記憶装置24(図3)の中から,この初回ユーザIDに対応する仮想ルータの起動停止情報であるAPIを検索する。
 そして,仮想ルータ起動停止部235は,初回ユーザIDと,停止指示オプションを引数として設定して,この仮想ルータの起動停止情報であるAPIを実行する。
 前記の例では,仮想ルータ起動停止部235は,この初回ユーザID"User-A",停止指示オプションを引数として設定して,仮想ルータの起動停止情報であるAPI_VR-Aを実行する。なお,仮想ルータの停止処理の詳細については,第1の実施の形態で説明したので省略する。
 この仮想ルータの停止処理が終了すると,ルータ装置2のトンネル開設部237は,開設したトンネルにおけるカプセル化処理を停止,すなわちトンネルの停止処理を実行する。
 本実施の形態によれば,複数のユーザが,同時に1つのクラウドサービス(仮想マシン)を利用する場合には,既に,クラウドサービスが起動していると,ルータ装置は,仮想マシンの起動処理は実行しない。そのため,不要な仮想マシンの起動処理を省略することができ,ルータ装置2や管理サーバ装置7の処理負荷の増大を抑制できる。また,あるクラウドサービスを停止する場合に,このクラウドアクセスを他のユーザが利用していても,このクラウドサービスを停止することがない。
SYS…情報処理システム,DC_1~DC_Na…データセンター,US…ユーザ側システム,Nt…通信回線網,1,1_1,1_Nb,1_Nc,1_Nd…端末装置, 121…表示装置,131…操作装置,141…カードリーダ,181…指紋認証装置,11…CPU,12…表示制御部,13…操作制御部,14…カードリーダ制御部,15…通信装置,16…メモリ,161,1611…全体管理部,162…認証情報取得部,163…認証情報送信部,164…アクセス部,165…サービス名取得部,17…記憶装置,18…指紋認証装置制御部,ルータ装置…2,21…CPU,22…通信装置,221…有線通信装置,222…無線通信装置,23…メモリ,231,2312…全体管理部,232…接続部,233…ルーティング部,234…認証管理部,235…仮想ルータ起動停止部,236…仮想マシン起動停止部,237,2371…トンネル開設部,238…認証サーバ情報取得部,239…ユーザ数受信部,24…記憶装置,3…認証サーバ装置,31…CPU,
32…通信装置,33…メモリ,331,3311,3312…全体管理部,332…認証実行部,333…アクセス情報取得部,334…トンネル開設部,335…ユーザ数管理部,34…記憶装置,4_1,4_Ne…サーバ装置,40…ハードウェア,41…CPU,42…通信装置,43…メモリ,44…記憶装置,45…ハイパーバイザ,4vr…仮想ルータ,4vm…仮想マシン,5…ゲートウェイ装置,6…ルータ装置,7…管理サーバ装置,71…CPU,72…通信装置,73…メモリ,731…全体管理部,732…仮想ルータ管理部,733…仮想マシン管理部,74…記憶装置,8…クラウドディレクトリサービス装置,81…CPU,82…通信装置,83…メモリ,831…全体管理部,832…認証サーバアクセス情報取得部,84…記憶装置,T1,…クラウドアクセス管理テーブル,T2,T31…クラウドサービス管理テーブル,
T11…仮想ルータHWテーブル,T12…仮想マシンHWテーブル。

Claims (19)

  1.  ソフトウェアを実行して情報処理サービスを行う第1の装置と,
     前記情報処理サービスの利用者を認証し,前記情報処理サービスの利用者毎に定められた,前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と,
     前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有し,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報を受信し,前記第2の装置に前記利用者の認証要求を行い,
     前記第2の装置は,前記利用者の認証を行い,前記利用者の認証が成功した場合,前記情報処理サービスの利用者毎に定められた,前記第1の情報および前記第2の情報を,前記通信装置に送信し,
     前記通信装置は,前記第1の情報および前記第2の情報を受信し,受信した前記第1の情報に基づき,前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し,
     前記第1の装置は,前記第1のコマンドを受信し,前記ソフトウェアを起動,実行し,
     前記通信装置は,受信した前記第2の情報に基づき,前記ネットワークに前記仮想通信経路を開設する
     ことを特徴とする情報処理システム。
  2.  請求項1において,
     さらに,前記第2の装置に接続するための第3の情報を記憶する第3の装置を有し,
     前記通信装置は,前記第3の装置に前記第3の情報の送信要求を行い,
     前記第3の装置は,前記送信要求に応答して,前記第3の情報を前記通信装置に送信し,
     前記通信装置は,前記第3の装置から前記第3の情報を受信し,受信した前記第3の情報に基づき,前記第2の装置に接続し,前記第1の情報および前記第2の情報を前記第2の装置から受信する
     ことを特徴とする情報処理システム。
  3.  請求項1において,
     前記第2の装置は,前記情報処理サービスの利用者数を記憶し,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報を受信し,前記第2の装置から,前記認証情報に対応する前記情報処理サービスの利用者数を受信し,
     前記通信装置は,受信した前記利用者数に基づき,前記情報処理サービスの利用者がいるか判定し,前記情報処理サービスの利用者がいないと判定した場合,前記第1のコマンドを送信し,前記ソフトウェアと通信する前記仮想通信経路を開設し,前記情報処理サービスの利用者がいると判定した場合,開設された前記仮想通信経路を介する前記ソフトウェアとの通信を前記端末装置に許可し,
     さらに,前記通信装置は,前記第2の装置に前記情報処理サービスの利用者数の更新要求を行い,
     前記第2の装置は,前記更新要求に応答して,前記情報処理サービスの利用者数を更新する,
     ことを特徴とする情報処理システム。
  4.  請求項3において,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報と前記情報処理サービスの停止を指示する第2のコマンドを受信し,前記第2の装置から,前記認証情報に対応する前記情報処理サービスの利用者数を受信し,受信した前記利用者数に基づき,前記情報処理サービスの他の利用者がいるか判定し,前記他の利用者がいないと判定した場合,前記情報処理サービスの停止を指示する第3のコマンドを前記第1の装置に送信する
     ことを特徴とする情報処理システム。
  5.  請求項1において,
     前記ソフトウェアは,仮想マシンと前記仮想マシンの通信処理を制御する仮想ルータであり,
     前記通信装置は,前記仮想ルータと通信する前記仮想通信経路を開設する
     ことを特徴とする情報処理システム。
  6.  請求項1において,
     前記第1の装置は,ソフトウェアを実行して情報処理サービスを行うサービス実行装置と,前記サービス実行装置を管理する管理装置とを有し,
     前記通信装置は,前記第1のコマンドを前記管理装置に送信し,
     前記管理装置は,前記第1のコマンドを受信し,前記サービス実行装置に前記ソフトウェアの起動を指示する第4のコマンドを送信し,
     前記サービス実行装置は,前記第4のコマンドを受信し,前記ソフトウェアを起動,実行する
     ことを特徴とする情報処理システム。
  7.  ソフトウェアを実行して情報処理サービスを行う第1の装置と,
     前記情報処理サービスの利用者を認証し,前記情報処理サービスの利用者毎に定められた,前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と,
     前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有する情報処理システムにおいて実行される情報処理方法であって,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報を受信し,前記第2の装置に前記利用者の認証要求を行い,
     前記第2の装置は,前記利用者の認証を行い,前記利用者の認証が成功した場合,前記情報処理サービスの利用者毎に定められた,前記第1の情報および前記第2の情報を,前記通信装置に送信し,
     前記通信装置は,前記第1の情報および前記第2の情報を受信し,受信した前記第1の情報に基づき,前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し,
     前記第1の装置は,前記第1のコマンドを受信し,前記ソフトウェアを起動,実行し,
     前記通信装置は,受信した前記第2の情報に基づき,前記ネットワークに前記仮想通信経路を開設する
     ことを特徴とする情報処理方法。
  8.  請求項7において,
     前記通信装置は,前記第2の装置に接続するための第3の情報を記憶する第3の装置に前記第3の情報の送信要求を行い,
     前記第3の装置は,前記送信要求に応答して,前記第3の情報を前記通信装置に送信し,
     前記通信装置は,前記第3の装置から前記第3の情報を受信し,受信した前記第3の情報に基づき,前記第2の装置に接続し,前記第1の情報および前記第2の情報を前記第2の装置から受信する
     ことを特徴とする情報処理方法。
  9.  請求項7において,
     前記第2の装置は,前記情報処理サービスの利用者数を記憶し,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報を受信し,前記第2の装置から,前記認証情報に対応する前記情報処理サービスの利用者数を受信し, 
     前記通信装置は,受信した前記利用者数に基づき,前記情報処理サービスの利用者がいるか判定し,前記情報処理サービスの利用者がいないと判定した場合,前記第1のコマンドを送信し,前記ソフトウェアと通信する前記仮想通信経路を開設し,前記情報処理サービスの利用者がいると判定した場合,開設された前記仮想通信経路を介する前記ソフトウェアとの通信を前記端末装置に許可し,
     さらに,前記通信装置は,前記第2の装置に前記情報処理サービスの利用者数の更新要求を行い,
     前記第2の装置は,前記更新要求に応答して,前記情報処理サービスの利用者数を更新する,
     ことを特徴とする情報処理方法。
  10.  請求項9において,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報と前記情報処理サービスの停止を指示する第2のコマンドを受信し,前記第2の装置から,前記認証情報に対応する前記情報処理サービスの利用者数を受信し,受信した前記利用者数に基づき,前記情報処理サービスの他の利用者がいるか判定し,前記他の利用者がいないと判定した場合,前記情報処理サービスの停止を指示する第3のコマンドを前記第1の装置に送信する
     ことを特徴とする情報処理方法。
  11.  請求項7において,
     前記ソフトウェアは,仮想マシンと前記仮想マシンの通信処理を制御する仮想ルータであり,
     前記通信装置は,前記仮想ルータと通信する前記仮想通信経路を開設する
     ことを特徴とする情報処理方法。
  12.  請求項7において,
     前記第1の装置は,ソフトウェアを実行して情報処理サービスを行うサービス実行装置と,前記サービス実行装置を管理する管理装置とを有し,
     前記通信装置は,前記第1のコマンドを前記管理装置に送信し,
     前記管理装置は,前記第1のコマンドを受信し,前記サービス実行装置に前記ソフトウェアの起動を指示する第4のコマンドを送信し,
     前記サービス実行装置は,前記第4のコマンドを受信し,前記ソフトウェアを実行する
     ことを特徴とする情報処理方法。
  13.  ソフトウェアを実行して情報処理サービスを行う第1の装置と,
     前記第1の装置と利用者の端末装置との間におけるネットワークを介する通信を制御する通信装置とを有する情報処理システムにおいて実行される情報処理方法であって,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を識別する識別情報を受信し,
     前記通信装置に記憶されている,前記情報処理サービスの利用者毎に定められた,前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を,前記識別情報に応じて取得し,
     取得した前記第1の情報に基づき,前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し,
     前記第1の装置は,前記第1のコマンドを受信し,前記ソフトウェアを起動,実行し,
     前記通信装置は,取得した前記第2の情報に基づき,前記ネットワークに前記仮想通信経路を開設する
     ことを特徴とする情報処理方法。
  14.  ソフトウェアを実行して情報処理サービスを行う第1の装置と,前記第1の装置と利用者の端末装置との間におけるネットワークを介する通信を制御する通信装置であって,
     前記通信装置は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報を受信し,前記情報処理サービスの利用者を認証し,前記情報処理サービスの利用者毎に定められた,前記ソフトウェアを起動するための第1の情報および前記ソフトウェアと前記ネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置に前記利用者の認証要求を行い,前記第2の装置が,前記利用者の認証が成功した場合に送信する,前記情報処理サービスの利用者毎に定められた前記第1の情報および前記第2の情報を受信し,受信した前記第1の情報に基づき,前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し,受信した前記第2の情報に基づき,前記ネットワークに前記仮想通信経路を開設する制御部を有する
     ことを特徴とする通信装置。
  15.  請求項14において,
     前記制御部は,前記第2の装置に接続するための第3の情報を記憶する第3の装置に前記第3の情報の送信要求を行い,前記送信要求に応答して送信された前記第3の情報を第3の装置から受信し,受信した前記第3の情報に基づき,前記第2の装置に接続し,前記第1の情報および前記第2の情報を前記第2の装置から受信する
     ことを特徴とする通信装置。
  16.  請求項14において,
     前記制御部は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報を受信し,前記情報処理サービスの利用者数を記憶する第2の装置から,前記認証情報に対応する前記情報処理サービスの利用者数を受信し,受信した前記利用者数に基づき,前記情報処理サービスの利用者がいるか判定し,前記情報処理サービスの利用者がいないと判定した場合,前記第1のコマンドを送信し,前記ソフトウェアと通信する前記仮想通信経路を開設し,前記情報処理サービスの利用者がいると判定した場合,開設された前記仮想通信経路を介する前記ソフトウェアとの通信を前記端末装置に許可し,
     さらに,前記制御部は,前記第2の装置に前記情報処理サービスの利用者数の更新要求を行う
     ことを特徴とする通信装置。
  17.  請求項16において,
     前記制御部は,前記端末装置から,前記情報処理サービスの利用者を認証する認証情報と前記情報処理サービスの停止を指示する第2のコマンドを受信し,前記第2の装置から,前記認証情報に対応する前記情報処理サービスの利用者数を受信し,受信した前記利用者数に基づき,前記情報処理サービスの他の利用者がいるか判定し,前記他の利用者がいないと判定した場合,前記情報処理サービスの停止を指示する第3のコマンドを前記第1の装置に送信する
     ことを特徴とする通信装置。
  18.  請求項14において,
     前記ソフトウェアは,仮想マシンと前記仮想マシンの通信処理を制御する仮想ルータであり,
     前記制御部は,前記仮想ルータと通信する前記仮想通信経路を開設する
     ことを特徴とする通信装置。
  19.  請求項14において,
     前記第1の装置は,ソフトウェアを起動,実行して情報処理サービスを行うサービス実行装置と,前記サービス実行装置を管理する管理装置とを有し,
     前記制御部は,前記第1のコマンドを前記管理装置に送信する
     ことを特徴とする通信装置。
PCT/JP2012/065905 2012-06-21 2012-06-21 情報処理システム,情報処理方法,通信装置 WO2013190688A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014521174A JP5854138B2 (ja) 2012-06-21 2012-06-21 情報処理システム,情報処理方法,通信装置
PCT/JP2012/065905 WO2013190688A1 (ja) 2012-06-21 2012-06-21 情報処理システム,情報処理方法,通信装置
EP12879178.7A EP2866392B1 (en) 2012-06-21 2012-06-21 Information processing system, information processing method, and communication device
US14/574,821 US9509680B2 (en) 2012-06-21 2014-12-18 Information processing system, information processing method and communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/065905 WO2013190688A1 (ja) 2012-06-21 2012-06-21 情報処理システム,情報処理方法,通信装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/574,821 Continuation US9509680B2 (en) 2012-06-21 2014-12-18 Information processing system, information processing method and communication device

Publications (1)

Publication Number Publication Date
WO2013190688A1 true WO2013190688A1 (ja) 2013-12-27

Family

ID=49768317

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/065905 WO2013190688A1 (ja) 2012-06-21 2012-06-21 情報処理システム,情報処理方法,通信装置

Country Status (4)

Country Link
US (1) US9509680B2 (ja)
EP (1) EP2866392B1 (ja)
JP (1) JP5854138B2 (ja)
WO (1) WO2013190688A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016144144A (ja) * 2015-02-04 2016-08-08 日本電信電話株式会社 負荷分散システム及び負荷分散方法
JP2016149702A (ja) * 2015-02-13 2016-08-18 日本電信電話株式会社 無線通信におけるクライアント端末認証システムおよびクライアント端末認証方法
JP2016167184A (ja) * 2015-03-10 2016-09-15 日本電気株式会社 リモート端末、中継装置、認証制御システム、リモート接続方法およびプログラム
JP2017142717A (ja) * 2016-02-12 2017-08-17 日本電信電話株式会社 通信システム
US10313156B2 (en) 2015-07-17 2019-06-04 Nec Corporation Communication system, communication apparatus, communication method, terminal, non-transitory medium
JP2021164099A (ja) * 2020-04-01 2021-10-11 ケ, ミン チーKe, Ming Chi 仮想プライベートネットワークにおける装置を接続するデバイス、その方法及びパソコンで読取り可能な記録メディア

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3326296B1 (en) * 2015-07-24 2023-07-12 Info Wise Limited Wireless access tag duplication system and method
CN108353280B (zh) * 2015-10-27 2022-04-15 索尼公司 信息处理装置、信息处理方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001326696A (ja) 2000-05-18 2001-11-22 Nec Corp アクセス制御方法
JP2002117230A (ja) 2000-07-14 2002-04-19 Bank Of Tokyo-Mitsubishi Ltd 顧客アクセス接続装置、顧客アクセス接続方法、記録媒体及びコンピュータ・プログラム
JP2010097567A (ja) * 2008-10-20 2010-04-30 Hitachi Ltd デバイス接続制御方法
JP2011076506A (ja) * 2009-09-30 2011-04-14 Brother Industries Ltd アプリケーションサービス提供システム及びアプリケーションサービス提供方法
JP2011232794A (ja) * 2010-04-23 2011-11-17 Fuji Xerox Co Ltd 通信制御装置、通信制御プログラム及び通信制御システム
JP2011250209A (ja) 2010-05-27 2011-12-08 Fujitsu Ltd ルータ、情報処理装置及びプログラム
JP2012068826A (ja) * 2010-09-22 2012-04-05 Csk Corp サービス制御システム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6035402A (en) * 1996-12-20 2000-03-07 Gte Cybertrust Solutions Incorporated Virtual certificate authority
US20020144144A1 (en) * 2001-03-27 2002-10-03 Jeffrey Weiss Method and system for common control of virtual private network devices
US20040093492A1 (en) * 2002-11-13 2004-05-13 Olivier Daude Virtual private network management with certificates
US7452278B2 (en) * 2003-05-09 2008-11-18 Microsoft Corporation Web access to secure data
US7428754B2 (en) * 2004-08-17 2008-09-23 The Mitre Corporation System for secure computing using defense-in-depth architecture
DE102004045147A1 (de) * 2004-09-17 2006-03-23 Fujitsu Ltd., Kawasaki Einstellungsinformations-Verteilungsvorrichtung, Verfahren, Programm und Medium, Authentifizierungseinstellungs-Transfervorrichtung, Verfahren, Programm und Medium und Einstellungsinformations-Empfangsprogramm
JP5174747B2 (ja) 2009-06-18 2013-04-03 株式会社日立製作所 計算機システムおよび管理装置
US8549300B1 (en) * 2010-02-23 2013-10-01 Juniper Networks, Inc. Virtual single sign-on for certificate-protected resources
JP5589583B2 (ja) * 2010-06-15 2014-09-17 富士ゼロックス株式会社 監視ポータル、監視システム、端末、そのプログラム
US8473734B2 (en) * 2010-06-30 2013-06-25 Juniper Networks, Inc. Multi-service VPN network client for mobile device having dynamic failover
US8607054B2 (en) * 2010-10-15 2013-12-10 Microsoft Corporation Remote access to hosted virtual machines by enterprise users
JP5570463B2 (ja) * 2011-03-22 2014-08-13 株式会社国際電気通信基礎技術研究所 無線中継装置、仮想マシン作成サーバ、無線中継方法、および仮想マシン作成方法
JP5828270B2 (ja) * 2011-11-21 2015-12-02 富士通株式会社 管理装置、管理プログラム、管理方法および情報処理装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001326696A (ja) 2000-05-18 2001-11-22 Nec Corp アクセス制御方法
JP2002117230A (ja) 2000-07-14 2002-04-19 Bank Of Tokyo-Mitsubishi Ltd 顧客アクセス接続装置、顧客アクセス接続方法、記録媒体及びコンピュータ・プログラム
JP2010097567A (ja) * 2008-10-20 2010-04-30 Hitachi Ltd デバイス接続制御方法
JP2011076506A (ja) * 2009-09-30 2011-04-14 Brother Industries Ltd アプリケーションサービス提供システム及びアプリケーションサービス提供方法
JP2011232794A (ja) * 2010-04-23 2011-11-17 Fuji Xerox Co Ltd 通信制御装置、通信制御プログラム及び通信制御システム
JP2011250209A (ja) 2010-05-27 2011-12-08 Fujitsu Ltd ルータ、情報処理装置及びプログラム
JP2012068826A (ja) * 2010-09-22 2012-04-05 Csk Corp サービス制御システム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016144144A (ja) * 2015-02-04 2016-08-08 日本電信電話株式会社 負荷分散システム及び負荷分散方法
JP2016149702A (ja) * 2015-02-13 2016-08-18 日本電信電話株式会社 無線通信におけるクライアント端末認証システムおよびクライアント端末認証方法
JP2016167184A (ja) * 2015-03-10 2016-09-15 日本電気株式会社 リモート端末、中継装置、認証制御システム、リモート接続方法およびプログラム
US10313156B2 (en) 2015-07-17 2019-06-04 Nec Corporation Communication system, communication apparatus, communication method, terminal, non-transitory medium
US10764088B2 (en) 2015-07-17 2020-09-01 Nec Corporation Communication system, communication apparatus, communication method, terminal, non-transitory medium
JP2017142717A (ja) * 2016-02-12 2017-08-17 日本電信電話株式会社 通信システム
JP2021164099A (ja) * 2020-04-01 2021-10-11 ケ, ミン チーKe, Ming Chi 仮想プライベートネットワークにおける装置を接続するデバイス、その方法及びパソコンで読取り可能な記録メディア

Also Published As

Publication number Publication date
EP2866392B1 (en) 2017-08-23
US20150106901A1 (en) 2015-04-16
EP2866392A4 (en) 2015-06-10
US9509680B2 (en) 2016-11-29
JPWO2013190688A1 (ja) 2016-02-08
EP2866392A1 (en) 2015-04-29
JP5854138B2 (ja) 2016-02-09

Similar Documents

Publication Publication Date Title
JP5854138B2 (ja) 情報処理システム,情報処理方法,通信装置
US10469314B2 (en) API gateway for network policy and configuration management with public cloud
US10791458B2 (en) Transferring information to a mobile device
US9246921B1 (en) Secure external access to device automation system
TWI584195B (zh) 伺服器系統中基於iSCSI的裸機OS映像部署及無磁碟啟動的方法
JP5885834B2 (ja) モバイル・コンピューティング・デバイスを介して管理されたusbサービスをリモートに送達する方法および装置
JP6707153B2 (ja) クラウドコンピューティングノードのセキュアな設定
EP3300331B1 (en) Response method, apparatus and system in virtual network computing authentication, and proxy server
JP2014535228A (ja) ポート設定方法、ルーティングデバイス、およびコンピュータプログラム製品
EP3158448A2 (en) Integrated apis and uis for consuming services across different distributed networks
US9467441B2 (en) Secure service delegator
WO2012121899A2 (en) System and method to provide remote device management for mobile virtualized platforms
US9716623B2 (en) Automatic and secure activation of a universal plug and play device management device
CN109857464B (zh) 用于平台部署与操作移动操作系统的系统及其方法
US20110191402A1 (en) Network system, process-providing-server switching method, information processing apparatus, and virtual-machine building method
US10778467B2 (en) Method for providing virtual CPE service by using single internet line and network function virtualization cloud
CN112073555A (zh) Ip地址的配置方法、电子设备和计算机可读存储介质
JP2016009972A (ja) 通信制御装置,通信制御プログラム及び通信制御方法
US10637924B2 (en) Cloud metadata discovery API
KR102119160B1 (ko) 가상화 기반 접속 컨트롤러 생성 방법 및 이를 지원하는 통합 관리 서버
CN113826075A (zh) 具有用于客户端设备的专用蜂窝网络连接的桌面虚拟化
JP6760894B2 (ja) 再起動指示通知装置および再起動指示通知方法
KR20240038727A (ko) 기기의 인터넷 연결을 관리하는 방법
CN105357097A (zh) 虚拟网络的调节方法及系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12879178

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014521174

Country of ref document: JP

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2012879178

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012879178

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE