WO2014112585A1 - 通信システム、ノード、制御装置、通信方法およびプログラム - Google Patents

通信システム、ノード、制御装置、通信方法およびプログラム Download PDF

Info

Publication number
WO2014112585A1
WO2014112585A1 PCT/JP2014/050790 JP2014050790W WO2014112585A1 WO 2014112585 A1 WO2014112585 A1 WO 2014112585A1 JP 2014050790 W JP2014050790 W JP 2014050790W WO 2014112585 A1 WO2014112585 A1 WO 2014112585A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
communication method
network
computing resource
user
Prior art date
Application number
PCT/JP2014/050790
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 US14/761,582 priority Critical patent/US20150351101A1/en
Priority to JP2014557507A priority patent/JP6292128B2/ja
Publication of WO2014112585A1 publication Critical patent/WO2014112585A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/53Allocation or scheduling criteria for wireless resources based on regulatory allocation policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • H04L41/0897Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets

Definitions

  • the present invention is based on the priority claim of Japanese Patent Application: Japanese Patent Application No. 2013-007238 (filed on January 18, 2013), the entire contents of which are incorporated herein by reference.
  • the present invention relates to a communication system, a node, a control device, a communication method, and a program, and relates to a communication system, a node, a control device, a communication method, and a program that process received packets.
  • a technique for logically configuring a plurality of networks isolated from each other on a physical network has been proposed.
  • a logically configured network is referred to as a virtual network.
  • the network A is sometimes called an underlay network (UnderlayderNetwork)
  • the virtual network B is sometimes called an overlay network (Overlay Network).
  • Patent Document 1 describes a technique for constructing a virtual network in a data center (DC) by using a VLAN (Virtual Local Area Network).
  • DC Data Center
  • VLAN Virtual Local Area Network
  • Patent Document 2 discloses a technique for distributing the load of a service providing server in a computer system.
  • communication processing such as packet encapsulation may be required.
  • communication performance and communication quality may be inferior to using a physical network directly because of additional communication processing for constructing a virtual network.
  • Patent Document 1 discloses that a VLAN is used to construct a virtual network, but there is no disclosure of a technique for suppressing communication performance and communication quality degradation due to the construction of a virtual network.
  • Patent Document 2 discloses a technique for distributing the load of a service providing server, but does not disclose a technique for suppressing communication performance and communication quality degradation due to the construction of a virtual network.
  • An object of the present invention is to provide a communication system, a node, a control device, a communication method, and a program capable of solving the above-described problems.
  • the communication system converts at least one communication method from a plurality of communication methods to the calculation resource based on a calculation resource allocated to a user and a request condition related to a service provided to the user via the calculation resource.
  • Allocating means for allocating for allocating.
  • the node includes an identification means for identifying a request condition related to a service provided to the user via a computing resource allocated to the user, and at least one communication method from a plurality of communication methods based on the request condition.
  • Allocating means for allocating to the computing resource.
  • the control apparatus includes: an assigning unit that assigns at least one communication method from a plurality of communication methods to the computing resource based on a request condition related to a service provided to the user via a computing resource assigned to the user; Notification means for notifying a node connected to the computing resource of the assigned communication method.
  • the communication method according to the present invention includes a step of identifying a request condition related to a service provided to a user via a computing resource allocated to the user, and at least one communication method is selected from a plurality of communication methods based on the request condition. Assigning to said computing resources.
  • the communication method according to the present invention includes a step of allocating at least one communication method from a plurality of communication methods to the calculation resource based on a request condition relating to a service provided to the user via a calculation resource assigned to the user; And notifying the node connected to the computing resource of the assigned communication method.
  • the program according to the present invention includes a process for identifying a request condition related to a service provided to the user via the calculation resource for a node connected to the calculation resource allocated to the user, and a plurality of processes based on the request condition. And a process of assigning at least one communication method to the computing resource.
  • the program according to the present invention provides at least one communication method from a plurality of communication methods to a control device that controls a node based on a request condition related to a service provided to the user via a calculation resource assigned to the user. And a process of notifying the node connected to the calculation resource of the assigned communication method.
  • At least one communication method is assigned from a plurality of communication methods to a calculation resource based on a request condition regarding a service provided to a user via the calculation resource.
  • a communication method is assigned from a plurality of communication methods to a calculation resource based on a request condition regarding a service provided to a user via the calculation resource.
  • the communication system includes an allocation unit 1, a calculation resource 2, and a network 3.
  • the computing resource 2 includes a computing resource 2-1, a computing resource 2-2, and a computing resource 2-3.
  • the network 3 includes a network 3-1, a network 3-2, and a network 3-3.
  • the calculation resources 2-1, 2-2, and 2-3 are collectively referred to as the calculation resource 2.
  • the networks 3-1, 3-2 and 3-3 are collectively referred to as the network 3.
  • the communication system is, for example, a data center.
  • Network 3 includes networks with different communication methods.
  • the network 3-1 and the network 3-2 may be networks having different communication methods.
  • the communication method may be a communication protocol such as Ethernet (registered trademark).
  • a communication protocol for constructing a virtual network such as VLAN (Virtual Local Area Network), L2TP (Layer 2 Tunneling Protocol), Ethernet IP, or the like may be used. That is, the communication system can construct the network 3 by a plurality of communication methods.
  • the communication system can construct a virtual network environment by the above-described plurality of communication methods, for example.
  • the computing resource 2 is a resource for performing processing performed on a server or a computer, for example, and is assigned to a certain user.
  • the user uses the service via the assigned computing resource 2.
  • the user A is using the calculation resource 2-1
  • the user B is using the calculation resource 2-2
  • the user C is using the calculation resource 2-3.
  • the user can use the service by executing an application corresponding to a certain service using the allocated computing resource 2.
  • communication related to a service used by the user using the computing resource 2 occurs on the network 3.
  • the allocating unit 1 allocates at least one communication method from a plurality of communication methods to a calculation resource according to a request condition regarding a service provided via the calculation resource 2. That is, the assigning unit 1 assigns at least one of the plurality of networks 3 having different communication methods to the calculation resource based on the request condition.
  • the allocating unit 1 is provided in a node provided on the communication system.
  • Fig. 2 shows an overview of the operation of the allocation unit 1.
  • the communication resource 2-1 to the communication A, the calculation resource 2-2 to the communication B, and the calculation resource 2-3 to the communication C are generated.
  • the assigning unit 1 assigns a communication method corresponding to the network 3-1 to the computing resource 2-1 corresponding to the user A.
  • the computing resource 2-1 performs communication (communication A in FIG. 2) by a communication method corresponding to the network 3-1, according to the assignment.
  • the allocation unit 1 holds information as shown in FIG. 3, for example.
  • FIG. 3A shows the correspondence between the calculation resources allocated to each user and the request conditions.
  • the calculation resource 2-1 assigned to the user A corresponds to the request condition “A”.
  • FIG. 3B shows a communication method assigned according to the request condition.
  • the communication method (1) corresponding to the network 3-1 is assigned to the request condition “A”.
  • the requirement condition is, for example, SLA (Service Level Agreement), and is determined for each user.
  • the user can receive a service under conditions according to the fee by paying a fee corresponding to the required condition to the operator of the communication system.
  • the communication bandwidth and throughput guaranteed for the user the line speed, the average delay time in the network, the upper limit of the traffic, the average delay time in the network, the operation rate, the packet loss rate, etc. Take as an example.
  • the allocating unit 1 does not have to hold information regarding the correspondence between the request condition and the communication method as illustrated in FIG. For example, the allocating unit 1 compares a performance value (for example, throughput) required in the request condition with a performance value corresponding to each of the plurality of communication methods, and the communication satisfying the request condition among the plurality of communication methods. Assign methods to computing resources. For example, the allocating unit 1 allocates a communication method that can achieve the best performance value among the communication methods satisfying the requirement to the computing resource. For example, it is assumed that the allocating unit 1 holds performance values such as a communication band and a throughput for each communication method.
  • a performance value for example, throughput
  • the allocation unit 1 associates the computing resource with the network.
  • the allocating unit 1 assigns the communication method (1) corresponding to the network 3-1 to the computing resource 2-1 and the communication method (3) corresponding to the network 3-3 to the computing resource 2-2.
  • -3 is assigned to the communication method (2) corresponding to the network 3-2.
  • Each computing resource performs communication (communications A, B, and C in the figure) according to the assigned communication method.
  • an appropriate communication method is assigned to a computing resource in accordance with a service request condition, so that a communication environment with performance that satisfies the user request condition is provided to the user. It becomes possible.
  • an appropriate communication method is assigned to a computing resource, a virtual network environment that satisfies the user's requirements can be provided to the user even when communication is performed using a virtual network.
  • the second embodiment is an embodiment in which the allocating unit 1 holds a policy regarding how to allocate the network 3.
  • the assigning unit 1 determines a communication method to be assigned to the calculation resource according to the policy.
  • FIG. 5 is a diagram showing a configuration example of the second embodiment. Since the basic configuration is the same as that of the first embodiment, detailed description of the components having the same reference numerals is omitted.
  • FIG. 5 includes an allocation unit 1, a calculation resource 2, and a network 3.
  • the computing resource 2 is, for example, a VM (Virtual Machine) executed on a certain server.
  • the user uses an application using each of the calculation resources 2.
  • the user A uses the application resource A using the calculation resource 2-1.
  • user B uses application resource B using calculation resource 2-2 and application C using calculation resource 2-3.
  • communication is generated from each computing resource 2 by use of each application.
  • a requirement is defined for each user.
  • the request condition is, for example, the SLA described in the first embodiment.
  • FIG. 6 shows an example of the communication method of the network 3.
  • the communication method of the network 3-1 is VLAN.
  • the communication method of the network 3-2 is L2TP
  • the communication method of the network 3-3 is Ethernet / IP.
  • each of the networks 3 may adopt a communication method for constructing a virtual network on a certain physical network.
  • various tunneling protocols can be used. For example, GRE (Generic Routing Encapsulation), NVGRE (Network Virtualization using GRE), IPsec (Security Architecture for Internet Protocol), or the like may be used.
  • GRE Generic Routing Encapsulation
  • NVGRE Network Virtualization using GRE
  • IPsec Security Architecture for Internet Protocol
  • the communication method of the network 3 is not limited to the above-described virtual network (overlay network), but may be a physical network (underlay network).
  • the virtual network in addition to using a physical network, packet processing according to the communication method for constructing the virtual network as described above is required. For example, in a VLAN, a process for attaching a VLAN tag to a packet is required. In GRE, it is necessary to encapsulate a packet.
  • the packet processing required for constructing the virtual network is not required, so there is no overhead for communication using computational resources. As described above, when a virtual network is used, the overhead due to the additional processing as described above occurs. Therefore, the communication method corresponding to the virtual network may not be able to satisfy the required condition.
  • the assignment unit 1 assigns a communication method corresponding to the physical network to the computing resource when the request condition cannot be satisfied by the communication method corresponding to the virtual network.
  • FIG. 7 is a diagram showing a configuration of the assignment unit 1 in the second embodiment.
  • the allocation unit 1 includes an identification unit 11, a control unit 12, a policy DB (Data Base) 13, and a user DB 14. 7 is different from the assignment unit 1 (FIG. 5) in the first embodiment in that a policy DB 13 and a user DB 14 are included.
  • the user DB 14 stores request conditions corresponding to the calculation resources allocated to the users and the communication addresses of the respective calculation resources 2.
  • FIG. 8 shows the user DB 14 when the request condition is “bandwidth guarantee”.
  • the user DB 14 stores, for example, that the communication address of the computing resource 2-1 corresponding to the user A is A, and the request condition of the user A is a bandwidth guarantee of 10 Gbps.
  • the communication address is, for example, a source MAC (Media Access Control) address or a source IP address.
  • the computing resource is operating on a server, for example, and the communication address is, for example, a MAC address or an IP address corresponding to the server.
  • the policy DB 13 holds, for example, the policy illustrated in FIG. FIG. 9 is a policy that defines a communication method to be assigned when the request condition is “bandwidth guarantee”.
  • the control unit 12 assigns a communication method that can guarantee a 10 Gbps bandwidth to a computing resource corresponding to a user whose bandwidth is guaranteed at 10 Gbps.
  • Requirement conditions are not limited to one type, and multiple types of request conditions may be combined. For example, there may be a requirement that the bandwidth guarantee is 10 Gbps and the upper limit of the traffic is 500 GB per day.
  • the policies set in the policy DB 13 are not limited to the above two. For example, a policy may be used in which a communication method to be assigned is determined in accordance with an average delay time in a network guaranteed for a user, an operation rate, a packet loss rate, and the like.
  • the identification unit 11 identifies calculation resources and request conditions corresponding to the user (step S11). For example, the identification unit 11 searches the user DB 14 illustrated in FIG. 8 for a computing resource having a communication address corresponding to the communication address included in the received packet. Further, the identification unit 11 specifies a request condition corresponding to the searched user from the user DB 14 illustrated in FIG. For example, when the communication address “A” is included in the received packet, the identifying unit 11 identifies that the received packet is a packet from the computing resource 2-1 corresponding to the user A. In this case, the identification unit 11 specifies that the request condition corresponding to the user A guarantees a bandwidth of 10 Gbps.
  • the control unit 12 refers to the policy DB 13 and determines a communication method corresponding to the request condition specified by the identification unit 11 (step S12). For example, it is assumed that the identification unit 11 identifies the request condition (“bandwidth guarantee: 10 Gbps”) corresponding to the user A from the user DB 14 illustrated in FIG. In this case, the control unit 12 refers to the policy DB 13 shown in FIG. 9 and calculates a communication method (1) that can guarantee a 10 Gbps bandwidth according to a request condition (“bandwidth guarantee: 10 Gbps”) corresponding to the user A. Decide to allocate to resource 2-1.
  • control unit 12 assigns the communication method determined in step S12 to the calculation resource (step S13).
  • a communication method is assigned to a computing resource
  • communication is performed by an operation according to each communication method.
  • the control unit 12 performs processing such as encapsulation and tagging necessary for performing communication via the virtual network. More specifically, the control unit 12 assigns a VLAN tag to the packet (communication A) from the computing resource 2-1 assigned to the network 3-1 whose communication method is VLAN, and Transfer to 3-1.
  • the assigned communication method is Ethernet
  • the control unit 12 adds a CRC (Frame CRC) calculated from the destination address, source address, length / type, and data fields in the FCS (Frame Check Sequence) field. Cyclic (Redundancy Check) value is set. Note that such processing when Ethernet is used is necessary not only when the assigned communication method is Ethernet, but also when a virtual network is constructed using another communication method on Ethernet.
  • each application is executed using each computing resource 2.
  • each computing resource 2 a plurality of applications are executed at the same time, each generating a separate communication. Also good.
  • the assigning unit 1 may assign the same communication method or individual communication methods to a plurality of applications that are activated using the computing resource 2.
  • control unit 12 may perform network allocation in consideration of each communication status of the network 3. For example, even if user A is assigned a communication method (1) that can guarantee a 10 Gbps bandwidth, if the network 3-1 corresponding to the communication method (1) is congested, another request is made.
  • a communication method for example, a communication method corresponding to the network 3-3) corresponding to the condition (for example, “bandwidth guarantee: 5 Gbps”) may be assigned to the computing resource 2-1 corresponding to the user A.
  • the allocating unit 1 can determine the communication method to be allocated to the computing resource at various timings.
  • the assigning unit 1 can also change the communication method assigned to the computing resource at various timings. Below, the timing which the allocation part 1 determines a communication system, and the timing which changes a communication system are mentioned as an example, and are demonstrated.
  • FIG. 11 is a flowchart showing an operation when the assignment unit 1 assigns a communication method to the calculation resource 2 when communication using the calculation resource 2 occurs.
  • the allocation unit 1 determines whether communication using the calculation resource 2 has occurred (step S20). Since the operations after step S21 are the same as steps S11 to S13 in FIG. 10, the description thereof is omitted here.
  • FIG. 12 is a flowchart showing an operation when a communication method is assigned to a calculation resource corresponding to a user who uses the service when a service using the calculation resource 2 is started.
  • the assigning unit 1 determines whether or not a service using the calculation resource 2 has started (step S30). Since the operations after step S31 are the same as steps S11 to S13 in FIG. 10, the description thereof is omitted here.
  • FIG. 13 shows an example in which the allocation unit 1 changes the allocated communication method according to the changed request condition when the user's request condition is changed.
  • the user B to whom the communication method corresponding to the network 3-3 is assigned has upgraded the service, and the guaranteed communication bandwidth has increased.
  • the identification unit 11 monitors whether or not the request condition of the user who uses the computing resource 2 has been changed (step S40). For example, the identification unit 11 monitors the user DB 14 at a predetermined cycle.
  • the user DB 14 is updated by the operator of the communication system. For example, as illustrated in FIG. 15, when the bandwidth guarantee, which is a requirement, increases from “5 Gbps” to “10 Gbps” by the user B paying an additional fee, the user DB 14 is updated by the operator of the communication system. Is done.
  • the identification unit 11 recognizes the update of the request condition in the user DB 14 by, for example, periodically monitoring the user DB 14. For example, the identification unit 11 may recognize the update of the request condition by a message notified from the computing resource 2 to the allocation unit 1.
  • control unit 12 refers to the policy DB 13 and determines a communication method corresponding to the changed request condition (step S41).
  • the control unit 12 assigns the determined communication method to the calculation resource (step S42).
  • FIG. 16 shows the result of changing the communication method assigned to the computing resource 2-2 corresponding to the user B as described above.
  • the communication method assigned to the computing resource 2-2 corresponding to the user B is changed to the communication method (communication method corresponding to the network 3-1) corresponding to the changed request condition (bandwidth guarantee: 10 Gbps). Is done.
  • FIG. 17 shows an example when a request for changing the communication method assigned to the computing resource 2-2 corresponding to the user B from the communication method corresponding to the network 3-3 to another communication method is generated.
  • the system administrator responds to the user B with respect to the assigning unit 1. It is conceivable to issue a request to change the communication method assigned to the computing resource 2-2.
  • the user B may issue a request for changing the communication method. .
  • the identification unit 11 identifies whether a change request has occurred for a certain communication (step S50).
  • the change request is notified, for example, by a packet or message from the computing resource 2 to the allocation unit 1.
  • an administrator or an operator who manages the system can notify the allocation unit 1 of a change request.
  • step S51 determines whether to permit the change request. If the control unit 12 does not permit the change request, the operation is terminated (step S51: Yes). In determining whether or not a change request can be made, for example, the control unit 12 may decide according to some policy, or a network operator may decide. If the system administrator or operator requests a change, step S51 may be omitted.
  • control unit 12 assigns the communication method requested for assignment to the user B (step S52).
  • control unit 12 can change the policy of the policy DB 13 according to the content of the change request.
  • the third embodiment it is possible to start network allocation or dynamically change the allocated network at various timings. As a result, the system can be operated more flexibly.
  • FIG. 19 shows a configuration example of the fourth embodiment.
  • the system of the fourth embodiment includes a computing resource 2, a network 3, a control device 4, and a packet processing device 5. Since the computing resource 2 and the network 3 are the same as those in the first, second, and third embodiments, detailed description thereof is omitted.
  • the packet processing device 5 allocates a communication method corresponding to each network 3 to a calculation resource corresponding to each user, similarly to the allocation unit 1 in the first, second, and third embodiments. The difference between the packet processing device 5 and the assigning unit 1 is that the packet processing device 5 is controlled by the control device 4.
  • the control device 4 determines a communication method to be assigned to each calculation resource with reference to the policy DB and the user DB as in the assignment unit 1 in the first, second, and third embodiments, and performs packet processing. Notify the device.
  • FIG. 20 shows a configuration example of the control device 4.
  • the control device 4 includes a control unit 41, a communication unit 42, a policy DB 43, and a user DB 44.
  • the communication unit 42 is an interface that performs communication with the packet processing device 5.
  • the control unit 41 has substantially the same function as the control unit 12 of the allocation unit 1 in the above-described embodiment. That is, the control unit 42 refers to the policy DB 43 and the user DB 44 for the calculation resource corresponding to the communication via the packet processing device 5 and determines which network is assigned the communication method.
  • FIG. 21 shows an example of information stored in the policy DB 43.
  • the policy DB 43 stores a communication method to be assigned according to the request condition.
  • the control unit 42 can assign a communication method according to a user's request condition by referring to FIG. 21A and a user DB 44 of FIG. 22 described later.
  • the policy DB 43 may store which communication method is supported for each port of each packet processing device.
  • the port of each packet processing device is connected to the network 3. That is, each port of each packet processing device corresponds to the communication method of the connected network 3, and the user DB 44 illustrated in FIG. 21B manages the correspondence between each port and the communication method. .
  • a port included in the packet processing device corresponding to the ID is associated with a communication method corresponding to the port.
  • the control unit 42 can specify which port corresponds to the assigned communication method by referring to the information in FIG. Then, the control unit 42 can notify the packet processing device 5 which port corresponds to the communication address with reference to the user DB 44 illustrated in FIG.
  • FIG. 22 shows an example of information stored in the user DB 44.
  • the user DB 44 is the same as that in the first to third embodiments described above, and a detailed description thereof will be omitted.
  • FIG. 23 shows a configuration example of the packet processing device 5.
  • the packet processing device 5 includes a network communication unit 51, a control device communication unit 52, and a packet transfer table 53.
  • the network communication unit 51 communicates with the computing resource 2 and the network 3 with reference to a packet transfer table 53 described later.
  • the control device communication unit 52 stores information in the packet transfer table 53 in accordance with the notification from the control device 4.
  • the control device 4 notifies the control device communication unit 52 of the packet transfer port corresponding to the communication address corresponding to the calculation resource in accordance with the determined assignment of the calculation resource and the communication method.
  • the control device communication unit 52 stores the information illustrated in FIG. 24 in the packet transfer table 53, for example.
  • the packet transfer table 53 stores a communication address included in a packet and a port (packet transfer port) that transfers the packet in association with each other.
  • the network communication unit 51 transfers the packet received from each calculation resource from the port corresponding to the communication method assigned to each calculation resource according to the packet transfer table 53 illustrated in FIG.
  • the packet transfer table 53 stores a communication address corresponding to each calculation resource and a port number corresponding to the communication method assigned to each calculation resource.
  • the communication method assigned to the computing resource 2-1 having the communication address “A” corresponds to the port number “1” of the packet processing device 5.
  • the network communication unit 51 transfers the received packet having the transmission source address “A” from the port “1” according to the table illustrated in FIG. By the operation of the network communication unit 51, the packet transmitted from each calculation resource is transferred to the network corresponding to the communication method assigned to each calculation resource.
  • the user starts communication using the calculation resource 2 (step S61).
  • a case where user A uses communication resource 2-1 and communication A occurs will be described as an example.
  • the communication address of the calculation resource 2-1 is “A”.
  • the network communication unit 51 of the packet processing device 5 identifies the communication address included in the received packet of communication A. In the above example, the network communication unit 51 identifies that the communication address included in the received packet of communication A is A.
  • the network communication unit 51 refers to the packet transfer table 53 and determines whether or not a packet transfer port is assigned to the communication address A (step S62). For example, the network communication unit 51 determines whether a packet transfer port is assigned to the communication address A based on whether an entry corresponding to the communication address A exists in the packet transfer table 53.
  • control device communication unit 52 requests the control device 4 to assign a packet transfer port to the communication address “A”. Is transmitted (step S63).
  • the control unit 41 of the control device 4 When receiving the allocation request, the control unit 41 of the control device 4 refers to the policy DB 43 and the user DB 44 and sets the communication method corresponding to the network 3-1 to the computing resource 2-1 corresponding to the communication address A.
  • the allocation is determined (step S64). Since the operation related to the allocation of the control unit 41 is performed in substantially the same manner as the control unit 12 of the allocation unit 1 described above, detailed description thereof is omitted.
  • the control unit 41 determines to allocate a communication method corresponding to the network 3-1 to the computing resource 2-1, the packet transfer port corresponding to the communication address A is “1” for the packet processing device 5. Notify that.
  • the packet processing device 5 updates the packet transfer table 53 according to the notification from the control unit 41.
  • the network communication unit 51 refers to the packet transfer table 53 and transfers the packet transmitted from the computing resource 2-1 from the port 1 corresponding to the network 3-1 (step S65).
  • the network communication unit 51 refers to the packet transfer table 53 and transfers the packet (No in step S62).
  • the control device 4 determines the allocation of the communication method to the computing resource, and sets the corresponding communication address A and packet transfer port for the packet processing device 5. May be. In this case, for example, without performing the above-described steps S61 to S63, the control device 4 determines the assignment of the communication method to the calculation resource and sets it in the packet processing device 5. In this case, an administrator, an operator, or the like who manages the control device 4 can appropriately set the communication method assignment in the packet processing device 5 in consideration of the user status, the network status, and the like.
  • the fourth embodiment is implemented using a technique called OpenFlow having a centralized control type architecture. Since the basic configuration is substantially the same as that of the fourth embodiment, the description of the same configuration or operation will be omitted as appropriate.
  • OpenFlow recognizes communication as an end-to-end flow and performs path control, failure recovery, load balancing, etc. in units of flows.
  • a flow is a series of communication packet groups having predetermined attributes, for example.
  • FIG. 26 shows a configuration example of a communication system according to the fifth embodiment.
  • the control device 4 operates as an OpenFlow controller 400 (hereinafter, OFC 400), and the packet processing device 5 operates as an OpenFlow switch 500 (hereinafter, OFS 500).
  • OFC 400 is an information processing apparatus that controls the OFS 500. It is assumed that communication belonging to the flow A is performed from the computing resource 2-1 used by the user A. Similarly, communication belonging to the flow B is performed from the calculation resource 2-2 used by the user B, and communication belonging to the flow C is performed from the calculation resource 2-3 used by the user C.
  • FIG. 27 shows a configuration example of the OFC 400.
  • the OFC 400 includes a control unit 401, a communication unit 402, a policy DB 403, and a user DB 404. Since the above configuration is substantially the same as that of the control device 4 in the fourth embodiment, a detailed description thereof is omitted.
  • FIG. 28 shows a configuration example of the OFS 500.
  • the OFS 500 includes a network communication unit 501, an OFC communication unit 502, and a flow table 503.
  • the network communication unit 501 is connected to the computing resource 2 and the network 3 and performs processing related to the received packet with reference to a flow table 503 described later.
  • the OFC communication unit 502 stores information in the flow table 503 according to the notification from the OFC 400.
  • the OFC 400 notifies the OFC communication unit 502 of information illustrated in FIG. 29 according to the determined allocation of the calculation resource and the communication method. Note that FIG. 29 will be described in detail later.
  • the OFC communication unit 502 stores the information illustrated in FIG. 29 in the flow table 503, for example.
  • FIG. 29 shows a configuration example of each entry (flow entry) in the flow table 503.
  • the flow entry includes a field (Match Fields) for collating with information (for example, destination IP address, VLAN ID, etc.) of the packet received by the OFS 500, and a field (Action) for a packet matching the matching rule (Action) Instruction).
  • the flow entry may include a field (Priority) indicating the priority of the flow entry and a field (Counters) indicating statistical information for each packet flow.
  • the flow entry may have a field (Timeouts) indicating the expiration date (time) of the flow entry and the time until expiration, and a field (Cookie) arbitrarily set by the OFC 400.
  • one flow entry corresponds to one flow, but a plurality of flows are handled by one flow entry by setting a wild card in a part of the match field (for example, destination IP address). It is also possible.
  • this flow table 503 will be described more specifically.
  • an entry whose match field is “A” in the flow table 503 corresponds to a flow transmitted from the user A (that is, the calculation resource 2-1).
  • the match field is described as “A” for simplification, but this flow is, for example, a source IP address, a destination IP address, a source MAC address, a destination MAC address, a VLAN ID, and the like.
  • the match field “A” represents that the transmission source address of the packet is a communication address of a computing resource corresponding to the user A.
  • an entry whose match field is “B” corresponds to a flow from user B
  • an entry whose match field is “C” corresponds to a flow from user C.
  • a processing method of “transfer from port 1” is described in Instructions of the flow from the user A. This indicates the processing content that the OFS 500 transfers the packet with the match field “A” from the port 1. For example, when the communication method assigned to the computing resource corresponding to user A is assumed to correspond to port 1, OFS 500 is assigned to the computing resource corresponding to user A by the processing method "transfer from port 1". Packets can be transferred to networks with different communication methods.
  • Instructions include other processing methods such as “transfer the received packet from a predetermined port”, “discard the received packet”, “one of the headers of the received packet”. The data is rewritten and transferred from a predetermined port ”.
  • the user uses the calculation resource 2 to start communication (step S71).
  • the user A starts communication using the flow A using the calculation resource 2-1 will be described as an example.
  • the network communication unit 501 of the OFS 500 refers to the flow table 503 for the received flow A packet, and searches for a flow entry that matches the header information of the received packet (step S72). For example, if the match field corresponding to the flow A is “A”, the network communication unit 501 searches the flow table 503 for an entry having the match field A.
  • step S72 if there is no flow entry matching the flow A, the OFC communication unit 502 inquires of the OFC 400 about processing to be performed on the flow A (step S73).
  • the control unit 401 of the OFC 400 Upon receiving this inquiry, the control unit 401 of the OFC 400 refers to the policy DB 403 and the user DB 404 and decides to assign a communication method corresponding to the network 3-1 to the calculation resource of the user A (flow A). (Step S74). Since the operation related to the assignment of the control unit 401 is performed in substantially the same manner as the control unit 41 of the fourth embodiment, detailed description thereof is omitted. Next, the control unit 401 sets a flow entry corresponding to the determined communication method assignment. That is, the control unit 401 performs setting for the OFS 500 to transfer the packet of the flow A from the port corresponding to the network 3-1. In this way, the OFC 400 can set the OFS 500 to allocate the network 3-1 to the user A.
  • the OFS 500 updates the flow table 503 according to the setting from the OFC 400.
  • the processing method that specifies that the packet is transferred from the port 1 corresponding to the network 3-1 is set in the flow entry whose match field corresponding to the flow A is A. Is done.
  • the OFS 500 transfers the received packet from the port 1 in accordance with the updated flow table 503 (step S75).
  • step S72 if a flow entry for flow A is found, OFS 500 transfers the received packet from port 1 without inquiring of the processing content from OFC 400 (step S72: No).
  • the OFC 400 may determine the allocation of the communication method to the computing resource and set the corresponding flow entry for the OFS 500.
  • the OFC 400 determines the assignment of the communication method to the computing resource, and sets the flow entry corresponding to the determined assignment of the communication method in the OFS 500. May be.
  • an administrator, an operator, or the like who manages the OFC 400 can appropriately set a flow entry corresponding to the network assignment in the OFS 500 in consideration of the user status, the network status, and the like.
  • OpenFlow As described above, the application example using OpenFlow has been described. However, any system other than OpenFlow can be applied to a system having a centralized control architecture.
  • the system of the sixth embodiment includes a control device 4, a virtual switch (vSwitch) 101, a server 100, a physical switch 110, and a virtual machine (VM) 102, as shown in FIG.
  • vSwitch virtual switch
  • server 100 a physical switch
  • VM virtual machine
  • the virtual switch 101 is a network switch configured by software that operates on the server 100.
  • the virtual switch 101 has a function corresponding to the packet processing device 5 of the fourth embodiment or the OFS 500 of the fifth embodiment. That is, the virtual switch 101 processes the packet based on the control by the control device 4.
  • the virtual switch 101 is located at, for example, an end point (edge) of a network constituted by the physical switches 110.
  • a virtual machine (VM) 102 which is a computer configured by software, operates.
  • the VM 102 communicates with other VMs 102 via the virtual switch 101.
  • the VM 102 has a function corresponding to the calculation resource 2 of the other embodiment.
  • the VM 102 communicates with other VMs 102 via a network via the physical switch 110 (underlay network) or a virtual network (overlay network) constructed on the physical switch 110.
  • the network (underlay network) is constructed based on a communication method such as IPv4 or IPv6 as described above.
  • the virtual network is constructed based on a communication method such as VLAN, L2TP, Ethernet / IP, GRE, NVGRE, and IPsec as described above. These networks correspond to the network 3 of the other embodiments.
  • the control device 4 has a function corresponding to the control device 4 of the fourth embodiment or the OFC 400 of the fifth embodiment. That is, the control device 4 determines which communication method is assigned to the communication from the VM 102.
  • the virtual switch 101 processes the packet in accordance with the processing rule notified from the control device 4.
  • the server 100 is located, for example, at the end (edge) of the network constituted by the physical switches 110.
  • the control device 4 controls the operation of the virtual switch 101 existing at the edge of the network.
  • FIG. 32 An example of communication operation between the VMs 102 will be described with reference to FIG. In the example of FIG. 32, an example is illustrated in which the VM 102A and the VM 102B communicate with the VM 102C and the VM 102D via the virtual switch 101A.
  • the virtual switch 101A has a port 1011A, a port 1011B, and a port 1011C.
  • the virtual switch 101B has a port 1021A, a port 1021B, and a port 1021C.
  • each port is connected to a network of a different communication method.
  • the port 1011A is connected to the network 121.
  • the port 1011B is connected to the network 122.
  • the port 1011C is connected to the network 123.
  • the network 121, the network 122, and the network 123 may be constructed based on different communication methods.
  • the communication method is assigned to the VM 102
  • communication is performed by an operation according to each communication method.
  • the virtual switch 101A adds a VLAN tag to the packet from the VM 102A assigned to the network 121 and transfers the packet to the network 121.
  • the control device 4 notifies the virtual switch 101A of a processing rule that stipulates that a VLAN tag corresponding to the network 121 is added to the packet from the VM 102A. For example, when the virtual switch 101A receives a packet from the VM 102A, the virtual switch 101A attaches a VLAN tag corresponding to the network 121 to the packet and transfers the packet in accordance with an instruction from the control device 4.
  • the load on the control device 4 can be suppressed by the configuration in which the control device 4 controls only the virtual switch 101A. Further, a centralized control type network by the control device 4 can be introduced without replacing the existing equipment (for example, the physical switch 110) of the communication system.
  • a communication system comprising: allocation means for allocating at least one communication method from a plurality of communication methods to the calculation resource based on a request condition relating to a service provided to the user via the calculation resource.
  • the network corresponding to the plurality of communication methods includes a first network and a second network that requires packet processing according to the communication method in addition to the processing required for communication using the first network,
  • the communication system according to claim 1 or 2 wherein the allocating unit allocates a communication method corresponding to the first network to the computing resource when a communication method corresponding to the second network does not satisfy the requirement.
  • the network corresponding to the plurality of communication methods includes a physical network and a virtual network constructed on the physical network,
  • the allocating unit can allocate a communication method corresponding to the virtual network to the computing resource when a communication method corresponding to the physical network does not satisfy the requirement.
  • the allocating unit allocates at least one communication method from a plurality of communication methods to the computing resource according to the request condition and a communication status of a network corresponding to the plurality of communication methods.
  • the communication system according to one.
  • the communication system is: Determining a communication method to be allocated to the computing resource, and comprising a control device for notifying the determined communication method to the allocating means, The communication system according to any one of Embodiments 1 to 9, wherein the assigning means assigns at least one communication method from the plurality of communication methods to the computing resource in accordance with the notification.
  • a node comprising: allocating means for allocating at least one communication method from a plurality of communication methods to the calculation resource based on a request condition relating to a service provided to the user via a calculation resource assigned to the user
  • the network corresponding to the plurality of communication methods includes a first network and a second network that requires packet processing according to the communication method in addition to the processing required for communication using the first network,
  • the network corresponding to the plurality of communication methods includes a physical network and a virtual network constructed on the physical network,
  • the assignment unit can assign a communication method corresponding to the physical network to the computing resource when a communication method corresponding to the virtual network does not satisfy the required condition.
  • the listed node The listed node.
  • the allocation unit allocates at least one communication scheme from a plurality of communication schemes to the computing resource according to the request condition and a communication status of a network corresponding to the plurality of communication schemes. Node described in 1.
  • Allocating means for allocating at least one communication scheme from a plurality of communication schemes to the computing resource based on a request condition relating to a service provided to the user via a computing resource allocated to the user;
  • a notification means for notifying the node connected to the computing resource of the assigned communication method;
  • Control device including.
  • the network corresponding to the plurality of communication methods includes a first network and a second network that requires packet processing according to the communication method in addition to the processing required for communication using the first network,
  • the network corresponding to the plurality of communication methods includes a physical network and a virtual network constructed on the physical network,
  • the allocating unit can allocate a communication method corresponding to the physical network to the computing resource when a communication method corresponding to the virtual network does not satisfy the required condition.
  • the allocation means allocates at least one communication scheme from a plurality of communication schemes to the computing resource according to the request condition and the communication status of the network corresponding to the plurality of communication schemes.
  • the control device according to any one of forms 20 to 23.
  • a communication method comprising the step of allocating at least one communication method from a plurality of communication methods to the calculation resource based on a request condition relating to a service provided to the user via a calculation resource assigned to the user.
  • Form 30 Allocating at least one communication scheme from a plurality of communication schemes to the computing resource based on a requirement regarding a service provided to the user via a computing resource allocated to the user; Informing the node connected to the computing resource of the assigned communication method; Including a communication method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

 仮想ネットワークを構築するために、パケットのカプセル化等の通信処理が要求される場合がある。仮想ネットワークを利用する場合、仮想ネットワーク構築のための追加的な通信処理のため、物理ネットワークを直接利用する場合と比較して、通信性能や通信品質が劣る可能性がある。本発明による通信システムは、ユーザに割り当てられる計算資源と、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段と、を含むことを特徴とする。

Description

通信システム、ノード、制御装置、通信方法およびプログラム
 (関連出願についての記載)
 本発明は、日本国特許出願:特願2013-007238(2013年1月18日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、通信システム、ノード、制御装置、通信方法およびプログラムに関し、受信するパケットの処理を行う通信システム、ノード、制御装置、通信方法およびプログラムに関する。
 近年、物理ネットワーク上に互いに隔離された複数のネットワークを論理的に構成する技術が提案されている。以下では、論理的に構成されたネットワークのことを、仮想ネットワーク(virtual network)と呼称する。また、あるネットワークA上に仮想ネットワークBを構築する場合、ネットワークAはアンダーレイネットワーク(Underlay Network)、仮想ネットワークBはオーバレイネットワーク(Overlay Network)と呼称されることもある。
 特許文献1には、VLAN(Virtual Local Area Network)により、データセンタ(DC:Data Center)に仮想ネットワークを構築する技術が記載されている。例えば、特許文献1では、データセンタ(DC)に顧客毎の仮想テナントを構築するために、VLANを用いて仮想テナント毎のネットワークセグメントが作成される。
 特許文献2には、コンピュータシステムにおいて、サービス提供サーバの負荷分散を行う技術が開示されている。
WO2012/035861 A1 特開2011-170718号公報
 仮想ネットワークを構築するために、パケットのカプセル化等の通信処理が要求される場合がある。仮想ネットワークを利用する場合、仮想ネットワーク構築のための追加的な通信処理のため、物理ネットワークを直接利用する場合と比較して、通信性能や通信品質が劣る可能性がある。
 特許文献1では、仮想ネットワークを構築するためにVLANを用いることが開示されているが、仮想ネットワークの構築による通信性能や通信品質低下を抑止する技術は開示がない。
 特許文献2には、サービス提供サーバの負荷分散を行う技術が開示されているが、仮想ネットワークの構築による通信性能や通信品質低下を抑止する技術は開示がない。
 本発明の目的は、上述した課題を解決することが可能な、通信システム、ノード、制御装置、通信方法およびプログラムを提供することにある。
 本発明による通信システムは、ユーザに割り当てられる計算資源と、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段とを備える。
 本発明によるノードは、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する識別手段と、前記要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段とを備える。
 本発明による制御装置は、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段と、前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する通知手段とを備える。
 本発明による通信方法は、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別するステップと、前記要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てるステップとを含む。
 本発明による通信方法は、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てるステップと、前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知するステップとを含む。
 本発明によるプログラムは、ユーザに割り当てられる計算資源に接続するノードに対して、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する処理と、前記要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる処理とを実行させる。
 本発明によるプログラムは、ノードの制御を行う制御装置に対して、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる処理と、前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する処理とを実行させる。
 本発明によれば、ユーザに対して、ユーザの要求条件を満足する性能の通信環境を提供することが可能となる。
第1の実施形態による通信システムの構成例を示した図である。 第1の実施形態による通信システムの構成例を示した図である。 第1の実施形態による割り当て部1が保持する情報の例を示した図である。 第1の実施形態による計算資源と通信方式の割り当て方の例を示した図である。 第2の実施形態による通信システムの構成例を示した図である。 第2の実施形態におけるネットワークと通信方式の対応関係の例を示した図である。 第2の実施形態による割り当て部1の構成例を示した図である。 第2の実施形態によるユーザDB14の例を示した図である。 第2の実施形態によるポリシDB13の例を示した図である。 第2の実施形態による動作の流れを示すフローチャートである。 第3の実施形態による動作の流れを示すフローチャートである。 第3の実施形態による動作の流れを示すフローチャートである。 第3の実施形態による計算資源と通信方式の割り当て方の例を示した図である。 第3の実施形態による動作の流れを示すフローチャートである。 第3の実施形態によるユーザDB14の更新の様子を示した図である。 第3の実施形態による計算資源と通信方式の割り当て方の例を示した図である。 第3の実施形態による計算資源と通信方式の割り当て方の例を示した図である。 第3の実施形態による動作の流れを示すフローチャートである。 第4の実施形態による通信システムの構成例を示した図である。 第4の実施形態による制御装置4の構成例を示した図である。 第4の実施形態によるポリシDB43の例を示した図である。 第4の実施形態によるユーザDB44の例を示した図である。 第4の実施形態によるパケット処理装置5の構成例を示した図である。 第4の実施形態によるパケット転送テーブル53の例を示した図である。 第4の実施形態による動作の流れを示すフローチャートである。 第5の実施形態による通信システムの構成例を示した図である。 第5の実施形態によるOFC400の構成例を示した図である。 第5の実施形態によるOFS500の構成例を示した図である。 第5の実施形態によるフローテーブル503の例を示した図である。 第5の実施形態による動作の流れを示すシーケンスチャートである。 第6の実施形態による通信システムの構成例を示した図である。 第6の実施形態による通信システムの構成例を示した図である。
 以下、図面を参照して本発明の実施形態について詳細に説明する。
 [第1の実施形態]
 (概要)
 本発明の第1の実施形態の概要について説明する。第1の実施形態では、計算資源を介してユーザに提供されるサービスに関する要求条件に基づいて、計算資源に対して、複数の通信方式から少なくとも1つの通信方式を割り当てる。このような処理により、サービスに関する要求条件に応じた通信方式で通信を行うことが可能となる。
 (詳細)
 以下、本発明の第1の実施形態について説明する。第1の実施形態による通信システムの構成は、例えば、図1に示す通りである。図1によれば、通信システムは、割り当て部1、計算資源2、ネットワーク3を含む。図1の例では、計算資源2は、計算資源2-1、計算資源2-2、計算資源2-3を含む。また、ネットワーク3は、ネットワーク3-1、ネットワーク3-2、ネットワーク3-3を含む。以降、個別の計算資源を区別しない場合には、計算資源2-1、2-2、2-3を計算資源2と総称する。同様に、個別のネットワークを区別しない場合には、ネットワーク3-1、3-2、3-3をネットワーク3と総称する。また、通信システムは、例えば、データセンタ(Data Center)である。
 ネットワーク3は、通信方式が異なるネットワークを含む。例えば、ネットワーク3-1とネットワーク3-2とは、それぞれ異なる通信方式のネットワークであってもよい。ここで、通信方式とは、例えば、Ethernet(登録商標)などを始めとする通信プロトコルであってもよい。また、VLAN(Virtual Local Area Network)や、L2TP(Layer 2 Tunneling Protocol)、Ethernet IP等の仮想ネットワークを構築する通信プロトコルであってもよい。つまり、通信システムは、複数の通信方式によってネットワーク3を構築可能である。通信システムは、例えば、上述の複数の通信方式によって仮想ネットワーク環境を構築することが可能である。
 計算資源2は、例えばサーバやコンピュータ上で行われる処理を行うためのリソースであり、あるユーザに割り当てられているものとする。ユーザは、割り当てられた計算資源2を介してサービスを利用する。図1の例では、ユーザAは計算資源2-1を、ユーザBは計算資源2-2を、ユーザCは計算資源2-3を、それぞれ利用しているものとする。例えば、ユーザは、割り当てられた計算資源2を用いて、あるサービスに対応するアプリケーションを実行することで、サービスを利用することができる。図1の例では、ユーザが計算資源2を用いて利用するサービスに関する通信が、ネットワーク3に対して発生している。
 割り当て部1は、計算資源2を介して提供されるサービスに関する要求条件に応じて、複数の通信方式から少なくとも1つの通信方式を計算資源に割り当てる。つまり、割り当て部1は、要求条件に基づいて、通信方式が異なる複数のネットワーク3の少なくとも1つを計算資源に割り当てる。割り当て部1は、例えば、通信システム上に設けられたノードに備えられる。
 図2に、割り当て部1の動作の概要を示す。図2の例では、計算資源2-1から通信A、計算資源2-2から通信B、計算資源2-3から通信Cが、それぞれ発生している。図2の例では、割り当て部1は、ユーザAに対応する計算資源2-1に、ネットワーク3-1に対応する通信方式を割り当てている。計算資源2-1は、割り当てに従い、ネットワーク3-1に対応する通信方式により通信(図2の通信A)を行う。
 割り当て部1は、例えば、図3に示すような情報を保持している。図3(A)は、各ユーザに割り当てられた計算資源と、要求条件との対応関係を示している。例えば、ユーザAに割り当てられた計算資源2-1は、要求条件「A」に対応する。
 図3(B)は、要求条件に応じて割り当てる通信方式を示している。例えば、要求条件「A」に対しては、ネットワーク3-1に対応する通信方式(1)が割り当てられる。
 ここで、要求条件とは、例えば、SLA(Service Level Agreement)であり、ユーザごとに定められている。ユーザは、例えば、要求条件に対応した料金を通信システムのオペレータに支払うことにより、料金に応じた条件でサービスを受けることができる。具体的には、ユーザに対して保証されている通信帯域やスループット、回線速度、ネットワーク内の平均遅延時間、通信量の上限、ネットワーク内の平均遅延時間、稼働率、パケットロス率などがSLAの例として挙げられる。
 なお、割り当て部1は、図3(B)の例示のように要求条件と通信方式との対応関係に関する情報を保持しなくてもよい。例えば、割り当て部1は、要求条件で要求される性能値(例えば、スループット)と、複数の通信方式の各々に対応する性能値とを比較し、複数の通信方式のうち、要求条件を満たす通信方式を計算資源に割り当てる。例えば、割り当て部1は、要求条件を満たす通信方式のうち、最も良い性能値を達成できる通信方式を計算資源に割り当てる。割り当て部1は、例えば、通信方式毎に、通信帯域やスループット等の性能値を保持しているものとする。
 割り当て部1により、例えば、図4に例示したように、計算資源とネットワークとが対応付けられる。例えば、割り当て部1は、計算資源2-1にネットワーク3-1に対応する通信方式(1)を、計算資源2-2にネットワーク3-3に対応する通信方式(3)を、計算資源2-3にネットワーク3-2に対応する通信方式(2)、それぞれ割り当てる。各計算資源は、割り当てられた通信方式に従って通信(図中の通信A、B、C)を行う。
 以上により、第1の実施形態によれば、サービスの要求条件に応じて適切な通信方式が計算資源に割り当てられるので、ユーザに対して、ユーザの要求条件を満足する性能の通信環境を提供することが可能となる。例えば、本発明は、適切な通信方式が計算資源に割り当てられるので、仮想ネットワークにより通信を行う場合であっても、ユーザの要求条件を満足する仮想ネットワーク環境をユーザに対して提供できる。
 [第2の実施形態]
 以下、本発明の第2の実施形態について、図面を用いて説明する。第2の実施形態は、割り当て部1が、ネットワーク3の割り当て方に関するポリシを保持している場合の実施形態である。割り当て部1は、ポリシに従って、計算資源に割り当てる通信方式を決定する。
 図5は、第2の実施形態の構成例を示した図である。なお、基本的な構成は、実施形態1と同様であるので、同じ符号を付したものについては詳細な説明を省略する。
 図5は、割り当て部1、計算資源2、ネットワーク3を含む。計算資源2は、例えば、あるサーバ上で実行されているVM(Virtual Machine)である。図5の例では、計算資源2のそれぞれを用いて、ユーザがアプリケーションを利用しているとする。具体的には、ユーザAは計算資源2-1を用いて、アプリケーションAを利用している。同様に、ユーザBは計算資源2-2を用いてアプリケーションBを、計算資源2-3を用いてアプリケーションCを、それぞれ利用している。また、各アプリケーションの利用によって、各計算資源2から、それぞれ通信が発生している。また、第1の実施形態と同様に、ユーザごとに要求条件が定められているものとする。要求条件は、例えば、第1の実施形態で説明されたSLAである。
 図6は、ネットワーク3の通信方式の例を示している。図6の例では、ネットワーク3-1の通信方式は、VLANである。同様に、ネットワーク3-2の通信方式はL2TP、ネットワーク3-3の通信方式はEthernet IPである。ネットワーク3は、図6の例に示されるように、それぞれ、ある物理ネットワーク上で仮想的なネットワークを構築する通信方式を採用するものであっても良い。また、ネットワーク3の通信方式としては、様々なトンネリングプロトコルを用いることも可能である。例えば、GRE(Generic Routing Encapsulation)や、NVGRE(Network Virtualization using GRE)、IPsec(Security Architecture for Internet Protocol)などを用いても良い。
 ネットワーク3の通信方式は、上述した仮想ネットワーク(オーバレイネットワーク)を構築するものに限らず、物理ネットワーク(アンダーレイネットワーク)を構築するものであっても良い。仮想ネットワークでは、物理ネットワークを利用する場合に加えて、上述したような仮想ネットワークを構築する通信方式に従ったパケット処理が必要となる。例えば、VLANでは、パケットに対してVLANタグを付与する処理が必要となる。また、GREでは、パケットに対してカプセル化を行う必要がある。一方、物理ネットワークでは、仮想ネットワークを構築するために要求されるパケット処理が不要となるため、計算資源による通信に対するオーバヘッドがない。このように、仮想ネットワークを用いる場合には、上述したような追加的な処理によるオーバヘッドが発生するために、仮想ネットワークに対応する通信方式では、要求条件を満たせない可能性があり得る。割り当て部1は、例えば、仮想ネットワークに対応する通信方式では要求条件が満たせない場合、計算資源に対して物理ネットワークに対応する通信方式を割り当てる。
 図7は、第2の実施形態における割り当て部1の構成を示した図である。図7を参照すると、割り当て部1は、識別部11、制御部12、ポリシDB(Data Base)13、ユーザDB14を含む。図7の割り当て部1は、第1の実施形態における割り当て部1(図5)と比較すると、ポリシDB13およびユーザDB14が含まれている点で異なる。
 ユーザDB14は、例えば、図8に示すように、ユーザに割り当てられた計算資源に対応する要求条件と、各計算資源2の通信アドレスを記憶している。図8では、要求条件が「帯域保証」である場合のユーザDB14を示している。図8の例では、ユーザDB14には、例えば、ユーザAに対応する計算資源2-1の通信アドレスはAであり、ユーザAの要求条件は、10Gbpsの帯域保証であることが記憶されている。ここで、通信アドレスとは、例えば、送信元MAC(Media Access Control)アドレスや、送信元IPアドレスである。計算資源は、例えばサーバ上で稼動しているが、通信アドレスは、例えば、そのサーバに対応するMACアドレスやIPアドレスである。
 ポリシDB13は、例えば、図9に例示されるポリシを保持している。図9は、要求条件が「帯域保証」である場合に、割り当てる通信方式を定めたポリシである。例えば、10Gbpsの帯域が保証されたユーザに対応する計算資源に対して、制御部12は、10Gbpsの帯域が保証可能な通信方式を割り当てる。
 また、要求条件は1つの種類に限られるものではなく、複数種類の要求条件を組み合わせても良い。例えば、帯域保証が10Gbpsかつ、通信量の上限が1日あたり500GBという要求条件も考えられる。さらに、ポリシDB13に設定するポリシは、上述の2つに限られるものではない。例えば、ユーザに対して保証されているネットワーク内の平均遅延時間、稼働率、パケットロス率などに応じて、割り当てる通信方式を決定するようなポリシでも良い。
 続いて、割り当て部1の動作を、図10のフローチャートを用いて説明する。まず、識別部11は、ユーザに対応する計算資源と要求条件を識別する(ステップS11)。例えば、識別部11は、受信パケットに含まれる通信アドレスに対応する通信アドレスを有する計算資源を、図8に例示されたユーザDB14から検索する。また、識別部11は、図8に例示されたユーザDB14から、検索されたユーザに対応する要求条件を特定する。例えば、受信パケットに通信アドレス「A」が含まれている場合、識別部11は、受信パケットはユーザAに対応する計算資源2-1からのパケットであることを識別する。この場合、識別部11は、ユーザAに対応する要求条件が、10Gbpsの帯域を保証するものであることを特定する。
 次に、制御部12は、ポリシDB13を参照して、識別部11が特定した要求条件に対応する通信方式を決定する(ステップS12)。例えば、識別部11は、図8に例示されたユーザDB14から、ユーザAに対応する要求条件(「帯域保証:10Gbps」)を識別したものとする。この場合、制御部12は、図9に示すポリシDB13を参照して、ユーザAに対応する要求条件(「帯域保証:10Gbps」)に従って、10Gbpsの帯域が保証可能な通信方式(1)を計算資源2-1に割り当てることを決定する。
 続いて、制御部12は、ステップS12で決定した通信方式を、計算資源に割り当てる(ステップS13)。
 計算資源に対して通信方式が割り当てられた後は、各々の通信方式に準じた動作により、通信が行われる。制御部12は、例えば、割り当てられた通信方式が、仮想ネットワークを構築するものである場合には、仮想ネットワークを介した通信を行うために必要な、カプセル化やタグの付与といった処理を行う。より具体的には、制御部12は、通信方式がVLANであるネットワーク3-1に割り当てられた計算資源2-1からのパケット(通信A)に対しては、VLANタグを付与して、ネットワーク3-1に転送する。また、割り当てられた通信方式がEthernetである場合には、制御部12は、FCS(Frame Check Sequence)フィールドに、宛先アドレス、送信元アドレス、長さ/タイプ、データの各フィールドから計算したCRC(Cyclic Redundancy Check)値を設定する。なお、このようなEthernetを用いる場合の処理は、割り当てられた通信方式がEthernetの場合だけでなく、Ethernet上に別の通信方式を用いて仮想ネットワークを構築した場合であっても必要となる。
 以上、各計算資源2を利用して1つずつのアプリケーションが実行されている例を示したが、各計算資源2において、複数のアプリケーションが同時に実行されて、それぞれが別々の通信を発生させても良い。この場合、割り当て部1は、計算資源2を利用して起動する複数のアプリケーションに対して、同一の通信方式、もしくは、個別に通信方式を割り当てても良い。
 また、制御部12は、ポリシDB13のポリシに加えて、ネットワーク3のそれぞれの通信状況を考慮して、ネットワークの割り当てを行っても良い。例えば、10Gbpsの帯域が保証可能な通信方式(1)が割り当てられているユーザAであっても、通信方式(1)に対応するネットワーク3-1が輻輳している場合には、他の要求条件(例えば「帯域保証:5Gbps」)に対応する通信方式(例えば、ネットワーク3-3に対応する通信方式)をユーザAに対応する計算資源2-1に割り当てても良い。
 以上により、第2の実施形態によれば、ユーザの要求条件に応じて適切な通信方式のネットワークを用いた通信が可能となる。
 [第3の実施形態]
 次に、本発明の第3の実施形態について、図面を参照して説明する。第3の実施形態による割り当て部1は、様々なタイミングで、計算資源に対して割り当てる通信方式を決定することが可能である。また、割り当て部1は、様々なタイミングで、計算資源に対して割り当てる通信方式を変更することも可能である。以下では、割り当て部1が通信方式を決定するタイミングと、通信方式を変更するタイミングについて例を挙げて説明する。
 (通信方式の割り当てを開始する際の動作)
 図11は、計算資源2を利用した通信が発生した場合に、その計算資源2に対して、割り当て部1が通信方式の割り当てを行う際の動作を示したフローチャートである。この場合、割り当て部1は、計算資源2を利用した通信が発生したかどうかを判定する(ステップS20)。なお、ステップS21以降の動作は、図10のステップS11からS13と同様であるので、ここでは説明を省略する。
 図12は、計算資源2を利用したサービスが開始した場合に、そのサービスを利用するユーザに対応する計算資源に対して、通信方式を割り当てる際の動作を示したフローチャートである。この場合、割り当て部1は、計算資源2を利用したサービスが開始したかどうかを判定する(ステップS30)。なお、ステップS31以降の動作は、図10のステップS11からS13と同様であるので、ここでは説明を省略する。
 (通信方式の割り当てを変更する場合)
 次に、計算資源に割り当てられている通信方式を変更する場合の例について、説明する。
 図13は、ユーザの要求条件が変更された場合に、割り当て部1が、変更後の要求条件に応じて、割り当てる通信方式を変更する例を示している。図13の例では、ネットワーク3-3に対応する通信方式が割り当てられているユーザBが、サービスのアップグレードを行って、保証可能な通信帯域が上がったとする。
 図14を参照して、この場合の動作について説明する。
 識別部11は、計算資源2を利用するユーザの要求条件が変更されたか否かをモニタする(ステップS40)。例えば、識別部11は、ユーザDB14を所定の周期でモニタする。
 例えば、ユーザが追加の料金を支払うことによりSLAが変更された場合、通信システムのオペレータによりユーザDB14が更新される。例えば、図15に例示されるように、ユーザBが追加の料金を支払うことにより、要求条件である帯域保証が「5Gbps」から「10Gbps」に上がった場合、通信システムのオペレータによりユーザDB14が更新される。識別部11は、例えば、ユーザDB14を定期的にモニタすることで、ユーザDB14における要求条件の更新を認識する。また、例えば、識別部11は、計算資源2から割り当て部1に対して通知されるメッセージにより、要求条件の更新を認識してもよい。
 その後、制御部12は、ポリシDB13を参照して、変更後の要求条件に対応する通信方式を決定する(ステップS41)。制御部12は、決定された通信方式を計算資源に割り当てる(ステップS42)。
 以上のように、ユーザBに対応する計算資源2-2に割り当てる通信方式を変更した結果を、図16に示す。図16では、ユーザBに対応する計算資源2-2に割り当てられる通信方式は、変更後の要求条件(帯域保証:10Gbps)に対応する通信方式(ネットワーク3-1に対応する通信方式)に変更される。
 (変更要求に応じて、割り当てる通信方式を変更する)
 次に、システム管理者やユーザからの通信方式の変更要求に応じて、割り当て部1が、計算資源に対する通信方式の割り当てを変更する例について、説明する。
 図17は、ユーザBに対応する計算資源2-2に割り当てる通信方式を、ネットワーク3-3に対応する通信方式から他の通信方式に変更する要求が発生した場合の例を示している。例えば、システムを管理する管理者やオペレータ等が、メンテナンスや工事等の事情により、ネットワーク3-3を停止する必要がある場合に、システム管理者から割り当て部1に対して、ユーザBに対応する計算資源2-2に割り当てる通信方式を変更する要求を出すことが考えられる。また、ユーザBに現在割り当てられている通信方式よりも、さらに高速なネットワーク3-1に対応する通信方式への変更を希望する場合に、ユーザBが通信方式の変更要求を出すことも考えられる。
 図18を参照して、この場合の動作について説明する。まず、識別部11は、ある通信に関して、変更要求が発生したかどうかを識別する(ステップS50)。変更要求は、例えば、計算資源2から割り当て部1に対するパケットやメッセージにより通知される。また、システムを管理する管理者やオペレータ等が、割り当て部1に対して、変更要求を通知することも可能である。
 次に、変更要求が発生している場合、制御部12は、変更要求を許可するかどうかを決定する(ステップS51)。制御部12が変更要求を許可しない場合には、動作を終了する(ステップS51:Yes)。なお、変更要求の可否を決定するにあたっては、例えば、制御部12が何らかのポリシに従って決めても良いし、ネットワークのオペレータが決定しても良い。また、システム管理者やオペレータが、変更を要求する場合には、ステップS51は省略してもよい。
 ここでは、図17に示すように、ユーザBに割り当てる通信方式を、ネットワーク3-3に対応する通信方式からネットワーク3-1に対応する通信方式に変更する要求が発生したものとする。この場合、制御部12は、ユーザBに対して、割り当てを要求された通信方式を割り当てる(ステップS52)。
 なお、図18には記載していないが、変更要求が許可された場合、制御部12は、変更要求の内容に従い、ポリシDB13のポリシを変更することも可能である。
 以上説明した通り、第3の実施形態によれば、様々なタイミングで、ネットワークの割り当てを開始したり、割り当てられているネットワークを動的に変更したりすることが可能となる。これにより、システムの運用をさらに柔軟に行うことができるようになる。
 [第4の実施形態]
 第4の実施形態では、第1、第2、第3の実施形態を集中制御型のシステムに適用する場合について説明する。
 図19は、第4の実施形態の構成例を示している。図19を参照すると、第4の実施形態のシステムは、計算資源2、ネットワーク3、制御装置4、パケット処理装置5を含む。計算資源2とネットワーク3は、第1、第2、第3の実施形態と同様であるので、詳細な説明は省略する。パケット処理装置5は、第1、第2、第3の実施形態における割り当て部1と同様に、各ユーザに対応する計算資源に対して、各ネットワーク3に対応する通信方式を割り当てる。パケット処理装置5と割り当て部1との違いは、パケット処理装置5は制御装置4によって制御されることである。
 制御装置4は、第1、第2、第3の実施形態における割り当て部1のように、各計算資源に対して割り当てる通信方式を、ポリシDBとユーザDBとを参照して決定し、パケット処理装置に通知する。
 図20に、制御装置4の構成例を示す。制御装置4は、制御部41、通信部42、ポリシDB43、ユーザDB44を含む。通信部42は、パケット処理装置5との間での通信を行うインタフェースである。制御部41は、上述の実施形態における割り当て部1の制御部12とほぼ同様の機能を有する。つまり、制御部42は、パケット処理装置5を介する通信に対応する計算資源に対して、ポリシDB43およびユーザDB44を参照して、どのネットワークに対応する通信方式を割り当てるかを決定する。
 図21に、ポリシDB43が記憶する情報の例を示す。ポリシDB43は、例えば、図21(A)に示すように、要求条件に応じて割り当てる通信方式を記憶しておく。制御部42は、図21(A)および後述する図22のユーザDB44を参照することにより、ユーザの要求条件に応じた通信方式を割り当てることができる。また、ポリシDB43は、例えば、図21(B)に示すように、各パケット処理装置のポートごとに、どの通信方式が対応しているかを記憶しておいても良い。各パケット処理装置のポートは、それぞれネットワーク3と接続している。つまり、各パケット処理装置のそれぞれのポートは、接続しているネットワーク3の通信方式に対応し、図21(B)に例示されたユーザDB44は、各ポートと通信方式との対応関係を管理する。より具体的には、パケット処理装置のIDごとに、当該IDに対応するパケット処理装置が有するポートと、そのポートに対応する通信方式とが対応づけられている。制御部42は、図21(B)の情報を参照することにより、割り当てた通信方式に対応するポートがどれであるかを特定することができる。そして、制御部42は、図22に例示されるユーザDB44を参照して、通信アドレスに対応するポートがどれであるかを、パケット処理装置5に通知することができる。
 図22は、ユーザDB44が記憶する情報の例を示している。なお、ユーザDB44に関しては、上述の第1~第3の実施形態と同様であるので、詳細な説明は省略する。
 図23は、パケット処理装置5の構成例を示している。パケット処理装置5は、ネットワーク通信部51、制御装置通信部52、パケット転送テーブル53を含む。
 ネットワーク通信部51は、後述するパケット転送テーブル53を参照して、計算資源2およびネットワーク3と通信を行う。
 制御装置通信部52は、制御装置4からの通知に従って、パケット転送テーブル53に情報を格納する。制御装置4は、制御装置通信部52に対して、決定した計算資源と通信方式との割り当てに従い、計算資源に対応する通信アドレスに対応するパケット転送ポートを通知する。制御装置通信部52は、パケット転送テーブル53に、例えば、図24で例示された情報を格納する。パケット転送テーブル53は、パケットに含まれる通信アドレスと、当該パケットを転送するポート(パケット転送ポート)とを対応付けて記憶する。
 ネットワーク通信部51は、図24で例示されるパケット転送テーブル53に従って、各計算資源から受信したパケットを、各計算資源に割り当てられた通信方式に対応するポートから転送する。
 パケット転送テーブル53は、各計算資源に対応する通信アドレスと、各計算資源に割り当てられた通信方式に対応するポート番号とを記憶する。例えば、通信アドレスが「A」である計算資源2-1に割り当てられた通信方式は、パケット処理装置5のポート番号「1」に対応するものとする。この場合、ネットワーク通信部51は、図24に例示されたテーブルに従って、送信元アドレスが「A」の受信パケットを、ポート「1」から転送する。このネットワーク通信部51の動作により、各計算資源から送信されたパケットが、各計算資源に割り当てられた通信方式に対応するネットワークへ転送される。
 図25のシーケンスチャートを参照して、第4の実施形態の動作について説明する。
 ユーザは、計算資源2を利用して、通信を開始する(ステップS61)。ここでは、ユーザAが、計算資源2-1を利用して、通信Aが発生した場合を例に挙げて説明する。なお、他の実施形態と同様、計算資源2-1の通信アドレスは「A」であるものとする。
 パケット処理装置5のネットワーク通信部51は、受信した通信Aのパケットに含まれる通信アドレスを識別する。上述の例では、ネットワーク通信部51は、受信した通信Aのパケットに含まれる通信アドレスがAであることを識別する。
 ネットワーク通信部51は、パケット転送テーブル53を参照し、通信アドレスAに対してパケット転送ポートが割り当てられているかどうかを判定する(ステップS62)。ネットワーク通信部51は、例えば、通信アドレスAに対応するエントリがパケット転送テーブル53に存在するか否かにより、通信アドレスAに対してパケット転送ポートが割り当てられているかを判定する。
 ステップS62で、通信アドレスAに対するパケット転送ポートの割り当てが行われていない場合には、制御装置通信部52が、制御装置4に対して、通信アドレス「A」に対してパケット転送ポートの割り当て要求を送信する(ステップS63)。
 制御装置4の制御部41は、この割り当て要求を受信すると、ポリシDB43およびユーザDB44を参照して、通信アドレスAに対応する計算資源2-1に対してネットワーク3-1に対応する通信方式を割り当てることを決定する(ステップS64)。制御部41の割り当てに関する動作は、上述の割り当て部1の制御部12とほぼ同様に行われるので、詳細な説明は省略する。制御部41は、計算資源2-1に対してネットワーク3-1に対応する通信方式を割り当てることを決定すると、パケット処理装置5に対して、通信アドレスAに対応するパケット転送ポートは「1」であることを通知する。
 パケット処理装置5は、制御部41からの通知に従って、パケット転送テーブル53を更新する。ネットワーク通信部51は、パケット転送テーブル53を参照し、計算資源2-1から送信されたパケットを、ネットワーク3-1に対応するポート1から転送する(ステップS65)。
 また、ステップS62で、既に通信アドレスAに対してパケット転送ポートが割り当てられている場合には、ネットワーク通信部51は、パケット転送テーブル53を参照してパケットを転送する(ステップS62:No)。
 また、上述の例では、ユーザが通信を開始した場合の動作について説明したが、第3の実施形態で説明したように、通信方式の割り当てを適宜変更することも可能である。
 さらに、パケット処理装置5からの要求がない場合でも、制御装置4が計算資源に対する通信方式の割り当てを決定して、パケット処理装置5に対して、対応する通信アドレスAとパケット転送ポートを設定しても良い。この場合、例えば、上述のステップS61からステップS63を行わずに、制御装置4が計算資源に対する通信方式の割り当てを決定して、パケット処理装置5に設定する。また、この場合、制御装置4を管理する管理者やオペレータ等が、ユーザの状態やネットワークの状況等を考慮して、適宜通信方式の割り当てをパケット処理装置5に設定することができる。
 (効果)
 以上説明したように、第4の実施形態では、パケット処理装置5を制御装置4によって制御する場合の例を示した。集中制御型のアーキテクチャを採用することで、パケット処理装置5が多数ある場合であっても、制御装置4を用いることで、柔軟な制御を行うことが可能となる。
 [第5の実施形態]
 次に、本発明の第5の実施形態について説明する。第5の実施形態は、第4の実施形態を、集中制御型のアーキテクチャを有するオープンフロー(OpenFlow)という技術を用いて実施する形態である。なお、基本的な構成は、第4の実施形態とほぼ同様であるため、同様の構成または動作については、適宜説明を省略する。
 OpenFlowは、通信をエンドツーエンドのフローとして認識し、フロー単位での経路制御、障害回復、負荷分散等を実行する。なお、フローとは、例えば、所定の属性を有する一連の通信パケット群である。
 図26は、第5の実施形態による通信システムの構成例を示している。OpenFlowを適用する場合、制御装置4は、OpenFlow Controller400(以下、OFC400)、パケット処理装置5は、OpenFlow Switch500(以下、OFS500)として動作する。ここで、OFS500は、例えば、OpenFlow技術を採用したネットワークスイッチである。また、OFC400は、OFS500を制御する情報処理装置である。ユーザAが利用する計算資源2-1からはフローAに属する通信が行われているとする。同様に、ユーザBが利用する計算資源2-2からはフローB、ユーザCが利用する計算資源2-3からはフローCに属する通信が行われている。
 図27は、OFC400の構成例を示している。OFC400は、制御部401、通信部402、ポリシDB403、ユーザDB404を含む。以上の構成は、第4の実施形態における制御装置4とほぼ同様であるので、詳細な説明は省略する。
 図28は、OFS500の構成例を示している。OFS500は、ネットワーク通信部501、OFC通信部502、フローテーブル503を含む。
 ネットワーク通信部501は、計算資源2およびネットワーク3と接続し、後述するフローテーブル503を参照して、受信するパケットに関する処理を行う。
 OFC通信部502は、OFC400からの通知に従って、フローテーブル503に情報を格納する。OFC400は、OFC通信部502に対して、決定した計算資源と通信方式との割り当てに従い、図29に例示するような情報を通知する。なお、図29については、後に詳しく説明する。OFC通信部502は、フローテーブル503に、例えば、図29で例示された情報を格納する。
 図29は、フローテーブル503の各エントリ(フローエントリ)の構成例を示している。フローエントリは、OFS500が受信したパケットの情報(例えば、宛先IPアドレスやVLAN ID等)と照合するためのフィールド(Match Fields)と、マッチングルールにマッチするパケットの処理方法(Action)を含むフィールド(Instruction)を含む。また、フローエントリは、フローエントリの優先度を示すフィールド(Priority)や、パケットフロー毎の統計情報を示すフィールド(Counters)を有していても良い。さらに、フローエントリは、フローエントリの有効期限(時間)や失効までの時間を示すフィールド(Timeouts)や、OFC400によって任意に設定されるフィールド(Cookie)を有していても良い。典型的には、1つのフローエントリは、1つのフローに対応するが、マッチフィールドの一部(例えば、宛先IPアドレス)にワイルドカードを設定することで、複数のフローを1つのフローエントリで扱うことも可能である。
 このフローテーブル503の内容について、より具体的に説明する。図29の例では、フローテーブル503のマッチフィールドが「A」のエントリは、ユーザA(即ち、計算資源2-1)から送信されたフローに対応しているとする。図29の例では簡単化のためにマッチフィールドを「A」と記載しているが、このフローは、例えば、送信元IPアドレス、宛先IPアドレス、送信元MACアドレス、宛先MACアドレス、VLAN ID等、様々なヘッダ情報の組によって規定される。例えば、マッチフィールド「A」は、パケットの送信元アドレスが、ユーザAに対応する計算資源の通信アドレスであることを表すものとする。同様に、マッチフィールドが「B」のエントリは、ユーザBからのフローに、マッチフィールドが「C」のエントリは、ユーザCからのフローに対応しているとする。ここで、ユーザAからのフローのInstructionsには、「ポート1から転送」という処理方法が記載されている。これは、OFS500は、マッチフィールドが「A」のパケットに関しては、ポート1から転送する、という処理内容を示している。例えば、ユーザAに対応する計算資源に割り当てられた通信方式がポート1に対応するものとする場合、OFS500は、「ポート1から転送」という処理方法により、ユーザAに対応する計算資源に割り当てられた通信方式のネットワークにパケットを転送できる。「Instructions」に記載される処理内容としては、他には、処理方法は、例えば、「受信パケットを所定のポートから転送する」、「受信したパケットを廃棄する」、「受信パケットのヘッダの一部を書き換えて、所定のポートから転送する」といったことが規定されている。
 次に、図30のシーケンスチャートを参照して、第5の実施形態の動作について説明する。まず、ユーザは、計算資源2を利用して、通信を開始する(ステップS71)。ここでは、ユーザAが、計算資源2-1を利用して、フローAによる通信を開始した場合を例に挙げて説明する。
 次に、OFS500のネットワーク通信部501は、受信したフローAのパケットについて、フローテーブル503を参照し、受信したパケットのヘッダ情報にマッチするフローエントリを検索する(ステップS72)。例えば、フローAに対応するマッチフィールドが「A」であるとすると、ネットワーク通信部501は、フローテーブル503に、マッチフィールドがAであるエントリがあるかどうかを検索する。
 ステップS72で、フローAにマッチするフローエントリがない場合には、OFC通信部502が、OFC400に対して、フローAに対して行う処理について問い合わせる(ステップS73)。
 OFC400の制御部401は、この問い合わせを受信すると、ポリシDB403およびユーザDB404を参照して、ユーザA(フローA)の計算資源に対してネットワーク3-1に対応する通信方式を割り当てることを決定する(ステップS74)。制御部401の割り当てに関する動作は、第4の実施形態の制御部41とほぼ同様に行われるので、詳細な説明は省略する。次に、制御部401は、決定した通信方式の割り当てに対応するフローエントリを設定する。つまり、制御部401は、フローAのパケットは、ネットワーク3-1に対応するポートから転送するための設定を、OFS500に対して行う。このようにして、OFC400は、ユーザAに対してネットワーク3-1を割り当てることを、OFS500に対して設定することができる。
 OFS500は、OFC400からの設定に従って、フローテーブル503を更新する。上述の例では、図29に示すように、フローAに対応するマッチフィールドがAであるフローエントリには、ネットワーク3-1に対応するポート1からパケットを転送することを規定した処理方法が設定される。OFS500は、更新したフローテーブル503に従い、受信パケットをポート1から転送する(ステップS75)。
 また、ステップS72で、フローAに対するフローエントリが見つかった場合には、OFS500は、OFC400に処理内容を問い合わせることなく、受信パケットをポート1から転送する(ステップS72:No)。
 また、上述の例では、ユーザが通信を開始した場合の動作について説明したが、第3の実施形態で説明したように、通信方式の割り当てを適宜変更することも可能である。
 さらに、OFS500からの要求がない場合でも、OFC400が計算資源に対する通信方式の割り当てを決定して、OFS500に対して、対応するフローエントリを設定しても良い。この場合、例えば、上述のステップS71からステップS73を行わずに、OFC400が計算資源に対する通信方式の割り当てを決定して、OFS500に、決定した通信方式の割り当てに対応するフローエントリを設定するようにしても良い。また、この場合、OFC400を管理する管理者やオペレータ等が、ユーザの状態やネットワークの状況等を考慮して、適宜ネットワークの割り当てに対応するフローエントリをOFS500に設定することができる。
 以上、OpenFlowを用いた場合の適用例について説明したが、集中制御型のアーキテクチャを有するシステムであれば、OpenFlow以外の技術も適用することが可能である。
 (効果)
 以上説明したように、第5の実施形態では、第4の実施形態にOpenFlowを適用して、OFS500をOFC400によって制御する場合の例を示した。第4の実施形態と同様に、集中制御型のアーキテクチャを採用することで、OFS500が多数ある場合であっても、OFC400を用いることで、柔軟な制御を行うことが可能となる。
 [第6の実施形態]
 次に、図31および図32を用いて、第6の実施形態について説明する。
 第6の実施形態のシステムは、図31に示すように、制御装置4、仮想スイッチ(vSwitch)101、サーバ100、物理スイッチ110、仮想マシン(VM)102を含む。
 仮想スイッチ101は、サーバ100で動作するソフトウェアで構成されたネットワークスイッチである。仮想スイッチ101は、第4の実施形態のパケット処理装置5、または第5の実施形態のOFS500に対応する機能を有する。つまり、仮想スイッチ101は、制御装置4による制御に基づいて、パケットを処理する。なお、仮想スイッチ101は、例えば、物理スイッチ110で構成されるネットワークの端点(エッジ)に位置する。
 サーバ100では、ソフトウェアにより構成されたコンピュータである仮想マシン(VM)102が動作している。VM102は、仮想スイッチ101を介して、他のVM102と通信する。
 VM102は、他の実施形態の計算資源2に対応する機能を有する。VM102は、物理スイッチ110を介するネットワーク(アンダーレイネットワーク)、または、物理スイッチ110上に構築された仮想ネットワーク(オーバレイネットワーク)を介して、他のVM102と通信する。ネットワーク(アンダーレイネットワーク)は、例えば、上述したように、IPv4、IPv6等の通信方式に基づいて構築される。仮想ネットワークは、例えば、上述したように、VLAN、L2TP、Ethernet IP、GRE、NVGRE、IPsec等の通信方式に基づいて構築される。これらのネットワークは、他の実施形態のネットワーク3に対応する。
 制御装置4は、第4の実施形態の制御装置4、または第5の実施形態のOFC400に対応する機能を有する。すなわち、制御装置4は、VM102からの通信に対して、どの通信方式を割り当てるかを決定する。
 仮想スイッチ101は、制御装置4から通知された処理規則に従って、パケットを処理する。
 サーバ100は、例えば、物理スイッチ110で構成されたネットワークの端部(エッジ)に位置する。この場合、制御装置4は、ネットワークのエッジに存在する仮想スイッチ101の動作を制御する。
 図32を参照し、VM102間の通信動作の例を説明する。図32の例では、VM102AとVM102Bが、仮想スイッチ101Aを介して、VM102C、VM102Dに対する通信を行う例を示している。
 仮想スイッチ101Aは、ポート1011A、ポート1011B、ポート1011Cを有する。同様に、仮想スイッチ101Bは、ポート1021A、ポート1021B、ポート1021Cを有する。図32の例では、それぞれのポートは、異なる通信方式のネットワークに接続している。具体的には、ポート1011Aは、ネットワーク121に接続している。ポート1011Bは、ネットワーク122に接続している。ポート1011Cは、ネットワーク123に接続している。上述したように、ネットワーク121、ネットワーク122、ネットワーク123は、それぞれが異なる通信方式に基づいて構築されるものであっても良い。
 仮想スイッチ101Aは、第4の実施形態のパケット処理装置5、または第5の実施形態のOFS500と同様の動作を行い、VM102A、VM102Bの要求条件に対応する通信方式をVM102A、VM102Bに割り当てる。例えば、VM102Aに対応する要求条件が、10Gbpsの帯域を保証するものである場合を考える。また、ネットワーク121が、10Gbpsの帯域保証を満たす通信方式に基づいて構築されるネットワークであるとする。この場合、VM102Aに対しては、10Gbpsの帯域保証を満たす通信方式が割り当てられる。上述の例においては、10Gbpsの帯域保証を満たす通信方式に対応するネットワークはネットワーク121であるので、VM102Aからの通信は、ネットワーク121に接続するポート1016Aを介して行われる。
 VM102に対して通信方式が割り当てられた後は、各々の通信方式に準じた動作により、通信が行われる。例えば、ネットワーク121の通信方式がVLANである場合、ネットワーク121に割り当てられたVM102Aからのパケットに対しては、仮想スイッチ101AがVLANタグを付与して、ネットワーク121に転送する。
 制御装置4は、例えば、VM102Aからのパケットに、ネットワーク121に対応するVLANタグを付与することを規定した処理規則を、仮想スイッチ101Aに通知する。仮想スイッチ101Aは、例えば、VM102Aからのパケットを受信すると、制御装置4の指示に従い、パケットに対してネットワーク121に対応するVLANタグを付与してパケットを転送する。
 (効果)
 第6の実施形態のように、制御装置4が仮想スイッチ101Aのみを制御する構成により、制御装置4の負荷を抑止できる。また、通信システムの既存設備(例えば、物理スイッチ110)を置き換えることなく、制御装置4による集中制御型のネットワークを導入できる。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
[形態1]
 ユーザに割り当てられる計算資源と、
 前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段と
 を含む通信システム。
[形態2]
 前記割当手段は、前記複数の通信方式のうち、前記要求条件を満たす通信方式を前記計算資源に割り当てる
 形態1に記載の通信システム。
[形態3]
 前記複数の通信方式に対応するネットワークは、第1のネットワークと、第1のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第2のネットワークを含み、
 前記割当手段は、前記第2のネットワークに対応する通信方式が前記要求条件に満たない場合、前記第1のネットワークに対応する通信方式を前記計算資源に割り当てる
 形態1または2に記載の通信システム。
[形態4]
 前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
 前記割当手段は、前記物理ネットワークに対応する通信方式が前記要求条件に満たない場合、前記仮想ネットワークに対応する通信方式を前記計算資源に割り当てることが可能である
 形態1乃至3のいずれか一に記載の通信システム。
[形態5]
 前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態1乃至4のいずれか一に記載の通信システム。
[形態6]
 前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態1乃至5のいずれか一に記載の通信システム。
[形態7]
 前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態1乃至6のいずれか一に記載の通信システム。
[形態8]
 前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する
 形態1乃至7のいずれか一に記載の通信システム。
[形態9]
 前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する
 形態1乃至8のいずれか一に記載の通信システム。
[形態10]
 前記通信システムは、
 前記計算資源に割り当てる通信方式を決定し、決定した通信方式を前記割当手段に通知する制御装置を備え、
 前記割当手段は、前記通知に従って、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態1乃至9のいずれか一に記載の通信システム。
[形態11]
 ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段
 を含むノード。
[形態12]
 前記割当手段は、前記複数の通信方式のうち、前記要求条件を満たす通信方式を前記計算資源に割り当てる
 形態11に記載のノード。
[形態13]
 前記複数の通信方式に対応するネットワークは、第1のネットワークと、第1のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第2のネットワークを含み、
 前記割当手段は、前記第2のネットワークに対応する通信方式が前記要求条件に満たない場合、前記第1のネットワークに対応する通信方式を前記計算資源に割り当てる
 形態11または12に記載のノード。
[形態14]
 前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
 前記割当手段は、前記仮想ネットワークに対応する通信方式が前記要求条件に満たない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てることが可能である
 形態11乃至13のいずれか一に記載のノード。
[形態15]
 前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態11乃至14のいずれか一に記載のノード。
[形態16]
 前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態11乃至15のいずれか一に記載のノード。
[形態17]
 前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態11乃至16のいずれか一に記載のノード。
[形態18]
 前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する
 形態11乃至17のいずれか一に記載のノード。
[形態19]
 前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する
 形態11乃至18のいずれか一に記載のノード。
[形態20]
 ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段と、
 前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する通知手段と、
 を含む制御装置。
[形態21]
 前記割当手段は、前記複数の通信方式のうち、前記要求条件を満たす通信方式を前記計算資源に割り当てる
 形態20に記載の制御装置。
[形態22]
 前記複数の通信方式に対応するネットワークは、第1のネットワークと、第1のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第2のネットワークを含み、
 前記割当手段は、前記第2のネットワークに対応する通信方式が前記要求条件に満たない場合、前記第1のネットワークに対応する通信方式を前記計算資源に割り当てる
 形態20または21に記載の制御装置。
[形態23]
 前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
 前記割当手段は、前記仮想ネットワークに対応する通信方式が前記要求条件に満たない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てることが可能である
 形態20乃至22のいずれか一に記載の制御装置。
[形態24]
通信状況も考慮したNW割り当て
 前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態20乃至23のいずれか一に記載の制御装置。
[形態25]
 前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態20乃至24のいずれか一に記載の制御装置。
[形態26]
 前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる
 形態20乃至25のいずれか一に記載の制御装置。
[形態27]
 前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する
 形態20乃至26のいずれか一に記載の制御装置。
[形態28]
 前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する
 形態20乃至27のいずれか一に記載の制御装置。
[形態29]
 ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てるステップ
 を含む通信方法。
[形態30]
 ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てるステップと、
 前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知するステップと、
 を含む通信方法。
[形態31]
 ユーザに割り当てられる計算資源に接続するノードに対して、
 前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる処理
 を実行させるプログラム。
[形態32]
 ノードの制御を行う制御装置に対して、
 ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる処理と、
 前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する処理と、
 を実行させるプログラム。
 なお、引用した上記の特許文献の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
 1  割り当て部
 2  計算資源
 3  ネットワーク
 4  制御装置
 5  パケット処理装置
 11  識別部
 12、41、401  制御部
 13、43、403  ポリシDB
 14、44、404  ユーザDB
 42、54、402  通信部
 51、501  ネットワーク通信部
 52  制御装置通信部
 53  パケット転送テーブル
 100  サーバ
 101  仮想スイッチ
 102  VM
 110  物理スイッチ
 121、122  ネットワーク
 400  OFC
 500  OFS
 502  OFC通信部
 503  フローテーブル
 1011、1021  ポート

Claims (33)

  1.  ユーザに割り当てられる計算資源と、
     前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段と、
     を備える、通信システム。
  2.  前記割当手段は、前記複数の通信方式のうちの前記要求条件を満たす通信方式を前記計算資源に割り当てる、
     請求項1に記載の通信システム。
  3.  前記複数の通信方式に対応するネットワークは、第1のネットワークと、前記第1のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第2のネットワークを含み、
     前記割当手段は、前記第2のネットワークに対応する通信方式が前記要求条件を満たさない場合、前記第1のネットワークに対応する通信方式を前記計算資源に割り当てる、
     請求項1または2に記載の通信システム。
  4.  前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
     前記割当手段は、前記物理ネットワークに対応する通信方式が前記要求条件を満たさない場合、前記仮想ネットワークに対応する通信方式を前記計算資源に割り当てる、
     請求項1乃至3のいずれか1項に記載の通信システム。
  5.  前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項1乃至4のいずれか1項に記載の通信システム。
  6.  前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項1乃至5のいずれか1項に記載の通信システム。
  7.  前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項1乃至6のいずれか1項に記載の通信システム。
  8.  前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する、
     請求項1乃至7のいずれか1項に記載の通信システム。
  9.  前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する、
     請求項1乃至8のいずれか1項に記載の通信システム。
  10.  前記通信システムは、
     前記計算資源に割り当てる通信方式を決定し、決定した通信方式を前記割当手段に通知する制御装置を備え、
     前記割当手段は、前記通知に従って、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項1乃至9のいずれか1項に記載の通信システム。
  11.  ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する識別手段と、
     前記要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる制御手段と、
     を備える、ノード。
  12.  前記制御手段は、前記複数の通信方式のうちの前記要求条件を満たす通信方式を前記計算資源に割り当てる、
     請求項11に記載のノード。
  13.  前記複数の通信方式に対応するネットワークは、第1のネットワークと、前記第1のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第2のネットワークを含み、
     前記制御手段は、前記第2のネットワークに対応する通信方式が前記要求条件を満たさない場合、前記第1のネットワークに対応する通信方式を前記計算資源に割り当てる、
     請求項11または12に記載のノード。
  14.  前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
     前記制御手段は、前記仮想ネットワークに対応する通信方式が前記要求条件を満たさない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てる、
     請求項11乃至13のいずれか1項に記載のノード。
  15.  前記制御手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項11乃至14のいずれか1項に記載のノード。
  16.  前記制御手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項11乃至15のいずれか1項に記載のノード。
  17.  前記制御手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項11乃至16のいずれか1項に記載のノード。
  18.  前記制御手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する、
     請求項11乃至17のいずれか1項に記載のノード。
  19.  前記制御手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する、
     請求項11乃至18のいずれか1項に記載のノード。
  20.  ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段と、
     前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する通知手段と、
     を備える、制御装置。
  21.  前記割当手段は、前記複数の通信方式のうちの前記要求条件を満たす通信方式を前記計算資源に割り当てる、
     請求項20に記載の制御装置。
  22.  前記複数の通信方式に対応するネットワークは、第1のネットワークと、前記第1のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第2のネットワークを含み、
     前記割当手段は、前記第2のネットワークに対応する通信方式が前記要求条件を満たさない場合、前記第1のネットワークに対応する通信方式を前記計算資源に割り当てる、
     請求項20または21に記載の制御装置。
  23.  前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
     前記割当手段は、前記仮想ネットワークに対応する通信方式が前記要求条件を満たさない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てる、
     請求項20乃至22のいずれか1項に記載の制御装置。

  24.  前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項20乃至23のいずれか1項に記載の制御装置。
  25.  前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項20乃至24のいずれか1項に記載の制御装置。
  26.  前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる、
     請求項20乃至25のいずれか1項に記載の制御装置。
  27.  前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する、
     請求項20乃至26のいずれか1項に記載の制御装置。
  28.  前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する、
     請求項20乃至27のいずれか1項に記載の制御装置。
  29.  ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別するステップと、
     前記要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てるステップと、
     を含む、通信方法。
  30.  ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てるステップと、
     前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知するステップと、
     を含む、通信方法。
  31.  ユーザに割り当てられる計算資源に接続するノードに対して、
     前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する処理と、
     前記要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる処理と、
     を実行させる、プログラム。
  32.  ノードの制御を行う制御装置に対して、
     ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる処理と、
     前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する処理と、
     を実行させる、プログラム。
  33.  ユーザに割り当てられる計算資源に接続するノードと、
     前記ノードによる通信を制御する制御装置と、を備え、
     前記制御装置は、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも1つの通信方式を前記計算資源に割り当てる割当手段と、
     前記割り当てた通信方式を前記ノードに通知する通知手段と、
     を有する、通信システム。
PCT/JP2014/050790 2013-01-18 2014-01-17 通信システム、ノード、制御装置、通信方法およびプログラム WO2014112585A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/761,582 US20150351101A1 (en) 2013-01-18 2014-01-17 Communication system, node, controller, communication method and program
JP2014557507A JP6292128B2 (ja) 2013-01-18 2014-01-17 通信システム、ノード、制御装置、通信方法およびプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-007238 2013-01-18
JP2013007238 2013-01-18

Publications (1)

Publication Number Publication Date
WO2014112585A1 true WO2014112585A1 (ja) 2014-07-24

Family

ID=51209674

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/050790 WO2014112585A1 (ja) 2013-01-18 2014-01-17 通信システム、ノード、制御装置、通信方法およびプログラム

Country Status (3)

Country Link
US (1) US20150351101A1 (ja)
JP (1) JP6292128B2 (ja)
WO (1) WO2014112585A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018207182A (ja) * 2017-05-30 2018-12-27 日本電信電話株式会社 設備設計装置、設備設計方法、及びプログラム
WO2023181422A1 (ja) * 2022-03-25 2023-09-28 株式会社Nttドコモ ネットワークノード及び通信方法
WO2023181423A1 (ja) * 2022-03-25 2023-09-28 株式会社Nttドコモ ネットワークノード及び通信方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276254A (ja) * 1993-03-17 1994-09-30 Nippon Telegr & Teleph Corp <Ntt> 通信制御装置
JP2005168041A (ja) * 2004-12-28 2005-06-23 Toshiba Corp 無線通信システム
JP2006054841A (ja) * 2004-07-14 2006-02-23 Nec Corp 通信端末装置及びそれに用いるネットワーク選択方法並びにそのプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020112030A1 (en) * 2000-12-19 2002-08-15 Naoko Iwami Guaranteed data access speed of a storage system
US20030014254A1 (en) * 2001-07-11 2003-01-16 You Zhang Load-shared distribution of a speech system
US7441062B2 (en) * 2004-04-27 2008-10-21 Apple Inc. Connector interface system for enabling data communication with a multi-communication device
US7724656B2 (en) * 2005-01-14 2010-05-25 Telefonaktiebolaget Lm Ericsson (Publ) Uplink congestion detection and control between nodes in a radio access network
ES2560450T3 (es) * 2005-04-13 2016-02-19 Vringo Infrastructure Inc. Técnicas de gestión de recursos de radioenlaces en redes inalámbricas destinadas al tráfico de paquetes de datos
CN101478576B (zh) * 2008-01-03 2012-02-15 华为技术有限公司 选择服务网络的方法、装置和系统
JP2010257429A (ja) * 2009-04-28 2010-11-11 Toshiba Corp 計算機

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276254A (ja) * 1993-03-17 1994-09-30 Nippon Telegr & Teleph Corp <Ntt> 通信制御装置
JP2006054841A (ja) * 2004-07-14 2006-02-23 Nec Corp 通信端末装置及びそれに用いるネットワーク選択方法並びにそのプログラム
JP2005168041A (ja) * 2004-12-28 2005-06-23 Toshiba Corp 無線通信システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018207182A (ja) * 2017-05-30 2018-12-27 日本電信電話株式会社 設備設計装置、設備設計方法、及びプログラム
WO2023181422A1 (ja) * 2022-03-25 2023-09-28 株式会社Nttドコモ ネットワークノード及び通信方法
WO2023181423A1 (ja) * 2022-03-25 2023-09-28 株式会社Nttドコモ ネットワークノード及び通信方法

Also Published As

Publication number Publication date
US20150351101A1 (en) 2015-12-03
JPWO2014112585A1 (ja) 2017-01-19
JP6292128B2 (ja) 2018-03-14

Similar Documents

Publication Publication Date Title
CN113261240B (zh) 使用可编程客户机进行多租户隔离
JP6509219B2 (ja) ソフトウェア定義ネットワーク(SDN)機能性を使用したDiameterルーティングのための方法、システム、およびコンピュータ読取可能媒体
EP2989545B1 (en) Defining interdependent virtualized network functions for service level orchestration
JP6538986B2 (ja) 仮想マシンパケット制御
US7941539B2 (en) Method and system for creating a virtual router in a blade chassis to maintain connectivity
WO2016157864A1 (ja) ネットワークシステム、ネットワーク制御方法および制御装置
JP5850131B2 (ja) ネットワークシステム、リソース使用率改善方法
CN113302898B (zh) 通信系统、通信方法、非暂时性计算机可读介质
EP2157746A1 (en) Routing control system for L3VPN service network
WO2014000292A1 (zh) 跨数据中心的虚拟机迁移方法、服务控制网关及系统
US9860170B2 (en) Method, device, and system for packet routing in a network
WO2016152081A1 (ja) ネットワークシステム、ネットワーク制御方法および制御装置
US7944923B2 (en) Method and system for classifying network traffic
WO2016152083A1 (ja) ネットワークシステム、ネットワーク制御方法および制御装置
EP3738034A1 (en) Adaptive application assignment to distributed cloud resources
JP2017530647A (ja) ローカルライブラリからのネットワーク接続用の機能要件の提供
JP6323339B2 (ja) 通信システム、制御装置、通信方法、制御方法及びプログラム
US20130275620A1 (en) Communication system, control apparatus, communication method, and program
JP6292128B2 (ja) 通信システム、ノード、制御装置、通信方法およびプログラム
RU2675212C1 (ru) Адаптивная балансировка нагрузки при обработке пакетов
JP2017533643A (ja) コンピュータ・プログラム、装置及び記憶媒体
WO2014157512A1 (ja) 仮想マシン提供システム、経路決定装置、経路制御方法及びプログラム
WO2014133025A1 (ja) 通信システム、上位コントローラ、ネットワークの制御方法及びプログラム
JP2016192661A (ja) ネットワークシステム、ネットワーク制御方法および制御装置
JP2016192660A (ja) ネットワークシステム、ネットワーク制御方法、制御装置および運用管理装置

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: 14740682

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14761582

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2014557507

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14740682

Country of ref document: EP

Kind code of ref document: A1