WO2011065227A1 - フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム - Google Patents

フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム Download PDF

Info

Publication number
WO2011065227A1
WO2011065227A1 PCT/JP2010/069993 JP2010069993W WO2011065227A1 WO 2011065227 A1 WO2011065227 A1 WO 2011065227A1 JP 2010069993 W JP2010069993 W JP 2010069993W WO 2011065227 A1 WO2011065227 A1 WO 2011065227A1
Authority
WO
WIPO (PCT)
Prior art keywords
switch node
time
effective time
node device
control information
Prior art date
Application number
PCT/JP2010/069993
Other languages
English (en)
French (fr)
Inventor
康博 水越
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2011543203A priority Critical patent/JP5614410B2/ja
Publication of WO2011065227A1 publication Critical patent/WO2011065227A1/ja
Priority to US13/137,198 priority patent/US9602397B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations

Definitions

  • the present invention relates to a flow control device, a network system, a network control method, and a program.
  • This application claims priority based on Japanese Patent Application No. 2009-269959 for which it applied on November 27, 2009, and uses the content here.
  • FIG. 11 is a diagram illustrating a network configuration example using the open flow switch technology.
  • a network 1000 includes a flow control device 2001 and switch node devices 3001 to 3005.
  • the port numbers of the switch nodes are indicated by P1 to P5.
  • Each switch node device may include a port other than those shown in the figure.
  • the switch node devices 3001 to 3005 receive communication control information from the flow control device 2001, and perform data transmission processing according to the control information.
  • the flow control device 2001 performs centralized control of the switch node devices 3001 to 3005.
  • the flow control device 2001 stores the connection relationship between the switch node devices. For flows that are specific communications between the terminal devices 4001 to 4003, it is possible to determine whether communication is possible, route determination, bandwidth control, Priority control of packets with other flows is performed.
  • the terminal devices 4001 to 4003 are devices that communicate with each other via the network 1000, and are a display terminal device such as a personal computer or a mobile phone, or a server such as a workstation that provides services such as providing information to these devices. Device.
  • FIG. 12 is a diagram illustrating a data flow when the terminal device connected to the switch node device starts communication.
  • the figure shows the data flow when the terminal device 4002 connected to the switch node device 3005 communicates with the terminal device 4003 also connected to the switch node device 3005.
  • the terminal device 4002 that wants to communicate with the terminal device 4003 transmits an initial packet to the switch node device 3005 (C121).
  • the initial packet is an ARP (Address Resolution Protocol) packet, a TCP (Transmission Control Protocol) SYN packet (Synchronize Packet), or an initial packet having a specific IP (Internet Protocol) address and a specific port number.
  • a packet transmitted at the start of communication such as a UDP (User Datagram Protocol) packet.
  • the switch node device 3005 that has received the initial packet from the terminal device 4002 transmits an inquiry packet for requesting transmission of control information to the flow control device 2001 (C122).
  • the flow control device 2001 that has received the inquiry packet determines whether or not to transfer the target flow (communication between the terminal device 4002 and the terminal device 4003). When it is determined that transfer is possible, the flow control apparatus 2001 determines whether transfer is determined, the communication protocol (a distinction between TCP and UDP), communication path (output port number), bandwidth control information, and priority control information of this flow packet. And a response packet indicating the control information including the time set in advance as the effective time of the control information (for example, 4 seconds) is transmitted to the switch node device 3005 (C123).
  • the switch node device 3005 When receiving a response packet indicating that transfer is possible from the flow control device 2001, the switch node device 3005 reads the control information and the valid time from the response packet and writes them in the flow table T3005. The switch node device 3005 performs communication transfer of this flow based on the control information written in the flow table T3005.
  • “4002 to 4003” indicates communication between the terminal devices 4002 and 4003
  • “P4 to P3” indicates that this communication is performed between the port P4 and the port P3.
  • “(4)” indicates that the valid time of this information is 4 seconds.
  • the flow table further registers communication protocol information, bandwidth control information, priority control information, and the like of this flow, but is not shown.
  • FIG. 13 is a diagram illustrating a data flow when the valid time has elapsed.
  • the switch node apparatus 3005 transmits an inquiry packet using a packet from the terminal apparatus 4002 as a trigger
  • the switch node apparatus 3005 transmits an inquiry packet using an elapse of valid time as a trigger.
  • the switch node devices 3001 to 3005 periodically inquire the flow control device 2001 and update the flow table based on the valid times indicated in the flow tables T3001 to T3005, respectively. Specifically, the switch node device 3005 transmits an inquiry packet to the flow control device 2001 in FIG. 12, and the terminal devices 4002 and 4003 are connected within the effective time 4 seconds indicated in the flow table T3005.
  • the switch node device 3005 transmits an inquiry packet to the flow control device 2001 when the valid time of 4 seconds elapses (C131).
  • the flow control device 2001 generates a response packet in the same manner as the first inquiry, and transmits it to the switch node device 3005 (C132).
  • the switch node device 3005 performs communication transfer based on the control information read from the response packet as in the first inquiry.
  • the switch node device 3005 deletes the information of the communication flow from the flow table T3005.
  • FIG. 14 is a diagram illustrating a data flow when the switch node device to which the terminal device is connected is changed.
  • the switch node device may move within the connection range.
  • the terminal device 4001 is connected to the switch node device 3002, and communicates with the terminal device 4003 via the switch node device 3002.
  • the switch node device 3002 makes an inquiry to the flow control device 2001 in the same manner as described with reference to FIGS. 12 and 13, and writes the control information and the valid time in the flow table T3002.
  • the terminal device 4001 connects to the switch node device 3004 and continues to communicate with the terminal device 4003 via the switch node device 3004.
  • the switch node device 3004 makes an inquiry to the flow control device 2001 in the same manner as described with reference to FIG. 12, and writes the control information and the valid time in the flow table T3004.
  • the switch node device 3002 deletes the control information and the valid time in the flow table T3002 when the valid period indicated in the flow table T3002 comes after the terminal device 4001 is not connected.
  • the switch node apparatus 3005 in FIG. 13 transmits an inquiry packet to the flow control apparatus 2001 every time an effective time of 4 seconds elapses, and the switch node apparatus transmits a response packet.
  • An inquiry packet is transmitted to the flow control device every time the valid time elapses, and the flow control device transmits a response packet to the switch node device. For this reason, when the number of terminal devices that perform communication increases, there is a problem that the communication amount of the network increases due to inquiry packets and response packets. Further, for example, when the switch node device to which the terminal device is connected is changed so that the switch node device 3002 in FIG.
  • the switch node device deletes the control information of the flow table T3002 after the effective time has elapsed, the route before the change until the effective time elapses. There is a problem that it remains.
  • the path before the change may be abused as a flow loophole.
  • the switch node device erroneously transfers data (for example, in FIG. 14, after the terminal device 4001 is connected to the switch node device 3004, the switch node device 3005 There is a possibility that a packet from 4003 to the terminal device 4001 is transferred to the switch node device 3002.
  • the network traffic is reduced by reducing the transmission frequency of the inquiry packet and the response packet by setting the effective time longer, the time that the route before the change remains when the switch node device connected to the terminal device is changed Therefore, there is a high possibility that the route before the change is abused and that the switch node device erroneously transfers data.
  • the switch node device to which the terminal device is connected is changed, if the valid time is set short in order to shorten the time that the route before the change remains, the transmission frequency of inquiry packets and response packets increases, and network communication The amount will increase.
  • the present invention has been made in consideration of such circumstances, and its purpose is to keep the path before the change when the switch node device to which the terminal device is connected is changed while suppressing the network traffic.
  • An object of the present invention is to provide a flow control device, a network system, a network control method, and a program that can reduce the risk of failure due to the above.
  • the present invention has been made in order to solve the above-described problem. For each of a series of communications performed between a certain terminal device via one or more switch node devices, the sequence is performed on one or more switch node devices.
  • a flow control device that transmits control information for the communication of the terminal, the elapsed time based on an elapsed time since the terminal device that performs the series of communication starts communication via a specific switch node device.
  • a flow control device comprising: an effective time setting unit that sets the effective time of the control information to be longer as it is longer; and a transmission unit that transmits the control information every time the effective time elapses.
  • the effective time setting unit determines whether or not the switch node device to which at least one of the terminal devices is connected has been changed, and when it is determined that the change has occurred, than when it is determined that the switch node device has not been changed. Also, the effective time is set short.
  • the effective time setting unit determines that the switch node device to which any of the terminal devices is connected is not changed during the effective time
  • the effective time setting unit sets a time twice as long as the effective time. The next valid time.
  • the effective time setting unit determines that the switch node device to which any of the terminal devices is connected during the effective time has not been changed, a time that is determined in advance from the effective time. The time increased by this is set as the next effective time.
  • the effective time setting unit determines that the switch node device to which at least one of the terminal devices is connected during the effective time
  • the effective time is set to a half of the effective time.
  • the effective time setting unit when it is determined that the switch node device to which at least one of the terminal devices is connected is changed during the effective time, the effective time setting unit reduces the effective time by a predetermined time. Is the next valid time.
  • the storage device further includes a storage unit that stores a correspondence table that indicates an association between an elapsed time since the terminal device is connected to a specific switch node device and the effective time, and the effective time setting unit includes: The next valid time is set based on the correspondence table.
  • the present invention also includes at least one switch node device and a flow control device that transmits control information for the series of communications for each series of communications performed between certain terminal devices via the switch node device.
  • the flow control device has a long elapsed time based on an elapsed time after a terminal device that performs the series of communications starts communication via a specific switch node device.
  • An effective time setting unit that sets the effective time of the control information longer, and a transmission unit that transmits the control information every time the effective time elapses, and the switch node device is based on the control information
  • a network system for controlling the communication is provided.
  • the present invention also provides a flow control device that transmits control information for a series of communications to one or more switch node devices for each series of communications performed between certain terminal devices via the switch node device.
  • the flow control device is configured such that the elapsed time is long based on an elapsed time after the terminal device that performs the series of communication starts communication via a specific switch node device.
  • a network control method comprising an effective time setting step for setting a longer effective time for the control information and a transmission step for transmitting the control information every time the effective time elapses.
  • the present invention also provides a flow control device that transmits control information for a series of communications to one or more switch node devices for each series of communications performed between certain terminal devices via the switch node device.
  • the effective time of the control information is set to be longer as the elapsed time is longer.
  • the present invention it is possible to reduce the risk of failure due to the remaining route before the change when the switch node device to which the terminal device is connected is changed, while suppressing the network traffic.
  • FIG. 1 is a system configuration diagram showing a schematic configuration of a network system in an embodiment of the present invention. It is a block diagram which shows schematic structure of the flow control apparatus 21 in the embodiment. It is a block diagram which shows schematic structure of the switch node apparatus 35 in the embodiment. 4 is a diagram illustrating a data flow when a terminal device connected to a switch node device starts communication in the embodiment.
  • FIG. In the same embodiment, it is a figure which shows the flow of data when effective time passes. In the same embodiment, it is a figure which shows the data flow in the state before changing the switch node apparatus which a terminal device connects. In the same embodiment, it is a figure which shows the data flow in the state after changing the switch node apparatus which a terminal device connects.
  • FIG. 6 is a diagram illustrating a processing procedure in which the switch node devices 31 to 35 perform control for individual flows in the embodiment. 6 is a correspondence table between a difference between a current time, a time when a switch node device connected to each terminal device is last changed, and an effective time of control information in a flow table in the embodiment. It is a figure which shows the example of a network structure using the open flow switch technique. It is a figure which shows the data flow when the terminal device connected to the switch node apparatus starts communication. It is a figure which shows the flow of data when valid time passes. It is a figure which shows the flow of data when the switch node apparatus which a terminal device connects is changed.
  • FIG. 1 is a system configuration diagram showing a schematic configuration of a network system according to an embodiment of the present invention.
  • the network 1 includes a flow control device 21 and switch node devices 31 to 35.
  • the port P1 of the switch node device 31 and the port P2 of the switch node device 32 are connected, the port P2 of the switch node device 31 and the port P2 of the switch node device 33 are connected, and the switch node device 32 is connected.
  • Port P1 and terminal device 41 are connected, port P3 of switch node device 32 and port P4 of switch node device 33 are connected, port P1 of switch node device 33 and port P2 of switch node device 34 are connected.
  • the port P3 of the switch node device 33 and the port P2 of the switch node device 35 are connected, the port P5 of the switch node device 33 and the flow control device 21 are connected, and the port P3 of the switch node device 34 and the switch node device 35 port P1 is connected to switch node device 35 port P3 and the terminal device 43 and is connected to a port P4 and the terminal device 42 of switching node 35 are connected.
  • the switch node devices 31 to 35 receive communication control information from the flow control device 21, and perform data transmission processing according to the control information.
  • the flow control device 21 performs centralized control of the switch node devices 31 to 35.
  • the flow control device 21 stores connection relations between switch node devices and information related to communication control, and the connection start times of the terminal devices 41 to 43 (switch node devices currently connected) in the management table T21. For the flow that is the specific communication between the terminal devices 41 to 43, the communication availability determination, the route determination, the bandwidth control, and other flows. Priority control of packets between the two is performed.
  • the management table T21 is actually stored in a storage unit 270 described later in the flow control device 21.
  • the terminal devices 41 to 43 are devices that communicate with each other via the network 1, and are display terminal devices such as personal computers or mobile phones, or servers such as workstations that provide services such as providing information to these devices. Device.
  • FIG. 2 is a configuration diagram showing a schematic configuration of the flow control device 21.
  • a flow control device 21 includes a transmission / reception unit (corresponding to the transmission unit of the present invention) 210, a control unit 220, a route determination unit 230, a bandwidth control / priority control information determination unit 240, and an effective time setting unit. 250, a management table update unit 260, and a storage unit 270.
  • the transmission / reception unit 210 is connected to the network 1 and transmits / receives an inquiry packet and a response packet to / from each switch node device. When the transmission / reception unit 210 receives the inquiry packet, the transmission / reception unit 210 outputs the received inquiry packet to the control unit 220.
  • the control unit 220 controls each unit to generate flow information that is information regarding the flow indicated by the inquiry packet, and writes the flow information in the storage unit 270. Further, the control unit 220 generates a response packet for the inquiry packet output from the transmission / reception unit 210 and outputs the response packet to the transmission / reception unit 210.
  • the control unit 220 identifies the identification information of the communication request source terminal device, the identification information of the switch node device to which the communication request source terminal device is connected, and the communication request source terminal device.
  • the port number to be connected, the identification information of the communication partner terminal device, and the inquiry packet transmission time are read, the identification information of the switch node device to which the communication partner terminal device is connected, and the communication partner terminal device.
  • the port number to be connected and flow type information (communication protocol information such as TCP or UDP, packet type information such as mail packet or web display data packet) are read, and the route determination unit 230 and bandwidth control Output to the priority control information determination unit 240 and the valid time setting unit 250, and write information output by these units to the storage unit 270.
  • the control unit 220 generates a response packet based on information output from these units or information read from the storage unit 270 and outputs the response packet to the transmission / reception unit 210.
  • the route determination unit 230 is also based on the connection position information of the communication request source terminal device, the connection position information of the communication partner terminal device, and the flow type information, which are output from the control unit 220. Information indicating the connection relationship of the network 1 is read out, the route of the flow to be processed is determined, and output to the control unit 220.
  • the route determination unit 230 may select a route having the smallest number of relay switch node devices, but is not limited thereto.
  • the route may be determined based on another method, such as assigning a route with a large communication capacity to a flow with a large amount of communication such as moving image data based on the flow type information.
  • the bandwidth control / priority control information determination unit 240 determines the bandwidth control information (band control information for the packet of the flow) and priority control information (other flows). And the packet transmission priority information of the flow in between.) And the determined information is output to the control unit 220.
  • the valid time setting unit 250 uses the identification information of the communication request source terminal device, the identification information of the communication partner terminal device, and the flow type information, which are output from the control unit 220, as keys. It is determined whether or not the storage unit 270 stores the time. If it is determined that it is stored, a new valid time is set based on the valid time. If it is determined that it is not stored, a predetermined valid time is set as a new valid time. The valid time setting unit 250 outputs the set valid time to the control unit 220.
  • the management table update unit 260 includes the identification information of the communication request source terminal device output from the control unit 220, the identification information of the switch node device to which the communication request source terminal device is connected, and the communication request source terminal device.
  • the management table in the storage unit 270 is updated using the port number to be connected and the inquiry packet transmission time.
  • the storage unit 270 stores information indicating the connection relationship of the network 1.
  • the storage unit 270 includes route information of each flow generated by the route determination unit 230, bandwidth control information and priority control information of each flow generated by the bandwidth control / priority control information determination unit 240, and an effective time setting unit 250.
  • the flow information including the valid time of the control information of each flow generated by is stored.
  • the storage unit 270 stores a management table T21 described later.
  • FIG. 3 is a configuration diagram showing a schematic configuration of the switch node device 35.
  • the switch node device 35 includes ports P1 to P5, a control unit 320, and a storage unit 330.
  • the ports P1 to P5 are connected to the terminal devices 42 and 43 or other switch node devices 33 and 34, and transmit and receive packets to and from these devices.
  • the port P1 of the switch node device 35 is connected to the port P3 of the switch node device 34
  • the port P2 is connected to the port P3 of the switch node device 33
  • the port P3 is a terminal.
  • Connected to the device 43, the port P4 is connected to the terminal device 42, and the port P5 is empty.
  • the ports P1 to P5 output the received packet to the control unit 320, and transmit the packet output from the control unit 320.
  • the control unit 320 When the initial packet from the terminal device (for example, the terminal device 42) is input from any of the ports P1 to P5 (for example, the port P4), the control unit 320 generates an inquiry packet corresponding to the initial packet, and the port P1 Are transmitted to the flow control device 21 via any one of P5 to P5 (port P2 in the example of FIG. 4).
  • the storage unit 330 stores a flow table T35 indicating control information of each flow and a route (output port number) to the flow control device 21.
  • the schematic configuration of the switch node devices 31 to 34 is the same as that of the switch node device 35, and a description thereof will be omitted.
  • the number of ports of the switch node devices 31 to 35 may be other than the five shown in FIG. Further, the number of ports may be different for each switch node device.
  • FIG. 4 is a diagram illustrating a data flow when the terminal device connected to the switch node device starts communication.
  • the figure shows the data flow when the terminal device 42 connected to the switch node device 35 communicates with the terminal device 43 also connected to the switch node device 35.
  • the terminal device 42 that wants to communicate with the terminal device 43 transmits an initial packet to the switch node device 35 (C41).
  • the switch node device 35 that has received the initial packet from the terminal device 42 transmits an inquiry packet for requesting transmission of control information to the flow control device 21 (C42).
  • the flow control device 21 determines whether or not to transfer the packet of the target flow (communication between the terminal device 42 and the terminal device 43). For example, the flow control device 21 determines whether or not the packet can be transferred by filtering based on the addresses of the communication request source and the communication destination. If it is determined that transfer is possible, the flow control device 21 writes the control information including the communication path, bandwidth control information, and priority control information, and the valid time of the control information in the storage unit 270 (FIG. 2). Then, a response packet indicating the control information and the valid time is transmitted to the switch node device 35 (C43). These pieces of information may be generated by the flow control device 21 when the inquiry packet is received, or the information generated by the flow control device 21 in advance before receiving the inquiry packet and generated in advance according to the received inquiry packet. You may make it choose from.
  • the flow control device 21 associates the identification information of the communication request source terminal device (the terminal device 42 in the example of FIG. 4) with the connection start time and writes it in the management table T21.
  • “42” in the management table T21 of FIG. 4 indicates the terminal device 42
  • “HH1: MM1: SS1” indicates the connection start time of this terminal device.
  • the switch node device 35 reads the control information and the valid time from the received response packet and writes them in the flow table T35.
  • the switch node device 35 performs communication transfer of this flow based on the control information written in the flow table T35.
  • FIG. 5 is a diagram illustrating a data flow when the valid time has elapsed.
  • the switch node devices 31 to 35 make inquiries to the flow control device 21 and update the flow table for each valid time indicated in their own flow tables T31 to T35.
  • FIG. 5 shows a case where the switch node device 35 transmits an inquiry packet to the flow control device 21 in FIG. 4 and the terminal device 42 within the effective time 4 seconds indicated in the flow table T35.
  • the state of the inquiry which the switch node apparatus 35 performs when communication with 43 is performed again is shown.
  • the switch node device 35 transmits an inquiry packet to the flow control device 21 when the valid time has elapsed of 4 seconds (C51).
  • the flow control device 21 In response to this, the flow control device 21 generates a response packet whose effective time is 8 seconds, which is twice the previous time, and transmits the response packet to the switch node device 35 (C52).
  • the switch node device 35 reads the control information and the valid time from the response packet and updates the flow table T35. As a result, the valid time information written in the flow table T35 is updated from 4 seconds to 8 seconds.
  • the switch node device 35 performs communication transfer based on the control information written in the flow table T35. Thereafter, if the communication between the terminal devices 42 and 43 is performed again within the effective time after the last inquiry, the switch node device 35 transmits an inquiry packet to the flow control device 21 after the effective time elapses.
  • the flow control device 21 repeats the operation of transmitting to the switch node device 35 a response packet whose effective time is double that of the previous time. On the other hand, when the communication is not performed again within the valid time after the last inquiry, the switch node device 35 deletes the communication flow information from the flow table T35.
  • FIG. 6 is a diagram illustrating a data flow in a state before the switch node device to which the terminal device is connected is changed.
  • the terminal device 41 transmits an initial packet to the switch node device 32 (C61).
  • the switch node device 32 that has received the initial packet transmits an inquiry packet to the flow control device 21 (C62).
  • the flow control device that has received the inquiry packet generates a response packet with an effective time of 4 seconds and transmits it to the switch node device 32 (C63), as in the case of FIG.
  • the switch node device 32 writes the control information and the valid time in the flow table T32, and controls the flow based on the control information.
  • the switch node device 32 transfers the initial packet to the switch node device 33, and the switch node device 33 transmits an inquiry packet and receives a response packet in the same manner as the switch node device 32. Further, the switch node device 33 transfers the initial packet to the switch node device 35, and the switch node device 35 transmits an inquiry packet and receives a response packet in the same manner as the switch node device 32. As a result, a communication path passing through the switch node devices 32, 33, and 35 is established.
  • FIG. 7 is a diagram illustrating a data flow in a state after the switch node device to which the terminal device is connected is changed. Specifically, FIG. 6 shows that the switch node device to which the terminal device 41 is connected before the expiration of the valid time after the communication path passing through the switch node devices 32, 33, and 35 is established in FIG. The state of an inquiry made by the switch node device 34 when the switch node device 34 is changed from 32 is shown. First, the terminal device 41 transmits an initial packet to the new connection destination switch node device 34 (C71). The switch node device 34 that has received the initial packet transmits an inquiry packet to the flow control device 21 (C72).
  • the flow control device 21 determines whether or not the connection destination of the terminal device has been changed, and updates the management table.
  • the connection destination switch node device of the terminal device 41 stored in the storage unit 270 is the switch node device 32 that is the connection destination before movement.
  • the connection destination indicated by the inquiry packet is the switch node device 34.
  • the flow control device 21 determines that the switch node device to which the terminal device is connected is changed, and manages the storage unit 270.
  • the connection start time of the terminal device in the table is changed to, for example, an inquiry packet transmission time.
  • the connection start time to be updated is not limited to the inquiry packet transmission time, but is any time from the time when the terminal device transmits the first packet to the current time, such as the current time (the time when the management table is updated). If it is.
  • the flow control device 21 determines whether the switch node device to be connected has been changed by either the communication request source terminal device or the communication counterpart terminal device within the previous effective time. Determine. In the case of the example in FIG. 7, the elapsed time from the connection start time of the terminal device 41 that is the communication request source to the current time is shorter than 4 seconds that is the previous valid time. From this, the flow control device 21 determines that the terminal device 41 that is the communication request source has changed the switch node device to be connected within the previous effective time. The flow control device 21 that has determined that either one of the terminal devices has changed the connected switch node device sends a response packet whose effective time is half the previous time (2 seconds in the example of FIG. 7) to the switch node device 34. Send. The switch node device 34 reads the control information and the valid time from the response packet, writes them in the flow table T34, and controls the flow based on this control information.
  • the control information of the flow table T32 in FIG. 7 is the information that the control information of the original communication path remains, and the effective time is “(4)” (4 seconds) as in FIG.
  • the control information of the flow table T34 is control information of a new communication path, and the effective time is “(2)” (2 seconds), which is half of the previous time.
  • the switch node device 34 transfers the initial packet to the switch node device 35, and the switch node device 35 transmits an inquiry packet and receives a response packet in the same manner as the switch node device 34.
  • the switch node device 35 reads out the control information and the valid time from the received response packet, writes them in the flow table T35, and performs transfer control of this flow based on the written control information.
  • FIG. 8 is a diagram illustrating a processing procedure in which the flow control device 21 receives an inquiry packet and transmits a response packet.
  • the control unit 220 determines whether or not the transmission / reception unit 210 has received an inquiry packet. If it is determined that it has been received (step S11: YES), the process proceeds to step S12. If it is determined that it has not been received (step S11: NO), the process proceeds to step S20.
  • step S12 the control unit 220 connects from the inquiry packet the identification information of the communication request source terminal device, the identification information of the switch node device to which the communication request source terminal device is connected, and the communication request source terminal device. Port number and the identification information of the communication partner terminal device, the identification information of the switch node device to which the communication partner terminal device is connected, the port number to which the communication partner terminal device is connected, The flow type information is determined.
  • step S 13 the control unit 220 identifies the identification information of the communication request source terminal device, the identification information of the switch node device to which the communication request source terminal device is connected, and the communication request source terminal device to the management table update unit 260. And the inquiry packet transmission time are output, and the management table update unit 260 updates the management table in the storage unit 270. Specifically, first, the management table update unit 260 uses the identification information of the communication request source terminal device, the identification information of the communication partner terminal device, and the flow type information as keys from the storage unit 270. Read the route information of this flow.
  • the management table updating unit 260 compares the read path information with the identification information of the switch node device to which the communication request source terminal device is connected and the port number to which the communication request source terminal device is connected. It is determined whether or not the switch node device to which the communication request source terminal device is connected has been changed. If the management table update unit 260 determines that the connection has been changed, the management table update unit 260 changes the connection start time of the terminal device in the management table of the storage unit 270 to the inquiry packet transmission time. On the other hand, if it is determined that it has not been changed, nothing is done. When the connection start time of this terminal device is not yet registered in the management table, the management table update unit 260 newly writes the inquiry packet transmission time as the connection start time of this terminal device in the management table.
  • step S ⁇ b> 14 the control unit 220 determines whether or not the flow information including information read from the inquiry packet has already been written in the storage unit 270.
  • step S14: YES the process proceeds to step S31, and when it is determined that writing has not yet been performed (step S14: NO), the process proceeds to step S15.
  • step S15 the control unit 220 outputs the information read or determined in step S12 to the band control / priority control information determination unit 240.
  • the bandwidth control / priority control information determination unit 240 determines bandwidth control information and priority control information for the flow indicated by the inquiry packet, and outputs the determined bandwidth control information and priority control information to the control unit 220.
  • step S16 the control unit 220 outputs the information read or determined in step S12 to the route determination unit 230 and outputs the information to the route determination unit 230.
  • the route determination unit 230 determines the route of the flow indicated by the inquiry packet. And the path information is output to the control unit 220.
  • step S ⁇ b> 17 the valid time setting unit 250 sets the valid time of the control information of this flow as a default value to a predetermined number of seconds of 4 seconds, and outputs the valid time information to the control unit 220.
  • the control unit 220 stores the information read or determined in step S12, the bandwidth control information, the priority control information, the path information, and the valid time information as the flow information of this flow. Write to 270.
  • the control unit 220 reads out the output port number of the switch node device to which the response packet is transmitted from the route information generated by the route determination unit 230, and includes control information including this port number, bandwidth control information, and priority control information. And a response packet indicating valid time information is generated, and the generated response packet is transmitted to the switch node device.
  • step S20 for each piece of flow information written in the storage unit 270, the control unit 220 compares the elapsed time from when the flow information is written to the present time with the effective time of the flow information, and determines the effective time. Delete flow information that has passed. At this time, for example, the switch node devices 31 to 35 may transmit the inquiry packet so that the flow information whose effective time should be updated is not accidentally deleted before the inquiry packet is received. When the control information is deleted from the flow tables T31 to T35, a packet indicating the deletion is output to the flow control apparatus 21, and the control unit 220 deletes the corresponding flow information when receiving the packet. To. After step S20, the process returns to step S11.
  • step S31 the control unit 220 determines whether the communication request source terminal device or the communication partner terminal device has changed the switch node device to be connected within the previous effective time. Specifically, the control unit 220 reads the connection start time of the communication request source terminal device and the connection start time of the communication partner terminal device from the management table T21 of the storage unit 270, and from the storage unit 270, Reads the valid time of the flow information of the flow to be processed. Then, the control unit 220 compares the effective time with the elapsed time from the connection start time of the terminal device that is the communication request source to the current time, and determines that the change has not been made if the elapsed time is longer. If it is longer, it is determined that it has been changed.
  • control unit 220 compares the elapsed time from the connection start time of the communication partner terminal device to the current time with the effective time, and determines that if the elapsed time is longer, it has not changed, and If it is longer, it is determined that it has changed. In either case, when it is determined that the switch node device to which the terminal device is connected is changed (step S31: YES), the process proceeds to step S41, and when it is determined that neither is changed (step S31: NO), the step is performed. Proceed to S32.
  • step S ⁇ b> 32 the valid time setting unit 250 sets the new valid time to twice the previous valid time, and outputs the set valid time to the control unit 220.
  • step S ⁇ b> 33 the control unit 220 writes a new valid time in the storage unit 270.
  • the control unit 220 reads the control information of this flow from the storage unit 270, generates a response packet based on the read control information, and transmits the generated response packet to the switch node device via the transmission / reception unit 210. . Thereafter, the process proceeds to step S20.
  • step S ⁇ b> 41 the valid time setting unit 250 sets the new valid time to half of the previous valid time, and outputs the set valid time to the control unit 220. Thereafter, the process proceeds to step S33.
  • FIG. 9 is a diagram illustrating a processing procedure in which the switch node devices 31 to 35 perform control for individual flows.
  • the switch node devices 31 to 35 receive the initial packet from the terminal device, the switch node devices 31 to 35 start the processing shown in FIG.
  • the control unit 320 generates an inquiry packet corresponding to the received initial packet, and transmits the inquiry packet to the flow control device 21 via any of the ports P1 to P5.
  • any of the ports P1 to P5 receives the response packet and outputs the response packet to the control unit 320.
  • the control unit 320 reads the control information and the valid time from the response packet, and the flow tables T31 to T35 in the storage unit 330. Write to.
  • step S ⁇ b> 103 the control unit 320 transfers the initial packet via the port (the transfer destination of the packet from the terminal device) set as the output port in the control information.
  • step S104 the control unit 320 determines whether or not a packet from the terminal device has been received. If it is determined that it has been received (step S104: YES), the process proceeds to step S105. If it is determined that it has not been received (step S104: NO), the process proceeds to step S106.
  • step S105 the control unit 320 transfers the received packet through the port set as the output port in the control information according to the control information written in the flow tables T31 to T35.
  • step S106 the control unit 320 determines whether the valid time has elapsed since the previous inquiry. If it is determined that the time has elapsed (step S106: YES), the process proceeds to step S111. If it is determined that the time has not elapsed (step S106: NO), the process returns to step S104.
  • step S111 the control unit 320 determines whether or not the packet from the terminal device has been received and transferred within the valid time. If it is determined that it has been received / transferred (step S111: YES), the process proceeds to step S121. If it is determined that it has not been received / transferred (step S111: NO), the process proceeds to step S112. In step S112, the control unit 320 deletes the control information and valid time of the target flow from the flow tables T31 to T35 stored in the storage unit 330. Thereafter, the switch node devices 31 to 35 end the processing for controlling this node. On the other hand, in step S ⁇ b> 121, the control unit 320 generates an inquiry packet and transmits it to the flow control apparatus 21.
  • step S122 any of the ports P1 to P5 receives the response packet and outputs the response packet to the control unit 320.
  • the control unit 320 reads the control information and the valid time from the response packet and stores the flow table T31 in the storage unit 330. Update T35. Thereafter, the process returns to step S104.
  • the flow control device 21 sets the control information valid time to be short for the flow of the terminal device in which the switch node device to be connected is changed, and the control information for the flow of the terminal device that has not been changed.
  • the effective time of the control information is set to be long, so that the effective time of the control information is set short for the terminal device having a high change frequency according to the change frequency of changing the switch node device to which the terminal device is connected, and the switch node to be connected
  • the remaining time of the route before the change can be shortened. The remaining route before the change occurs every time the switch node device to which the terminal device is connected changes.
  • the valid time is determined based on whether or not the switch node device to which the terminal device is connected is actually changed, even a terminal device that can change the switch node device to be connected, for example, on a specific desk
  • a terminal device that is actually fixedly connected to a specific switch node device such as a notebook personal computer that is used only
  • a long effective period can be set to suppress network traffic.
  • a minimum valid time may be set, for example, not shorter than 1 second.
  • the effective time setting unit may determine the maximum effective time, for example, not to set the effective time longer than 128 seconds. Thereby, the setting of an extremely long effective period can be suppressed, and the remaining time of the original route when the switch node device connected to the terminal device is changed can be suppressed.
  • next valid time when the valid time setting unit 250 makes the next valid time shorter than the original valid time is not limited to half of the original valid time. For example, it may be shortened by a predetermined unit time such as 1 second shorter than the original effective time. Also in this case, for the flow of the terminal device with a high change frequency of the connection destination, the effective time of the control information is set to be short, and the original route remains when the terminal device changes the connection destination switch node device. Time can be saved. Also in this case, as in the case described above, by setting the minimum effective time, it is possible to suppress the setting of an extremely short effective time and to suppress the network traffic.
  • next valid time when the valid time setting unit 250 makes the next valid time longer than the original valid time is not limited to twice the original valid time. For example, it may be made longer by a predetermined unit time such as 1 second longer than the original effective time. In this case as well, for a flow of a terminal device whose connection destination change frequency is low, it is possible to reduce the network traffic by setting the control information valid time long. In this case as well, as in the above case, by setting the maximum valid time, the setting of the extremely long valid time is suppressed, and the original when the switch node device to which the terminal device is connected is changed. The remaining time of the route can be suppressed.
  • the current time and the previous movement time that is, the time when each terminal device last changed the connection destination switch node device (communication start time if it has never been changed). May be stored in the storage unit 270, and the valid time setting unit 250 may set the valid time based on the correspondence table. This makes it possible to set a finer effective time.
  • a program for realizing all or part of the functions of the flow control device 21 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed. You may perform the process of each part.
  • the “computer system” includes an OS and hardware such as peripheral devices. Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
  • the “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system.
  • the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line.
  • a volatile memory in a computer system serving as a server or a client in that case and a program that holds a program for a certain period of time are also included.
  • the program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
  • the present invention is suitable for use in a flow control device, a network system, a network control method, and a program.
  • a flow control device for example, it is conceivable to apply to a mobile communication network using the open flow switch technology.

Landscapes

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

Abstract

 1つ以上のスイッチノード装置に対して、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置であって、前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定部と、前記有効時間を経過する毎に前記制御情報を送信する送信部と、を具備する。

Description

フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム
 本発明は、フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラムに関する。
 本願は、2009年11月27日に出願された特願2009-269959号に基づき優先権を主張し、その内容をここに援用する。
 ネットワーク上の通信を集中制御する技術の1つとして、オープンフロースイッチ技術など、1つのフロー制御装置をネットワーク内に備え、このフロー制御装置がネットワーク上の各スイッチノード装置に定期的に制御情報を送信し、各スイッチノード装置がこの制御情報に従ってデータ伝送を行う技術がある。
 図11は、オープンフロースイッチ技術を用いたネットワーク構成例を示す図である。
 同図において、ネットワーク1000は、フロー制御装置2001とスイッチノード装置3001~3005とを具備する。同図において、各スイッチノードのポート番号をP1~P5で示している。なお、各スイッチノード装置は、図に示した以外にもポートを備えていてもよい。
 スイッチノード装置3001~3005は、フロー制御装置2001から通信の制御情報を受信し、この制御情報に従ってデータ伝送処理を行う。
 フロー制御装置2001は、各スイッチノード装置3001~3005を集中制御する。フロー制御装置2001は、スイッチノード装置間の接続関係を記憶しており、端末装置4001~4003の間の特定の通信であるフローに対して、通信の可否決定や、経路決定や、帯域制御や、他のフローとの間でのパケットの優先制御等を行う。
 端末装置4001~4003は、ネットワーク1000を介して互いに通信を行う装置であり、パーソナル・コンピュータまたは携帯電話等の表示端末装置、あるいは、これらに情報提供等のサービス提供等を行うワークステーション等のサーバ装置である。
 図12は、スイッチノード装置に接続された端末装置が、通信を開始する際のデータの流れを示す図である。同図は、スイッチノード装置3005に接続された端末装置4002が、同じくスイッチノード装置3005に接続された端末装置4003と通信を行う場合のデータの流れを示している。
 まず、端末装置4003と通信を行いたい端末装置4002が、スイッチノード装置3005に初回パケットを送信する(C121)。
 ここでいう初回パケットとは、ARP(Address Resolution Protocol)パケットやTCP(Transmission Control Protocol)のSYNパケット(Synchronize Packet;同期パケット)や,特定のIP(Internet Protocol)アドレスと特定のポート番号を持つ初回のUDP(User Datagram Protocol)パケットなど、通信開始時に送信されるパケットである。
 端末装置4002からの初回パケットを受信したスイッチノード装置3005は、フロー制御装置2001に対して制御情報の送信を要求する問い合わせパケットを送信する(C122)。
 問い合わせパケットを受信したフロー制御装置2001は、対象となるフロー(端末装置4002と端末装置4003との間の通信)の転送可否を決定する。
 転送可と決定した場合は、フロー制御装置2001は、決定した転送可否やこのフローのパケットの通信プロトコル(TCPかUDPかの区別)や通信経路(出力ポート番号)や帯域制御情報や優先制御情報を含む制御情報と、この制御情報の有効時間として予め設定された時間(例えば4秒)と、を示す応答パケットを、スイッチノード装置3005に送信する(C123)。
 フロー制御装置2001から転送可を示す応答パケットを受信した場合、スイッチノード装置3005は、制御情報と有効時間とを応答パケットから読み出し、フローテーブルT3005に書き込む。スイッチノード装置3005は、フローテーブルT3005に書き込んだ制御情報に基づいて、このフローの通信転送を行う。
 図12のフローテーブルT3005の、「4002-4003」は、端末装置4002と4003との間の通信を示し、「P4-P3」は、この通信がポートP4とポートP3との間で行われることを示し、「(4)」は、この情報の有効時間が4秒であることを示す。
 フローテーブルには、さらに、このフローの通信プロトコルの情報や帯域制御情報や優先制御情報等も登録されるが、図示を省略している。
 図13は、有効時間が経過した際のデータの流れを示す図である。図12では、スイッチノード装置3005が、端末装置4002からのパケットをトリガとして問い合わせパケットを送信したのに対し、図13では、スイッチノード装置3005は、有効時間経過をトリガとして問い合わせパケットを送信する。
 スイッチノード装置3001~3005は、それぞれフローテーブルT3001~T3005に示される有効時間に基づいて定期的に、フロー制御装置2001に対する問い合わせおよびフローテーブルの更新を行う。
 具体的には、図12でスイッチノード装置3005がフロー制御装置2001に対して問い合わせパケットを送信してから、フローテーブルT3005に示される有効時間4秒のうちに、端末装置4002と4003との間の通信が再度行われた場合、スイッチノード装置3005は、有効時間の4秒経過時に、フロー制御装置2001に対して問い合わせパケットを送信する(C131)。
 フロー制御装置2001は、初回の問い合わせ時と同様に応答パケットを生成し、スイッチノード装置3005に送信する(C132)。
 スイッチノード装置3005は、初回の問い合わせ時と同様に、応答パケットから読み出す制御情報に基づいて通信転送を行う。
 一方、有効時間内に端末装置4002と4003との間の通信が再度行われなかった場合は、スイッチノード装置3005は、当該通信のフローの情報をフローテーブルT3005から削除する。
 図14は、端末装置が接続するスイッチノード装置を変更する場合のデータの流れを示す図である。端末装置が接続するスイッチノード装置を変更する場合としては、例えば、端末装置とスイッチノード装置とが無線通信にて接続されており、端末装置が当該スイッチノード装置の接続範囲を外れて、他のスイッチノード装置の接続範囲内に移動する場合がある。
 まず、端末装置4001は、スイッチノード装置3002に接続されており、当該スイッチノード装置3002を介して端末装置4003と通信を行う。この際、スイッチノード装置3002は、図12および図13で説明したのと同様にフロー制御装置2001に問い合わせを行い、フローテーブルT3002に制御情報および有効時間を書き込んでいる。
 次に、端末装置4001は、スイッチノード装置3004に接続し、当該スイッチノード装置3004を介して引き続き端末装置4003と通信を行う。
 端末装置4001がスイッチノード装置3004に接続した際、スイッチノード装置3004は図12で説明したのと同様にフロー制御装置2001に問い合わせを行い、フローテーブルT3004に制御情報および有効時間を書き込む。
 一方、スイッチノード装置3002は、端末装置4001が接続しなくなった後、フローテーブルT3002に示される有効期間到来時に、フローテーブルT3002の制御情報および有効時間を削除する。
 例えば、図13のスイッチノード装置3005が、有効時間の4秒が経過する毎にフロー制御装置2001に問い合わせパケットを送信し、フロー制御装置2001が応答パケットを送信するように、スイッチノード装置は、有効時間経過毎にフロー制御装置に対して問い合わせパケットを送信し、フロー制御装置は、スイッチノード装置に対して応答パケットを送信する。このため、通信を行う端末装置が多くなると問い合わせパケットおよび応答パケットによりネットワークの通信量が増大してしまうという問題がある。
 また、例えば、図14のスイッチノード装置3002が有効時間経過後にフローテーブルT3002の制御情報を削除するように、端末装置が接続するスイッチノード装置を変更した際、有効時間経過まで変更前の経路が残ってしまうという問題がある。
 この変更前の経路はフローの抜け道として悪用される可能性がある。
 また、変更前の経路が残っていることにより、スイッチノード装置が誤ってデータを転送(例えば、図14において、端末装置4001がスイッチノード装置3004に接続した後に、スイッチノード装置3005が、端末装置4003から端末装置4001へのパケットを、スイッチノード装置3002へ転送)する可能性がある。
 そして、有効時間を長く設定して問い合わせパケットおよび応答パケットの送信頻度を減らすことによりネットワークの通信量を減少させると、端末装置が接続するスイッチノード装置を変更した際に変更前の経路が残る時間が長くなり、変更前の経路が悪用される可能性やスイッチノード装置が誤ってデータを転送する可能性が高くなってしまう。
 逆に、端末装置が接続するスイッチノード装置を変更した際に変更前の経路が残る時間を短くするために、有効時間を短く設定すると、問い合わせパケットおよび応答パケットの送信頻度が増し、ネットワークの通信量が増大してしまう。
 本発明は、このような事情を考慮してなされたものであり、その目的は、ネットワークの通信量を抑えつつ、端末装置が接続するスイッチノード装置を変更した際に変更前の経路が残ることによる障害のおそれを軽減できるフロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラムを提供することにある。
 この発明は上述した課題を解決するためになされたもので、1つ以上のスイッチノード装置に対して、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置であって、前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定部と、前記有効時間を経過する毎に前記制御情報を送信する送信部と、を具備するフロー制御装置を提供する。
 典型例として、前記有効時間設定部は、前記端末装置の少なくとも一方が接続するスイッチノード装置を変更したか否かを判定し、変更したと判定した場合には、変更しなかったと判定した場合よりも、前記有効時間を短く設定する。
 この場合の好適例として、前記有効時間設定部は、前記有効時間中に前記端末装置のいずれもが接続するスイッチノード装置を変更しなかったと判定した場合は、前記有効時間の2倍の時間を次の有効時間とする。
 別の好適例として、前記有効時間設定部は、前記有効時間中に前記端末装置のいずれもが接続するスイッチノード装置を変更しなかったと判定した場合は、前記有効時間よりも予め定められた時間だけ増やした時間を次の有効時間とする。
 別の好適例として、前記有効時間設定部は、前記有効時間中に前記端末装置の少なくとも一方が接続するスイッチノード装置を変更したと判定した場合は、前記有効時間を当該有効時間の半分の時間に更新する。
 別の好適例として、前記有効時間設定部は、前記有効時間中に前記端末装置の少なくとも一方が接続するスイッチノード装置を変更した判定した場合は、前記有効時間よりも予め定められた時間だけ減らした時間を次の有効時間とする。
 好適には、端末装置が特定のスイッチノード装置に接続してからの経過時間と前記有効時間との対応付けを示す対応表を記憶する記憶部をさらに具備し、前記有効時間設定部は、前記対応表に基づいて次の有効時間を設定する。
 本発明はまた、1つ以上のスイッチノード装置と、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置とを具備するネットワークシステムであって、前記フロー制御装置は、前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定部と、前記有効時間を経過する毎に前記制御情報を送信する送信部と、を具備し、前記スイッチノード装置は、前記制御情報に基づいて、前記通信の制御を行うネットワークシステムを提供する。
 本発明はまた、1つ以上のスイッチノード装置に対して、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置のネットワーク制御方法であって、前記フロー制御装置は、前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定ステップと、前記有効時間を経過する毎に前記制御情報を送信する送信ステップと、を備えるネットワーク制御方法を提供する。
 本発明はまた、1つ以上のスイッチノード装置に対して、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置に、前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定ステップと、前記有効時間を経過する毎に前記制御情報を送信する送信ステップと、を実行させるプログラムを提供する。
 本発明によれば、ネットワークの通信量を抑えつつ、端末装置が接続するスイッチノード装置を変更した際に変更前の経路が残ることによる障害のおそれを軽減できる。
本発明の一実施形態におけるネットワークシステムの概略構成を示すシステム構成図である。 同実施形態におけるフロー制御装置21の概略構成を示す構成図である。 同実施形態におけるスイッチノード装置35の概略構成を示す構成図である。 同実施形態において、スイッチノード装置に接続された端末装置が、通信を開始する際のデータの流れを示す図である。 同実施形態において、有効時間が経過した際のデータの流れを示す図である。 同実施形態において、端末装置が接続するスイッチノード装置を変更する前の状態におけるデータの流れを示す図である。 同実施形態において、端末装置が接続するスイッチノード装置を変更した後の状態におけるデータの流れを示す図である。 同実施形態において、フロー制御装置21が問い合わせパケットを受信して応答パケットを送信する処理手順を示す図である。 同実施形態において、スイッチノード装置31~35が個々のフローに対する制御を行う処理手順を示す図である。 同実施形態における、現在時刻と、各端末装置が接続するスイッチノード装置を最後に変更した時刻との差分と、フローテーブルの制御情報の有効時間との対応表である。 オープンフロースイッチ技術を用いたネットワーク構成例を示す図である。 スイッチノード装置に接続された端末装置が、通信を開始する際のデータの流れを示す図である。 有効時間が経過した際のデータの流れを示す図である。 端末装置が接続するスイッチノード装置を変更した場合のデータの流れを示す図である。
 以下、図面を参照して、本発明の一実施形態について説明する。
 図1は、本発明の一実施形態におけるネットワークシステムの概略構成を示すシステム構成図である。
 同図において、ネットワーク1は、フロー制御装置21とスイッチノード装置31~35とを具備する。
 図に示すように、スイッチノード装置31のポートP1とスイッチノード装置32のポートP2とが接続され、スイッチノード装置31のポートP2とスイッチノード装置33のポートP2とが接続され、スイッチノード装置32のポートP1と端末装置41とが接続され、スイッチノード装置32のポートP3とスイッチノード装置33のポートP4とが接続され、スイッチノード装置33のポートP1とスイッチノード装置34のポートP2とが接続され、スイッチノード装置33のポートP3とスイッチノード装置35のポートP2とが接続され、スイッチノード装置33のポートP5とフロー制御装置21とが接続され、スイッチノード装置34のポートP3とスイッチノード装置35のポートP1とが接続され、スイッチノード装置35のポートP3と端末装置43とが接続され、スイッチノード装置35のポートP4と端末装置42とが接続されている。
 スイッチノード装置31~35は、フロー制御装置21から通信の制御情報を受信し、この制御情報に従ってデータ伝送処理を行う。
 フロー制御装置21は、各スイッチノード装置31~35を集中制御する。フロー制御装置21は、スイッチノード装置間の接続関係と通信制御に関する情報とを記憶しており、また、管理テーブルT21に各端末装置41~43の接続開始時刻(現在接続しているスイッチノード装置への接続を開始した時刻)を記憶しており、端末装置41~43の間の特定の通信であるフローに対して、通信の可否決定や、経路決定や、帯域制御や、他のフローとの間でのパケットの優先制御等を行う。
 管理テーブルT21は、実際はフロー制御装置21内の後述する記憶部270が記憶している。
 端末装置41~43は、ネットワーク1を介して互いに通信を行う装置であり、パーソナル・コンピュータまたは携帯電話等の表示端末装置、あるいは、これらに情報提供等のサービス提供等を行うワークステーション等のサーバ装置である。
 図2は、フロー制御装置21の概略構成を示す構成図である。
 同図において、フロー制御装置21は、送受信部(本発明の送信部に対応)210と、制御部220と、経路決定部230と、帯域制御・優先制御情報決定部240と、有効時間設定部250と、管理テーブル更新部260と、記憶部270とを具備する。
 送受信部210はネットワーク1に接続され、各スイッチノード装置との間で問い合わせパケットおよび応答パケットの送受信を行う。送受信部210は、問い合わせパケットを受信すると、受信した問い合わせパケットを制御部220に出力する。
 制御部220は、各部を制御して問い合わせパケットが示すフローに関する情報であるフロー情報を生成し、記憶部270に書き込む。また、制御部220は、送受信部210から出力される問い合わせパケットに対する応答パケットを生成し、送受信部210に出力する。
 具体的には、制御部220は、問い合わせパケットから、通信要求元の端末装置の識別情報と、通信要求元の端末装置が接続されるスイッチノード装置の識別情報と、通信要求元の端末装置が接続されるポート番号と、通信相手の端末装置の識別情報と、問い合わせパケット送信時刻とを読み出し、また、通信相手の端末装置が接続されるスイッチノード装置の識別情報と、通信相手の端末装置が接続されるポート番号と、フロータイプ情報(TCPかUDPかなど、通信プロトコルの情報や、メールパケットかウェブ表示データパケットかなど、パケットの種類の情報)とを読み出し、経路決定部230と帯域制御・優先制御情報決定部240と有効時間設定部250とに出力し、これら各部が出力する情報を記憶部270に書き込む。
 また、制御部220は、これら各部が出力する情報または記憶部270から読み出す情報に基づいて応答パケットを生成し、送受信部210に出力する。
 経路決定部230は、制御部220から出力される、通信要求元の端末装置の接続位置の情報と通信相手の端末装置の接続位置の情報とフロータイプ情報とに基づいて、また、記憶部270からネットワーク1の接続関係を示す情報を読み出して、処理対象のフローの経路を決定し、制御部220に出力する。
 経路決定方法として、例えば、経路決定部230が、中継するスイッチノード装置数が最小の経路を選択するようにしてもよいが、これに限らない。例えば、フロータイプ情報に基づいて、動画像データを含むなど通信量の多いフローには通信容量の大きい経路を割り当てるなど、他の方法に基づいて経路を決定するようにしてもよい。
 帯域制御・優先制御情報決定部240は、制御部220から出力されるフロータイプ情報に基づいて、このフローの帯域制御情報(当該フローのパケットに対する帯域制御情報)と優先制御情報(他のフローとの間での当該フローのパケット送信の優先度情報)とを決定し、決定した情報を制御部220に出力する。
 有効時間設定部250は、制御部220から出力される通信要求元の端末装置の識別情報と通信相手の端末装置の識別情報とフロータイプ情報とをキーとして用いて、このフローの制御情報の有効時間を記憶部270が記憶しているか否かを判断する。記憶していると判断した場合は、その有効時間に基づいて、新たな有効時間を設定する。記憶していないと判断した場合は、予め定められた有効時間を新たな有効時間として設定する。有効時間設定部250は、設定した有効時間を制御部220に出力する。
 管理テーブル更新部260は、制御部220から出力される通信要求元の端末装置の識別情報と、通信要求元の端末装置が接続されるスイッチノード装置の識別情報と、通信要求元の端末装置が接続されるポート番号と、問い合わせパケット送信時刻とを用いて、記憶部270の管理テーブルを更新する。
 記憶部270は、ネットワーク1の接続関係を示す情報を記憶している。また、記憶部270は、経路決定部230が生成する各フローの経路情報と、帯域制御・優先制御情報決定部240が生成する各フローの帯域制御情報および優先制御情報と、有効時間設定部250が生成する各フローの制御情報の有効時間とを含むフロー情報を記憶する。さらに、記憶部270は、後述する管理テーブルT21を記憶する。
 図3は、スイッチノード装置35の概略構成を示す構成図である。
 同図において、スイッチノード装置35は、ポートP1~P5と制御部320と記憶部330とを含んで構成される。
 ポートP1~P5は、端末装置42、43または他のスイッチノード装置33、34に接続されて、これらの装置との間でパケットの送受信を行う。
 本実施形態では、図1に示したように、スイッチノード装置35のポートP1がスイッチノード装置34のポートP3に接続され、ポートP2がスイッチノード装置33のポートP3に接続され、ポートP3が端末装置43に接続され、ポートP4が端末装置42に接続され、ポートP5は空き状態となっている。ポートP1~P5は受信したパケットを制御部320に出力し、制御部320から出力されるパケットを送信する。
 制御部320は、端末装置(例えば端末装置42)からの初回パケットがポートP1~P5のいずれか(例えばポートP4)から入力されると、この初回パケットに応じた問い合わせパケットを生成し、ポートP1~P5のいずれか(図4の例ではポートP2)を介してフロー制御装置21宛に送信する。
 記憶部330は各フローの制御情報を示すフローテーブルT35と、フロー制御装置21への経路(出力ポート番号)とを記憶する。
 スイッチノード装置31~34の概略構成もスイッチノード装置35と同様であり、説明を省略する。なお、スイッチノード装置31~35のポート数は図3に示した5つ以外であってもよい。また、スイッチノード装置毎にポート数が異なっていてもよい。
 図4は、スイッチノード装置に接続された端末装置が、通信を開始する際のデータの流れを示す図である。同図は、スイッチノード装置35に接続された端末装置42が、同じくスイッチノード装置35に接続された端末装置43と通信を行う場合のデータの流れを示している。
 まず、端末装置43と通信を行いたい端末装置42が、スイッチノード装置35に初回パケットを送信する(C41)。
 端末装置42からの初回パケットを受信したスイッチノード装置35は、フロー制御装置21に対して制御情報の送信を要求する問い合わせパケットを送信する(C42)。
 問い合わせパケットを受信したフロー制御装置21は、対象となるフロー(端末装置42と端末装置43との間の通信)のパケット転送可否を決定する。例えば、フロー制御装置21は、通信要求元や通信先のアドレスに基づくフィルタリングにより、パケットの転送可否を決定する。
 転送可と決定した場合は、フロー制御装置21は、通信経路や帯域制御情報や優先制御情報を含む制御情報と、この制御情報の有効時間と、を記憶部270(図2)に書き込み、また、この制御情報と有効時間とを示す応答パケットを、スイッチノード装置35に送信する(C43)。
 これらの情報は、問い合わせパケット受信時にフロー制御装置21が生成するようにしてもよいし、問い合わせパケット受信前に予めフロー制御装置21が生成しておき、受信した問い合わせパケットに応じて予め生成した情報の中から選択するようにしてもよい。
 また、フロー制御装置21は、通信要求元の端末装置(図4の例では端末装置42)の識別情報と、接続開始時刻とを対応付けて管理テーブルT21に書き込む。
 図4の管理テーブルT21の「42」は、端末装置42を示し、「HH1:MM1:SS1」は、この端末装置の接続開始時刻を示す。
 フロー制御装置21から転送可を示す応答パケットを受信した場合、スイッチノード装置35は、受信した応答パケットから制御情報と有効時間とを読み出し、フローテーブルT35に書き込む。スイッチノード装置35は、フローテーブルT35に書き込んだ制御情報に基づいて、このフローの通信転送を行う。
 図4のフローテーブルT35の「42-43」は、端末装置42と43との間の通信のフローであることを示し、「P4-P3」は、このフローがスイッチノード装置35のポートP4とP3とを経由することを示し、「(4)」は、この制御情報の有効時間が4秒であることを示す。
 フローテーブルには、さらに、通信プロトコルの情報や帯域制御情報や優先制御情報等も登録されるが、図示を省略している。
 図5は、有効時間が経過した際のデータの流れを示す図である。スイッチノード装置31~35は、それぞれ自身のフローテーブルT31~T35に示される有効時間毎に、フロー制御装置21に対する問い合わせおよびフローテーブルの更新を行う。
 具体的には、図5は、図4でスイッチノード装置35がフロー制御装置21に対して問い合わせパケットを送信してから、フローテーブルT35に示される有効時間4秒のうちに、端末装置42と43との間の通信が再度行われた場合に、スイッチノード装置35が行う問い合わせの様子を示す。
 この場合、スイッチノード装置35は、有効時間の4秒経過時に、フロー制御装置21に対して問い合わせパケットを送信する(C51)。
 これに対し、フロー制御装置21は、有効時間を前回の倍の8秒とする応答パケットを生成し、スイッチノード装置35に送信する(C52)。
 スイッチノード装置35は、応答パケットから制御情報と有効時間とを読み出してフローテーブルT35を更新する。これにより、フローテーブルT35に書き込まれた有効時間の情報が4秒から8秒に更新される。
 そして、初回の問い合わせ時と同様に、スイッチノード装置35は、フローテーブルT35に書き込んだ制御情報に基づいて通信転送を行う。
 以後、最後に問い合わせを行った後、有効時間内に、端末装置42と43との間の通信が再度行われれば、有効時間経過後にスイッチノード装置35がフロー制御装置21に問い合わせパケットを送信し、フロー制御装置21は、有効時間を前回の倍とする応答パケットを、スイッチノード装置35に送信する動作を繰り返す。
 一方、最後に問い合わせを行った後、有効時間内に、再度の通信が行われなかった場合は、スイッチノード装置35は、当該通信のフローの情報をフローテーブルT35から削除する。
 図6は、端末装置が接続するスイッチノード装置を変更する前の状態におけるデータの流れを示す図である。
 まず、端末装置41が、初回パケットをスイッチノード装置32に送信する(C61)。初回パケットを受信したスイッチノード装置32は、フロー制御装置21に問い合わせパケットを送信する(C62)。
 問い合わせパケットを受信したフロー制御装置は、図4の場合と同様に、有効時間を4秒とする応答パケットを生成し、スイッチノード装置32に送信する(C63)。スイッチノード装置32は、フローテーブルT32に制御情報と有効時間とを書き込み、制御情報に基づいてフローを制御する。
 また、スイッチノード装置32は、初回パケットをスイッチノード装置33に転送し、スイッチノード装置33は、スイッチノード装置32と同様に問い合わせパケットを送信して応答パケットを受信する。
 さらにスイッチノード装置33がスイッチノード装置35に初回パケットを転送し、スイッチノード装置35はスイッチノード装置32と同様に問い合わせパケットを送信して応答パケットを受信する。
 これにより、スイッチノード装置32、33、35を経由する通信経路が確立される。
 図7は、端末装置が接続するスイッチノード装置を変更した後の状態におけるデータの流れを示す図である。具体的には、同図は、図6でスイッチノード装置32、33、35を経由する通信経路が確立された後、有効時間経過前に、端末装置41が接続するスイッチノード装置をスイッチノード装置32からスイッチノード装置34に変更した場合に、スイッチノード装置34が行う問い合わせの様子を示す。
 まず、端末装置41は、新たな接続先のスイッチノード装置34に初回パケットを送信する(C71)。初回パケットを受信したスイッチノード装置34は、フロー制御装置21に問い合わせパケットを送信する(C72)。問い合わせパケットを受信したフロー制御装置21は、端末装置の接続先が変更されているか否かを判断して、管理テーブルを更新する。
 図7の例の場合、記憶部270が記憶する端末装置41の接続先スイッチノード装置は、移動前の接続先であるスイッチノード装置32である。これに対し、問い合わせパケットが示す接続先は、スイッチノード装置34である。
 このように記憶部270に記憶される接続先と問い合わせパケットが示す接続先とが異なる場合、フロー制御装置21は、端末装置が接続するスイッチノード装置を変更したと判断し、記憶部270の管理テーブルの、当該端末装置の接続開始時刻を、例えば、問い合わせパケット送信時刻に変更する。
 なお、更新する接続開始時刻は、問い合わせパケット送信時刻に限らず、例えば現在時刻(管理テーブルを更新する時点の時刻)等、端末装置が初回パケットを送信した時刻から現在時刻までのいずれかの時刻であればよい。
 次に、フロー制御装置21は、管理テーブルに基づいて、前回の有効時間内に通信要求元の端末装置または通信相手の端末装置のどちらか一方でも、接続するスイッチノード装置を変更したか否かを判定する。
 図7の例の場合、通信要求元の端末装置41の接続開始時刻から現在時刻までの経過時間が、前回の有効時間である4秒よりも短い。このことから、フロー制御装置21は、通信要求元の端末装置41が前回の有効時間内に、接続するスイッチノード装置を変更したと判定する。
 端末装置のどちらか一方でも、接続するスイッチノード装置を変更したと判定したフロー制御装置21は、有効時間を前回の半分(図7の例では2秒)とする応答パケットをスイッチノード装置34に送信する。
 スイッチノード装置34は、応答パケットから制御情報と有効時間とを読み出してフローテーブルT34に書き込み、この制御情報に基づいてフローの制御を行う。
 図7のフローテーブルT32の制御情報は、元の通信経路の制御情報が残っているものであり、図6と同じく有効時間が「(4)」(4秒)となっている。一方、フローテーブルT34の制御情報は、新たな通信経路の制御情報であり、有効時間が前回の半分の「(2)」(2秒)となっている。
 また、スイッチノード装置34は、スイッチノード装置35に初回パケットを転送し、スイッチノード装置35はスイッチノード装置34と同様に問い合わせパケットを送信して応答パケットを受信する。
 スイッチノード装置35は、受信した応答パケットから制御情報と有効時間とを読み出してフローテーブルT35に書き込み、書き込んだ制御情報に基づいて、このフローの転送制御を行う。これにより、スイッチノード装置34、35を経由する通信経路が確立される。
 元の通信経路については、スイッチノード32、34、35が、有効時間内にこの経路の通信がなかった場合に、それぞれフローテーブルT32、T34、T35から制御情報と有効時間とを削除し、これにより通信経路が消滅する。
 図8は、フロー制御装置21が問い合わせパケットを受信して応答パケットを送信する処理手順を示す図である。
 ステップS11において、制御部220は、送受信部210が問い合わせパケットを受信したか否かを判断する。受信したと判断した場合(ステップS11:YES)はステップS12に進み、受信しなかったと判断した場合(ステップS11:NO)はステップS20に進む。
 ステップS12において、制御部220は、問い合わせパケットから、通信要求元の端末装置の識別情報と、通信要求元の端末装置が接続されるスイッチノード装置の識別情報と、通信要求元の端末装置が接続されるポート番号と、通信相手の端末装置の識別情報とを読み出し、また、通信相手の端末装置が接続されるスイッチノード装置の識別情報と、通信相手の端末装置が接続されるポート番号と、フロータイプ情報とを判定する。
 ステップS13において、制御部220は、管理テーブル更新部260に通信要求元の端末装置の識別情報と、通信要求元の端末装置が接続されるスイッチノード装置の識別情報と、通信要求元の端末装置が接続されるポート番号と、問い合わせパケット送信時刻とを出力し、管理テーブル更新部260は、記憶部270の管理テーブルを更新する。
 具体的には、まず、管理テーブル更新部260は、通信要求元の端末装置の識別情報と、通信相手の端末装置の識別情報と、フロータイプ情報とをキーとして用いて、記憶部270から、このフローの経路情報を読み出す。
 次に、管理テーブル更新部260は、読み出した経路情報と通信要求元の端末装置が接続されるスイッチノード装置の識別情報および通信要求元の端末装置が接続されるポート番号とを比較して、通信要求元の端末装置が接続されるスイッチノード装置が変更されたか否かを判断する。
 そして、変更されたと判断した場合は、管理テーブル更新部260は、記憶部270の管理テーブルの、この端末装置の接続開始時刻を、問い合わせパケット送信時刻に変更する。一方、変更されていないと判断した場合は、何もしない。
 なお、この端末装置の接続開始時刻が、まだ管理テーブルに登録されていない場合は、管理テーブル更新部260は、問い合わせパケット送信時刻をこの端末装置の接続開始時刻として管理テーブルに新たに書き込む。
 ステップS14において、制御部220は、問い合わせパケットから読み出した情報を含むフロー情報が、既に記憶部270に書き込み済みか否かを判断する。
 書き込み済みと判断した場合(ステップS14:YES)はステップS31に進み、未だ書き込まれていないと判断した場合(ステップS14:NO)はステップS15に進む。
 ステップS15において、制御部220は、ステップS12で読み出した、または、判定した情報を帯域制御・優先制御情報決定部240に出力する。帯域制御・優先制御情報決定部240は、問い合わせパケットが示すフローに対する帯域制御情報と優先制御情報とを決定し、制御部220に出力する。
 ステップS16において、制御部220は、ステップS12で読み出した、または、判定した情報を経路決定部230に出力し、経路決定部230に出力し、経路決定部230は、問い合わせパケットが示すフローの経路を決定し、経路情報を制御部220に出力する。
 ステップS17において、有効時間設定部250は、このフローの制御情報の有効時間を、デフォルト値として予め定められた秒数の4秒に設定し、有効時間情報を制御部220に出力する。
 ステップS18において、制御部220は、ステップS12で読み出した、または、判定した情報と、帯域制御情報と、優先制御情報と、経路情報と、有効時間情報とを、このフローのフロー情報として記憶部270に書き込む。
 ステップS19において、制御部220は、応答パケット送信先のスイッチノード装置の出力ポート番号を、経路決定部230が生成した経路情報から読み出し、このポート番号や帯域制御情報や優先制御情報を含む制御情報と、有効時間情報とを示す応答パケットを生成し、生成した応答パケットをスイッチノード装置に送信する。
 ステップS20において、制御部220は、記憶部270に書き込まれているフロー情報の各々について、フロー情報が書きこまれてから現在までの経過時間と、フロー情報の有効時間とを比較し、有効時間を過ぎているフロー情報を削除する。
 このとき、スイッチノード装置31~35が問い合わせパケットを送信し、本来ならば有効時間を更新すべきフロー情報を、問い合わせパケット受信前に誤って削除しないよう、例えば、スイッチノード装置31~35が、フローテーブルT31~35から制御情報を削除する際に、削除することを示すパケットをフロー制御装置21に出力し、制御部220は、このパケットを受信したときに、該当するフロー情報を削除するようにする。
 ステップS20の後、ステップS11に戻る。
 ステップS31において、制御部220は、通信要求元の端末装置または通信相手の端末装置が、前回の有効時間内に、接続するスイッチノード装置を変更したか否かを判断する。
 具体的には、制御部220は、記憶部270の管理テーブルT21から、通信要求元の端末装置の接続開始時刻と通信相手の端末装置の接続開始時刻とを読み出し、また、記憶部270から、処理対象のフローのフロー情報の有効時間を読み出す。
 そして、制御部220は、通信要求元の端末装置の接続開始時刻から現在時刻までの経過時間と、上記有効時間とを比較し、経過時間のほうが長ければ変更していないと判断し、有効時間のほうが長ければ変更したと判断する。
 同様に、制御部220は、通信相手の端末装置の接続開始時刻から現在時刻までの経過時間と、有効時間とを比較し、経過時間のほうが長ければ変更していないと判断し、有効時間のほうが長ければ変更したと判断する。
 どちらか一方でも、端末装置が接続するスイッチノード装置を変更したと判断した場合(ステップS31:YES)はステップS41に進み、どちらも変更していないと判断した場合(ステップS31:NO)はステップS32に進む。
 ステップS32において、有効時間設定部250は、新しい有効時間を前回の有効時間の2倍に設定し、設定した有効時間を制御部220に出力する。
 ステップS33において、制御部220は、記憶部270に新しい有効時間を書き込む。また、制御部220は、記憶部270から、このフローの制御情報を読み出し、読み出した制御情報に基づいて応答パケットを生成し、生成した応答パケットを送受信部210を介してスイットノード装置に送信する。その後、ステップS20に進む。
 一方、ステップS41において、有効時間設定部250は、新しい有効時間を前回の有効時間の半分に設定し、設定した有効時間を制御部220に出力する。その後ステップS33に進む。
 図9は、スイッチノード装置31~35が個々のフローに対する制御を行う処理手順を示す図である。スイッチノード装置31~35は、端末装置から初回パケットを受信すると、同図の処理を開始する。
 ステップS101において、制御部320は、受信した初回パケットに応じた問い合わせパケットを生成し、ポートP1~P5のいずれかを介してフロー制御装置21に送信する。
 ステップS102において、ポートP1~P5のいずれかが応答パケットを受信して制御部320に出力し、制御部320は応答パケットから制御情報と有効時間とを読み出して記憶部330のフローテーブルT31~T35に書き込む。
 ステップS103において、制御部320は、制御情報にて出力ポートとされたポート(端末装置からのパケットの転送先)を介して初回パケットを転送する。
 ステップS104において、制御部320は、当該端末装置からのパケットを受信したか否かを判断する。受信したと判断した場合(ステップS104:YES)はステップS105に進み、受信していないと判断した場合(ステップS104:NO)はステップS106に進む。
 ステップS105において、制御部320は、フローテーブルT31~T35に書き込んだ制御情報に従って、制御情報にて出力ポートとされたポートを介して、受信したパケットを転送する。
 一方、ステップS106において、制御部320は、前回問い合わせから有効時間が経過したか否かを判断する。経過したと判断した場合(ステップS106:YES)はステップS111に進み、経過していないと判断した場合(ステップS106:NO)はステップS104に戻る。
 ステップS111において、制御部320は、有効時間内に端末装置からのパケットを受信・転送したか否かを判断する。受信・転送したと判断した場合(ステップS111:YES)はステップS121に進み、受信・転送していないと判断した場合(ステップS111:NO)はステップS112に進む。
 ステップS112において、制御部320は、対象となっているフローの制御情報と有効時間とを、記憶部330が記憶するフローテーブルT31~T35から削除する。その後スイッチノード装置31~35は、このノードの制御を行う処理を終了する。
 一方、ステップS121において、制御部320は、問い合わせパケットを生成し、フロー制御装置21宛に送信する。
 ステップS122において、ポートP1~P5のいずれかが応答パケットを受信して制御部320に出力し、制御部320は応答パケットから制御情報と有効時間とを読み出して記憶部330が記憶するフローテーブルT31~T35を更新する。その後ステップS104に戻る。
 このように、フロー制御装置21は、接続するスイッチノード装置を変更した端末装置のフローに対しては制御情報の有効時間を短く設定し、変更していない端末装置のフローに対しては制御情報の有効時間を長く設定するので、端末装置が接続するスイッチノード装置を変更する変更頻度に応じて、変更頻度の高い端末装置に対しては制御情報の有効時間を短く設定し、接続するスイッチノード装置を変更した際に、変更前の経路の残存時間を短くすることができる。
 変更前の経路の残存は、端末装置が接続するスイッチノード装置を変更する毎に生じるので、変更回数の多い、すなわち、変更頻度の高い端末装置の有効時間を短くすることで、より多くの変更前の経路の残存時間を短くすることができ、変更前の経路が残ることによる不具合のおそれを軽減できる。
 一方、変更頻度の低い端末装置に対しては制御情報の有効時間を長く設定し、ネットワークの通信量を抑えることができる。
 また、端末装置が接続するスイッチノード装置を実際に変更したか否かに基づいて有効時間を決定するので、接続するスイッチノード装置を変更可能な端末装置であっても、例えば、特定の机上でのみ使用されるノートパソコンなど、実際には特定のスイッチノード装置に固定的に接続される端末装置に対しては長い有効期間を設定してネットワークの通信量を抑えることができる。
 なお、有効時間設定部250が有効時間を設定する際に、例えば1秒よりも短くはしないなど、有効時間の最低時間を定めておいてもよい。これにより、極端に短い有効時間の設定を抑制して、ネットワークの通信量を抑えることができる。
 逆に、有効時間設定部が、例えば128秒よりも大きい有効時間にはしないなど、有効時間の最大時間を定めておいてもよい。これにより、極端に長い有効期間の設定を抑制して、端末装置が接続するスイッチノード装置を変更した際の元の経路の残存時間を抑えることができる。
 また、有効時間設定部250が次の有効時間を元の有効時間よりも短くする場合の次の有効時間は、元の有効時間の半分に限らない。例えば、元の有効時間より1秒短くするなど、予め定められた単位時間分だけ短くするようにしてもよい。
 この場合も、接続先の変更頻度が高い端末装置のフローに対しては、制御情報の有効時間を短く設定して、端末装置が接続先のスイッチノード装置を変更した際の元の経路の残存時間を抑えることができる。なお、この場合も、上記の場合と同様、有効時間の最低時間を定めておくことにより極端に短い有効時間の設定を抑制して、ネットワークの通信量を抑えることができる。
 また、有効時間設定部250が次の有効時間を元の有効時間よりも長くする場合の次の有効時間は、元の有効時間の2倍に限らない。例えば、元の有効時間より1秒長くするなど、予め定められた単位時間分だけ長くするようにしてもよい。
 この場合も、接続先の変更頻度が低い端末装置のフローに対しては、制御情報の有効時間を長く設定して、ネットワークの通信量を抑えることができる。なお、この場合も、上記の場合と同様、有効時間の最大時間を定めておくことにより極端に長い有効時間の設定を抑制して、端末装置が接続するスイッチノード装置を変更した際の元の経路の残存時間を抑えることができる。
 あるいは、図10に示すように、現在時刻と、前回移動時刻、すなわち、各端末装置が最後に接続先のスイッチノード装置を変更した時刻(1度も変更していない場合は通信開始時刻)との差分と、フローテーブルT31~T35の制御情報の有効時間との対応表を記憶部270が記憶し、有効時間設定部250がこの対応表に基づいて有効時間を設定するようにしてもよい。これによって、より細やかな有効時間設定を行うことができる。
 なお、フロー制御装置21の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
 また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
 また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
 さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。
 また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
 以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
 本発明は、フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラムに用いて好適である。例えば、オープンフロースイッチ技術を用いた移動通信ネットワークに適用することが考えられる。
1 ネットワークシステム
21 フロー制御装置
31~35 スイッチノード装置
41~43 端末装置
210 送受信部
220、320 制御部
230 経路決定部
240 帯域制御・優先制御情報決定部
250 有効時間設定部
260 管理テーブル更新部
270、330 記憶部
P1~P5 ポート

Claims (10)

  1.  1つ以上のスイッチノード装置に対して、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置であって、
     前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定部と、
     前記有効時間を経過する毎に前記制御情報を送信する送信部と、
     を具備することを特徴とするフロー制御装置。
  2.  前記有効時間設定部は、前記端末装置の少なくとも一方が接続するスイッチノード装置を変更したか否かを判定し、変更したと判定した場合には、変更しなかったと判定した場合よりも、前記有効時間を短く設定することを特徴とする請求項1に記載のフロー制御装置。
  3.  前記有効時間設定部は、前記有効時間中に前記端末装置のいずれもが接続するスイッチノード装置を変更しなかったと判定した場合は、前記有効時間の2倍の時間を次の有効時間とすることを特徴とする請求項2に記載のフロー制御装置。
  4.  前記有効時間設定部は、前記有効時間中に前記端末装置のいずれもが接続するスイッチノード装置を変更しなかったと判定した場合は、前記有効時間よりも予め定められた時間だけ増やした時間を次の有効時間とすることを特徴とする請求項2に記載のフロー制御装置。
  5.  前記有効時間設定部は、前記有効時間中に前記端末装置の少なくとも一方が接続するスイッチノード装置を変更したと判定した場合は、前記有効時間を当該有効時間の半分の時間に更新することを特徴とする請求項2に記載のフロー制御装置。
  6.  前記有効時間設定部は、前記有効時間中に前記端末装置の少なくとも一方が接続するスイッチノード装置を変更した判定した場合は、前記有効時間よりも予め定められた時間だけ減らした時間を次の有効時間とすることを特徴とする請求項2に記載のフロー制御装置。
  7.  各端末装置が特定のスイッチノード装置に接続してからの経過時間と前記有効時間との対応付けを示す対応表を記憶する記憶部をさらに具備し、
     前記有効時間設定部は、前記対応表に基づいて次の有効時間を設定する
     ことを特徴とする請求項1に記載のフロー制御装置。
  8.  1つ以上のスイッチノード装置と、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置とを具備するネットワークシステムであって、
     前記フロー制御装置は、
      前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定部と、
      前記有効時間を経過する毎に前記制御情報を送信する送信部と、
     を具備し、
     前記スイッチノード装置は、前記制御情報に基づいて、前記通信の制御を行う
     ことを特徴とするネットワークシステム。
  9.  1つ以上のスイッチノード装置に対して、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置のネットワーク制御方法であって、
     前記フロー制御装置は、
     前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定ステップと、
     前記有効時間を経過する毎に前記制御情報を送信する送信ステップと、
     を備えることを特徴とするネットワーク制御方法。
  10.  1つ以上のスイッチノード装置に対して、前記スイッチノード装置を介して、ある端末装置間で行われる一連の通信毎に、前記一連の通信に対する制御情報を送信するフロー制御装置に、
     前記一連の通信を行う端末装置が特定のスイッチノード装置を介しての通信を開始してからの経過時間に基づいて、前記経過時間が長いほど前記制御情報の有効時間を長く設定する有効時間設定ステップと、
     前記有効時間を経過する毎に前記制御情報を送信する送信ステップと、
     を実行させるプログラム。
PCT/JP2010/069993 2009-11-27 2010-11-10 フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム WO2011065227A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011543203A JP5614410B2 (ja) 2009-11-27 2010-11-10 フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム
US13/137,198 US9602397B2 (en) 2009-11-27 2011-07-27 Flow control apparatus, network system, network control method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009269959 2009-11-27
JP2009-269959 2009-11-27

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/137,198 Continuation US9602397B2 (en) 2009-11-27 2011-07-27 Flow control apparatus, network system, network control method, and program

Publications (1)

Publication Number Publication Date
WO2011065227A1 true WO2011065227A1 (ja) 2011-06-03

Family

ID=44066331

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/069993 WO2011065227A1 (ja) 2009-11-27 2010-11-10 フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム

Country Status (3)

Country Link
US (1) US9602397B2 (ja)
JP (1) JP5614410B2 (ja)
WO (1) WO2011065227A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013039083A1 (ja) * 2011-09-13 2013-03-21 日本電気株式会社 通信システム、制御装置および通信方法
WO2013042374A1 (en) * 2011-09-21 2013-03-28 Nec Corporation Communication apparatus, control apparatus, communication system, communication control method, and program
WO2013047705A1 (ja) * 2011-09-27 2013-04-04 日本電気株式会社 ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法
JP2013120982A (ja) * 2011-12-06 2013-06-17 Nec Corp 通信システム、制御装置、通信方法およびプログラム
WO2013168207A1 (en) * 2012-05-09 2013-11-14 Nec Corporation Communication system, communication method, and program

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013128514A1 (en) * 2012-03-02 2013-09-06 Nec Corporation Communication system, control apparatus, control method and program
US9967177B2 (en) * 2012-05-31 2018-05-08 Nec Corporation Control apparatus, communication system, switch control method and program
JP7198102B2 (ja) * 2019-02-01 2022-12-28 日本電信電話株式会社 処理装置及び移動方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06112944A (ja) * 1992-09-30 1994-04-22 Sharp Corp 情報通信装置
JP2004040552A (ja) * 2002-07-04 2004-02-05 Toshiba Corp 無線端末及び通信制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6795442B1 (en) * 1998-04-23 2004-09-21 Emulex Design & Manufacturing Corporation System and method for scheduling message transmission and processing in a digital data network
JP2005332250A (ja) * 2004-05-20 2005-12-02 Toshiba Corp データ処理装置およびフロー制御方法
TWI419514B (zh) * 2009-02-03 2013-12-11 Inst Information Industry 用於一感測網路之節點裝置、節點數量調整方法及其電腦程式產品

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06112944A (ja) * 1992-09-30 1994-04-22 Sharp Corp 情報通信装置
JP2004040552A (ja) * 2002-07-04 2004-02-05 Toshiba Corp 無線端末及び通信制御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
AKIO IIJIMA ET AL.: "Sentan Kankyo Gijutsu Cloud Computing Jidai no Data Center to Network no Sho Energy Gijutsu", NEC TECHNICAL JOURNAL, vol. 62, no. 3, 25 September 2009 (2009-09-25), pages 117 - 120 *
HIROSHI UENO ET AL.: "CPSY2009-36 A Study on Deployment of Network Appliance Functionalities in Datacenter Network", IEICE TECHNICAL REPORT, vol. 109, no. 296, 13 November 2009 (2009-11-13), pages 7 - 12, XP008166907 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013039083A1 (ja) * 2011-09-13 2013-03-21 日本電気株式会社 通信システム、制御装置および通信方法
JPWO2013039083A1 (ja) * 2011-09-13 2015-03-26 日本電気株式会社 通信システム、制御装置および通信方法
US9419910B2 (en) 2011-09-13 2016-08-16 Nec Corporation Communication system, control apparatus, and communication method
WO2013042374A1 (en) * 2011-09-21 2013-03-28 Nec Corporation Communication apparatus, control apparatus, communication system, communication control method, and program
WO2013047705A1 (ja) * 2011-09-27 2013-04-04 日本電気株式会社 ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法
CN103828313A (zh) * 2011-09-27 2014-05-28 日本电气株式会社 网络系统、前端单元和控制消息传输速率降低方法
JPWO2013047705A1 (ja) * 2011-09-27 2015-03-26 日本電気株式会社 ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法
US9608924B2 (en) 2011-09-27 2017-03-28 Nec Corporation Network system, front-end unit and control message transmission rate reducing method
CN103828313B (zh) * 2011-09-27 2017-05-24 日本电气株式会社 网络系统、前端单元和控制消息传输速率降低方法
JP2013120982A (ja) * 2011-12-06 2013-06-17 Nec Corp 通信システム、制御装置、通信方法およびプログラム
WO2013168207A1 (en) * 2012-05-09 2013-11-14 Nec Corporation Communication system, communication method, and program

Also Published As

Publication number Publication date
US9602397B2 (en) 2017-03-21
US20110286332A1 (en) 2011-11-24
JPWO2011065227A1 (ja) 2013-04-11
JP5614410B2 (ja) 2014-10-29

Similar Documents

Publication Publication Date Title
JP5614410B2 (ja) フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム
US7881200B2 (en) Method of controlling transmission rate and communication device using the same
US7526569B2 (en) Router and address identification information management server
US8837286B2 (en) Communication system, flow control device, flow table updating method, and program
US7068635B2 (en) Mobile network and IP packet transferring method
JP4226553B2 (ja) データ通信ネットワークにおけるルーティング
JP4462042B2 (ja) ルータ選択方法、ホームエージェント装置、移動ルータ、および移動ネットワークシステム
AU2015250230B2 (en) Session-based device configuration
JP2002176432A (ja) 通信中継装置、通信中継方法、および通信端末装置、並びにプログラム記憶媒体
JP2006254253A (ja) セッション中継装置
JP2003298635A (ja) ソースアドレス選択システム、ルータ装置、通信ノード及びソースアドレス選択方法
WO2000041363A1 (fr) Procede de transmission de donnees
KR101083480B1 (ko) 가입 통지 서비스를 구비하는 가상 접속
US20050175016A1 (en) Method, medium, and apparatus for connecting heterogeneous protocol nodes
JP4494279B2 (ja) マルチキャスト制御方法、マルチキャスト制御装置、及びコンテンツ属性情報管理装置、並びにプログラム
JP3972338B2 (ja) 移動通信装置及び移動通信プログラム
KR20040047251A (ko) 외부네트워크 인터페이스에 대한 최대전송단위 조절기능을 가지는 라우터 및 그 방법
US7747731B2 (en) Minimizing message processing latency in a communication network
JP2009278297A (ja) ゲートウエイ装置およびそれを含む通信システムならびに通信方法
JP2009246614A (ja) 通信システム、端末、中継装置、通信モード判定方法、及びプログラム
WO2013183231A1 (ja) 通信システム、通信制御方法、通信中継システム、及び、通信中継制御方法
US8165056B2 (en) Method and apparatus for processing a plurality of network addresses in a mobile terminal
CN114449051A (zh) 一种数据包的传输方法、装置以及通信设备
JP2008219490A (ja) ネットワークシステム及びアドレス変換方法
Kim et al. fFTP: a fast file transfer protocol for home N-screen platform

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011543203

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10833074

Country of ref document: EP

Kind code of ref document: A1