WO2008023441A1 - Path control program and path control method - Google Patents

Path control program and path control method Download PDF

Info

Publication number
WO2008023441A1
WO2008023441A1 PCT/JP2006/316766 JP2006316766W WO2008023441A1 WO 2008023441 A1 WO2008023441 A1 WO 2008023441A1 JP 2006316766 W JP2006316766 W JP 2006316766W WO 2008023441 A1 WO2008023441 A1 WO 2008023441A1
Authority
WO
WIPO (PCT)
Prior art keywords
network
packet
information
route
unit
Prior art date
Application number
PCT/JP2006/316766
Other languages
French (fr)
Japanese (ja)
Inventor
Makoto Shinohara
Original Assignee
Fujitsu Limited
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 Fujitsu Limited filed Critical Fujitsu Limited
Priority to PCT/JP2006/316766 priority Critical patent/WO2008023441A1/en
Publication of WO2008023441A1 publication Critical patent/WO2008023441A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks

Definitions

  • the present invention relates to a path control program and a path control method for determining which network to communicate with another information processing apparatus in an information processing apparatus connected to a plurality of networks.
  • the present invention relates to a route control program and a route control method capable of dynamically switching a network to be used in units of server devices or applications.
  • each server device includes as many network devices as the number of connected networks (hereinafter also simply referred to as “devices”), and an IP address is assigned to each network device.
  • an application that operates on a server device having a plurality of network devices communicates with another application that operates on another server device by using one of the IP addresses assigned to each network device.
  • Patent Document 1 discloses a technique for dynamically changing a network to be used in accordance with a load state of the network.
  • the technology disclosed in this document is such that a route control device with a relay device search function periodically obtains load information and the like of each network so that communication is performed through the network with the lowest cost. It is to control.
  • Patent Document 1 Japanese Patent Laid-Open No. 11 298524
  • Patent Document 1 the technique disclosed in Patent Document 1 is to uniformly switch the network used by all server devices belonging to the network, and is in units of server devices or applications. In other words, it was impossible to dynamically switch the network used in the system. In data centers and the like, there is a strong demand for the provision of technology for dynamically switching the network used on a server unit basis or application basis in order to make full use of network performance.
  • the present invention has been made in view of the above, and provides a path control program and a path control method capable of dynamically switching a network to be used in units of servers or applications. Objective.
  • an information processing apparatus connected to a plurality of networks can be connected to other information processing apparatuses via which network.
  • a route control program for determining whether to perform communication wherein the route control program is assigned a virtual network driver as an virtual network driver, is assigned a virtual network driver, and receives virtual application IP packet transmission / reception requests.
  • a route selection unit that selects a network used for communication from the networks based on a predetermined selection logic when an IP packet transmission request is received in the virtual network unit, The IP path is transmitted through the network selected by the route selection unit. It functions as a packet transfer unit that performs packet transfer processing.
  • a route control for determining which network is used to communicate with another information processing device V in an information processing device connected to a plurality of networks.
  • the various application capabilities also receive an IP packet transmission / reception request process, and the transmission / reception request reception process and the transmission / reception request reception process.
  • the virtual network driver accepts an IP packet transmission request, and transmits the requested IP packet based on the selection logic and transmits it via the selected network.
  • the network used for communication can be dynamically switched in units of server devices or applications.
  • the route selection unit changes a type of selection logic for selecting a network used for communication according to a schedule stored in advance. It is characterized by that.
  • the type of selection logic for selecting a network to be used for communication is changed according to a pre-stored schedule.
  • the network to be used can be changed dynamically.
  • the route selection unit may correspond to a port number set in the IP packet and a port number stored in advance and a selection logic.
  • a network used for communication is selected based on a selection logic corresponding to a port number set in the IP packet in comparison with the table.
  • the selection logic for selecting a network to transmit an IP packet is changed based on a correspondence table of port numbers and selection logic stored in advance. Therefore, the network to be used can be changed dynamically according to the requirements of each application.
  • the information processing apparatus uses the information of the IP packet transmitted via the virtual network unit for each destination address and port number.
  • the route selection unit further sets the destination address and port number set in the IP packet requested to be transmitted and the information recorded by the communication status recording unit.
  • a selection logic for selecting a network to be used for communication by comparing and obtaining information on the communication status of IP packets having the same destination address and port number and comparing the information with a predetermined threshold. It is characterized by selecting.
  • the selection logic for selecting the network that transmits the IP packet is changed based on the actual usage situation, the complicated setting is not required.
  • the network to be used can be changed dynamically according to the communication status of each application.
  • a virtual network driver receives an IP packet transmission request, and transmits the requested IP packet via a network selected based on selection logic.
  • the network used for communication can be dynamically switched in units of server devices or applications.
  • the type of selection logic for selecting a network used for communication is changed according to a schedule stored in advance, the day of the week or the time zone
  • the network to be used can be dynamically changed according to the requirements of each.
  • the selection logic for selecting a network that transmits an IP packet is changed based on a correspondence table of port numbers stored in advance and selection logic.
  • the network to be used can be dynamically changed according to the requirements of each application.
  • the selection logic for selecting a network to transmit an IP packet is changed based on an actual usage situation, a complicated setting is made.
  • the effect is that the network to be used can be changed dynamically according to the communication status of each application.
  • FIG. 1 is a diagram illustrating an example of address designation in the route control method according to the present embodiment.
  • FIG. 2 is a functional block diagram showing a node configuration.
  • FIG. 3 is a functional block diagram showing the configuration of the path control program according to the present embodiment.
  • FIG. 4 is a diagram showing an example of node information.
  • FIG. 5 is a diagram illustrating an example of setting data.
  • FIG. 6 is a diagram showing an example of device information.
  • FIG. 7 is a diagram showing an example of route information.
  • FIG. 8 is a diagram showing an example of schedule information.
  • FIG. 9 is a flowchart showing the processing procedure of the routing control program at the time of packet transmission.
  • FIG. 10 is a flowchart illustrating a processing procedure for device selection processing.
  • FIG. 11 is a flowchart showing a processing procedure of the routing control program at the time of packet reception.
  • FIG. 12 is a functional block diagram showing the configuration of the path control program according to the present embodiment.
  • FIG. 13 is a diagram showing an example of setting information by port number.
  • FIG. 14 is a diagram showing an example of communication status information.
  • FIG. 15 is a flowchart showing a processing procedure of a route control program at the time of packet transmission.
  • FIG. 16 is a flowchart showing a processing procedure of selection logic selection processing.
  • FIG. 17 is a diagram showing an example of conventional address designation.
  • node represents various information processing devices such as a server device and a personal computer connected to a network.
  • FIG. 17 is a diagram showing an example of conventional address designation. As shown in the figure, the node 100 is connected to the network 11 via the network device 110 and is connected to the network device.
  • Node 200 is a network
  • an IP address is usually assigned to each network driver that controls the network device, and by specifying this IP address, it is determined which network device is used for communication.
  • the application 112 controls the network device 110 that controls the network device 110.
  • IP address As the destination, it is necessary to communicate via the network 12, or to communicate with either V or Vs.
  • application 112 communicates with application 212 via 1S network 11.
  • the IP address assigned to 1 is “10. 124. 128. 11” and the network driver 211
  • the application 112 sets “10. 124. 128. 11” as the transmission destination of the IP packet 21 to be transmitted.
  • the IP packet is also sent out by the application 112. 21
  • the source address (SA) and destination address (DA) are set to “10. 124. 128. 1 1” and “10. 124. 128. 21”, respectively. Is transmitted to the application 212 via the.
  • the administrator has configured to communicate with application 212 running on
  • the IP address assigned to the network driver 111 is “10
  • the application 112 sends the IP knot 22 to be sent.
  • the IP packet is also sent out by the application 112. 22
  • the source address (SA) and destination address (DA) are set to “10. 124. 128. 12” and “10. 124. 128. 22”, respectively. Is transmitted to the application 212 via the.
  • FIG. 1 is a diagram illustrating an example of address designation in the route control method according to the present embodiment.
  • the node 300 is connected to the network 11 via the network device 310.
  • the network 400 is connected to the network 11 via the network device 410, and the network
  • other nodes also include a plurality of network devices, which are connected to the network 11 via any one of the network devices and connected to the network 12 via other network devices.
  • each application communicates with other applications by specifying the representative IP address assigned to the virtual network driver provided in the node, regardless of how many network devices the node has. Do it.
  • the node 300 is provided with a virtual network driver 313, and the node 400 0 is provided with a virtual network driver 413.
  • a representative IP address “10. 124. 128. 10” is assigned to the virtual network driver 313, and a representative IP address “10. 124. 128. 20” is assigned to the virtual network driver 413. Assigned.
  • application 312 When communicating with application 412, application 312 sends an IP packet
  • IP packet 31 thus designated is received by the virtual network driver 313 and transmitted to the application 412 via the network selected by a predetermined selection logic.
  • the designated IP packet 32 is received by the virtual network driver 313 and transmitted to the application 412 via the network selected by a predetermined selection logic.
  • each application has only one virtual network driver for each node.
  • the representative IP address assigned to it is possible to communicate with applications running on other nodes without explicitly specifying individual network devices.
  • the load for designating the IP address to be used for each application is reduced. Also, depending on the settings of the selection logic, when there is a lot of traffic on a certain network, the network used by the application can be switched depending on the situation. It becomes possible.
  • FIG. 1 is a functional block diagram showing the configuration of the node 300.
  • the node 300 includes network devices 310 to 310n and various arithmetic processing units.
  • CPU Central Processing Unit
  • medium reader that reads a program from a recording medium
  • RAM random access memory
  • hard disk device that can store various information 350 are connected by bus 360.
  • the hard disk device 350 includes a kernel program 500 that is a basic part of the operating system that controls the operation of the node 300, an application program 600 that executes various processes such as network communication according to the purpose, and a main program.
  • the path control program 700 for realizing the path control method according to the embodiment and the setting data 800 used by the path control program 700 are stored.
  • the kernel program 500 is expanded on the RAM 340 by the CPU 320 when the node 300 is activated, and functions as an operating system.
  • the path control program 700 is also expanded on the RAM 340 by the CPU 320, reads the setting data 800, and starts executing various processes for realizing the path control method according to the present embodiment. Become.
  • a part corresponding to the virtual network driver 313 is incorporated into the operating system as a driver, and the other part is executed outside the operating system as a daemon. .
  • a part of the routing program 700 other than the part corresponding to the virtual network driver 313 may be incorporated into the operating system.
  • the path control program 700 is not necessarily stored in the hard disk device 350, and the node 300 may read and execute this program stored in a storage medium such as a CD-ROM. Good.
  • this program is stored in another information processing apparatus connected to the node 300 via a public line, the Internet, a LAN (Loca 1 Area Network), a WAN (Wide Area Network), etc. Read the program and execute it.
  • FIG. 3 is a functional block diagram showing the configuration of the route control program 700 according to the present embodiment.
  • the path control program 700 includes a virtual network driver unit 710, an information initialization unit 720, a network monitoring unit 730, a transmission control unit 740, a reception control unit 750, and node information 761. , Device information 762, route information 763, and schedule information 764.
  • the virtual network driver unit 710 is a processing unit that functions as a virtual network driver in the node where the path control program 700 operates, and corresponds to the virtual network driver 313 shown in FIG.
  • the virtual network driver unit 710 functions as an interface for exchanging IP packets with an application that operates on a node on which the routing control program 700 operates.
  • the information initialization unit 720 is a processing unit that initializes the node information 761, the device information 762, the route information 763, and the schedule information 764 after the route control program 700 is started. The Details of these information are shown below.
  • FIG. 4 is a diagram illustrating an example of the node information 761.
  • the node information 761 is information indicating the correspondence between the node and the representative IP address, and includes items such as a node name and a representative IP address.
  • the node name indicates the host name of the node
  • the representative IP address indicates the IP address assigned to only one virtual network driver that exists in the node.
  • the information initialization unit 720 initially generates node information 761 by reading a predetermined portion of the setting data 800.
  • FIG. 5 is a diagram illustrating an example of the setting data 800.
  • the representative IP address assigned to each node is registered.
  • the IP address assigned to the network driver corresponding to those network devices and the transmission and reception of IP packets in the network to which those network devices are connected are prohibited.
  • a list of port numbers is also registered.
  • FIG. 6 is a diagram showing an example of device information 762.
  • device information 762 is information related to network devices provided by other nodes, and includes node name, device name, IP address, prohibited port, transfer speed, maximum transmission unit (MTU) length, It has items such as transfer frequency and failure rate.
  • the node name indicates the host name of the node where the network device exists, and corresponds to the node name of the node information 761.
  • the device name is the name of the network device
  • the IP address is the IP address assigned to the network driver corresponding to the network device.
  • the prohibited port is an item that sets a list of port numbers that are prohibited from sending and receiving IP packets in the network to which the network device is connected.
  • the transfer rate, MTU length, transfer frequency, and failure rate are the transfer rate, MTU length, transfer frequency, and failure rate of the network to which the network device is connected.
  • the information initialization unit 720 initially generates a node name to a prohibited port of the device information 762 by reading a predetermined part of the setting data 800. Then, after initial generation of route information 763 to be described later, it communicates with other nodes using connectable routes, and based on the result, the transfer rate and MTU length of each network are measured to initialize the information. Part 720 Determine. For the transfer frequency and failure rate, the information initialization unit 720 sets the value to 0, and the update is performed by the network monitoring unit 730.
  • FIG. 7 is a diagram showing an example of route information 763.
  • the path information 763 is information indicating a connection relationship between network devices, and includes items such as a self-node device, another node device, and a connection state.
  • the own node device is an IP address corresponding to the network device actually provided by the node on which the routing control program 700 is operating, and the other node device is the IP address corresponding to the network device actually provided by the other node.
  • FIG. 7 is an example of route information 763 in the node 300.
  • the connection state indicates whether or not connection is possible between the network device indicated by the own node device and the network device indicated by the other node device.
  • the information initialization unit 720 initially generates route information 763 by reading a predetermined part of the setting data 800.
  • the connection state is initialized by the information initialization unit 720 and then updated by the network monitoring unit 730 so as to actually reflect the connection state.
  • FIG. 8 is a diagram showing an example of schedule information 764.
  • the schedule information 764 is information indicating a schedule for changing the selection logic to be applied, and includes one item, a day of the week, a time zone, and a selection logic.
  • the day of the week and the time of day are the day of the week and the time of day to which the corresponding selection logic applies.
  • the schedule is expressed by a combination of the day of the week and the time zone.
  • the schedule may be expressed by a combination of the date and the time zone.
  • the selection logic is a logic for selecting a network to be used for a plurality of network power communication to which a node is connected.
  • “Reliability priority” is the logic that preferentially selects the network with the lowest failure rate
  • “Transfer frequency priority” is the logic that preferentially selects the network with the lowest transfer frequency
  • “Priority” is the logic that preferentially selects the network with the highest transfer rate.
  • the network monitoring unit 730 refers to the route information 763 and periodically uses the PING and netstat commands to monitor each network, reflects the connection status in the route information 763, and transfers the obtained transfer. This is a processing unit that sets the frequency and failure rate in the device information 762.
  • the transmission control unit 740 is a control unit that controls transmission of IP packets, and includes a route selection unit 741 and a packet transfer unit 742.
  • the route selection unit 741 is a processing unit that selects which network is used to transmit a packet.
  • the route selection unit 741 compares the current date and time with the schedule information 764 and determines the selection logic to be applied. After referring to the node information 761 and identifying the node specified as the destination address, the device information 762 and the route information 763 are referred to, and the selection logic in the available network is the most. Select a matching network.
  • the packet transfer unit 742 rewrites the transmission destination address and the transmission source address of the IP packet so that the IP packet is transmitted via the network selected by the route selection unit 741, and transmits the rewritten transmission.
  • This processing unit forwards IP packets to the network driver corresponding to the original address.
  • Reception control section 750 is a control section that controls reception of IP packets. Specifically, the reception control unit 750 monitors reception of an IP packet by a network driver corresponding to each network device, and acquires an IP packet received by any network driver of V or any one of them. After rewriting the destination address and source address so that the combination of the representative IP address is obtained, specify the port number set in the IP packet via the virtual network driver unit 710 and wait for reception. The IP packet to the current application.
  • Figure 9 5 is a flowchart showing a processing procedure of the route control program 700 at the time of packet transmission. This processing procedure is executed each time an IP packet destined for another node is received by the virtual network driver unit 710.
  • the route selection unit 741 refers to the schedule information 764 and selects the selection logic corresponding to the current date and time. Is acquired (step S102). Then, a device selection process to be described later is executed to select a network device to be used for communication between the destination node and the own node (step S103).
  • the packet transfer unit 742 rewrites the IP packet address so that the network device selected in step S103 becomes the transmission destination and the transmission source (step S104), and the packet transfer unit 742 updates the IP packet address selected in step S103.
  • the IP packet is transferred to the network driver corresponding to the network device so that the IP packet is transmitted from the network device power of the node (step S 105).
  • FIG. 10 is a flowchart illustrating a processing procedure of device selection processing.
  • the route selection unit 741 identifies the destination node by comparing the destination address of the IP packet received by the virtual network driver unit 710 with the node information 761 (step S201), and device information From 762, information on the network device provided in the node is extracted (step S202).
  • step S203 one network device with the highest priority is selected. If there is no corresponding network device (No at step S204), predetermined error processing is executed.
  • Step S205 the port number set in the IP packet is acquired (Step S205). Then, referring to the prohibited port item in the device information 762, if the acquired port number is forbidden to transmit / receive in the network corresponding to the selected destination network device (Yes in step S206). ), Excluding the selected network device (step S209), returning to step S203, selecting the network device with the next highest priority, and performing the subsequent processing again.
  • the port number acquired in step S205 does not correspond to a prohibited port (No in step S206)
  • step S207 If there is no corresponding network device (No at step S208), the selected destination network device is excluded from the selection target (step S209), and the process returns to step S203 and the next higher priority network is selected. Select the device and re-execute the subsequent processing.
  • the network device is set as the transmission source network device, and the processing is ended with the network device selected in step S203 as the transmission destination network device.
  • step S201 it is specified that the destination node is host B.
  • step S202 it is determined that the network device powers “device Bl” and “device B2” of the host B are provided.
  • step S203 since the selection logic is “transfer speed priority”, if the device information 762 is as shown in FIG. 6, “device B2” having the highest transfer speed is selected. Since there is a corresponding network device, Step S204 is Yes.
  • step S205 the port number set in the IP packet is acquired.
  • the acquired port number is “20” and the device information 762 is as shown in FIG. 6, it is found in step S206 that the port is a prohibited port of “device B2” (step S206 Yes), and in step S209, the selected “device B 2” is not selected.
  • Step S206 is No.
  • step S207 the network of the local node that can be connected to "device Bl" Device is extracted.
  • device information 762 in Fig. 6 the IP address of “Device Bl” is “10. 124. 11. 20”.
  • the route information in Fig. 7 it is found that the own node device that can be connected to this IP address is “10. 124.11. 11.10”.
  • step S208 becomes Yes, and the process ends.
  • FIG. 11 is a flowchart showing a processing procedure of the route control program 700 at the time of packet reception. This processing procedure is repeatedly executed by the reception control unit 750 after the initial processing by the information initialization unit 720 is completed.
  • the reception control unit 750 monitors the reception of the IP packet by the network driver corresponding to each network device of its own node (step S301), and if the IP packet is received, The IP packet is acquired (step S302).
  • the source address and destination address of the IP packet are rewritten to the representative IP address (step S303), and the virtual network driver unit 710 Specify the port number set in the IP packet and wait for reception! /, Then deliver the IP packet to the application (step S304).
  • an example of a routing control program and a routing control method in which a representative IP address is provided for each node and a network used for communication is dynamically changed in units of nodes has been described. It is also possible to configure the network to dynamically change on a per-application basis. Therefore, in this embodiment, an example of a route control program and a route control method capable of dynamically changing a network used for communication in units of applications will be described.
  • FIG. 12 is a functional block diagram showing the configuration of the path control program 900 according to the present embodiment.
  • the route control program 900 is a program that is stored and executed in an information processing apparatus or the like connected to a plurality of networks such as the node 300 like the route control program 700 described above.
  • the path control program 900 includes a virtual network driver unit 910, Information initialization unit 920, network monitoring unit 730, transmission control unit 940, reception control unit 750, node information 761, device information 762, route information 763, setting information by port number 965, Communication status information 966 and a communication status recording unit 970 are included.
  • the virtual network driver unit 910 is a processing unit that functions as a virtual network driver in a node where the path control program 900 operates, and corresponds to the virtual network driver 313 shown in FIG.
  • the virtual network driver unit 710 functions as an interface for exchanging IP packets with applications running on the node where the routing control program 700 runs, and also communicates information about IP packets sent via itself.
  • the status recording unit 970 is notified and recorded in the communication status information 966.
  • the information initialization unit 920 is a processing unit that initializes the node information 761, device information 762, route information 763, and port number-specific setting information 965 after the route control program 900 is activated.
  • FIG. 13 is a diagram showing an example of the setting information 965 by port number.
  • the port number-specific setting information 965 is information indicating the correspondence between the port number and the selection logic, and has items of port number, selection logic, and! / ⁇ .
  • the port number is a number for specifying an application as a communication partner in combination with the IP address, and corresponds almost one-to-one with the application.
  • the selection logic is a logic for selecting a network that is also used for communication by a plurality of network powers to which the node is connected, and has values such as “reliability priority”, “transfer frequency priority”, and “transfer speed priority”. .
  • the port number-specific setting information 965 only the port numbers for which the selection logic is to be explicitly specified need to be registered, and all the port numbers and the selection logic for communication using the port numbers are used. It is not necessary to register a combination of.
  • an appropriate selection logic is set based on the information recorded in the communication status information 966 by the communication status recording unit 970. Automatically selected.
  • the communication status recording unit 970 is a processing unit that records information on the IP packet transmitted via the virtual network driver unit 910 in the communication status information 966 for each destination IP address and port number.
  • FIG. 14 is a diagram showing an example of the communication status information 966. As shown in FIG. As shown in the figure, the communication status information 966 includes items such as a destination representative IP address, a port number, the number of transmissions, and a transmission amount.
  • the transmission destination representative IP address is the transmission destination address set in the IP packet
  • the port number is the port number set in the IP packet.
  • the number of transmissions and the amount of transmissions are the cumulative number of transmissions and transmissions of IP packets with that IP address and port number.
  • the transmission control unit 940 is a control unit that controls transmission of IP packets, and includes a route selection unit 941 and a packet transfer unit 742.
  • the route selection unit 941 is a processing unit that selects which network is used to transmit a packet.
  • the route selection unit 941 refers to the port number setting information 965, and sets the port number set in the IP packet. If the corresponding selection logic is registered !, the network to be used is selected using the selection logic.
  • the route selection unit 941 refers to the communication status information 966, and transmits the IP transmitted by designating the same destination address and port number. Select an appropriate selection logic based on the number of packets sent and the amount of transmission, and use that selection logic to select the network to use.
  • FIG. 15 is a flowchart showing the processing procedure of the route control program 900 at the time of packet transmission. This processing procedure is executed every time an IP packet destined for another node is received by the virtual network driver unit 910.
  • the route selection unit 941 executes selection logic selection processing described later to select the selection logic. (Step S402). Then, the device selection process already described is executed to select a network device to be used for communication between the destination node and the own node (step S403). [0097] Then, the packet forwarding unit 742 rewrites the IP packet address so that the network device selected in step S403 becomes the transmission destination and transmission source (step S404), and the packet forwarding unit 742 rewrites the own node selected in step S403. The IP packet is transferred to the network driver corresponding to the network device so that the IP packet is transmitted from the network device (step S405).
  • FIG. 16 is a flowchart showing a processing procedure of selection logic selection processing.
  • the route selection unit 941 searches the port number setting information 965 using the port number of the IP packet received by the virtual network driver unit 910 as a key (step S501), and there is such information. If (Yes at step S502), the selection logic included in the retrieved information is selected and the process is terminated (step S503).
  • step S501 the selection logic corresponding to the port number is found in step S501, and “transfer speed priority” is selected as the selection logic (step S503).
  • the communication status information 966 is searched using the destination address and port number of the IP packet as keys (step S504). If there is applicable information (Yes at step S505), the transmission amount included in the retrieved information is divided by the elapsed time after startup to calculate the transmission amount per hour (step S506). If the transmission amount is equal to or greater than the predetermined threshold (Yes at Step S507), “Transfer priority” is selected as the selection logic so that a large amount of IP packets can be processed at high speed, and the process is terminated (Step S507). S508).
  • Step S509 If the transmission amount per time is smaller than the predetermined threshold (No at step S507), the number of transmissions included in the retrieved information is divided by the elapsed time after startup to calculate the number of transmissions per hour. (Step S509) If the number of transmissions per hour is equal to or greater than the predetermined threshold (Yes at Step S510), select "Transfer Frequency Priority" as the selection logic so that traffic does not overflow with a large number of IP packets. To end the processing (step S511).
  • route control programs 700 and 900 can be variously changed without departing from the scope of the present invention.
  • the route control programs 700 and 900 can be combined so that the network to be used can be switched for each application according to a pre-stored schedule.
  • the determination and selection of a prohibited port using only the port number and the selection logic are performed. These determinations and selections are performed by a combination of the protocol number and the port number. Moyo.
  • the route control program and the route control method according to the present invention communicate with other information processing devices via any network, in addition to information processing devices connected to a plurality of networks. This is useful when deciding whether or not to perform the operation, and is particularly suitable when it is necessary to dynamically switch the network to be used in units of servers or applications.

Abstract

A technique in which the network used by each server or application can be dynamically switched is provided. A path control program (700) includes a virtual network driver section (710) to which an IP address is assigned as a virtual network driver and which receives requests of various applications to transmit/receive IP packets, a path selecting section (741) for selecting a network used for communication on the basis of a predetermined selection logic when a request to transmit an IP packet is received by the virtual network driver section (710), and a packet transfer section (742) for transferring the IP packet to be transmitted through the network selected by the path selecting section (741).

Description

明 細 書  Specification
経路制御プログラムおよび経路制御方法  Route control program and route control method
技術分野  Technical field
[0001] 本発明は、複数のネットワークと接続された情報処理装置において、どのネットヮー クを介して他の情報処理装置と通信をおこなうかを決定する経路制御プログラムおよ び経路制御方法に関し、特に、サーバ装置単位やアプリケーション単位で使用する ネットワークを動的に切り替えることができる経路制御プログラムおよび経路制御方法 に関する。  The present invention relates to a path control program and a path control method for determining which network to communicate with another information processing apparatus in an information processing apparatus connected to a plurality of networks. The present invention relates to a route control program and a route control method capable of dynamically switching a network to be used in units of server devices or applications.
背景技術  Background art
[0002] 多数のサーバ装置が稼動するデータセンター等では、サーバ装置間を複数のネッ トワークで接続することによって、ネットワークトラフィックの分散や可用性の向上を図 つている場合がある。かかる環境では、各サーバ装置は、接続されているネットワーク の数だけのネットワークデバイス(以下、単に「デバイス」とも言う)を備え、それぞれの ネットワークデバイスごとに IPアドレスを割り当てられる。  [0002] In a data center or the like in which a large number of server devices operate, there are cases where network traffic is distributed and availability is improved by connecting server devices with a plurality of networks. In such an environment, each server device includes as many network devices as the number of connected networks (hereinafter also simply referred to as “devices”), and an IP address is assigned to each network device.
[0003] このように複数のネットワークデバイスを備えるサーバ装置上で動作するアプリケー シヨンは、他のサーバ装置上で動作する他のアプリケーションと通信するにあたって、 各ネットワークデバイスに割り当てられた IPアドレスの 1つを明示的に指定して、どの ネットワークを介して通信をおこなうかを特定していた。そのため、例えば、使用する ネットワークの負荷が高まった場合でも、アプリケーションは、そのネットワークを使用 し続けなければならなかった。  [0003] In this way, an application that operates on a server device having a plurality of network devices communicates with another application that operates on another server device by using one of the IP addresses assigned to each network device. Was specified explicitly to identify the network through which the communication was performed. Therefore, for example, even if the load on the network used increases, the application must continue to use the network.
[0004] ネットワークの負荷状況に応じて、使用するネットワークを動的に変更する技術は、 例えば、特許文献 1において開示されている。この文献において開示されている技術 は、中継装置検索機能付き経路制御装置が、定期的に各ネットワークの負荷情報等 を取得して、コストが最も低 、ネットワークを介して通信がおこなわれるように経路制 御するというものである。  [0004] For example, Patent Document 1 discloses a technique for dynamically changing a network to be used in accordance with a load state of the network. The technology disclosed in this document is such that a route control device with a relay device search function periodically obtains load information and the like of each network so that communication is performed through the network with the lowest cost. It is to control.
[0005] 特許文献 1 :特開平 11 298524号公報  Patent Document 1: Japanese Patent Laid-Open No. 11 298524
発明の開示 発明が解決しょうとする課題 Disclosure of the invention Problems to be solved by the invention
[0006] し力しながら、特許文献 1において開示されている技術は、そのネットワークに属し ている全てのサーバ装置等が使用するネットワークを一律に切り替えるものであり、サ ーバ装置単位やアプリケーション単位で使用するネットワークを動的に切り替えること ができな力つた。データセンター等では、ネットワークの性能を十分に活用するため、 サーバ装置単位やアプリケーション単位で使用するネットワークを動的に切り替える 技術の提供が強く要望されている。  [0006] However, the technique disclosed in Patent Document 1 is to uniformly switch the network used by all server devices belonging to the network, and is in units of server devices or applications. In other words, it was impossible to dynamically switch the network used in the system. In data centers and the like, there is a strong demand for the provision of technology for dynamically switching the network used on a server unit basis or application basis in order to make full use of network performance.
[0007] 本発明は、上記に鑑みてなされたものであって、サーバ装置単位やアプリケーショ ン単位で使用するネットワークを動的に切り替えることができる経路制御プログラムお よび経路制御方法を提供することを目的とする。  [0007] The present invention has been made in view of the above, and provides a path control program and a path control method capable of dynamically switching a network to be used in units of servers or applications. Objective.
課題を解決するための手段  Means for solving the problem
[0008] 上述した課題を解決し、目的を達成するため、本発明の一つの態様では、複数の ネットワークと接続された情報処理装置にぉ 、て、どのネットワークを介して他の情報 処理装置と通信をおこなうかを決定する経路制御プログラムであって、前記経路制御 プログラムは、前記情報処理装置を、仮想的なネットワークドライバとして IPアドレスを 割り当てられ、各種アプリケーション力 IPパケットの送受信依頼を受け付ける仮想ネ ットワーク部と、前記仮想ネットワーク部において IPパケットの送信依頼が受け付けら れた場合に、予め定められた選択論理に基づいて、前記ネットワークの中から通信に もちいるネットワークを選択する経路選択部と、前記経路選択部によって選択された ネットワークを通じて送信されるように前記 IPパケットの転送処理をおこなうパケット転 送部として機能させることを特徴とする。 In order to solve the above-described problems and achieve the object, according to one aspect of the present invention, an information processing apparatus connected to a plurality of networks can be connected to other information processing apparatuses via which network. A route control program for determining whether to perform communication, wherein the route control program is assigned a virtual network driver as an virtual network driver, is assigned a virtual network driver, and receives virtual application IP packet transmission / reception requests. And a route selection unit that selects a network used for communication from the networks based on a predetermined selection logic when an IP packet transmission request is received in the virtual network unit, The IP path is transmitted through the network selected by the route selection unit. It functions as a packet transfer unit that performs packet transfer processing.
[0009] また、本発明の他の態様では、複数のネットワークと接続された情報処理装置にお V、て、どのネットワークを介して他の情報処理装置と通信をおこなうかを決定する経 路制御方法であって、仮想的なネットワークドライバとして IPアドレスを割り当てられた 仮想ネットワーク部において、各種アプリケーション力も IPパケットの送受信依頼を受 け付ける送受信依頼受付工程と、前記送受信依頼受付工程にぉ 、て IPパケットの送 信依頼が受け付けられた場合に、予め定められた選択論理に基づいて、前記ネット ワークの中から通信にもちいるネットワークを選択する経路選択工程と、前記経路選 択工程によって選択されたネットワークを通じて送信されるように前記 IPパケットの転 送処理をおこなうパケット転送工程とを含んだことを特徴とする。 [0009] Further, in another aspect of the present invention, a route control for determining which network is used to communicate with another information processing device V in an information processing device connected to a plurality of networks. In a virtual network unit assigned with an IP address as a virtual network driver, the various application capabilities also receive an IP packet transmission / reception request process, and the transmission / reception request reception process and the transmission / reception request reception process. A route selection step of selecting a network to be used for communication from the networks based on a predetermined selection logic when a packet transmission request is received; and And a packet transfer step for transferring the IP packet so as to be transmitted through the network selected by the selection step.
[0010] これらの発明の態様によれば、仮想的なネットワークドライバにおいて IPパケットの 送信依頼を受け付け、送信を依頼された IPパケットを選択論理に基づ!ヽて選択した ネットワークを介して送信するように構成したので、サーバ装置単位やアプリケーショ ン単位で通信にもちいるネットワークを動的に切り替えることができる。  [0010] According to these aspects of the invention, the virtual network driver accepts an IP packet transmission request, and transmits the requested IP packet based on the selection logic and transmits it via the selected network. With this configuration, the network used for communication can be dynamically switched in units of server devices or applications.
[0011] また、本発明の他の態様では、上記の発明の態様において、前記経路選択部は、 予め記憶されたスケジュールに従って、通信にもちいるネットワークを選択するための 選択論理の種類を変更することを特徴とする。  [0011] In another aspect of the present invention, in the above aspect of the invention, the route selection unit changes a type of selection logic for selecting a network used for communication according to a schedule stored in advance. It is characterized by that.
[0012] この発明の態様によれば、予め記憶されたスケジュールに従って、通信にもちいる ネットワークを選択するための選択論理の種類を変更するように構成したので、曜日 や時間帯ごとの要件に応じて使用するネットワークを動的に変更することができる。  [0012] According to the aspect of the present invention, the type of selection logic for selecting a network to be used for communication is changed according to a pre-stored schedule. The network to be used can be changed dynamically.
[0013] また、本発明の他の態様では、上記の発明の態様において、前記経路選択部は、 前記 IPパケットに設定されているポート番号を、予め記憶されたポート番号と選択論 理の対応表と照合して、前記 IPパケットに設定されて 、るポート番号に対応する選択 論理に基づいて、通信にもちいるネットワークを選択することを特徴とする。  [0013] Further, in another aspect of the present invention, in the above aspect of the invention, the route selection unit may correspond to a port number set in the IP packet and a port number stored in advance and a selection logic. A network used for communication is selected based on a selection logic corresponding to a port number set in the IP packet in comparison with the table.
[0014] この発明の態様によれば、予め記憶されたポート番号と選択論理の対応表に基づ V、て、 IPパケットを送信するネットワークを選択するための選択論理を変更するように 構成したので、アプリケーションごとの要件に応じて使用するネットワークを動的に変 更することができる。  [0014] According to this aspect of the present invention, the selection logic for selecting a network to transmit an IP packet is changed based on a correspondence table of port numbers and selection logic stored in advance. Therefore, the network to be used can be changed dynamically according to the requirements of each application.
[0015] また、本発明の他の態様では、上記の発明の態様において、前記情報処理装置を 、前記仮想ネットワーク部を介して送信された IPパケットの情報を送信先アドレスとポ ート番号ごとに記録する通信状況記録部としてさらに機能させ、前記経路選択部は、 送信を依頼された IPパケットに設定されて 、る送信先アドレスとポート番号を、前記 通信状況記録部によって記録された情報と照合して、同一の送信先アドレスとポート 番号をもつ IPパケットの通信状況に関する情報を取得し、該情報を所定の閾値と比 較して、通信にもち 、るネットワークを選択するための選択論理を選択することを特徴 とする。 [0016] この発明の態様によれば、実際の使用状況に基づいて、 IPパケットを送信するネッ トワークを選択するための選択論理を変更するように構成したので、複雑な設定をす ることなぐアプリケーションごとの通信状況に応じて使用するネットワークを動的に変 更することができる。 [0015] Further, in another aspect of the present invention, in the above aspect of the invention, the information processing apparatus uses the information of the IP packet transmitted via the virtual network unit for each destination address and port number. The route selection unit further sets the destination address and port number set in the IP packet requested to be transmitted and the information recorded by the communication status recording unit. A selection logic for selecting a network to be used for communication by comparing and obtaining information on the communication status of IP packets having the same destination address and port number and comparing the information with a predetermined threshold. It is characterized by selecting. [0016] According to the aspect of the present invention, since the selection logic for selecting the network that transmits the IP packet is changed based on the actual usage situation, the complicated setting is not required. The network to be used can be changed dynamically according to the communication status of each application.
発明の効果  The invention's effect
[0017] 本発明の一つの態様によれば、仮想的なネットワークドライバにおいて IPパケットの 送信依頼を受け付け、送信を依頼された IPパケットを選択論理に基づ!ヽて選択した ネットワークを介して送信するように構成したので、サーバ装置単位やアプリケーショ ン単位で通信にもちいるネットワークを動的に切り替えることができるという効果を奏 する。  [0017] According to one aspect of the present invention, a virtual network driver receives an IP packet transmission request, and transmits the requested IP packet via a network selected based on selection logic. As a result, the network used for communication can be dynamically switched in units of server devices or applications.
[0018] また、本発明の他の態様によれば、予め記憶されたスケジュールに従って、通信に もちいるネットワークを選択するための選択論理の種類を変更するように構成したの で、曜日や時間帯ごとの要件に応じて使用するネットワークを動的に変更することが できるという効果を奏する。  [0018] Further, according to another aspect of the present invention, since the type of selection logic for selecting a network used for communication is changed according to a schedule stored in advance, the day of the week or the time zone The network to be used can be dynamically changed according to the requirements of each.
[0019] また、本発明の他の態様によれば、予め記憶されたポート番号と選択論理の対応 表に基づ 、て、 IPパケットを送信するネットワークを選択するための選択論理を変更 するように構成したので、アプリケーションごとの要件に応じて使用するネットワークを 動的に変更することができるという効果を奏する。  [0019] According to another aspect of the present invention, the selection logic for selecting a network that transmits an IP packet is changed based on a correspondence table of port numbers stored in advance and selection logic. As a result, the network to be used can be dynamically changed according to the requirements of each application.
[0020] また、本発明の他の態様によれば、実際の使用状況に基づいて、 IPパケットを送信 するネットワークを選択するための選択論理を変更するように構成したので、複雑な 設定をすることなぐアプリケーションごとの通信状況に応じて使用するネットワークを 動的に変更することができるという効果を奏する。  [0020] Further, according to another aspect of the present invention, since the selection logic for selecting a network to transmit an IP packet is changed based on an actual usage situation, a complicated setting is made. The effect is that the network to be used can be changed dynamically according to the communication status of each application.
図面の簡単な説明  Brief Description of Drawings
[0021] [図 1]図 1は、本実施例に係る経路制御方法におけるアドレス指定の一例を示す図で ある。  FIG. 1 is a diagram illustrating an example of address designation in the route control method according to the present embodiment.
[図 2]図 2は、ノードの構成を示す機能ブロック図である。  FIG. 2 is a functional block diagram showing a node configuration.
[図 3]図 3は、本実施例に係る経路制御プログラムの構成を示す機能ブロック図であ る。 [図 4]図 4は、ノード情報の一例を示す図である。 FIG. 3 is a functional block diagram showing the configuration of the path control program according to the present embodiment. FIG. 4 is a diagram showing an example of node information.
[図 5]図 5は、設定データの一例を示す図である。 FIG. 5 is a diagram illustrating an example of setting data.
[図 6]図 6は、デバイス情報の一例を示す図である。 FIG. 6 is a diagram showing an example of device information.
[図 7]図 7は、経路情報の一例を示す図である。 FIG. 7 is a diagram showing an example of route information.
[図 8]図 8は、スケジュール情報の一例を示す図である。 FIG. 8 is a diagram showing an example of schedule information.
[図 9]図 9は、パケット送信時における経路制御プログラムの処理手順を示すフローチ ヤートである。  [FIG. 9] FIG. 9 is a flowchart showing the processing procedure of the routing control program at the time of packet transmission.
[図 10]図 10は、デバイス選択処理の処理手順を示すフローチャートである。  FIG. 10 is a flowchart illustrating a processing procedure for device selection processing.
[図 11]図 11は、パケット受信時における経路制御プログラムの処理手順を示すフロ 一チャートである。  [FIG. 11] FIG. 11 is a flowchart showing a processing procedure of the routing control program at the time of packet reception.
[図 12]図 12は、本実施例に係る経路制御プログラムの構成を示す機能ブロック図で ある。  FIG. 12 is a functional block diagram showing the configuration of the path control program according to the present embodiment.
[図 13]図 13は、ポート番号別設定情報の一例を示す図である。  FIG. 13 is a diagram showing an example of setting information by port number.
[図 14]図 14は、通信状況情報の一例を示す図である。 FIG. 14 is a diagram showing an example of communication status information.
[図 15]図 15は、パケット送信時における経路制御プログラムの処理手順を示すフロ 一チャートである。  [FIG. 15] FIG. 15 is a flowchart showing a processing procedure of a route control program at the time of packet transmission.
[図 16]図 16は、選択論理選択処理の処理手順を示すフローチャートである。  FIG. 16 is a flowchart showing a processing procedure of selection logic selection processing.
[図 17]図 17は、従来のアドレス指定の一例を示す図である。 FIG. 17 is a diagram showing an example of conventional address designation.
符号の説明 Explanation of symbols
11、 12 ネットワーク  11, 12 network
21、 22、 31、 32 IPノ ケッ卜  21, 22, 31, 32 IP socket
100、 200、 300、 400 ノード  100, 200, 300, 400 nodes
110、 110、 210、 210 不ットワ -クデバイス  110, 110, 210, 210
2 1 2  2 1 2
111、 111、 211、 211 ネットヮ -クドライノ  111, 111, 211, 211 Net ヮ-Kudraino
2 1 2  2 1 2
112、 112、 212、 212 アプリケ -シヨン  112, 112, 212, 212
2 1 2  2 1 2
310 - -310 、410 410 ネットヮ —クデバイス  310--310, 410 410
n 1 2  n 1 2
311、 311、 411 , 411 ネットヮ -クドライノ  311, 311, 411, 411 Net ヮ-Kudraino
2 1 2  2 1 2
312、 312、 412 , 412 アプリケ -シヨン 313、 , 413 仮想ネットワークドライバ312, 312, 412, 412 Applique-Chillon 313,, 413 Virtual network driver
320 CPU 320 CPU
330 媒体読取装置  330 Media reader
340 RAM  340 RAM
350 ハードディスク装置  350 hard disk drive
360 ノ ス  360 Nose
500 カーネルプログラム  500 kernel program
600 アプリケーションプログラム 600 application programs
700 経路制御プログラム 700 routing program
710 仮想ネットワークドライバ部 710 Virtual network driver
720 情報初期化部 720 Information initialization section
730 ネットワーク監視部  730 Network monitoring unit
740 送信制御部  740 transmission controller
741 経路選択部  741 Route selector
742 パケット転送部  742 Packet transfer unit
750 受信制御部  750 Reception control unit
761 ノード情報  761 Node information
762 デバイス情報  762 Device information
763 経路情報  763 Route information
764 スケジュール情報  764 Schedule information
800 設定データ  800 Setting data
900 経路制御プログラム  900 Routing program
910 仮想ネットワークドライバ部 910 Virtual network driver
920 情報初期化部 920 Information initialization section
940 送信制御部  940 Transmission control unit
941 経路選択部  941 Route selector
965 ポート番号別設定情報 965 Setting information by port number
966 通信状況情報 970 通信状況記録部 966 Communication status information 970 Communication Status Recorder
発明を実施するための最良の形態  BEST MODE FOR CARRYING OUT THE INVENTION
[0023] 以下に、本発明に係る経路制御プログラムおよび経路制御方法の実施例を図面に 基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではな い。 Hereinafter, embodiments of a route control program and a route control method according to the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.
実施例 1  Example 1
[0024] まず、ノードが複数のネットワークに接続された環境において、従来どのようにァドレ ス指定がおこなわれてきたかについて説明する。なお、本明細書では、「ノード」の語 は、ネットワークに接続されたサーバ装置やパソコン等の各種情報処理装置を表すも のとする。  First, a description will be given of how address designation has conventionally been performed in an environment in which nodes are connected to a plurality of networks. In this specification, the term “node” represents various information processing devices such as a server device and a personal computer connected to a network.
[0025] 図 17は、従来のアドレス指定の一例を示す図である。同図に示すように、ノード 10 0は、ネットワークデバイス 110を介してネットワーク 11と接続され、ネットワークデバ  FIG. 17 is a diagram showing an example of conventional address designation. As shown in the figure, the node 100 is connected to the network 11 via the network device 110 and is connected to the network device.
1  1
イス 110を介してネットワーク 12と接続されている。また、ノード 200は、ネットワーク It is connected to the network 12 via the chair 110. Node 200 is a network
2 2
デバイス 210を介してネットワーク 11と接続され、ネットワークデバイス 210を介して  Connected to network 11 via device 210 and via network device 210
1 2 ネットワーク 12と接続されている。  1 2 Connected to network 12.
[0026] このような環境において、ノード 100上で動作するアプリケーション 112力 ノード 2 [0026] In such an environment, an application running on the node 100 112 power node 2
1  1
00上で動作するアプリケーション 212と通信するものとする。複数のネットワークデバ  It is assumed that the application 212 running on 00 communicates. Multiple network devices
1  1
イスを備えるノードでは、通常、ネットワークデバイスを制御するネットワークドライバご とに IPアドレスが割り当てられ、この IPアドレスを指定することにより、どのネットワーク デバイスを使用して通信をおこなうかが決定される。  In a node equipped with a chair, an IP address is usually assigned to each network driver that controls the network device, and by specifying this IP address, it is determined which network device is used for communication.
[0027] したがって、アプリケーション 112は、ネットワークデバイス 110を制御するネットヮ  [0027] Therefore, the application 112 controls the network device 110 that controls the network device 110.
1 1  1 1
ークドライバ 111に割り当てられた IPアドレスを送信元として指定し、ネットワークデ  Specify the IP address assigned to the network driver 111 as the source
1  1
バイス 210を制御するネットワークドライバ 211に割り当てられた IPアドレスを送信先  IP address assigned to network driver 211 that controls device 210
1 1  1 1
として指定することにより、ネットワーク 11を介して通信をおこなうか、ネットワークデバ イス 110を制御するネットワークドライバ 111に割り当てられた IPアドレスを送信元と The IP address assigned to the network driver 111 that communicates via the network 11 or controls the network device 110
2 2 twenty two
して指定し、ネットワークデバイス 210を制御するネットワークドライバ 211に割り当て  And assign it to the network driver 211 that controls the network device 210
2 2 られた IPアドレスを送信先として指定することにより、ネットワーク 12を介して通信をお こなうか、 V、ずれか一方の設定で通信をおこなう必要がある。 [0028] ここで、アプリケーション 112 1S ネットワーク 11を介してアプリケーション 212と通 2 2 By specifying the specified IP address as the destination, it is necessary to communicate via the network 12, or to communicate with either V or Vs. [0028] Here, application 112 communicates with application 212 via 1S network 11.
1 1 信するように、管理者が設定していたものとする。この場合、ネットワークドライバ 111  1 1 It is assumed that the administrator has set up to communicate. In this case, the network driver 111
1 に割り当てられた IPアドレスが「10. 124. 128. 11」であり、ネットワークドライバ 211  The IP address assigned to 1 is “10. 124. 128. 11” and the network driver 211
1 に割り当てられた IPアドレスが「10. 124. 128. 21」であるとすると、アプリケーション 112は、送信する IPパケット 21の送信元として「10. 124. 128. 11」を、送信先とし Assuming that the IP address assigned to 1 is “10. 124. 128. 21”, the application 112 sets “10. 124. 128. 11” as the transmission destination of the IP packet 21 to be transmitted.
1 1
て「10. 124. 128. 21」を明示的に指定する。  Specify "10. 124. 128. 21" explicitly.
[0029] このような明示的な指定の結果、アプリケーション 112力も送出される IPパケット 21 [0029] As a result of such an explicit specification, the IP packet is also sent out by the application 112. 21
1  1
の送信元アドレス(SA)と送信先アドレス(DA)には、それぞれ、「10. 124. 128. 1 1」と「10. 124. 128. 21」が設定され、 IPパケット 21は、ネットワーク 11を介してァプ リケーシヨン 212へ伝送される。  The source address (SA) and destination address (DA) are set to “10. 124. 128. 1 1” and “10. 124. 128. 21”, respectively. Is transmitted to the application 212 via the.
1  1
[0030] また、ノード 100上で動作するアプリケーション 112力 ネットワーク 12を介して、ノ  [0030] In addition, the application 112 that runs on the node 100
2  2
ード 200上で動作するアプリケーション 212と通信するように、管理者が設定してい  The administrator has configured to communicate with application 212 running on
2  2
たものとする。この場合、ネットワークドライバ 111に割り当てられた IPアドレスが「10  Shall be. In this case, the IP address assigned to the network driver 111 is “10
2  2
. 124. 128. 12」であり、ネットワークドライバ 211に割り当てられた IPアドレスが「10  124.128.12 ”and the IP address assigned to the network driver 211 is“ 10.
2  2
. 124. 128. 22」であるとすると、アプリケーション 112は、送信する IPノケット 22の  124. 128. 22 ", the application 112 sends the IP knot 22 to be sent.
2  2
送信元として「10. 124. 128. 12」を、送信先として「10. 124. 128. 22」を明示的 に指定する。  Explicitly specify “10. 124. 128. 12” as the source and “10. 124. 128. 22” as the destination.
[0031] このような明示的な指定の結果、アプリケーション 112力も送出される IPパケット 22  [0031] As a result of such an explicit specification, the IP packet is also sent out by the application 112. 22
2  2
の送信元アドレス(SA)と送信先アドレス(DA)には、それぞれ、「10. 124. 128. 1 2」と「10. 124. 128. 22」が設定され、 IPパケット 22は、ネットワーク 12を介してァプ リケーシヨン 212へ伝送される。  The source address (SA) and destination address (DA) are set to “10. 124. 128. 12” and “10. 124. 128. 22”, respectively. Is transmitted to the application 212 via the.
2  2
[0032] このように、従来、ノードが複数のネットワークに接続された環境においては、ノード 上で動作するアプリケーションは、予め定められたネットワークを介して他のノード上 で動作するアプリケーションと通信をおこなうために、各ネットワークデバイスを制御す るネットワークドライバに割り当てられた IPアドレスを明示的に指定していた。  [0032] Thus, conventionally, in an environment in which a node is connected to a plurality of networks, an application operating on the node communicates with an application operating on another node via a predetermined network. Therefore, the IP address assigned to the network driver that controls each network device was explicitly specified.
[0033] このため、動作させるアプリケーションの数が多い場合には、それぞれのアプリケー シヨンが適切なネットワークを使用するように設定する管理者に大きな負荷がかかつ ていた。また、あるネットワークのトラフィックが多くなつた場合に、トラフィックの少ない ネットワークを使用するようにすると 、うように、状況に応じてアプリケーションが使用 するネットワークを切り替えることが困難であった。 [0033] For this reason, when there are a large number of applications to be operated, there is a heavy load on the administrator who sets each application to use an appropriate network. Also, when there is a lot of traffic on a network, there is little traffic When using a network, it was difficult to switch the network used by the application depending on the situation.
[0034] 次に、本実施例に係る経路制御方法におけるアドレス指定について説明する。図 1 は、本実施例に係る経路制御方法におけるアドレス指定の一例を示す図である。同 図に示すように、ノード 300は、ネットワークデバイス 310を介してネットワーク 11と接  Next, address designation in the route control method according to the present embodiment will be described. FIG. 1 is a diagram illustrating an example of address designation in the route control method according to the present embodiment. As shown in the figure, the node 300 is connected to the network 11 via the network device 310.
1  1
続され、ネットワークデバイス 310を介してネットワーク 12と接続されている。また、ノ  Connected to the network 12 via the network device 310. Also,
2  2
ード 400は、ネットワークデバイス 410を介してネットワーク 11と接続され、ネットヮー  The network 400 is connected to the network 11 via the network device 410, and the network
1  1
クデバイス 410を介してネットワーク 12と接続されて ヽる。  Connected to the network 12 via the network device 410.
2  2
[0035] 同様に、その他のノードも複数のネットワークデバイスを備え、そのうちのいずれか 1 つのネットワークデバイスを介してネットワーク 11と接続され、他のネットワークデバイ スを介してネットワーク 12と接続されているものとする。  [0035] Similarly, other nodes also include a plurality of network devices, which are connected to the network 11 via any one of the network devices and connected to the network 12 via other network devices. And
[0036] このような環境において、ノード 300上で動作するアプリケーション 312力 ノード 4  [0036] In such an environment, an application that runs on the node 300 312 force node 4
1  1
00上で動作するアプリケーション 412と通信するものとする。本実施例に係る経路制  Suppose that it communicates with an application 412 running on 00. Route control according to this embodiment
1  1
御方法では、ノードがいくつのネットワークデバイスを備えるかに関わらず、各アプリ ケーシヨンは、ノードに 1つ設けられた仮想ネットワークドライバに割り当てられた代表 I Pアドレスを指定して、他のアプリケーションと通信をおこなう。  In this method, each application communicates with other applications by specifying the representative IP address assigned to the virtual network driver provided in the node, regardless of how many network devices the node has. Do it.
[0037] 図 1の例では、ノード 300には、仮想ネットワークドライバ 313が設けられ、ノード 40 0には、仮想ネットワークドライバ 413が設けられている。そして、仮想ネットワークドラ イノく 313には、「10. 124. 128. 10」という代表 IPアドレスが割り当てられ、仮想ネッ トワークドライバ 413には、「10. 124. 128. 20」という代表 IPアドレスが割り当てられ ている。 In the example of FIG. 1, the node 300 is provided with a virtual network driver 313, and the node 400 0 is provided with a virtual network driver 413. A representative IP address “10. 124. 128. 10” is assigned to the virtual network driver 313, and a representative IP address “10. 124. 128. 20” is assigned to the virtual network driver 413. Assigned.
[0038] そして、ノード 300上で動作するアプリケーション 312力 ノード 400上で動作する  [0038] And the application that runs on the node 300 312 force that runs on the node 400
1  1
アプリケーション 412と通信する場合、アプリケーション 312は、送信する IPパケット  When communicating with application 412, application 312 sends an IP packet
1 1  1 1
31の送信元として「10. 124. 128. 10」を、送信先として「10. 124. 128. 20」を旨 定する。このように指定された IPパケット 31は、仮想ネットワークドライバ 313にて受 信され、所定の選択論理によって選択されたネットワークを介してアプリケーション 41 2へ伝送される。  Specify “10. 124. 128. 10” as the source of 31 and “10. 124. 128. 20” as the destination. The IP packet 31 thus designated is received by the virtual network driver 313 and transmitted to the application 412 via the network selected by a predetermined selection logic.
1  1
[0039] 同様に、ノード 300上で動作するアプリケーション 312力 ノード 400上で動作する アプリケーション 412と通信する場合、アプリケーション 312は、送信する IPパケット [0039] Similarly, an application that runs on node 300 312 that runs on node 400 When communicating with application 412, application 312 sends an IP packet
2 2  twenty two
31の送信元として「10. 124. 128. 10」を、送信先として「10. 124. 128. 20」を旨 定する。このように指定された IPパケット 32は、仮想ネットワークドライバ 313にて受 信され、所定の選択論理によって選択されたネットワークを介してアプリケーション 41 2へ伝送される。  Specify “10. 124. 128. 10” as the source of 31 and “10. 124. 128. 20” as the destination. The designated IP packet 32 is received by the virtual network driver 313 and transmitted to the application 412 via the network selected by a predetermined selection logic.
1  1
[0040] このように、本実施例に係る経路制御方法におけるアドレス指定では、ノードが複数 のネットワークデバイスを備える場合であっても、各アプリケーションは、ノードごと〖こ 1 つだけ存在する仮想ネットワークドライバに割り当てられた代表 IPアドレスを指定する ことにより、個別のネットワークデバイスを明示的に指定することなぐ他のノード上で 動作するアプリケーションと通信をおこなうことができる。  [0040] As described above, in the addressing in the routing control method according to the present embodiment, even if the node includes a plurality of network devices, each application has only one virtual network driver for each node. By specifying the representative IP address assigned to, it is possible to communicate with applications running on other nodes without explicitly specifying individual network devices.
[0041] すなわち、本実施例に係る経路制御方法を適用することにより、各アプリケーション に対して、使用する IPアドレスを指定するための負荷が軽減される。また、選択論理 の設定内容によって、あるネットワークのトラフィックが多くなつた場合に、トラフィック の少な 、ネットワークを使用するようにすると 、うように、状況に応じてアプリケーショ ンが使用するネットワークを切り替えることが可能になる。  That is, by applying the route control method according to the present embodiment, the load for designating the IP address to be used for each application is reduced. Also, depending on the settings of the selection logic, when there is a lot of traffic on a certain network, the network used by the application can be switched depending on the situation. It becomes possible.
[0042] 次に、図 1に示したノード 300の構成について説明する。なお、図 1に示したノード 4 00等の他のノードもノード 300と同様の構成を有する。図 2は、ノード 300の構成を示 す機能ブロック図である。  Next, the configuration of the node 300 shown in FIG. 1 will be described. Note that other nodes such as the node 400 shown in FIG. FIG. 2 is a functional block diagram showing the configuration of the node 300.
[0043] 同図に示すように、ノード 300は、ネットワークデバイス 310〜310nと、各種演算処  [0043] As shown in the figure, the node 300 includes network devices 310 to 310n and various arithmetic processing units.
1  1
理を実行する CPU (Central Processing Unit) 320と、記録媒体からプログラム等を 読み取る媒体読取装置 330と、各種情報を一時記憶する RAM (Random Access Memory) 340と、各種情報を記憶可能なハードディスク装置 350とをバス 360で接続 して構成される。  CPU (Central Processing Unit) 320 that performs processing, a medium reader 330 that reads a program from a recording medium, a random access memory (RAM) 340 that temporarily stores various information, and a hard disk device that can store various information 350 Are connected by bus 360.
[0044] そして、ハードディスク装置 350には、ノード 300の動作を制御するオペレーティン グシステムの基本部分であるカーネルプログラム 500と、 目的に応じてネットワーク通 信等の各種処理を実行するアプリケーションプログラム 600と、本実施例に係る経路 制御方法を実現する経路制御プログラム 700と、経路制御プログラム 700によって使 用される設定データ 800とが記憶される。 [0045] カーネルプログラム 500は、ノード 300の起動時に、 CPU320によって RAM340 上に展開され、オペレーティングシステムとして機能するようになる。そして、その過程 において、経路制御プログラム 700も、 CPU320によって RAM340上に展開され、 設定データ 800を読み込んで、本実施例に係る経路制御方法を実現するための各 種処理の実行を開始するようになる。 [0044] The hard disk device 350 includes a kernel program 500 that is a basic part of the operating system that controls the operation of the node 300, an application program 600 that executes various processes such as network communication according to the purpose, and a main program. The path control program 700 for realizing the path control method according to the embodiment and the setting data 800 used by the path control program 700 are stored. The kernel program 500 is expanded on the RAM 340 by the CPU 320 when the node 300 is activated, and functions as an operating system. In this process, the path control program 700 is also expanded on the RAM 340 by the CPU 320, reads the setting data 800, and starts executing various processes for realizing the path control method according to the present embodiment. Become.
[0046] 具体的には、経路制御プログラム 700のうち、仮想ネットワークドライバ 313に相当 する部分は、ドライバとしてオペレーティングシステムに組み込まれ、他の部分は、デ 一モンとしてオペレーティングシステムの外部で実行される。あるいは、経路制御プロ グラム 700のうち、仮想ネットワークドライバ 313に相当する部分以外もオペレーティ ングシステムに組み込まれるように構成してもよ 、。  [0046] Specifically, in the routing control program 700, a part corresponding to the virtual network driver 313 is incorporated into the operating system as a driver, and the other part is executed outside the operating system as a daemon. . Alternatively, a part of the routing program 700 other than the part corresponding to the virtual network driver 313 may be incorporated into the operating system.
[0047] なお、経路制御プログラム 700は、必ずしもハードディスク装置 350に格納されて ヽ る必要はなぐ CD—ROM等の記憶媒体に記憶されたこのプログラムを、ノード 300 が読み出して実行するようにしてもよい。また、公衆回線、インターネット、 LAN (Loca 1 Area Network)、 WAN (Wide Area Network)等を介してノード 300に接続される 他の情報処理装置にこのプログラムを記憶させておき、ノード 300がそこ力もプロダラ ムを読み出して実行するようにしてもょ 、。  [0047] Note that the path control program 700 is not necessarily stored in the hard disk device 350, and the node 300 may read and execute this program stored in a storage medium such as a CD-ROM. Good. In addition, this program is stored in another information processing apparatus connected to the node 300 via a public line, the Internet, a LAN (Loca 1 Area Network), a WAN (Wide Area Network), etc. Read the program and execute it.
[0048] 次に、経路制御プログラム 700の構成について説明する。図 3は、本実施例に係る 経路制御プログラム 700の構成を示す機能ブロック図である。同図に示すように、経 路制御プログラム 700は、仮想ネットワークドライバ部 710と、情報初期化部 720と、 ネットワーク監視部 730と、送信制御部 740と、受信制御部 750と、ノード情報 761と 、デバイス情報 762と、経路情報 763と、スケジュール情報 764とを含む。  [0048] Next, the configuration of the route control program 700 will be described. FIG. 3 is a functional block diagram showing the configuration of the route control program 700 according to the present embodiment. As shown in the figure, the path control program 700 includes a virtual network driver unit 710, an information initialization unit 720, a network monitoring unit 730, a transmission control unit 740, a reception control unit 750, and node information 761. , Device information 762, route information 763, and schedule information 764.
[0049] 仮想ネットワークドライバ部 710は、経路制御プログラム 700が動作するノードにお いて仮想的なネットワークドライバとして機能する処理部であり、図 1に示した仮想ネ ットワークドライバ 313に相当する。仮想ネットワークドライバ部 710は、経路制御プロ グラム 700が動作するノード上で動作するアプリケーションと IPパケットをやりとりする ためのインターフェースとして機能する。  The virtual network driver unit 710 is a processing unit that functions as a virtual network driver in the node where the path control program 700 operates, and corresponds to the virtual network driver 313 shown in FIG. The virtual network driver unit 710 functions as an interface for exchanging IP packets with an application that operates on a node on which the routing control program 700 operates.
[0050] 情報初期化部 720は、経路制御プログラム 700の起動後に、ノード情報 761、デバ イス情報 762、経路情報 763およびスケジュール情報 764を初期化する処理部であ る。これらの情報の詳細を以下に示す。 [0050] The information initialization unit 720 is a processing unit that initializes the node information 761, the device information 762, the route information 763, and the schedule information 764 after the route control program 700 is started. The Details of these information are shown below.
[0051] 図 4は、ノード情報 761の一例を示す図である。同図に示すように、ノード情報 761 は、ノードと代表 IPアドレスの対応を示す情報であり、ノード名、代表 IPアドレスといつ た項目を有する。ノード名は、ノードのホスト名を示し、代表 IPアドレスは、そのノード に 1つだけ存在する仮想ネットワークドライバに割り当てられた IPアドレスを示す。情 報初期化部 720は、設定データ 800の所定部分を読み出すことにより、ノード情報 7 61を初期生成する。  FIG. 4 is a diagram illustrating an example of the node information 761. As shown in the figure, the node information 761 is information indicating the correspondence between the node and the representative IP address, and includes items such as a node name and a representative IP address. The node name indicates the host name of the node, and the representative IP address indicates the IP address assigned to only one virtual network driver that exists in the node. The information initialization unit 720 initially generates node information 761 by reading a predetermined portion of the setting data 800.
[0052] ここで、設定データ 800の例を示しておく。図 5は、設定データ 800の一例を示す図 である。同図に示すように、設定データ 800には、各ノードに割り当てられている代表 IPアドレスが登録されている。また、各ノードが備えているネットワークデバイス毎に、 それらのネットワークデバイスに対応するネットワークドライバに割り当てられている IP アドレスと、それらのネットワークデバイスが接続されているネットワークにおいて IPパ ケットの送受信が禁止されて 、るポート番号のリストも登録されて 、る。  Here, an example of the setting data 800 is shown. FIG. 5 is a diagram illustrating an example of the setting data 800. As shown in the figure, in the setting data 800, the representative IP address assigned to each node is registered. In addition, for each network device provided in each node, the IP address assigned to the network driver corresponding to those network devices and the transmission and reception of IP packets in the network to which those network devices are connected are prohibited. A list of port numbers is also registered.
[0053] 図 6は、デバイス情報 762の一例を示す図である。同図に示すように、デバイス情 報 762は、他のノードが備えるネットワークデバイスに関する情報であり、ノード名、デ ノ イス名、 IPアドレス、禁止ポート、転送速度、 MTU (Maximum Transmission Unit) 長、転送頻度、故障率といった項目を有する。ノード名は、ネットワークデバイスが存 在するノードのホスト名を示し、ノード情報 761のノード名と対応する。  FIG. 6 is a diagram showing an example of device information 762. As shown in the figure, device information 762 is information related to network devices provided by other nodes, and includes node name, device name, IP address, prohibited port, transfer speed, maximum transmission unit (MTU) length, It has items such as transfer frequency and failure rate. The node name indicates the host name of the node where the network device exists, and corresponds to the node name of the node information 761.
[0054] デバイス名は、ネットワークデバイスの名前であり、 IPアドレスは、そのネットワークデ バイスに対応するネットワークドライバに割り当てられている IPアドレスである。禁止ポ ートは、そのネットワークデバイスが接続されているネットワークにおいて IPパケットの 送受信が禁止されているポート番号のリストが設定される項目である。転送速度、 MT U長、転送頻度および故障率は、そのネットワークデバイスが接続されているネットヮ ークの転送速度、 MTU長、転送頻度および故障率である。  [0054] The device name is the name of the network device, and the IP address is the IP address assigned to the network driver corresponding to the network device. The prohibited port is an item that sets a list of port numbers that are prohibited from sending and receiving IP packets in the network to which the network device is connected. The transfer rate, MTU length, transfer frequency, and failure rate are the transfer rate, MTU length, transfer frequency, and failure rate of the network to which the network device is connected.
[0055] 情報初期化部 720は、設定データ 800の所定部分を読み出すことにより、デバイス 情報 762のノード名〜禁止ポートを初期生成する。そして、後述する経路情報 763を 初期生成した後、接続可能な経路を使用して他のノードと通信をおこない、その結果 に基づいて、各ネットワークの転送速度と MTU長を測定し、情報初期化部 720に設 定する。なお、転送頻度と故障率については、情報初期化部 720は、値を 0に設定し 、更新は、ネットワーク監視部 730によっておこなわれる。 The information initialization unit 720 initially generates a node name to a prohibited port of the device information 762 by reading a predetermined part of the setting data 800. Then, after initial generation of route information 763 to be described later, it communicates with other nodes using connectable routes, and based on the result, the transfer rate and MTU length of each network are measured to initialize the information. Part 720 Determine. For the transfer frequency and failure rate, the information initialization unit 720 sets the value to 0, and the update is performed by the network monitoring unit 730.
[0056] 図 7は、経路情報 763の一例を示す図である。同図に示すように、経路情報 763は 、ネットワークデバイス間の接続関係を示す情報であり、自ノードデバイス、他ノード デバイス、接続状態といった項目を有する。自ノードデバイスは、経路制御プログラム 700が動作しているノードが実際に備えるネットワークデバイスに対応する IPアドレス であり、他ノードデバイスは、他のノードが実際に備えるネットワークデバイスに対応 する IPアドレスである。なお、図 7は、ノード 300における経路情報 763の例である。  FIG. 7 is a diagram showing an example of route information 763. As shown in the figure, the path information 763 is information indicating a connection relationship between network devices, and includes items such as a self-node device, another node device, and a connection state. The own node device is an IP address corresponding to the network device actually provided by the node on which the routing control program 700 is operating, and the other node device is the IP address corresponding to the network device actually provided by the other node. . FIG. 7 is an example of route information 763 in the node 300.
[0057] 接続状態は、自ノードデバイスが示すネットワークデバイスと他ノードデバイスが示 すネットワークデバイスとの間で接続が可能カゝ否かを示している。情報初期化部 720 は、設定データ 800の所定部分を読み出すことにより、経路情報 763を初期生成す る。なお、接続状態は、情報初期化部 720によって初期設定された後、実際に接続 状況を反映するように、ネットワーク監視部 730によって更新される。  The connection state indicates whether or not connection is possible between the network device indicated by the own node device and the network device indicated by the other node device. The information initialization unit 720 initially generates route information 763 by reading a predetermined part of the setting data 800. The connection state is initialized by the information initialization unit 720 and then updated by the network monitoring unit 730 so as to actually reflect the connection state.
[0058] 図 8は、スケジュール情報 764の一例を示す図である。同図に示すように、スケジュ ール情報 764は、適用する選択論理を変化させるスケジュールを示す情報であり、 曜日、時間帯、選択論理と 1、つた項目を有する。曜日と時間帯は、対応する選択論 理が適用される曜日と時間帯である。なお、この例では、曜日と時間帯の組み合わせ によりスケジュールを表現する例を示して 、るが、日付と時間帯の組み合わせ等によ つてスケジュールを表現することとしてもよ 、。  FIG. 8 is a diagram showing an example of schedule information 764. As shown in the figure, the schedule information 764 is information indicating a schedule for changing the selection logic to be applied, and includes one item, a day of the week, a time zone, and a selection logic. The day of the week and the time of day are the day of the week and the time of day to which the corresponding selection logic applies. In this example, the schedule is expressed by a combination of the day of the week and the time zone. However, the schedule may be expressed by a combination of the date and the time zone.
[0059] 選択論理は、ノードが接続されている複数のネットワーク力 通信にもちいるネットヮ ークを選択するための論理であり、「信頼性優先」、「転送頻度優先」、「転送速度優 先」といった値をとる。「信頼性優先」は、故障率が最も低いネットワークを優先的に選 択する論理であり、「転送頻度優先」は、転送頻度が最も低いネットワークを優先的に 選択する論理であり、「転送速度優先」は、転送速度が最も高いネットワークを優先的 に選択する論理である。  [0059] The selection logic is a logic for selecting a network to be used for a plurality of network power communication to which a node is connected. "Reliability priority", "Transfer frequency priority", "Transfer speed priority" ”. “Reliability priority” is the logic that preferentially selects the network with the lowest failure rate, and “Transfer frequency priority” is the logic that preferentially selects the network with the lowest transfer frequency. “Priority” is the logic that preferentially selects the network with the highest transfer rate.
[0060] このように、選択論理をスケジュールに合わせて切り替えるように設定することにより 、例えば、運用管理者が少ない夜間や週末には通信エラーが発生することがないよ うに「信頼性優先」の選択論理に基づ!ヽてネットワークを選択し、バッチ処理を実行す る時間帯のように大量の情報を高速にやりとりする必要がある時間帯には「転送速度 優先」の選択論理に基づいてネットワークを選択し、その他の時間帯にはネットワーク トラフィックが高くならな 、ように「転送頻度優先」の選択論理に基づ 、てネットワーク を選択すると 、うように、状況に合わせて最適なネットワークをもち 、て通信がおこな われるように設定することができる。 [0060] In this way, by setting the selection logic to switch according to the schedule, for example, "reliability priority" is set so that communication errors do not occur at night and weekends when there are few operation managers. Based on selection logic, select a network and execute batch processing Select a network based on the "transfer speed priority" selection logic during times when a large amount of information needs to be exchanged at high speed, such as during certain times, and network traffic does not increase at other times. As described above, when a network is selected based on the selection logic of “transfer frequency priority”, it is possible to set so that communication is performed with an optimal network according to the situation.
[0061] ネットワーク監視部 730は、経路情報 763を参照して定期的に PINGや netstatコ マンド等をもちいて各ネットワークを監視し、接続状態を経路情報 763に反映させると ともに、得られた転送頻度と故障率をデバイス情報 762に設定する処理部である。  [0061] The network monitoring unit 730 refers to the route information 763 and periodically uses the PING and netstat commands to monitor each network, reflects the connection status in the route information 763, and transfers the obtained transfer. This is a processing unit that sets the frequency and failure rate in the device information 762.
[0062] 送信制御部 740は、 IPパケットの送信を制御する制御部であり、経路選択部 741と 、パケット転送部 742とを有する。経路選択部 741は、どのネットワークをもちいてパ ケットを送信するかを選択する処理部である。  The transmission control unit 740 is a control unit that controls transmission of IP packets, and includes a route selection unit 741 and a packet transfer unit 742. The route selection unit 741 is a processing unit that selects which network is used to transmit a packet.
[0063] 具体的には、経路選択部 741は、仮想ネットワークドライバ部 710にて IPパケットが 受信されると、現在日時とスケジュール情報 764を照合して、適用すべき選択論理を 決定する。そして、ノード情報 761を参照して、送信先アドレスに指定されているノー ドを特定した後、デバイス情報 762と経路情報 763を参照して、使用可能なネットヮ ークの中で選択論理に最も適合するネットワークを選択する。  Specifically, when the virtual network driver unit 710 receives an IP packet, the route selection unit 741 compares the current date and time with the schedule information 764 and determines the selection logic to be applied. After referring to the node information 761 and identifying the node specified as the destination address, the device information 762 and the route information 763 are referred to, and the selection logic in the available network is the most. Select a matching network.
[0064] パケット転送部 742は、経路選択部 741によって選択されたネットワークを介して IP パケットが送信されるように、 IPパケットの送信先アドレスと送信元アドレスとを書き換 え、書き換え後の送信元アドレスに対応するネットワークドライバに IPパケットを転送 する処理部である。  [0064] The packet transfer unit 742 rewrites the transmission destination address and the transmission source address of the IP packet so that the IP packet is transmitted via the network selected by the route selection unit 741, and transmits the rewritten transmission. This processing unit forwards IP packets to the network driver corresponding to the original address.
[0065] 受信制御部 750は、 IPパケットの受信を制御する制御部である。具体的には、受信 制御部 750は、各ネットワークデバイスに対応するネットワークドライバでの IPパケット の受信を監視し、 V、ずれかのネットワークドライバで IPパケットが受信されたならばそ れを取得し、代表 IPアドレスの組み合わせになるように送信先アドレスと送信元ァドレ スを書き換えた後、仮想ネットワークドライバ部 710を介して、その IPパケットに設定さ れているポート番号を指定して受信を待っているアプリケーションへ IPパケットを引き 渡す。  [0065] Reception control section 750 is a control section that controls reception of IP packets. Specifically, the reception control unit 750 monitors reception of an IP packet by a network driver corresponding to each network device, and acquires an IP packet received by any network driver of V or any one of them. After rewriting the destination address and source address so that the combination of the representative IP address is obtained, specify the port number set in the IP packet via the virtual network driver unit 710 and wait for reception. The IP packet to the current application.
[0066] 次に、図 3に示した経路制御プログラム 700の処理手順について説明する。図 9は 、パケット送信時における経路制御プログラム 700の処理手順を示すフローチャート である。この処理手順は、他のノードへ向けた IPパケットが仮想ネットワークドライバ 部 710で受信されるたびに実行される。 Next, the processing procedure of the route control program 700 shown in FIG. 3 will be described. Figure 9 5 is a flowchart showing a processing procedure of the route control program 700 at the time of packet transmission. This processing procedure is executed each time an IP packet destined for another node is received by the virtual network driver unit 710.
[0067] 同図に示すように、仮想ネットワークドライバ部 710で IPパケットが受信されると (ス テツプ S101)、経路選択部 741は、スケジュール情報 764を参照して、現在日時に 対応する選択論理を取得する (ステップ S102)。そして、後述するデバイス選択処理 を実行して、送信先のノードと自ノードにおいて通信に使用するネットワークデバイス を選択する (ステップ S 103)。  [0067] As shown in the figure, when the virtual network driver unit 710 receives an IP packet (step S101), the route selection unit 741 refers to the schedule information 764 and selects the selection logic corresponding to the current date and time. Is acquired (step S102). Then, a device selection process to be described later is executed to select a network device to be used for communication between the destination node and the own node (step S103).
[0068] そして、パケット転送部 742が、ステップ S 103で選択されたネットワークデバイスが 送信先と送信元になるように IPパケットのアドレスを書き換え (ステップ S104)、ステツ プ S 103で選択された自ノードのネットワークデバイス力ら IPパケットが送出されるよう にそのネットワークデバイスに対応するネットワークドライバに IPパケットを転送する( ステップ S 105)。  [0068] Then, the packet transfer unit 742 rewrites the IP packet address so that the network device selected in step S103 becomes the transmission destination and the transmission source (step S104), and the packet transfer unit 742 updates the IP packet address selected in step S103. The IP packet is transferred to the network driver corresponding to the network device so that the IP packet is transmitted from the network device power of the node (step S 105).
[0069] 図 10は、デバイス選択処理の処理手順を示すフローチャートである。同図に示すよ うに、経路選択部 741は、仮想ネットワークドライバ部 710で受信された IPパケットの 送信先アドレスをノード情報 761と照合して送信先のノードを特定し (ステップ S201) 、デバイス情報 762から、そのノードが備えるネットワークデバイスの情報を抽出する( ステップ S202)。  FIG. 10 is a flowchart illustrating a processing procedure of device selection processing. As shown in the figure, the route selection unit 741 identifies the destination node by comparing the destination address of the IP packet received by the virtual network driver unit 710 with the node information 761 (step S201), and device information From 762, information on the network device provided in the node is extracted (step S202).
[0070] そして、ステップ S 102で取得された選択論理に従って、最も優先度の高いネットヮ ークデバイスを 1つ選択する (ステップ S203)。ここで、該当するネットワークデバイス が存在しなければ (ステップ S204否定)、所定のエラー処理を実行する。  [0070] Then, according to the selection logic acquired in step S102, one network device with the highest priority is selected (step S203). If there is no corresponding network device (No at step S204), predetermined error processing is executed.
[0071] 一方、ステップ S203で、最も優先度の高!、ネットワークデバイスを選択できた場合 は (ステップ S204肯定)、 IPパケットに設定されているポート番号を取得する (ステツ プ S205)。そして、デバイス情報 762の禁止ポートの項目を参照し、取得されたポー ト番号が、選択された送信先のネットワークデバイスに対応するネットワークにおいて 送受信が禁止されているものであれば (ステップ S 206肯定)、選択されたネットワーク デバイスを選択対象外として (ステップ S 209)、ステップ S203に戻って次に優先順 位の高 、ネットワークデバイスを選択し、以降の処理を再実行する。 [0072] ステップ S205で取得されたポート番号が禁止ポートに該当しない場合は (ステップ S206否定)、経路情報 763を参照して、選択された送信先のネットワークデバイスと 接続可能な自ノードのネットワークデバイスを選択する (ステップ S 207)。ここで、該 当するネットワークデバイスが存在しない場合は (ステップ S208否定)、選択された 送信先のネットワークデバイスを選択対象外として (ステップ S209)、ステップ S203 に戻って次に優先順位の高 ヽネットワークデバイスを選択し、以降の処理を再実行 する。 On the other hand, if the network device with the highest priority can be selected in Step S203 (Yes in Step S204), the port number set in the IP packet is acquired (Step S205). Then, referring to the prohibited port item in the device information 762, if the acquired port number is forbidden to transmit / receive in the network corresponding to the selected destination network device (Yes in step S206). ), Excluding the selected network device (step S209), returning to step S203, selecting the network device with the next highest priority, and performing the subsequent processing again. [0072] If the port number acquired in step S205 does not correspond to a prohibited port (No in step S206), refer to route information 763 and the network device of the local node that can be connected to the selected destination network device. Is selected (step S207). If there is no corresponding network device (No at step S208), the selected destination network device is excluded from the selection target (step S209), and the process returns to step S203 and the next higher priority network is selected. Select the device and re-execute the subsequent processing.
[0073] 一方、該当するネットワークデバイスが存在した場合は、そのネットワークデバイスを 送信元のネットワークデバイスとし、ステップ S203で選択されたネットワークデバイス を送信先のネットワークデバイスとして処理を終了する。  On the other hand, if the corresponding network device exists, the network device is set as the transmission source network device, and the processing is ended with the network device selected in step S203 as the transmission destination network device.
[0074] 例えば、ノード 300のアプリケーション 312から、送信先 IPアドレスとして「10. 124  For example, from the application 312 of the node 300, “10. 124” is set as the destination IP address.
1  1
. 128. 20」を指定し、送信元 IPアドレスとして「10. 124. 128. 10」を指定した IPパ ケットが送信され、選択論理が「転送速度優先」であった場合、まず、ステップ S201 にお 、て、送信先のノードがホスト Bであることが特定される。  128.20 ”is specified, and when an IP packet specifying“ 10.124.128.10 ”is transmitted as the source IP address and the selection logic is“ transfer speed priority ”, first, step S201 In this case, it is specified that the destination node is host B.
[0075] 続いて、ステップ S202において、ホスト Bが備えるネットワークデバイス力 「デバイ ス Bl」と「デバイス B2」であることが判明する。ステップ S203では、選択論理が「転送 速度優先」であるため、デバイス情報 762が図 6に示した通りであるとすると、最も転 送速度が高い「デバイス B2」が選択される。そして、該当するネットワークデバイスが あるため、ステップ S204は Yesとなる。  Subsequently, in step S202, it is determined that the network device powers “device Bl” and “device B2” of the host B are provided. In step S203, since the selection logic is “transfer speed priority”, if the device information 762 is as shown in FIG. 6, “device B2” having the highest transfer speed is selected. Since there is a corresponding network device, Step S204 is Yes.
[0076] 続いて、ステップ S205において、 IPパケットに設定されているポート番号が取得さ れる。ここで、取得されたポート番号が「20」であり、デバイス情報 762が図 6に示した 通りであるとすると、ステップ S206において、「デバイス B2」の禁止ポートび該当する ことが判明し (ステップ S206Yes)、ステップ S209において、選択された「デバイス B 2」は選択対象外となる。  [0076] Subsequently, in step S205, the port number set in the IP packet is acquired. Here, if the acquired port number is “20” and the device information 762 is as shown in FIG. 6, it is found in step S206 that the port is a prohibited port of “device B2” (step S206 Yes), and in step S209, the selected “device B 2” is not selected.
[0077] そして、再度ステップ S203に戻り、「デバイス B2」以外で選択論理を満たす「デバ イス Bl」が選択される。「デバイス Bl」には、禁止ポートが設定されていないため、ス テツプ S 206は Noとなる。  Then, the process returns to step S203 again, and “device Bl” satisfying the selection logic other than “device B2” is selected. Since no prohibited port is set for “Device Bl”, Step S206 is No.
[0078] 続いて、ステップ S207において、「デバイス Bl」と接続可能な自ノードのネットヮー クデバイスが抽出される。図 6のデバイス情報 762を参照すると「デバイス Bl」の IPァ ドレスは「10. 124. 11. 20」である。そして、図 7の経路情報を参照すると、この IPァ ドレスと接続可能な自ノードデバイスは、「10. 124. 11. 10」であることが判明する。 そして、該当するネットワークデバイスが存在したので、ステップ S208が Yesとなり、 処理を終了する。 [0078] Subsequently, in step S207, the network of the local node that can be connected to "device Bl" Device is extracted. Referring to device information 762 in Fig. 6, the IP address of “Device Bl” is “10. 124. 11. 20”. Then, referring to the route information in Fig. 7, it is found that the own node device that can be connected to this IP address is “10. 124.11. 11.10”. Then, since the corresponding network device exists, step S208 becomes Yes, and the process ends.
[0079] 図 11は、パケット受信時における経路制御プログラム 700の処理手順を示すフロー チャートである。この処理手順は、情報初期化部 720による初期処理が完了した後、 受信制御部 750によって繰り返し実行される。  FIG. 11 is a flowchart showing a processing procedure of the route control program 700 at the time of packet reception. This processing procedure is repeatedly executed by the reception control unit 750 after the initial processing by the information initialization unit 720 is completed.
[0080] 同図に示すように、受信制御部 750は、 自ノードの各ネットワークデバイスに対応す るネットワークドライバでの IPパケットの受信を監視し (ステップ S301)、 IPパケットが 受信された場合は、その IPパケットを取得する (ステップ S302)。  [0080] As shown in the figure, the reception control unit 750 monitors the reception of the IP packet by the network driver corresponding to each network device of its own node (step S301), and if the IP packet is received, The IP packet is acquired (step S302).
[0081] そして、デバイス情報 762とノード情報 761を参照して、 IPパケットの送信元アドレス と送信先アドレスを代表 IPアドレスに書き換え (ステップ S303)、仮想ネットワークドラ ィバ部 710を介して、その IPパケットに設定されているポート番号を指定して受信を 待って!/、るアプリケーションへ IPパケットを引き渡す (ステップ S 304)。  [0081] Then, referring to the device information 762 and the node information 761, the source address and destination address of the IP packet are rewritten to the representative IP address (step S303), and the virtual network driver unit 710 Specify the port number set in the IP packet and wait for reception! /, Then deliver the IP packet to the application (step S304).
実施例 2  Example 2
[0082] 実施例 1では、ノードごとに代表 IPアドレスを設け、通信にもちいるネットワークをノ ード単位で動的に変更する経路制御プログラムおよび経路制御方法の例を示したが 、通信にもちいるネットワークをアプリケーション単位で動的に変更するように構成す ることも可能である。そこで、本実施例では、通信にもちいるネットワークをアプリケー シヨン単位で動的に変更することができる経路制御プログラムおよび経路制御方法の 例について説明する。  In the first embodiment, an example of a routing control program and a routing control method in which a representative IP address is provided for each node and a network used for communication is dynamically changed in units of nodes has been described. It is also possible to configure the network to dynamically change on a per-application basis. Therefore, in this embodiment, an example of a route control program and a route control method capable of dynamically changing a network used for communication in units of applications will be described.
[0083] まず、本実施例に係る経路制御プログラム 900の構成について説明する。図 12は 、本実施例に係る経路制御プログラム 900の構成を示す機能ブロック図である。経路 制御プログラム 900は、既に説明した経路制御プログラム 700のように、ノード 300の ような複数のネットワークに接続された情報処理装置等に記憶され、実行されるプロ グラムである。  First, the configuration of the path control program 900 according to the present embodiment will be described. FIG. 12 is a functional block diagram showing the configuration of the path control program 900 according to the present embodiment. The route control program 900 is a program that is stored and executed in an information processing apparatus or the like connected to a plurality of networks such as the node 300 like the route control program 700 described above.
[0084] 同図に示すように、経路制御プログラム 900は、仮想ネットワークドライバ部 910と、 情報初期化部 920と、ネットワーク監視部 730と、送信制御部 940と、受信制御部 75 0と、ノード情報 761と、デバイス情報 762と、経路情報 763と、ポート番号別設定情 報 965と、通信状況情報 966と、通信状況記録部 970とを含む。 As shown in the figure, the path control program 900 includes a virtual network driver unit 910, Information initialization unit 920, network monitoring unit 730, transmission control unit 940, reception control unit 750, node information 761, device information 762, route information 763, setting information by port number 965, Communication status information 966 and a communication status recording unit 970 are included.
[0085] なお、同図において、図 3と同一の符号をもちいている処理部および情報は、図 3と 同様であることを示しており、これらについては、重複を避けるため、詳細な説明を省 略することとする。 In the same figure, the processing units and information using the same reference numerals as in FIG. 3 indicate that they are the same as those in FIG. 3, and in order to avoid duplication, a detailed description thereof will be given. It will be omitted.
[0086] 仮想ネットワークドライバ部 910は、経路制御プログラム 900が動作するノードにお いて仮想的なネットワークドライバとして機能する処理部であり、図 1に示した仮想ネ ットワークドライバ 313に相当する。仮想ネットワークドライバ部 710は、経路制御プロ グラム 700が動作するノード上で動作するアプリケーションと IPパケットをやりとりする ためのインターフェースとして機能するほか、自身を介して送信された IPパケットに関 する情報を通信状況記録部 970に通知し、通信状況情報 966に記録させる。  The virtual network driver unit 910 is a processing unit that functions as a virtual network driver in a node where the path control program 900 operates, and corresponds to the virtual network driver 313 shown in FIG. The virtual network driver unit 710 functions as an interface for exchanging IP packets with applications running on the node where the routing control program 700 runs, and also communicates information about IP packets sent via itself. The status recording unit 970 is notified and recorded in the communication status information 966.
[0087] 情報初期化部 920は、経路制御プログラム 900の起動後に、ノード情報 761、デバ イス情報 762、経路情報 763およびポート番号別設定情報 965を初期化する処理部 である。図 13は、ポート番号別設定情報 965の一例を示す図である。同図に示すよう に、ポート番号別設定情報 965は、ポート番号と選択論理の対応を示す情報であり、 ポート番号、選択論理と!/ヽつた項目を有する。  The information initialization unit 920 is a processing unit that initializes the node information 761, device information 762, route information 763, and port number-specific setting information 965 after the route control program 900 is activated. FIG. 13 is a diagram showing an example of the setting information 965 by port number. As shown in the figure, the port number-specific setting information 965 is information indicating the correspondence between the port number and the selection logic, and has items of port number, selection logic, and! / と.
[0088] ポート番号は、 IPアドレスとの組み合わせによって通信相手となるアプリケーション を特定するための番号であり、アプリケーションとほぼ 1対 1で対応する。選択論理は 、ノードが接続されている複数のネットワーク力も通信にもちいるネットワークを選択す るための論理であり、「信頼性優先」、「転送頻度優先」、「転送速度優先」といった値 をとる。  [0088] The port number is a number for specifying an application as a communication partner in combination with the IP address, and corresponds almost one-to-one with the application. The selection logic is a logic for selecting a network that is also used for communication by a plurality of network powers to which the node is connected, and has values such as “reliability priority”, “transfer frequency priority”, and “transfer speed priority”. .
[0089] なお、ポート番号別設定情報 965には、選択論理を明示的に指定したいポート番 号のみを登録すればよぐ全てのポート番号とそのポート番号を使用して通信する際 の選択論理の組み合わせを登録する必要はな 、。ポート番号別設定情報 965に登 録されて 、な 、ポート番号を使用して通信がおこなわれる場合は、通信状況記録部 970によって通信状況情報 966に記録された情報に基づいて適切な選択論理が自 動的に選択される。 [0090] 通信状況記録部 970は、仮想ネットワークドライバ部 910を介して送信された IPパ ケットに関する情報を送信先の IPアドレスとポート番号ごとに通信状況情報 966に記 録する処理部である。図 14は、通信状況情報 966の一例を示す図である。同図に示 すように、通信状況情報 966は、送信先代表 IPアドレス、ポート番号、送信数、送信 量といった項目を有する。 [0089] It should be noted that, in the port number-specific setting information 965, only the port numbers for which the selection logic is to be explicitly specified need to be registered, and all the port numbers and the selection logic for communication using the port numbers are used. It is not necessary to register a combination of. When registered using the port number setting information 965 and communication is performed using the port number, an appropriate selection logic is set based on the information recorded in the communication status information 966 by the communication status recording unit 970. Automatically selected. The communication status recording unit 970 is a processing unit that records information on the IP packet transmitted via the virtual network driver unit 910 in the communication status information 966 for each destination IP address and port number. FIG. 14 is a diagram showing an example of the communication status information 966. As shown in FIG. As shown in the figure, the communication status information 966 includes items such as a destination representative IP address, a port number, the number of transmissions, and a transmission amount.
[0091] 送信先代表 IPアドレスは、 IPパケットに設定されて 、た送信先アドレスであり、ポー ト番号は、 IPパケットに設定されていたポート番号である。送信数および送信量は、 その IPアドレスとポート番号をもった IPパケットの累積の送信数と送信量である。  The transmission destination representative IP address is the transmission destination address set in the IP packet, and the port number is the port number set in the IP packet. The number of transmissions and the amount of transmissions are the cumulative number of transmissions and transmissions of IP packets with that IP address and port number.
[0092] 送信制御部 940は、 IPパケットの送信を制御する制御部であり、経路選択部 941と 、パケット転送部 742とを有する。経路選択部 941は、どのネットワークをもちいてパ ケットを送信するかを選択する処理部である。  The transmission control unit 940 is a control unit that controls transmission of IP packets, and includes a route selection unit 941 and a packet transfer unit 742. The route selection unit 941 is a processing unit that selects which network is used to transmit a packet.
[0093] 具体的には、経路選択部 941は、仮想ネットワークドライバ部 710にて IPパケットが 受信されると、ポート番号別設定情報 965を参照し、 IPパケットに設定されているポ ート番号とそれに対応する選択論理が登録されて!ヽれば、その選択論理をもち ヽて 使用するネットワークを選択する。  [0093] Specifically, when the virtual network driver unit 710 receives an IP packet, the route selection unit 941 refers to the port number setting information 965, and sets the port number set in the IP packet. If the corresponding selection logic is registered !, the network to be used is selected using the selection logic.
[0094] ポート番号別設定情報 965に該当する情報がない場合は、経路選択部 941は、通 信状況情報 966を参照して、同一の送信先アドレスとポート番号を指定して送信され た IPパケットの送信数と送信量に基づ 、て適切な選択論理を選択し、その選択論理 をもちいて使用するネットワークを選択する。  [0094] If there is no corresponding information in the port number-specific setting information 965, the route selection unit 941 refers to the communication status information 966, and transmits the IP transmitted by designating the same destination address and port number. Select an appropriate selection logic based on the number of packets sent and the amount of transmission, and use that selection logic to select the network to use.
[0095] 次に、図 12に示した経路制御プログラム 900の処理手順について説明する。図 15 は、パケット送信時における経路制御プログラム 900の処理手順を示すフローチヤ一 トである。この処理手順は、他のノードへ向けた IPパケットが仮想ネットワークドライバ 部 910で受信されるたびに実行される。  Next, the processing procedure of the route control program 900 shown in FIG. 12 will be described. FIG. 15 is a flowchart showing the processing procedure of the route control program 900 at the time of packet transmission. This processing procedure is executed every time an IP packet destined for another node is received by the virtual network driver unit 910.
[0096] 同図に示すように、仮想ネットワークドライバ部 910で IPパケットが受信されると (ス テツプ S401)、経路選択部 941は、後述する選択論理選択処理を実行して選択論 理を選択する (ステップ S402)。そして、既に説明したデバイス選択処理を実行して、 送信先のノードと自ノードにおいて通信に使用するネットワークデバイスを選択する( ステップ S403)。 [0097] そして、パケット転送部 742が、ステップ S403で選択されたネットワークデバイスが 送信先と送信元になるように IPパケットのアドレスを書き換え (ステップ S404)、ステツ プ S403で選択された自ノードのネットワークデバイス力ら IPパケットが送出されるよう にそのネットワークデバイスに対応するネットワークドライバに IPパケットを転送する( ステップ S405)。 [0096] As shown in the figure, when the virtual network driver unit 910 receives an IP packet (step S401), the route selection unit 941 executes selection logic selection processing described later to select the selection logic. (Step S402). Then, the device selection process already described is executed to select a network device to be used for communication between the destination node and the own node (step S403). [0097] Then, the packet forwarding unit 742 rewrites the IP packet address so that the network device selected in step S403 becomes the transmission destination and transmission source (step S404), and the packet forwarding unit 742 rewrites the own node selected in step S403. The IP packet is transferred to the network driver corresponding to the network device so that the IP packet is transmitted from the network device (step S405).
[0098] 図 16は、選択論理選択処理の処理手順を示すフローチャートである。同図に示す ように、経路選択部 941は、仮想ネットワークドライバ部 910で受信された IPパケット のポート番号をキーとしてポート番号別設定情報 965を検索し (ステップ S501)、該 当する情報があれば (ステップ S502肯定)、検索された情報に含まれる選択論理を 選択して処理を終了する (ステップ S503)。  FIG. 16 is a flowchart showing a processing procedure of selection logic selection processing. As shown in the figure, the route selection unit 941 searches the port number setting information 965 using the port number of the IP packet received by the virtual network driver unit 910 as a key (step S501), and there is such information. If (Yes at step S502), the selection logic included in the retrieved information is selected and the process is terminated (step S503).
[0099] 例えば、ノード 300のアプリケーション 312から、送信先 IPアドレスとして「10. 124  [0099] For example, from the application 312 of the node 300, “10.
1  1
. 128. 20」を指定し、送信元 IPアドレスとして「10. 124. 128. 10」を指定し、ポート 番号として「2080」を指定した IPパケットが送信された場合、ポート番号別設定情報 965が図 13に示した通りであったとすると、ステップ S501においてポート番号に該 当する選択論理が見つかり、選択論理として「転送速度優先」が選択されることになる (ステップ S503)。  .128.20 ”,“ 10.124.128.10 ”as the source IP address, and“ 2080 ”as the port number are sent. 13 is as shown in FIG. 13, the selection logic corresponding to the port number is found in step S501, and “transfer speed priority” is selected as the selection logic (step S503).
[0100] 一方、ポート番号別設定情報 965に該当する情報がなければ (ステップ S502否定 )、 IPパケットの送信先アドレスとポート番号をキーにして通信状況情報 966を検索す る (ステップ S504)。そして、該当する情報があれば (ステップ S505肯定)、検索され た情報に含まれる送信量を起動後の経過時間で除算して時間当たりの送信量を算 出し (ステップ S506)、その時間当たりの送信量が所定の閾値以上であれば (ステツ プ S507肯定)、大量の IPパケットを高速に処理することができるように「転送速度優 先」を選択論理として選択して処理を終了する (ステップ S508)。  On the other hand, if there is no information corresponding to the port number setting information 965 (No in step S502), the communication status information 966 is searched using the destination address and port number of the IP packet as keys (step S504). If there is applicable information (Yes at step S505), the transmission amount included in the retrieved information is divided by the elapsed time after startup to calculate the transmission amount per hour (step S506). If the transmission amount is equal to or greater than the predetermined threshold (Yes at Step S507), “Transfer priority” is selected as the selection logic so that a large amount of IP packets can be processed at high speed, and the process is terminated (Step S507). S508).
[0101] 時間当たりの送信量が所定の閾値よりも小さい場合は (ステップ S507否定)、検索 された情報に含まれる送信数を起動後の経過時間で除算して時間当たりの送信数 を算出し (ステップ S509)、その時間当たりの送信数が所定の閾値以上であれば (ス テツプ S510肯定)、多数の IPパケットによってトラフィックがあふれることがないように 「転送頻度優先」を選択論理として選択して処理を終了する (ステップ S511)。 [0102] 時間当たりの送信数が所定の閾値よりも小さい場合 (ステップ S510否定)、および 、ステップ S504にて、通信状況情報 966に該当する情報がな力つた場合は (ステツ プ S505否定)、通信エラーが発生しな 、ように「信頼性優先」を選択論理として選択 して処理を終了する(ステップ S512)。 [0101] If the transmission amount per time is smaller than the predetermined threshold (No at step S507), the number of transmissions included in the retrieved information is divided by the elapsed time after startup to calculate the number of transmissions per hour. (Step S509) If the number of transmissions per hour is equal to or greater than the predetermined threshold (Yes at Step S510), select "Transfer Frequency Priority" as the selection logic so that traffic does not overflow with a large number of IP packets. To end the processing (step S511). [0102] When the number of transmissions per time is smaller than the predetermined threshold (No at Step S510), and when information corresponding to the communication status information 966 is strong at Step S504 (No at Step S505), “Reliability priority” is selected as the selection logic so that no communication error occurs, and the process is terminated (step S512).
[0103] なお、上述の経路制御プログラム 700および 900の構成は、本発明の要旨を逸脱 しない範囲で種々に変更することができる。例えば、経路制御プログラム 700および 900を組み合わせて、予め記憶されたスケジュールに従って、アプリケーション単位 で使用するネットワークを切り替えることができるように構成することもできる。  Note that the configurations of the above-described route control programs 700 and 900 can be variously changed without departing from the scope of the present invention. For example, the route control programs 700 and 900 can be combined so that the network to be used can be switched for each application according to a pre-stored schedule.
[0104] また、上述の各実施例では、ポート番号のみを使用して禁止ポートの判定や選択 論理の選択をおこなっている力 プロトコル番号とポート番号の組み合わせによって、 これらの判定や選択をおこなってもよ 、。  Further, in each of the above-described embodiments, the determination and selection of a prohibited port using only the port number and the selection logic are performed. These determinations and selections are performed by a combination of the protocol number and the port number. Moyo.
産業上の利用可能性  Industrial applicability
[0105] 以上のように、本発明に係る経路制御プログラムおよび経路制御方法は、複数のネ ットワークと接続された情報処理装置にぉ 、て、どのネットワークを介して他の情報処 理装置と通信をおこなうかを決定する場合に有用であり、特に、サーバ装置単位ゃァ プリケーシヨン単位で使用するネットワークを動的に切り替えることが必要な場合に適 している。 As described above, the route control program and the route control method according to the present invention communicate with other information processing devices via any network, in addition to information processing devices connected to a plurality of networks. This is useful when deciding whether or not to perform the operation, and is particularly suitable when it is necessary to dynamically switch the network to be used in units of servers or applications.

Claims

請求の範囲 The scope of the claims
[1] 複数のネットワークと接続された情報処理装置において、どのネットワークを介して 他の情報処理装置と通信をおこなうかを決定する経路制御プログラムであって、 前記経路制御プログラムは、前記情報処理装置を、  [1] A path control program for determining which network to communicate with another information processing apparatus in an information processing apparatus connected to a plurality of networks, wherein the path control program is the information processing apparatus The
仮想的なネットワークドライバとして IPアドレスを割り当てられ、各種アプリケーション 力 IPパケットの送受信依頼を受け付ける仮想ネットワーク部と、  A virtual network unit that is assigned an IP address as a virtual network driver and accepts transmission / reception requests for various application power IP packets,
前記仮想ネットワーク部において IPパケットの送信依頼が受け付けられた場合に、 予め定められた選択論理に基づいて、前記ネットワークの中力も通信にもちいるネッ トワークを選択する経路選択部と、  A path selection unit that selects a network that uses both the network's core and communication based on a predetermined selection logic when an IP packet transmission request is received in the virtual network unit;
前記経路選択部によって選択されたネットワークを通じて送信されるように前記 IP パケットの転送処理をおこなうパケット転送部  A packet forwarding unit that performs forwarding processing of the IP packet to be transmitted through the network selected by the route selection unit
として機能させることを特徴とする経路制御プログラム。  A path control program characterized by functioning as
[2] 前記経路選択部は、予め記憶されたスケジュールに従って、通信にもちいるネット ワークを選択するための選択論理の種類を変更することを特徴とする請求項 1に記 載の経路制御プログラム。  2. The route control program according to claim 1, wherein the route selection unit changes the type of selection logic for selecting a network used for communication according to a schedule stored in advance.
[3] 前記経路選択部は、前記 IPパケットに設定されているポート番号を、予め記憶され たポート番号と選択論理の対応表と照合して、前記 IPパケットに設定されているポー ト番号に対応する選択論理に基づいて、通信にもちいるネットワークを選択することを 特徴とする請求項 1に記載の経路制御プログラム。  [3] The route selection unit compares the port number set in the IP packet with a port number stored in advance and a correspondence table of selection logic to obtain the port number set in the IP packet. 2. The route control program according to claim 1, wherein a network used for communication is selected based on a corresponding selection logic.
[4] 前記情報処理装置を、前記仮想ネットワーク部を介して送信された IPパケットの情 報を送信先アドレスとポート番号ごとに記録する通信状況記録部としてさらに機能さ せ、  [4] The information processing apparatus further functions as a communication status recording unit that records information of IP packets transmitted via the virtual network unit for each destination address and port number,
前記経路選択部は、送信を依頼された IPパケットに設定されて!ヽる送信先アドレス とポート番号を、前記通信状況記録部によって記録された情報と照合して、同一の送 信先アドレスとポート番号をもつ IPパケットの通信状況に関する情報を取得し、該情 報を所定の閾値と比較して、通信にもちいるネットワークを選択するための選択論理 を選択することを特徴とする請求項 1に記載の経路制御プログラム。  The route selection unit compares the transmission destination address and port number set in the IP packet requested to be transmitted with the information recorded by the communication status recording unit to obtain the same transmission destination address. 2. Information on the communication status of an IP packet having a port number is acquired, the information is compared with a predetermined threshold, and selection logic for selecting a network used for communication is selected. The routing control program described in 1.
[5] 前記経路選択部は、前記 IPパケットに設定されているポート番号をもつ IPパケット の送受信が禁止されているネットワークを除外して、通信にもちいるネットワークを選 択することを特徴とする請求項 1〜4のいずれか一つに記載の経路制御プログラム。 [5] The route selection unit includes an IP packet having a port number set in the IP packet. 5. The route control program according to claim 1, wherein a network that is used for communication is selected by excluding a network that is prohibited from transmitting and receiving data.
[6] 前記情報処理装置を、前記ネットワークの接続状態を監視するネットワーク監視部 としてさらに機能させ、 [6] The information processing apparatus further functions as a network monitoring unit that monitors a connection state of the network,
前記経路選択部は、前記ネットワーク監視部によって接続不能と判定されて 、るネ ットワークを除外して、通信にもちいるネットワークを選択することを特徴とする請求項 The route selection unit selects a network used for communication, excluding a network that is determined to be inaccessible by the network monitoring unit.
1〜4のいずれか一つに記載の経路制御プログラム。 The route control program according to any one of 1 to 4.
[7] 前記経路選択部は、転送速度が最も高 、ネットワークを優先して選択する選択論 理に従って通信にもちいるネットワークを選択することを特徴とする請求項 1〜4のい ずれか一つに記載の経路制御プログラム。 [7] The route selection unit, according to any one of claims 1 to 4, wherein the route selection unit selects a network that is used for communication in accordance with a selection logic that selects the network with the highest transfer rate. The routing control program described in 1.
[8] 前記経路選択部は、転送頻度が最も低 、ネットワークを優先して選択する選択論 理に従って通信にもちいるネットワークを選択することを特徴とする請求項 1〜4のい ずれか一つに記載の経路制御プログラム。 [8] The route selection unit according to any one of [1] to [4], wherein the route selection unit selects a network that is used for communication according to a selection logic that selects the network with the lowest transfer frequency. The routing control program described in 1.
[9] 前記経路選択部は、故障率が最も低 、ネットワークを優先して選択する選択論理 に従って通信にもちいるネットワークを選択することを特徴とする請求項 1〜4のいず れか一つに記載の経路制御プログラム。 [9] The route selection unit according to any one of [1] to [4], wherein the route selection unit selects a network that is used for communication in accordance with a selection logic that has the lowest failure rate and selects the network with priority. The routing control program described in 1.
[10] 複数のネットワークと接続された情報処理装置において、どのネットワークを介して 他の情報処理装置と通信をおこなうかを決定する経路制御方法であって、 [10] An information processing apparatus connected to a plurality of networks, a route control method for determining which network to communicate with other information processing apparatuses,
仮想的なネットワークドライバとして IPアドレスを割り当てられた仮想ネットワーク部 にお 、て、各種アプリケーション力も IPパケットの送受信依頼を受け付ける送受信依 頼受付工程と、  In the virtual network section to which an IP address is assigned as a virtual network driver, various application capabilities also receive / receive a request to send / receive an IP packet,
前記送受信依頼受付工程において IPパケットの送信依頼が受け付けられた場合 に、予め定められた選択論理に基づいて、前記ネットワークの中力 通信にもちいる ネットワークを選択する経路選択工程と、  A route selection step of selecting a network used for the central communication of the network based on a predetermined selection logic when an IP packet transmission request is received in the transmission / reception request reception step;
前記経路選択工程によって選択されたネットワークを通じて送信されるように前記 I Pパケットの転送処理をおこなうパケット転送工程と  A packet transfer step for transferring the IP packet so that it is transmitted through the network selected by the route selection step;
を含んだことを特徴とする経路制御方法。  A path control method characterized by comprising:
PCT/JP2006/316766 2006-08-25 2006-08-25 Path control program and path control method WO2008023441A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/316766 WO2008023441A1 (en) 2006-08-25 2006-08-25 Path control program and path control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/316766 WO2008023441A1 (en) 2006-08-25 2006-08-25 Path control program and path control method

Publications (1)

Publication Number Publication Date
WO2008023441A1 true WO2008023441A1 (en) 2008-02-28

Family

ID=39106535

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/316766 WO2008023441A1 (en) 2006-08-25 2006-08-25 Path control program and path control method

Country Status (1)

Country Link
WO (1) WO2008023441A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003348134A (en) * 2002-05-28 2003-12-05 Nec Soft Ltd Communication path selecting system
JP2004023693A (en) * 2002-06-20 2004-01-22 Toshiba Corp Server for communication service, communication service method and program
JP2005072759A (en) * 2003-08-21 2005-03-17 Sony Corp Transmission device and method therefor, reception device and method therefor, communication device and method therefor, and program
JP2005294966A (en) * 2004-03-31 2005-10-20 Hitachi Software Eng Co Ltd Data communication control system and data communication control method
JP2005354280A (en) * 2004-06-09 2005-12-22 Fujitsu Ltd Policy rule optimization method and apparatus thereof
JP2006121192A (en) * 2004-10-19 2006-05-11 Nec Corp Data transmission apparatus, data transmission method, data transmission program, and recording medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003348134A (en) * 2002-05-28 2003-12-05 Nec Soft Ltd Communication path selecting system
JP2004023693A (en) * 2002-06-20 2004-01-22 Toshiba Corp Server for communication service, communication service method and program
JP2005072759A (en) * 2003-08-21 2005-03-17 Sony Corp Transmission device and method therefor, reception device and method therefor, communication device and method therefor, and program
JP2005294966A (en) * 2004-03-31 2005-10-20 Hitachi Software Eng Co Ltd Data communication control system and data communication control method
JP2005354280A (en) * 2004-06-09 2005-12-22 Fujitsu Ltd Policy rule optimization method and apparatus thereof
JP2006121192A (en) * 2004-10-19 2006-05-11 Nec Corp Data transmission apparatus, data transmission method, data transmission program, and recording medium

Similar Documents

Publication Publication Date Title
KR101442309B1 (en) Failover in a host concurrently supporting multiple virtual ip addresses across multiple adapters
JP5889914B2 (en) State synchronization between load balancer components
US8560631B2 (en) Storage system
JP4597558B2 (en) Network apparatus, system, and method for providing list of controlled devices
EP2192722A1 (en) A method of operating a network subnet manager
JP2003203019A (en) Method for ensuring availability of storage system
JP2006253900A (en) Method for ip address takeover, ip-address takeover program, server and network system
US20060206699A1 (en) Network boot system
US20120117246A1 (en) Method And System For The Efficient And Automated Management of Virtual Networks
WO2016082078A1 (en) Path management system, device and method
CN101535979A (en) Management of storage resource devices
JP5808700B2 (en) Communication control device, communication control system, virtualization server management device, switch device, and communication control method
TW200417261A (en) An apparatus and method for coupling a network data device to a digital network
JP4309321B2 (en) Network system operation management method and storage apparatus
JP6464768B2 (en) Response device and program
JP4579850B2 (en) Blade type system and connection management method
JP4513506B2 (en) Device management system and gateway device
JP4806382B2 (en) Redundant system
WO2013183231A1 (en) Communication system, communication control method, communication relay system, and communication relay control method
WO2008023441A1 (en) Path control program and path control method
JP4378205B2 (en) Blade type network relay device
CN113098788A (en) Method and device for releasing route
JP5282625B2 (en) RELAY DEVICE AND CLIENT SERVER SYSTEM CONTROL METHOD
JP4388562B2 (en) Data communication system and method, recording medium
JP5176482B2 (en) Management program, management method, management apparatus, and communication system

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

122 Ep: pct application non-entry in european phase

Ref document number: 06783055

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP