[go: up one dir, main page]

WO2015133059A1 - Route control apparatus, route control method, and route control program - Google Patents

Route control apparatus, route control method, and route control program Download PDF

Info

Publication number
WO2015133059A1
WO2015133059A1 PCT/JP2015/000467 JP2015000467W WO2015133059A1 WO 2015133059 A1 WO2015133059 A1 WO 2015133059A1 JP 2015000467 W JP2015000467 W JP 2015000467W WO 2015133059 A1 WO2015133059 A1 WO 2015133059A1
Authority
WO
WIPO (PCT)
Prior art keywords
function
transfer
packet
ofs
route
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2015/000467
Other languages
French (fr)
Japanese (ja)
Inventor
達彦 空井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of WO2015133059A1 publication Critical patent/WO2015133059A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer

Definitions

  • the present invention relates to a route control device, a route control method, and a route control program for controlling a packet transfer route by controlling the packet transfer device.
  • FIG. 27 is an explanatory diagram showing an example of a network configuration to which OpenFlow is applied.
  • an OpenFlow switch hereinafter referred to as OFS
  • OFC OpenFlow controller
  • a host 503 is connected to the OFS 502. Then, the OFC 501 determines a route from the transmission source host to the transmission destination host of the packet.
  • the OFS 502 holds information called a flow table that defines the next transfer destination for the received packet.
  • the OFS 502 inquires of the OFC 501 about the transfer destination of the packet when the transfer destination of the received packet is not indicated in the flow table or when the destination information existing in the packet cannot be interpreted by the OFS 502 itself.
  • the OFC 501 calculates a packet transfer route, and issues a flow table update instruction to a plurality of OFSs 502 on the transfer route so that the packet is transferred according to the determined transfer route in order to construct the transfer route. . Then, each OFS 502 on the transfer path updates the flow table, thereby constructing a transfer path from the packet transmission source to the transmission destination.
  • the OFC 501 is also responsible for managing the OFS 502, and grasps the topology indicating where the OFS 502 exists and how it is connected. The OFC 501 uses this topology information for packet transfer path calculation. Further, when the OFS 502 fails or the network configuration is expanded, the network administrator newly introduces the OFS 502. At this time, the OFC 501 uses the function of collecting information of the OFS 502, and the OFS 502 holds the OpenFlow protocol version supported by the newly connected OFS 502 and the Internet Protocol version (IPv4 / IPv6). Understand what functions are.
  • Patent Document 1 An example of a network system to which OpenFlow is applied is described in Patent Document 1, for example.
  • Patent Document 2 describes a device that acquires the functional units and setting information of each node in cooperation with other terminals.
  • Patent Document 3 describes a method for determining a destination address using a function indicator for identifying a service executed on a network device.
  • the network administrator defines what functions should be provided for the entire network, and in order to be able to provide that function on the packet transfer path from the source host to the destination host, I had to figure out if I had or didn't have the function it should provide. Then, the network administrator has to set a detoured transfer route that goes through the OFS having the function. For example, when the function to be provided is a specific function A, it is necessary to construct a detour transfer path that goes through the OFS that owns the function A. However, in a large-scale network in which the number of OFSs present in the network is enormous, it is difficult for the network administrator to grasp the difference between the functions installed in each OFS.
  • the network administrator physically connects a plurality of OFSs having the same function so as to be adjacent as much as possible, and the plurality of OFSs having the same function are connected.
  • a domain is defined as a set.
  • the packet transfer path is calculated based on the packet source and destination information. Therefore, even if an OFS corresponding to a new version of OpenFlow protocol or a high-performance OFS equipped with many vendor-specific functions are introduced, the transfer path may not pass through a high-function OFS. Therefore, there are cases where the function can be provided as a network and cases where the function cannot be provided.
  • the network administrator When there is a case where the function can be provided as a network and a case where the function cannot be provided as a network, the network administrator has unified the network not to provide the function. Specifically, the network administrator has lowered the version of OpenFlow protocol, or turned off some of the vendor-specific functions in accordance with other OFS functions.
  • the present invention provides a route control device, a route control method, and a route control device that can determine an appropriate packet transfer route while making use of the function even when there is a difference in function between packet transfer devices included in the network.
  • An object is to provide a routing program.
  • a path control apparatus is a path control apparatus that controls a transfer path of a packet that passes through a packet transfer apparatus, a transfer path calculation unit that calculates a transfer path including a packet transfer apparatus having a function for a packet, And a setting unit configured to set each packet transfer device on the transfer route calculated by the transfer route calculating unit to transfer the packet along the transfer route.
  • a route control method is a route control method for controlling a transfer route of a packet passing through a packet transfer device, and calculates a transfer route including a packet transfer device having a function for a packet, Each packet transfer apparatus is set to transfer a packet along a transfer path.
  • a route control program is a route control program installed in a computer that controls a transfer route of a packet passing through a packet transfer device, and the computer includes a packet transfer device having a function for a packet.
  • an appropriate packet transfer path can be determined while making use of the function.
  • FIG. 6 is a schematic diagram showing a function topology corresponding to each of functions 1 to 5; It is explanatory drawing which shows the content of the flow table. It is a flowchart which shows the example of a process progress of the functional topology calculation part in step S4. It is explanatory drawing which shows the example of each combination of the transmission origin host specified by step S31, and a transmission destination host.
  • FIG. 6 is an explanatory diagram illustrating an example of function feature information of functions 1 to 5; It is explanatory drawing which shows the calculation result of a transfer path
  • the OFC Open Flow Controller
  • the functional topology is a logical topology and does not depend on the physical connection between OFS. There is a correlation of having the same function even between OFSs that are not physically directly connected. Therefore, a functional topology that connects between OFSs having the same function can be defined as a logical topology.
  • FIG. FIG. 1 is an explanatory diagram showing an example of a network system to which the present invention is applied.
  • the network system illustrated in FIG. 1 includes an OFC 101 and an arbitrary number of OFSs 102.
  • the OFC 101 corresponds to the path control device of the present invention.
  • the OFS 102 corresponds to a packet transfer device.
  • FIG. 1 illustrates a case where there are six OFSs 102. When the individual OFSs 102 are distinguished, they are described as OFS 102-1 and OFS 102-2.
  • the host 103 is connected to the OFS 102.
  • the number of hosts is arbitrary.
  • FIG. 1 illustrates a case where there are two hosts 103. When distinguishing the individual hosts 103, they are described as the host 103-1, the host 103-2, and the like.
  • FIG. 2 is a block diagram illustrating a configuration example of the OFC 101.
  • the OFC 101 includes an OFS management unit 301, a functional topology calculation unit 304, a functional topology management unit 305, an update instruction unit 306, and a connection processing unit 307.
  • the OFS management unit 301 includes an OFS possessed function management unit 302.
  • the OFS management unit 301 manages information of the OFS 102 existing in the network. Specifically, the OFS management unit 301 acquires information on functions held by the OFS 102 from each OFS 102 existing in the network.
  • the OFS possessed function management unit 302 retains information indicating whether each OFS 102 possesses a function for each function.
  • the OFS management unit 301 acquires information about the functions held by the OFS 102 from each OFS 102, and stores information indicating whether each OFS 102 has a function for each function in the OFS held function management unit 302.
  • the functional topology calculation unit 304 calculates a functional topology for each function based on information held in the OFS possessed function management unit 302 (information indicating whether each OFS 102 has a function for each function). To do.
  • the functional topology related to a certain function is a diagram in which all OFSs 102 having the function are comprehensively connected without depending on the presence or absence of actual connection. In a functional topology related to a certain function, all of the OFSs 102 in the functional topology have the function. Then, each OFS 102 in the functional topology is connected to all OFSs 102 other than itself that own the function. This connection does not depend on whether or not the network is actually connected. Therefore, even if the OFSs 102 are not actually connected, the OFSs 102 having the same function are connected in the functional topology related to the function. An example of functional topology is shown below.
  • FIG. 3 shows a functional topology calculated by the functional topology calculation unit 304 as a functional topology related to the function.
  • OFS 102-2, OFS 102-5, and OFS 102-6 are connected in the functional topology 303.
  • each of the OFS 102-2, OFS 102-5, and OFS 102-6 is connected to all of the OFSs other than itself in the functional topology 303.
  • FIG. 4 shows a functional topology calculated by the functional topology calculation unit 304 as a functional topology related to the function.
  • OFS 102-2, OFS 102-3, OFS 102-4, and OFS 102-5 are connected in the function topology 303.
  • each OFS in the functional topology 303 is connected to all OFSs other than itself in the functional topology 303.
  • the functional topology management unit 305 manages the functional topology calculated by the functional topology calculation unit 304. Specifically, the function topology management unit 305 holds each function topology calculated for each function by the function topology calculation unit 304.
  • the functional topology calculation unit 304 calculates a packet transfer path based on the functional topology.
  • the update instruction unit 306 instructs each OFS 102 on the transfer path to update the flow table based on the transfer path calculated by the functional topology calculation unit 304.
  • connection processing unit 307 performs connection processing (establishment of communication) with the OFS 102 in response to a request from the OFS 102.
  • the OFC 101 collects information for specifying the physical topology from each OFS 102 and, based on the information, specifies a physical topology specifying unit (not shown) that specifies the physical topology of the OFS 102 and the host 103. Also have.
  • the physical topology specifying unit appropriately specifies and holds the latest physical topology.
  • the OFS management unit 301, the functional topology calculation unit 304, the update instruction unit 306, the connection processing unit 307, and the physical topology identification unit are realized by a CPU of a computer that operates according to a path control program, for example.
  • the CPU reads a path control program from a program recording medium such as a program storage device (not shown) of the computer, and according to the path control program, the OFS management unit 301, the function topology calculation unit 304, and the update instruction unit 306. , The connection processing unit 307, and the physical topology specifying unit.
  • the OFS management unit 301, the functional topology calculation unit 304, the update instruction unit 306, the connection processing unit 307, and the physical topology identification unit may be realized by separate hardware.
  • FIG. 5 is a flowchart illustrating an example of processing progress of the OFC 101.
  • the OFC 101 performs OFS-OFC connection processing (step S1), each OFS possessed function grasping processing (step S2), function topology creation processing (step S3), and route calculation processing giving priority to the function topology. (Step S4) and flow table update processing (Step S5) are executed in order.
  • step S1 OFS-OFC connection processing
  • step S2 each OFS possessed function grasping processing
  • step S3 function topology creation processing
  • route calculation processing giving priority to the function topology step S4
  • flow table update processing Step S5
  • step S1 the OFS-OFC connection process
  • the OFS 102 issues a connection request to the OFC 101.
  • OFS and OFS are connected to each other using OFS 102 as a managed subordinate OFS.
  • the OFC 101 recognizes the newly connected OFS 102 and acquires information regarding the functions possessed by the OFS 102.
  • FIG. 6 is a sequence diagram showing an example of processing progress of step S1.
  • the OFS-OFC connection process (step S1) is a process in which when the OFC 101 receives a connection request from the OFS 102, the OFS 102 is used as a managed subordinate OFS and the OFC and OFS connect to each other.
  • the OFS 102 When connecting the OFS 102 to the network system, the OFS 102 first transmits a TCP (Transmission Control Protocol) connection establishment request to the OFC 101, and the connection processing unit 307 of the OFC 101 receives the TCP connection establishment request. Then, the OFS 102 and the connection processing unit 307 establish a communication path between the OFS 102 and the OFC 101 (Steps S21 and S22).
  • TCP Transmission Control Protocol
  • the OFS 102 transmits a message (Hello message) to the communication path (step S23), and upon receiving the message, the connection processing unit 307 transmits a response to the message to the OFS 102 (step S24). By receiving this response, the OFS 102 confirms that there is no problem in the established communication path.
  • the OFS management unit 301 of the OFC 101 transmits the retained function information provision instruction 202 to the OFS 102 in order to grasp the retained function of the OFS 102 (step S25).
  • the retained function information provision instruction 202 is a command for requesting provision of information regarding the function of the OFS 102.
  • the OFS management unit 301 uses the retained function information provision instruction 202 to support the OpenFlow protocol version supported by the OFS 102, the Internet Protocol version (IPv4 / IPv6), and the functions possessed by the OFS 102 ( For example, it is requested to provide information such as vendor-specific functions.
  • the OFS 102 transmits such information to the OFC 101 in response to the retained function information provision instruction 202 (step S26).
  • the OFS management unit 301 stores information such as the OpenFlow protocol version supported by the OFS 102, the Internet Protocol version (IPv4 / IPv6), and the functions (eg, vendor-specific functions) possessed by the OFS 102. get.
  • IPv4 / IPv6 Internet Protocol version
  • functions eg, vendor-specific functions
  • the OFS management unit 301 transmits a setting change instruction 203 to the OFS 102 (step S27).
  • the OFS 102 changes the settings according to the network topology, the network load, and the functions possessed by the OFS 102 in accordance with the setting change instruction 203. Further, the OFS 102 notifies the OFC 101 of a response to the setting change instruction 203 (step S28).
  • step S1 the OFS-OFC connection processing (step S1) is completed, and the OFS 102 is connected to the network as an OFS under the management of the OFC 101.
  • the OFC 101 executes the process of step S1 for each OFS 102 connected to the network system. Thereafter, the OFC 101 executes the possessed function grasping process (step S2) of each OFS. Step S2 will be described.
  • the OFS management unit 301 acquires information on the function of the OFS 102 from each OFS 102.
  • the OFS management unit 301 acquires information such as the OpenFlow protocol version, the Internet Protocol version (IPv4 / IPv6), and the functions (for example, vendor-specific functions) possessed by the OFS 102 from each OFS 102.
  • the OFS management unit 301 grasps the function possessed by each OFS 102 based on the information. Then, the OFS management unit 301 generates information indicating whether each OFS 102 has a function for each function, and stores the information in the OFS possessed function management unit 302.
  • FIG. 7 is a schematic diagram showing an example of information stored in the OFS possessed function management unit 302.
  • FIG. 7 illustrates a case where there are five types of functions. For function 1, each OFS 102 indicates whether or not it has function 1. The same applies to functions 2-5. Note that FIG. 7 is an example, and the storage format (data structure) of information indicating whether each OFS 102 has a function for each function is not limited.
  • the function topology creation process is a process for creating a function topology based on information stored in the OFS possessed function management unit 302 (information indicating whether each OFS 102 possesses a function for each function).
  • the functional topology is a diagram in which OFSs 102 having the same function are connected to each other, and each OFS 102 having the function is connected to all OFSs 102 other than itself having the function.
  • the functional topology is a logical topology, and the OFSs 102 having the same function are connected in the functional topology even if they are not physically connected.
  • the functional topology calculation unit 304 creates a functional topology for every function held by the OFS 102 under the management of the OFC 101. Then, the functional topology calculation unit 304 causes the functional topology management unit 305 to store each functional topology created for each function.
  • the function topology calculation unit 304 creates a function topology 303 shown in FIG. 8 as the function topology of function 1 based on the information illustrated in FIG. As shown in FIG. 7, OFS 102-1 and OFS 102-6 are the only OFS possessing function 1. Therefore, the function topology calculation unit 304 generates a function topology 303 (see FIG. 8) in which the OFS 102-1 and OFS 102-6 are connected as the function 1 function topology. As shown in FIG. 1, OFS 102-1 and OFS 102-6 are not connected. However, in the functional topology, OFSs 102 having the same function (function 1 in this example) are connected without depending on the presence or absence of physical connection.
  • Fig. 8 shows the functional topology of function 1.
  • the function topology management unit 305 creates a function topology for each of the functions 2 to 5 based on the information illustrated in FIG.
  • step S4 the functional topology calculation unit 304 executes a route calculation process (step S4) giving priority to the functional topology.
  • step S4 the process of step S4 will be described.
  • step S4 based on the functional topology, the functional topology calculation unit 304 sets the OFS 102 having the function corresponding to the functional topology as a node on the transfer path and connects the OFSs 102 having the function to each other.
  • FIG. 9 shows an example of a packet transfer path connecting the hosts 103 calculated for each function.
  • FIG. 9 illustrates transfer paths corresponding to functions 1 to 5, respectively.
  • the function topology calculation unit 304 replaces the OFS 102-2 and OFS 102-5 that do not have the function 1 with the OFS 102. -1 and OFS 102-6, a packet transfer path between the host 103-1 and the host 103-2 is determined. Therefore, OFS 102-2 and OFS 102-5 that do not have function 1 also form a transfer path corresponding to function 1 (see FIG. 9).
  • the OFS 102-2 that does not have the function 1 simply transfers the packet received from the OFS 102-1 to the OFS 102-6, and does not perform any processing related to the function 1. The same applies to OFS102-5.
  • the function topology calculation unit 304 calculates a transfer path related to the function of interest, if the transfer path cannot be calculated only by the OFS 102 that has the function, the function topology calculation unit 304 also passes through the OFS 102 that does not have the function.
  • the transfer route is calculated by permitting the above.
  • the function topology calculation unit 304 Forms a transfer path corresponding to function 1 (see FIG. 9). Similarly, the function topology calculation unit 304 calculates a transfer path corresponding to each of the functions 2 to 5 as a packet transfer path between the host 103-1 and the host 103-2 (see FIG. 9).
  • step S5 the update instruction unit 306 executes a flow table update process (step S5).
  • step S ⁇ b> 5 the update instruction unit 306 transmits a flow table update instruction to each OFS 102 on the transfer path so that the packet is transferred along the transfer path calculated by the functional topology calculation unit 304.
  • the OFS 102 updates the flow table according to the update instruction from the update instruction unit 306.
  • the packet transmitted from the transmission source host is transferred to the next OFS 102 in accordance with the flow table in each OFS 102 on the transfer path, and reaches the transmission destination host. In this way, a transfer path corresponding to the function calculated by the function topology calculating unit 304 is constructed.
  • step S5 for example, the update instruction unit 306 transmits a flow table update instruction to each OFS 102 on the transfer path for each transfer path corresponding to each function.
  • an appropriate route centering on the high-function OFS 102 that can handle each function can be constructed between the host 103-1 and the host 103-2.
  • the OFC 101 calculates a transfer path for each function in advance for each combination of a transmission source host and a transmission destination host, and forwards a packet along the transfer path to a node on each transfer path.
  • the flow table is instructed to be updated.
  • FIG. 10 is a schematic diagram showing an example of a network configuration.
  • the network configuration shown in FIG. 10 will be described as an example.
  • the number of OFSs 102 and hosts 103 is arbitrary.
  • the example illustrated in FIG. 10 illustrates a network configuration in which the number of OFSs 102 is nine and the number of hosts 103 is six.
  • the OFC 101 having the configuration shown in FIG. 2 is provided similarly to the case shown in FIG.
  • FIG. 11 is an explanatory diagram showing the difference in the installed functions of each OFS 102 shown in FIG.
  • the OFC 101 (not shown in FIG. 10) executes the processes of steps S1 to S6 described above. Hereinafter, the process progress in this example will be described.
  • step S1 the OFS-OFC connection process for each OFS 102.
  • the details of step S1 are as described in steps S21 to S28 (see FIG. 6), and a description thereof is omitted here.
  • the OFS management unit 301 By executing step S1 for each OFS 102, the OFS management unit 301 (see FIG. 2) of the OFC 101 acquires information on the function of the OFS 102 from each OFS 102.
  • the OFS management unit 301 grasps the function possessed by each OFS 102 based on the information.
  • the OFS management unit 301 generates information indicating whether each OFS 102 has a function for each function, and stores the information in the OFS possessed function management unit 302 (step S2).
  • the information shown in FIG. 11 is stored in the OFS possessed function management unit 302.
  • the functional topology calculation unit 304 executes a functional topology creation process (step S3).
  • step S3 the functional topology calculation unit 304 creates a functional topology for each function held by the OFS 102-1 to OFS 102-9.
  • the functional topology calculation unit 304 creates a functional topology for each function 1 to 5 (see FIG. 11).
  • FIG. 12 is a schematic diagram showing a functional topology corresponding to each of the functions 1 to 5 in this example.
  • the OFS 102 that is a node of the functional topology is indicated by a solid line.
  • OFS 102 that is not included in the functional topology (OFS 102 that does not become a node of the functional topology) is indicated by a broken line.
  • the functional topology calculation unit 304 stores the functional topology created for each function in the functional topology management unit 305.
  • step S4 the functional topology calculation unit 304 executes a route calculation process (step S4) giving priority to the functional topology.
  • step S4 in this example will be described.
  • the functional topology calculation unit 304 needs to construct a packet transfer path giving priority to the functional topology between the transmission source host and the transmission destination host. As described above, the functional topology calculation unit 304 calculates a packet transfer path based on the functional topology for each function. Here, in each of the functions 1 to 5, the number of OFSs 102 that need to have the function may differ on the transfer path from the transmission source host to the transmission destination host.
  • the OFS 102 having the IPv6 function can interpret the destination address recorded as an IPv6 address in the received packet.
  • the OFS 102 that does not have the IPv6 function cannot interpret the destination address in the packet recorded with the IPv6 address.
  • the OFS 102 refers to the destination information in the received packet and searches for a corresponding flow entry from the flow table held in the OFS 102.
  • the flow entry is information that defines a process for a packet (from which port to output, etc.) for each flow. It can be said that the flow table is a set of flow entries.
  • FIG. 13 is an explanatory diagram showing the contents of the flow table.
  • Each flow entry in the flow table describes a header “Fields” that identifies a packet and an action that defines a process for the received packet.
  • the OFS 102 determines whether or not an action for the received packet is defined in the flow table, and if so, determines a next transfer destination of the received packet according to the action. Since the OFS 102 that does not have the IPv6 function cannot interpret the destination address in the packet recorded with the IPv6 address, the Action for the packet cannot be specified from the flow table, and the next transfer destination is determined. Can not do it. Even if the header field of the flow entry contains not the IPv6 address but the MAC (Media Access Control) address of the destination host that can be interpreted without possessing the IPv6 function, it is sent to the received packet.
  • the header field of the flow entry contains not the IPv6 address but the MAC (Media Access Control) address of the destination host that can be interpreted without possessing the IPv6 function, it is sent to the received packet.
  • the OFS 102 cannot interpret the IPv6 address itself. For this reason, the OFS 102 cannot acquire the MAC address of the destination host corresponding to the IPv6 address by using Neighbor Discovery Protocol (hereinafter referred to as NDP) such as ARP (Address Resolution Protocol) in IPv4. Then, the OFS 102 cannot specify the next transfer destination from the flow table.
  • NDP Neighbor Discovery Protocol
  • ARP Address Resolution Protocol
  • the OFS 102 that does not have the IPv6 function inquires of the OFC 101 about the next transfer destination of the packet by transferring to the OFC 101 a packet for which the transfer destination is determined to be unknown.
  • a packet that is determined to have an unknown transfer destination and is transferred to the OFC 101 is referred to as a first packet.
  • the OFC 101 analyzes the packet destination information and calculates a packet transfer path so that the packet reaches the destination host 103.
  • the OFC 101 gives an instruction to add a flow entry including Header Fields including the MAC address of the transmission destination host 103 and Action defining the transfer destination along the transfer route for each OFS 102 on the calculated transfer route. .
  • the OFC 101 writes the MAC address of the transmission destination host 103 in the received first packet, and returns the first packet to the OFS 102.
  • each OFS 102 on the transfer path can search for an action of the corresponding flow entry based on the MAC address in the packet, and can determine the next transfer destination.
  • the OFS 102 that does not have the IPv6 function receives a packet whose destination can be specified only by an IPv6 address
  • the OFS 102 always forwards the packet to the OFC 101 as a first packet, and the OFC 101 performs the above processing. .
  • each of those OFSs 102 makes an inquiry to the OFC 101 every time a packet whose destination can be specified only by an IPv6 address is received.
  • the response waiting time from the OFC 101 is extra than that of the owned OFS 102. This may cause a data transfer delay.
  • the OFS 102 can obtain the MAC address from the destination address recorded as an IPv6 address in the packet by using NDP. Then, when the OFS 102 writes the MAC address in the packet, the subsequent OFS 102 on the transfer path refers to the MAC address regardless of whether or not it has the IPv6 function, and You can search for Action and determine the next forwarding destination.
  • the OFS 102 serving as a switch (edge switch) that receives a packet from the transmission source host 103 has the IPv6 function. If you do.
  • the number of OFSs 102 that need to have a function on the transfer route and the transfer route on which the OFS 102 that has the function should be placed The location above varies from function to function. Further, whether or not it is necessary to always provide a function is different for each function.
  • the functional topology calculation unit 304 calculates a transfer path for each function in consideration of the difference for each function.
  • the functional topology is a diagram in which OFSs 102 having the focused function are connected as nodes, focusing on individual functions
  • the host 103 (see 10) is considered when creating the functional topology.
  • the packet transfer path is a path from the transmission source host 103 to the transmission destination host 103. Therefore, when calculating the transfer path, the function topology calculation unit 304 determines the feature of each function as described above (the number of OFSs 102 that need to have a function and the number of OFSs 102 that have the function.
  • the transfer path is calculated in consideration of not only the position on the transfer path to be performed and whether or not it is necessary to always provide the function, but also the location of the host 103.
  • Functional feature information Information for each function such as the number of OFSs 102 that need to have the function, the position on the transfer path where the OFS 102 that has the function should be placed, and whether or not it is necessary to always provide the function. Is hereinafter referred to as functional feature information.
  • Functional feature information related to various functions is given to the functional topology calculation unit 304 in advance by a network administrator or the like, for example, and the functional topology calculation unit 304 holds functional feature information related to various functions.
  • the functional topology calculation unit 304 may acquire the functional feature information by other methods. It can be said that the function characteristic information of a certain function indicates a condition that the transfer path corresponding to the function should satisfy.
  • FIG. 14 is a flowchart showing an example of processing progress of the functional topology calculation unit 304 in step S4.
  • the functional topology calculation unit 304 identifies each combination of a transmission source host and a transmission destination host (step S31).
  • FIG. 15 is an explanatory diagram illustrating an example of each combination of the transmission source host and the transmission destination host specified in step S31.
  • the host 103-1, the host 103-3, and the host 103-5 correspond to the transmission source hosts, and the host 103-2, the host 103-4, and the host 103-6. Is assumed to correspond to the destination host.
  • the functional topology calculation unit 304 identifies the functional feature information of the function possessed by each OFS 102 (step S32). For example, the function topology calculation unit 304 may extract the function feature information of the functions held by each OFS 102 from the function feature information of various functions given in advance. In this example, any of the OFS 102 shown in FIG. 10 has functions 1 to 5 (see FIG. 11). Therefore, the function topology calculation unit 304 may extract the function feature information of the functions 1 to 5.
  • FIG. 16 shows an example of function feature information of function 1 to function 5. In the following description, it is assumed that the function characteristic information shown in FIG.
  • function 1 shown in FIG. 11 is a function for acquiring statistical information such as the number and size of packets that have passed through the transfer path.
  • the OFS 102 having the function of acquiring statistical information need not be limited to an edge switch, a core switch, or the like. That is, if any transfer path calculated for each combination of the transmission source host and the transmission destination host always passes through at least one OFS 102 having the function 1, function 1 (statistical information acquisition function) ) Is effective.
  • function 1 is a function that should always be provided. Therefore, the transfer path corresponding to other functions (functions 2 to 5) calculated by each combination of the transmission source host and the transmission destination host also passes through either the OFS 102-1 or OFS 102-6 that has the function 1. There is a need to.
  • the functional topology calculation unit 304 calculates a transfer path for each function with respect to each combination of the transmission destination host and the transmission source host specified in step S31 (step S33). At this time, the functional topology calculation unit 304 calculates, based on the functional topology, a transfer route that minimizes the number of hops while satisfying the condition defined by the functional feature information for each function. When there is a function that is determined to be always provided, the function topology calculation unit 304 calculates a transfer path so as to satisfy the condition defined by the function feature information of the function.
  • the transfer paths shown in FIGS. 17 to 20 are transfer paths calculated so as to satisfy the conditions defined by the function feature information of the function of interest. However, functional feature information other than the focused function is not considered. For this reason, in the transfer paths shown in FIGS. 17 to 20, there is a transfer path that does not pass through the OFS 102-1 or OFS 102-6 having the function 1 that is determined to be always provided. For example, no.
  • the transfer path 72 (see FIG. 19) is a transfer path corresponding to the function 2 in which the host 103-3 is a transmission source and the host 103-6 is a transmission destination. This transfer path satisfies the conditions determined by the function feature information of function 2, but is determined without considering function feature information other than function 2.
  • the number of hops may increase. Then, there may be an increase in the number of transfer paths that satisfy the condition defined by the function feature information of the function of interest and the condition defined by the function feature information of the function determined to be always provided.
  • the recalculated No. 75 transfer path (see FIG. 23) is No. before recalculation. In the 75 transfer paths (see FIG. 19), the OFS 102-6 is also routed. As a result, the number of hops increased from 3 to 4.
  • the number of hops is 4, the number of transfer paths that satisfy the condition defined by the function 4 of interest and the function characteristic information of the function 1 that should be always provided is increased by one. In FIG. It is shown as 75-2.
  • the transfer path 78 (see FIG. 19) is a transfer path corresponding to the function 5 in which the host 103-3 is a transmission source and the host 103-6 is a transmission destination.
  • the route 76 has already passed through OFS-1.
  • the number of hops will increase from 76. Therefore, as a result of recalculation, the transfer path corresponding to the function 5 in which the host 103-3 is the transmission source and the host 103-6 is the transmission destination is No. 76 (see FIG. 23).
  • FIG. 21 to FIG. 24 the transfer paths that are excluded as a result of recalculation are shown together with a strikethrough.
  • the functional topology calculation unit 304 selects the arbitrary one route from the transfer routes.
  • the transfer path corresponding to the function may be narrowed down to one.
  • the packet transfer path is determined for each combination of the source host, destination host, and function.
  • the functional topology calculation unit 304 determines, for each determined transfer path, the condition of a packet to be transferred on the transfer path as Header Fields of the flow entry, and for each OFS 102 of the transfer path information, It is determined as Action that a packet is output from the port corresponding to the node.
  • the update instruction unit 306 adds a flow entry including the Header Fields defined for the transfer path determined in step S4 and the Action defined for each OFS 102 on the transfer path to the flow table.
  • An instruction to add is given to each OFS 102 on the transfer path (step S5).
  • the update instruction unit 306 performs this operation for each transfer path calculated for each combination of the transmission source host, the transmission destination host, and the function.
  • the OFS 102 adds a flow entry to the flow table according to the instruction. As a result, a route determined for each combination of the transmission source host, the transmission destination host, and the function is constructed on the network shown in FIG.
  • the OFC 101 calculates the transfer path for each function in advance for each combination of the transmission source host and the transmission destination host, and forwards the packet along the transfer path to the node on each transfer path.
  • the flow table is instructed to be updated.
  • the OFS 102 on the transfer path already has a flow entry corresponding to the transfer path for each transfer path according to the combination of the transmission source host, the destination host, and the function. Is set. Therefore, the number of times the OFC 101 receives the first packet can be reduced.
  • the OFC 101 performs steps S1 to S3 in advance.
  • the operations in steps S1 to S3 are the same as the operations in steps S1 to S3 already described.
  • the OFC 101 performs step S4 (more specifically, steps S31 to S33 shown in FIG. 14).
  • step S31 the functional topology calculation unit 304 need only determine the combination of the transmission source host and the transmission destination host indicated by the first packet. That is, only one combination of the transmission source host and the transmission destination host is determined.
  • step S33 the functional topology calculation unit 304 analyzes the first packet and specifies a function that can interpret the packet.
  • the functional topology calculation unit 304 pays attention to only one combination of the transmission source host and the transmission destination host determined in step S31, and is a transfer path from the transmission source host to the transmission destination host. Calculate the corresponding transfer path.
  • the functional topology calculation unit 304 calculates a transfer route that minimizes the number of hops while satisfying the condition defined by the functional feature information of the function specified based on the first packet. Furthermore, if there is a function that should always be provided, the transfer path is recalculated so as to satisfy the conditions defined by the function feature information of the function.
  • the transmission source of the first packet is the host 103-1
  • the transmission destination is the host 103-4.
  • the function specified as the function capable of interpreting the first packet is the function 2.
  • the function topology calculation unit 304 determines the No. corresponding to the transmission source host 103-1, the transmission destination host 103-4, and the function 2. 8 (see FIG. 17) may be calculated.
  • No. The transfer path 8 is routed through the OFS 102-6 having the function 1 to be always provided. Therefore, in this example, no. There is no need to recalculate the 8 transfer paths.
  • the functional topology calculation unit 304 determines the condition of the packet to be transferred on the calculated transfer route as the header Fields of the flow entry, and for each OFS 102 of the transfer route information, sends a packet from the port corresponding to the next node on the route. Define the action to be output.
  • the update instruction unit 306 adds a flow entry including the Header Fields defined for the transfer path determined in step S4 and the Action defined for each OFS 102 on the transfer path to the flow table.
  • An instruction to add is given to each OFS 102 on the transfer path (step S5).
  • the OFS 102 adds a flow entry to the flow table according to the instruction.
  • a packet transfer path having the same header field as the first packet is configured on the network shown in FIG.
  • the update instruction unit 306 returns the first packet to the OFS 102 that has transmitted the first packet to the OFC 101.
  • the OFS 102 transfers the packet according to the added flow entry. Thereafter, the packet is transferred to the destination host along the established transfer path. The same applies to a packet having the same header field as the first packet.
  • the transfer path may be calculated for the combination of the source host, the destination host, and the function determined from the first packet. Therefore, the processing load when calculating the transfer path can be reduced.
  • the OFC 101 may perform steps S1 to S5.
  • the functional topology calculation unit 304 recreates the functional topology with the addition of the OFS 102.
  • the function topology calculation unit 304 when the function topology calculation unit 304 calculates a transfer path related to a function of interest, the function topology calculation unit 304 passes not only the OFS 102 that has the function but also the OFS 102 that does not have the function. Is also permitted to calculate the transfer route. For example, the OFS 102 that does not have a function is used as a node that handles between the OFSs 102 that have a function. Therefore, it is possible to calculate an appropriate transfer path, not a detoured transfer path that passes only through a functioning OFS.
  • a transfer route corresponding to a function is calculated based on the function topology. For this reason, the OFS 102 having the function is included in the transfer path corresponding to the function. In addition, the transfer path is calculated so that the OFS 102 having the function to be always provided is included in the transfer path. Therefore, necessary functions can be provided as the entire network.
  • the packet transfer path is calculated based on the information on the transmission source and transmission destination of the packet, but there is no concept of using a functional topology. Therefore, for example, there are cases where a transfer route that can acquire statistical information is calculated and cases where a transfer route that cannot acquire statistical information is calculated.
  • an appropriate packet transfer path can be determined while making use of the function.
  • the function topology calculation unit 304 calculates the function topology for each function possessed by each OFS 102 existing in the network, and then the packet transfer path corresponding to the function based on the function topology. Is calculated.
  • the network administrator can grasp that the physical connection connecting the OFSs 102 is employed more than the transfer path corresponding to the function. Therefore, the network administrator can predict the occurrence of the network load in advance, and the countermeasures can be examined in advance.
  • the network load may be avoided if the OFS 102 having only a specific function is added to the network instead of the OFS 102 having all functions. It is mentioned as an effect.
  • the function topology of the function can be changed. Therefore, the packet transfer route calculated based on the function topology is also changed. be able to. As a result, the load on the network can be avoided.
  • FIG. FIG. 25 is a block diagram showing a configuration example of the OFC 101 in the second embodiment of the present invention.
  • the same elements as those of the OFC 101 in the first embodiment are denoted by the same reference numerals as those in FIG.
  • the OFS 102 and the host 103 (not shown in FIG. 25) in the second embodiment are the same as the OFS 102 and the host 103 (see FIGS. 1 and 10) in the first embodiment, and the description thereof is omitted.
  • the OFC 101 in the second embodiment further includes a function topology display control unit 309 in addition to the components of the OFC 101 in the first embodiment.
  • the functional topology display control unit 309 displays the functional topology of each function stored in the functional topology management unit 305 on a display device (not shown).
  • the network administrator can visually confirm each functional topology. Therefore, based on the displayed functional topology, the network administrator can understand what function the OFS 102 possessing is added to where the functional topology changes and a more appropriate transfer path can be constructed for the network. can do.
  • the network load is predicted only by information indicating the functions possessed by the OFS 102 (information stored in the OFS possessed function management unit 302 as illustrated in FIG. 7). Becomes more difficult.
  • the functional topology display control unit 309 displays the functional topology on the display device, so that the functional topology can be visually presented to the network administrator. As a result, network management for the network administrator becomes easier.
  • the functional topology display control unit 309 is realized by a CPU of a computer that operates according to a path control program, for example. Further, the functional topology display control unit 309 may be realized by hardware different from other components.
  • FIG. 26 is a block diagram showing an example of the minimum configuration of the present invention.
  • the path control device of the present invention includes a transfer path calculation unit 92 and a setting unit 93.
  • the transfer route calculation unit 92 calculates a transfer route including a packet transfer device having a function for a packet.
  • the setting unit 93 (for example, the update instruction unit 306) performs setting so that each packet transfer device on the transfer path calculated by the transfer path calculation unit 92 transfers the packet along the transfer path.
  • a functional topology creating unit for example, a functional topology calculating unit 304 that executes step S3 for creating a functional topology for each function is provided, and the transfer path calculating unit 92 corresponds to the function of the packet transfer apparatus based on the functional topology.
  • the transfer path calculation unit 92 specifies all combinations of the packet transmission source and the transmission destination, calculates the transfer path based on the functional topology for each function for each combination of the packet transmission source and the transmission destination,
  • the setting means 93 causes each packet transfer device on the transfer path to transfer the packet along the transfer path for each transfer path calculated for each combination of the packet source, destination, and function. A configuration for performing the setting may be used.
  • the transfer path calculation unit 92 When the transfer path calculation unit 92 receives a packet (for example, a first packet) from which the packet transfer apparatus cannot specify the transfer destination from the packet transfer apparatus, the transfer path calculation unit 92 specifies the combination of the transmission source and the transmission destination of the packet, For the combination of the source and destination of the packet, the transfer path is calculated based on the function topology of the function, and the setting means 93 for each packet transfer device on the transfer path Thus, the configuration may be such that the packet is transferred along the transfer path.
  • a packet for example, a first packet
  • the transfer path corresponding to the function so that the transfer path calculating unit 92 satisfies the condition (for example, the condition indicated by the function characteristic information) determined for each function as the condition to be satisfied by the transfer path corresponding to the function of the packet transfer apparatus. May be configured to calculate.
  • the transfer path calculation unit 92 calculates a transfer path corresponding to a function, if there is a function that should be always provided separately from the function, the transfer path calculation unit 92 should always be provided along with the conditions defined for the function.
  • the configuration may be such that the transfer path corresponding to the function is calculated so as to satisfy the condition defined for the function.
  • display control means for example, the functional topology display control unit 309 that causes the display device to display the functional topology created by the functional topology creation means.
  • the functional topology creating means may be configured to recreate the functional topology when a new packet transfer device is added.
  • the present invention is preferably applied to a route control device that controls a transfer route of a packet passing through the packet transfer device.

Landscapes

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

Abstract

This invention provides a route control apparatus that, even if there is a difference in function between packet transfer apparatuses included in a network, can determine an appropriate packet transfer route, while making use of the functions. A transfer route calculation means (92) calculates a transfer route including packet transfer apparatuses having respective functions for a packet. A setting means (93) performs a setting to cause the packet transfer apparatuses on the transfer route calculated by the transfer route calculation means (92) to transfer the packet along the transfer route.

Description

経路制御装置、経路制御方法および経路制御プログラムRoute control device, route control method, and route control program

 本発明は、パケット転送装置を制御することによりパケットの転送経路を制御する経路制御装置、経路制御方法および経路制御プログラムに関する。 The present invention relates to a route control device, a route control method, and a route control program for controlling a packet transfer route by controlling the packet transfer device.

 図27は、オープンフローを適用したネットワーク構成の例を示す説明図である。図27に示すネットワーク構成では、パケットを転送するオープンフロースイッチ(以下、OFSと記す。)502と、パケットの転送経路を決定するオープンフローコントローラ(以下、OFCと記す。)501とが、分離して設けられる。OFS502には、ホスト503が接続される。そして、OFC501は、パケットの送信元ホストから送信先ホストへの経路を決定する。 FIG. 27 is an explanatory diagram showing an example of a network configuration to which OpenFlow is applied. In the network configuration shown in FIG. 27, an OpenFlow switch (hereinafter referred to as OFS) 502 that transfers a packet and an OpenFlow controller (hereinafter referred to as OFC) 501 that determines a packet transfer path are separated. Provided. A host 503 is connected to the OFS 502. Then, the OFC 501 determines a route from the transmission source host to the transmission destination host of the packet.

 OFS502は、受け取ったパケットに対する次の転送先を定義しているフローテーブルと呼ばれる情報を保持している。OFS502は、受け取ったパケットの転送先がフローテーブル内で示されていない場合や、パケット内に存在する宛先情報をOFS502自身で解釈できない場合に、OFC501に対して、そのパケットの転送先を問い合わせる。 The OFS 502 holds information called a flow table that defines the next transfer destination for the received packet. The OFS 502 inquires of the OFC 501 about the transfer destination of the packet when the transfer destination of the received packet is not indicated in the flow table or when the destination information existing in the packet cannot be interpreted by the OFS 502 itself.

 OFC501は、パケットの転送経路を計算し、その転送経路を構築するために、転送経路上の複数のOFS502に対して、決定した転送経路に従いパケットが転送されるようにフローテーブルの更新指示を出す。そして、転送経路上の各OFS502がフローテーブルを更新することで、パケットの送信元から送信先への転送経路が構築される。 The OFC 501 calculates a packet transfer route, and issues a flow table update instruction to a plurality of OFSs 502 on the transfer route so that the packet is transferred according to the determined transfer route in order to construct the transfer route. . Then, each OFS 502 on the transfer path updates the flow table, thereby constructing a transfer path from the packet transmission source to the transmission destination.

 OFC501は、OFS502を管理する役目も担っており、OFS502がどこに存在しどのように接続されているかを示すトポロジを把握している。OFC501は、パケットの転送経路算出にこのトポロジの情報を使用している。また、OFS502が故障したり、ネットワーク構成を拡大したりする場合、ネットワーク管理者は新たにOFS502を導入する。このとき、OFC501は、OFS502の情報を収集する機能を用いて、新たに接続されるOFS502がサポートしているOpenFlow protocol のバージョンや、Internet Protocol のバージョン(IPv4/IPv6)といったそのOFS502が保有している機能について把握する。 The OFC 501 is also responsible for managing the OFS 502, and grasps the topology indicating where the OFS 502 exists and how it is connected. The OFC 501 uses this topology information for packet transfer path calculation. Further, when the OFS 502 fails or the network configuration is expanded, the network administrator newly introduces the OFS 502. At this time, the OFC 501 uses the function of collecting information of the OFS 502, and the OFS 502 holds the OpenFlow protocol version supported by the newly connected OFS 502 and the Internet Protocol version (IPv4 / IPv6). Understand what functions are.

 オープンフローを適用したネットワークシステムの例が、例えば、特許文献1に記載されている。 An example of a network system to which OpenFlow is applied is described in Patent Document 1, for example.

 また、特許文献2には、各ノードが有する機能部や設定情報を他の端末と協力して取得する装置が記載されている。 Also, Patent Document 2 describes a device that acquires the functional units and setting information of each node in cooperation with other terminals.

 また、特許文献3には、ネットワークデバイス上で実行するサービスを識別するための機能インジケータを用いて送信先アドレスを定める方法が記載されている。 Further, Patent Document 3 describes a method for determining a destination address using a function indicator for identifying a service executed on a network device.

特開2013-143698号公報JP 2013-143698 A 特開2012-175628号公報JP 2012-175628 A 特表2011-501602号公報Special table 2011-501602

 オープンフローでは、OFCとOFSとの間でのプロトコルに関しては標準化されている。しかし、OFCとOFSとでベンダが異なっていたり、各OFSのベンダが異なっていたりする場合がある。そして、ベンダが異なることで、OFS毎に搭載されている機能に差分が存在する場合がある。また、同一ベンダのOFSであっても、サポートするOpenFlow protocol のバージョンが異なっていたり、ベンダが独自に拡張したベンダ独自機能の搭載の有無の違いがある等、OFSに搭載されている機能に差分が存在することがある。 In OpenFlow, the protocol between OFC and OFS is standardized. However, there are cases where the vendors of OFC and OFS are different, or the vendors of each OFS are different. And, there are cases where differences exist in the functions installed for each OFS due to different vendors. Also, even if the same vendor's OFS, the supported OpenFlow protocol version is different, or there is a difference in the presence or absence of vendor-specific functions that the vendor has originally expanded. May exist.

 そのため、ネットワーク管理者は、ネットワーク全体としてどのような機能を提供すべきかを定義し、その機能を送信元ホストから送信先ホストまでのパケットの転送経路上で提供できるようにするために、どのOFSがその提供すべき機能を保有しているか、または保有していないかを把握しなければならなかった。そして、ネットワーク管理者は、その機能を保有しているOFSを経由するような迂回した転送経路を設定しなければならなかった。例えば、提供すべき機能が、ある特定の機能Aである場合、その機能Aを保有するOFSを経由するように迂回した転送経路を構築する必要があった。しかし、ネットワーク内に存在するOFSの数が膨大となる大規模ネットワークでは、ネットワーク管理者が各OFSの搭載機能の差分を把握することは困難である。 Therefore, the network administrator defines what functions should be provided for the entire network, and in order to be able to provide that function on the packet transfer path from the source host to the destination host, I had to figure out if I had or didn't have the function it should provide. Then, the network administrator has to set a detoured transfer route that goes through the OFS having the function. For example, when the function to be provided is a specific function A, it is necessary to construct a detour transfer path that goes through the OFS that owns the function A. However, in a large-scale network in which the number of OFSs present in the network is enormous, it is difficult for the network administrator to grasp the difference between the functions installed in each OFS.

 ネットワーク内のOFSに、OpenFlow protocol のバージョンの違いや、ベンダ独自機能の搭載の有無の違い等の差分があった場合、小規模なネットワークではOFSの数が少ないため、ネットワーク管理者は各OFSの機能差分を容易に把握することができる。 If there are differences in the OFS in the network, such as differences in the version of OpenFlow protocol or the presence or absence of vendor-specific functions, there are few OFS in a small network. Functional differences can be easily grasped.

 しかし、大規模ネットワークでは接続されているOFSが多く、個々のOFSの機能を把握することが困難である。 However, in a large-scale network, there are many connected OFS, and it is difficult to grasp the function of each OFS.

 そのため、ネットワーク全体としてある機能を提供するために、OFSの機能差分を考慮した転送経路を構築することは、ネットワーク管理者にとって難易度が高かった。そこで、ネットワーク管理者は、OFS間の機能差分を少なくするために、同じ機能を保有する複数のOFSを可能な限り隣接するように物理的に結線し、この同じ機能を保有する複数のOFSを、1つの集合であるドメインとして定義した。この結果、ドメイン内では機能差分が少ないため、ドメイン内で閉じた経路に関しては、ネットワーク管理者による構築が容易になった。 Therefore, in order to provide a certain function as a whole network, it is difficult for a network administrator to construct a transfer route that takes into account the functional difference of OFS. Therefore, in order to reduce the functional difference between OFS, the network administrator physically connects a plurality of OFSs having the same function so as to be adjacent as much as possible, and the plurality of OFSs having the same function are connected. A domain is defined as a set. As a result, since there are few functional differences in the domain, it is easy for a network administrator to construct a route that is closed in the domain.

 しかし、ネットワークの規模がより大きくなるにつれて、パケットの送信元と送信先が別のドメインに所属している場合が生じてしまい、ドメイン間を跨る経路をネットワーク管理者が設定しなければならない状況が増えてきた。パケットの送信元と送信先がドメインを跨る場合、ドメイン内に存在するOFS間では機能差分が少ないが、異なるドメインに所属するOFS間では機能差分が存在してしまう。つまり、複数のOFSの集合であるドメイン同士の間で機能差分が存在してしまう。その結果、ネットワーク全体としてある機能を提供するためにOFSの機能差分を考慮した転送経路を構築することの難易度は、さらに高くなってきていた。 However, as the size of the network grows larger, there are cases where the packet source and destination belong to different domains, and the network administrator has to set a route that spans between domains. It has increased. When the packet transmission source and the transmission destination cross the domain, the functional difference is small between OFSs existing in the domain, but the functional difference exists between OFSs belonging to different domains. That is, a functional difference exists between domains that are a set of a plurality of OFS. As a result, in order to provide a certain function as a whole network, the difficulty level of constructing a transfer path in consideration of the functional difference of OFS has been further increased.

 また、パケットの転送経路は、パケットの送信元と送信先の情報に基づいて算出される。従って、新しいOpenFlow protocol のバージョンに対応したOFSや、ベンダ独自機能を多く搭載する高機能なOFSを導入したとしても、転送経路によっては、高機能なOFSを経由しない場合もある。そのため、ネットワークとして機能を提供できる場合と、提供できない場合とが存在してしまう。 Also, the packet transfer path is calculated based on the packet source and destination information. Therefore, even if an OFS corresponding to a new version of OpenFlow protocol or a high-performance OFS equipped with many vendor-specific functions are introduced, the transfer path may not pass through a high-function OFS. Therefore, there are cases where the function can be provided as a network and cases where the function cannot be provided.

 ネットワークとして機能を提供できる場合とできない場合とが存在してしまう場合、ネットワーク管理者は、ネットワーク全体としてその機能を提供しないことに統一していた。具体的には、ネットワーク管理者は、他のOFSの機能に合わせて、OpenFlow protocol のバージョンを下げたり、または、ベンダ独自機能の一部をオフにしたりしていた。 When there is a case where the function can be provided as a network and a case where the function cannot be provided as a network, the network administrator has unified the network not to provide the function. Specifically, the network administrator has lowered the version of OpenFlow protocol, or turned off some of the vendor-specific functions in accordance with other OFS functions.

 また、新たな機能を保有するOFSをネットワーク内に導入する場合、既にネットワーク内に存在するOFSを、その新たな機能を保有しているOFSに全て入れ替えることも考えられる。しかし、OFSの全体的な入れ替えのコストは高い。特に、大規模ネットワークに存在するOFSの数は膨大であり、これらのOFSの入れ替えコストは非常に高くなる。そのため、ネットワークの規模が大規模になるほど、ネットワーク全体としての高機能化を進めることが困難であった。 Also, when an OFS having a new function is introduced into the network, it is possible to replace all of the OFSs already existing in the network with the OFS having the new function. However, the overall replacement cost of OFS is high. In particular, the number of OFS present in a large-scale network is enormous, and the replacement cost of these OFS is very high. For this reason, as the scale of the network becomes larger, it has been difficult to improve the functionality of the entire network.

 そこで、本発明は、ネットワークに含まれるパケット転送装置同士で機能に差分がある場合であっても、機能を生かしつつ、適切なパケットの転送経路を定めることができる経路制御装置、経路制御方法および経路制御プログラムを提供することを目的とする。 Therefore, the present invention provides a route control device, a route control method, and a route control device that can determine an appropriate packet transfer route while making use of the function even when there is a difference in function between packet transfer devices included in the network. An object is to provide a routing program.

 本発明による経路制御装置は、パケット転送装置を経由するパケットの転送経路を制御する経路制御装置であって、パケットに対する機能を保有するパケット転送装置を含む転送経路を算出する転送経路算出手段と、転送経路算出手段によって算出された転送経路上の各パケット転送装置に対して、転送経路に沿ってパケットを転送させる設定を行う設定手段とを備えることを特徴とする。 A path control apparatus according to the present invention is a path control apparatus that controls a transfer path of a packet that passes through a packet transfer apparatus, a transfer path calculation unit that calculates a transfer path including a packet transfer apparatus having a function for a packet, And a setting unit configured to set each packet transfer device on the transfer route calculated by the transfer route calculating unit to transfer the packet along the transfer route.

 また、本発明による経路制御方法は、パケット転送装置を経由するパケットの転送経路を制御する経路制御方法であって、パケットに対する機能を保有するパケット転送装置を含む転送経路を算出し、転送経路上の各パケット転送装置に対して、転送経路に沿ってパケットを転送させる設定を行うことを特徴とする。 A route control method according to the present invention is a route control method for controlling a transfer route of a packet passing through a packet transfer device, and calculates a transfer route including a packet transfer device having a function for a packet, Each packet transfer apparatus is set to transfer a packet along a transfer path.

 また、本発明による経路制御プログラムは、パケット転送装置を経由するパケットの転送経路を制御するコンピュータに搭載される経路制御プログラムであって、コンピュータに、パケットに対する機能を保有するパケット転送装置を含む転送経路を算出する転送経路算出処理、および、転送経路算出処理で算出された転送経路上の各パケット転送装置に対して、転送経路に沿ってパケットを転送させる設定を行う設定処理を実行させることを特徴とする。 A route control program according to the present invention is a route control program installed in a computer that controls a transfer route of a packet passing through a packet transfer device, and the computer includes a packet transfer device having a function for a packet. A transfer route calculation process for calculating a route, and a setting process for setting each packet transfer device on the transfer route calculated in the transfer route calculation process to transfer a packet along the transfer route. Features.

 本発明によれば、ネットワークに含まれるパケット転送装置同士で機能に差分がある場合であっても、機能を生かしつつ、適切なパケットの転送経路を定めることができる。 According to the present invention, even when there is a difference in function between packet transfer apparatuses included in the network, an appropriate packet transfer path can be determined while making use of the function.

本発明が適用されるネットワークシステムの例を示す説明図である。It is explanatory drawing which shows the example of the network system to which this invention is applied. OFCの構成例を示すブロック図である。It is a block diagram which shows the structural example of OFC. 機能トポロジの例を示す模式図である。It is a schematic diagram which shows the example of a functional topology. 機能トポロジの例を示す模式図である。It is a schematic diagram which shows the example of a functional topology. OFCの処理経過の例を示すフローチャートである。It is a flowchart which shows the example of processing progress of OFC. ステップS1の処理経過の例を示すシーケンス図である。It is a sequence diagram which shows the example of the process progress of step S1. OFS保有機能管理部に記憶される情報の例を示す模式図である。It is a schematic diagram which shows the example of the information memorize | stored in an OFS possession function management part. 機能トポロジの例を示す模式図である。It is a schematic diagram which shows the example of a functional topology. ホスト同士を結ぶパケットの転送経路の例を示す模式図である。It is a schematic diagram which shows the example of the transfer path | route of the packet which connects hosts. ネットワーク構成の例を示す模式図である。It is a schematic diagram which shows the example of a network structure. 図10に示す各OFSの搭載機能の差分を示す説明図である。It is explanatory drawing which shows the difference of the mounting function of each OFS shown in FIG. 機能1~5のそれぞれに対応する機能トポロジを示す模式図である。FIG. 6 is a schematic diagram showing a function topology corresponding to each of functions 1 to 5; フローテーブルの内容を示す説明図である。It is explanatory drawing which shows the content of the flow table. ステップS4における機能トポロジ計算部の処理経過の例を示すフローチャートである。It is a flowchart which shows the example of a process progress of the functional topology calculation part in step S4. ステップS31で特定された送信元ホストと送信先ホストの各組み合わせの例を示す説明図である。It is explanatory drawing which shows the example of each combination of the transmission origin host specified by step S31, and a transmission destination host. 機能1~機能5の機能特徴情報の例を示す説明図である。FIG. 6 is an explanatory diagram illustrating an example of function feature information of functions 1 to 5; 転送経路の算出結果を示す説明図である。It is explanatory drawing which shows the calculation result of a transfer path | route. 転送経路の算出結果を示す説明図である。It is explanatory drawing which shows the calculation result of a transfer path | route. 転送経路の算出結果を示す説明図である。It is explanatory drawing which shows the calculation result of a transfer path | route. 転送経路の算出結果を示す説明図である。It is explanatory drawing which shows the calculation result of a transfer path | route. 転送経路の再算出結果を示す説明図である。It is explanatory drawing which shows the recalculation result of a transfer path | route. 転送経路の再算出結果を示す説明図である。It is explanatory drawing which shows the recalculation result of a transfer path | route. 転送経路の再算出結果を示す説明図である。It is explanatory drawing which shows the recalculation result of a transfer path | route. 転送経路の再算出結果を示す説明図である。It is explanatory drawing which shows the recalculation result of a transfer path | route. 本発明の第2の実施形態におけるOFCの構成例を示すブロック図である。It is a block diagram which shows the structural example of OFC in the 2nd Embodiment of this invention. 本発明の最小構成の例を示すブロック図である。It is a block diagram which shows the example of the minimum structure of this invention. オープンフローを適用したネットワーク構成の例を示す説明図である。It is explanatory drawing which shows the example of the network structure to which OpenFlow is applied.

 以下、本発明の実施形態を図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.

 まず、本発明の概要について説明する。本発明では、OFC(オープンフローコントローラ)は、OFS(オープンフロースイッチ)の物理的なトポロジだけでなく、OFSに搭載されている機能毎に、機能を保有している全てのOFSを網羅的に接続したダイアグラムを、機能トポロジとして定義する。機能トポロジは、論理的なトポロジでありOFS間の物理的な結線には依存しない。物理的に直接結線されていないOFS間であっても、同じ機能を保有するという相関が存在する。そのため、論理的なトポロジとして、同じ機能を保有しているOFS間をつなぐ機能トポロジを定義することができる。機能トポロジを定義し、機能トポロジに近い転送経路を算出することで、高機能OFSを中心とした転送経路を構築することができる。このとき、ネットワーク全体として提供する機能を保有するOFS同士が物理的に結線されていない場合、その機能を保有していないOFSは、その機能を保有している複数のOFS間を取り持つノードとして用いられる。本発明では、機能トポロジに基づいてネットワーク全体として高機能OFSを中心とした経路を構築することができ、一部のOFSがある機能を保有していなくても、ネットワーク全体としてはその機能を提供することができる。 First, the outline of the present invention will be described. In the present invention, the OFC (Open Flow Controller) comprehensively covers not only the physical topology of the OFS (Open Flow Switch) but also all of the OFSs possessing functions for each function installed in the OFS. Define the connected diagram as a functional topology. The functional topology is a logical topology and does not depend on the physical connection between OFS. There is a correlation of having the same function even between OFSs that are not physically directly connected. Therefore, a functional topology that connects between OFSs having the same function can be defined as a logical topology. By defining a functional topology and calculating a transfer path close to the functional topology, a transfer path centered on the high-function OFS can be constructed. At this time, if the OFS having the function provided as the entire network is not physically connected, the OFS that does not have the function is used as a node that holds a plurality of OFS that have the function. It is done. In the present invention, a route centering on high-function OFS can be constructed as a whole network based on the functional topology, and even if some OFS does not have a function, the network as a whole provides that function. can do.

実施形態1.
 図1は、本発明が適用されるネットワークシステムの例を示す説明図である。図1に示すネットワークシステムは、OFC101と、任意の数のOFS102とを有する。OFC101は、本発明の経路制御装置に該当する。また、OFS102は、パケット転送装置に該当する。図1では、OFS102が6台である場合を例示している。個々のOFS102を区別する場合には、OFS102-1、OFS102-2等のように記載する。また、ホスト103がOFS102に接続される。ホストの台数は任意である。図1では、ホスト103が2台である場合を例示している。個々のホスト103を区別する場合には、ホスト103-1、ホスト103-2等のように記載する。
Embodiment 1. FIG.
FIG. 1 is an explanatory diagram showing an example of a network system to which the present invention is applied. The network system illustrated in FIG. 1 includes an OFC 101 and an arbitrary number of OFSs 102. The OFC 101 corresponds to the path control device of the present invention. The OFS 102 corresponds to a packet transfer device. FIG. 1 illustrates a case where there are six OFSs 102. When the individual OFSs 102 are distinguished, they are described as OFS 102-1 and OFS 102-2. In addition, the host 103 is connected to the OFS 102. The number of hosts is arbitrary. FIG. 1 illustrates a case where there are two hosts 103. When distinguishing the individual hosts 103, they are described as the host 103-1, the host 103-2, and the like.

 図2は、OFC101の構成例を示すブロック図である。OFC101は、OFS管理部301と、機能トポロジ計算部304と、機能トポロジ管理部305と、更新指示部306と、接続処理部307とを備える。OFS管理部301は、OFS保有機能管理部302を含む。 FIG. 2 is a block diagram illustrating a configuration example of the OFC 101. The OFC 101 includes an OFS management unit 301, a functional topology calculation unit 304, a functional topology management unit 305, an update instruction unit 306, and a connection processing unit 307. The OFS management unit 301 includes an OFS possessed function management unit 302.

 OFS管理部301は、ネットワーク内に存在するOFS102の情報を管理する。具体的には、OFS管理部301は、ネットワーク内に存在する各OFS102から、OFS102が保有する機能に関する情報を取得する。 The OFS management unit 301 manages information of the OFS 102 existing in the network. Specifically, the OFS management unit 301 acquires information on functions held by the OFS 102 from each OFS 102 existing in the network.

 OFS保有機能管理部302は、機能毎に個々のOFS102が機能を保有しているか否かを示す情報を保持する。OFS管理部301は、OFS102が保有する機能に関する情報を各OFS102から取得し、機能毎に個々のOFS102が機能を有しているか否かを示す情報をOFS保有機能管理部302に記憶させる。 The OFS possessed function management unit 302 retains information indicating whether each OFS 102 possesses a function for each function. The OFS management unit 301 acquires information about the functions held by the OFS 102 from each OFS 102, and stores information indicating whether each OFS 102 has a function for each function in the OFS held function management unit 302.

 機能トポロジ計算部304は、OFS保有機能管理部302に保持されている情報(機能毎に個々のOFS102が機能を有しているか否かを示す情報)に基づいて、機能毎に機能トポロジを算出する。ある機能に関する機能トポロジは、その機能を保有している全てのOFS102同士が、実際の結線の有無に依存せずに、網羅的に接続されたダイアグラムである。ある機能に関する機能トポロジにおいて、その機能トポロジ内のOFS102は全て、その機能を保有している。そして、その機能トポロジの個々のOFS102は、その機能を保有している自身以外の全てのOFS102と接続される。この接続は、ネットワークで実際に結線されているか否かに依存しない。従って、実際には結線されていないOFS102同士であっても、同じ機能を保有しているOFS102同士は、その機能に関する機能トポロジでは接続される。以下に、機能トポロジの例を示す。 The functional topology calculation unit 304 calculates a functional topology for each function based on information held in the OFS possessed function management unit 302 (information indicating whether each OFS 102 has a function for each function). To do. The functional topology related to a certain function is a diagram in which all OFSs 102 having the function are comprehensively connected without depending on the presence or absence of actual connection. In a functional topology related to a certain function, all of the OFSs 102 in the functional topology have the function. Then, each OFS 102 in the functional topology is connected to all OFSs 102 other than itself that own the function. This connection does not depend on whether or not the network is actually connected. Therefore, even if the OFSs 102 are not actually connected, the OFSs 102 having the same function are connected in the functional topology related to the function. An example of functional topology is shown below.

 図1に示すネットワークシステムにおいて、ある特定の機能を保有しているOFS102が、OFS102-2、OFS102-5、OFS102-6のみであるとする。図3は、その機能に関する機能トポロジとして機能トポロジ計算部304によって計算された機能トポロジを示す。本例では、機能トポロジ303において、OFS102-2、OFS102-5、OFS102-6が接続される。図3に示すように、OFS102-2、OFS102-5、OFS102-6はそれぞれ、機能トポロジ303内の自身以外の全てのOFSに接続されている。 In the network system shown in FIG. 1, it is assumed that the OFS 102 having a specific function is only the OFS 102-2, OFS 102-5, and OFS 102-6. FIG. 3 shows a functional topology calculated by the functional topology calculation unit 304 as a functional topology related to the function. In this example, in the functional topology 303, OFS 102-2, OFS 102-5, and OFS 102-6 are connected. As shown in FIG. 3, each of the OFS 102-2, OFS 102-5, and OFS 102-6 is connected to all of the OFSs other than itself in the functional topology 303.

 また、図1に示すネットワークシステムにおいて、別の特定の機能を保有するOFS102が、OFS102-2、OFS102-3、OFS102-4、OFS102-5のみであるとする。図4は、その機能に関する機能トポロジとして機能トポロジ計算部304によって計算された機能トポロジを示す。本例では、機能トポロジ303において、OFS102-2、OFS102-3、OFS102-4、OFS102-5が接続される。図4に示す例においても、機能トポロジ303内の個々のOFSは、機能トポロジ303内の自身以外の全てのOFSに接続されている。 Further, in the network system shown in FIG. 1, it is assumed that the OFS 102 having another specific function is only the OFS 102-2, OFS 102-3, OFS 102-4, and OFS 102-5. FIG. 4 shows a functional topology calculated by the functional topology calculation unit 304 as a functional topology related to the function. In this example, in the function topology 303, OFS 102-2, OFS 102-3, OFS 102-4, and OFS 102-5 are connected. Also in the example illustrated in FIG. 4, each OFS in the functional topology 303 is connected to all OFSs other than itself in the functional topology 303.

 機能トポロジ管理部305は、機能トポロジ計算部304によって計算された機能トポロジを管理する。具体的には、機能トポロジ管理部305は、機能トポロジ計算部304によって機能毎に計算された各機能トポロジを保持する。 The functional topology management unit 305 manages the functional topology calculated by the functional topology calculation unit 304. Specifically, the function topology management unit 305 holds each function topology calculated for each function by the function topology calculation unit 304.

 また、機能トポロジ計算部304は、機能トポロジに基づいて、パケットの転送経路を算出する。 Further, the functional topology calculation unit 304 calculates a packet transfer path based on the functional topology.

 更新指示部306は、機能トポロジ計算部304によって算出された転送経路に基づいて、転送経路上の各OFS102に対して、フローテーブルの更新を指示する。 The update instruction unit 306 instructs each OFS 102 on the transfer path to update the flow table based on the transfer path calculated by the functional topology calculation unit 304.

 接続処理部307は、OFS102からの要求に応じて、そのOFS102との接続処理(通信の確立)を行う。 The connection processing unit 307 performs connection processing (establishment of communication) with the OFS 102 in response to a request from the OFS 102.

 また、OFC101は、各OFS102から、物理的なトポロジを特定するための情報を収集し、その情報に基づいて、OFS102およびホスト103の物理的なトポロジを特定する物理トポロジ特定部(図示略。)も有する。物理トポロジ特定部は、適宜、最新の物理的なトポロジを特定し、保持しているものとする。 Further, the OFC 101 collects information for specifying the physical topology from each OFS 102 and, based on the information, specifies a physical topology specifying unit (not shown) that specifies the physical topology of the OFS 102 and the host 103. Also have. The physical topology specifying unit appropriately specifies and holds the latest physical topology.

 OFS管理部301、機能トポロジ計算部304、更新指示部306、接続処理部307、および物理トポロジ特定部(図示略)は、例えば、経路制御プログラムに従って動作するコンピュータのCPUによって実現される。この場合、CPUは、例えば、コンピュータのプログラム記憶装置(図示略)等のプログラム記録媒体から経路制御プログラムを読み込み、その経路制御プログラムに従って、OFS管理部301、機能トポロジ計算部304、更新指示部306、接続処理部307、および物理トポロジ特定部として動作する。また、OFS管理部301、機能トポロジ計算部304、更新指示部306、接続処理部307、および物理トポロジ特定部がそれぞれ別々のハードウェアで実現されていてもよい。 The OFS management unit 301, the functional topology calculation unit 304, the update instruction unit 306, the connection processing unit 307, and the physical topology identification unit (not shown) are realized by a CPU of a computer that operates according to a path control program, for example. In this case, for example, the CPU reads a path control program from a program recording medium such as a program storage device (not shown) of the computer, and according to the path control program, the OFS management unit 301, the function topology calculation unit 304, and the update instruction unit 306. , The connection processing unit 307, and the physical topology specifying unit. Further, the OFS management unit 301, the functional topology calculation unit 304, the update instruction unit 306, the connection processing unit 307, and the physical topology identification unit may be realized by separate hardware.

 次に、本発明の処理経過について説明する。
 図5は、OFC101の処理経過の例を示すフローチャートである。OFC101は、図5に示すように、OFS-OFC間接続処理(ステップS1)、各OFSの保有機能把握処理(ステップS2)、機能トポロジ作成処理(ステップS3)、機能トポロジを優先した経路算出処理(ステップS4)、および、フローテーブルの更新処理(ステップS5)を順に実行する。以下、これらの各処理について説明する。
Next, the processing progress of the present invention will be described.
FIG. 5 is a flowchart illustrating an example of processing progress of the OFC 101. As shown in FIG. 5, the OFC 101 performs OFS-OFC connection processing (step S1), each OFS possessed function grasping processing (step S2), function topology creation processing (step S3), and route calculation processing giving priority to the function topology. (Step S4) and flow table update processing (Step S5) are executed in order. Hereinafter, each of these processes will be described.

 まず、OFS-OFC間接続処理(ステップS1)について説明する。図1に示すネットワークシステムにOFS102を接続する場合、そのOFS102は、OFC101に対して接続要求を行う。そして、OFS102を管理配下OFSとして、OFC,OFSが相互に接続を行う。そして、OFC101は、新たに接続されるOFS102を認識し、そのOFS102が保有する機能に関する情報を取得する。 First, the OFS-OFC connection process (step S1) will be described. When connecting the OFS 102 to the network system shown in FIG. 1, the OFS 102 issues a connection request to the OFC 101. Then, OFS and OFS are connected to each other using OFS 102 as a managed subordinate OFS. Then, the OFC 101 recognizes the newly connected OFS 102 and acquires information regarding the functions possessed by the OFS 102.

 図6は、ステップS1の処理経過の例を示すシーケンス図である。OFS-OFC間接続処理(ステップS1)は、OFC101がOFS102から接続要求を受けた時に、そのOFS102を管理配下OFSとして、OFC,OFSが相互に接続を行う処理である。 FIG. 6 is a sequence diagram showing an example of processing progress of step S1. The OFS-OFC connection process (step S1) is a process in which when the OFC 101 receives a connection request from the OFS 102, the OFS 102 is used as a managed subordinate OFS and the OFC and OFS connect to each other.

 ネットワークシステムにOFS102を接続する場合、最初にそのOFS102は、OFC101に対して、TCP(Transmission Control Protocol )コネクション構築要求を送信し、OFC101の接続処理部307はTCPコネクション構築要求を受信する。そして、OFS102および接続処理部307は、OFS102とOFC101との間の通信経路を構築する(ステップS21,S22)。 When connecting the OFS 102 to the network system, the OFS 102 first transmits a TCP (Transmission Control Protocol) connection establishment request to the OFC 101, and the connection processing unit 307 of the OFC 101 receives the TCP connection establishment request. Then, the OFS 102 and the connection processing unit 307 establish a communication path between the OFS 102 and the OFC 101 (Steps S21 and S22).

 次に、OFS102は、その通信経路に対してメッセージ(Helloメッセージ)を送信し(ステップS23)、接続処理部307は、そのメッセージを受信するとメッセージに対する応答をOFS102に送信する(ステップS24)。OFS102は、この応答を受信することで、構築した通信経路に問題がないことを確認する。 Next, the OFS 102 transmits a message (Hello message) to the communication path (step S23), and upon receiving the message, the connection processing unit 307 transmits a response to the message to the OFS 102 (step S24). By receiving this response, the OFS 102 confirms that there is no problem in the established communication path.

 通信経路の構築後、OFC101のOFS管理部301は、OFS102の保有機能を把握するため、OFS102に対して保有機能情報提供指示202を送信する(ステップS25)。保有機能情報提供指示202は、OFS102の機能に関する情報の提供を求める命令である。具体的には、OFS管理部301は、保有機能情報提供指示202によって、OFS102がサポートしているOpenFlow protocol のバージョン、Internet Protocol のバージョン(IPv4/IPv6)、および、OFS102が保有している機能(例えば、ベンダ独自機能)等の情報の提供を求める。そして、OFS102は、保有機能情報提供指示202に応じて、それらの情報をOFC101に送信する(ステップS26)。その結果、OFS管理部301は、OFS102がサポートしているOpenFlow protocol のバージョン、Internet Protocol のバージョン(IPv4/IPv6)、および、OFS102が保有している機能(例えば、ベンダ独自機能)等の情報を取得する。 After the communication path is established, the OFS management unit 301 of the OFC 101 transmits the retained function information provision instruction 202 to the OFS 102 in order to grasp the retained function of the OFS 102 (step S25). The retained function information provision instruction 202 is a command for requesting provision of information regarding the function of the OFS 102. Specifically, the OFS management unit 301 uses the retained function information provision instruction 202 to support the OpenFlow protocol version supported by the OFS 102, the Internet Protocol version (IPv4 / IPv6), and the functions possessed by the OFS 102 ( For example, it is requested to provide information such as vendor-specific functions. Then, the OFS 102 transmits such information to the OFC 101 in response to the retained function information provision instruction 202 (step S26). As a result, the OFS management unit 301 stores information such as the OpenFlow protocol version supported by the OFS 102, the Internet Protocol version (IPv4 / IPv6), and the functions (eg, vendor-specific functions) possessed by the OFS 102. get.

 その後、OFS管理部301は、設定変更指示203をOFS102に対して送信する(ステップS27)。OFS102は、設定変更指示203に従い、ネットワークのトポロジ、ネットワーク負荷、およびOFS102が保有する機能に応じて、設定を変更する。また、OFS102は、設定変更指示203に対する応答をOFC101に通知する(ステップS28)。 Thereafter, the OFS management unit 301 transmits a setting change instruction 203 to the OFS 102 (step S27). The OFS 102 changes the settings according to the network topology, the network load, and the functions possessed by the OFS 102 in accordance with the setting change instruction 203. Further, the OFS 102 notifies the OFC 101 of a response to the setting change instruction 203 (step S28).

 以上の処理で、OFS-OFC間接続処理(ステップS1)が完了し、OFS102は、OFC101の管理下のOFSとして、ネットワークに接続される。 With the above processing, the OFS-OFC connection processing (step S1) is completed, and the OFS 102 is connected to the network as an OFS under the management of the OFC 101.

 OFC101は、ネットワークシステムに接続されるOFS102毎にステップS1の処理を実行する。その後、OFC101は、各OFSの保有機能把握処理(ステップS2)を実行する。ステップS2について説明する。 The OFC 101 executes the process of step S1 for each OFS 102 connected to the network system. Thereafter, the OFC 101 executes the possessed function grasping process (step S2) of each OFS. Step S2 will be described.

 ネットワークシステムに接続されるOFS102毎にステップS1の処理を実行することによって、OFS管理部301は、その各OFS102から、OFS102の機能に関する情報を取得している。例えば、OFS管理部301は、OpenFlow protocol のバージョン、Internet Protocol のバージョン(IPv4/IPv6)、および、OFS102が保有している機能(例えば、ベンダ独自機能)等の情報を、各OFS102から取得している。ステップS2では、OFS管理部301は、その情報によって、各OFS102が保有している機能を把握する。そして、OFS管理部301は、機能毎に個々のOFS102が機能を有しているか否かを示す情報を生成し、OFS保有機能管理部302に記憶させる。 By executing the process of step S1 for each OFS 102 connected to the network system, the OFS management unit 301 acquires information on the function of the OFS 102 from each OFS 102. For example, the OFS management unit 301 acquires information such as the OpenFlow protocol version, the Internet Protocol version (IPv4 / IPv6), and the functions (for example, vendor-specific functions) possessed by the OFS 102 from each OFS 102. Yes. In step S <b> 2, the OFS management unit 301 grasps the function possessed by each OFS 102 based on the information. Then, the OFS management unit 301 generates information indicating whether each OFS 102 has a function for each function, and stores the information in the OFS possessed function management unit 302.

 図7は、OFS保有機能管理部302に記憶される情報の例を示す模式図である。図7では、機能が5種類である場合を例示している。そして、機能1に関して、各OFS102が機能1を保有しているか否かを示している。機能2~5に関しても同様である。なお、図7は、例示であり、機能毎に個々のOFS102が機能を有しているか否かを示す情報の保存形式(データ構造)は、限定されない。 FIG. 7 is a schematic diagram showing an example of information stored in the OFS possessed function management unit 302. FIG. 7 illustrates a case where there are five types of functions. For function 1, each OFS 102 indicates whether or not it has function 1. The same applies to functions 2-5. Note that FIG. 7 is an example, and the storage format (data structure) of information indicating whether each OFS 102 has a function for each function is not limited.

 ステップS2の後、機能トポロジ計算部304は、機能トポロジ作成処理(ステップS3)を実行する。機能トポロジ作成処理は、OFS保有機能管理部302に記憶された情報(機能毎に個々のOFS102が機能を保有しているか否かを示す情報)に基づいて、機能トポロジを作成する処理である。 After step S2, the functional topology calculation unit 304 executes a functional topology creation process (step S3). The function topology creation process is a process for creating a function topology based on information stored in the OFS possessed function management unit 302 (information indicating whether each OFS 102 possesses a function for each function).

 機能トポロジは、同一機能を保有するOFS102同士が接続されたダイアグラムであって、その機能を保有する個々のOFS102が、その機能を保有する自身以外の全てのOFS102に接続されたダイアグラムである。既に説明したように、機能トポロジは論理的なトポロジであり、同一の機能を保有しているOFS102同士であれば、物理的に結線されていなくても、機能トポロジでは接続される。 The functional topology is a diagram in which OFSs 102 having the same function are connected to each other, and each OFS 102 having the function is connected to all OFSs 102 other than itself having the function. As already described, the functional topology is a logical topology, and the OFSs 102 having the same function are connected in the functional topology even if they are not physically connected.

 機能トポロジ計算部304は、OFC101の管理配下のOFS102が保有している全ての機能毎に、機能トポロジを作成する。そして、機能トポロジ計算部304は、機能毎に作成した各機能トポロジを、機能トポロジ管理部305に記憶させる。 The functional topology calculation unit 304 creates a functional topology for every function held by the OFS 102 under the management of the OFC 101. Then, the functional topology calculation unit 304 causes the functional topology management unit 305 to store each functional topology created for each function.

 例えば、図1に例示するネットワークシステムにおいて、ステップS2で、図7に例示する情報がOFS保有機能管理部302に記憶されたとする。機能トポロジ計算部304は、図7に例示する情報に基づいて、機能1の機能トポロジとして、図8に示す機能トポロジ303を作成する。図7に示すように、機能1を保有しているOFSは、OFS102-1とOFS102-6のみである。従って、機能トポロジ計算部304は、機能1の機能トポロジとして、OFS102-1とOFS102-6とが接続された機能トポロジ303(図8参照)を生成する。図1に示すように、OFS102-1とOFS102-6とは結線されていない。しかし、機能トポロジでは、物理的な結線の有無に依存せずに、同一の機能(本例では機能1)を有しているOFS102同士が接続される。 For example, in the network system illustrated in FIG. 1, it is assumed that the information illustrated in FIG. 7 is stored in the OFS possessed function management unit 302 in step S2. The function topology calculation unit 304 creates a function topology 303 shown in FIG. 8 as the function topology of function 1 based on the information illustrated in FIG. As shown in FIG. 7, OFS 102-1 and OFS 102-6 are the only OFS possessing function 1. Therefore, the function topology calculation unit 304 generates a function topology 303 (see FIG. 8) in which the OFS 102-1 and OFS 102-6 are connected as the function 1 function topology. As shown in FIG. 1, OFS 102-1 and OFS 102-6 are not connected. However, in the functional topology, OFSs 102 having the same function (function 1 in this example) are connected without depending on the presence or absence of physical connection.

 図8では、機能1の機能トポロジを示した。機能トポロジ管理部305は、図7に例示する情報に基づいて、機能2~5についてもそれぞれ、機能トポロジを作成する。 Fig. 8 shows the functional topology of function 1. The function topology management unit 305 creates a function topology for each of the functions 2 to 5 based on the information illustrated in FIG.

 ステップS3の後、機能トポロジ計算部304は、機能トポロジを優先した経路算出処理(ステップS4)を実行する。以下、ステップS4の処理について説明する。 After step S3, the functional topology calculation unit 304 executes a route calculation process (step S4) giving priority to the functional topology. Hereinafter, the process of step S4 will be described.

 ネットワークではあらゆるパケットが送受信されている。また、ある特定の機能に着目した機能トポロジを作成したとしても、図1および図8を参照して説明したように、機能トポロジのノードとなるOFS102同士が物理的に結線されていない場合もある。そのため、機能トポロジのノードとなるOFS102だけでは、適切な経路を形成できない。そこで、ステップS4において、機能トポロジ計算部304は、機能トポロジに基づいて、その機能トポロジに対応する機能を保有するOFS102を転送経路上のノードとするとともに、その機能を保有するOFS102同士が結線されていない場合には、その機能を保有していないOFS102を、その機能を保有しているOFS102の間を取り持つノードとみなして、転送経路上のノードに含めることによって、パケットの転送経路を算出する。また、機能トポロジ計算部304は、機能毎にパケットの転送経路を算出する。このようにして、機能トポロジ計算部304は、ホスト103(図1参照)同士を結ぶパケットの転送経路を、機能トポロジ管理部305に記憶されている機能毎の機能トポロジに基づいて、機能毎に算出する。 Every packet is sent and received on the network. Even if a functional topology that focuses on a specific function is created, as described with reference to FIGS. 1 and 8, OFSs 102 that are nodes of the functional topology may not be physically connected to each other. . Therefore, an appropriate path cannot be formed only by the OFS 102 that is a node of the functional topology. Therefore, in step S4, based on the functional topology, the functional topology calculation unit 304 sets the OFS 102 having the function corresponding to the functional topology as a node on the transfer path and connects the OFSs 102 having the function to each other. If not, the OFS 102 that does not have the function is regarded as a node that holds between the OFSs 102 that have the function, and is included in the nodes on the transfer path to calculate the packet transfer path. . The function topology calculation unit 304 calculates a packet transfer path for each function. In this way, the functional topology calculation unit 304 determines the packet transfer path connecting the hosts 103 (see FIG. 1) for each function based on the functional topology for each function stored in the functional topology management unit 305. calculate.

 機能毎に算出された、ホスト103同士を結ぶパケットの転送経路の例を図9に示す。図9では、機能1~5に対応する転送経路をそれぞれ図示している。 FIG. 9 shows an example of a packet transfer path connecting the hosts 103 calculated for each function. FIG. 9 illustrates transfer paths corresponding to functions 1 to 5, respectively.

 機能1の機能トポロジのノードであるOFS102-1、OFS102-6だけでは適切な経路を形成できないため、機能トポロジ計算部304は、機能1を保有していないOFS102-2、OFS102-5を、OFS102-1とOFS102-6との間を取り持つノードとみなして、ホスト103-1とホスト103-2の間におけるパケットの転送経路を定める。従って、機能1を保有していないOFS102-2、OFS102-5も、機能1に対応する転送経路を形成している(図9参照)。機能1を保有していないOFS102-2は、単に、OFS102-1から受け取ったパケットをOFS102-6に転送するだけで、機能1に関する処理は何も行わない。OFS102-5も同様である。 Since the appropriate path cannot be formed only by the OFS 102-1 and OFS 102-6 that are the nodes of the function 1 function topology, the function topology calculation unit 304 replaces the OFS 102-2 and OFS 102-5 that do not have the function 1 with the OFS 102. -1 and OFS 102-6, a packet transfer path between the host 103-1 and the host 103-2 is determined. Therefore, OFS 102-2 and OFS 102-5 that do not have function 1 also form a transfer path corresponding to function 1 (see FIG. 9). The OFS 102-2 that does not have the function 1 simply transfers the packet received from the OFS 102-1 to the OFS 102-6, and does not perform any processing related to the function 1. The same applies to OFS102-5.

 すなわち、機能トポロジ計算部304は、着目している機能に関する転送経路を算出する際、その機能を保有しているOFS102だけで転送経路を算出できない場合、その機能を保有していないOFS102も経由することも許可して転送経路を算出する。 That is, when the function topology calculation unit 304 calculates a transfer path related to the function of interest, if the transfer path cannot be calculated only by the OFS 102 that has the function, the function topology calculation unit 304 also passes through the OFS 102 that does not have the function. The transfer route is calculated by permitting the above.

 上記のように、機能1を保有していないOFS102-2、OFS102-5を、機能1を保有しているOFS102-1、OFS102-6の間を取り持つノードとみなすことで、機能トポロジ計算部304は、機能1に対応する転送経路(図9参照)を形成する。同様に、機能トポロジ計算部304は、ホスト103-1とホスト103-2の間のパケットの転送経路として、機能2~5のそれぞれに対応する転送経路を算出する(図9参照)。 As described above, by considering the OFS 102-2 and OFS 102-5 that do not have the function 1 as the nodes that have the function 1 between the OFS 102-1 and the OFS 102-6, the function topology calculation unit 304 Forms a transfer path corresponding to function 1 (see FIG. 9). Similarly, the function topology calculation unit 304 calculates a transfer path corresponding to each of the functions 2 to 5 as a packet transfer path between the host 103-1 and the host 103-2 (see FIG. 9).

 ステップS4の後、更新指示部306は、フローテーブルの更新処理(ステップS5)を実行する。ステップS5において、更新指示部306は、機能トポロジ計算部304が算出した転送経路に沿ってパケットが転送されるように、転送経路上の各OFS102に対してフローテーブルの更新指示を送信する。OFS102は、更新指示部306からの更新指示に従ってフローテーブルを更新する。この結果、送信元のホストから送信されたパケットは、転送経路上の個々のOFS102においてフローテーブルに従って、次のOFS102に転送され、送信先のホストに到達する。このように、機能トポロジ計算部304が算出した、機能に対応した転送経路が構築される。ステップS5において、更新指示部306は、例えば、各機能に対応する転送経路毎に、転送経路上の各OFS102に対してフローテーブルの更新指示を送信する。 After step S4, the update instruction unit 306 executes a flow table update process (step S5). In step S <b> 5, the update instruction unit 306 transmits a flow table update instruction to each OFS 102 on the transfer path so that the packet is transferred along the transfer path calculated by the functional topology calculation unit 304. The OFS 102 updates the flow table according to the update instruction from the update instruction unit 306. As a result, the packet transmitted from the transmission source host is transferred to the next OFS 102 in accordance with the flow table in each OFS 102 on the transfer path, and reaches the transmission destination host. In this way, a transfer path corresponding to the function calculated by the function topology calculating unit 304 is constructed. In step S5, for example, the update instruction unit 306 transmits a flow table update instruction to each OFS 102 on the transfer path for each transfer path corresponding to each function.

 上記のようなステップS1~S5の動作により、ホスト103-1とホスト103-2との間において、各機能に対応できる高機能OFS102を中心とした適切な経路を構築できる。 By the operations in steps S1 to S5 as described above, an appropriate route centering on the high-function OFS 102 that can handle each function can be constructed between the host 103-1 and the host 103-2.

 以下、より具体的な例を用いて、本発明を説明する。以下の説明では、OFC101が事前に、送信元ホストおよび送信先ホストの組み合わせ毎に、機能毎の転送経路を算出し、それぞれの転送経路上のノードに対して、転送経路に沿ってパケットを転送するようにフローテーブルの更新を指示する場合を例にする。 Hereinafter, the present invention will be described using more specific examples. In the following description, the OFC 101 calculates a transfer path for each function in advance for each combination of a transmission source host and a transmission destination host, and forwards a packet along the transfer path to a node on each transfer path. As an example, the flow table is instructed to be updated.

 図10は、ネットワーク構成の例を示す模式図である。以下、図10に示すネットワーク構成を例にして説明する。既に説明したように、OFS102およびホスト103の数は任意である。図10に示す例では、OFS102の数が9であり、ホスト103の数が6であるネットワーク構成を例示している。また、図10では図示を省略しているが、図2に示す構成のOFC101が、図1に示す場合と同様に設けられている。 FIG. 10 is a schematic diagram showing an example of a network configuration. Hereinafter, the network configuration shown in FIG. 10 will be described as an example. As already described, the number of OFSs 102 and hosts 103 is arbitrary. The example illustrated in FIG. 10 illustrates a network configuration in which the number of OFSs 102 is nine and the number of hosts 103 is six. Although not shown in FIG. 10, the OFC 101 having the configuration shown in FIG. 2 is provided similarly to the case shown in FIG.

 また、OFS102-1からOFS102-9までの各OFS102の搭載機能には差分が存在する。図11は、図10に示す各OFS102の搭載機能の差分を示す説明図である。 In addition, there is a difference in the installed functions of each OFS 102 from OFS 102-1 to OFS 102-9. FIG. 11 is an explanatory diagram showing the difference in the installed functions of each OFS 102 shown in FIG.

 OFC101(図10において図示略)は、前述のステップS1~S6の処理を実行する。以下、本例における処理経過を説明する。 The OFC 101 (not shown in FIG. 10) executes the processes of steps S1 to S6 described above. Hereinafter, the process progress in this example will be described.

 最初に、各OFS102を結線することで、図10に示す物理的なトポロジのネットワークを形成した後、OFC101は、OFS-OFC間接続処理(ステップS1)を個々のOFS102に対してそれぞれ実行する。ステップS1の詳細は、ステップS21~S28(図6参照)で説明した通りであり、ここでは説明を省略する。 First, after the OFSs 102 are connected to form a network having the physical topology shown in FIG. 10, the OFC 101 executes an OFS-OFC connection process (step S1) for each OFS 102. The details of step S1 are as described in steps S21 to S28 (see FIG. 6), and a description thereof is omitted here.

 各OFS102に対してステップS1を実行することによって、OFC101のOFS管理部301(図2参照)は、各OFS102から、OFS102の機能に関する情報を取得している。OFS管理部301は、その情報によって、各OFS102が保有している機能を把握する。そして、OFS管理部301は、機能毎に個々のOFS102が機能を有しているか否かを示す情報を生成し、OFS保有機能管理部302に記憶させる(ステップS2)。本例では、図11に示す情報がOFS保有機能管理部302に記憶される。 By executing step S1 for each OFS 102, the OFS management unit 301 (see FIG. 2) of the OFC 101 acquires information on the function of the OFS 102 from each OFS 102. The OFS management unit 301 grasps the function possessed by each OFS 102 based on the information. Then, the OFS management unit 301 generates information indicating whether each OFS 102 has a function for each function, and stores the information in the OFS possessed function management unit 302 (step S2). In this example, the information shown in FIG. 11 is stored in the OFS possessed function management unit 302.

 続いて、機能トポロジ計算部304は、機能トポロジ作成処理(ステップS3)を実行する。ステップS3では、機能トポロジ計算部304は、OFS102-1ないしOFS102-9が保有している機能毎に、機能トポロジを作成する。本例では、機能トポロジ計算部304は、機能1~5(図11参照)のそれぞれの機能毎に、機能トポロジを作成する。図12は、本例における機能1~5のそれぞれに対応する機能トポロジを示す模式図である。図12に示す例では、各機能トポロジにおいて、機能トポロジのノードとなるOFS102を実線で示している。また、機能トポロジに含まれないOFS102(機能トポロジのノードとならないOFS102)を破線で示している。 Subsequently, the functional topology calculation unit 304 executes a functional topology creation process (step S3). In step S3, the functional topology calculation unit 304 creates a functional topology for each function held by the OFS 102-1 to OFS 102-9. In this example, the functional topology calculation unit 304 creates a functional topology for each function 1 to 5 (see FIG. 11). FIG. 12 is a schematic diagram showing a functional topology corresponding to each of the functions 1 to 5 in this example. In the example illustrated in FIG. 12, in each functional topology, the OFS 102 that is a node of the functional topology is indicated by a solid line. Further, OFS 102 that is not included in the functional topology (OFS 102 that does not become a node of the functional topology) is indicated by a broken line.

 機能トポロジ計算部304は、機能毎に作成した機能トポロジを機能トポロジ管理部305に記憶させる。 The functional topology calculation unit 304 stores the functional topology created for each function in the functional topology management unit 305.

 次に、機能トポロジ計算部304は、機能トポロジを優先した経路算出処理(ステップS4)を実行する。以下、本例におけるステップS4を説明する。 Next, the functional topology calculation unit 304 executes a route calculation process (step S4) giving priority to the functional topology. Hereinafter, step S4 in this example will be described.

 機能トポロジ計算部304は、送信元ホストおよび送信先ホスト間で、機能トポロジを優先したパケットの転送経路を構築する必要がある。そして、前述のように、機能トポロジ計算部304は、機能毎に、機能トポロジに基づいてパケットの転送経路を算出する。ここで、機能1~5のそれぞれの機能において、送信元ホストから送信先ホストまでの転送経路上で、機能を保有している必要があるOFS102の数等が異なる場合がある。 The functional topology calculation unit 304 needs to construct a packet transfer path giving priority to the functional topology between the transmission source host and the transmission destination host. As described above, the functional topology calculation unit 304 calculates a packet transfer path based on the functional topology for each function. Here, in each of the functions 1 to 5, the number of OFSs 102 that need to have the function may differ on the transfer path from the transmission source host to the transmission destination host.

 例えば、転送経路上を通過したパケットの数やサイズ等の統計情報を取得する機能の場合、送信元ホストから送信先ホストまでの転送経路上の全てのOFS102がこの機能を保有する必要はない。これは、転送経路上のOFS102を通過するパケットの数やサイズ等は同じであり、各OFS102で同じパケットの統計情報を取得する必要はないためである。つまり、パケットの統計情報を取得する機能の場合、送信元ホストから送信先ホストまでの転送経路上で、その機能を保有しているOFS102が1つあれば、パケットの統計情報を取得することができる。 For example, in the case of a function for acquiring statistical information such as the number and size of packets that have passed on the transfer path, it is not necessary for all OFSs 102 on the transfer path from the transmission source host to the transmission destination host to have this function. This is because the number and size of packets passing through the OFS 102 on the transfer path are the same, and it is not necessary to acquire statistical information of the same packet in each OFS 102. In other words, in the case of a function for acquiring packet statistical information, if there is one OFS 102 having the function on the transfer path from the transmission source host to the transmission destination host, the packet statistical information can be acquired. it can.

 また、IPv6機能の場合について説明する。IPv6機能を保有しているOFS102は、受け取ったパケット内において、IPv6アドレスで記録されている宛先アドレスを解釈することができる。しかし、IPv6機能を保有していないOFS102は、IPv6アドレスで記録されているパケット内の宛先アドレスを解釈できない。ここで、オープンフローでは、OFS102は、受け取ったパケット内にある宛先情報を参照し、OFS102内部で保持しているフローテーブルから該当するフローエントリを探す。フローエントリは、フロー毎にパケットに対する処理(どのポートから出力するか等)を定めた情報である。フローテーブルはフローエントリの集合であると言える。図13は、フローテーブルの内容を示す説明図である。フローテーブル内の個々のフローエントリは、パケットを識別するHeader Fields と、受け取ったパケットに対する処理を規定しているActionが記載されている。OFS102は、受け取ったパケットに対するActionがフローテーブル内で定められているか否かを判定し、定められていれば、受け取ったパケットの次の転送先を、そのActionに従って決定する。IPv6機能を保有していないOFS102は、IPv6アドレスで記録されているパケット内の宛先アドレスを解釈できないので、そのパケットに対するActionをフローテーブルの中から特定することができず、次の転送先を決定することができない。たとえ、フローエントリのHeader Fields に、IPv6アドレスではなく、IPv6機能を保有していなくても解釈可能な送信先ホストのMAC(Media Access Control)アドレスが記載されていたとしても、受け取ったパケットに送信先ホストのMACアドレスが含まれていない場合、OFS102は、IPv6アドレス自体を解釈できない。そのため、OFS102は、IPv4でのARP(Address Resolution Protocol )のようなNeighbor Discovery Protocol (以下、NDPと記す。)を使用してIPv6アドレスに対応する送信先ホストのMACアドレスを取得できない。すると、OFS102は、次の転送先をフローテーブルから特定することができない。 Also, the case of IPv6 function will be explained. The OFS 102 having the IPv6 function can interpret the destination address recorded as an IPv6 address in the received packet. However, the OFS 102 that does not have the IPv6 function cannot interpret the destination address in the packet recorded with the IPv6 address. Here, in the open flow, the OFS 102 refers to the destination information in the received packet and searches for a corresponding flow entry from the flow table held in the OFS 102. The flow entry is information that defines a process for a packet (from which port to output, etc.) for each flow. It can be said that the flow table is a set of flow entries. FIG. 13 is an explanatory diagram showing the contents of the flow table. Each flow entry in the flow table describes a header “Fields” that identifies a packet and an action that defines a process for the received packet. The OFS 102 determines whether or not an action for the received packet is defined in the flow table, and if so, determines a next transfer destination of the received packet according to the action. Since the OFS 102 that does not have the IPv6 function cannot interpret the destination address in the packet recorded with the IPv6 address, the Action for the packet cannot be specified from the flow table, and the next transfer destination is determined. Can not do it. Even if the header field of the flow entry contains not the IPv6 address but the MAC (Media Access Control) address of the destination host that can be interpreted without possessing the IPv6 function, it is sent to the received packet. If the MAC address of the destination host is not included, the OFS 102 cannot interpret the IPv6 address itself. For this reason, the OFS 102 cannot acquire the MAC address of the destination host corresponding to the IPv6 address by using Neighbor Discovery Protocol (hereinafter referred to as NDP) such as ARP (Address Resolution Protocol) in IPv4. Then, the OFS 102 cannot specify the next transfer destination from the flow table.

 このような場合、IPv6機能を保有していないOFS102は、転送先が不明であると判断したパケットをOFC101に転送することによって、OFC101に対してパケットの次の転送先を問い合わせることが考えられる。このように、転送先が不明であると判断されOFC101に転送されるパケットをファーストパケットと記す。ファーストパケットを受け取ったOFC101は、パケットの宛先情報を解析した上で、送信先ホスト103にパケットが届くようにパケットの転送経路を算出する。その後、OFC101は、算出した転送経路上のOFS102毎に、送信先ホスト103のMACアドレスを含むHeader Fields と、転送経路に沿った転送先を規定したActionとを含むフローエントリを追加する指示を出す。さらに、OFC101は、受け取ったファーストパケットに、送信先ホスト103のMACアドレスを書き込み、そのファーストパケットをOFS102に戻す。この結果、転送経路上の各OFS102は、パケット内のMACアドレスに基づいて、該当するフローエントリのActionを検索することができ、次の転送先を決定することができる。つまり、IPv6機能を保有していないOFS102は、IPv6アドレスでしか宛先を特定できないパケットを受け取ったときには、常にOFC101に対してそのパケットをファーストパケットとして転送し、OFC101は、上記のような処理を行う。ネットワーク内に、IPv6機能を保有していないOFS102が多い場合、それらのOFS102が、IPv6アドレスでしか宛先を特定できないパケットを受信する度にOFC101に問い合わせを行うため、それらのOFS102では、IPv6機能を保有しているOFS102に比べて、OFC101からの応答待ち時間が余分にかかる。そのため、データ転送遅延を引き起こしてしまう可能性がある。 In such a case, it is conceivable that the OFS 102 that does not have the IPv6 function inquires of the OFC 101 about the next transfer destination of the packet by transferring to the OFC 101 a packet for which the transfer destination is determined to be unknown. Thus, a packet that is determined to have an unknown transfer destination and is transferred to the OFC 101 is referred to as a first packet. Upon receiving the first packet, the OFC 101 analyzes the packet destination information and calculates a packet transfer path so that the packet reaches the destination host 103. After that, the OFC 101 gives an instruction to add a flow entry including Header Fields including the MAC address of the transmission destination host 103 and Action defining the transfer destination along the transfer route for each OFS 102 on the calculated transfer route. . Further, the OFC 101 writes the MAC address of the transmission destination host 103 in the received first packet, and returns the first packet to the OFS 102. As a result, each OFS 102 on the transfer path can search for an action of the corresponding flow entry based on the MAC address in the packet, and can determine the next transfer destination. In other words, when the OFS 102 that does not have the IPv6 function receives a packet whose destination can be specified only by an IPv6 address, the OFS 102 always forwards the packet to the OFC 101 as a first packet, and the OFC 101 performs the above processing. . When there are many OFSs 102 that do not have an IPv6 function in the network, each of those OFSs 102 makes an inquiry to the OFC 101 every time a packet whose destination can be specified only by an IPv6 address is received. The response waiting time from the OFC 101 is extra than that of the owned OFS 102. This may cause a data transfer delay.

 しかし、IPv6アドレスでしか宛先を特定できないパケットが、IPv6機能を保有しているOFS102を通過したとする。そのOFS102は、NDPを使用することによって、そのパケット内においてIPv6アドレスで記録されている宛先アドレスからMACアドレスを取得することができる。そして、そのOFS102がそのMACアドレスをパケットに書き込むことで、転送経路上の以降のOFS102は、IPv6機能を保有しているか否かによらず、そのMACアドレスを参照して、該当するフローエントリのActionを検索し、次の転送先を決定することができる。 However, it is assumed that a packet whose destination can be specified only by an IPv6 address passes through the OFS 102 having the IPv6 function. The OFS 102 can obtain the MAC address from the destination address recorded as an IPv6 address in the packet by using NDP. Then, when the OFS 102 writes the MAC address in the packet, the subsequent OFS 102 on the transfer path refers to the MAC address regardless of whether or not it has the IPv6 function, and You can search for Action and determine the next forwarding destination.

 つまり、送信元ホスト103から送信先ホスト103への経路上でIPv6機能を有効とするには、送信元ホスト103からパケットを受信するスイッチ(エッジスイッチ)となっているOFS102が、IPv6機能を保有していればよい。 In other words, in order to enable the IPv6 function on the route from the transmission source host 103 to the transmission destination host 103, the OFS 102 serving as a switch (edge switch) that receives a packet from the transmission source host 103 has the IPv6 function. If you do.

 統計情報を取得する機能やIPv6機能を例にして説明したように、転送経路上において、機能を保有している必要があるOFS102の数、機能を保有しているOFS102が配置されるべき転送経路上での位置は、機能毎に異なる。また、機能を常時提供する必要があるか否かについても、機能毎に異なる。機能トポロジ計算部304は、これらの機能毎の違いも考慮して、機能毎に、転送経路を算出する。 As described with reference to the function for acquiring statistical information and the IPv6 function, the number of OFSs 102 that need to have a function on the transfer route and the transfer route on which the OFS 102 that has the function should be placed The location above varies from function to function. Further, whether or not it is necessary to always provide a function is different for each function. The functional topology calculation unit 304 calculates a transfer path for each function in consideration of the difference for each function.

 また、機能トポロジは、個別の機能に着目して、着目した機能を保有するOFS102同士がノードとして接続されたダイアグラムであるため、機能トポロジの作成の際にホスト103(10参照)については考慮されていない。しかし、パケットの転送経路は、送信元ホスト103から送信先ホスト103までの経路である。そのため、転送経路を算出する際には、機能トポロジ計算部304は、前述したような個々の機能の特色(機能を保有している必要があるOFS102の数、機能を保有しているOFS102が配置されるべき転送経路上での位置、機能を常時提供する必要があるか否か)だけでなく、ホスト103の配置場所も考慮して転送経路を算出する。なお、機能を保有している必要があるOFS102の数、機能を保有しているOFS102が配置されるべき転送経路上での位置、機能を常時提供する必要があるか否かといった機能毎の情報を、以下、機能特徴情報と記す。種々の機能に関する機能特徴情報は、例えば、予めネットワーク管理者等によって機能トポロジ計算部304に与えられ、機能トポロジ計算部304が、種々の機能に関する機能特徴情報を保持する。機能トポロジ計算部304は、他の方法で、機能特徴情報を取得してもよい。ある機能の機能特徴情報は、その機能に対応する転送経路が満たすべき条件を示しているということができる。 In addition, since the functional topology is a diagram in which OFSs 102 having the focused function are connected as nodes, focusing on individual functions, the host 103 (see 10) is considered when creating the functional topology. Not. However, the packet transfer path is a path from the transmission source host 103 to the transmission destination host 103. Therefore, when calculating the transfer path, the function topology calculation unit 304 determines the feature of each function as described above (the number of OFSs 102 that need to have a function and the number of OFSs 102 that have the function. The transfer path is calculated in consideration of not only the position on the transfer path to be performed and whether or not it is necessary to always provide the function, but also the location of the host 103. Information for each function such as the number of OFSs 102 that need to have the function, the position on the transfer path where the OFS 102 that has the function should be placed, and whether or not it is necessary to always provide the function. Is hereinafter referred to as functional feature information. Functional feature information related to various functions is given to the functional topology calculation unit 304 in advance by a network administrator or the like, for example, and the functional topology calculation unit 304 holds functional feature information related to various functions. The functional topology calculation unit 304 may acquire the functional feature information by other methods. It can be said that the function characteristic information of a certain function indicates a condition that the transfer path corresponding to the function should satisfy.

 図14は、ステップS4における機能トポロジ計算部304の処理経過の例を示すフローチャートである。機能トポロジ計算部304は、まず、送信元ホストと送信先ホストの各組み合わせをそれぞれ特定する(ステップS31)。図15は、ステップS31で特定された送信元ホストと送信先ホストの各組み合わせの例を示す説明図である。なお、本例では、図10に示すネットワーク構成において、ホスト103-1、ホスト103-3、ホスト103-5が送信元ホストに該当し、ホスト103-2、ホスト103-4、ホスト103-6が送信先ホストに該当するものとして説明する。 FIG. 14 is a flowchart showing an example of processing progress of the functional topology calculation unit 304 in step S4. First, the functional topology calculation unit 304 identifies each combination of a transmission source host and a transmission destination host (step S31). FIG. 15 is an explanatory diagram illustrating an example of each combination of the transmission source host and the transmission destination host specified in step S31. In this example, in the network configuration shown in FIG. 10, the host 103-1, the host 103-3, and the host 103-5 correspond to the transmission source hosts, and the host 103-2, the host 103-4, and the host 103-6. Is assumed to correspond to the destination host.

 次に、機能トポロジ計算部304は、各OFS102が保有している機能の機能特徴情報を特定する(ステップS32)。例えば、機能トポロジ計算部304は、予め与えられた種々の機能の機能特徴情報の中から、各OFS102が保有している機能の機能特徴情報を抽出すればよい。本例では、図10に示すいずれかのOFS102に保有されている機能は、機能1~5である(図11参照)。従って、機能トポロジ計算部304は、機能1~5の機能特徴情報を抽出すればよい。図16は、機能1~機能5の機能特徴情報の例を示す。以下、ステップS32で、図16に示す機能特徴情報を特定したものとして説明する。 Next, the functional topology calculation unit 304 identifies the functional feature information of the function possessed by each OFS 102 (step S32). For example, the function topology calculation unit 304 may extract the function feature information of the functions held by each OFS 102 from the function feature information of various functions given in advance. In this example, any of the OFS 102 shown in FIG. 10 has functions 1 to 5 (see FIG. 11). Therefore, the function topology calculation unit 304 may extract the function feature information of the functions 1 to 5. FIG. 16 shows an example of function feature information of function 1 to function 5. In the following description, it is assumed that the function characteristic information shown in FIG.

 例えば、図11に示す機能1が、転送経路上を通過したパケットの数やサイズ等の統計情報を取得する機能であるとする。前述のように、統計情報を取得する機能を保有しているOFS102は、転送経路上に1つあればよい。また、統計情報を取得する機能を保有しているOFS102は、エッジスイッチやコアスイッチ等に限定する必要はない。すなわち、送信元ホストと送信先ホストの各組み合わせで算出されるいずれの転送経路も、機能1を保有するOFS102を少なくとも1つ、必ず経由していれば、ネットワーク全体として機能1(統計情報取得機能)が有効であると言える。また、図16に示すように、機能1は、常時提供されるべき機能である。そのため、送信元ホストと送信先ホストの各組み合わせで算出される、他の機能(機能2~5)に対応する転送経路も、機能1を保有するOFS102-1、OFS102-6のどちらかを経由する必要がある。 For example, it is assumed that function 1 shown in FIG. 11 is a function for acquiring statistical information such as the number and size of packets that have passed through the transfer path. As described above, only one OFS 102 having a function of acquiring statistical information is required on the transfer path. Further, the OFS 102 having the function of acquiring statistical information need not be limited to an edge switch, a core switch, or the like. That is, if any transfer path calculated for each combination of the transmission source host and the transmission destination host always passes through at least one OFS 102 having the function 1, function 1 (statistical information acquisition function) ) Is effective. Also, as shown in FIG. 16, function 1 is a function that should always be provided. Therefore, the transfer path corresponding to other functions (functions 2 to 5) calculated by each combination of the transmission source host and the transmission destination host also passes through either the OFS 102-1 or OFS 102-6 that has the function 1. There is a need to.

 また、図16に示す機能3の機能特徴情報では、配置に関して「エッジ優先」であると示している。このことは、機能3を保有するOFS102を可能な限り送信元ホスト103の近くに配置するような転送経路を構築する必要があることを意味している。例えば、送信元ホストがホスト103-5(図10参照)であるとする。ホスト103-5付近で、機能3を保有しているOFS102としては、OFS102-4とOFS102-9がある(図10、図11参照)。機能3の機能特徴情報で、配置に関して「エッジ優先」と定められているので、ホスト103-5から、OFS102-7を経由してOFS102-4を辿る転送経路を構築する必要があることになる。 In addition, the function characteristic information of function 3 shown in FIG. 16 indicates that “edge priority” is given regarding the arrangement. This means that it is necessary to construct a transfer path in which the OFS 102 having the function 3 is arranged as close to the transmission source host 103 as possible. For example, it is assumed that the transmission source host is the host 103-5 (see FIG. 10). OFSs 102-4 and OFS102-9 that have function 3 in the vicinity of the host 103-5 include OFS102-4 and OFS102-9 (see FIGS. 10 and 11). Since the function feature information of function 3 defines “edge priority” with respect to the arrangement, it is necessary to construct a transfer path from the host 103-5 to the OFS 102-4 via the OFS 102-7. .

 ステップS32の後、機能トポロジ計算部304は、ステップS31で特定した送信先ホストと送信元ホストの各組み合わせに関して、機能毎に転送経路を算出する(ステップS33)。このとき、機能トポロジ計算部304は、機能毎に、機能特徴情報で定められた条件を満たすようにしつつ、ホップ数が最小となる転送経路を、機能トポロジに基づいて算出する。また、常時提供する必要があると定められた機能がある場合、機能トポロジ計算部304は、その機能の機能特徴情報で定められた条件を満たすように、転送経路を算出する。 After step S32, the functional topology calculation unit 304 calculates a transfer path for each function with respect to each combination of the transmission destination host and the transmission source host specified in step S31 (step S33). At this time, the functional topology calculation unit 304 calculates, based on the functional topology, a transfer route that minimizes the number of hops while satisfying the condition defined by the functional feature information for each function. When there is a function that is determined to be always provided, the function topology calculation unit 304 calculates a transfer path so as to satisfy the condition defined by the function feature information of the function.

 送信先ホストと送信元ホストの各組み合わせに関して、個々の機能に着目し、着目した機能の機能特徴情報で定められた条件を満たすようにしつつ、ホップ数が最小となる転送経路を、その機能の機能トポロジに基づいて算出した結果を図17から図20に示す。 For each combination of the destination host and source host, pay attention to the individual functions, satisfy the conditions defined by the functional feature information of the focused function, and determine the transfer route with the minimum number of hops. The results calculated based on the functional topology are shown in FIGS.

 図17から図20に示す転送経路は、着目した機能の機能特徴情報で定められた条件を満たすようにして算出された転送経路である。ただし、着目した機能以外の機能特徴情報については考慮されていない。そのため、図17から図20に示す転送経路では、常時提供する必要があると定められた機能1を保有しているOFS102-1またはOFS102-6を経由しない転送経路が存在する。例えば、No.72の転送経路(図19参照)は、ホスト103-3を送信元としホスト103-6を送信先とする、機能2に対応する転送経路である。この転送経路は、機能2の機能特徴情報で定められた条件を満たしているが、機能2以外の機能特徴情報を考慮せずに定められている。その結果、OFS102-1とOFS102-6のいずれも経由していない。図19に示すNo.72の転送経路では、ホスト103-3からホスト103-6への転送経路において、機能2を必要とするパケットを転送する際に、統計情報が取得されない。そのため、トポロジ計算部304は、図19に示すNo.72の転送経路のように、機能1を保有しているOFS102-1とOFS102-6のいずれも経由していない転送経路がOFS102-1とOFS102-6のいずれか1つを経由するように、転送経路を再算出する。転送経路の再算出結果を図21から図24に示す。 The transfer paths shown in FIGS. 17 to 20 are transfer paths calculated so as to satisfy the conditions defined by the function feature information of the function of interest. However, functional feature information other than the focused function is not considered. For this reason, in the transfer paths shown in FIGS. 17 to 20, there is a transfer path that does not pass through the OFS 102-1 or OFS 102-6 having the function 1 that is determined to be always provided. For example, no. The transfer path 72 (see FIG. 19) is a transfer path corresponding to the function 2 in which the host 103-3 is a transmission source and the host 103-6 is a transmission destination. This transfer path satisfies the conditions determined by the function feature information of function 2, but is determined without considering function feature information other than function 2. As a result, neither OFS 102-1 nor OFS 102-6 passes. No. 1 shown in FIG. With the transfer path 72, statistical information is not acquired when a packet that requires function 2 is transferred on the transfer path from the host 103-3 to the host 103-6. For this reason, the topology calculation unit 304 has the No. 1 shown in FIG. As in the case of the transfer path 72, the transfer path that does not pass through any of the OFS 102-1 and OFS 102-6 having the function 1 passes through either one of the OFS 102-1 and OFS 102-6. Recalculate the transfer path. The recalculation result of the transfer path is shown in FIGS.

 上記のように、機能1を保有しているOFS102-1とOFS102-6のいずれか1つを経由するように転送経路を再算出した場合、ホップ数が増加する場合がある。すると、着目した機能の機能特徴情報で定められた条件および、常時提供する必要があると定められた機能の機能特徴情報で定められた条件を満たす転送経路が増える場合もある。再算出されたNo.75の転送経路(図23参照)は、再算出前のNo.75の転送経路(図19参照)においてOFS102-6も経由するようにしたものである。この結果、ホップ数が3から4に増加した。ホップ数が4である場合、着目している機能4と、常時提供すべき機能1の機能特徴情報で定められた条件を満足する転送経路が1つ増える。図23では、この経路をNo.75-2として示している。 As described above, when the transfer route is recalculated so as to pass through either one of the OFS 102-1 and OFS 102-6 having the function 1, the number of hops may increase. Then, there may be an increase in the number of transfer paths that satisfy the condition defined by the function feature information of the function of interest and the condition defined by the function feature information of the function determined to be always provided. The recalculated No. 75 transfer path (see FIG. 23) is No. before recalculation. In the 75 transfer paths (see FIG. 19), the OFS 102-6 is also routed. As a result, the number of hops increased from 3 to 4. When the number of hops is 4, the number of transfer paths that satisfy the condition defined by the function 4 of interest and the function characteristic information of the function 1 that should be always provided is increased by one. In FIG. It is shown as 75-2.

 また、No.76、No.77、No.78の転送経路(図19参照)は、ホスト103-3を送信元としホスト103-6を送信先とする、機能5に対応する転送経路である。No.76の経路は、既にOFS-1を経由している。No.77、No.78の転送経路は、OFS102-1とOFS102-6のいずれも経由していないので、OFS102-1とOFS102-6のいずれか1つを経由するように再算出すると、No.76よりもホップ数が増えることになる。そのため、再算出の結果、ホスト103-3を送信元としホスト103-6を送信先とする、機能5に対応する転送経路は、No.76のみとなる(図23参照)。図21から図24において、このように、再算出の結果、除外される転送経路は、取り消し線とともに示している。 Also, No. 76, no. 77, no. The transfer path 78 (see FIG. 19) is a transfer path corresponding to the function 5 in which the host 103-3 is a transmission source and the host 103-6 is a transmission destination. No. The route 76 has already passed through OFS-1. No. 77, no. 78, since neither the OFS 102-1 nor the OFS 102-6 passes, re-calculation so that it passes through either one of the OFS 102-1 and OFS 102-6 is No. The number of hops will increase from 76. Therefore, as a result of recalculation, the transfer path corresponding to the function 5 in which the host 103-3 is the transmission source and the host 103-6 is the transmission destination is No. 76 (see FIG. 23). In FIG. 21 to FIG. 24, the transfer paths that are excluded as a result of recalculation are shown together with a strikethrough.

 機能トポロジ計算部304は、あるホストを送信元としあるホストを送信先とする、ある機能に対応する転送経路が複数得られた場合、その転送経路から任意の一つの経路を選択することによってその機能に対応する転送経路を1つに絞り込んでもよい。 When a plurality of transfer routes corresponding to a certain function are obtained with a certain host as the transmission source and the certain host as the transmission destination, the functional topology calculation unit 304 selects the arbitrary one route from the transfer routes. The transfer path corresponding to the function may be narrowed down to one.

 上記の処理の結果、送信元ホストと送信先ホストと機能の組み合わせ毎に、パケットの転送経路が定まる。機能トポロジ計算部304は、定めた個々の転送経路毎に、その転送経路で転送すべきパケットの条件をフローエントリのHeader Fieldsとして定めるとともに、その転送経路情報のOFS102毎に、経路上の次のノードに対応するポートからパケットを出力する旨をActionとして定める。 As a result of the above processing, the packet transfer path is determined for each combination of the source host, destination host, and function. The functional topology calculation unit 304 determines, for each determined transfer path, the condition of a packet to be transferred on the transfer path as Header Fields of the flow entry, and for each OFS 102 of the transfer path information, It is determined as Action that a packet is output from the port corresponding to the node.

 ステップS4の後、更新指示部306は、ステップS4で定められた転送経路に対して定められたHeader Fieldsと、その転送経路上のOFS102毎に定められたActionとを含むフローエントリをフローテーブルに追加する旨の指示を、転送経路上の各OFS102に対して指示する(ステップS5)。更新指示部306は、この動作を、送信元ホスト、送信先ホスト、および機能の組み合わせ毎に算出された転送経路毎に行う。指示を受けたOFS102は、指示に従ってフローテーブルにフローエントリを追加する。この結果、送信元ホストと送信先ホストと機能の組み合わせ毎に定まる経路が、図10に示すネットワーク上に構築される。 After step S4, the update instruction unit 306 adds a flow entry including the Header Fields defined for the transfer path determined in step S4 and the Action defined for each OFS 102 on the transfer path to the flow table. An instruction to add is given to each OFS 102 on the transfer path (step S5). The update instruction unit 306 performs this operation for each transfer path calculated for each combination of the transmission source host, the transmission destination host, and the function. Upon receiving the instruction, the OFS 102 adds a flow entry to the flow table according to the instruction. As a result, a route determined for each combination of the transmission source host, the transmission destination host, and the function is constructed on the network shown in FIG.

 上記の説明では、OFC101が事前に、送信元ホストおよび送信先ホストの組み合わせ毎に、機能毎の転送経路を算出し、それぞれの転送経路上のノードに対して、転送経路に沿ってパケットを転送するようにフローテーブルの更新を指示する場合を例にした。この場合、送信元ホストがパケットを送信する前に、既に、送信元ホストと送信先ホストと機能の組み合わせに応じた転送経路毎に、転送経路上のOFS102には、転送経路に応じたフローエントリが設定されている。従って、OFC101がファーストパケットを受信する回数が少なくて済む。 In the above description, the OFC 101 calculates the transfer path for each function in advance for each combination of the transmission source host and the transmission destination host, and forwards the packet along the transfer path to the node on each transfer path. As an example, the flow table is instructed to be updated. In this case, before the transmission source host transmits the packet, the OFS 102 on the transfer path already has a flow entry corresponding to the transfer path for each transfer path according to the combination of the transmission source host, the destination host, and the function. Is set. Therefore, the number of times the OFC 101 receives the first packet can be reduced.

 また、事前に、送信元ホストと送信先ホストと機能の組み合わせに応じた転送経路を全て算出するのではなく、OFC101がファーストパケットを受信したときに、そのファーストパケットを転送するための転送経路のみを算出してもよい。以下、OFC101がファーストパケットを受信したときに、そのファーストパケットを転送するための転送経路のみを算出する場合の動作について説明する。 Also, instead of calculating all the transfer paths according to the combination of the source host, the destination host and the function in advance, when the OFC 101 receives the first packet, only the transfer path for transferring the first packet is used. May be calculated. Hereinafter, when the OFC 101 receives a first packet, an operation when only the transfer path for transferring the first packet is calculated will be described.

 この場合であっても、OFC101は、ステップS1~S3の処理を事前に行う。ステップS1~S3の動作は、既に説明したステップS1~S3動作と同様である。そして、OFC101は、ファーストパケットを受信したときに、ステップS4(より具体的には、図14に示すステップS31~S33)を行う。 Even in this case, the OFC 101 performs steps S1 to S3 in advance. The operations in steps S1 to S3 are the same as the operations in steps S1 to S3 already described. When the OFC 101 receives the first packet, the OFC 101 performs step S4 (more specifically, steps S31 to S33 shown in FIG. 14).

 ただし、ステップS31において、機能トポロジ計算部304は、ファーストパケットが示す送信元ホストと送信先ホストの組み合わせのみを定めればよい。すなわち、送信元ホストと送信先ホストの組み合わせが1つだけ定められる。 However, in step S31, the functional topology calculation unit 304 need only determine the combination of the transmission source host and the transmission destination host indicated by the first packet. That is, only one combination of the transmission source host and the transmission destination host is determined.

 ステップS32の動作は、既に説明したステップS32の動作と同様である。 The operation in step S32 is the same as the operation in step S32 already described.

 次に、ステップS33では、機能トポロジ計算部304は、ファーストパケットを解析し、そのパケットを解釈できる機能を特定する。そして、機能トポロジ計算部304は、ステップS31で定められた送信元ホストと送信先ホストの1つの組み合わせのみに着目し、その送信元ホストから送信先ホストまでの転送経路であって、その機能に対応する転送経路を算出する。このとき、機能トポロジ計算部304は、ファーストパケットに基づいて特定した機能の機能特徴情報で定められた条件を満たすようにしつつ、ホップ数が最小となる転送経路を算出する。さらに、常時提供されるべき機能があれば、その機能の機能特徴情報で定められた条件を満たすように、転送経路を再算出する。 Next, in step S33, the functional topology calculation unit 304 analyzes the first packet and specifies a function that can interpret the packet. The functional topology calculation unit 304 pays attention to only one combination of the transmission source host and the transmission destination host determined in step S31, and is a transfer path from the transmission source host to the transmission destination host. Calculate the corresponding transfer path. At this time, the functional topology calculation unit 304 calculates a transfer route that minimizes the number of hops while satisfying the condition defined by the functional feature information of the function specified based on the first packet. Furthermore, if there is a function that should always be provided, the transfer path is recalculated so as to satisfy the conditions defined by the function feature information of the function.

 例えば、ファーストパケットの送信元がホスト103-1であり送信先がホスト103-4であるとする。また、ファーストパケットを解釈できる機能として特定した機能が、機能2であるとする。この場合、機能トポロジ計算部304は、送信元ホスト103-1、送信先ホスト103-4、および機能2に対応するNo.8(図17参照)の転送経路を算出すればよい。なお、No.8の転送経路は、常時提供されるべき機能1を保有するOFS102-6を経由している。従って、本例では、No.8の転送経路を再算出する必要はない。 For example, assume that the transmission source of the first packet is the host 103-1, and the transmission destination is the host 103-4. Further, it is assumed that the function specified as the function capable of interpreting the first packet is the function 2. In this case, the function topology calculation unit 304 determines the No. corresponding to the transmission source host 103-1, the transmission destination host 103-4, and the function 2. 8 (see FIG. 17) may be calculated. In addition, No. The transfer path 8 is routed through the OFS 102-6 having the function 1 to be always provided. Therefore, in this example, no. There is no need to recalculate the 8 transfer paths.

 機能トポロジ計算部304は、算出した転送経路で転送すべきパケットの条件をフローエントリのHeader Fieldsとして定めるとともに、その転送経路情報のOFS102毎に、経路上の次のノードに対応するポートからパケットを出力する旨をActionとして定める。 The functional topology calculation unit 304 determines the condition of the packet to be transferred on the calculated transfer route as the header Fields of the flow entry, and for each OFS 102 of the transfer route information, sends a packet from the port corresponding to the next node on the route. Define the action to be output.

 ステップS4の後、更新指示部306は、ステップS4で定められた転送経路に対して定められたHeader Fieldsと、その転送経路上のOFS102毎に定められたActionとを含むフローエントリをフローテーブルに追加する旨の指示を、転送経路上の各OFS102に対して指示する(ステップS5)。指示を受けたOFS102は、指示に従ってフローテーブルにフローエントリを追加する。この結果、ファーストパケットと同一のHeader Fieldsを有するパケットの転送経路が、図10に示すネットワーク上に構成される。また、更新指示部306は、ファーストパケットをOFC101に送信したOFS102にファーストパケットを返す。そのOFS102は、追加されたフローエントリに従って、そのパケットを転送する。以後、そのパケットは、構築された転送経路に沿って送信先ホストまで転送される。ファーストパケットと同一のHeader Fieldsを有するパケットに関しても同様である。 After step S4, the update instruction unit 306 adds a flow entry including the Header Fields defined for the transfer path determined in step S4 and the Action defined for each OFS 102 on the transfer path to the flow table. An instruction to add is given to each OFS 102 on the transfer path (step S5). Upon receiving the instruction, the OFS 102 adds a flow entry to the flow table according to the instruction. As a result, a packet transfer path having the same header field as the first packet is configured on the network shown in FIG. In addition, the update instruction unit 306 returns the first packet to the OFS 102 that has transmitted the first packet to the OFC 101. The OFS 102 transfers the packet according to the added flow entry. Thereafter, the packet is transferred to the destination host along the established transfer path. The same applies to a packet having the same header field as the first packet.

 以上に説明したように、ファーストパケットの受信を契機にOFC101が転送経路を算出する場合、ファーストパケットから定まる送信元ホスト、送信先ホスト、機能の組み合わせに関して転送経路を算出すればよい。従って、転送経路算出時の処理負荷が少なくて済む。 As described above, when the OFC 101 calculates the transfer path in response to the reception of the first packet, the transfer path may be calculated for the combination of the source host, the destination host, and the function determined from the first packet. Therefore, the processing load when calculating the transfer path can be reduced.

 また、新たにOFS102が追加された場合、OFC101は、ステップS1~S5を行えばよい。この場合、機能トポロジ計算部304は、OFS102の追加に伴い、機能トポロジを作成し直すことになる。この結果、その新たに追加されたOFS102が保有している機能もネットワーク全体として提供することができるようにパケットの転送経路を算出することができる。 Further, when the OFS 102 is newly added, the OFC 101 may perform steps S1 to S5. In this case, the functional topology calculation unit 304 recreates the functional topology with the addition of the OFS 102. As a result, it is possible to calculate the packet transfer path so that the function possessed by the newly added OFS 102 can be provided as the entire network.

 本発明によれば、機能トポロジ計算部304は、着目している機能に関する転送経路を算出する際、その機能を保有しているOFS102だけでなく、その機能を保有していないOFS102も経由することも許可して転送経路を算出する。例えば、機能を保有しているOFS102の間を取り持つノードとして、機能を保有していないOFS102を用いる。そのため、機能を有するOFSのみを経由するような迂回した転送経路ではなく、適切な転送経路を算出することができる。 According to the present invention, when the function topology calculation unit 304 calculates a transfer path related to a function of interest, the function topology calculation unit 304 passes not only the OFS 102 that has the function but also the OFS 102 that does not have the function. Is also permitted to calculate the transfer route. For example, the OFS 102 that does not have a function is used as a node that handles between the OFSs 102 that have a function. Therefore, it is possible to calculate an appropriate transfer path, not a detoured transfer path that passes only through a functioning OFS.

 また、本発明によれば、機能トポロジに基づいて、機能に応じた転送経路を算出する。そのため、機能を保有しているOFS102が、機能に応じた転送経路に含まれる。また、常時提供すべき機能を保有するOFS102も転送経路に含まれるように、転送経路が算出される。従って、ネットワーク全体として、必要な機能を提供することができる。一般的な技術と比較すると、一般的な技術では、パケットの転送経路は、パケットの送信元と送信先の情報に基づいて算出されるが、機能トポロジを用いるという概念はない。従って、例えば、統計情報を取得できる転送経路が算出される場合と、統計情報を取得できない転送経路が算出される場合とがあった。そのようなことを避けるために、他のOFSの機能に合わせて、OpenFlow protocol のバージョンを下げたり、または、ベンダ独自機能の一部をオフにしたりしていた。本発明にでは、そのようなことをする必要はなく、また、ネットワーク全体として、必要な機能を提供することができる。 Further, according to the present invention, a transfer route corresponding to a function is calculated based on the function topology. For this reason, the OFS 102 having the function is included in the transfer path corresponding to the function. In addition, the transfer path is calculated so that the OFS 102 having the function to be always provided is included in the transfer path. Therefore, necessary functions can be provided as the entire network. Compared with the general technique, in the general technique, the packet transfer path is calculated based on the information on the transmission source and transmission destination of the packet, but there is no concept of using a functional topology. Therefore, for example, there are cases where a transfer route that can acquire statistical information is calculated and cases where a transfer route that cannot acquire statistical information is calculated. In order to avoid such a situation, the version of OpenFlow protocol was lowered in accordance with the function of other OFS, or a part of the vendor's original function was turned off. In the present invention, it is not necessary to do such a thing, and necessary functions can be provided as the entire network.

 このように、本発明によれば、ネットワークに含まれるOFS102同士で機能に差分がある場合であっても、機能を生かしつつ、適切なパケットの転送経路を定めることができる Thus, according to the present invention, even if there is a difference in function between the OFSs 102 included in the network, an appropriate packet transfer path can be determined while making use of the function.

 また、本発明によれば、ネットワーク内に存在する各OFS102が保有している各機能に対する機能トポロジを機能トポロジ計算部304が計算した上で、機能トポロジに基づいて機能に対応したパケットの転送経路が算出される。その結果、例えば、OFS102同士をつなぐ物理的な結線が、機能に対応する転送経路よりも多く採用されていること等をネットワーク管理者が把握可能である。そのため、ネットワーク負荷の発生を予めネットワーク管理者が予測することができ、また、その対策も事前に検討することができる。 Further, according to the present invention, the function topology calculation unit 304 calculates the function topology for each function possessed by each OFS 102 existing in the network, and then the packet transfer path corresponding to the function based on the function topology. Is calculated. As a result, for example, the network administrator can grasp that the physical connection connecting the OFSs 102 is employed more than the transfer path corresponding to the function. Therefore, the network administrator can predict the occurrence of the network load in advance, and the countermeasures can be examined in advance.

 さらに、ネットワーク負荷の回避に関して、全ての機能を兼ね備えたOFS102ではなく、ある特定の機能のみを保有しているOFS102をネットワーク内に追加すれば、ネットワーク負荷を回避できる可能性があることも本発明の効果として挙げられる。つまり、ある特定の機能のみを保有しているOFS102をネットワークに追加することで、その機能の機能トポロジを変化させることができる、そのため、機能トポロジに基づいて算出されるパケットの転送経路も変更することができる。その結果、ネットワークの負荷を回避することができる。 Furthermore, regarding the avoidance of the network load, it is also possible that the network load may be avoided if the OFS 102 having only a specific function is added to the network instead of the OFS 102 having all functions. It is mentioned as an effect. In other words, by adding the OFS 102 having only a specific function to the network, the function topology of the function can be changed. Therefore, the packet transfer route calculated based on the function topology is also changed. be able to. As a result, the load on the network can be avoided.

実施形態2.
 図25は、本発明の第2の実施形態におけるOFC101の構成例を示すブロック図である。第1の実施形態におけるOFC101と同一の要素に関しては、図2と同一の符号を付し、説明を省略する。また、第2の実施形態におけるOFS102およびホスト103(図25において図示略)は、第1の実施形態におけるOFS102およびホスト103(図1、図10参照)と同様であり、説明を省略する。
Embodiment 2. FIG.
FIG. 25 is a block diagram showing a configuration example of the OFC 101 in the second embodiment of the present invention. The same elements as those of the OFC 101 in the first embodiment are denoted by the same reference numerals as those in FIG. Further, the OFS 102 and the host 103 (not shown in FIG. 25) in the second embodiment are the same as the OFS 102 and the host 103 (see FIGS. 1 and 10) in the first embodiment, and the description thereof is omitted.

 第2の実施形態におけるOFC101は、第1の実施形態におけるOFC101の構成要素に加え、さらに、機能トポロジ表示制御部309を備える。機能トポロジ表示制御部309は、機能トポロジ管理部305に記憶された各機能の機能トポロジを表示装置(図示略)に表示させる。 The OFC 101 in the second embodiment further includes a function topology display control unit 309 in addition to the components of the OFC 101 in the first embodiment. The functional topology display control unit 309 displays the functional topology of each function stored in the functional topology management unit 305 on a display device (not shown).

 機能トポロジを表示することによって、ネットワーク管理者は、各機能トポロジを視覚的に確認することができる。そのため、ネットワーク管理者は、どのような機能を保有しているOFS102をどこに追加すれば機能トポロジが変化し、ネットワークとしてより適切な転送経路を構築できるかを、表示された機能トポロジに基づいて把握することができる。特に、ネットワーク内に存在するOFS102が多くなるほど、OFS102が保有している機能を示す情報(図7に例示するようなOFS保有機能管理部302に記憶される情報)だけでは、ネットワークの負荷の予測がより困難になる。このような場合であっても、機能トポロジ表示制御部309が機能トポロジを表示装置に表示させることで、ネットワーク管理者に機能トポロジを視覚的に提示することができる。その結果、ネットワーク管理者のネットワーク管理がより簡易になる。 By displaying the functional topology, the network administrator can visually confirm each functional topology. Therefore, based on the displayed functional topology, the network administrator can understand what function the OFS 102 possessing is added to where the functional topology changes and a more appropriate transfer path can be constructed for the network. can do. In particular, as the number of OFSs 102 existing in the network increases, the network load is predicted only by information indicating the functions possessed by the OFS 102 (information stored in the OFS possessed function management unit 302 as illustrated in FIG. 7). Becomes more difficult. Even in such a case, the functional topology display control unit 309 displays the functional topology on the display device, so that the functional topology can be visually presented to the network administrator. As a result, network management for the network administrator becomes easier.

 機能トポロジ表示制御部309は、例えば、経路制御プログラムに従って動作するコンピュータのCPUによって実現される。また、機能トポロジ表示制御部309は、他の構成要素とは別のハードウェアで実現されていてもよい。 The functional topology display control unit 309 is realized by a CPU of a computer that operates according to a path control program, for example. Further, the functional topology display control unit 309 may be realized by hardware different from other components.

 次に、本発明の最小構成について説明する。図26は、本発明の最小構成の例を示すブロック図である。本発明の経路制御装置は、転送経路算出手段92と、設定手段93とを備える。 Next, the minimum configuration of the present invention will be described. FIG. 26 is a block diagram showing an example of the minimum configuration of the present invention. The path control device of the present invention includes a transfer path calculation unit 92 and a setting unit 93.

 転送経路算出手段92(例えば、ステップS4を実行する機能トポロジ計算部304)は、パケットに対する機能を保有するパケット転送装置を含む転送経路を算出する。 The transfer route calculation unit 92 (for example, the functional topology calculation unit 304 that executes Step S4) calculates a transfer route including a packet transfer device having a function for a packet.

 設定手段93(例えば、更新指示部306)は、転送経路算出手段92によって算出された転送経路上の各パケット転送装置に対して、その転送経路に沿ってパケットを転送させる設定を行う。 The setting unit 93 (for example, the update instruction unit 306) performs setting so that each packet transfer device on the transfer path calculated by the transfer path calculation unit 92 transfers the packet along the transfer path.

 そのような構成によって、ネットワークに含まれるパケット転送装置同士で機能に差分がある場合であっても、機能を生かしつつ、適切なパケットの転送経路を定めることができる。 With such a configuration, even when there is a difference in function between packet transfer apparatuses included in the network, an appropriate packet transfer route can be determined while making use of the function.

 パケット転送装置(例えば、OFS102)の機能毎に個々のパケット転送装置が機能を保有しているか否かを示す情報に基づいて、同一の機能を保有するパケット転送装置同士が接続されたトポロジである機能トポロジを機能毎に作成する機能トポロジ作成手段(例えば、ステップS3を実行する機能トポロジ計算部304)を備え、転送経路算出手段92が、機能トポロジに基づいて、パケット転送装置の機能に対応するパケットの転送経路を算出し、前記転送経路を算出する際に、機能トポロジで示されているパケット転送装置だけでなく、前記機能トポロジに対応する機能を保有していないパケット転送装置も経由することを許可して、転送経路を算出する構成であってもよい。 A topology in which packet transfer apparatuses having the same function are connected to each other based on information indicating whether or not each packet transfer apparatus has a function for each function of the packet transfer apparatus (for example, OFS102). A functional topology creating unit (for example, a functional topology calculating unit 304 that executes step S3) for creating a functional topology for each function is provided, and the transfer path calculating unit 92 corresponds to the function of the packet transfer apparatus based on the functional topology. When calculating the transfer path of a packet, when calculating the transfer path, not only the packet transfer apparatus indicated in the functional topology but also the packet transfer apparatus that does not have a function corresponding to the functional topology May be configured to calculate the transfer path.

 転送経路算出手段92が、パケットの送信元および送信先の組み合わせを全て特定し、パケットの送信元および送信先の各組み合わせに対して、機能毎に、機能トポロジに基づいて転送経路を算出し、設定手段93が、パケットの送信元、送信先、および機能の各組み合わせに対して算出された転送経路毎に、転送経路上の各パケット転送装置に対して、転送経路に沿ってパケットを転送させる設定を行う構成であってもよい。 The transfer path calculation unit 92 specifies all combinations of the packet transmission source and the transmission destination, calculates the transfer path based on the functional topology for each function for each combination of the packet transmission source and the transmission destination, The setting means 93 causes each packet transfer device on the transfer path to transfer the packet along the transfer path for each transfer path calculated for each combination of the packet source, destination, and function. A configuration for performing the setting may be used.

 転送経路算出手段92が、パケット転送装置が転送先を特定できないパケット(例えば、ファーストパケット)をそのパケット転送装置から受信したときに、そのパケットの送信元および送信先の組み合わせを特定し、そのパケットを解釈できる機能を特定し、そのパケットの送信元および送信先の組み合わせに対して、その機能の機能トポロジに基づいて転送経路を算出し、設定手段93が、転送経路の各パケット転送装置に対して、転送経路に沿ってパケットを転送させる設定を行う構成であってもよい。 When the transfer path calculation unit 92 receives a packet (for example, a first packet) from which the packet transfer apparatus cannot specify the transfer destination from the packet transfer apparatus, the transfer path calculation unit 92 specifies the combination of the transmission source and the transmission destination of the packet, For the combination of the source and destination of the packet, the transfer path is calculated based on the function topology of the function, and the setting means 93 for each packet transfer device on the transfer path Thus, the configuration may be such that the packet is transferred along the transfer path.

 転送経路算出手段92が、パケット転送装置の機能に対応する転送経路が満たすべき条件として機能毎に定められた条件(例えば、機能特徴情報が示す条件)を満たすように、機能に対応する転送経路を算出する構成であってもよい。 The transfer path corresponding to the function so that the transfer path calculating unit 92 satisfies the condition (for example, the condition indicated by the function characteristic information) determined for each function as the condition to be satisfied by the transfer path corresponding to the function of the packet transfer apparatus. May be configured to calculate.

 転送経路算出手段92が、機能に対応する転送経路を算出する際、その機能とは別に常時提供されるべき機能が存在する場合には、その機能に定められた条件とともに、常時提供されるべき機能に定められた条件も満たすように、その機能に対応する転送経路を算出する構成であってもよい。 When the transfer path calculation unit 92 calculates a transfer path corresponding to a function, if there is a function that should be always provided separately from the function, the transfer path calculation unit 92 should always be provided along with the conditions defined for the function. The configuration may be such that the transfer path corresponding to the function is calculated so as to satisfy the condition defined for the function.

 機能トポロジ作成手段によって作成された機能トポロジを表示装置に表示させる表示制御手段(例えば、機能トポロジ表示制御部309)を備える構成であってもよい。 It may be configured to include display control means (for example, the functional topology display control unit 309) that causes the display device to display the functional topology created by the functional topology creation means.

 機能トポロジ作成手段が、新たにパケット転送装置が追加されたときに、機能トポロジを作成し直す構成であってもよい。 The functional topology creating means may be configured to recreate the functional topology when a new packet transfer device is added.

 以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 The present invention has been described above with reference to the embodiments, but the present invention is not limited to the above-described embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

 この出願は、2014年3月7日に出願された日本特許出願2014-045294を基礎とする優先権を主張し、その開示の全てをここに取り込む。 This application claims priority based on Japanese Patent Application No. 2014-045294 filed on March 7, 2014, the entire disclosure of which is incorporated herein.

産業上の利用の可能性Industrial applicability

 本発明は、パケット転送装置を経由するパケットの転送経路を制御する経路制御装置に好適に適用される。 The present invention is preferably applied to a route control device that controls a transfer route of a packet passing through the packet transfer device.

 101 OFC
 102 OFS
 103 ホスト
 301 OFS管理部
 302 OFS保有機能管理部
 304 機能トポロジ計算部
 305 機能トポロジ管理部
 306 更新指示部
 307 接続処理部
 309 機能トポロジ表示制御部
101 OFC
102 OFS
DESCRIPTION OF SYMBOLS 103 Host 301 OFS management part 302 OFS possession function management part 304 Function topology calculation part 305 Function topology management part 306 Update instruction part 307 Connection processing part 309 Function topology display control part

Claims (10)

 パケット転送装置を経由するパケットの転送経路を制御する経路制御装置であって、
 パケットに対する機能を保有するパケット転送装置を含む転送経路を算出する転送経路算出手段と、
 前記転送経路算出手段によって算出された転送経路上の各パケット転送装置に対して、前記転送経路に沿ってパケットを転送させる設定を行う設定手段とを備える
 ことを特徴とする経路制御装置。
A route control device for controlling a transfer route of a packet passing through a packet transfer device,
A transfer route calculating means for calculating a transfer route including a packet transfer device having a function for a packet;
A path control device comprising: a setting unit configured to perform a setting to transfer a packet along the transfer route to each packet transfer device on the transfer route calculated by the transfer route calculating unit.
 パケット転送装置の機能毎に個々のパケット転送装置が機能を保有しているか否かを示す情報に基づいて、同一の機能を保有するパケット転送装置同士が接続されたトポロジである機能トポロジを機能毎に作成する機能トポロジ作成手段を備え、
 転送経路算出手段は、
 機能トポロジに基づいて、パケット転送装置の機能に対応するパケットの転送経路を算出し、前記転送経路を算出する際に、機能トポロジで示されているパケット転送装置だけでなく、前記機能トポロジに対応する機能を保有していないパケット転送装置も経由することを許可して、転送経路を算出する
 請求項1に記載の経路制御装置。
For each function of the packet transfer device, a function topology that is a topology in which packet transfer devices having the same function are connected to each other based on information indicating whether or not each packet transfer device has a function. With functional topology creation means to create
Transfer route calculation means
Based on the functional topology, the packet transfer path corresponding to the function of the packet transfer apparatus is calculated, and when calculating the transfer path, not only the packet transfer apparatus indicated in the function topology but also the function topology is supported. The route control device according to claim 1, wherein a packet transfer device that does not have a function to perform is permitted to pass through and a transfer route is calculated.
 転送経路算出手段は、
 パケットの送信元および送信先の組み合わせを全て特定し、
 パケットの送信元および送信先の各組み合わせに対して、機能毎に、機能トポロジに基づいて転送経路を算出し、
 設定手段は、
 パケットの送信元、送信先、および機能の各組み合わせに対して算出された転送経路毎に、転送経路上の各パケット転送装置に対して、前記転送経路に沿ってパケットを転送させる設定を行う
 請求項2に記載の経路制御装置。
Transfer route calculation means
Identify all packet source and destination combinations,
For each combination of packet source and destination, calculate the forwarding path based on the functional topology for each function,
Setting means
For each transfer path calculated for each combination of a packet transmission source, a transmission destination, and a function, a setting is made for each packet transfer apparatus on the transfer path to transfer the packet along the transfer path. Item 3. The path control device according to Item 2.
 転送経路算出手段は、
 パケット転送装置が転送先を特定できないパケットを前記パケット転送装置から受信したときに、前記パケットの送信元および送信先の組み合わせを特定し、前記パケットを解釈できる機能を特定し、
 前記パケットの送信元および送信先の組み合わせに対して、前記機能の機能トポロジに基づいて転送経路を算出し、
 設定手段は、
 前記転送経路の各パケット転送装置に対して、前記転送経路に沿ってパケットを転送させる設定を行う
 請求項2に記載の経路制御装置。
Transfer route calculation means
When a packet transfer apparatus receives a packet from which the transfer destination cannot be specified from the packet transfer apparatus, it specifies a combination of a transmission source and a transmission destination of the packet, specifies a function capable of interpreting the packet,
For the combination of the source and destination of the packet, calculate the transfer path based on the functional topology of the function,
Setting means
The path control device according to claim 2, wherein each packet transfer device on the transfer route is set to transfer a packet along the transfer route.
 転送経路算出手段は、
 パケット転送装置の機能に対応する転送経路が満たすべき条件として機能毎に定められた条件を満たすように、機能に対応する転送経路を算出する
 請求項1から請求項4のうちのいずれか1項に記載の経路制御装置。
Transfer route calculation means
5. The transfer path corresponding to the function is calculated so that the transfer path corresponding to the function of the packet transfer apparatus satisfies a condition defined for each function as a condition to be satisfied. 5. The routing control device according to 1.
 転送経路算出手段は、
 機能に対応する転送経路を算出する際、前記機能とは別に常時提供されるべき機能が存在する場合には、前記機能に定められた条件とともに、前記常時提供されるべき機能に定められた条件も満たすように、前記機能に対応する転送経路を算出する
 請求項5に記載の経路制御装置。
Transfer route calculation means
When calculating a transfer route corresponding to a function, if there is a function that should be always provided separately from the function, a condition defined for the function to be always provided along with the condition defined for the function The path control device according to claim 5, wherein a transfer path corresponding to the function is calculated so as to satisfy.
 機能トポロジ作成手段によって作成された機能トポロジを表示装置に表示させる表示制御手段を備える
 請求項2から請求項6のうちのいずれか1項に記載の経路制御装置。
The path control device according to any one of claims 2 to 6, further comprising display control means for causing the display device to display the functional topology created by the functional topology creation means.
 機能トポロジ作成手段は、新たにパケット転送装置が追加されたときに、機能トポロジを作成し直す
 請求項2から請求項7のうちのいずれか1項に記載の経路制御装置。
The route control device according to any one of claims 2 to 7, wherein the functional topology creating means recreates the functional topology when a new packet transfer device is added.
 パケット転送装置を経由するパケットの転送経路を制御する経路制御方法であって、
 パケットに対する機能を保有するパケット転送装置を含む転送経路を算出し、
 前記転送経路上の各パケット転送装置に対して、前記転送経路に沿ってパケットを転送させる設定を行う
 ことを特徴とする経路制御方法。
A route control method for controlling a transfer route of a packet passing through a packet transfer device,
Calculate the transfer path including the packet transfer device that has the function for the packet,
A route control method comprising: setting each packet transfer device on the transfer route to transfer a packet along the transfer route.
 パケット転送装置を経由するパケットの転送経路を制御するコンピュータに搭載される経路制御プログラムであって、
 前記コンピュータに、
 パケットに対する機能を保有するパケット転送装置を含む転送経路を算出する転送経路算出処理、および、
 前記転送経路算出処理で算出された転送経路上の各パケット転送装置に対して、前記転送経路に沿ってパケットを転送させる設定を行う設定処理
 を実行させるための経路制御プログラム。
A route control program installed in a computer for controlling a transfer route of a packet passing through a packet transfer device,
In the computer,
A transfer route calculation process for calculating a transfer route including a packet transfer device having a function for a packet, and
A path control program for causing a packet transfer device on a transfer path calculated in the transfer path calculation process to execute a setting process for setting a packet to be transferred along the transfer path.
PCT/JP2015/000467 2014-03-07 2015-02-03 Route control apparatus, route control method, and route control program Ceased WO2015133059A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-045294 2014-03-07
JP2014045294 2014-03-07

Publications (1)

Publication Number Publication Date
WO2015133059A1 true WO2015133059A1 (en) 2015-09-11

Family

ID=54054880

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/000467 Ceased WO2015133059A1 (en) 2014-03-07 2015-02-03 Route control apparatus, route control method, and route control program

Country Status (1)

Country Link
WO (1) WO2015133059A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011049135A1 (en) * 2009-10-23 2011-04-28 日本電気株式会社 Network system, control method thereof, and controller

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011049135A1 (en) * 2009-10-23 2011-04-28 日本電気株式会社 Network system, control method thereof, and controller

Similar Documents

Publication Publication Date Title
CN102792645B (en) The method of information system, control appliance and managing virtual network
CA2931515C (en) Multi-domain source routed forwarding based on collaborating network controllers
JP5994846B2 (en) COMMUNICATION SYSTEM, CONTROL DEVICE, NODE, NODE CONTROL METHOD AND PROGRAM
JP5742834B2 (en) COMMUNICATION SYSTEM, ROUTE CONTROL DEVICE, PACKET TRANSFER DEVICE, AND ROUTE CONTROL METHOD
CN108432192B (en) Traffic transfer method and system and computer readable storage medium
EP2523402A1 (en) Communication system, control apparatus, processing rule setting method, packet transmitting method and program
US10069648B2 (en) Communication system, control apparatus, communication control method and program
JPWO2012133060A1 (en) Network system and VLAN tag information acquisition method
WO2011087085A1 (en) Calculator, network connection switching method, and program
CN105264844B (en) Method for routing, device and the equipment of software defined network
US20150256455A1 (en) Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
WO2011118586A1 (en) Communication system, control device, forwarding node, method for updating processing rules, and program
JP6191703B2 (en) Communication control system, communication control method, and communication control program
JP5747997B2 (en) Control device, communication system, virtual network management method and program
JP2017228935A (en) Device, method and program for packet transfer control
US20180331998A1 (en) Control apparatus, communication system, communication method, and program
WO2015133059A1 (en) Route control apparatus, route control method, and route control program
JP2017175522A (en) Network system, control device, method and program
JP5532818B2 (en) ID / locator association apparatus, ID / locator association method and program
JP6256110B2 (en) Packet processing system and packet processing method
JP2016178530A (en) Communication system, communication terminal, communication method, and program
WO2014123194A1 (en) Communication system, control apparatus, communication control method and program
HK1176194A (en) Information system, control apparatus, method of controlling virtual network, and program
JP2018129674A (en) Control device and switch
JP2016225933A (en) Control device, control method for relay device, program, 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: 15757813

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15757813

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP