WO2020162185A1 - 負荷分散システム及び負荷分散方法 - Google Patents

負荷分散システム及び負荷分散方法 Download PDF

Info

Publication number
WO2020162185A1
WO2020162185A1 PCT/JP2020/002192 JP2020002192W WO2020162185A1 WO 2020162185 A1 WO2020162185 A1 WO 2020162185A1 JP 2020002192 W JP2020002192 W JP 2020002192W WO 2020162185 A1 WO2020162185 A1 WO 2020162185A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
packet transfer
transfer device
flow
load
Prior art date
Application number
PCT/JP2020/002192
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 US17/427,689 priority Critical patent/US11882040B2/en
Publication of WO2020162185A1 publication Critical patent/WO2020162185A1/ja

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/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2517Translation of Internet protocol [IP] addresses using port numbers

Definitions

  • the present invention relates to a load balancing system and a load balancing method.
  • ECMP Equal Cost Multi Path
  • ECMP routing is also known.
  • ECMP is a load balancing technique that evenly applies traffic to transfer paths that are of equal cost among the plurality of transfer paths described above.
  • bps bits per second
  • pps packet number
  • these transfer capacities have an upper limit value peculiar to the packet transfer device.
  • bps may be limited by the line rate of the physical NIC (Network Interface Card)
  • pps is packet processing of software such as OS (Operating System) and applications. It may be rate-controlled.
  • the flow means a packet (traffic) or a packet group having the same flow information.
  • the flow information is specified by the header information included in the packet, and means, for example, 5-tuple (source IP (Internet Protocol) address, destination IP address, source port number, destination port number, protocol type).
  • the traffic of video etc. has the property that there are many long packets. Therefore, when the traffic such as moving images is concentrated, the transfer capacity of the data amount is exhausted, while the transfer capacity of the number of packets has a margin.
  • traffic such as VoIP (Voice over Internet Protocol) and telemetering has the property that there are many short packets. For this reason, when traffic such as VoIP and telemetering is concentrated, the transfer capacity for the data amount has a margin, but the transfer capacity for the number of packets is exhausted.
  • VoIP Voice over Internet Protocol
  • FIG. 10 is a diagram illustrating an example of a load distribution system that distributes loads in consideration of flow characteristics (for example, Non-Patent Document 1).
  • the server #1 and the server #2 are the server 91.
  • CPE#1 and CPE#2 are in-house devices (Customer Premises Equipment: CPE) 92.
  • Network#1 to Network#3 are networks 93.
  • the server 91 hosts vCPE (Virtualized CPE) that virtualizes some functions of the CPE 92.
  • the packet transferred from Network #1 to Network #3 is transferred via CPE #1 and server #1 or server #2. That is, the packet is transferred via the CPE 92 as the first packet transfer device and the server 91 as the second packet transfer device.
  • vCPE Virtualized CPE
  • the load monitoring device 94 monitors the load of the server 91 from the viewpoint of bps and pps (1), and notifies the CPE 92 of the load state when the load of the server 91 exceeds a predetermined threshold (2).
  • the CPE 92 stores the load status of each server 91 based on the notification. Then, upon receiving the packet of the new flow from Network #1, the CPE 92 identifies the application of the new flow and predicts the packet length based on the identified application.
  • the CPE 92 predicts that the packet length is long, it selects the vCPE on the server 91 that has a low load in terms of bps, and when it predicts that the packet length is short, it causes a low load in terms of pps. Select vCPE on server 91. Then, the CPE 92 transfers the packet to the selected server 91 (3).
  • the first packet transfer device identifies the application of the new flow. Therefore, the load distribution system shown in FIG. 10 has a problem that the cost of the first packet transfer device increases.
  • the embodiment of the present invention is made in view of the above point, and it is possible to prevent the application of the new flow from being identified by the first packet transfer device and prevent an increase in the cost of the first packet transfer device. To aim.
  • the embodiment of the present invention is an identification means for identifying an application of a new flow when the load is high in the amount of data or the number of packets, and flow characteristics and data of the application identified by the identification means. Based on whether the load is high in the amount or the number of packets, it is determined whether the distribution of the new flow is necessary, and the determination means determines that the distribution of the new flow is necessary.
  • a determining means for determining a distribution destination, and a control means for controlling the packet of the new flow to be transferred via the distribution destination determined by the determining means.
  • the purpose is to eliminate the need to identify the application of the new flow by the first packet transfer device and prevent the cost increase of the first packet transfer device.
  • FIG. 1 is a diagram showing an example of the overall configuration of a load balancing system according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating an example of the route control when the second packet transfer apparatus according to the first embodiment determines that a new flow needs to be distributed.
  • FIG. 3 is a diagram illustrating an example of a functional configuration of the load distribution system according to the first embodiment.
  • FIG. 4 is a diagram for explaining an example of the flow of distribution processing by the second packet transfer device in the first embodiment.
  • FIG. 5 is a diagram for explaining an example of the flow of a route control process by the second packet transfer device in the first embodiment.
  • FIG. 1 is a diagram showing an example of the overall configuration of a load balancing system according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating an example of the route control when the second packet transfer apparatus according to the first embodiment determines that a new flow needs to be distributed.
  • FIG. 3 is a diagram illustrating an example of a functional configuration
  • FIG. 6 is a diagram illustrating an example of the route control when the second packet transfer apparatus according to the second embodiment determines that a new flow needs to be distributed.
  • FIG. 7 is a diagram illustrating an example of the functional configuration of the load distribution system according to the second embodiment.
  • FIG. 8 is a diagram illustrating an example of a sequence of route control processing according to the second embodiment.
  • FIG. 9 is a diagram illustrating an example of the hardware configuration of a computer.
  • FIG. 10 is a diagram illustrating an example of a load distribution system that distributes loads in consideration of flow characteristics.
  • the flow characteristics include “high bps flow” indicating that the flow has many long packets and “high pps flow” indicating that the flow has many short packets.
  • FIG. 1 is a diagram showing an example of the overall configuration of a load distribution system 1 according to an embodiment of the present invention.
  • the load distribution system 1 includes a load monitoring device 10, a first packet transfer device 20, and a second packet transfer device 30.
  • the load monitoring device 10 is, for example, a computer or a computer system, and monitors the traffic flow rate of the second packet transfer device 30 that is a load balancing target.
  • the load monitoring device 10 monitors the load of the second packet transfer device 30 from the viewpoint of bps and pps.
  • the first packet transfer device 20 is, for example, a router or the like, and transfers a packet from the network N1 side to the second packet transfer device 30.
  • the first packet transfer device 20 refers to a predetermined table used for load distribution, and refers the packet to one of the plurality of second packet transfer devices 30 to the second packet transfer device 30. To transfer.
  • the second packet transfer device 30 is, for example, a router or the like, and transfers the packet transferred from the first packet transfer device 20 to the network N2 side.
  • the second packet transfer device 30 identifies the application of the new flow when the load is high in the data amount (bps) or the number of packets (pps). Then, the second packet transfer device 30 determines whether or not a new flow needs to be distributed based on the type of high load and the flow characteristics of the identified application.
  • the type of high load indicates whether the load is high in terms of data amount or high in terms of the number of packets.
  • the second packet transfer device 30 determines the second packet transfer device 30 that is the distribution destination, and the determined second packet transfer device 30 is used. Route so that the packet of the new flow is transferred.
  • second packet transfer device #1 when distinguishing each of the plurality of second packet transfer devices 30, they are expressed as “second packet transfer device #1”, “second packet transfer device #2”, and the like.
  • the configuration of the load balancing system 1 shown in FIG. 1 is an example, and other configurations may be used.
  • the first packet transfer device 20 and the second packet transfer device 30 may be virtual routers or the like constructed on a computer by network virtualization technology. Further, there may be three or more second packet transfer devices 30.
  • Example 1 of the load distribution system 1 according to the embodiment of the present invention will be described.
  • FIG. 2 is a diagram illustrating an example of the route control when the second packet transfer device 30 according to the first embodiment determines that a new flow needs to be distributed.
  • the second packet transfer apparatus #1 acquires the “source IP (Internet Protocol) address of NAT (Network Address Translation)” of the second packet transfer apparatus #2 from the load monitoring apparatus 10. Yes (1).
  • the second packet transfer device #1 NATs the packet that triggers the start of the flow and transfers it to the network N2 (2).
  • the IP address acquired in (1) is used as the source IP address. To use.
  • the response packet is transmitted to the second packet transfer device #2.
  • the second packet transfer device #1 transfers the state information of the filter of the second packet transfer device #1 to the second packet transfer device so that the response packet cannot be stopped by the filter of the second packet transfer device #2. Share with device #2 (3).
  • As the status information of the filter there is status information of iptables, for example.
  • the second packet transfer device #2 normally drops packets that are not in the ESTABLISHED state.
  • the second packet transfer device #1 instructs the first packet transfer device 20 to set the transfer tunnel of the flow as the tunnel addressed to the second packet transfer device #2 (4).
  • the second packet transfer device 30 performs the route control using the source IP address of NAT or NAPT (Network Address Port Translation), so that the new flow is transferred to the other second packet transfer device 30. You can sort.
  • FIG. 3 is a diagram illustrating an example of a functional configuration of the load distribution system 1 according to the first embodiment.
  • the load monitoring device 10 includes a flow rate monitoring unit 101, a low load list transmission unit 102, and an IP address transmission unit 103.
  • the flow rate monitoring unit 101 monitors the traffic flow rate of the second packet transfer device 30 from the statistical information of the second packet transfer device 30 from the viewpoints of the data amount and the number of packets, respectively. That is, the flow rate monitoring unit 101 obtains the amount of data and the number of packets as the monitoring result for each second packet transfer device 30.
  • the low load list transmission unit 102 transmits the list of the low load second packet transfer devices 30 in response to a request from the second packet transfer device 30.
  • the low load list transmission unit 102 transmits the list of the second packet transfer devices 30 having a low load in terms of “data amount” when the “data amount” is specified and requested as a viewpoint.
  • the low load list transmission unit 102 transmits the list of the second packet transfer devices 30 having a low load in terms of the “number of packets” when the “number of packets” is designated and requested as a viewpoint.
  • the low load list transmission unit 102 for example, creates and transmits a list of the second packet transfer devices 30 in order of increasing load.
  • the IP address transmission unit 103 responds to the request from the second packet transfer device 30 and transmits the source IP address of the NAT of the second packet transfer device 30 designated by the request.
  • the second packet transfer device 30 includes an identification unit 301, a determination unit 302, a determination unit 303, and a control unit 304.
  • the identifying unit 301 identifies the application of the new flow and identifies the flow characteristics of the new flow when the load is high in the amount of data or the number of packets.
  • the identifying unit 301 identifies the application of the new flow using, for example, 5-tuple of the packet or L7 information (L7 header information or the like).
  • the determination unit 302 determines whether or not a new flow needs to be distributed based on the type of high load and the flow characteristic specified by the identification unit 301. When the load is high in terms of data amount and the flow characteristic is a high bps flow, the determination unit 302 determines that a new flow needs to be distributed, the load is high in terms of the number of packets, and the flow characteristic is high pps flow. If it is, it is determined that distribution of a new flow is necessary.
  • the deciding unit 303 acquires the list of the low-load second packet transfer devices 30 from the load monitoring device 10 when the deciding unit 302 decides that the distribution of a new flow is necessary.
  • the determining unit 303 requests the load monitoring apparatus 10 for a low load list by designating "data amount" as a viewpoint.
  • the determination unit 303 requests the load monitoring apparatus 10 for a low load list by designating the "number of packets" as a viewpoint.
  • the determining unit 303 selects one second packet transfer device 30 from the list of the second packet transfer devices 30 having a low load, and determines the selected second packet transfer device 30 as the distribution destination. ..
  • the determining unit 303 determines, for example, the second packet transfer device 30 at the head of the list as a distribution destination.
  • the control unit 304 acquires the source IP address of the NAT of the second packet transfer device 30 determined as the distribution destination from the load monitoring device 10, and uses the acquired source IP address to start the packet that triggers the flow. To the network N2. Then, the control unit 304 shares the status information of the filter of the own device with the second packet transfer device 30 which is determined as the distribution destination. Then, the control unit 304 instructs the first packet transfer device 20 to set the transfer tunnel of the new flow as the tunnel addressed to the second packet transfer device 30 determined as the distribution destination.
  • FIG. 4 is a diagram for explaining an example of the flow of the distribution processing by the second packet transfer device 30 in the first embodiment.
  • the second packet transfer device 30 receives a packet (step S101) and determines whether or not the load is high (step S102). Here, the second packet transfer device 30 determines whether or not the load is high in terms of data amount and whether or not it is high in terms of the number of packets.
  • the second packet transfer device 30 determines whether or not the received packet is the packet that triggers the start of the flow when the load is high in terms of the amount of data or the number of packets (step S103).
  • the second packet transfer device 30 identifies the application of the flow (step S104).
  • the second packet transfer device 30 determines whether or not distribution is necessary based on the flow characteristics of the identified application and the type of high load (step S105).
  • the second packet transfer device 30 determines that distribution is necessary when the load is high in terms of data amount and the flow characteristic of the identified application is a high bps flow. Also, the second packet transfer device 30 determines that distribution is necessary when the load is high in terms of the number of packets and the flow characteristic is a high pps flow.
  • the load monitoring device 10 creates a list of the low-load second packet transfer devices 30 based on the identified flow characteristics of the application. It is acquired (step S106).
  • the second packet transfer device 30 determines the second packet transfer device 30 as the distribution destination based on the acquired list (step S107), and the flow flows to the determined second packet transfer device 30.
  • the route is controlled so as to guide (step S108).
  • step S105 when it is determined in step S105 that distribution is unnecessary, when it is determined in step S103 that the packet does not trigger the start of the flow, and when it is determined in step S102 that the load is not high, the second packet transfer device 30 The packet is transmitted to the network N2 (step S109).
  • the second packet transfer device 30 identifies the application of the new flow, and determines the necessity of distribution of the new flow based on the flow characteristics of the identified application and the type of high load. Then, when the second packet transfer device 30 determines that the distribution is necessary, the second packet transfer device 30 controls the route so that the packet is transmitted to the distribution destination. Therefore, the load distribution system 1 can eliminate the need for the first packet transfer device 20 to identify the application of the new flow.
  • FIG. 5 is a diagram for explaining an example of the flow of the route control process by the second packet transfer device 30 in the first embodiment.
  • the process shown in FIG. 5 is a process corresponding to step S108 shown in FIG.
  • the control unit 304 of the second packet transfer device 30 acquires the source IP address of the NAT of the second packet transfer device 30 that is the distribution destination (step S201).
  • control unit 304 NATs the packet that triggers the start of the flow using the acquired source IP address and transfers it to the network N2 (step S202).
  • control unit 304 shares the status information of the filter of the own device with the second packet transfer device 30 of the distribution destination (step S203).
  • control unit 304 instructs the first packet transfer device 20 to set the transfer destination of the flow to the second packet transfer device 30 that is the distribution destination (step S204).
  • control unit 304 performs the route control that guides the flow to the second packet transfer device 30 that is the distribution destination, so that the first packet transfer device 20 uses the second packet transfer device that is the distribution destination. Packets can be forwarded to 30.
  • the identification unit 301 of the second packet transfer device 30 identifies the application of the new flow. Then, the determination unit 302 determines whether or not a new flow needs to be distributed based on the flow characteristics of the application and the type of high load. Then, when the distribution of the new flow is necessary, the determination unit 303 acquires the list of the low load second packet transfer devices 30 from the load monitoring device 10 and determines the second packet transfer device 30 as the distribution destination. To do. Then, the control unit 304 performs route control that guides the flow to the second packet transfer device 30 of the distribution destination. This can eliminate the need for the first packet transfer device 20 to identify the application of the new flow. Therefore, it is possible to prevent the cost of the first packet transfer device 20 from increasing.
  • the determination unit 302 determines that distribution is necessary when the flow characteristic of the application of the new flow is a high bps flow and the load on the data amount is high. Further, the determination unit 302 determines that distribution is necessary when the flow characteristic of the application of the new flow is a high pps flow and the load on the number of packets is high. Therefore, the second packet transfer device 30 can perform distribution according to the flow characteristics of the new flow.
  • control unit 304 acquires from the load monitoring device 10 the source IP address used by the second packet transfer device 30 of the distribution destination for NAT, and NATs the acquired source IP address to trigger a new flow. To the network N2. Then, the control unit 304 shares the filter state information with the second packet transfer device 30 of the distribution destination, and transfers the packet of the new flow to the second packet transfer device 30 of the distribution destination with respect to the first packet transfer device 20. Instruct the device 30 to transmit. Therefore, the control unit 304 can guide the second packet transfer device 30 of the distribution destination so that the new flow flows.
  • Example 2 of the load distribution system 1 according to the embodiment of the present invention will be described.
  • differences from the first embodiment will be mainly described, and description of the same components as in the first embodiment will be appropriately omitted.
  • FIG. 6 is a diagram illustrating an example of the route control when the second packet transfer device 30 according to the second embodiment determines that a new flow needs to be distributed.
  • the second packet transfer apparatus #1 acquires, from the load monitoring apparatus 10, information necessary for tunnel connection with the second packet transfer apparatus #2 (1).
  • the second packet transfer device #1 establishes a tunnel connection with the second packet transfer device #2 based on the acquired information (2). Then, the second packet transfer device #1 transfers the packet that triggers the start of the flow to the second packet transfer device #2 via the established tunnel connection (3).
  • the second packet transfer device #2 NATs the packet that triggers the start of the flow using its own IP address and transfers it to the network N2 (4). As a result, the response packet is transmitted to the packet transfer device #2.
  • the second packet transfer device #1 instructs the first packet transfer device 20 to set the transfer tunnel of the flow as the tunnel addressed to the second packet transfer device #2 (5).
  • the second packet transfer device 30 performs the route control by using the tunnel with the second packet transfer device 30 that is the distribution destination, so that the new flow is transmitted to the other second packet transfer device 30. It can be distributed to the packet transfer devices 30.
  • FIG. 7 is a diagram illustrating an example of a functional configuration of the load distribution system 1 according to the second embodiment.
  • the load monitoring device 10 includes a flow rate monitoring unit 101 and a connection information transmission unit 104.
  • the connection information transmission unit 104 responds to the request from the second packet transfer device 30 according to the second embodiment, and transmits the information necessary for the tunnel connection of the second packet transfer device 30 designated by the request.
  • the second packet transfer device 30 also includes an identification unit 301, a determination unit 302, a determination unit 303, and a control unit 305.
  • the control unit 305 acquires, from the load monitoring device 10, information necessary for tunnel connection with the second packet transfer device 30 that is the distribution destination, and based on the acquired information, the second packet transfer device 30 that is the distribution destination. Establish a tunnel connection with. Then, the control unit 305 transfers the packet that triggers the start of the flow to the second packet transfer device 30 of the distribution destination via the established tunnel connection. Then, the control unit 305 instructs the first packet transfer device 20 to set the transfer tunnel of the flow as the tunnel addressed to the second packet transfer device 30 of the distribution destination.
  • FIG. 8 is a diagram illustrating an example of a sequence of route control processing according to the second embodiment.
  • the second packet transfer device #1 acquires information necessary for tunnel connection with the second packet transfer device #2 from the load monitoring device 10 (step S301), and based on the acquired information, A tunnel connection with the second packet transfer device #2 is established (step S302).
  • the second packet transfer device #1 transfers the packet that triggers the start of the flow to the second packet transfer device #2 via the established tunnel connection (step S303).
  • the second packet transfer device #2 NATs the packet that triggers the start of the flow using its own IP address and transfers it to the network N2 (step S304).
  • the second packet transfer device #1 instructs the first packet transfer device 20 to set the transfer tunnel of the flow as the tunnel to the second packet transfer device 30 of the distribution destination ( Step S305).
  • the second packet transfer device 30 tunnels the new flow to the other second packet transfer device 30 when the new flow is distributed to the other second packet transfer device 30. Make a connection. Then, the second packet transfer device 30 in the second embodiment transmits a packet that triggers a new flow to the second packet transfer device 30 that is the distribution destination via the established tunnel connection. Then, the second packet transfer device 30 in the second embodiment instructs the first packet transfer device 20 to set the transfer tunnel of the new flow to the destination packet transfer destination second packet transfer device 30 tunnel. To do. Therefore, the second packet transfer device 30 in the second embodiment can guide the new packet flow to the second packet transfer device 30 of the distribution destination.
  • FIG. 9 is a diagram illustrating an example of the hardware configuration of the computer 500.
  • the computer 500 shown in FIG. 9 includes a CPU (Central Processing Unit) 501, a RAM (Random Access Memory) 502, a ROM (Read Only Memory) 503, an external I/F 504, a communication I/F 505, and an auxiliary storage device. 506 and. These pieces of hardware are connected to each other via a bus B so that they can communicate with each other.
  • a CPU Central Processing Unit
  • RAM Random Access Memory
  • ROM Read Only Memory
  • an external I/F 504 external I/F
  • communication I/F 505 auxiliary storage device.
  • the CPU 501 is an arithmetic unit that reads programs and data from the ROM 503, the auxiliary storage device 506, and the like onto the RAM 502 and executes processing.
  • RAM 502 is a volatile semiconductor memory that temporarily holds programs and data.
  • the ROM 503 is a non-volatile semiconductor memory that can retain programs and data even when the power is turned off.
  • the ROM 503 stores, for example, OS (Operating System) settings, network settings, and the like.
  • the external I/F 504 is an interface with an external device.
  • the external device includes a recording medium 504a and the like.
  • the computer 500 can read and write the recording medium 504a and the like via the external I/F 504.
  • the recording medium 504a includes, for example, a flexible disk, a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USB (Universal Serial Bus) memory card.
  • a flexible disk for example, a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USB (Universal Serial Bus) memory card.
  • the communication I/F 505 is an interface for communicating with other devices.
  • the first packet transfer device 20 and the second packet transfer device 30 have a plurality of communication I/Fs 505.
  • the auxiliary storage device 506 is, for example, a HDD (Hard Disk Drive) or SSD (Solid State Drive), and is a non-volatile storage device that stores programs and data.
  • the programs and data stored in the auxiliary storage device 506 include, for example, an OS and application programs that implement various functions on the OS.
  • the load monitoring device 10, the first packet transfer device 20, and the second packet transfer device 30 execute various processes described above by using one or more computers 500 shown in FIG. be able to.
  • each functional unit of the load monitoring device 10 is realized by a process that causes the CPU 501 or the like to execute one or more programs stored in the auxiliary storage device 506.
  • each functional unit included in the second packet transfer device 30 is realized by a process to be executed by the CPU 501 or the like by one or more programs stored in the auxiliary storage device 506, a communication I/F 505, or the like.
  • the load monitoring device 10 may include at least one of a display device such as a display and an input device such as a keyboard and a mouse.
  • the packet transfer device that performs load balancing is the first packet transfer device 20 and the packet transfer device that is the object of load balancing is the second packet transfer device 30. It does not mean that the packet transfer device that functions as the first packet transfer device 20 or the second packet transfer device 30 always functions. For example, the same packet transfer device may function as the first packet transfer device 20 and may also function as the second packet transfer device 30.

Landscapes

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

Abstract

高負荷になると、第2のパケット転送装置(30)の識別部(301)が、新規フローのアプリケーションを識別する。そして、判定部(302)が、アプリケーションのフロー特性と高負荷の種別に基づいて新規フローの振り分けが必要か否かを判定する。そして、新規フローの振り分けが必要な場合、決定部(303)が、負荷監視装置(10)から低負荷の第2のパケット転送装置(30)のリストを取得して、振り分け先の第2のパケット転送装置(30)を決定する。そして、制御部(304)が、振り分け先の第2のパケット転送装置(30)にフローが流れるように誘導する経路制御を行う。

Description

負荷分散システム及び負荷分散方法
 本発明は、負荷分散システム及び負荷分散方法に関する。
 ルータ等のパケット転送装置の負荷を分散させる技術が従来から知られている。例えば、パケットの転送先として複数のパケット転送装置と複数の転送経路とを用意し、それぞれの転送経路にトラヒックを均等に印加することで、パケット転送装置の負荷を分散する技術が知られている。また、このような負荷分散技術として、ECMP(Equal Cost Multi Path)又はECMPルーティングと呼ばれる技術も知られている。ECMPは、上述した複数の転送経路のうち、等コストとなる転送経路にトラヒックを均等に印加する負荷分散技術である。
 ECMPを用いた負荷分散システムにおいて、パケット転送装置の出力物理ポートの出力バッファを監視し、この出力バッファの使用量又はパケット流量が閾値を超えた場合、転送経路を切り替える技術が知られている(例えば、特許文献1)。
 パケット転送装置における転送容量の指標として、bps(bits per second)で表されるデータ量の転送容量と、pps(packets per second)で表されるパケット数の転送容量とがある。また、これらの転送容量には、パケット転送装置に固有の上限値がある。例えば、パケット転送装置をネットワーク仮想化技術により実現した場合、bpsは物理NIC(Network Interface Card)のラインレートに律速されることがあり、ppsはOS(Operating System)やアプリケーション等のソフトウェアのパケット処理速度に律速されることがある。
 ECMPでは、フロー特性、すなわちロングパケット中心のフローかショートパケット中心のフローかを考慮していないため、パケット転送装置が転送するパケット長に偏りがある場合に、パケット転送装置の転送容量を最大限に活用することができないことがある。ここで、フローとは、フロー情報が同一のパケット(トラヒック)又はパケット群のことを言う。フロー情報は、パケットに含まれるヘッダ情報により特定され、例えば、5-tuple(送信元IP(Internet Protocol)アドレス、宛先IPアドレス、送信元ポート番号、宛先ポート番号、プロトコルタイプ)のことを言う。
 例えば、動画等のトラヒックはロングパケットが多いという性質がある。このため、動画等のトラヒックが集中した場合、データ量の転送容量は枯渇する一方で、パケット数の転送容量には余裕がある状態となる。他方で、例えば、VoIP(Voice over Internet Protocol)やテレメトリング等のトラヒックはショートパケットが多いという性質がある。このため、VoIPやテレメトリング等のトラヒックが集中した場合、データ量の転送容量には余裕がある一方で、パケット数の転送容量が枯渇する状態となる。
 そこで、フロー特性を考慮して負荷を分散する技術がある。図10は、フロー特性を考慮して負荷を分散する負荷分散システムの一例を示す図である(例えば、非特許文献1)。図10において、サーバ#1及びサーバ#2はサーバ91である。CPE#1及びCPE#2は宅内装置(Customer Premises Equipment:CPE)92である。Network#1~Network#3はネットワーク93である。
 サーバ91は、CPE92の一部機能を仮想化するvCPE(Virtualized CPE)をホストする。Network#1からNetwork#3へ転送されるパケットは、CPE#1と、サーバ#1又はサーバ#2とを介して転送される。すなわち、パケットは、第1のパケット転送装置としてのCPE92と第2のパケット転送装置としてのサーバ91を介して転送される。
 負荷監視装置94は、bpsとppsの観点でサーバ91の負荷を監視し(1)、サーバ91の負荷が所定の閾値を超えるとCPE92に負荷状態を通知する(2)。CPE92は、通知に基づいて各サーバ91の負荷状態を記憶する。そして、CPE92は、Network#1から新規フローのパケットを受信すると、新規フローのアプリケーションを識別し、識別したアプリケーションに基づいてパケット長を予測する。
 そして、CPE92は、パケット長が長いと予測した場合には、bpsの観点で低負荷なサーバ91上のvCPEを選択し、パケット長が短いと予測した場合には、ppsの観点で低負荷なサーバ91上のvCPEを選択する。そして、CPE92は、選択したサーバ91にパケットを転送する(3)。
特開2004-350078号公報
木村 明寛、宮本 克真、河野 伸也、土屋 英雄、岡田 昭宏、「フロー特性に基づくvCPEサーバの負荷分散方式」、電子情報通信学会2018年総合大会講演論文集,Vol.2018年_通信(2),p.90 b-6-90
 図10に示した負荷分散システムでは、第1のパケット転送装置が新規フローのアプリケーションを識別する。このため、図10に示した負荷分散システムには、第1のパケット転送装置のコストが増加する問題がある。
 本発明の実施の形態は、上記の点に鑑みてなされたもので、第1のパケット転送装置による新規フローのアプリケーションの識別を不要とし、第1のパケット転送装置のコストの増加を防ぐことを目的とする。
 上記目的を達成するため、本発明の実施の形態は、データ量又はパケット数において負荷が高い場合に新規フローのアプリケーションを識別する識別手段と、前記識別手段により識別されたアプリケーションのフロー特性とデータ量又はパケット数のいずれにおいて負荷が高いかと基づいて、前記新規フローの振り分けが必要であるか否かを判定する判定手段と、前記判定手段により前記新規フローの振り分けが必要であると判定された場合に振り分け先を決定する決定手段と、前記決定手段により決定された振り分け先を介して前記新規フローのパケットが転送されるように制御する制御手段と、を有することを特徴とする。
 第1のパケット転送装置による新規フローのアプリケーションの識別を不要とし、第1のパケット転送装置のコストの増加を防ぐことを目的とする。
図1は、本発明の実施の形態における負荷分散システムの全体構成の一例を示す図である。 図2は、実施例1における第2のパケット転送装置が新規フローの振り分けが必要であると判定した場合の経路制御の一例を示す図である。 図3は、実施例1における負荷分散システムの機能構成の一例を示す図である。 図4は、実施例1における第2のパケット転送装置による振り分け処理の流れの一例を説明するための図である。 図5は、実施例1における第2のパケット転送装置による経路制御処理の流れの一例を説明するための図である。 図6は、実施例2における第2のパケット転送装置が新規フローの振り分けが必要であると判定した場合の経路制御の一例を示す図である。 図7は、実施例2における負荷分散システムの機能構成の一例を示す図である。 図8は、実施例2における経路制御処理のシーケンスの一例を説明するための図である。 図9は、コンピュータのハードウェア構成の一例を示す図である。 図10は、フロー特性を考慮して負荷を分散する負荷分散システムの一例を示す図である。
 以下、本発明の実施の形態について説明する。なお、以降では、フロー特性には、ロングパケットが多いフローであることを示す「高bpsフロー」と、ショートパケットが多いフローであることを示す「高ppsフロー」とがあるものとする。
 <全体構成>
 まず、本発明の実施の形態における負荷分散システム1の全体構成について、図1を参照しながら説明する。図1は、本発明の実施の形態における負荷分散システム1の全体構成の一例を示す図である。
 図1に示すように、本発明の実施の形態における負荷分散システム1には、負荷監視装置10と、第1のパケット転送装置20と、第2のパケット転送装置30とが含まれる。
 負荷監視装置10は、例えばコンピュータ又はコンピュータシステム等であり、負荷分散対象である第2のパケット転送装置30のトラヒック流量を監視する。負荷監視装置10は、bpsとppsの観点で第2のパケット転送装置30の負荷を監視する。
 第1のパケット転送装置20は、例えばルータ等であり、ネットワークN1側からのパケットを第2のパケット転送装置30に転送する。このとき、第1のパケット転送装置20は、負荷分散に用いられる所定のテーブルを参照して、複数の第2のパケット転送装置30のうちの1台の第2のパケット転送装置30に当該パケットを転送する。
 第2のパケット転送装置30は、例えばルータ等であり、第1のパケット転送装置20から転送されたパケットをネットワークN2側に転送する。第2のパケット転送装置30は、データ量(bps)又はパケット数(pps)において負荷が高い場合に新規フローのアプリケーションを識別する。そして、第2のパケット転送装置30は、高負荷の種別と識別したアプリケーションのフロー特性とに基づいて、新規フローの振り分けが必要であるか否かを判定する。ここで、高負荷の種別とは、データ量の点で高負荷であるかパケット数の点で高負荷であるかを示す。
 そして、第2のパケット転送装置30は、新規フローの振り分けが必要であると判定した場合に振り分け先の第2のパケット転送装置30を決定し、決定した第2のパケット転送装置30を介して新規フローのパケットが転送されるように経路制御する。
 なお、以降では、複数の第2のパケット転送装置30の各々を区別する場合は、「第2のパケット転送装置#1」、「第2のパケット転送装置#2」等と表す。また、図1に示す負荷分散システム1の構成は一例であって、他の構成であっても良い。例えば、第1のパケット転送装置20及び第2のパケット転送装置30は、ネットワーク仮想化技術によってコンピュータ上等に構築された仮想的なルータ等であっても良い。また、第2のパケット転送装置30は、3台以上あっても良い。
 (実施例1)
 以降では、本発明の実施の形態における負荷分散システム1の実施例1について説明する。
 <経路制御>
 まず、実施例1における第2のパケット転送装置30が新規フローの振り分けが必要であると判定した場合の経路制御について図2を参照しながら説明する。図2は、実施例1における第2のパケット転送装置30が新規フローの振り分けが必要であると判定した場合の経路制御の一例を示す図である。図2に示すように、第2パケット転送装置#1は、負荷監視装置10から、第2のパケット転送装置#2の「NAT(Network Address Translation)の送信元IP(Internet Protocol)アドレス」を取得する(1)。
 そして、第2のパケット転送装置#1は、フローの開始契機となるパケットをNATしてネットワークN2に転送する(2)が、このとき、送信元IPアドレスとして、(1)で取得したIPアドレスを用いる。これにより、応答パケットは第2のパケット転送装置#2に宛てて送信される。
 そして、第2のパケット転送装置#1は、応答パケットが第2のパケット転送装置#2のフィルタに止められないよう、第2のパケット転送装置#1のフィルタの状態情報を第2のパケット転送装置#2と共有する(3)。フィルタの状態情報としては、例えばiptablesの状態情報がある。第2のパケット転送装置#2は、通常はESTABLISHED状態にないパケットはドロップする。
 そして、第2のパケット転送装置#1は、第1のパケット転送装置20に対して、当該フローの転送用トンネルを第2のパケット転送装置#2宛トンネルとするよう指示する(4)。
 このように、第2のパケット転送装置30は、NAT又はNAPT(Network Address Port Translation)の送信元IPアドレスを用いて経路制御を行うことで、新規フローを他の第2のパケット転送装置30に振り分けることができる。
 <機能構成>
 次に、実施例1における負荷分散システム1の機能構成について、図3を参照しながら説明する。図3は、実施例1における負荷分散システム1の機能構成の一例を示す図である。
 図3に示すように、実施例1における負荷監視装置10は、流量監視部101と、低負荷リスト送信部102と、IPアドレス送信部103とを有する。
 流量監視部101は、第2のパケット転送装置30の統計情報から、これらの第2のパケット転送装置30のトラヒック流量をデータ量及びパケット数それぞれの観点で監視する。すなわち、流量監視部101は、各第2のパケット転送装置30について、監視結果として、データ量及びパケット数を得る。
 低負荷リスト送信部102は、第2のパケット転送装置30からの依頼に応答して、低負荷の第2のパケット転送装置30のリストを送信する。低負荷リスト送信部102は、観点として「データ量」を指定されて依頼された場合には、「データ量」の点で低負荷の第2のパケット転送装置30のリストを送信する。また、低負荷リスト送信部102は、観点として「パケット数」を指定されて依頼された場合には、「パケット数」の点で低負荷の第2のパケット転送装置30のリストを送信する。低負荷リスト送信部102は、例えば、負荷の低い順に第2のパケット転送装置30のリストを作成して送信する。
 IPアドレス送信部103は、第2のパケット転送装置30からの依頼に応答して、依頼で指定された第2のパケット転送装置30のNATの送信元IPアドレスを送信する。
 また、図3に示すように、実施例1における第2のパケット転送装置30は、識別部301と、判定部302と、決定部303と、制御部304とを有する。
 識別部301は、データ量又はパケット数において負荷が高い場合に、新規フローのアプリケーションを識別し、当該新規フローのフロー特性を特定する。識別部301は、例えば、パケットの5-tupleやL7情報(L7のヘッダ情報等)を用いて新規フローのアプリケーションを識別する。
 判定部302は、高負荷の種別と識別部301により特定されたフロー特性とに基づいて、新規フローの振り分けが必要か否かを判定する。判定部302は、データ量の点で負荷が高く、フロー特性が高bpsフローである場合に、新規フローの振り分けが必要と判定し、パケット数の点で負荷が高く、フロー特性が高ppsフローである場合に、新規フローの振り分けが必要と判定する。
 決定部303は、判定部302により新規フローの振り分けが必要と判定された場合に、負荷監視装置10から低負荷の第2のパケット転送装置30のリストを取得する。決定部303は、新規フローのフロー特性が高bpsフローである場合には、観点として「データ量」を指定して負荷監視装置10に低負荷のリストを依頼する。決定部303は、新規フローのフロー特性が高ppsフローである場合には、観点として「パケット数」を指定して負荷監視装置10に低負荷のリストを依頼する。
 そして、決定部303は、低負荷の第2のパケット転送装置30のリストの中から1つ第2のパケット転送装置30を選択し、選択した第2のパケット転送装置30を振り分け先として決定する。決定部303は、例えば、リストの先頭の第2のパケット転送装置30を振り分け先として決定する。
 制御部304は、振り分け先として決定した第2のパケット転送装置30のNATの送信元IPアドレスを負荷監視装置10から取得し、取得した送信元IPアドレスを用いて、フローの開始契機となるパケットをNATしてネットワークN2に転送する。そして、制御部304は、自装置のフィルタの状態情報を振り分け先として決定した第2のパケット転送装置30と共有する。そして、制御部304は、第1のパケット転送装置20に対して、新規フローの転送用トンネルを、振り分け先として決定した第2のパケット転送装置30宛てトンネルとするように指示する。
 <振り分け処理>
 以降では、実施例1における第2のパケット転送装置30による振り分け処理について、図4を参照しながら説明する。図4は、実施例1における第2のパケット転送装置30による振り分け処理の流れの一例を説明するための図である。
 まず、第2のパケット転送装置30は、パケットを受信し(ステップS101)、高負荷であるか否かを判定する(ステップS102)。ここで、第2のパケット転送装置30は、データ量の点で高負荷であるか否か、及び、パケット数の点で高負荷であるか否かをそれぞれ判定する。
 次に、第2のパケット転送装置30は、データ量又はパケット数の点で高負荷である場合には、受信したパケットがフローの開始契機となるパケットか否かを判定する(ステップS103)。
 次に、受信したパケットがフローの開始契機となるパケットの場合には、第2のパケット転送装置30は、当該フローのアプリケーションを識別する(ステップS104)。
 次に、第2のパケット転送装置30は、識別したアプリケーションのフロー特性と高負荷の種別に基づいて、振り分け要か否かを判定する(ステップS105)。第2のパケット転送装置30は、データ量の点で負荷が高く、識別したアプリケーションのフロー特性が高bpsフローである場合に、振り分け要と判定する。また、第2のパケット転送装置30は、パケット数の点で負荷が高く、フロー特性が高ppsフローである場合に、振り分け要と判定する。
 次に、第2のパケット転送装置30は、振り分け要と判定した場合には、負荷監視装置10から、識別したアプリケーションのフロー特性に基づいて、低負荷の第2のパケット転送装置30のリストを取得する(ステップS106)。
 次に、第2のパケット転送装置30は、取得したリストに基づいて、振り分け先の第2のパケット転送装置30を決定し(ステップS107)、決定した第2のパケット転送装置30にフローが流れるように誘導する経路制御を行う(ステップS108)。
 一方、ステップS105において振り分け不要と判定した場合、ステップS103においてフローの開始契機となるパケットでないと判定した場合、ステップS102において高負荷でないと判定した場合には、第2のパケット転送装置30は、パケットをネットワークN2へ送信する(ステップS109)。
 このように、第2のパケット転送装置30が、新規フローのアプリケーションを識別し、識別したアプリケーションのフロー特性と高負荷の種別に基づいて、新規フローの振り分け要否を判定する。そして、第2のパケット転送装置30は、振り分け要と判定すると、振り分け先にパケットが送信されるよう経路制御する。したがって、負荷分散システム1は、第1のパケット転送装置20による新規フローのアプリケーションの識別を不要とすることができる。
 <経路制御処理>
 図5は、実施例1における第2のパケット転送装置30による経路制御処理の流れの一例を説明するための図である。図5に示す処理は、図4に示したステップS108に対応する処理である。まず、第2のパケット転送装置30の制御部304は、振り分け先の第2のパケット転送装置30のNATの送信元IPアドレスを取得する(ステップS201)。
 次に、制御部304は、フローの開始契機となるパケットを、取得した送信元IPアドレスを用いてNATし、ネットワークN2へ転送する(ステップS202)。
 次に、制御部304は、自装置のフィルタの状態情報を振り分け先の第2のパケット転送装置30と共有する(ステップS203)。
 次に、制御部304は、第1のパケット転送装置20に対して、当該フローの転送先を振り分け先の第2のパケット転送装置30とするように指示する(ステップS204)。
 このように、制御部304が振り分け先の第2のパケット転送装置30にフローが流れるように誘導する経路制御を行うので、第1のパケット転送装置20は、振り分け先の第2のパケット転送装置30にパケットを転送することができる。
 以上のように、実施例1における負荷分散システム1は、高負荷になると、第2のパケット転送装置30の識別部301が、新規フローのアプリケーションを識別する。そして、判定部302が、アプリケーションのフロー特性と高負荷の種別とに基づいて新規フローの振り分けが必要か否かを判定する。そして、新規フローの振り分けが必要な場合、決定部303が、負荷監視装置10から低負荷の第2のパケット転送装置30のリストを取得して、振り分け先の第2のパケット転送装置30を決定する。そして、制御部304が、振り分け先の第2のパケット転送装置30にフローが流れるように誘導する経路制御を行う。これにより、第1のパケット転送装置20による新規フローのアプリケーションの識別を不要とすることができる。このため、第1のパケット転送装置20のコストの増加を防ぐことができる。
 また、判定部302は、新規フローのアプリケーションのフロー特性が高bpsフローであり、データ量に関して負荷が高い場合に、振り分け要と判定する。また、判定部302は、新規フローのアプリケーションのフロー特性が高ppsフローであり、パケット数に関して負荷が高い場合に、振り分け要と判定する。このため、第2のパケット転送装置30は、新規フローのフロー特性に応じた振り分けを行うことができる。
 また、制御部304は、振り分け先の第2のパケット転送装置30がNATで用いる送信元IPアドレスを負荷監視装置10から取得し、取得した送信元IPアドレスを用いてNATして新規フローの契機となるパケットをネットワークN2へ送信する。そして、制御部304は、振り分け先の第2のパケット転送装置30とフィルタの状態情報を共有し、第1のパケット転送装置20に対して、新規フローのパケットを振り分け先の第2のパケット転送装置30に送信するように指示する。このため、制御部304は、振り分け先の第2のパケット転送装置30に新規フローが流れるように誘導することができる。
 (実施例2)
 以降では、本発明の実施の形態における負荷分散システム1の実施例2について説明する。なお、実施例2では、主に、実施例1との相違点について説明し、実施例1と同様の構成要素については、適宜、その説明を省略する。
 <経路制御>
 まず、実施例2における第2のパケット転送装置30が新規フローの振り分けが必要であると判定した場合の経路制御について説明する。図6は、実施例2における第2のパケット転送装置30が新規フローの振り分けが必要であると判定した場合の経路制御の一例を示す図である。図6に示すように、第2パケット転送装置#1は、負荷監視装置10から、第2のパケット転送装置#2とのトンネル接続に必要な情報を取得する(1)。
 そして、第2のパケット転送装置#1は、取得した情報に基づいて、第2のパケット転送装置#2とのトンネル接続を確立する(2)。そして、第2のパケット転送装置#1は、フローの開始契機となるパケットを、確立したトンネル接続を介して第2のパケット転送装置#2に転送する(3)。
 第2のパケット転送装置#2は、フローの開始契機となるパケットを、自身のIPアドレスを用いてNATし、ネットワークN2に転送する(4)。これにより、応答パケットは、パケット転送装置#2に宛てて送信される。
 そして、第2のパケット転送装置#1は、第1のパケット転送装置20に対して、当該フローの転送用トンネルを第2のパケット転送装置#2宛トンネルとするよう指示する(5)。
 このように、実施例2における第2のパケット転送装置30は、振り分け先の第2のパケット転送装置30との間のトンネルを用いて経路制御を行うことで、新規フローを他の第2のパケット転送装置30に振り分けることができる。
 <機能構成>
 次に、実施例2における負荷分散システム1の機能構成について、図7を参照しながら説明する。図7は、実施例2における負荷分散システム1の機能構成の一例を示す図である。
 図7に示すように、実施例2における負荷監視装置10は、流量監視部101と、接続情報送信部104とを有する。接続情報送信部104は、実施例2における第2のパケット転送装置30からの依頼に応答して、当該依頼で指定された第2のパケット転送装置30のトンネル接続に必要な情報を送信する。
 また、実施例2における第2のパケット転送装置30は、識別部301と、判定部302と、決定部303と、制御部305とを有する。制御部305は、負荷監視装置10から、振り分け先の第2のパケット転送装置30とのトンネル接続に必要な情報を取得し、取得した情報に基づいて、振り分け先の第2のパケット転送装置30とのトンネル接続を確立する。そして、制御部305は、フローの開始契機となるパケットを、確立したトンネル接続を介して振り分け先の第2のパケット転送装置30に転送する。そして、制御部305は、第1のパケット転送装置20に対して、当該フローの転送用トンネルを、振り分け先の第2のパケット転送装置30宛トンネルとするよう指示する。
 <経路制御処理>
 図8は、実施例2における経路制御処理のシーケンスの一例を説明するための図である。まず、第2のパケット転送装置#1は、負荷監視装置10から、第2のパケット転送装置#2とのトンネル接続に必要な情報を取得し(ステップS301)、取得した情報に基づいて、第2のパケット転送装置#2とのトンネル接続を確立する(ステップS302)。
 次に、第2のパケット転送装置#1は、フローの開始契機となるパケットを、確立したトンネル接続を介して第2のパケット転送装置#2に転送する(ステップS303)。
 第2のパケット転送装置#2は、フローの開始契機となるパケットを、自身のIPアドレスを用いてNATし、ネットワークN2に転送する(ステップS304)。
 次に、第2のパケット転送装置#1は、第1のパケット転送装置20に対して、当該フローの転送用トンネルを、振り分け先の第2のパケット転送装置30宛トンネルとするよう指示する(ステップS305)。
 以上のように、実施例2における第2のパケット転送装置30は、新規フローを他の第2のパケット転送装置30に振り分ける場合に、振り分け先の第2のパケット転送装置30との間でトンネル接続を確立する。そして、実施例2における第2のパケット転送装置30は、振り分け先の第2のパケット転送装置30に、確立したトンネル接続を介して新規フローの契機となるパケットを送信する。そして、実施例2における第2のパケット転送装置30は、第1のパケット転送装置20に対して、新規フローの転送用トンネルを、振り分け先の第2のパケット転送装置30宛トンネルとするよう指示する。このため、実施例2における第2のパケット転送装置30は、振り分け先の第2のパケット転送装置30に新規フローが流れるように誘導することができる。
 <ハードウェア構成>
 最後に、本発明の実施の形態における負荷監視装置10、第1のパケット転送装置20及び第2のパケット転送装置30のハードウェア構成について説明する。本発明の実施の形態における負荷監視装置10、第1のパケット転送装置20及び第2のパケット転送装置30は、例えば図9に示すコンピュータ500を1台以上用いることにより実現される。図9は、コンピュータ500のハードウェア構成の一例を示す図である。
 図9に示すコンピュータ500は、CPU(Central Processing Unit)501と、RAM(Random Access Memory)502と、ROM(Read Only Memory)503と、外部I/F504と、通信I/F505と、補助記憶装置506とを有する。これら各ハードウェアは、それぞれがバスBを介して通信可能に接続されている。
 CPU501は、ROM503や補助記憶装置506等からプログラムやデータをRAM502上に読み出して処理を実行する演算装置である。
 RAM502は、プログラムやデータを一時保持する揮発性の半導体メモリである。ROM503は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM503には、例えば、OS(Operating System)設定やネットワーク設定等が格納されている。
 外部I/F504は、外部装置とのインタフェースである。外部装置には、記録媒体504a等がある。コンピュータ500は、外部I/F504を介して、記録媒体504a等の読み取りや書き込み等を行うことができる。
 記録媒体504aには、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等がある。
 通信I/F505は、他の装置と通信を行うためのインタフェースである。なお、第1のパケット転送装置20及び第2のパケット転送装置30は、複数の通信I/F505を有する。
 補助記憶装置506は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置506に格納されているプログラムやデータには、例えば、OS、当該OS上において各種機能を実現するアプリケーションプログラム等がある。
 本発明の実施の形態における負荷監視装置10、第1のパケット転送装置20及び第2のパケット転送装置30は、図9に示すコンピュータ500を1台以上用いることにより、上述した各種処理を実行することができる。例えば、負荷監視装置10が有する各機能部は、補助記憶装置506に格納された1以上のプログラムがCPU501等に実行させる処理により実現される。また、例えば、第2のパケット転送装置30が有する各機能部は、補助記憶装置506に格納された1以上のプログラムがCPU501等に実行させる処理や通信I/F505等により実現される。
 なお、負荷監視装置10は、例えばディスプレイ等の表示装置と、例えばキーボードやマウス等の入力装置とのうちの少なくとも一方を有していても良い。
 本発明は、具体的に開示された上記の実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、上記の実施の形態では、負荷分散を行うパケット転送装置を第1のパケット転送装置20、負荷分散の対象となるパケット転送装置を第2のパケット転送装置30としたが、これは、或るパケット転送装置が常に第1のパケット転送装置20又は第2のパケット転送装置30のいずれかとして機能することを意味するものではない。例えば、同一のパケット転送装置が第1のパケット転送装置20として機能し、かつ、第2のパケット転送装置30としても機能しても良い。
 1       負荷分散システム
 10、94   負荷監視装置
 20      第1のパケット転送装置
 30      第2のパケット転送装置
 91      サーバ
 92      CPE
 93      ネットワーク
 101     流量監視部
 102     低負荷リスト送信部
 103     IPアドレス送信部
 104     接続情報送信部
 301     識別部
 302     判定部
 303     決定部
 304、305 制御部
 N1、N2   ネットワーク

Claims (6)

  1.  データ量又はパケット数において負荷が高い場合に新規フローのアプリケーションを識別する識別手段と、
     前記識別手段により識別されたアプリケーションのフロー特性とデータ量又はパケット数のいずれにおいて負荷が高いかと基づいて、前記新規フローの振り分けが必要であるか否かを判定する判定手段と、
     前記判定手段により前記新規フローの振り分けが必要であると判定された場合に振り分け先を決定する決定手段と、
     前記決定手段により決定された振り分け先を介して前記新規フローのパケットが転送されるように制御する制御手段と、
     を有することを特徴とする負荷分散システム。
  2.  前記判定手段は、前記識別手段により識別されたアプリケーションのフロー特性がロングパケットが多い高データ量フローであって、データ量において負荷が高い場合と、前記識別手段により識別されたアプリケーションのフロー特性がショートパケットが多い高パケット数フローであって、パケット数において負荷が高い場合に、前記新規フローの振り分けが必要であると判定することを特徴とする請求項1に記載の負荷分散システム。
  3.  前記制御手段は、前記振り分け先がNATで用いる送信元IPアドレスを取得し、取得した送信元IPアドレスを用いてNATして前記新規フローの契機となるパケットを送信し、前記振り分け先とフィルタの状態情報を共有し、前記新規フローの契機となるパケットの送信元に前記新規フローのパケットを前記振り分け先に送信するように指示することを特徴とする請求項1又は請求項2に記載の負荷分散システム。
  4.  前記制御手段は、前記振り分け先との接続を確立し、前記確立した接続を介して前記新規フローの契機となるパケットを前記振り分け先に送信し、前記新規フローの契機となるパケットの送信元に前記新規フローのパケットを前記振り分け先に送信するように指示することを特徴とする請求項1又は請求項2に記載の負荷分散システム。
  5.  第1のネットワークからパケットを受信する第1のパケット転送装置と、前記第1のパケット転送装置から前記パケットを受信して第2のネットワークに送信する複数の第2のパケット転送装置を有し、
     各第2のパケット転送装置は、前記識別手段と、前記判定手段と、前記決定手段と、前記制御手段とを有し、
     前記振り分け先は、他の第2のパケット転送装置であり、
     前記制御手段は、前記第1のパケット転送装置に前記新規フローのパケットを前記振り分け先に送信するように指示することを特徴とする請求項1又は請求項2に記載の負荷分散システム。
  6.  データ量又はパケット数において負荷が高い場合に新規フローのアプリケーションを識別する識別手順と、
     前記識別手順により識別されたアプリケーションのフロー特性とデータ量又はパケット数のいずれにおいて負荷が高いかと基づいて、前記新規フローの振り分けが必要であるか否かを判定する判定手順と、
     前記判定手順により前記新規フローの振り分けが必要であると判定された場合に振り分け先を決定する決定手順と、
     前記決定手順により決定された振り分け先を介して前記新規フローのパケットが転送されるように制御する制御手順と、
     を負荷分散システムが実行することを特徴とする負荷分散方法。
PCT/JP2020/002192 2019-02-05 2020-01-22 負荷分散システム及び負荷分散方法 WO2020162185A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/427,689 US11882040B2 (en) 2019-02-05 2020-01-22 Load distribution system and load distribution method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019019173A JP7120059B2 (ja) 2019-02-05 2019-02-05 負荷分散システム及び負荷分散方法
JP2019-019173 2019-02-05

Publications (1)

Publication Number Publication Date
WO2020162185A1 true WO2020162185A1 (ja) 2020-08-13

Family

ID=71947070

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/002192 WO2020162185A1 (ja) 2019-02-05 2020-01-22 負荷分散システム及び負荷分散方法

Country Status (3)

Country Link
US (1) US11882040B2 (ja)
JP (1) JP7120059B2 (ja)
WO (1) WO2020162185A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012186649A (ja) * 2011-03-04 2012-09-27 Nec Corp 通信切替システム、通信切替方法、及びプログラム
JP2016525846A (ja) * 2013-07-31 2016-08-25 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データ・パケットを処理するための方法、システム、およびコンピュータ・プログラム
JP2017011423A (ja) * 2015-06-19 2017-01-12 富士通株式会社 データ処理システム及びデータ処理方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004350078A (ja) 2003-05-23 2004-12-09 Fujitsu Ltd 方路分散伝送システム
US8676980B2 (en) * 2011-03-22 2014-03-18 Cisco Technology, Inc. Distributed load balancer in a virtual machine environment
US9306840B2 (en) * 2012-09-26 2016-04-05 Alcatel Lucent Securing software defined networks via flow deflection
US9934059B2 (en) * 2013-04-12 2018-04-03 Wsou Investments, Llc Flow migration between virtual network appliances in a cloud computing network
WO2015052866A1 (ja) * 2013-10-11 2015-04-16 日本電気株式会社 端末装置、端末装置制御方法および端末装置制御プログラム
US9967199B2 (en) * 2013-12-09 2018-05-08 Nicira, Inc. Inspecting operations of a machine to detect elephant flows
US10116577B2 (en) * 2014-12-04 2018-10-30 Dell Products Lp Detecting path MTU mismatch at first-hop router
US10404791B2 (en) * 2015-12-04 2019-09-03 Microsoft Technology Licensing, Llc State-aware load balancing of application servers
CN114401533B (zh) * 2016-08-18 2024-07-26 艾普拉控股有限公司 用于服务和会话连续性的网络服务暴露
US10798005B2 (en) * 2018-09-13 2020-10-06 International Business Machines Corporation Optimizing application throughput

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012186649A (ja) * 2011-03-04 2012-09-27 Nec Corp 通信切替システム、通信切替方法、及びプログラム
JP2016525846A (ja) * 2013-07-31 2016-08-25 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データ・パケットを処理するための方法、システム、およびコンピュータ・プログラム
JP2017011423A (ja) * 2015-06-19 2017-01-12 富士通株式会社 データ処理システム及びデータ処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
AKIHIRO KIMURA, PROCEEDINGS OF THE 2018 IEICE GENERAL CONFERENCE *

Also Published As

Publication number Publication date
JP7120059B2 (ja) 2022-08-17
US20220131804A1 (en) 2022-04-28
JP2020127153A (ja) 2020-08-20
US11882040B2 (en) 2024-01-23

Similar Documents

Publication Publication Date Title
US10257066B2 (en) Interconnect congestion control in a storage grid
WO2011049135A1 (ja) ネットワークシステムとその制御方法、及びコントローラ
JP6670109B2 (ja) ネットワーク内のスケーラブルなフロー及び輻輳制御
WO2011074516A1 (ja) ネットワークシステムとその制御方法、及びコントローラ
US20170264677A1 (en) Service Processing Apparatus and Method
US9781041B2 (en) Systems and methods for native network interface controller (NIC) teaming load balancing
JP2005323245A (ja) 仮想ストレージの通信品質制御装置
US11997024B2 (en) Mapping NVMe-over-fabric packets using virtual output queues
US11128569B2 (en) Load distribution system and load distribution method
US11757779B2 (en) Load distribution system and load distribution method
WO2021166250A1 (ja) ゲートウェイ装置、方法及びプログラム
WO2014064976A1 (ja) ネットワーク機器、制御方法、及びプログラム
WO2020162185A1 (ja) 負荷分散システム及び負荷分散方法
JP2017174301A (ja) 仮想マシン配置装置、仮想マシン配置方法および仮想マシン配置プログラム
JP7255675B2 (ja) 仮想マシン監視装置、仮想マシン監視方法およびプログラム
KR102579474B1 (ko) 네트워크 부하 분산 방법 및 장치
JP2014233028A (ja) 通信制御装置、情報処理装置、記憶装置、通信制御方法、及び通信制御プログラム
JP6829156B2 (ja) ネットワーク負荷分散装置および方法
US11632331B2 (en) Load distribution system and load distribution method
WO2013069133A1 (ja) フレーム中継装置、通信システム、および、データ転送方法
JP6965838B2 (ja) ネットワーク負荷分散装置および方法
Galloway et al. Private Distributed Cloud Deployment in a Limited Networking Environment

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

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

Country of ref document: EP

Kind code of ref document: A1