WO2012020564A1 - Communication system, control device, computer, node control method, and program - Google Patents

Communication system, control device, computer, node control method, and program Download PDF

Info

Publication number
WO2012020564A1
WO2012020564A1 PCT/JP2011/004501 JP2011004501W WO2012020564A1 WO 2012020564 A1 WO2012020564 A1 WO 2012020564A1 JP 2011004501 W JP2011004501 W JP 2011004501W WO 2012020564 A1 WO2012020564 A1 WO 2012020564A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
communication path
computer
control device
status
Prior art date
Application number
PCT/JP2011/004501
Other languages
French (fr)
Inventor
Tomoyoshi Sugawara
Original Assignee
Nec Corporation
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 Nec Corporation filed Critical Nec Corporation
Priority to JP2013506383A priority Critical patent/JP5870995B2/en
Publication of WO2012020564A1 publication Critical patent/WO2012020564A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • 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/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/127Avoiding congestion; Recovering from congestion by using congestion prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth

Definitions

  • the present application claims priority from Japanese Patent Application 2010-178779 (filed on August 9, 2010) the content of which is hereby incorporated in its entirety by reference into this specification.
  • the present invention relates to a communication system, a control device, a computer, a node control method, and a program, and more particularly to a communication system that includes nodes each of which processes a received packet according to a processing rule having a matching rule that matches the received packet, a control device, a computer, a node control method, and a program.
  • OpenFlow identifies communications as end-to-end flows and performs path control, failure recovery, load balancing, and optimization on a per-flow basis.
  • An OpenFlow switch has a secure channel for communication with an OpenFlow controller, and operates according to the flow table to which information is added, and whose contents are rewritten, according to an instruction from the OpenFlow controller as necessary.
  • a set of the following three is defined for each flow: a matching rule (FlowKey/matching key) against which the packet header is matched, an action (Action) that defines processing contents, and flow statistical information (Stats) (see FIG. 5).
  • FIG. 6 is a diagram showing an example of action names and action contents defined in Non Patent Literature 2.
  • OUTPUT is an action for outputting a packet to a specified port (interface).
  • SET_VLAN_VID to SET_TP_DST are actions for modifying the fields of a packet header.
  • the OpenFlow switch searches the flow table for an entry that has a matching rule (FlowKey) that matches the header information of the received packet. If an entry matching the received packet is found as a result of the search, the OpenFlow switch performs the processing contents, described in the action field of the entry, for the received packet. On the other hand, if an entry matching the received packet is not found as a result of the search, the OpenFlow switch transfers the received packet to the OpenFlow controller via the secure channel, requests the OpenFlow controller to determine a packet path based on the transmission source/destination of the received packet, receives a flow entry for the packet path, and updates the flow table.
  • FlowKey matching rule
  • the OpenFlow controller described in Non Patent Literatures 1 and 2 given above collects flow statistical information (Stats) from the OpenFlow switches that operate as described above and dynamically sets a path (flow entry for implementing the path (processing rule)) in the OpenFlow switches according to the communication policy or the network load status at any given time to perform path control and load balancing to suit the communication policy.
  • Stats flow statistical information
  • Patent Literature 1 discloses a network load balancing system that, for use in a network in which multiple nodes are interconnected by multiple links, comprises a load balancing server that receives network status information from the multiple nodes, determines the optimum link metric based on the network status information, and transmits the optimum link metric to the multiple nodes wherein, in each node, a path is dynamically selected based on the optimum link metric.
  • Patent Literature 2 discloses a distributed system operation maintenance support device that comprises operation specification management means that manages, as predetermined specifications, the correspondence between an application embodying an operation and a distributed system where the application is implemented and provides at least one of predetermined operation information and predetermined component information; monitoring means that transmits operation maintenance information, collected from the distributed system, to prediction means; prediction means that predicts the future trend for the components of the distributed system for which operation maintenance is required; and operation maintenance control means that creates an operation maintenance object list based on the prediction result of the prediction means and the required characteristic data received from the operation specification management means.
  • Patent Literatures 1 and 2 and Non Patent Literatures 1 and 2 given above are hereby incorporated in their entirety by reference into this specification. The following analysis is made by the inventor of the present invention.
  • action is taken for an overload only after the load increases. Therefore, the problem is that the action tends to be delayed and the path control is performed without consideration for future load changes.
  • the distributed system operation maintenance system in Patent Literature 2 discloses only the prediction means that predicts the future trend of the components of the distributed system based on the data collected by the in-distributed-system monitoring means (see paragraph 0039 in Patent Literature 2) configured in a traffic monitoring product and the configuration in which the operation maintenance object list is created based on the prediction result as well as the required characteristic data received from the operation specification management means.
  • the present invention has been made.
  • a communication system that includes nodes each of which processes a received packet according to a processing rule that defines the matching rule and the processing of a packet that matches the matching rule
  • a communication system comprising: a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; and a control device comprising a load status estimation unit that estimates a future load status of a network based on an operation history of a program running on a computer accessed via the node; a communication path calculation unit that calculates a communication path based on the future load status of the network; and a communication path setting unit that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
  • a control device comprising: a load status estimation unit that estimates a future load status of a network based on an operation history of a program running on a computer accessed via a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; a communication path calculation unit that calculates a communication path based on the future load status of the network; and a communication path setting unit that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
  • a computer that provides services by an application program to an access source that makes access via a node and, at the same time, provides an operation history of the application program to the control device described above.
  • a node control method for use in a communication system, the communication system comprising: a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; and a control device that controls the node, the node control method comprising: the steps of estimating a future load status of a network based on an operation history of a program running on a computer accessed via the node; calculating a communication path based on the future load status of the network; and creating a processing rule for implementing the calculated communication path and setting the created processing rule in the node.
  • This method is associated with a particular machine that is a control device for controlling the nodes.
  • a program causing a computer, which configures a control device connected to a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule, to execute the steps of: estimating a future load status of a network based on an operation history of a program running on a computer accessed via the node; calculating a communication path based on the future load status of the network; and creating a processing rule for implementing the calculated communication path and setting the created processing rule in the node.
  • This program may be recorded on a computer-readable storage medium. That is, the present invention may be embodied as a computer program product.
  • the nodes may be controlled considering future load changes.
  • FIG. 1 is a diagram showing the configuration of a first exemplary embodiment of the present invention.
  • FIG. 2 is a block diagram showing the detailed configuration of a control device in the first exemplary embodiment of the present invention.
  • FIG. 3 is a flowchart showing an example of the operation of the control device in the first exemplary embodiment of the present invention.
  • FIG. 4 is a diagram showing the specific operation of the control device in the first exemplary embodiment of the present invention.
  • FIG. 5 is a diagram showing the configuration of a flow entry described in Non Patent Literature 2.
  • FIG. 6 is a diagram showing the action names and action contents described in Non Patent Literature 2.
  • a communication system of the present invention comprises nodes (21-23 in FIG. 1), each of which processes a received packet according to a processing rule, which defines a matching rule and the processing of a packet that matches the matching rule, and a control device (10 in FIG. 1) that controls the nodes.
  • a processing rule which defines a matching rule and the processing of a packet that matches the matching rule
  • a control device (10 in FIG. 1) that controls the nodes.
  • the control device (10 in FIG. 1) comprises an operation history acquisition unit (11 in FIG. 2) that acquires the operation history of a program (application program 31 in FIG. 2) running on a computer (30 in FIG. 1) accessed by a client via the nodes (21-23 in FIG. 1); a load status estimation unit (12 in FIG. 2) that estimates the future load status of a network based on the operation history of the program; a communication path calculation unit (13 in FIG. 2) that calculates a communication path based on the future load status of the network; and a communication path setting unit (14 in FIG. 2) that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
  • an operation history acquisition unit (11 in FIG. 2) that acquires the operation history of a program (application program 31 in FIG. 2) running on a computer (30 in FIG. 1) accessed by a client via the nodes (21-23 in FIG. 1);
  • a load status estimation unit (12 in FIG. 2) that estimates the future load status of a network based on the operation history of
  • the control device (10 in FIG. 1) estimates the future load status of the network based on the operation history of a program (application program 31 in FIG. 2) running on the computer (30 in FIG. 1) accessed by the clients and updates, as necessary, the communication path and the processing rule that is set in the nodes (21-23 in FIG. 1).
  • a program application program 31 in FIG. 2 running on the computer (30 in FIG. 1) accessed by the clients and updates, as necessary, the communication path and the processing rule that is set in the nodes (21-23 in FIG. 1).
  • the mode described above allows the nodes to be controlled considering the future load changes that will be caused at least by the execution of the program (application program 31 in FIG. 2).
  • FIG. 1 shows the configuration comprising nodes 21-23 and a control device (controller) 10 that controls the nodes 21-23 to carry out communication between a client and a computer 30.
  • the nodes 21-23 are devices each of which processes a received packet according to a processing rule that defines a matching rule and the processing of a packet that matches the matching rule.
  • a processing rule that defines a matching rule and the processing of a packet that matches the matching rule.
  • Such a node may be implemented by the OpenFlow switch described in Non Patent Literatures 1 and 2 that processes a received packet according to a processing rule (flow entry) that defines a matching rule and the processing of a packet that matches the matching rule.
  • the computer 30 is configured by a server in which an application program operates to provide predetermined services to a client.
  • FIG. 2 is a block diagram showing the detailed configuration of the control device (controller) 10.
  • the control device (controller) 10 comprises an operation history acquisition unit 11, a load status estimation unit 12, a communication path calculation unit 13, and a communication path setting unit 14. Those units operate as follows.
  • the operation history acquisition unit 11 acquires the operation history of an application program 31 that operates on the computer 30 and transmits the acquired operation history to the load status estimation unit 12.
  • the operation history includes information on connection status changes, such as the connection start or the connection end of a client at an application level, and on registration status changes such as the user registration or de-registration. This information, usually output to the log file of the application program 31, may be acquired from the corresponding log file of the computer 30.
  • an operation identifier indicating the type of operation as well as a machine identifier indicating a combination of computers accessed via nodes (accessing/accessed computers) be acquired as the operation history.
  • the operation history acquisition unit 11 may receive the notification on connection start/end from the application program 31.
  • a configuration is also possible in which the operation history acquisition unit 11 is installed in the computer 30 to cause the operation history acquisition unit 11 to transmit the operation history information to the load status estimation unit 12 in the control device (controller) 10.
  • the load status estimation unit 12 estimates a future network load status based on the operation history received from the operation history acquisition unit 11 and outputs the estimated load status to the communication path calculation unit 13. Note that the load status estimation unit 12 may hold the network load status as the load status estimation information.
  • the information on the changes in the connection status or on the changes in the registration status, if included in the operation history, may be used to estimate the traffic that will be generated in the near future for estimating the future load status of the network.
  • the application program 31 is an application program for execution an information providing server and if a user registers with that server, it may be estimated that an information providing request will be received in the near future from the machine used by the user. Furthermore, because the user uses the same machine in many cases, an information providing request will be received most likely from the machine used for the registration. Therefore, if the information in the operation history indicates that user registered from machine A to machine X, the load status estimation unit 12 predicts (estimates) that information will be transferred between machine A and machine X in the near future.
  • the load status estimation unit 12 records the load status estimation information indicating that an information providing request will be issued or information will be transferred in the near future.
  • the load status estimation unit 12 transmits the load status estimation information, estimated or updated as described above, to the communication path calculation unit 13.
  • the communication path calculation unit 13 Based on the received load status estimation information and the network topology information representing the connection relation among the nodes 21-23, the communication path calculation unit 13 performs the calculation of path via which information will be transferred between the requesting/requested computers and transmits the calculated result at a time to the communication path setting unit 14 as the communication path information.
  • the communication path information includes at least an array composed of the machine identifiers indicating the requesting and requested computers and network node identifiers indicating a communication path.
  • the communication path calculation unit 13 performs the path calculation as follows based on the load status estimation information. For example, if the machine identifiers included in the operation history received so far indicate that many registrations have been made from a particular domain to machine X, multiple communication paths may be calculated so that the loads of the paths from the domain to machine X are balanced.
  • the IP address may be used as the machine identifier that identifies the domain in which the machine is present.
  • the number of paths to be calculated may be determined as follows. For example, if the load status estimation information obtained on the assumption that the half of the number of registered machines included in the received operation history are in connection at the same time, the number of paths may be determined by multiplying the average band by the half of the number of users.
  • the communication path setting unit 14 sets a processing rule (flow entry), which implements the path, on the nodes on the communication path based on the communication path information received from the communication path calculation unit 13.
  • the processing rule (flow entry) that is set by the communication path setting unit 14 defines a matching rule which is composed of information on the identifiers of the requesting/requested computers, input port information, etc., and processing which indicates from which port the received packet is to be output.
  • the communication path setting unit 14 sets the processing rule (flow entry) in the same manner as described in Non Patent Literatures 1 and 2.
  • control device (controller) 10 described above may also be implemented by adding the operation history acquisition unit 11 and the load status estimation unit 12 to the OpenFlow controller described in Non Patent Literatures 1 and 2 and by causing the communication path calculation unit 13 to carry out the path calculation according to the load status.
  • the components (processing means) of the control device (controller) 10 shown in FIG. 2 may also be implemented by a computer program that causes the computer, which configures the control device (controller) 10, to use its hardware to perform the processing described above.
  • FIG. 3 is a flowchart showing an example of the operation of the control device in the first exemplary embodiment of the present invention.
  • the operation history acquisition unit 11 first acquires the operation history, necessary for estimating the load status, from the log file, etc., output by the application program 31 and transmits the acquired operation history to the load status estimation unit 12 at a predetermined time interval (step S1).
  • the load status estimation unit 12 estimates the future load status of the network based on the received information, records the result as the load status estimation information and, at the same time, transmits its contents to the communication path calculation unit 13 (step S2).
  • the communication path calculation unit 13 calculates a communication path based on the contents of the load status estimation information and the network topology information and transmits the calculated communication path to the communication path setting unit 14 as the communication path information (step S3).
  • the communication path setting unit 14 sets the processing rule in one or more of the nodes 21-23, in which the processing rule (flow entry) must be set, based on the contents of the communication path information (step S4).
  • a communication path may be set preventively in this exemplary embodiment considering the future network load status estimated based on the operation history of the application program 31. This method allows the network load to be balanced even if multiple information acquisition requests are transmitted at a time from the same domain to a particular computer in the future.
  • the service application program running on the computer (application server) 30 is an information delivery program that delivers data to a registered client (or registered user) as necessary.
  • a client is able to receive information only after registering into the computer (application server) 30. Also assume that the communication path between the client and the server at registration time is set in advance.
  • the IP addresses of the registration requesting clients (2) and the IP address of the requested computer (application server) 30 are transmitted as the operation history, but the control device (controller) 10 does not change the communication path.
  • the data communication path and the registration communication path are still "Route1" in FIG. 4.
  • control device (controller) 10 switches the information-delivery communication path of some of the clients to a communication path different from the communication path that has been used (Route2 in FIG. 4).
  • the communication path is changed as follows.
  • the control device (controller) 10 estimates that information-delivery data communication will be started in the near future between the IP address of the registration requesting client (third client) and the requested computer (application server) 30. And so, the control device (controller) 10 references the communication path information saved so far and calculates a communication path (Route2 in FIG. 4), different from the communication path that has been used, as the communication path between the IP address of the registration requesting client (third client) and the requested computer (application server) 30.
  • the control device (controller) 10 estimates that data communication will not be performed in future between the IP address of the client and the computer (application server) 30 and updates the load status estimation information. After that, the control device (controller) 10 updates the communication path information saved so far and, at the same time, deletes the corresponding processing rule (flow entry) from the nodes 21 and 23 on the path. Deleting the processing rule in this way allows "Route1" to be made available for allocation to a registration request that will be received from a new client. Alternatively, the control device (controller) 10 may aggregate the flow of the clients, which are using "Route2", into “Route1".
  • control device (controller) 10 in the exemplary embodiment above may be implemented as a dedicated server, and the nodes 21-23 may be implemented by the OpenFlow switch described above as well as by a router in an IP network or an MPLS(Multi-Protocol Label Switching) switch on an MPLS network.
  • the present invention may be applied also to a network where a server integrally manages the nodes in the network.
  • ⁇ First exemplary embodiment> (See the communication system in a first aspect above)
  • ⁇ Second exemplary embodiment> The communication system according to the first exemplary embodiment wherein the operation history is acquired from the log file of the program held in the computer.
  • ⁇ Third exemplary embodiment> The communication system according to the first or second exemplary embodiment wherein changes in the connection status of a client to the computer or changes in the registration status of a user are acquired as the operation history and the data communication amount after the changes in the connection status of the client or the changes in the registration status of the user are estimated as the future load status of the network.
  • connection status of the client or the registration stratus of the user at least the operation identifier indicating the operation type and a pair of computers accessed via the nodes, that is, the machine identifiers of the access source and the computer, are included.
  • the control device estimates the future load status of the network, based on the combination of the access source that makes access via the nodes and the computer, and calculates a communication path so that load is balanced.
  • the combination of the access source that makes access via the nodes and the computer is identified based on the IP addresses included in the operation history.
  • ⁇ Sixth exemplary embodiment> The communication system according to one of the first to fifth exemplary embodiments wherein the operation history acquisition unit, which acquires the operation history of a program running in the computer accessed via the nodes, is installed in the control device.
  • ⁇ Seventh exemplary embodiment> The communication system according to one of the first to fifth exemplary embodiments wherein the operation history acquisition unit, which acquires the operation history of a program running on the computer accessed via the nodes, is installed in the computer.
  • ⁇ Eighth exemplary embodiment> See the control device in a second aspect above
  • ⁇ Ninth exemplary embodiment> The communication device according to the eighth exemplary embodiment wherein the operation history is acquired from the log file of the program held in the computer.
  • ⁇ Tenth exemplary embodiment> The control device according to the eighth or ninth exemplary embodiment wherein changes in the connection status of a client to the computer or changes in the registration status of a user are acquired as the operation history and the data communication amount after the changes in the connection status of the client or the changes in the registration status of the user are estimated as the future load status of the network.
  • As the connection status of the client or the registration stratus of the user at least the operation identifier indicating the operation type and a pair of computers accessed via the nodes, that is, the machine identifiers of the access source and the computer, are included.
  • ⁇ Eleventh exemplary embodiment> The control device according to one of the eighth to tenth exemplary embodiments wherein the control device estimates the future load status of the network, based on the combination of the access source that makes access via the nodes and the computer, and calculates a communication path so that load is balanced.
  • ⁇ Twelfth exemplary embodiment> The control device according to the eleventh exemplary embodiment wherein the combination of the access source that makes access via the nodes and the computer is identified based on the IP addresses included in the operation history.
  • ⁇ Thirteenth exemplary embodiment> The control device according to one of the eighth to twelfth exemplary embodiments, further comprising an operation history acquisition unit that acquires the operation history of a program running on the computer accessed via the nodes.
  • ⁇ Fourteenth exemplary embodiment> See the computer in a third aspect above
  • ⁇ Fifteenth exemplary embodiment> See the node control method in a fourth aspect above
  • ⁇ Sixteenth exemplary embodiment> The node control method according to the fifteenth exemplary embodiment wherein the operation history is acquired from the log file of the program held in the computer.
  • the node control method according to the fifteenth or sixteenth exemplary embodiment wherein changes in the connection status of a client to the computer or changes in the registration status of a user are acquired as the operation history and the data communication amount after the changes in the connection status of the client or the changes in the registration status of the user are estimated as the future load status of the network.
  • ⁇ Eighteenth exemplary embodiment> The node control method according to one of the fifteenth to seventeenth exemplary embodiments wherein the future load status of the network is estimated, based on the combination of the access source that makes access via the nodes and the computer, and a communication path is calculated so that load is balanced.
  • ⁇ Nineteenth exemplary embodiment> The node control method according to one of the fifteenth to eighteenth exemplary embodiments wherein the combination of the access source that makes access via the nodes and the computer is identified based on the IP addresses included in the operation history.
  • wentieth exemplary embodiment> See the computer program in a fifth aspect above
  • the disclosure of Patent Literature and Non Patent Literatures given above is hereby incorporated by reference into this specification.
  • Control device (controller) 11 Operation history acquisition unit 12 Load status estimation unit 13 Communication path calculation unit 14 Communication path setting unit 21,22,23 Node 30 Computer 31 Application program

Landscapes

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

Abstract

The present invention controls the nodes considering future load changes. A control device of a communication system comprises a load status estimation unit that estimates a future load status of a network based on the operation history of a program running on a computer accessed via a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; a communication path calculation unit that calculates a communication path based on the future load status of the network; and a communication path setting unit that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.

Description

COMMUNICATION SYSTEM, CONTROL DEVICE, COMPUTER, NODE CONTROLMETHOD, AND PROGRAM
(CROSS-REFERENCE TO RELATED APPLICATIONS)
The present application claims priority from Japanese Patent Application 2010-178779 (filed on August 9, 2010) the content of which is hereby incorporated in its entirety by reference into this specification. The present invention relates to a communication system, a control device, a computer, a node control method, and a program, and more particularly to a communication system that includes nodes each of which processes a received packet according to a processing rule having a matching rule that matches the received packet, a control device, a computer, a node control method, and a program.
Recently, the technology called OpenFlow is proposed as described in Non Patent Literatures 1 and 2. OpenFlow identifies communications as end-to-end flows and performs path control, failure recovery, load balancing, and optimization on a per-flow basis. An OpenFlow switch has a secure channel for communication with an OpenFlow controller, and operates according to the flow table to which information is added, and whose contents are rewritten, according to an instruction from the OpenFlow controller as necessary. In the flow table, a set of the following three is defined for each flow: a matching rule (FlowKey/matching key) against which the packet header is matched, an action (Action) that defines processing contents, and flow statistical information (Stats) (see FIG. 5).
FIG. 6 is a diagram showing an example of action names and action contents defined in Non Patent Literature 2. OUTPUT is an action for outputting a packet to a specified port (interface). SET_VLAN_VID to SET_TP_DST are actions for modifying the fields of a packet header.
For example, when the first packet is received, the OpenFlow switch searches the flow table for an entry that has a matching rule (FlowKey) that matches the header information of the received packet. If an entry matching the received packet is found as a result of the search, the OpenFlow switch performs the processing contents, described in the action field of the entry, for the received packet. On the other hand, if an entry matching the received packet is not found as a result of the search, the OpenFlow switch transfers the received packet to the OpenFlow controller via the secure channel, requests the OpenFlow controller to determine a packet path based on the transmission source/destination of the received packet, receives a flow entry for the packet path, and updates the flow table.
The OpenFlow controller described in Non Patent Literatures 1 and 2 given above collects flow statistical information (Stats) from the OpenFlow switches that operate as described above and dynamically sets a path (flow entry for implementing the path (processing rule)) in the OpenFlow switches according to the communication policy or the network load status at any given time to perform path control and load balancing to suit the communication policy.
In addition, Patent Literature 1 discloses a network load balancing system that, for use in a network in which multiple nodes are interconnected by multiple links, comprises a load balancing server that receives network status information from the multiple nodes, determines the optimum link metric based on the network status information, and transmits the optimum link metric to the multiple nodes wherein, in each node, a path is dynamically selected based on the optimum link metric.
Patent Literature 2 discloses a distributed system operation maintenance support device that comprises operation specification management means that manages, as predetermined specifications, the correspondence between an application embodying an operation and a distributed system where the application is implemented and provides at least one of predetermined operation information and predetermined component information; monitoring means that transmits operation maintenance information, collected from the distributed system, to prediction means; prediction means that predicts the future trend for the components of the distributed system for which operation maintenance is required; and operation maintenance control means that creates an operation maintenance object list based on the prediction result of the prediction means and the required characteristic data received from the operation specification management means.
Japanese Patent Kokai Publication No. JP2001-24699A Japanese Patent Kokai Publication No. JP-H10-83382A
Nick McKeown and seven other authors, "OpenFlow: Enabling Innovation in Campus Networks", [online], [Searched on May 26, 2010], Internet <URL: http://www.openflowswitch.org//documents/openflow-wp-latest.pdf> "Openflow Switch Specification" Version 1.0.0. (Wire Protocol 0x01) [Searched on May 26, 2010], Internet <URL: http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf>
The disclosures of Patent Literatures 1 and 2 and Non Patent Literatures 1 and 2 given above are hereby incorporated in their entirety by reference into this specification. The following analysis is made by the inventor of the present invention.
In the path control based on the network load status such as that described in Non Patent Literatures 1 and 2 and Patent Literature 1, action is taken for an overload only after the load increases. Therefore, the problem is that the action tends to be delayed and the path control is performed without consideration for future load changes.
Similarly, the distributed system operation maintenance system in Patent Literature 2 discloses only the prediction means that predicts the future trend of the components of the distributed system based on the data collected by the in-distributed-system monitoring means (see paragraph 0039 in Patent Literature 2) configured in a traffic monitoring product and the configuration in which the operation maintenance object list is created based on the prediction result as well as the required characteristic data received from the operation specification management means.
In view of the foregoing, the present invention has been made. For use in a communication system that includes nodes each of which processes a received packet according to a processing rule that defines the matching rule and the processing of a packet that matches the matching rule, it is an object of the present invention to provide a communication system that can control the nodes considering future changes in the load, a control device, a computer, a node control method, and a program.
According to a first aspect of the present invention, there is provided a communication system comprising: a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; and a control device comprising a load status estimation unit that estimates a future load status of a network based on an operation history of a program running on a computer accessed via the node; a communication path calculation unit that calculates a communication path based on the future load status of the network; and a communication path setting unit that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
According to a second aspect of the present invention, there is provided a control device comprising: a load status estimation unit that estimates a future load status of a network based on an operation history of a program running on a computer accessed via a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; a communication path calculation unit that calculates a communication path based on the future load status of the network; and a communication path setting unit that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
According to a third aspect of the present invention, there is provided a computer that provides services by an application program to an access source that makes access via a node and, at the same time, provides an operation history of the application program to the control device described above.
According to a fourth aspect of the present invention, there is provided a node control method for use in a communication system, the communication system comprising: a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; and a control device that controls the node, the node control method comprising: the steps of estimating a future load status of a network based on an operation history of a program running on a computer accessed via the node; calculating a communication path based on the future load status of the network; and creating a processing rule for implementing the calculated communication path and setting the created processing rule in the node. This method is associated with a particular machine that is a control device for controlling the nodes.
According to a fifth aspect of the present invention, there is provided a program causing a computer, which configures a control device connected to a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule, to execute the steps of: estimating a future load status of a network based on an operation history of a program running on a computer accessed via the node; calculating a communication path based on the future load status of the network; and creating a processing rule for implementing the calculated communication path and setting the created processing rule in the node. This program may be recorded on a computer-readable storage medium. That is, the present invention may be embodied as a computer program product.
According to the present invention, the nodes may be controlled considering future load changes.
FIG. 1 is a diagram showing the configuration of a first exemplary embodiment of the present invention. FIG. 2 is a block diagram showing the detailed configuration of a control device in the first exemplary embodiment of the present invention. FIG. 3 is a flowchart showing an example of the operation of the control device in the first exemplary embodiment of the present invention. FIG. 4 is a diagram showing the specific operation of the control device in the first exemplary embodiment of the present invention. FIG. 5 is a diagram showing the configuration of a flow entry described in Non Patent Literature 2. FIG. 6 is a diagram showing the action names and action contents described in Non Patent Literature 2.
First, the following describes the overview of the present invention. A communication system of the present invention comprises nodes (21-23 in FIG. 1), each of which processes a received packet according to a processing rule, which defines a matching rule and the processing of a packet that matches the matching rule, and a control device (10 in FIG. 1) that controls the nodes. The reference numerals of the figures added to the overview are added to the elements for convenience sake to help understanding the description. Note that the present invention is not limited to the mode shown in the figures.
The control device (10 in FIG. 1) comprises an operation history acquisition unit (11 in FIG. 2) that acquires the operation history of a program (application program 31 in FIG. 2) running on a computer (30 in FIG. 1) accessed by a client via the nodes (21-23 in FIG. 1); a load status estimation unit (12 in FIG. 2) that estimates the future load status of a network based on the operation history of the program; a communication path calculation unit (13 in FIG. 2) that calculates a communication path based on the future load status of the network; and a communication path setting unit (14 in FIG. 2) that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
The control device (10 in FIG. 1) estimates the future load status of the network based on the operation history of a program (application program 31 in FIG. 2) running on the computer (30 in FIG. 1) accessed by the clients and updates, as necessary, the communication path and the processing rule that is set in the nodes (21-23 in FIG. 1).
The mode described above allows the nodes to be controlled considering the future load changes that will be caused at least by the execution of the program (application program 31 in FIG. 2).
First exemplary embodiment
Next, a first exemplary embodiment of the present invention will be described more in detail below with reference to the drawings. FIG. 1 shows the configuration comprising nodes 21-23 and a control device (controller) 10 that controls the nodes 21-23 to carry out communication between a client and a computer 30.
The nodes 21-23 are devices each of which processes a received packet according to a processing rule that defines a matching rule and the processing of a packet that matches the matching rule. Such a node may be implemented by the OpenFlow switch described in Non Patent Literatures 1 and 2 that processes a received packet according to a processing rule (flow entry) that defines a matching rule and the processing of a packet that matches the matching rule.
The computer 30 is configured by a server in which an application program operates to provide predetermined services to a client.
FIG. 2 is a block diagram showing the detailed configuration of the control device (controller) 10. Referring to FIG. 2, the control device (controller) 10 comprises an operation history acquisition unit 11, a load status estimation unit 12, a communication path calculation unit 13, and a communication path setting unit 14. Those units operate as follows.
The operation history acquisition unit 11 acquires the operation history of an application program 31 that operates on the computer 30 and transmits the acquired operation history to the load status estimation unit 12. The operation history includes information on connection status changes, such as the connection start or the connection end of a client at an application level, and on registration status changes such as the user registration or de-registration. This information, usually output to the log file of the application program 31, may be acquired from the corresponding log file of the computer 30. Although there is one client (machine used by the user) and one computer 30 in the configuration shown in the example in FIG. 1, it is desirable that, in order to estimate the load status that will be described later, an operation identifier indicating the type of operation as well as a machine identifier indicating a combination of computers accessed via nodes (accessing/accessed computers) be acquired as the operation history.
If application program 31 itself includes a hooking mechanism, the operation history acquisition unit 11 may receive the notification on connection start/end from the application program 31. A configuration is also possible in which the operation history acquisition unit 11 is installed in the computer 30 to cause the operation history acquisition unit 11 to transmit the operation history information to the load status estimation unit 12 in the control device (controller) 10.
The load status estimation unit 12 estimates a future network load status based on the operation history received from the operation history acquisition unit 11 and outputs the estimated load status to the communication path calculation unit 13. Note that the load status estimation unit 12 may hold the network load status as the load status estimation information.
The information on the changes in the connection status or on the changes in the registration status, if included in the operation history, may be used to estimate the traffic that will be generated in the near future for estimating the future load status of the network. For example, if the application program 31 is an application program for execution an information providing server and if a user registers with that server, it may be estimated that an information providing request will be received in the near future from the machine used by the user. Furthermore, because the user uses the same machine in many cases, an information providing request will be received most likely from the machine used for the registration. Therefore, if the information in the operation history indicates that user registered from machine A to machine X, the load status estimation unit 12 predicts (estimates) that information will be transferred between machine A and machine X in the near future. And, based on the fact that the user registered from machine A to machine X, the load status estimation unit 12 records the load status estimation information indicating that an information providing request will be issued or information will be transferred in the near future. In addition, the load status estimation unit 12 transmits the load status estimation information, estimated or updated as described above, to the communication path calculation unit 13.
Based on the received load status estimation information and the network topology information representing the connection relation among the nodes 21-23, the communication path calculation unit 13 performs the calculation of path via which information will be transferred between the requesting/requested computers and transmits the calculated result at a time to the communication path setting unit 14 as the communication path information. The communication path information includes at least an array composed of the machine identifiers indicating the requesting and requested computers and network node identifiers indicating a communication path.
The communication path calculation unit 13 performs the path calculation as follows based on the load status estimation information. For example, if the machine identifiers included in the operation history received so far indicate that many registrations have been made from a particular domain to machine X, multiple communication paths may be calculated so that the loads of the paths from the domain to machine X are balanced. The IP address may be used as the machine identifier that identifies the domain in which the machine is present.
When calculating the multiple paths, the number of paths to be calculated may be determined as follows. For example, if the load status estimation information obtained on the assumption that the half of the number of registered machines included in the received operation history are in connection at the same time, the number of paths may be determined by multiplying the average band by the half of the number of users.
The communication path setting unit 14 sets a processing rule (flow entry), which implements the path, on the nodes on the communication path based on the communication path information received from the communication path calculation unit 13. As with a flow entry described in Non Patent Literatures 1 and 2, the processing rule (flow entry) that is set by the communication path setting unit 14 defines a matching rule which is composed of information on the identifiers of the requesting/requested computers, input port information, etc., and processing which indicates from which port the received packet is to be output. The communication path setting unit 14 sets the processing rule (flow entry) in the same manner as described in Non Patent Literatures 1 and 2.
The control device (controller) 10 described above may also be implemented by adding the operation history acquisition unit 11 and the load status estimation unit 12 to the OpenFlow controller described in Non Patent Literatures 1 and 2 and by causing the communication path calculation unit 13 to carry out the path calculation according to the load status.
The components (processing means) of the control device (controller) 10 shown in FIG. 2 may also be implemented by a computer program that causes the computer, which configures the control device (controller) 10, to use its hardware to perform the processing described above.
Next, the following describes the operation of this exemplary embodiment in detail with reference to the drawings. FIG. 3 is a flowchart showing an example of the operation of the control device in the first exemplary embodiment of the present invention.
Referring to FIG. 3, the operation history acquisition unit 11 first acquires the operation history, necessary for estimating the load status, from the log file, etc., output by the application program 31 and transmits the acquired operation history to the load status estimation unit 12 at a predetermined time interval (step S1).
When the operation history is received, the load status estimation unit 12 estimates the future load status of the network based on the received information, records the result as the load status estimation information and, at the same time, transmits its contents to the communication path calculation unit 13 (step S2).
When the load status estimation information is received, the communication path calculation unit 13 calculates a communication path based on the contents of the load status estimation information and the network topology information and transmits the calculated communication path to the communication path setting unit 14 as the communication path information (step S3).
When the communication path information is received, the communication path setting unit 14 sets the processing rule in one or more of the nodes 21-23, in which the processing rule (flow entry) must be set, based on the contents of the communication path information (step S4).
As described above, a communication path may be set preventively in this exemplary embodiment considering the future network load status estimated based on the operation history of the application program 31. This method allows the network load to be balanced even if multiple information acquisition requests are transmitted at a time from the same domain to a particular computer in the future.
The following describes the effect in detail using an example. As shown in FIG. 4, assume that three clients and the computer (application server) 30, in which a service application program is running, are connected via the nodes 21-23. Also assume that the nodes 21-23 perform processing for a received packet according to the processing rule (flow entry) that is set by the control device (controller) 10.
The service application program running on the computer (application server) 30 is an information delivery program that delivers data to a registered client (or registered user) as necessary.
Assume that a client is able to receive information only after registering into the computer (application server) 30. Also assume that the communication path between the client and the server at registration time is set in advance.
In the status where two of the clients described above have registered, the same communication path is set in the beginning for registration and for information delivery (Route1 in FIG. 4).
At this point of time, the IP addresses of the registration requesting clients (2) and the IP address of the requested computer (application server) 30 are transmitted as the operation history, but the control device (controller) 10 does not change the communication path. The data communication path and the registration communication path are still "Route1" in FIG. 4.
After that, when the number of clients registered in the computer (application server) 30 exceeds a predetermined number (for example, 3), the control device (controller) 10 switches the information-delivery communication path of some of the clients to a communication path different from the communication path that has been used (Route2 in FIG. 4).
The communication path is changed as follows. When the IP address of the registration requesting client (third client) and the IP address of the requested computer (application server) 30 are received as the operation history, the control device (controller) 10 estimates that information-delivery data communication will be started in the near future between the IP address of the registration requesting client (third client) and the requested computer (application server) 30. And so, the control device (controller) 10 references the communication path information saved so far and calculates a communication path (Route2 in FIG. 4), different from the communication path that has been used, as the communication path between the IP address of the registration requesting client (third client) and the requested computer (application server) 30.
After that, if de-registration information is received from the client, for which "Route1" has been set as the communication path, as the operation history, the control device (controller) 10 estimates that data communication will not be performed in future between the IP address of the client and the computer (application server) 30 and updates the load status estimation information. After that, the control device (controller) 10 updates the communication path information saved so far and, at the same time, deletes the corresponding processing rule (flow entry) from the nodes 21 and 23 on the path. Deleting the processing rule in this way allows "Route1" to be made available for allocation to a registration request that will be received from a new client. Alternatively, the control device (controller) 10 may aggregate the flow of the clients, which are using "Route2", into "Route1".
Setting an information delivery communication path as described above before information delivery is started for preventing traffic from concentrating in a particular communication path prevents the communication path from being congested and the information delivery from being delayed.
While the preferred exemplary embodiment of the present invention has been described, it is to be understood that the present invention is not limited to the exemplary embodiment above and that further modifications, replacements, and adjustments may be added without departing from the basic technical concept of the present invention. The control device (controller) 10 in the exemplary embodiment above may be implemented as a dedicated server, and the nodes 21-23 may be implemented by the OpenFlow switch described above as well as by a router in an IP network or an MPLS(Multi-Protocol Label Switching) switch on an MPLS network. The present invention may be applied also to a network where a server integrally manages the nodes in the network.
Finally, the following summarizes the preferred exemplary embodiments of the present invention.
<First exemplary embodiment>
(See the communication system in a first aspect above)
<Second exemplary embodiment>
The communication system according to the first exemplary embodiment wherein
the operation history is acquired from the log file of the program held in the computer.
<Third exemplary embodiment>
The communication system according to the first or second exemplary embodiment wherein
changes in the connection status of a client to the computer or changes in the registration status of a user are acquired as the operation history and
the data communication amount after the changes in the connection status of the client or the changes in the registration status of the user are estimated as the future load status of the network. As the connection status of the client or the registration stratus of the user, at least the operation identifier indicating the operation type and a pair of computers accessed via the nodes, that is, the machine identifiers of the access source and the computer, are included.
<Fourth exemplary embodiment>
The communication system according to one of the first to third exemplary embodiments wherein the control device estimates the future load status of the network, based on the combination of the access source that makes access via the nodes and the computer, and calculates a communication path so that load is balanced.
<Fifth exemplary embodiment>
The communication system according to the fourth exemplary embodiment wherein the combination of the access source that makes access via the nodes and the computer is identified based on the IP addresses included in the operation history.
<Sixth exemplary embodiment>
The communication system according to one of the first to fifth exemplary embodiments wherein the operation history acquisition unit, which acquires the operation history of a program running in the computer accessed via the nodes, is installed in the control device.
<Seventh exemplary embodiment>
The communication system according to one of the first to fifth exemplary embodiments wherein the operation history acquisition unit, which acquires the operation history of a program running on the computer accessed via the nodes, is installed in the computer.
<Eighth exemplary embodiment>
(See the control device in a second aspect above)
<Ninth exemplary embodiment>
The communication device according to the eighth exemplary embodiment wherein the operation history is acquired from the log file of the program held in the computer.
<Tenth exemplary embodiment>
The control device according to the eighth or ninth exemplary embodiment wherein changes in the connection status of a client to the computer or changes in the registration status of a user are acquired as the operation history and the data communication amount after the changes in the connection status of the client or the changes in the registration status of the user are estimated as the future load status of the network. As the connection status of the client or the registration stratus of the user, at least the operation identifier indicating the operation type and a pair of computers accessed via the nodes, that is, the machine identifiers of the access source and the computer, are included.
<Eleventh exemplary embodiment>
The control device according to one of the eighth to tenth exemplary embodiments wherein the control device estimates the future load status of the network, based on the combination of the access source that makes access via the nodes and the computer, and calculates a communication path so that load is balanced.
<Twelfth exemplary embodiment>
The control device according to the eleventh exemplary embodiment wherein the combination of the access source that makes access via the nodes and the computer is identified based on the IP addresses included in the operation history.
<Thirteenth exemplary embodiment>
The control device according to one of the eighth to twelfth exemplary embodiments, further comprising an operation history acquisition unit that acquires the operation history of a program running on the computer accessed via the nodes.
<Fourteenth exemplary embodiment>
(See the computer in a third aspect above)
<Fifteenth exemplary embodiment>
(See the node control method in a fourth aspect above)
<Sixteenth exemplary embodiment>
The node control method according to the fifteenth exemplary embodiment wherein the operation history is acquired from the log file of the program held in the computer.
<Seventeenth exemplary embodiment>
The node control method according to the fifteenth or sixteenth exemplary embodiment wherein changes in the connection status of a client to the computer or changes in the registration status of a user are acquired as the operation history and the data communication amount after the changes in the connection status of the client or the changes in the registration status of the user are estimated as the future load status of the network.
<Eighteenth exemplary embodiment>
The node control method according to one of the fifteenth to seventeenth exemplary embodiments wherein the future load status of the network is estimated, based on the combination of the access source that makes access via the nodes and the computer, and a communication path is calculated so that load is balanced.
<Nineteenth exemplary embodiment>
The node control method according to one of the fifteenth to eighteenth exemplary embodiments wherein the combination of the access source that makes access via the nodes and the computer is identified based on the IP addresses included in the operation history.
<Twentieth exemplary embodiment>
(See the computer program in a fifth aspect above)
The disclosure of Patent Literature and Non Patent Literatures given above is hereby incorporated by reference into this specification. The exemplary embodiments may be changed and adjusted in the scope of the entire disclosure (including claims) of the present invention and based on the basic technological concept. In the scope of the claims of the present invention, various disclosed elements may be combined and selected in a variety of ways. That is, it is to be understood that modifications and changes that may be made by those skilled in the art within the scope of the present invention are included.
10 Control device (controller)
11 Operation history acquisition unit
12 Load status estimation unit
13 Communication path calculation unit
14 Communication path setting unit
21,22,23 Node
30 Computer
31 Application program

Claims (11)

  1. A communication system, comprising:
    a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; and
    a control device comprising a load status estimation unit that estimates a future load status of a network based on an operation history of a program running on a computer accessed via the node; a communication path calculation unit that calculates a communication path based on the future load status of the network; and a communication path setting unit that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
  2. The communication system as defined by claim 1, wherein
    changes in a connection status of a client to said computer or changes in a registration status of a user are acquired as the operation history, and
    the future load status of the network is estimated by estimating traffic that will be generated by the changes in the connection status of the client or the changes in the registration status of the user.
  3. The communication system as defined by claim 2, wherein
    the connection status of the client or the registration status of the user includes at least a set of an operation identifier and machine identifiers, the operation identifier indicating an operation type, the machine identifiers indicating a machine identifier of an access source that accesses via the node and a machine identifier of the computer.
  4. The communication system as defined by one of claims 1-3, wherein
    said control device estimates the future load status of the network, based on a combination of the access source that makes access via the node and the computer, and calculates a communication path so that the load is balanced.
  5. A control device, comprising:
    a load status estimation unit that estimates a future load status of a network based on an operation history of a program running on a computer accessed via a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule;
    a communication path calculation unit that calculates a communication path based on the future load status of the network; and
    a communication path setting unit that creates a processing rule for implementing the calculated communication path and sets the created processing rule in the node.
  6. The control device as defined by claim 5, wherein
    changes in a connection status of a client to said computer or changes in a registration status of a user are acquired as the operation history, and
    the future load status of the network is estimated by estimating traffic that will be generated by the changes in the connection status of the client or the changes in the registration status of the user.
  7. The control device as defined by claim 6, wherein
    the connection status of the client or the registration status of the user includes at least a set of an operation identifier and machine identifiers, the operation identifier indicating an operation type, the machine identifiers indicating a machine identifier of an access source that accesses via the node and a machine identifier of the computer.
  8. The control device as defined by one of claims 5-7, wherein
    said control device estimates the future load status of the network, based on a combination of the access source that makes access via the node and the computer, and calculates a communication path so that the load is balanced.
  9. A computer that provides services by an application program to an access source that makes access via a node and, at the same time, provides an operation history of the application program to the control device as defined by one of claims 5-8.
  10. A node control method for use in a communication system, the communication system comprising a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule; and a control device that controls the node, said node control method comprising the steps of:
    estimating a future load status of a network based on an operation history of a program running on a computer accessed via the node;
    calculating a communication path based on the future load status of the network; and
    creating a processing rule for implementing the calculated communication path and setting the created processing rule in the node.
  11. A program causing a computer, which configures a control device connected to a node that processes a received packet according to a processing rule that defines a matching rule and processing of a packet that matches the matching rule, to execute the steps of:
    estimating a future load status of a network based on an operation history of a program running on a computer accessed via the node;
    calculating a communication path based on the future load status of the network; and
    creating a processing rule for implementing the calculated communication path and setting the created processing rule in the node.
PCT/JP2011/004501 2010-08-09 2011-08-09 Communication system, control device, computer, node control method, and program WO2012020564A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013506383A JP5870995B2 (en) 2010-08-09 2011-08-09 COMMUNICATION SYSTEM, CONTROL DEVICE, COMPUTER, NODE CONTROL METHOD AND PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010178779 2010-08-09
JP2010-178779 2010-08-09

Publications (1)

Publication Number Publication Date
WO2012020564A1 true WO2012020564A1 (en) 2012-02-16

Family

ID=45567539

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/004501 WO2012020564A1 (en) 2010-08-09 2011-08-09 Communication system, control device, computer, node control method, and program

Country Status (2)

Country Link
JP (1) JP5870995B2 (en)
WO (1) WO2012020564A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014021861A1 (en) * 2012-07-31 2014-02-06 Hewlett-Packard Development Company, L.P. Implementing a transition protocol in which a first rule set for routing packets received by a group of switches during a first time period is updated to a second rule set
WO2014055625A1 (en) * 2012-10-03 2014-04-10 Nec Laboratories America, Inc. A generic centralized architecture for software-defined networking with low latency one-way bypass communication
WO2014061587A1 (en) * 2012-10-15 2014-04-24 日本電気株式会社 Control device, node, communication system, communication method, and program
EP2833587A4 (en) * 2012-03-30 2015-12-30 Nec Corp Control device, communication device, communication method, and program
JP2016525828A (en) * 2013-08-13 2016-08-25 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. Transparent network management via software-defined

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007116648A (en) * 2005-09-20 2007-05-10 Fujitsu Ltd Method for controlling routing
JP2010161473A (en) * 2009-01-06 2010-07-22 Nec Corp Communication system, management computer, stacked switch, flow route determination method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4245938B2 (en) * 2003-02-27 2009-04-02 日本電信電話株式会社 Communication support method and communication support system apparatus
JP4186776B2 (en) * 2003-10-01 2008-11-26 日本電気株式会社 Flow control method and flow control method
JP2007087281A (en) * 2005-09-26 2007-04-05 Onkyo Corp Content distribution system, center server and peer to be used for the system, and content distribution method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007116648A (en) * 2005-09-20 2007-05-10 Fujitsu Ltd Method for controlling routing
JP2010161473A (en) * 2009-01-06 2010-07-22 Nec Corp Communication system, management computer, stacked switch, flow route determination method

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2833587A4 (en) * 2012-03-30 2015-12-30 Nec Corp Control device, communication device, communication method, and program
US9549413B2 (en) 2012-03-30 2017-01-17 Nec Corporation Control apparatus, communication apparatus, communication method and program
WO2014021861A1 (en) * 2012-07-31 2014-02-06 Hewlett-Packard Development Company, L.P. Implementing a transition protocol in which a first rule set for routing packets received by a group of switches during a first time period is updated to a second rule set
US9749260B2 (en) 2012-07-31 2017-08-29 Hewlett Packard Enterprise Development Lp Implementing a transition protocol in which a first rule set for routing packets received by a group of switches during a first time period is updated to a second rule set
WO2014055625A1 (en) * 2012-10-03 2014-04-10 Nec Laboratories America, Inc. A generic centralized architecture for software-defined networking with low latency one-way bypass communication
WO2014061587A1 (en) * 2012-10-15 2014-04-24 日本電気株式会社 Control device, node, communication system, communication method, and program
JP2016525828A (en) * 2013-08-13 2016-08-25 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. Transparent network management via software-defined

Also Published As

Publication number Publication date
JP5870995B2 (en) 2016-03-01
JP2013536593A (en) 2013-09-19

Similar Documents

Publication Publication Date Title
JP5637148B2 (en) Switch network system, controller, and control method
US9276852B2 (en) Communication system, forwarding node, received packet process method, and program
RU2562438C2 (en) Network system and network management method
EP2562970B1 (en) Switch, and flow table control method
JP5757552B2 (en) Computer system, controller, service providing server, and load distribution method
WO2011155510A1 (en) Communication system, control apparatus, packet capture method and program
WO2014118938A1 (en) Communication path management method
WO2011162215A1 (en) Communication system, control apparatus, node control method and program
US20130297790A1 (en) Network system, control unit and optimal route controlling method
JP2011155600A (en) Communication control apparatus
US20140241367A1 (en) Communication system, controller, communication method, and program
US20130148537A1 (en) Communication quality monitoring system, communication quality monitoring method and recording medium
WO2012020564A1 (en) Communication system, control device, computer, node control method, and program
US20150043574A1 (en) Communication apparatus, control apparatus, communication system, communication control method, communication terminal and program
WO2015125804A1 (en) Communication system, control device, communication control method and program
WO2016048390A1 (en) Link aggregation configuration for a node in a software-defined network
KR20130096762A (en) Server management apparatus, server management method, and program
WO2021098425A1 (en) Qos policy method, device, and computing device for service configuration
JP2011159247A (en) Network system, controller, and network control method
EP2938028B1 (en) Communication node, control device, method for managing control information entries, and program
RU2641232C2 (en) Communication center, communication system, method of processing of packets and program
KR20180058594A (en) Software Defined Network/Test Access Port Application
KR20140051802A (en) Method for setting packet forwarding rule and control apparatus using the method
EP2940937A1 (en) Control apparatus, communication system, communication node control method and program
KR20180058592A (en) Software Defined Network Controller

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013506383

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

Country of ref document: EP

Kind code of ref document: A1